summaryrefslogtreecommitdiff
path: root/core/openssl
diff options
context:
space:
mode:
authorMichał Masłowski <mtjm@mtjm.eu>2012-04-21 17:59:43 +0200
committerMichał Masłowski <mtjm@mtjm.eu>2012-04-21 17:59:43 +0200
commit63d523fbbe614c1f463e7178bc845b415664c718 (patch)
tree8d8df96aedd49926faf44ce70e7fa40907387caf /core/openssl
parent9c2097ac3c4176a84248d9d94cac244c6d14e885 (diff)
Apply a patch fixing openssl build on non-x86.
Diffstat (limited to 'core/openssl')
-rw-r--r--core/openssl/PKGBUILD9
-rw-r--r--core/openssl/openssl-1.0.1a_cpu.patch15
2 files changed, 22 insertions, 2 deletions
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