mirror of
https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git
synced 2025-04-29 21:58:36 +02:00
204 lines
11 KiB
Scheme
204 lines
11 KiB
Scheme
(define-module (glicid packages parallel)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix gexp)
|
|
#:use-module (guix git-download)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
#:use-module ((gnu packages parallel) #:prefix gnu:)
|
|
#:use-module (gnu packages gtk)
|
|
#:use-module (gnu packages libevent)
|
|
#:use-module (gnu packages perl)
|
|
#:use-module (gnu packages python)
|
|
#:use-module (gnu packages compression)
|
|
#:use-module (gnu packages mpi)
|
|
#:use-module (gnu packages haskell-xyz)
|
|
#:use-module (gnu packages databases)
|
|
#:use-module (glicid utils)
|
|
#:use-module (gnu packages fabric-management)
|
|
#:use-module (glicid packages containers)
|
|
#:use-module (gnu packages compression)
|
|
#:use-module (gnu packages lua)
|
|
#:use-module (gnu packages web)
|
|
#:use-module (gnu packages serialization)
|
|
#:use-module ((guix utils) #:select (target-64bit?))
|
|
)
|
|
|
|
|
|
(define-public openpmix-3.2.5
|
|
(package
|
|
(name "openpmix-3")
|
|
(version "3.2.5")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://github.com/openpmix/openpmix/releases/download/v" version "/pmix-" version ".tar.bz2"))
|
|
(sha256
|
|
(base32
|
|
"13cc11wxf00w485h6pxjcpwziihaix1pj9rrd20cis1i4bi2hrfv"))))
|
|
(build-system gnu-build-system)
|
|
(arguments
|
|
`(#:configure-flags (list (string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc")))))
|
|
(synopsis "MPIX lib")
|
|
(description "MPIX. More to come. FIXIT")
|
|
(home-page "https://www.gnu.org/software/hello/")
|
|
(license license:gpl3+)
|
|
(inputs (list libevent
|
|
`(,hwloc-2 "lib") perl))))
|
|
|
|
(define-public openpmix-3
|
|
openpmix-3.2.5)
|
|
|
|
(define-public slurm-upstream-22.05
|
|
(package
|
|
(inherit gnu:slurm)
|
|
(name "slurm-upstream")
|
|
(version "22.05.11")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
|
(sha256 (base32 "19kqj06f39kad21wp9b9j82x3zm2w2h8mcjr2zvs1q1rzjmhr1nb"))))))
|
|
|
|
(define slurm-22.05-latest (latest-version gnu:slurm-22.05 slurm-upstream-22.05))
|
|
|
|
(define-public slurm-upstream-23.02
|
|
(package
|
|
(inherit gnu:slurm)
|
|
(name "slurm-upstream")
|
|
(version "23.02.8")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
|
(sha256 (base32 "0vh0lbqp315cgcm2wpfg8j718d84lfqr474rfzk46ail5pk0d9vl"))))))
|
|
|
|
(define-public slurm-upstream-23.11
|
|
(package
|
|
(inherit gnu:slurm)
|
|
(name "slurm-upstream")
|
|
(version "23.11.10")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
|
(sha256 (base32 "0gf7x85bzpkrx87mb16wyiyvkjxqq01sbajsjxwrspyi2v675hgr"))))))
|
|
|
|
(define-public slurm-upstream-24.05
|
|
(package
|
|
(inherit gnu:slurm)
|
|
(name "slurm-upstream")
|
|
(version "24.05.5")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
|
(sha256 (base32 "0vxiymp40lgcb1z76cyqdpqpy7w14r483v54dk4aq84v0aw0mixl"))))))
|
|
|
|
(define-public slurm-upstream-24.11
|
|
(package
|
|
(inherit gnu:slurm)
|
|
(name "slurm-upstream")
|
|
(version "24.11.4")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://download.schedmd.com/slurm/slurm-" version ".tar.bz2"))
|
|
(sha256 (base32 "0j2p83xn5wy7lqyy1rjn04l6c8j0l5jii293sr5xcx87kixyxfm2"))))))
|
|
|
|
(define (make-slurm-glicid base-package)
|
|
(package
|
|
(inherit base-package)
|
|
(name "slurm-glicid")
|
|
(arguments
|
|
(list
|
|
#:configure-flags #~(list "--enable-pam"
|
|
"--sysconfdir=/etc/slurm"
|
|
"--disable-static"
|
|
(string-append "--with-freeipmi=" #$(this-package-input "freeipmi"))
|
|
(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-yaml=" #$(this-package-input "libyaml"))
|
|
(string-append "--with-jwt=" #$(this-package-input "libjwt"))
|
|
(string-append "--with-http-parser=" #$(this-package-input "http-parser"))
|
|
(string-append "--with-ucx=" #$(this-package-input "ucx"))
|
|
(string-append "--with-pmix=" #$(this-package-input "openpmix"))
|
|
#$@(if (target-64bit?)
|
|
'()
|
|
'("--enable-deprecated")))
|
|
#:phases #~(modify-phases %standard-phases
|
|
(add-after 'unpack 'patch-plugin-linker-flags
|
|
(lambda _
|
|
(substitute* (find-files "src/plugins/" "Makefile.in")
|
|
(("_la_LDFLAGS = ")
|
|
"_la_LDFLAGS = ../../../api/libslurm.la "))))
|
|
(add-after 'patch-plugin-linker-flags 'autoconf
|
|
(lambda _
|
|
(invoke "autoconf")))
|
|
(add-after 'install 'install-libpmi
|
|
(lambda _
|
|
(invoke "make" "install" "-C" "contribs/pmi")
|
|
(invoke "make" "install" "-C" "contribs/pmi2"))))))
|
|
(inputs (modify-inputs (package-inputs base-package)
|
|
(prepend gtk+-2
|
|
ucx gnu:openpmix
|
|
json-c
|
|
libjwt
|
|
libyaml
|
|
http-parser
|
|
`(,mariadb "dev"))))))
|
|
|
|
(define (make-slurm-glicid-pmix3 base-package)
|
|
(package
|
|
(inherit base-package)
|
|
(name "slurm-glicid-pmix3")
|
|
(arguments
|
|
(list
|
|
#:configure-flags #~(list "--enable-pam"
|
|
"--sysconfdir=/etc/slurm"
|
|
"--disable-static"
|
|
(string-append "--with-freeipmi=" #$(this-package-input "freeipmi"))
|
|
(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-yaml=" #$(this-package-input "libyaml"))
|
|
(string-append "--with-jwt=" #$(this-package-input "libjwt"))
|
|
(string-append "--with-http-parser=" #$(this-package-input "http-parser"))
|
|
(string-append "--with-ucx=" #$(this-package-input "ucx"))
|
|
(string-append "--with-pmix=" #$(this-package-input "openpmix-3"))
|
|
#$@(if (target-64bit?)
|
|
'()
|
|
'("--enable-deprecated")))
|
|
#:phases #~(modify-phases %standard-phases
|
|
(add-after 'unpack 'patch-plugin-linker-flags
|
|
(lambda _
|
|
(substitute* (find-files "src/plugins/" "Makefile.in")
|
|
(("_la_LDFLAGS = ")
|
|
"_la_LDFLAGS = ../../../api/libslurm.la "))))
|
|
(add-after 'patch-plugin-linker-flags 'autoconf
|
|
(lambda _
|
|
(invoke "autoconf")))
|
|
(add-after 'install 'install-libpmi
|
|
(lambda _
|
|
(invoke "make" "install" "-C" "contribs/pmi")
|
|
(invoke "make" "install" "-C" "contribs/pmi2"))))))
|
|
(inputs (modify-inputs (package-inputs base-package)
|
|
(prepend gtk+-2
|
|
ucx openpmix-3
|
|
json-c
|
|
libjwt
|
|
libyaml
|
|
http-parser
|
|
`(,mariadb "dev"))))))
|
|
|
|
|
|
(define-public slurm-glicid-22.05 (make-slurm-glicid slurm-upstream-22.05))
|
|
(define-public slurm-glicid-23.11 (make-slurm-glicid slurm-upstream-23.11))
|
|
(define-public slurm-glicid-24.11 (make-slurm-glicid slurm-upstream-24.11))
|
|
|
|
(define-public slurm-glicid slurm-glicid-24.11)
|
|
(define-public slurm-glicid-pmix3-24.11 (make-slurm-glicid-pmix3 slurm-upstream-24.11))
|
|
|
|
(define-public slurm-ccipl slurm-glicid-22.05)
|
|
(define-public slurm-glicid-preprod slurm-glicid-24.11)
|
|
(define-public slurm-glicid-test slurm-glicid-24.11)
|