Skip to content

{phys}[foss/2023a] TRIQS-som v2.1.1#23242

Merged
Crivella merged 2 commits intoeasybuilders:developfrom
krivenko:20250630232916_new_pr_TRIQS-som211
Jul 2, 2025
Merged

{phys}[foss/2023a] TRIQS-som v2.1.1#23242
Crivella merged 2 commits intoeasybuilders:developfrom
krivenko:20250630232916_new_pr_TRIQS-som211

Conversation

@krivenko
Copy link
Copy Markdown
Contributor

(created using eb --new-pr)

@github-actions github-actions Bot added the new label Jun 30, 2025
@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Jul 1, 2025

I've seen in the docs there is also the option to build with shared libraries.
I was wondering if it should be favored here, or if we could even follow an approach like
https://github.com/easybuilders/easybuild-easyconfigs/blob/develop/easybuild/easyconfigs/a/Abseil/Abseil-20240722.0-GCCcore-13.3.0.eb
where we build the same package twice, once to get the static and again to get the dynamic library (the trick in that EC is to have configopts as a list, with all the options you want to build for)

@krivenko
Copy link
Copy Markdown
Contributor Author

krivenko commented Jul 1, 2025

I've seen in the docs there is also the option to build with shared libraries.

I wanted to follow the same convention as the other three easyconfigs for the TRIQS-based codes (TRIQS-cthyb, TRIQS-tprf and TRIQS-dft_tools). They all feature the CMake flag BUILD_SHARED_LIBS, which is switched off by default. The only difference between them and my project is that I mention the flag in the docs.

Anyhow, I could totally build the shared libraries if this is the preferred way.

https://github.com/easybuilders/easybuild-easyconfigs/blob/develop/easybuild/easyconfigs/a/Abseil/Abseil-20240722.0-GCCcore-13.3.0.eb

That file contains the following comment,

# Build static and shared libraries, static last so they get preferred by CMake consumers
# For backwards compatibility only. Future builds should only build static libs to avoid excessive linkage.

So, should really do a dual build?

@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Jul 1, 2025

Not being familiar with the tool i am not sure if the libraries would ever be used as a dependency for something else, or only for the tool itself.

If they are only for the tool than i think static only is fine.
Otherwise having the dynamic ones might be prefered

@krivenko
Copy link
Copy Markdown
Contributor Author

krivenko commented Jul 1, 2025

If they are only for the tool than i think static only is fine.
Otherwise having the dynamic ones might be prefered

The project offers a public C++ API (it installs header files), but realistically speaking that library will probably be consumed only by the Python module of the tool itself.

@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Jul 1, 2025

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@Crivella: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=23242 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_23242 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 7063

Test results coming soon (I hope)...

Details

- notification for comment with ID 3024361580 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 3 out of 3 (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/a231fed0341483943cc9455b4fb30aa2 for a full test report.

@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Jul 2, 2025

Test report by @Crivella
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
crivella-desktop - Linux Ubuntu 22.04.5 LTS (Jammy Jellyfish), x86_64, 13th Gen Intel(R) Core(TM) i9-13900K (skylake), Python 3.11.13
See https://gist.github.com/Crivella/adb753efcb247b2d7451d1a5b82bc252 for a full test report.

@Crivella Crivella added this to the release after 5.1.1 milestone Jul 2, 2025
Copy link
Copy Markdown
Contributor

@Crivella Crivella left a comment

Choose a reason for hiding this comment

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

LGTM

@Crivella
Copy link
Copy Markdown
Contributor

Crivella commented Jul 2, 2025

Going in, thanks @krivenko!

@Crivella Crivella merged commit 7285197 into easybuilders:develop Jul 2, 2025
8 checks passed
@krivenko krivenko deleted the 20250630232916_new_pr_TRIQS-som211 branch July 2, 2025 08:53
krivenko added a commit to krivenko/som that referenced this pull request Jul 2, 2025
@boegel boegel modified the milestones: release after 5.1.1, 5.1.1 Jul 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants