Skip to content

Conversation

pescobar
Copy link
Contributor

@pescobar pescobar commented Sep 4, 2025

this hook fixes issue EESSI/software-layer#1175

now I can build cmake on top of EESSI but I noticed something weird. I don't know why configopts are not completely removed. This is the original easyconfig:

configopts = "-- "
configopts += "-DCURSES_CURSES_LIBRARY=$EBROOTNCURSES/lib/libcurses.a "
configopts += "-DCURSES_FORM_LIBRARY=$EBROOTNCURSES/lib/libform.a "
configopts += "-DCURSES_NCURSES_LIBRARY=$EBROOTNCURSES/lib/libncurses.a "

but when building with this hook I see this (notice the -- after --parallel=16

  >> running shell command:
        ./configure --prefix=/scicore/home/scicore/escobar/eessi/versions/2023.06/software/linux/x86_64/amd/zen2/software/CMake/3.18.4  --parallel=16 --verbose --  -DCMAKE_USE_OPENSSL=ON

I am also not sure if I should use print_msg() or something different like log.info or log.debug

eb_hooks.py Outdated

if self.name == 'CMake':
if self.toolchain.name == 'system':
print_msg("Unset configopts to use ncurses library from the EESSI compatibility layer")
Copy link
Contributor

Choose a reason for hiding this comment

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

Use self.log.info here, or print_msg with log=self.log if you want to be very verbose about this.

I would also log what the previous value of configopts was, so it's clear what's being wiped.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@boegel I have updated the log messages as suggested

@boegel boegel self-assigned this Sep 9, 2025
only remove `-DCURSES_.*_LIBRARY` configure options when building CMake…
Copy link
Contributor

@boegel boegel left a comment

Choose a reason for hiding this comment

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

lgtm, tested to verify that it works as intended

@boegel
Copy link
Contributor

boegel commented Sep 11, 2025

bot: build repo:eessi.io-2023.06-software instance:eessi-bot-mc-aws for:arch=x86_64/amd/zen2

@eessi-bot-aws
Copy link

eessi-bot-aws bot commented Sep 11, 2025

New job on instance eessi-bot-mc-aws for repository eessi.io-2023.06-software
Building on: amd-zen2
Building for: x86_64/amd/zen2
Job dir: /project/def-users/SHARED/jobs/2025.09/pr_81/89226

date job status comment
Sep 11 09:46:49 UTC 2025 submitted job id 89226 awaits release by job manager
Sep 11 09:47:12 UTC 2025 released job awaits launch by Slurm scheduler
Sep 11 09:48:15 UTC 2025 running job 89226 is running
Sep 11 09:51:18 UTC 2025 finished
😁 SUCCESS (click triangle for details)
Details
✅ job output file slurm-89226.out
✅ no message matching FATAL:
✅ no message matching ERROR:
✅ no message matching FAILED:
✅ no message matching required modules missing:
✅ found message(s) matching No missing installations
✅ found message matching .tar.gz created!
Artefacts
eessi-2023.06-software-linux-x86_64-amd-zen2-17575840670.tar.gzsize: 0 MiB (20076 bytes)
entries: 1
modules under 2023.06/software/linux/x86_64/amd/zen2/modules/all
no module files in tarball
software under 2023.06/software/linux/x86_64/amd/zen2/software
no software packages in tarball
reprod directories under 2023.06/software/linux/x86_64/amd/zen2/reprod
no reprod directories in tarball
other under 2023.06/software/linux/x86_64/amd/zen2
2023.06/init/easybuild/eb_hooks.py
Sep 11 09:51:18 UTC 2025 test result
😁 SUCCESS (click triangle for details)
ReFrame Summary
[ OK ] ( 1/10) EESSI_LAMMPS_lj %device_type=cpu %module_name=LAMMPS/29Aug2024-foss-2023b-kokkos %scale=1_node /aeb2d9df @BotBuildTests:x86_64_amd_zen2+default
P: perf: 438.676 timesteps/s (r:0, l:None, u:None)
[ OK ] ( 2/10) EESSI_LAMMPS_lj %device_type=cpu %module_name=LAMMPS/2Aug2023_update2-foss-2023a-kokkos %scale=1_node /04ff9ece @BotBuildTests:x86_64_amd_zen2+default
P: perf: 446.917 timesteps/s (r:0, l:None, u:None)
[ OK ] ( 3/10) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_allreduce %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node %device_type=cpu /775175bf @BotBuildTests:x86_64_amd_zen2+default
P: latency: 1.81 us (r:0, l:None, u:None)
[ OK ] ( 4/10) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_allreduce %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node %device_type=cpu /52707c40 @BotBuildTests:x86_64_amd_zen2+default
P: latency: 1.74 us (r:0, l:None, u:None)
[ OK ] ( 5/10) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_alltoall %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node %device_type=cpu /b1aacda9 @BotBuildTests:x86_64_amd_zen2+default
P: latency: 3.97 us (r:0, l:None, u:None)
[ OK ] ( 6/10) EESSI_OSU_coll %benchmark_info=mpi.collective.osu_alltoall %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node %device_type=cpu /c6bad193 @BotBuildTests:x86_64_amd_zen2+default
P: latency: 4.03 us (r:0, l:None, u:None)
[ OK ] ( 7/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_latency %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node /15cad6c4 @BotBuildTests:x86_64_amd_zen2+default
P: latency: 0.56 us (r:0, l:None, u:None)
[ OK ] ( 8/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_latency %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node /6672deda @BotBuildTests:x86_64_amd_zen2+default
P: latency: 0.55 us (r:0, l:None, u:None)
[ OK ] ( 9/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_bw %module_name=OSU-Micro-Benchmarks/7.2-gompi-2023b %scale=1_node /2a9a47b1 @BotBuildTests:x86_64_amd_zen2+default
P: bandwidth: 7407.31 MB/s (r:0, l:None, u:None)
[ OK ] (10/10) EESSI_OSU_pt2pt_CPU %benchmark_info=mpi.pt2pt.osu_bw %module_name=OSU-Micro-Benchmarks/7.1-1-gompi-2023a %scale=1_node /1b24ab8e @BotBuildTests:x86_64_amd_zen2+default
P: bandwidth: 7296.66 MB/s (r:0, l:None, u:None)
[ PASSED ] Ran 10/10 test case(s) from 10 check(s) (0 failure(s), 0 skipped, 0 aborted)
Details
✅ job output file slurm-89226.out
✅ no message matching ERROR:
✅ no message matching [\s*FAILED\s*].*Ran .* test case
Sep 11 09:56:18 UTC 2025 uploaded transfer of eessi-2023.06-software-linux-x86_64-amd-zen2-17575840670.tar.gz to S3 bucket succeeded
Sep 11 13:38:04 UTC 2025 uploaded transfer of eessi-2023.06-software-linux-x86_64-amd-zen2-17575840670.tar.gz to S3 bucket succeeded

@boegel
Copy link
Contributor

boegel commented Sep 11, 2025

staging PR merged...

@bedroge
Copy link
Contributor

bedroge commented Sep 11, 2025

@boegel we should also build and deploy this for 2025.06?

@boegel
Copy link
Contributor

boegel commented Sep 11, 2025

@boegel we should also build and deploy this for 2025.06?

Yes, exactly. ❤️ CI

@boegel
Copy link
Contributor

boegel commented Sep 11, 2025

bot: build repo:eessi.io-2025.06-software instance:eessi-bot-mc-aws for:arch=x86_64/amd/zen2

@eessi-bot-aws
Copy link

eessi-bot-aws bot commented Sep 11, 2025

New job on instance eessi-bot-mc-aws for repository eessi.io-2025.06-software
Building on: amd-zen2
Building for: x86_64/amd/zen2
Job dir: /project/def-users/SHARED/jobs/2025.09/pr_81/89227

date job status comment
Sep 11 13:19:02 UTC 2025 submitted job id 89227 awaits release by job manager
Sep 11 13:19:38 UTC 2025 released job awaits launch by Slurm scheduler
Sep 11 13:25:40 UTC 2025 finished
😁 SUCCESS (click triangle for details)
Details
✅ job output file slurm-89227.out
✅ no message matching FATAL:
✅ no message matching ERROR:
✅ no message matching FAILED:
✅ no message matching required modules missing:
✅ found message(s) matching No missing installations
✅ found message matching .tar.gz created!
Artefacts
eessi-2025.06-software-linux-x86_64-amd-zen2-17575970950.tar.gzsize: 0 MiB (20080 bytes)
entries: 1
modules under 2025.06/software/linux/x86_64/amd/zen2/modules/all
no module files in tarball
software under 2025.06/software/linux/x86_64/amd/zen2/software
no software packages in tarball
reprod directories under 2025.06/software/linux/x86_64/amd/zen2/reprod
no reprod directories in tarball
other under 2025.06/software/linux/x86_64/amd/zen2
2025.06/init/easybuild/eb_hooks.py
Sep 11 13:25:40 UTC 2025 test result
😢 FAILURE (click triangle for details)
Reason
EESSI test suite was not run, test step itself failed to execute.
Details
✅ job output file slurm-89227.out
❌ found message matching ERROR:
✅ no message matching [\s*FAILED\s*].*Ran .* test case
Sep 11 13:38:13 UTC 2025 uploaded transfer of eessi-2025.06-software-linux-x86_64-amd-zen2-17575970950.tar.gz to S3 bucket succeeded

@boegel
Copy link
Contributor

boegel commented Sep 11, 2025

staging PR for 2025.06 merged

@boegel boegel changed the title cmake hook to use ncurses library from EESSI add hook to avoid requiring ncurses static libraries for CMake built with system toolchain Sep 11, 2025
@boegel boegel merged commit 56ada04 into EESSI:main Sep 11, 2025
85 of 96 checks passed
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.

3 participants