Skip to content

{vis,lang}[GCCcore/13.2.0] PyQt5 v5.15.11, SIP v6.8.6, PyQt-builder v1.16.4 w/ Python/3.11.5#21930

Open
zdemat wants to merge 7 commits intoeasybuilders:developfrom
zdemat:Qt5-GCCcore-13.2.0
Open

{vis,lang}[GCCcore/13.2.0] PyQt5 v5.15.11, SIP v6.8.6, PyQt-builder v1.16.4 w/ Python/3.11.5#21930
zdemat wants to merge 7 commits intoeasybuilders:developfrom
zdemat:Qt5-GCCcore-13.2.0

Conversation

@zdemat
Copy link
Copy Markdown
Contributor

@zdemat zdemat commented Nov 28, 2024

PyQt5 for GCCore/13.2.0 with minor version updates.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 28, 2024

Updated software PyQt-builder-1.16.4-GCCcore-13.2.0.eb

Diff against PyQt-builder-1.15.4-GCCcore-12.3.0.eb

easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.15.4-GCCcore-12.3.0.eb

diff --git a/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.15.4-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.16.4-GCCcore-13.2.0.eb
index dfef8b1802..0736f9c6be 100644
--- a/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.15.4-GCCcore-12.3.0.eb
+++ b/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.16.4-GCCcore-13.2.0.eb
@@ -1,8 +1,7 @@
-# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de, 2024/01
 easyblock = 'PythonBundle'
 
 name = 'PyQt-builder'
-version = '1.15.4'
+version = '1.16.4'
 
 homepage = 'http://www.example.com'
 description = """PyQt-builder is the PEP 517 compliant build system for PyQt and projects that   
@@ -10,19 +9,19 @@ extend PyQt. It extends the SIP build system and uses Qt’s qmake to perform th
 actual compilation and installation of extension modules.
 """
 
-toolchain = {'name': 'GCCcore', 'version': '12.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 
 builddependencies = [('binutils', '2.40')]
 dependencies = [
-    ('Python', '3.11.3'),
-    ('SIP', '6.8.1'),
+    ('Python', '3.11.5'),
+    ('SIP', '6.8.6'),
 ]
 
-
 exts_list = [
     (name, version, {
         'modulename': 'pyqtbuild',
-        'checksums': ['39f8c75db17d9ce17cb6bbf3df1650b5cebc1ea4e5bd73843d21cc96612b2ae1'],
+        'sources': ['pyqt_builder-%(version)s.tar.gz'],
+        'checksums': ['4515e41ae379be2e54f88a89ecf47cd6e4cac43e862c4abfde18389c2666afdf'],
     }),
 ]
 

Updated software PyQt5-5.15.11-GCCcore-13.2.0.eb

Diff against PyQt5-5.15.10-GCCcore-12.3.0.eb

easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.10-GCCcore-12.3.0.eb

diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.10-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
index 531882e6f5..a026644539 100644
--- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.10-GCCcore-12.3.0.eb
+++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
@@ -1,23 +1,23 @@
-# update 5.15.10, sip6: THEMBL
+# update 5.15.11, sip6
 easyblock = 'PythonBundle'
 
 name = 'PyQt5'
-version = '5.15.10'
+version = '5.15.11'
 
 homepage = 'https://www.riverbankcomputing.com/software/pyqt'
 description = """PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company.
 This bundle includes PyQtWebEngine, a set of Python bindings for The Qt Company’s Qt WebEngine framework."""
 
-toolchain = {'name': 'GCCcore', 'version': '12.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'cstd': 'c++11'}
 
 builddependencies = [
     ('binutils', '2.40'),
-    ('PyQt-builder', '1.15.4'),
+    ('PyQt-builder', '1.16.4'),
 ]
 dependencies = [
-    ('Python', '3.11.3'),
-    ('Qt5', '5.15.10'),
+    ('Python', '3.11.5'),
+    ('Qt5', '5.15.13'),
 ]
 local_sipdir = '%(installdir)s/share/sip'
 
@@ -48,12 +48,12 @@ local_pyqtwebengine_configopts = local_sip_configopts_common
 default_easyblock = 'PythonPackage'
 
 components = [
-    ('%s_sip' % name, '12.13.0', {
+    ('%s_sip' % name, '12.15.0', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
         'start_dir': '%(name)s-%(version)s',
         'use_pip': True,
-        'checksums': ['7f321daf84b9c9dbca61b80e1ef37bdaffc0e93312edae2cd7da25b953971d91'],
+        'checksums': ['d23fdfcf363b5cedd9d39f8a9c5710e7d52804f5b08a58e91c638b36eafcb702'],
     }),
     (name, version, {
         'source_urls': [PYPI_SOURCE],
@@ -66,9 +66,9 @@ components = [
         'configopts': ' '.join(local_pyqt5_configopts),
         'prebuildopts': local_setup_env + "cd build && ",
         'preinstallopts': "cd build && ",
-        'checksums': ['d46b7804b1b10a4ff91753f8113e5b5580d2b4462f3226288e2d84497334898a'],
+        'checksums': ['fda45743ebb4a27b4b1a51c6d8ef455c4c1b5d610c90d2934c7802b5c1557c52'],
     }),
-    ('PyQtWebEngine', '5.15.6', {
+    ('PyQtWebEngine', '5.15.7', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
         'easyblock': 'ConfigureMake',
@@ -79,7 +79,7 @@ components = [
         'configopts': ' '.join(local_pyqtwebengine_configopts),
         'prebuildopts': local_setup_env + "cd build && ",
         'preinstallopts': "cd build && ",
-        'checksums': ['ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721'],
+        'checksums': ['f121ac6e4a2f96ac289619bcfc37f64e68362f24a346553f5d6c42efa4228a4d'],
     })
 ]
 
Diff against PyQt5-5.15.7-GCCcore-12.2.0.eb

easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb

diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
index 97be3ae2aa..a026644539 100644
--- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.7-GCCcore-12.2.0.eb
+++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
@@ -1,118 +1,112 @@
-easyblock = 'Bundle'
+# update 5.15.11, sip6
+easyblock = 'PythonBundle'
 
 name = 'PyQt5'
-version = '5.15.7'
+version = '5.15.11'
 
 homepage = 'https://www.riverbankcomputing.com/software/pyqt'
 description = """PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company.
 This bundle includes PyQtWebEngine, a set of Python bindings for The Qt Company’s Qt WebEngine framework."""
 
-toolchain = {'name': 'GCCcore', 'version': '12.2.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'cstd': 'c++11'}
 
 builddependencies = [
-    ('binutils', '2.39'),
-    ('flex', '2.6.4'),   # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch
-    ('Bison', '3.8.2'),  # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch
+    ('binutils', '2.40'),
+    ('PyQt-builder', '1.16.4'),
 ]
 dependencies = [
-    ('Python', '3.10.8'),
-    ('Qt5', '5.15.7'),
+    ('Python', '3.11.5'),
+    ('Qt5', '5.15.13'),
 ]
-
-default_easyblock = 'PythonPackage'
-
 local_sipdir = '%(installdir)s/share/sip'
 
 local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages'
 
-local_pyqt5_sip_install = "sip-install --verbose --target-dir " + local_pylibdir + " "
-local_pyqt5_sip_install += "--confirm-license --no-designer-plugin --no-qml-plugin "
+local_setup_env = "export PATH=%(installdir)s/bin:$PATH && "
+local_setup_env += "export PYTHONPATH=%s:$PYTHONPATH && " % local_pylibdir
 
-local_pyqtweb_configopts = "configure.py --verbose --destdir=%s/PyQt5 " % local_pylibdir
-local_pyqtweb_configopts += "--apidir=%(installdir)s/qsci "
-local_pyqtweb_configopts += "--pyqt-sipdir=%s " % local_sipdir
-local_pyqtweb_configopts += "--sipdir=%s " % local_sipdir
-local_pyqtweb_configopts += "--no-stubs --no-dist-info"
 
-local_pyqt_configopts = "configure.py --verbose --destdir=%s " % local_pylibdir
-local_pyqt_configopts += "--no-stubs  "
-local_pyqt_configopts += "--confirm-license --no-designer-plugin --no-qml-plugin "
-# prevent installing pyrcc5 and other tools into $EBROOTPYTHON/bin:
-local_pyqt_configopts += "--bindir=%(installdir)s/bin "
-local_pyqt_configopts += "--sipdir=%s " % local_sipdir
+local_sip_configopts_common = [
+    "--no-make",
+    "--jobs %(parallel)s",
+    "--qmake-setting 'QMAKE_CXXFLAGS+=$$(CFLAGS)'",
+    "--qmake-setting 'QMAKE_CFLAGS+=$$(CFLAGS)'",
+    "--qmake-setting 'QMAKE_LFLAGS+=$$(LDFLAGS)'",
+    "--api-dir %(installdir)s/qsci",
+    "--scripts-dir %(installdir)s/bin",
+    "--target-dir %s" % local_pylibdir,
+]
+
+local_pyqt5_configopts = [
+    "--confirm-license",
+    "--no-designer-plugin",
+    "--no-qml-plugin",
+] + local_sip_configopts_common
+
+local_pyqtwebengine_configopts = local_sip_configopts_common
+default_easyblock = 'PythonPackage'
 
-local_setup_env = "export PATH=%(installdir)s/bin:$PATH && "
-local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
-local_sipver = '5.5.0'
-local_sip_rebuildparser = 'flex -o code_generator/lexer.c code_generator/metasrc/lexer.l &&'
-local_sip_rebuildparser += 'bison -y -d -o code_generator/parser.c code_generator/metasrc/parser.y &&'
 components = [
-    ('SIP', local_sipver, {
-        'source_urls': [PYPI_SOURCE],
-        'sources': [SOURCELOWER_TAR_GZ],
-        'start_dir': 'sip-%s' % local_sipver,
-        'use_pip': True,
-        'options': {'modulename': 'PyQt5.sip'},
-        'patches': ['PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch'],
-        'preinstallopts': local_sip_rebuildparser,  # req. for PyQt5-5.15.7_sip-5.5.0_add_py_ssize_t_clean.patch
-        'checksums': [
-            '5d024c419b30fea8a6de8c71a560c7ab0bc3c221fbfb14d55a5b865bd58eaac5',
-            'f828b1cf81e8bfea676f7aa1e428102aade5acf520aedd85e7de08b0b2226a5d'
-        ],
-    }),
-    ('PyQt-builder', '1.11.0', {
-        'source_urls': [PYPI_SOURCE],
-        'sources': [SOURCE_TAR_GZ],
-        'start_dir': 'PyQt-builder-%(version)s',
-        'use_pip': True,
-        'checksums': ['40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5'],
-    }),
-    ('PyQt5_sip', '12.11.0', {
+    ('%s_sip' % name, '12.15.0', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'start_dir': 'PyQt5_sip-%(version)s',
+        'start_dir': '%(name)s-%(version)s',
         'use_pip': True,
-        'checksums': ['b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39'],
+        'checksums': ['d23fdfcf363b5cedd9d39f8a9c5710e7d52804f5b08a58e91c638b36eafcb702'],
     }),
     (name, version, {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'easyblock': 'ConfigureMakePythonPackage',
+        'easyblock': 'ConfigureMake',
+        'configure_cmd': 'sip-build',
         'start_dir': '%(name)s-%(version)s',
+        'configure_without_installdir': True,
         'preconfigopts': local_setup_env,
-        'configopts': local_pyqt_configopts,
-        'checksums': ['755121a52b3a08cb07275c10ebb96576d36e320e572591db16cfdbc558101594'],
+        'configopts': ' '.join(local_pyqt5_configopts),
+        'prebuildopts': local_setup_env + "cd build && ",
+        'preinstallopts': "cd build && ",
+        'checksums': ['fda45743ebb4a27b4b1a51c6d8ef455c4c1b5d610c90d2934c7802b5c1557c52'],
     }),
-    ('PyQtWebEngine', '5.15.6', {
+    ('PyQtWebEngine', '5.15.7', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'easyblock': 'ConfigureMakePythonPackage',
+        'easyblock': 'ConfigureMake',
+        'configure_cmd': 'sip-build',
         'start_dir': '%(name)s-%(version)s',
+        'configure_without_installdir': True,
         'preconfigopts': local_setup_env,
-        'configopts': local_pyqtweb_configopts,
-        'options': {'modulename': 'PyQt5.QtWebEngine'},
-        'checksums': ['ae241ef2a61c782939c58b52c2aea53ad99b30f3934c8358d5e0a6ebb3fd0721'],
-    }),
+        'configopts': ' '.join(local_pyqtwebengine_configopts),
+        'prebuildopts': local_setup_env + "cd build && ",
+        'preinstallopts': "cd build && ",
+        'checksums': ['f121ac6e4a2f96ac289619bcfc37f64e68362f24a346553f5d6c42efa4228a4d'],
+    })
+]
+
+postinstallcmds = [
+    'mkdir %(installdir)s/share',
+    'ln -s --relative %s/%%(name)s/bindings %s' % (local_pylibdir, local_sipdir)
 ]
 
 sanity_check_paths = {
     'files': ['bin/%s' % x for x in [
-        'pyrcc5', 'pyuic5', 'pylupdate5', 'pyqt-bundle', 'sip-build', 'sip-install', 'sip5']],
-    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+        'pyrcc5', 'pyuic5', 'pylupdate5']],
+    'dirs': ['lib/python%(pyshortver)s/site-packages', 'qsci'],
 }
 
+use_pip = True
+
+sanity_pip_check = True
+
 sanity_check_commands = [
-    "python -s -c 'import PyQt5.QtCore'",
-    "sip5 --help",
+    "python -c 'import %(name)s.QtCore'",
+    "python -c 'import %(name)s.QtWebEngineWidgets'",
     "pyuic5 --help",
     "pylupdate5 -version 2>&1 | grep 'pylupdate5 v%(version)s'",
     "pyrcc5 -version 2>&1 | grep 'pyrcc5 v%(version)s'",
-    "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check",
 ]
 
 modextrapaths = {
-    'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
     'QT_INSTALL_DATA': 'qsci',
 }
 
Diff against PyQt5-5.15.5-GCCcore-11.3.0.eb

easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb

diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
index c30243b0d0..a026644539 100644
--- a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.5-GCCcore-11.3.0.eb
+++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb
@@ -1,107 +1,112 @@
-easyblock = 'Bundle'
+# update 5.15.11, sip6
+easyblock = 'PythonBundle'
 
 name = 'PyQt5'
-version = '5.15.5'
+version = '5.15.11'
 
 homepage = 'https://www.riverbankcomputing.com/software/pyqt'
 description = """PyQt5 is a set of Python bindings for v5 of the Qt application framework from The Qt Company.
 This bundle includes PyQtWebEngine, a set of Python bindings for The Qt Company’s Qt WebEngine framework."""
 
-toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'cstd': 'c++11'}
 
-builddependencies = [('binutils', '2.38')]
+builddependencies = [
+    ('binutils', '2.40'),
+    ('PyQt-builder', '1.16.4'),
+]
 dependencies = [
-    ('Python', '3.10.4'),
-    ('Qt5', '5.15.5'),
+    ('Python', '3.11.5'),
+    ('Qt5', '5.15.13'),
 ]
-
-default_easyblock = 'PythonPackage'
-
 local_sipdir = '%(installdir)s/share/sip'
 
 local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages'
 
-local_pyqt5_sip_install = "sip-install --verbose --target-dir " + local_pylibdir + " "
-local_pyqt5_sip_install += "--confirm-license --no-designer-plugin --no-qml-plugin "
+local_setup_env = "export PATH=%(installdir)s/bin:$PATH && "
+local_setup_env += "export PYTHONPATH=%s:$PYTHONPATH && " % local_pylibdir
+
 
-local_pyqtweb_configopts = "configure.py --verbose --destdir=%s/PyQt5 " % local_pylibdir
-local_pyqtweb_configopts += "--apidir=%(installdir)s/qsci "
-local_pyqtweb_configopts += "--pyqt-sipdir=%s " % local_sipdir
-local_pyqtweb_configopts += "--sipdir=%s " % local_sipdir
-local_pyqtweb_configopts += "--no-stubs --no-dist-info"
+local_sip_configopts_common = [
+    "--no-make",
+    "--jobs %(parallel)s",
+    "--qmake-setting 'QMAKE_CXXFLAGS+=$$(CFLAGS)'",
+    "--qmake-setting 'QMAKE_CFLAGS+=$$(CFLAGS)'",
+    "--qmake-setting 'QMAKE_LFLAGS+=$$(LDFLAGS)'",
+    "--api-dir %(installdir)s/qsci",
+    "--scripts-dir %(installdir)s/bin",
+    "--target-dir %s" % local_pylibdir,
+]
 
-local_pyqt_configopts = "configure.py --verbose --destdir=%s " % local_pylibdir
-local_pyqt_configopts += "--no-stubs  "
-local_pyqt_configopts += "--confirm-license --no-designer-plugin --no-qml-plugin "
-# prevent installing pyrcc5 and other tools into $EBROOTPYTHON/bin:
-local_pyqt_configopts += "--bindir=%(installdir)s/bin "
-local_pyqt_configopts += "--sipdir=%s " % local_sipdir
+local_pyqt5_configopts = [
+    "--confirm-license",
+    "--no-designer-plugin",
+    "--no-qml-plugin",
+] + local_sip_configopts_common
+
+local_pyqtwebengine_configopts = local_sip_configopts_common
+default_easyblock = 'PythonPackage'
 
-local_setup_env = "export PATH=%(installdir)s/bin:$PATH && "
-local_setup_env += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
-local_sipver = '5.5.0'
 components = [
-    ('SIP', local_sipver, {
-        'source_urls': [PYPI_SOURCE],
-        'sources': [SOURCELOWER_TAR_GZ],
-        'checksums': ['5d024c419b30fea8a6de8c71a560c7ab0bc3c221fbfb14d55a5b865bd58eaac5'],
-        'start_dir': 'sip-%s' % local_sipver,
-        'use_pip': True,
-        'options': {'modulename': 'PyQt5.sip'},
-    }),
-    ('PyQt-builder', '1.11.0', {
-        'source_urls': [PYPI_SOURCE],
-        'sources': [SOURCE_TAR_GZ],
-        'checksums': ['40f6df88c00e6aa9ac9a8bc5688f9fe2a4bd56c06cdb0a0b00ce8955ec34ffe5'],
-        'start_dir': 'PyQt-builder-%(version)s',
-        'use_pip': True,
-    }),
-    ('PyQt5_sip', '12.11.0', {
+    ('%s_sip' % name, '12.15.0', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'checksums': ['b4710fd85b57edef716cc55fae45bfd5bfac6fc7ba91036f1dcc3f331ca0eb39'],
-        'start_dir': 'PyQt5_sip-%(version)s',
+        'start_dir': '%(name)s-%(version)s',
         'use_pip': True,
+        'checksums': ['d23fdfcf363b5cedd9d39f8a9c5710e7d52804f5b08a58e91c638b36eafcb702'],
     }),
     (name, version, {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'checksums': ['b411b7a8fa03901c9feb1dcbac7ea1fc3ce20b9ae682762b777cd5398749ca2b'],
-        'easyblock': 'ConfigureMakePythonPackage',
+        'easyblock': 'ConfigureMake',
+        'configure_cmd': 'sip-build',
         'start_dir': '%(name)s-%(version)s',
+        'configure_without_installdir': True,
         'preconfigopts': local_setup_env,
-        'configopts': local_pyqt_configopts
+        'configopts': ' '.join(local_pyqt5_configopts),
+        'prebuildopts': local_setup_env + "cd build && ",
+        'preinstallopts': "cd build && ",
+        'checksums': ['fda45743ebb4a27b4b1a51c6d8ef455c4c1b5d610c90d2934c7802b5c1557c52'],
     }),
-    ('PyQtWebEngine', version, {
+    ('PyQtWebEngine', '5.15.7', {
         'source_urls': [PYPI_SOURCE],
         'sources': [SOURCE_TAR_GZ],
-        'checksums': ['ab47608dccf2b5e4b950d5a3cc704b17711af035024d07a9b71ad29fc103b941'],
-        'easyblock': 'ConfigureMakePythonPackage',
+        'easyblock': 'ConfigureMake',
+        'configure_cmd': 'sip-build',
         'start_dir': '%(name)s-%(version)s',
+        'configure_without_installdir': True,
         'preconfigopts': local_setup_env,
-        'configopts': local_pyqtweb_configopts,
-        'options': {'modulename': 'PyQt5.QtWebEngine'},
-    }),
+        'configopts': ' '.join(local_pyqtwebengine_configopts),
+        'prebuildopts': local_setup_env + "cd build && ",
+        'preinstallopts': "cd build && ",
+        'checksums': ['f121ac6e4a2f96ac289619bcfc37f64e68362f24a346553f5d6c42efa4228a4d'],
+    })
+]
+
+postinstallcmds = [
+    'mkdir %(installdir)s/share',
+    'ln -s --relative %s/%%(name)s/bindings %s' % (local_pylibdir, local_sipdir)
 ]
 
 sanity_check_paths = {
     'files': ['bin/%s' % x for x in [
-        'pyrcc5', 'pyuic5', 'pylupdate5', 'pyqt-bundle', 'sip-build', 'sip-install', 'sip5']],
-    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+        'pyrcc5', 'pyuic5', 'pylupdate5']],
+    'dirs': ['lib/python%(pyshortver)s/site-packages', 'qsci'],
 }
 
+use_pip = True
+
+sanity_pip_check = True
+
 sanity_check_commands = [
-    "python -s -c 'import PyQt5.QtCore'",
-    "sip5 --help",
+    "python -c 'import %(name)s.QtCore'",
+    "python -c 'import %(name)s.QtWebEngineWidgets'",
     "pyuic5 --help",
     "pylupdate5 -version 2>&1 | grep 'pylupdate5 v%(version)s'",
     "pyrcc5 -version 2>&1 | grep 'pyrcc5 v%(version)s'",
-    "PIP_DISABLE_PIP_VERSION_CHECK=true python -s -m pip check",
 ]
 
 modextrapaths = {
-    'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
     'QT_INSTALL_DATA': 'qsci',
 }
 

Updated software SIP-6.8.6-GCCcore-13.2.0.eb

Diff against SIP-6.8.3-GCCcore-13.2.0.eb

easybuild/easyconfigs/s/SIP/SIP-6.8.3-GCCcore-13.2.0.eb

diff --git a/easybuild/easyconfigs/s/SIP/SIP-6.8.3-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
index 7e615a60c0..07bd600e1a 100644
--- a/easybuild/easyconfigs/s/SIP/SIP-6.8.3-GCCcore-13.2.0.eb
+++ b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
@@ -1,11 +1,9 @@
 # This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
-# Author: Bart Verleye
-# Center for eResearch, Auckland
-# update 6.8.1: THEMBL
+# update 6.8.3
 easyblock = 'PythonPackage'
 
 name = 'SIP'
-version = '6.8.3'
+version = '6.8.6'
 
 homepage = 'http://www.riverbankcomputing.com/software/sip/'
 description = """SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries."""
@@ -13,7 +11,7 @@ description = """SIP is a tool that makes it very easy to create Python bindings
 toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 
 sources = [SOURCELOWER_TAR_GZ]
-checksums = ['888547b018bb24c36aded519e93d3e513d4c6aa0ba55b7cc1affbd45cf10762c']
+checksums = ['7fc959e48e6ec5d5af8bd026f69f5e24d08b3cb8abb342176f5ab8030cc07d7a']
 
 builddependencies = [
     ('binutils', '2.40'),
Diff against SIP-6.8.1-GCCcore-12.3.0.eb

easybuild/easyconfigs/s/SIP/SIP-6.8.1-GCCcore-12.3.0.eb

diff --git a/easybuild/easyconfigs/s/SIP/SIP-6.8.1-GCCcore-12.3.0.eb b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
index 266456f2dc..07bd600e1a 100644
--- a/easybuild/easyconfigs/s/SIP/SIP-6.8.1-GCCcore-12.3.0.eb
+++ b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
@@ -1,26 +1,24 @@
 # This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
-# Author: Bart Verleye
-# Center for eResearch, Auckland
-# update 6.8.1: THEMBL
+# update 6.8.3
 easyblock = 'PythonPackage'
 
 name = 'SIP'
-version = '6.8.1'
+version = '6.8.6'
 
 homepage = 'http://www.riverbankcomputing.com/software/sip/'
 description = """SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries."""
 
-toolchain = {'name': 'GCCcore', 'version': '12.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 
 sources = [SOURCELOWER_TAR_GZ]
-checksums = ['3002df415e168ac3ffe393942dbc7131cb82ade50000e1526f46a88ade26f598']
+checksums = ['7fc959e48e6ec5d5af8bd026f69f5e24d08b3cb8abb342176f5ab8030cc07d7a']
 
 builddependencies = [
     ('binutils', '2.40'),
 ]
 dependencies = [
-    ('Python', '3.11.3'),
-    ('Python-bundle-PyPI', '2023.06'),
+    ('Python', '3.11.5'),
+    ('Python-bundle-PyPI', '2023.10'),
     ('PLY', '3.11'),
 ]
 
Diff against SIP-4.19.13-fosscuda-2018b-Python-2.7.15.eb

easybuild/easyconfigs/s/SIP/SIP-4.19.13-fosscuda-2018b-Python-2.7.15.eb

diff --git a/easybuild/easyconfigs/s/SIP/SIP-4.19.13-fosscuda-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
index 75c2bb9dde..07bd600e1a 100644
--- a/easybuild/easyconfigs/s/SIP/SIP-4.19.13-fosscuda-2018b-Python-2.7.15.eb
+++ b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb
@@ -1,31 +1,40 @@
 # This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
-# Author: Bart Verleye
-# Center for eResearch, Auckland
-easyblock = 'ConfigureMakePythonPackage'
+# update 6.8.3
+easyblock = 'PythonPackage'
 
 name = 'SIP'
-version = '4.19.13'
-versionsuffix = '-Python-%(pyver)s'
+version = '6.8.6'
 
 homepage = 'http://www.riverbankcomputing.com/software/sip/'
 description = """SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries."""
 
-toolchain = {'name': 'fosscuda', 'version': '2018b'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 
-source_urls = ['http://sourceforge.net/projects/pyqt/files/sip/sip-%(version)s']
 sources = [SOURCELOWER_TAR_GZ]
-checksums = ['e353a7056599bf5fbd5d3ff9842a6ab2ea3cf4e0304a0f925ec5862907c0d15e']
+checksums = ['7fc959e48e6ec5d5af8bd026f69f5e24d08b3cb8abb342176f5ab8030cc07d7a']
 
-dependencies = [('Python', '2.7.15')]
+builddependencies = [
+    ('binutils', '2.40'),
+]
+dependencies = [
+    ('Python', '3.11.5'),
+    ('Python-bundle-PyPI', '2023.10'),
+    ('PLY', '3.11'),
+]
 
-configopts = "configure.py --bindir %(installdir)s/bin --incdir %(installdir)s/include "
-configopts += "--destdir %(installdir)s/lib/python%(pyshortver)s/site-packages"
+download_dep_fail = True
+use_pip = True
 
+local_tools = ['build',  'distinfo',  'install',  'module', 'sdist', 'wheel']
 sanity_check_paths = {
-    'files': ['bin/sip', 'include/sip.h'] +
-             ['lib/python%%(pyshortver)s/site-packages/%s' % x
-              for x in ['sip.%s' % SHLIB_EXT, 'sipconfig.py', 'sipdistutils.py']],
-    'dirs': [],
+    'files': ['bin/sip-%s' % x for x in local_tools],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/sipbuild'],
 }
 
+sanity_pip_check = True
+
+sanity_check_commands = ['sip-%s --help' % x for x in local_tools]
+
+options = {'modulename': 'sipbuild'}
+
 moduleclass = 'lang'

@zdemat
Copy link
Copy Markdown
Contributor Author

zdemat commented Jan 7, 2025

@jhein32 I am actually waiting what will happen with #21684 (Spyder for 2023b) that they are actually reviewing already. I think we can adjust most of the silx and nanomax-analysis-utils stuff to use PyQt5 v5.15.10 from there.

For potential reviewers: If #21684 goes in, I can withdraw this PR.

@Thyre Thyre added the 2023b label Aug 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants