Created attachment 39000 [details] suggested slurm.spec Attached a suggested slurm.spec with some added '--with' and '--without' flags as well cleaned up mysql_config and OFED dependencies. Most notably, added '--without munge' to remove dependency on munge and added a saner handling of nvml (require explicit --with nvml, or it's disabled even if detected, and a default nvml_path that corresponds to default location in recent nvidia rpms). The attached spec also addresses a possible issue with unintended macro expansion in comments due to rpm's spec macro expansion limitations, and some inline comments explaining my rational for various changes. I did not address the lack of changelog section warning issued by rpmbuild, since this can be resolved in several ways. I would suggest adding a changelog section with the following form: %changelog %autochangelog But this requires an additional step when releasing a version, of running: > rpmautospec generate-changelog In the git tag before packaging as tar, and see https://fedoraproject.org/wiki/Changes/rpmautospec https://docs.pagure.org/Fedora-Infra.rpmautospec/autochangelog.html https://github.com/fedora-infra/rpmautospec https://fedoramagazine.org/use-rpmautospec-in-fedora-linux/ As a side note, all of my changes can be backported to 24.05
Created attachment 39522 [details] slurm.spec.without-munge.patch Make munge optional
Created attachment 39523 [details] slurm.spec.with-rsmi.patch Add rsmi support to rpm spec file
Created attachment 39524 [details] slurm.spec.with-lz4.patch Add lz4 support to rpm spec file
Created attachment 39525 [details] slurm.spec.with-ofed.patch Add OFED support to rpm spec file
Created attachment 39526 [details] slurm.spec.with-bpf.patch Add bpf support to rpm spec file
Created attachment 39527 [details] slurm.spec.with-mysql.patch Handle mysql better in rpm spec file
Created attachment 39528 [details] slurm.spec.with-oneapi.patch Add oneapi support to rpm spec file
Created attachment 39529 [details] slurm.spec.with-s2n.patch Add s2n support to rpm spec file
Created attachment 39530 [details] slurm.spec.with-nvml.patch Handle nvml better in rpm spec file. Note nvml is disabled by default even if the requires are there. Path is naively deduced from installed rpms.
Created attachment 39531 [details] Allow disabling pam Make rpm behave closer to configure - allow disabling pam.
Created attachment 39532 [details] remove duplicate freeipmi line In configure there are 2 freeipmi lines.
Created attachment 39533 [details] Prevent macro expansion in comments RPM has a bug that expands macros in comment. It might be fixed in newer rpm versions, but not in RHEL9 yet.
Created attachment 39534 [details] Fixed pmix dependency pmix now ships a devel package, which is what build requires. Fixed to pkgconfig(pmix).
Created attachment 39535 [details] Added BuildRequires for hdf5 Added BuildRequires to give a hint to package builders of the rpm required to enable it.
Created attachment 39536 [details] External requires generator is deprecated External requires generator is deprecated, used solution as per documentation at >https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/#_filtering_provides_and_requires_after_scanning
Created attachment 39537 [details] Added missing bcond Commandline with or without selinux was not picked up due to missing bcond
Created attachment 39538 [details] Add required rpms hint to build html from man pages Added BuildRequires for man2html, to let package builder know which rpm is missing to enable creating the html files from man pages. A couple of notes: 1. Using `--without man2html` will not prevent building the html pages if man2html is installed 2. `--without html` is useful to skip the BuildRequire if the html is not desired
Created attachment 39539 [details] Add support for sview in spec file Support optional sview creation.