[PATCH 0/2] Add Qt 6 (qtbase)

  • Done
  • quality assurance status badge
Details
One participant
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
normal
M
M
Maxim Cournoyer wrote on 10 Apr 2021 04:02
(address . guix-patches@gnu.org)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
20210410020226.16215-1-maxim.cournoyer@gmail.com
Hello!

These two commits are to introduce qtbase at version 6, the next major Qt
version. The patches and phases of the current qtbase could mostly be reused,
but needed some adjustment as the build system has migrated to CMake using its
ninja backend. I could have reused most of the configure script flags, but
some flags were gone, and some didn't seem to work anymore, so I translated
the configure script arguments into CMake configure flags. I also tried my
best to enable the test suite, but even disabling all the GUI tests that fail
because of not having a real X serer, there was still about 20% of the tests
failing and it was using more than one hour to complete on a fast machine, so
I ended up disabling it for now.

Thank you!

Maxim Cournoyer (2):
gnu: Rename qtbase to qtbase-5.
gnu: Add qtbase (version 6).

gnu/packages/admin.scm | 2 +-
gnu/packages/aidc.scm | 2 +-
gnu/packages/animation.scm | 4 +-
gnu/packages/astronomy.scm | 4 +-
gnu/packages/audio.scm | 20 +--
gnu/packages/bioinformatics.scm | 2 +-
gnu/packages/bittorrent.scm | 2 +-
gnu/packages/calendar.scm | 2 +-
gnu/packages/chemistry.scm | 6 +-
gnu/packages/compression.scm | 2 +-
gnu/packages/connman.scm | 2 +-
gnu/packages/cvassistant.scm | 2 +-
gnu/packages/display-managers.scm | 2 +-
gnu/packages/djvu.scm | 2 +-
gnu/packages/documentation.scm | 2 +-
gnu/packages/ebook.scm | 2 +-
gnu/packages/education.scm | 8 +-
gnu/packages/electronics.scm | 2 +-
gnu/packages/emulators.scm | 10 +-
gnu/packages/engineering.scm | 16 +-
gnu/packages/fcitx.scm | 2 +-
gnu/packages/fcitx5.scm | 6 +-
gnu/packages/finance.scm | 12 +-
gnu/packages/flashing-tools.scm | 4 +-
gnu/packages/fpga.scm | 2 +-
gnu/packages/game-development.scm | 6 +-
gnu/packages/games.scm | 96 +++++------
gnu/packages/geo.scm | 6 +-
gnu/packages/gnupg.scm | 4 +-
gnu/packages/gpodder.scm | 2 +-
gnu/packages/gps.scm | 6 +-
gnu/packages/graphics.scm | 4 +-
gnu/packages/gstreamer.scm | 2 +-
gnu/packages/image-processing.scm | 6 +-
gnu/packages/image-viewers.scm | 6 +-
gnu/packages/image.scm | 2 +-
gnu/packages/irc.scm | 2 +-
gnu/packages/jami.scm | 2 +-
gnu/packages/kde-frameworks.scm | 172 ++++++++++----------
gnu/packages/kde-internet.scm | 16 +-
gnu/packages/kde-multimedia.scm | 26 +--
gnu/packages/kde-pim.scm | 80 +++++-----
gnu/packages/kde-plasma.scm | 12 +-
gnu/packages/kde-systemtools.scm | 14 +-
gnu/packages/kde-utils.scm | 22 +--
gnu/packages/kde.scm | 48 +++---
gnu/packages/language.scm | 4 +-
gnu/packages/lego.scm | 2 +-
gnu/packages/linphone.scm | 2 +-
gnu/packages/logo.scm | 2 +-
gnu/packages/lxqt.scm | 56 +++----
gnu/packages/maths.scm | 10 +-
gnu/packages/messaging.scm | 14 +-
gnu/packages/mpd.scm | 2 +-
gnu/packages/music.scm | 40 ++---
gnu/packages/networking.scm | 4 +-
gnu/packages/ocr.scm | 2 +-
gnu/packages/password-utils.scm | 4 +-
gnu/packages/pdf.scm | 10 +-
gnu/packages/photo.scm | 2 +-
gnu/packages/polkit.scm | 2 +-
gnu/packages/printers.scm | 4 +-
gnu/packages/profiling.scm | 2 +-
gnu/packages/pumpio.scm | 2 +-
gnu/packages/python-xyz.scm | 2 +-
gnu/packages/qt.scm | 257 +++++++++++++++++++++++-------
gnu/packages/radio.scm | 16 +-
gnu/packages/robotics.scm | 4 +-
gnu/packages/scribus.scm | 2 +-
gnu/packages/sync.scm | 6 +-
gnu/packages/syndication.scm | 2 +-
gnu/packages/synergy.scm | 2 +-
gnu/packages/telegram.scm | 2 +-
gnu/packages/telephony.scm | 4 +-
gnu/packages/terminals.scm | 2 +-
gnu/packages/tex.scm | 4 +-
gnu/packages/text-editors.scm | 4 +-
gnu/packages/video.scm | 20 +--
gnu/packages/web-browsers.scm | 2 +-
gnu/packages/web.scm | 10 +-
gnu/packages/xdisorg.scm | 2 +-
gnu/packages/xorg.scm | 2 +-
82 files changed, 655 insertions(+), 506 deletions(-)

--
2.31.1
M
M
Maxim Cournoyer wrote on 10 Apr 2021 04:06
[PATCH 1/2] gnu: Rename qtbase to qtbase-5.
(address . 47684@debbugs.gnu.org)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
20210410020634.17009-1-maxim.cournoyer@gmail.com
This change was automated via the following command:

$ git ls-files | xargs sed -i 's/,qtbase/,qtbase-5/g'
$ git checkout etc # to clear some spurious changes

This is done so the qtbase variable can be upgrade to version 6 in the
following commit.
---
gnu/packages/admin.scm | 2 +-
gnu/packages/aidc.scm | 2 +-
gnu/packages/animation.scm | 4 +-
gnu/packages/astronomy.scm | 4 +-
gnu/packages/audio.scm | 20 ++--
gnu/packages/bioinformatics.scm | 2 +-
gnu/packages/bittorrent.scm | 2 +-
gnu/packages/calendar.scm | 2 +-
gnu/packages/chemistry.scm | 6 +-
gnu/packages/compression.scm | 2 +-
gnu/packages/connman.scm | 2 +-
gnu/packages/cvassistant.scm | 2 +-
gnu/packages/display-managers.scm | 2 +-
gnu/packages/djvu.scm | 2 +-
gnu/packages/documentation.scm | 2 +-
gnu/packages/ebook.scm | 2 +-
gnu/packages/education.scm | 8 +-
gnu/packages/electronics.scm | 2 +-
gnu/packages/emulators.scm | 10 +-
gnu/packages/engineering.scm | 16 +--
gnu/packages/fcitx.scm | 2 +-
gnu/packages/fcitx5.scm | 6 +-
gnu/packages/finance.scm | 12 +--
gnu/packages/flashing-tools.scm | 4 +-
gnu/packages/fpga.scm | 2 +-
gnu/packages/game-development.scm | 6 +-
gnu/packages/games.scm | 96 ++++++++---------
gnu/packages/geo.scm | 6 +-
gnu/packages/gnupg.scm | 4 +-
gnu/packages/gpodder.scm | 2 +-
gnu/packages/gps.scm | 6 +-
gnu/packages/graphics.scm | 4 +-
gnu/packages/gstreamer.scm | 2 +-
gnu/packages/image-processing.scm | 6 +-
gnu/packages/image-viewers.scm | 6 +-
gnu/packages/image.scm | 2 +-
gnu/packages/irc.scm | 2 +-
gnu/packages/jami.scm | 2 +-
gnu/packages/kde-frameworks.scm | 172 +++++++++++++++---------------
gnu/packages/kde-internet.scm | 16 +--
gnu/packages/kde-multimedia.scm | 26 ++---
gnu/packages/kde-pim.scm | 80 +++++++-------
gnu/packages/kde-plasma.scm | 12 +--
gnu/packages/kde-systemtools.scm | 14 +--
gnu/packages/kde-utils.scm | 22 ++--
gnu/packages/kde.scm | 48 ++++-----
gnu/packages/language.scm | 4 +-
gnu/packages/lego.scm | 2 +-
gnu/packages/linphone.scm | 2 +-
gnu/packages/logo.scm | 2 +-
gnu/packages/lxqt.scm | 56 +++++-----
gnu/packages/maths.scm | 10 +-
gnu/packages/messaging.scm | 14 +--
gnu/packages/mpd.scm | 2 +-
gnu/packages/music.scm | 40 +++----
gnu/packages/networking.scm | 4 +-
gnu/packages/ocr.scm | 2 +-
gnu/packages/password-utils.scm | 4 +-
gnu/packages/pdf.scm | 10 +-
gnu/packages/photo.scm | 2 +-
gnu/packages/polkit.scm | 2 +-
gnu/packages/printers.scm | 4 +-
gnu/packages/profiling.scm | 2 +-
gnu/packages/pumpio.scm | 2 +-
gnu/packages/python-xyz.scm | 2 +-
gnu/packages/qt.scm | 104 +++++++++---------
gnu/packages/radio.scm | 16 +--
gnu/packages/robotics.scm | 4 +-
gnu/packages/scribus.scm | 2 +-
gnu/packages/sync.scm | 6 +-
gnu/packages/syndication.scm | 2 +-
gnu/packages/synergy.scm | 2 +-
gnu/packages/telegram.scm | 2 +-
gnu/packages/telephony.scm | 4 +-
gnu/packages/terminals.scm | 2 +-
gnu/packages/tex.scm | 4 +-
gnu/packages/text-editors.scm | 4 +-
gnu/packages/video.scm | 20 ++--
gnu/packages/web-browsers.scm | 2 +-
gnu/packages/web.scm | 10 +-
gnu/packages/xdisorg.scm | 2 +-
gnu/packages/xorg.scm | 2 +-
82 files changed, 504 insertions(+), 504 deletions(-)

Toggle diff (424 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 06fc6baa46..f709574e9f 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1807,7 +1807,7 @@ command.")
(package
(inherit wpa-supplicant)
(name "wpa-supplicant-gui")
- (inputs `(("qtbase" ,qtbase)
+ (inputs `(("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)
,@(package-inputs wpa-supplicant)))
(native-inputs
diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm
index d1b63de736..3db631d92e 100644
--- a/gnu/packages/aidc.scm
+++ b/gnu/packages/aidc.scm
@@ -195,7 +195,7 @@ C/C++ programs to use its capabilities without restrictions or overhead.")
("imagemagick" ,imagemagick)
("libjpeg" ,libjpeg-turbo)
("python" ,python)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtx11extras" ,qtx11extras)
("v4l-utils" ,v4l-utils)))
(synopsis "Bar code reader")
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3a915c7fda..2eafc4d083 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -374,7 +374,7 @@ audio or video backends, ensuring good performance.")
qt)))
#t))))))
(inputs
- `(("qt" ,qtbase)
+ `(("qt" ,qtbase-5)
("qtmultimedia" ,qtmultimedia)
("libsndfile" ,libsndfile)))
(native-inputs
@@ -404,7 +404,7 @@ waveform until they line up with the proper sounds.")
"0b1nwiwyg01087q318vymg4si76dw41ykxbn2zwd6dqbxzbpr1dh"))))
(build-system gnu-build-system)
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("qtxmlpatterns" ,qtxmlpatterns)
("qtmultimedia" ,qtmultimedia)
("qtsvg" ,qtsvg)))
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 6cbd5f1bf6..2ddd64fb67 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -410,7 +410,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
(base32 "04vg2asj9gygwnrs32scqc8192ln2lyqa9v7cjqk8zd4frkwszwp"))))
(build-system cmake-build-system)
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("qtlocation" ,qtlocation)
("qtmultimedia" ,qtmultimedia)
("qtscript" ,qtscript)
@@ -419,7 +419,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
(native-inputs
`(("gettext" ,gettext-minimal) ; xgettext is used at compile time
("perl" ,perl) ; for pod2man
- ("qtbase" ,qtbase) ; Qt MOC is needed at compile time
+ ("qtbase" ,qtbase-5) ; Qt MOC is needed at compile time
("qttools" ,qttools)))
(arguments
`(#:test-target "test"
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 6e064f7175..f314809290 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -494,7 +494,7 @@ implementation of Adaptive Multi Rate Narrowband and Wideband
("jack" ,jack-1)
("ladspa" ,ladspa)
("liblo" ,liblo)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
(native-inputs
`(("pkg-config" ,pkg-config)
("qttools" ,qttools)))
@@ -2140,7 +2140,7 @@ synchronous execution of all clients, and low latency operation.")
("gtk2" ,gtk+-2)
("gtk3" ,gtk+)
("gtkmm" ,gtkmm-2)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -2732,7 +2732,7 @@ different audio devices such as ALSA or PulseAudio.")
`(("jack" ,jack-1)
("alsa-lib" ,alsa-lib)
("portaudio" ,portaudio)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtx11extras" ,qtx11extras)))
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -2766,11 +2766,11 @@ into various outputs and to start, stop and configure jackd")
(string-append "PREFIX="
(assoc-ref outputs "out"))))))))
(native-inputs
- `(("qtbase" ,qtbase))) ; for qmake
+ `(("qtbase" ,qtbase-5))) ; for qmake
(inputs
`(("jack" ,jack-1)
("libsndfile" ,libsndfile)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
(home-page "https://sourceforge.net/projects/qjackrcd/")
(synopsis "Stereo audio recorder for JACK")
(description "QJackRcd is a simple graphical stereo recorder for JACK
@@ -2879,7 +2879,7 @@ link REQUIRED)"))
("boost" ,boost)
("boost-sync" ,boost-sync)
("yaml-cpp" ,yaml-cpp)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
("qtsvg" ,qtsvg)
("qtwebchannel" ,qtwebchannel)
@@ -3081,7 +3081,7 @@ the Turtle syntax.")
`(("lv2" ,lv2)
("gtk+" ,gtk+-2)
("gtk+" ,gtk+)
- ("qt" ,qtbase)))
+ ("qt" ,qtbase-5)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://drobilla.net/software/suil/")
@@ -3557,7 +3557,7 @@ interface.")
("pkg-config" ,pkg-config)))
(inputs
`(("fluidsynth" ,fluidsynth)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtx11extras" ,qtx11extras)))
(home-page "https://qsynth.sourceforge.io")
(synopsis "Graphical user interface for FluidSynth")
@@ -4728,7 +4728,7 @@ as is the case with audio plugins.")
;; (ModuleNotFoundError: No module named 'PyQt5')
("python-wrapper" ,python-wrapper)
("libx11" ,libx11)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("zlib" ,zlib)
;; For WRAP-SCRIPT above.
@@ -5061,7 +5061,7 @@ digital radio.")
`(("catch" ,catch-framework)
("python" ,python) ;for running tests
("portaudio" ,portaudio) ;for portaudio examples
- ("qtbase" ,qtbase) ;for Qt examples
+ ("qtbase" ,qtbase-5) ;for Qt examples
("qtdeclarative" ,qtdeclarative)
("qttools" ,qttools)))
(inputs
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 908916ebf3..c5c0df2e63 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -12261,7 +12261,7 @@ Thus the per-base error rate is similar to the raw input reads.")
(install-file "Bandage" (string-append out "/bin"))
#t))))))
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)))
(native-inputs
`(("imagemagick" ,imagemagick)))
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index 29b0d62ad2..5d6a780aab 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -459,7 +459,7 @@ desktops.")
("libtorrent-rasterbar" ,libtorrent-rasterbar)
("openssl" ,openssl)
("python" ,python-wrapper)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)
("zlib" ,zlib)))
(home-page "https://www.qbittorrent.org/")
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index d473900ac5..c6629d1a5c 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -311,7 +311,7 @@ and ruby. It includes two illustrative command-line programs, @code{hcal} and
(native-inputs
`(("perl" ,perl))) ; pod2man
(inputs
- `(("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase-5)))
(home-page "https://www.toastfreeware.priv.at/confclerk")
(synopsis "Offline conference schedule application")
(description
diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm
index 4b0e719959..a52ecf69f7 100644
--- a/gnu/packages/chemistry.scm
+++ b/gnu/packages/chemistry.scm
@@ -80,7 +80,7 @@
("molequeue" ,molequeue)
("python" ,python)
("spglib" ,spglib)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
(arguments
'(#:configure-flags (list "-DENABLE_TESTING=ON"
(string-append "-DSPGLIB_INCLUDE_DIR="
@@ -116,7 +116,7 @@ bioinformatics, materials science, and related areas.")
`(("avogadrolibs" ,avogadrolibs)
("hdf5" ,hdf5)
("molequeue" ,molequeue)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
;; TODO: Enable tests with "-DENABLE_TESTING" configure flag.
(arguments
'(#:tests? #f))
@@ -301,7 +301,7 @@ biological structures.")
"1w1fgxzqrb5yxvpmnc3c9ymnvixy0z1nfafkd9whg9zw8nbgl998"))))
(build-system cmake-build-system)
(inputs
- `(("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase-5)))
(arguments
'(#:configure-flags '("-DENABLE_TESTING=ON")
#:phases
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 37a7d230fe..63d43041c4 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -2164,7 +2164,7 @@ download times, and other distribution and storage costs.")
(native-inputs
`(("doxygen" ,doxygen)))
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("zlib" ,zlib)))
(home-page "https://stachenov.github.io/quazip/index.html")
(synopsis "Qt/C++ wrapper for Minizip")
diff --git a/gnu/packages/connman.scm b/gnu/packages/connman.scm
index e6d97db0fd..4cce62d9de 100644
--- a/gnu/packages/connman.scm
+++ b/gnu/packages/connman.scm
@@ -148,7 +148,7 @@ sharing) to clients via USB, ethernet, WiFi, cellular and Bluetooth.")
(sha256
(base32 "0jn12wxwjznady6aniwmvahg1dj25p902sdwj0070biv6vx5c7dq"))))
(inputs
- `(("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase-5)))
(native-inputs
`(("qttools" ,qttools)))
(build-system gnu-build-system)
diff --git a/gnu/packages/cvassistant.scm b/gnu/packages/cvassistant.scm
index f57806d734..3f3a6f7492 100644
--- a/gnu/packages/cvassistant.scm
+++ b/gnu/packages/cvassistant.scm
@@ -69,7 +69,7 @@
(replace 'configure
(lambda _ (invoke "qmake"))))))
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("quazip" ,quazip)
("zlib" ,zlib)))
(home-page "https://cvassistant.sourceforge.io/")
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 6ea6e1a161..8a0342d7c5 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -80,7 +80,7 @@
("libxcb" ,libxcb)
("libxkbcommon" ,libxkbcommon)
("linux-pam" ,linux-pam)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
;; Some user-defined themes use QtQuick components internally. Adding
diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm
index 6423eb124f..96071b8da1 100644
--- a/gnu/packages/djvu.scm
+++ b/gnu/packages/djvu.scm
@@ -119,7 +119,7 @@ utilities.")
("glib" ,glib)
("libxt" ,libxt)
("libtiff" ,libtiff)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
(arguments
`(#:phases
(modify-phases %standard-phases
diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm
index ae8553436e..d9d8eff951 100644
--- a/gnu/packages/documentation.scm
+++ b/gnu/packages/documentation.scm
@@ -348,7 +348,7 @@ local system.")
(inputs
`(("libarchive" ,libarchive)
("sqlite" ,sqlite)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
("qtwebchannel" ,qtwebchannel)
("qtwebengine" ,qtwebengine)
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm
index 504171ca8b..be5fd59bb4 100644
--- a/gnu/packages/ebook.scm
+++ b/gnu/packages/ebook.scm
@@ -146,7 +146,7 @@ with Microsoft Compiled HTML (CHM) files")
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
- ("qtbase" ,qtbase) ; for qmake
+ ("qtbase" ,qtbase-5) ; for qmake
("python-flake8" ,python-flake8)
("python-pyqt-builder" ,python-pyqt-builder)
("xdg-utils" ,xdg-utils)))
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 589c32838c..2f312d8f46 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -190,7 +190,7 @@ of categories with some of the activities available in that category.
(inputs
`(("openssl" ,openssl)
("python" ,python-wrapper)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
("qtmultimedia" ,qtmultimedia)
@@ -259,7 +259,7 @@ Currently available boards include:
;; Recreate Makefile
(invoke "qmake")))))))
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("qtmultimedia" ,qtmultimedia)))
(home-page "https://www.tipp10.com/")
(synopsis "Touch typing tutor")
@@ -637,7 +637,7 @@ Portuguese, Spanish and Italian.")
(replace 'configure
(lambda _ (invoke "qmake" "fet.pro"))))))
(inputs
- `(("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase-5)))
(home-page "https://www.lalescu.ro/liviu/fet/")
(synopsis "Timetabling software")
(description
@@ -710,7 +710,7 @@ language and very flexible regarding to new or unknown keyboard layouts.")
("kxmlgui" ,kxmlgui)
("libxcb" ,libxcb)
("libxkbfile" ,libxkbfile)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
("qtquickcontrols2" ,qtquickcontrols2)
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index c578fda334..250e89a43f 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -276,7 +276,7 @@ format support.")
("glibmm" ,glibmm)
("libsigrok" ,libsigrok)
("libsigrokdecode" ,libsigrokdecode)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtsvg" ,qtsvg)))
(home-page "https://www.sigrok.org/wiki/PulseView")
(synopsis "Qt based logic analyzer, oscilloscope and MSO GUI for sigrok")
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 8482f679e2..17782a35ee 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -232,7 +232,7 @@
("openal" ,openal)
("pugixml" ,pugixml)
("pulseaudio" ,pulseaudio)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("sdl2" ,sdl2)
("sfml" ,sfml)
("soil" ,soil)
@@ -332,7 +332,7 @@ older games.")
#:tests? #f)) ; test suite wants mips toolchain
(inputs
`(("elfutils" ,elfutils)
- ("qtbase" ,qtbase)))
+ ("qtbase" ,qtbase-5)))
(home-page "https://github.com/cvut/QtMips")
(synopsis "MIPS CPU emulator")
(description "This package contains a MIPS CPU emulator. The simulator
@@ -576,7 +576,7 @@ The following systems are supported:
("mesa" ,mesa)
("minizip" ,minizip)
("ncurses" ,ncurses)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("qtmultimedia" ,qtmultimedia)
("sdl2" ,sdl2)
("sqlite" ,sqlite)
@@ -1337,7 +1337,7 @@ as RetroArch.")
("openal" ,openal)
("pulseaudio" ,pulseaudio)
("python" ,python)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("sdl" ,sdl2)
("udev" ,eudev)
("vulkan-loader" ,vulkan-loader)
@@ -1756,7 +1756,7 @@ This is a part of the TiLP project.")
("portmidi" ,portmidi)
("pugixml" ,pugixml)
("python-wrapper" ,python-wrapper)
- ("qtbase" ,qtbase)
+ ("qtbase" ,qtbase-5)
("rapidjson" ,rapidjson)
("sdl" ,(sdl-union (list sdl2 sdl2-ttf)))
("sqlite" ,sqlite)
diff --git a/gnu/packages/engineering.scm b/gnu/packag
This message was truncated. Download the full message here.
M
M
Maxim Cournoyer wrote on 10 Apr 2021 04:06
[PATCH 2/2] gnu: Add qtbase (version 6).
(address . 47684@debbugs.gnu.org)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
20210410020634.17009-2-maxim.cournoyer@gmail.com
* gnu/packages/qt.scm (qtbase): New variable.
---
gnu/packages/qt.scm | 153 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 151 insertions(+), 2 deletions(-)

Toggle diff (166 lines)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 00bd4c29a7..b38d672c5e 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -552,8 +552,157 @@ system, and the core design of Django is reused in Grantlee.")
developers using C++ or QML, a CSS & JavaScript like language.")
(license (list license:lgpl2.1 license:lgpl3))))
-;; qt used to refer to the monolithic Qt 5.x package
-(define-deprecated qt qtbase)
+(define-public qtbase
+ (package/inherit qtbase-5
+ (name "qtbase")
+ (version "6.0.3")
+ (source (origin
+ (inherit (package-source qtbase-5))
+ (uri (qt5-urls name version))
+ (sha256
+ (base32
+ "156k21z8xqg0jxipil1dfrly42dkrd0fmqshbii6969l58fbci8s"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; corelib uses bundled harfbuzz, md4, md5, sha3
+ '(with-directory-excursion "src/3rdparty"
+ (for-each delete-file-recursively
+ ;; The bundled pcre2 copy is kept, as its headers
+ ;; are required by some internal bootstrap target
+ ;; used for the tools.
+ (list "double-conversion" "freetype" "harfbuzz-ng"
+ "libpng" "libjpeg" "sqlite" "xcb" "zlib"))))))
+ (build-system cmake-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtbase-5)
+ ;; XXX: There are many test failures, because the test suite
+ ;; requires a real X server (a virtual one such as Xvfb is not
+ ;; enough) or a functional network. It's also quite expensive to
+ ;; build and run.
+ ((#:tests? _ #f) #f)
+ ;; ((#:cmake _)
+ ;; cmake) ;requires a CMake >= 3.18.4
+ ((#:configure-flags _ ''())
+ `(let ((out (assoc-ref %outputs "out")))
+ (list "-GNinja" ;the build fails otherwise
+ (string-append "-DINSTALL_ARCHDATADIR=" out "/lib/qt6")
+ (string-append "-DINSTALL_DATADIR=" out "/share/qt6")
+ (string-append "-DINSTALL_DOCDIR=" out "/share/doc/qt6")
+ (string-append "-DINSTALL_MKSPECSDIR=" out "/lib/qt6/mkspecs")
+ (string-append "-DINSTALL_EXAMPLESDIR=" out
+ "/share/doc/qt6/examples")
+ (string-append "-DINSTALL_INCLUDEDIR=" out "/include/qt6")
+ ;; Link with DBus and OpenSSL so they don't get dlopen'ed.
+ "-DINPUT_dbus=linked"
+ "-DINPUT_openssl=linked"
+ ;; These features require higher versions of Linux than the
+ ;; minimum version of the glibc. See
+ ;; src/corelib/global/minimum-linux_p.h. By disabling these
+ ;; features Qt applications can be used on the oldest kernels
+ ;; that the glibc supports, including the RHEL6 (2.6.32) and
+ ;; RHEL7 (3.10) kernels.
+ "-DFEATURE_getentropy=OFF" ; requires Linux 3.17
+ "-DFEATURE_renameat2=OFF" ; requires Linux 3.16
+ ;; Most system libraries are used by default, except in some
+ ;; cases such as for those below.
+ "-DFEATURE_system_pcre2=ON"
+ "-DFEATURE_system_sqlite=ON"
+ ;; Don't use the precompiled headers.
+ "-DBUILD_WITH_PCH=OFF"
+ ;; Drop special machine instructions that do not have runtime
+ ;; detection.
+ ,@(if (string-prefix? "x86_64"
+ (or (%current-target-system)
+ (%current-system)))
+ '() ;implicitly enabled
+ '("-DFEATURE_sse2=OFF"
+ "-DFEATURE_sse3=OFF"
+ "-DFEATURE_ssse3=OFF"
+ "-DFEATURE_sse4_1=OFF"
+ "-DFEATURE_sse4_2=OFF"))
+ "-DFEATURE_mips_dsp=OFF"
+ "-DFEATURE_mips_dspr2=OFF")))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'patch-bin-sh)
+ (delete 'patch-xdg-open)
+ (add-after 'patch-paths 'patch-more-paths
+ (lambda _
+ (substitute* "src/gui/platform/unix/qgenericunixservices.cpp"
+ (("\"xdg-open\"")
+ (format #f "~s" (which "xdg-open"))))
+ (substitute* "src/corelib/global/global.pri"
+ (("/bin/ls")
+ (which "ls")))
+ (substitute* '("mkspecs/features/qt_functions.prf"
+ "qmake/library/qmakebuiltins.cpp")
+ (("/bin/sh")
+ (which "sh")))))
+ (replace 'configure
+ (assoc-ref %standard-phases 'configure))
+ (replace 'build
+ (lambda* (#:key parallel-build? #:allow-other-keys)
+ (apply invoke "cmake" "--build" "."
+ (if parallel-build?
+ `("--parallel" ,(number->string (parallel-job-count)))
+ '()))))
+ (replace 'install
+ (lambda _
+ (invoke "cmake" "--install" ".")))
+ (replace 'patch-mkspecs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (archdata (string-append out "/lib/qt6"))
+ (mkspecs (string-append archdata "/mkspecs"))
+ (qt_config.prf (string-append
+ mkspecs "/features/qt_config.prf")))
+ ;; For each Qt module, let `qmake' uses search paths in the
+ ;; module directory instead of all in QT_INSTALL_PREFIX.
+ (substitute* qt_config.prf
+ (("\\$\\$\\[QT_INSTALL_HEADERS\\]")
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../include/qt6))")
+ (("\\$\\$\\[QT_INSTALL_LIBS\\]")
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../lib))")
+ (("\\$\\$\\[QT_HOST_LIBS\\]")
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../lib))")
+ (("\\$\\$\\[QT_INSTALL_BINS\\]")
+ "$$clean_path($$replace(dir, mkspecs/modules, ../../bin))"))
+
+ ;; Searches Qt tools in the current PATH instead of QT_HOST_BINS.
+ (substitute* (string-append mkspecs "/features/qt_functions.prf")
+ (("cmd = \\$\\$\\[QT_HOST_BINS\\]/\\$\\$2")
+ "cmd = $$system(which $${2}.pl 2>/dev/null || which $${2})"))
+
+ ;; Resolve qmake spec files within qtbase by absolute paths.
+ (substitute*
+ (map (lambda (file)
+ (string-append mkspecs "/features/" file))
+ '("device_config.prf" "moc.prf" "qt_build_config.prf"
+ "qt_config.prf"))
+ (("\\$\\$\\[QT_HOST_DATA/get\\]") archdata)
+ (("\\$\\$\\[QT_HOST_DATA/src\\]") archdata)))))))))
+ (native-inputs
+ `(("gtk+" ,gtk+) ;for GTK theme support
+ ("ninja" ,ninja)
+ ("wayland-protocols" ,wayland-protocols)
+ ("xorg-server" ,xorg-server-for-tests)
+ ,@(package-native-inputs qtbase-5)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "QMAKEPATH")
+ (files '("lib/qt6")))
+ (search-path-specification
+ (variable "QML2_IMPORT_PATH")
+ (files '("lib/qt6/qml")))
+ (search-path-specification
+ (variable "QT_PLUGIN_PATH")
+ (files '("lib/qt6/plugins")))
+ (search-path-specification
+ (variable "XDG_DATA_DIRS")
+ (files '("share")))
+ (search-path-specification
+ (variable "XDG_CONFIG_DIRS")
+ (files '("etc/xdg")))))))
(define-public qtsvg
(package (inherit qtbase)
--
2.31.1
M
M
Maxim Cournoyer wrote on 29 Jun 2021 21:20
control message for bug #47684
(address . control@debbugs.gnu.org)
87bl7ov5nx.fsf@gmail.com
close 47684
quit
?