Page MenuHomeFreeBSD

security/libfido2: Don't require libcrypto.pc for base ssl
ClosedPublic

Authored by bdrewery on Thu, Nov 19, 8:04 PM.

Details

Summary

I recently added a LIB_DEPENDS+=libfido2 to openssh-portable. A user reported to me that there was an error. I didn't catch this because the port lacked USES+= pkgconfig but they had it installed on their system where they were building.

Current situation when built with *base* SSL:

# pkg-config --libs libfido2
-L/usr/local/lib -lfido2 -lcrypto
# mv /usr/local/libdata/pkgconfig/libcrypto.pc .
# pkg-config --libs libfido2
Package libcrypto was not found in the pkg-config search path.
Perhaps you should add the directory containing `libcrypto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libcrypto', required by 'libfido2', not found
Test Plan

Built openssh-portable with USES+= pkgconfig.

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

I don't get it at the first sight wondering why would there be a libcrypto.pc under LOCALBASE when using ssl from base.
After a few minutes, I realized that the problem is caused by missing libcrypto.pc in base system.
I'll commit a modified version which removes libcrypto lines in both CMakeLists.txt and libfido2.pc.in.
And I'll bump PORTREVISION for package change.
Thanks.

This revision was not accepted when it landed; it landed in state Needs Review.Tue, Nov 24, 8:49 PM
This revision was automatically updated to reflect the committed changes.