On Tuesday, 29 October 2019, at 15:11:38 (+0000), Christopher Benjamin Coffey wrote:
> Brian, I've actually just started attempting to build slurm 19 on > centos 8 yesterday. As you say, there are packages missing now from > repos like: They're not missing; they're just harder to get at now, for some reason. I have successfully built SLURM 19.05.3 on CentOS 8. I'm still verifying that everything works correctly, but here's my spec file diff so far (safe to apply upstream, if desired...won't break other distros): --- slurm.spec.orig 2019-10-31 13:55:28.077658869 -0600 +++ slurm.spec 2019-11-01 10:57:28.921423048 -0600 @@ -62,14 +62,14 @@ %{?systemd_requires} BuildRequires: systemd BuildRequires: munge-devel munge-libs -BuildRequires: python +BuildRequires: python%{?el8:2} BuildRequires: readline-devel Obsoletes: slurm-lua slurm-munge slurm-plugins # fake systemd support when building rpms on other platforms %{!?_unitdir: %global _unitdir /lib/systemd/systemd} -%define use_mysql_devel %(perl -e '`rpm -q mariadb-devel`; print $?;') +%{expand:%%global use_mysql_devel %(perl -e '`rpm -q mariadb-devel`; print $?;')} %if %{with mysql} %if %{use_mysql_devel} @@ -124,12 +124,12 @@ %if %{with pmix} BuildRequires: pmix -%global pmix %(rpm -q pmix --qf "%{VERSION}") +%{expand:%%global pmix %(rpm -q pmix --qf "%{VERSION}")} %endif %if %{with ucx} BuildRequires: ucx-devel -%global ucx_version %(rpm -q ucx-devel --qf "%{VERSION}") +%{expand:%%global ucx_version %(rpm -q ucx-devel --qf "%{VERSION}")} %endif # Allow override of sysconfdir via _slurm_sysconfdir. @@ -158,7 +158,7 @@ # # Should unpackaged files in a build root terminate a build? # Uncomment if needed again. -#%define _unpackaged_files_terminate_build 0 +#define _unpackaged_files_terminate_build 0 # Slurm may intentionally include empty manifest files, which will # cause errors with rpm 4.13 and on. Turn that check off. @@ -265,7 +265,7 @@ Obsoletes: slurm-sjobexit slurm-sjstat slurm-seff %description contribs seff is a mail program used directly by the Slurm daemons. On completion of a -job, wait for it's accounting information to be available and include that +job, wait for its accounting information to be available and include that information in the email body. sjobexit is a slurm job exit code management tool. It enables users to alter job exit code information for completed jobs @@ -305,6 +305,7 @@ %prep # when the rel number is one, the tarball filename does not include it %setup -n %{slurm_source_dir} +%{__sed} -i -e 's!env python$!env python2!' $(%{__grep} -Frl 'env python' .) %build %configure \ I build with Mezzanine, but the equivalent would roughly be this: rpmbuild -ts slurm-19.05.3-2.tar.bz2 cat the_above_diff.patch | (cd ~/rpmbuild/SPECS ; patch -p0) rpmbuild --with x11 --with lua --with pmix ~/rpmbuild/SPECS/slurm.spec In order for that to work, though, you need to configure your yum/dnf setup, like so: dnf -y install dnf-utils dnf config-manager --set-enabled cr dnf config-manager --set-enabled PowerTools dnf -y install munge-devel lua-devel json-c-devel lz4-devel Hope that helps! Michael -- Michael E. Jennings <m...@lanl.gov> HPC Systems Team, Los Alamos National Laboratory Bldg. 03-2327, Rm. 2341 W: +1 (505) 606-0605