# Maintainer: Fabio 'Lolix' Loli -> https://github.com/FabioLolix # Contributor: Peter Mattern pkgbase=wxgtk-git pkgname=(wxwidgets-gtk3-git wxwidgets-qt5-git wxwidgets-common-git) pkgver=3.2.2.r98.g3b236b8ffd pkgrel=1 pkgdesc="GTK+3 implementation of wxWidgets API for GUI" arch=(x86_64) url='https://www.wxwidgets.org' license=('custom: wxWindows Library Licence') makedepends=(git cmake gst-plugins-base glu webkit2gtk libnotify qt5-base sdl2 libmspack) source=("git+https://github.com/wxWidgets/wxWidgets.git#branch=3.2" "git+https://github.com/wxWidgets/Catch.git" "git+https://github.com/wxWidgets/pcre.git" "git+https://github.com/wxWidgets/nanosvg.git") sha256sums=('SKIP' 'SKIP' 'SKIP' 'SKIP') pkgver() { cd wxWidgets git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' } prepare() { cd wxWidgets git config submodule.3rdparty/catch.url "${srcdir}/Catch" git -c protocol.file.allow=always submodule update --init 3rdparty/catch git config submodule.3rdparty/pcre.url "${srcdir}/pcre" git -c protocol.file.allow=always submodule update --init 3rdparty/pcre git config submodule.3rdparty/nanosvg.url "${srcdir}/nanosvg" git -c protocol.file.allow=always submodule update --init 3rdparty/nanosvg ./autogen.sh } build() { cmake -B build-gtk3 -S wxWidgets \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=None \ -DwxBUILD_TOOLKIT=gtk3 \ -DwxUSE_OPENGL=ON \ -DwxUSE_REGEX=sys\ -DwxUSE_ZLIB=sys \ -DwxUSE_EXPAT=sys \ -DwxUSE_LIBJPEG=sys \ -DwxUSE_LIBPNG=sys \ -DwxUSE_LIBTIFF=sys \ -DwxUSE_LIBLZMA=sys \ -DwxUSE_LIBMSPACK=ON \ -DwxUSE_PRIVATE_FONTS=ON \ -DwxUSE_GTKPRINT=ON cmake --build build-gtk3 cmake -B build-qt5 -S wxWidgets \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=None \ -DwxBUILD_TOOLKIT=qt \ -DwxUSE_OPENGL=ON \ -DwxUSE_REGEX=sys \ -DwxUSE_ZLIB=sys \ -DwxUSE_EXPAT=sys \ -DwxUSE_LIBJPEG=sys \ -DwxUSE_LIBPNG=sys \ -DwxUSE_LIBTIFF=sys \ -DwxUSE_LIBLZMA=sys \ -DwxUSE_LIBMSPACK=ON \ -DwxUSE_PRIVATE_FONTS=ON cmake --build build-qt5 # Run configure to generate the Makefile, cmake doesn't install translations cd wxWidgets ./configure --prefix=/usr } package_wxwidgets-common-git() { pkgdesc='Common libraries and headers for wxwidgets' depends=(expat pcre2 libsecret) provides=(wxwidgets-common) conflicts=(wxwidgets-common) DESTDIR="$pkgdir" cmake --install build-gtk3 rm -r "$pkgdir"/usr/{bin/wx-config,lib/{cmake,wx,libwx_gtk*}} install -Dm644 wxWidgets/wxwin.m4 -t "$pkgdir"/usr/share/aclocal # Install translations make DESTDIR="$pkgdir" -C wxWidgets locale_install install -Dm644 wxWidgets/docs/licence.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } package_wxwidgets-gtk3-git() { pkgdesc='GTK+3 implementation of wxWidgets API for GUI' depends=(gtk3 gst-plugins-base-libs libsm wxwidgets-common-git libnotify libmspack sdl2) optdepends=('webkit2gtk: for webview support') provides=(wxwidgets-gtk3) conflicts=(wxwidgets-gtk3) DESTDIR="$pkgdir" cmake --install build-gtk3 rm -r "$pkgdir"/usr/{include,lib/libwx_base*,bin/wxrc*} install -Dm644 wxWidgets/docs/licence.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE } package_wxwidgets-qt5-git() { pkgdesc='Qt5 implementation of wxWidgets API for GUI' depends=(qt5-base wxwidgets-common-git libmspack sdl2 libtiff) provides=(wxwidgets-qt5) conflicts=(wxwidgets-qt5) DESTDIR="$pkgdir" cmake --install build-qt5 rm -r "$pkgdir"/usr/{include,lib/libwx_base*,bin/wxrc*} mv "$pkgdir"/usr/bin/wx-config{,-qt} # Conflicts with wx-gtk3 # Rename cmake files for coinstallability mv "$pkgdir"/usr/lib/cmake/wxWidgets{,Qt} for _f in "$pkgdir"/usr/lib/cmake/wxWidgetsQt/*; do mv $_f $(dirname $_f)/$(basename $_f | sed -e 's/wxWidgets/wxWidgetsQt/') done install -Dm644 wxWidgets/docs/licence.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE }