From 63d523fbbe614c1f463e7178bc845b415664c718 Mon Sep 17 00:00:00 2001 From: Michał Masłowski Date: Sat, 21 Apr 2012 17:59:43 +0200 Subject: Apply a patch fixing openssl build on non-x86. --- core/openssl/PKGBUILD | 9 +++++++-- core/openssl/openssl-1.0.1a_cpu.patch | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 core/openssl/openssl-1.0.1a_cpu.patch (limited to 'core/openssl') diff --git a/core/openssl/PKGBUILD b/core/openssl/PKGBUILD index 0ba2aaa30..64fc2220d 100644 --- a/core/openssl/PKGBUILD +++ b/core/openssl/PKGBUILD @@ -18,11 +18,13 @@ backup=('etc/ssl/openssl.cnf') source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz" 'fix-manpages.patch' 'no-rpath.patch' - 'ca-dir.patch') + 'ca-dir.patch' + 'openssl-1.0.1a_cpu.patch') md5sums=('a0104320c0997cd33e18b8ea798609d1' '5bbc0655bda2af95bc8eb568963ce8ba' 'dc78d3d06baffc16217519242ce92478' - '3bf51be3a1bbd262be46dc619f92aa90') + '3bf51be3a1bbd262be46dc619f92aa90' + '8edaef3ee595707c18fcbd7dafae940f') build() { cd $srcdir/$pkgname-$_ver @@ -34,6 +36,9 @@ build() { patch -p0 -i $srcdir/no-rpath.patch # set ca dir to /etc/ssl by default patch -p0 -i $srcdir/ca-dir.patch + # fix building on non-x86 + # see http://rt.openssl.org/Ticket/Display.html?id=2795&user=guest&pass=guest + patch -p1 -i $srcdir/openssl-1.0.1a_cpu.patch case "${CARCH}" in 'x86_64') diff --git a/core/openssl/openssl-1.0.1a_cpu.patch b/core/openssl/openssl-1.0.1a_cpu.patch new file mode 100644 index 000000000..a6b85988a --- /dev/null +++ b/core/openssl/openssl-1.0.1a_cpu.patch @@ -0,0 +1,15 @@ +--- openssl-1.0.1a/crypto/evp/e_rc4_hmac_md5.c Wed Apr 18 17:51:33 2012 ++++ /tmp/e_rc4_hmac_md5.c Thu Apr 19 14:28:41 2012 +@@ -289,8 +289,12 @@ + + const EVP_CIPHER *EVP_rc4_hmac_md5(void) + { ++#if defined(STITCHED_CALL) + extern unsigned int OPENSSL_ia32cap_P[]; + /* RC4_CHAR flag ------------vvvvv */ + return(OPENSSL_ia32cap_P[0]&(1<<20) ? NULL : &r4_hmac_md5_cipher); ++#else ++ return(&r4_hmac_md5_cipher); ++#endif + } + #endif -- cgit v1.2.3-54-g00ecf