diff options
author | c0repwn3r | 2023-04-06 08:29:53 -0400 |
---|---|---|
committer | c0repwn3r | 2023-04-06 08:29:53 -0400 |
commit | e1a1637db7adee1d3647406c6f61450343c32c44 (patch) | |
tree | 53474499f2871fbaba8c4ac9b503f0bc5517fe80 | |
parent | 1b18dbc32c98cb45bd30fa18a025ead19624432e (diff) | |
download | aur-e1a1637db7adee1d3647406c6f61450343c32c44.tar.gz |
Update to 12.2.0
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 17 | ||||
-rw-r--r-- | gcc11-Wno-format-security.patch | 152 |
3 files changed, 11 insertions, 168 deletions
@@ -1,7 +1,7 @@ pkgbase = i386-elf-gcc pkgdesc = GNU gcc for the i386- toolchain - pkgver = 11.2.0 - pkgrel = 2 + pkgver = 12.2.0 + pkgrel = 0 url = https://www.gnu.org/software/gcc arch = x86_64 groups = i386-elf-toolchain @@ -12,9 +12,7 @@ pkgbase = i386-elf-gcc depends = xz depends = libmpc depends = i386-elf-binutils - source = http://ftpmirror.gnu.org/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz - source = gcc11-Wno-format-security.patch - sha256sums = d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b - sha256sums = 6f9a34812a07e49a568467df11d6ab19b9fd7d953e9ecd739c7a38d9df821b52 + source = http://ftpmirror.gnu.org/gcc/gcc-12.2.0/gcc-12.2.0.tar.xz + sha256sums = e549cf9cf3594a00e27b6589d4322d70e0720cdd213f39beb4181e06926230ff pkgname = i386-elf-gcc @@ -1,7 +1,7 @@ # Maintainer: c0repwn3r <core@coredoes.dev> pkgname=i386-elf-gcc -pkgver=11.2.0 -pkgrel=2 +pkgver=12.2.0 +pkgrel=0 epoch= pkgdesc="GNU gcc for the i386- toolchain" arch=(x86_64) @@ -12,18 +12,15 @@ makedepends=(gmp mpfr gcc) depends=(xz libmpc i386-elf-binutils) source=( "http://ftpmirror.gnu.org/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz" - "gcc11-Wno-format-security.patch" # https://bugs.archlinux.org/task/70701 ) sha256sums=( - d08edc536b54c372a1010ff6619dd274c0f1603aa49212ba20f7aa2cda36fa8b - 6f9a34812a07e49a568467df11d6ab19b9fd7d953e9ecd739c7a38d9df821b52 + e549cf9cf3594a00e27b6589d4322d70e0720cdd213f39beb4181e06926230ff ) build() { - # Patch gcc - cd "gcc-$pkgver" - patch --strip=1 --input="$srcdir/gcc11-Wno-format-security.patch" - cd .. + # GCC build fails with format-security. + CFLAGS=${CFLAGS/-Werror=format-security/} + CXXFLAGS=${CXXFLAGS/-Werror=format-security/} # Create temporary build dir mkdir -p "i386-gcc-$pkgver-build" cd "i386-gcc-$pkgver-build" @@ -36,7 +33,7 @@ build() { --disable-multilib \ --without-headers \ --enable-languages=c,c++ \ - --disable-build-format-warnings # https://bugs.archlinux.org/task/70701 + --disable-werror # Build make all-gcc diff --git a/gcc11-Wno-format-security.patch b/gcc11-Wno-format-security.patch deleted file mode 100644 index 3504b970f726..000000000000 --- a/gcc11-Wno-format-security.patch +++ /dev/null @@ -1,152 +0,0 @@ -From 107db5008b826d46f4eeb569b7199f0874839112 Mon Sep 17 00:00:00 2001 -From: Joey Dumont <joey.dumont@gmail.com> -Date: Thu, 17 Jun 2021 22:17:13 -0400 -Subject: [PATCH] Workaround for Werror=format-security errors in the libcpp - and gcc components. - -Both libcpp and the gcc subfolders have fail to compile when the Werror=format-security -flag is present. This patch attempts to to selectively disable this flag by adding -Wno-error=format-security in some build system variables. - -In the gcc component, we simply augment the existing --disable-build-format-warnings -option to set -Wno-error=format-security. We also must add this flag to the strict_warn -set of CFLAGS, so that the gcc/c component can pick it up. - -In the libcpp component, we add the --disable-build-format-warnings option -to the configure script, and give it the same options as gcc's option. ---- - gcc/configure | 4 ++-- - gcc/configure.ac | 6 +++--- - libcpp/configure | 20 +++++++++++++++++--- - libcpp/configure.ac | 8 +++++++- - 4 files changed, 29 insertions(+), 9 deletions(-) - -diff --git a/gcc/configure b/gcc/configure -index 7184dd6c0..90d3a97e3 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -6833,7 +6833,7 @@ else - fi - - if test $enable_build_format_warnings = no; then : -- wf_opt=-Wno-format -+ wf_opt="-Wno-format -Wno-format-security" - else - wf_opt= - fi -@@ -6960,7 +6960,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu - - strict_warn= - save_CXXFLAGS="$CXXFLAGS" --for real_option in -Wmissing-format-attribute -Woverloaded-virtual; do -+for real_option in -Wmissing-format-attribute -Woverloaded-virtual $wf_opt; do - # Do the check with the no- prefix removed since gcc silently - # accepts any -Wno-* option on purpose - case $real_option in -diff --git a/gcc/configure.ac b/gcc/configure.ac -index 96a6f62b0..379acef47 100644 ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -523,17 +523,17 @@ AC_ARG_ENABLE(build-format-warnings, - AS_HELP_STRING([--disable-build-format-warnings],[don't use -Wformat while building GCC]), - [],[enable_build_format_warnings=yes]) - AS_IF([test $enable_build_format_warnings = no], -- [wf_opt=-Wno-format],[wf_opt=]) -+ [wf_opt=-Wno-format -Wno-format-security],[wf_opt=]) - ACX_PROG_CXX_WARNING_OPTS( - m4_quote(m4_do([-W -Wall -Wno-narrowing -Wwrite-strings ], - [-Wcast-qual -Wno-error=format-diag $wf_opt])), - [loose_warn]) - ACX_PROG_CC_WARNING_OPTS( - m4_quote(m4_do([-Wstrict-prototypes -Wmissing-prototypes ], -- [-Wno-error=format-diag])), [c_loose_warn]) -+ [-Wno-error=format-diag ])), [c_loose_warn]) - ACX_PROG_CXX_WARNING_OPTS( - m4_quote(m4_do([-Wmissing-format-attribute ], -- [-Woverloaded-virtual])), [strict_warn]) -+ [-Woverloaded-virtual $wf_opt])), [strict_warn]) - ACX_PROG_CC_WARNING_OPTS( - m4_quote(m4_do([-Wold-style-definition -Wc++-compat])), [c_strict_warn]) - ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC( -diff --git a/libcpp/configure b/libcpp/configure -index 7e28606f6..f91a07b34 100755 ---- a/libcpp/configure -+++ b/libcpp/configure -@@ -728,6 +728,7 @@ ac_subst_files='' - ac_user_opts=' - enable_option_checking - enable_largefile -+enable_build_format_warnings - enable_werror_always - with_gnu_ld - enable_rpath -@@ -1367,6 +1368,8 @@ Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --disable-largefile omit support for large files -+ --disable-build-format-warnings -+ don't use -Wformat while building GCC - --enable-werror-always enable -Werror despite compiler version - --disable-rpath do not hardcode runtime library paths - --enable-maintainer-mode enable rules only needed by maintainers -@@ -4898,6 +4901,18 @@ test -n "$AUTOHEADER" || AUTOHEADER="$MISSING autoheader" - - # Figure out what compiler warnings we can enable. - # See config/warnings.m4 for details. -+# Check whether --enable-build-format-warnings was given. -+if test "${enable_build_format_warnings+set}" = set; then : -+ enableval=$enable_build_format_warnings; -+else -+ enable_build_format_warnings=yes -+fi -+ -+if test $enable_build_format_warnings = no; then : -+ wf_opt="-Wno-format -Wno-format-security" -+else -+ wf_opt= -+fi - - ac_ext=c - ac_cpp='$CPP $CPPFLAGS' -@@ -4907,8 +4922,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu - - warn= - save_CFLAGS="$CFLAGS" --for real_option in -W -Wall -Wno-narrowing -Wwrite-strings \ -- -Wmissing-format-attribute; do -+for real_option in -W -Wall -Wno-narrowing -Wwrite-strings -Wmissing-format-attribute $wf_opt; do - # Do the check with the no- prefix removed since gcc silently - # accepts any -Wno-* option on purpose - case $real_option in -@@ -4983,7 +4997,7 @@ else - CFLAGS="$option" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ -- -+ - int - main () - { -diff --git a/libcpp/configure.ac b/libcpp/configure.ac -index 1efa96f7c..fe1e90a61 100644 ---- a/libcpp/configure.ac -+++ b/libcpp/configure.ac -@@ -25,8 +25,14 @@ AC_CHECK_PROGS([AUTOHEADER], [autoheader], [$MISSING autoheader]) - # Figure out what compiler warnings we can enable. - # See config/warnings.m4 for details. - -+AC_ARG_ENABLE(build-format-warnings, -+ AS_HELP_STRING([--disable-build-format-warnings],[don't use -Wformat while building GCC]), -+ [],[enable_build_format_warnings=yes]) -+AS_IF([test $enable_build_format_warnings = no], -+ [wf_opt="-Wno-format -Wno-format-security"],[wf_opt=]) -+ - ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wno-narrowing -Wwrite-strings \ -- -Wmissing-format-attribute], [warn]) -+ -Wmissing-format-attribute $wf_opt] , [warn]) - ACX_PROG_CC_WARNING_OPTS([-Wstrict-prototypes -Wmissing-prototypes \ - -Wold-style-definition -Wc++-compat], [c_warn]) - ACX_PROG_CC_WARNING_ALMOST_PEDANTIC([-Wno-long-long]) --- -2.32.0 - |