Examining the libcurl.pc file when I install my own build (curl 8.9.1) I'm not sure it is correct, and I wonder if there are opinions here.
FYI, I'm on GNU/Linux and I'm building all libraries statically and only installing the static versions, no shared libs. As I understand the Libs: variable is shown if you run pkg-config with --libs, and BOTH Libs: and Libs.private: are shown if you run pkg-config with --libs --static. So for example, if I have libfoo.pc: Libs: -L${libdir} -lfoo Libs.private: -pthread then I get this result: $ pkg-config --libs foo -L/my/lib/path -lfoo $ pkg-config --libs --static foo -L/my/lib/path -lfoo -pthread The libcurl.pc file seems strange to me because the libraries are all repeated in Libs.private (and also the prerequisites are duplicated in Requires.private): Requires: zlib,libzstd,openssl Requires.private: zlib,libzstd,openssl Libs: -L${libdir} -lcurl -lssl -lcrypto -lssl -lcrypto -ldl -pthread -lzstd -lzstd -lz -pthread Libs.private: -lssl -lcrypto -lssl -lcrypto -ldl -pthread -lzstd -lzstd -lz -pthread This leads to a lot of duplication when --static is used: $ pkg-config --libs --static libcurl -L/my/lib/path -lcurl -lssl -lcrypto -lssl -lcrypto -ldl -pthread -lzstd -lz -pthread -lssl -lcrypto -lssl -lcrypto -ldl -pthread -lzstd -lz -pthread -lz -lzstd -pthread -lssl -lcrypto -ldl -pthread I mean, in the grand scheme of things duplicating libraries is not a big deal it just increases the link time a bit. Is this something to be considered? Or "don't really care"? Looking at the .pc.in file I didn't quite follow the uses of the LIBCURL_NO_SHARED and LIBCURL_LIBS metavariables. -- Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library Etiquette: https://curl.se/mail/etiquette.html