From: Theo Buehler Subject: Re: security/openssl: fix for cmake To: Antoine Jacoutot Cc: ports@openbsd.org Date: Sun, 8 Feb 2026 14:52:51 +0100 On Sun, Feb 08, 2026 at 01:54:00PM +0100, Antoine Jacoutot wrote: > Hi. > > This fixes finding and building cmake ports with security/openssl/* Out of curiosity, what port needs that? > OK? Sure, ok, thanks. > > Index: 3.5/Makefile > =================================================================== > RCS file: /cvs/ports/security/openssl/3.5/Makefile,v > diff -u -p -r1.12 Makefile > --- 3.5/Makefile 27 Jan 2026 15:04:35 -0000 1.12 > +++ 3.5/Makefile 8 Feb 2026 12:52:48 -0000 > @@ -17,6 +17,7 @@ V= 3.5.5 > PKGNAME= openssl-${V} > PKGSPEC= openssl->=3.5v0,<3.6v0 > EPOCH= 0 > +REVISION= 0 > > SHLIBVER= 37.0 > SHARED_LIBS= crypto ${SHLIBVER} \ > @@ -65,6 +66,9 @@ LDFLAGS+= -Wl,-rpath,${TRUEPREFIX}/lib/e > post-patch: > sed -i 's,^SHLIB_VERSION=.*,SHLIB_VERSION=${SHLIBVER},' \ > ${WRKSRC}/VERSION.dat > + > +pre-configure: > + ${SUBST_CMD} ${WRKSRC}/exporters/cmake/OpenSSLConfig.cmake.in > > post-configure: > cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} \ > Index: 3.5/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > =================================================================== > RCS file: 3.5/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > diff -N 3.5/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ 3.5/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in 8 Feb 2026 12:52:48 -0000 > @@ -0,0 +1,18 @@ > +Index: exporters/cmake/OpenSSLConfig.cmake.in > +--- exporters/cmake/OpenSSLConfig.cmake.in.orig > ++++ exporters/cmake/OpenSSLConfig.cmake.in > +@@ -208,12 +208,12 @@ else() > + {- output_on() unless $lib_info{libcrypto}->{shared_import}; > + output_off() if $lib_info{libcrypto}->{shared_import}; "" -} > + # Dependencies are assumed to be implied in the shared libraries > +- set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared} -}") > ++ set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared} -}.${SHLIBVER}") > + set_target_properties(OpenSSL::Crypto PROPERTIES > + IMPORTED_LINK_INTERFACE_LANGUAGES "C" > + IMPORTED_LOCATION ${OPENSSL_LIBCRYPTO_SHARED}) > + > +- set(OPENSSL_LIBSSL_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared} -}") > ++ set(OPENSSL_LIBSSL_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared} -}.${SHLIBVER}") > + set_target_properties(OpenSSL::SSL PROPERTIES > + IMPORTED_LINK_INTERFACE_LANGUAGES "C" > + IMPORTED_LOCATION ${OPENSSL_LIBSSL_SHARED}) > Index: 3.6/Makefile > =================================================================== > RCS file: /cvs/ports/security/openssl/3.6/Makefile,v > diff -u -p -r1.3 Makefile > --- 3.6/Makefile 27 Jan 2026 15:05:10 -0000 1.3 > +++ 3.6/Makefile 8 Feb 2026 12:52:48 -0000 > @@ -17,6 +17,7 @@ V= 3.6.1 > PKGNAME= openssl-${V} > PKGSPEC= openssl->=3.6v0,<3.7v0 > EPOCH= 0 > +REVISION= 0 > > SHLIBVER= 42.0 > SHARED_LIBS= crypto ${SHLIBVER} \ > @@ -65,6 +66,9 @@ LDFLAGS+= -Wl,-rpath,${TRUEPREFIX}/lib/e > post-patch: > sed -i 's,^SHLIB_VERSION=.*,SHLIB_VERSION=${SHLIBVER},' \ > ${WRKSRC}/VERSION.dat > + > +pre-configure: > + ${SUBST_CMD} ${WRKSRC}/exporters/cmake/OpenSSLConfig.cmake.in > > post-configure: > cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} \ > Index: 3.6/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > =================================================================== > RCS file: 3.6/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > diff -N 3.6/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ 3.6/patches/patch-exporters_cmake_OpenSSLConfig_cmake_in 8 Feb 2026 12:52:49 -0000 > @@ -0,0 +1,18 @@ > +Index: exporters/cmake/OpenSSLConfig.cmake.in > +--- exporters/cmake/OpenSSLConfig.cmake.in.orig > ++++ exporters/cmake/OpenSSLConfig.cmake.in > +@@ -208,12 +208,12 @@ else() > + {- output_on() unless $lib_info{libcrypto}->{shared_import}; > + output_off() if $lib_info{libcrypto}->{shared_import}; "" -} > + # Dependencies are assumed to be implied in the shared libraries > +- set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared} -}") > ++ set(OPENSSL_LIBCRYPTO_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libcrypto}->{shared} -}.${SHLIBVER}") > + set_target_properties(OpenSSL::Crypto PROPERTIES > + IMPORTED_LINK_INTERFACE_LANGUAGES "C" > + IMPORTED_LOCATION ${OPENSSL_LIBCRYPTO_SHARED}) > + > +- set(OPENSSL_LIBSSL_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared} -}") > ++ set(OPENSSL_LIBSSL_SHARED "${OPENSSL_LIBRARY_DIR}/{- $lib_info{libssl}->{shared} -}.${SHLIBVER}") > + set_target_properties(OpenSSL::SSL PROPERTIES > + IMPORTED_LINK_INTERFACE_LANGUAGES "C" > + IMPORTED_LOCATION ${OPENSSL_LIBSSL_SHARED}) > > > -- > Antoine