diff options
author | Steve Arnold <nerdboy@gentoo.org> | 2006-06-26 06:15:00 +0000 |
---|---|---|
committer | Steve Arnold <nerdboy@gentoo.org> | 2006-06-26 06:15:00 +0000 |
commit | edb628e74af036206912d87c45b82abc5a8183de (patch) | |
tree | b433b045dc0304744108339aeb82e70ac515db70 | |
parent | masking jdk dep for mpich2 (diff) | |
download | historical-edb628e74af036206912d87c45b82abc5a8183de.tar.gz historical-edb628e74af036206912d87c45b82abc5a8183de.tar.bz2 historical-edb628e74af036206912d87c45b82abc5a8183de.zip |
Added explicit fortran and mpe-sdk support, test section
Package-Manager: portage-2.1.1_pre1-r2
-rw-r--r-- | sys-cluster/mpich2/ChangeLog | 12 | ||||
-rw-r--r-- | sys-cluster/mpich2/Manifest | 29 | ||||
-rw-r--r-- | sys-cluster/mpich2/files/digest-mpich2-1.0.3-r1 | 3 | ||||
-rw-r--r-- | sys-cluster/mpich2/files/mpd.conf | 2 | ||||
-rw-r--r-- | sys-cluster/mpich2/files/mpich2-1.0.3-make-test.patch | 23 | ||||
-rw-r--r-- | sys-cluster/mpich2/files/mpich2-1.0.3-mpe-install.patch | 11 | ||||
-rw-r--r-- | sys-cluster/mpich2/mpich2-1.0.3-r1.ebuild | 202 |
7 files changed, 276 insertions, 6 deletions
diff --git a/sys-cluster/mpich2/ChangeLog b/sys-cluster/mpich2/ChangeLog index 7c25e1902f8a..4bab456a6279 100644 --- a/sys-cluster/mpich2/ChangeLog +++ b/sys-cluster/mpich2/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for sys-cluster/mpich2 # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/ChangeLog,v 1.6 2006/06/25 11:48:19 corsair Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/ChangeLog,v 1.7 2006/06/26 06:15:00 nerdboy Exp $ + +*mpich2-1.0.3-r1 (26 Jun 2006) + + 26 Jun 2006; Steve Arnold <nerdboy@gentoo.org> + +files/mpich2-1.0.3-make-test.patch, + +files/mpich2-1.0.3-mpe-install.patch, +files/mpd.conf, + +mpich2-1.0.3-r1.ebuild: + Added explicit fortran and mpe-sdk support, test section, although + tests still have a build issue with portage (only manual builds are + currently working). Feel free to add magic... 25 Jun 2006; Markus Rothe <corsair@gentoo.org> mpich2-1.0.3.ebuild: Stable on ppc64; bug #133999 diff --git a/sys-cluster/mpich2/Manifest b/sys-cluster/mpich2/Manifest index b5f85eb6e2dd..f6030c655b14 100644 --- a/sys-cluster/mpich2/Manifest +++ b/sys-cluster/mpich2/Manifest @@ -1,25 +1,41 @@ +AUX mpd.conf 48 RMD160 289de9bb40759e3f71229cf47e4d2af83703a85f SHA1 244eee76dbf4ff269e4489d5cc7c3577c6c1fa6b SHA256 ae740cacaf2cb798921cb2092f5af98de67445e27af3f88858f3e6d2bbb127f4 +MD5 091e189d645e04506aeeafac4bf3faf6 files/mpd.conf 48 +RMD160 289de9bb40759e3f71229cf47e4d2af83703a85f files/mpd.conf 48 +SHA256 ae740cacaf2cb798921cb2092f5af98de67445e27af3f88858f3e6d2bbb127f4 files/mpd.conf 48 +AUX mpich2-1.0.3-make-test.patch 741 RMD160 b139d5c92e35c888dba1d196b118c9e4d334cc90 SHA1 98084a742311957e5f4ddb086bd5be868d6f60c5 SHA256 1b4c7ed94504779ec87cabdb6238210545eb7fb352729a39c3cce1bb0df62c67 +MD5 4ba23250424ab2dcb86a0ce538a823cb files/mpich2-1.0.3-make-test.patch 741 +RMD160 b139d5c92e35c888dba1d196b118c9e4d334cc90 files/mpich2-1.0.3-make-test.patch 741 +SHA256 1b4c7ed94504779ec87cabdb6238210545eb7fb352729a39c3cce1bb0df62c67 files/mpich2-1.0.3-make-test.patch 741 AUX mpich2-1.0.3-make.patch 4524 RMD160 1b4d1aaaafacb688ae0118714a36ec12b60e97b6 SHA1 d4466adebd1b7fbd26daed9317a75ba2d6ae9c7c SHA256 6180fa27369462b0d6fdcdf35a02401d7fc0b7bc1856bdf104ddf74c0de233f1 MD5 eea2085d7d3192a41d2cded55288085f files/mpich2-1.0.3-make.patch 4524 RMD160 1b4d1aaaafacb688ae0118714a36ec12b60e97b6 files/mpich2-1.0.3-make.patch 4524 SHA256 6180fa27369462b0d6fdcdf35a02401d7fc0b7bc1856bdf104ddf74c0de233f1 files/mpich2-1.0.3-make.patch 4524 +AUX mpich2-1.0.3-mpe-install.patch 428 RMD160 0741898cfbe9b16653d4cf6ed7a04adf16d222b8 SHA1 fe005914d238b295f19242470f1f7c237638964e SHA256 51d6d4a6336dbfb4d316837f3ac3b3ad796a9a9239727bf7cf2b7bfea01c5c62 +MD5 c705de57345fa01cf457adf6d46c127c files/mpich2-1.0.3-mpe-install.patch 428 +RMD160 0741898cfbe9b16653d4cf6ed7a04adf16d222b8 files/mpich2-1.0.3-mpe-install.patch 428 +SHA256 51d6d4a6336dbfb4d316837f3ac3b3ad796a9a9239727bf7cf2b7bfea01c5c62 files/mpich2-1.0.3-mpe-install.patch 428 AUX mpich2-1.0.3-soname.patch 863 RMD160 9a416a11a8ba78f8ec71922e72462bd53893ee1a SHA1 5ac1f164d1dff66773b15fb8674a508f07babf91 SHA256 d6dfa6bb3e249a5cca651c02e3709304b308017637d2dd2d1103879de128d882 MD5 2428fe882cae90e2d740847fd2d8f284 files/mpich2-1.0.3-soname.patch 863 RMD160 9a416a11a8ba78f8ec71922e72462bd53893ee1a files/mpich2-1.0.3-soname.patch 863 SHA256 d6dfa6bb3e249a5cca651c02e3709304b308017637d2dd2d1103879de128d882 files/mpich2-1.0.3-soname.patch 863 -DIST mpich2-1.0.2p1.tar.gz 12172068 RMD160 28f0623528c456812a5effc3d818b58bbd51cbf2 SHA256 4efefdda63526f766e06f234dd8349a32c4d706f63a6bb32f643e8d37595bc5c +DIST mpich2-1.0.2p1.tar.gz 12172068 RMD160 28f0623528c456812a5effc3d818b58bbd51cbf2 SHA1 753a2f34832b29300954dc0ccf7f4596998ef3b9 SHA256 4efefdda63526f766e06f234dd8349a32c4d706f63a6bb32f643e8d37595bc5c DIST mpich2-1.0.3.tar.gz 12166368 RMD160 5e7cd42f8359d81e6578d1fffca4708471e03cec SHA1 0ca48abaa98e98f0136508463886aad39ecefccb SHA256 294717fc05e9d509ed0e45c99709ddba696ad6919c47fc0801a410fe129623df EBUILD mpich2-1.0.2_p1.ebuild 2263 RMD160 dee1bd34be34353cc20cae4947eb6f395570088b SHA1 236688bf08dc0c7c1f6ad62836a1003d91ca2b21 SHA256 a8926154b49112f779c5e04f44068242e02de6b27962b2ff7271d3311dc47b47 MD5 b83990c4eb0fb190b6048ae8e273b683 mpich2-1.0.2_p1.ebuild 2263 RMD160 dee1bd34be34353cc20cae4947eb6f395570088b mpich2-1.0.2_p1.ebuild 2263 SHA256 a8926154b49112f779c5e04f44068242e02de6b27962b2ff7271d3311dc47b47 mpich2-1.0.2_p1.ebuild 2263 +EBUILD mpich2-1.0.3-r1.ebuild 5769 RMD160 61effb8d6c3f6aa23da774f86870f14423dda380 SHA1 7acf854674ebf927bac9a4e3166ea35fefe2ac7c SHA256 210e61114ced9e89b5f0035615d15f2b61edbee04758fbc23d99b1ab218a5205 +MD5 54dafb2b3f8ae3e5700c3ffa411afd67 mpich2-1.0.3-r1.ebuild 5769 +RMD160 61effb8d6c3f6aa23da774f86870f14423dda380 mpich2-1.0.3-r1.ebuild 5769 +SHA256 210e61114ced9e89b5f0035615d15f2b61edbee04758fbc23d99b1ab218a5205 mpich2-1.0.3-r1.ebuild 5769 EBUILD mpich2-1.0.3.ebuild 2279 RMD160 1d892c7220acd4070eec18e3df02ecad73e73a66 SHA1 26eccb977c91f4305a9518ba9e03d403c7af6f8e SHA256 c4cf2761822360502c2d61613ac83f984dd98e0c129785d339ed3ca76941a4c9 MD5 ae9b4916057da52de4e2b4242d795ec3 mpich2-1.0.3.ebuild 2279 RMD160 1d892c7220acd4070eec18e3df02ecad73e73a66 mpich2-1.0.3.ebuild 2279 SHA256 c4cf2761822360502c2d61613ac83f984dd98e0c129785d339ed3ca76941a4c9 mpich2-1.0.3.ebuild 2279 -MISC ChangeLog 1260 RMD160 c5f307b94489dbf3386131005f30cae9ec250db2 SHA1 4d70cdafa05e3e6055b5f9e4b15b90d6125b2119 SHA256 b86dc16509d6dc853a0349bda65b4386064e0e39d17121f714200d7df887108d -MD5 d196eddbf6760a1cb45e1b4307cdc64a ChangeLog 1260 -RMD160 c5f307b94489dbf3386131005f30cae9ec250db2 ChangeLog 1260 -SHA256 b86dc16509d6dc853a0349bda65b4386064e0e39d17121f714200d7df887108d ChangeLog 1260 +MISC ChangeLog 1654 RMD160 2e0d8be22a7a6b812f8d6c98add714b672fdaa86 SHA1 8bcff6abf7a6eaab83a43f446d9883d31678d1d1 SHA256 935f103633a30a08ff5524492b13dba3b0e5e7d5b2c5f3d7df1518ec6b4d1c0d +MD5 f200f4d27e65abe01835f534886c4d2a ChangeLog 1654 +RMD160 2e0d8be22a7a6b812f8d6c98add714b672fdaa86 ChangeLog 1654 +SHA256 935f103633a30a08ff5524492b13dba3b0e5e7d5b2c5f3d7df1518ec6b4d1c0d ChangeLog 1654 MISC metadata.xml 249 RMD160 ba772efa333aad616b4054716659b5e34044f687 SHA1 79e5907109f7f689902f20eb05d91ef83459e4d9 SHA256 a433de87cf1259d53fc0ab354e109539269c46d9260c7d4eef7ce33a735e6c6f MD5 8030c8b7656ad8112a5f870431e95932 metadata.xml 249 RMD160 ba772efa333aad616b4054716659b5e34044f687 metadata.xml 249 @@ -30,3 +46,6 @@ SHA256 d5d49b61331e325d26fcf5bf289c7df88c9b847efb971fc7015b6bbaa8bfdcbe files/di MD5 10f6fd0e6437c001aa4ac4f356741a2b files/digest-mpich2-1.0.3 244 RMD160 5b487ae4a71c60a45f5275a0c4c85ca89839187a files/digest-mpich2-1.0.3 244 SHA256 0727f804a0eaf436ee9176bbd390adf2b28b409e61f20a30491ea3782dd72e0a files/digest-mpich2-1.0.3 244 +MD5 10f6fd0e6437c001aa4ac4f356741a2b files/digest-mpich2-1.0.3-r1 244 +RMD160 5b487ae4a71c60a45f5275a0c4c85ca89839187a files/digest-mpich2-1.0.3-r1 244 +SHA256 0727f804a0eaf436ee9176bbd390adf2b28b409e61f20a30491ea3782dd72e0a files/digest-mpich2-1.0.3-r1 244 diff --git a/sys-cluster/mpich2/files/digest-mpich2-1.0.3-r1 b/sys-cluster/mpich2/files/digest-mpich2-1.0.3-r1 new file mode 100644 index 000000000000..2739835281c8 --- /dev/null +++ b/sys-cluster/mpich2/files/digest-mpich2-1.0.3-r1 @@ -0,0 +1,3 @@ +MD5 6fa6b0f5a290285a90c239127d1eaa58 mpich2-1.0.3.tar.gz 12166368 +RMD160 5e7cd42f8359d81e6578d1fffca4708471e03cec mpich2-1.0.3.tar.gz 12166368 +SHA256 294717fc05e9d509ed0e45c99709ddba696ad6919c47fc0801a410fe129623df mpich2-1.0.3.tar.gz 12166368 diff --git a/sys-cluster/mpich2/files/mpd.conf b/sys-cluster/mpich2/files/mpd.conf new file mode 100644 index 000000000000..07dd9825023a --- /dev/null +++ b/sys-cluster/mpich2/files/mpd.conf @@ -0,0 +1,2 @@ +secretword=test69hike +MPD_SECRETWORD=test69hike diff --git a/sys-cluster/mpich2/files/mpich2-1.0.3-make-test.patch b/sys-cluster/mpich2/files/mpich2-1.0.3-make-test.patch new file mode 100644 index 000000000000..92b58141196c --- /dev/null +++ b/sys-cluster/mpich2/files/mpich2-1.0.3-make-test.patch @@ -0,0 +1,23 @@ +--- test/mpi/attr/Makefile.in.orig 2006-06-11 16:52:54.000000000 -0700 ++++ test/mpi/attr/Makefile.in 2006-06-11 17:14:38.000000000 -0700 +@@ -26,7 +26,7 @@ + LDFLAGS = @LDFLAGS@ ../util/mtest.o + + VPATH = .:@srcdir@ +-INCLUDES = -I../include -I${srcdir}/../include ++INCLUDES = -I../include + + .SUFFIXES: + .SUFFIXES: .o .c .txt +--- test/mpi/util/Makefile.in.orig 2006-06-11 16:52:54.000000000 -0700 ++++ test/mpi/util/Makefile.in 2006-06-11 17:09:42.000000000 -0700 +@@ -21,8 +21,7 @@ + C_COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) + + VPATH = .:@srcdir@ +-INCLUDES = -I../../../src/include -I${top_srcdir}/src/include -I../include \ +- -I${srcdir}/../include ++INCLUDES = -I../include + + .SUFFIXES: + .SUFFIXES: .o .c .txt diff --git a/sys-cluster/mpich2/files/mpich2-1.0.3-mpe-install.patch b/sys-cluster/mpich2/files/mpich2-1.0.3-mpe-install.patch new file mode 100644 index 000000000000..74f2fb2419b4 --- /dev/null +++ b/sys-cluster/mpich2/files/mpich2-1.0.3-mpe-install.patch @@ -0,0 +1,11 @@ +--- src/mpe2/sbin/mpeinstall.orig 2006-06-10 22:51:48.000000000 -0700 ++++ src/mpe2/sbin/mpeinstall 2006-06-10 23:57:02.000000000 -0700 +@@ -457,7 +457,7 @@ + CopyDirRecurP $etcbuild_dir $sysconfdir $MODE + cd $etcbuild_dir && \ + for file in *.conf ; do \ +- FixInstallFile $file $DESTDIR$sysconfdir/$file ; \ ++ FixInstallFile $file $sysconfdir/$file ; \ + done + fi + fi diff --git a/sys-cluster/mpich2/mpich2-1.0.3-r1.ebuild b/sys-cluster/mpich2/mpich2-1.0.3-r1.ebuild new file mode 100644 index 000000000000..1f2c56ede32f --- /dev/null +++ b/sys-cluster/mpich2/mpich2-1.0.3-r1.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/mpich2-1.0.3-r1.ebuild,v 1.1 2006/06/26 06:15:00 nerdboy Exp $ + +inherit fortran distutils eutils autotools kde-functions toolchain-funcs + +DESCRIPTION="MPICH2 - A portable MPI implementation" +HOMEPAGE="http://www-unix.mcs.anl.gov/mpi/mpich2" +SRC_URI="ftp://ftp.mcs.anl.gov/pub/mpi/${P}.tar.gz" + +LICENSE="as-is" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86" +# need more arches in here, like sparc... +IUSE="crypt cxx doc debug fortran mpe mpe-sdk threads" + +PROVIDE="virtual/mpi" +DEPEND="virtual/libc + sys-devel/autoconf + sys-devel/automake + sys-devel/libtool + sys-apps/coreutils + dev-lang/perl + sys-devel/gcc + mpe-sdk? ( >=virtual/jdk-1.4.2 ) + >=dev-lang/python-2.3" +RDEPEND="${DEPEND} + crypt? ( net-misc/openssh ) + !crypt? ( net-misc/netkit-rsh ) + !virtual/mpi" + +RESTRICT="test" + +pkg_setup() { + if [ -n "${MPICH_CONFIGURE_OPTS}" ]; then + einfo "Custom configure options are ${MPICH_CONFIGURE_OPTS}." + fi + if use fortran ; then + if [ $(gcc-major-version) -ge 4 ] \ + && built_with_use sys-devel/gcc fortran ; then + FORTRAN="gfortran" + fortran_pkg_setup + else + ewarn "You need gcc-4 built with fortran support in order to" + ewarn "build the f90 mpi interface, which is required for f90" + ewarn "and mpi support in hdf5 (for example)." + fi + else + einfo "Unless you have another f90 compiler installed, we can only" + einfo "build the f77 and C++ interfaces with gcc-3.x" + fi +} + +src_unpack() { + unpack ${A} + cd ${S} + need-autoconf 2.5 + epatch ${FILESDIR}/${P}-soname.patch || die "soname patch failed" + ebegin "Reconfiguring" + find . -name configure -print | xargs rm + ./maint/updatefiles + use mpe-sdk && ./src/mpe2/maint/updatefiles + eend + epatch ${FILESDIR}/${P}-make.patch || die "make patch failed" + #epatch ${FILESDIR}/${P}-make-test.patch || die "make test patch failed" + echo "LDPATH=\"/usr/$(get_libdir)/${PN}\"" > 42mpich2 +} + +src_compile() { + export LDFLAGS='-Wl,-z,now' + local RSHCOMMAND + + if use crypt ; then + RSHCOMMAND="ssh -x" + else + RSHCOMMAND="rsh" + fi + export RSHCOMMAND + + local myconf="${MPICH_CONFIGURE_OPTS}" + + if ! use debug ; then + myconf="${myconf} --enable-fast --enable-g=none" + else + myconf="${myconf} --enable-g=dbg --enable-debuginfo" + fi + + if ! use mpe-sdk ; then + myconf="${myconf} --enable-graphics=no --enable-rlog=no \ + --enable-clog=no --enable-slog2=no" + fi + use mpe && MPE_SRC_DIR=${S}/src/mpe2 + + ./configure --prefix=/usr --exec-prefix=/usr \ + --enable-sharedlibs=gcc \ + ${myconf} \ + $(use_enable cxx) \ + $(use_enable mpe) \ + $(use_enable threads) \ + --includedir=/usr/include \ + --libdir=/usr/$(get_libdir)/${PN} \ + --mandir=/usr/share/man \ + --with-docdir=/usr/share/doc/${PF} \ + --with-htmldir=/usr/share/doc/${PF}/html \ + --sysconfdir=/etc/${PN} \ + --datadir=/usr/share/${PN} || die "configure failed" + + if use mpe-sdk ; then + ${MPE_SRC_DIR}/configure --prefix=/usr --enable-mpich \ + --with-mpicc=mpicc --with-mpif77=mpif77 --enable-wrappers \ + --enable-collchk --with-flib_path_leader="-Wl,-L" + fi + + if use mpe ; then + epatch ${FILESDIR}/${P}-mpe-install.patch || die "install patch failed" + fi + + # parallel makes are currently broken, so no emake... + make dependencies + make || die "make failed" + + if has test ${FEATURES} ; then + # get setup for src_test + export LDFLAGS='-L../../lib' + cd ${S}/test/mpi + #make clean || die "make clean failed" + echo + einfo "Using ./configure --prefix=${S} --with-mpi=${S} --disable-f90" + echo + ./configure --prefix=${S} --with-mpi=${S} $(use_enable threads) \ + --exec-prefix=${S} --includedir=${S}/src/include --disable-f90 \ + || die "configure test failed" + make dependencies + # make doesn't work here for some reason, although it works fine + # when run manually. Go figure... + #cd ${S}/test/mpi/util + #make all || die "make util failed" + cd ${S}/test + install -g portage -o portage -m 0600 ${FILESDIR}/mpd.conf ${HOME}/.mpd.conf + #${S}/bin/mpd --daemon + make all || die "make pre-test failed" + #cd ${S}/test/mpi + #make || die "make test failed" + #${S}/bin/mpdallexit + fi +} + +src_test() { + ewarn "Tests can take a long time to complete, even on a fast box." + ewarn "Expected result on amd64 with gcc 4.1.1:" + ewarn " 6 tests failed out of 373" + echo + einfo "Control-C now if you want to disable tests..." + epause + + ${S}/bin/mpd --daemon + cd ${S}/test + nice --adjustment=3 make testing || die "run tests failed" + ${S}/bin/mpdallexit +} + +src_install() { + dodir /etc/${PN} + rm -rf src/mpe2/etc/*.in + make install DESTDIR=${D} \ + LIBDIR=${D}usr/$(get_libdir)/${PN} || die "make install failed" + + dodir /usr/share/${PN} + mv ${D}usr/examples/cpi ${D}usr/share/${PN}/cpi + rm -rf ${D}usr/examples + rm -rf ${D}usr/sbin + + dodir /usr/share/doc/${PF} + if use doc; then + dodoc COPYRIGHT README README.romio README.testing CHANGES + dodoc README.developer RELEASE_NOTES + newdoc src/pm/mpd/README README.mpd + else + rm -rf ${D}usr/share/doc/ + rm -rf ${D}usr/share/man/ + dodoc README CHANGES COPYRIGHT RELEASE_NOTES + fi + doenvd 42mpich2 +} + +pkg_postinst() { + python_version + python_mod_optimize ${ROOT}usr/bin + echo + einfo "Note: this package still needs testing with other Fortran90" + einfo "compilers besides gfortran (gcc4). The tests also need some" + einfo "magic to build properly within the portage build environment." + einfo "(currently the tests only build and run manually)" + echo + einfo "The gfortran support has been tested successfully with hdf5" + einfo "(using gfortran and the mpif90 wrapper)." +} + +pkg_postrm() { + python_version + python_mod_cleanup +} |