diff --git a/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.16.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.16.4-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..0736f9c6be6b --- /dev/null +++ b/easybuild/easyconfigs/p/PyQt-builder/PyQt-builder-1.16.4-GCCcore-13.2.0.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonBundle' + +name = 'PyQt-builder' +version = '1.16.4' + +homepage = 'http://www.example.com' +description = """PyQt-builder is the PEP 517 compliant build system for PyQt and projects that +extend PyQt. It extends the SIP build system and uses Qt’s qmake to perform the +actual compilation and installation of extension modules. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +builddependencies = [('binutils', '2.40')] +dependencies = [ + ('Python', '3.11.5'), + ('SIP', '6.8.6'), +] + +exts_list = [ + (name, version, { + 'modulename': 'pyqtbuild', + 'sources': ['pyqt_builder-%(version)s.tar.gz'], + 'checksums': ['4515e41ae379be2e54f88a89ecf47cd6e4cac43e862c4abfde18389c2666afdf'], + }), +] + +use_pip = True +sanity_pip_check = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..a02664453996 --- /dev/null +++ b/easybuild/easyconfigs/p/PyQt5/PyQt5-5.15.11-GCCcore-13.2.0.eb @@ -0,0 +1,113 @@ +# update 5.15.11, sip6 +easyblock = 'PythonBundle' + +name = 'PyQt5' +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': '13.2.0'} +toolchainopts = {'cstd': 'c++11'} + +builddependencies = [ + ('binutils', '2.40'), + ('PyQt-builder', '1.16.4'), +] +dependencies = [ + ('Python', '3.11.5'), + ('Qt5', '5.15.13'), +] +local_sipdir = '%(installdir)s/share/sip' + +local_pylibdir = '%(installdir)s/lib/python%(pyshortver)s/site-packages' + +local_setup_env = "export PATH=%(installdir)s/bin:$PATH && " +local_setup_env += "export PYTHONPATH=%s:$PYTHONPATH && " % local_pylibdir + + +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' + +components = [ + ('%s_sip' % name, '12.15.0', { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'start_dir': '%(name)s-%(version)s', + 'use_pip': True, + 'checksums': ['d23fdfcf363b5cedd9d39f8a9c5710e7d52804f5b08a58e91c638b36eafcb702'], + }), + (name, version, { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'easyblock': 'ConfigureMake', + 'configure_cmd': 'sip-build', + 'start_dir': '%(name)s-%(version)s', + 'configure_without_installdir': True, + 'preconfigopts': local_setup_env, + 'configopts': ' '.join(local_pyqt5_configopts), + 'prebuildopts': local_setup_env + "cd build && ", + 'preinstallopts': "cd build && ", + 'checksums': ['fda45743ebb4a27b4b1a51c6d8ef455c4c1b5d610c90d2934c7802b5c1557c52'], + }), + ('PyQtWebEngine', '5.15.7', { + 'source_urls': [PYPI_SOURCE], + 'sources': [SOURCE_TAR_GZ], + 'easyblock': 'ConfigureMake', + 'configure_cmd': 'sip-build', + 'start_dir': '%(name)s-%(version)s', + 'configure_without_installdir': True, + 'preconfigopts': local_setup_env, + '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']], + 'dirs': ['lib/python%(pyshortver)s/site-packages', 'qsci'], +} + +use_pip = True + +sanity_pip_check = True + +sanity_check_commands = [ + "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'", +] + +modextrapaths = { + 'QT_INSTALL_DATA': 'qsci', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..07bd600e1a93 --- /dev/null +++ b/easybuild/easyconfigs/s/SIP/SIP-6.8.6-GCCcore-13.2.0.eb @@ -0,0 +1,40 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# update 6.8.3 +easyblock = 'PythonPackage' + +name = 'SIP' +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': '13.2.0'} + +sources = [SOURCELOWER_TAR_GZ] +checksums = ['7fc959e48e6ec5d5af8bd026f69f5e24d08b3cb8abb342176f5ab8030cc07d7a'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('PLY', '3.11'), +] + +download_dep_fail = True +use_pip = True + +local_tools = ['build', 'distinfo', 'install', 'module', 'sdist', 'wheel'] +sanity_check_paths = { + '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'