From 04672ec0c19042586fb5bdc486a7cb20da51e779 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 9 Sep 2024 16:24:20 +0100 Subject: gnu: slurm: Enable REST API. * gnu/packages/parallel.scm (slurm)[inputs]: Add dbus, http-parser, libjwt, librdkafka, libtaml and (mariadb "dev"). [arguments]: Add --enable-slurmrestd, --with-bpf, --with-http-parser, --with-rdkafka and --with-yaml to configure flags. Change-Id: Icddaa8f883754129d975e82fccd732a47a467517 --- gnu/packages/parallel.scm | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index d5a55a8641..5d7544783a 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2024 David Elsing ;;; Copyright © 2024 Romain Garbage +;;; Copyright © 2024 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -49,13 +50,16 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages check) + #:use-module (gnu packages databases) #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages freeipmi) + #:use-module (gnu packages glib) #:use-module (gnu packages libevent) #:use-module (gnu packages linux) #:use-module (gnu packages maths) #:use-module (gnu packages mpi) + #:use-module (gnu packages networking) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -63,6 +67,7 @@ #:use-module (gnu packages python-science) #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) + #:use-module (gnu packages serialization) #:use-module (gnu packages tcl) #:use-module (gnu packages tls) #:use-module (gnu packages web)) @@ -224,12 +229,17 @@ when jobs finish.") (mkdir "contribs") (rename-file "tmp-pmi" "contribs/pmi") (rename-file "tmp-pmi2" "contribs/pmi2"))))) - ;; FIXME: More optional inputs could be added, - ;; in particular mysql and gtk+. - (inputs (list freeipmi + ;; FIXME: More optional inputs (for example, gtk+) could be added. + (inputs (list dbus + freeipmi + http-parser `(,hwloc-2 "lib") json-c + libjwt + librdkafka + libyaml linux-pam + `(,mariadb "dev") openpmix munge numactl @@ -239,13 +249,22 @@ when jobs finish.") (build-system gnu-build-system) (arguments (list #:configure-flags - #~(list "--enable-pam" "--sysconfdir=/etc/slurm" + #~(list "--enable-pam" + "--enable-slurmrestd" + "--sysconfdir=/etc/slurm" "--disable-static" + (string-append "--with-bpf=" + (dirname (dirname (search-input-directory + %build-inputs "include/linux")))) (string-append "--with-freeipmi=" #$(this-package-input "freeipmi")) + (string-append "--with-http-parser=" + #$(this-package-input "http-parser")) (string-append "--with-hwloc=" (ungexp (this-package-input "hwloc") "lib")) (string-append "--with-json=" #$(this-package-input "json-c")) (string-append "--with-munge=" #$(this-package-input "munge")) + (string-append "--with-rdkafka=" #$(this-package-input "librdkafka")) + (string-append "--with-yaml=" #$(this-package-input "libyaml")) ;; Use PMIx bundled with Open MPI (this is required for Open MPI 5.x). ;; Note: Older versions that inherit from this package lack the -- cgit v1.2.3