aboutsummaryrefslogtreecommitdiffstats
path: root/audio/murmur
diff options
context:
space:
mode:
authorfeld <feld@FreeBSD.org>2015-11-21 05:43:46 +0800
committerfeld <feld@FreeBSD.org>2015-11-21 05:43:46 +0800
commit7a19b31692b34bac15915e1ad330fe6035ed678b (patch)
treecad875761b89f0ebb3f5f3474af6036a9cd5823f /audio/murmur
parentb7d00476811ba79049f37d1f087c06fdcdc9c951 (diff)
downloadfreebsd-ports-gnome-7a19b31692b34bac15915e1ad330fe6035ed678b.tar.gz
freebsd-ports-gnome-7a19b31692b34bac15915e1ad330fe6035ed678b.tar.zst
freebsd-ports-gnome-7a19b31692b34bac15915e1ad330fe6035ed678b.zip
audio/murmur: Fix segfault on FreeBSD 9.x, use base OpenSSL
FreeBSD 9.x was segfaulting with the update to 1.2.10 due to the change to build against the ports OpenSSL. The problem was that while murmur was linked against ports OpenSSL, it was also linked to QT which pulled in the base system OpenSSL. FreeBSD 10.x and head did not segfault due to pure luck. While here, require compiler:c++11-lang. This is definitely required for the upcoming 1.3.0 release, but also I want to avoid and weirdness on FreeBSD 9.x which was building murmur with gcc but required a clang-built boost at build time.
Diffstat (limited to 'audio/murmur')
-rw-r--r--audio/murmur/Makefile8
-rw-r--r--audio/murmur/files/FreeBSD9-patch-src_SSL.cpp11
-rw-r--r--audio/murmur/files/patch-src_mumble.pri18
3 files changed, 24 insertions, 13 deletions
diff --git a/audio/murmur/Makefile b/audio/murmur/Makefile
index 96945d1b2c97..970223617f89 100644
--- a/audio/murmur/Makefile
+++ b/audio/murmur/Makefile
@@ -3,6 +3,7 @@
PORTNAME= murmur
PORTVERSION= 1.2.10
+PORTREVISION= 1
CATEGORIES= audio net
DISTNAME= mumble-${PORTVERSION}
@@ -16,11 +17,10 @@ LIB_DEPENDS= libprotobuf.so:${PORTSDIR}/devel/protobuf
USERS= murmur
GROUPS= murmur
-USES= compiler qmake pkgconfig
+USES= compiler:c++11-lang qmake pkgconfig
USE_QT4= moc_build corelib network xml sql sql-sqlite3_run
USE_OPENSSL= YES
-WITH_OPENSSL_PORT= YES
USE_GITHUB= YES
GH_ACCOUNT= mumble-voip
@@ -63,6 +63,10 @@ CONFIG+= no-bonjour
CONFIG+= no-pch
.endif
+.if ${OSVERSION} < 1000510
+EXTRA_PATCHES= ${FILESDIR}/FreeBSD9-patch-src_SSL.cpp
+.endif
+
post-patch:
@${ECHO_CMD} 'QMAKE_LFLAGS += -fstack-protector' >> ${WRKSRC}/src/murmur/murmur.pro
diff --git a/audio/murmur/files/FreeBSD9-patch-src_SSL.cpp b/audio/murmur/files/FreeBSD9-patch-src_SSL.cpp
new file mode 100644
index 000000000000..acb5e6337c5f
--- /dev/null
+++ b/audio/murmur/files/FreeBSD9-patch-src_SSL.cpp
@@ -0,0 +1,11 @@
+--- src/SSL.cpp.orig 2015-11-20 16:02:09 UTC
++++ src/SSL.cpp
+@@ -43,7 +43,7 @@ QList<QSslCipher> MumbleSSL::ciphersFrom
+
+ SSL_CTX *ctx = NULL;
+ SSL *ssl = NULL;
+- const SSL_METHOD *meth = NULL;
++ SSL_METHOD *meth = NULL;
+ int i = 0;
+
+ QByteArray csbuf = cipherString.toLatin1();
diff --git a/audio/murmur/files/patch-src_mumble.pri b/audio/murmur/files/patch-src_mumble.pri
index 36f64ba504de..01ba966aaf1f 100644
--- a/audio/murmur/files/patch-src_mumble.pri
+++ b/audio/murmur/files/patch-src_mumble.pri
@@ -1,15 +1,11 @@
---- src/mumble.pri.orig 2015-11-11 21:54:35 UTC
+--- src/mumble.pri.orig 2015-07-09 13:23:46 UTC
+++ src/mumble.pri
-@@ -53,11 +53,7 @@ unix {
- CONFIG *= link_pkgconfig
+@@ -54,7 +54,7 @@ unix {
LIBS *= -lprotobuf
-- contains(UNAME, FreeBSD) {
+ contains(UNAME, FreeBSD) {
- LIBS *= -lcrypto
-- } else {
-- PKGCONFIG *= openssl
-- }
-+ PKGCONFIG *= openssl
- }
-
- QMAKE_EXTRA_COMPILERS *= pb pbh
++ LIBS *= -lcrypto -lssl
+ } else {
+ PKGCONFIG *= openssl
+ }