Bug#828522: qt4-x11: FTBFS with openssl 1.1.0

2017-11-11 Thread Dmitry Eremin-Solenikov
2017-11-07 21:23 GMT+03:00 Lisandro Damián Nicanor Pérez Meyer
:
> Hi Dmitry!
>
> On 13 October 2017 at 21:43, Dmitry Eremin-Solenikov
>> Also please note, that I had to apply two more fixes to build Qt4
>> properly (see second attachment):
>>
>> - In debian/rules define DEB_HOST_ARCH
>>
>> - In qt4-x11-4.8.7+dfsg/config.tests/unix/alsa/alsatest.cpp support
>>   libasound2 >= 1.1.0
>
> I haven't seen the need for this (maybe because the last time I've
> built qt4 this was not a problem). Did you try your builds on a clen
> chroot?

I don't remember about DEB_HOST_ARCH at this moment.
alsatest.cpp fix is required, because original test validated that
ALSA version is 1.0.x, which is no longer the case.

-- 
With best wishes
Dmitry



Bug#828522: qt4-x11: FTBFS with openssl 1.1.0

2017-11-07 Thread Lisandro Damián Nicanor Pérez Meyer
Hi Dmitry!

On 13 October 2017 at 21:43, Dmitry Eremin-Solenikov
 wrote:
> Source: qt4-x11
> Version: 4:4.8.7+dfsg-11
> Followup-For: Bug #828522
>
> Hello,
>
> Please try adding the attached patch, which should fix the rest of
> incompatibilities between qt4-x11 and OpenSSL 1.1.0. With this patch I'm
> able to successfully use Psi jabber client together with Qt4 built
> against OpenSSL 1.1.0.

I will try it.

> Also please note, that I had to apply two more fixes to build Qt4
> properly (see second attachment):
>
> - In debian/rules define DEB_HOST_ARCH
>
> - In qt4-x11-4.8.7+dfsg/config.tests/unix/alsa/alsatest.cpp support
>   libasound2 >= 1.1.0

I haven't seen the need for this (maybe because the last time I've
built qt4 this was not a problem). Did you try your builds on a clen
chroot?



Bug#828522: qt4-x11: FTBFS with openssl 1.1.0

2017-10-13 Thread Dmitry Eremin-Solenikov
Source: qt4-x11
Version: 4:4.8.7+dfsg-11
Followup-For: Bug #828522

Hello,

Please try adding the attached patch, which should fix the rest of
incompatibilities between qt4-x11 and OpenSSL 1.1.0. With this patch I'm
able to successfully use Psi jabber client together with Qt4 built
against OpenSSL 1.1.0.

Also please note, that I had to apply two more fixes to build Qt4
properly (see second attachment):

- In debian/rules define DEB_HOST_ARCH

- In qt4-x11-4.8.7+dfsg/config.tests/unix/alsa/alsatest.cpp support
  libasound2 >= 1.1.0

-- 
With best wishes
Dmitry

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.12.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8), LANGUAGE=en_GB:en 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
diff -pur qt4-x11-4.8.7+dfsg-old/src/network/ssl/qsslsocket_openssl_p.h 
qt4-x11-4.8.7+dfsg/src/network/ssl/qsslsocket_openssl_p.h
--- qt4-x11-4.8.7+dfsg-old/src/network/ssl/qsslsocket_openssl_p.h   
2015-05-07 17:14:44.0 +0300
+++ qt4-x11-4.8.7+dfsg/src/network/ssl/qsslsocket_openssl_p.h   2017-10-14 
03:09:55.942302611 +0300
@@ -84,6 +84,10 @@
 #include 
 #endif
 
+#if OPENSSL_VERSION_NUMBER >= 0x1010L
+#define OPENSSL_NO_SSL2
+#endif
+
 #if OPENSSL_VERSION_NUMBER >= 0x1000L
 typedef _STACK STACK;
 #endif
diff -pur qt4-x11-4.8.7+dfsg-old/src/network/ssl/qsslsocket_openssl_symbols.cpp 
qt4-x11-4.8.7+dfsg/src/network/ssl/qsslsocket_openssl_symbols.cpp
--- qt4-x11-4.8.7+dfsg-old/src/network/ssl/qsslsocket_openssl_symbols.cpp   
2017-10-14 03:35:00.0 +0300
+++ qt4-x11-4.8.7+dfsg/src/network/ssl/qsslsocket_openssl_symbols.cpp   
2017-10-14 03:26:33.356393367 +0300
@@ -117,9 +117,11 @@ DEFINEFUNC3(int, BIO_read, BIO *a, a, vo
 DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
 DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, 
return)
 DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
+#if OPENSSL_VERSION_NUMBER < 0x1010L
 DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
 DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char 
*, int), a, return, DUMMYARG)
 DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, 
DUMMYARG)
+#endif
 DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
 DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
 #if  OPENSSL_VERSION_NUMBER < 0x00908000L
@@ -157,6 +159,7 @@ DEFINEFUNC2(int, PEM_write_bio_RSA_PUBKE
 DEFINEFUNC2(void, RAND_seed, const void *a, a, int b, b, return, DUMMYARG)
 DEFINEFUNC(int, RAND_status, void, DUMMYARG, return -1, return)
 DEFINEFUNC(void, RSA_free, RSA *a, a, return, DUMMYARG)
+#if OPENSSL_VERSION_NUMBER < 0x1010L
 DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
 DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, 
DUMMYARG)
 #if OPENSSL_VERSION_NUMBER >= 0x1000L
@@ -166,6 +169,12 @@ DEFINEFUNC2(void *, sk_value, STACK *a,
 DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
 DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
 #endif
+#else
+DEFINEFUNC(int, OPENSSL_sk_num, STACK *a, a, return -1, return)
+DEFINEFUNC2(void, OPENSSL_sk_pop_free, STACK *a, a, void (*b)(void*), b, 
return, DUMMYARG)
+DEFINEFUNC(void, OPENSSL_sk_free, _STACK *a, a, return, DUMMYARG)
+DEFINEFUNC2(void *, OPENSSL_sk_value, STACK *a, a, int b, b, return 0, return)
+#endif
 DEFINEFUNC(int, SSL_accept, SSL *a, a, return -1, return)
 DEFINEFUNC(int, SSL_clear, SSL *a, a, return -1, return)
 DEFINEFUNC3(char *, SSL_CIPHER_description, SSL_CIPHER *a, a, char *b, b, int 
c, c, return 0, return)
@@ -213,8 +222,12 @@ DEFINEFUNC(long, SSL_get_verify_result,
 #else
 DEFINEFUNC(long, SSL_get_verify_result, SSL *a, a, return -1, return)
 #endif
+#if OPENSSL_VERSION_NUMBER < 0x1010L
 DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return)
 DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG)
+#else
+DEFINEFUNC2(int, OPENSSL_init_ssl, uint64_t opts, opts, void *settings, 
settings, return -1, return)
+#endif
 DEFINEFUNC(SSL *, SSL_new, SSL_CTX *a, a, return 0, return)
 #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
 DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, void 
*parg, parg, return -1, return)
@@ -231,7 +244,11 @@ DEFINEFUNC(const SSL_METHOD *, SSLv2_cli
 #ifndef OPENSSL_NO_SSL3_METHOD
 DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 
0, return)
 #endif
+#if OPENSSL_VERSION_NUMBER < 0x1010L
 DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, 
return 0, return)
+#else
+DEFINEFUNC(const SSL_METHOD *, TLS_client_method, DUMMYARG, DUMMYARG, return 
0, return)
+#endif
 DEFINEFUNC(const 

Bug#828522: qt4-x11: FTBFS with openssl 1.1.0

2017-10-12 Thread Sebastian Andrzej Siewior
Hi,

this is a remainder about the openssl transition [0]. We really want to
remove libssl1.0-dev from unstable for Buster. I will raise the severity
of this bug to serious in a month. Please react before that happens.

[0] https://bugs.debian.org/871056#55

Sebastian



Bug#828522: qt4-x11: FTBFS with openssl 1.1.0

2016-06-26 Thread Kurt Roeckx
Source: qt4-x11
Version: 4.8.7+dfsg-7
Severity: important
Control: block 827061 by -1

Hi,

OpenSSL 1.1.0 is about to released.  During a rebuild of all packages using
OpenSSL this package fail to build.  A log of that build can be found at:
https://breakpoint.cc/openssl-1.1-rebuild-2016-05-29/Attempted/qt4-x11_4.8.7+dfsg-7_amd64-20160529-1519

On https://wiki.openssl.org/index.php/1.1_API_Changes you can see various of the
reasons why it might fail.  There are also updated man pages at
https://www.openssl.org/docs/manmaster/ that should contain useful information.

There is a libssl-dev package available in experimental that contains a recent
snapshot, I suggest you try building against that to see if everything works.

If you have problems making things work, feel free to contact us.


Kurt