summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2008-12-09 09:58:26 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2008-12-09 09:58:26 +0000
commitb9d9039171547517fbdaa64cff73dc0a152f2c1f (patch)
treeb4e8713b36eae294fe371219f68e3c560da5b193 /sci-physics/cernlib
parentFix Header (diff)
downloadgentoo-2-b9d9039171547517fbdaa64cff73dc0a152f2c1f.tar.gz
gentoo-2-b9d9039171547517fbdaa64cff73dc0a152f2c1f.tar.bz2
gentoo-2-b9d9039171547517fbdaa64cff73dc0a152f2c1f.zip
New set of debian patches. Also added proper LDFLAGS propagation and implicit declarations fixes. Removed latex dependency
(Portage version: 2.2_rc17/cvs/Linux 2.6.25-gentoo-r7 x86_64)
Diffstat (limited to 'sci-physics/cernlib')
-rw-r--r--sci-physics/cernlib/ChangeLog9
-rw-r--r--sci-physics/cernlib/cernlib-2006-r2.ebuild117
2 files changed, 125 insertions, 1 deletions
diff --git a/sci-physics/cernlib/ChangeLog b/sci-physics/cernlib/ChangeLog
index 6a4fe1c0c2d3..943948b21308 100644
--- a/sci-physics/cernlib/ChangeLog
+++ b/sci-physics/cernlib/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sci-physics/cernlib
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-physics/cernlib/ChangeLog,v 1.11 2008/09/05 07:44:26 opfer Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/cernlib/ChangeLog,v 1.12 2008/12/09 09:58:26 bicatali Exp $
+
+*cernlib-2006-r2 (09 Dec 2008)
+
+ 09 Dec 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ +cernlib-2006-r2.ebuild:
+ New set of debian patches. Also added proper LDFLAGS propagation and
+ implicit declarations fixes. Removed latex dependency
05 Sep 2008; Christian Faulhammer <opfer@gentoo.org> cernlib-2006.ebuild:
change dependency from virtual/tetex to virtual/latex-base for all ebuilds
diff --git a/sci-physics/cernlib/cernlib-2006-r2.ebuild b/sci-physics/cernlib/cernlib-2006-r2.ebuild
new file mode 100644
index 000000000000..401540549a46
--- /dev/null
+++ b/sci-physics/cernlib/cernlib-2006-r2.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-physics/cernlib/cernlib-2006-r2.ebuild,v 1.1 2008/12/09 09:58:26 bicatali Exp $
+
+inherit eutils fortran
+
+DEB_PN=cernlib
+DEB_PV=${PV}.dfsg.2
+DEB_PR=13.2
+DEB_P=${DEB_PN}_${DEB_PV}
+
+DESCRIPTION="CERN program library for High Energy Physics"
+HOMEPAGE="http://wwwasd.web.cern.ch/wwwasd/cernlib"
+SRC_URI="mirror://debian/pool/main/${DEB_PN:0:1}/${DEB_PN}/${DEB_P}.orig.tar.gz
+ mirror://debian/pool/main/${DEB_PN:0:1}/${DEB_PN}/${DEB_P}-${DEB_PR}.diff.gz"
+
+KEYWORDS="~amd64 ~hppa ~sparc ~x86"
+LICENSE="GPL-2 LGPL-2 BSD"
+
+SLOT="0"
+
+DEPEND="x11-libs/openmotif
+ virtual/lapack
+ dev-lang/cfortran
+ x11-misc/imake
+ x11-misc/makedepend
+ dev-util/pkgconfig"
+
+RDEPEND="x11-libs/openmotif
+ virtual/lapack
+ dev-lang/cfortran"
+
+IUSE=""
+
+S="${WORKDIR}/${DEB_PN}-${DEB_PV}.orig"
+
+FORTRAN="gfortran g77 ifc"
+
+src_unpack() {
+
+ unpack ${A}
+ epatch "${DEB_P}-${DEB_PR}".diff
+ cd "${S}"
+
+ epatch "${FILESDIR}"/${P}-nogfortran.patch
+
+ # set some default paths
+ sed -i \
+ -e "s:/usr/local:/usr:g" \
+ -e "s:prefix)/lib:prefix)/$(get_libdir):" \
+ -e 's:$(prefix)/etc:/etc:' \
+ -e 's:$(prefix)/man:$(prefix)/share/man:' \
+ debian/add-ons/cernlib.mk || die "sed failed"
+
+ # use system blas and lapack set by gentoo framework
+ sed -i \
+ -e "s:\$DEPS -lm:$(pkg-config --libs blas):" \
+ -e "s:\$DEPS -llapack -lm:$(pkg-config --libs lapack):" \
+ -e 's:`depend $d $a blas`::' \
+ -e 's:X11R6:X11:g' \
+ debian/add-ons/bin/cernlib.in || die "sed failed"
+
+ cp debian/add-ons/Makefile .
+ export DEB_BUILD_OPTIONS="${FORTRANC} nostrip nocheck"
+
+ einfo "Applying Debian patches"
+ emake -j1 patch || die "debian patch failed"
+
+ # since we depend on cfortran, do not use the one from cernlib
+ rm -f src/include/cfortran/cfortran.h
+
+ # respect users flags
+ sed -i \
+ -e 's/-O3/-O2/g' \
+ -e "s/-O2/${CFLAGS}/g" \
+ src/config/linux.cf \
+ || die "sed linux.cf failed"
+ sed -i \
+ -e 's/\$(FCLINK)/\$(FCLINK) $(LDFLAGS)/' \
+ -e 's/\$(CCLINK)/\$(CCLINK) $(LDFLAGS)/' \
+ src/config/{biglib,fortran,Imake}.rules \
+ src/patchy/Imakefile \
+ || die "sed for ldflags propagation failed"
+
+ # add missing headers for implicit
+ sed -i \
+ -e '0,/^#include/i#include <stdlib.h>' \
+ src/kernlib/kerngen/ccgen*/*.c || die
+}
+
+src_compile() {
+ # parallel make breaks and complex patched imake system, hard to debug
+ emake -j1 cernlib-indep cernlib-arch || die "emake libs failed"
+}
+
+src_test() {
+ LD_LIBRARY_PATH="${S}"/shlib \
+ emake -j1 cernlib-test || die "emake test failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ cd "${S}"/debian
+ dodoc changelog README.* deadpool.txt NEWS copyright || die "dodoc failed"
+ newdoc add-ons/README README.add-ons || die "newdoc failed"
+}
+
+pkg_postinst() {
+ elog "Gentoo ${PN} is based on Debian similar package."
+ elog "Serious cernlib users might want to check:"
+ elog "http://people.debian.org/~kmccarty/cernlib/"
+ elog "for the changes and licensing from the original package"
+ if use amd64; then
+ elog "Please see the possible warnings for ${PN} on 64 bits:"
+ elog "${ROOT}/usr/share/doc/${PF}/README.*64*"
+ fi
+}