[arch-commits] Commit in kdelibs3/trunk (PKGBUILD openssl.patch)

Andrea Scarpino andrea at archlinux.org
Thu May 12 16:07:27 UTC 2011


    Date: Thursday, May 12, 2011 @ 12:07:27
  Author: andrea
Revision: 123704

heimdal rebuild; patched to build with openssl 1.x

Added:
  kdelibs3/trunk/openssl.patch
Modified:
  kdelibs3/trunk/PKGBUILD	(contents, properties)

---------------+
 PKGBUILD      |   51 ++++++++-------
 openssl.patch |  180 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 208 insertions(+), 23 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2011-05-12 15:50:24 UTC (rev 123703)
+++ PKGBUILD	2011-05-12 16:07:27 UTC (rev 123704)
@@ -1,10 +1,11 @@
-# $ Id: $
-# Maintainer: Pierre Schmitz <pierre at archlinux.de>
+# $Id$
+# Maintainer:
+# Contributor: Pierre Schmitz <pierre at archlinux.de>
 # Contributor: Tobias Powalowski <tpowa at archlinux.org>
 
 pkgname=kdelibs3
 pkgver=3.5.10
-pkgrel=10
+pkgrel=11
 pkgdesc='KDE3 Core Libraries'
 arch=('i686' 'x86_64')
 url='http://www.kde.org'
@@ -19,23 +20,26 @@
         'acinclude.patch'
         'kde3.profile'
         'kde4-compatibility.patch'
-        'kconf_updaterc')
+        'kconf_updaterc'
+        'openssl.patch')
 md5sums=('43cd55ed15f63b5738d620ef9f9fd568'
          'ca50d4515468cfda80946690c53073f3'
          'a5aedcc9550809ce6672a7dddf9f5ad4'
          'ab14ce2c40698e24e162284d50c6f466'
          'f4e0735475b5de59d738d68a9f467b77'
-         '11e49bc6aca497f55610146afe217751')
+         '11e49bc6aca497f55610146afe217751'
+         '242f0e4750c019e62e285c0aad0c03b8')
 
 build() {
-	cd $srcdir/kdelibs-${pkgver}
+	cd "$srcdir"/kdelibs-${pkgver}
 
 	. /etc/profile.d/qt3.sh
-	. $srcdir/kde3.profile
+	. "$srcdir"/kde3.profile
 
-	patch -p0 -i $srcdir/kde-3.5-1074156.patch || return 1
-	patch -p1 -i $srcdir/acinclude.patch || return 1
-	patch -p1 -i $srcdir/kde4-compatibility.patch || return 1
+	patch -p0 -i "$srcdir"/kde-3.5-1074156.patch
+	patch -p1 -i "$srcdir"/acinclude.patch
+	patch -p1 -i "$srcdir"/kde4-compatibility.patch
+    patch -p1 -i "${srcdir}"/openssl.patch
 
 	sed -iautomake -e 's|automake\*1.10\*|automake\*1.1[0-5]\*|' admin/cvs.sh
 	make -f admin/Makefile.common cvs
@@ -54,32 +58,33 @@
 		--enable-final \
 		--enable-new-ldflags LDFLAGS="${LDFLAGS} -L/opt/qt/lib" \
 		--without-arts \
-		--disable-libfam || return 1
-	make || return 1
+		--disable-libfam
+	make
 }
 
 package() {
-	cd $srcdir/kdelibs-${pkgver}
+	cd "$srcdir"/kdelibs-${pkgver}
 
-	make DESTDIR=$pkgdir install || return 1
+	make DESTDIR="$pkgdir" install
 
 	# disable broken kconf_update by default
-	install -D -m644 $srcdir/kconf_updaterc $pkgdir/opt/kde/share/config/kconf_updaterc
+	install -D -m644 "$srcdir"/kconf_updaterc \
+      "$pkgdir"/opt/kde/share/config/kconf_updaterc
 
 	# install KDE3 profile
-	install -D -m755 $srcdir/kde3.profile $pkgdir/etc/profile.d/kde3.sh
+	install -D -m755 "$srcdir"/kde3.profile "$pkgdir"/etc/profile.d/kde3.sh
 	# make KDE3 styles available to Qt3
-	install -d -m755 $pkgdir/opt/qt/plugins
-	ln -sf /opt/kde/lib/kde3/plugins/styles $pkgdir/opt/qt/plugins/styles
+	install -d -m755 "$pkgdir"/opt/qt/plugins
+	ln -sf /opt/kde/lib/kde3/plugins/styles "$pkgdir"/opt/qt/plugins/styles
 
 	# cert bundle seems to be hardcoded
 	# link it to the one from ca-certificates
-	rm -f $pkgdir/opt/kde/share/apps/kssl/ca-bundle.crt
-	ln -sf /etc/ssl/certs/ca-certificates.crt $pkgdir/opt/kde/share/apps/kssl/ca-bundle.crt
+	rm -f "$pkgdir"/opt/kde/share/apps/kssl/ca-bundle.crt
+	ln -sf /etc/ssl/certs/ca-certificates.crt "$pkgdir"/opt/kde/share/apps/kssl/ca-bundle.crt
 
 	# we don't have khelpcenter anyway
-	rm -rf $pkgdir/opt/kde/share/doc
+	rm -rf "$pkgdir"/opt/kde/share/doc
 
-	install -d -m755 ${pkgdir}/etc/ld.so.conf.d/
-	echo '/opt/kde/lib' > ${pkgdir}/etc/ld.so.conf.d/kdelibs3.conf
+	install -d -m755 "${pkgdir}"/etc/ld.so.conf.d/
+	echo '/opt/kde/lib' > "${pkgdir}"/etc/ld.so.conf.d/kdelibs3.conf
 }


Property changes on: kdelibs3/trunk/PKGBUILD
___________________________________________________________________
Added: svn:keywords
   + Id

Added: openssl.patch
===================================================================
--- openssl.patch	                        (rev 0)
+++ openssl.patch	2011-05-12 16:07:27 UTC (rev 123704)
@@ -0,0 +1,180 @@
+diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.cc
+--- kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x	2009-09-04 23:10:53.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/kopenssl.cc	2009-09-04 23:10:53.000000000 +0200
+@@ -96,9 +96,14 @@ static int  (*K_BIO_write) (BIO *b, cons
+ static int (*K_PEM_ASN1_write_bio) (int (*)(),const char *,BIO *,char *,
+                                    const EVP_CIPHER *,unsigned char *,int ,
+                                             pem_password_cb *, void *) = 0L;
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++static int (*K_ASN1_item_i2d_fp)(ASN1_ITEM *,FILE *,unsigned char *) = 0L;
++static ASN1_ITEM *K_NETSCAPE_X509_it = 0L;
++#else
+ static ASN1_METHOD* (*K_X509_asn1_meth) (void) = 0L;
+ static int (*K_ASN1_i2d_fp)(int (*)(),FILE *,unsigned char *) = 0L;
+ static int (*K_i2d_ASN1_HEADER)(ASN1_HEADER *, unsigned char **) = 0L;
++#endif
+ static int (*K_X509_print_fp)  (FILE *, X509*) = 0L;
+ static int (*K_i2d_PKCS12)  (PKCS12*, unsigned char**) = 0L;
+ static int (*K_i2d_PKCS12_fp)  (FILE *, PKCS12*) = 0L;
+@@ -430,9 +435,14 @@ KConfig *cfg;
+       K_BIO_ctrl = (long (*) (BIO *,int,long,void *)) _cryptoLib->symbol("BIO_ctrl");
+       K_BIO_write = (int (*) (BIO *b, const void *data, int len)) _cryptoLib->symbol("BIO_write");
+       K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *,BIO*, char*, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) _cryptoLib->symbol("PEM_ASN1_write_bio");
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++      K_ASN1_item_i2d_fp = (int (*)(ASN1_ITEM *, FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_item_i2d_fp");
++      K_NETSCAPE_X509_it = (ASN1_ITEM *) _cryptoLib->symbol("NETSCAPE_X509_it");
++#else
+       K_X509_asn1_meth = (ASN1_METHOD* (*)(void)) _cryptoLib->symbol("X509_asn1_meth");
+       K_ASN1_i2d_fp = (int (*)(int (*)(), FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_i2d_fp");
+       K_i2d_ASN1_HEADER = (int (*)(ASN1_HEADER *, unsigned char **)) _cryptoLib->symbol("i2d_ASN1_HEADER");
++#endif
+       K_X509_print_fp = (int (*)(FILE*, X509*)) _cryptoLib->symbol("X509_print_fp");
+       K_i2d_PKCS12 = (int (*)(PKCS12*, unsigned char**)) _cryptoLib->symbol("i2d_PKCS12");
+       K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12*)) _cryptoLib->symbol("i2d_PKCS12_fp");
+@@ -594,7 +604,7 @@ KConfig *cfg;
+       K_SSL_set_session = (int (*)(SSL*,SSL_SESSION*)) _sslLib->symbol("SSL_set_session");
+       K_d2i_SSL_SESSION = (SSL_SESSION* (*)(SSL_SESSION**,unsigned char**, long)) _sslLib->symbol("d2i_SSL_SESSION");
+       K_i2d_SSL_SESSION = (int (*)(SSL_SESSION*,unsigned char**)) _sslLib->symbol("i2d_SSL_SESSION");
+-      K_SSL_get_ciphers = (STACK *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers");
++      K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers");
+ #endif
+ 
+ 
+@@ -982,7 +992,13 @@ int KOpenSSLProxy::PEM_write_bio_X509(BI
+    else return -1;
+ }
+ 
+-
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++int KOpenSSLProxy::ASN1_i2d_fp(FILE *out,unsigned char *x) {
++   if (K_ASN1_item_i2d_fp && K_NETSCAPE_X509_it)
++        return (K_ASN1_item_i2d_fp)(K_NETSCAPE_X509_it, out, x);
++   else return -1;
++}
++#else
+ ASN1_METHOD *KOpenSSLProxy::X509_asn1_meth(void) {
+    if (K_X509_asn1_meth) return (K_X509_asn1_meth)();
+    else return 0L;
+@@ -994,7 +1010,7 @@ int KOpenSSLProxy::ASN1_i2d_fp(FILE *out
+         return (K_ASN1_i2d_fp)((int (*)())K_i2d_ASN1_HEADER, out, x);
+    else return -1;
+ }
+-
++#endif
+ 
+ int KOpenSSLProxy::X509_print(FILE *fp, X509 *x) {
+    if (K_X509_print_fp) return (K_X509_print_fp)(fp, x);
+diff -up kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.h
+--- kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x	2006-07-22 10:16:39.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/kopenssl.h	2009-09-04 23:10:53.000000000 +0200
+@@ -48,6 +48,9 @@ class KOpenSSLProxyPrivate;
+ #include <openssl/stack.h>
+ #include <openssl/bn.h>
+ #undef crypt
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++#define STACK _STACK
++#endif
+ #endif
+ 
+ #include <kstaticdeleter.h>
+@@ -446,12 +449,12 @@ public:
+     */
+    int PEM_write_bio_X509(BIO *bp, X509 *x);
+ 
+-
++#if OPENSSL_VERSION_NUMBER < 0x10000000L
+    /*
+     *   X509_asn1_meth - used for netscape output
+     */
+    ASN1_METHOD *X509_asn1_meth();
+-
++#endif
+ 
+    /*
+     *   ASN1_i2d_fp - used for netscape output
+@@ -531,6 +534,9 @@ public:
+     */
+    void sk_free(STACK *s);
+ 
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++   void sk_free(void *s) { return sk_free(reinterpret_cast<STACK*>(s)); }
++#endif
+ 
+    /* 
+     *  Number of elements in the stack
+@@ -543,6 +549,9 @@ public:
+     */
+    char *sk_value(STACK *s, int n);
+ 
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++   char *sk_value(void *s, int n) { return sk_value(reinterpret_cast<STACK*>(s), n); }
++#endif
+ 
+    /* 
+     *  Create a new stack
+@@ -555,6 +564,9 @@ public:
+     */
+    int sk_push(STACK *s, char *d);
+ 
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++   int sk_push(void *s, void *d) { return sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
++#endif
+ 
+    /* 
+     *  Duplicate the stack
+diff -up kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc
+--- kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x	2005-10-10 17:05:44.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc	2009-09-04 23:10:53.000000000 +0200
+@@ -87,7 +87,7 @@ KSMIMECryptoPrivate::KSMIMECryptoPrivate
+ 
+ 
+ STACK_OF(X509) *KSMIMECryptoPrivate::certsToX509(QPtrList<KSSLCertificate> &certs) {
+-    STACK_OF(X509) *x509 = sk_new(NULL);
++    STACK_OF(X509) *x509 = reinterpret_cast<STACK_OF(X509)*>(sk_new(NULL));
+     KSSLCertificate *cert = certs.first();
+     while(cert) {
+ 	sk_X509_push(x509, cert->getCert());
+diff -up kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksslcertificate.cc
+--- kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x	2006-01-19 18:06:12.000000000 +0100
++++ kdelibs-3.5.10/kio/kssl/ksslcertificate.cc	2009-09-04 23:10:53.000000000 +0200
+@@ -1003,17 +1003,31 @@ return qba;
+ QByteArray KSSLCertificate::toNetscape() {
+ QByteArray qba;
+ #ifdef KSSL_HAVE_SSL
+-ASN1_HEADER ah;
+-ASN1_OCTET_STRING os;
+-KTempFile ktf;
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++	NETSCAPE_X509 nx;
++	ASN1_OCTET_STRING hdr;
++#else
++   ASN1_HEADER ah;
++   ASN1_OCTET_STRING os;
++#endif
++	KTempFile ktf;
+ 
+-	os.data = (unsigned char *)NETSCAPE_CERT_HDR;
+-	os.length = strlen(NETSCAPE_CERT_HDR);
+-	ah.header = &os;
+-	ah.data = (char *)getCert();
+-	ah.meth = d->kossl->X509_asn1_meth();
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++	hdr.data = (unsigned char *)NETSCAPE_CERT_HDR;
++	hdr.length = strlen(NETSCAPE_CERT_HDR);
++	nx.header = &hdr;
++	nx.cert = getCert();
++
++	d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&nx);
++#else
++   os.data = (unsigned char *)NETSCAPE_CERT_HDR;
++   os.length = strlen(NETSCAPE_CERT_HDR);
++   ah.header = &os;
++   ah.data = (char *)getCert();
++   ah.meth = d->kossl->X509_asn1_meth();
+ 
+-	d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah);
++   d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah);
++#endif
+ 
+ 	ktf.close();
+ 




More information about the arch-commits mailing list