diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 74 |
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 +} |