# Maintainer: A. Wilcox pkgname=openssl pkgver=1.1.1z_p2 pkgrel=0 pkgdesc="Toolkit for SSL and TLS" url="https://www.openssl.org/" arch="all" license="OpenSSL" depends="" checkdepends="perl" makedepends_build="perl" subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc libcrypto1.1:libcrypto libssl1.1:libssl" source="https://www.openssl.org/source/${pkgname}-${pkgver%z_p2}w.tar.gz ppc-auxv.patch ppc64.patch x.patch y.patch za.patch zb.patch zb2.patch " # secfixes: # 1.0.2h-r0: # - CVE-2016-2107 # - CVE-2016-2105 # - CVE-2016-2106 # - CVE-2016-2109 # - CVE-2016-2176 # 1.0.2h-r1: # - CVE-2016-2177 # - CVE-2016-2178 # 1.0.2h-r2: # - CVE-2016-2180 # 1.0.2h-r3: # - CVE-2016-2179 # - CVE-2016-2182 # - CVE-2016-6302 # - CVE-2016-6303 # 1.0.2h-r4: # - CVE-2016-2181 # 1.0.2i-r0: # - CVE-2016-2183 # - CVE-2016-6304 # - CVE-2016-6306 # 1.0.2m-r0: # - CVE-2017-3735 # - CVE-2017-3736 # 1.0.2n-r0: # - CVE-2017-3737 # - CVE-2017-3738 # 1.0.2o-r0: # - CVE-2018-0739 # - CVE-2018-0737 # - CVE-2018-0732 # 1.0.2r-r0: # - CVE-2018-0734 # - CVE-2018-5407 # - CVE-2019-1559 # 1.0.2t-r0: # - CVE-2019-1547 # - CVE-2019-1563 # 1.1.1d-r0: # - CVE-2019-1551 # 1.1.1g-r0: # - CVE-2020-1967 # 1.1.1t-r1: # - CVE-2023-0465 unpack() { default_unpack mv "$pkgname-${pkgver%z_p2}w" "$pkgname-$pkgver" } build() { # openssl will prepend crosscompile always core CC et al CC=${CC#${CROSS_COMPILE}} CXX=${CXX#${CROSS_COMPILE}} CPP=${CPP#${CROSS_COMPILE}} # determine target OS for openssl case "$CARCH" in aarch64*) _target="linux-aarch64" ;; arm*) _target="linux-armv4" ;; ppc) _target="linux-ppc" ;; ppc64) _target="linux-ppc64" ;; ppc64le) _target="linux-ppc64le" ;; i528 | pmmx | x86) _target="linux-elf" ;; x86_64) _target="linux-x86_64" ;; s390x) _target="linux64-s390x";; *) msg "Unable to determine architecture from (CARCH=$CARCH)" ; return 1 ;; esac # Configure assumes --options are for it, so can't use # gcc's --sysroot fake this by overriding CC [ -n "$CBUILDROOT" ] && CC="$CC --sysroot=${CBUILDROOT}" perl ./Configure $_target --prefix=/usr \ --libdir=lib \ --openssldir=/etc/ssl \ shared no-zlib enable-md2 no-weak-ssl-ciphers \ $CPPFLAGS $CFLAGS $LDFLAGS -Wa,--noexecstack make } check() { make test } package() { make DESTDIR="$pkgdir" install rm "$pkgdir"/usr/bin/c_rehash for _manfile in "$pkgdir"/usr/share/man/man1/*; do case _manfile in openssl*) ;; *) mv $_manfile "$pkgdir"/usr/share/man/man1/openssl-$(basename $_manfile) esac done } libcrypto() { pkgdesc="OpenSSL cryptography library" mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib for i in "$pkgdir"/usr/lib/libcrypto*; do mv $i "$subpkgdir"/lib/ ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/} done mv "$pkgdir"/usr/lib/engines-1.1 "$subpkgdir"/usr/lib/ } libssl() { pkgdesc="OpenSSL socket library" mkdir -p "$subpkgdir"/lib "$subpkgdir"/usr/lib for i in "$pkgdir"/usr/lib/libssl*; do mv $i "$subpkgdir"/lib/ ln -s ../../lib/${i##*/} "$subpkgdir"/usr/lib/${i##*/} done } sha512sums="b4c625fe56a4e690b57b6a011a225ad0cb3af54bd8fb67af77b5eceac55cc7191291d96a660c5b568a08a2fbf62b4612818e7cca1bb95b2b6b4fc649b0552b6d openssl-1.1.1w.tar.gz 7fd3158c6eb3451f10e4bfd78f85c3e7aef84716eb38e00503d5cfc8e414b7bdf02e0671d0299a96a453dd2e38249dcf1281136b27b6df372f3ea08fbf78329b ppc-auxv.patch e040f23770d52b988578f7ff84d77563340f37c026db7643db8e4ef18e795e27d10cb42cb8656da4d9c57a28283a2828729d70f940edc950c3422a54fea55509 ppc64.patch 8116cc9e1ae192ac85ad3c85619a297748a04cbf80e91b9d72fc9857dcbfc7da449724b7d6782de97fe6367e5374d6cf06b8864355473608147b45f7fb741d8a x.patch f696bb088cf75a4ad0307f919344b1e3361bb77a42f34c5db557cdba9e2c091ca1fe1f8d66cd4612fa2a7d64a41245bee72ba603789cf20d86b952490284756d y.patch 85f5eb3a5423ced9b01fa20d020cbbfd987e3c82467d9d196ba5f0bc327c8b09e1e39b98a479c8fc1f9a90b3eda82202995d8abe8ff536c4644b73cca630f053 za.patch 060992bff56f9e69f4dc89f3de3a74817cd21b7338e8062a9e9e52a74a08d7b461ead51fb5c7ae9fcc2c717e72e285d42922dd0c37b314b3e5d0e5cf3ae2682f zb.patch b2c31f588aec1ef641985f08a302f815b3854e5be2291eeb2c9db4b12cf69caaa6c813ec75139e623fe3a48a6f4f02500b9b5b1ac2c83d9d053ef098c220a929 zb2.patch"