Lines 23-29
else
Link Here
|
23 |
S="${WORKDIR}/${MY_P}" |
23 |
S="${WORKDIR}/${MY_P}" |
24 |
fi |
24 |
fi |
25 |
|
25 |
|
26 |
inherit autotools eutils pam perl-module user ${INHERIT_GIT} |
26 |
inherit autotools eutils pam perl-module user prefix ${INHERIT_GIT} |
27 |
|
27 |
|
28 |
DESCRIPTION="SLURM: A Highly Scalable Resource Manager" |
28 |
DESCRIPTION="SLURM: A Highly Scalable Resource Manager" |
29 |
HOMEPAGE="http://www.schedmd.com" |
29 |
HOMEPAGE="http://www.schedmd.com" |
Lines 76-88
src_prepare() {
Link Here
|
76 |
fi |
76 |
fi |
77 |
eapply_user |
77 |
eapply_user |
78 |
# pids should go to /var/run/slurm |
78 |
# pids should go to /var/run/slurm |
79 |
sed -e 's:/var/run/slurmctld.pid:/var/run/slurm/slurmctld.pid:g' \ |
79 |
sed -e "s:/var/run/slurmctld.pid:${EPREFIX}/var/run/slurm/slurmctld.pid:g" \ |
80 |
-e 's:/var/run/slurmd.pid:/var/run/slurm/slurmd.pid:g' \ |
80 |
-e "s:/var/run/slurmd.pid:${EPREFIX}/var/run/slurm/slurmd.pid:g" \ |
81 |
-i "${S}/etc/slurm.conf.example" \ |
81 |
-i "${S}/etc/slurm.conf.example" \ |
82 |
|| die "Can't sed for /var/run/slurmctld.pid" |
82 |
|| die "Can't sed for /var/run/slurmctld.pid" |
83 |
# also state dirs are in /var/spool/slurm |
83 |
# also state dirs are in /var/spool/slurm |
84 |
sed -e 's:StateSaveLocation=*.:StateSaveLocation=/var/spool/slurm:g' \ |
84 |
sed -e "s:StateSaveLocation=*.:StateSaveLocation=${EPREFIX}/var/spool/slurm:g" \ |
85 |
-e 's:SlurmdSpoolDir=*.:SlurmdSpoolDir=/var/spool/slurm/slurmd:g' \ |
85 |
-e "s:SlurmdSpoolDir=*.:SlurmdSpoolDir=${EPREFIX}/var/spool/slurm/slurmd:g" \ |
86 |
-i "${S}/etc/slurm.conf.example" \ |
86 |
-i "${S}/etc/slurm.conf.example" \ |
87 |
|| die "Can't sed ${S}/etc/slurm.conf.example for StateSaveLocation=*. or SlurmdSpoolDir=*" |
87 |
|| die "Can't sed ${S}/etc/slurm.conf.example for StateSaveLocation=*. or SlurmdSpoolDir=*" |
88 |
# and tmp should go to /var/tmp/slurm |
88 |
# and tmp should go to /var/tmp/slurm |
Lines 90-95
src_prepare() {
Link Here
|
90 |
-i "${S}/etc/slurm.conf.example" \ |
90 |
-i "${S}/etc/slurm.conf.example" \ |
91 |
|| die "Can't sed for StateSaveLocation=*./tmp" |
91 |
|| die "Can't sed for StateSaveLocation=*./tmp" |
92 |
|
92 |
|
|
|
93 |
hprefixify auxdir/{ax_check_zlib,x_ac_{lz4,ofed,munge}}.m4 |
93 |
eautoreconf |
94 |
eautoreconf |
94 |
} |
95 |
} |
95 |
|
96 |
|
Lines 130-136
src_configure() {
Link Here
|
130 |
|
131 |
|
131 |
src_compile() { |
132 |
src_compile() { |
132 |
default |
133 |
default |
133 |
use pam && emake -C contribs/pam || die |
134 |
use pam && emake -C contribs/pam |
134 |
if use perl ; then |
135 |
if use perl ; then |
135 |
cd "${LIBSLURM_PERL_S}" |
136 |
cd "${LIBSLURM_PERL_S}" |
136 |
S="${LIBSLURM_PERL_S}" perl-module_src_compile |
137 |
S="${LIBSLURM_PERL_S}" perl-module_src_compile |
Lines 139-151
src_compile() {
Link Here
|
139 |
cd "${S}" |
140 |
cd "${S}" |
140 |
fi |
141 |
fi |
141 |
if use torque ; then |
142 |
if use torque ; then |
142 |
emake -C contribs/torque || die |
143 |
emake -C contribs/torque |
143 |
fi |
144 |
fi |
144 |
} |
145 |
} |
145 |
|
146 |
|
146 |
src_install() { |
147 |
src_install() { |
147 |
default |
148 |
default |
148 |
use pam && emake DESTDIR="${D}" -C contribs/pam install || die |
149 |
use pam && emake DESTDIR="${D}" -C contribs/pam install |
149 |
if use perl; then |
150 |
if use perl; then |
150 |
cd "${LIBSLURM_PERL_S}" |
151 |
cd "${LIBSLURM_PERL_S}" |
151 |
S="${LIBSLURM_PERL_S}" perl-module_src_install |
152 |
S="${LIBSLURM_PERL_S}" perl-module_src_install |
Lines 154-160
src_install() {
Link Here
|
154 |
cd "${S}" |
155 |
cd "${S}" |
155 |
fi |
156 |
fi |
156 |
if use torque; then |
157 |
if use torque; then |
157 |
emake DESTDIR="${D}" -C contribs/torque || die |
158 |
emake DESTDIR="${D}" -C contribs/torque |
158 |
rm -f "${ED}/usr/bin/mpiexec" || die |
159 |
rm -f "${ED}/usr/bin/mpiexec" || die |
159 |
fi |
160 |
fi |
160 |
use static-libs || find "${ED}" -name '*.la' -exec rm {} + |
161 |
use static-libs || find "${ED}" -name '*.la' -exec rm {} + |
Lines 170-195
src_install() {
Link Here
|
170 |
doexe etc/cgroup.release_common.example |
171 |
doexe etc/cgroup.release_common.example |
171 |
doexe etc/slurm.epilog.clean |
172 |
doexe etc/slurm.epilog.clean |
172 |
# install init.d files |
173 |
# install init.d files |
173 |
newinitd "${FILESDIR}/slurmd.initd" slurmd |
174 |
newinitd "$(prefixify_ro "${FILESDIR}/slurmd.initd")" slurmd |
174 |
newinitd "${FILESDIR}/slurmctld.initd" slurmctld |
175 |
newinitd "$(prefixify_ro "${FILESDIR}/slurmctld.initd")" slurmctld |
175 |
newinitd "${FILESDIR}/slurmdbd.initd" slurmdbd |
176 |
newinitd "$(prefixify_ro "${FILESDIR}/slurmdbd.initd")" slurmdbd |
176 |
# install conf.d files |
177 |
# install conf.d files |
177 |
newconfd "${FILESDIR}/slurm.confd" slurm |
178 |
newconfd "${FILESDIR}/slurm.confd" slurm |
178 |
# Install logrotate file |
179 |
# Install logrotate file |
179 |
insinto /etc/logrotate.d |
180 |
insinto /etc/logrotate.d |
180 |
newins "${FILESDIR}/logrotate" slurm || die |
181 |
newins "${FILESDIR}/logrotate" slurm |
181 |
# cgroups support |
182 |
# cgroups support |
182 |
exeinto /etc/slurm/cgroup |
183 |
exeinto /etc/slurm/cgroup |
183 |
doexe etc/cgroup.release_common.example |
184 |
doexe etc/cgroup.release_common.example |
184 |
mv "${D}"/etc/slurm/cgroup/cgroup.release_common.example "${D}"/etc/slurm/cgroup/release_common || die "Can't move cgroup.release_common.example" |
185 |
mv "${ED}"/etc/slurm/cgroup/{cgroup.release_common.example,release_common} || die "Can't move cgroup.release_common.example" |
185 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_cpuset || die "Can't create symbolic link release_cpuset" |
186 |
ln -s release_common "${ED}"/etc/slurm/cgroup/release_cpuset || die "Can't create symbolic link release_cpuset" |
186 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_devices || die "Can't create symbolic link release_devices" |
187 |
ln -s release_common "${ED}"/etc/slurm/cgroup/release_devices || die "Can't create symbolic link release_devices" |
187 |
ln -s release_common "${D}"/etc/slurm/cgroup/release_freezer || die "Can't create symbolic link release_freezer" |
188 |
ln -s release_common "${ED}"/etc/slurm/cgroup/release_freezer || die "Can't create symbolic link release_freezer" |
188 |
} |
189 |
} |
189 |
|
190 |
|
190 |
pkg_preinst() { |
191 |
pkg_preinst() { |
191 |
if use munge; then |
192 |
if use munge; then |
192 |
sed -i 's,\(SLURM_USE_MUNGE=\).*,\11,' "${D}"etc/conf.d/slurm || die |
193 |
sed -i 's,\(SLURM_USE_MUNGE=\).*,\11,' "${ED}"etc/conf.d/slurm || die |
193 |
fi |
194 |
fi |
194 |
} |
195 |
} |
195 |
|
196 |
|
Lines 201-212
create_folders_and_fix_permissions() {
Link Here
|
201 |
|
202 |
|
202 |
pkg_postinst() { |
203 |
pkg_postinst() { |
203 |
paths=( |
204 |
paths=( |
204 |
/var/${PN}/checkpoint |
205 |
"${EROOT}"var/${PN}/checkpoint |
205 |
/var/${PN} |
206 |
"${EROOT}"var/${PN} |
206 |
/var/spool/${PN}/slurmd |
207 |
"${EROOT}"var/spool/${PN}/slurmd |
207 |
/var/spool/${PN} |
208 |
"${EROOT}"var/spool/${PN} |
208 |
/var/run/${PN} |
209 |
"${EROOT}"var/run/${PN} |
209 |
/var/log/${PN} |
210 |
"${EROOT}"var/log/${PN} |
210 |
/var/tmp/${PN}/${PN}d |
211 |
/var/tmp/${PN}/${PN}d |
211 |
/var/tmp/${PN} |
212 |
/var/tmp/${PN} |
212 |
) |
213 |
) |