pkgname=mingw-w64-python39-bin pkgver=3.9.1 _pybasever=39 pkgrel=1 pkgdesc="Next generation of the python high-level scripting language (native MSVC version) (mingw-w64)" arch=('any') license=('PSF') url="http://www.python.org/" depends=('mingw-w64-openssl') optdepends=('mingw-w64-wine: runtime support') makedepends=('mingw-w64-tools' 'mingw-w64-binutils') options=('staticlibs' '!buildflags' '!strip') source=("https://www.python.org/ftp/python/${pkgver}/python-${pkgver}-embed-win32.zip" "https://www.python.org/ftp/python/${pkgver}/python-${pkgver}-embed-amd64.zip" "https://www.python.org/ftp/python/${pkgver}/Python-${pkgver}.tgz" wine-python.sh) noextract=("python-${pkgver}-embed-win32.zip" "python-${pkgver}-embed-amd64.zip") sha256sums=('da943dba11303227a09aad37c5343604698bdedef75a4bbed2bba1cd02725018' '35c74098ba8e4896ba14368c2e2da4f6f92bb5acd72dbb6966ab34459d65b73e' '29cb91ba038346da0bd9ab84a0a55a845d872c341a4da6879f462e94c741f117' '86e768f17994ce586d646b4ace95f819943dfe6a0fb1afa40de4188e975d5db8') _architectures="i686-w64-mingw32 x86_64-w64-mingw32" prepare () { cd "${srcdir}/Python-${pkgver}" } build() { cd "${srcdir}/Python-${pkgver}" for _arch in ${_architectures}; do target="win32" if test "${_arch}" = x86_64-w64-mingw32 then target="amd64" fi mkdir -p "build-${_arch}" && pushd "build-${_arch}" bsdtar -xf "${srcdir}"/python-${pkgver}-embed-${target}.zip gendef python3.dll gendef python${_pybasever}.dll ${_arch}-dlltool --dllname python${_pybasever}.dll --def python${_pybasever}.def --output-lib libpython${_pybasever}.dll.a ${_arch}-dlltool --dllname python3.dll --def python3.def --output-lib libpython3.dll.a sed "s|@TRIPLE@|${_arch}|g;s|@PYVER@|${_pybasever}|g" "${srcdir}"/wine-python.sh > ${_arch}-python${_pybasever}-bin popd done } package() { for _arch in ${_architectures}; do cd "${srcdir}/Python-${pkgver}/build-${_arch}" install -d "$pkgdir"/usr/${_arch}/lib install -m644 libpython*.a "$pkgdir"/usr/${_arch}/lib install -d "$pkgdir"/usr/${_arch}/bin install -d "$pkgdir"/usr/${_arch}/include/python${_pybasever} cp -r ../Include/* "$pkgdir"/usr/${_arch}/include/python${_pybasever} install -m644 ../PC/pyconfig.h "$pkgdir"/usr/${_arch}/include/python${_pybasever} install -m755 python*.dll "$pkgdir"/usr/${_arch}/bin install -d "$pkgdir"/usr/${_arch}/lib/python${_pybasever} install -m644 *.pyd "$pkgdir"/usr/${_arch}/lib/python${_pybasever} install -m755 python.exe "$pkgdir"/usr/${_arch}/bin/python${_pybasever}.exe install -m644 python${_pybasever}.zip "$pkgdir"/usr/${_arch}/bin/ install -d "$pkgdir"/usr/bin install -m755 ${_arch}-python${_pybasever}-bin "$pkgdir"/usr/bin ${_arch}-strip --strip-unneeded "$pkgdir"/usr/${_arch}/bin/*.dll done }