Le 26/06/14 15:06, Jonathan Perkin a écrit :
* On 2014-06-26 at 13:54 BST, Richard PALO wrote:Le 26/06/14 13:31, Jonathan Perkin a écrit :* On 2014-05-10 at 14:39 BST, Richard PALO wrote:Module Name: pkgsrc Committed By: richard Date: Sat May 10 13:39:57 UTC 2014 Modified Files: pkgsrc/lang/perl5: distinfo pkgsrc/lang/perl5/patches: patch-ca Log Message: Put back -fstack-protector on solaris in perl after libtool fix.I'm not sure which libtool fix this is referring to, but the reason I disabled this in the first place is because it causes problems with packages which do not correctly link against -lssp. Re-introducing it has again caused packages to fail, you can see this most clearly in graphics/graphviz which is currently the 3rd top broken package: http://us-east.manta.joyent.com/pkgsrc/public/reports/upstream-trunk32/20140625.2120/graphviz-2.38.0nb1/build.log It's too late to fix this now during the freeze as any change to perl would result in massive rebuilds, but it's something we need to do after the branch. My personal preference is to just disable it, but again I'm not sure what the libtool fix is or whether it's supposed to be handling this.The libtool fix was to: 1. allow -fstack-protector* passthrough for the link options (reverted by joerg@, BTW I asked him again recently about this) 2. remove -nostdlib for g++ on SunOS to allow (1) work for g++ in addition to gcc (reverted by joerg@, then later recommitted!). 3. disable link time library position optimization for SunOS in order to support -Bdirect issue on x86_64 (see revert in 1) There has been plenty of time to resolve this collaboratively.Ok, so let's get this rolling. - Richard, have you verified that your libtool changes fix all of the known issues with missing -lssp in pkgsrc when perl is involved? - Joerg, what are the issues with Richard's patch as it stands? What can we do to make it acceptable? Perhaps start with a post of the proposed patch applied to trunk to tech-pkg@ to get things going and discuss there. Thanks,
This is the thread I started over two months ago:
-------- Message original -------- Sujet: libtool, -fstack-protector, -nostdlib, and while we're at it -Bdirect on SunOS Date : Tue, 01 Apr 2014 07:02:22 +0200 De : Richard PALO <richard.palo%free.fr@localhost> Pour : tech-pkg%netbsd.org@localhost Groupes de discussion: gmane.os.netbsd.devel.packages
These are more or less the missing parts since the revert:
diff --git a/devel/libtool/patches/patch-ac b/devel/libtool/patches/patch-ac index a198ecf..708359c 100644 --- a/devel/libtool/patches/patch-ac +++ b/devel/libtool/patches/patch-ac @@ -1,6 +1,6 @@ -$NetBSD: patch-ac,v 1.28 2013/07/01 15:59:06 bsiegert Exp $ +$NetBSD$ ---- libltdl/config/ltmain.sh.orig Mon Oct 17 10:19:11 2011 +--- libltdl/config/ltmain.sh.orig 2011-10-17 10:19:35.000000000 +0000 +++ libltdl/config/ltmain.sh @@ -133,8 +133,9 @@ $lt_unset CDPATH # function. @@ -14,7 +14,34 @@ $NetBSD: patch-ac,v 1.28 2013/07/01 15:59:06 bsiegert Exp $ : ${CP="cp -f"} test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} : ${MAKE="make"} -@@ -7391,6 +7392,7 @@ func_mode_link () +@@ -1180,7 +1181,9 @@ func_enable_tag "$optarg" + test "$opt_debug" = : || func_append preserve_args " --debug" + + case $host in +- *cygwin* | *mingw* | *pw32* | *cegcc*) ++ # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=1645 ++ # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 ++ *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* ) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; +@@ -5847,13 +5850,14 @@ func_mode_link () + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC ++ # -fstack-protector* stack protector flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ +- -O*|-flto*|-fwhopr*|-fuse-linker-plugin) ++ -O*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + func_append compile_command " $arg" +@@ -7391,6 +7395,7 @@ func_mode_link ()