Skip to content

{numlib}[foss/2023b] DOLFINx v0.9.0, pugixml v1.14, FFCx v0.9.0, ...#22422

Open
tanmoy1989 wants to merge 29 commits intoeasybuilders:developfrom
tanmoy1989:20250228131811_new_pr_DOLFINx090
Open

{numlib}[foss/2023b] DOLFINx v0.9.0, pugixml v1.14, FFCx v0.9.0, ...#22422
tanmoy1989 wants to merge 29 commits intoeasybuilders:developfrom
tanmoy1989:20250228131811_new_pr_DOLFINx090

Conversation

@tanmoy1989
Copy link
Copy Markdown
Contributor

@tanmoy1989 tanmoy1989 commented Feb 28, 2025

…-13.2.0.eb, FFCx-0.9.0-foss-2023b.eb, UFL-2024.2.0-foss-2023b.eb, Basix-0.9.0-gfbf-2023b.eb
@tanmoy1989 tanmoy1989 marked this pull request as draft February 28, 2025 13:18
@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 28, 2025

Updated software pugixml-1.14-GCCcore-13.2.0.eb

Diff against pugixml-1.14-GCCcore-12.3.0.eb

easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-12.3.0.eb

diff --git a/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
index edfa9577d6..971243b04a 100644
--- a/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-12.3.0.eb
+++ b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
@@ -6,7 +6,7 @@ version = '1.14'
 homepage = 'https://pugixml.org/'
 description = "pugixml is a light-weight C++ XML processing library"
 
-toolchain = {'name': 'GCCcore', 'version': '12.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/zeux/pugixml/archive/']
@@ -15,7 +15,7 @@ checksums = ['610f98375424b5614754a6f34a491adbddaaec074e9044577d965160ec103d2e']
 
 builddependencies = [
     ('binutils', '2.40'),
-    ('CMake', '3.26.3'),
+    ('CMake', '3.27.6'),
 ]
 
 configopts = " ".join([
Diff against pugixml-1.12.1-GCCcore-11.3.0.eb

easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.3.0.eb

diff --git a/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
index d507f7f7f3..971243b04a 100644
--- a/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.3.0.eb
+++ b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
@@ -1,21 +1,21 @@
 easyblock = 'CMakeMake'
 
 name = 'pugixml'
-version = '1.12.1'
+version = '1.14'
 
 homepage = 'https://pugixml.org/'
 description = "pugixml is a light-weight C++ XML processing library"
 
-toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/zeux/pugixml/archive/']
 sources = ['v%(version)s.tar.gz']
-checksums = ['1e28ab24b6e04e013d96f45d25e9f2d04c921dc68c613fd010ecaaad3892c14d']
+checksums = ['610f98375424b5614754a6f34a491adbddaaec074e9044577d965160ec103d2e']
 
 builddependencies = [
-    ('binutils', '2.38'),
-    ('CMake', '3.23.1'),
+    ('binutils', '2.40'),
+    ('CMake', '3.27.6'),
 ]
 
 configopts = " ".join([
Diff against pugixml-1.12.1-GCCcore-11.2.0.eb

easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb

diff --git a/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
index 0c105e447f..971243b04a 100644
--- a/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb
+++ b/easybuild/easyconfigs/p/pugixml/pugixml-1.14-GCCcore-13.2.0.eb
@@ -1,28 +1,36 @@
 easyblock = 'CMakeMake'
 
 name = 'pugixml'
-version = '1.12.1'
+version = '1.14'
 
 homepage = 'https://pugixml.org/'
-description = """pugixml is a light-weight C++ XML processing library"""
+description = "pugixml is a light-weight C++ XML processing library"
 
-toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
+toolchain = {'name': 'GCCcore', 'version': '13.2.0'}
 toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/zeux/pugixml/archive/']
 sources = ['v%(version)s.tar.gz']
-checksums = ['1e28ab24b6e04e013d96f45d25e9f2d04c921dc68c613fd010ecaaad3892c14d']
+checksums = ['610f98375424b5614754a6f34a491adbddaaec074e9044577d965160ec103d2e']
 
 builddependencies = [
-    ('binutils', '2.37'),
-    ('CMake', '3.22.1')
+    ('binutils', '2.40'),
+    ('CMake', '3.27.6'),
 ]
 
-configopts = '-DBUILD_SHARED_LIBS=ON -DPUGIXML_BUILD_SHARED_AND_STATIC_LIBS=ON '
+configopts = " ".join([
+    "-DBUILD_SHARED_LIBS=ON",
+    "-DPUGIXML_BUILD_SHARED_AND_STATIC_LIBS=ON",
+])
 
 sanity_check_paths = {
-    'files': ['include/pugiconfig.hpp', 'include/pugixml.hpp', 'lib/libpugixml.a',
-              'lib/libpugixml.%s' % SHLIB_EXT, 'lib/pkgconfig/pugixml.pc'],
+    'files': [
+        'include/pugiconfig.hpp',
+        'include/pugixml.hpp',
+        'lib/libpugixml.a',
+        'lib/libpugixml.%s' % SHLIB_EXT,
+        'lib/pkgconfig/pugixml.pc'
+    ],
     'dirs': ['lib/cmake/pugixml'],
 }
 

tanmoy1989 and others added 12 commits February 28, 2025 17:07
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
@Flamefire
Copy link
Copy Markdown
Contributor

Requires #22084 #20569 #22414 #22413 #22415
Anything else?

And 2 CI issues to fix:

  • Checksums missing for one or more sources/patches of extension dolfinx in DOLFINx-0.9.0-foss-2023b.eb: found 1 sources + 0 patches vs 0 checksums
  • UFL-2024.2.0-gfbf-2023b.eb:31:17: E221 multiple spaces before operator

The other 2 should be fixed with #22490

@tanmoy1989
Copy link
Copy Markdown
Contributor Author

@Flamefire : that all looks good to me, thanks again! I had already built DOLFINx with these PRs and sent you a message over slack.

Copy link
Copy Markdown
Contributor

@Flamefire Flamefire left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd use the (likely) official spelling of the name, see the authors doc page: https://jsdokken.com/dolfinx_mpc/

Might also make it easier to find having DOLFINx and DOLFINx-MPC

tanmoy1989 and others added 5 commits March 10, 2025 15:49
…3b.eb

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
…3b.eb

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
…3b.eb

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
@tanmoy1989 tanmoy1989 marked this pull request as ready for review March 14, 2025 15:28
@moravveji
Copy link
Copy Markdown
Contributor

I am interested in this PR, because I also started putting easyconfigs together for building DOLFINx for 2024a toolchain, so, I use this PR as an inspiration. For one of the dependencies, nanobind, I hardly find any easyconfig in the official repo or in this PR. Can you please also share an easyconfig for that, too?
Thanks in advance.

@Flamefire
Copy link
Copy Markdown
Contributor

@moravveji All required dependencies are in PRs linked in the description. Nanobind is #22414

@tanmoy1989 We use pkconf instead if pkg-config for newer toolchains. That change seems to went missing at some point and is blocking this as the EC is missing (and likely won't be added)

…3b.eb

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
@Flamefire
Copy link
Copy Markdown
Contributor

Test report by @Flamefire
FAILED
Build succeeded for 15 out of 16 (16 easyconfigs in total)
i7008 - Linux Rocky Linux 8.9 (Green Obsidian), x86_64, AMD EPYC 7702 64-Core Processor (zen2), Python 3.8.17
See https://gist.github.com/Flamefire/8e87174bc9222f4480ba683673e0f914 for a full test report.

…3b.eb

Co-authored-by: Alexander Grund <Flamefire@users.noreply.github.com>
@sassy-crick
Copy link
Copy Markdown
Collaborator

I think there is another PR #22700 open for dolphinx, something I would require to be installed on our cluster as well. As that PR has the foss-2024a toolchain and the latest patched version of dolphinx, maybe it is a good idea to combine efforts and get both over the finishing line? :-)
As we got EasyBuild-5.0.0 out now, it might be a good idea to add any missing checksums and remove the now surplus pip commands as mentioned in the unit tests. Maybe here we also should use the latest patched version of dolphinx :-)

dependencies = [
('PETSc', '3.20.3'),
('Eigen', '3.4.0'),
('petsc4py', '3.20.3'),
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe change to the already merged petsc4py/3.22.5, which is currently on GitHub, so we can finish that PR?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I missed out PETSc, sorry. We already got PETSc-3.22.5-foss-2023b.eb merged, so I would suggest to use that one. Hopefully, that will solve the merge-conflict as well.

@sassy-crick
Copy link
Copy Markdown
Collaborator

sassy-crick commented Dec 16, 2025

There are also some other PRs open for DOLPHINx most notably this one here:

which has been merged. You might want to have a look what has been done there and change your PR accordingly. :-)

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.

6 participants