public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] gentoo-x86 commit in sys-cluster/mpich2: mpich2-1.2.1_p1-r1.ebuild ChangeLog mpich2-1.2.1_p1.ebuild
@ 2010-08-05  4:03 Justin Bronder (jsbronder)
  0 siblings, 0 replies; only message in thread
From: Justin Bronder (jsbronder) @ 2010-08-05  4:03 UTC (permalink / raw
  To: gentoo-commits

jsbronder    10/08/05 04:03:09

  Modified:             ChangeLog
  Added:                mpich2-1.2.1_p1-r1.ebuild
  Removed:              mpich2-1.2.1_p1.ebuild
  Log:
  Fix #313045, add missing libs during linking
  (Portage version: 2.2_rc67/cvs/Linux x86_64)

Revision  Changes    Path
1.57                 sys-cluster/mpich2/ChangeLog

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/mpich2/ChangeLog?rev=1.57&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/mpich2/ChangeLog?rev=1.57&content-type=text/plain
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/mpich2/ChangeLog?r1=1.56&r2=1.57

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/ChangeLog,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -r1.56 -r1.57
--- ChangeLog	8 Jul 2010 12:58:23 -0000	1.56
+++ ChangeLog	5 Aug 2010 04:03:09 -0000	1.57
@@ -1,6 +1,13 @@
 # ChangeLog for sys-cluster/mpich2
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/ChangeLog,v 1.56 2010/07/08 12:58:23 arfrever Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/ChangeLog,v 1.57 2010/08/05 04:03:09 jsbronder Exp $
+
+*mpich2-1.2.1_p1-r1 (05 Aug 2010)
+
+  05 Aug 2010; Justin Bronder <jsbronder@gentoo.org>
+  -mpich2-1.2.1_p1.ebuild, +mpich2-1.2.1_p1-r1.ebuild,
+  +files/mpich2-1.2.1-fix-missing-libs.patch:
+  Fix #313045, add missing libs during linking
 
   08 Jul 2010; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
   mpich2-1.2.1_p1.ebuild:



1.1                  sys-cluster/mpich2/mpich2-1.2.1_p1-r1.ebuild

file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/mpich2/mpich2-1.2.1_p1-r1.ebuild?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-cluster/mpich2/mpich2-1.2.1_p1-r1.ebuild?rev=1.1&content-type=text/plain

Index: mpich2-1.2.1_p1-r1.ebuild
===================================================================
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-cluster/mpich2/mpich2-1.2.1_p1-r1.ebuild,v 1.1 2010/08/05 04:03:08 jsbronder Exp $

EAPI=2
PYTHON_DEPEND="2"

inherit eutils fortran python

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 pvfs2 threads romio mpi-threads"

COMMON_DEPEND="dev-libs/libaio
	romio? ( net-fs/nfs-utils )
	pvfs2? ( >=sys-cluster/pvfs2-2.7.0 )"

DEPEND="${COMMON_DEPEND}
	dev-lang/perl
	sys-devel/libtool"

RDEPEND="${COMMON_DEPEND}
	!media-sound/mpd
	!sys-cluster/openmpi
	!sys-cluster/lam-mpi"

S="${WORKDIR}"/${PN}-${MY_PV}

pkg_setup() {
	python_set_active_version 2
	python_pkg_setup

	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
	MPD_CONF_FILE_DIR=/etc/${PN}
}

src_prepare() {
	# Upstream trunk, r5843
	epatch "${FILESDIR}"/0001-MPD_CONF_FILE-should-be-readable.patch
	# Upstream trunk, r5844
	epatch "${FILESDIR}"/0002-mpd_conf_file-search-order.patch
	# Upstream trunk, r5845
	epatch "${FILESDIR}"/0003-Fix-pkgconfig-for-mpich2-ch3-v1.2.1.patch
	# Upstream trunk, r6848  #313045
	epatch "${FILESDIR}"/mpich2-1.2.1-fix-missing-libs.patch

	# We need f90 to include the directory with mods, and to
	# fix hardcoded paths for src_test()
	sed -i \
		-e "s,F90FLAGS\( *\)=,F90FLAGS\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-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-f90";;
	    g77)
			c="${c} --enable-f77 --disable-f90";;
	esac

	if use pvfs2; then
		# nfs and ufs are default.
	    romio_conf="--with-file-system=pvfs2+nfs+ufs --with-pvfs2=/usr"
	fi

	c="${c} --sysconfdir=/etc/${PN}"
	econf ${c} ${romio_conf} \
		--docdir=/usr/share/doc/${PF} \
		--with-pm=mpd:hydra:gforker \
		--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 \
		FC="${S}"/bin/mpif77 \
		F90="${S}"/bin/mpif90 \
		F90FLAGS="${F90FLAGS} -I${S}/src/binding/f90/" \
		testing
	rc=$?

	"${S}"/bin/mpdallexit || kill $(<"${T}"/mpd.pid)
	return ${rc}
}

src_install() {
	local f
	emake DESTDIR="${D}" install || die

	dodir ${MPD_CONF_FILE_DIR}
	insinto ${MPD_CONF_FILE_DIR}
	doins "${FILESDIR}"/mpd.conf || die

	dodir /usr/share/doc/${PF}
	dodoc COPYRIGHT README CHANGES RELEASE_NOTES || die
	newdoc src/pm/mpd/README README.mpd || die
	if use romio; then
		newdoc src/mpi/romio/README README.romio || die
	fi

	if ! use doc; then
		rm -rf "${D}"/usr/share/doc/www*
	else
		dodir /usr/share/doc/${PF}/www
		mv "${D}"/usr/share/doc/www*/* "${D}"/usr/share/doc/${PF}/www/
	fi

	# 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}
}






^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-08-05  4:12 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-05  4:03 [gentoo-commits] gentoo-x86 commit in sys-cluster/mpich2: mpich2-1.2.1_p1-r1.ebuild ChangeLog mpich2-1.2.1_p1.ebuild Justin Bronder (jsbronder)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox