summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny van Dyk <kugelfang@gentoo.org>2004-06-30 22:14:11 +0000
committerDanny van Dyk <kugelfang@gentoo.org>2004-06-30 22:14:11 +0000
commit9f37c6c5d7d38bfa9fc6279da362ae92ecdde35b (patch)
tree9c8b620d26de7ea75ef592f9d02faf470bea271e /dev-libs/libf2c
parentfixing security bug (bug #55424), marking stable for all archs (very minor ch... (diff)
downloadgentoo-2-9f37c6c5d7d38bfa9fc6279da362ae92ecdde35b.tar.gz
gentoo-2-9f37c6c5d7d38bfa9fc6279da362ae92ecdde35b.tar.bz2
gentoo-2-9f37c6c5d7d38bfa9fc6279da362ae92ecdde35b.zip
Patched makefile to build PIC shared object. BUG #55386.
Diffstat (limited to 'dev-libs/libf2c')
-rw-r--r--dev-libs/libf2c/ChangeLog8
-rw-r--r--dev-libs/libf2c/Manifest5
-rw-r--r--dev-libs/libf2c/files/digest-libf2c-20021004-r11
-rw-r--r--dev-libs/libf2c/files/libf2c-20021004-shared-object.patch47
-rw-r--r--dev-libs/libf2c/libf2c-20021004-r1.ebuild38
5 files changed, 97 insertions, 2 deletions
diff --git a/dev-libs/libf2c/ChangeLog b/dev-libs/libf2c/ChangeLog
index 7d3620f4b7cb..1130af97e675 100644
--- a/dev-libs/libf2c/ChangeLog
+++ b/dev-libs/libf2c/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-libs/libf2c
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/libf2c/ChangeLog,v 1.7 2004/06/24 23:16:50 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libf2c/ChangeLog,v 1.8 2004/06/30 22:14:11 kugelfang Exp $
+
+*libf2c-20021004-r1 (01 Jul 2004)
+
+ 01 Jul 2004; Danny van Dyk <kugelfang@gentoo.org>
+ +files/libf2c-20021004-shared-object.patch, +libf2c-20021004-r1.ebuild:
+ Patched the makefile.u to produce a shared object with -fPIC. (see BUG #55386)
07 Apr 2004; Travis Tilley <lv@gentoo.org> libf2c-20021004.ebuild:
added ~amd64 to keywords
diff --git a/dev-libs/libf2c/Manifest b/dev-libs/libf2c/Manifest
index 403ffe815605..7e0b6c3743c2 100644
--- a/dev-libs/libf2c/Manifest
+++ b/dev-libs/libf2c/Manifest
@@ -1,3 +1,6 @@
+MD5 6aa662097a0e0f559132d0b776ab1c1c ChangeLog 921
+MD5 9479d78428e97a0c8064364cea376b92 libf2c-20021004-r1.ebuild 782
MD5 67ae5a2bb224f5454b9eed60a85ecea1 libf2c-20021004.ebuild 668
-MD5 ff021853df5e3570d97b416597307008 ChangeLog 678
+MD5 298400926524a95bf204a0459d05e693 files/digest-libf2c-20021004-r1 55
MD5 298400926524a95bf204a0459d05e693 files/digest-libf2c-20021004 55
+MD5 2fe8738e6d4d2a95be7f5b90b4877fa4 files/libf2c-20021004-shared-object.patch 1437
diff --git a/dev-libs/libf2c/files/digest-libf2c-20021004-r1 b/dev-libs/libf2c/files/digest-libf2c-20021004-r1
new file mode 100644
index 000000000000..ff8b0164d2d2
--- /dev/null
+++ b/dev-libs/libf2c/files/digest-libf2c-20021004-r1
@@ -0,0 +1 @@
+MD5 64b87b3804fad207aa476894e00cd496 libf2c.zip 123393
diff --git a/dev-libs/libf2c/files/libf2c-20021004-shared-object.patch b/dev-libs/libf2c/files/libf2c-20021004-shared-object.patch
new file mode 100644
index 000000000000..baab44a6bd5a
--- /dev/null
+++ b/dev-libs/libf2c/files/libf2c-20021004-shared-object.patch
@@ -0,0 +1,47 @@
+--- makefile.u.orig 2004-06-30 23:30:44.980603208 +0200
++++ makefile.u 2004-06-30 23:33:28.220786928 +0200
+@@ -17,6 +17,7 @@
+ # compile, then strip unnecessary symbols
+ .c.o:
+ $(CC) -c -DSkip_f2c_Undefs $(CFLAGS) $*.c
++ $(CC) -c -DSkip_f2c_Undefs $(CFLAGS) -fPIC $*.c -o shared/$*.o
+ ld -r -x -o $*.xxx $*.o
+ mv $*.xxx $*.o
+ ## Under Solaris (and other systems that do not understand ld -x),
+@@ -63,7 +64,14 @@
+ # For INTEGER*8 support (which requires system-dependent adjustments to
+ # f2c.h), add $(QINT) to the libf2c.a dependency list below...
+
+-all: f2c.h signal1.h sysdep1.h libf2c.a
++dirs:
++ mkdir -p shared
++
++libf2c.so: $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) \
++ $(HALF) $(CMP) $(EFL) $(CHAR) $(I77) $(TIME)
++ gcc -shared -o libf2c.so shared/*.o
++
++all: dirs f2c.h signal1.h sysdep1.h libf2c.a libf2c.so
+
+ libf2c.a: $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) \
+ $(HALF) $(CMP) $(EFL) $(CHAR) $(I77) $(TIME)
+@@ -74,9 +82,11 @@
+
+ f77vers.o: f77vers.c
+ $(CC) -c f77vers.c
++ $(CC) -fPIC -c f77vers.c -o shared/f77vers.o
+
+ i77vers.o: i77vers.c
+ $(CC) -c i77vers.c
++ $(CC) -fPIC -c i77vers.c -o shared/i77vers.o
+
+ # To get an "f2c.h" for use with "f2c -C++", first "make hadd"
+ hadd: f2c.h0 f2ch.add
+@@ -108,7 +118,7 @@
+ -ranlib $(LIBDIR)/libf2c.a
+
+ clean:
+- rm -f libf2c.a *.o arith.h signal1.h sysdep1.h
++ rm -f libf2c.a *.o shared/*.o arith.h signal1.h sysdep1.h
+
+ backspac.o: fio.h
+ close.o: fio.h
diff --git a/dev-libs/libf2c/libf2c-20021004-r1.ebuild b/dev-libs/libf2c/libf2c-20021004-r1.ebuild
new file mode 100644
index 000000000000..914c868ab8f5
--- /dev/null
+++ b/dev-libs/libf2c/libf2c-20021004-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/libf2c/libf2c-20021004-r1.ebuild,v 1.1 2004/06/30 22:14:11 kugelfang Exp $
+
+inherit gcc eutils
+
+DESCRIPTION="Library that converts FORTRAN to C source."
+HOMEPAGE="ftp://ftp.netlib.org/f2c/index.html"
+SRC_URI="ftp://ftp.netlib.org/f2c/${PN}.zip"
+
+LICENSE="libf2c"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+
+DEPEND="virtual/glibc"
+
+S=${WORKDIR}/${PN}
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/${P}-shared-object.patch
+}
+
+src_compile() {
+ emake -f makefile.u all \
+ CFLAGS="${CFLAGS}" \
+ CC="$(gcc-getCC)" \
+ || die
+}
+
+src_install () {
+ dolib.a libf2c.a
+ dolib libf2c.so
+ insinto /usr/include
+ doins f2c.h
+ dodoc README Notice
+}