Date: Thursday, June 8, 2017 @ 12:02:19 Author: arojas Revision: 298320
archrelease: copy trunk to extra-i686, extra-x86_64 Added: kdenetwork-kopete/repos/extra-i686/PKGBUILD (from rev 298319, kdenetwork-kopete/trunk/PKGBUILD) kdenetwork-kopete/repos/extra-i686/kopete-mediastreamer2.14.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-mediastreamer2.14.patch) kdenetwork-kopete/repos/extra-i686/kopete-openssl-1.1.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-openssl-1.1.patch) kdenetwork-kopete/repos/extra-i686/kopete-pthread-link.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-pthread-link.patch) kdenetwork-kopete/repos/extra-x86_64/PKGBUILD (from rev 298319, kdenetwork-kopete/trunk/PKGBUILD) kdenetwork-kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-mediastreamer2.14.patch) kdenetwork-kopete/repos/extra-x86_64/kopete-openssl-1.1.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-openssl-1.1.patch) kdenetwork-kopete/repos/extra-x86_64/kopete-pthread-link.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-pthread-link.patch) Deleted: kdenetwork-kopete/repos/extra-i686/PKGBUILD kdenetwork-kopete/repos/extra-i686/kopete-mediastreamer2.14.patch kdenetwork-kopete/repos/extra-i686/kopete-openssl-1.1.patch kdenetwork-kopete/repos/extra-i686/kopete-pthread-link.patch kdenetwork-kopete/repos/extra-x86_64/PKGBUILD kdenetwork-kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch kdenetwork-kopete/repos/extra-x86_64/kopete-openssl-1.1.patch kdenetwork-kopete/repos/extra-x86_64/kopete-pthread-link.patch ---------------------------------------------+ /PKGBUILD | 106 ++++ /kopete-mediastreamer2.14.patch | 166 +++++++ /kopete-openssl-1.1.patch | 600 ++++++++++++++++++++++++++ /kopete-pthread-link.patch | 24 + extra-i686/PKGBUILD | 53 -- extra-i686/kopete-mediastreamer2.14.patch | 83 --- extra-i686/kopete-openssl-1.1.patch | 300 ------------- extra-i686/kopete-pthread-link.patch | 12 extra-x86_64/PKGBUILD | 53 -- extra-x86_64/kopete-mediastreamer2.14.patch | 83 --- extra-x86_64/kopete-openssl-1.1.patch | 300 ------------- extra-x86_64/kopete-pthread-link.patch | 12 12 files changed, 896 insertions(+), 896 deletions(-) Deleted: extra-i686/PKGBUILD =================================================================== --- extra-i686/PKGBUILD 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-i686/PKGBUILD 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,53 +0,0 @@ -# $Id$ -# Maintainer: Felix Yan <felixonm...@archlinux.org> -# Maintainer: Antonio Rojas <aro...@archlinux.org> -# Contributor: Andrea Scarpino <and...@archlinux.org> - -pkgname=kdenetwork-kopete -pkgver=17.04.1 -pkgrel=1 -pkgdesc='Instant Messenger' -url='https://kde.org/applications/internet/kopete/' -arch=('i686' 'x86_64') -license=('GPL' 'LGPL' 'FDL') -groups=('kde-applications' 'kdenetwork') -depends=('kdebase-runtime' 'libotr' 'qimageblitz' 'kdepimlibs4' 'qca-qt4') -makedepends=('cmake' 'automoc4' 'boost' 'mediastreamer' 'libgadu' 'jsoncpp') -optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol') -source=("https://download.kde.org/stable/applications/${pkgver}/src/kopete-${pkgver}.tar.xz"{,.sig} - kopete-mediastreamer2.14.patch kopete-pthread-link.patch kopete-openssl-1.1.patch) -sha256sums=('d15fb89e7ec872492bd6014892cd5e7d534ff7826ed92715301ca12cc97369b3' - 'SKIP' - 'c34a268aaa058e563174581dbe37c15fed91e82326ec704d2a872463139865e0' - 'a7ebdd8dd4336b7ec085ef254bf18040f473b73379a8cd84569b28441a6c71df' - 'c3edbf1fe6d6a35a0260878937e9dd378358dbca0222015a0659670eab1de628') -validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7) # Albert Astals Cid <aa...@kde.org> - -prepare() { - mkdir -p build - -# Fix build with mediastreamer 2.14 - cd kopete-$pkgver - patch -p1 -i ../kopete-mediastreamer2.14.patch -# Fix linking to pthread in libjingle-call - patch -p1 -i ../kopete-pthread-link.patch -# Fix build with OpenSSL 1.1 (based on Fedora patch for libjingle) - cd protocols/jabber/libjingle - patch -p1 -i "$srcdir"/kopete-openssl-1.1.patch -} - -build() { - cd build - cmake ../kopete-$pkgver \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_Libmsn=OFF - make -} - -package() { - cd build - make DESTDIR="$pkgdir" install -} Copied: kdenetwork-kopete/repos/extra-i686/PKGBUILD (from rev 298319, kdenetwork-kopete/trunk/PKGBUILD) =================================================================== --- extra-i686/PKGBUILD (rev 0) +++ extra-i686/PKGBUILD 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,53 @@ +# $Id$ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Maintainer: Antonio Rojas <aro...@archlinux.org> +# Contributor: Andrea Scarpino <and...@archlinux.org> + +pkgname=kdenetwork-kopete +pkgver=17.04.2 +pkgrel=1 +pkgdesc='Instant Messenger' +url='https://kde.org/applications/internet/kopete/' +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL') +groups=('kde-applications' 'kdenetwork') +depends=('kdebase-runtime' 'libotr' 'qimageblitz' 'kdepimlibs4' 'qca-qt4') +makedepends=('cmake' 'automoc4' 'boost' 'mediastreamer' 'libgadu' 'jsoncpp') +optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol') +source=("https://download.kde.org/stable/applications/${pkgver}/src/kopete-${pkgver}.tar.xz"{,.sig} + kopete-mediastreamer2.14.patch kopete-pthread-link.patch kopete-openssl-1.1.patch) +sha256sums=('7d06dccd26d9cc0456ee3d94bd7f775eddb2662c1d1481e08d1796e6bfcd2dc4' + 'SKIP' + 'c34a268aaa058e563174581dbe37c15fed91e82326ec704d2a872463139865e0' + 'a7ebdd8dd4336b7ec085ef254bf18040f473b73379a8cd84569b28441a6c71df' + 'c3edbf1fe6d6a35a0260878937e9dd378358dbca0222015a0659670eab1de628') +validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7) # Albert Astals Cid <aa...@kde.org> + +prepare() { + mkdir -p build + +# Fix build with mediastreamer 2.14 + cd kopete-$pkgver + patch -p1 -i ../kopete-mediastreamer2.14.patch +# Fix linking to pthread in libjingle-call + patch -p1 -i ../kopete-pthread-link.patch +# Fix build with OpenSSL 1.1 (based on Fedora patch for libjingle) + cd protocols/jabber/libjingle + patch -p1 -i "$srcdir"/kopete-openssl-1.1.patch +} + +build() { + cd build + cmake ../kopete-$pkgver \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DWITH_Libmsn=OFF + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install +} Deleted: extra-i686/kopete-mediastreamer2.14.patch =================================================================== --- extra-i686/kopete-mediastreamer2.14.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-i686/kopete-mediastreamer2.14.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,83 +0,0 @@ -diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake -index 47fe5c3..31802f0 100644 ---- a/cmake/modules/FindMediastreamer.cmake -+++ b/cmake/modules/FindMediastreamer.cmake -@@ -24,12 +24,19 @@ IF (MEDIASTREAMER_FOUND) - IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - SET(MEDIASTREAMER_LESS_2_9 TRUE) - SET(MEDIASTREAMER_LESS_2_11 TRUE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) - ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) - SET(MEDIASTREAMER_LESS_2_9 FALSE) - SET(MEDIASTREAMER_LESS_2_11 TRUE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) -+ ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) -+ SET(MEDIASTREAMER_LESS_2_9 FALSE) -+ SET(MEDIASTREAMER_LESS_2_11 FALSE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) - ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - SET(MEDIASTREAMER_LESS_2_9 FALSE) - SET(MEDIASTREAMER_LESS_2_11 FALSE) -+ SET(MEDIASTREAMER_LESS_2_14 FALSE) - ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) - ELSE (MEDIASTREAMER_FOUND) -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -index bd3de2b..9379226 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -@@ -151,15 +151,25 @@ LinphoneVoiceChannel::LinphoneVoiceChannel(LinphoneMediaEngine*eng) - playport2 = PORT_UNUSED; - - #ifdef _DEBUG -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); - #else -+ ortp_set_log_level_mask(NULL, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); -+#endif -+#else -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_FATAL); -+#else -+ ortp_set_log_level_mask(NULL, ORTP_FATAL); - #endif -- -+#endif -+ - #ifdef MEDIASTREAMER_LESS_2_9 - audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ --#else -+#elseif MEDIASTREAMER_LESS_2_14 - audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ -+#else -+ audio_stream_ = audio_stream_new(NULL, -1, -1, 0); /* -1 means that function will choose some free port */ - #endif - - } -@@ -344,16 +354,24 @@ void LinphoneVoiceChannel::StartRing(bool bIncomingCall) - if (engine_->GetRingWav().size() > 0) - { - LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); -- } -+#else -+ ring_stream_ = ring_start (NULL, engine_->GetRingWav().c_str(), 1, sndcard); -+#endif -+ } - } - else - { - if (engine_->GetCallWav().size() > 0) - { - LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); -- } -+#else -+ ring_stream_ = ring_start (NULL, engine_->GetCallWav().c_str(), 1, sndcard); -+#endif -+ } - } - } - } Copied: kdenetwork-kopete/repos/extra-i686/kopete-mediastreamer2.14.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-mediastreamer2.14.patch) =================================================================== --- extra-i686/kopete-mediastreamer2.14.patch (rev 0) +++ extra-i686/kopete-mediastreamer2.14.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,83 @@ +diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake +index 47fe5c3..31802f0 100644 +--- a/cmake/modules/FindMediastreamer.cmake ++++ b/cmake/modules/FindMediastreamer.cmake +@@ -24,12 +24,19 @@ IF (MEDIASTREAMER_FOUND) + IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + SET(MEDIASTREAMER_LESS_2_9 TRUE) + SET(MEDIASTREAMER_LESS_2_11 TRUE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) + ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) + SET(MEDIASTREAMER_LESS_2_9 FALSE) + SET(MEDIASTREAMER_LESS_2_11 TRUE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) ++ ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) ++ SET(MEDIASTREAMER_LESS_2_9 FALSE) ++ SET(MEDIASTREAMER_LESS_2_11 FALSE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) + ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + SET(MEDIASTREAMER_LESS_2_9 FALSE) + SET(MEDIASTREAMER_LESS_2_11 FALSE) ++ SET(MEDIASTREAMER_LESS_2_14 FALSE) + ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) + ELSE (MEDIASTREAMER_FOUND) +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +index bd3de2b..9379226 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +@@ -151,15 +151,25 @@ LinphoneVoiceChannel::LinphoneVoiceChannel(LinphoneMediaEngine*eng) + playport2 = PORT_UNUSED; + + #ifdef _DEBUG ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); + #else ++ ortp_set_log_level_mask(NULL, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); ++#endif ++#else ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_FATAL); ++#else ++ ortp_set_log_level_mask(NULL, ORTP_FATAL); + #endif +- ++#endif ++ + #ifdef MEDIASTREAMER_LESS_2_9 + audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ +-#else ++#elseif MEDIASTREAMER_LESS_2_14 + audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ ++#else ++ audio_stream_ = audio_stream_new(NULL, -1, -1, 0); /* -1 means that function will choose some free port */ + #endif + + } +@@ -344,16 +354,24 @@ void LinphoneVoiceChannel::StartRing(bool bIncomingCall) + if (engine_->GetRingWav().size() > 0) + { + LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); +- } ++#else ++ ring_stream_ = ring_start (NULL, engine_->GetRingWav().c_str(), 1, sndcard); ++#endif ++ } + } + else + { + if (engine_->GetCallWav().size() > 0) + { + LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); +- } ++#else ++ ring_stream_ = ring_start (NULL, engine_->GetCallWav().c_str(), 1, sndcard); ++#endif ++ } + } + } + } Deleted: extra-i686/kopete-openssl-1.1.patch =================================================================== --- extra-i686/kopete-openssl-1.1.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-i686/kopete-openssl-1.1.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,300 +0,0 @@ -diff -up libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 libjingle-0.6.14/talk/base/openssladapter.cc ---- libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 2017-02-20 15:00:27.678103635 -0500 -+++ libjingle-0.6.14/talk/base/openssladapter.cc 2017-02-20 15:57:36.884341533 -0500 -@@ -84,6 +84,7 @@ static long socket_ctrl(BIO* h, int cmd, - static int socket_new(BIO* h); - static int socket_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_socket = { - BIO_TYPE_BIO, - "socket", -@@ -98,16 +99,36 @@ static BIO_METHOD methods_socket = { - }; - - BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } -+#else -+static BIO_METHOD *methods_socket = NULL; -+ -+static const BIO_METHOD * BIO_s_socket2(void) { -+ if (methods_socket == NULL) { -+ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); -+ if (methods_socket == NULL || -+ BIO_meth_set_write (methods_socket, socket_write) || -+ BIO_meth_set_read (methods_socket, socket_read) || -+ BIO_meth_set_puts (methods_socket, socket_puts) || -+ BIO_meth_set_gets (methods_socket, 0) || -+ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || -+ BIO_meth_set_create (methods_socket, socket_new) || -+ BIO_meth_set_destroy (methods_socket, socket_free)) -+ return NULL; -+ } -+ return methods_socket; -+} -+#endif - - BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { - BIO* ret = BIO_new(BIO_s_socket2()); - if (ret == NULL) { - return NULL; - } -- ret->ptr = socket; -+ BIO_set_data(ret, socket); - return ret; - } - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int socket_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -115,6 +136,14 @@ static int socket_new(BIO* b) { - b->ptr = 0; - return 1; - } -+#else -+static int socket_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int socket_free(BIO* b) { - if (b == NULL) -@@ -125,13 +154,11 @@ static int socket_free(BIO* b) { - static int socket_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Recv(out, outl); - if (result > 0) { - return result; -- } else if (result == 0) { -- b->num = 1; - } else if (socket->IsBlocking()) { - BIO_set_retry_read(b); - } -@@ -141,7 +168,7 @@ static int socket_read(BIO* b, char* out - static int socket_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Send(in, inl); - if (result > 0) { -@@ -164,7 +191,6 @@ static long socket_ctrl(BIO* b, int cmd, - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; -@@ -696,7 +722,9 @@ bool OpenSSLAdapter::VerifyServerName(SS - // We assign this to a local variable, instead of passing the address - // directly to ASN1_item_d2i. - // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. -- unsigned char* ext_value_data = extension->value->data; -+ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); -+ unsigned char* ext_value_data = extension_data->data; -+ long length = extension_data->length; - - #if OPENSSL_VERSION_NUMBER >= 0x0090800fL - const unsigned char **ext_value_data_ptr = -@@ -707,10 +735,10 @@ bool OpenSSLAdapter::VerifyServerName(SS - - if (meth->it) { - ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, -- extension->value->length, -+ length, - ASN1_ITEM_ptr(meth->it)); - } else { -- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); -+ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); - } - - STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); -diff -up libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 libjingle-0.6.14/talk/base/opensslidentity.cc ---- libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 2017-02-20 15:58:26.642105790 -0500 -+++ libjingle-0.6.14/talk/base/opensslidentity.cc 2017-02-20 16:04:05.130707597 -0500 -@@ -168,7 +168,12 @@ OpenSSLKeyPair::~OpenSSLKeyPair() { - } - - void OpenSSLKeyPair::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); -+#else -+ EVP_PKEY_up_ref(pkey_); -+#endif -+ - } - - #ifdef _DEBUG -@@ -314,7 +319,11 @@ std::string OpenSSLCertificate::ToPEMStr - } - - void OpenSSLCertificate::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); -+#else -+ X509_up_ref(x509_); -+#endif - } - - OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { -diff -up libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 libjingle-0.6.14/talk/base/opensslstreamadapter.cc ---- libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 2017-02-20 16:05:03.402259071 -0500 -+++ libjingle-0.6.14/talk/base/opensslstreamadapter.cc 2017-02-20 16:12:45.682795913 -0500 -@@ -86,6 +86,7 @@ static long stream_ctrl(BIO* h, int cmd, - static int stream_new(BIO* h); - static int stream_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_stream = { - BIO_TYPE_BIO, - "stream", -@@ -100,17 +101,37 @@ static BIO_METHOD methods_stream = { - }; - - static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } -+#else -+static BIO_METHOD *methods_stream = NULL; -+ -+static const BIO_METHOD * BIO_s_stream(void) { -+ if (methods_stream == NULL) { -+ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); -+ if (methods_stream == NULL || -+ BIO_meth_set_write (methods_stream, stream_write) || -+ BIO_meth_set_read (methods_stream, stream_read) || -+ BIO_meth_set_puts (methods_stream, stream_puts) || -+ BIO_meth_set_gets (methods_stream, 0) || -+ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || -+ BIO_meth_set_create (methods_stream, stream_new) || -+ BIO_meth_set_destroy (methods_stream, stream_free)) -+ return NULL; -+ } -+ return methods_stream; -+} -+#endif - - static BIO* BIO_new_stream(StreamInterface* stream) { - BIO* ret = BIO_new(BIO_s_stream()); - if (ret == NULL) - return NULL; -- ret->ptr = stream; -+ BIO_set_data(ret, stream); - return ret; - } - - // bio methods return 1 (or at least non-zero) on success and 0 on failure. - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int stream_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -118,6 +139,14 @@ static int stream_new(BIO* b) { - b->ptr = 0; - return 1; - } -+#else -+static int stream_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int stream_free(BIO* b) { - if (b == NULL) -@@ -128,15 +157,13 @@ static int stream_free(BIO* b) { - static int stream_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t read; - int error; - StreamResult result = stream->Read(out, outl, &read, &error); - if (result == SR_SUCCESS) { - return read; -- } else if (result == SR_EOS) { -- b->num = 1; - } else if (result == SR_BLOCK) { - BIO_set_retry_read(b); - } -@@ -146,7 +173,7 @@ static int stream_read(BIO* b, char* out - static int stream_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t written; - int error; -@@ -171,7 +198,6 @@ static long stream_ctrl(BIO* b, int cmd, - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; ---- libjingle/talk/base/openssldigest.cc.orig 2017-05-11 15:33:00.221086766 +0000 -+++ libjingle/talk/base/openssldigest.cc 2017-05-11 15:33:52.414339449 +0000 -@@ -32,16 +32,16 @@ - namespace talk_base { - - OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { -- EVP_MD_CTX_init(&ctx_); -+ EVP_MD_CTX_init(ctx_); - if (GetDigestEVP(algorithm, &md_)) { -- EVP_DigestInit_ex(&ctx_, md_, NULL); -+ EVP_DigestInit_ex(ctx_, md_, NULL); - } else { - md_ = NULL; - } - } - - OpenSSLDigest::~OpenSSLDigest() { -- EVP_MD_CTX_cleanup(&ctx_); -+ EVP_MD_CTX_destroy(ctx_); - } - - size_t OpenSSLDigest::Size() const { -@@ -55,16 +55,16 @@ - if (!md_) { - return; - } -- EVP_DigestUpdate(&ctx_, buf, len); -+ EVP_DigestUpdate(ctx_, buf, len); - } - - size_t OpenSSLDigest::Finish(void* buf, size_t len) { - if (!md_ || len < Size()) { - return 0; - } - unsigned int md_len; -- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); -- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s -+ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); -+ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s - ASSERT(md_len == Size()); - return md_len; - } ---- libjingle/talk/base/openssldigest.h.orig 2017-05-11 15:31:56.341185527 +0000 -+++ libjingle/talk/base/openssldigest.h 2017-05-11 15:32:49.631103132 +0000 -@@ -55,7 +55,7 @@ - size_t* len); - - private: -- EVP_MD_CTX ctx_; -+ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); - const EVP_MD* md_; - }; - Copied: kdenetwork-kopete/repos/extra-i686/kopete-openssl-1.1.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-openssl-1.1.patch) =================================================================== --- extra-i686/kopete-openssl-1.1.patch (rev 0) +++ extra-i686/kopete-openssl-1.1.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,300 @@ +diff -up libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 libjingle-0.6.14/talk/base/openssladapter.cc +--- libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 2017-02-20 15:00:27.678103635 -0500 ++++ libjingle-0.6.14/talk/base/openssladapter.cc 2017-02-20 15:57:36.884341533 -0500 +@@ -84,6 +84,7 @@ static long socket_ctrl(BIO* h, int cmd, + static int socket_new(BIO* h); + static int socket_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_socket = { + BIO_TYPE_BIO, + "socket", +@@ -98,16 +99,36 @@ static BIO_METHOD methods_socket = { + }; + + BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } ++#else ++static BIO_METHOD *methods_socket = NULL; ++ ++static const BIO_METHOD * BIO_s_socket2(void) { ++ if (methods_socket == NULL) { ++ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); ++ if (methods_socket == NULL || ++ BIO_meth_set_write (methods_socket, socket_write) || ++ BIO_meth_set_read (methods_socket, socket_read) || ++ BIO_meth_set_puts (methods_socket, socket_puts) || ++ BIO_meth_set_gets (methods_socket, 0) || ++ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || ++ BIO_meth_set_create (methods_socket, socket_new) || ++ BIO_meth_set_destroy (methods_socket, socket_free)) ++ return NULL; ++ } ++ return methods_socket; ++} ++#endif + + BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { + BIO* ret = BIO_new(BIO_s_socket2()); + if (ret == NULL) { + return NULL; + } +- ret->ptr = socket; ++ BIO_set_data(ret, socket); + return ret; + } + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int socket_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -115,6 +136,14 @@ static int socket_new(BIO* b) { + b->ptr = 0; + return 1; + } ++#else ++static int socket_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int socket_free(BIO* b) { + if (b == NULL) +@@ -125,13 +154,11 @@ static int socket_free(BIO* b) { + static int socket_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Recv(out, outl); + if (result > 0) { + return result; +- } else if (result == 0) { +- b->num = 1; + } else if (socket->IsBlocking()) { + BIO_set_retry_read(b); + } +@@ -141,7 +168,7 @@ static int socket_read(BIO* b, char* out + static int socket_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Send(in, inl); + if (result > 0) { +@@ -164,7 +191,6 @@ static long socket_ctrl(BIO* b, int cmd, + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; +@@ -696,7 +722,9 @@ bool OpenSSLAdapter::VerifyServerName(SS + // We assign this to a local variable, instead of passing the address + // directly to ASN1_item_d2i. + // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. +- unsigned char* ext_value_data = extension->value->data; ++ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); ++ unsigned char* ext_value_data = extension_data->data; ++ long length = extension_data->length; + + #if OPENSSL_VERSION_NUMBER >= 0x0090800fL + const unsigned char **ext_value_data_ptr = +@@ -707,10 +735,10 @@ bool OpenSSLAdapter::VerifyServerName(SS + + if (meth->it) { + ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, +- extension->value->length, ++ length, + ASN1_ITEM_ptr(meth->it)); + } else { +- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); ++ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); + } + + STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); +diff -up libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 libjingle-0.6.14/talk/base/opensslidentity.cc +--- libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 2017-02-20 15:58:26.642105790 -0500 ++++ libjingle-0.6.14/talk/base/opensslidentity.cc 2017-02-20 16:04:05.130707597 -0500 +@@ -168,7 +168,12 @@ OpenSSLKeyPair::~OpenSSLKeyPair() { + } + + void OpenSSLKeyPair::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); ++#else ++ EVP_PKEY_up_ref(pkey_); ++#endif ++ + } + + #ifdef _DEBUG +@@ -314,7 +319,11 @@ std::string OpenSSLCertificate::ToPEMStr + } + + void OpenSSLCertificate::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); ++#else ++ X509_up_ref(x509_); ++#endif + } + + OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { +diff -up libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 libjingle-0.6.14/talk/base/opensslstreamadapter.cc +--- libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 2017-02-20 16:05:03.402259071 -0500 ++++ libjingle-0.6.14/talk/base/opensslstreamadapter.cc 2017-02-20 16:12:45.682795913 -0500 +@@ -86,6 +86,7 @@ static long stream_ctrl(BIO* h, int cmd, + static int stream_new(BIO* h); + static int stream_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_stream = { + BIO_TYPE_BIO, + "stream", +@@ -100,17 +101,37 @@ static BIO_METHOD methods_stream = { + }; + + static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } ++#else ++static BIO_METHOD *methods_stream = NULL; ++ ++static const BIO_METHOD * BIO_s_stream(void) { ++ if (methods_stream == NULL) { ++ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); ++ if (methods_stream == NULL || ++ BIO_meth_set_write (methods_stream, stream_write) || ++ BIO_meth_set_read (methods_stream, stream_read) || ++ BIO_meth_set_puts (methods_stream, stream_puts) || ++ BIO_meth_set_gets (methods_stream, 0) || ++ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || ++ BIO_meth_set_create (methods_stream, stream_new) || ++ BIO_meth_set_destroy (methods_stream, stream_free)) ++ return NULL; ++ } ++ return methods_stream; ++} ++#endif + + static BIO* BIO_new_stream(StreamInterface* stream) { + BIO* ret = BIO_new(BIO_s_stream()); + if (ret == NULL) + return NULL; +- ret->ptr = stream; ++ BIO_set_data(ret, stream); + return ret; + } + + // bio methods return 1 (or at least non-zero) on success and 0 on failure. + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int stream_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -118,6 +139,14 @@ static int stream_new(BIO* b) { + b->ptr = 0; + return 1; + } ++#else ++static int stream_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int stream_free(BIO* b) { + if (b == NULL) +@@ -128,15 +157,13 @@ static int stream_free(BIO* b) { + static int stream_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t read; + int error; + StreamResult result = stream->Read(out, outl, &read, &error); + if (result == SR_SUCCESS) { + return read; +- } else if (result == SR_EOS) { +- b->num = 1; + } else if (result == SR_BLOCK) { + BIO_set_retry_read(b); + } +@@ -146,7 +173,7 @@ static int stream_read(BIO* b, char* out + static int stream_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t written; + int error; +@@ -171,7 +198,6 @@ static long stream_ctrl(BIO* b, int cmd, + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; +--- libjingle/talk/base/openssldigest.cc.orig 2017-05-11 15:33:00.221086766 +0000 ++++ libjingle/talk/base/openssldigest.cc 2017-05-11 15:33:52.414339449 +0000 +@@ -32,16 +32,16 @@ + namespace talk_base { + + OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { +- EVP_MD_CTX_init(&ctx_); ++ EVP_MD_CTX_init(ctx_); + if (GetDigestEVP(algorithm, &md_)) { +- EVP_DigestInit_ex(&ctx_, md_, NULL); ++ EVP_DigestInit_ex(ctx_, md_, NULL); + } else { + md_ = NULL; + } + } + + OpenSSLDigest::~OpenSSLDigest() { +- EVP_MD_CTX_cleanup(&ctx_); ++ EVP_MD_CTX_destroy(ctx_); + } + + size_t OpenSSLDigest::Size() const { +@@ -55,16 +55,16 @@ + if (!md_) { + return; + } +- EVP_DigestUpdate(&ctx_, buf, len); ++ EVP_DigestUpdate(ctx_, buf, len); + } + + size_t OpenSSLDigest::Finish(void* buf, size_t len) { + if (!md_ || len < Size()) { + return 0; + } + unsigned int md_len; +- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); +- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s ++ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); ++ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s + ASSERT(md_len == Size()); + return md_len; + } +--- libjingle/talk/base/openssldigest.h.orig 2017-05-11 15:31:56.341185527 +0000 ++++ libjingle/talk/base/openssldigest.h 2017-05-11 15:32:49.631103132 +0000 +@@ -55,7 +55,7 @@ + size_t* len); + + private: +- EVP_MD_CTX ctx_; ++ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); + const EVP_MD* md_; + }; + Deleted: extra-i686/kopete-pthread-link.patch =================================================================== --- extra-i686/kopete-pthread-link.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-i686/kopete-pthread-link.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,12 +0,0 @@ -diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt -index 7ea8c3eb6..4b73085b8 100644 ---- a/protocols/jabber/libjingle/CMakeLists.txt -+++ b/protocols/jabber/libjingle/CMakeLists.txt -@@ -288,6 +288,7 @@ set ( call_LIBS - ${MEDIASTREAMER_LIBRARIES} - ${LIBORTP_LIBRARY} - ${CMAKE_DL_LIBS} -+ pthread - ) - - if ( NOT WIN32 ) Copied: kdenetwork-kopete/repos/extra-i686/kopete-pthread-link.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-pthread-link.patch) =================================================================== --- extra-i686/kopete-pthread-link.patch (rev 0) +++ extra-i686/kopete-pthread-link.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,12 @@ +diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt +index 7ea8c3eb6..4b73085b8 100644 +--- a/protocols/jabber/libjingle/CMakeLists.txt ++++ b/protocols/jabber/libjingle/CMakeLists.txt +@@ -288,6 +288,7 @@ set ( call_LIBS + ${MEDIASTREAMER_LIBRARIES} + ${LIBORTP_LIBRARY} + ${CMAKE_DL_LIBS} ++ pthread + ) + + if ( NOT WIN32 ) Deleted: extra-x86_64/PKGBUILD =================================================================== --- extra-x86_64/PKGBUILD 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-x86_64/PKGBUILD 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,53 +0,0 @@ -# $Id$ -# Maintainer: Felix Yan <felixonm...@archlinux.org> -# Maintainer: Antonio Rojas <aro...@archlinux.org> -# Contributor: Andrea Scarpino <and...@archlinux.org> - -pkgname=kdenetwork-kopete -pkgver=17.04.1 -pkgrel=1 -pkgdesc='Instant Messenger' -url='https://kde.org/applications/internet/kopete/' -arch=('i686' 'x86_64') -license=('GPL' 'LGPL' 'FDL') -groups=('kde-applications' 'kdenetwork') -depends=('kdebase-runtime' 'libotr' 'qimageblitz' 'kdepimlibs4' 'qca-qt4') -makedepends=('cmake' 'automoc4' 'boost' 'mediastreamer' 'libgadu' 'jsoncpp') -optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol') -source=("https://download.kde.org/stable/applications/${pkgver}/src/kopete-${pkgver}.tar.xz"{,.sig} - kopete-mediastreamer2.14.patch kopete-pthread-link.patch kopete-openssl-1.1.patch) -sha256sums=('d15fb89e7ec872492bd6014892cd5e7d534ff7826ed92715301ca12cc97369b3' - 'SKIP' - 'c34a268aaa058e563174581dbe37c15fed91e82326ec704d2a872463139865e0' - 'a7ebdd8dd4336b7ec085ef254bf18040f473b73379a8cd84569b28441a6c71df' - 'c3edbf1fe6d6a35a0260878937e9dd378358dbca0222015a0659670eab1de628') -validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7) # Albert Astals Cid <aa...@kde.org> - -prepare() { - mkdir -p build - -# Fix build with mediastreamer 2.14 - cd kopete-$pkgver - patch -p1 -i ../kopete-mediastreamer2.14.patch -# Fix linking to pthread in libjingle-call - patch -p1 -i ../kopete-pthread-link.patch -# Fix build with OpenSSL 1.1 (based on Fedora patch for libjingle) - cd protocols/jabber/libjingle - patch -p1 -i "$srcdir"/kopete-openssl-1.1.patch -} - -build() { - cd build - cmake ../kopete-$pkgver \ - -DCMAKE_BUILD_TYPE=Release \ - -DKDE4_BUILD_TESTS=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_Libmsn=OFF - make -} - -package() { - cd build - make DESTDIR="$pkgdir" install -} Copied: kdenetwork-kopete/repos/extra-x86_64/PKGBUILD (from rev 298319, kdenetwork-kopete/trunk/PKGBUILD) =================================================================== --- extra-x86_64/PKGBUILD (rev 0) +++ extra-x86_64/PKGBUILD 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,53 @@ +# $Id$ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Maintainer: Antonio Rojas <aro...@archlinux.org> +# Contributor: Andrea Scarpino <and...@archlinux.org> + +pkgname=kdenetwork-kopete +pkgver=17.04.2 +pkgrel=1 +pkgdesc='Instant Messenger' +url='https://kde.org/applications/internet/kopete/' +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL') +groups=('kde-applications' 'kdenetwork') +depends=('kdebase-runtime' 'libotr' 'qimageblitz' 'kdepimlibs4' 'qca-qt4') +makedepends=('cmake' 'automoc4' 'boost' 'mediastreamer' 'libgadu' 'jsoncpp') +optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol') +source=("https://download.kde.org/stable/applications/${pkgver}/src/kopete-${pkgver}.tar.xz"{,.sig} + kopete-mediastreamer2.14.patch kopete-pthread-link.patch kopete-openssl-1.1.patch) +sha256sums=('7d06dccd26d9cc0456ee3d94bd7f775eddb2662c1d1481e08d1796e6bfcd2dc4' + 'SKIP' + 'c34a268aaa058e563174581dbe37c15fed91e82326ec704d2a872463139865e0' + 'a7ebdd8dd4336b7ec085ef254bf18040f473b73379a8cd84569b28441a6c71df' + 'c3edbf1fe6d6a35a0260878937e9dd378358dbca0222015a0659670eab1de628') +validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7) # Albert Astals Cid <aa...@kde.org> + +prepare() { + mkdir -p build + +# Fix build with mediastreamer 2.14 + cd kopete-$pkgver + patch -p1 -i ../kopete-mediastreamer2.14.patch +# Fix linking to pthread in libjingle-call + patch -p1 -i ../kopete-pthread-link.patch +# Fix build with OpenSSL 1.1 (based on Fedora patch for libjingle) + cd protocols/jabber/libjingle + patch -p1 -i "$srcdir"/kopete-openssl-1.1.patch +} + +build() { + cd build + cmake ../kopete-$pkgver \ + -DCMAKE_BUILD_TYPE=Release \ + -DKDE4_BUILD_TESTS=OFF \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_SKIP_RPATH=ON \ + -DWITH_Libmsn=OFF + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install +} Deleted: extra-x86_64/kopete-mediastreamer2.14.patch =================================================================== --- extra-x86_64/kopete-mediastreamer2.14.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-x86_64/kopete-mediastreamer2.14.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,83 +0,0 @@ -diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake -index 47fe5c3..31802f0 100644 ---- a/cmake/modules/FindMediastreamer.cmake -+++ b/cmake/modules/FindMediastreamer.cmake -@@ -24,12 +24,19 @@ IF (MEDIASTREAMER_FOUND) - IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - SET(MEDIASTREAMER_LESS_2_9 TRUE) - SET(MEDIASTREAMER_LESS_2_11 TRUE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) - ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) - SET(MEDIASTREAMER_LESS_2_9 FALSE) - SET(MEDIASTREAMER_LESS_2_11 TRUE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) -+ ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) -+ SET(MEDIASTREAMER_LESS_2_9 FALSE) -+ SET(MEDIASTREAMER_LESS_2_11 FALSE) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) - ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - SET(MEDIASTREAMER_LESS_2_9 FALSE) - SET(MEDIASTREAMER_LESS_2_11 FALSE) -+ SET(MEDIASTREAMER_LESS_2_14 FALSE) - ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) - ELSE (MEDIASTREAMER_FOUND) -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -index bd3de2b..9379226 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -@@ -151,15 +151,25 @@ LinphoneVoiceChannel::LinphoneVoiceChannel(LinphoneMediaEngine*eng) - playport2 = PORT_UNUSED; - - #ifdef _DEBUG -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); - #else -+ ortp_set_log_level_mask(NULL, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); -+#endif -+#else -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_FATAL); -+#else -+ ortp_set_log_level_mask(NULL, ORTP_FATAL); - #endif -- -+#endif -+ - #ifdef MEDIASTREAMER_LESS_2_9 - audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ --#else -+#elseif MEDIASTREAMER_LESS_2_14 - audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ -+#else -+ audio_stream_ = audio_stream_new(NULL, -1, -1, 0); /* -1 means that function will choose some free port */ - #endif - - } -@@ -344,16 +354,24 @@ void LinphoneVoiceChannel::StartRing(bool bIncomingCall) - if (engine_->GetRingWav().size() > 0) - { - LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); -- } -+#else -+ ring_stream_ = ring_start (NULL, engine_->GetRingWav().c_str(), 1, sndcard); -+#endif -+ } - } - else - { - if (engine_->GetCallWav().size() > 0) - { - LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); -- } -+#else -+ ring_stream_ = ring_start (NULL, engine_->GetCallWav().c_str(), 1, sndcard); -+#endif -+ } - } - } - } Copied: kdenetwork-kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-mediastreamer2.14.patch) =================================================================== --- extra-x86_64/kopete-mediastreamer2.14.patch (rev 0) +++ extra-x86_64/kopete-mediastreamer2.14.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,83 @@ +diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake +index 47fe5c3..31802f0 100644 +--- a/cmake/modules/FindMediastreamer.cmake ++++ b/cmake/modules/FindMediastreamer.cmake +@@ -24,12 +24,19 @@ IF (MEDIASTREAMER_FOUND) + IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + SET(MEDIASTREAMER_LESS_2_9 TRUE) + SET(MEDIASTREAMER_LESS_2_11 TRUE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) + ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) + SET(MEDIASTREAMER_LESS_2_9 FALSE) + SET(MEDIASTREAMER_LESS_2_11 TRUE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) ++ ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) ++ SET(MEDIASTREAMER_LESS_2_9 FALSE) ++ SET(MEDIASTREAMER_LESS_2_11 FALSE) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) + ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + SET(MEDIASTREAMER_LESS_2_9 FALSE) + SET(MEDIASTREAMER_LESS_2_11 FALSE) ++ SET(MEDIASTREAMER_LESS_2_14 FALSE) + ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) + ELSE (MEDIASTREAMER_FOUND) +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +index bd3de2b..9379226 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +@@ -151,15 +151,25 @@ LinphoneVoiceChannel::LinphoneVoiceChannel(LinphoneMediaEngine*eng) + playport2 = PORT_UNUSED; + + #ifdef _DEBUG ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); + #else ++ ortp_set_log_level_mask(NULL, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); ++#endif ++#else ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_FATAL); ++#else ++ ortp_set_log_level_mask(NULL, ORTP_FATAL); + #endif +- ++#endif ++ + #ifdef MEDIASTREAMER_LESS_2_9 + audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ +-#else ++#elseif MEDIASTREAMER_LESS_2_14 + audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ ++#else ++ audio_stream_ = audio_stream_new(NULL, -1, -1, 0); /* -1 means that function will choose some free port */ + #endif + + } +@@ -344,16 +354,24 @@ void LinphoneVoiceChannel::StartRing(bool bIncomingCall) + if (engine_->GetRingWav().size() > 0) + { + LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); +- } ++#else ++ ring_stream_ = ring_start (NULL, engine_->GetRingWav().c_str(), 1, sndcard); ++#endif ++ } + } + else + { + if (engine_->GetCallWav().size() > 0) + { + LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); +- } ++#else ++ ring_stream_ = ring_start (NULL, engine_->GetCallWav().c_str(), 1, sndcard); ++#endif ++ } + } + } + } Deleted: extra-x86_64/kopete-openssl-1.1.patch =================================================================== --- extra-x86_64/kopete-openssl-1.1.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-x86_64/kopete-openssl-1.1.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,300 +0,0 @@ -diff -up libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 libjingle-0.6.14/talk/base/openssladapter.cc ---- libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 2017-02-20 15:00:27.678103635 -0500 -+++ libjingle-0.6.14/talk/base/openssladapter.cc 2017-02-20 15:57:36.884341533 -0500 -@@ -84,6 +84,7 @@ static long socket_ctrl(BIO* h, int cmd, - static int socket_new(BIO* h); - static int socket_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_socket = { - BIO_TYPE_BIO, - "socket", -@@ -98,16 +99,36 @@ static BIO_METHOD methods_socket = { - }; - - BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } -+#else -+static BIO_METHOD *methods_socket = NULL; -+ -+static const BIO_METHOD * BIO_s_socket2(void) { -+ if (methods_socket == NULL) { -+ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); -+ if (methods_socket == NULL || -+ BIO_meth_set_write (methods_socket, socket_write) || -+ BIO_meth_set_read (methods_socket, socket_read) || -+ BIO_meth_set_puts (methods_socket, socket_puts) || -+ BIO_meth_set_gets (methods_socket, 0) || -+ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || -+ BIO_meth_set_create (methods_socket, socket_new) || -+ BIO_meth_set_destroy (methods_socket, socket_free)) -+ return NULL; -+ } -+ return methods_socket; -+} -+#endif - - BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { - BIO* ret = BIO_new(BIO_s_socket2()); - if (ret == NULL) { - return NULL; - } -- ret->ptr = socket; -+ BIO_set_data(ret, socket); - return ret; - } - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int socket_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -115,6 +136,14 @@ static int socket_new(BIO* b) { - b->ptr = 0; - return 1; - } -+#else -+static int socket_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int socket_free(BIO* b) { - if (b == NULL) -@@ -125,13 +154,11 @@ static int socket_free(BIO* b) { - static int socket_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Recv(out, outl); - if (result > 0) { - return result; -- } else if (result == 0) { -- b->num = 1; - } else if (socket->IsBlocking()) { - BIO_set_retry_read(b); - } -@@ -141,7 +168,7 @@ static int socket_read(BIO* b, char* out - static int socket_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Send(in, inl); - if (result > 0) { -@@ -164,7 +191,6 @@ static long socket_ctrl(BIO* b, int cmd, - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; -@@ -696,7 +722,9 @@ bool OpenSSLAdapter::VerifyServerName(SS - // We assign this to a local variable, instead of passing the address - // directly to ASN1_item_d2i. - // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. -- unsigned char* ext_value_data = extension->value->data; -+ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); -+ unsigned char* ext_value_data = extension_data->data; -+ long length = extension_data->length; - - #if OPENSSL_VERSION_NUMBER >= 0x0090800fL - const unsigned char **ext_value_data_ptr = -@@ -707,10 +735,10 @@ bool OpenSSLAdapter::VerifyServerName(SS - - if (meth->it) { - ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, -- extension->value->length, -+ length, - ASN1_ITEM_ptr(meth->it)); - } else { -- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); -+ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); - } - - STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); -diff -up libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 libjingle-0.6.14/talk/base/opensslidentity.cc ---- libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 2017-02-20 15:58:26.642105790 -0500 -+++ libjingle-0.6.14/talk/base/opensslidentity.cc 2017-02-20 16:04:05.130707597 -0500 -@@ -168,7 +168,12 @@ OpenSSLKeyPair::~OpenSSLKeyPair() { - } - - void OpenSSLKeyPair::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); -+#else -+ EVP_PKEY_up_ref(pkey_); -+#endif -+ - } - - #ifdef _DEBUG -@@ -314,7 +319,11 @@ std::string OpenSSLCertificate::ToPEMStr - } - - void OpenSSLCertificate::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); -+#else -+ X509_up_ref(x509_); -+#endif - } - - OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { -diff -up libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 libjingle-0.6.14/talk/base/opensslstreamadapter.cc ---- libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 2017-02-20 16:05:03.402259071 -0500 -+++ libjingle-0.6.14/talk/base/opensslstreamadapter.cc 2017-02-20 16:12:45.682795913 -0500 -@@ -86,6 +86,7 @@ static long stream_ctrl(BIO* h, int cmd, - static int stream_new(BIO* h); - static int stream_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_stream = { - BIO_TYPE_BIO, - "stream", -@@ -100,17 +101,37 @@ static BIO_METHOD methods_stream = { - }; - - static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } -+#else -+static BIO_METHOD *methods_stream = NULL; -+ -+static const BIO_METHOD * BIO_s_stream(void) { -+ if (methods_stream == NULL) { -+ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); -+ if (methods_stream == NULL || -+ BIO_meth_set_write (methods_stream, stream_write) || -+ BIO_meth_set_read (methods_stream, stream_read) || -+ BIO_meth_set_puts (methods_stream, stream_puts) || -+ BIO_meth_set_gets (methods_stream, 0) || -+ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || -+ BIO_meth_set_create (methods_stream, stream_new) || -+ BIO_meth_set_destroy (methods_stream, stream_free)) -+ return NULL; -+ } -+ return methods_stream; -+} -+#endif - - static BIO* BIO_new_stream(StreamInterface* stream) { - BIO* ret = BIO_new(BIO_s_stream()); - if (ret == NULL) - return NULL; -- ret->ptr = stream; -+ BIO_set_data(ret, stream); - return ret; - } - - // bio methods return 1 (or at least non-zero) on success and 0 on failure. - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int stream_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -118,6 +139,14 @@ static int stream_new(BIO* b) { - b->ptr = 0; - return 1; - } -+#else -+static int stream_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int stream_free(BIO* b) { - if (b == NULL) -@@ -128,15 +157,13 @@ static int stream_free(BIO* b) { - static int stream_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t read; - int error; - StreamResult result = stream->Read(out, outl, &read, &error); - if (result == SR_SUCCESS) { - return read; -- } else if (result == SR_EOS) { -- b->num = 1; - } else if (result == SR_BLOCK) { - BIO_set_retry_read(b); - } -@@ -146,7 +173,7 @@ static int stream_read(BIO* b, char* out - static int stream_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t written; - int error; -@@ -171,7 +198,6 @@ static long stream_ctrl(BIO* b, int cmd, - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; ---- libjingle/talk/base/openssldigest.cc.orig 2017-05-11 15:33:00.221086766 +0000 -+++ libjingle/talk/base/openssldigest.cc 2017-05-11 15:33:52.414339449 +0000 -@@ -32,16 +32,16 @@ - namespace talk_base { - - OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { -- EVP_MD_CTX_init(&ctx_); -+ EVP_MD_CTX_init(ctx_); - if (GetDigestEVP(algorithm, &md_)) { -- EVP_DigestInit_ex(&ctx_, md_, NULL); -+ EVP_DigestInit_ex(ctx_, md_, NULL); - } else { - md_ = NULL; - } - } - - OpenSSLDigest::~OpenSSLDigest() { -- EVP_MD_CTX_cleanup(&ctx_); -+ EVP_MD_CTX_destroy(ctx_); - } - - size_t OpenSSLDigest::Size() const { -@@ -55,16 +55,16 @@ - if (!md_) { - return; - } -- EVP_DigestUpdate(&ctx_, buf, len); -+ EVP_DigestUpdate(ctx_, buf, len); - } - - size_t OpenSSLDigest::Finish(void* buf, size_t len) { - if (!md_ || len < Size()) { - return 0; - } - unsigned int md_len; -- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); -- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s -+ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); -+ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s - ASSERT(md_len == Size()); - return md_len; - } ---- libjingle/talk/base/openssldigest.h.orig 2017-05-11 15:31:56.341185527 +0000 -+++ libjingle/talk/base/openssldigest.h 2017-05-11 15:32:49.631103132 +0000 -@@ -55,7 +55,7 @@ - size_t* len); - - private: -- EVP_MD_CTX ctx_; -+ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); - const EVP_MD* md_; - }; - Copied: kdenetwork-kopete/repos/extra-x86_64/kopete-openssl-1.1.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-openssl-1.1.patch) =================================================================== --- extra-x86_64/kopete-openssl-1.1.patch (rev 0) +++ extra-x86_64/kopete-openssl-1.1.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,300 @@ +diff -up libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 libjingle-0.6.14/talk/base/openssladapter.cc +--- libjingle-0.6.14/talk/base/openssladapter.cc.openssl11 2017-02-20 15:00:27.678103635 -0500 ++++ libjingle-0.6.14/talk/base/openssladapter.cc 2017-02-20 15:57:36.884341533 -0500 +@@ -84,6 +84,7 @@ static long socket_ctrl(BIO* h, int cmd, + static int socket_new(BIO* h); + static int socket_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_socket = { + BIO_TYPE_BIO, + "socket", +@@ -98,16 +99,36 @@ static BIO_METHOD methods_socket = { + }; + + BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } ++#else ++static BIO_METHOD *methods_socket = NULL; ++ ++static const BIO_METHOD * BIO_s_socket2(void) { ++ if (methods_socket == NULL) { ++ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); ++ if (methods_socket == NULL || ++ BIO_meth_set_write (methods_socket, socket_write) || ++ BIO_meth_set_read (methods_socket, socket_read) || ++ BIO_meth_set_puts (methods_socket, socket_puts) || ++ BIO_meth_set_gets (methods_socket, 0) || ++ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || ++ BIO_meth_set_create (methods_socket, socket_new) || ++ BIO_meth_set_destroy (methods_socket, socket_free)) ++ return NULL; ++ } ++ return methods_socket; ++} ++#endif + + BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { + BIO* ret = BIO_new(BIO_s_socket2()); + if (ret == NULL) { + return NULL; + } +- ret->ptr = socket; ++ BIO_set_data(ret, socket); + return ret; + } + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int socket_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -115,6 +136,14 @@ static int socket_new(BIO* b) { + b->ptr = 0; + return 1; + } ++#else ++static int socket_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int socket_free(BIO* b) { + if (b == NULL) +@@ -125,13 +154,11 @@ static int socket_free(BIO* b) { + static int socket_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Recv(out, outl); + if (result > 0) { + return result; +- } else if (result == 0) { +- b->num = 1; + } else if (socket->IsBlocking()) { + BIO_set_retry_read(b); + } +@@ -141,7 +168,7 @@ static int socket_read(BIO* b, char* out + static int socket_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Send(in, inl); + if (result > 0) { +@@ -164,7 +191,6 @@ static long socket_ctrl(BIO* b, int cmd, + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; +@@ -696,7 +722,9 @@ bool OpenSSLAdapter::VerifyServerName(SS + // We assign this to a local variable, instead of passing the address + // directly to ASN1_item_d2i. + // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. +- unsigned char* ext_value_data = extension->value->data; ++ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); ++ unsigned char* ext_value_data = extension_data->data; ++ long length = extension_data->length; + + #if OPENSSL_VERSION_NUMBER >= 0x0090800fL + const unsigned char **ext_value_data_ptr = +@@ -707,10 +735,10 @@ bool OpenSSLAdapter::VerifyServerName(SS + + if (meth->it) { + ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, +- extension->value->length, ++ length, + ASN1_ITEM_ptr(meth->it)); + } else { +- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); ++ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); + } + + STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); +diff -up libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 libjingle-0.6.14/talk/base/opensslidentity.cc +--- libjingle-0.6.14/talk/base/opensslidentity.cc.openssl11 2017-02-20 15:58:26.642105790 -0500 ++++ libjingle-0.6.14/talk/base/opensslidentity.cc 2017-02-20 16:04:05.130707597 -0500 +@@ -168,7 +168,12 @@ OpenSSLKeyPair::~OpenSSLKeyPair() { + } + + void OpenSSLKeyPair::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); ++#else ++ EVP_PKEY_up_ref(pkey_); ++#endif ++ + } + + #ifdef _DEBUG +@@ -314,7 +319,11 @@ std::string OpenSSLCertificate::ToPEMStr + } + + void OpenSSLCertificate::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); ++#else ++ X509_up_ref(x509_); ++#endif + } + + OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { +diff -up libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 libjingle-0.6.14/talk/base/opensslstreamadapter.cc +--- libjingle-0.6.14/talk/base/opensslstreamadapter.cc.openssl11 2017-02-20 16:05:03.402259071 -0500 ++++ libjingle-0.6.14/talk/base/opensslstreamadapter.cc 2017-02-20 16:12:45.682795913 -0500 +@@ -86,6 +86,7 @@ static long stream_ctrl(BIO* h, int cmd, + static int stream_new(BIO* h); + static int stream_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_stream = { + BIO_TYPE_BIO, + "stream", +@@ -100,17 +101,37 @@ static BIO_METHOD methods_stream = { + }; + + static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } ++#else ++static BIO_METHOD *methods_stream = NULL; ++ ++static const BIO_METHOD * BIO_s_stream(void) { ++ if (methods_stream == NULL) { ++ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); ++ if (methods_stream == NULL || ++ BIO_meth_set_write (methods_stream, stream_write) || ++ BIO_meth_set_read (methods_stream, stream_read) || ++ BIO_meth_set_puts (methods_stream, stream_puts) || ++ BIO_meth_set_gets (methods_stream, 0) || ++ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || ++ BIO_meth_set_create (methods_stream, stream_new) || ++ BIO_meth_set_destroy (methods_stream, stream_free)) ++ return NULL; ++ } ++ return methods_stream; ++} ++#endif + + static BIO* BIO_new_stream(StreamInterface* stream) { + BIO* ret = BIO_new(BIO_s_stream()); + if (ret == NULL) + return NULL; +- ret->ptr = stream; ++ BIO_set_data(ret, stream); + return ret; + } + + // bio methods return 1 (or at least non-zero) on success and 0 on failure. + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int stream_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -118,6 +139,14 @@ static int stream_new(BIO* b) { + b->ptr = 0; + return 1; + } ++#else ++static int stream_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int stream_free(BIO* b) { + if (b == NULL) +@@ -128,15 +157,13 @@ static int stream_free(BIO* b) { + static int stream_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t read; + int error; + StreamResult result = stream->Read(out, outl, &read, &error); + if (result == SR_SUCCESS) { + return read; +- } else if (result == SR_EOS) { +- b->num = 1; + } else if (result == SR_BLOCK) { + BIO_set_retry_read(b); + } +@@ -146,7 +173,7 @@ static int stream_read(BIO* b, char* out + static int stream_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t written; + int error; +@@ -171,7 +198,6 @@ static long stream_ctrl(BIO* b, int cmd, + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; +--- libjingle/talk/base/openssldigest.cc.orig 2017-05-11 15:33:00.221086766 +0000 ++++ libjingle/talk/base/openssldigest.cc 2017-05-11 15:33:52.414339449 +0000 +@@ -32,16 +32,16 @@ + namespace talk_base { + + OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { +- EVP_MD_CTX_init(&ctx_); ++ EVP_MD_CTX_init(ctx_); + if (GetDigestEVP(algorithm, &md_)) { +- EVP_DigestInit_ex(&ctx_, md_, NULL); ++ EVP_DigestInit_ex(ctx_, md_, NULL); + } else { + md_ = NULL; + } + } + + OpenSSLDigest::~OpenSSLDigest() { +- EVP_MD_CTX_cleanup(&ctx_); ++ EVP_MD_CTX_destroy(ctx_); + } + + size_t OpenSSLDigest::Size() const { +@@ -55,16 +55,16 @@ + if (!md_) { + return; + } +- EVP_DigestUpdate(&ctx_, buf, len); ++ EVP_DigestUpdate(ctx_, buf, len); + } + + size_t OpenSSLDigest::Finish(void* buf, size_t len) { + if (!md_ || len < Size()) { + return 0; + } + unsigned int md_len; +- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); +- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s ++ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); ++ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s + ASSERT(md_len == Size()); + return md_len; + } +--- libjingle/talk/base/openssldigest.h.orig 2017-05-11 15:31:56.341185527 +0000 ++++ libjingle/talk/base/openssldigest.h 2017-05-11 15:32:49.631103132 +0000 +@@ -55,7 +55,7 @@ + size_t* len); + + private: +- EVP_MD_CTX ctx_; ++ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); + const EVP_MD* md_; + }; + Deleted: extra-x86_64/kopete-pthread-link.patch =================================================================== --- extra-x86_64/kopete-pthread-link.patch 2017-06-08 12:01:54 UTC (rev 298319) +++ extra-x86_64/kopete-pthread-link.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -1,12 +0,0 @@ -diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt -index 7ea8c3eb6..4b73085b8 100644 ---- a/protocols/jabber/libjingle/CMakeLists.txt -+++ b/protocols/jabber/libjingle/CMakeLists.txt -@@ -288,6 +288,7 @@ set ( call_LIBS - ${MEDIASTREAMER_LIBRARIES} - ${LIBORTP_LIBRARY} - ${CMAKE_DL_LIBS} -+ pthread - ) - - if ( NOT WIN32 ) Copied: kdenetwork-kopete/repos/extra-x86_64/kopete-pthread-link.patch (from rev 298319, kdenetwork-kopete/trunk/kopete-pthread-link.patch) =================================================================== --- extra-x86_64/kopete-pthread-link.patch (rev 0) +++ extra-x86_64/kopete-pthread-link.patch 2017-06-08 12:02:19 UTC (rev 298320) @@ -0,0 +1,12 @@ +diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt +index 7ea8c3eb6..4b73085b8 100644 +--- a/protocols/jabber/libjingle/CMakeLists.txt ++++ b/protocols/jabber/libjingle/CMakeLists.txt +@@ -288,6 +288,7 @@ set ( call_LIBS + ${MEDIASTREAMER_LIBRARIES} + ${LIBORTP_LIBRARY} + ${CMAKE_DL_LIBS} ++ pthread + ) + + if ( NOT WIN32 )