[Bug 270035] Developer checks for stage-qa emit false positives re: USES= ssl with OpenSSL ports

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 21 Sep 2023 13:53:33 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270035

--- Comment #3 from Fernando ApesteguĂ­a <fernape@FreeBSD.org> ---
Created attachment 245093
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=245093&action=edit
Patch for qa.sh

qa.sh checks the library requirements for every elf executable and .so file in
the staging directory. If readelf(1) reports a NEEDED libcrypto.so or NEEDED
libssl.so for the executable or .so file, then it warns about USES=ssl if not
found in the port's Makefile.

In the case of security/libressl, qa.sh detects these libraries needed:

Warning: (0x0000000000000001 NEEDED               Shared library:
[libcrypto.so.50]) in /usr/local/bin/ocspcheck
Warning: (0x0000000000000001 NEEDED               Shared library:
[libssl.so.53]) in /usr/local/bin/openssl
Warning: (0x0000000000000001 NEEDED               Shared library:
[libcrypto.so.50]) in /usr/local/bin/openssl
Warning: (0x0000000000000001 NEEDED               Shared library:
[libcrypto.so.50]) in /usr/local/lib/libssl.so.53.0.2

I think if the port itself provides the libcrypto.so or libssl.so libraries,
then we shouldn't check for the USES=ssl.

This patch tries to address this case. It seems to work. It still warns for
other ports if they link against those libraries, the libraries are not
provided by the port itself and USES=ssl is not used.

Would you give it a try?

-- 
You are receiving this mail because:
You are on the CC list for the bug.