# $Id: PKGBUILD 137334 2011-09-07 08:58:53Z pierre $ # Maintainer: Pierre Schmitz pkgname=openssl _ver=1.0.0e # use a pacman compatible version scheme pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} pkgrel=1 pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security' arch=('i686' 'x86_64' 'mips64el') url='https://www.openssl.org' license=('custom:BSD') depends=('perl') optdepends=('ca-certificates') options=('!makeflags') backup=('etc/ssl/openssl.cnf') source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz" 'fix-manpages.patch' 'no-rpath.patch' 'gnu-linux-mips64el-gcc.patch' 'ca-dir.patch') md5sums=('7040b89c4c58c7a1016c0dfa6e821c86' '5bbc0655bda2af95bc8eb568963ce8ba' 'dc78d3d06baffc16217519242ce92478' 'd7115f0cc44df346d7b68c681819f94b' '3bf51be3a1bbd262be46dc619f92aa90') [ "$CARCH" = "mips64el" ] && \ makedepends=('imake') # keep an upgrade path for older installations PKGEXT='.pkg.tar.gz' build() { cd $srcdir/$pkgname-$_ver # avoid conflicts with other man pages # see http://www.linuxfromscratch.org/patches/downloads/openssl/ patch -p1 -i $srcdir/fix-manpages.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 patch -p0 -i $srcdir/gnu-linux-mips64el-gcc.patch case "${CARCH}" in 'x86_64') openssltarget='linux-x86_64' ;; 'i686') openssltarget='linux-elf' ;; 'mips64el') # ./config openssltarget='gnu-linux-mips64el-gcc' ;; # openssltarget='linux-generic32' ;; esac # mark stack as non-executable: http://bugs.archlinux.org/task/12434 if [ "$CARCH" = "mips64el" ]; then ./Configure --prefix=/usr --openssldir=/etc/ssl --libdir=lib \ shared zlib enable-md2 \ "${openssltarget}" -Wa,--noexecstack "${CFLAGS}" else ./Configure --prefix=/usr --openssldir=/etc/ssl --libdir=lib \ shared zlib enable-md2 \ "${openssltarget}" \ -Wa,--noexecstack "${CFLAGS}" "${LDFLAGS}" fi make depend make } check() { cd $srcdir/$pkgname-$_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/$pkgname-$_ver make INSTALL_PREFIX=$pkgdir MANDIR=/usr/share/man install install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE }