├── .nobackup ├── out └── .gitkeep ├── .dockerignore ├── .gitignore ├── qt5-tools ├── assistant.desktop ├── qdbusviewer.desktop ├── linguist.desktop ├── designer.desktop └── PKGBUILD ├── qt5-base ├── qt5-base-nostrip.patch ├── qt5-base-cflags.patch └── PKGBUILD ├── qt5-quick3d ├── qtquick3d-assimp.patch ├── qtbug-90564.patch └── PKGBUILD ├── pkglist ├── docker_entrypoint.sh ├── qt5-mqtt └── PKGBUILD ├── qt5-graphicaleffects └── PKGBUILD ├── qt5-translations └── PKGBUILD ├── qt5-imageformats └── PKGBUILD ├── qt5-datavis3d └── PKGBUILD ├── qt5-charts └── PKGBUILD ├── qt5-virtualkeyboard └── PKGBUILD ├── qt5-quicktimeline └── PKGBUILD ├── qt5-networkauth └── PKGBUILD ├── qt5-svg └── PKGBUILD ├── pyqt5-webengine └── PKGBUILD ├── qt5-x11extras └── PKGBUILD ├── qt5-location └── PKGBUILD ├── qt5-scxml └── PKGBUILD ├── qt5-3d └── PKGBUILD ├── qt5-serialbus └── PKGBUILD ├── qt5-serialport └── PKGBUILD ├── qt5-webview └── PKGBUILD ├── qt5-wayland └── PKGBUILD ├── qt5-script └── PKGBUILD ├── qt5-webglplugin └── PKGBUILD ├── qt5-purchasing └── PKGBUILD ├── qt5-quickcontrols └── PKGBUILD ├── qt5-gamepad └── PKGBUILD ├── qt5-remoteobjects └── PKGBUILD ├── qt5-sensors └── PKGBUILD ├── qt5-connectivity └── PKGBUILD ├── qt5-quickcontrols2 └── PKGBUILD ├── qt5-websockets └── PKGBUILD ├── qt5-webchannel └── PKGBUILD ├── qt5-xmlpatterns └── PKGBUILD ├── qt5-speech └── PKGBUILD ├── qt5-lottie └── PKGBUILD ├── qt5-declarative └── PKGBUILD ├── qt5-multimedia └── PKGBUILD ├── makepkg.conf ├── README.md ├── Dockerfile ├── qt5-webkit ├── PKGBUILD └── icu68.patch ├── qt5-webengine ├── PKGBUILD └── qt5-webengine-glibc-2.33.patch ├── pyqt5 └── PKGBUILD └── patch.sh /.nobackup: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /out/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | out 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | out/ 2 | -------------------------------------------------------------------------------- /qt5-tools/assistant.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Qt Assistant 3 | Comment=Shows Qt documentation and examples 4 | Exec=assistant 5 | Icon=assistant 6 | Terminal=false 7 | Type=Application 8 | Categories=Qt;Development;Documentation; 9 | -------------------------------------------------------------------------------- /qt5-tools/qdbusviewer.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Qt QDbusViewer 3 | GenericName=D-Bus Debugger 4 | Comment=Debug D-Bus applications 5 | Exec=qdbusviewer 6 | Icon=qdbusviewer 7 | Terminal=false 8 | Type=Application 9 | Categories=Qt;Development;Debugger; 10 | -------------------------------------------------------------------------------- /qt5-tools/linguist.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Qt Linguist 3 | Comment=Add translations to Qt applications 4 | Exec=linguist %F 5 | Icon=linguist 6 | MimeType=text/vnd.trolltech.linguist;application/x-linguist; 7 | Terminal=false 8 | Type=Application 9 | Categories=Qt;Development; 10 | -------------------------------------------------------------------------------- /qt5-tools/designer.desktop: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Name=Qt Designer 3 | GenericName=Interface Designer 4 | Comment=Design GUIs for Qt applications 5 | Exec=designer %F 6 | Icon=QtProject-designer 7 | MimeType=application/x-designer; 8 | Terminal=false 9 | Type=Application 10 | Categories=Qt;Development; 11 | -------------------------------------------------------------------------------- /qt5-base/qt5-base-nostrip.patch: -------------------------------------------------------------------------------- 1 | diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf 2 | index 99d77156fd..fc840fe9f6 100644 3 | --- a/mkspecs/common/gcc-base.conf 4 | +++ b/mkspecs/common/gcc-base.conf 5 | @@ -31,6 +31,8 @@ 6 | # you can use the manual test in tests/manual/mkspecs. 7 | # 8 | 9 | +CONFIG += nostrip 10 | + 11 | QMAKE_CFLAGS_OPTIMIZE = -O2 12 | QMAKE_CFLAGS_OPTIMIZE_FULL = -O3 13 | QMAKE_CFLAGS_OPTIMIZE_DEBUG = -Og 14 | -------------------------------------------------------------------------------- /qt5-quick3d/qtquick3d-assimp.patch: -------------------------------------------------------------------------------- 1 | diff --git a/src/plugins/assetimporters/assimp/assimp.pro b/src/plugins/assetimporters/assimp/assimp.pro 2 | index ca5c499..174a075 100644 3 | --- a/src/plugins/assetimporters/assimp/assimp.pro 4 | +++ b/src/plugins/assetimporters/assimp/assimp.pro 5 | @@ -10,7 +10,7 @@ QT_FOR_CONFIG += assetimporters-private 6 | include($$OUT_PWD/../qtassetimporters-config.pri) 7 | 8 | qtConfig(system-assimp):!if(cross_compile:host_build) { 9 | - QMAKE_USE_PRIVATE += assimp 10 | + QMAKE_USE_PRIVATE += quick3d-assimp 11 | } else { 12 | include(../../../3rdparty/assimp/assimp.pri) 13 | } 14 | -------------------------------------------------------------------------------- /pkglist: -------------------------------------------------------------------------------- 1 | qt5-base 2 | qt5-declarative 3 | qt5-location 4 | qt5-sensors 5 | qt5-serialport 6 | qt5-tools 7 | qt5-translations 8 | qt5-webchannel 9 | qt5-webengine 10 | qt5-websockets 11 | qt5-3d 12 | qt5-charts 13 | qt5-connectivity 14 | qt5-datavis3d 15 | qt5-gamepad 16 | qt5-graphicaleffects 17 | qt5-imageformats 18 | qt5-lottie 19 | qt5-mqtt 20 | qt5-multimedia 21 | qt5-networkauth 22 | qt5-purchasing 23 | qt5-quick3d 24 | qt5-quickcontrols 25 | qt5-quickcontrols2 26 | qt5-quicktimeline 27 | qt5-remoteobjects 28 | qt5-script 29 | qt5-scxml 30 | qt5-serialbus 31 | qt5-speech 32 | qt5-svg 33 | qt5-virtualkeyboard 34 | qt5-wayland 35 | qt5-webglplugin 36 | qt5-webview 37 | qt5-x11extras 38 | qt5-xmlpatterns 39 | qt5-webkit 40 | pyqt5 41 | pyqt5-webengine 42 | -------------------------------------------------------------------------------- /docker_entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | [[ ! $PACKAGES ]] && PACKAGES=$(cat pkglist) 6 | 7 | # Always build qt5-base so we can be sure we have debugging symbol settings in 8 | # QT_CONFIG for other modules 9 | if [[ $PACKAGES != *qt5-base* ]]; then 10 | pushd qt5-base 11 | sudo pacman -Rdd --noconfirm qt5-base 12 | makepkg -i -f --noconfirm 13 | popd 14 | fi 15 | 16 | for pkg in $PACKAGES; do 17 | pushd $pkg 18 | 19 | # Remove the thing we're building so we can install -debug easily. 20 | [[ $pkg == pyqt5 ]] && pkg="python-pyqt5 python2-pyqt5" 21 | [[ $pkg == pyqtwebengine ]] && pkg="python-pyqtwebengine python2-pyqtwebengine" 22 | sudo pacman -Rdd --noconfirm $pkg || true 23 | 24 | makepkg -i -f --noconfirm 25 | popd 26 | done 27 | -------------------------------------------------------------------------------- /qt5-quick3d/qtbug-90564.patch: -------------------------------------------------------------------------------- 1 | diff --git a/src/assetimport/qssgassetimportmanager.cpp b/src/assetimport/qssgassetimportmanager.cpp 2 | index aec55978..15529f28 100644 3 | --- a/src/assetimport/qssgassetimportmanager.cpp 4 | +++ b/src/assetimport/qssgassetimportmanager.cpp 5 | @@ -43,10 +43,12 @@ QSSGAssetImportManager::QSSGAssetImportManager(QObject *parent) : QObject(parent 6 | const QStringList keys = QSSGAssetImporterFactory::keys(); 7 | for (const auto &key : keys) { 8 | auto importer = QSSGAssetImporterFactory::create(key, QStringList()); 9 | - m_assetImporters.append(importer); 10 | - // Add to extension map 11 | - for (const auto &extension : importer->inputExtensions()) { 12 | - m_extensionsMap.insert(extension, importer); 13 | + if (importer) { 14 | + m_assetImporters.append(importer); 15 | + // Add to extension map 16 | + for (const auto &extension : importer->inputExtensions()) { 17 | + m_extensionsMap.insert(extension, importer); 18 | + } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /qt5-mqtt/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Contributor: Jan Peter Koenig 3 | # Contributor: Niklas 4 | 5 | pkgname=qt5-mqtt-debug 6 | _orig_pkgname=${pkgname/-debug/} 7 | _qtver=5.15.2 8 | pkgver=${_qtver/-/} 9 | pkgrel=1 10 | pkgdesc="Module to implement MQTT protocol v3.1/3.1.1/5.0" 11 | arch=(x86_64) 12 | url="http://qt-project.org/" 13 | license=(GPL3 custom) 14 | conflicts=('qt5-mqtt') 15 | provides=("qt5-mqtt=$pkgver") 16 | options=("debug" "!strip") 17 | depends=(qt5-base) 18 | makedepends=(git) 19 | source=("git://code.qt.io/qt/qtmqtt.git#tag=v$_qtver") 20 | sha512sums=('SKIP') 21 | _pkgfqn=${_orig_pkgname/5-/} 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | qmake ../$_pkgfqn 30 | make 31 | } 32 | 33 | package() { 34 | cd build 35 | make INSTALL_ROOT="$pkgdir" install 36 | 37 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 38 | find "$pkgdir"/usr/lib -type f -name '*.prl' \ 39 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 40 | install -Dm644 "$srcdir"/$_pkgfqn/LICENSE.GPL3-EXCEPT \ 41 | "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.GPL3-EXCEPT 42 | } 43 | -------------------------------------------------------------------------------- /qt5-graphicaleffects/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-graphicaleffects-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Graphical effects for use with Qt Quick 2' 13 | conflicts=('qt5-graphicaleffects') 14 | provides=("qt5-graphicaleffects=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('ec8d67f64967d5046410490b549c576f9b9e8b47ec68594ae84aa8870173dfe4') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | install -d "$pkgdir"/usr/share/licenses 39 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 40 | } 41 | -------------------------------------------------------------------------------- /qt5-translations/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-translations-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('any') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='A cross-platform application and UI framework (Translations)' 13 | conflicts=('qt5-translations') 14 | provides=("qt5-translations=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-tools') 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('d5788e86257b21d5323f1efd94376a213e091d1e5e03b45a95dd052b5f570db8') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | install -d "$pkgdir"/usr/share/licenses 39 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 40 | } 41 | -------------------------------------------------------------------------------- /qt5-imageformats/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-imageformats-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Plugins for additional image formats: TIFF, MNG, TGA, WBMP' 13 | conflicts=('qt5-imageformats') 14 | provides=("qt5-imageformats=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base' 'jasper' 'libmng' 'libwebp') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('bf8285c7ce04284527ab823ddc7cf48a1bb79131db3a7127342167f4814253d7') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | install -d "$pkgdir"/usr/share/licenses 39 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 40 | } 41 | -------------------------------------------------------------------------------- /qt5-datavis3d/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-datavis3d-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3') 12 | pkgdesc='Qt Data Visualization module' 13 | conflicts=('qt5-datavis3d') 14 | provides=("qt5-datavis3d=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('226a6575d573ad78aca459709722c496c23aee526aa0c38eb7c93b0bea1eb6fd') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | } 43 | -------------------------------------------------------------------------------- /qt5-charts/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-charts-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3') 12 | pkgdesc='Provides a set of easy to use chart components' 13 | conflicts=('qt5-charts') 14 | provides=("qt5-charts=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('e0750e4195bd8a8b9758ab4d98d437edbe273cd3d289dd6a8f325df6d13f3d11') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | } 43 | -------------------------------------------------------------------------------- /qt5-virtualkeyboard/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-virtualkeyboard-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3') 12 | pkgdesc='Virtual keyboard framework' 13 | conflicts=('qt5-virtualkeyboard') 14 | provides=("qt5-virtualkeyboard=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative' 'qt5-svg' 'hunspell') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('9a3193913be30f09a896e3b8c2f9696d2e9b3f88a63ae9ca8c97a2786b68cf55') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} CONFIG+="lang-all handwriting" 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | } 42 | -------------------------------------------------------------------------------- /qt5-quicktimeline/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | 3 | pkgname=qt5-quicktimeline-debug 4 | _orig_pkgname=${pkgname/-debug/} 5 | _qtver=5.15.2 6 | pkgver=${_qtver/-/} 7 | pkgrel=1 8 | arch=('x86_64') 9 | url='https://www.qt.io' 10 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 11 | pkgdesc='Qt module for keyframe-based timeline construction' 12 | conflicts=('qt5-quicktimeline') 13 | provides=("qt5-quicktimeline=$pkgver") 14 | options=("debug" "!strip") 15 | depends=('qt5-declarative') 16 | groups=('qt' 'qt5') 17 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 18 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 19 | sha256sums=('b9c247227607437acec7c7dd18ad46179d20369c9d22bdb1e9fc128dfb832a28') 20 | 21 | prepare() { 22 | mkdir -p build 23 | } 24 | 25 | build() { 26 | cd build 27 | 28 | qmake ../${_pkgfqn} 29 | make 30 | } 31 | 32 | package() { 33 | cd build 34 | make INSTALL_ROOT="$pkgdir" install 35 | 36 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 37 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 38 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 39 | 40 | install -d "$pkgdir"/usr/share/licenses 41 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 42 | } 43 | -------------------------------------------------------------------------------- /qt5-networkauth/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Maintainer: Felix Yan 3 | 4 | pkgname=qt5-networkauth-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=(x86_64) 10 | url='https://www.qt.io' 11 | license=(GPL3 LGPL3 FDL custom) 12 | pkgdesc='Network authentication module' 13 | conflicts=('qt5-networkauth') 14 | provides=("qt5-networkauth=$pkgver") 15 | options=("debug" "!strip") 16 | depends=(qt5-base) 17 | groups=(qt qt5) 18 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 19 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 20 | sha256sums=('fcc2ec42faa68561efa8f00cd72e662fbc06563ebc6de1dc42d96bb2997acd85') 21 | 22 | prepare() { 23 | mkdir -p build 24 | } 25 | 26 | build() { 27 | cd build 28 | 29 | qmake ../${_pkgfqn} 30 | make 31 | } 32 | 33 | package() { 34 | cd build 35 | make INSTALL_ROOT="$pkgdir" install 36 | 37 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 38 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 39 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 40 | 41 | install -d "$pkgdir"/usr/share/licenses 42 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 43 | } 44 | -------------------------------------------------------------------------------- /qt5-svg/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-svg-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Classes for displaying the contents of SVG files' 13 | conflicts=('qt5-svg') 14 | provides=("qt5-svg=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | groups=('qt' 'qt5') 18 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 19 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 20 | sha256sums=('8bc3c2c1bc2671e9c67d4205589a8309b57903721ad14c60ea21a5d06acb585e') 21 | 22 | prepare() { 23 | mkdir -p build 24 | } 25 | 26 | build() { 27 | cd build 28 | 29 | qmake ../${_pkgfqn} 30 | make 31 | } 32 | 33 | package() { 34 | cd build 35 | make INSTALL_ROOT="$pkgdir" install 36 | 37 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 38 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 39 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 40 | 41 | install -d "$pkgdir"/usr/share/licenses 42 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 43 | } 44 | -------------------------------------------------------------------------------- /pyqt5-webengine/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Maintainer: Felix Yan 3 | 4 | pkgbase=pyqt5-webengine-debug 5 | pkgname=(python-pyqt5-webengine-debug) 6 | _orig_pkgname=${pkgname/-debug/} 7 | pkgdesc="Python bindings for QtWebEngine" 8 | pkgver=5.15.3 9 | pkgrel=1 10 | arch=(x86_64) 11 | url="https://www.riverbankcomputing.com/software/pyqtwebengine/intro" 12 | license=(GPL) 13 | options=("debug" "!strip") 14 | groups=(pyqt5) 15 | depends=(python-pyqt5 qt5-webengine) 16 | makedepends=(sip pyqt-builder) 17 | conflicts=(pyqtwebengine-common python-pyqtwebwengine 'pyqt5-webengine-debug') 18 | provides=("python-pyqt5-webengine=$pkgver" "pyqt5-webengine-debug=$pkgver" python-pyqtwebengine) 19 | options=("debug" "!strip") 20 | replaces=(python-pyqtwebengine) 21 | source=("https://pypi.python.org/packages/source/P/PyQtWebEngine/PyQtWebEngine-$pkgver.tar.gz") 22 | sha256sums=('0badc56e6c9ee2b7b4baa87511737d2a7f1de5a45f52b1da8f4965fc17dcf0b6') 23 | 24 | build() { 25 | cd PyQtWebEngine-$pkgver 26 | sip-build \ 27 | --no-make \ 28 | --api-dir /usr/share/qt/qsci/api/python 29 | cd build 30 | make 31 | } 32 | 33 | package_python-pyqt5-webengine-debug() { 34 | conflicts=("python-pyqt5-webengine") 35 | cd PyQtWebEngine-$pkgver/build 36 | make INSTALL_ROOT="$pkgdir" install 37 | } 38 | -------------------------------------------------------------------------------- /qt5-x11extras/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-x11extras-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides platform-specific APIs for X11' 13 | conflicts=('qt5-x11extras') 14 | provides=("qt5-x11extras=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('7014702ee9a644a5a93da70848ac47c18851d4f8ed622b29a72eed9282fc6e3e') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-location/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-location-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=2 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides access to position, satellite and area monitoring classes' 13 | conflicts=('qt5-location') 14 | provides=("qt5-location=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | groups=('qt' 'qt5') 18 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 19 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 20 | sha256sums=('984fcb09e108df49a8dac35d5ce6dffc49caafd2acb1c2f8a5173a6a21f392a0') 21 | 22 | prepare() { 23 | mkdir -p build 24 | } 25 | 26 | build() { 27 | cd build 28 | 29 | qmake ../${_pkgfqn} 30 | make 31 | } 32 | 33 | package() { 34 | cd build 35 | make INSTALL_ROOT="$pkgdir" install 36 | 37 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 38 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 39 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 40 | 41 | install -d "$pkgdir"/usr/share/licenses 42 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 43 | } 44 | -------------------------------------------------------------------------------- /qt5-scxml/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-scxml-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Static and runtime integration of SCXML models into Qt code' 13 | conflicts=('qt5-scxml') 14 | provides=("qt5-scxml=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('60b9590b9a41c60cee7b8a8c8410ee4625f0389c1ff8d79883ec5a985638a7dc') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-3d/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-3d-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='C++ and QML APIs for easy inclusion of 3D graphics' 13 | conflicts=('qt5-3d') 14 | provides=("qt5-3d=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative' 'assimp') 17 | makedepends=('vulkan-headers') 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('03ed6a48c813c75296c19f5d721184ab168280b69d2656cf16f877d3d4c55c1d') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-serialbus/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-serialbus-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Qt module for general purpose serial bus access' 13 | conflicts=('qt5-serialbus') 14 | provides=("qt5-serialbus=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-serialport') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('aeeb7e5c0d3f8503215b22e1a84c0002ca67cf63862f6e3c6ef44a67ca31bd88') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-serialport/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-serialport-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides access to hardware and virtual serial ports' 13 | conflicts=('qt5-serialport') 14 | provides=("qt5-serialport=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('59c559d748417306bc1b2cf2315c1e63eed011ace38ad92946af71f23e2ef79d') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-webview/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-webview-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides a way to display web content in a QML application' 13 | conflicts=('qt5-webview') 14 | provides=("qt5-webview=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-webengine') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('be9f46167e4977ead5ef5ecf883fdb812a4120f2436383583792f65557e481e7') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-wayland/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-wayland-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides APIs for Wayland' 13 | conflicts=('qt5-wayland') 14 | provides=("qt5-wayland=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative' 'libxcomposite') 17 | makedepends=('vulkan-headers') 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('193732229ff816f3aaab9a5e2f6bed71ddddbf1988ce003fe8dd84a92ce9aeb5') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-script/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-script-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility' 13 | conflicts=('qt5-script') 14 | provides=("qt5-script=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('a299715369afbd1caa4d7fa2875d442eab91adcaacafce54a36922442624673e') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-webglplugin/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-webglplugin-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=(x86_64) 10 | url='https://www.qt.io' 11 | license=(GPL3 LGPL3 FDL custom) 12 | pkgdesc='QPA plugin for running an application via a browser using streamed WebGL commands' 13 | conflicts=('qt5-webglplugin') 14 | provides=("qt5-webglplugin=$pkgver") 15 | options=("debug" "!strip") 16 | depends=(qt5-websockets qt5-declarative) 17 | groups=(qt qt5) 18 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 19 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 20 | sha256sums=('81e782b517ed29e10bea1aa90c9f59274c98a910f2c8b105fa78368a36b41446') 21 | 22 | prepare() { 23 | mkdir -p build 24 | } 25 | 26 | build() { 27 | cd build 28 | 29 | qmake ../${_pkgfqn} 30 | make 31 | } 32 | 33 | package() { 34 | cd build 35 | make INSTALL_ROOT="$pkgdir" install 36 | 37 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 38 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 39 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 40 | 41 | install -d "$pkgdir"/usr/share/licenses 42 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 43 | } 44 | -------------------------------------------------------------------------------- /qt5-purchasing/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-purchasing-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Qt In-App Purchasing API' 13 | conflicts=('qt5-purchasing') 14 | provides=("qt5-purchasing=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('87120d319ff2f8106e78971f7296d72a66dfe91e763d213199aea55046e93227') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-quickcontrols/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-quickcontrols-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Reusable Qt Quick based UI controls to create classic desktop-style user interfaces' 13 | conflicts=('qt5-quickcontrols') 14 | provides=("qt5-quickcontrols=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('c393fb7384b1f047f10e91a6832cf3e6a4c2a41408b8cb2d05af2283e8549fb5') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-gamepad/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-gamepad-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Adds support for getting events from gamepad devices' 13 | conflicts=('qt5-gamepad') 14 | provides=("qt5-gamepad=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base' 'sdl2') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('c77611f7898326d69176ad67a9b886f617cdedc368ec29f223d63537d25b075c') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-remoteobjects/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | 4 | pkgname=qt5-remoteobjects-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=(x86_64) 10 | url='https://www.qt.io' 11 | license=(GPL3 LGPL3 FDL custom) 12 | pkgdesc='Inter-process communication (IPC) module developed for Qt' 13 | conflicts=('qt5-remoteobjects') 14 | provides=("qt5-remoteobjects=$pkgver") 15 | options=("debug" "!strip") 16 | depends=(qt5-base) 17 | makedepends=(qt5-declarative) 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=(qt qt5) 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('6781b6bc90888254ea77ce812736dac00c67fa4eeb3095f5cd65e4b9c15dcfc2') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-sensors/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-sensors-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides access to sensor hardware and motion gesture recognition' 13 | conflicts=('qt5-sensors') 14 | provides=("qt5-sensors=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('3f0011f9e9942cad119146b54d960438f4568a22a274cdad4fae06bb4e0e4839') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-connectivity/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-connectivity-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides access to Bluetooth hardware' 13 | conflicts=('qt5-connectivity') 14 | provides=("qt5-connectivity=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base' 'bluez-libs') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('0380327871f76103e5b8c2a305988d76d352b6a982b3e7b3bc3cdc184c64bfa0') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-quickcontrols2/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-quickcontrols2-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Next generation user interface controls based on Qt Quick' 13 | conflicts=('qt5-quickcontrols2') 14 | provides=("qt5-quickcontrols2=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | optdepends=('qt5-graphicaleffects: for the Material style') 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('671b6ce5f4b8ecc94db622d5d5fb29ef4ff92819be08e5ea55bfcab579de8919') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-websockets/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-websockets-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides WebSocket communication compliant with RFC 6455' 13 | conflicts=('qt5-websockets') 14 | provides=("qt5-websockets=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('a0b42d85dd34ff6e2d23400e02f83d8b85bcd80e60efd1521d12d9625d4a233f') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-webchannel/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-webchannel-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients' 13 | conflicts=('qt5-webchannel') 14 | provides=("qt5-webchannel=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | makedepends=() 18 | groups=('qt' 'qt5') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('127fe79c43b386713f151ed7d411cd81e45e29f9c955584f29736f78c9303ec1') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 39 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 40 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 41 | 42 | install -d "$pkgdir"/usr/share/licenses 43 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 44 | } 45 | -------------------------------------------------------------------------------- /qt5-xmlpatterns/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-xmlpatterns-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Support for XPath, XQuery, XSLT and XML schema validation' 13 | provides=("qt5-xmlpatterns=$pkgver") 14 | options=("debug" "!strip") 15 | depends=('qt5-base') 16 | makedepends=('qt5-declarative') 17 | optdepends=('qt5-declarative: QML bindings') 18 | conflicts=('qtchooser' 'qt5-xmlpatterns') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('76ea2162a7c349188d7e7e4f6c77b78e8a205494c90fee3cea3487a1ae2cf2fa') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-speech/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Maintainer: Felix Yan 3 | 4 | pkgname=qt5-speech-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=(x86_64) 10 | url='https://www.qt.io' 11 | license=(GPL3 LGPL3 FDL custom) 12 | pkgdesc='Qt module to make text to speech and speech recognition easy' 13 | conflicts=('qt5-speech') 14 | provides=("qt5-speech=$pkgver") 15 | options=("debug" "!strip") 16 | depends=(qt5-multimedia) 17 | makedepends=(flite speech-dispatcher) 18 | optdepends=('flite: flite TTS backend' 'speech-dispatcher: speech-dispatcher TTS backend') 19 | groups=(qt qt5) 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('c810fb9eecb08026434422a32e79269627f3bc2941be199e86ec410bdfe883f5') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-lottie/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Maintainer: Felix Yan 3 | 4 | pkgname=qt5-lottie-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='A family of player software for a certain json-based file format for describing 2d vector graphics animations' 13 | conflicts=('qt5-lottie') 14 | provides=("qt5-lottie=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base') 17 | makedepends=('qt5-declarative') 18 | optdepends=('qt5-declarative: QML bindings') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 22 | sha256sums=('cec6095ab8f714e609d2ad3ea8c4fd819461ce8793adc42abe37d0f6dc432517') 23 | 24 | prepare() { 25 | mkdir -p build 26 | } 27 | 28 | build() { 29 | cd build 30 | 31 | qmake ../${_pkgfqn} 32 | make 33 | } 34 | 35 | package() { 36 | cd build 37 | make INSTALL_ROOT="$pkgdir" install 38 | 39 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 40 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 41 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 42 | 43 | install -d "$pkgdir"/usr/share/licenses 44 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 45 | } 46 | -------------------------------------------------------------------------------- /qt5-declarative/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-declarative-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Classes for QML and JavaScript languages' 13 | provides=("qt5-declarative=$pkgver") 14 | options=("debug" "!strip") 15 | depends=('qt5-base') 16 | makedepends=('python' 'vulkan-headers') 17 | groups=('qt' 'qt5') 18 | conflicts=('qtchooser' 'qt5-declarative') 19 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 20 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 21 | sha256sums=('c600d09716940f75d684f61c5bdaced797f623a86db1627da599027f6c635651') 22 | 23 | prepare() { 24 | mkdir -p build 25 | } 26 | 27 | build() { 28 | cd build 29 | 30 | qmake ../${_pkgfqn} 31 | make 32 | } 33 | 34 | package() { 35 | cd build 36 | make INSTALL_ROOT="$pkgdir" install 37 | 38 | # Symlinks for backwards compatibility 39 | for b in "$pkgdir"/usr/bin/*; do 40 | ln -s $(basename $b) "$pkgdir"/usr/bin/$(basename $b)-qt5 41 | done 42 | 43 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 44 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 45 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 46 | 47 | install -d "$pkgdir"/usr/share/licenses 48 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 49 | } 50 | -------------------------------------------------------------------------------- /qt5-multimedia/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-multimedia-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=1 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Classes for audio, video, radio and camera functionality' 13 | conflicts=('qt5-multimedia') 14 | provides=("qt5-multimedia=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-base' 'gst-plugins-base' 'libpulse' 'openal') 17 | makedepends=('qt5-declarative' 'gst-plugins-bad') 18 | optdepends=('qt5-declarative: QML bindings' 'gst-plugins-good: camera support, additional plugins' 19 | 'gst-plugins-bad: camera support, additional plugins' 'gst-plugins-ugly: additional plugins' 20 | 'gst-libav: ffmpeg plugin') 21 | groups=('qt' 'qt5') 22 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 23 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") 24 | sha256sums=('0c3758810e5131aabcf76e4965e4c18b8911af54d9edd9305d2a8278d8346df5') 25 | 26 | prepare() { 27 | mkdir -p build 28 | } 29 | 30 | build() { 31 | cd build 32 | 33 | qmake ../${_pkgfqn} 34 | make 35 | } 36 | 37 | package() { 38 | cd build 39 | make INSTALL_ROOT="$pkgdir" install 40 | 41 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 42 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 43 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 44 | 45 | install -d "$pkgdir"/usr/share/licenses 46 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 47 | } 48 | -------------------------------------------------------------------------------- /makepkg.conf: -------------------------------------------------------------------------------- 1 | DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' 2 | 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 3 | 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' 4 | 'rsync::/usr/bin/rsync --no-motd -z %u %o' 5 | 'scp::/usr/bin/scp -C %u %o') 6 | VCSCLIENTS=('bzr::bzr' 7 | 'git::git' 8 | 'hg::mercurial' 9 | 'svn::subversion') 10 | CARCH="x86_64" 11 | CHOST="x86_64-unknown-linux-gnu" 12 | CPPFLAGS="-D_FORTIFY_SOURCE=2" 13 | CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt" 14 | CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt" 15 | LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now" 16 | MAKEFLAGS="-j6" 17 | DEBUG_CFLAGS="-ggdb3 -fvar-tracking-assignments -Og" 18 | DEBUG_CXXFLAGS="-ggdb3 -fvar-tracking-assignments -Og" 19 | BUILDENV=(!distcc color ccache check sign) 20 | OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !optipng !upx !debug) 21 | INTEGRITY_CHECK=(sha1) 22 | STRIP_BINARIES="--strip-all" 23 | STRIP_SHARED="--strip-unneeded" 24 | STRIP_STATIC="--strip-debug" 25 | MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info}) 26 | DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc}) 27 | PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) 28 | #PKGDEST=/home/packages 29 | PACKAGER="Florian Bruhin " 30 | GPGKEY="0xE80A0C82" 31 | COMPRESSGZ=(gzip -c -f -n) 32 | COMPRESSBZ2=(bzip2 -c -f) 33 | COMPRESSXZ=(xz -c -z -) 34 | COMPRESSLRZ=(lrzip -q) 35 | COMPRESSLZO=(lzop -q) 36 | COMPRESSZ=(compress -c -f) 37 | PKGEXT='.pkg.tar.xz' 38 | SRCEXT='.src.tar.gz' 39 | 40 | # vim: set ft=sh ts=2 sw=2 et: 41 | -------------------------------------------------------------------------------- /qt5-quick3d/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-quick3d-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=2 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='Qt module and API for defining 3D content in Qt Quick' 13 | conflicts=('qt5-quick3d') 14 | provides=("qt5-quick3d=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-declarative') 17 | makedepends=('assimp') 18 | optdepends=('assimp: Import from assimp') 19 | groups=('qt' 'qt5') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" 22 | qtquick3d-assimp.patch 23 | qtbug-90564.patch) 24 | sha256sums=('5b0546323365ce34e4716f22f305ebb4902e222c1a0910b65ee448443c2f94bb' 25 | '531c479880b51a0e5247ccba1b5158b99d16d2a8d4d63b462572687bef1862ef' 26 | '7301fbdd7d4d5fbcbb1f5e2567ae231d2fc1682a0f0620589930946c49535c10') 27 | 28 | prepare() { 29 | mkdir -p build 30 | 31 | cd $_pkgfqn 32 | patch -p1 -i ../qtquick3d-assimp.patch # Fix build with system assimp 33 | patch -p1 -i ../qtbug-90564.patch # Fix crash in QML designer if assimp is not installed 34 | } 35 | 36 | build() { 37 | cd build 38 | 39 | qmake ../${_pkgfqn} 40 | make 41 | } 42 | 43 | package() { 44 | cd build 45 | make INSTALL_ROOT="$pkgdir" install 46 | 47 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 48 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 49 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 50 | 51 | install -d "$pkgdir"/usr/share/licenses 52 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 53 | } 54 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | **This repository is now archived.** Nowadays, Archlinux provides debug 2 | information as part of their official packages, via their 3 | [Debuginfod](https://wiki.archlinux.org/title/debuginfod) server. When you set 4 | `DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"` in your environment, 5 | tools like `gdb` will automatically download debug information. 6 | 7 | # qt-debug-pkgbuild 8 | 9 | Archlinux PKGBUILDs for Qt5/PyQt5 with debugging enabled. 10 | 11 | ## A note on branches 12 | 13 | * *upstream*: The vanilla Archlinux upstream packages. 14 | * *master*: Based on *upstream*, adds debugging symbols. 15 | 16 | ## Precompiled binary packages 17 | 18 | Binary packages for the *master* branch are available as an unofficial 19 | Archlinux repo. See [the qutebrowser documentation](https://github.com/The-Compiler/qutebrowser/blob/master/doc/stacktrace.asciidoc#archlinux) 20 | for details. 21 | 22 | ## Workflow 23 | 24 | Until Qt 5.7, the patched PKGBUILDs lived in the *master* branch, and the 25 | *upstream* branch (with the vanilla Archlinux PKGBUILDs) got merged into 26 | *upstream* after updating. However, this caused frequent merge conflicts as the 27 | patched lines are close to the version number. 28 | 29 | Since Qt 5.7, there are no merges anymore - instead, the updated upstream 30 | PKGBUILDs live in the upstream branch, and patching is automated using 31 | `patch.sh`. 32 | 33 | Here is how an update looks: 34 | 35 | ## Update upstream 36 | 37 | - `git checkout upstream` 38 | - `bash update.sh` 39 | - `git status`, add new files 40 | - `git diff`, review upstream changes 41 | - `git commit -am "Update to Qt 5.x.y" 42 | - `git push` 43 | 44 | ## Update patched PKGBUILDs 45 | 46 | - `git checkout master` 47 | - `git rm -r qt5-* pyqt*` 48 | - `git checkout upstream -- qt5-\* pyqt\* pkglist` 49 | - `git reset HEAD .` (unstage all changes) 50 | - `bash patch.sh` 51 | - `git status`, add/delete files 52 | - `git diff --staged`, review 53 | - `git commit` 54 | - Add new makedepends in `Dockerfile` if needed 55 | - `git commit` 56 | - `git push` 57 | 58 | ## Rebuild 59 | 60 | - `bash build_segfault.sh` 61 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM thecompiler/archlinux 2 | MAINTAINER Florian Bruhin 3 | 4 | RUN pacman -Sy --noconfirm archlinux-keyring 5 | RUN pacman -Suy --noconfirm --needed \ 6 | git \ 7 | base-devel \ 8 | # qt5-base makedepends 9 | libfbclient \ 10 | mariadb-libs \ 11 | sqlite \ 12 | unixodbc \ 13 | postgresql-libs \ 14 | alsa-lib \ 15 | gst-plugins-base-libs \ 16 | gtk3 \ 17 | libpulse \ 18 | cups \ 19 | freetds \ 20 | vulkan-headers \ 21 | md4c \ 22 | # qt5-multimedia makedepends 23 | gst-plugins-bad \ 24 | # qt5-declarative makedepends 25 | python2 \ 26 | # qt5-webengine makedepends 27 | python2 \ 28 | git \ 29 | gperf \ 30 | jsoncpp \ 31 | ninja \ 32 | poppler \ 33 | libpipewire02 \ 34 | # qt5-webkit makepends 35 | cmake \ 36 | ruby \ 37 | gperf \ 38 | python2 \ 39 | # qt5-doc makedepends 40 | python2 \ 41 | pciutils \ 42 | libxtst \ 43 | libxcursor \ 44 | libxrandr \ 45 | libxss \ 46 | libxcomposite \ 47 | gperf \ 48 | nss \ 49 | clang \ 50 | # qt5-speech makedepends 51 | flite \ 52 | speech-dispatcher \ 53 | # pyqt5 makedepends 54 | python-pip \ 55 | pyqt-builder \ 56 | python2-sip-pyqt5 \ 57 | sip \ 58 | sip5 \ 59 | python-opengl \ 60 | python2-opengl \ 61 | python2-enum34 \ 62 | python2-dbus \ 63 | python-dbus \ 64 | # to have a running Qt already 65 | qt5 \ 66 | qt5-webkit \ 67 | python-pyqt5 \ 68 | python2-pyqt5 \ 69 | python-pyqtwebengine \ 70 | python2-pyqtwebengine 71 | RUN sed -i 's/#MAKEFLAGS=.*/MAKEFLAGS="-j$(nproc)"/' /etc/makepkg.conf && \ 72 | sed -i 's|#BUILDDIR=.*|BUILDDIR="/tmp/makepkg"|' /etc/makepkg.conf && \ 73 | sed -i 's|#PKGDEST=.*|PKGDEST="/out"|' /etc/makepkg.conf && \ 74 | sed -i 's|COMPRESSXZ=.*|COMPRESSXZ=(xz -c -z --threads=0 -)|' /etc/makepkg.conf 75 | 76 | COPY . /home/user 77 | 78 | RUN mkdir /out && \ 79 | chown -R user:users /home/user /out 80 | 81 | USER user 82 | WORKDIR /home/user 83 | 84 | CMD ./docker_entrypoint.sh 85 | -------------------------------------------------------------------------------- /qt5-webkit/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Maintainer: Antonio Rojas 3 | # Contributor: Andrea Scarpino 4 | 5 | pkgname=qt5-webkit-debug 6 | _orig_pkgname=${pkgname/-debug/} 7 | _pkgver=5.212.0-alpha4 8 | pkgver=${_pkgver/-/} 9 | pkgrel=9 10 | arch=(x86_64) 11 | url='https://www.qt.io' 12 | license=(GPL3 LGPL3 FDL custom) 13 | pkgdesc='Classes for a WebKit2 based implementation and a new QML API' 14 | source=("https://github.com/qtwebkit/qtwebkit/releases/download/qtwebkit-$_pkgver/qtwebkit-$_pkgver.tar.xz" 15 | icu68.patch 16 | qt5-webkit-python-3.9.patch::"https://github.com/qtwebkit/qtwebkit/commit/78360c01.patch" 17 | qt5-webkit-bison-3.7.patch::"https://github.com/qtwebkit/qtwebkit/commit/d92b11fe.patch") 18 | conflicts=('qt5-webkit') 19 | provides=("qt5-webkit=$pkgver") 20 | options=("debug" "!strip") 21 | depends=(qt5-location qt5-sensors qt5-webchannel libwebp libxslt libxcomposite gst-plugins-base hyphen woff2) 22 | makedepends=(cmake ruby gperf python qt5-doc qt5-tools) 23 | optdepends=('gst-plugins-good: Webm codec support') 24 | sha256sums=('9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6' 25 | '0b40ed924f03ff6081af610bb0ee01560b7bd1fb68f8af02053304a01d4ccdf0' 26 | '9db5480dfbd3c440489e8e4131e3555b2af61fa4b6c19f35227588c5996be128' 27 | 'cc5a2b762426e9cda5a3ae056bba266b5f775ee75c0590913839c255d5f10db0') 28 | 29 | prepare() { 30 | cd qtwebkit-$_pkgver 31 | patch -p0 -i ../icu68.patch # Fix build with ICU 68.x 32 | patch -p1 -i ../qt5-webkit-python-3.9.patch # Fix build with python 3.9 33 | patch -p1 -i ../qt5-webkit-bison-3.7.patch # Fix build with bison 3.7 34 | } 35 | 36 | build() { 37 | cmake -B build -S qtwebkit-$_pkgver \ 38 | -DCMAKE_INSTALL_PREFIX=/usr \ 39 | -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" \ 40 | -DPORT=Qt \ 41 | -DENABLE_TOOLS=OFF 42 | cmake --build build 43 | } 44 | 45 | package() { 46 | DESTDIR="$pkgdir" cmake --install build 47 | 48 | install -d "$pkgdir"/usr/share/licenses 49 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 50 | } 51 | -------------------------------------------------------------------------------- /qt5-webengine/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-webengine-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=5 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('LGPL3' 'LGPL2.1' 'BSD') 12 | pkgdesc='Provides support for web applications using the Chromium browser project' 13 | conflicts=('qt5-webengine') 14 | provides=("qt5-webengine=$pkgver") 15 | options=("debug" "!strip") 16 | depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' 17 | 'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'krb5' 'ttf-font') 18 | makedepends=('python2' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler' 'libpipewire02' 'nodejs' 'libxtst') 19 | optdepends=('libpipewire02: WebRTC desktop sharing under Wayland') 20 | groups=('qt' 'qt5') 21 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 22 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" 23 | qt5-webengine-icu-68.patch::"https://code.qt.io/cgit/qt/qtwebengine-chromium.git/patch/?id=9236b21c" 24 | qt5-webengine-glibc-2.33.patch) 25 | sha256sums=('c8afca0e43d84f7bd595436fbe4d13a5bbdb81ec5104d605085d07545b6f91e0' 26 | 'e3364f29db7a1630e9959123b34e6bcd25ba66cd1714638b8b9b6fd6fd527539' 27 | '5600cfa40254fa3fa2cb541d3b55cc8f7a9231de8d2830c25a7651aa392de16f') 28 | 29 | prepare() { 30 | mkdir -p build 31 | 32 | # Disable jumbo build https://bugreports.qt.io/browse/QTBUG-88657 33 | sed -i 's|use_jumbo_build=true|use_jumbo_build=false|' -i ${_pkgfqn}/src/buildtools/config/common.pri 34 | 35 | patch -d $_pkgfqn/src/3rdparty/ -p1 -i "$srcdir"/qt5-webengine-icu-68.patch # Fix build with ICU 68 36 | patch -d $_pkgfqn -p1 -i "$srcdir/qt5-webengine-glibc-2.33.patch" # Fix text rendering when building with glibc 2.33 37 | } 38 | 39 | build() { 40 | cd build 41 | qmake ../${_pkgfqn} -- \ 42 | -proprietary-codecs \ 43 | -system-ffmpeg \ 44 | -webp \ 45 | -spellchecker \ 46 | -webengine-icu \ 47 | -webengine-kerberos \ 48 | -webengine-webrtc-pipewire 49 | make 50 | } 51 | 52 | package() { 53 | cd build 54 | make INSTALL_ROOT="$pkgdir" install 55 | 56 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 57 | find "$pkgdir/usr/lib" -type f -name '*.prl' \ 58 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 59 | 60 | install -Dm644 "$srcdir"/${_pkgfqn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium 61 | } 62 | -------------------------------------------------------------------------------- /pyqt5/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Antonio Rojas 2 | # Maintainer: Felix Yan 3 | # Contributor: Andrea Scarpino 4 | # Contributor: Yichao Yu 5 | # Contributor: Douglas Soares de Andrade 6 | # Contributor: riai Ben 7 | 8 | pkgbase=pyqt5-debug 9 | pkgname=('python-pyqt5-debug') 10 | pkgdesc="A set of Python bindings for the Qt5 toolkit" 11 | pkgver=5.15.3 12 | pkgrel=1 13 | arch=('x86_64') 14 | url="https://riverbankcomputing.com/software/pyqt/intro" 15 | license=('GPL') 16 | options=("debug" "!strip") 17 | groups=(pyqt5-debug) 18 | depends=('python-pyqt5-sip' 'qt5-base') 19 | optdepends=('python-opengl: enable OpenGL 3D graphics in PyQt applications' 20 | 'python-dbus: for python-dbus mainloop support' 21 | 'qt5-multimedia: QtMultimedia, QtMultimediaWidgets' 22 | 'qt5-tools: QtHelp, QtDesigner' 23 | 'qt5-svg: QtSvg' 24 | 'qt5-webkit: QtWebKit, QtWebKitWidgets' 25 | 'qt5-xmlpatterns: QtXmlPatterns' 26 | 'qt5-declarative: QtQml, qmlplugin' 27 | 'qt5-serialport: QtSerialPort' 28 | 'qt5-websockets: QtWebSockets' 29 | 'qt5-connectivity: QtNfc, QtBluetooth' 30 | 'qt5-x11extras: QtX11Extras' 31 | 'qt5-remoteobjects: QtRemoteObjects' 32 | 'qt5-speech: QtTextToSpeech' 33 | 'qt5-quick3d: QtQuick3D') 34 | provides=("python-pyqt5=$pkgver" qt5-python-bindings) 35 | makedepends=('sip' 'pyqt-builder' 'python-opengl' 'python-dbus' 36 | 'qt5-connectivity' 'qt5-multimedia' 'qt5-tools' 'qt5-serialport' 'qt5-speech' 'qt5-svg' 37 | 'qt5-webkit' 'qt5-websockets' 'qt5-x11extras' 'qt5-xmlpatterns' 'qt5-remoteobjects' 'qt5-quick3d') 38 | conflicts=('pyqt5-common-debug') 39 | source=("https://pypi.python.org/packages/source/P/PyQt5/PyQt5-$pkgver.tar.gz") 40 | sha256sums=('965ba50e7029b37f218a54ace24e87c77db3e5a9f0b83baeb21fb57b4154b838') 41 | 42 | build() { 43 | cd PyQt5-$pkgver 44 | sip-build \ 45 | --confirm-license \ 46 | --debug \ 47 | --no-make \ 48 | --api-dir /usr/share/qt/qsci/api/python 49 | cd build 50 | make 51 | } 52 | 53 | package_python-pyqt5-debug(){ 54 | conflicts=("python-pyqt5") 55 | cd PyQt5-$pkgver/build 56 | make INSTALL_ROOT="$pkgdir" install -j1 57 | 58 | # Remove unused py2 version of uic modules: 59 | rm -r "$pkgdir"/usr/lib/python*/site-packages/PyQt5/uic/port_v2 60 | 61 | # compile Python bytecode 62 | python -m compileall -d / "$pkgdir"/usr/lib 63 | python -O -m compileall -d / "$pkgdir"/usr/lib 64 | } 65 | -------------------------------------------------------------------------------- /qt5-base/qt5-base-cflags.patch: -------------------------------------------------------------------------------- 1 | diff --git a/mkspecs/common/g++-unix.conf b/mkspecs/common/g++-unix.conf 2 | index a493cd5984..41342f5020 100644 3 | --- a/mkspecs/common/g++-unix.conf 4 | +++ b/mkspecs/common/g++-unix.conf 5 | @@ -10,5 +10,6 @@ 6 | 7 | include(g++-base.conf) 8 | 9 | -QMAKE_LFLAGS_RELEASE += -Wl,-O1 10 | +SYSTEM_LDFLAGS = $$(LDFLAGS) 11 | +!isEmpty(SYSTEM_LDFLAGS) { eval(QMAKE_LFLAGS_RELEASE += $$(LDFLAGS)) } else { QMAKE_LFLAGS_RELEASE += -Wl,-O1 } 12 | QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined 13 | diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf 14 | index 1f919d270a..7ef6046326 100644 15 | --- a/mkspecs/common/gcc-base.conf 16 | +++ b/mkspecs/common/gcc-base.conf 17 | @@ -40,9 +40,11 @@ QMAKE_CFLAGS_OPTIMIZE_SIZE = -Os 18 | QMAKE_CFLAGS_DEPS += -M 19 | QMAKE_CFLAGS_WARN_ON += -Wall -Wextra 20 | QMAKE_CFLAGS_WARN_OFF += -w 21 | -QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE 22 | -QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g 23 | -QMAKE_CFLAGS_DEBUG += -g 24 | +SYSTEM_CFLAGS = $$(CFLAGS) 25 | +SYSTEM_DEBUG_CFLAGS = $$(DEBUG_CFLAGS) 26 | +!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE += $$(CPPFLAGS) $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } 27 | +!isEmpty(SYSTEM_CFLAGS) { eval(QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$(CPPFLAGS) -g $$(CFLAGS)) } else { QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } 28 | +!isEmpty(SYSTEM_DEBUG_CFLAGS) { eval(QMAKE_CFLAGS_DEBUG += $$(DEBUG_CFLAGS)) } else { QMAKE_CFLAGS_DEBUG += -g } 29 | QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC 30 | QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC 31 | QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC 32 | @@ -59,9 +61,11 @@ QMAKE_CXXFLAGS += $$QMAKE_CFLAGS 33 | QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS 34 | QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON 35 | QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF 36 | -QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE 37 | -QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO 38 | -QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG 39 | +SYSTEM_CXXFLAGS = $$(CXXFLAGS) 40 | +SYSTEM_DEBUG_CXXFLAGS = $$(DEBUG_CXXFLAGS) 41 | +!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE += $$(CPPFLAGS) $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_OPTIMIZE } 42 | +!isEmpty(SYSTEM_CXXFLAGS) { eval(QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$(CPPFLAGS) -g $$(CXXFLAGS)) } else { QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g } 43 | +!isEmpty(SYSTEM_DEBUG_CXXFLAGS) { eval(QMAKE_CXXFLAGS_DEBUG += $$(DEBUG_CXXFLAGS)) } else { QMAKE_CXXFLAGS_DEBUG += -g } 44 | QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB 45 | QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB 46 | QMAKE_CXXFLAGS_APP += $$QMAKE_CFLAGS_APP 47 | -------------------------------------------------------------------------------- /qt5-tools/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgname=qt5-tools-debug 5 | _orig_pkgname=${pkgname/-debug/} 6 | _qtver=5.15.2 7 | pkgver=${_qtver/-/} 8 | pkgrel=3 9 | arch=('x86_64') 10 | url='https://www.qt.io' 11 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 12 | pkgdesc='A cross-platform application and UI framework (Development Tools, QtHelp)' 13 | provides=("qt5-tools=$pkgver") 14 | options=("debug" "!strip") 15 | depends=('qt5-base' 'hicolor-icon-theme') 16 | makedepends=('qt5-declarative' 'vulkan-headers' 'clang' 'qt5-webkit') 17 | optdepends=('clang: for qdoc' 'qt5-webkit: for Qt Assistant') 18 | groups=('qt' 'qt5') 19 | conflicts=('qtchooser' 'qt5-tools') 20 | _pkgfqn="${_orig_pkgname/5-/}-everywhere-src-${_qtver}" 21 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" 22 | {assistant,designer,linguist,qdbusviewer}.desktop) 23 | sha256sums=('c189d0ce1ff7c739db9a3ace52ac3e24cb8fd6dbf234e49f075249b38f43c1cc' 24 | '8092d6d846e39632107b14726fa112862d800e929ef10f05f2a284dbda9b53c4' 25 | '92f3e5dc8bc416e02893c38a05287238853e0c20732df1e62d6a672744a34e7c' 26 | '15781519115e36d2c67c12ee6bc636425cd445072f43cb8bdd1364cfacbe4c45' 27 | 'cd94367e35f99ab85277aa95985bbde292a9cc82db2c04c4efdaed5799aa16db') 28 | 29 | prepare() { 30 | mkdir -p build 31 | } 32 | 33 | build() { 34 | cd build 35 | 36 | qmake ../${_pkgfqn} 37 | make 38 | } 39 | 40 | package() { 41 | cd build 42 | make INSTALL_ROOT="${pkgdir}" install 43 | 44 | cd ../${_pkgfqn} 45 | # install missing icons and desktop files 46 | for icon in src/linguist/linguist/images/icons/linguist-*-32.png ; do 47 | size=$(echo $(basename ${icon}) | cut -d- -f2) 48 | install -p -D -m644 ${icon} \ 49 | "${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png" 50 | done 51 | 52 | install -D -m644 src/assistant/assistant/images/assistant.png \ 53 | "${pkgdir}/usr/share/icons/hicolor/32x32/apps/assistant.png" 54 | install -D -m644 src/assistant/assistant/images/assistant-128.png \ 55 | "${pkgdir}/usr/share/icons/hicolor/128x128/apps/assistant.png" 56 | install -D -m644 src/designer/src/designer/images/designer.png \ 57 | "${pkgdir}/usr/share/icons/hicolor/128x128/apps/QtProject-designer.png" 58 | install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer.png \ 59 | "${pkgdir}/usr/share/icons/hicolor/32x32/apps/qdbusviewer.png" 60 | install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer-128.png \ 61 | "${pkgdir}/usr/share/icons/hicolor/128x128/apps/qdbusviewer.png" 62 | install -d "${pkgdir}/usr/share/applications" 63 | install -m644 "${srcdir}"/{linguist,designer,assistant,qdbusviewer}.desktop \ 64 | "${pkgdir}/usr/share/applications/" 65 | 66 | # Symlinks for backwards compatibility 67 | for b in "${pkgdir}"/usr/bin/*; do 68 | ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5 69 | done 70 | 71 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 72 | find "${pkgdir}/usr/lib" -type f -name '*.prl' \ 73 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 74 | 75 | install -d "$pkgdir"/usr/share/licenses 76 | ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname} 77 | } 78 | -------------------------------------------------------------------------------- /qt5-base/PKGBUILD: -------------------------------------------------------------------------------- 1 | # Maintainer: Felix Yan 2 | # Contributor: Andrea Scarpino 3 | 4 | pkgbase=qt5-base-debug 5 | _orig_pkgbase=${pkgbase/-debug/} 6 | pkgname=(qt5-base-debug qt5-xcb-private-headers-debug) 7 | _qtver=5.15.2 8 | pkgver=${_qtver/-/} 9 | pkgrel=5 10 | arch=('x86_64') 11 | url='https://www.qt.io' 12 | license=('GPL3' 'LGPL3' 'FDL' 'custom') 13 | pkgdesc='A cross-platform application and UI framework' 14 | depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils' 15 | 'shared-mime-info' 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'mesa' 16 | 'tslib' 'libinput' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion' 'md4c') 17 | makedepends=('libfbclient' 'mariadb-libs' 'sqlite' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs' 18 | 'gtk3' 'libpulse' 'cups' 'freetds' 'vulkan-headers') 19 | optdepends=('qt5-svg: to use SVG icon themes' 20 | 'qt5-wayland: to run Qt applications in a Wayland session' 21 | 'qt5-translations: for some native UI translations' 22 | 'postgresql-libs: PostgreSQL driver' 23 | 'mariadb-libs: MariaDB driver' 24 | 'unixodbc: ODBC driver' 25 | 'libfbclient: Firebird/iBase driver' 26 | 'freetds: MS SQL driver' 27 | 'gtk3: GTK platform plugin' 28 | 'perl: for fixqt4headers and syncqt') 29 | conflicts=('qtchooser') 30 | groups=('qt' 'qt5') 31 | _pkgfqn="${_orig_pkgbase/5-/}-everywhere-src-${_qtver}" 32 | source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" 33 | qt5-base-cflags.patch 34 | qt5-base-nostrip.patch 35 | kdebug-428095.patch::"https://code.qt.io/cgit/qt/qtbase.git/patch?id=c5336057") 36 | sha256sums=('909fad2591ee367993a75d7e2ea50ad4db332f05e1c38dd7a5a274e156a4e0f8' 37 | 'cf707cd970650f8b60f8897692b36708ded9ba116723ec8fcd885576783fe85c' 38 | '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094' 39 | '25b1059e92ae135b1b5031c5b1dde32d03906f17c9245ac1c2f9e1248917e7b0') 40 | 41 | prepare() { 42 | cd ${_pkgfqn} 43 | 44 | patch -p1 -i ../qt5-base-cflags.patch # Use system CFLAGS in qmake 45 | patch -p1 -i ../qt5-base-nostrip.patch # Don't strip binaries with qmake 46 | patch -p1 -i ../kdebug-428095.patch # Fix black border on some menus with Breeze 47 | } 48 | 49 | build() { 50 | cd ${_pkgfqn} 51 | 52 | ./configure -confirm-license -opensource -v \ 53 | -prefix /usr \ 54 | -docdir /usr/share/doc/qt \ 55 | -headerdir /usr/include/qt \ 56 | -archdatadir /usr/lib/qt \ 57 | -datadir /usr/share/qt \ 58 | -sysconfdir /etc/xdg \ 59 | -examplesdir /usr/share/doc/qt/examples \ 60 | -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \ 61 | -system-sqlite \ 62 | -openssl-linked \ 63 | -nomake examples \ 64 | -no-rpath \ 65 | -dbus-linked \ 66 | -system-harfbuzz \ 67 | -journald \ 68 | -no-mimetype-database \ 69 | -no-use-gold-linker \ 70 | -reduce-relocations \ 71 | -force-debug-info \ 72 | -no-strip 73 | make 74 | } 75 | 76 | package_qt5-base-debug() { 77 | provides=("qt5-base=$pkgver") 78 | conflicts+=("qt5-base") 79 | options=("debug" "!strip") 80 | pkgdesc='A cross-platform application and UI framework' 81 | 82 | cd ${_pkgfqn} 83 | make INSTALL_ROOT="${pkgdir}" install 84 | 85 | install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase 86 | 87 | # Drop QMAKE_PRL_BUILD_DIR because reference the build dir 88 | find "${pkgdir}/usr/lib" -type f -name '*.prl' \ 89 | -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; 90 | 91 | # Fix wrong qmake path in pri file 92 | sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \ 93 | "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri 94 | 95 | # Symlinks for backwards compatibility 96 | for b in "${pkgdir}"/usr/bin/*; do 97 | ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5 98 | done 99 | } 100 | 101 | package_qt5-xcb-private-headers-debug() { 102 | provides=("qt5-xcb-private-headers=$pkgver") 103 | conflicts+=("qt5-xcb-private-headers") 104 | options=("debug" "!strip") 105 | pkgdesc='Private headers for Qt5 Xcb' 106 | 107 | depends=("qt5-base=$pkgver") 108 | optdepends=() 109 | groups=() 110 | conflicts=() 111 | 112 | cd ${_pkgfqn} 113 | install -d -m755 "$pkgdir"/usr/include/qtxcb-private 114 | cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/ 115 | } 116 | -------------------------------------------------------------------------------- /patch.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash5 2 | 3 | set -e -x 4 | 5 | fail() { 6 | echo "!!! Error occcurred while patching, aborting!" >&2 7 | exit 1 8 | } 9 | 10 | patch_qt() { 11 | for pkg in "$@"; do 12 | [[ $pkg != *qt5-* ]] && continue 13 | [[ $pkg == qt5-base ]] && continue 14 | 15 | if grep -q _orig_pkgname $pkg/PKGBUILD; then 16 | echo "$pkg was already rewritten?" 17 | exit 1 18 | fi 19 | 20 | # Adjust package names 21 | sed -i 's|^pkgname=.*|&-debug\n_orig_pkgname=${pkgname/-debug/}|' $pkg/PKGBUILD 22 | sed -i '/^_pkgfqn=/s/pkgname/_orig_pkgname/g' $pkg/PKGBUILD 23 | 24 | # update conflicts/replaces for qt5-webkit-ng 25 | sed -i 's/conflicts=(qt5-webkit-ng)/conflicts=(qt5-webkit-ng qt5-webkit-ng-debug)/' $pkg/PKGBUILD 26 | sed -i 's/replaces=(qt5-webkit-ng)/replaces=(qt5-webkit-ng qt5-webkit-ng-debug)/' $pkg/PKGBUILD 27 | 28 | # add conflicts-entry for non-debug package 29 | if grep -q '^conflicts=' $pkg/PKGBUILD; then 30 | sed -i 's|^conflicts=(\(.*\))|conflicts=(\1 '\'$pkg\'')|' $pkg/PKGBUILD 31 | else 32 | grep -q '^depends=' $pkg/PKGBUILD || fail 33 | sed -i '/^depends=/iconflicts=('\'$pkg\'')' $pkg/PKGBUILD 34 | fi 35 | 36 | # add provides-entry for non-debug package 37 | if grep -q provides $pkg/PKGBUILD; then 38 | sed -i 's/provides=(\(.*\))/provides=("'$pkg'=$pkgver" \1)/' $pkg/PKGBUILD 39 | else 40 | grep -q '^depends=' $pkg/PKGBUILD || fail 41 | sed -i '/^depends=/iprovides=("'$pkg'=$pkgver")' $pkg/PKGBUILD 42 | fi 43 | 44 | # add debug options 45 | sed -i '/^provides=/aoptions=("debug" "!strip")' $pkg/PKGBUILD 46 | grep -q options $pkg/PKGBUILD || fail 47 | done 48 | } 49 | 50 | patch_qt_base() { 51 | if grep -q _orig_pkgbase qt5-base/PKGBUILD; then 52 | echo "qt5-base was already rewritten?" 53 | exit 1 54 | fi 55 | 56 | # add debug switch 57 | sed -i 's/-reduce-relocations/& \\\n -force-debug-info/' qt5-base/PKGBUILD 58 | grep -q -- -force-debug-info qt5-base/PKGBUILD || fail 59 | 60 | # adjust package names 61 | sed -i '/^pkgname=.*/s/\([ )]\)/-debug&/g' qt5-base/PKGBUILD 62 | sed -i 's/\${pkgbase/${_orig_pkgbase/g' qt5-base/PKGBUILD 63 | sed -i 's|^pkgbase=.*|&-debug\n_orig_pkgbase=${pkgbase/-debug/}|' qt5-base/PKGBUILD 64 | 65 | # add provides/conflicts/options sections to package functions 66 | line1=' provides=("qt5-base=$pkgver")' 67 | line2=' conflicts+=("qt5-base")' 68 | line3=' options=("debug" "!strip")' 69 | sed -i "/^package_qt5-base/a\\$line1\\n$line2\\n$line3" qt5-base/PKGBUILD 70 | sed -i 's/package_qt5-base/&-debug/' qt5-base/PKGBUILD 71 | grep -q package_qt5-base-debug qt5-base/PKGBUILD || fail 72 | grep -q "$line1" qt5-base/PKGBUILD || fail 73 | grep -q "$line2" qt5-base/PKGBUILD || fail 74 | grep -q "$line3" qt5-base/PKGBUILD || fail 75 | 76 | line1=' provides=("qt5-xcb-private-headers=$pkgver")' 77 | line2=' conflicts+=("qt5-xcb-private-headers")' 78 | sed -i "/^package_qt5-xcb-private-headers/a\\$line1\\n$line2\\n$line3" qt5-base/PKGBUILD 79 | sed -i 's/package_qt5-xcb-private-headers/&-debug/' qt5-base/PKGBUILD 80 | grep -q package_qt5-xcb-private-headers-debug qt5-base/PKGBUILD || fail 81 | grep -q "$line1" qt5-base/PKGBUILD || fail 82 | grep -q "$line2" qt5-base/PKGBUILD || fail 83 | } 84 | 85 | patch_pyqt() { 86 | pkg=$1 87 | # replace all pyqt5 references 88 | sed -i "s/\\($pkg[a-z0-9-]*\\)/\\1-debug/g" $pkg/PKGBUILD 89 | sed -i 's/-debug\.so/\.so/g' $pkg/PKGBUILD 90 | sed -i 's/-debug\.patch/\.patch/g' $pkg/PKGBUILD 91 | # add debug options 92 | sed -i '/^license=/aoptions=("debug" "!strip")' $pkg/PKGBUILD 93 | grep -q '^options' $pkg/PKGBUILD || fail 94 | # fix up sip name 95 | sed -i "s/\\(python-sip-$pkg\\|python-$pkg-sip\\)-debug/\\1/g" $pkg/PKGBUILD 96 | grep -qF python-sip-$pkg-debug $pkg/PKGBUILD && fail 97 | grep -qF python-$pkg-sip-debug $pkg/PKGBUILD && fail 98 | 99 | line=" conflicts=(\"python-$pkg\")" 100 | sed -i "/^package_python-$pkg-debug/a\\$line" $pkg/PKGBUILD 101 | grep -q "$line" $pkg/PKGBUILD || fail 102 | 103 | # add provides-entry for non-debug package 104 | if grep -q provides $pkg/PKGBUILD; then 105 | sed -i 's/provides=(\(.*\))/provides=("'python-$pkg'=$pkgver" \1)/' $pkg/PKGBUILD 106 | else 107 | grep -q '^depends=' $pkg/PKGBUILD || fail 108 | sed -i '/^depends=/i\provides=("'python-$pkg'=$pkgver")' $pkg/PKGBUILD 109 | fi 110 | grep -q 'provides=("python-' $pkg/PKGBUILD || fail 111 | 112 | # add debug switch 113 | if [[ $pkg == pyqt5 ]]; then 114 | sed -i 's|--confirm-license \\|&\n --debug \\|' $pkg/PKGBUILD 115 | grep -q -- --debug $pkg/PKGBUILD || fail 116 | fi 117 | 118 | # fix up stuff 119 | if [[ $pkg == pyqt5-webengine ]]; then 120 | grep -q -- software/pyqtwebengine-debug/intro $pkg/PKGBUILD && fail 121 | sed -i 's/(python-pyqt5-webengine-debug)-debug/(python-pyqt5-webengine-debug)/' $pkg/PKGBUILD 122 | fi 123 | } 124 | 125 | if (( $# == 0 )); then 126 | packages=(qt5-* pyqt5 pyqt5-webengine) 127 | else 128 | packages="$@" 129 | fi 130 | 131 | patch_qt "${packages[@]}" 132 | [[ "${packages[@]}" == *qt5-base* ]] && patch_qt_base 133 | [[ "${packages[@]}" == *pyqt5* ]] && patch_pyqt pyqt5 134 | [[ "${packages[@]}" == *pyqt5-webengine* ]] && patch_pyqt pyqt5-webengine 135 | -------------------------------------------------------------------------------- /qt5-webengine/qt5-webengine-glibc-2.33.patch: -------------------------------------------------------------------------------- 1 | # Patch made by Kevin Kofler 2 | # https://bugzilla.redhat.com/show_bug.cgi?id=1904652 3 | 4 | diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 5 | --- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2020-11-07 02:22:36.000000000 +0100 6 | +++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc 2021-01-20 02:14:53.066223906 +0100 7 | @@ -248,6 +248,18 @@ 8 | return RestrictKillTarget(current_pid, sysno); 9 | } 10 | 11 | +#if defined(__NR_newfstatat) 12 | + if (sysno == __NR_newfstatat) { 13 | + return RewriteFstatatSIGSYS(); 14 | + } 15 | +#endif 16 | + 17 | +#if defined(__NR_fstatat64) 18 | + if (sysno == __NR_fstatat64) { 19 | + return RewriteFstatatSIGSYS(); 20 | + } 21 | +#endif 22 | + 23 | if (SyscallSets::IsFileSystem(sysno) || 24 | SyscallSets::IsCurrentDirectory(sysno)) { 25 | return Error(fs_denied_errno); 26 | diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 27 | --- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 2020-11-07 02:22:36.000000000 +0100 28 | +++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc 2021-01-22 19:02:55.651668257 +0100 29 | @@ -6,6 +6,8 @@ 30 | 31 | #include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h" 32 | 33 | +#include 34 | +#include 35 | #include 36 | #include 37 | #include 38 | @@ -353,6 +355,35 @@ 39 | return -ENOSYS; 40 | } 41 | 42 | +intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args, 43 | + void* aux) { 44 | + switch (args.nr) { 45 | +#if defined(__NR_newfstatat) 46 | + case __NR_newfstatat: 47 | +#endif 48 | +#if defined(__NR_fstatat64) 49 | + case __NR_fstatat64: 50 | +#endif 51 | +#if defined(__NR_newfstatat) || defined(__NR_fstatat64) 52 | + if (*reinterpret_cast(args.args[1]) == '\0' 53 | + && args.args[3] == static_cast(AT_EMPTY_PATH)) { 54 | + return sandbox::sys_fstat64(static_cast(args.args[0]), 55 | + reinterpret_cast(args.args[2])); 56 | + } else { 57 | + errno = EACCES; 58 | + return -1; 59 | + } 60 | + break; 61 | +#endif 62 | + } 63 | + 64 | + CrashSIGSYS_Handler(args, aux); 65 | + 66 | + // Should never be reached. 67 | + RAW_CHECK(false); 68 | + return -ENOSYS; 69 | +} 70 | + 71 | bpf_dsl::ResultExpr CrashSIGSYS() { 72 | return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL); 73 | } 74 | @@ -385,6 +416,10 @@ 75 | return bpf_dsl::Trap(SIGSYSSchedHandler, NULL); 76 | } 77 | 78 | +bpf_dsl::ResultExpr RewriteFstatatSIGSYS() { 79 | + return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL); 80 | +} 81 | + 82 | void AllocateCrashKeys() { 83 | #if !defined(OS_NACL_NONSFI) 84 | if (seccomp_crash_key) 85 | diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 86 | --- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 2020-11-07 02:22:36.000000000 +0100 87 | +++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h 2021-01-20 02:11:04.583714199 +0100 88 | @@ -62,6 +62,10 @@ 89 | // sched_setparam(), sched_setscheduler() 90 | SANDBOX_EXPORT intptr_t 91 | SIGSYSSchedHandler(const struct arch_seccomp_data& args, void* aux); 92 | +// If the fstatat syscall is actually a disguised fstat, calls the regular fstat 93 | +// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler. 94 | +SANDBOX_EXPORT intptr_t 95 | + SIGSYSFstatatHandler(const struct arch_seccomp_data& args, void* aux); 96 | 97 | // Variants of the above functions for use with bpf_dsl. 98 | SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS(); 99 | @@ -72,6 +76,7 @@ 100 | SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex(); 101 | SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace(); 102 | SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS(); 103 | +SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS(); 104 | 105 | // Allocates a crash key so that Seccomp information can be recorded. 106 | void AllocateCrashKeys(); 107 | diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc 108 | --- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc 2020-11-07 02:22:36.000000000 +0100 109 | +++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc 2021-01-20 02:41:12.033133269 +0100 110 | @@ -261,4 +261,13 @@ 111 | 112 | #endif // defined(MEMORY_SANITIZER) 113 | 114 | +SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf) 115 | +{ 116 | +#if defined(__NR_fstat64) 117 | + return syscall(__NR_fstat64, fd, buf); 118 | +#else 119 | + return syscall(__NR_fstat, fd, buf); 120 | +#endif 121 | +} 122 | + 123 | } // namespace sandbox 124 | diff -ur qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h 125 | --- qtwebengine-everywhere-src-5.15.2/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h 2020-11-07 02:22:36.000000000 +0100 126 | +++ qtwebengine-everywhere-src-5.15.2-#1904652/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h 2021-01-20 02:40:26.499827829 +0100 127 | @@ -17,6 +17,7 @@ 128 | struct rlimit64; 129 | struct cap_hdr; 130 | struct cap_data; 131 | +struct stat64; 132 | 133 | namespace sandbox { 134 | 135 | @@ -84,6 +85,9 @@ 136 | const struct sigaction* act, 137 | struct sigaction* oldact); 138 | 139 | +// Recent glibc rewrites fstat to fstatat. 140 | +SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf); 141 | + 142 | } // namespace sandbox 143 | 144 | #endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_ 145 | -------------------------------------------------------------------------------- /qt5-webkit/icu68.patch: -------------------------------------------------------------------------------- 1 | Regressed by https://github.com/unicode-org/icu/commit/c3fe7e09d844 2 | 3 | In file included from Source/WebCore/platform/text/TextAllInOne.cpp:31: 4 | Source/WebCore/platform/text/TextCodecICU.cpp:311:42: error: use of undeclared identifier 'TRUE' 5 | ucnv_setFallback(m_converterICU, TRUE); 6 | ^ 7 | In file included from Source/WebCore/platform/text/TextAllInOne.cpp:40: 8 | In file included from Source/WebCore/platform/text/icu/UTextProvider.cpp:27: 9 | Source/WebCore/platform/text/icu/UTextProvider.h:83:28: error: use of undeclared identifier 'TRUE' 10 | isAccessible = TRUE; 11 | ^ 12 | Source/WebCore/platform/text/icu/UTextProvider.h:88:28: error: use of undeclared identifier 'FALSE' 13 | isAccessible = FALSE; 14 | ^ 15 | Source/WebCore/platform/text/icu/UTextProvider.h:97:28: error: use of undeclared identifier 'TRUE' 16 | isAccessible = TRUE; 17 | ^ 18 | Source/WebCore/platform/text/icu/UTextProvider.h:102:28: error: use of undeclared identifier 'FALSE' 19 | isAccessible = FALSE; 20 | ^ 21 | In file included from Source/WebCore/platform/text/TextAllInOne.cpp:41: 22 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:103:20: error: use of undeclared identifier 'TRUE' 23 | return TRUE; 24 | ^ 25 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:108:20: error: use of undeclared identifier 'FALSE' 26 | return FALSE; 27 | ^ 28 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:114:20: error: use of undeclared identifier 'TRUE' 29 | return TRUE; 30 | ^ 31 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:119:20: error: use of undeclared identifier 'FALSE' 32 | return FALSE; 33 | ^ 34 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:147:12: error: use of undeclared identifier 'TRUE' 35 | return TRUE; 36 | ^ 37 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:339:16: error: use of undeclared identifier 'FALSE' 38 | return FALSE; 39 | ^ 40 | Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp:359:12: error: use of undeclared identifier 'TRUE' 41 | return TRUE; 42 | ^ 43 | In file included from Source/WebCore/platform/text/TextAllInOne.cpp:42: 44 | Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp:128:16: error: use of undeclared identifier 'FALSE' 45 | return FALSE; 46 | ^ 47 | Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp:148:12: error: use of undeclared identifier 'TRUE' 48 | return TRUE; 49 | ^ 50 | 51 | --- Source/WebCore/platform/text/TextCodecICU.cpp.orig 2020-03-04 17:16:37 UTC 52 | +++ Source/WebCore/platform/text/TextCodecICU.cpp 53 | @@ -308,7 +308,7 @@ void TextCodecICU::createICUConverter() const 54 | m_converterICU = ucnv_open(m_canonicalConverterName, &err); 55 | ASSERT(U_SUCCESS(err)); 56 | if (m_converterICU) 57 | - ucnv_setFallback(m_converterICU, TRUE); 58 | + ucnv_setFallback(m_converterICU, true); 59 | } 60 | 61 | int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& err) 62 | --- Source/WebCore/platform/text/icu/UTextProvider.h.orig 2020-03-04 17:16:37 UTC 63 | +++ Source/WebCore/platform/text/icu/UTextProvider.h 64 | @@ -80,12 +80,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text 65 | // Ensure chunk offset is well formed if computed offset exceeds int32_t range. 66 | ASSERT(offset < std::numeric_limits::max()); 67 | text->chunkOffset = offset < std::numeric_limits::max() ? static_cast(offset) : 0; 68 | - isAccessible = TRUE; 69 | + isAccessible = true; 70 | return true; 71 | } 72 | if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) { 73 | text->chunkOffset = text->chunkLength; 74 | - isAccessible = FALSE; 75 | + isAccessible = false; 76 | return true; 77 | } 78 | } else { 79 | @@ -94,12 +94,12 @@ inline bool uTextAccessInChunkOrOutOfRange(UText* text 80 | // Ensure chunk offset is well formed if computed offset exceeds int32_t range. 81 | ASSERT(offset < std::numeric_limits::max()); 82 | text->chunkOffset = offset < std::numeric_limits::max() ? static_cast(offset) : 0; 83 | - isAccessible = TRUE; 84 | + isAccessible = true; 85 | return true; 86 | } 87 | if (nativeIndex <= 0 && !text->chunkNativeStart) { 88 | text->chunkOffset = 0; 89 | - isAccessible = FALSE; 90 | + isAccessible = false; 91 | return true; 92 | } 93 | } 94 | --- Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp.orig 2020-03-04 17:16:37 UTC 95 | +++ Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp 96 | @@ -100,23 +100,23 @@ static UBool uTextLatin1Access(UText* uText, int64_t i 97 | if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) { 98 | // Already inside the buffer. Set the new offset. 99 | uText->chunkOffset = static_cast(index - uText->chunkNativeStart); 100 | - return TRUE; 101 | + return true; 102 | } 103 | if (index >= length && uText->chunkNativeLimit == length) { 104 | // Off the end of the buffer, but we can't get it. 105 | uText->chunkOffset = static_cast(index - uText->chunkNativeStart); 106 | - return FALSE; 107 | + return false; 108 | } 109 | } else { 110 | if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) { 111 | // Already inside the buffer. Set the new offset. 112 | uText->chunkOffset = static_cast(index - uText->chunkNativeStart); 113 | - return TRUE; 114 | + return true; 115 | } 116 | if (!index && !uText->chunkNativeStart) { 117 | // Already at the beginning; can't go any farther. 118 | uText->chunkOffset = 0; 119 | - return FALSE; 120 | + return false; 121 | } 122 | } 123 | 124 | @@ -144,7 +144,7 @@ static UBool uTextLatin1Access(UText* uText, int64_t i 125 | 126 | uText->nativeIndexingLimit = uText->chunkLength; 127 | 128 | - return TRUE; 129 | + return true; 130 | } 131 | 132 | static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status) 133 | @@ -336,7 +336,7 @@ static int64_t uTextLatin1ContextAwareNativeLength(UTe 134 | static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward) 135 | { 136 | if (!text->context) 137 | - return FALSE; 138 | + return false; 139 | int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text); 140 | UBool isAccessible; 141 | if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible)) 142 | @@ -356,7 +356,7 @@ static UBool uTextLatin1ContextAwareAccess(UText* text 143 | ASSERT(newContext == UTextProviderContext::PriorContext); 144 | textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward); 145 | } 146 | - return TRUE; 147 | + return true; 148 | } 149 | 150 | static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode) 151 | --- Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp.orig 2020-03-04 17:16:37 UTC 152 | +++ Source/WebCore/platform/text/icu/UTextProviderUTF16.cpp 153 | @@ -125,7 +125,7 @@ static inline int64_t uTextUTF16ContextAwareNativeLeng 154 | static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward) 155 | { 156 | if (!text->context) 157 | - return FALSE; 158 | + return false; 159 | int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text); 160 | UBool isAccessible; 161 | if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible)) 162 | @@ -145,7 +145,7 @@ static UBool uTextUTF16ContextAwareAccess(UText* text, 163 | ASSERT(newContext == UTextProviderContext::PriorContext); 164 | textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward); 165 | } 166 | - return TRUE; 167 | + return true; 168 | } 169 | 170 | static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode) 171 | --------------------------------------------------------------------------------