pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: pkgsrc/lang/perl5



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 ()




Home | Main Index | Thread Index | Old Index