aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsbronder <jsbronder@32389bae-6d03-0410-99cf-db05cde120eb>2009-01-14 02:15:21 +0000
committerjsbronder <jsbronder@32389bae-6d03-0410-99cf-db05cde120eb>2009-01-14 02:15:21 +0000
commit82d8c8febd94f7eecfe09a06270b50f6f97ec9f6 (patch)
tree89d3e3624809203c3d71e756322fa33c9c12eda7 /sys-cluster/mpe2
parentFinite state toolkit foma. Initial ebuild. (diff)
downloadsci-82d8c8febd94f7eecfe09a06270b50f6f97ec9f6.tar.gz
sci-82d8c8febd94f7eecfe09a06270b50f6f97ec9f6.tar.bz2
sci-82d8c8febd94f7eecfe09a06270b50f6f97ec9f6.zip
Update mpi.eclass. Major changes include simplyfing use and allowing non empi builds to still get some information. Also updated all related packages using this eclass.
git-svn-id: http://overlays.gentoo.org/svn/proj/science/overlay@1367 32389bae-6d03-0410-99cf-db05cde120eb
Diffstat (limited to 'sys-cluster/mpe2')
-rw-r--r--sys-cluster/mpe2/Manifest2
-rw-r--r--sys-cluster/mpe2/mpe2-1.0.6_p1.ebuild66
2 files changed, 30 insertions, 38 deletions
diff --git a/sys-cluster/mpe2/Manifest b/sys-cluster/mpe2/Manifest
index cc2b2a69e..e96a16854 100644
--- a/sys-cluster/mpe2/Manifest
+++ b/sys-cluster/mpe2/Manifest
@@ -1,3 +1,3 @@
DIST mpe2-1.0.6p1.tar.gz 9313216 RMD160 1c52f379c3fff4bac5c68505ca657584d8092f7f SHA1 bc810c7a1f3ef5b9cf2563278053afadbc2029f2 SHA256 23cfef2b8a0a27408b5bdadeb216ba3adb3b02bf40d0fa6fc0a110cefd8c5863
-EBUILD mpe2-1.0.6_p1.ebuild 3752 RMD160 250378f8b6ff2370ff69a520cf91882387de2c59 SHA1 1779caa2911833538cb9eaf0120fa77d343a6124 SHA256 7566a0c7438c7c164f9f0981bfe020f70772a736b16be7a483dbc8511fb2556a
+EBUILD mpe2-1.0.6_p1.ebuild 3534 RMD160 5cc948ba5f2c109a16c25e5edf965139576b45c1 SHA1 1ffdb0c1cb303ac63d6f14ffe5ad65a9d449d63e SHA256 e6b7f30a7f312cb93e013bb23889121c923131b3d973136738f8c97c84d9cd5e
MISC metadata.xml 262 RMD160 28b216487d02e3543ce0ceac0e7e3fd60cbe63bc SHA1 b700ba0837d2e5d604092b3b44960885c785c5b4 SHA256 c34f39ce5df0360b6bd1b55f67e26f35a8d482be2082951e27102ff850c58be5
diff --git a/sys-cluster/mpe2/mpe2-1.0.6_p1.ebuild b/sys-cluster/mpe2/mpe2-1.0.6_p1.ebuild
index 68a68e9e8..cda046424 100644
--- a/sys-cluster/mpe2/mpe2-1.0.6_p1.ebuild
+++ b/sys-cluster/mpe2/mpe2-1.0.6_p1.ebuild
@@ -2,6 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
# $Header: $
+MPI_PKG_NEED_IMPS="openmpi mpich2"
inherit fortran eutils java-utils-2 mpi
MY_P=${P/_/}
@@ -14,8 +15,6 @@ SLOT="0"
KEYWORDS="~amd64"
IUSE="minimal fortran threads debug"
-MPI_EMPI_COMPAT="openmpi mpich2"
-
COMMON_DEPEND="$(mpi_pkg_deplist)
!minimal? ( x11-libs/libXtst
x11-libs/libXi )"
@@ -40,14 +39,7 @@ MPE_IMP=""
pkg_setup() {
local i
- mpi_pkg_setup
- if [ -n "${MPI_IMP}" ]; then
- MPE_IMP=$(mpi_built_with)
- else
- # Hack until mpi.eclass is fixed to store ${PN}
- has_version "sys-cluster/openmpi" && MPE_IMP="openmpi"
- has_version "sys-cluster/mpich2" && MPE_IMP="mpich2"
- fi
+ MPE_IMP=$(mpi_pkg_base_imp)
if use fortran ; then
FORTRAN="g77 gfortran ifort ifc"
@@ -64,7 +56,7 @@ pkg_setup() {
export JFLAGS="${JFLAGS} $(java-pkg_javac-args)"
- if [[ "${MPE_IMP}" == openmpi* ]] && [ -z "${MPE2_FORCE_OPENMPI_TEST}" ]; then
+ if [[ "${MPE_IMP}" == openmpi ]] && [ -z "${MPE2_FORCE_OPENMPI_TEST}" ]; then
elog ""
elog "Currently src_test fails on collchk with openmpi, hence"
elog "testing is disabled by default. If you would like to"
@@ -85,11 +77,11 @@ src_unpack() {
}
src_compile() {
- local c="--with-mpicc=$(get_eselect_var MPI_CC)"
- local d=$(get_mpi_dir)
+ local c="--with-mpicc=$(mpi_pkg_cc)"
+ local d=$(mpi_root)
- if [ -n "${FORTRANC}" ]; then
- c="${c} --with-mpif77=$(get_eselect_var MPI_F77)"
+ if [ -n "${FORTRANC}" -a -n "$(mpi_pkg_f77)" ]; then
+ c="${c} --with-mpif77=$(mpi_pkg_f77)"
export F77=${FORTRANC}
else
c="${c} --disable-f77"
@@ -101,33 +93,33 @@ src_compile() {
c="${c} --with-java2=$(java-config --jdk-home) --enable-slog2=build"
fi
- if [[ "${MPE_IMP}" == openmpi* ]]; then
+ if [[ "${MPE_IMP}" == openmpi ]]; then
c="${c} --disable-rlog --disable-sample"
fi
- mpi_conf_args="${c}
- --sysconfdir=/etc/${PN}
- --with-htmldir=${d}/usr/share/${PN}
- --with-docdir=${d}/usr/share/${PN}
- --enable-collchk
- --enable-wrappers
- $(use_enable !minimal graphics)
- $(use_enable threads threadlogging )
- $(use_enable debug g)"
- mpi_src_compile
-
-#--with-mpicc=/usr/bin/mpicc \
-#--with-mpif77=/usr/bin/mpif77 \
+ mpi_pkg_set_env
+ econf $(mpi_econf_args) ${c} \
+ --sysconfdir=/etc/$(mpi_class)/${PN} \
+ --with-htmldir=${d}usr/share/${PN} \
+ --with-docdir=${d}usr/share/${PN} \
+ --enable-collchk \
+ --enable-wrappers \
+ $(use_enable !minimal graphics) \
+ $(use_enable threads threadlogging) \
+ $(use_enable debug g) \
+ || die
+ emake || die
+ mpi_pkg_restore_env
}
src_test() {
local rc
- local d=$(get_mpi_dir)
+ local d=$(mpi_root)
cd "${S}"
- if [[ "${MPE_IMP}" == mpich2* ]]; then
- "${ROOT}"${d}/usr/bin/mpd -d --pidfile="${T}"/mpd.pid
+ if [[ "${MPE_IMP}" == mpich2 ]]; then
+ "${ROOT}"${d}usr/bin/mpd -d --pidfile="${T}"/mpd.pid
elif [[ "${MPE_IMP}" == openmpi* ]] && [ -z "${MPE2_FORCE_OPENMPI_TEST}" ]; then
elog
elog "Skipping tests for openmpi"
@@ -138,20 +130,20 @@ src_test() {
emake \
CC="${S}"/bin/mpecc \
FC="${S}"/bin/mpefc \
- MPERUN="${ROOT}${d}/usr/bin/mpiexec -n 4" \
+ MPERUN="${ROOT}${d}usr/bin/mpiexec -n 4" \
CLOG2TOSLOG2="${S}/src/slog2sdk/bin/clog2TOslog2" \
check;
rc=${?}
- if [[ "${MPE_IMP}" == mpich2* ]]; then
- "${ROOT}"${d}/usr/bin/mpdallexit || kill $(<"${T}"/mpd.pid)
+ if [[ "${MPE_IMP}" == mpich2 ]]; then
+ "${ROOT}"${d}usr/bin/mpdallexit || kill $(<"${T}"/mpd.pid)
fi
return ${rc}
}
src_install() {
- local d=$(get_mpi_dir)
+ local d=$(mpi_root)
cd "${S}"
emake DESTDIR="${D}" install || die
- rm -f "${D}"/${d}/usr/sbin/mpeuninstall
+ rm -f "${D}"/${d}usr/sbin/mpeuninstall
}