git: b82c9db3da77 - main - lang/gcc12-devel: Update to the 20210919 snapshot of GCC 12.0.0

Gerald Pfeifer gerald at FreeBSD.org
Sat Sep 25 15:52:01 UTC 2021


The branch main has been updated by gerald:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b82c9db3da7754c0b7dc245265ab3440d0777b98

commit b82c9db3da7754c0b7dc245265ab3440d0777b98
Author:     Gerald Pfeifer <gerald at FreeBSD.org>
AuthorDate: 2021-09-25 15:50:55 +0000
Commit:     Gerald Pfeifer <gerald at FreeBSD.org>
CommitDate: 2021-09-25 15:51:06 +0000

    lang/gcc12-devel: Update to the 20210919 snapshot of GCC 12.0.0
    
    files/patch-gcc-analyzer-bootstrap has been included upstream as has
    an enhanced version of files/patch-libgfortran-bootstrap, alas we now
    need files/patch-bootstrap-gcc-gcc.c as a temporary back port addressing
    another bootstrap issue - "two steps forwards, one step back".
    
    The internal compiler error on amd64 has been addressed, so unbreak
    that architecture.
---
 lang/gcc12-devel/Makefile                          |  3 +-
 lang/gcc12-devel/distinfo                          |  6 +--
 lang/gcc12-devel/files/patch-bootstrap-gcc-gcc.c   | 47 ++++++++++++++++++++++
 .../gcc12-devel/files/patch-gcc-analyzer-bootstrap | 16 --------
 lang/gcc12-devel/files/patch-libgfortran-bootstrap | 11 -----
 5 files changed, 51 insertions(+), 32 deletions(-)

diff --git a/lang/gcc12-devel/Makefile b/lang/gcc12-devel/Makefile
index 5ca10e783c84..5f5532654f68 100644
--- a/lang/gcc12-devel/Makefile
+++ b/lang/gcc12-devel/Makefile
@@ -1,7 +1,7 @@
 # Created by: Gerald Pfeifer <gerald at FreeBSD.org>
 
 PORTNAME=	gcc
-PORTVERSION=	12.0.0.s20210912
+PORTVERSION=	12.0.0.s20210919
 CATEGORIES=	lang
 MASTER_SITES=	GCC/snapshots/${DIST_VERSION}
 PKGNAMESUFFIX=	${SUFFIX}-devel
@@ -13,7 +13,6 @@ COMMENT=	GNU Compiler Collection 12
 LICENSE=	GPLv3 GPLv3RLE
 LICENSE_COMB=	multi
 
-BROKEN_amd64=	internal compiler error (since addressed)
 ONLY_FOR_ARCHS=	aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 powerpc64le
 
 LIB_DEPENDS=	libgmp.so:math/gmp \
diff --git a/lang/gcc12-devel/distinfo b/lang/gcc12-devel/distinfo
index 72b0013244cd..b317b72ea341 100644
--- a/lang/gcc12-devel/distinfo
+++ b/lang/gcc12-devel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1631917313
-SHA256 (gcc-12-20210912.tar.xz) = 895846b1fe9c641883e5846efaefb9deda41e043df7ec6c9e5ebc1314c686959
-SIZE (gcc-12-20210912.tar.xz) = 76874620
+TIMESTAMP = 1632516336
+SHA256 (gcc-12-20210919.tar.xz) = 3f046195d02225d4f072b3a50efca4a791c00f369bfb5c6cf68d82bcffeba988
+SIZE (gcc-12-20210919.tar.xz) = 76962072
diff --git a/lang/gcc12-devel/files/patch-bootstrap-gcc-gcc.c b/lang/gcc12-devel/files/patch-bootstrap-gcc-gcc.c
new file mode 100644
index 000000000000..7f896ccd273d
--- /dev/null
+++ b/lang/gcc12-devel/files/patch-bootstrap-gcc-gcc.c
@@ -0,0 +1,47 @@
+commit abdf63d782cba82b5ecf264248518cbb065650ed
+Author: Iain Sandoe <iain at sandoe.co.uk>
+Date:   Mon Sep 20 07:41:49 2021 +0100
+
+    Driver: Fix bootstrap with DEFAULT_{ASSEMBLER,LINKER,DSYMUTIL}.
+    
+    The patch at r12-3662-g5fee8a0a9223d factored the code for
+    printing the names of programes into a separate function.
+    However the moved editions that print out the names of the
+    assembler, linker (and dsymutil on Darwin) when those are
+    specified at configure-time were not adjusted accordingly,
+    leading to a bootstrap fail.
+    
+    Fixed by testing specifically for execute OK, since we know
+    these are programs.
+    
+    Signed-off-by: Iain Sandoe <iain at sandoe.co.uk>
+    
+    gcc/ChangeLog:
+    
+            * gcc.c: Test for execute OK when we find the
+            programs for assembler linker and dsymutil and those
+            were specified at configure-time.
+
+--- gcc/gcc.c
++++ gcc/gcc.c
+@@ -3083,17 +3083,17 @@ find_a_program (const char *name)
+   /* Do not search if default matches query. */
+ 
+ #ifdef DEFAULT_ASSEMBLER
+-  if (! strcmp (name, "as") && access (DEFAULT_ASSEMBLER, mode) == 0)
++  if (! strcmp (name, "as") && access (DEFAULT_ASSEMBLER, X_OK) == 0)
+     return xstrdup (DEFAULT_ASSEMBLER);
+ #endif
+ 
+ #ifdef DEFAULT_LINKER
+-  if (! strcmp (name, "ld") && access (DEFAULT_LINKER, mode) == 0)
++  if (! strcmp (name, "ld") && access (DEFAULT_LINKER, X_OK) == 0)
+     return xstrdup (DEFAULT_LINKER);
+ #endif
+ 
+ #ifdef DEFAULT_DSYMUTIL
+-  if (! strcmp (name, "dsymutil") && access (DEFAULT_DSYMUTIL, mode) == 0)
++  if (! strcmp (name, "dsymutil") && access (DEFAULT_DSYMUTIL, X_OK) == 0)
+     return xstrdup (DEFAULT_DSYMUTIL);
+ #endif
+ 
diff --git a/lang/gcc12-devel/files/patch-gcc-analyzer-bootstrap b/lang/gcc12-devel/files/patch-gcc-analyzer-bootstrap
deleted file mode 100644
index 07d71aeaf8e4..000000000000
--- a/lang/gcc12-devel/files/patch-gcc-analyzer-bootstrap
+++ /dev/null
@@ -1,16 +0,0 @@
-commit 745781d24cd7562202687cfbe05597ee673d4537
-Author: Maxim Blinov <maxim.blinov at embecosm.com>
-Date:   Fri Sep 17 00:32:58 2021 +0200
-
-    analyzer: Fix bootstrap with clang
-    
---- gcc/analyzer/engine.cc
-+++ gcc/analyzer/engine.cc
-@@ -19,6 +19,7 @@ along with GCC; see the file COPYING3.  If not see
- <http://www.gnu.org/licenses/>.  */
- 
- #include "config.h"
-+#define INCLUDE_UNIQUE_PTR
- #include "system.h"
- #include "coretypes.h"
- #include "tree.h"
diff --git a/lang/gcc12-devel/files/patch-libgfortran-bootstrap b/lang/gcc12-devel/files/patch-libgfortran-bootstrap
deleted file mode 100644
index d3221a1b1368..000000000000
--- a/lang/gcc12-devel/files/patch-libgfortran-bootstrap
+++ /dev/null
@@ -1,11 +0,0 @@
---- libgfortran/ISO_Fortran_binding.h.orig	2021-09-12 22:32:09.000000000 +0000
-+++ libgfortran/ISO_Fortran_binding.h	2021-09-18 04:42:43.658569000 +0000
-@@ -227,7 +227,7 @@
- #define CFI_type_long_double_Complex CFI_type_double_Complex
- 
- /* This is the 80-bit encoding on x86; Fortran assigns it kind 10.  */
--#elif (LDBL_MANT_DIG == 64 \
-+#elif ((LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 53) \
-        && LDBL_MIN_EXP == -16381 \
-        && LDBL_MAX_EXP == 16384)
- #define CFI_type_long_double (CFI_type_Real + (10 << CFI_type_kind_shift))


More information about the dev-commits-ports-main mailing list