diff --git a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-11.3.0.eb index 2ad121fa5b7..514caad6711 100644 --- a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-11.3.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} source_urls = ['https://github.com/chaos/pdsh/releases/download/pdsh-%(version)s/'] sources = [SOURCE_TAR_GZ] -checksums = ['b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'] +patches = ['pdsh-2.34_fix-slurm-23.x.patch'] +checksums = [ + {'pdsh-2.34.tar.gz': 'b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'}, + {'pdsh-2.34_fix-slurm-23.x.patch': 'cba3a60f5cbc2ca6dc32cda16998c43818f740c0998aba201dfbe334349e60b9'}, +] builddependencies = [ ('binutils', '2.38'), diff --git a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.2.0.eb b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.2.0.eb index 1b8e1f8ed55..eb35068da2a 100644 --- a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.2.0.eb +++ b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.2.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.2.0'} source_urls = ['https://github.com/chaos/pdsh/releases/download/pdsh-%(version)s/'] sources = [SOURCE_TAR_GZ] -checksums = ['b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'] +patches = ['pdsh-2.34_fix-slurm-23.x.patch'] +checksums = [ + {'pdsh-2.34.tar.gz': 'b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'}, + {'pdsh-2.34_fix-slurm-23.x.patch': 'cba3a60f5cbc2ca6dc32cda16998c43818f740c0998aba201dfbe334349e60b9'}, +] builddependencies = [ ('binutils', '2.39'), diff --git a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.3.0.eb b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.3.0.eb index 75dde8cd89c..90ebe848ded 100644 --- a/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.3.0.eb +++ b/easybuild/easyconfigs/p/pdsh/pdsh-2.34-GCCcore-12.3.0.eb @@ -10,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '12.3.0'} source_urls = ['https://github.com/chaos/pdsh/releases/download/pdsh-%(version)s/'] sources = [SOURCE_TAR_GZ] -checksums = ['b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'] +patches = ['pdsh-2.34_fix-slurm-23.x.patch'] +checksums = [ + {'pdsh-2.34.tar.gz': 'b47b3e4662736ef44b6fe86e3d380f95e591863e69163aa0592e9f9f618521e9'}, + {'pdsh-2.34_fix-slurm-23.x.patch': 'cba3a60f5cbc2ca6dc32cda16998c43818f740c0998aba201dfbe334349e60b9'}, +] builddependencies = [ ('binutils', '2.40'), diff --git a/easybuild/easyconfigs/p/pdsh/pdsh-2.34_fix-slurm-23.x.patch b/easybuild/easyconfigs/p/pdsh/pdsh-2.34_fix-slurm-23.x.patch new file mode 100644 index 00000000000..1889f83a15b --- /dev/null +++ b/easybuild/easyconfigs/p/pdsh/pdsh-2.34_fix-slurm-23.x.patch @@ -0,0 +1,22 @@ +see https://github.com/chaos/pdsh/issues/152 + https://github.com/chaos/pdsh/pull/153 +diff --git a/src/modules/slurm.c b/src/modules/slurm.c +index 5594c4f..c227337 100644 +--- a/src/modules/slurm.c ++++ b/src/modules/slurm.c +@@ -50,6 +50,16 @@ + * with our internal List datatype. + */ + #define __list_datatypes_defined 1 ++/* ++ * Also, Slurm>=23.x requires that `struct xlist` be typedef'd to list_t: ++ */ ++typedef struct xlist list_t; ++typedef struct listIterator list_itr_t; ++/* ++ * Also, Slurm exports the hostlist_t interface as well: ++ */ ++#define __hostlist_t_defined 1 ++ + #include + #include +