gnu: Add slurm.
* gnu/packages/parallel.scm (slurm): New variable. * gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/parallel.scm: Introduce license name space. Co-authored-by: Andreas Enge <andreas@enge.fr>
This commit is contained in:
parent
e70f7a2306
commit
552f5c009e
|
@ -700,6 +700,7 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/slim-session.patch \
|
gnu/packages/patches/slim-session.patch \
|
||||||
gnu/packages/patches/slim-config.patch \
|
gnu/packages/patches/slim-config.patch \
|
||||||
gnu/packages/patches/slim-sigusr1.patch \
|
gnu/packages/patches/slim-sigusr1.patch \
|
||||||
|
gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
|
||||||
gnu/packages/patches/soprano-find-clucene.patch \
|
gnu/packages/patches/soprano-find-clucene.patch \
|
||||||
gnu/packages/patches/sudo-CVE-2015-5602.patch \
|
gnu/packages/patches/sudo-CVE-2015-5602.patch \
|
||||||
gnu/packages/patches/superlu-dist-scotchmetis.patch \
|
gnu/packages/patches/superlu-dist-scotchmetis.patch \
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2013, 2014 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
|
||||||
|
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -19,12 +21,23 @@
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages parallel)
|
(define-module (gnu packages parallel)
|
||||||
#:use-module (guix packages)
|
|
||||||
#:use-module (guix licenses)
|
|
||||||
#:use-module (guix download)
|
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
|
#:use-module (guix packages)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages perl))
|
#:use-module (gnu packages admin)
|
||||||
|
#:use-module (gnu packages autotools)
|
||||||
|
#:use-module (gnu packages freeipmi)
|
||||||
|
#:use-module (gnu packages linux)
|
||||||
|
#:use-module (gnu packages mpi)
|
||||||
|
#:use-module (gnu packages perl)
|
||||||
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages readline)
|
||||||
|
#:use-module (gnu packages tcl)
|
||||||
|
#:use-module (gnu packages tls)
|
||||||
|
#:use-module (gnu packages web))
|
||||||
|
|
||||||
(define-public parallel
|
(define-public parallel
|
||||||
(package
|
(package
|
||||||
|
@ -46,4 +59,65 @@
|
||||||
"GNU Parallel is a tool for executing shell jobs in parallel using one
|
"GNU Parallel is a tool for executing shell jobs in parallel using one
|
||||||
or more computers. Jobs can consist of single commands or of scripts
|
or more computers. Jobs can consist of single commands or of scripts
|
||||||
and they are executed on lists of files, hosts, users or other items.")
|
and they are executed on lists of files, hosts, users or other items.")
|
||||||
(license gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public slurm
|
||||||
|
(package
|
||||||
|
(name "slurm")
|
||||||
|
(version "15.08.7.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/SchedMD/slurm/archive/slurm-"
|
||||||
|
(string-join (string-split version #\.) "-") ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
|
||||||
|
(patches (list
|
||||||
|
(search-patch "slurm-configure-remove-nonfree-contribs.patch")))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
(delete-file-recursively "contribs")
|
||||||
|
#t))))
|
||||||
|
;; FIXME: More optional inputs could be added,
|
||||||
|
;; in particular mysql and gtk+.
|
||||||
|
(inputs `(("expect" ,expect)
|
||||||
|
("freeipmi" ,freeipmi)
|
||||||
|
("hwloc" ,hwloc)
|
||||||
|
("json-c" ,json-c)
|
||||||
|
("linux-pam" , linux-pam)
|
||||||
|
("munge" ,munge)
|
||||||
|
("numactl" ,numactl)
|
||||||
|
("openssl" ,openssl)
|
||||||
|
("perl" ,perl)
|
||||||
|
("python" ,python-wrapper)
|
||||||
|
("readline" ,readline)))
|
||||||
|
(native-inputs
|
||||||
|
`(("autoconf" ,autoconf)
|
||||||
|
("pkg-config" ,pkg-config)))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags
|
||||||
|
(list "--enable-pam"
|
||||||
|
(string-append "--with-freeipmi=" (assoc-ref %build-inputs "freeipmi"))
|
||||||
|
(string-append "--with-hwloc=" (assoc-ref %build-inputs "hwloc"))
|
||||||
|
(string-append "--with-json=" (assoc-ref %build-inputs "json-c"))
|
||||||
|
(string-append "--with-munge=" (assoc-ref %build-inputs "munge"))
|
||||||
|
(string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")))
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-before
|
||||||
|
'configure 'autogen
|
||||||
|
(lambda _ (zero? (system* "autoconf"))))))) ; configure.ac was patched
|
||||||
|
(home-page "http://slurm.schedmd.com/")
|
||||||
|
(synopsis "Workload manager for cluster computing")
|
||||||
|
(description
|
||||||
|
"SLURM is a fault-tolerant and highly scalable cluster management and job
|
||||||
|
scheduling system for large and small clusters. It allocates access to
|
||||||
|
resources (computer nodes) to users for some duration of time, provides a
|
||||||
|
framework for starting, executing, and monitoring work (typically a parallel
|
||||||
|
job) on a set of allocated nodes, and arbitrates contention for resources
|
||||||
|
by managing a queue of pending work.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Pjotr Prins <pjotr.public01@thebird.nl>
|
||||||
|
Date: Fri, 12 Feb 2016 12:43:33 +0100
|
||||||
|
Subject: [PATCH] Remove contribs
|
||||||
|
|
||||||
|
---
|
||||||
|
configure.ac | 20 --------------------
|
||||||
|
1 file changed, 20 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/configure.ac b/configure.ac
|
||||||
|
index fedf354..e010732 100644
|
||||||
|
--- a/configure.ac
|
||||||
|
+++ b/configure.ac
|
||||||
|
@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
|
||||||
|
AC_CONFIG_FILES([Makefile
|
||||||
|
config.xml
|
||||||
|
auxdir/Makefile
|
||||||
|
- contribs/Makefile
|
||||||
|
- contribs/cray/Makefile
|
||||||
|
- contribs/cray/csm/Makefile
|
||||||
|
- contribs/lua/Makefile
|
||||||
|
- contribs/mic/Makefile
|
||||||
|
- contribs/pam/Makefile
|
||||||
|
- contribs/pam_slurm_adopt/Makefile
|
||||||
|
- contribs/perlapi/Makefile
|
||||||
|
- contribs/perlapi/libslurm/Makefile
|
||||||
|
- contribs/perlapi/libslurm/perl/Makefile.PL
|
||||||
|
- contribs/perlapi/libslurmdb/Makefile
|
||||||
|
- contribs/perlapi/libslurmdb/perl/Makefile.PL
|
||||||
|
- contribs/torque/Makefile
|
||||||
|
- contribs/phpext/Makefile
|
||||||
|
- contribs/phpext/slurm_php/config.m4
|
||||||
|
- contribs/sgather/Makefile
|
||||||
|
- contribs/sgi/Makefile
|
||||||
|
- contribs/sjobexit/Makefile
|
||||||
|
- contribs/slurmdb-direct/Makefile
|
||||||
|
- contribs/pmi2/Makefile
|
||||||
|
doc/Makefile
|
||||||
|
doc/man/Makefile
|
||||||
|
doc/man/man1/Makefile
|
||||||
|
--
|
||||||
|
2.1.4
|
||||||
|
|
Loading…
Reference in New Issue