PKGBUILDs/qt6-declarative/static-compat/PKGBUILD

63 lines
2.1 KiB
Bash

# 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=static-compat-qt6-declarative
_qtver=6.6.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Classes for QML and JavaScript languages'
depends=(static-compat-qt6-base)
makedepends=(static-compat-cmake static-compat-qt6-shadertools python at-spi2-core ninja)
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
_pkgfqn="qtdeclarative-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
'0001-Exclude-qmltime-when-cross-compiling.patch')
sha256sums=('c39ce9a7c4468f7399c9ced0fbe6ef9c8d6550efc4b893297aa3cfb965b3d84c'
'df9a596ff2773b66ca77462fe495fcd0a9e3e441e5ea3ae580d5340adecf536c')
prepare () {
cd $_pkgfqn
# apply patches; further descriptions can be found in patch files itself
for patch in "$srcdir/"*.patch; do
msg2 "Applying patch $patch"
patch -p1 -i "$patch"
done
}
build() {
check_buildoption ccache y && ccache_args='
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache'
source static-compat-environment
export PATH=$PWD:$PATH
printf '#!/usr/bin/bash\nexec /usr/bin/pkg-config --static "$@"\n' > pkg-config
chmod +x pkg-config
static-compat-cmake -G Ninja -B build -S $_pkgfqn \
$ccache_args \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
-DGLIB2_USE_PKG_CONFIG=ON \
-DWAYLAND_USE_PKG_CONFIG=ON \
-DCMAKE_DISABLE_FIND_PACKAGE_harfbuzz=TRUE \
-DQT_FEATURE_static_runtime=ON \
-DFEATURE_pkg_config=ON
VERBOSE=1 cmake --build build
}
package() {
source static-compat-environment
DESTDIR="$pkgdir" cmake --install build
# Drop QMAKE_PRL_BUILD_DIR because reference the build dir
find "$pkgdir/$static_compat_prefix/lib" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/static-compat-qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}