I attempted to build net-dns/pdns-3.4.0, which uses pkg-config to find if crypto++ is installed. This fails due to missing files. Reproducible: Always Steps to Reproduce: 1. USE="cryptopp" emerge net-dns/pdns-3.4.0 Actual Results: Portage failed with a configure error due to missing (*.pc) files Expected Results: Portage should successfully build the package with no errors
m4/pdns_with_cryptopp.m4 is indeed looking for pkg-config files, but crypto++ doesn't ship them, hasn't seen a release or indeed any work in over a year, and shouldn't be expected to suddenly spring up some .pc files, so obviously this problem is squarely in the camp of PDNS.
I asked upstream first, they mentioned that other distributions package their own versions of the pkg-config files for crypto++... and that they solely depend on pkg-config to find dependencies.
(In reply to James Taylor from comment #2) > I asked upstream first, they mentioned that other distributions package I feared as much. https://github.com/PowerDNS/pdns/issues/1628 says these distributions can't even agree on what to call the pkg-config modules. > their own versions of the pkg-config files for crypto++... and that they > solely depend on pkg-config to find dependencies. Downstream distributors shouldn't add those, but here we are.
Debian ships something of their own called debian/libcrypto++.pc.in which has the following content: prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ Name: libcrypto++ Description: General purpose cryptographic shared library URL: http://www.cryptopp.com Version: @VERSION@ Requires: Libs: -lcrypto++ Cflags: which isn't any better than AC_CHECK_LIB(...) would have done.
Thanks, fixed with 3.4.4. I'm forcing the use of -lcrypto++ without relying on pkg-config being available.