blob: 78312ef8f63f7502be0003ceba064a32ec1e128e [file] [log] [blame]
# Maintainer: Ilya Rakhlin <i.rakhlin@gmail.com>
_realname=libressl
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
pkgver=3.1.1
pkgrel=2
pkgdesc="LibreSSL Encryption (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url='https://www.libressl.org/'
license=('BSD')
options=('staticlibs' 'strip')
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-libssp")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc")
source=("https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${_realname}-${pkgver}.tar.gz"
"0001-libressl_relocation-msys.patch"
"0002-libressl_relocation-tests.patch")
sha256sums=('bdc6ce5ebb3a2eafc4c475f7eeaa5f0a8e60d9bead01efb76e2e254242b6db00'
'cf5ac3ceade7b2b51c6ccbfd6d054dbba4a6fb7375427c5defa3ca90d5b71a47'
'06500c7f09c2067b17e00d9fa4feb6aec922b8525f710a0dea43bd873a5f447b')
prepare() {
cd ${srcdir}/${_realname}-${pkgver}
patch -p1 -i ${srcdir}/0001-libressl_relocation-msys.patch
patch -p1 -i ${srcdir}/0002-libressl_relocation-tests.patch
mv libtls.pc.in liblibretls.pc.in
mv libcrypto.pc.in liblibrecrypto.pc.in
mv libssl.pc.in liblibressl.pc.in
mv openssl.pc.in libressl.pc.in
mv apps/openssl/openssl.c apps/openssl/libressl.c
autoreconf -fiv
}
build() {
LDFLAGS+=" -fstack-protector"
cd "${srcdir}"/${_realname}-${pkgver}
[[ -d "${srcdir}"/build-${CARCH}-shared ]] && rm -rf "${srcdir}"/build-${CARCH}-shared
[[ -d "${srcdir}"/build-${CARCH}-static ]] && rm -rf "${srcdir}"/build-${CARCH}-static
mkdir -p "${srcdir}"/build-${MINGW_CHOST}-shared "${srcdir}"/build-${MINGW_CHOST}-static
msg "Building static lib..."
(cd "${srcdir}"/build-${MINGW_CHOST}-static
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${MINGW_CHOST} \
--enable-static \
--disable-shared \
--disable-tests \
--with-openssldir=${MINGW_PREFIX}/share/libressl
make
)
msg "Building shared library..."
(cd "${srcdir}"/build-${MINGW_CHOST}-shared
../${_realname}-${pkgver}/configure \
--prefix=${MINGW_PREFIX} \
--build=${MINGW_CHOST} \
--host=${MINGW_CHOST} \
--target=${MINGW_CHOST} \
--enable-shared \
--disable-static \
--disable-tests \
--with-openssldir=${MINGW_PREFIX}/share/libressl
make
)
}
check() {
cd "${srcdir}"/build-${MINGW_CHOST}-static
make check
}
package() {
cd "${srcdir}"/build-${MINGW_CHOST}-static
make DESTDIR="${pkgdir}" install || true
cd "${srcdir}"/build-${MINGW_CHOST}-shared/crypto
make DESTDIR="${pkgdir}" install || true
cd "${srcdir}"/build-${MINGW_CHOST}-shared/ssl
make DESTDIR="${pkgdir}" install || true
cd "${srcdir}"/build-${MINGW_CHOST}-shared/tls
make DESTDIR="${pkgdir}" install || true
mkdir "${pkgdir}"${MINGW_PREFIX}/include/libressl
mv "${pkgdir}"${MINGW_PREFIX}/include/openssl "${pkgdir}"${MINGW_PREFIX}/include/libressl
}