Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Tag: slurm-1-1-31-1
Fetching contributors…

Cannot retrieve contributors at this time

363 lines (304 sloc) 10.863 kB
# $Id$
# Note that this package is not relocatable
Name: See META file
Version: See META file
Release: See META file
Summary: Simple Linux Utility for Resource Management
License: GPL
Group: System Environment/Base
Source: %{name}-%{version}-%{release}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
URL: http://www.llnl.gov/linux/slurm
Requires: openssl >= 0.9.6
%ifos linux
BuildRequires: gcc-c++ python openssl-devel >= 0.9.6
%endif
#
# If "--with debug" is set compile with --enable-debug
# and do not strip binaries
#
# (See /usr/share/doc/rpm-*/conditionalbuilds)
#
%if %{?_with_debug:1}%{!?_with_debug:0}
%define _enable_debug --enable-debug
%endif
#
# Never allow rpm to strip binaries as this will break
# parallel debugging capability
#
%define __os_install_post /usr/lib/rpm/brp-compress
%define debug_package %{nil}
#
# Should unpackaged files in a build root terminate a build?
#
# Note: The default value should be 0 for legacy compatibility.
# This was added due to a bug in Suse Linux. For a good reference, see
# http://slforums.typo3-factory.net/index.php?showtopic=11378
%define _unpackaged_files_terminate_build 0
%{!?_slurm_sysconfdir: %define _slurm_sysconfdir /etc/slurm}
%define _sysconfdir %_slurm_sysconfdir
%package devel
Summary: Development package for SLURM.
Group: Development/System
Requires: slurm
%package auth-none
Summary: SLURM auth NULL implementation (no authentication)
Group: System Environment/Base
Requires: slurm
%package auth-authd
Summary: SLURM auth implementation using Brent Chun's authd
Group: System Environment/Base
Requires: slurm authd
%package auth-munge
Summary: SLURM auth implementation using Chris Dunlap's Munge
Group: System Environment/Base
Requires: slurm munge
%package bluegene
Summary: SLURM interfaces to IBM Blue Gene system
Group: System Environment/Base
Requires: slurm
%package sched-wiki
Summary: SLURM scheduling plugin for the Maui scheduler.
Group: System Environment/Base
Requires: slurm
%package switch-elan
Summary: SLURM switch plugin for Quadrics Elan3 or Elan4.
Group: System Environment/Base
Requires: slurm qsnetlibs
%package aix-federation
Summary: SLURM interfaces to IBM AIX and Federation switch.
Group: System Environment/Base
Requires: slurm
%package proctrack-sgi-job
Summary: SLURM process tracking plugin for SGI job containers.
Group: System Environment/Base
Requires: slurm
%description
SLURM is an open source, fault-tolerant, and highly
scalable cluster management and job scheduling system for Linux clusters
containing up to thousands of nodes. Components include machine status,
partition management, job management, and scheduling modules.
%description devel
Development package for SLURM. This package includes the header files
and static libraries for the SLURM API.
%description auth-none
SLURM NULL authentication module
%description auth-authd
SLURM authentication module for Brent Chun's authd
%description auth-munge
SLURM authentication module for Chris Dunlap's Munge
%description bluegene
SLURM plugin interfaces to IBM Blue Gene system
%description sched-wiki
SLURM scheduling plugin for the Maui scheduler.
%description switch-elan
SLURM switch plugin for Quadrics Elan3 or Elan4.
%description aix-federation
SLURM plugins for IBM AIX and Federation switch.
%description proctrack-sgi-job
SLURM process tracking plugin for SGI job containers.
(See http://oss.sgi.com/projects/pagg).
%prep
%setup -n %{name}-%{version}-%{release}
%build
%configure --program-prefix=%{?_program_prefix:%{_program_prefix}} \
--sysconfdir=%{_sysconfdir} \
%{?_enable_debug} \
%{?with_proctrack} \
%{?with_ssl} \
%{?with_munge} \
%{?with_cflags}
#
# The following was stolen from the E17 packages:
# Build with make -j if SMP is defined in the current environment.
#
if [ "x$SMP" != "x" ]; then
(make "MAKE=make -k -j $SMP"; exit 0)
make
else
make
fi
#############################################################################
%install
rm -rf "$RPM_BUILD_ROOT"
mkdir -p "$RPM_BUILD_ROOT"
DESTDIR="$RPM_BUILD_ROOT" make install
if [ -d /etc/init.d ]; then
install -D -m755 etc/init.d.slurm $RPM_BUILD_ROOT/etc/init.d/slurm
fi
install -D -m644 etc/slurm.conf.example ${RPM_BUILD_ROOT}%{_sysconfdir}/slurm.conf.example
install -D -m644 etc/bluegene.conf.example ${RPM_BUILD_ROOT}%{_sysconfdir}/bluegene.conf.example
install -D -m644 etc/federation.conf.example ${RPM_BUILD_ROOT}%{_sysconfdir}/federation.conf.example
install -D -m755 etc/slurm.epilog.clean ${RPM_BUILD_ROOT}%{_sysconfdir}/slurm.epilog.clean
# Delete unpackaged files:
rm -f $RPM_BUILD_ROOT/%{_libdir}/slurm/*.{a,la}
# Build conditional file list for main package
LIST=./slurm.files
touch $LIST
if [ -d /etc/init.d ]; then
echo "/etc/init.d/slurm" >> $LIST
fi
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/task_affinity.so &&
echo %{_libdir}/slurm/task_affinity.so >> $LIST
# Build file lists for optional plugin packages
for plugin in auth_munge auth_authd sched_wiki; do
LIST=./${plugin}.files
touch $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/${plugin}.so &&
echo %{_libdir}/slurm/${plugin}.so > $LIST
done
# Temporary, until wiki2 becomes wiki (see code above)
LIST=./sched_wiki.files
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/sched_wiki.so &&
echo %{_libdir}/slurm/sched_wiki2.so >> $LIST
echo "%{_mandir}/man5/wiki.*" >> $LIST
LIST=./switch_elan.files
touch $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/switch_elan.so &&
echo %{_libdir}/slurm/switch_elan.so >> $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/proctrack_rms.so &&
echo %{_libdir}/slurm/proctrack_rms.so >> $LIST
LIST=./aix_federation.files
touch $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/switch_federation.so &&
echo %{_libdir}/slurm/switch_federation.so >> $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/proctrack_aix.so &&
echo %{_libdir}/slurm/proctrack_aix.so >> $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/checkpoint_aix.so &&
echo %{_libdir}/slurm/checkpoint_aix.so >> $LIST
echo "%config %{_sysconfdir}/federation.conf.example" >> $LIST
LIST=./bluegene.files
touch $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/select_bluegene.so &&
echo "%{_libdir}/slurm/select_bluegene.so" >> $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/libsched_if64.so &&
echo "%{_libdir}/slurm/libsched_if64.so" >> $LIST
echo "%{_mandir}/man5/bluegene.*" >> $LIST
echo "%{_sbindir}/slurm_epilog" >> $LIST
echo "%{_sbindir}/slurm_prolog" >> $LIST
echo "%{_sbindir}/sfree" >> $LIST
echo "%config %{_sysconfdir}/bluegene.conf.example" >> $LIST
LIST=./sgi-job.files
touch $LIST
test -f $RPM_BUILD_ROOT/%{_libdir}/slurm/proctrack_sgi_job.so &&
echo "%{_libdir}/slurm/proctrack_sgi_job.so" >> $LIST
#############################################################################
%clean
rm -rf $RPM_BUILD_ROOT
#############################################################################
%files -f slurm.files
%defattr(-,root,root,0755)
%doc AUTHORS
%doc NEWS
%doc README
%doc RELEASE_NOTES
%doc DISCLAIMER
%doc COPYING
%doc etc/slurm.conf.example
%doc doc/html
%{_bindir}/*
%{_sbindir}/slurmctld
%{_sbindir}/slurmd
%{_sbindir}/slurmstepd
%{_libdir}/*.so*
%{_libdir}/slurm/src/*
%{_mandir}/man1/*
%{_mandir}/man5/slurm.*
%{_mandir}/man8/*
%dir %{_sysconfdir}
%dir %{_libdir}/slurm
%{_libdir}/slurm/checkpoint_none.so
%{_libdir}/slurm/jobacct_linux.so
%{_libdir}/slurm/jobacct_none.so
%{_libdir}/slurm/jobcomp_none.so
%{_libdir}/slurm/jobcomp_filetxt.so
%{_libdir}/slurm/jobcomp_script.so
%{_libdir}/slurm/proctrack_pgid.so
%{_libdir}/slurm/proctrack_linuxproc.so
%{_libdir}/slurm/sched_backfill.so
%{_libdir}/slurm/sched_builtin.so
%{_libdir}/slurm/sched_hold.so
%{_libdir}/slurm/select_cons_res.so
%{_libdir}/slurm/select_linear.so
%{_libdir}/slurm/switch_none.so
%{_libdir}/slurm/mpi_none.so
%{_libdir}/slurm/mpi_mpichgm.so
%{_libdir}/slurm/mpi_mvapich.so
%{_libdir}/slurm/mpi_lam.so
%{_libdir}/slurm/task_none.so
%dir %{_libdir}/slurm/src
%config %{_sysconfdir}/slurm.conf.example
%config %{_sysconfdir}/slurm.epilog.clean
#############################################################################
%files devel
%defattr(-,root,root)
%dir %attr(0755,root,root) %{_prefix}/include/slurm
%{_prefix}/include/slurm/*
%{_libdir}/libpmi.a
%{_libdir}/libpmi.la
%{_libdir}/libslurm.a
%{_libdir}/libslurm.la
%{_mandir}/man3/*
#############################################################################
%files auth-none
%defattr(-,root,root)
%{_libdir}/slurm/auth_none.so
#############################################################################
%files -f auth_munge.files auth-munge
%defattr(-,root,root)
#############################################################################
%files -f auth_authd.files auth-authd
%defattr(-,root,root)
#############################################################################
%files -f bluegene.files bluegene
%defattr(-,root,root)
#############################################################################
%files -f sched_wiki.files sched-wiki
%defattr(-,root,root)
#############################################################################
%files -f switch_elan.files switch-elan
%defattr(-,root,root)
#############################################################################
%files -f aix_federation.files aix-federation
%defattr(-,root,root)
#############################################################################
%files -f sgi-job.files proctrack-sgi-job
%defattr(-,root,root)
%pre
#if [ -x /etc/init.d/slurm ]; then
# if /etc/init.d/slurm status | grep -q running; then
# /etc/init.d/slurm stop
# fi
#fi
%post
if [ -x /sbin/ldconfig ]; then
/sbin/ldconfig %{_libdir}
/sbin/ldconfig %{_libdir}
if [ $1 = 1 ]; then
[ -x /sbin/chkconfig ] && /sbin/chkconfig --add slurm
fi
fi
if [ ! -f ${RPM_BUILD_ROOT}%{_sysconfdir}/slurm.conf ]; then
echo "You need to build and install a slurm.conf file"
echo "Edit ${RPM_BUILD_ROOT}%{_sysconfdir}/slurm.conf.example and copy it to slurm.conf or"
echo "Build a new one using http://www.llnl.gov/linux/slurm/configurator.html"
fi
%preun
if [ "$1" = 0 ]; then
if [ -x /etc/init.d/slurm ]; then
[ -x /sbin/chkconfig ] && /sbin/chkconfig --del slurm
if /etc/init.d/slurm status | grep -q running; then
/etc/init.d/slurm stop
fi
fi
fi
%postun
if [ "$1" = 0 ]; then
if [ -x /sbin/ldconfig ]; then
/sbin/ldconfig %{_libdir}
fi
fi
#############################################################################
%changelog
* Tue Feb 14 2006 Morris Jette <jette1@llnl.gov>
- See the NEWS file for update details
Jump to Line
Something went wrong with that request. Please try again.