mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
sci-libs/pastix: version bump and fix obsolete mpi calls to compilers
Package-Manager: Portage-2.3.4, Repoman-2.3.2
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST pastix_5.2.2.22.tar.bz2 2664470 SHA256 30f771a666719e6b116f549a6e4da451beabab99c2ecabc0745247c3654acbed SHA512 15ecdb10b5229e40f744c1ad54be7cac6560cb92e90df1937c90ca7da290df6bdb6f24a1e1c54197731b9df3e0dcc0b9fa39750479fcf03a0c08c304c5b9df70 WHIRLPOOL 7031f822d3c2f89bd520175a124200303adc2dda56cbae4eb9e011b90d5119c5b96958d648c7e18d034e2845a32ad80385714bfb424260aa62c9f6484a18ce6b
|
||||
DIST pastix_5.2.3.tar.bz2 2246903 SHA256 641978e6b0607e201a409549adc78d5618ec159f44cafc7bddeaca4f4bee1e47 SHA512 69acffac1be8c756886783c2a6307269ab4d14abfc4a77268b3d14995e53b16084c298446812484233d9d52c317490d6ad67788166adf367075e6c8442147b95 WHIRLPOOL e03c04dcf4b932d284d90a06d5c22fe608fc6953eee40190103ef3269938aa04df3b83f769efb02c5c67237482b98f88bfd4100880908db71a89ab3aafcff0ec
|
||||
|
||||
@@ -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
|
||||
|
||||
EAPI=6
|
||||
@@ -52,9 +52,6 @@ src_prepare() {
|
||||
-e "s:^\(CCPROG\s*=\).*:\1 $(tc-getCC):" \
|
||||
-e "s:^\(CFPROG\s*=\).*:\1 $(tc-getFC):" \
|
||||
-e "s:^\(CF90PROG\s*=\).*:\1 $(tc-getFC):" \
|
||||
-e "s:^\(MPCCPROG\s*=\).*:\1 mpicc -cc=$(tc-getCC):" \
|
||||
-e "s:^\(MPCXXPROG\s*=\).*:\1 mpic++ -cxx=$(tc-getCXX):" \
|
||||
-e "s:^\(MCFPROG\s*=\).*:\1 mpif90 -f90=$(tc-getFC):" \
|
||||
-e "s:^\(ARPROG\s*=\).*:\1 $(tc-getAR):" \
|
||||
-e "s:^\(CCFOPT\s*=\).*:\1 ${FFLAGS}:" \
|
||||
-e "s:^\(CCFDEB\s*=\).*:\1 ${FFLAGS}:" \
|
||||
|
||||
117
sci-libs/pastix/pastix-5.2.3.ebuild
Normal file
117
sci-libs/pastix/pastix-5.2.3.ebuild
Normal file
@@ -0,0 +1,117 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit fortran-2 toolchain-funcs
|
||||
|
||||
# TODO:
|
||||
# testing: emake examples?
|
||||
# better doc instalation and building
|
||||
# pypastix (separate package?)
|
||||
# multilib with eselect?
|
||||
# static libs building without pic
|
||||
# metis?
|
||||
|
||||
# package id: change every version, see the link on inriaforge
|
||||
PID=218
|
||||
DESCRIPTION="Parallel solver for very large sparse linear systems"
|
||||
HOMEPAGE="http://pastix.gforge.inria.fr"
|
||||
SRC_URI="https://gforge.inria.fr/frs/download.php/latestfile/${PID}/${PN}_${PV}.tar.bz2"
|
||||
|
||||
LICENSE="CeCILL-C"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~x86 ~amd64-linux ~x86-linux"
|
||||
IUSE="doc int64 mpi +smp starpu static-libs"
|
||||
|
||||
RDEPEND="
|
||||
sci-libs/scotch:0=[int64?,mpi?]
|
||||
sys-apps/hwloc:0=
|
||||
virtual/blas
|
||||
mpi? ( virtual/mpi )
|
||||
starpu? ( dev-libs/starpu:0= )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
S="${WORKDIR}/${PN}_${PV}/src"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -e 's/^\(HOSTARCH\s*=\).*/\1 ${HOST}/' \
|
||||
-e "s:^\(CCPROG\s*=\).*:\1 $(tc-getCC):" \
|
||||
-e "s:^\(CFPROG\s*=\).*:\1 $(tc-getFC):" \
|
||||
-e "s:^\(CF90PROG\s*=\).*:\1 $(tc-getFC):" \
|
||||
-e "s:^\(ARPROG\s*=\).*:\1 $(tc-getAR):" \
|
||||
-e "s:^\(CCFOPT\s*=\).*:\1 ${FFLAGS}:" \
|
||||
-e "s:^\(CCFDEB\s*=\).*:\1 ${FFLAGS}:" \
|
||||
-e 's:^\(EXTRALIB\s*=\).*:\1 -lm -lrt:' \
|
||||
-e "s:^#\s*\(ROOT\s*=\).*:\1 \$(DESTDIR)${EPREFIX%/}/usr:" \
|
||||
-e 's:^#\s*\(INCLUDEDIR\s*=\).*:\1 $(ROOT)/include:' \
|
||||
-e 's:^#\s*\(BINDIR\s*=\).*:\1 $(ROOT)/bin:' \
|
||||
-e "s:^#\s*\(LIBDIR\s*=\).*:\1 \$(ROOT)/$(get_libdir):" \
|
||||
-e 's:^#\s*\(SHARED\s*=\).*:\1 1:' \
|
||||
-e 's:^#\s*\(SOEXT\s*=\).*:\1 .so:' \
|
||||
-e '/fPIC/s/^#//g' \
|
||||
-e "s:^#\s*\(SHARED_FLAGS\s*=.*\):\1 ${LDFLAGS}:" \
|
||||
-e "s:pkg-config:$(tc-getPKG_CONFIG):g" \
|
||||
-e "s:^\(BLASLIB\s*=\).*:\1 $($(tc-getPKG_CONFIG) --libs blas):" \
|
||||
-e "s:^\s*\(HWLOC_HOME\s*?=\).*:\1 ${EPREFIX}/usr:" \
|
||||
-e "s:-I\$(HWLOC_INC):$($(tc-getPKG_CONFIG) --cflags hwloc):" \
|
||||
-e "s:-L\$(HWLOC_LIB) -lhwloc:$($(tc-getPKG_CONFIG) --libs hwloc):" \
|
||||
-e "s:^\s*\(SCOTCH_HOME\s*?=\).*:\1 ${EPREFIX}/usr:" \
|
||||
-e "s:^\s*\(SCOTCH_INC\s*?=.*\):\1/scotch:" \
|
||||
-e "s:^\s*\(SCOTCH_LIB\s*?=.*\)lib:\1$(get_libdir):" \
|
||||
config/LINUX-GNU.in > config.in || die
|
||||
sed -e 's/__SO_NAME__,$@/__SO_NAME__,$(notdir $@)/g' -i Makefile || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
if use amd64; then
|
||||
sed -e 's/^\(VERSIONBIT\s*=\).*/\1 _64bit/' \
|
||||
-i config.in || die
|
||||
fi
|
||||
|
||||
if use int64; then
|
||||
sed -e '/VERSIONINT.*_int64/s/#//' \
|
||||
-e '/CCTYPES.*INTSSIZE64/s/#//' \
|
||||
-i config.in || die
|
||||
fi
|
||||
|
||||
if ! use mpi; then
|
||||
sed -e '/VERSIONMPI.*_nompi/s/#//' \
|
||||
-e '/CCTYPES.*NOMPI/s/#//' \
|
||||
-e '/MPCCPROG\s*= $(CCPROG)/s/#//' \
|
||||
-e '/MCFPROG\s*= $(CFPROG)/s/#//' \
|
||||
-e 's/-DDISTRIBUTED//' \
|
||||
-e 's/-lptscotch/-lscotch/g' \
|
||||
-i config.in || die
|
||||
fi
|
||||
|
||||
if ! use smp; then
|
||||
sed -e '/VERSIONSMP.*_nosmp/s/#//' \
|
||||
-e '/CCTYPES.*NOSMP/s/#//' \
|
||||
-i config.in || die
|
||||
fi
|
||||
|
||||
if use starpu; then
|
||||
sed -e '/libstarpu/s/#//g' -i config.in || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake all drivers
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# both test and tests targets are defined and do not work
|
||||
emake examples
|
||||
echo
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
sed -e "s:${D}::g" -i "${ED}"/usr/bin/pastix-conf || die
|
||||
# quick and dirty (static libs should really be built without pic)
|
||||
cd .. || die
|
||||
dodoc README.txt doc/refcard/refcard.pdf
|
||||
}
|
||||
Reference in New Issue
Block a user