blob: b09c71c93930b26689a68f41b5675613eaab779d [file] [log] [blame]
# Maintainer: Nazar Mishturak <nazar m x at gmail dot com>
_realname=mbedtls
pkgbase="mingw-w64-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.26.0
pkgrel=2
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url='https://tls.mbed.org/'
pkgdesc="Portable cryptographic and SSL/TLS library, aka polarssl (mingw-w64)."
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
"${MINGW_PACKAGE_PREFIX}-libwinpthread")
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja")
license=('Apache')
options=('strip' '!debug' 'staticlibs')
source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/ARMmbed/mbedtls/archive/v${pkgver}.tar.gz"
'symlink-test.patch'
'dll-location.patch'
'enable-features.patch'
'add-winpthread-library.patch')
sha256sums=('37949e823c7e1f6695fc56858578df355da0770c284b1c1304cfc8b396d539cd'
'5c5e684de4e6295b838bd4aa3cb560221ca3b86fceab5632db15d97f6aa1e66f'
'c6ed7ebe8bf21148e3f96eef62d1be1f5aacf3bff926dcf0837f2ff1d8fb5b2a'
'ca8e32685891e3c167a0cb67ee4525b1889a3f59a0b5b0161deaf2869656a00b'
'17bcdbcabc75cbf850de8ae4479b2017526684f183de063b817555270fc00fd0')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
patch -p1 -i "${srcdir}/symlink-test.patch"
patch -p1 -i "${srcdir}/dll-location.patch"
patch -p1 -i "${srcdir}/enable-features.patch"
patch -p1 -i "${srcdir}/add-winpthread-library.patch"
}
build() {
declare -a _extra_config
if check_option "debug" "n"; then
_extra_config+=("-DCMAKE_BUILD_TYPE=Release")
else
_extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
fi
[[ -d "${srcdir}/build-${MINGW_CHOST}" ]] && rm -rf "${srcdir}/build-${MINGW_CHOST}"
mkdir -p "${srcdir}/build-${MINGW_CHOST}" && cd "${srcdir}/build-${MINGW_CHOST}"
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
${MINGW_PREFIX}/bin/cmake.exe \
-G "Ninja" \
"${_extra_config[@]}" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DENABLE_PROGRAMS=ON \
-DENABLE_TESTING=ON \
-DMBEDTLS_FATAL_WARNINGS=OFF \
-DUSE_SHARED_MBEDTLS_LIBRARY=ON \
-DUSE_STATIC_MBEDTLS_LIBRARY=ON \
../${_realname}-${pkgver}
${MINGW_PREFIX}/bin/cmake.exe --build ./
}
check() {
cd "${srcdir}/build-${MINGW_CHOST}"
cp -p library/*.dll tests/ # Tests are dynamically linked
${MINGW_PREFIX}/bin/cmake.exe --build ./ --target test || true
}
package () {
cd "${srcdir}/build-${MINGW_CHOST}"
DESTDIR=${pkgdir} ${MINGW_PREFIX}/bin/cmake.exe --build ./ --target install
# rename generic utils
local _prog _baseprog
for _prog in "$pkgdir${MINGW_PREFIX}"/bin/*.exe; do
_baseprog=$(basename "$_prog")
mv "$_prog" "${_prog//$_baseprog/mbedtls_$_baseprog}"
done
install -Dm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}