From 3a79ba4cf9dd11d907b04d9e1f7d4473f80a07f4 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Thu, 30 May 2024 21:42:19 -0500 Subject: system/gcc: Improvements to GCC 13 * Add terminals.c to Ada patch, which fixes a link error in user/gprbuild (and anything else that would use Ada terminal I/O). * Use STAGE1_CFLAGS and BOOT_CFLAGS to improve build times. Improvement was clocked from 40m to 32m (-8m, or 20%) on gwyn (Talos II). --- system/gcc/201-ada.patch | 31 +++++++++++++++++++++++++++++++ system/gcc/APKBUILD | 6 ++++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/system/gcc/201-ada.patch b/system/gcc/201-ada.patch index 00a6422d7..d16bbbbaa 100644 --- a/system/gcc/201-ada.patch +++ b/system/gcc/201-ada.patch @@ -438,3 +438,34 @@ index 98b3901cb16f..98db6a14c2d5 100644 /* Don't use macros versions of this functions on VxWorks since they cause imcompatible changes in some VxWorks versions */ #ifdef __vxworks +--- a/gcc/ada/terminals.c 2019-01-08 10:54:04.000000000 +0100 ++++ b/gcc/ada/terminals.c 2019-05-15 13:14:09.935742526 +0200 +@@ -1136,7 +1136,7 @@ + /* POSIX does not specify how to open the master side of a terminal.Several + methods are available (system specific): + 1- using a cloning device (USE_CLONE_DEVICE) +- 2- getpt (USE_GETPT) ++ 2- posix_openpt (USE_POSIX_OPENPT) + 3- openpty (USE_OPENPTY) + + When using the cloning device method, the macro USE_CLONE_DEVICE should +@@ -1150,7 +1150,7 @@ + #if defined (__APPLE__) || defined (BSD) + #define USE_OPENPTY + #elif defined (__linux__) +-#define USE_GETPT ++#define USE_POSIX_OPENPT + #elif defined (__sun__) + #define USE_CLONE_DEVICE "/dev/ptmx" + #elif defined (_AIX) +@@ -1199,8 +1199,8 @@ + int master_fd = -1; + char *slave_name = NULL; + +-#ifdef USE_GETPT +- master_fd = getpt (); ++#if defined(USE_POSIX_OPENPT) ++ master_fd = posix_openpt(O_RDWR | O_NOCTTY); + #elif defined (USE_OPENPTY) + status = openpty (&master_fd, &slave_fd, NULL, NULL, NULL); + #elif defined (USE_CLONE_DEVICE) diff --git a/system/gcc/APKBUILD b/system/gcc/APKBUILD index 54d901a64..e82789e53 100644 --- a/system/gcc/APKBUILD +++ b/system/gcc/APKBUILD @@ -311,7 +311,9 @@ build() { --with-matchpd-partitions=32 \ --with-system-zlib \ --with-linker-hash-style=$_hash_style - make + make \ + STAGE1_CFLAGS="$CFLAGS" STAGE1_LDFLAGS="$LDFLAGS" \ + BOOT_CFLAGS="$CFLAGS" BOOT_LDFLAGS="$LDFLAGS" } check() { @@ -555,7 +557,7 @@ ec0a6613a21bd8352b73f693ee6055e81e4ef056b8b2b9916aa075649477b0c3f855fcfb37aa5330 0d505f08842bd75c686b18f50bc988078dce07b69ef8b6caa53e5e3a93e39527ab16f1d32a7f1f132279c3ac430a10b4e1aad7fc0bc2b6560fc33a1b65f6c109 076_all_match.pd-don-t-emit-label-if-not-needed.patch b3cb3cad951c518b399f4fd0d4be07089ca1abf7a3271aaac4c25d8cd34a9b6d2bd6fa68164cf7f3967813f019db8dcf0ae8746f94ac6a4b85209c4012a8936f 078_all_match.pd-CSE-the-dump-output-check.patch ce44d0bfa646394114c6e77f70da26ac4879cb2198a3bc4108ce080b7a247d6c0b0213c02b9bacbcd0b477a8e22a831a7dae3691f4f0462eaddecb457cd9eee6 092_all_riscv_PR109760-gstreamer.patch -e6598c90b156057f77fd28bf2bb90cc57f00c89dbd5acc878c5a4ab9d14deaf985d388270981f499679bc32417b8839a025954340e2c7dcfe9ac335127eae9f2 201-ada.patch +ad971ebaa77907a26e4c268feb052d06b2df1530ed39b9c684a49bdf1024ad6b439bb8b28a957327635c83a97dcca3cee0875cfe9836f8fc3e06cdb137281e42 201-ada.patch 80748e1f6a287a0f645eecac54c5181156a20ab0facc826e5b1768fec87df9d4e9fd44362370dbbe5f78b25c3bba3a20a6acfbe6ce25ddd99bd6d085bfc6c112 202-ibm-ldbl.patch ae30090390e3604e1e508edb36bc3a01283fe28657d63ae6d6238dd9f55cce587552c5a482425673aff0d0ccc9d99a649e24b552573e7b2ea29063fc5c0aa497 205-nopie.patch ae2c2fe6abe678e34d60cb05e42c60d6b499f206d965066ee8bd26f9cabfbb69cab0f0061731d21b96a5f2ad67bebc4b49dbe39cbdd01dce8b61f829f4b3f708 206-arm-unwind-functionise.patch -- cgit v1.2.3-60-g2f50