public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-03 12:37 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-03 12:37 UTC (permalink / raw
  To: gentoo-commits

commit:     7240c8e8121265ef48a640ec60ceb353e968ec72
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Mar  3 10:23:36 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Mar  3 10:23:36 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=7240c8e8

reworked configure function

Tried to improve readability and avoid myconf array where possible.
Thanks for the hints by bicatali.

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |  160 +++++++++++------------------
 1 files changed, 58 insertions(+), 102 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 178b6bc..d82206c 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -2,7 +2,7 @@
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
-EAPI=3
+EAPI=4
 
 inherit flag-o-matic fortran-2 toolchain-funcs
 
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="complex-scalars cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
+IUSE="complex-scalars cxx debug doc fortran hdf5 hypre metis mpi X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
@@ -31,12 +31,9 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-S="${WORKDIR}/${MY_P}"
+REQUIRED_USE="hypre? ( cxx mpi )"
 
-if use hypre; then
-	use cxx || die "hypre needs cxx, please enable cxx or disable hypre use flag"
-	use mpi || die "hypre needs mpi, please enable mpi or disable hypre use flag"
-fi
+S="${WORKDIR}/${MY_P}"
 
 src_prepare(){
 	epatch "${FILESDIR}/${PN}-configure-pic.patch"
@@ -44,111 +41,72 @@ src_prepare(){
 }
 
 src_configure(){
+	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+	petsc_enable(){
+		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+	}
+	# select between configure options depending on use flag
+	pestc_select() {
+		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+	}
+	# add info about library include dirs and lib file
+	petsc_lib_info(){
+		use "$1" && echo "--with-${4:-$1}-include=$2 --with-${4:-$1}-lib=$3"
+	}
+
 	local mylang
 	local myopt
-	local myconf
 
 	use cxx && mylang="cxx" || mylang="c"
 	use debug && myopt="debug" || myopt="opt"
 
-	export PETSC_DIR="${S}" || die
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
-
-	myconf[10]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
-	myconf[11]="CFLAGS=${CFLAGS}"
-	myconf[12]="CXXFLAGS=${CXXFLAGS}"
-	myconf[13]="LDFLAGS=${LDFLAGS}"
-	myconf[14]="--with-windows-graphics=0"
-	myconf[15]="--with-matlab=0"
-	myconf[16]="--with-python=0"
-	myconf[17]="--with-clanguage=${mylang}"
-	myconf[18]="--with-single-library=1"
-	myconf[19]="--with-petsc-arch=${PETSC_ARCH}"
-	myconf[20]="--with-precision=double"
-	myconf[21]="--with-gnu-compilers=1"
-	myconf[22]="--with-cmake=/usr/bin/cmake"
-	use amd64 \
-		&& myconf[23]="--with-64-bit-pointers=1" \
-		|| myconf[23]="--with-64-bit-pointers=0"
-	use cxx \
-		&& myconf[24]="--with-c-support=1"
-	use amd64 \
-		&& myconf[25]="--with-64-bit-indices=1" \
-		|| myconf[25]="--with-64-bit-indices=0"
-
-	if use mpi; then
-		myconf[30]="--with-cc=/usr/bin/mpicc"
-		myconf[31]="--with-cxx=/usr/bin/mpicxx"
-		use fortran && myconf[32]="--with-fc=/usr/bin/mpif77"
-		myconf[33]="--with-mpi=1"
-		myconf[34]="--with-mpi-compilers=1"
-	else
-		myconf[30]="--with-cc=$(tc-getCC)"
-		myconf[31]="--with-cxx=$(tc-getCXX)"
-		use fortran && myconf[32]="--with-fc=$(tc-getF77)"
-		myconf[33]="--with-mpi=0"
-	fi
+	# environmental variables expected by petsc during build
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
 
-	use X \
-		&& myconf[40]="--with-X=1" \
-		|| myconf[40]="--with-X=0"
-	use static-libs \
-		&& myconf[41]="--with-shared-libraries=0" \
-		|| myconf[41]="--with-shared-libraries=1"
-	use fortran \
-		&& myconf[43]="--with-fortran=1" \
-		|| myconf[43]="--with-fortran=0"
+	# flags difficult to pass due to correct quoting of spaces
+	local myconf
+	myconf[1]="CFLAGS=${CFLAGS}"
+	myconf[2]="CXXFLAGS=${CXXFLAGS}"
+	myconf[3]="LDFLAGS=${LDFLAGS}"
+	myconf[4]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
 
 	if use debug; then
 		strip-flags
 		filter-flags -O*
-		myconf[44]="--with-debugging=1"
-	else
-		myconf[44]="--with-debugging=0"
-	fi
-
-	if use hypre; then
-		# hypre cannot handle 64 bit indices, therefore disabled
-		myconf[25]="--with-64-bit-indices=0"
-		myconf[52]="--with-hypre=1"
-		myconf[53]="--with-hypre-include=/usr/include/hypre"
-		use static-libs \
-			&& myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.a" \
-			|| myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.so"
-	else
-		myconf[52]="--with-hypre=0"
-	fi
-
-	if use metis; then
-		# parmetis cannot handle 64 bit indices, therefore disabled
-		myconf[25]="--with-64-bit-indices=0"
-		myconf[61]="--with-parmetis=1"
-		myconf[62]="--with-parmetis-include=/usr/include/parmetis"
-		myconf[63]="--with-parmetis-lib=/usr/$(get_libdir)/libparmetis.so"
-	else
-		myconf[61]="--with-parmetis=0"
-	fi
-
-	if use hdf5; then
-		myconf[71]="--with-hdf5=1"
-		myconf[72]="--with-hdf5-include=/usr/include"
-		myconf[73]="--with-hdf5-lib=/usr/$(get_libdir)/libhdf5.so"
-	else
-		myconf[71]="--with-hdf5=0"
-	fi
-
-	myconf[81]="--with-scotch=0"
-
-	if use complex-scalars; then
-		# cannot enable C support with complex scalars
-		# (cannot even set configure option to zero!)
-		myconf[23]=""
-		myconf[82]="--with-scalar-type=complex"
 	fi
 
-	einfo "Configure options: ${myconf[@]}"
-	python "${S}/config/configure.py" "${myconf[@]}" \
-		|| die "PETSc configuration failed"
+	# run petsc configure script
+	python "${S}/config/configure.py" \
+		--prefix="${EPREFIX}/usr" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(petsc_enable cxx c-support) \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable fortran) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc /usr/bin/mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx /usr/bin/mpicxx $(tc-getCXX)) \
+		$(use fortran && $(pestc_select mpi fc /usr/bin/mpif77 $(tc-getF77))) \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_enable X) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-python=0 \
+		--with-cmake=/usr/bin/cmake \
+		$(petsc_enable hdf5) \
+		$(petsc_lib_info hdf5 /usr/include /usr/$(get_libdir)/libhdf5.so) \
+		$(petsc_enable hypre) \
+		$(petsc_lib_info hypre /usr/include/hypre /usr/$(get_libdir)/libHYPRE.so) \
+		$(petsc_enable metis parmetis) \
+		$(petsc_lib_info metis /usr/include/parmetis /usr/$(get_libdir)/libparmetis.so parmetis) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-scotch=0 \
+		"${myconf[@]}"
 }
 
 src_install(){
@@ -188,9 +146,7 @@ src_install(){
 		dohtml -r docs/*.html docs/changes docs/manualpages
 	fi
 
-	use static-libs \
-		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
-		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
+	dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
 }
 
 pkg_postinst() {



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-07-12 12:12 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-07-12 12:12 UTC (permalink / raw
  To: gentoo-commits

commit:     b3ce34b463fb20b65ade548d959fae9ac81ed606
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 12 12:12:08 2019 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Jul 12 12:12:08 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=b3ce34b4

sci-mathematics/petsc: switch back to EAPI 6 for the time being

Package-Manager: Portage-2.3.68, Repoman-2.3.16
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.11.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sci-mathematics/petsc/petsc-3.11.3.ebuild b/sci-mathematics/petsc/petsc-3.11.3.ebuild
index 59a9cff21..99676386d 100644
--- a/sci-mathematics/petsc/petsc-3.11.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.11.3.ebuild
@@ -1,7 +1,7 @@
 # Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
 


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-07-12 11:19 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-07-12 11:19 UTC (permalink / raw
  To: gentoo-commits

commit:     0b1e1d868ca34c28fcfbcb5e30d2ed0e63c94039
Author:     Bernd Waibel <waebbl <AT> gmail <DOT> com>
AuthorDate: Fri Nov  9 16:36:54 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Jul 12 10:55:21 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=0b1e1d86

sci-mathematics/petsc: fix blas configuration error

* add blas to call to pkg-config for blas/lapack
* make EAPI 7 compatible, remove versionator.eclass
* change --with-cmake= variable to avoid warning

Thanks to @ycoudier for hint on pkg-config

Suggested-by: @ycoudier
Closes: https://bugs.gentoo.org/669040
Closes: https://github.com/gentoo/sci/issues/892
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Bernd Waibel <waebbl <AT> gmail.com>
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.10.0.ebuild | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.10.0.ebuild b/sci-mathematics/petsc/petsc-3.10.0.ebuild
index b67536ef6..80dfd5255 100644
--- a/sci-mathematics/petsc/petsc-3.10.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.10.0.ebuild
@@ -1,17 +1,15 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
+inherit flag-o-matic fortran-2 python-any-r1 toolchain-funcs
 
 DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
 HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${P}.tar.gz"
 
 LICENSE="BSD-2"
 SLOT="0"
@@ -54,8 +52,6 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-S="${WORKDIR}/${MY_P}"
-
 PATCHES=(
 	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
 	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
@@ -143,7 +139,7 @@ src_configure() {
 		--with-petsc-arch=${PETSC_ARCH} \
 		--with-precision=double \
 		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs blas lapack)" \
 		$(petsc_enable debug debugging) \
 		$(petsc_enable mpi) \
 		$(petsc_select mpi cc mpicc $(tc-getCC)) \
@@ -154,7 +150,7 @@ src_configure() {
 		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
-		--with-cmake=cmake \
+		--with-cmake:BOOL=1 \
 		$(petsc_enable threads pthread) \
 		$(petsc_with afterimage afterimage \
 			/usr/include/libAfterImage -lAfterImage) \


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-07-12 11:19 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-07-12 11:19 UTC (permalink / raw
  To: gentoo-commits

commit:     fcbf3687c7f71449e326be09015c1e7f6fb6d655
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 12 10:53:40 2019 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Jul 12 10:55:24 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=fcbf3687

sci-mathematics/petsc: also apply patches to 3.10.4 and 3.11.1

Package-Manager: Portage-2.3.68, Repoman-2.3.16
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.10.4.ebuild | 14 +++++---------
 sci-mathematics/petsc/petsc-3.11.1.ebuild | 14 +++++---------
 2 files changed, 10 insertions(+), 18 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.10.4.ebuild b/sci-mathematics/petsc/petsc-3.10.4.ebuild
index bc9a4b110..418196a8d 100644
--- a/sci-mathematics/petsc/petsc-3.10.4.ebuild
+++ b/sci-mathematics/petsc/petsc-3.10.4.ebuild
@@ -5,13 +5,11 @@ EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
+inherit flag-o-matic fortran-2 python-any-r1 toolchain-funcs
 
 DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
 HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${P}.tar.gz"
 
 LICENSE="BSD-2"
 SLOT="0"
@@ -54,8 +52,6 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-S="${WORKDIR}/${MY_P}"
-
 PATCHES=(
 	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
 	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
@@ -83,7 +79,7 @@ petsc_with() {
 			shift 3
 			myuse="${myuse} --with-${p}-lib=$@"
 		else
-			myuse="${myuse}"
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
 		fi
 	else
 		myuse="--with-${p}=0"
@@ -143,7 +139,7 @@ src_configure() {
 		--with-petsc-arch=${PETSC_ARCH} \
 		--with-precision=double \
 		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs blas lapack)" \
 		$(petsc_enable debug debugging) \
 		$(petsc_enable mpi) \
 		$(petsc_select mpi cc mpicc $(tc-getCC)) \
@@ -154,7 +150,7 @@ src_configure() {
 		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
-		--with-cmake=true \
+		--with-cmake:BOOL=1 \
 		$(petsc_enable threads pthread) \
 		$(petsc_with afterimage afterimage \
 			/usr/include/libAfterImage -lAfterImage) \

diff --git a/sci-mathematics/petsc/petsc-3.11.1.ebuild b/sci-mathematics/petsc/petsc-3.11.1.ebuild
index e6517c680..99676386d 100644
--- a/sci-mathematics/petsc/petsc-3.11.1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.11.1.ebuild
@@ -5,13 +5,11 @@ EAPI=6
 
 PYTHON_COMPAT=( python2_7 )
 
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
+inherit flag-o-matic fortran-2 python-any-r1 toolchain-funcs
 
 DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
 HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${P}.tar.gz"
 
 LICENSE="BSD-2"
 SLOT="0"
@@ -54,8 +52,6 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-S="${WORKDIR}/${MY_P}"
-
 PATCHES=(
 	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
 	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
@@ -83,7 +79,7 @@ petsc_with() {
 			shift 3
 			myuse="${myuse} --with-${p}-lib=$@"
 		else
-			myuse="${myuse}"
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
 		fi
 	else
 		myuse="--with-${p}=0"
@@ -143,7 +139,7 @@ src_configure() {
 		--with-petsc-arch=${PETSC_ARCH} \
 		--with-precision=double \
 		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs blas lapack)" \
 		$(petsc_enable debug debugging) \
 		$(petsc_enable mpi) \
 		$(petsc_select mpi cc mpicc $(tc-getCC)) \
@@ -154,7 +150,7 @@ src_configure() {
 		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
-		--with-cmake=true \
+		--with-cmake:BOOL=1 \
 		$(petsc_enable threads pthread) \
 		$(petsc_with afterimage afterimage \
 			/usr/include/libAfterImage -lAfterImage) \


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-07-12 11:19 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-07-12 11:19 UTC (permalink / raw
  To: gentoo-commits

commit:     817744adda580e8ccdbc83ec6b29e00426f83591
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 12 10:58:53 2019 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Jul 12 10:58:53 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=817744ad

sci-mathematics/petsc: version bump to 3.11.3

Package-Manager: Portage-2.3.68, Repoman-2.3.16
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.11.3.ebuild | 191 ++++++++++++++++++++++++++++++
 1 file changed, 191 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.11.3.ebuild b/sci-mathematics/petsc/petsc-3.11.3.ebuild
new file mode 100644
index 000000000..59a9cff21
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.11.3.ebuild
@@ -0,0 +1,191 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit flag-o-matic fortran-2 python-any-r1 toolchain-funcs
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs blas lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake:BOOL=1 \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-05-13 15:02 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-05-13 15:02 UTC (permalink / raw
  To: gentoo-commits

commit:     2fffe2a798dc609fed219854bfd8a74a7470f250
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon May 13 14:49:54 2019 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon May 13 15:02:21 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=2fffe2a7

sci-mathematics/petsc: version bump to 3.11.1

Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.11.1.ebuild | 195 ++++++++++++++++++++++++++++++
 1 file changed, 195 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.11.1.ebuild b/sci-mathematics/petsc/petsc-3.11.1.ebuild
new file mode 100644
index 000000000..e6517c680
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.11.1.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=true \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2019-03-09  6:07 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2019-03-09  6:07 UTC (permalink / raw
  To: gentoo-commits

commit:     f05910d7ef4b0be4822d8ceb59ba9606edaf14b4
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Sat Mar  9 05:41:08 2019 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Sat Mar  9 06:07:10 2019 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=f05910d7

sci-mathematics/petsc: version bump to 3.10.4

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Matthias Maier <tamiko <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.10.4.ebuild | 196 ++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.10.4.ebuild b/sci-mathematics/petsc/petsc-3.10.4.ebuild
new file mode 100644
index 000000000..bc9a4b110
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.10.4.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=true \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dodoc docs/developers.pdf docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-09-17 15:41 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-09-17 15:41 UTC (permalink / raw
  To: gentoo-commits

commit:     ee52cea13773352cc13756c29cd0703acf61996d
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 15:13:55 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 15:13:55 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=ee52cea1

sci-mathematics/petsc: version bump to 3.9.4

Package-Manager: Portage-2.3.49, Repoman-2.3.10

 sci-mathematics/petsc/petsc-3.9.4.ebuild | 196 +++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.9.4.ebuild b/sci-mathematics/petsc/petsc-3.9.4.ebuild
new file mode 100644
index 000000000..1755e242a
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.9.4.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dodoc docs/developers.pdf docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-09-17 15:41 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-09-17 15:41 UTC (permalink / raw
  To: gentoo-commits

commit:     4e74b4feb6ee3dfcc3b6950869b21ef2c0cb1572
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 15:26:19 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 15:26:19 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=4e74b4fe

sci-mathematics/petsc: version bump to 3.10.0

Package-Manager: Portage-2.3.49, Repoman-2.3.10

 sci-mathematics/petsc/petsc-3.10.0.ebuild | 196 ++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.10.0.ebuild b/sci-mathematics/petsc/petsc-3.10.0.ebuild
new file mode 100644
index 000000000..1755e242a
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.10.0.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dodoc docs/developers.pdf docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-09-17 15:41 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-09-17 15:41 UTC (permalink / raw
  To: gentoo-commits

commit:     e9aa00ee0ca860b1047a9d25b83e4d2cc06269f9
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 17 15:14:18 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Sep 17 15:14:18 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=e9aa00ee

sci-mathematics/petsc: drop old 3.9*

Package-Manager: Portage-2.3.49, Repoman-2.3.10

 sci-mathematics/petsc/petsc-3.9.2.ebuild | 196 -------------------------------
 sci-mathematics/petsc/petsc-3.9.3.ebuild | 196 -------------------------------
 2 files changed, 392 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.9.2.ebuild b/sci-mathematics/petsc/petsc-3.9.2.ebuild
deleted file mode 100644
index 1755e242a..000000000
--- a/sci-mathematics/petsc/petsc-3.9.2.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	complex-scalars? ( !hypre !superlu )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi !superlu )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	superlu? ( !hypre )
-"
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	metis? ( >=sci-libs/parmetis-4 )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( >=sci-libs/superlu-5 )
-	X? ( x11-libs/libX11 )
-"
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
-	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
-)
-
-src_prepare() {
-	default
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-petsc_enable() {
-	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-}
-# add external library:
-# petsc_with use_flag libname libdir
-# petsc_with use_flag libname include linking_libs
-petsc_with() {
-	local myuse p=${2:-${1}}
-	if use ${1}; then
-		myuse="--with-${p}=1"
-		if [[ $# -ge 4 ]]; then
-			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-			shift 3
-			myuse="${myuse} --with-${p}-lib=$@"
-		else
-			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-		fi
-	else
-		myuse="--with-${p}=0"
-	fi
-	echo ${myuse}
-}
-
-# select between configure options depending on use flag
-petsc_select() {
-	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-	# if mpi is built with knem support it needs /dev/knem too
-	addpredict /dev/knem
-
-	# configureMPITypes with openmpi-2* insists on accessing the scaling
-	# governor rw.
-	addpredict /sys/devices/system/cpu/
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on CXX builds is enabled if possible i.e. when not using
-	# complex scalars (no complex type for both available at the same time)
-
-	econf \
-		scrollOutput=1 \
-		FFLAGS="${FFLAGS} -fPIC" \
-		CFLAGS="${CFLAGS} -fPIC" \
-		CXXFLAGS="${CXXFLAGS} -fPIC" \
-		LDFLAGS="${LDFLAGS}" \
-		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-}
-
-src_install() {
-	emake DESTDIR="${ED}" install
-
-	# add PETSC_DIR to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
-	EOF
-	doenvd 99petsc
-
-	if use doc ; then
-		dodoc docs/developers.pdf docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}

diff --git a/sci-mathematics/petsc/petsc-3.9.3.ebuild b/sci-mathematics/petsc/petsc-3.9.3.ebuild
deleted file mode 100644
index 1755e242a..000000000
--- a/sci-mathematics/petsc/petsc-3.9.3.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	complex-scalars? ( !hypre !superlu )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi !superlu )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	superlu? ( !hypre )
-"
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	metis? ( >=sci-libs/parmetis-4 )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( >=sci-libs/superlu-5 )
-	X? ( x11-libs/libX11 )
-"
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
-	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
-)
-
-src_prepare() {
-	default
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-petsc_enable() {
-	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-}
-# add external library:
-# petsc_with use_flag libname libdir
-# petsc_with use_flag libname include linking_libs
-petsc_with() {
-	local myuse p=${2:-${1}}
-	if use ${1}; then
-		myuse="--with-${p}=1"
-		if [[ $# -ge 4 ]]; then
-			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-			shift 3
-			myuse="${myuse} --with-${p}-lib=$@"
-		else
-			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-		fi
-	else
-		myuse="--with-${p}=0"
-	fi
-	echo ${myuse}
-}
-
-# select between configure options depending on use flag
-petsc_select() {
-	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-	# if mpi is built with knem support it needs /dev/knem too
-	addpredict /dev/knem
-
-	# configureMPITypes with openmpi-2* insists on accessing the scaling
-	# governor rw.
-	addpredict /sys/devices/system/cpu/
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on CXX builds is enabled if possible i.e. when not using
-	# complex scalars (no complex type for both available at the same time)
-
-	econf \
-		scrollOutput=1 \
-		FFLAGS="${FFLAGS} -fPIC" \
-		CFLAGS="${CFLAGS} -fPIC" \
-		CXXFLAGS="${CXXFLAGS} -fPIC" \
-		LDFLAGS="${LDFLAGS}" \
-		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-}
-
-src_install() {
-	emake DESTDIR="${ED}" install
-
-	# add PETSC_DIR to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
-	EOF
-	doenvd 99petsc
-
-	if use doc ; then
-		dodoc docs/developers.pdf docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-08-31 15:39 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-08-31 15:39 UTC (permalink / raw
  To: gentoo-commits

commit:     aee6b7af41bd5cf104e923ec8dd68db883bcdb80
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 31 03:27:16 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Aug 31 03:27:16 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=aee6b7af

sci-mathematics/petsc: version bump to 3.9.3

Package-Manager: Portage-2.3.48, Repoman-2.3.10

 sci-mathematics/petsc/petsc-3.9.3.ebuild | 196 +++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.9.3.ebuild b/sci-mathematics/petsc/petsc-3.9.3.ebuild
new file mode 100644
index 000000000..1755e242a
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.9.3.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dodoc docs/developers.pdf docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-08-31 15:39 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-08-31 15:39 UTC (permalink / raw
  To: gentoo-commits

commit:     df3b9cb9a21f4e45de635f25cfec8b7c0ee42e74
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 31 03:24:28 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Fri Aug 31 03:24:28 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=df3b9cb9

sci-mathematics/petsc: drop old

Package-Manager: Portage-2.3.48, Repoman-2.3.10

 sci-mathematics/petsc/petsc-3.9.0-r1.ebuild | 196 ----------------------------
 1 file changed, 196 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.9.0-r1.ebuild b/sci-mathematics/petsc/petsc-3.9.0-r1.ebuild
deleted file mode 100644
index 1755e242a..000000000
--- a/sci-mathematics/petsc/petsc-3.9.0-r1.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	complex-scalars? ( !hypre !superlu )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi !superlu )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	superlu? ( !hypre )
-"
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	metis? ( >=sci-libs/parmetis-4 )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( >=sci-libs/superlu-5 )
-	X? ( x11-libs/libX11 )
-"
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
-	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
-)
-
-src_prepare() {
-	default
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-petsc_enable() {
-	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-}
-# add external library:
-# petsc_with use_flag libname libdir
-# petsc_with use_flag libname include linking_libs
-petsc_with() {
-	local myuse p=${2:-${1}}
-	if use ${1}; then
-		myuse="--with-${p}=1"
-		if [[ $# -ge 4 ]]; then
-			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-			shift 3
-			myuse="${myuse} --with-${p}-lib=$@"
-		else
-			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-		fi
-	else
-		myuse="--with-${p}=0"
-	fi
-	echo ${myuse}
-}
-
-# select between configure options depending on use flag
-petsc_select() {
-	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-	# if mpi is built with knem support it needs /dev/knem too
-	addpredict /dev/knem
-
-	# configureMPITypes with openmpi-2* insists on accessing the scaling
-	# governor rw.
-	addpredict /sys/devices/system/cpu/
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on CXX builds is enabled if possible i.e. when not using
-	# complex scalars (no complex type for both available at the same time)
-
-	econf \
-		scrollOutput=1 \
-		FFLAGS="${FFLAGS} -fPIC" \
-		CFLAGS="${CFLAGS} -fPIC" \
-		CXXFLAGS="${CXXFLAGS} -fPIC" \
-		LDFLAGS="${LDFLAGS}" \
-		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-}
-
-src_install() {
-	emake DESTDIR="${ED}" install
-
-	# add PETSC_DIR to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
-	EOF
-	doenvd 99petsc
-
-	if use doc ; then
-		dodoc docs/developers.pdf docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-05-24  1:21 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-05-24  1:21 UTC (permalink / raw
  To: gentoo-commits

commit:     3769248d3d8e5d30c3ef5352d244f13459b6add7
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Thu May 24 01:08:24 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Thu May 24 01:20:13 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=3769248d

sci-mathematics/petsc: version bump to 3.9.2

Package-Manager: Portage-2.3.38, Repoman-2.3.9

 sci-mathematics/petsc/petsc-3.9.2.ebuild | 196 +++++++++++++++++++++++++++++++
 1 file changed, 196 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.9.2.ebuild b/sci-mathematics/petsc/petsc-3.9.2.ebuild
new file mode 100644
index 000000000..1755e242a
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.9.2.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi metis mumps scotch sparse superlu threads X"
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi !superlu )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	superlu? ( !hypre )
+"
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	metis? ( >=sci-libs/parmetis-4 )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( >=sci-libs/superlu-5 )
+	X? ( x11-libs/libX11 )
+"
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+	"${FILESDIR}"/${PN}-3.9.0-fix_sandbox_violation.patch
+)
+
+src_prepare() {
+	default
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+petsc_enable() {
+	use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+}
+# add external library:
+# petsc_with use_flag libname libdir
+# petsc_with use_flag libname include linking_libs
+petsc_with() {
+	local myuse p=${2:-${1}}
+	if use ${1}; then
+		myuse="--with-${p}=1"
+		if [[ $# -ge 4 ]]; then
+			myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+			shift 3
+			myuse="${myuse} --with-${p}-lib=$@"
+		else
+			myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+		fi
+	else
+		myuse="--with-${p}=0"
+	fi
+	echo ${myuse}
+}
+
+# select between configure options depending on use flag
+petsc_select() {
+	use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
+
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on CXX builds is enabled if possible i.e. when not using
+	# complex scalars (no complex type for both available at the same time)
+
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--prefix="${EPREFIX}/usr/$(get_libdir)/petsc" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+}
+
+src_install() {
+	emake DESTDIR="${ED}" install
+
+	# add PETSC_DIR to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_DIR=${EPREFIX}/usr/$(get_libdir)/petsc
+	EOF
+	doenvd 99petsc
+
+	if use doc ; then
+		dodoc docs/developers.pdf docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-04-23 14:38 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-04-23 14:38 UTC (permalink / raw
  To: gentoo-commits

commit:     2c7b47b7e6de8a6c1fc57e2c947d13a52a0782a2
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 23 14:37:44 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Apr 23 14:37:44 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=2c7b47b7

sci-mathematics/petsc: avoid double prefix

Package-Manager: Portage-2.3.31, Repoman-2.3.9

 sci-mathematics/petsc/{petsc-3.9.0.ebuild => petsc-3.9.0-r1.ebuild} | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sci-mathematics/petsc/petsc-3.9.0.ebuild b/sci-mathematics/petsc/petsc-3.9.0-r1.ebuild
similarity index 99%
rename from sci-mathematics/petsc/petsc-3.9.0.ebuild
rename to sci-mathematics/petsc/petsc-3.9.0-r1.ebuild
index e2f57c04f..1755e242a 100644
--- a/sci-mathematics/petsc/petsc-3.9.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.9.0-r1.ebuild
@@ -181,7 +181,7 @@ src_configure() {
 }
 
 src_install() {
-	emake DESTDIR="${D}/usr/$(get_libdir)/petsc" install
+	emake DESTDIR="${ED}" install
 
 	# add PETSC_DIR to environmental variables
 	cat >> 99petsc <<- EOF


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-04-23  1:55 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-04-23  1:55 UTC (permalink / raw
  To: gentoo-commits

commit:     0ee1bc73eba5a795a6ec837691cce3d19fe6962f
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 23 01:54:52 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Apr 23 01:54:52 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=0ee1bc73

sci-mathematics/petsc: remove upstream workaround for -j1 in 3.9.0

Apparently this is not needed anymore. *hooray*

Package-Manager: Portage-2.3.31, Repoman-2.3.9

 sci-mathematics/petsc/petsc-3.9.0.ebuild | 9 ---------
 1 file changed, 9 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.9.0.ebuild b/sci-mathematics/petsc/petsc-3.9.0.ebuild
index 37def4450..e2f57c04f 100644
--- a/sci-mathematics/petsc/petsc-3.9.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.9.0.ebuild
@@ -54,15 +54,6 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-# V=1 enables verbose output with full compiler and linker invocation
-#
-MAKEOPTS="${MAKEOPTS} -j1 V=1"
-
 S="${WORKDIR}/${MY_P}"
 
 PATCHES=(


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-03-29 22:16 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-03-29 22:16 UTC (permalink / raw
  To: gentoo-commits

commit:     2dee653ff1d3c49dc699bbfa6bd775b15d247dcf
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 29 22:09:26 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Thu Mar 29 22:09:26 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=2dee653f

sci-mathematics/petsc: version bump to 3.8.4

Package-Manager: Portage-2.3.26, Repoman-2.3.7

 sci-mathematics/petsc/{petsc-3.8.3-r1.ebuild => petsc-3.8.4.ebuild} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.8.3-r1.ebuild b/sci-mathematics/petsc/petsc-3.8.4.ebuild
similarity index 100%
rename from sci-mathematics/petsc/petsc-3.8.3-r1.ebuild
rename to sci-mathematics/petsc/petsc-3.8.4.ebuild


^ permalink raw reply	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-03-19  3:49 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-03-19  3:49 UTC (permalink / raw
  To: gentoo-commits

commit:     4590faa4d554a9c522212cc005449082adcc413b
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 19 03:48:48 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Mar 19 03:48:48 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=4590faa4

sci-mathematics/petsc: fix dependencies, drop old

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sci-mathematics/petsc/petsc-3.5.4.ebuild           | 243 --------------------
 sci-mathematics/petsc/petsc-3.6.4.ebuild           | 251 ---------------------
 .../{petsc-3.7.7.ebuild => petsc-3.7.7-r1.ebuild}  |   5 +-
 .../{petsc-3.8.3.ebuild => petsc-3.8.3-r1.ebuild}  |   5 +-
 4 files changed, 6 insertions(+), 498 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.5.4.ebuild b/sci-mathematics/petsc/petsc-3.5.4.ebuild
deleted file mode 100644
index c70fcf2cb..000000000
--- a/sci-mathematics/petsc/petsc-3.5.4.ebuild
+++ /dev/null
@@ -1,243 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-MAKEOPTS="${MAKEOPTS} -j1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch "${FILESDIR}"/${PN}-3.5.3-disable-rpath.patch
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		CFLAGS="${CFLAGS}" \
-		CXXFLAGS="${CXXFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/petsc-private
-	doins include/petsc-private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}

diff --git a/sci-mathematics/petsc/petsc-3.6.4.ebuild b/sci-mathematics/petsc/petsc-3.6.4.ebuild
deleted file mode 100644
index db6b92d04..000000000
--- a/sci-mathematics/petsc/petsc-3.6.4.ebuild
+++ /dev/null
@@ -1,251 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-MAKEOPTS="${MAKEOPTS} -j1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${PN}-3.6.0-disable-rpath.patch \
-		"${FILESDIR}"/${PN}-3.6.0-fix_sandbox_violation.patch
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		CFLAGS="${CFLAGS}" \
-		CXXFLAGS="${CXXFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/${PN}/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins lib/${PN}/conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/private
-	doins include/${PN}/private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# fix the include path of petscvariables in lib/${PN}/conf/variables
-	# bug #559172
-	sed -i -e 's#lib/petsc/conf/#conf/#g' \
-		"${ED}"/usr/include/${PN}/conf/variables || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}

diff --git a/sci-mathematics/petsc/petsc-3.7.7.ebuild b/sci-mathematics/petsc/petsc-3.7.7-r1.ebuild
similarity index 98%
rename from sci-mathematics/petsc/petsc-3.7.7.ebuild
rename to sci-mathematics/petsc/petsc-3.7.7-r1.ebuild
index 4d8a2953f..ddd6202e0 100644
--- a/sci-mathematics/petsc/petsc-3.7.7.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.7-r1.ebuild
@@ -23,11 +23,12 @@ IUSE="afterimage boost complex-scalars cxx debug doc fftw
 # if both are enabled
 REQUIRED_USE="
 	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
 	hdf5? ( mpi )
-	hypre? ( cxx mpi )
+	hypre? ( cxx mpi !superlu )
 	mumps? ( mpi scotch )
 	scotch? ( mpi )
-	^^ ( hypre superlu )
+	superlu? ( !hypre )
 "
 
 RDEPEND="

diff --git a/sci-mathematics/petsc/petsc-3.8.3.ebuild b/sci-mathematics/petsc/petsc-3.8.3-r1.ebuild
similarity index 98%
rename from sci-mathematics/petsc/petsc-3.8.3.ebuild
rename to sci-mathematics/petsc/petsc-3.8.3-r1.ebuild
index 33ec0bd93..17757f6c0 100644
--- a/sci-mathematics/petsc/petsc-3.8.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.8.3-r1.ebuild
@@ -23,11 +23,12 @@ IUSE="afterimage boost complex-scalars cxx debug doc fftw
 # if both are enabled
 REQUIRED_USE="
 	afterimage? ( X )
+	complex-scalars? ( !hypre !superlu )
 	hdf5? ( mpi )
-	hypre? ( cxx mpi )
+	hypre? ( cxx mpi !superlu )
 	mumps? ( mpi scotch )
 	scotch? ( mpi )
-	^^ ( hypre superlu )
+	superlu? ( !hypre )
 "
 
 RDEPEND="


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2018-03-19  3:40 Matthias Maier
  0 siblings, 0 replies; 59+ messages in thread
From: Matthias Maier @ 2018-03-19  3:40 UTC (permalink / raw
  To: gentoo-commits

commit:     70aa1dbe7740a0b5d68c0b274c6f98b4c95eb6ec
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 19 03:26:56 2018 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Mon Mar 19 03:26:56 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=70aa1dbe

sci-mathematics/petsc: update 3.7.* to 3.7.7

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sci-mathematics/petsc/{petsc-3.7.6.ebuild => petsc-3.7.7.ebuild} | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sci-mathematics/petsc/petsc-3.7.6.ebuild b/sci-mathematics/petsc/petsc-3.7.7.ebuild
similarity index 99%
rename from sci-mathematics/petsc/petsc-3.7.6.ebuild
rename to sci-mathematics/petsc/petsc-3.7.7.ebuild
index 37c89710d..4d8a2953f 100644
--- a/sci-mathematics/petsc/petsc-3.7.6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2017-10-03 12:58 Andrew Savchenko
  0 siblings, 0 replies; 59+ messages in thread
From: Andrew Savchenko @ 2017-10-03 12:58 UTC (permalink / raw
  To: gentoo-commits

commit:     259e26e9a8fcb27f9ecd4a026b1edbdb00cd29c1
Author:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  3 12:57:03 2017 +0000
Commit:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
CommitDate: Tue Oct  3 12:57:03 2017 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=259e26e9

sci-mathematics/petsc: fix build on knem setups

If host MPI is configured to use knem, petsc needs to access /dev/knem as well.

Package-Manager: Portage-2.3.8, Repoman-2.3.3
Signed-off-by: Andrew Savchenko <bircoph <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.7.6.ebuild | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.7.6.ebuild b/sci-mathematics/petsc/petsc-3.7.6.ebuild
index c9c04f3e1..37c89710d 100644
--- a/sci-mathematics/petsc/petsc-3.7.6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.6.ebuild
@@ -111,6 +111,8 @@ src_configure() {
 	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
 	# which is used by libmpi.so.
 	addpredict /proc/mtrr
+	# if mpi is built with knem support it needs /dev/knem too
+	addpredict /dev/knem
 
 	# configureMPITypes with openmpi-2* insists on accessing the scaling
 	# governor rw.


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2017-10-03 12:58 Andrew Savchenko
  0 siblings, 0 replies; 59+ messages in thread
From: Andrew Savchenko @ 2017-10-03 12:58 UTC (permalink / raw
  To: gentoo-commits

commit:     8cb375f4224fad6ee34b57d8e8ed39147de41b6c
Author:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  3 12:54:04 2017 +0000
Commit:     Andrew Savchenko <bircoph <AT> gentoo <DOT> org>
CommitDate: Tue Oct  3 12:54:04 2017 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=8cb375f4

sci-mathematics/petsc: fix superlu version requirement

>=sci-libs/superlu-5 is required, see
https://lists.debian.org/debian-science/2016/05/msg00059.html
This also happens at our local Gentoo HPC setup.

Package-Manager: Portage-2.3.8, Repoman-2.3.3
Signed-off-by: Andrew Savchenko <bircoph <AT> gentoo.org>

 sci-mathematics/petsc/petsc-3.7.6.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sci-mathematics/petsc/petsc-3.7.6.ebuild b/sci-mathematics/petsc/petsc-3.7.6.ebuild
index 784371ed3..c9c04f3e1 100644
--- a/sci-mathematics/petsc/petsc-3.7.6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.6.ebuild
@@ -43,7 +43,7 @@ RDEPEND="
 	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
 	scotch? ( sci-libs/scotch[mpi?] )
 	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
+	superlu? ( >=sci-libs/superlu-5 )
 	X? ( x11-libs/libX11 )
 "
 


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2017-01-08 11:03 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2017-01-08 11:03 UTC (permalink / raw
  To: gentoo-commits

commit:     73918b00c7bd72a5d20661b55d81b3493b5fa139
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Jan  6 20:12:46 2017 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Fri Jan  6 20:12:46 2017 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=73918b00

sci-mathematics/petsc: version bump to 3.7.5

Package-Manager: Portage-2.3.0, Repoman-2.3.1

 sci-mathematics/petsc/{petsc-3.7.4.ebuild => petsc-3.7.5.ebuild} | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sci-mathematics/petsc/petsc-3.7.4.ebuild b/sci-mathematics/petsc/petsc-3.7.5.ebuild
similarity index 99%
rename from sci-mathematics/petsc/petsc-3.7.4.ebuild
rename to sci-mathematics/petsc/petsc-3.7.5.ebuild
index ae26a85..8889ba8 100644
--- a/sci-mathematics/petsc/petsc-3.7.4.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-11-24 10:55 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-11-24 10:55 UTC (permalink / raw
  To: gentoo-commits

commit:     aba912dd378338609d10389c6f8f021f60828fc3
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 24 03:47:11 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Thu Nov 24 03:47:11 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=aba912dd

sci-mathematics/petsc: version bump to 3.7.4

Package-Manager: portage-2.3.0

 sci-mathematics/petsc/{petsc-3.7.3.ebuild => petsc-3.7.4.ebuild} | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.7.3.ebuild b/sci-mathematics/petsc/petsc-3.7.4.ebuild
similarity index 98%
rename from sci-mathematics/petsc/petsc-3.7.3.ebuild
rename to sci-mathematics/petsc/petsc-3.7.4.ebuild
index 357189f..ae26a85 100644
--- a/sci-mathematics/petsc/petsc-3.7.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.7.4.ebuild
@@ -86,6 +86,10 @@ src_configure() {
 	# which is used by libmpi.so.
 	addpredict /proc/mtrr
 
+	# configureMPITypes with openmpi-2* insists on accessing the scaling
+	# governor rw.
+	addpredict /sys/devices/system/cpu/
+
 	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
 	petsc_enable() {
 		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-08-31  6:56 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-08-31  6:56 UTC (permalink / raw
  To: gentoo-commits

commit:     7d46fb1d005394c121a9fab2585d50b13660e74e
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 00:52:06 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Tue Aug 30 00:52:29 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=7d46fb1d

sci-mathematics/petsc: version bump to 3.7.3

Package-Manager: portage-2.2.28

 sci-mathematics/petsc/petsc-3.7.3.ebuild | 255 +++++++++++++++++++++++++++++++
 1 file changed, 255 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.7.3.ebuild b/sci-mathematics/petsc/petsc-3.7.3.ebuild
new file mode 100644
index 0000000..357189f
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.7.3.ebuild
@@ -0,0 +1,255 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="petsc"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
+# Failed: imagemagick metis
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	^^ ( hypre superlu )
+"
+#	imagemagick? ( X )
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( sci-libs/superlu )
+	X? ( x11-libs/libX11 )
+"
+#	metis? ( sci-libs/parmetis )
+#	imagemagick? ( media-gfx/imagemagick )
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+# cmake is used for parallel building
+# in some configuration setups, legacy build is used (slow)
+
+#
+# PETSc does not want its Makefiles to be invoked with anything higher than
+# -j1. The underlying build system does automatically invoke a parallel
+# build. This might not be what you want, but *hey* not your choice.
+#
+# V=1 enables verbose output with full compiler and linker invocation
+#
+MAKEOPTS="${MAKEOPTS} -j1 V=1"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+	epatch \
+		"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+		"${FILESDIR}"/${PN}-3.7.0-fix_sandbox_violation.patch
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
+	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+	petsc_enable() {
+		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+	}
+	# add external library:
+	# petsc_with use_flag libname libdir
+	# petsc_with use_flag libname include linking_libs
+	petsc_with() {
+		local myuse p=${2:-${1}}
+		if use ${1}; then
+			myuse="--with-${p}=1"
+			if [[ $# -ge 4 ]]; then
+				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+				shift 3
+				myuse="${myuse} --with-${p}-lib=$@"
+			else
+				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+			fi
+		else
+			myuse="--with-${p}=0"
+		fi
+		echo ${myuse}
+	}
+
+	# select between configure options depending on use flag
+	petsc_select() {
+		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+	}
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on Cxx builds is enabled if possible
+	# i.e. when not using complex scalars
+	# (no complex type for both available at the same time)
+
+	# run petsc configure script
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+
+# not yet tested:
+#		python bindings, netcdf, fftw
+
+# failed dependencies, perhaps fixed in upstream soon:
+#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
+#		$(petsc_with imagemagick imagemagick \
+#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
+#		$(petsc_enable threads pthreadclasses) \
+}
+
+src_install() {
+	# petsc install structure is very different from
+	# installing headers to /usr/include/petsc and lib to /usr/lib
+	# it also installs many unneeded executables and scripts
+	# so manual install is easier than cleanup after "emake install"
+	insinto /usr/include/${PN}
+	doins include/*.h*
+	insinto /usr/include/${PN}/${PETSC_ARCH}/include
+	doins ${PETSC_ARCH}/include/*
+	if use fortran; then
+		insinto /usr/include/${PN}/finclude
+		doins -r include/${PN}/finclude/*
+	fi
+	if ! use mpi ; then
+		insinto /usr/include/${PN}/mpiuni
+		doins include/mpiuni/*.h
+	fi
+	insinto /usr/include/${PN}/conf
+	doins lib/${PN}/conf/{variables,rules,test}
+	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
+	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
+	insinto /usr/include/${PN}/private
+	doins include/${PN}/private/*.h
+
+	# fix configuration files: replace "${S}" by installed location
+	sed -i \
+		-e "s:"${S}"::g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:usr/lib:usr/$(get_libdir):g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
+
+	# fix the include path of petscvariables in lib/${PN}/conf/variables
+	# bug #559172
+	sed -i -e 's#lib/petsc/conf/#conf/#g' \
+		"${ED}"/usr/include/${PN}/conf/variables || die
+
+	# add information about installation directory and
+	# PETSC_ARCH to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_ARCH=${PETSC_ARCH}
+		PETSC_DIR=${EPREFIX}/usr/include/${PN}
+	EOF
+	doenvd 99petsc
+
+	dolib.so ${PETSC_ARCH}/lib/*.so
+	dolib.so ${PETSC_ARCH}/lib/*.so.*
+
+	if use doc ; then
+		einfo "installing documentation (this could take a while)"
+		dodoc docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-08-31  6:56 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-08-31  6:56 UTC (permalink / raw
  To: gentoo-commits

commit:     a5a2b1bc8125c111d11d9474ae10accdbd9fc4c2
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 00:52:46 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Tue Aug 30 00:52:46 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=a5a2b1bc

sci-mathematics/petsc: drop old

Package-Manager: portage-2.2.28

 sci-mathematics/petsc/petsc-3.7.2.ebuild | 255 -------------------------------
 1 file changed, 255 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.7.2.ebuild b/sci-mathematics/petsc/petsc-3.7.2.ebuild
deleted file mode 100644
index 3ca12ff..0000000
--- a/sci-mathematics/petsc/petsc-3.7.2.ebuild
+++ /dev/null
@@ -1,255 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-# V=1 enables verbose output with full compiler and linker invocation
-#
-MAKEOPTS="${MAKEOPTS} -j1 V=1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
-		"${FILESDIR}"/${PN}-3.7.0-fix_sandbox_violation.patch
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		FFLAGS="${FFLAGS} -fPIC" \
-		CFLAGS="${CFLAGS} -fPIC" \
-		CXXFLAGS="${CXXFLAGS} -fPIC" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/${PN}/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins lib/${PN}/conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/private
-	doins include/${PN}/private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# fix the include path of petscvariables in lib/${PN}/conf/variables
-	# bug #559172
-	sed -i -e 's#lib/petsc/conf/#conf/#g' \
-		"${ED}"/usr/include/${PN}/conf/variables || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-07-12 19:57 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-07-12 19:57 UTC (permalink / raw
  To: gentoo-commits

commit:     a4d74bf5cf42a039a93e81264382eb3bb159b052
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  9 16:35:21 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Sat Jul  9 16:35:21 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=a4d74bf5

sci-mathematics/petsc: drop old

Package-Manager: portage-2.2.28

 sci-mathematics/petsc/petsc-3.6.0.ebuild | 247 ------------------------------
 sci-mathematics/petsc/petsc-3.6.3.ebuild | 247 ------------------------------
 sci-mathematics/petsc/petsc-3.7.0.ebuild | 255 -------------------------------
 3 files changed, 749 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.6.0.ebuild b/sci-mathematics/petsc/petsc-3.6.0.ebuild
deleted file mode 100644
index 58ff3bd..0000000
--- a/sci-mathematics/petsc/petsc-3.6.0.ebuild
+++ /dev/null
@@ -1,247 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-MAKEOPTS="${MAKEOPTS} -j1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${P%_*}-disable-rpath.patch \
-		"${FILESDIR}"/${P%_*}-fix_sandbox_violation.patch
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		CFLAGS="${CFLAGS}" \
-		CXXFLAGS="${CXXFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/${PN}/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins lib/${PN}/conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/private
-	doins include/${PN}/private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}

diff --git a/sci-mathematics/petsc/petsc-3.6.3.ebuild b/sci-mathematics/petsc/petsc-3.6.3.ebuild
deleted file mode 100644
index 87537cb..0000000
--- a/sci-mathematics/petsc/petsc-3.6.3.ebuild
+++ /dev/null
@@ -1,247 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-MAKEOPTS="${MAKEOPTS} -j1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${PN}-3.6.0-disable-rpath.patch \
-		"${FILESDIR}"/${PN}-3.6.0-fix_sandbox_violation.patch
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		CFLAGS="${CFLAGS}" \
-		CXXFLAGS="${CXXFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/${PN}/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins lib/${PN}/conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/private
-	doins include/${PN}/private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}

diff --git a/sci-mathematics/petsc/petsc-3.7.0.ebuild b/sci-mathematics/petsc/petsc-3.7.0.ebuild
deleted file mode 100644
index bcf8cc5..0000000
--- a/sci-mathematics/petsc/petsc-3.7.0.ebuild
+++ /dev/null
@@ -1,255 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-PYTHON_COMPAT=( python2_7 )
-
-inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc fftw
-	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
-# Failed: imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	afterimage? ( X )
-	hdf5? ( mpi )
-	hypre? ( cxx mpi )
-	mumps? ( mpi scotch )
-	scotch? ( mpi )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw:3.0[mpi?] )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
-	scotch? ( sci-libs/scotch[mpi?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	${PYTHON_DEPS}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parallel building
-# in some configuration setups, legacy build is used (slow)
-
-#
-# PETSc does not want its Makefiles to be invoked with anything higher than
-# -j1. The underlying build system does automatically invoke a parallel
-# build. This might not be what you want, but *hey* not your choice.
-#
-# V=1 enables verbose output with full compiler and linker invocation
-#
-MAKEOPTS="${MAKEOPTS} -j1 V=1"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${P}-disable-rpath.patch \
-		"${FILESDIR}"/${P}-fix_sandbox_violation.patch
-
-	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
-}
-
-src_configure() {
-	# bug 548498
-	# PETSc runs mpi processes during configure that result in a sandbox
-	# violation by trying to open /proc/mtrr rw. This is not easy to
-	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
-	# which is used by libmpi.so.
-	addpredict /proc/mtrr
-
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		FFLAGS="${FFLAGS} -fPIC" \
-		CFLAGS="${CFLAGS} -fPIC" \
-		CXXFLAGS="${CXXFLAGS} -fPIC" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_enable threads pthread) \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse suitesparse) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		$(petsc_with scotch ptscotch \
-			/usr/include/scotch \
-		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
-		$(petsc_with mumps scalapack \
-			/usr/include/scalapack -lscalapack) \
-		$(petsc_with mumps mumps \
-			/usr/include \
-			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		$(petsc_with boost) \
-		$(petsc_with fftw)
-
-# not yet tested:
-#		python bindings, netcdf, fftw
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-#		$(petsc_enable threads pthreadclasses) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins -r include/${PN}/finclude/*
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins lib/${PN}/conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/private
-	doins include/${PN}/private/*.h
-
-	# fix configuration files: replace "${S}" by installed location
-	sed -i \
-		-e "s:"${S}"::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
-		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# fix the include path of petscvariables in lib/${PN}/conf/variables
-	# bug #559172
-	sed -i -e 's#lib/petsc/conf/#conf/#g' \
-		"${ED}"/usr/include/${PN}/conf/variables || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-	dolib.so ${PETSC_ARCH}/lib/*.so.*
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-07-12 19:57 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-07-12 19:57 UTC (permalink / raw
  To: gentoo-commits

commit:     48f9a32050afb3cf4ded913f154a725f1861a197
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  9 16:39:09 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Sat Jul  9 16:40:37 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=48f9a320

sci-mathematics/petsc: version bump to 3.5.4

Package-Manager: portage-2.2.28

 sci-mathematics/petsc/{petsc-3.5.3.ebuild => petsc-3.5.4.ebuild} | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.5.3.ebuild b/sci-mathematics/petsc/petsc-3.5.4.ebuild
similarity index 98%
rename from sci-mathematics/petsc/petsc-3.5.3.ebuild
rename to sci-mathematics/petsc/petsc-3.5.4.ebuild
index 7c1d0b3..7838e5d 100644
--- a/sci-mathematics/petsc/petsc-3.5.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -69,7 +69,7 @@ MAKEOPTS="${MAKEOPTS} -j1"
 S="${WORKDIR}/${MY_P}"
 
 src_prepare() {
-	epatch "${FILESDIR}"/${P%_*}-disable-rpath.patch
+	epatch "${FILESDIR}"/${PN}-3.5.3-disable-rpath.patch
 	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
 }
 


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-07-12 19:57 Marius Brehler
  0 siblings, 0 replies; 59+ messages in thread
From: Marius Brehler @ 2016-07-12 19:57 UTC (permalink / raw
  To: gentoo-commits

commit:     a02841bb9ce8e70bd21ef6c65257d9467a85a47e
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  9 16:22:32 2016 +0000
Commit:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
CommitDate: Sat Jul  9 16:33:56 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=a02841bb

sci-mathematics/petsc: version bump to 3.7.2

Package-Manager: portage-2.2.28

 sci-mathematics/petsc/petsc-3.7.2.ebuild | 255 +++++++++++++++++++++++++++++++
 1 file changed, 255 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.7.2.ebuild b/sci-mathematics/petsc/petsc-3.7.2.ebuild
new file mode 100644
index 0000000..3ca12ff
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.7.2.ebuild
@@ -0,0 +1,255 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="petsc"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
+# Failed: imagemagick metis
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	^^ ( hypre superlu )
+"
+#	imagemagick? ( X )
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( sci-libs/superlu )
+	X? ( x11-libs/libX11 )
+"
+#	metis? ( sci-libs/parmetis )
+#	imagemagick? ( media-gfx/imagemagick )
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+# cmake is used for parallel building
+# in some configuration setups, legacy build is used (slow)
+
+#
+# PETSc does not want its Makefiles to be invoked with anything higher than
+# -j1. The underlying build system does automatically invoke a parallel
+# build. This might not be what you want, but *hey* not your choice.
+#
+# V=1 enables verbose output with full compiler and linker invocation
+#
+MAKEOPTS="${MAKEOPTS} -j1 V=1"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+	epatch \
+		"${FILESDIR}"/${PN}-3.7.0-disable-rpath.patch \
+		"${FILESDIR}"/${PN}-3.7.0-fix_sandbox_violation.patch
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
+	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+	petsc_enable() {
+		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+	}
+	# add external library:
+	# petsc_with use_flag libname libdir
+	# petsc_with use_flag libname include linking_libs
+	petsc_with() {
+		local myuse p=${2:-${1}}
+		if use ${1}; then
+			myuse="--with-${p}=1"
+			if [[ $# -ge 4 ]]; then
+				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+				shift 3
+				myuse="${myuse} --with-${p}-lib=$@"
+			else
+				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+			fi
+		else
+			myuse="--with-${p}=0"
+		fi
+		echo ${myuse}
+	}
+
+	# select between configure options depending on use flag
+	petsc_select() {
+		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+	}
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on Cxx builds is enabled if possible
+	# i.e. when not using complex scalars
+	# (no complex type for both available at the same time)
+
+	# run petsc configure script
+	econf \
+		scrollOutput=1 \
+		FFLAGS="${FFLAGS} -fPIC" \
+		CFLAGS="${CFLAGS} -fPIC" \
+		CXXFLAGS="${CXXFLAGS} -fPIC" \
+		LDFLAGS="${LDFLAGS}" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+
+# not yet tested:
+#		python bindings, netcdf, fftw
+
+# failed dependencies, perhaps fixed in upstream soon:
+#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
+#		$(petsc_with imagemagick imagemagick \
+#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
+#		$(petsc_enable threads pthreadclasses) \
+}
+
+src_install() {
+	# petsc install structure is very different from
+	# installing headers to /usr/include/petsc and lib to /usr/lib
+	# it also installs many unneeded executables and scripts
+	# so manual install is easier than cleanup after "emake install"
+	insinto /usr/include/${PN}
+	doins include/*.h*
+	insinto /usr/include/${PN}/${PETSC_ARCH}/include
+	doins ${PETSC_ARCH}/include/*
+	if use fortran; then
+		insinto /usr/include/${PN}/finclude
+		doins -r include/${PN}/finclude/*
+	fi
+	if ! use mpi ; then
+		insinto /usr/include/${PN}/mpiuni
+		doins include/mpiuni/*.h
+	fi
+	insinto /usr/include/${PN}/conf
+	doins lib/${PN}/conf/{variables,rules,test}
+	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
+	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
+	insinto /usr/include/${PN}/private
+	doins include/${PN}/private/*.h
+
+	# fix configuration files: replace "${S}" by installed location
+	sed -i \
+		-e "s:"${S}"::g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:usr/lib:usr/$(get_libdir):g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
+
+	# fix the include path of petscvariables in lib/${PN}/conf/variables
+	# bug #559172
+	sed -i -e 's#lib/petsc/conf/#conf/#g' \
+		"${ED}"/usr/include/${PN}/conf/variables || die
+
+	# add information about installation directory and
+	# PETSC_ARCH to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_ARCH=${PETSC_ARCH}
+		PETSC_DIR=${EPREFIX}/usr/include/${PN}
+	EOF
+	doenvd 99petsc
+
+	dolib.so ${PETSC_ARCH}/lib/*.so
+	dolib.so ${PETSC_ARCH}/lib/*.so.*
+
+	if use doc ; then
+		einfo "installing documentation (this could take a while)"
+		dodoc docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-04-23 23:21 Christoph Junghans
  0 siblings, 0 replies; 59+ messages in thread
From: Christoph Junghans @ 2016-04-23 23:21 UTC (permalink / raw
  To: gentoo-commits

commit:     974ee970511dc54931a03656d26922dfc7c22fdb
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 22 02:52:53 2016 +0000
Commit:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Fri Apr 22 02:52:53 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=974ee970

sci-mathematics/petsc: remove obsolete elog message pointing to bug #53386

Package-Manager: portage-2.2.26

 sci-mathematics/petsc/petsc-3.4.2.ebuild | 6 ------
 sci-mathematics/petsc/petsc-3.5.3.ebuild | 6 ------
 sci-mathematics/petsc/petsc-3.6.0.ebuild | 6 ------
 sci-mathematics/petsc/petsc-3.6.3.ebuild | 6 ------
 4 files changed, 24 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.4.2.ebuild b/sci-mathematics/petsc/petsc-3.4.2.ebuild
index 6a8dace..52e9a19 100644
--- a/sci-mathematics/petsc/petsc-3.4.2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.4.2.ebuild
@@ -239,9 +239,3 @@ src_install() {
 		dohtml -r docs/*.html docs/changes docs/manualpages
 	fi
 }
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-}

diff --git a/sci-mathematics/petsc/petsc-3.5.3.ebuild b/sci-mathematics/petsc/petsc-3.5.3.ebuild
index a5d339b..7c1d0b3 100644
--- a/sci-mathematics/petsc/petsc-3.5.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.3.ebuild
@@ -242,9 +242,3 @@ src_install() {
 		dohtml -r docs/*.html docs/changes docs/manualpages
 	fi
 }
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-}

diff --git a/sci-mathematics/petsc/petsc-3.6.0.ebuild b/sci-mathematics/petsc/petsc-3.6.0.ebuild
index 874eca0..58ff3bd 100644
--- a/sci-mathematics/petsc/petsc-3.6.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.6.0.ebuild
@@ -245,9 +245,3 @@ src_install() {
 		dohtml -r docs/*.html docs/changes docs/manualpages
 	fi
 }
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-}

diff --git a/sci-mathematics/petsc/petsc-3.6.3.ebuild b/sci-mathematics/petsc/petsc-3.6.3.ebuild
index dd3aed2..87537cb 100644
--- a/sci-mathematics/petsc/petsc-3.6.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.6.3.ebuild
@@ -245,9 +245,3 @@ src_install() {
 		dohtml -r docs/*.html docs/changes docs/manualpages
 	fi
 }
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2016-04-23 23:21 Christoph Junghans
  0 siblings, 0 replies; 59+ messages in thread
From: Christoph Junghans @ 2016-04-23 23:21 UTC (permalink / raw
  To: gentoo-commits

commit:     4c50902cb7f54cf48e7c30b835cfd2c47ffdae57
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 22 03:12:27 2016 +0000
Commit:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Fri Apr 22 03:12:27 2016 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=4c50902c

sci-mathematics/petsc: version bump to 3.6.4, fix bug #559172

Package-Manager: portage-2.2.26

 sci-mathematics/petsc/petsc-3.6.4.ebuild | 252 +++++++++++++++++++++++++++++++
 1 file changed, 252 insertions(+)

diff --git a/sci-mathematics/petsc/petsc-3.6.4.ebuild b/sci-mathematics/petsc/petsc-3.6.4.ebuild
new file mode 100644
index 0000000..cff1192
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.6.4.ebuild
@@ -0,0 +1,252 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="petsc"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
+# Failed: imagemagick metis
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	^^ ( hypre superlu )
+"
+#	imagemagick? ( X )
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( sci-libs/superlu )
+	X? ( x11-libs/libX11 )
+"
+#	metis? ( sci-libs/parmetis )
+#	imagemagick? ( media-gfx/imagemagick )
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+# cmake is used for parallel building
+# in some configuration setups, legacy build is used (slow)
+
+#
+# PETSc does not want its Makefiles to be invoked with anything higher than
+# -j1. The underlying build system does automatically invoke a parallel
+# build. This might not be what you want, but *hey* not your choice.
+#
+MAKEOPTS="${MAKEOPTS} -j1"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+	epatch \
+		"${FILESDIR}"/${PN}-3.6.0-disable-rpath.patch \
+		"${FILESDIR}"/${PN}-3.6.0-fix_sandbox_violation.patch
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
+	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+	petsc_enable() {
+		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+	}
+	# add external library:
+	# petsc_with use_flag libname libdir
+	# petsc_with use_flag libname include linking_libs
+	petsc_with() {
+		local myuse p=${2:-${1}}
+		if use ${1}; then
+			myuse="--with-${p}=1"
+			if [[ $# -ge 4 ]]; then
+				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+				shift 3
+				myuse="${myuse} --with-${p}-lib=$@"
+			else
+				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+			fi
+		else
+			myuse="--with-${p}=0"
+		fi
+		echo ${myuse}
+	}
+
+	# select between configure options depending on use flag
+	petsc_select() {
+		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+	}
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on Cxx builds is enabled if possible
+	# i.e. when not using complex scalars
+	# (no complex type for both available at the same time)
+
+	# run petsc configure script
+	econf \
+		scrollOutput=1 \
+		CFLAGS="${CFLAGS}" \
+		CXXFLAGS="${CXXFLAGS}" \
+		LDFLAGS="${LDFLAGS}" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+
+# not yet tested:
+#		python bindings, netcdf, fftw
+
+# failed dependencies, perhaps fixed in upstream soon:
+#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
+#		$(petsc_with imagemagick imagemagick \
+#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
+#		$(petsc_enable threads pthreadclasses) \
+}
+
+src_install() {
+	# petsc install structure is very different from
+	# installing headers to /usr/include/petsc and lib to /usr/lib
+	# it also installs many unneeded executables and scripts
+	# so manual install is easier than cleanup after "emake install"
+	insinto /usr/include/${PN}
+	doins include/*.h*
+	insinto /usr/include/${PN}/${PETSC_ARCH}/include
+	doins ${PETSC_ARCH}/include/*
+	if use fortran; then
+		insinto /usr/include/${PN}/finclude
+		doins -r include/${PN}/finclude/*
+	fi
+	if ! use mpi ; then
+		insinto /usr/include/${PN}/mpiuni
+		doins include/mpiuni/*.h
+	fi
+	insinto /usr/include/${PN}/conf
+	doins lib/${PN}/conf/{variables,rules,test}
+	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
+	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
+	insinto /usr/include/${PN}/private
+	doins include/${PN}/private/*.h
+
+	# fix configuration files: replace "${S}" by installed location
+	sed -i \
+		-e "s:"${S}"::g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:usr/lib:usr/$(get_libdir):g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
+
+	# fix the include path of petscvariables in lib/${PN}/conf/variables
+	# bug #559172
+	sed -i -e 's#lib/petsc/conf/#conf/#g' \
+		"${ED}"/usr/include/${PN}/conf/variables || die
+
+	# add information about installation directory and
+	# PETSC_ARCH to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_ARCH=${PETSC_ARCH}
+		PETSC_DIR=${EPREFIX}/usr/include/${PN}
+	EOF
+	doenvd 99petsc
+
+	dolib.so ${PETSC_ARCH}/lib/*.so
+	dolib.so ${PETSC_ARCH}/lib/*.so.*
+
+	if use doc ; then
+		einfo "installing documentation (this could take a while)"
+		dodoc docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2015-12-31  8:48 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2015-12-31  8:48 UTC (permalink / raw
  To: gentoo-commits

commit:     ea635c5ba9ce7015a7f3cf0f1aa1b8341e9c0eab
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 31 08:02:03 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Thu Dec 31 08:02:21 2015 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=ea635c5b

sci-mathematics/petsc: version bump to 2.6.3

Package-Manager: portage-2.2.26

 sci-mathematics/petsc/ChangeLog          |   5 +
 sci-mathematics/petsc/petsc-3.6.3.ebuild | 253 +++++++++++++++++++++++++++++++
 2 files changed, 258 insertions(+)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 861d62b..89fdf76 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,11 @@
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
 # $Id$
 
+*petsc-3.6.3 (31 Dec 2015)
+
+  31 Dec 2015; Matthias Maier <tamiko@gentoo.org> +petsc-3.6.3.ebuild:
+  sci-mathematics/petsc: version bump
+
   01 Sep 2015; Marius Brehler <marbre@linux.sungazer.de> petsc-3.5.3.ebuild,
   petsc-3.6.0.ebuild:
   sci-mathematics/petsc: Add subslot for fftw dependency

diff --git a/sci-mathematics/petsc/petsc-3.6.3.ebuild b/sci-mathematics/petsc/petsc-3.6.3.ebuild
new file mode 100644
index 0000000..dd3aed2
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.6.3.ebuild
@@ -0,0 +1,253 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
+
+MY_P="${PN}-$(replace_version_separator _ -)"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="petsc"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="afterimage boost complex-scalars cxx debug doc fftw
+	fortran hdf5 hypre mpi mumps scotch sparse superlu threads X"
+# Failed: imagemagick metis
+
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
+REQUIRED_USE="
+	afterimage? ( X )
+	hdf5? ( mpi )
+	hypre? ( cxx mpi )
+	mumps? ( mpi scotch )
+	scotch? ( mpi )
+	^^ ( hypre superlu )
+"
+#	imagemagick? ( X )
+
+RDEPEND="
+	virtual/blas
+	virtual/lapack
+	afterimage? ( media-libs/libafterimage )
+	boost? ( dev-libs/boost )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
+	hdf5? ( sci-libs/hdf5[mpi?] )
+	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
+	mpi? ( virtual/mpi[cxx?,fortran?] )
+	mumps? ( sci-libs/mumps[mpi?] sci-libs/scalapack )
+	scotch? ( sci-libs/scotch[mpi?] )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( sci-libs/superlu )
+	X? ( x11-libs/libX11 )
+"
+#	metis? ( sci-libs/parmetis )
+#	imagemagick? ( media-gfx/imagemagick )
+
+DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
+	virtual/pkgconfig
+	dev-util/cmake
+"
+# cmake is used for parallel building
+# in some configuration setups, legacy build is used (slow)
+
+#
+# PETSc does not want its Makefiles to be invoked with anything higher than
+# -j1. The underlying build system does automatically invoke a parallel
+# build. This might not be what you want, but *hey* not your choice.
+#
+MAKEOPTS="${MAKEOPTS} -j1"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+	epatch \
+		"${FILESDIR}"/${PN}-3.6.0-disable-rpath.patch \
+		"${FILESDIR}"/${PN}-3.6.0-fix_sandbox_violation.patch
+
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
+	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
+	petsc_enable() {
+		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
+	}
+	# add external library:
+	# petsc_with use_flag libname libdir
+	# petsc_with use_flag libname include linking_libs
+	petsc_with() {
+		local myuse p=${2:-${1}}
+		if use ${1}; then
+			myuse="--with-${p}=1"
+			if [[ $# -ge 4 ]]; then
+				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
+				shift 3
+				myuse="${myuse} --with-${p}-lib=$@"
+			else
+				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+			fi
+		else
+			myuse="--with-${p}=0"
+		fi
+		echo ${myuse}
+	}
+
+	# select between configure options depending on use flag
+	petsc_select() {
+		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
+	}
+
+	local mylang
+	local myopt
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	# environmental variables expected by petsc during build
+	export PETSC_DIR="${S}"
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+	fi
+
+	# C Support on Cxx builds is enabled if possible
+	# i.e. when not using complex scalars
+	# (no complex type for both available at the same time)
+
+	# run petsc configure script
+	econf \
+		scrollOutput=1 \
+		CFLAGS="${CFLAGS}" \
+		CXXFLAGS="${CXXFLAGS}" \
+		LDFLAGS="${LDFLAGS}" \
+		--with-shared-libraries \
+		--with-single-library \
+		--with-clanguage=${mylang} \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
+		--with-petsc-arch=${PETSC_ARCH} \
+		--with-precision=double \
+		--with-gnu-compilers \
+		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
+		$(petsc_enable debug debugging) \
+		$(petsc_enable mpi) \
+		$(petsc_select mpi cc mpicc $(tc-getCC)) \
+		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
+		$(petsc_enable mpi mpi-compilers) \
+		$(petsc_select complex-scalars scalar-type complex real) \
+		--with-windows-graphics=0 \
+		--with-matlab=0 \
+		--with-cmake=cmake \
+		$(petsc_enable threads pthread) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
+		$(petsc_with sparse suitesparse) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
+		$(petsc_with X x) \
+		$(petsc_with X x11) \
+		$(petsc_with scotch ptscotch \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+		$(petsc_with mumps scalapack \
+			/usr/include/scalapack -lscalapack) \
+		$(petsc_with mumps mumps \
+			/usr/include \
+			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
+		--with-imagemagick=0 \
+		--with-python=0 \
+		$(petsc_with boost) \
+		$(petsc_with fftw)
+
+# not yet tested:
+#		python bindings, netcdf, fftw
+
+# failed dependencies, perhaps fixed in upstream soon:
+#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
+#		$(petsc_with imagemagick imagemagick \
+#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
+#		$(petsc_enable threads pthreadclasses) \
+}
+
+src_install() {
+	# petsc install structure is very different from
+	# installing headers to /usr/include/petsc and lib to /usr/lib
+	# it also installs many unneeded executables and scripts
+	# so manual install is easier than cleanup after "emake install"
+	insinto /usr/include/${PN}
+	doins include/*.h*
+	insinto /usr/include/${PN}/${PETSC_ARCH}/include
+	doins ${PETSC_ARCH}/include/*
+	if use fortran; then
+		insinto /usr/include/${PN}/finclude
+		doins -r include/${PN}/finclude/*
+	fi
+	if ! use mpi ; then
+		insinto /usr/include/${PN}/mpiuni
+		doins include/mpiuni/*.h
+	fi
+	insinto /usr/include/${PN}/conf
+	doins lib/${PN}/conf/{variables,rules,test}
+	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
+	doins ${PETSC_ARCH}/lib/${PN}/conf/{petscrules,petscvariables,RDict.db}
+	insinto /usr/include/${PN}/private
+	doins include/${PN}/private/*.h
+
+	# fix configuration files: replace "${S}" by installed location
+	sed -i \
+		-e "s:"${S}"::g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
+		-e "s:usr/lib:usr/$(get_libdir):g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
+
+	# add information about installation directory and
+	# PETSC_ARCH to environmental variables
+	cat >> 99petsc <<- EOF
+		PETSC_ARCH=${PETSC_ARCH}
+		PETSC_DIR=${EPREFIX}/usr/include/${PN}
+	EOF
+	doenvd 99petsc
+
+	dolib.so ${PETSC_ARCH}/lib/*.so
+	dolib.so ${PETSC_ARCH}/lib/*.so.*
+
+	if use doc ; then
+		einfo "installing documentation (this could take a while)"
+		dodoc docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+}
+
+pkg_postinst() {
+	elog "The petsc ebuild is still under development."
+	elog "Help us improve the ebuild in:"
+	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
+}


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2015-09-01 10:26 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2015-09-01 10:26 UTC (permalink / raw
  To: gentoo-commits

commit:     c0b79811015288696f74c4c55694e6c3c1b95413
Author:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
AuthorDate: Tue Sep  1 08:16:12 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Tue Sep  1 08:16:12 2015 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=c0b79811

sci-mathematics/petsc: Add subslot for fftw dependency

Package-Manager: portage-2.2.20.1

 sci-mathematics/petsc/ChangeLog          | 4 ++++
 sci-mathematics/petsc/petsc-3.5.3.ebuild | 2 +-
 sci-mathematics/petsc/petsc-3.6.0.ebuild | 2 +-
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index ede47d8..861d62b 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,10 @@
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
 # $Id$
 
+  01 Sep 2015; Marius Brehler <marbre@linux.sungazer.de> petsc-3.5.3.ebuild,
+  petsc-3.6.0.ebuild:
+  sci-mathematics/petsc: Add subslot for fftw dependency
+
   23 Jun 2015; Matthias Maier <tamiko@gentoo.org> petsc-3.5.3.ebuild,
   petsc-3.6.0.ebuild:
   sci-mathematics/petsc: Avoid a sandbox violation, bug #548498

diff --git a/sci-mathematics/petsc/petsc-3.5.3.ebuild b/sci-mathematics/petsc/petsc-3.5.3.ebuild
index 44076f7..a5d339b 100644
--- a/sci-mathematics/petsc/petsc-3.5.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.3.ebuild
@@ -38,7 +38,7 @@ RDEPEND="
 	virtual/lapack
 	afterimage? ( media-libs/libafterimage )
 	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw[mpi?] )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
 	hdf5? ( sci-libs/hdf5[mpi?] )
 	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
 	mpi? ( virtual/mpi[cxx?,fortran?] )

diff --git a/sci-mathematics/petsc/petsc-3.6.0.ebuild b/sci-mathematics/petsc/petsc-3.6.0.ebuild
index 6a5ce37..874eca0 100644
--- a/sci-mathematics/petsc/petsc-3.6.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.6.0.ebuild
@@ -38,7 +38,7 @@ RDEPEND="
 	virtual/lapack
 	afterimage? ( media-libs/libafterimage )
 	boost? ( dev-libs/boost )
-	fftw? ( sci-libs/fftw[mpi?] )
+	fftw? ( sci-libs/fftw:3.0[mpi?] )
 	hdf5? ( sci-libs/hdf5[mpi?] )
 	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
 	mpi? ( virtual/mpi[cxx?,fortran?] )


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2015-06-24  9:51 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2015-06-24  9:51 UTC (permalink / raw
  To: gentoo-commits

commit:     8b2c35ac92ac6644a09d897c1616ed3753396bff
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 23 18:03:38 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Tue Jun 23 18:03:38 2015 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=8b2c35ac

sci-mathematics/petsc: Avoid a sandbox violation, bug #548498

Package-Manager: portage-2.2.18

 sci-mathematics/petsc/ChangeLog          | 4 ++++
 sci-mathematics/petsc/petsc-3.5.3.ebuild | 7 +++++++
 sci-mathematics/petsc/petsc-3.6.0.ebuild | 7 +++++++
 3 files changed, 18 insertions(+)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 858b694..1f8dcbb 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,10 @@
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  23 Jun 2015; Matthias Maier <tamiko@gentoo.org> petsc-3.5.3.ebuild,
+  petsc-3.6.0.ebuild:
+  sci-mathematics/petsc: Avoid a sandbox violation, bug #548498
+
 *petsc-3.6.0 (23 Jun 2015)
 
   23 Jun 2015; Matthias Maier <tamiko@gentoo.org>

diff --git a/sci-mathematics/petsc/petsc-3.5.3.ebuild b/sci-mathematics/petsc/petsc-3.5.3.ebuild
index 09e5bfb..c7f0269 100644
--- a/sci-mathematics/petsc/petsc-3.5.3.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.3.ebuild
@@ -74,6 +74,13 @@ src_prepare() {
 }
 
 src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
 	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
 	petsc_enable() {
 		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"

diff --git a/sci-mathematics/petsc/petsc-3.6.0.ebuild b/sci-mathematics/petsc/petsc-3.6.0.ebuild
index 6c96de3..d7ee394 100644
--- a/sci-mathematics/petsc/petsc-3.6.0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.6.0.ebuild
@@ -77,6 +77,13 @@ src_prepare() {
 }
 
 src_configure() {
+	# bug 548498
+	# PETSc runs mpi processes during configure that result in a sandbox
+	# violation by trying to open /proc/mtrr rw. This is not easy to
+	# mitigate because it happens in libpciaccess.so called by libhwloc.so,
+	# which is used by libmpi.so.
+	addpredict /proc/mtrr
+
 	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
 	petsc_enable() {
 		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2014-09-16 17:01 Christoph Junghans
  0 siblings, 0 replies; 59+ messages in thread
From: Christoph Junghans @ 2014-09-16 17:01 UTC (permalink / raw
  To: gentoo-commits

commit:     e677c77edead491f921c2d24a7935ee6be6b5af0
Author:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 16 16:55:59 2014 +0000
Commit:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Tue Sep 16 16:55:59 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=e677c77e

remove whitespace

Package-Manager: portage-2.2.8-r1

---
 sci-mathematics/petsc/ChangeLog          | 4 +++-
 sci-mathematics/petsc/petsc-3.4.2.ebuild | 2 +-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 7e45651..a3aabff 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,9 @@
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  16 Sep 2014; Christoph Junghans <ottxor@gentoo.org> petsc-3.4.2.ebuild:
+  remove whitespace
+
   01 Sep 2014; Jauhien Piatlicki <jauhien@gentoo.org> petsc-3.4.2.ebuild,
   petsc-3.5.1.ebuild:
   fix INCLUDE dirs in petscvariables
@@ -129,4 +132,3 @@
   13 Sep 2010; Thomas Kahle <tom111@gmx.de> +petsc-3.1_p4.ebuild,
   +files/fix-configure-pic.patch, +files/fix-mpiuni.patch, +metadata.xml:
   New package. Ebuild by J. M. Gottfried. Corresponding bug is 53386.
-

diff --git a/sci-mathematics/petsc/petsc-3.4.2.ebuild b/sci-mathematics/petsc/petsc-3.4.2.ebuild
index b0c767a..604da45 100644
--- a/sci-mathematics/petsc/petsc-3.4.2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.4.2.ebuild
@@ -172,7 +172,7 @@ src_configure() {
 			/usr/include \
 			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
 		--with-imagemagick=0 \
-		--with-python=0 \
+		--with-python=0
 
 # not yet tested:
 #		python bindings, netcdf


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2014-09-01 19:47 Jauhien Piatlicki
  0 siblings, 0 replies; 59+ messages in thread
From: Jauhien Piatlicki @ 2014-09-01 19:47 UTC (permalink / raw
  To: gentoo-commits

commit:     f6dac7e5f0c578330f3994c83afc702c78d785a4
Author:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  1 17:53:43 2014 +0000
Commit:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
CommitDate: Mon Sep  1 17:53:43 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=f6dac7e5

sci-mathematics/petsc: fix INCLUDE dirs in petscvariables

---
 sci-mathematics/petsc/ChangeLog          | 4 ++++
 sci-mathematics/petsc/petsc-3.4.2.ebuild | 4 ++++
 sci-mathematics/petsc/petsc-3.5.1.ebuild | 4 ++++
 3 files changed, 12 insertions(+)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index a0fd4a7..7e45651 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -4,6 +4,10 @@
 
   01 Sep 2014; Jauhien Piatlicki <jauhien@gentoo.org> petsc-3.4.2.ebuild,
   petsc-3.5.1.ebuild:
+  fix INCLUDE dirs in petscvariables
+
+  01 Sep 2014; Jauhien Piatlicki <jauhien@gentoo.org> petsc-3.4.2.ebuild,
+  petsc-3.5.1.ebuild:
   make configure work on systems with default python3 interpreter
 
   06 Jan 2014; Justin Lecher <jlec@gentoo.org> -petsc-3.3_p5.ebuild,

diff --git a/sci-mathematics/petsc/petsc-3.4.2.ebuild b/sci-mathematics/petsc/petsc-3.4.2.ebuild
index 065c95d..b0c767a 100644
--- a/sci-mathematics/petsc/petsc-3.4.2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.4.2.ebuild
@@ -216,6 +216,10 @@ src_install() {
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
 	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
 		-e "s:usr/lib:usr/$(get_libdir):g" \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
 

diff --git a/sci-mathematics/petsc/petsc-3.5.1.ebuild b/sci-mathematics/petsc/petsc-3.5.1.ebuild
index 147c36b..3d01eee 100644
--- a/sci-mathematics/petsc/petsc-3.5.1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.1.ebuild
@@ -211,6 +211,10 @@ src_install() {
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
 	sed -i \
+		-e "s:-I/include:-I${EPREFIX}/usr/include/${PN}:g" \
+		-e "s:-I/linux-gnu-cxx-opt/include:-I${EPREFIX}/usr/include/${PN}/${PETSC_ARCH}/include/:g" \
+		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
+	sed -i \
 		-e "s:usr/lib:usr/$(get_libdir):g" \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
 


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2014-09-01 13:06 Jauhien Piatlicki
  0 siblings, 0 replies; 59+ messages in thread
From: Jauhien Piatlicki @ 2014-09-01 13:06 UTC (permalink / raw
  To: gentoo-commits

commit:     da574aba923a790a2af6c043f5a3f94a0659bf53
Author:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  1 13:05:37 2014 +0000
Commit:     Jauhien Piatlicki <jauhien <AT> gentoo <DOT> org>
CommitDate: Mon Sep  1 13:05:37 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=da574aba

sci-mathematics/petsc: make configure work on systems with default python3 interpreter

---
 sci-mathematics/petsc/ChangeLog          | 4 ++++
 sci-mathematics/petsc/petsc-3.4.2.ebuild | 6 +++++-
 sci-mathematics/petsc/petsc-3.5.1.ebuild | 6 +++++-
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index f963803..a0fd4a7 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,10 @@
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  01 Sep 2014; Jauhien Piatlicki <jauhien@gentoo.org> petsc-3.4.2.ebuild,
+  petsc-3.5.1.ebuild:
+  make configure work on systems with default python3 interpreter
+
   06 Jan 2014; Justin Lecher <jlec@gentoo.org> -petsc-3.3_p5.ebuild,
   petsc-3.4.2.ebuild, metadata.xml:
   Punt base.eclass

diff --git a/sci-mathematics/petsc/petsc-3.4.2.ebuild b/sci-mathematics/petsc/petsc-3.4.2.ebuild
index 5263263..065c95d 100644
--- a/sci-mathematics/petsc/petsc-3.4.2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.4.2.ebuild
@@ -4,7 +4,9 @@
 
 EAPI=5
 
-inherit eutils flag-o-matic fortran-2 toolchain-funcs versionator
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
 
 MY_P="${PN}-$(replace_version_separator _ -)"
 
@@ -49,6 +51,7 @@ RDEPEND="
 #	imagemagick? ( media-gfx/imagemagick )
 
 DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
 	virtual/pkgconfig
 	dev-util/cmake
 "
@@ -66,6 +69,7 @@ S="${WORKDIR}/${MY_P}"
 
 src_prepare() {
 	epatch "${FILESDIR}"/${P%_*}-disable-rpath.patch
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
 }
 
 src_configure() {

diff --git a/sci-mathematics/petsc/petsc-3.5.1.ebuild b/sci-mathematics/petsc/petsc-3.5.1.ebuild
index bacf55e..147c36b 100644
--- a/sci-mathematics/petsc/petsc-3.5.1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.1.ebuild
@@ -4,7 +4,9 @@
 
 EAPI=5
 
-inherit eutils flag-o-matic fortran-2 toolchain-funcs versionator
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic fortran-2 python-any-r1 toolchain-funcs versionator
 
 MY_P="${PN}-$(replace_version_separator _ -)"
 
@@ -50,6 +52,7 @@ RDEPEND="
 #	imagemagick? ( media-gfx/imagemagick )
 
 DEPEND="${RDEPEND}
+	${PYTHON_DEPS}
 	virtual/pkgconfig
 	dev-util/cmake
 "
@@ -67,6 +70,7 @@ S="${WORKDIR}/${MY_P}"
 
 src_prepare() {
 	epatch "${FILESDIR}"/${P%_*}-disable-rpath.patch
+	sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
 }
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2014-08-10  8:05 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2014-08-10  8:05 UTC (permalink / raw
  To: gentoo-commits

commit:     9d554536bddca6aa5d766020a3513ec16bc5000b
Author:     layman <layman <AT> localhost>
AuthorDate: Sun Aug  3 08:55:23 2014 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Sun Aug  3 08:55:23 2014 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=9d554536

Install the .f90 fortran includes.

---
 sci-mathematics/petsc/petsc-3.5.1.ebuild | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.5.1.ebuild b/sci-mathematics/petsc/petsc-3.5.1.ebuild
index e4ea76a..bacf55e 100644
--- a/sci-mathematics/petsc/petsc-3.5.1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.5.1.ebuild
@@ -165,7 +165,7 @@ src_configure() {
 		--with-imagemagick=0 \
 		--with-python=0 \
 		$(petsc_with boost) \
-		$(petsc_with fftw) \
+		$(petsc_with fftw)
 
 # not yet tested:
 #		python bindings, netcdf, fftw
@@ -188,7 +188,7 @@ src_install() {
 	doins ${PETSC_ARCH}/include/*
 	if use fortran; then
 		insinto /usr/include/${PN}/finclude
-		doins include/finclude/*.h
+		doins -r include/finclude/*
 	fi
 	if ! use mpi ; then
 		insinto /usr/include/${PN}/mpiuni
@@ -219,6 +219,7 @@ src_install() {
 	doenvd 99petsc
 
 	dolib.so ${PETSC_ARCH}/lib/*.so
+	dolib.so ${PETSC_ARCH}/lib/*.so.*
 
 	if use doc ; then
 		einfo "installing documentation (this could take a while)"


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2014-01-06 18:33 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2014-01-06 18:33 UTC (permalink / raw
  To: gentoo-commits

commit:     9c6e622f1fef336d50457597c17671f0d3065e70
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  6 17:59:53 2014 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Mon Jan  6 17:59:53 2014 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=9c6e622f

sci-mathematics/petsc: Punt base.eclass

Package-Manager: portage-2.2.8

---
 sci-mathematics/petsc/ChangeLog           |   6 +-
 sci-mathematics/petsc/metadata.xml        |   2 +
 sci-mathematics/petsc/petsc-3.3_p5.ebuild | 223 ------------------------------
 sci-mathematics/petsc/petsc-3.4.2.ebuild  |  22 +--
 4 files changed, 18 insertions(+), 235 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index d2c6a94..f963803 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -1,7 +1,11 @@
 # ChangeLog for sci-mathematics/petsc
-# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  06 Jan 2014; Justin Lecher <jlec@gentoo.org> -petsc-3.3_p5.ebuild,
+  petsc-3.4.2.ebuild, metadata.xml:
+  Punt base.eclass
+
   22 Feb 2013; Justin Lecher <jlec@gentoo.org> metadata.xml:
   Drop unused local USE-description: 'metis'
 

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index eb753da..a22c6dc 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -8,6 +8,8 @@
     <flag name="complex-scalars">Make scalars complex</flag>
     <flag name="sparse">Use suitesparse (sci-libs/suitesparse) including cholmod (sci-libs/cholmod) for sparse factorization</flag>
     <flag name="superlu">Use superlu (sci-libs/superlu) for preconditioning</flag>
+    <flag name="mumps">PLEASE FIX MY DESCRIPTION</flag>
+    <flag name="scotch">PLEASE FIX MY DESCRIPTION</flag>
     <!-- Disabled:
   <flag name="boost">Use boost (dev-libs/boost)</flag>
 	-->

diff --git a/sci-mathematics/petsc/petsc-3.3_p5.ebuild b/sci-mathematics/petsc/petsc-3.3_p5.ebuild
deleted file mode 100644
index e0a1340..0000000
--- a/sci-mathematics/petsc/petsc-3.3_p5.ebuild
+++ /dev/null
@@ -1,223 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=4
-
-inherit base flag-o-matic fortran-2 toolchain-funcs versionator
-
-MY_P="${PN}-$(replace_version_separator _ -)"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="afterimage complex-scalars cxx debug doc
-	fortran hdf5 hypre mpi sparse superlu threads X"
-# Failed: boost imagemagick metis
-
-# hypre and superlu curretly exclude each other due to missing linking to hypre
-# if both are enabled
-REQUIRED_USE="
-	hypre? ( cxx mpi )
-	hdf5? ( mpi )
-	afterimage? ( X )
-	^^ ( hypre superlu )
-"
-#	imagemagick? ( X )
-
-RDEPEND="
-	virtual/blas
-	virtual/lapack
-	afterimage? ( media-libs/libafterimage )
-	hdf5? ( sci-libs/hdf5[mpi?] )
-	hypre? ( >=sci-libs/hypre-2.8.0b[mpi?] )
-	mpi? ( virtual/mpi[cxx?,fortran?] )
-	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
-	superlu? ( sci-libs/superlu )
-	X? ( x11-libs/libX11 )
-"
-#	boost? ( dev-libs/boost )
-#	metis? ( sci-libs/parmetis )
-#	imagemagick? ( media-gfx/imagemagick )
-
-DEPEND="${RDEPEND}
-	virtual/pkgconfig
-	dev-util/cmake
-"
-# cmake is used for parralel building
-# in some configuration setups, legacy build is used (slow)
-
-S="${WORKDIR}/${MY_P}"
-
-PATCHES=(
-	"${FILESDIR}"/${P%_*}-configure-pic.patch
-	"${FILESDIR}"/${P%_*}-disable-rpath.patch
-	"${FILESDIR}"/${P%_*}-fix-complex-threads.patch
-)
-
-src_configure() {
-	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
-	petsc_enable() {
-		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
-	}
-	# add external library:
-	# petsc_with use_flag libname libdir
-	# petsc_with use_flag libname include linking_libs
-	petsc_with() {
-		local myuse p=${2:-${1}}
-		if use ${1}; then
-			myuse="--with-${p}=1"
-			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
-				shift 3
-				myuse="${myuse} --with-${p}-lib=$@"
-			else
-				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
-			fi
-		else
-			myuse="--with-${p}=0"
-		fi
-		echo ${myuse}
-	}
-
-	# select between configure options depending on use flag
-	petsc_select() {
-		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
-	}
-
-	local mylang
-	local myopt
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	# environmental variables expected by petsc during build
-	export PETSC_DIR="${S}"
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-	fi
-
-	# C Support on Cxx builds is enabled if possible
-	# i.e. when not using complex scalars
-	# (no complex type for both available at the same time)
-
-	if use threads; then
-		ewarn "Threads support may be incomplete on $PN-3.3 release and is not officially supported."
-		ewarn "Upstream recommends not to enable threads support for production runs."
-	fi
-
-	# run petsc configure script
-	econf \
-		scrollOutput=1 \
-		CFLAGS="${CFLAGS}" \
-		CXXFLAGS="${CXXFLAGS}" \
-		LDFLAGS="${LDFLAGS}" \
-		--with-shared-libraries \
-		--with-single-library \
-		--with-clanguage=${mylang} \
-		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
-		--with-petsc-arch=${PETSC_ARCH} \
-		--with-precision=double \
-		--with-gnu-compilers \
-		--with-blas-lapack-lib="$($(tc-getPKG_CONFIG) --libs lapack)" \
-		$(petsc_enable debug debugging) \
-		$(petsc_enable mpi) \
-		$(petsc_select mpi cc mpicc $(tc-getCC)) \
-		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
-		$(petsc_enable fortran) \
-		$(use fortran && echo "$(petsc_select mpi fc mpif77 $(tc-getF77))") \
-		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_enable threads pthread) \
-		$(petsc_enable threads pthreadclasses) \
-		$(petsc_select complex-scalars scalar-type complex real) \
-		--with-windows-graphics=0 \
-		--with-matlab=0 \
-		--with-cmake=cmake \
-		$(petsc_with afterimage afterimage \
-			/usr/include/libAfterImage -lAfterImage) \
-		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre \
-			/usr/include/hypre -lHYPRE) \
-		$(petsc_with sparse cholmod) \
-		$(petsc_with superlu superlu \
-			/usr/include/superlu -lsuperlu) \
-		$(petsc_with X x) \
-		$(petsc_with X x11) \
-		--with-imagemagick=0 \
-		--with-python=0 \
-		--with-scotch=0
-
-# not yet tested:
-#		python bindings, sctotch, netcdf, scalapack
-# non-working:
-#		fftw: no mpi-implementaion available in gentoo
-
-# failed dependencies, perhaps fixed in upstream soon:
-#		$(petsc_with metis parmetis) \ # needs metis too (>=5.0.2)
-#		$(petsc_with boost) \
-#		$(petsc_with imagemagick imagemagick \
-#			/usr/include/ImageMagick $($(tc-getPKG_CONFIG) --libs MagickCore)) \
-}
-
-src_install() {
-	# petsc install structure is very different from
-	# installing headers to /usr/include/petsc and lib to /usr/lib
-	# it also installs many unneeded executables and scripts
-	# so manual install is easier than cleanup after "emake install"
-	insinto /usr/include/${PN}
-	doins include/*.h*
-	insinto /usr/include/${PN}/${PETSC_ARCH}/include
-	doins ${PETSC_ARCH}/include/*
-	if use fortran; then
-		insinto /usr/include/${PN}/finclude
-		doins include/finclude/*.h
-	fi
-	if ! use mpi ; then
-		insinto /usr/include/${PN}/mpiuni
-		doins include/mpiuni/*.h
-	fi
-	insinto /usr/include/${PN}/conf
-	doins conf/{variables,rules,test}
-	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
-	doins ${PETSC_ARCH}/conf/{petscrules,petscvariables,RDict.db}
-	insinto /usr/include/${PN}/petsc-private
-	doins include/petsc-private/*.h
-
-	# fix configuration files: replace ${S} by installed location
-	sed -i \
-		-e "s:${S}::g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
-	sed -i \
-		-e "s:usr/lib:usr/$(get_libdir):g" \
-		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
-
-	# add information about installation directory and
-	# PETSC_ARCH to environmental variables
-	cat >> 99petsc <<- EOF
-		PETSC_ARCH=${PETSC_ARCH}
-		PETSC_DIR=${EPREFIX}/usr/include/${PN}
-	EOF
-	doenvd 99petsc
-
-	dolib.so ${PETSC_ARCH}/lib/*.so
-
-	if use doc ; then
-		einfo "installing documentation (this could take a while)"
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-}
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-}

diff --git a/sci-mathematics/petsc/petsc-3.4.2.ebuild b/sci-mathematics/petsc/petsc-3.4.2.ebuild
index 1d8462f..5263263 100644
--- a/sci-mathematics/petsc/petsc-3.4.2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.4.2.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
 EAPI=5
 
-inherit base flag-o-matic fortran-2 toolchain-funcs versionator
+inherit eutils flag-o-matic fortran-2 toolchain-funcs versionator
 
 MY_P="${PN}-$(replace_version_separator _ -)"
 
@@ -64,9 +64,9 @@ MAKEOPTS="${MAKEOPTS} -j1"
 
 S="${WORKDIR}/${MY_P}"
 
-PATCHES=(
-	"${FILESDIR}"/${P%_*}-disable-rpath.patch
-)
+src_prepare() {
+	epatch "${FILESDIR}"/${P%_*}-disable-rpath.patch
+}
 
 src_configure() {
 	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options
@@ -160,12 +160,12 @@ src_configure() {
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
 		$(petsc_with scotch ptscotch \
-		    /usr/include/scotch \
-	        [-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
+			/usr/include/scotch \
+		[-lptesmumps,-lptscotch,-lptscotcherr,-lscotch,-lscotcherr]) \
 		$(petsc_with mumps scalapack \
-		    /usr/include/scalapack -lscalapack) \
+			/usr/include/scalapack -lscalapack) \
 		$(petsc_with mumps mumps \
-		    /usr/include \
+			/usr/include \
 			[-lcmumps,-ldmumps,-lsmumps,-lzmumps,-lmumps_common,-lpord]) \
 		--with-imagemagick=0 \
 		--with-python=0 \
@@ -206,9 +206,9 @@ src_install() {
 	insinto /usr/include/${PN}/petsc-private
 	doins include/petsc-private/*.h
 
-	# fix configuration files: replace ${S} by installed location
+	# fix configuration files: replace "${S}" by installed location
 	sed -i \
-		-e "s:${S}::g" \
+		-e "s:"${S}"::g" \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/conf/petscvariables || die
 	sed -i \


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2013-02-22 10:15 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2013-02-22 10:15 UTC (permalink / raw
  To: gentoo-commits

commit:     acaa6ae3288524bbbcef01b9bb7ef682add42f70
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 22 09:31:41 2013 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Fri Feb 22 09:31:41 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=acaa6ae3

sci-mathematics/petsc: Drop unused local USE-description: 'metis'

Package-Manager: portage-2.2.0_alpha163

---
 sci-mathematics/petsc/ChangeLog    |    3 +++
 sci-mathematics/petsc/metadata.xml |    1 -
 2 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index fc4e7d4..d2c6a94 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,9 @@
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  22 Feb 2013; Justin Lecher <jlec@gentoo.org> metadata.xml:
+  Drop unused local USE-description: 'metis'
+
   22 Feb 2013; Justin Lecher <jlec@gentoo.org> -petsc-3.1_p8-r1.ebuild,
   -files/petsc-3.1_p8-configure-pic.patch,
   -files/petsc-3.1_p8-disable-rpath.patch, -petsc-3.2_p7.ebuild,

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 2e5b489..eb753da 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -5,7 +5,6 @@
   <use>
     <flag name="afterimage">Use Afterstep image library (media-libs/libafterimage)</flag>
     <flag name="hypre">Use HYPRE (sci-mathematics/hypre) and for preconditioning</flag>
-    <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
     <flag name="complex-scalars">Make scalars complex</flag>
     <flag name="sparse">Use suitesparse (sci-libs/suitesparse) including cholmod (sci-libs/cholmod) for sparse factorization</flag>
     <flag name="superlu">Use superlu (sci-libs/superlu) for preconditioning</flag>


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2013-02-10 22:11 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2013-02-10 22:11 UTC (permalink / raw
  To: gentoo-commits

commit:     0e5df6dfda0746deb6cda2caad33db7318c2bc80
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sun Feb 10 22:09:58 2013 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sun Feb 10 22:09:58 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=0e5df6df

added warning about petsc threads support

and swithed to scrolling config output which does not
scramble tty output (but is very verbose)

---
 sci-mathematics/petsc/petsc-3.3_p5.ebuild |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.3_p5.ebuild b/sci-mathematics/petsc/petsc-3.3_p5.ebuild
index 6f0acd7..81de267 100644
--- a/sci-mathematics/petsc/petsc-3.3_p5.ebuild
+++ b/sci-mathematics/petsc/petsc-3.3_p5.ebuild
@@ -106,21 +106,25 @@ src_configure() {
 		filter-flags -O*
 	fi
 
-	# enable C Support on Cxx build if possible
-	local petscCSupp
-	if use cxx && ! use complex-scalars; then
-		petscCSupp="--with-c-support=1"
+	# C Support on Cxx builds is enabled if possible
+	# i.e. when not using complex scalars
+	# (no complex type for both available at the same time)
+
+	if use threads; then
+		ewarn "Threads support may be incomplete on $PN-3.3 release and is not officially supported."
+		ewarn "Upstream recommends not to enable threads support for production runs."
 	fi
 
 	# run petsc configure script
 	econf \
+		scrollOutput=1 \
 		CFLAGS="${CFLAGS}" \
 		CXXFLAGS="${CXXFLAGS}" \
 		LDFLAGS="${LDFLAGS}" \
 		--with-shared-libraries \
 		--with-single-library \
 		--with-clanguage=${mylang} \
-		$petscCSupp \
+		$(use cxx && ! use complex-scalars && echo "with-c-support=1") \
 		--with-petsc-arch=${PETSC_ARCH} \
 		--with-precision=double \
 		--with-gnu-compilers \


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2013-01-07 22:16 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2013-01-07 22:16 UTC (permalink / raw
  To: gentoo-commits

commit:     a2efbd398f8931cfe4e8ba27abb6c1318e920ba8
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Mon Jan  7 22:15:52 2013 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Mon Jan  7 22:15:52 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=a2efbd39

fixed repman issues

also adding missing digests

---
 sci-mathematics/petsc/petsc-3.2_p7.ebuild |    4 ++--
 sci-mathematics/petsc/petsc-3.3_p5.ebuild |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p7.ebuild b/sci-mathematics/petsc/petsc-3.2_p7.ebuild
index 5c8f5b5..6bd5bc4 100644
--- a/sci-mathematics/petsc/petsc-3.2_p7.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
@@ -46,8 +46,8 @@ RDEPEND="
 
 DEPEND="${RDEPEND}
 	virtual/fortran
+	virtual/pkgconfig
 	dev-lang/python
-	dev-util/pkgconfig
 	dev-util/cmake
 "
 # cmake is used for parralel building

diff --git a/sci-mathematics/petsc/petsc-3.3_p5.ebuild b/sci-mathematics/petsc/petsc-3.3_p5.ebuild
index de5dd8f..42ed2a2 100644
--- a/sci-mathematics/petsc/petsc-3.3_p5.ebuild
+++ b/sci-mathematics/petsc/petsc-3.3_p5.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
@@ -46,8 +46,8 @@ RDEPEND="
 
 DEPEND="${RDEPEND}
 	virtual/fortran
+	virtual/pkgconfig
 	dev-lang/python
-	dev-util/pkgconfig
 	dev-util/cmake
 "
 # cmake is used for parralel building


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-10-05 14:09 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-10-05 14:09 UTC (permalink / raw
  To: gentoo-commits

commit:     ea745cfc2f1d71cb5a3be4d2462a6e26ef20f926
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Fri Oct  5 14:09:09 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Fri Oct  5 14:09:09 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=ea745cfc

fix to build petsc in Gentoo Prefix (thanks to Matthias Maier)

---
 sci-mathematics/petsc/petsc-3.3_p1.ebuild |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.3_p1.ebuild b/sci-mathematics/petsc/petsc-3.3_p1.ebuild
index 36e2d7a..0490a56 100644
--- a/sci-mathematics/petsc/petsc-3.3_p1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.3_p1.ebuild
@@ -74,7 +74,7 @@ src_configure() {
 		if use ${1}; then
 			myuse="--with-${p}=1"
 			if [[ $# -ge 4 ]]; then
-				myuse="${myuse} --with-${p}-include=${3}"
+				myuse="${myuse} --with-${p}-include=${EPREFIX}${3}"
 				shift 3
 				myuse="${myuse} --with-${p}-lib=$@"
 			else


^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-06-09  6:35 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-06-09  6:35 UTC (permalink / raw
  To: gentoo-commits

commit:     3d7bcfb4cef28dac29166f9c87b464c5b3845d5e
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Jun  9 06:34:43 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Jun  9 06:34:43 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=3d7bcfb4

added missing private headers

folder renamed from 3.2->3.3:
private -> petsc-private

---
 sci-mathematics/petsc/petsc-3.3_p0.ebuild |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.3_p0.ebuild b/sci-mathematics/petsc/petsc-3.3_p0.ebuild
index 285fe6b..defd77c 100644
--- a/sci-mathematics/petsc/petsc-3.3_p0.ebuild
+++ b/sci-mathematics/petsc/petsc-3.3_p0.ebuild
@@ -179,6 +179,8 @@ src_install() {
 	doins conf/{variables,rules,test}
 	insinto /usr/include/${PN}/${PETSC_ARCH}/conf
 	doins ${PETSC_ARCH}/conf/{petscrules,petscvariables,RDict.db}
+	insinto /usr/include/${PN}/petsc-private
+	doins include/petsc-private/*.h
 
 	# fix configuration files: replace ${S} by installed location
 	sed -i \



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-05-23 19:56 Kacper Kowalik
  0 siblings, 0 replies; 59+ messages in thread
From: Kacper Kowalik @ 2012-05-23 19:56 UTC (permalink / raw
  To: gentoo-commits

commit:     2325fe7e6c7faa3348721641369484424de39440
Author:     Kacper Kowalik (Xarthisius) <xarthisius <AT> gentoo <DOT> org>
AuthorDate: Wed May 23 19:52:47 2012 +0000
Commit:     Kacper Kowalik <xarthisius <AT> gentoo <DOT> org>
CommitDate: Wed May 23 19:52:47 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=2325fe7e

[sci-mathematics/petsc] add eutils.eclass for epatch

---
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
index 818cff1..b5cc3ce 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=3
 
-inherit flag-o-matic fortran-2 toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs eutils
 
 MY_P="${PN}-${PV/_/-}"
 



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-23 18:33 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-23 18:33 UTC (permalink / raw
  To: gentoo-commits

commit:     73a230a45861be10fb5c4eeb6eafc5f482899856
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Fri Mar 23 18:32:41 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Fri Mar 23 18:32:41 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=73a230a4

using PATCHES variable instead of epatch

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index a3b11c4..a0b84e0 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=4
 
-inherit eutils flag-o-matic fortran-2 toolchain-funcs versionator
+inherit base flag-o-matic fortran-2 toolchain-funcs versionator
 
 MY_P="${PN}-$(replace_version_separator _ -)"
 
@@ -55,14 +55,13 @@ DEPEND="${RDEPEND}
 
 S="${WORKDIR}/${MY_P}"
 
-src_prepare() {
-	epatch \
-		"${FILESDIR}"/${P}-configure-pic.patch \
-		"${FILESDIR}"/${P}-disable-env-warnings.patch \
-		"${FILESDIR}"/${P}-disable-rpath.patch \
-		"${FILESDIR}"/${P}-fix-xops.patch \
-		"${FILESDIR}"/${P}-fix-afterimage.patch
-}
+PATCHES=(
+	"${FILESDIR}"/${P}-configure-pic.patch
+	"${FILESDIR}"/${P}-disable-env-warnings.patch
+	"${FILESDIR}"/${P}-disable-rpath.patch
+	"${FILESDIR}"/${P}-fix-xops.patch
+	"${FILESDIR}"/${P}-fix-afterimage.patch
+)
 
 src_configure() {
 	# petsc uses --with-blah=1 and --with-blah=0 to en/disable options



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-06 23:09 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-06 23:09 UTC (permalink / raw
  To: gentoo-commits

commit:     f7f2fd1f78ce27b03911c93c56ca6d56c1041225
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Tue Mar  6 23:05:16 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Tue Mar  6 23:05:16 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=f7f2fd1f

disabled imagemagick, fixed lib configuring

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   29 +++++++++++++++++++----------
 1 files changed, 19 insertions(+), 10 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index b1ea99f..a3b11c4 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -16,8 +16,8 @@ LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
 IUSE="afterimage complex-scalars cxx debug doc
-	fortran hdf5 hypre imagemagick metis mpi sparse superlu threads X"
-# Failed: boost
+	fortran hdf5 hypre metis mpi sparse superlu threads X"
+# Failed: boost imagemagick
 
 # hypre and superlu curretly exclude each other due to missing linking to hypre
 # if both are enabled
@@ -25,9 +25,9 @@ REQUIRED_USE="
 	hypre? ( cxx mpi )
 	hdf5? ( mpi )
 	afterimage? ( X )
-	imagemagick? ( X )
 	^^ ( hypre superlu )
 "
+#	imagemagick? ( X )
 
 RDEPEND="
 	virtual/blas
@@ -35,7 +35,6 @@ RDEPEND="
 	afterimage? ( media-libs/libafterimage )
 	hdf5? ( sci-libs/hdf5[mpi?] )
 	hypre? ( sci-libs/hypre[mpi?] )
-	imagemagick? ( media-gfx/imagemagick )
 	metis? ( sci-libs/parmetis )
 	mpi? ( virtual/mpi[cxx?,fortran?] )
 	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
@@ -43,6 +42,7 @@ RDEPEND="
 	X? ( x11-libs/libX11 )
 "
 #	boost? ( dev-libs/boost )
+#	imagemagick? ( media-gfx/imagemagick )
 
 DEPEND="${RDEPEND}
 	virtual/fortran
@@ -79,7 +79,7 @@ src_configure() {
 			if [[ $# -ge 4 ]]; then
 				myuse="${myuse} --with-${p}-include=${3}"
 				shift 3
-				myuse="${myuse} --with-${p}-lib=\"$@\""
+				myuse="${myuse} --with-${p}-lib=$@"
 			else
 				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
 			fi
@@ -135,21 +135,30 @@ src_configure() {
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
 		--with-cmake=cmake \
-		$(petsc_with afterimage afterimage /usr/include/libAfterImage -lAfterImage) \
+		$(petsc_with afterimage afterimage \
+			/usr/include/libAfterImage -lAfterImage) \
 		$(petsc_with hdf5) \
-		$(petsc_with hypre hypre /usr/include/hypre -lHYPRE) \
-		$(petsc_with imagemagick imagemagick /usr/include/ImageMagick $(pkg-config --libs MagickCore)) \
+		$(petsc_with hypre hypre \
+			/usr/include/hypre -lHYPRE) \
 		$(petsc_with metis parmetis) \
 		$(petsc_with sparse cholmod) \
-		$(petsc_with superlu superlu  /usr/include/superlu -lsuperlu) \
+		$(petsc_with superlu superlu \
+			/usr/include/superlu -lsuperlu) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
+		--with-imagemagick=0 \
 		--with-python=0 \
 		--with-scotch=0
-		# not yet tested: python bindings, sctotch support
+
+# not yet tested:
+#		python bindings, sctotch, netcdf, scalapack
+# non-working:
+#		fftw: no mpi-implementaion available in gentoo
 
 # failed dependencies, perhaps fixed in upstream soon:
 #		$(petsc_with boost) \
+#		$(petsc_with imagemagick imagemagick \
+#			/usr/include/ImageMagick $(pkg-config --libs MagickCore)) \
 }
 
 src_install() {



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-06 22:15 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-06 22:15 UTC (permalink / raw
  To: gentoo-commits

commit:     d7f3beeed83c0f03321b18d832ab51406b2e6643
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Tue Mar  6 22:15:51 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Tue Mar  6 22:15:51 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=d7f3beee

moved comments out of the argument list

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 51a3559..b1ea99f 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -48,7 +48,10 @@ DEPEND="${RDEPEND}
 	virtual/fortran
 	dev-lang/python
 	dev-util/pkgconfig
+	dev-util/cmake
 "
+# cmake is used for parralel building
+# in some configuration setups, legacy build is used (slow)
 
 S="${WORKDIR}/${MY_P}"
 
@@ -120,7 +123,6 @@ src_configure() {
 		--with-gnu-compilers \
 		--with-blas-lapack-lib="$(pkg-config --libs lapack)" \
 		$(petsc_enable debug debugging) \
-		$(petsc_with imagemagick imagemagick /usr/include/ImageMagick $(pkg-config --libs MagickCore)) \
 		$(petsc_enable mpi) \
 		$(petsc_select mpi cc mpicc $(tc-getCC)) \
 		$(petsc_select mpi cxx mpicxx $(tc-getCXX)) \
@@ -132,17 +134,19 @@ src_configure() {
 		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
-		--with-python=0 \ # why not?
-		--with-cmake=cmake \ # what for?
+		--with-cmake=cmake \
 		$(petsc_with afterimage afterimage /usr/include/libAfterImage -lAfterImage) \
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/include/hypre -lHYPRE) \
+		$(petsc_with imagemagick imagemagick /usr/include/ImageMagick $(pkg-config --libs MagickCore)) \
 		$(petsc_with metis parmetis) \
 		$(petsc_with sparse cholmod) \
 		$(petsc_with superlu superlu  /usr/include/superlu -lsuperlu) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
-		--with-scotch=0 # why not?
+		--with-python=0 \
+		--with-scotch=0
+		# not yet tested: python bindings, sctotch support
 
 # failed dependencies, perhaps fixed in upstream soon:
 #		$(petsc_with boost) \
@@ -177,7 +181,6 @@ src_install() {
 		-e "s:usr/lib:usr/$(get_libdir):g" \
 		"${ED}"/usr/include/${PN}/${PETSC_ARCH}/include/petscconf.h || die
 
-
 	# add information about installation directory and
 	# PETSC_ARCH to environmental variables
 	cat >> 99petsc <<- EOF



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-05 16:11 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-05 16:11 UTC (permalink / raw
  To: gentoo-commits

commit:     a4f4b83914fec669a8c3684551a8a5b2bb721a12
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Mon Mar  5 16:10:46 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Mon Mar  5 16:10:46 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=a4f4b839

fix missing linking if hypre and superlu enabled

this is a workaround, perhaps this problem will be fixed in upstream

---
 sci-mathematics/petsc/metadata.xml        |    3 ++-
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   10 +++++++---
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 10bb79f..f0f9f18 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -4,10 +4,11 @@
 <herd>sci-mathematics</herd>
 <use>
   <flag name="afterimage">Use Afterstep image library (media-libs/libafterimage)</flag>
-  <flag name="hypre">Use HYPRE (sci-mathematics/hypre) and superlu (sci-libs/superlu) for preconditioning</flag>
+  <flag name="hypre">Use HYPRE (sci-mathematics/hypre) and for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
   <flag name="complex-scalars">Make scalars complex</flag>
   <flag name="sparse">Use suitesparse (sci-libs/suitesparse) including cholmod (sci-libs/cholmod) for sparse factorization</flag>
+  <flag name="superlu">Use superlu (sci-libs/superlu) for preconditioning</flag>
   <!-- Disabled:
   <flag name="boost">Use boost (dev-libs/boost)</flag>
 	-->

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 23dc7ca..5426f69 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -16,13 +16,16 @@ LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
 IUSE="afterimage complex-scalars cxx debug doc \
-	fortran hdf5 hypre metis mpi sparse threads X"
+	fortran hdf5 hypre metis mpi sparse superlu threads X"
 # Failed: boost imagemagick
 
+# hypre and superlu curretly exclude each other due to missing linking to hypre
+# if both are enabled
 REQUIRED_USE="
 	hypre? ( cxx mpi )
 	hdf5? ( mpi )
 	afterimage? ( X )
+	^^ ( hypre superlu )
 "
 #	imagemagick? ( X )
 
@@ -30,11 +33,12 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
 	virtual/lapack
 	virtual/blas
-	hypre? ( sci-libs/hypre sci-libs/superlu )
+	hypre? ( sci-libs/hypre )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5 )
 	afterimage? ( media-libs/libafterimage )
 	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
+	superlu? ( sci-libs/superlu )
 "
 #	boost? ( dev-libs/boost )
 #	imagemagick? ( media-gfx/imagemagick )
@@ -128,9 +132,9 @@ src_configure(){
 			/usr/$(get_libdir)/libAfterImage.so /usr/include/libAfterImage) \
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
-		$(petsc_with hypre superlu /usr/$(get_libdir)/libsuperlu.so /usr/include/superlu) \
 		$(petsc_with metis parmetis) \
 		$(petsc_with sparse cholmod) \
+		$(petsc_with superlu superlu /usr/$(get_libdir)/libsuperlu.so /usr/include/superlu) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
 		--with-scotch=0



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-04 21:16 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-04 21:16 UTC (permalink / raw
  To: gentoo-commits

commit:     4b1440543f9105301337cd671a6e7e563db64b73
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sun Mar  4 21:15:19 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sun Mar  4 21:15:19 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=4b144054

added superlu on activated hypre flag

since superlu is in the hypre depencencies anyway.
Also switched to using the econf macro to have configure options
displayed during build.

---
 sci-mathematics/petsc/metadata.xml        |    4 ++--
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   13 ++++++-------
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 9bbff56..10bb79f 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -4,10 +4,10 @@
 <herd>sci-mathematics</herd>
 <use>
   <flag name="afterimage">Use Afterstep image library (media-libs/libafterimage)</flag>
-  <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
+  <flag name="hypre">Use HYPRE (sci-mathematics/hypre) and superlu (sci-libs/superlu) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
   <flag name="complex-scalars">Make scalars complex</flag>
-  <flag name="sparse">Use cholmod and suitesparse for sparse factorization</flag>
+  <flag name="sparse">Use suitesparse (sci-libs/suitesparse) including cholmod (sci-libs/cholmod) for sparse factorization</flag>
   <!-- Disabled:
   <flag name="boost">Use boost (dev-libs/boost)</flag>
 	-->

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 46a2344..23dc7ca 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -30,11 +30,11 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
 	virtual/lapack
 	virtual/blas
-	hypre? ( sci-libs/hypre )
+	hypre? ( sci-libs/hypre sci-libs/superlu )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5 )
 	afterimage? ( media-libs/libafterimage )
-	sparse? ( sci-libs/suitesparse sci-libs/cholmod )
+	sparse? ( sci-libs/suitesparse >=sci-libs/cholmod-1.7.0 )
 "
 #	boost? ( dev-libs/boost )
 #	imagemagick? ( media-gfx/imagemagick )
@@ -98,8 +98,7 @@ src_configure(){
 	fi
 
 	# run petsc configure script
-	./configure \
-		--prefix="${EPREFIX}/usr" \
+	econf \
 		CFLAGS="${CFLAGS}" \
 		CXXFLAGS="${CXXFLAGS}" \
 		LDFLAGS="${LDFLAGS}" \
@@ -129,14 +128,14 @@ src_configure(){
 			/usr/$(get_libdir)/libAfterImage.so /usr/include/libAfterImage) \
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
+		$(petsc_with hypre superlu /usr/$(get_libdir)/libsuperlu.so /usr/include/superlu) \
 		$(petsc_with metis parmetis) \
 		$(petsc_with sparse cholmod) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
-		--with-scotch=0 \
-		${EXTRA_ECONF} || die "configuration failed"
+		--with-scotch=0
 
-# failed dependencies, perhaps fixed in upstream:
+# failed dependencies, perhaps fixed in upstream soon:
 #		$(petsc_with boost) \
 #		$(petsc_with imagemagick imagemagick /usr/$(get_libdir)/libMagickCore.so /usr/include/ImageMagick) \
 }



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-04 15:19 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-04 15:19 UTC (permalink / raw
  To: gentoo-commits

commit:     c3a9f292a4891ba7ccdfae201e4c6d91f504ed27
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sun Mar  4 15:18:52 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sun Mar  4 15:18:52 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=c3a9f292

got sparse flag working

---
 sci-mathematics/petsc/metadata.xml        |    2 +-
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |    8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index dea22b9..9bbff56 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -7,9 +7,9 @@
   <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
   <flag name="complex-scalars">Make scalars complex</flag>
+  <flag name="sparse">Use cholmod and suitesparse for sparse factorization</flag>
   <!-- Disabled:
   <flag name="boost">Use boost (dev-libs/boost)</flag>
-  <flag name="sparse">Use cholmod (sci-libs/cholmod) for sparse factorization</flag>
 	-->
 </use>
 </pkgmetadata>

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index f91d6de..46a2344 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -16,8 +16,8 @@ LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
 IUSE="afterimage complex-scalars cxx debug doc \
-	fortran hdf5 hypre metis mpi threads X"
-# Failed: boost imagemagick sparse 
+	fortran hdf5 hypre metis mpi sparse threads X"
+# Failed: boost imagemagick
 
 REQUIRED_USE="
 	hypre? ( cxx mpi )
@@ -34,10 +34,10 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5 )
 	afterimage? ( media-libs/libafterimage )
+	sparse? ( sci-libs/suitesparse sci-libs/cholmod )
 "
 #	boost? ( dev-libs/boost )
 #	imagemagick? ( media-gfx/imagemagick )
-#	sparse? ( sci-libs/cholmod )
 
 DEPEND="${RDEPEND}
 	sys-devel/gcc[-nocxx,fortran?]
@@ -130,6 +130,7 @@ src_configure(){
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
 		$(petsc_with metis parmetis) \
+		$(petsc_with sparse cholmod) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
 		--with-scotch=0 \
@@ -138,7 +139,6 @@ src_configure(){
 # failed dependencies, perhaps fixed in upstream:
 #		$(petsc_with boost) \
 #		$(petsc_with imagemagick imagemagick /usr/$(get_libdir)/libMagickCore.so /usr/include/ImageMagick) \
-#		$(petsc_with sparse cholmod) \
 }
 
 src_install(){



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-04 14:31 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-04 14:31 UTC (permalink / raw
  To: gentoo-commits

commit:     f8af32d29dd0454f05ff052f76873302ea0b6318
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sun Mar  4 14:30:33 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sun Mar  4 14:30:33 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=f8af32d2

disabled non-working dependencies

to avoid confusion.
Left comments to re-enable them if fixed in upstream.

---
 sci-mathematics/petsc/metadata.xml        |    6 ++++--
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   21 ++++++++++++---------
 2 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index e80effd..dea22b9 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -4,10 +4,12 @@
 <herd>sci-mathematics</herd>
 <use>
   <flag name="afterimage">Use Afterstep image library (media-libs/libafterimage)</flag>
-  <flag name="boost">Use boost (dev-libs/boost)</flag>
   <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
-  <flag name="sparse">Use cholmod (sci-libs/cholmod) for sparse factorization</flag>
   <flag name="complex-scalars">Make scalars complex</flag>
+  <!-- Disabled:
+  <flag name="boost">Use boost (dev-libs/boost)</flag>
+  <flag name="sparse">Use cholmod (sci-libs/cholmod) for sparse factorization</flag>
+	-->
 </use>
 </pkgmetadata>

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 0d972ed..f91d6de 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -15,15 +15,16 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="afterimage boost complex-scalars cxx debug doc \
-	imagemagick fortran hdf5 hypre metis mpi sparse threads X"
+IUSE="afterimage complex-scalars cxx debug doc \
+	fortran hdf5 hypre metis mpi threads X"
+# Failed: boost imagemagick sparse 
 
 REQUIRED_USE="
 	hypre? ( cxx mpi )
 	hdf5? ( mpi )
-	imagemagick? ( X )
 	afterimage? ( X )
 "
+#	imagemagick? ( X )
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
@@ -32,11 +33,11 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	hypre? ( sci-libs/hypre )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5 )
-	boost? ( dev-libs/boost )
 	afterimage? ( media-libs/libafterimage )
-	imagemagick? ( media-gfx/imagemagick )
-	sparse? ( sci-libs/cholmod )
 "
+#	boost? ( dev-libs/boost )
+#	imagemagick? ( media-gfx/imagemagick )
+#	sparse? ( sci-libs/cholmod )
 
 DEPEND="${RDEPEND}
 	sys-devel/gcc[-nocxx,fortran?]
@@ -126,16 +127,18 @@ src_configure(){
 		--with-cmake=/usr/bin/cmake \
 		$(petsc_with afterimage afterimage \
 			/usr/$(get_libdir)/libAfterImage.so /usr/include/libAfterImage) \
-		$(petsc_with sparse cholmod) \
-		$(petsc_with boost) \
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
-		$(petsc_with imagemagick imagemagick /usr/$(get_libdir)/libMagickCore.so /usr/include/ImageMagick) \
 		$(petsc_with metis parmetis) \
 		$(petsc_with X x) \
 		$(petsc_with X x11) \
 		--with-scotch=0 \
 		${EXTRA_ECONF} || die "configuration failed"
+
+# failed dependencies, perhaps fixed in upstream:
+#		$(petsc_with boost) \
+#		$(petsc_with imagemagick imagemagick /usr/$(get_libdir)/libMagickCore.so /usr/include/ImageMagick) \
+#		$(petsc_with sparse cholmod) \
 }
 
 src_install(){



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-03 21:39 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-03 21:39 UTC (permalink / raw
  To: gentoo-commits

commit:     00865a7ae9024315189cebc506f9af1a3eddacf0
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Mar  3 21:38:13 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Mar  3 21:38:13 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=00865a7a

fixed disable X option and use deps

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index a4bc52e..d3aecb0 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -21,6 +21,7 @@ IUSE="afterimage boost complex-scalars cxx debug doc \
 REQUIRED_USE="
 	hypre? ( cxx mpi )
 	hdf5? ( mpi )
+	afterimage? ( X )
 "
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
@@ -126,6 +127,7 @@ src_configure(){
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
 		$(petsc_with metis parmetis) \
+		$(petsc_with X x) \
 		$(petsc_with X x11) \
 		--with-scotch=0 \
 		${EXTRA_ECONF} || die "configuration failed"



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-03 16:02 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-03 16:02 UTC (permalink / raw
  To: gentoo-commits

commit:     161478d0cdf388cd31c2db5c7c639998def50a39
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Mar  3 16:01:49 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Mar  3 16:01:49 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=161478d0

added optional boost and afterimage dep

---
 sci-mathematics/petsc/metadata.xml        |    2 ++
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   23 ++++++++++++++++-------
 2 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 7f25b9f..e80effd 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -3,9 +3,11 @@
 <pkgmetadata>
 <herd>sci-mathematics</herd>
 <use>
+  <flag name="afterimage">Use Afterstep image library (media-libs/libafterimage)</flag>
   <flag name="boost">Use boost (dev-libs/boost)</flag>
   <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
+  <flag name="sparse">Use cholmod (sci-libs/cholmod) for sparse factorization</flag>
   <flag name="complex-scalars">Make scalars complex</flag>
 </use>
 </pkgmetadata>

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 7f090fc..a4bc52e 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -15,7 +15,13 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="boost complex-scalars cxx debug doc fortran hdf5 hypre metis mpi threads X"
+IUSE="afterimage boost complex-scalars cxx debug doc \
+	fortran hdf5 hypre metis mpi sparse threads X"
+
+REQUIRED_USE="
+	hypre? ( cxx mpi )
+	hdf5? ( mpi )
+"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
@@ -23,8 +29,10 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	virtual/blas
 	hypre? ( sci-libs/hypre )
 	metis? ( sci-libs/parmetis )
-	hdf5? ( sci-libs/hdf5[!mpi?] )
+	hdf5? ( sci-libs/hdf5 )
 	boost? ( dev-libs/boost )
+	afterimage? ( media-libs/libafterimage )
+	sparse? ( sci-libs/cholmod )
 "
 
 DEPEND="${RDEPEND}
@@ -32,8 +40,6 @@ DEPEND="${RDEPEND}
 	dev-util/cmake
 "
 
-REQUIRED_USE="hypre? ( cxx mpi )"
-
 S="${WORKDIR}/${MY_P}"
 
 src_prepare(){
@@ -106,18 +112,21 @@ src_configure(){
 		$(petsc_enable fortran) \
 		$(use fortran && echo "$(petsc_select mpi fc /usr/bin/mpif77 $(tc-getF77))") \
 		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_with X) \
-		$(petsc_with boost) \
 		$(petsc_enable threads pthread) \
 		$(petsc_enable threads pthreadclasses) \
+		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
 		--with-python=0 \
 		--with-cmake=/usr/bin/cmake \
+		$(petsc_with afterimage afterimage \
+			/usr/$(get_libdir)/libAfterImage.so /usr/include/libAfterImage) \
+		$(petsc_with sparse cholmod) \
+		$(petsc_with boost) \
 		$(petsc_with hdf5) \
 		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
 		$(petsc_with metis parmetis) \
-		$(petsc_select complex-scalars scalar-type complex real) \
+		$(petsc_with X x11) \
 		--with-scotch=0 \
 		${EXTRA_ECONF} || die "configuration failed"
 }



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-03 14:28 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-03 14:28 UTC (permalink / raw
  To: gentoo-commits

commit:     c1e83820b43f582dd4e6c8b3c33d243522220809
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Mar  3 14:26:54 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Mar  3 14:26:54 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=c1e83820

further simplification, added more optional deps

simplification using the petsc_with script proposed by
bicatali (slightly reworked, some fixes)
added boost dependency and thread support

---
 sci-mathematics/petsc/metadata.xml        |    1 +
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   64 +++++++++++++++++------------
 2 files changed, 38 insertions(+), 27 deletions(-)

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 079f8ff..7f25b9f 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -3,6 +3,7 @@
 <pkgmetadata>
 <herd>sci-mathematics</herd>
 <use>
+  <flag name="boost">Use boost (dev-libs/boost)</flag>
   <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
   <flag name="complex-scalars">Make scalars complex</flag>

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index 643e146..7f090fc 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="complex-scalars cxx debug doc fortran hdf5 hypre metis mpi X"
+IUSE="boost complex-scalars cxx debug doc fortran hdf5 hypre metis mpi threads X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
@@ -24,6 +24,7 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	hypre? ( sci-libs/hypre )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5[!mpi?] )
+	boost? ( dev-libs/boost )
 "
 
 DEPEND="${RDEPEND}
@@ -37,6 +38,7 @@ S="${WORKDIR}/${MY_P}"
 
 src_prepare(){
 	epatch "${FILESDIR}/${PN}-configure-pic.patch"
+	epatch "${FILESDIR}/${PN}-disable-env-warnings.patch"
 	epatch "${FILESDIR}/${PN}-disable-rpath.patch"
 }
 
@@ -45,14 +47,28 @@ src_configure(){
 	petsc_enable(){
 		use "$1" && echo "--with-${2:-$1}=1" || echo "--with-${2:-$1}=0"
 	}
+	# add external library:
+	# petsc_with use_flag libname libdir
+	# petsc_with use_flag libname lib include
+	petsc_with() {
+		local myuse p=${2:-${1}}
+		if use ${1}; then
+			myuse="--with-${p}=1"
+			if [[ $# == 4 ]]; then
+				myuse="${myuse} --with-${p}-lib=\"${3}\""
+				myuse="${myuse} --with-${p}-include=${4}"
+			else
+				myuse="${myuse} --with-${p}-dir=${EPREFIX}${3:-/usr}"
+			fi
+		else
+			myuse="--with-${p}=0"
+		fi
+		echo ${myuse}
+	}
 	# select between configure options depending on use flag
-	pestc_select() {
+	petsc_select() {
 		use "$1" && echo "--with-$2=$3" || echo "--with-$2=$4"
 	}
-	# add info about library include dirs and lib file
-	petsc_lib_info(){
-		use "$1" && echo "--with-${4:-$1}-include=$2 --with-${4:-$1}-lib=$3"
-	}
 
 	local mylang
 	local myopt
@@ -64,21 +80,17 @@ src_configure(){
 	export PETSC_DIR="${S}"
 	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}"
 
-	# flags difficult to pass due to correct quoting of spaces
-	local myconf
-	myconf[1]="CFLAGS=${CFLAGS}"
-	myconf[2]="CXXFLAGS=${CXXFLAGS}"
-	myconf[3]="LDFLAGS=${LDFLAGS}"
-	myconf[4]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
-
 	if use debug; then
 		strip-flags
 		filter-flags -O*
 	fi
 
 	# run petsc configure script
-	python "${S}/config/configure.py" \
+	./configure \
 		--prefix="${EPREFIX}/usr" \
+		CFLAGS="${CFLAGS}" \
+		CXXFLAGS="${CXXFLAGS}" \
+		LDFLAGS="${LDFLAGS}" \
 		--with-shared-libraries \
 		--with-single-library \
 		--with-clanguage=${mylang} \
@@ -86,27 +98,28 @@ src_configure(){
 		--with-petsc-arch=${PETSC_ARCH} \
 		--with-precision=double \
 		--with-gnu-compilers \
+		--with-blas-lapack-lib="$(pkg-config --libs lapack)" \
 		$(petsc_enable debug debugging) \
-		$(petsc_enable fortran) \
 		$(petsc_enable mpi) \
 		$(petsc_select mpi cc /usr/bin/mpicc $(tc-getCC)) \
 		$(petsc_select mpi cxx /usr/bin/mpicxx $(tc-getCXX)) \
-		$(use fortran && $(pestc_select mpi fc /usr/bin/mpif77 $(tc-getF77))) \
+		$(petsc_enable fortran) \
+		$(use fortran && echo "$(petsc_select mpi fc /usr/bin/mpif77 $(tc-getF77))") \
 		$(petsc_enable mpi mpi-compilers) \
-		$(petsc_enable X) \
+		$(petsc_with X) \
+		$(petsc_with boost) \
+		$(petsc_enable threads pthread) \
+		$(petsc_enable threads pthreadclasses) \
 		--with-windows-graphics=0 \
 		--with-matlab=0 \
 		--with-python=0 \
 		--with-cmake=/usr/bin/cmake \
-		$(petsc_enable hdf5) \
-		$(petsc_lib_info hdf5 /usr/include /usr/$(get_libdir)/libhdf5.so) \
-		$(petsc_enable hypre) \
-		$(petsc_lib_info hypre /usr/include/hypre /usr/$(get_libdir)/libHYPRE.so) \
-		$(petsc_enable metis parmetis) \
-		$(petsc_lib_info metis /usr/include/parmetis /usr/$(get_libdir)/libparmetis.so parmetis) \
+		$(petsc_with hdf5) \
+		$(petsc_with hypre hypre /usr/$(get_libdir)/libHYPRE.so /usr/include/hypre) \
+		$(petsc_with metis parmetis) \
 		$(petsc_select complex-scalars scalar-type complex real) \
 		--with-scotch=0 \
-		"${myconf[@]}"
+		${EXTRA_ECONF} || die "configuration failed"
 }
 
 src_install(){
@@ -159,7 +172,4 @@ pkg_postinst() {
 	elog "The petsc ebuild is still under development."
 	elog "Help us improve the ebuild in:"
 	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-	elog "Note that PETSC_ARCH may be dropped in future since " \
-		"upstream now also supports installations without " \
-		"different subdirectories."
 }



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-03-03 12:37 Jens-Malte Gottfried
  0 siblings, 0 replies; 59+ messages in thread
From: Jens-Malte Gottfried @ 2012-03-03 12:37 UTC (permalink / raw
  To: gentoo-commits

commit:     41ed1fd94c2ef4ab44e3c65aa04214e09e767d90
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Sat Mar  3 12:18:07 2012 +0000
Commit:     Jens-Malte Gottfried <jmg <AT> godefridus <DOT> de>
CommitDate: Sat Mar  3 12:18:07 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=41ed1fd9

fixed banned dosed, added more comments

---
 sci-mathematics/petsc/petsc-3.2_p6.ebuild |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.2_p6.ebuild b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
index d82206c..643e146 100644
--- a/sci-mathematics/petsc/petsc-3.2_p6.ebuild
+++ b/sci-mathematics/petsc/petsc-3.2_p6.ebuild
@@ -110,6 +110,10 @@ src_configure(){
 }
 
 src_install(){
+	# petsc install structure is very different from
+	# installing headers to /usr/include/petsc and lib to /usr/lib
+	# it also installs many unneeded executables and scripts
+	# so manual install is easier than cleanup after "emake install"
 	insinto /usr/include/"${PN}"
 	doins "${S}"/include/*.h "${S}"/include/*.hh
 	insinto /usr/include/"${PN}/${PETSC_ARCH}"/include
@@ -122,14 +126,16 @@ src_install(){
 	doins "${S}"/conf/{variables,rules,test}
 	insinto /usr/include/"${PN}/${PETSC_ARCH}"/conf
 	doins "${S}/${PETSC_ARCH}"/conf/{petscrules,petscvariables,RDict.db}
-
 	insinto /usr/include/"${PN}"/private
 	doins "${S}"/include/private/*.h
 
-	dosed "s:${S}:/usr:g" /usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
-	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
-	dosed "s:INSTALL_DIR =.*:INSTALL_DIR = /usr:" /usr/include/"${PN}/${PETSC_ARCH}"/conf/petscvariables
+	# fix configuration files: replace ${S} by installed location
+	sed -i "s:${S}:/usr:g" ${D}/usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
+	sed -i "s:${PETSC_ARCH}/lib:$(get_libdir):g" ${D}/usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
+	sed -i "s:INSTALL_DIR =.*:INSTALL_DIR = /usr:" ${D}/usr/include/"${PN}/${PETSC_ARCH}"/conf/petscvariables
 
+	# add information about installation directory and
+	# PETSC_ARCH to environmental variables
 	cat >> "${T}"/99petsc <<- EOF
 	PETSC_ARCH=${PETSC_ARCH}
 	PETSC_DIR=/usr/include/${PN}
@@ -153,4 +159,7 @@ pkg_postinst() {
 	elog "The petsc ebuild is still under development."
 	elog "Help us improve the ebuild in:"
 	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
+	elog "Note that PETSC_ARCH may be dropped in future since " \
+		"upstream now also supports installations without " \
+		"different subdirectories."
 }



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-02-28 20:24 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2012-02-28 20:24 UTC (permalink / raw
  To: gentoo-commits

commit:     a36159de5ad3beccc41a443debe1348cbb3fd804
Author:     Jens-Malte Gottfried <jmgottfried <AT> web <DOT> de>
AuthorDate: Mon Feb 27 21:22:48 2012 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Mon Feb 27 21:22:48 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=a36159de

fixed hypre dependency

---
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
index a01b135..ddd7a4c 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -21,7 +21,7 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
 	virtual/lapack
 	virtual/blas
-	hypre? ( sci-libs/hypre[static-libs=] )
+	hypre? ( sci-libs/hypre )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5[!mpi?] )
 "



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2012-01-23  6:35 Sebastien Fabbro
  0 siblings, 0 replies; 59+ messages in thread
From: Sebastien Fabbro @ 2012-01-23  6:35 UTC (permalink / raw
  To: gentoo-commits

commit:     667550afc2c913d35fff9ebba1e98f1b9adf8767
Author:     Sébastien Fabbro <sebfabbro <AT> gmail <DOT> com>
AuthorDate: Mon Jan 23 06:35:00 2012 +0000
Commit:     Sebastien Fabbro <bicatali <AT> gentoo <DOT> org>
CommitDate: Mon Jan 23 06:35:00 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=667550af

switched to main tree hypre

---
 sci-mathematics/petsc/ChangeLog              |    7 +-
 sci-mathematics/petsc/petsc-3.1_p4.ebuild    |  134 -------------------
 sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild |  177 --------------------------
 sci-mathematics/petsc/petsc-3.1_p7.ebuild    |  177 --------------------------
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |    4 +-
 sci-mathematics/petsc/petsc-3.1_p8.ebuild    |  177 --------------------------
 6 files changed, 8 insertions(+), 668 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 0604c7f..7826fc6 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -1,7 +1,12 @@
 # ChangeLog for sci-mathematics/petsc
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  23 Jan 2012; Sébastien Fabbro <bicatali@gentoo.org> -petsc-3.1_p4.ebuild,
+  -petsc-3.1_p5-r2.ebuild, -petsc-3.1_p7.ebuild, -petsc-3.1_p8.ebuild,
+  petsc-3.1_p8-r1.ebuild:
+  switched to main tree hypre
+
   21 Jun 2011; Justin Lecher <jlec@gentoo.org> petsc-3.1_p4.ebuild,
   petsc-3.1_p5-r2.ebuild, petsc-3.1_p7.ebuild, petsc-3.1_p8.ebuild,
   petsc-3.1_p8-r1.ebuild, metadata.xml:

diff --git a/sci-mathematics/petsc/petsc-3.1_p4.ebuild b/sci-mathematics/petsc/petsc-3.1_p4.ebuild
deleted file mode 100644
index 6adee0a..0000000
--- a/sci-mathematics/petsc/petsc-3.1_p4.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=3
-
-inherit flag-o-matic fortran-2 toolchain-funcs
-
-MY_P="${PN}-${PV/_/-}"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/petsc-as/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="cxx debug doc fortran mpi static-libs X"
-
-RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
-	X? ( x11-libs/libX11 )
-	virtual/lapack
-	virtual/blas"
-
-DEPEND="${RDEPEND}
-	sys-devel/gcc[-nocxx,fortran?]"
-
-S="${WORKDIR}/${MY_P}"
-
-src_prepare(){
-	epatch "${FILESDIR}/${PN}-configure-pic.patch"
-	# My failed tries on the parallel build QA warnings:
-	# sed -i "s/-\?\(@\?\)\${OMAKE}/\1\${MAKE}/g" makefile || die "sed failed"
-	# sed -i "s/\ make /\ ${MAKE} /g" makefile || die "sed failed"
-}
-
-src_configure(){
-	local mylang
-	local myopt
-	local myconf
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	export PETSC_DIR="${S}" || die
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
-
-	if use mpi; then
-		## this works independently of the used mpi implementation
-		## (openmpi/mpich2)
-		myconf="${myconf} --with-cc=/usr/bin/mpicc --with-cxx=/usr/bin/mpicxx"
-		myconf="${myconf} --with-fc=/usr/bin/mpif77"
-		myconf="${myconf} --with-mpi=1 --with-mpi-compilers=1"
-
-		## of openmpi is used, the following works too, but fails with mpich2
-		#myconf="${myconf} --with-mpi-include=/usr/include"
-		## adding mpi libraries, -lmpi only is not sufficient if compiling
-		## with g++, mpi_f77 needed when using fortran (mpi_f90 caused errors)
-		#myconf="${myconf} --with-mpi-lib=[/usr/$(get_libdir)/libmpi.so"
-		#use cxx     && myconf="${myconf},/usr/$(get_libdir)/libmpi_cxx.so"
-		#use fortran && myconf="${myconf},/usr/$(get_libdir)/libmpi_f77.so"
-		#myconf="${myconf}]"
-		#myconf="${myconf} --known-mpi-shared=1"
-	else
-		myconf="${myconf} --with-cc=$(tc-getCC) --with-cxx=$(tc-getCXX)"
-		myconf="${myconf} --with-mpi=0"
-	fi
-
-	use X \
-		&& myconf="${myconf} --with-X=1" \
-		|| myconf="${myconf} --with-X=0"
-	use static-libs \
-		&& myconf="${myconf} --with-shared=0" \
-		|| myconf="${myconf} --with-shared=1"
-	use amd64 \
-		&& myconf="${myconf} --with-64-bit-indices=1" \
-		|| myconf="${myconf} --with-64-bit-indices=0"
-	use fortran \
-		&& myconf="${myconf} --with-fortran=1" \
-		|| myconf="${myconf} --with-fortran=0"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-		myconf="${myconf} --with-debugging=1"
-	else
-		myconf="${myconf} --with-debugging=0"
-	fi
-
-	python "${S}"/config/configure.py ${myconf} \
-		CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS}" \
-		--with-windows-graphics=0 --with-matlab=0 --with-python=0 \
-		--with-clanguage="${mylang}" --with-single-library=1 \
-		--with-petsc-arch="${PETSC_ARCH}" --with-precision=double \
-		--with-blas-lapack-lib="$(pkg-config --libs lapack)" \
-		|| die "PETSc configuration failed"
-}
-
-src_install(){
-	insinto /usr/include/"${PN}"
-	doins "${S}"/include/*.h "${S}"/include/*.hh
-	doins "${S}/${PETSC_ARCH}"/include/*.h
-
-	insinto /usr/include/"${PN}"/private
-	doins "${S}"/include/private/*.h
-
-	# fix paths stored in petscconf.h
-	dosed "s:${S}:/usr:g" /usr/include/"${PN}"/petscconf.h
-	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}"/petscconf.h \
-
-	if ! use mpi ; then
-		insinto /usr/include/"${PN}"/mpiuni
-		doins "${S}"/include/mpiuni/*.h
-	fi
-
-	if use doc ; then
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-
-	use static-libs \
-		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
-		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
-}
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-	elog "This ebuild is known to have parallel build issues, "
-	elog "hopefully resolved by upstream soon."
-	elog "Another problem is that you can break this package by"
-	elog "switching your mpi implementation without rebuild petsc."
-}

diff --git a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild b/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
deleted file mode 100644
index f3165c2..0000000
--- a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=3
-
-inherit flag-o-matic fortran-2 toolchain-funcs
-
-MY_P="${PN}-${PV/_/-}"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/petsc-as/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
-
-RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
-	X? ( x11-libs/libX11 )
-	virtual/lapack
-	virtual/blas
-	hypre? ( >=sci-mathematics/hypre-2.6.0b[static-libs=] )
-	metis? ( sci-libs/parmetis )
-	hdf5? ( sci-libs/hdf5[!mpi?] )
-"
-
-DEPEND="${RDEPEND}
-	sys-devel/gcc[-nocxx,fortran?]"
-
-S="${WORKDIR}/${MY_P}"
-
-if use hypre; then
-	use cxx || die "hypre needs cxx, please enable cxx or disable hypre use flag"
-	use mpi || die "hypre needs mpi, please enable mpi or disable hypre use flag"
-fi
-
-src_prepare(){
-	epatch "${FILESDIR}/${PN}-configure-pic.patch"
-	epatch "${FILESDIR}/${PN}-disable-rpath.patch"
-}
-
-src_configure(){
-	local mylang
-	local myopt
-	local myconf
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	export PETSC_DIR="${S}" || die
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
-
-	myconf[10]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
-	myconf[11]="CFLAGS=${CFLAGS}"
-	myconf[12]="CXXFLAGS=${CXXFLAGS}"
-	myconf[13]="LDFLAGS=${LDFLAGS}"
-	myconf[14]="--with-windows-graphics=0"
-	myconf[15]="--with-matlab=0"
-	myconf[16]="--with-python=0"
-	myconf[17]="--with-clanguage=${mylang}"
-	myconf[18]="--with-single-library=1"
-	myconf[19]="--with-petsc-arch=${PETSC_ARCH}"
-	myconf[20]="--with-precision=double"
-	myconf[21]="--with-gnu-compilers=1"
-	use amd64 \
-		&& myconf[22]="--with-64-bit-pointers=1" \
-		|| myconf[22]="--with-64-bit-pointers=0"
-	use cxx \
-		&& myconf[23]="--with-c-support=1"
-	use amd64 \
-		&& myconf[24]="--with-64-bit-indices=1" \
-		|| myconf[24]="--with-64-bit-indices=0"
-
-	if use mpi; then
-		myconf[30]="--with-cc=/usr/bin/mpicc"
-		myconf[31]="--with-cxx=/usr/bin/mpicxx"
-		use fortran && myconf[32]="--with-fc=/usr/bin/mpif77"
-		myconf[33]="--with-mpi=1"
-		myconf[34]="--with-mpi-compilers=1"
-	else
-		myconf[30]="--with-cc=$(tc-getCC)"
-		myconf[31]="--with-cxx=$(tc-getCXX)"
-		use fortran && myconf[32]="--with-fc=$(tc-getF77)"
-		myconf[33]="--with-mpi=0"
-	fi
-
-	use X \
-		&& myconf[40]="--with-X=1" \
-		|| myconf[40]="--with-X=0"
-	use static-libs \
-		&& myconf[41]="--with-shared=0" \
-		|| myconf[41]="--with-shared=1"
-	use fortran \
-		&& myconf[43]="--with-fortran=1" \
-		|| myconf[43]="--with-fortran=0"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-		myconf[44]="--with-debugging=1"
-	else
-		myconf[44]="--with-debugging=0"
-	fi
-
-	if use hypre; then
-		# hypre cannot handle 64 bit indices, therefore disabled
-		myconf[24]="--with-64-bit-indices=0"
-		myconf[52]="--with-hypre=1"
-		myconf[53]="--with-hypre-include=/usr/include/hypre"
-		use static-libs \
-			&& myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.a" \
-			|| myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.so"
-	else
-		myconf[52]="--with-hypre=0"
-	fi
-
-	if use metis; then
-		myconf[61]="--with-parmetis=1"
-		myconf[62]="--with-parmetis-include=/usr/include/parmetis"
-		myconf[63]="--with-parmetis-lib=/usr/$(get_libdir)/libparmetis.so"
-	else
-		myconf[61]="--with-parmetis=0"
-	fi
-
-	if use hdf5; then
-		myconf[71]="--with-hdf5=1"
-		myconf[72]="--with-hdf5-include=/usr/include"
-		myconf[73]="--with-hdf5-lib=/usr/$(get_libdir)/libhdf5.so"
-	else
-		myconf[71]="--with-hdf5=0"
-	fi
-
-	myconf[81]="--with-scotch=0"
-
-	einfo "Configure options: ${myconf[@]}"
-	python "${S}/config/configure.py" "${myconf[@]}" \
-		|| die "PETSc configuration failed"
-}
-
-src_install(){
-	insinto /usr/include/"${PN}"
-	doins "${S}"/include/*.h "${S}"/include/*.hh
-	doins "${S}/${PETSC_ARCH}"/include/*.h
-
-	insinto /usr/include/"${PN}"/private
-	doins "${S}"/include/private/*.h
-
-	# fix paths stored in petscconf.h
-	dosed "s:${S}:/usr:g" /usr/include/"${PN}"/petscconf.h
-	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}"/petscconf.h \
-
-	if ! use mpi ; then
-		insinto /usr/include/"${PN}"/mpiuni
-		doins "${S}"/include/mpiuni/*.h
-	fi
-
-	if use doc ; then
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-
-	use static-libs \
-		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
-		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
-}
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-	elog "This ebuild is known to have parallel build issues, "
-	elog "hopefully resolved by upstream soon."
-	elog "Another problem is that you can break this package by"
-	elog "switching your mpi implementation without rebuild petsc."
-}

diff --git a/sci-mathematics/petsc/petsc-3.1_p7.ebuild b/sci-mathematics/petsc/petsc-3.1_p7.ebuild
deleted file mode 100644
index f3165c2..0000000
--- a/sci-mathematics/petsc/petsc-3.1_p7.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=3
-
-inherit flag-o-matic fortran-2 toolchain-funcs
-
-MY_P="${PN}-${PV/_/-}"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/petsc-as/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
-
-RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
-	X? ( x11-libs/libX11 )
-	virtual/lapack
-	virtual/blas
-	hypre? ( >=sci-mathematics/hypre-2.6.0b[static-libs=] )
-	metis? ( sci-libs/parmetis )
-	hdf5? ( sci-libs/hdf5[!mpi?] )
-"
-
-DEPEND="${RDEPEND}
-	sys-devel/gcc[-nocxx,fortran?]"
-
-S="${WORKDIR}/${MY_P}"
-
-if use hypre; then
-	use cxx || die "hypre needs cxx, please enable cxx or disable hypre use flag"
-	use mpi || die "hypre needs mpi, please enable mpi or disable hypre use flag"
-fi
-
-src_prepare(){
-	epatch "${FILESDIR}/${PN}-configure-pic.patch"
-	epatch "${FILESDIR}/${PN}-disable-rpath.patch"
-}
-
-src_configure(){
-	local mylang
-	local myopt
-	local myconf
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	export PETSC_DIR="${S}" || die
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
-
-	myconf[10]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
-	myconf[11]="CFLAGS=${CFLAGS}"
-	myconf[12]="CXXFLAGS=${CXXFLAGS}"
-	myconf[13]="LDFLAGS=${LDFLAGS}"
-	myconf[14]="--with-windows-graphics=0"
-	myconf[15]="--with-matlab=0"
-	myconf[16]="--with-python=0"
-	myconf[17]="--with-clanguage=${mylang}"
-	myconf[18]="--with-single-library=1"
-	myconf[19]="--with-petsc-arch=${PETSC_ARCH}"
-	myconf[20]="--with-precision=double"
-	myconf[21]="--with-gnu-compilers=1"
-	use amd64 \
-		&& myconf[22]="--with-64-bit-pointers=1" \
-		|| myconf[22]="--with-64-bit-pointers=0"
-	use cxx \
-		&& myconf[23]="--with-c-support=1"
-	use amd64 \
-		&& myconf[24]="--with-64-bit-indices=1" \
-		|| myconf[24]="--with-64-bit-indices=0"
-
-	if use mpi; then
-		myconf[30]="--with-cc=/usr/bin/mpicc"
-		myconf[31]="--with-cxx=/usr/bin/mpicxx"
-		use fortran && myconf[32]="--with-fc=/usr/bin/mpif77"
-		myconf[33]="--with-mpi=1"
-		myconf[34]="--with-mpi-compilers=1"
-	else
-		myconf[30]="--with-cc=$(tc-getCC)"
-		myconf[31]="--with-cxx=$(tc-getCXX)"
-		use fortran && myconf[32]="--with-fc=$(tc-getF77)"
-		myconf[33]="--with-mpi=0"
-	fi
-
-	use X \
-		&& myconf[40]="--with-X=1" \
-		|| myconf[40]="--with-X=0"
-	use static-libs \
-		&& myconf[41]="--with-shared=0" \
-		|| myconf[41]="--with-shared=1"
-	use fortran \
-		&& myconf[43]="--with-fortran=1" \
-		|| myconf[43]="--with-fortran=0"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-		myconf[44]="--with-debugging=1"
-	else
-		myconf[44]="--with-debugging=0"
-	fi
-
-	if use hypre; then
-		# hypre cannot handle 64 bit indices, therefore disabled
-		myconf[24]="--with-64-bit-indices=0"
-		myconf[52]="--with-hypre=1"
-		myconf[53]="--with-hypre-include=/usr/include/hypre"
-		use static-libs \
-			&& myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.a" \
-			|| myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.so"
-	else
-		myconf[52]="--with-hypre=0"
-	fi
-
-	if use metis; then
-		myconf[61]="--with-parmetis=1"
-		myconf[62]="--with-parmetis-include=/usr/include/parmetis"
-		myconf[63]="--with-parmetis-lib=/usr/$(get_libdir)/libparmetis.so"
-	else
-		myconf[61]="--with-parmetis=0"
-	fi
-
-	if use hdf5; then
-		myconf[71]="--with-hdf5=1"
-		myconf[72]="--with-hdf5-include=/usr/include"
-		myconf[73]="--with-hdf5-lib=/usr/$(get_libdir)/libhdf5.so"
-	else
-		myconf[71]="--with-hdf5=0"
-	fi
-
-	myconf[81]="--with-scotch=0"
-
-	einfo "Configure options: ${myconf[@]}"
-	python "${S}/config/configure.py" "${myconf[@]}" \
-		|| die "PETSc configuration failed"
-}
-
-src_install(){
-	insinto /usr/include/"${PN}"
-	doins "${S}"/include/*.h "${S}"/include/*.hh
-	doins "${S}/${PETSC_ARCH}"/include/*.h
-
-	insinto /usr/include/"${PN}"/private
-	doins "${S}"/include/private/*.h
-
-	# fix paths stored in petscconf.h
-	dosed "s:${S}:/usr:g" /usr/include/"${PN}"/petscconf.h
-	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}"/petscconf.h \
-
-	if ! use mpi ; then
-		insinto /usr/include/"${PN}"/mpiuni
-		doins "${S}"/include/mpiuni/*.h
-	fi
-
-	if use doc ; then
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-
-	use static-libs \
-		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
-		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
-}
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-	elog "This ebuild is known to have parallel build issues, "
-	elog "hopefully resolved by upstream soon."
-	elog "Another problem is that you can break this package by"
-	elog "switching your mpi implementation without rebuild petsc."
-}

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
index a187628..a01b135 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2011 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
@@ -21,7 +21,7 @@ RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )
 	virtual/lapack
 	virtual/blas
-	hypre? ( >=sci-mathematics/hypre-2.6.0b[static-libs=] )
+	hypre? ( sci-libs/hypre[static-libs=] )
 	metis? ( sci-libs/parmetis )
 	hdf5? ( sci-libs/hdf5[!mpi?] )
 "

diff --git a/sci-mathematics/petsc/petsc-3.1_p8.ebuild b/sci-mathematics/petsc/petsc-3.1_p8.ebuild
deleted file mode 100644
index aca7776..0000000
--- a/sci-mathematics/petsc/petsc-3.1_p8.ebuild
+++ /dev/null
@@ -1,177 +0,0 @@
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=3
-
-inherit flag-o-matic fortran-2 toolchain-funcs
-
-MY_P="${PN}-${PV/_/-}"
-
-DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
-HOMEPAGE="http://www.mcs.anl.gov/petsc/petsc-as/"
-SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
-
-LICENSE="petsc"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
-
-RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
-	X? ( x11-libs/libX11 )
-	virtual/lapack
-	virtual/blas
-	hypre? ( >=sci-mathematics/hypre-2.6.0b[static-libs=] )
-	metis? ( sci-libs/parmetis )
-	hdf5? ( sci-libs/hdf5[!mpi?] )
-"
-
-DEPEND="${RDEPEND}
-	sys-devel/gcc[-nocxx,fortran?]"
-
-S="${WORKDIR}/${MY_P}"
-
-if use hypre; then
-	use cxx || die "hypre needs cxx, please enable cxx or disable hypre use flag"
-	use mpi || die "hypre needs mpi, please enable mpi or disable hypre use flag"
-fi
-
-src_prepare(){
-	epatch "${FILESDIR}/${P}-configure-pic.patch"
-	epatch "${FILESDIR}/${PN}-disable-rpath.patch"
-}
-
-src_configure(){
-	local mylang
-	local myopt
-	local myconf
-
-	use cxx && mylang="cxx" || mylang="c"
-	use debug && myopt="debug" || myopt="opt"
-
-	export PETSC_DIR="${S}" || die
-	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
-
-	myconf[10]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
-	myconf[11]="CFLAGS=${CFLAGS}"
-	myconf[12]="CXXFLAGS=${CXXFLAGS}"
-	myconf[13]="LDFLAGS=${LDFLAGS}"
-	myconf[14]="--with-windows-graphics=0"
-	myconf[15]="--with-matlab=0"
-	myconf[16]="--with-python=0"
-	myconf[17]="--with-clanguage=${mylang}"
-	myconf[18]="--with-single-library=1"
-	myconf[19]="--with-petsc-arch=${PETSC_ARCH}"
-	myconf[20]="--with-precision=double"
-	myconf[21]="--with-gnu-compilers=1"
-	use amd64 \
-		&& myconf[22]="--with-64-bit-pointers=1" \
-		|| myconf[22]="--with-64-bit-pointers=0"
-	use cxx \
-		&& myconf[23]="--with-c-support=1"
-	use amd64 \
-		&& myconf[24]="--with-64-bit-indices=1" \
-		|| myconf[24]="--with-64-bit-indices=0"
-
-	if use mpi; then
-		myconf[30]="--with-cc=/usr/bin/mpicc"
-		myconf[31]="--with-cxx=/usr/bin/mpicxx"
-		use fortran && myconf[32]="--with-fc=/usr/bin/mpif77"
-		myconf[33]="--with-mpi=1"
-		myconf[34]="--with-mpi-compilers=1"
-	else
-		myconf[30]="--with-cc=$(tc-getCC)"
-		myconf[31]="--with-cxx=$(tc-getCXX)"
-		use fortran && myconf[32]="--with-fc=$(tc-getF77)"
-		myconf[33]="--with-mpi=0"
-	fi
-
-	use X \
-		&& myconf[40]="--with-X=1" \
-		|| myconf[40]="--with-X=0"
-	use static-libs \
-		&& myconf[41]="--with-shared=0" \
-		|| myconf[41]="--with-shared=1"
-	use fortran \
-		&& myconf[43]="--with-fortran=1" \
-		|| myconf[43]="--with-fortran=0"
-
-	if use debug; then
-		strip-flags
-		filter-flags -O*
-		myconf[44]="--with-debugging=1"
-	else
-		myconf[44]="--with-debugging=0"
-	fi
-
-	if use hypre; then
-		# hypre cannot handle 64 bit indices, therefore disabled
-		myconf[24]="--with-64-bit-indices=0"
-		myconf[52]="--with-hypre=1"
-		myconf[53]="--with-hypre-include=/usr/include/hypre"
-		use static-libs \
-			&& myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.a" \
-			|| myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.so"
-	else
-		myconf[52]="--with-hypre=0"
-	fi
-
-	if use metis; then
-		myconf[61]="--with-parmetis=1"
-		myconf[62]="--with-parmetis-include=/usr/include/parmetis"
-		myconf[63]="--with-parmetis-lib=/usr/$(get_libdir)/libparmetis.so"
-	else
-		myconf[61]="--with-parmetis=0"
-	fi
-
-	if use hdf5; then
-		myconf[71]="--with-hdf5=1"
-		myconf[72]="--with-hdf5-include=/usr/include"
-		myconf[73]="--with-hdf5-lib=/usr/$(get_libdir)/libhdf5.so"
-	else
-		myconf[71]="--with-hdf5=0"
-	fi
-
-	myconf[81]="--with-scotch=0"
-
-	einfo "Configure options: ${myconf[@]}"
-	python "${S}/config/configure.py" "${myconf[@]}" \
-		|| die "PETSc configuration failed"
-}
-
-src_install(){
-	insinto /usr/include/"${PN}"
-	doins "${S}"/include/*.h "${S}"/include/*.hh
-	doins "${S}/${PETSC_ARCH}"/include/*.h
-
-	insinto /usr/include/"${PN}"/private
-	doins "${S}"/include/private/*.h
-
-	# fix paths stored in petscconf.h
-	dosed "s:${S}:/usr:g" /usr/include/"${PN}"/petscconf.h
-	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}"/petscconf.h \
-
-	if ! use mpi ; then
-		insinto /usr/include/"${PN}"/mpiuni
-		doins "${S}"/include/mpiuni/*.h
-	fi
-
-	if use doc ; then
-		dodoc docs/manual.pdf
-		dohtml -r docs/*.html docs/changes docs/manualpages
-	fi
-
-	use static-libs \
-		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
-		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
-}
-
-pkg_postinst() {
-	elog "The petsc ebuild is still under development."
-	elog "Help us improve the ebuild in:"
-	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
-	elog "This ebuild is known to have parallel build issues, "
-	elog "hopefully resolved by upstream soon."
-	elog "Another problem is that you can break this package by"
-	elog "switching your mpi implementation without rebuild petsc."
-}



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2011-06-24 17:09 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2011-06-24 17:09 UTC (permalink / raw
  To: gentoo-commits

commit:     bcfe676eb293ebde1f211cff52521a1fe675922d
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 24 15:09:48 2011 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Fri Jun 24 15:09:48 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=bcfe676e

Sort inherit and/or USE

(Portage version: 2.2.0_alpha41/git/Linux x86_64, signed Manifest commit with key 70EB7916)

---
 sci-mathematics/petsc/petsc-3.1_p4.ebuild    |    2 +-
 sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild |    2 +-
 sci-mathematics/petsc/petsc-3.1_p7.ebuild    |    2 +-
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |    2 +-
 sci-mathematics/petsc/petsc-3.1_p8.ebuild    |    2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sci-mathematics/petsc/petsc-3.1_p4.ebuild b/sci-mathematics/petsc/petsc-3.1_p4.ebuild
index 63609f0..6adee0a 100644
--- a/sci-mathematics/petsc/petsc-3.1_p4.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p4.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="mpi X cxx debug static-libs fortran doc"
+IUSE="cxx debug doc fortran mpi static-libs X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )

diff --git a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild b/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
index 56dae98..f3165c2 100644
--- a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="mpi hypre metis hdf5 X cxx debug static-libs fortran doc"
+IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )

diff --git a/sci-mathematics/petsc/petsc-3.1_p7.ebuild b/sci-mathematics/petsc/petsc-3.1_p7.ebuild
index 56dae98..f3165c2 100644
--- a/sci-mathematics/petsc/petsc-3.1_p7.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p7.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="mpi hypre metis hdf5 X cxx debug static-libs fortran doc"
+IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
index 7fdce98..a187628 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="mpi hypre metis hdf5 X cxx debug static-libs fortran doc complex-scalars"
+IUSE="complex-scalars cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )

diff --git a/sci-mathematics/petsc/petsc-3.1_p8.ebuild b/sci-mathematics/petsc/petsc-3.1_p8.ebuild
index e1bbbcb..aca7776 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8.ebuild
@@ -15,7 +15,7 @@ SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
 LICENSE="petsc"
 SLOT="0"
 KEYWORDS="~x86 ~amd64"
-IUSE="mpi hypre metis hdf5 X cxx debug static-libs fortran doc"
+IUSE="cxx debug doc fortran hdf5 hypre metis mpi static-libs X"
 
 RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
 	X? ( x11-libs/libX11 )



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2011-06-21 11:54 Justin Lecher
  0 siblings, 0 replies; 59+ messages in thread
From: Justin Lecher @ 2011-06-21 11:54 UTC (permalink / raw
  To: gentoo-commits

commit:     7717716180b0160ebdb0809753b9bbf364746653
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 21 11:12:04 2011 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Tue Jun 21 11:12:04 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=77177161

Added fortran-2.eclass support

(Portage version: 2.2.0_alpha41/git/Linux x86_64, signed Manifest commit with key 70EB7916)

---
 sci-mathematics/petsc/ChangeLog              |    5 +++++
 sci-mathematics/petsc/metadata.xml           |    1 +
 sci-mathematics/petsc/petsc-3.1_p4.ebuild    |    4 ++--
 sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild |    4 ++--
 sci-mathematics/petsc/petsc-3.1_p7.ebuild    |    2 +-
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |   12 ++++++------
 sci-mathematics/petsc/petsc-3.1_p8.ebuild    |    2 +-
 7 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 52f6b1a..0604c7f 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,11 @@
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  21 Jun 2011; Justin Lecher <jlec@gentoo.org> petsc-3.1_p4.ebuild,
+  petsc-3.1_p5-r2.ebuild, petsc-3.1_p7.ebuild, petsc-3.1_p8.ebuild,
+  petsc-3.1_p8-r1.ebuild, metadata.xml:
+  Added fortran-2.eclass support
+
 *petsc-3.1_p8-r1 (19 Apr 2011)
 
   19 Apr 2011; Thomas Kahle <tomka@gentoo.org> +petsc-3.1_p8-r1.ebuild:

diff --git a/sci-mathematics/petsc/metadata.xml b/sci-mathematics/petsc/metadata.xml
index 15bb0c3..079f8ff 100644
--- a/sci-mathematics/petsc/metadata.xml
+++ b/sci-mathematics/petsc/metadata.xml
@@ -5,5 +5,6 @@
 <use>
   <flag name="hypre">Use HYPRE (sci-mathematics/hypre) for preconditioning</flag>
   <flag name="metis">Use METIS (sci-libs/parmetis) for partitioning</flag>
+  <flag name="complex-scalars">Make scalars complex</flag>
 </use>
 </pkgmetadata>

diff --git a/sci-mathematics/petsc/petsc-3.1_p4.ebuild b/sci-mathematics/petsc/petsc-3.1_p4.ebuild
index 38d9223..63609f0 100644
--- a/sci-mathematics/petsc/petsc-3.1_p4.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p4.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
 EAPI=3
 
-inherit flag-o-matic toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs
 
 MY_P="${PN}-${PV/_/-}"
 

diff --git a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild b/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
index 1284a8f..56dae98 100644
--- a/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p5-r2.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Header: $
 
 EAPI=3
 
-inherit flag-o-matic toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs
 
 MY_P="${PN}-${PV/_/-}"
 

diff --git a/sci-mathematics/petsc/petsc-3.1_p7.ebuild b/sci-mathematics/petsc/petsc-3.1_p7.ebuild
index b76ae93..56dae98 100644
--- a/sci-mathematics/petsc/petsc-3.1_p7.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p7.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=3
 
-inherit flag-o-matic toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs
 
 MY_P="${PN}-${PV/_/-}"
 

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
index 5f2eaa7..7fdce98 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=3
 
-inherit flag-o-matic toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs
 
 MY_P="${PN}-${PV/_/-}"
 
@@ -169,11 +169,11 @@ src_install(){
 	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
 	dosed "s:INSTALL_DIR =.*:INSTALL_DIR = /usr:" /usr/include/"${PN}/${PETSC_ARCH}"/conf/petscvariables
 
-	cat > ${T}/99petsc <<EOF
-PETSC_ARCH=${PETSC_ARCH}
-PETSC_DIR=/usr/include/${PN}
-EOF
-	doenvd ${T}/99petsc
+	cat >> "${T}"/99petsc <<- EOF
+	PETSC_ARCH=${PETSC_ARCH}
+	PETSC_DIR=/usr/include/${PN}
+	EOF
+	doenvd "${T}"/99petsc
 
 	if ! use mpi ; then
 		insinto /usr/include/"${PN}"/mpiuni

diff --git a/sci-mathematics/petsc/petsc-3.1_p8.ebuild b/sci-mathematics/petsc/petsc-3.1_p8.ebuild
index a7566db..e1bbbcb 100644
--- a/sci-mathematics/petsc/petsc-3.1_p8.ebuild
+++ b/sci-mathematics/petsc/petsc-3.1_p8.ebuild
@@ -4,7 +4,7 @@
 
 EAPI=3
 
-inherit flag-o-matic toolchain-funcs
+inherit flag-o-matic fortran-2 toolchain-funcs
 
 MY_P="${PN}-${PV/_/-}"
 



^ permalink raw reply related	[flat|nested] 59+ messages in thread
* [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/
@ 2011-04-19  6:44 Thomas Kahle
  0 siblings, 0 replies; 59+ messages in thread
From: Thomas Kahle @ 2011-04-19  6:44 UTC (permalink / raw
  To: gentoo-commits

commit:     a3df8dd67c5c21c011f04fd29e2064f689bbc492
Author:     Joshua Rich <joshua.rich <AT> gmail <DOT> com>
AuthorDate: Tue Apr 19 02:33:27 2011 +0000
Commit:     Thomas Kahle <tom111 <AT> gmx <DOT> de>
CommitDate: Tue Apr 19 06:20:33 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=a3df8dd6

update for petsc-3.1_p8 from bug 53386

 - Adds a new USE flag, complex-scalars that sets the
--with-scalar-type=complex configure script option (to use complex as opposed
to real petsc scalars default).
 - Tweaks the install paths of the header files to a hierarchy under
/usr/include/petsc similar to what upstream intends(?)
 - Installs fortran header files if USE=fortran.
 - Installs some extra files that allow libraries such as slepc
(http://www.grycap.upv.es/slepc/) to be built against petsc.  This has allowed
me to create an ebuild the former.
  - Installs an environment file that sets PETSC_DIR and PETSC_ARCH for
software that needs these set to build/run (i.e. slepc).

Signed-off-by: Thomas Kahle <tomka <AT> gentoo.org>

---
 sci-mathematics/petsc/ChangeLog              |    6 +
 sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild |  201 ++++++++++++++++++++++++++
 2 files changed, 207 insertions(+), 0 deletions(-)

diff --git a/sci-mathematics/petsc/ChangeLog b/sci-mathematics/petsc/ChangeLog
index 5a3533b..52f6b1a 100644
--- a/sci-mathematics/petsc/ChangeLog
+++ b/sci-mathematics/petsc/ChangeLog
@@ -2,6 +2,12 @@
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+*petsc-3.1_p8-r1 (19 Apr 2011)
+
+  19 Apr 2011; Thomas Kahle <tomka@gentoo.org> +petsc-3.1_p8-r1.ebuild:
+  various improvements to install locations and IUSE=complex scalars
+  patch by Joshua Rich
+
 *petsc-3.1_p8 (19 Mar 2011)
 
   19 Mar 2011; Jens-Malte Gottfried <jmgottfried@web.de>

diff --git a/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
new file mode 100644
index 0000000..5f2eaa7
--- /dev/null
+++ b/sci-mathematics/petsc/petsc-3.1_p8-r1.ebuild
@@ -0,0 +1,201 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=3
+
+inherit flag-o-matic toolchain-funcs
+
+MY_P="${PN}-${PV/_/-}"
+
+DESCRIPTION="Portable, Extensible Toolkit for Scientific Computation"
+HOMEPAGE="http://www.mcs.anl.gov/petsc/petsc-as/"
+SRC_URI="http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${MY_P}.tar.gz"
+
+LICENSE="petsc"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE="mpi hypre metis hdf5 X cxx debug static-libs fortran doc complex-scalars"
+
+RDEPEND="mpi? ( virtual/mpi[cxx?,fortran?] )
+	X? ( x11-libs/libX11 )
+	virtual/lapack
+	virtual/blas
+	hypre? ( >=sci-mathematics/hypre-2.6.0b[static-libs=] )
+	metis? ( sci-libs/parmetis )
+	hdf5? ( sci-libs/hdf5[!mpi?] )
+"
+
+DEPEND="${RDEPEND}
+	sys-devel/gcc[-nocxx,fortran?]"
+
+S="${WORKDIR}/${MY_P}"
+
+if use hypre; then
+	use cxx || die "hypre needs cxx, please enable cxx or disable hypre use flag"
+	use mpi || die "hypre needs mpi, please enable mpi or disable hypre use flag"
+fi
+
+src_prepare(){
+	epatch "${FILESDIR}/${P}-configure-pic.patch"
+	epatch "${FILESDIR}/${PN}-disable-rpath.patch"
+}
+
+src_configure(){
+	local mylang
+	local myopt
+	local myconf
+
+	use cxx && mylang="cxx" || mylang="c"
+	use debug && myopt="debug" || myopt="opt"
+
+	export PETSC_DIR="${S}" || die
+	export PETSC_ARCH="linux-gnu-${mylang}-${myopt}" || die
+
+	myconf[10]="--with-blas-lapack-lib=$(pkg-config --libs lapack)"
+	myconf[11]="CFLAGS=${CFLAGS}"
+	myconf[12]="CXXFLAGS=${CXXFLAGS}"
+	myconf[13]="LDFLAGS=${LDFLAGS}"
+	myconf[14]="--with-windows-graphics=0"
+	myconf[15]="--with-matlab=0"
+	myconf[16]="--with-python=0"
+	myconf[17]="--with-clanguage=${mylang}"
+	myconf[18]="--with-single-library=1"
+	myconf[19]="--with-petsc-arch=${PETSC_ARCH}"
+	myconf[20]="--with-precision=double"
+	myconf[21]="--with-gnu-compilers=1"
+	use amd64 \
+		&& myconf[22]="--with-64-bit-pointers=1" \
+		|| myconf[22]="--with-64-bit-pointers=0"
+	use cxx \
+		&& myconf[23]="--with-c-support=1"
+	use amd64 \
+		&& myconf[24]="--with-64-bit-indices=1" \
+		|| myconf[24]="--with-64-bit-indices=0"
+
+	if use mpi; then
+		myconf[30]="--with-cc=/usr/bin/mpicc"
+		myconf[31]="--with-cxx=/usr/bin/mpicxx"
+		use fortran && myconf[32]="--with-fc=/usr/bin/mpif77"
+		myconf[33]="--with-mpi=1"
+		myconf[34]="--with-mpi-compilers=1"
+	else
+		myconf[30]="--with-cc=$(tc-getCC)"
+		myconf[31]="--with-cxx=$(tc-getCXX)"
+		use fortran && myconf[32]="--with-fc=$(tc-getF77)"
+		myconf[33]="--with-mpi=0"
+	fi
+
+	use X \
+		&& myconf[40]="--with-X=1" \
+		|| myconf[40]="--with-X=0"
+	use static-libs \
+		&& myconf[41]="--with-shared=0" \
+		|| myconf[41]="--with-shared=1"
+	use fortran \
+		&& myconf[43]="--with-fortran=1" \
+		|| myconf[43]="--with-fortran=0"
+
+	if use debug; then
+		strip-flags
+		filter-flags -O*
+		myconf[44]="--with-debugging=1"
+	else
+		myconf[44]="--with-debugging=0"
+	fi
+
+	if use hypre; then
+		# hypre cannot handle 64 bit indices, therefore disabled
+		myconf[24]="--with-64-bit-indices=0"
+		myconf[52]="--with-hypre=1"
+		myconf[53]="--with-hypre-include=/usr/include/hypre"
+		use static-libs \
+			&& myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.a" \
+			|| myconf[54]="--with-hypre-lib=/usr/$(get_libdir)/libHYPRE.so"
+	else
+		myconf[52]="--with-hypre=0"
+	fi
+
+	if use metis; then
+		# parmetis cannot handle 64 bit indices, therefore disabled
+		myconf[24]="--with-64-bit-indices=0"
+		myconf[61]="--with-parmetis=1"
+		myconf[62]="--with-parmetis-include=/usr/include/parmetis"
+		myconf[63]="--with-parmetis-lib=/usr/$(get_libdir)/libparmetis.so"
+	else
+		myconf[61]="--with-parmetis=0"
+	fi
+
+	if use hdf5; then
+		myconf[71]="--with-hdf5=1"
+		myconf[72]="--with-hdf5-include=/usr/include"
+		myconf[73]="--with-hdf5-lib=/usr/$(get_libdir)/libhdf5.so"
+	else
+		myconf[71]="--with-hdf5=0"
+	fi
+
+	myconf[81]="--with-scotch=0"
+
+	if use complex-scalars; then
+		# cannot enable C support with complex scalars
+		# (cannot even set configure option to zero!)
+		myconf[23]=""
+		myconf[82]="--with-scalar-type=complex"
+	fi
+
+	einfo "Configure options: ${myconf[@]}"
+	python "${S}/config/configure.py" "${myconf[@]}" \
+		|| die "PETSc configuration failed"
+}
+
+src_install(){
+	insinto /usr/include/"${PN}"
+	doins "${S}"/include/*.h "${S}"/include/*.hh
+	insinto /usr/include/"${PN}/${PETSC_ARCH}"/include
+	doins "${S}/${PETSC_ARCH}"/include/*
+	if use fortran; then
+		insinto /usr/include/"${PN}"/finclude
+		doins "${S}"/include/finclude/*.h
+	fi
+	insinto /usr/include/"${PN}"/conf
+	doins "${S}"/conf/{variables,rules,test}
+	insinto /usr/include/"${PN}/${PETSC_ARCH}"/conf
+	doins "${S}/${PETSC_ARCH}"/conf/{petscrules,petscvariables,RDict.db}
+
+	insinto /usr/include/"${PN}"/private
+	doins "${S}"/include/private/*.h
+
+	dosed "s:${S}:/usr:g" /usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
+	dosed "s:${PETSC_ARCH}/lib:$(get_libdir):g" /usr/include/"${PN}/${PETSC_ARCH}"/include/petscconf.h
+	dosed "s:INSTALL_DIR =.*:INSTALL_DIR = /usr:" /usr/include/"${PN}/${PETSC_ARCH}"/conf/petscvariables
+
+	cat > ${T}/99petsc <<EOF
+PETSC_ARCH=${PETSC_ARCH}
+PETSC_DIR=/usr/include/${PN}
+EOF
+	doenvd ${T}/99petsc
+
+	if ! use mpi ; then
+		insinto /usr/include/"${PN}"/mpiuni
+		doins "${S}"/include/mpiuni/*.h
+	fi
+
+	if use doc ; then
+		dodoc docs/manual.pdf
+		dohtml -r docs/*.html docs/changes docs/manualpages
+	fi
+
+	use static-libs \
+		&& dolib.a  "${S}/${PETSC_ARCH}"/lib/*.a  \
+		|| dolib.so "${S}/${PETSC_ARCH}"/lib/*.so
+}
+
+pkg_postinst() {
+	elog "The petsc ebuild is still under development."
+	elog "Help us improve the ebuild in:"
+	elog "http://bugs.gentoo.org/show_bug.cgi?id=53386"
+	elog "This ebuild is known to have parallel build issues, "
+	elog "hopefully resolved by upstream soon."
+	elog "Another problem is that you can break this package by"
+	elog "switching your mpi implementation without rebuild petsc."
+}



^ permalink raw reply related	[flat|nested] 59+ messages in thread

end of thread, other threads:[~2019-07-12 12:12 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-03 12:37 [gentoo-commits] proj/sci:master commit in: sci-mathematics/petsc/ Jens-Malte Gottfried
  -- strict thread matches above, loose matches on Subject: below --
2019-07-12 12:12 Matthias Maier
2019-07-12 11:19 Matthias Maier
2019-07-12 11:19 Matthias Maier
2019-07-12 11:19 Matthias Maier
2019-05-13 15:02 Matthias Maier
2019-03-09  6:07 Matthias Maier
2018-09-17 15:41 Matthias Maier
2018-09-17 15:41 Matthias Maier
2018-09-17 15:41 Matthias Maier
2018-08-31 15:39 Matthias Maier
2018-08-31 15:39 Matthias Maier
2018-05-24  1:21 Matthias Maier
2018-04-23 14:38 Matthias Maier
2018-04-23  1:55 Matthias Maier
2018-03-29 22:16 Matthias Maier
2018-03-19  3:49 Matthias Maier
2018-03-19  3:40 Matthias Maier
2017-10-03 12:58 Andrew Savchenko
2017-10-03 12:58 Andrew Savchenko
2017-01-08 11:03 Marius Brehler
2016-11-24 10:55 Marius Brehler
2016-08-31  6:56 Marius Brehler
2016-08-31  6:56 Marius Brehler
2016-07-12 19:57 Marius Brehler
2016-07-12 19:57 Marius Brehler
2016-07-12 19:57 Marius Brehler
2016-04-23 23:21 Christoph Junghans
2016-04-23 23:21 Christoph Junghans
2015-12-31  8:48 Justin Lecher
2015-09-01 10:26 Justin Lecher
2015-06-24  9:51 Justin Lecher
2014-09-16 17:01 Christoph Junghans
2014-09-01 19:47 Jauhien Piatlicki
2014-09-01 13:06 Jauhien Piatlicki
2014-08-10  8:05 Justin Lecher
2014-01-06 18:33 Justin Lecher
2013-02-22 10:15 Justin Lecher
2013-02-10 22:11 Jens-Malte Gottfried
2013-01-07 22:16 Jens-Malte Gottfried
2012-10-05 14:09 Jens-Malte Gottfried
2012-06-09  6:35 Jens-Malte Gottfried
2012-05-23 19:56 Kacper Kowalik
2012-03-23 18:33 Jens-Malte Gottfried
2012-03-06 23:09 Jens-Malte Gottfried
2012-03-06 22:15 Jens-Malte Gottfried
2012-03-05 16:11 Jens-Malte Gottfried
2012-03-04 21:16 Jens-Malte Gottfried
2012-03-04 15:19 Jens-Malte Gottfried
2012-03-04 14:31 Jens-Malte Gottfried
2012-03-03 21:39 Jens-Malte Gottfried
2012-03-03 16:02 Jens-Malte Gottfried
2012-03-03 14:28 Jens-Malte Gottfried
2012-03-03 12:37 Jens-Malte Gottfried
2012-02-28 20:24 Justin Lecher
2012-01-23  6:35 Sebastien Fabbro
2011-06-24 17:09 Justin Lecher
2011-06-21 11:54 Justin Lecher
2011-04-19  6:44 Thomas Kahle

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