[HaikuPorts-devs] [dev-lang/perl] [RFC 3/5] Suppress -fstack-protector

Andreas Färber andreas.faerber at web.de
Wed Apr 21 17:53:00 PDT 2010


miniperl fails to link:

/boot/develop/abi/x86/gcc4/tools/gcc-4.3.3-haiku-090629/bin/../lib/gcc/i586-pc-haiku/4.3.3/../../../libssp.a(ssp.o): In function `__stack_chk_fail_local':
(.text+0x190): multiple definition of `__stack_chk_fail_local'
/boot/develop/abi/x86/gcc4/tools/gcc-4.3.3-haiku-090629/bin/../lib/gcc/i586-pc-haiku/4.3.3/../../../libssp_nonshared.a(libssp_nonshared_la-ssp-local.o):(.text+0x0): first defined here
collect2: ld returned 1 exit status
make: *** [miniperl] Error 1

Workaround by avoiding -fstack-protector.
---
 Configure |   12 ------------
 1 files changed, 0 insertions(+), 12 deletions(-)

diff --git a/Configure b/Configure
index 9e19adc..d141d57 100755
--- a/Configure
+++ b/Configure
@@ -5160,18 +5160,6 @@ default|recommended)
 		eval $checkccflag
 		;;
 	esac
-
-	# on x86_64 (at least) we require an extra library (libssp) in the
-	# link command line. This library is not named, so I infer that it is
-	# an implementation detail that may change. Hence the safest approach
-	# is to add the flag to the flags passed to the compiler at link time,
-	# as that way the compiler can do the right implementation dependant
-	# thing. (NWC)
-	case "$gccversion" in
-	?*)	set stack-protector -fstack-protector
-		eval $checkccflag
-		;;
-	esac
 	;;
 esac
 
-- 
1.7.1.rc2.5.gddd02



More information about the haikuports-devs mailing list