summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2010-06-09 09:07:27 +0000
committerJustin Lecher <jlec@gentoo.org>2010-06-09 09:07:27 +0000
commita6004a900ef1a8913aa95185fd7f09533d106f83 (patch)
tree217c08aeefa5f6f9fc14d00e599ba98c4c31827b /sci-libs/punc
parentsrc_compile-v1.eblit not committed with previous change (diff)
downloadhistorical-a6004a900ef1a8913aa95185fd7f09533d106f83.tar.gz
historical-a6004a900ef1a8913aa95185fd7f09533d106f83.tar.bz2
historical-a6004a900ef1a8913aa95185fd7f09533d106f83.zip
New addition
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'sci-libs/punc')
-rw-r--r--sci-libs/punc/ChangeLog11
-rw-r--r--sci-libs/punc/Manifest16
-rw-r--r--sci-libs/punc/files/0.2_p1-configure.patch49
-rw-r--r--sci-libs/punc/files/0.2_p1-underlinking.patch144
-rw-r--r--sci-libs/punc/metadata.xml24
-rw-r--r--sci-libs/punc/punc-0.2_p1.ebuild67
6 files changed, 311 insertions, 0 deletions
diff --git a/sci-libs/punc/ChangeLog b/sci-libs/punc/ChangeLog
new file mode 100644
index 000000000000..ef0b6a8a7abf
--- /dev/null
+++ b/sci-libs/punc/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for sci-libs/punc
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/punc/ChangeLog,v 1.1 2010/06/09 09:07:27 jlec Exp $
+
+*punc-0.2_p1 (09 Jun 2010)
+
+ 09 Jun 2010; Justin Lecher <jlec@gentoo.org>
+ +files/0.2_p1-configure.patch, +files/0.2_p1-underlinking.patch,
+ +punc-0.2_p1.ebuild, +metadata.xml:
+ New addition
+
diff --git a/sci-libs/punc/Manifest b/sci-libs/punc/Manifest
new file mode 100644
index 000000000000..c1cafee5147a
--- /dev/null
+++ b/sci-libs/punc/Manifest
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+AUX 0.2_p1-configure.patch 2119 RMD160 6cc11262aff3e8fc976c0bb23216fb1367ac59d6 SHA1 c24928f41d87a502629e87a16e8515e640951e28 SHA256 3591f2f8cdeb1582b12d04f7c66420e6581a70a66e3f9cc735f156cd02739e26
+AUX 0.2_p1-underlinking.patch 5390 RMD160 a7b54e8bda912e5b1d6f51d4d5242a6c31a7c9bf SHA1 82f77e70dd48cb7522e5866e916e07d47df77ed0 SHA256 f5fa9af72c719d8f346fb2e49aa3d690087bf66dfcfeabbd7de53600f1df2911
+DIST punc-0.2-1.tar.gz 6645934 RMD160 c00936f26f7096cb66e0a323f7dc22ea40fdc0d4 SHA1 e7211c9a6067d73a56081df0a5f56021ac16b464 SHA256 05dcbc75191b73d3df5b108308b96c6c557ed9b1bd0611a0cc1956edc5541c5d
+EBUILD punc-0.2_p1.ebuild 1709 RMD160 b074a8e667611b22bef6eecff2b41c72e30e46b7 SHA1 cb8f294bec325d0c81b19ce406b9ada14123e5bf SHA256 8afca41194699c5ac6c6e3c3dd007003b7dfcf475e279a784362bb1abee7f973
+MISC ChangeLog 393 RMD160 d5f92b4d9b0189b9a1ac3b85005f19ea6bd5d14e SHA1 9792def43c62465d79e43a284781737a98699c45 SHA256 c074a74f5d22dfa0776167f5e1f2cd7878eec82689ba143aab5c07df5b45f767
+MISC metadata.xml 1268 RMD160 1c3eeab7f7f1713110d9012f1a32cc1735349521 SHA1 3cd959da5f7e94c760842dd8067b84b563cced77 SHA256 4dcd334a724ddcd75185f52fb0159c6a2aa5bab4c192634dca7685e22977790f
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.15 (GNU/Linux)
+
+iEYEARECAAYFAkwPWdUACgkQgAnW8HDreRbEtwCfUTDOoQhXtb1XLRVi+BdJ8jEz
+DbgAnjOuwF5TBgHqIynKdl7eTUIqCmMg
+=E15d
+-----END PGP SIGNATURE-----
diff --git a/sci-libs/punc/files/0.2_p1-configure.patch b/sci-libs/punc/files/0.2_p1-configure.patch
new file mode 100644
index 000000000000..7f4ce9788073
--- /dev/null
+++ b/sci-libs/punc/files/0.2_p1-configure.patch
@@ -0,0 +1,49 @@
+diff --git a/configure.ac b/configure.ac
+index 633803d..279fad6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -348,7 +348,7 @@ else
+ AC_CHECK_LIB(blas,dscal_,
+ [blas_use="yes";blas_lib="${blas_lib_path}-lblas"],
+ [blas_use="";blas_lib=""],
+- [${blas_lib_path}-lblas -lvf2c])
++ [${blas_lib_path}-lblas])
+ if test -z "${blas_use}"; then
+ AC_MSG_RESULT([** BLAS library missing ...will BUILD **])
+ blas="blas";
+@@ -410,7 +410,7 @@ else
+ AC_CHECK_LIB(lapack,dsysv_,
+ [lapack_use="yes";lapack_lib="${lapack_lib_path}-llapack"],
+ [lapack_use="";lapack_lib=""],
+- [${lapack_lib_path}-llapack ${blas_lib} -lvf2c])
++ [${lapack_lib_path}-llapack ${blas_lib}])
+ if test -z "${lapack_use}"; then
+ AC_MSG_RESULT([** LAPACK library missing ...will BUILD **])
+ lapack="lapack";
+@@ -472,7 +472,7 @@ else
+ AC_CHECK_LIB(superlu,Destroy_SuperMatrix_Store,
+ [superlu_use="yes";superlu_lib="${superlu_lib_path}-lsuperlu"],
+ [superlu_use="";superlu_lib=""],
+- [${superlu_lib_path}-lsuperlu ${lapack_lib} ${blas_lib} -lvf2c])
++ [${superlu_lib_path}-lsuperlu ${lapack_lib} ${blas_lib}])
+ if test -z "${superlu_use}"; then
+ AC_MSG_RESULT([** SUPERLU library missing ...will BUILD **])
+ superlu="superlu";
+@@ -534,7 +534,7 @@ else
+ AC_CHECK_LIB(arpack,dsgets_,
+ [arpack_use="yes";arpack_lib="${arpack_lib_path}-larpack"],
+ [arpack_use="";arpack_lib=""],
+- [${arpack_lib_path}-larpack ${blas_lib} -lvf2c])
++ [${arpack_lib_path}-larpack ${blas_lib}])
+ if test -z "${arpack_use}"; then
+ AC_MSG_RESULT([** ARPACK library missing ...will BUILD **])
+ arpack="arpack";
+@@ -658,7 +658,7 @@ else
+ AC_CHECK_LIB(pmg,buildg_,
+ [pmg_use="yes";pmg_lib="${pmg_lib_path}-lpmg"],
+ [pmg_use="";pmg_lib=""],
+- [${pmg_lib_path}-lpmg ${blas_lib} -lvf2c])
++ [${pmg_lib_path}-lpmg ${blas_lib}])
+ if test -z "${pmg_use}"; then
+ AC_MSG_RESULT([** PMG library missing ...will BUILD **])
+ pmg="pmg";
diff --git a/sci-libs/punc/files/0.2_p1-underlinking.patch b/sci-libs/punc/files/0.2_p1-underlinking.patch
new file mode 100644
index 000000000000..f83c93f1edc5
--- /dev/null
+++ b/sci-libs/punc/files/0.2_p1-underlinking.patch
@@ -0,0 +1,144 @@
+diff --git a/configure.ac b/configure.ac
+index 633803d..89a9fb4 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -50,7 +50,8 @@ dnl 2. checks for programs
+ AC_LANG_C
+ AC_PROG_CC
+ AC_PROG_CPP
+-AC_DISABLE_SHARED
++AC_PROG_F77
++AC_F77_LIBRARY_LDFLAGS
+ AM_PROG_LIBTOOL
+
+ dnl 3. checks for libraries
+@@ -348,7 +349,7 @@ else
+ AC_CHECK_LIB(blas,dscal_,
+ [blas_use="yes";blas_lib="${blas_lib_path}-lblas"],
+ [blas_use="";blas_lib=""],
+- [${blas_lib_path}-lblas -lvf2c])
++ [${blas_lib_path}-lblas])
+ if test -z "${blas_use}"; then
+ AC_MSG_RESULT([** BLAS library missing ...will BUILD **])
+ blas="blas";
+@@ -410,7 +411,7 @@ else
+ AC_CHECK_LIB(lapack,dsysv_,
+ [lapack_use="yes";lapack_lib="${lapack_lib_path}-llapack"],
+ [lapack_use="";lapack_lib=""],
+- [${lapack_lib_path}-llapack ${blas_lib} -lvf2c])
++ [${lapack_lib_path}-llapack ${blas_lib}])
+ if test -z "${lapack_use}"; then
+ AC_MSG_RESULT([** LAPACK library missing ...will BUILD **])
+ lapack="lapack";
+@@ -472,7 +473,7 @@ else
+ AC_CHECK_LIB(superlu,Destroy_SuperMatrix_Store,
+ [superlu_use="yes";superlu_lib="${superlu_lib_path}-lsuperlu"],
+ [superlu_use="";superlu_lib=""],
+- [${superlu_lib_path}-lsuperlu ${lapack_lib} ${blas_lib} -lvf2c])
++ [${superlu_lib_path}-lsuperlu ${lapack_lib} ${blas_lib}])
+ if test -z "${superlu_use}"; then
+ AC_MSG_RESULT([** SUPERLU library missing ...will BUILD **])
+ superlu="superlu";
+@@ -534,7 +535,7 @@ else
+ AC_CHECK_LIB(arpack,dsgets_,
+ [arpack_use="yes";arpack_lib="${arpack_lib_path}-larpack"],
+ [arpack_use="";arpack_lib=""],
+- [${arpack_lib_path}-larpack ${blas_lib} -lvf2c])
++ [${arpack_lib_path}-larpack ${blas_lib}])
+ if test -z "${arpack_use}"; then
+ AC_MSG_RESULT([** ARPACK library missing ...will BUILD **])
+ arpack="arpack";
+@@ -658,7 +659,7 @@ else
+ AC_CHECK_LIB(pmg,buildg_,
+ [pmg_use="yes";pmg_lib="${pmg_lib_path}-lpmg"],
+ [pmg_use="";pmg_lib=""],
+- [${pmg_lib_path}-lpmg ${blas_lib} -lvf2c])
++ [${pmg_lib_path}-lpmg ${blas_lib}])
+ if test -z "${pmg_use}"; then
+ AC_MSG_RESULT([** PMG library missing ...will BUILD **])
+ pmg="pmg";
+@@ -846,10 +847,6 @@ AC_OUTPUT([
+ src/base/Makefile
+
+ src/vf2c/Makefile
+- src/blas/Makefile
+- src/lapack/Makefile
+- src/superlu/Makefile
+- src/arpack/Makefile
+ src/cgcode/Makefile
+ src/pmg/Makefile
+
+diff --git a/src/aaa_lib/Makefile.am b/src/aaa_lib/Makefile.am
+index e338300..903dd2f 100644
+--- a/src/aaa_lib/Makefile.am
++++ b/src/aaa_lib/Makefile.am
+@@ -92,11 +92,11 @@ libdir = ${prefix}/lib/${fetk_cpu_vendor_os}
+ lib_LTLIBRARIES = libpunc.la ${LIBVF2C} ${LIBBLAS} ${LIBLAPACK} ${LIBSUPERLU} ${LIBARPACK} ${LIBCGCODE} ${LIBPMG}
+
+ libpunc_la_SOURCES =
+-libpunc_la_LIBADD = ${BASE_LIBS}
++libpunc_la_LIBADD = ${BASE_LIBS} -lm
+ libpunc_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libvf2c_la_SOURCES =
+-libvf2c_la_LIBADD = ${VF2C_LIBS}
++libvf2c_la_LIBADD = ${VF2C_LIBS} -lgfortran -lf2c -lm
+ libvf2c_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libblas_la_SOURCES =
+@@ -108,7 +108,7 @@ liblapack_la_LIBADD = ${LAPACK_LIBS}
+ liblapack_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libsuperlu_la_SOURCES =
+-libsuperlu_la_LIBADD = ${SUPERLU_LIBS}
++libsuperlu_la_LIBADD = ${SUPERLU_LIBS}
+ libsuperlu_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libarpack_la_SOURCES =
+@@ -116,10 +116,9 @@ libarpack_la_LIBADD = ${ARPACK_LIBS}
+ libarpack_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libcgcode_la_SOURCES =
+-libcgcode_la_LIBADD = ${CGCODE_LIBS}
++libcgcode_la_LIBADD = ${CGCODE_LIBS} ${VF2C_LIBS} -lblas -lgfortran -lm
+ libcgcode_la_LDFLAGS = -version-info ${FETK_VERSION}
+
+ libpmg_la_SOURCES =
+-libpmg_la_LIBADD = ${PMG_LIBS}
++libpmg_la_LIBADD = ${VF2C_LIBS} ${PMG_LIBS} ${BASE_LIBS} -lgfortran -lf2c -lmaloc -lm
+ libpmg_la_LDFLAGS = -version-info ${FETK_VERSION}
+-
+diff --git a/src/pmg/Makefile.am b/src/pmg/Makefile.am
+index 6f3108d..154aeba 100644
+--- a/src/pmg/Makefile.am
++++ b/src/pmg/Makefile.am
+@@ -38,11 +38,12 @@ always_built_SUBDIRS =
+ SUBDIRS = $(always_built_SUBDIRS) .
+ THISLIB = pmg
+
+-noinst_LTLIBRARIES = libpmg.la
++lib_LTLIBRARIES = libpmg.la
+
+-SRC = buildAd.c buildBd.c buildGd.c buildPd.c cgd.c cgmgd.c cgmgdrvd.c gsd.c matvecd.c mblasd.c mgcsd.c mgdrvd.c mgfasd.c mgsubd.c mikpckd.c mlinpckd.c ncgd.c ncgdrvd.c newdrvd.c newtond.c ngsd.c ngsdrvd.c ninterpd.c nrchd.c nrchdrvd.c nsmoothd.c nsord.c nsordrvd.c nwjd.c nwjdrvd.c powerd.c rchd.c smoothd.c sord.c wjd.c
++SRC = buildAd.c buildBd.c buildGd.c buildPd.c cgd.c cgmgd.c cgmgdrvd.c gsd.c matvecd.c mblasd.c mgcsd.c mgdrvd.c mgfasd.c mgsubd.c mikpckd.c mlinpckd.c ncgd.c ncgdrvd.c newdrvd.c newtond.c ngsd.c ngsdrvd.c ninterpd.c nrchd.c nrchdrvd.c nsmoothd.c nsord.c nsordrvd.c nwjd.c nwjdrvd.c powerd.c rchd.c smoothd.c sord.c wjd.c secd.c pded.f
+
+ libpmg_la_SOURCES = ${SRC}
++libpmg_la_LIBADD = -lf2c ../vf2c/libvf2c.la
+ INCLUDES = @maloc_inc@
+ AM_CFLAGS = @profile@ @pedantic_ansi@
+
+diff --git a/src/vf2c/main.c b/src/vf2c/main.c
+index 4539749..6577570 100644
+--- a/src/vf2c/main.c
++++ b/src/vf2c/main.c
+@@ -134,7 +134,9 @@ f_init();
+ #ifndef NO_ONEXIT
+ ONEXIT(f_exit);
+ #endif
+-MAIN__();
++int MAIN__( )
++ { return(0);
++}
+ #ifdef NO_ONEXIT
+ f_exit();
+ #endif
diff --git a/sci-libs/punc/metadata.xml b/sci-libs/punc/metadata.xml
new file mode 100644
index 000000000000..cc35dc3a4a07
--- /dev/null
+++ b/sci-libs/punc/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<maintainer>
+ <email>jlec@gentoo.org</email>
+</maintainer>
+<longdescription>
+ PUNC (Portable Understructure for Numerical Computing) is a small standard
+ collection of software libraries for numerical computing. The PUNC
+ collection includes reference implementations of the standard (dense matrix)
+ linear algebra tools BLAS and LAPACK, and also includes some newer (sparse
+ matrix) linear algebra tools ARPACK, SuperLU, CgCode, and PMG. PUNC also
+ provides some additional basic infrastructure such as the standard F2C
+ header and corresponding library (libF2C), to support the use of F2C'd
+ FORTRAN codes, and some other standard tools used to build numerical
+ simulation software, such as the HDF5 library. While most of the libraries
+ included in PUNC are completely stand-alone, and are the reference
+ implementations developed by the individual library authors, PUNC also
+ provides some Object-oriented C wrappers (written by the FETK developers)
+ for use with Object-oriented C/C++ codes such as FETK . This is accomplished
+ by building PUNC on top of FETK 's MALOC library.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-libs/punc/punc-0.2_p1.ebuild b/sci-libs/punc/punc-0.2_p1.ebuild
new file mode 100644
index 000000000000..c089d63b11c5
--- /dev/null
+++ b/sci-libs/punc/punc-0.2_p1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/punc/punc-0.2_p1.ebuild,v 1.1 2010/06/09 09:07:27 jlec Exp $
+
+EAPI="3"
+
+inherit autotools multilib
+
+MY_PV="${PV}"
+MY_P="${PN}-${MY_PV/_p/-}"
+
+DESCRIPTION="Portable Understructure for Numerical Computing"
+HOMEPAGE="http://fetk.org/codes/punc/index.html"
+SRC_URI="http://www.fetk.org/codes/${PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug mpi static-libs"
+
+DEPEND="
+ dev-libs/maloc[mpi?]
+ sci-libs/arpack[mpi?]
+ sci-libs/superlu
+ virtual/blas
+ virtual/mpi"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ rm -rf src/{blas,lapack,arpack,superlu}
+ epatch "${FILESDIR}"/${PV}-underlinking.patch
+
+ cp tools/tests/pmg/*.f src/pmg/ -vfi
+ cp tools/tests/pmg/*.c src/pmg/ -vfi
+ cp src/pmg/vpmg.h src/vf2c/punc/vpmg.h
+ eautoreconf
+}
+
+src_configure() {
+ export FETK_INCLUDE="${EPREFIX}/usr/include"
+ export FETK_LIBRARY="${EPREFIX}/usr/$(get_libdir)"
+ export FETK_LAPACK_LIBRARY="$(pkg-config --libs lapack)"
+ export FETK_BLAS_LIBRARY="${FETK_LIBRARY}"
+ export FETK_SUPERLU_LIBRARY="-lsuperlu"
+ export FETK_ARPACK_LIBRARY="${EPREFIX}/usr/$(get_libdir)"
+
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable debug vdebug) \
+ --enable-shared \
+ --enable-pmgforce \
+ --enable-cgcodeforce \
+ --enable-vf2cforce
+
+ sed -e "s|libdir = \${prefix}/lib/\${fetk_cpu_vendor_os}|libdir = \${prefix}/$(get_libdir)/|" \
+ -i src/aaa_lib/Makefile || \
+ die "failed to patch lib Makefile"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ dohtml doc/index.html || die "failed to install html docs"
+}
+