pkgsrc-Changes-HG archive

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

[pkgsrc/trunk]: pkgsrc/lang/gcc9 gcc9: pull a hack for the __stack_chk_fail_l...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/927f1de15470
branches:  trunk
changeset: 390930:927f1de15470
user:      tsutsui <tsutsui%pkgsrc.org@localhost>
date:      Sun Jan 01 12:59:39 2023 +0000

description:
gcc9: pull a hack for the __stack_chk_fail_local() on NetBSD.

Taken from src/external/gpl3/gcc/dist/gcc/targhooks.c in the NetBSD HEAD:
 http://cvsweb.netbsd.org/bsdweb.cgi/src/external/gpl3/gcc/dist/gcc/targhooks.c#rev1.2
via pkgsrc/lang/gcc49 in Attic:
 http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/gcc49/patches/Attic/patch-gcc_targhooks.c#rev1.1

This fixes an error during make configure in pkgsrc/x11/qt6-qtbase
on NetBSD/i386 9.3 as mentioned in PR/57151.

Bump PKGREVISION.

diffstat:

 lang/gcc9/Makefile                      |   4 ++--
 lang/gcc9/distinfo                      |   3 ++-
 lang/gcc9/patches/patch-gcc_targhooks.c |  26 ++++++++++++++++++++++++++
 3 files changed, 30 insertions(+), 3 deletions(-)

diffs (65 lines):

diff -r 3a165c6ded5a -r 927f1de15470 lang/gcc9/Makefile
--- a/lang/gcc9/Makefile        Sun Jan 01 12:35:21 2023 +0000
+++ b/lang/gcc9/Makefile        Sun Jan 01 12:59:39 2023 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.40 2022/10/22 10:52:27 nros Exp $
+# $NetBSD: Makefile,v 1.41 2023/01/01 12:59:39 tsutsui Exp $
 
 GCC_PKGNAME=   gcc9
 .include "version.mk"
@@ -8,7 +8,7 @@
 ## When bumping the PKGREVISION of this package the PKGREVISION of
 ## lang/gcc9-libs needs to be bumped to be at least 1 more than the
 ## PKGREVISION of this package!
-PKGREVISION=   9
+PKGREVISION=   10
 CATEGORIES=    lang
 MASTER_SITES=  ${MASTER_SITE_GNU:=gcc/gcc-${GCC9_DIST_VERSION}/}
 EXTRACT_SUFX=  .tar.xz
diff -r 3a165c6ded5a -r 927f1de15470 lang/gcc9/distinfo
--- a/lang/gcc9/distinfo        Sun Jan 01 12:35:21 2023 +0000
+++ b/lang/gcc9/distinfo        Sun Jan 01 12:59:39 2023 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.9 2021/10/26 10:51:36 nia Exp $
+$NetBSD: distinfo,v 1.10 2023/01/01 12:59:39 tsutsui Exp $
 
 BLAKE2s (gcc-9.3.0.tar.xz) = 5c639411181a47ee872fb45b59ad686402f6422c6cdcfdac995925b58c9373ad
 SHA512 (gcc-9.3.0.tar.xz) = 4b9e3639eef6e623747a22c37a904b4750c93b6da77cf3958d5047e9b5ebddb7eebe091cc16ca0a227c0ecbd2bf3b984b221130f269a97ee4cc18f9cf6c444de
@@ -6,6 +6,7 @@
 SHA1 (patch-gcc_Makefile.in) = d96a57a098e49a2c5ea6478dd5d22aba584fc1bc
 SHA1 (patch-gcc_config_sparc_sparc.c) = a415d1b23d6bf0c9c3c492787274929a291b78f2
 SHA1 (patch-gcc_gimplify.c) = f933a033d4a6c11fa82c8c9c6785842ba7993862
+SHA1 (patch-gcc_targhooks.c) = af240cc417e479741d5067063904f827a02295cc
 SHA1 (patch-libgfortran_io_format.c) = 9bbc5e4f6277bdec785b3690fd08259939a2aa1a
 SHA1 (patch-libgfortran_io_list__read.c) = 589cdb8dcd180b781ededc086e8775224fca5779
 SHA1 (patch-libgfortran_io_read.c) = cf21493396d07a5e8ad0dfb70a8d25a11482fc98
diff -r 3a165c6ded5a -r 927f1de15470 lang/gcc9/patches/patch-gcc_targhooks.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/gcc9/patches/patch-gcc_targhooks.c   Sun Jan 01 12:59:39 2023 +0000
@@ -0,0 +1,26 @@
+$NetBSD: patch-gcc_targhooks.c,v 1.1 2023/01/01 12:59:39 tsutsui Exp $
+
+* Port from NetBSD src
+  Fix __stack_chk_fail_local undefined reference error
+  from "gcc test.c -fstack-protector-all -fPIE".
+
+--- gcc/targhooks.c.orig       2020-03-12 11:07:21.000000000 +0000
++++ gcc/targhooks.c
+@@ -949,7 +949,17 @@ default_hidden_stack_protect_fail (void)
+       DECL_ARTIFICIAL (t) = 1;
+       DECL_IGNORED_P (t) = 1;
+       DECL_VISIBILITY_SPECIFIED (t) = 1;
++#if defined(__NetBSD__)
++      /*
++       * This is a hack:
++       * It appears that our gas does not generate @PLT for hidden
++       * symbols. It could be that we need a newer version, or that
++       * this local function is handled differently on linux.
++       */
++      DECL_VISIBILITY (t) = VISIBILITY_DEFAULT;
++#else
+       DECL_VISIBILITY (t) = VISIBILITY_HIDDEN;
++#endif
+ 
+       stack_chk_fail_decl = t;
+     }



Home | Main Index | Thread Index | Old Index