From 5c67f9332c2695d1e42e76ccee1c4e38dbe1e6a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D9=85=D9=87=D8=AF=D9=8A=20=D8=B4=D9=8A=D9=86=D9=88=D9=86?= =?UTF-8?q?=20=28Mehdi=20Chinoune=29?= Date: Tue, 26 Dec 2023 18:32:18 +0100 Subject: [PATCH] gammaray: build against qt6 --- .../003-win32-not-elf.patch | 0 .../004-files-layout.patch | 0 .../005-fix-dll-naming.patch | 0 .../PKGBUILD | 79 ++++++++++++------- 4 files changed, 52 insertions(+), 27 deletions(-) rename {mingw-w64-gammaray-qt5 => mingw-w64-gammaray}/003-win32-not-elf.patch (100%) rename {mingw-w64-gammaray-qt5 => mingw-w64-gammaray}/004-files-layout.patch (100%) rename {mingw-w64-gammaray-qt5 => mingw-w64-gammaray}/005-fix-dll-naming.patch (100%) rename {mingw-w64-gammaray-qt5 => mingw-w64-gammaray}/PKGBUILD (53%) diff --git a/mingw-w64-gammaray-qt5/003-win32-not-elf.patch b/mingw-w64-gammaray/003-win32-not-elf.patch similarity index 100% rename from mingw-w64-gammaray-qt5/003-win32-not-elf.patch rename to mingw-w64-gammaray/003-win32-not-elf.patch diff --git a/mingw-w64-gammaray-qt5/004-files-layout.patch b/mingw-w64-gammaray/004-files-layout.patch similarity index 100% rename from mingw-w64-gammaray-qt5/004-files-layout.patch rename to mingw-w64-gammaray/004-files-layout.patch diff --git a/mingw-w64-gammaray-qt5/005-fix-dll-naming.patch b/mingw-w64-gammaray/005-fix-dll-naming.patch similarity index 100% rename from mingw-w64-gammaray-qt5/005-fix-dll-naming.patch rename to mingw-w64-gammaray/005-fix-dll-naming.patch diff --git a/mingw-w64-gammaray-qt5/PKGBUILD b/mingw-w64-gammaray/PKGBUILD similarity index 53% rename from mingw-w64-gammaray-qt5/PKGBUILD rename to mingw-w64-gammaray/PKGBUILD index 8d7fe2086b..bfcd16d02e 100644 --- a/mingw-w64-gammaray-qt5/PKGBUILD +++ b/mingw-w64-gammaray/PKGBUILD @@ -2,7 +2,7 @@ _realname=gammaray pkgbase=mingw-w64-${_realname} -pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}-qt5" +pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" pkgver=3.0.0 pkgrel=1 arch=('any') @@ -14,14 +14,25 @@ msys2_references=( 'archlinux: gammaray' ) license=('spdx:GPL-2.0-or-later') -depends=("${MINGW_PACKAGE_PREFIX}-syntax-highlighting-qt5" - "${MINGW_PACKAGE_PREFIX}-qt5-base" +provides=("${MINGW_PACKAGE_PREFIX}-${_realname}-qt5") +replaces=("${MINGW_PACKAGE_PREFIX}-${_realname}-qt5") +conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}-qt5") +depends=("${MINGW_PACKAGE_PREFIX}-qt6-base" "${MINGW_PACKAGE_PREFIX}-dlfcn") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-ninja" "${MINGW_PACKAGE_PREFIX}-pkgconf" "${MINGW_PACKAGE_PREFIX}-extra-cmake-modules" + "${MINGW_PACKAGE_PREFIX}-qt6-3d" + "${MINGW_PACKAGE_PREFIX}-qt6-connectivity" + "${MINGW_PACKAGE_PREFIX}-qt6-declarative" + "${MINGW_PACKAGE_PREFIX}-qt6-location" + "${MINGW_PACKAGE_PREFIX}-qt6-positioning" + "${MINGW_PACKAGE_PREFIX}-qt6-scxml" + "${MINGW_PACKAGE_PREFIX}-qt6-shadertools" + "${MINGW_PACKAGE_PREFIX}-qt6-svg" + "${MINGW_PACKAGE_PREFIX}-qt6-tools" "${MINGW_PACKAGE_PREFIX}-kcoreaddons-qt5" "${MINGW_PACKAGE_PREFIX}-kdstatemachineeditor-qt5" "${MINGW_PACKAGE_PREFIX}-qt5-3d" @@ -33,16 +44,25 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-qt5-scxml" "${MINGW_PACKAGE_PREFIX}-qt5-svg" "${MINGW_PACKAGE_PREFIX}-qt5-tools" + "${MINGW_PACKAGE_PREFIX}-syntax-highlighting-qt5" "${MINGW_PACKAGE_PREFIX}-doxygen" "${MINGW_PACKAGE_PREFIX}-glslang") -optdepends=("${MINGW_PACKAGE_PREFIX}-qt5-3d: 3D plugins" - "${MINGW_PACKAGE_PREFIX}-qt5-declarative: Quick/Qml and positioning plugins" - "${MINGW_PACKAGE_PREFIX}-qt5-scxml: state machine viewer plugin" - "${MINGW_PACKAGE_PREFIX}-qt5-connectivity: bluetooth plugin" - "${MINGW_PACKAGE_PREFIX}-qt5-script: script engine debugger plugin" - "${MINGW_PACKAGE_PREFIX}-qt5-location: positioning plugin" - "${MINGW_PACKAGE_PREFIX}-qt5-svg: Widget Export actions plugin" - "${MINGW_PACKAGE_PREFIX}-qt5-tools: Widget Export actions plugin" +optdepends=("${MINGW_PACKAGE_PREFIX}-qt6-3d: 3D plugins" + "${MINGW_PACKAGE_PREFIX}-qt6-declarative: Quick/Qml and positioning plugins" + "${MINGW_PACKAGE_PREFIX}-qt6-scxml: state machine viewer plugin" + "${MINGW_PACKAGE_PREFIX}-qt6-connectivity: bluetooth plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-positioning: positioning plugin" + "${MINGW_PACKAGE_PREFIX}-qt6-svg: Widget Export actions plugin" + "${MINGW_PACKAGE_PREFIX}-qt6-tools: Widget Export actions plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-3d: Qt5 3D plugins" + "${MINGW_PACKAGE_PREFIX}-qt5-base: Qt5 applications support" + "${MINGW_PACKAGE_PREFIX}-qt5-declarative: Qt5 Quick/Qml and positioning plugins" + "${MINGW_PACKAGE_PREFIX}-qt5-scxml: Qt5 state machine viewer plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-connectivity: Qt5 bluetooth plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-script: Qt5 script engine debugger plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-location: Qt5 positioning plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-svg: Qt5 Widget Export actions plugin" + "${MINGW_PACKAGE_PREFIX}-qt5-tools: Qt5 Widget Export actions plugin" "${MINGW_PACKAGE_PREFIX}-kcoreaddons-qt5: KJob tracker plugin" "${MINGW_PACKAGE_PREFIX}-kdstatemachineeditor-qt5: ") source=(https://github.com/KDAB/GammaRay/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.gz @@ -72,8 +92,6 @@ prepare() { } build() { - mkdir -p build-${MSYSTEM} && cd build-${MSYSTEM} - declare -a _extra_config if check_option "debug" "n"; then _extra_config+=("-DCMAKE_BUILD_TYPE=Release") @@ -87,30 +105,37 @@ build() { _extra_config+=("-DSTACK_DETAILS_BFD=OFF") fi - local ABSOLUTE_PREFIX=$(cygpath -am ${MINGW_PREFIX}) - - LDFLAGS+=" -L$(cygpath -am ${MINGW_PREFIX}/lib/binutils)" - MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=;-DECM_MKSPECS_INSTALL_DIR=;-DPLUGIN_INSTALL_DIR=;" \ - ${MINGW_PREFIX}/bin/cmake.exe \ + for _qt_ver in 5 6; do + if [[ ${_qt_ver} == 5 ]]; then + _include_dir=include + else + _include_dir=include/qt6 + fi + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=;-DECM_MKSPECS_INSTALL_DIR=;-DPLUGIN_INSTALL_DIR=;" \ + ${MINGW_PREFIX}/bin/cmake.exe \ -G "Ninja" \ -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ - -DCMAKE_INSTALL_OLDINCLUDEDIR=${MINGW_PREFIX}/include \ - -DTRANSLATION_INSTALL_DIR=${MINGW_PREFIX}/share/qt5/translations \ - -DPLUGIN_INSTALL_DIR=${MINGW_PREFIX}/share/qt5/plugins/gammaray \ - -DECM_MKSPECS_INSTALL_DIR=${MINGW_PREFIX}/share/qt5/mkspecs/modules \ + -DCMAKE_INSTALL_OLDINCLUDEDIR=${MINGW_PREFIX}/${_include_dir} \ + -DTRANSLATION_INSTALL_DIR=${MINGW_PREFIX}/share/qt${_qt_ver}/translations \ + -DPLUGIN_INSTALL_DIR=${MINGW_PREFIX}/share/qt${_qt_ver}/plugins/gammaray \ + -DECM_MKSPECS_INSTALL_DIR=${MINGW_PREFIX}/share/qt${_qt_ver}/mkspecs/modules \ -DGAMMARAY_INSTALL_QT_LAYOUT=ON \ -DGAMMARAY_MULTI_BUILD=FALSE \ -DSTACK_DETAILS_AUTO_DETECT=OFF \ -DMINGW_MSVCR_LIBRARY="" \ + -DQT_VERSION_MAJOR=${_qt_ver} \ "${_extra_config[@]}" \ - ../${_realname}-${pkgver} + -S ${_realname}-${pkgver} \ + -B build-${MSYSTEM}-qt${_qt_ver} - ${MINGW_PREFIX}/bin/cmake.exe --build ./ + ${MINGW_PREFIX}/bin/cmake.exe --build build-${MSYSTEM}-qt${_qt_ver} + done } package() { - cd build-${MSYSTEM} - DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install . - + for _qt_ver in 5 6; do + DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install build-${MSYSTEM}-qt${_qt_ver} + done + install -Dm644 "${srcdir}"/${_realname}-${pkgver}/LICENSE.txt "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE }