From f231709c64f745cd2185b92976b56c198b932a32 Mon Sep 17 00:00:00 2001 From: Alexey Dokuchaev Date: Wed, 27 Nov 2019 17:04:00 +0000 Subject: [PATCH] - Allow to build against contemporary versions of OpenSSL and set missing INSTALLS_ICONS as reported by portlint(1) - Revert WITH_DEBUG part of the r512774 as explained by mat@: WITH_DEBUG means the port will be built with debugging symbols and will not be stripped. So before, if WITH_DEBUG was set, it was built with all debugging bells and whistles. Now, it only adds debug=1 to MAKE_ARGS, and it gets stripped in the end. WITH_DEBUG must not be set by port options, it is a user-facing variable. PR: 233972 --- net-p2p/linuxdcpp/Makefile | 14 ++++------ .../files/patch-dcpp_CryptoManager.cpp | 26 +++++++++++++++++++ 2 files changed, 31 insertions(+), 9 deletions(-) create mode 100644 net-p2p/linuxdcpp/files/patch-dcpp_CryptoManager.cpp diff --git a/net-p2p/linuxdcpp/Makefile b/net-p2p/linuxdcpp/Makefile index f44fac16dc1a..1dfea9440dad 100644 --- a/net-p2p/linuxdcpp/Makefile +++ b/net-p2p/linuxdcpp/Makefile @@ -17,22 +17,18 @@ BUILD_DEPENDS= ${LOCALBASE}/include/boost/version.hpp:devel/boost-libs USES= compiler:c++11-lang gettext gnome iconv localbase:ldflags \ pkgconfig scons ssl tar:bzip2 USE_GNOME= libglade2 +INSTALLS_ICONS= yes PORTDOCS= * DESTDIRNAME= FAKE_ROOT -OPTIONS_DEFINE= NOTIFY DEBUG DOCS +OPTIONS_DEFINE= NOTIFY DOCS OPTIONS_DEFAULT=NOTIFY NOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify NOTIFY_MAKE_ARGS_OFF= libnotify=0 -DEBUG_MAKE_ARGS=debug=1 - -.include - -.if ${SSL_DEFAULT} == base -BROKEN_FreeBSD_12= member access into incomplete type 'dh_st' -BROKEN_FreeBSD_13= member access into incomplete type 'dh_st' +.if defined(WITH_DEBUG) +MAKE_ARGS+= debug=1 .endif post-patch: @@ -43,4 +39,4 @@ post-patch: post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} -.include +.include diff --git a/net-p2p/linuxdcpp/files/patch-dcpp_CryptoManager.cpp b/net-p2p/linuxdcpp/files/patch-dcpp_CryptoManager.cpp new file mode 100644 index 000000000000..3584893ee6af --- /dev/null +++ b/net-p2p/linuxdcpp/files/patch-dcpp_CryptoManager.cpp @@ -0,0 +1,26 @@ +--- dcpp/CryptoManager.cpp.orig 2011-04-17 17:57:09 UTC ++++ dcpp/CryptoManager.cpp +@@ -107,12 +107,20 @@ CryptoManager::CryptoManager() + }; + + if(dh) { +- dh->p = BN_bin2bn(dh4096_p, sizeof(dh4096_p), 0); +- dh->g = BN_bin2bn(dh4096_g, sizeof(dh4096_g), 0); ++ BIGNUM *p, *g; + +- if (!dh->p || !dh->g) { ++ p = BN_bin2bn(dh4096_p, sizeof(dh4096_p), 0); ++ g = BN_bin2bn(dh4096_g, sizeof(dh4096_g), 0); ++ ++ if (!p || !g) { + dh.reset(); + } else { ++#if OPENSSL_VERSION_NUMBER < 0x10100005L ++ dh->p = p; ++ dh->g = g; ++#else ++ DH_set0_pqg(dh, p, NULL, g); ++#endif + SSL_CTX_set_options(serverContext, SSL_OP_SINGLE_DH_USE); + SSL_CTX_set_options(serverVerContext, SSL_OP_SINGLE_DH_USE); + SSL_CTX_set_tmp_dh(serverContext, (DH*)dh);