blob: 2310014e7389bc78c57211ae57021b46c0610a42 [file] [log] [blame]
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
# Contributor: Andrew Smeltzov <andrew.smeltzov@gmail.com>
_realname=shiboken2
pkgbase=mingw-w64-${_realname}-qt5
pkgname=(${MINGW_PACKAGE_PREFIX}-${_realname}-qt5)
pkgdesc="CPython bindings generator for C++ libraries (mingw-w64)"
pkgver=5.15.2
pkgrel=3
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64')
url="https://doc.qt.io/qtforpython-5/"
license=("LGPL")
depends=("${MINGW_PACKAGE_PREFIX}-clang"
"${MINGW_PACKAGE_PREFIX}-python"
"${MINGW_PACKAGE_PREFIX}-qt5")
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
"${MINGW_PACKAGE_PREFIX}-ninja"
"${MINGW_PACKAGE_PREFIX}-libxml2"
"${MINGW_PACKAGE_PREFIX}-libxslt")
options=('staticlibs' 'strip')
source=(https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${pkgver}-src/pyside-setup-opensource-src-${pkgver}.tar.xz
001-shiboken.patch
002-cmake-relative-paths.patch
003-llvm-paths.patch
004-shibokenmodule-name.patch)
sha256sums=('b306504b0b8037079a8eab772ee774b9e877a2d84bab2dbefbe4fa6f83941418'
'd7150cd5c554e5da68f5a53e08b46af02e45c5fc3481e99a1289b194e3220015'
'e8fce91fee692a3ef906c841575e53e141a58c0c97c63fd1d94bed5a823190f9'
'0cb712ba34d9951b0c29dc3b71f9c82882064331bd54a4cf0f4c792837932497'
'f163bc1f81b3982b8445f06e7de4e0398c84a1935c5be7b6dc0e88f4ed794d5f')
prepare() {
cd ${srcdir}/pyside-setup-opensource-src-${pkgver}
patch -p1 -i ${srcdir}/001-shiboken.patch
patch -p1 -i ${srcdir}/002-cmake-relative-paths.patch
patch -p1 -i ${srcdir}/003-llvm-paths.patch
patch -p1 -i ${srcdir}/004-shibokenmodule-name.patch
}
build() {
CXXFLAGS+=" -D__USE_MINGW_ANSI_STDIO=1"
[[ -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" \
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
-DCMAKE_C_COMPILER=${MINGW_PREFIX}/bin/clang.exe \
-DCMAKE_CXX_COMPILER=${MINGW_PREFIX}/bin/clang++.exe \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_TESTS=OFF \
-DPYTHON_EXECUTABLE=${MINGW_PREFIX}/bin/python.exe \
../pyside-setup-opensource-src-${pkgver}/sources/shiboken2
${MINGW_PREFIX}/bin/cmake.exe --build ./
}
package() {
cd "${srcdir}/build-${MINGW_CHOST}"
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --build ./ --target install
local _PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
for _f in "${pkgdir}${MINGW_PREFIX}"/lib/pkgconfig/*.pc; do
sed -s "s|${_PREFIX_WIN}|${MINGW_PREFIX}|g" -i "${_f}"
done
for _f in "${pkgdir}${MINGW_PREFIX}"/lib/cmake/Shiboken2-${pkgver}/*.cmake; do
sed -e "s|${MINGW_PREFIX}|\$\{_IMPORT_PREFIX\}|g" -i "${_f}"
done
}