diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..f6f6c7eac9ca --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,60 @@ +# Maintainer: Martchus <martchus@gmx.net> + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +pkgname=mingw-w64-qt6-3d +_qtver=6.0.0-alpha +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)' +depends=('mingw-w64-qt6-declarative') +makedepends=('mingw-w64-cmake' 'mingw-w64-vulkan-headers' 'mingw-w64-vulkan-icd-loader' 'mingw-w64-assimp' + 'qt6-shadertools' 'qt6-declarative' 'ninja') +optdepends=('mingw-w64-assimp: Import from assimp' + 'mingw-w64-qt6-shadertools: RHI renderer') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(mingw-w64-qt6) +_pkgfqn="qt3d-everywhere-src-${_qtver}" +source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('3362d01c7542af0e902908d2d339374feda1a037552ea625b900278982375c27') + +_architectures='i686-w64-mingw32 x86_64-w64-mingw32' + +build() { + for _arch in ${_architectures}; do + export PKG_CONFIG=/usr/bin/$_arch-pkg-config + $_arch-cmake -G Ninja -B build-$_arch -S $_pkgfqn \ + -DQT_HOST_PATH=/usr \ + -DFEATURE_pkg_config=ON \ + -DVulkan_LIBRARY="/usr/$_arch/lib/libvulkan.dll.a" \ + -DVulkan_INCLUDE_DIR="/usr/$_arch/include" + cmake --build build-$_arch + done +} + +package() { + for _arch in ${_architectures}; do + DESTDIR="$pkgdir" cmake --install build-$_arch + + # Add symlinks of DLLs in usual bin directory + mkdir -p "$pkgdir/usr/bin" "$pkgdir/usr/$_arch/bin" + for dll in "$pkgdir"/usr/$_arch/lib/qt6/bin/*.dll; do + ln -rs "$dll" "$pkgdir/usr/$_arch/bin/${dll##*/}" + done + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/usr/$_arch/lib" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find "$pkgdir/usr/$_arch" -iname '*.exe' -exec $_arch-strip --strip-all {} \; + find "$pkgdir/usr/$_arch" -iname '*.dll' -exec $_arch-strip --strip-unneeded {} \; + find "$pkgdir/usr/$_arch" -iname '*.a' -exec $_arch-strip -g {} \; + done + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/mingw-w64-qt6-base "$pkgdir"/usr/share/licenses/mingw-w64-qt6-3d +} |