summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD74
1 files changed, 74 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..9dae951fc100
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,74 @@
+# $Id: PKGBUILD 70628 2012-05-13 11:42:39Z bluewind $
+# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+
+_pkgbasename=openssl
+pkgname=libx32-$_pkgbasename
+_ver=1.0.1c
+# use a pacman compatible version scheme
+pkgver=1.0.1.c
+true && pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
+#pkgver=$_ver
+pkgrel=1.1
+pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (x32 ABI)'
+arch=('x86_64')
+url='https://www.openssl.org'
+license=('custom:BSD')
+depends=('libx32-zlib' "${_pkgbasename}")
+optdepends=('ca-certificates')
+makedepends=('gcc-multilib-x32')
+options=('!makeflags')
+source=("https://www.openssl.org/source/${_pkgbasename}-${_ver}.tar.gz"
+ "https://www.openssl.org/source/${_pkgbasename}-${_ver}.tar.gz.asc"
+ 'no-rpath.patch'
+ 'ca-dir.patch'
+ 'openssl-1.0.1-x32.patch'
+)
+md5sums=('ae412727c8c15b67880aef7bd2999b2e'
+ 'a3d90bc42253def61cd1c4237f1ce5f7'
+ 'dc78d3d06baffc16217519242ce92478'
+ '3bf51be3a1bbd262be46dc619f92aa90'
+ '10d0cebf2d9c0f64c307e82542f519e3')
+
+build() {
+ export CC="gcc -mx32"
+ export CXX="g++ -mx32"
+ export PKG_CONFIG_PATH="/usr/libx32/pkgconfig"
+
+ cd $srcdir/$_pkgbasename-$_ver
+
+ # x32 patch
+ patch -p1 -i $srcdir/openssl-1.0.1-x32.patch
+
+ # remove rpath: http://bugs.archlinux.org/task/14367
+ patch -p0 -i $srcdir/no-rpath.patch
+ # set ca dir to /etc/ssl by default
+ patch -p0 -i $srcdir/ca-dir.patch
+ # mark stack as non-executable: http://bugs.archlinux.org/task/12434
+ # workaround for PR#2771: OPENSSL_NO_TLS1_2_CLIENT
+ ./Configure --prefix=/usr --openssldir=/etc/ssl --libdir=libx32 \
+ shared zlib enable-md2 \
+ linux-x32 \
+ -Wa,--noexecstack "${CFLAGS}" "${LDFLAGS}" \
+ -DOPENSSL_NO_TLS1_2_CLIENT
+
+ make MAKEDEPPROG="${CC}" depend
+ make
+}
+
+check() {
+ cd $srcdir/$_pkgbasename-$_ver
+ # the test fails due to missing write permissions in /etc/ssl
+ # revert this patch for make test
+ patch -p0 -R -i $srcdir/ca-dir.patch
+ make test
+ patch -p0 -i $srcdir/ca-dir.patch
+}
+
+package() {
+ cd $srcdir/$_pkgbasename-$_ver
+ make INSTALL_PREFIX=$pkgdir install
+
+ rm -rf ${pkgdir}/{usr/{include,share,bin},etc}
+ mkdir -p $pkgdir/usr/share/licenses
+ ln -s $_pkgbasename $pkgdir/usr/share/licenses/$pkgname
+}