Add PKGBUILDs for additional Qt 6 modules

These haven't been tested yet and I'm not sure whether it makes sense to
add them by default to the build yet. However, they might be useful in the
future.
This commit is contained in:
Martchus 2023-08-17 15:44:05 +02:00
parent 11290f62f0
commit 82f0166922
18 changed files with 552 additions and 0 deletions

View File

@ -0,0 +1,51 @@
# 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.
_android_arch=aarch64
pkgname=android-$_android_arch-qt6-grpc
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf (android)'
depends=('android-aarch64-qt6-base')
makedepends=('android-cmake' 'protobuf' 'qt6-base' 'ninja' 'java-environment-openjdk>=11')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(android-${_android_arch}-qt6)
_pkgfqn="qtgrpc-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qtgrpc-sha256.txt missing')
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \
-DQT_INCLUDE_DIRS_NO_SYSTEM=ON \
-DQT_HOST_PATH=/usr \
-DANDROID_SDK_ROOT=${ANDROID_HOME} \
-DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \
-DANDROID_STL="c++_shared" \
-DFEATURE_pkg_config=ON
cmake --build build-$_android_arch
}
package() {
DESTDIR="$pkgdir" cmake --install build-$_android_arch
# Drop QMAKE_PRL_BUILD_DIR because reference the build dir
find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \;
find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \;
[[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1,11 @@
% layout 'android-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf (android)'
depends=(<%== qt6deps qw(base) %>)
makedepends=('android-cmake<%== $static_suffix %>' 'protobuf' 'qt6-base' 'ninja' 'java-environment-openjdk>=11')

View File

@ -0,0 +1,50 @@
# 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-grpc-static
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf (mingw-w64)'
depends=('mingw-w64-qt6-base-static' 'mingw-w64-grpc')
makedepends=('mingw-w64-cmake-static' 'mingw-w64-protobuf' 'protobuf' 'qt6-base' 'ninja')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(mingw-w64-qt6)
_pkgfqn="qtgrpc-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qtgrpc-sha256.txt missing')
_architectures='i686-w64-mingw32 x86_64-w64-mingw32'
build() {
for _arch in ${_architectures}; do
export PKG_CONFIG=/usr/bin/$_arch-pkg-config
$_arch-cmake-static -G Ninja -B build-$_arch -S $_pkgfqn \
-DCMAKE_INSTALL_PREFIX:PATH="/usr/$_arch/static" \
-DCMAKE_DISABLE_FIND_PACKAGE_harfbuzz=TRUE \
-DFEATURE_static_runtime=ON \
-DFEATURE_pkg_config=ON
cmake --build build-$_arch
done
}
package() {
for _arch in ${_architectures}; do
DESTDIR="$pkgdir" cmake --install build-$_arch
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 {} \;
[[ -d "$pkgdir/usr/$_arch/static/share/doc" ]] && rm -r "$pkgdir/usr/$_arch/static/share/doc"
done
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/mingw-w64-qt6-base-static "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1 @@
%= include "$default_package_name/mingw-w64/PKGBUILD";

View File

@ -0,0 +1,56 @@
# 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-grpc
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf (mingw-w64)'
depends=('mingw-w64-qt6-base' 'mingw-w64-grpc')
makedepends=('mingw-w64-cmake' 'mingw-w64-protobuf' 'protobuf' 'qt6-base' 'ninja')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(mingw-w64-qt6)
_pkgfqn="qtgrpc-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qtgrpc-sha256.txt missing')
_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 \
-DFEATURE_pkg_config=ON
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 {} \;
[[ -d "$pkgdir/usr/$_arch/share/doc" ]] && rm -r "$pkgdir/usr/$_arch/share/doc"
done
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/mingw-w64-qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1,11 @@
% layout 'mingw-w64-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf (mingw-w64)'
depends=(<%== qt6deps qw(base) %> 'mingw-w64-grpc')
makedepends=('mingw-w64-cmake<%== $static_suffix %>' 'mingw-w64-protobuf' 'protobuf' 'qt6-base' 'ninja')

View File

@ -0,0 +1,50 @@
# 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-grpc
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf'
depends=(static-compat-qt6-base)
makedepends=(static-compat-cmake protobuf ninja)
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
_pkgfqn="qtgrpc-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qtgrpc-sha256.txt missing')
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
}

View File

@ -0,0 +1,11 @@
% layout 'static-compat-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides the modules QtGrpc and QtProtobuf'
depends=(<%== qt6deps qw(base) %>)
makedepends=(static-compat-cmake protobuf ninja)

View File

@ -0,0 +1,52 @@
# 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.
_android_arch=aarch64
pkgname=android-$_android_arch-qt6-httpserver
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server (android)'
depends=('android-aarch64-qt6-base')
optdepends=('android-aarch64-qt6-declarative: QML bindings')
makedepends=('android-cmake' 'android-aarch64-qt6-declarative' 'qt6-base' 'qt6-declarative' 'ninja' 'java-environment-openjdk>=11')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(android-${_android_arch}-qt6)
_pkgfqn="qthttpserver-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qthttpserver-sha256.txt missing')
build() {
source android-env ${_android_arch}
android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \
-DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \
-DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \
-DQT_INCLUDE_DIRS_NO_SYSTEM=ON \
-DQT_HOST_PATH=/usr \
-DANDROID_SDK_ROOT=${ANDROID_HOME} \
-DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \
-DANDROID_STL="c++_shared" \
-DFEATURE_pkg_config=ON
cmake --build build-$_android_arch
}
package() {
DESTDIR="$pkgdir" cmake --install build-$_android_arch
# Drop QMAKE_PRL_BUILD_DIR because reference the build dir
find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \;
find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \;
[[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1,12 @@
% layout 'android-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server (android)'
depends=(<%== qt6deps qw(base) %>)
optdepends=(<%== qt6optdeps declarative => 'QML bindings' %>)
makedepends=('android-cmake<%== $static_suffix %>' <%== qt6deps qw(declarative) %> 'qt6-base' 'qt6-declarative' 'ninja' 'java-environment-openjdk>=11')

View File

@ -0,0 +1,51 @@
# 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-httpserver-static
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server (mingw-w64)'
depends=('mingw-w64-qt6-websockets-static')
optdepends=('mingw-w64-qt6-declarative-static: QML bindings')
makedepends=('mingw-w64-cmake-static' 'qt6-base' 'qt6-declarative' 'ninja')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(mingw-w64-qt6)
_pkgfqn="qthttpserver-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qthttpserver-sha256.txt missing')
_architectures='i686-w64-mingw32 x86_64-w64-mingw32'
build() {
for _arch in ${_architectures}; do
export PKG_CONFIG=/usr/bin/$_arch-pkg-config
$_arch-cmake-static -G Ninja -B build-$_arch -S $_pkgfqn \
-DCMAKE_INSTALL_PREFIX:PATH="/usr/$_arch/static" \
-DCMAKE_DISABLE_FIND_PACKAGE_harfbuzz=TRUE \
-DFEATURE_static_runtime=ON \
-DFEATURE_pkg_config=ON
cmake --build build-$_arch
done
}
package() {
for _arch in ${_architectures}; do
DESTDIR="$pkgdir" cmake --install build-$_arch
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 {} \;
[[ -d "$pkgdir/usr/$_arch/static/share/doc" ]] && rm -r "$pkgdir/usr/$_arch/static/share/doc"
done
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/mingw-w64-qt6-base-static "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1 @@
%= include "$default_package_name/mingw-w64/PKGBUILD";

View File

@ -0,0 +1,57 @@
# 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-httpserver
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server (mingw-w64)'
depends=('mingw-w64-qt6-websockets')
optdepends=('mingw-w64-qt6-declarative: QML bindings')
makedepends=('mingw-w64-cmake' 'qt6-base' 'qt6-declarative' 'ninja')
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
groups=(mingw-w64-qt6)
_pkgfqn="qthttpserver-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qthttpserver-sha256.txt missing')
_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 \
-DFEATURE_pkg_config=ON
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 {} \;
[[ -d "$pkgdir/usr/$_arch/share/doc" ]] && rm -r "$pkgdir/usr/$_arch/share/doc"
done
install -d "$pkgdir"/usr/share/licenses
ln -s /usr/share/licenses/mingw-w64-qt6-base "$pkgdir"/usr/share/licenses/$pkgname
}

View File

@ -0,0 +1,12 @@
% layout 'mingw-w64-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(any)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server (mingw-w64)'
depends=(<%== qt6deps qw(websockets) %>)
optdepends=(<%== qt6optdeps declarative => 'QML bindings' %>)
makedepends=('mingw-w64-cmake<%== $static_suffix %>' 'qt6-base' 'qt6-declarative' 'ninja')

View File

@ -0,0 +1,51 @@
# 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-httpserver
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server'
depends=(static-compat-qt6-websockets)
optdepends=('static-compat-qt6-declarative: QML bindings')
makedepends=(static-compat-cmake ninja)
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
_pkgfqn="qthttpserver-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qthttpserver-sha256.txt missing')
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
}

View File

@ -0,0 +1,12 @@
% layout 'static-compat-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Qt HTTP Server'
depends=(<%== qt6deps qw(websockets) %>)
optdepends=(<%== qt6optdeps declarative => 'QML bindings' %>)
makedepends=(static-compat-cmake ninja)

View File

@ -0,0 +1,51 @@
# 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-websockets
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides WebSocket communication compliant with RFC 6455'
depends=(static-compat-qt6-base)
optdepends=('static-compat-qt6-declarative: QML bindings')
makedepends=(static-compat-cmake ninja)
options=('!strip' '!buildflags' 'staticlibs' '!emptydirs')
_pkgfqn="qtwebsockets-everywhere-src-${_qtver}"
source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
sha256sums=('qtwebsockets-sha256.txt missing')
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
}

View File

@ -0,0 +1,12 @@
% layout 'static-compat-qt6-module';
\
_qtver=6.5.2
pkgver=${_qtver/-/}
pkgrel=1
arch=(x86_64)
url='https://www.qt.io'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Provides WebSocket communication compliant with RFC 6455'
depends=(<%== qt6deps qw(base) %>)
optdepends=(<%== qt6optdeps declarative => 'QML bindings' %>)
makedepends=(static-compat-cmake ninja)