diff options
author | Justin Bronder <jsbronder@gentoo.org> | 2010-09-26 03:31:17 -0400 |
---|---|---|
committer | Justin Bronder <jsbronder@gentoo.org> | 2010-09-26 03:31:28 -0400 |
commit | 6454d4707e8b4a4f21dcab1477f36611a6ab073e (patch) | |
tree | c81f0452ae1200b61c4f467bd5571b015a2e1e68 /sys-cluster/mpich2 | |
parent | sci-math/axiom: Deps adjusted per bug 336789 (diff) | |
download | sci-6454d4707e8b4a4f21dcab1477f36611a6ab073e.tar.gz sci-6454d4707e8b4a4f21dcab1477f36611a6ab073e.tar.bz2 sci-6454d4707e8b4a4f21dcab1477f36611a6ab073e.zip |
Bump
(Portage version: 2.2_rc83/git/Linux x86_64, signed Manifest commit)
Diffstat (limited to 'sys-cluster/mpich2')
-rw-r--r-- | sys-cluster/mpich2/Manifest | 9 | ||||
-rw-r--r-- | sys-cluster/mpich2/files/mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch | 25 | ||||
-rw-r--r-- | sys-cluster/mpich2/mpich2-1.3_rc1.ebuild | 195 |
3 files changed, 226 insertions, 3 deletions
diff --git a/sys-cluster/mpich2/Manifest b/sys-cluster/mpich2/Manifest index 81863f639..7a2f2618b 100644 --- a/sys-cluster/mpich2/Manifest +++ b/sys-cluster/mpich2/Manifest @@ -11,14 +11,17 @@ AUX mpich2-1.0.8-gforker-install-alt-fix.patch 621 RMD160 5b9904ae02f1c1098fdfd2 AUX mpich2-1.0.8-mpdconf-env.patch 5355 RMD160 26ffada537073676553fdc4a9ee6a02f1a1af279 SHA1 f40eee99425894d9c76c8eefa87b8e72d9b7a02a SHA256 14cbd73be6969569574a880ad23e7c71c4bb02e6994392b2661bf5fb1965ce3d AUX mpich2-1.0.8-pkgconfig.patch 928 RMD160 5ce7a800423f250dba0dd69560abebf845e7e556 SHA1 afba6883d1204a4b7c082af7e976186153263d64 SHA256 7f8dcafcb0d138130a684284d9bca86e4834f74a5132f0fef4556391abf43f8e AUX mpich2-1.2.1-fix-missing-libs.patch 1825 RMD160 aec1251aa66f0d63c5848920c63339d5558a0f61 SHA1 d70695c63d891a32a98324ffd236f8751465fe98 SHA256 f645d00fc6adeef553517078dcc3313cbabfbf8069ad5a76e2570d183b2d824b +AUX mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch 1053 RMD160 e38a0c503bde8b66cd1d7efbeb674f14e0008a8d SHA1 f5691827c39a9bbf01c4c7e13d5fdf4aa1774558 SHA256 a0e79be986c29cc5aa1b0abb1bba27dc368a530d632a332e8701e9c02967224e DIST mpich2-1.2.1p1.tar.gz 18014859 RMD160 810cc486b65e4bcf977ac8d96ccbbcea87e0cbaa SHA1 26bd5620b45bc654aa3945755d11450be63d650c SHA256 a55d1682ee0b5ebbacc047f60620ed291e0a9b3ded3eaeb6a2c81a1598c4c964 +DIST mpich2-1.3rc1.tar.gz 19120827 RMD160 f6db0e250f244d05c6db8a2507e98d4303112cd9 SHA1 49fa1f4ea93ed51a27f41c7ea3543dad452cfbce SHA256 e0dccb468f20ad53735a778a5ee4a23bc139445ad13ea0b7e8f009c618d9bd23 EBUILD mpich2-1.2.1_p1-r2.ebuild 5074 RMD160 c11e2f01153805312f382f8d46112920df59575b SHA1 fb45a52e123bd6a5970c9cd1df1c5a52f99539b1 SHA256 6380fbee9e21e241a7736a0b75374036bb5295a7392b052354de4f28ccd440c1 +EBUILD mpich2-1.3_rc1.ebuild 4706 RMD160 887a4db390a68ae4f7c895b8dace5ceaff3adbe1 SHA1 4ad3cb86625f179ab2778a7240aba07bf1309119 SHA256 be5836619a28fb8c515cf9d1389a331482f9dd6d489e2e5b4b5cbe085b2131de MISC ChangeLog 3855 RMD160 c3e62ab18d5b5dce4abcdc54bf72437efbd91375 SHA1 c78bd88ac0bc5fa79ef6693c308742a384d01bad SHA256 e8fe61d3b944df2f9bf2ff61bba4258c7cc622e82fc17141720dc86d1898802a MISC metadata.xml 534 RMD160 8d4fa7f5f4860a520e58b3866b2a2fdc04ab6d83 SHA1 60bc1b41a847e2f9fbf527b204fcafc054d04d33 SHA256 763dc9199c817bb987335dcdddcc65de5f419410aac2f027fc9a2208e91f5c0a -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) -iEYEARECAAYFAkyP4u4ACgkQ4MrvBE1wQ8kWUQCfSaOfFhMI2K+i27MPMdOBbe0W -AsIAnRaE5p2Ie2GDPQvbiFe0DcLid6gB -=hyup +iEYEARECAAYFAkye9sUACgkQ4MrvBE1wQ8mf8gCfbyynH3oHsrk1J564r56R5MyP +NQwAnA3YeOQKdol3s+8TN89TkzGmM8y1 +=g2Dr -----END PGP SIGNATURE----- diff --git a/sys-cluster/mpich2/files/mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch b/sys-cluster/mpich2/files/mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch new file mode 100644 index 000000000..2a7ba2fb1 --- /dev/null +++ b/sys-cluster/mpich2/files/mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch @@ -0,0 +1,25 @@ +From e51d6ec114dafc10a7eeeeb04c1dfdc7a7b7514c Mon Sep 17 00:00:00 2001 +From: Justin Bronder <jsbronder@gmail.com> +Date: Sat, 25 Sep 2010 12:04:35 -0400 +Subject: [PATCH] debugger: make libtvmpich2.so respect user LDFLAGS + +--- + src/mpi/debugger/Makefile.in | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/mpi/debugger/Makefile.in b/src/mpi/debugger/Makefile.in +index 834079f..8723e6f 100644 +--- a/src/mpi/debugger/Makefile.in ++++ b/src/mpi/debugger/Makefile.in +@@ -172,7 +172,7 @@ SOURCEFILES = $(SOURCES) + # There is no static debugger interface library + # Force a custom target + ./libtvmpich2.@SHLIB_EXT@: ./libtvmpich2.la +- (cd . && $(CREATESHLIB) -libtype=@DBG_SHLIB_TYPE@ --mode=link -cc="@CC_SHL_DBG@" -clink="@C_LINK_SHL_DBG@" -o libtvmpich2.la -rpath $(libdir) ) ++ (cd . && $(CREATESHLIB) -libtype=@DBG_SHLIB_TYPE@ --mode=link -cc="@CC_SHL_DBG@" -clink="@C_LINK_SHL_DBG@" -o libtvmpich2.la -rpath $(libdir) -ldflags "$(LDFLAGS)" ) + + # + # We need to make sure that dbginit is compiled with -g, so +-- +1.7.2.2 + diff --git a/sys-cluster/mpich2/mpich2-1.3_rc1.ebuild b/sys-cluster/mpich2/mpich2-1.3_rc1.ebuild new file mode 100644 index 000000000..09c548aae --- /dev/null +++ b/sys-cluster/mpich2/mpich2-1.3_rc1.ebuild @@ -0,0 +1,195 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=2 +PYTHON_DEPEND="2" + +inherit eutils fortran python mpi + +MY_PV=${PV/_/} +DESCRIPTION="MPICH2 - A portable MPI implementation" +HOMEPAGE="http://www.mcs.anl.gov/research/projects/mpich2/index.php" +SRC_URI="http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/${MY_PV}/${PN}-${MY_PV}.tar.gz" + +LICENSE="as-is" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="+cxx debug doc fortran threads romio mpi-threads" + +MPI_UNCLASSED_BLOCKERS="media-sound/mpd" + +COMMON_DEPEND="dev-libs/libaio + romio? ( net-fs/nfs-utils ) + $(mpi_imp_deplist)" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND}" + +S="${WORKDIR}"/${PN}-${MY_PV} + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup + + MPI_ESELECT_FILE="eselect.mpi.mpich2" + + if use fortran ; then + FORTRAN="g77 gfortran ifort ifc" + fortran_pkg_setup + fi + + if use mpi-threads && ! use threads; then + ewarn "mpi-threads requires threads, assuming that's what you want" + fi + + if mpi_classed; then + MPD_CONF_FILE_DIR=/etc/$(mpi_class) + else + MPD_CONF_FILE_DIR=/etc/${PN} + fi + +} + +src_prepare() { + epatch "${FILESDIR}"/mpich2-1.3-libtvmpich2.so-respect-user-LDFLAGS.patch + + # We need f90 to include the directory with mods, and to + # fix hardcoded paths for src_test() + # Submitted upstream. + sed -i \ + -e "s,FCFLAGS\( *\)=,FCFLAGS\1?=," \ + -e "s,\$(bindir)/,${S}/bin/,g" \ + -e "s,@MPIEXEC@,${S}/bin/mpiexec,g" \ + $(find ./test/ -name 'Makefile.in') || die + + if ! use romio; then + # These tests in errhan/ rely on MPI::File ...which is in romio + echo "" > test/mpi/errors/cxx/errhan/testlist + fi + + # 293665: Should check in on MPICH2_MPIX_FLAGS in later releases + # (>1.3) as this is seeing some development in trunk as of r6350. + sed -i \ + -e 's|\(WRAPPER_[A-Z90]*FLAGS\)="@.*@"|\1=""|' \ + src/env/mpi*.in || die +} + +src_configure() { + local c="--enable-shared --enable-sharedlibs=gcc" + local romio_conf + + # The configure statements can be somewhat confusing, as they + # don't all show up in the top level configure, however, they + # are picked up in the children directories. + + use debug && c="${c} --enable-g=all --enable-debuginfo" + + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=default" + else + if use threads ; then + c="${c} --with-thread-package=pthreads" + else + c="${c} --with-thread-package=none" + fi + c="${c} --enable-threads=single" + fi + + # enable f90 support for appropriate compilers + case "${FORTRANC}" in + gfortran|if*) + c="${c} --enable-f77 --enable-fc";; + g77) + c="${c} --enable-f77 --disable-fc";; + esac + + ! mpi_classed && c="${c} --sysconfdir=/etc/${PN}" + econf $(mpi_econf_args) ${c} ${romio_conf} \ + --docdir=$(mpi_root)/usr/share/doc/${PF} \ + --with-pm=mpd:hydra \ + --disable-mpe \ + $(use_enable romio) \ + $(use_enable cxx) \ + || die +} + +src_compile() { + # Oh, the irony. + # http://wiki.mcs.anl.gov/mpich2/index.php/Frequently_Asked_Questions#Q:_The_build_fails_when_I_use_parallel_make. + # https://trac.mcs.anl.gov/projects/mpich2/ticket/297 + emake -j1 || die +} + +src_test() { + local rc + + cp "${FILESDIR}"/mpd.conf "${T}"/mpd.conf || die + chmod 600 "${T}"/mpd.conf + export MPD_CONF_FILE="${T}/mpd.conf" + "${S}"/bin/mpd --daemon --pid="${T}"/mpd.pid + + make \ + CC="${S}"/bin/mpicc \ + CXX="${S}"/bin/mpicxx \ + F77="${S}"/bin/mpif77 \ + FC="${S}"/bin/mpif90 \ + FCFLAGS="${FCFLAGS} -I${S}/src/binding/f90/" \ + testing + rc=$? + + "${S}"/bin/mpdallexit || kill $(<"${T}"/mpd.pid) + return ${rc} +} + +src_install() { + local d=$(echo ${D}/$(mpi_root)/ | sed 's,///*,/,g') + local f + + emake DESTDIR="${D}" install || die + + dodir ${MPD_CONF_FILE_DIR} + insinto ${MPD_CONF_FILE_DIR} + doins "${FILESDIR}"/mpd.conf || die + + mpi_dodir /usr/share/doc/${PF} + mpi_dodoc COPYRIGHT README CHANGES RELEASE_NOTES || die + mpi_newdoc src/pm/mpd/README README.mpd || die + if use romio; then + mpi_newdoc src/mpi/romio/README README.romio || die + fi + + if ! use doc; then + rm -rf "${d}"usr/share/doc/${PF}/www* + fi + + mpi_imp_add_eselect + + # See #316937 + MPD_PYTHON_MODULES="" + for f in "${d}"usr/bin/*.py; do + MPD_PYTHON_MODULES="${MPD_PYTHON_MODULES} ${f##${D}}" + done +} + +pkg_postinst() { + # Here so we can play with ebuild commands as a normal user + chown root:root "${ROOT}"${MPD_CONF_FILE_DIR}/mpd.conf + chmod 600 "${ROOT}"${MPD_CONF_FILE_DIR}/mpd.conf + + elog "" + elog "MPE2 has been removed from this ebuild and now stands alone" + elog "as sys-cluster/mpe2." + elog "" + + python_mod_optimize ${MPD_PYTHON_MODULES} +} + +pkg_postrm() { + python_mod_cleanup ${MPD_PYTHON_MODULES} +} |