-
Notifications
You must be signed in to change notification settings - Fork 713
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #16810 from boegel/20221207095816_new_pr_Qt55157
{devel}[GCCcore/12.2.0] Qt5 v5.15.7
- Loading branch information
Showing
3 changed files
with
119 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
easyblock = 'EB_Qt' | ||
|
||
name = 'Qt5' | ||
version = '5.15.7' | ||
|
||
homepage = 'https://qt.io/' | ||
description = "Qt is a comprehensive cross-platform C++ application framework." | ||
|
||
toolchain = {'name': 'GCCcore', 'version': '12.2.0'} | ||
# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X) | ||
toolchainopts = {'vectorize': False} | ||
|
||
source_urls = [ | ||
'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', | ||
'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/', | ||
'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/', | ||
] | ||
sources = ['qt-everywhere-opensource-src-%(version)s.tar.xz'] | ||
patches = [ | ||
'Qt5-5.13.1_fix-avx2.patch', | ||
'Qt5-5.13.1_fix-qmake-libdir.patch', | ||
'Qt5-5.14.1_fix-OF-Gentoo.patch', | ||
'Qt5-5.15.7_GCC-12.patch', | ||
] | ||
checksums = [ | ||
{'qt-everywhere-opensource-src-5.15.7.tar.xz': '8a71986676a3f37a198a9113acedbfd5bc5606a459b6b85816d951458adbe9a0'}, | ||
{'Qt5-5.13.1_fix-avx2.patch': '6f46005f056bf9e6ff3e5d012a874d18ee03b33e685941f2979c970be91a9dbc'}, | ||
{'Qt5-5.13.1_fix-qmake-libdir.patch': '511ca9c0599ceb1989f73d8ceea9199c041512d3a26ee8c5fd870ead2c10cb63'}, | ||
{'Qt5-5.14.1_fix-OF-Gentoo.patch': '0b9defb7ce75314d85bebe07e143db7f7de316fec64c17cbd13f7eec5d2d1afa'}, | ||
{'Qt5-5.15.7_GCC-12.patch': '9a5bde91b223a3e2e90d3d6bec107af69a1a0f18d789593738a953080473fa68'}, | ||
] | ||
|
||
builddependencies = [ | ||
('binutils', '2.39'), | ||
('pkgconf', '1.9.3'), | ||
# deps for QtWebEngine | ||
('Bison', '3.8.2'), | ||
('flex', '2.6.4'), | ||
('gperf', '3.1'), | ||
('Ninja', '1.11.1'), | ||
# Qt5WebEngine has build dependency on Python 2 | ||
('Python', '2.7.18', '-bare'), | ||
('re2c', '3.0'), | ||
] | ||
|
||
dependencies = [ | ||
('double-conversion', '3.2.1'), | ||
('GLib', '2.75.0'), | ||
('PCRE2', '10.40'), | ||
('libpng', '1.6.38'), | ||
('HarfBuzz', '5.3.1'), | ||
('graphite2', '1.3.14'), | ||
# deps for QtWebEngine | ||
('X11', '20221110'), | ||
('fontconfig', '2.14.1'), | ||
('DBus', '1.15.2'), | ||
('libevent', '2.1.12'), | ||
('libGLU', '9.0.2'), | ||
('libjpeg-turbo', '2.1.4'), | ||
('NSS', '3.85'), | ||
('snappy', '1.1.9'), | ||
('JasPer', '4.0.0'), | ||
('bzip2', '1.0.8'), | ||
('OpenSSL', '1.1', '', SYSTEM), | ||
('ICU', '72.1'), | ||
('nodejs', '18.12.1'), | ||
] | ||
|
||
# qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x) | ||
# qtwayland fails to build on (some) Centos 7 systems | ||
configopts = '-skip qtgamepad -skip qtwayland' | ||
|
||
# make sure QtWebEngine component is being built & installed | ||
check_qtwebengine = True | ||
|
||
moduleclass = 'devel' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
add missing include to fix compilation error with GCC 12.x | ||
../../3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp:300:49: error: no matching function for call to begin(const char* const [140]) | ||
cfr. https://github.com/archlinux/svntogit-packages/blob/packages/qt5-webengine/trunk/qt5-webengine-gcc12.patch | ||
--- Qt5/5.15.7/GCCcore-12.2.0/qt-everywhere-src-5.15.7/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp.orig 2021-10-19 14:46:32.000000000 +0200 | ||
+++ Qt5/5.15.7/GCCcore-12.2.0/qt-everywhere-src-5.15.7/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp 2022-11-25 14:48:38.501288572 +0100 | ||
@@ -8,6 +8,8 @@ | ||
|
||
#include "include/utils/SkParse.h" | ||
|
||
+#include <iterator> | ||
+ | ||
static constexpr const char* gColorNames[] = { | ||
"aliceblue", | ||
"antiquewhite", |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
easyblock = 'ConfigureMake' | ||
|
||
name = 're2c' | ||
version = '3.0' | ||
|
||
homepage = 'https://re2c.org' | ||
description = """re2c is a free and open-source lexer generator for C and C++. Its main goal is generating | ||
fast lexers: at least as fast as their reasonably optimized hand-coded counterparts. Instead of using | ||
traditional table-driven approach, re2c encodes the generated finite state automata directly in the form | ||
of conditional jumps and comparisons.""" | ||
|
||
toolchain = {'name': 'GCCcore', 'version': '12.2.0'} | ||
|
||
source_urls = ['https://github.com/skvadrik/re2c/releases/download/%(version)s'] | ||
sources = ['%(name)s-%(version)s.tar.xz'] | ||
checksums = ['b3babbbb1461e13fe22c630a40c43885efcfbbbb585830c6f4c0d791cf82ba0b'] | ||
|
||
builddependencies = [('binutils', '2.39')] | ||
|
||
configopts = "--disable-rust" | ||
|
||
sanity_check_paths = { | ||
'files': ['bin/re2c'], | ||
'dirs': [], | ||
} | ||
|
||
sanity_check_commands = ["re2c --help"] | ||
|
||
moduleclass = 'tools' |