pkgsrc-Changes archive

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

CVS commit: pkgsrc/lang/gcc9



Module Name:    pkgsrc
Committed By:   tsutsui
Date:           Sun Jan  1 12:59:39 UTC 2023

Modified Files:
        pkgsrc/lang/gcc9: Makefile distinfo
Added Files:
        pkgsrc/lang/gcc9/patches: patch-gcc_targhooks.c

Log Message:
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.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 pkgsrc/lang/gcc9/Makefile
cvs rdiff -u -r1.9 -r1.10 pkgsrc/lang/gcc9/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/gcc9/patches/patch-gcc_targhooks.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/gcc9/Makefile
diff -u pkgsrc/lang/gcc9/Makefile:1.40 pkgsrc/lang/gcc9/Makefile:1.41
--- pkgsrc/lang/gcc9/Makefile:1.40      Sat Oct 22 10:52:27 2022
+++ pkgsrc/lang/gcc9/Makefile   Sun Jan  1 12:59:39 2023
@@ -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 @@ PKGNAME=        ${GCC_PKGNAME}-${GCC9_DIST_VERS
 ## 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

Index: pkgsrc/lang/gcc9/distinfo
diff -u pkgsrc/lang/gcc9/distinfo:1.9 pkgsrc/lang/gcc9/distinfo:1.10
--- pkgsrc/lang/gcc9/distinfo:1.9       Tue Oct 26 10:51:36 2021
+++ pkgsrc/lang/gcc9/distinfo   Sun Jan  1 12:59:39 2023
@@ -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 @@ Size (gcc-9.3.0.tar.xz) = 70533868 bytes
 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

Added files:

Index: pkgsrc/lang/gcc9/patches/patch-gcc_targhooks.c
diff -u /dev/null pkgsrc/lang/gcc9/patches/patch-gcc_targhooks.c:1.1
--- /dev/null   Sun Jan  1 12:59:39 2023
+++ pkgsrc/lang/gcc9/patches/patch-gcc_targhooks.c      Sun Jan  1 12:59:39 2023
@@ -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