diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-cluster/mpich |
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-cluster/mpich')
-rw-r--r-- | sys-cluster/mpich/Manifest | 12 | ||||
-rw-r--r-- | sys-cluster/mpich/metadata.xml | 21 | ||||
-rw-r--r-- | sys-cluster/mpich/mpich-3.0.4.ebuild | 113 | ||||
-rw-r--r-- | sys-cluster/mpich/mpich-3.1.3.ebuild | 113 | ||||
-rw-r--r-- | sys-cluster/mpich/mpich-3.1.4.ebuild | 113 | ||||
-rw-r--r-- | sys-cluster/mpich/mpich-3.2-r1.ebuild | 130 | ||||
-rw-r--r-- | sys-cluster/mpich/mpich-3.2.ebuild | 113 |
7 files changed, 615 insertions, 0 deletions
diff --git a/sys-cluster/mpich/Manifest b/sys-cluster/mpich/Manifest new file mode 100644 index 000000000000..1deb5da29387 --- /dev/null +++ b/sys-cluster/mpich/Manifest @@ -0,0 +1,12 @@ +DIST mpich-3.0.4.tar.gz 10921075 SHA256 cf638c85660300af48b6f776e5ecd35b5378d5905ec5d34c3da7a27da0acf0b3 SHA512 f9d8b2cf561fe5f85c12512ef4dd7b0cf5ec8b53ddb07bfa0d1db2e3c8ae0382c77e0661f46b82ec96b05d18ea2d25328bb84e9528ac06e5925f30ec8ef030d0 WHIRLPOOL 52c811d1adcba26424bb3f05b7b97faff16ab3762782474fcde5f49e9ca77155fb91d80967120d9277eed2adb116443afe444671eb6315a610587d55ac4ec9ed +DIST mpich-3.1.3.tar.gz 11487313 SHA256 afb690aa828467721e9d9ab233fe00c68cae2b7b930d744cb5f7f3eb08c8602c SHA512 3071d75e925808c13ea528aaff81a2ee44a4eb9732c74005a0cedd5a710aeafc691d30c7a035ae0aba14bd2b837c1c788202a7612599d3ffac8e5a9299467c09 WHIRLPOOL ade5a2ab7a98a3ee353a0b41ad8c57b8676ea7e381e625c01237519c88e9e16c5330cf6c569707ded26462022dd8647ba0a24dc2c1559240781b0e4fa1c69511 +DIST mpich-3.1.4.tar.gz 11325036 SHA256 f68b5330e94306c00ca5a1c0e8e275c7f53517d01d6c524d51ce9359d240466b SHA512 55bd4d12a42b9ebc116016bd777eb2b8ed8c51e69f5ea5faf823eba0aeb7eadfe2848c4cca3032aa38841a25a4902c07cec2409811149a057c4aa99a25c6b6da WHIRLPOOL 243ea40dd67b7f8e6fecde58740c21703833ca2857922ad59c5744888145bbf0ee934a69128818cd5bb91f39a3e842c26b2eced20ba23e08c8968b903f1f9992 +DIST mpich-3.2.tar.gz 11862150 SHA256 0778679a6b693d7b7caff37ff9d2856dc2bfc51318bf8373859bfa74253da3dc SHA512 083c51655b4355827bd7fa4fe528046e2bc77b7747d869ff87b79fa324c3cc2a9b5640ccb7271490ccc0dd627e354a33a449bbab448501bbfddcfe5f999ee717 WHIRLPOOL 4196be94f5f5766f06e3f5893153e6d44fe93a5ef17dfcf3fce075b1506d5b762ba175dceeac0668284adc9f4a846917801f2138ed2d81f464d3a191b3f88f1c +EBUILD mpich-3.0.4.ebuild 2525 SHA256 678c9ce3b9ee3b4c2e1c6d47a0afdc360456a6eff6a22673940170bc184efc2c SHA512 f5bf6fc9c4507d36098659bc83b16424f36f34ce4d33e816e3f084ab48dabce3fb3be001d89a18b4ecf2697f24f8559a48839a92effd2e7375edd36862526fd4 WHIRLPOOL 3212a545cfa0d5fedd7d9eb675e097131258a45f232b1154d4dcf825b0b61e4087db49ccaa2065269f07a230231a76e83b15680cc7e9b755a5ca61a64c7ded4e +EBUILD mpich-3.1.3.ebuild 2536 SHA256 f54c1dbfdf626acc1e1314f2512869b8a2361e18e6d1377398fa3755e770aff1 SHA512 6de19ec1f8c1501d4e1ac9f2aaeaa80da5df419acc0c6c8fc098f05fa07f23661e8f196bdcb8219aa10a6d41646a38a8299d4038eb5b1c78e6b95bc6d98eecd4 WHIRLPOOL bda24b88afb86c05510c1ba505254de8f23633bd77a56c33f3305e7c51bbc52f5d1e99a1c02366db0406bfa0ab968ff69a9a3c9bedb95bf6982e2908a46f3de6 +EBUILD mpich-3.1.4.ebuild 2558 SHA256 66569145fbea940f4024dd474ab1c47e1e42fb830be27e7bfb74b4b0f8d9696e SHA512 af2234b1fd821b406f590580c49aa3762dcf478c6ea73ae57cdb748e4cbaeb4ec3c04345e6c06a83db77a122c4d90675253274b867a84b3aaf0150b9fffaa46a WHIRLPOOL c1b176c86cb4d997b286d660bb1bd8e4c6c4a378d076d658d3594f7e4eed6f994662b4e25ee70d2759a1b586a6ad9b37eb735d1f8c4c2bbae70759cdd1c51336 +EBUILD mpich-3.2-r1.ebuild 3121 SHA256 1ae18b8af6273b7b34afd853171dc3f2f60cd1ea530a4ea61890fe1a2af893bd SHA512 afd8bfe874c7da0340afc0c8d45b98297b8ff9976ecad4df3a653777fbf268ca1b3682b4c6f47277b8e63faae9581429d74a432b838aedd1192742ed9b5c6fa4 WHIRLPOOL 367a4a5522272994623c8dea49c864b475200a01a4d144210c7b32e74d4d965a9ee54069aa635961cc2735fef0d94a96a125ed0fc8e9b95aae3f65b92b1113da +EBUILD mpich-3.2.ebuild 2558 SHA256 66569145fbea940f4024dd474ab1c47e1e42fb830be27e7bfb74b4b0f8d9696e SHA512 af2234b1fd821b406f590580c49aa3762dcf478c6ea73ae57cdb748e4cbaeb4ec3c04345e6c06a83db77a122c4d90675253274b867a84b3aaf0150b9fffaa46a WHIRLPOOL c1b176c86cb4d997b286d660bb1bd8e4c6c4a378d076d658d3594f7e4eed6f994662b4e25ee70d2759a1b586a6ad9b37eb735d1f8c4c2bbae70759cdd1c51336 +MISC ChangeLog 3376 SHA256 15f949095b624bbca43e043da1aca775fbdd39c1cdb530301459d702d2b4c18e SHA512 0cc8e14234a0f12de2666177ef05865183fae3dedd7afa3e5a483ceeca75433713a1b275f76bd369df9ffe00d52b93d7e6b122a59c6910dd2549347b15e4a9c1 WHIRLPOOL ceccbe46797aefdb065336af5afaac3e2c093387813409cc0d5950b1e470d969ec617af8221fbfde65feb52e23efa25ca15b9a7a91dd04950d9174a8cac1cdfe +MISC ChangeLog-2015 1135 SHA256 ee778609b1259d3d52507e50cf682e9cb869a45a8dbbe471888cb25e8ab012bd SHA512 0c80fe92dd53bcf463fd3f8315597358f7f7ae6101ba628c233f3a803d6d50832514690e06eb6dca4de89cefe2a588b5d50e3ebf94f4ebe9310ffbf999a6ade4 WHIRLPOOL 1435577c019d8019e4c31203cd5716fa47add34e959b84f21a478dd6171e8f6b1da20b53b6aafdb2e68e37b37ad9fe5dfe2fd81ec8d5256d91ab8b97667beb98 +MISC metadata.xml 658 SHA256 36ba3a7882526eda76a522faddf61a9ecbfc6a6b7c3d5ee80930d8d335968bb5 SHA512 fb8427b6757ba0571f5f78ee71bfd80ebf9e0835a1016b3ef1f66d27a2022033118c7a1fbfe4011e591d321bae9df48c4e4554e3daaa1a3033bee74b5f4c08fe WHIRLPOOL c4f63d413cc3a6d1c8f5b5b4d1026e6ca17db071f719a91d9ce96b70255dd897ae948561250605d005ef34f1601c2e070c9f21c1e319541a10b3c6877a6d040a diff --git a/sys-cluster/mpich/metadata.xml b/sys-cluster/mpich/metadata.xml new file mode 100644 index 000000000000..6cbe440faf21 --- /dev/null +++ b/sys-cluster/mpich/metadata.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>jsbronder@gentoo.org</email> + <name>Justin Bronder</name> + </maintainer> + <maintainer type="person"> + <email>balaji@mcs.anl.gov</email> + <name>Pavan Balaji</name> + <description>Upstream Contact</description> + </maintainer> + <maintainer type="project"> + <email>cluster@gentoo.org</email> + <name>Gentoo Cluster Project</name> + </maintainer> + <use> + <flag name="mpi-threads">Enable MPI_THREAD_MULTIPLE</flag> + <flag name="romio">Build the ROMIO MPI-IO component</flag> + </use> +</pkgmetadata> diff --git a/sys-cluster/mpich/mpich-3.0.4.ebuild b/sys-cluster/mpich/mpich-3.0.4.ebuild new file mode 100644 index 000000000000..63dee55d2a0b --- /dev/null +++ b/sys-cluster/mpich/mpich-3.0.4.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +FORTRAN_NEEDED=fortran + +inherit fortran-2 + +MY_PV=${PV/_/} +DESCRIPTION="A high performance and portable MPI implementation" +HOMEPAGE="http://www.mpich.org/" +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="mpich" +KEYWORDS="amd64 hppa ppc ppc64 x86 ~amd64-linux ~x86-linux" +IUSE="+cxx doc fortran mpi-threads romio threads" + +COMMON_DEPEND=" + dev-libs/libaio + sys-apps/hwloc + romio? ( net-fs/nfs-utils )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND} + !sys-cluster/mpich2 + !sys-cluster/openmpi" + +S="${WORKDIR}"/${PN}-${MY_PV} + +pkg_setup() { + FORTRAN_STANDARD="77 90" + fortran-2_pkg_setup + + if use mpi-threads && ! use threads; then + ewarn "mpi-threads requires threads, assuming that's what you want" + fi +} + +src_prepare() { + # Using MPICHLIB_LDFLAGS doesn't seem to fully work. + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \ + src/packaging/pkgconfig/mpich.pc.in \ + src/env/*.in \ + || die +} + +src_configure() { + local c="--enable-shared" + + # 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. + + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=runtime" + 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 + + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}" + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}" + + export MPICHLIB_CFLAGS=${CFLAGS} + export MPICHLIB_CPPFLAGS=${CPPFLAGS} + export MPICHLIB_CXXFLAGS=${CXXFLAGS} + export MPICHLIB_FFLAGS=${FFLAGS} + export MPICHLIB_FCFLAGS=${FCFLAGS} + export MPICHLIB_LDFLAGS=${LDFLAGS} + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS + + econf ${c} \ + --with-pm=hydra \ + --disable-mpe \ + --disable-fast \ + --enable-smpcoll \ + --enable-versioning \ + --with-hwloc-prefix=/usr \ + $(use_enable romio) \ + $(use_enable cxx) \ + $(use_enable fortran f77) \ + $(use_enable fortran fc) +} + +src_test() { + emake -j1 check +} + +src_install() { + default + + dodir /usr/share/doc/${PF} + dodoc README{,.envvar} CHANGES RELEASE_NOTES + newdoc src/pm/hydra/README README.hydra + if use romio; then + newdoc src/mpi/romio/README README.romio + fi + + if ! use doc; then + rm -rf "${D}"usr/share/doc/${PF}/www* + fi +} diff --git a/sys-cluster/mpich/mpich-3.1.3.ebuild b/sys-cluster/mpich/mpich-3.1.3.ebuild new file mode 100644 index 000000000000..0ed79526c4a0 --- /dev/null +++ b/sys-cluster/mpich/mpich-3.1.3.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +FORTRAN_NEEDED=fortran + +inherit fortran-2 + +MY_PV=${PV/_/} +DESCRIPTION="A high performance and portable MPI implementation" +HOMEPAGE="http://www.mpich.org/" +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="mpich" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+cxx doc fortran mpi-threads romio threads" + +COMMON_DEPEND=" + dev-libs/libaio + >=sys-apps/hwloc-1.9 + romio? ( net-fs/nfs-utils )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND} + !sys-cluster/mpich2 + !sys-cluster/openmpi" + +S="${WORKDIR}"/${PN}-${MY_PV} + +pkg_setup() { + FORTRAN_STANDARD="77 90" + fortran-2_pkg_setup + + if use mpi-threads && ! use threads; then + ewarn "mpi-threads requires threads, assuming that's what you want" + fi +} + +src_prepare() { + # Using MPICHLIB_LDFLAGS doesn't seem to fully work. + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \ + src/packaging/pkgconfig/mpich.pc.in \ + src/env/*.in \ + || die +} + +src_configure() { + local c="--enable-shared" + + # 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. + + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=runtime" + 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 + + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}" + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}" + + export MPICHLIB_CFLAGS=${CFLAGS} + export MPICHLIB_CPPFLAGS=${CPPFLAGS} + export MPICHLIB_CXXFLAGS=${CXXFLAGS} + export MPICHLIB_FFLAGS=${FFLAGS} + export MPICHLIB_FCFLAGS=${FCFLAGS} + export MPICHLIB_LDFLAGS=${LDFLAGS} + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS + + econf ${c} \ + --with-pm=hydra \ + --disable-mpe \ + --disable-fast \ + --enable-smpcoll \ + --enable-versioning \ + --with-hwloc-prefix=/usr \ + $(use_enable romio) \ + $(use_enable cxx) \ + $(use_enable fortran f77) \ + $(use_enable fortran fc) +} + +src_test() { + emake -j1 check +} + +src_install() { + default + + dodir /usr/share/doc/${PF} + dodoc README{,.envvar} CHANGES RELEASE_NOTES + newdoc src/pm/hydra/README README.hydra + if use romio; then + newdoc src/mpi/romio/README README.romio + fi + + if ! use doc; then + rm -rf "${D}"usr/share/doc/${PF}/www* + fi +} diff --git a/sys-cluster/mpich/mpich-3.1.4.ebuild b/sys-cluster/mpich/mpich-3.1.4.ebuild new file mode 100644 index 000000000000..81b842d0f03e --- /dev/null +++ b/sys-cluster/mpich/mpich-3.1.4.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +FORTRAN_NEEDED=fortran + +inherit fortran-2 + +MY_PV=${PV/_/} +DESCRIPTION="A high performance and portable MPI implementation" +HOMEPAGE="http://www.mpich.org/" +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="mpich" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+cxx doc fortran mpi-threads romio threads" + +COMMON_DEPEND=" + dev-libs/libaio + >=sys-apps/hwloc-1.9 + romio? ( net-fs/nfs-utils )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND} + !sys-cluster/mpich2 + !sys-cluster/openmpi" + +S="${WORKDIR}"/${PN}-${MY_PV} + +pkg_setup() { + FORTRAN_STANDARD="77 90" + fortran-2_pkg_setup + + if use mpi-threads && ! use threads; then + ewarn "mpi-threads requires threads, assuming that's what you want" + fi +} + +src_prepare() { + # Using MPICHLIB_LDFLAGS doesn't seem to fully work. + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \ + src/packaging/pkgconfig/mpich.pc.in \ + src/env/*.in \ + || die +} + +src_configure() { + local c="--enable-shared" + local hydra_c="--with-hwloc-prefix=/usr" + + # 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. Hence the separate + # local vars. + + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=runtime" + 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 + + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}" + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}" + + export MPICHLIB_CFLAGS=${CFLAGS} + export MPICHLIB_CPPFLAGS=${CPPFLAGS} + export MPICHLIB_CXXFLAGS=${CXXFLAGS} + export MPICHLIB_FFLAGS=${FFLAGS} + export MPICHLIB_FCFLAGS=${FCFLAGS} + export MPICHLIB_LDFLAGS=${LDFLAGS} + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS + + econf ${c} \ + --with-pm=hydra \ + --disable-fast \ + --enable-versioning \ + ${hydra_c} + $(use_enable romio) \ + $(use_enable cxx) \ + $(use_enable fortran f77) \ + $(use_enable fortran fc) +} + +src_test() { + emake -j1 check +} + +src_install() { + default + + dodir /usr/share/doc/${PF} + dodoc README{,.envvar} CHANGES RELEASE_NOTES + newdoc src/pm/hydra/README README.hydra + if use romio; then + newdoc src/mpi/romio/README README.romio + fi + + if ! use doc; then + rm -rf "${D}"usr/share/doc/${PF}/www* + fi +} diff --git a/sys-cluster/mpich/mpich-3.2-r1.ebuild b/sys-cluster/mpich/mpich-3.2-r1.ebuild new file mode 100644 index 000000000000..7a865b38f333 --- /dev/null +++ b/sys-cluster/mpich/mpich-3.2-r1.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +FORTRAN_NEEDED=fortran +FORTRAN_STANDARD="77 90" + +inherit fortran-2 multilib-minimal + +MY_PV=${PV/_/} +DESCRIPTION="A high performance and portable MPI implementation" +HOMEPAGE="http://www.mpich.org/" +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="mpich" +KEYWORDS="amd64 ~arm64 hppa ppc ppc64 x86 ~amd64-linux ~x86-linux" +IUSE="+cxx doc fortran mpi-threads romio threads" + +COMMON_DEPEND=" + >=dev-libs/libaio-0.3.109-r5[${MULTILIB_USEDEP}] + >=sys-apps/hwloc-1.10.0-r2[${MULTILIB_USEDEP}] + romio? ( net-fs/nfs-utils )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND} + !sys-cluster/mpich2 + !sys-cluster/openmpi + !sys-cluster/nullmpi" + +S="${WORKDIR}"/${PN}-${MY_PV} + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/mpicxx.h + /usr/include/mpi.h + /usr/include/opa_config.h +) + +src_prepare() { + default + + # Using MPICHLIB_LDFLAGS doesn't seem to fully work. + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \ + src/packaging/pkgconfig/mpich.pc.in \ + src/env/*.in \ + || die +} + +multilib_src_configure() { + # 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. Hence the separate + # local vars. + + local c= + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=runtime" + 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 + + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}" + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}" + + export MPICHLIB_CFLAGS="${CFLAGS}" + export MPICHLIB_CPPFLAGS="${CPPFLAGS}" + export MPICHLIB_CXXFLAGS="${CXXFLAGS}" + export MPICHLIB_FFLAGS="${FFLAGS}" + export MPICHLIB_FCFLAGS="${FCFLAGS}" + export MPICHLIB_LDFLAGS="${LDFLAGS}" + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS + + ECONF_SOURCE=${S} econf \ + --enable-shared \ + --with-hwloc-prefix="${EPREFIX}/usr" \ + ${c} \ + --with-pm=hydra \ + --disable-fast \ + --enable-versioning \ + $(use_enable romio) \ + $(use_enable cxx) \ + $(multilib_native_use_enable fortran fortran all) +} + +multilib_src_test() { + emake -j1 check +} + +multilib_src_install() { + default + + # fortran header cannot be wrapped (bug #540508), workaround part 1 + if use fortran; then + if multilib_is_native_abi; then + mkdir "${T}"/fortran || die + mv "${ED}"usr/include/mpif* "${T}"/fortran || die + mv "${ED}"usr/include/*.mod "${T}"/fortran || die + else + rm "${ED}"usr/include/mpif* "${ED}"usr/include/*.mod || die + fi + fi +} + +multilib_src_install_all() { + # fortran header cannot be wrapped (bug #540508), workaround part 2 + if use fortran; then + mv "${T}"/fortran/* "${ED}"usr/include || die + fi + + einstalldocs + newdoc src/pm/hydra/README README.hydra + if use romio; then + newdoc src/mpi/romio/README README.romio + fi + + if ! use doc; then + rm -rf "${ED}"usr/share/doc/${PF}/www* || die + fi +} diff --git a/sys-cluster/mpich/mpich-3.2.ebuild b/sys-cluster/mpich/mpich-3.2.ebuild new file mode 100644 index 000000000000..81b842d0f03e --- /dev/null +++ b/sys-cluster/mpich/mpich-3.2.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +FORTRAN_NEEDED=fortran + +inherit fortran-2 + +MY_PV=${PV/_/} +DESCRIPTION="A high performance and portable MPI implementation" +HOMEPAGE="http://www.mpich.org/" +SRC_URI="http://www.mpich.org/static/downloads/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="mpich" +KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+cxx doc fortran mpi-threads romio threads" + +COMMON_DEPEND=" + dev-libs/libaio + >=sys-apps/hwloc-1.9 + romio? ( net-fs/nfs-utils )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + sys-devel/libtool" + +RDEPEND="${COMMON_DEPEND} + !sys-cluster/mpich2 + !sys-cluster/openmpi" + +S="${WORKDIR}"/${PN}-${MY_PV} + +pkg_setup() { + FORTRAN_STANDARD="77 90" + fortran-2_pkg_setup + + if use mpi-threads && ! use threads; then + ewarn "mpi-threads requires threads, assuming that's what you want" + fi +} + +src_prepare() { + # Using MPICHLIB_LDFLAGS doesn't seem to fully work. + sed -i 's| *@WRAPPER_LDFLAGS@ *||' \ + src/packaging/pkgconfig/mpich.pc.in \ + src/env/*.in \ + || die +} + +src_configure() { + local c="--enable-shared" + local hydra_c="--with-hwloc-prefix=/usr" + + # 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. Hence the separate + # local vars. + + if use mpi-threads; then + # MPI-THREAD requries threading. + c="${c} --with-thread-package=pthreads" + c="${c} --enable-threads=runtime" + 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 + + c="${c} --sysconfdir=${EPREFIX}/etc/${PN}" + c="${c} --docdir=${EPREFIX}/usr/share/doc/${PF}" + + export MPICHLIB_CFLAGS=${CFLAGS} + export MPICHLIB_CPPFLAGS=${CPPFLAGS} + export MPICHLIB_CXXFLAGS=${CXXFLAGS} + export MPICHLIB_FFLAGS=${FFLAGS} + export MPICHLIB_FCFLAGS=${FCFLAGS} + export MPICHLIB_LDFLAGS=${LDFLAGS} + unset CFLAGS CPPFLAGS CXXFLAGS FFLAGS FCFLAGS LDFLAGS + + econf ${c} \ + --with-pm=hydra \ + --disable-fast \ + --enable-versioning \ + ${hydra_c} + $(use_enable romio) \ + $(use_enable cxx) \ + $(use_enable fortran f77) \ + $(use_enable fortran fc) +} + +src_test() { + emake -j1 check +} + +src_install() { + default + + dodir /usr/share/doc/${PF} + dodoc README{,.envvar} CHANGES RELEASE_NOTES + newdoc src/pm/hydra/README README.hydra + if use romio; then + newdoc src/mpi/romio/README README.romio + fi + + if ! use doc; then + rm -rf "${D}"usr/share/doc/${PF}/www* + fi +} |