portmap_6.0: Fix building on mipsel with gcc4.3
authorGraham Gower <graham.gower@gmail.com>
Mon, 10 Aug 2009 02:49:55 +0000 (04:49 +0200)
committerHolger Hans Peter Freyther <zecke@selfish.org>
Mon, 10 Aug 2009 04:49:53 +0000 (06:49 +0200)
with gcc-4.4 and provides the following:

| tmp/cross/mipsel/lib/gcc/mipsel-angstrom-linux/4.4.1/../../../../mipsel-angstrom-linux/bin/ld: portmap.o: relocation R_MIPS_HI16 against `__gnu_local_gp' can not be used when making a shared object; recompile with -fPIC

The CFLAGS in portmap's Makefile contains -fpie, but is ignored. The
CFLAGS I've added below are constructed from portmap's Makefile. When
built with gcc-4.3.3 the resultant binary no longer segfaults.

Signed-Off-By: Holger Hans Peter Freyther <zecke@selfish.org>
recipes/portmap/portmap-6.0/no-pie.patch [deleted file]
recipes/portmap/portmap_6.0.bb

diff --git a/recipes/portmap/portmap-6.0/no-pie.patch b/recipes/portmap/portmap-6.0/no-pie.patch
deleted file mode 100644 (file)
index 4d7e2da..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
---- portmap_6.0/Makefile.orig  2007-11-21 00:35:52.000000000 -0600
-+++ portmap_6.0/Makefile       2007-11-21 00:37:23.000000000 -0600
-@@ -125,9 +125,9 @@
- all:  portmap pmap_dump pmap_set portmap.man
- CPPFLAGS += $(HOSTS_ACCESS)
--portmap: CFLAGS   += -fpie
-+#portmap: CFLAGS   += -fpie
- portmap: LDLIBS   += $(WRAP_LIB)
--portmap: LDFLAGS  += -pie
-+#portmap: LDFLAGS  += -pie
- portmap: portmap.o pmap_check.o from_local.o
- from_local: CPPFLAGS += -DTEST
index cb94a48..501aa5d 100644 (file)
@@ -1,6 +1,6 @@
 require portmap.inc
 
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "http://www.sourcefiles.org/Networking/Tools/Miscellanenous/portmap-6.0.tgz \
            file://destdir-no-strip.patch;patch=1 \
@@ -8,12 +8,10 @@ SRC_URI = "http://www.sourcefiles.org/Networking/Tools/Miscellanenous/portmap-6.
            file://no-libwrap.patch;patch=1;pnum=0 \
            file://portmap.init "
 
-# Remove this patch when SlugOS upgrades to binutils 1.18
-SRC_URI_append_slugos = " file://no-pie.patch;patch=1 "
-
 S = "${WORKDIR}/${PN}_${PV}/"
 
 CPPFLAGS += "-DFACILITY=LOG_DAEMON -DENABLE_DNS"
+CFLAGS += "-O2 -Wall -Wstrict-prototypes -fpie"
 
 fakeroot do_install() {
     install -d ${D}${mandir}/man8/ ${D}${base_sbindir} ${D}${sysconfdir}/init.d