From 5a0784ab69575d331a8638b7ac7b33161ba406db Mon Sep 17 00:00:00 2001 From: OBS User rguenther Date: Mon, 22 Aug 2022 07:37:19 +0000 Subject: [PATCH 1/5] - Allow cross-pru-gcc12-bootstrap for armv7l architecture. PRU architecture is used for real-time MCUs embedded into TI armv7l and aarch64 SoCs. We need to have cross-pru-gcc12 for armv7l in order to build both host applications and PRU firmware during the same build. Rev devel:gcc/60 Md5 fd67d29e43528f08cd20337e2a83174a 2022-08-22 07:37:19 rguenther 998516 --- cross-aarch64-gcc12-bootstrap.spec | 3 +++ cross-aarch64-gcc12.spec | 3 +++ cross-amdgcn-gcc12.spec | 3 +++ cross-arm-gcc12.spec | 3 +++ cross-arm-none-gcc12-bootstrap.spec | 3 +++ cross-arm-none-gcc12.spec | 3 +++ cross-avr-gcc12-bootstrap.spec | 3 +++ cross-avr-gcc12.spec | 3 +++ cross-epiphany-gcc12-bootstrap.spec | 3 +++ cross-epiphany-gcc12.spec | 3 +++ cross-hppa-gcc12-bootstrap.spec | 3 +++ cross-hppa-gcc12.spec | 3 +++ cross-m68k-gcc12.spec | 3 +++ cross-mips-gcc12.spec | 3 +++ cross-nvptx-gcc12.spec | 3 +++ cross-ppc64-gcc12.spec | 3 +++ cross-ppc64le-gcc12.spec | 3 +++ cross-pru-gcc12-bootstrap.spec | 3 +++ cross-pru-gcc12.spec | 3 +++ cross-riscv64-elf-gcc12-bootstrap.spec | 3 +++ cross-riscv64-elf-gcc12.spec | 3 +++ cross-riscv64-gcc12-bootstrap.spec | 3 +++ cross-riscv64-gcc12.spec | 3 +++ cross-rx-gcc12-bootstrap.spec | 3 +++ cross-rx-gcc12.spec | 3 +++ cross-s390x-gcc12.spec | 3 +++ cross-sparc-gcc12.spec | 3 +++ cross-sparc64-gcc12.spec | 3 +++ cross-x86_64-gcc12.spec | 3 +++ cross.spec.in | 3 +++ gcc12.changes | 9 +++++++++ 31 files changed, 99 insertions(+) diff --git a/cross-aarch64-gcc12-bootstrap.spec b/cross-aarch64-gcc12-bootstrap.spec index 145b047..14fd154 100644 --- a/cross-aarch64-gcc12-bootstrap.spec +++ b/cross-aarch64-gcc12-bootstrap.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-aarch64-gcc12.spec b/cross-aarch64-gcc12.spec index 7974c52..e4cd304 100644 --- a/cross-aarch64-gcc12.spec +++ b/cross-aarch64-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-amdgcn-gcc12.spec b/cross-amdgcn-gcc12.spec index 434c9f3..bbaf60d 100644 --- a/cross-amdgcn-gcc12.spec +++ b/cross-amdgcn-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-arm-gcc12.spec b/cross-arm-gcc12.spec index 53884c4..68bbd4a 100644 --- a/cross-arm-gcc12.spec +++ b/cross-arm-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-arm-none-gcc12-bootstrap.spec b/cross-arm-none-gcc12-bootstrap.spec index 60f6573..0db0af2 100644 --- a/cross-arm-none-gcc12-bootstrap.spec +++ b/cross-arm-none-gcc12-bootstrap.spec @@ -252,6 +252,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-arm-none-gcc12.spec b/cross-arm-none-gcc12.spec index 49b9faf..f7b52ce 100644 --- a/cross-arm-none-gcc12.spec +++ b/cross-arm-none-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-avr-gcc12-bootstrap.spec b/cross-avr-gcc12-bootstrap.spec index 6a6d566..7d76add 100644 --- a/cross-avr-gcc12-bootstrap.spec +++ b/cross-avr-gcc12-bootstrap.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-avr-gcc12.spec b/cross-avr-gcc12.spec index f66f238..f91f5a8 100644 --- a/cross-avr-gcc12.spec +++ b/cross-avr-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-epiphany-gcc12-bootstrap.spec b/cross-epiphany-gcc12-bootstrap.spec index 5acc275..ad76650 100644 --- a/cross-epiphany-gcc12-bootstrap.spec +++ b/cross-epiphany-gcc12-bootstrap.spec @@ -252,6 +252,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-epiphany-gcc12.spec b/cross-epiphany-gcc12.spec index 95c772e..e340e34 100644 --- a/cross-epiphany-gcc12.spec +++ b/cross-epiphany-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-hppa-gcc12-bootstrap.spec b/cross-hppa-gcc12-bootstrap.spec index dde2eef..84412ab 100644 --- a/cross-hppa-gcc12-bootstrap.spec +++ b/cross-hppa-gcc12-bootstrap.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-hppa-gcc12.spec b/cross-hppa-gcc12.spec index 7e0fde8..6692564 100644 --- a/cross-hppa-gcc12.spec +++ b/cross-hppa-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-m68k-gcc12.spec b/cross-m68k-gcc12.spec index e477b03..bdf22fe 100644 --- a/cross-m68k-gcc12.spec +++ b/cross-m68k-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-mips-gcc12.spec b/cross-mips-gcc12.spec index cce819a..131bc21 100644 --- a/cross-mips-gcc12.spec +++ b/cross-mips-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-nvptx-gcc12.spec b/cross-nvptx-gcc12.spec index 2acb7e6..ed56f90 100644 --- a/cross-nvptx-gcc12.spec +++ b/cross-nvptx-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-ppc64-gcc12.spec b/cross-ppc64-gcc12.spec index 29439e4..b991b36 100644 --- a/cross-ppc64-gcc12.spec +++ b/cross-ppc64-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-ppc64le-gcc12.spec b/cross-ppc64le-gcc12.spec index 6dc45ff..01c5cac 100644 --- a/cross-ppc64le-gcc12.spec +++ b/cross-ppc64le-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-pru-gcc12-bootstrap.spec b/cross-pru-gcc12-bootstrap.spec index 531ef16..5557f90 100644 --- a/cross-pru-gcc12-bootstrap.spec +++ b/cross-pru-gcc12-bootstrap.spec @@ -252,6 +252,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-pru-gcc12.spec b/cross-pru-gcc12.spec index cb76763..b3b5c30 100644 --- a/cross-pru-gcc12.spec +++ b/cross-pru-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-riscv64-elf-gcc12-bootstrap.spec b/cross-riscv64-elf-gcc12-bootstrap.spec index 66e9fa9..81fce05 100644 --- a/cross-riscv64-elf-gcc12-bootstrap.spec +++ b/cross-riscv64-elf-gcc12-bootstrap.spec @@ -252,6 +252,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-riscv64-elf-gcc12.spec b/cross-riscv64-elf-gcc12.spec index c146698..9182bf9 100644 --- a/cross-riscv64-elf-gcc12.spec +++ b/cross-riscv64-elf-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-riscv64-gcc12-bootstrap.spec b/cross-riscv64-gcc12-bootstrap.spec index 75b4626..e82c6eb 100644 --- a/cross-riscv64-gcc12-bootstrap.spec +++ b/cross-riscv64-gcc12-bootstrap.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-riscv64-gcc12.spec b/cross-riscv64-gcc12.spec index 72d1629..e7b10d1 100644 --- a/cross-riscv64-gcc12.spec +++ b/cross-riscv64-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-rx-gcc12-bootstrap.spec b/cross-rx-gcc12-bootstrap.spec index 4a5a089..6357b74 100644 --- a/cross-rx-gcc12-bootstrap.spec +++ b/cross-rx-gcc12-bootstrap.spec @@ -252,6 +252,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-rx-gcc12.spec b/cross-rx-gcc12.spec index b8f2a38..6b2a934 100644 --- a/cross-rx-gcc12.spec +++ b/cross-rx-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-s390x-gcc12.spec b/cross-s390x-gcc12.spec index 944e0d0..370b731 100644 --- a/cross-s390x-gcc12.spec +++ b/cross-s390x-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-sparc-gcc12.spec b/cross-sparc-gcc12.spec index 827b2aa..fa7bf3f 100644 --- a/cross-sparc-gcc12.spec +++ b/cross-sparc-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-sparc64-gcc12.spec b/cross-sparc64-gcc12.spec index 4fd123c..17937b4 100644 --- a/cross-sparc64-gcc12.spec +++ b/cross-sparc64-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross-x86_64-gcc12.spec b/cross-x86_64-gcc12.spec index 81b5e99..b3ed0e8 100644 --- a/cross-x86_64-gcc12.spec +++ b/cross-x86_64-gcc12.spec @@ -251,6 +251,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/cross.spec.in b/cross.spec.in index 96db731..d70f022 100644 --- a/cross.spec.in +++ b/cross.spec.in @@ -160,6 +160,9 @@ ExclusiveArch: do-not-build %endif %if 0%{?gcc_icecream:1}%{?gcc_target_glibc:1}%{?gcc_libc_bootstrap:1} ExclusiveArch: i586 ppc64le ppc64 x86_64 s390x aarch64 riscv64 +%if "%{cross_arch}" == "pru" +ExclusiveArch: %arm +%endif %endif %define _binary_payload w.ufdio # Obsolete cross-ppc-gcc49 from cross-ppc64-gcc49 which has diff --git a/gcc12.changes b/gcc12.changes index 023fda5..ec456b6 100644 --- a/gcc12.changes +++ b/gcc12.changes @@ -1,3 +1,12 @@ +------------------------------------------------------------------- +Sun Aug 21 09:31:35 UTC 2022 - Matwey Kornilov + +- Allow cross-pru-gcc12-bootstrap for armv7l architecture. + PRU architecture is used for real-time MCUs embedded into TI + armv7l and aarch64 SoCs. We need to have cross-pru-gcc12 for + armv7l in order to build both host applications and PRU firmware + during the same build. + ------------------------------------------------------------------- Fri Aug 12 11:06:04 UTC 2022 - Richard Biener From 826ecdfe29768a4449a5d724f63640b2060b22a0 Mon Sep 17 00:00:00 2001 From: OBS User rguenther Date: Mon, 29 Aug 2022 08:20:52 +0000 Subject: [PATCH 2/5] - Add gcc12-fifo-jobserver-support.patch that adds support for FIFO jobserver for make. Rev devel:gcc/61 Md5 1edef128bb922edd698e552be214c413 2022-08-29 08:20:52 rguenther 999876 --- cross-aarch64-gcc12-bootstrap.spec | 2 + cross-aarch64-gcc12.spec | 2 + cross-amdgcn-gcc12.spec | 2 + cross-arm-gcc12.spec | 2 + cross-arm-none-gcc12-bootstrap.spec | 2 + cross-arm-none-gcc12.spec | 2 + cross-avr-gcc12-bootstrap.spec | 2 + cross-avr-gcc12.spec | 2 + cross-epiphany-gcc12-bootstrap.spec | 2 + cross-epiphany-gcc12.spec | 2 + cross-hppa-gcc12-bootstrap.spec | 2 + cross-hppa-gcc12.spec | 2 + cross-m68k-gcc12.spec | 2 + cross-mips-gcc12.spec | 2 + cross-nvptx-gcc12.spec | 2 + cross-ppc64-gcc12.spec | 2 + cross-ppc64le-gcc12.spec | 2 + cross-pru-gcc12-bootstrap.spec | 2 + cross-pru-gcc12.spec | 2 + cross-riscv64-elf-gcc12-bootstrap.spec | 2 + cross-riscv64-elf-gcc12.spec | 2 + cross-riscv64-gcc12-bootstrap.spec | 2 + cross-riscv64-gcc12.spec | 2 + cross-rx-gcc12-bootstrap.spec | 2 + cross-rx-gcc12.spec | 2 + cross-s390x-gcc12.spec | 2 + cross-sparc-gcc12.spec | 2 + cross-sparc64-gcc12.spec | 2 + cross-x86_64-gcc12.spec | 2 + gcc.spec.in | 2 + gcc12-fifo-jobserver-support.patch | 627 +++++++++++++++++++++++++ gcc12-testresults.spec | 2 + gcc12.changes | 6 + gcc12.spec | 2 + 34 files changed, 697 insertions(+) create mode 100644 gcc12-fifo-jobserver-support.patch diff --git a/cross-aarch64-gcc12-bootstrap.spec b/cross-aarch64-gcc12-bootstrap.spec index 14fd154..7b2af1d 100644 --- a/cross-aarch64-gcc12-bootstrap.spec +++ b/cross-aarch64-gcc12-bootstrap.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-aarch64-gcc12.spec b/cross-aarch64-gcc12.spec index e4cd304..f4f9a31 100644 --- a/cross-aarch64-gcc12.spec +++ b/cross-aarch64-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-amdgcn-gcc12.spec b/cross-amdgcn-gcc12.spec index bbaf60d..f8c0bab 100644 --- a/cross-amdgcn-gcc12.spec +++ b/cross-amdgcn-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-arm-gcc12.spec b/cross-arm-gcc12.spec index 68bbd4a..ba44432 100644 --- a/cross-arm-gcc12.spec +++ b/cross-arm-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-arm-none-gcc12-bootstrap.spec b/cross-arm-none-gcc12-bootstrap.spec index 0db0af2..d0af70c 100644 --- a/cross-arm-none-gcc12-bootstrap.spec +++ b/cross-arm-none-gcc12-bootstrap.spec @@ -128,6 +128,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -325,6 +326,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-arm-none-gcc12.spec b/cross-arm-none-gcc12.spec index f7b52ce..c047886 100644 --- a/cross-arm-none-gcc12.spec +++ b/cross-arm-none-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-avr-gcc12-bootstrap.spec b/cross-avr-gcc12-bootstrap.spec index 7d76add..d30af77 100644 --- a/cross-avr-gcc12-bootstrap.spec +++ b/cross-avr-gcc12-bootstrap.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-avr-gcc12.spec b/cross-avr-gcc12.spec index f91f5a8..a2e67ee 100644 --- a/cross-avr-gcc12.spec +++ b/cross-avr-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-epiphany-gcc12-bootstrap.spec b/cross-epiphany-gcc12-bootstrap.spec index ad76650..b5a213e 100644 --- a/cross-epiphany-gcc12-bootstrap.spec +++ b/cross-epiphany-gcc12-bootstrap.spec @@ -128,6 +128,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -325,6 +326,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-epiphany-gcc12.spec b/cross-epiphany-gcc12.spec index e340e34..b6fecdf 100644 --- a/cross-epiphany-gcc12.spec +++ b/cross-epiphany-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-hppa-gcc12-bootstrap.spec b/cross-hppa-gcc12-bootstrap.spec index 84412ab..a4d6612 100644 --- a/cross-hppa-gcc12-bootstrap.spec +++ b/cross-hppa-gcc12-bootstrap.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-hppa-gcc12.spec b/cross-hppa-gcc12.spec index 6692564..2944b24 100644 --- a/cross-hppa-gcc12.spec +++ b/cross-hppa-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-m68k-gcc12.spec b/cross-m68k-gcc12.spec index bdf22fe..4696157 100644 --- a/cross-m68k-gcc12.spec +++ b/cross-m68k-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-mips-gcc12.spec b/cross-mips-gcc12.spec index 131bc21..5a72009 100644 --- a/cross-mips-gcc12.spec +++ b/cross-mips-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-nvptx-gcc12.spec b/cross-nvptx-gcc12.spec index ed56f90..e528196 100644 --- a/cross-nvptx-gcc12.spec +++ b/cross-nvptx-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-ppc64-gcc12.spec b/cross-ppc64-gcc12.spec index b991b36..b88181a 100644 --- a/cross-ppc64-gcc12.spec +++ b/cross-ppc64-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-ppc64le-gcc12.spec b/cross-ppc64le-gcc12.spec index 01c5cac..0eb28fc 100644 --- a/cross-ppc64le-gcc12.spec +++ b/cross-ppc64le-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-pru-gcc12-bootstrap.spec b/cross-pru-gcc12-bootstrap.spec index 5557f90..527cf1c 100644 --- a/cross-pru-gcc12-bootstrap.spec +++ b/cross-pru-gcc12-bootstrap.spec @@ -128,6 +128,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -325,6 +326,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-pru-gcc12.spec b/cross-pru-gcc12.spec index b3b5c30..c3e019e 100644 --- a/cross-pru-gcc12.spec +++ b/cross-pru-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-riscv64-elf-gcc12-bootstrap.spec b/cross-riscv64-elf-gcc12-bootstrap.spec index 81fce05..ea7d7dc 100644 --- a/cross-riscv64-elf-gcc12-bootstrap.spec +++ b/cross-riscv64-elf-gcc12-bootstrap.spec @@ -128,6 +128,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -325,6 +326,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-riscv64-elf-gcc12.spec b/cross-riscv64-elf-gcc12.spec index 9182bf9..8d09ec7 100644 --- a/cross-riscv64-elf-gcc12.spec +++ b/cross-riscv64-elf-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-riscv64-gcc12-bootstrap.spec b/cross-riscv64-gcc12-bootstrap.spec index e82c6eb..538c222 100644 --- a/cross-riscv64-gcc12-bootstrap.spec +++ b/cross-riscv64-gcc12-bootstrap.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-riscv64-gcc12.spec b/cross-riscv64-gcc12.spec index e7b10d1..367d494 100644 --- a/cross-riscv64-gcc12.spec +++ b/cross-riscv64-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-rx-gcc12-bootstrap.spec b/cross-rx-gcc12-bootstrap.spec index 6357b74..aa59bf1 100644 --- a/cross-rx-gcc12-bootstrap.spec +++ b/cross-rx-gcc12-bootstrap.spec @@ -128,6 +128,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -325,6 +326,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-rx-gcc12.spec b/cross-rx-gcc12.spec index 6b2a934..9488843 100644 --- a/cross-rx-gcc12.spec +++ b/cross-rx-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-s390x-gcc12.spec b/cross-s390x-gcc12.spec index 370b731..ffaea11 100644 --- a/cross-s390x-gcc12.spec +++ b/cross-s390x-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-sparc-gcc12.spec b/cross-sparc-gcc12.spec index fa7bf3f..b1b0639 100644 --- a/cross-sparc-gcc12.spec +++ b/cross-sparc-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-sparc64-gcc12.spec b/cross-sparc64-gcc12.spec index 17937b4..32e8074 100644 --- a/cross-sparc64-gcc12.spec +++ b/cross-sparc64-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/cross-x86_64-gcc12.spec b/cross-x86_64-gcc12.spec index b3ed0e8..1f2ca6d 100644 --- a/cross-x86_64-gcc12.spec +++ b/cross-x86_64-gcc12.spec @@ -127,6 +127,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -324,6 +325,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/gcc.spec.in b/gcc.spec.in index e2c9521..14132dd 100644 --- a/gcc.spec.in +++ b/gcc.spec.in @@ -372,6 +372,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -1209,6 +1210,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/gcc12-fifo-jobserver-support.patch b/gcc12-fifo-jobserver-support.patch new file mode 100644 index 0000000..b948e7f --- /dev/null +++ b/gcc12-fifo-jobserver-support.patch @@ -0,0 +1,627 @@ +From 1270ccda70ca09f7d4fe76b5156dca8992bd77a6 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Tue, 9 Aug 2022 13:59:32 +0200 +Subject: [PATCH 1/3] Factor out jobserver_active_p. + +gcc/ChangeLog: + + * gcc.cc (driver::detect_jobserver): Remove and move to + jobserver.h. + * lto-wrapper.cc (jobserver_active_p): Likewise. + (run_gcc): Likewise. + * opts-jobserver.h: New file. + * opts-common.cc (jobserver_info::jobserver_info): New function. +--- + gcc/gcc.cc | 37 +++++-------------------------------- + gcc/lto-wrapper.cc | 44 +++++++++----------------------------------- + gcc/opts-common.cc | 41 +++++++++++++++++++++++++++++++++++++++++ + gcc/opts-jobserver.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 99 insertions(+), 67 deletions(-) + create mode 100644 gcc/opts-jobserver.h + +diff --git a/gcc/gcc.cc b/gcc/gcc.cc +index 5cbb38560b2..cac11c1a117 100644 +--- a/gcc/gcc.cc ++++ b/gcc/gcc.cc +@@ -27,6 +27,7 @@ CC recognizes how to compile each input file by suffixes in the file names. + Once it knows which kind of compilation to perform, the procedure for + compilation is specified by a string called a "spec". */ + ++#define INCLUDE_STRING + #include "config.h" + #include "system.h" + #include "coretypes.h" +@@ -43,6 +44,7 @@ compilation is specified by a string called a "spec". */ + #include "opts.h" + #include "filenames.h" + #include "spellcheck.h" ++#include "opts-jobserver.h" + + + +@@ -9178,38 +9180,9 @@ driver::final_actions () const + void + driver::detect_jobserver () const + { +- /* Detect jobserver and drop it if it's not working. */ +- const char *makeflags = env.get ("MAKEFLAGS"); +- if (makeflags != NULL) +- { +- const char *needle = "--jobserver-auth="; +- const char *n = strstr (makeflags, needle); +- if (n != NULL) +- { +- int rfd = -1; +- int wfd = -1; +- +- bool jobserver +- = (sscanf (n + strlen (needle), "%d,%d", &rfd, &wfd) == 2 +- && rfd > 0 +- && wfd > 0 +- && is_valid_fd (rfd) +- && is_valid_fd (wfd)); +- +- /* Drop the jobserver if it's not working now. */ +- if (!jobserver) +- { +- unsigned offset = n - makeflags; +- char *dup = xstrdup (makeflags); +- dup[offset] = '\0'; +- +- const char *space = strchr (makeflags + offset, ' '); +- if (space != NULL) +- strcpy (dup + offset, space); +- xputenv (concat ("MAKEFLAGS=", dup, NULL)); +- } +- } +- } ++ jobserver_info jinfo; ++ if (!jinfo.is_active && !jinfo.skipped_makeflags.empty ()) ++ xputenv (jinfo.skipped_makeflags.c_str ()); + } + + /* Determine what the exit code of the driver should be. */ +diff --git a/gcc/lto-wrapper.cc b/gcc/lto-wrapper.cc +index 795ab74555c..1e8eba16dfb 100644 +--- a/gcc/lto-wrapper.cc ++++ b/gcc/lto-wrapper.cc +@@ -37,6 +37,7 @@ along with GCC; see the file COPYING3. If not see + ./ccCJuXGv.lto.ltrans.o + */ + ++#define INCLUDE_STRING + #include "config.h" + #include "system.h" + #include "coretypes.h" +@@ -49,6 +50,8 @@ along with GCC; see the file COPYING3. If not see + #include "lto-section-names.h" + #include "collect-utils.h" + #include "opts-diagnostic.h" ++#include "opt-suggestions.h" ++#include "opts-jobserver.h" + + /* Environment variable, used for passing the names of offload targets from GCC + driver to lto-wrapper. */ +@@ -1336,35 +1339,6 @@ init_num_threads (void) + #endif + } + +-/* Test and return reason why a jobserver cannot be detected. */ +- +-static const char * +-jobserver_active_p (void) +-{ +- #define JS_PREFIX "jobserver is not available: " +- #define JS_NEEDLE "--jobserver-auth=" +- +- const char *makeflags = getenv ("MAKEFLAGS"); +- if (makeflags == NULL) +- return JS_PREFIX "% environment variable is unset"; +- +- const char *n = strstr (makeflags, JS_NEEDLE); +- if (n == NULL) +- return JS_PREFIX "%<" JS_NEEDLE "%> is not present in %"; +- +- int rfd = -1; +- int wfd = -1; +- +- if (sscanf (n + strlen (JS_NEEDLE), "%d,%d", &rfd, &wfd) == 2 +- && rfd > 0 +- && wfd > 0 +- && is_valid_fd (rfd) +- && is_valid_fd (wfd)) +- return NULL; +- else +- return JS_PREFIX "cannot access %<" JS_NEEDLE "%> file descriptors"; +-} +- + /* Print link to -flto documentation with a hint message. */ + + void +@@ -1422,7 +1396,6 @@ run_gcc (unsigned argc, char *argv[]) + bool jobserver_requested = false; + int auto_parallel = 0; + bool no_partition = false; +- const char *jobserver_error = NULL; + bool fdecoded_options_first = true; + vec fdecoded_options; + fdecoded_options.create (16); +@@ -1653,14 +1626,14 @@ run_gcc (unsigned argc, char *argv[]) + } + else + { +- jobserver_error = jobserver_active_p (); +- if (jobserver && jobserver_error != NULL) ++ jobserver_info jinfo; ++ if (jobserver && !jinfo.is_active) + { + /* Fall back to auto parallelism. */ + jobserver = 0; + auto_parallel = 1; + } +- else if (!jobserver && jobserver_error == NULL) ++ else if (!jobserver && jinfo.is_active) + { + parallel = 1; + jobserver = 1; +@@ -1971,9 +1944,10 @@ cont: + + if (nr > 1) + { +- if (jobserver_requested && jobserver_error != NULL) ++ jobserver_info jinfo; ++ if (jobserver_requested && !jinfo.is_active) + { +- warning (0, jobserver_error); ++ warning (0, jinfo.error_msg.c_str ()); + print_lto_docs_link (); + } + else if (parallel == 0) +diff --git a/gcc/opts-common.cc b/gcc/opts-common.cc +index 8097c058c72..4d4f424df13 100644 +--- a/gcc/opts-common.cc ++++ b/gcc/opts-common.cc +@@ -17,6 +17,7 @@ You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ + ++#define INCLUDE_STRING + #include "config.h" + #include "system.h" + #include "intl.h" +@@ -25,6 +26,7 @@ along with GCC; see the file COPYING3. If not see + #include "options.h" + #include "diagnostic.h" + #include "spellcheck.h" ++#include "opts-jobserver.h" + + static void prune_options (struct cl_decoded_option **, unsigned int *); + +@@ -2005,3 +2007,42 @@ void prepend_xassembler_to_collect_as_options (const char *collect_as_options, + obstack_1grow (o, '\''); + } + } ++ ++jobserver_info::jobserver_info () ++{ ++ /* Detect jobserver and drop it if it's not working. */ ++ string js_needle = "--jobserver-auth="; ++ ++ const char *envval = getenv ("MAKEFLAGS"); ++ if (envval != NULL) ++ { ++ string makeflags = envval; ++ size_t n = makeflags.rfind (js_needle); ++ if (n != string::npos) ++ { ++ if (sscanf (makeflags.c_str () + n + js_needle.size (), ++ "%d,%d", &rfd, &wfd) == 2 ++ && rfd > 0 ++ && wfd > 0 ++ && is_valid_fd (rfd) ++ && is_valid_fd (wfd)) ++ is_active = true; ++ else ++ { ++ string dup = makeflags.substr (0, n); ++ size_t pos = makeflags.find (' ', n); ++ if (pos != string::npos) ++ dup += makeflags.substr (pos); ++ skipped_makeflags = "MAKEFLAGS=" + dup; ++ error_msg ++ = "cannot access %<" + js_needle + "%> file descriptors"; ++ } ++ } ++ error_msg = "%<" + js_needle + "%> is not present in %"; ++ } ++ else ++ error_msg = "% environment variable is unset"; ++ ++ if (!error_msg.empty ()) ++ error_msg = "jobserver is not available: " + error_msg; ++} +diff --git a/gcc/opts-jobserver.h b/gcc/opts-jobserver.h +new file mode 100644 +index 00000000000..68ce188b84a +--- /dev/null ++++ b/gcc/opts-jobserver.h +@@ -0,0 +1,44 @@ ++/* GNU make's jobserver related functionality. ++ Copyright (C) 2022 Free Software Foundation, Inc. ++ ++This file is part of GCC. ++ ++GCC is free software; you can redistribute it and/or modify it under ++the terms of the GNU General Public License as published by the Free ++Software Foundation; either version 3, or (at your option) any later ++version. ++ ++GCC is distributed in the hope that it will be useful, but WITHOUT ANY ++WARRANTY; without even the implied warranty of MERCHANTABILITY or ++FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++for more details. ++ ++You should have received a copy of the GNU General Public License ++along with GCC; see the file COPYING3. If not see ++. ++ ++See dbgcnt.def for usage information. */ ++ ++#ifndef GCC_JOBSERVER_H ++#define GCC_JOBSERVER_H ++ ++using namespace std; ++ ++struct jobserver_info ++{ ++ /* Default constructor. */ ++ jobserver_info (); ++ ++ /* Error message if there is a problem. */ ++ string error_msg = ""; ++ /* Skipped MAKEFLAGS where --jobserver-auth is skipped. */ ++ string skipped_makeflags = ""; ++ /* File descriptor for reading used for jobserver communication. */ ++ int rfd = -1; ++ /* File descriptor for writing used for jobserver communication. */ ++ int wfd = -1; ++ /* Return true if jobserver is active. */ ++ bool is_active = false; ++}; ++ ++#endif /* GCC_JOBSERVER_H */ +-- +2.37.2 + +From 53e3b2bf16a486c15c20991c6095f7be09012b55 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Tue, 9 Aug 2022 13:59:36 +0200 +Subject: [PATCH 2/3] lto: support --jobserver-style=fifo for recent GNU make + +gcc/ChangeLog: + + * opts-jobserver.h: Add one member. + * opts-common.cc (jobserver_info::jobserver_info): Parse FIFO + format of --jobserver-auth. +--- + gcc/opts-common.cc | 17 +++++++++++++++-- + gcc/opts-jobserver.h | 2 ++ + 2 files changed, 17 insertions(+), 2 deletions(-) + +diff --git a/gcc/opts-common.cc b/gcc/opts-common.cc +index 4d4f424df13..c2993f9140a 100644 +--- a/gcc/opts-common.cc ++++ b/gcc/opts-common.cc +@@ -2010,8 +2010,14 @@ void prepend_xassembler_to_collect_as_options (const char *collect_as_options, + + jobserver_info::jobserver_info () + { ++ /* Traditionally, GNU make uses opened pipes for jobserver-auth, ++ e.g. --jobserver-auth=3,4. ++ Starting with GNU make 4.4, one can use --jobserver-style=fifo ++ and then named pipe is used: --jobserver-auth=fifo:/tmp/hcsparta. */ ++ + /* Detect jobserver and drop it if it's not working. */ + string js_needle = "--jobserver-auth="; ++ string fifo_prefix = "fifo:"; + + const char *envval = getenv ("MAKEFLAGS"); + if (envval != NULL) +@@ -2020,8 +2026,15 @@ jobserver_info::jobserver_info () + size_t n = makeflags.rfind (js_needle); + if (n != string::npos) + { +- if (sscanf (makeflags.c_str () + n + js_needle.size (), +- "%d,%d", &rfd, &wfd) == 2 ++ string ending = makeflags.substr (n + js_needle.size ()); ++ if (ending.find (fifo_prefix) == 0) ++ { ++ ending = ending.substr (fifo_prefix.size ()); ++ pipe_path = ending.substr (0, ending.find (' ')); ++ is_active = true; ++ } ++ else if (sscanf (makeflags.c_str () + n + js_needle.size (), ++ "%d,%d", &rfd, &wfd) == 2 + && rfd > 0 + && wfd > 0 + && is_valid_fd (rfd) +diff --git a/gcc/opts-jobserver.h b/gcc/opts-jobserver.h +index 68ce188b84a..98ea2579962 100644 +--- a/gcc/opts-jobserver.h ++++ b/gcc/opts-jobserver.h +@@ -37,6 +37,8 @@ struct jobserver_info + int rfd = -1; + /* File descriptor for writing used for jobserver communication. */ + int wfd = -1; ++ /* Named pipe path. */ ++ string pipe_path = ""; + /* Return true if jobserver is active. */ + bool is_active = false; + }; +-- +2.37.2 + +From fed766af32ed6cd371016cc24e931131e19b4eb1 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Tue, 9 Aug 2022 13:59:39 +0200 +Subject: [PATCH 3/3] lto: respect jobserver in parallel WPA streaming + + PR lto/106328 + +gcc/ChangeLog: + + * opts-jobserver.h (struct jobserver_info): Add pipefd. + (jobserver_info::connect): New. + (jobserver_info::disconnect): Likewise. + (jobserver_info::get_token): Likewise. + (jobserver_info::return_token): Likewise. + * opts-common.cc: Implement the new functions. + +gcc/lto/ChangeLog: + + * lto.cc (wait_for_child): Decrement nruns once a process + finishes. + (stream_out_partitions): Use job server if active. + (do_whole_program_analysis): Likewise. +--- + gcc/lto/lto.cc | 58 +++++++++++++++++++++++++++++++++----------- + gcc/opts-common.cc | 40 ++++++++++++++++++++++++++++++ + gcc/opts-jobserver.h | 14 +++++++++++ + 3 files changed, 98 insertions(+), 14 deletions(-) + +diff --git a/gcc/lto/lto.cc b/gcc/lto/lto.cc +index 31b0c1862f7..c82307f4f7e 100644 +--- a/gcc/lto/lto.cc ++++ b/gcc/lto/lto.cc +@@ -18,6 +18,7 @@ You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING3. If not see + . */ + ++#define INCLUDE_STRING + #include "config.h" + #include "system.h" + #include "coretypes.h" +@@ -54,11 +55,17 @@ along with GCC; see the file COPYING3. If not see + #include "attribs.h" + #include "builtins.h" + #include "lto-common.h" ++#include "opts-jobserver.h" + +- +-/* Number of parallel tasks to run, -1 if we want to use GNU Make jobserver. */ ++/* Number of parallel tasks to run. */ + static int lto_parallelism; + ++/* Number of active WPA streaming processes. */ ++static int nruns = 0; ++ ++/* GNU make's jobserver info. */ ++static jobserver_info *jinfo = NULL; ++ + /* Return true when NODE has a clone that is analyzed (i.e. we need + to load its body even if the node itself is not needed). */ + +@@ -205,6 +212,12 @@ wait_for_child () + "streaming subprocess was killed by signal"); + } + while (!WIFEXITED (status) && !WIFSIGNALED (status)); ++ ++ --nruns; ++ ++ /* Return token to the jobserver if active. */ ++ if (jinfo != NULL && jinfo->is_active) ++ jinfo->return_token (); + } + #endif + +@@ -228,25 +241,35 @@ stream_out_partitions (char *temp_filename, int blen, int min, int max, + bool ARG_UNUSED (last)) + { + #ifdef HAVE_WORKING_FORK +- static int nruns; +- + if (lto_parallelism <= 1) + { + stream_out_partitions_1 (temp_filename, blen, min, max); + return; + } + +- /* Do not run more than LTO_PARALLELISM streamings +- FIXME: we ignore limits on jobserver. */ + if (lto_parallelism > 0 && nruns >= lto_parallelism) +- { +- wait_for_child (); +- nruns --; +- } ++ wait_for_child (); ++ + /* If this is not the last parallel partition, execute new + streaming process. */ + if (!last) + { ++ if (jinfo != NULL && jinfo->is_active) ++ while (true) ++ { ++ if (jinfo->get_token ()) ++ break; ++ if (nruns > 0) ++ wait_for_child (); ++ else ++ { ++ /* There are no free tokens, lets do the job outselves. */ ++ stream_out_partitions_1 (temp_filename, blen, min, max); ++ asm_nodes_output = true; ++ return; ++ } ++ } ++ + pid_t cpid = fork (); + + if (!cpid) +@@ -264,10 +287,12 @@ stream_out_partitions (char *temp_filename, int blen, int min, int max, + /* Last partition; stream it and wait for all children to die. */ + else + { +- int i; + stream_out_partitions_1 (temp_filename, blen, min, max); +- for (i = 0; i < nruns; i++) ++ while (nruns > 0) + wait_for_child (); ++ ++ if (jinfo != NULL && jinfo->is_active) ++ jinfo->disconnect (); + } + asm_nodes_output = true; + #else +@@ -460,9 +485,14 @@ do_whole_program_analysis (void) + + lto_parallelism = 1; + +- /* TODO: jobserver communication is not supported, yet. */ + if (!strcmp (flag_wpa, "jobserver")) +- lto_parallelism = param_max_lto_streaming_parallelism; ++ { ++ jinfo = new jobserver_info (); ++ if (jinfo->is_active) ++ jinfo->connect (); ++ ++ lto_parallelism = param_max_lto_streaming_parallelism; ++ } + else + { + lto_parallelism = atoi (flag_wpa); +diff --git a/gcc/opts-common.cc b/gcc/opts-common.cc +index c2993f9140a..5d79f174a38 100644 +--- a/gcc/opts-common.cc ++++ b/gcc/opts-common.cc +@@ -2059,3 +2059,43 @@ jobserver_info::jobserver_info () + if (!error_msg.empty ()) + error_msg = "jobserver is not available: " + error_msg; + } ++ ++void ++jobserver_info::connect () ++{ ++ if (!pipe_path.empty ()) ++ pipefd = open (pipe_path.c_str (), O_RDWR); ++} ++ ++void ++jobserver_info::disconnect () ++{ ++ if (!pipe_path.empty ()) ++ { ++ gcc_assert (close (pipefd) == 0); ++ pipefd = -1; ++ } ++} ++ ++bool ++jobserver_info::get_token () ++{ ++ int fd = pipe_path.empty () ? rfd : pipefd; ++ char c; ++ unsigned n = read (fd, &c, 1); ++ if (n != 1) ++ { ++ gcc_assert (errno == EAGAIN); ++ return false; ++ } ++ else ++ return true; ++} ++ ++void ++jobserver_info::return_token () ++{ ++ int fd = pipe_path.empty () ? wfd : pipefd; ++ char c = 'G'; ++ gcc_assert (write (fd, &c, 1) == 1); ++} +diff --git a/gcc/opts-jobserver.h b/gcc/opts-jobserver.h +index 98ea2579962..76c1d9b2882 100644 +--- a/gcc/opts-jobserver.h ++++ b/gcc/opts-jobserver.h +@@ -29,6 +29,18 @@ struct jobserver_info + /* Default constructor. */ + jobserver_info (); + ++ /* Connect to the server. */ ++ void connect (); ++ ++ /* Disconnect from the server. */ ++ void disconnect (); ++ ++ /* Get token from the server. */ ++ bool get_token (); ++ ++ /* Return token to the server. */ ++ void return_token (); ++ + /* Error message if there is a problem. */ + string error_msg = ""; + /* Skipped MAKEFLAGS where --jobserver-auth is skipped. */ +@@ -39,6 +51,8 @@ struct jobserver_info + int wfd = -1; + /* Named pipe path. */ + string pipe_path = ""; ++ /* Pipe file descriptor. */ ++ int pipefd = -1; + /* Return true if jobserver is active. */ + bool is_active = false; + }; +-- +2.37.2 + +From 3f1c2f89f6b8b8d23a9072f8549b0a2c1de06b03 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Tue, 16 Aug 2022 08:22:29 +0200 +Subject: [PATCH] jobserver: fix fifo mode by opening pipe in proper mode + +The current jobserver_info relies on non-blocking FDs, +thus one the pipe in such mode. + +gcc/ChangeLog: + + * opts-common.cc (jobserver_info::connect): Open fifo + in non-blocking mode. +--- + gcc/opts-common.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gcc/opts-common.cc b/gcc/opts-common.cc +index 5d79f174a38..4dec9f94447 100644 +--- a/gcc/opts-common.cc ++++ b/gcc/opts-common.cc +@@ -2064,7 +2064,7 @@ void + jobserver_info::connect () + { + if (!pipe_path.empty ()) +- pipefd = open (pipe_path.c_str (), O_RDWR); ++ pipefd = open (pipe_path.c_str (), O_RDWR | O_NONBLOCK); + } + + void +-- +2.37.2 + diff --git a/gcc12-testresults.spec b/gcc12-testresults.spec index bcbe6ce..ac5e080 100644 --- a/gcc12-testresults.spec +++ b/gcc12-testresults.spec @@ -388,6 +388,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -522,6 +523,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 diff --git a/gcc12.changes b/gcc12.changes index ec456b6..e739c81 100644 --- a/gcc12.changes +++ b/gcc12.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Aug 29 07:48:00 UTC 2022 - Martin Liška + +- Add gcc12-fifo-jobserver-support.patch that adds support + for FIFO jobserver for make. + ------------------------------------------------------------------- Sun Aug 21 09:31:35 UTC 2022 - Matwey Kornilov diff --git a/gcc12.spec b/gcc12.spec index 4d0c4d6..72b7423 100644 --- a/gcc12.spec +++ b/gcc12.spec @@ -367,6 +367,7 @@ Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch18: gcc10-amdgcn-llvm-as.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc11-amdgcn-disable-hot-cold-partitioning.patch +Patch21: gcc12-fifo-jobserver-support.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -2022,6 +2023,7 @@ cd .. %patch15 %patch16 %patch17 -p1 +%patch21 -p1 # These patches are needed only for llvm11 %if "%{TARGET_ARCH}" == "amdgcn" && %{suse_version} < 1550 %patch18 -p1 From 60a2df8af9b632d33648e21e239cc6fe247c52db Mon Sep 17 00:00:00 2001 From: OBS User rguenther Date: Tue, 30 Aug 2022 10:13:40 +0000 Subject: [PATCH 3/5] - Update to gcc-12 branch head, e927d1cf141f221c5a32574bde0, git416 * includes GCC 12.2 release * includes recent fixes backported from trunk Rev devel:gcc/62 Md5 22590111f4a088ad3b2040b1fa288e76 2022-08-30 10:13:40 rguenther None --- cross-aarch64-gcc12-bootstrap.spec | 2 +- cross-aarch64-gcc12.spec | 2 +- cross-amdgcn-gcc12.spec | 2 +- cross-arm-gcc12.spec | 2 +- cross-arm-none-gcc12-bootstrap.spec | 2 +- cross-arm-none-gcc12.spec | 2 +- cross-avr-gcc12-bootstrap.spec | 2 +- cross-avr-gcc12.spec | 2 +- cross-epiphany-gcc12-bootstrap.spec | 2 +- cross-epiphany-gcc12.spec | 2 +- cross-hppa-gcc12-bootstrap.spec | 2 +- cross-hppa-gcc12.spec | 2 +- cross-m68k-gcc12.spec | 2 +- cross-mips-gcc12.spec | 2 +- cross-nvptx-gcc12.spec | 2 +- cross-ppc64-gcc12.spec | 2 +- cross-ppc64le-gcc12.spec | 2 +- cross-pru-gcc12-bootstrap.spec | 2 +- cross-pru-gcc12.spec | 2 +- cross-riscv64-elf-gcc12-bootstrap.spec | 2 +- cross-riscv64-elf-gcc12.spec | 2 +- cross-riscv64-gcc12-bootstrap.spec | 2 +- cross-riscv64-gcc12.spec | 2 +- cross-rx-gcc12-bootstrap.spec | 2 +- cross-rx-gcc12.spec | 2 +- cross-s390x-gcc12.spec | 2 +- cross-sparc-gcc12.spec | 2 +- cross-sparc64-gcc12.spec | 2 +- cross-x86_64-gcc12.spec | 2 +- gcc-12.1.1+git372.tar.xz | 3 --- gcc-12.2.1+git416.tar.xz | 3 +++ gcc.spec.in | 2 +- gcc12-testresults.spec | 2 +- gcc12.changes | 7 +++++++ gcc12.spec | 2 +- 35 files changed, 42 insertions(+), 35 deletions(-) delete mode 100644 gcc-12.1.1+git372.tar.xz create mode 100644 gcc-12.2.1+git416.tar.xz diff --git a/cross-aarch64-gcc12-bootstrap.spec b/cross-aarch64-gcc12-bootstrap.spec index 7b2af1d..a57fa63 100644 --- a/cross-aarch64-gcc12-bootstrap.spec +++ b/cross-aarch64-gcc12-bootstrap.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-aarch64-gcc12.spec b/cross-aarch64-gcc12.spec index f4f9a31..65941b9 100644 --- a/cross-aarch64-gcc12.spec +++ b/cross-aarch64-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-amdgcn-gcc12.spec b/cross-amdgcn-gcc12.spec index f8c0bab..0699fbc 100644 --- a/cross-amdgcn-gcc12.spec +++ b/cross-amdgcn-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-arm-gcc12.spec b/cross-arm-gcc12.spec index ba44432..3c26467 100644 --- a/cross-arm-gcc12.spec +++ b/cross-arm-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-arm-none-gcc12-bootstrap.spec b/cross-arm-none-gcc12-bootstrap.spec index d0af70c..e719e32 100644 --- a/cross-arm-none-gcc12-bootstrap.spec +++ b/cross-arm-none-gcc12-bootstrap.spec @@ -102,7 +102,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-arm-none-gcc12.spec b/cross-arm-none-gcc12.spec index c047886..8062dbf 100644 --- a/cross-arm-none-gcc12.spec +++ b/cross-arm-none-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-avr-gcc12-bootstrap.spec b/cross-avr-gcc12-bootstrap.spec index d30af77..8de7e65 100644 --- a/cross-avr-gcc12-bootstrap.spec +++ b/cross-avr-gcc12-bootstrap.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-avr-gcc12.spec b/cross-avr-gcc12.spec index a2e67ee..dd2be9d 100644 --- a/cross-avr-gcc12.spec +++ b/cross-avr-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-epiphany-gcc12-bootstrap.spec b/cross-epiphany-gcc12-bootstrap.spec index b5a213e..8064ac1 100644 --- a/cross-epiphany-gcc12-bootstrap.spec +++ b/cross-epiphany-gcc12-bootstrap.spec @@ -102,7 +102,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-epiphany-gcc12.spec b/cross-epiphany-gcc12.spec index b6fecdf..66f2c9c 100644 --- a/cross-epiphany-gcc12.spec +++ b/cross-epiphany-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-hppa-gcc12-bootstrap.spec b/cross-hppa-gcc12-bootstrap.spec index a4d6612..3f1ca3c 100644 --- a/cross-hppa-gcc12-bootstrap.spec +++ b/cross-hppa-gcc12-bootstrap.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-hppa-gcc12.spec b/cross-hppa-gcc12.spec index 2944b24..c217122 100644 --- a/cross-hppa-gcc12.spec +++ b/cross-hppa-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-m68k-gcc12.spec b/cross-m68k-gcc12.spec index 4696157..e3fe8e0 100644 --- a/cross-m68k-gcc12.spec +++ b/cross-m68k-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-mips-gcc12.spec b/cross-mips-gcc12.spec index 5a72009..ae87f56 100644 --- a/cross-mips-gcc12.spec +++ b/cross-mips-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-nvptx-gcc12.spec b/cross-nvptx-gcc12.spec index e528196..ea8b150 100644 --- a/cross-nvptx-gcc12.spec +++ b/cross-nvptx-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-ppc64-gcc12.spec b/cross-ppc64-gcc12.spec index b88181a..5d929ba 100644 --- a/cross-ppc64-gcc12.spec +++ b/cross-ppc64-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-ppc64le-gcc12.spec b/cross-ppc64le-gcc12.spec index 0eb28fc..48dd738 100644 --- a/cross-ppc64le-gcc12.spec +++ b/cross-ppc64le-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-pru-gcc12-bootstrap.spec b/cross-pru-gcc12-bootstrap.spec index 527cf1c..a7ee6a6 100644 --- a/cross-pru-gcc12-bootstrap.spec +++ b/cross-pru-gcc12-bootstrap.spec @@ -102,7 +102,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-pru-gcc12.spec b/cross-pru-gcc12.spec index c3e019e..9e6d83c 100644 --- a/cross-pru-gcc12.spec +++ b/cross-pru-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-riscv64-elf-gcc12-bootstrap.spec b/cross-riscv64-elf-gcc12-bootstrap.spec index ea7d7dc..71fbab6 100644 --- a/cross-riscv64-elf-gcc12-bootstrap.spec +++ b/cross-riscv64-elf-gcc12-bootstrap.spec @@ -102,7 +102,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-riscv64-elf-gcc12.spec b/cross-riscv64-elf-gcc12.spec index 8d09ec7..f10f574 100644 --- a/cross-riscv64-elf-gcc12.spec +++ b/cross-riscv64-elf-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-riscv64-gcc12-bootstrap.spec b/cross-riscv64-gcc12-bootstrap.spec index 538c222..9fe2437 100644 --- a/cross-riscv64-gcc12-bootstrap.spec +++ b/cross-riscv64-gcc12-bootstrap.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-riscv64-gcc12.spec b/cross-riscv64-gcc12.spec index 367d494..74eb37c 100644 --- a/cross-riscv64-gcc12.spec +++ b/cross-riscv64-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-rx-gcc12-bootstrap.spec b/cross-rx-gcc12-bootstrap.spec index aa59bf1..9531d6d 100644 --- a/cross-rx-gcc12-bootstrap.spec +++ b/cross-rx-gcc12-bootstrap.spec @@ -102,7 +102,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-rx-gcc12.spec b/cross-rx-gcc12.spec index 9488843..d092e2b 100644 --- a/cross-rx-gcc12.spec +++ b/cross-rx-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-s390x-gcc12.spec b/cross-s390x-gcc12.spec index ffaea11..1f0d359 100644 --- a/cross-s390x-gcc12.spec +++ b/cross-s390x-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-sparc-gcc12.spec b/cross-sparc-gcc12.spec index b1b0639..4396dbb 100644 --- a/cross-sparc-gcc12.spec +++ b/cross-sparc-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-sparc64-gcc12.spec b/cross-sparc64-gcc12.spec index 32e8074..90e3665 100644 --- a/cross-sparc64-gcc12.spec +++ b/cross-sparc64-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/cross-x86_64-gcc12.spec b/cross-x86_64-gcc12.spec index 1f2ca6d..f609e01 100644 --- a/cross-x86_64-gcc12.spec +++ b/cross-x86_64-gcc12.spec @@ -101,7 +101,7 @@ Name: %{pkgname} %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/gcc-12.1.1+git372.tar.xz b/gcc-12.1.1+git372.tar.xz deleted file mode 100644 index afb029c..0000000 --- a/gcc-12.1.1+git372.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b476c9e4765697429e699772ac2ccd8fe14061b3c0140babdfe5ec4285402d7b -size 83016352 diff --git a/gcc-12.2.1+git416.tar.xz b/gcc-12.2.1+git416.tar.xz new file mode 100644 index 0000000..1b854d1 --- /dev/null +++ b/gcc-12.2.1+git416.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb1b05cb1165be27bdf13b637918af2dcad5600831c16d1e1df54ebd4609fb3b +size 83021860 diff --git a/gcc.spec.in b/gcc.spec.in index 14132dd..d4b93fb 100644 --- a/gcc.spec.in +++ b/gcc.spec.in @@ -190,7 +190,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 1 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/gcc12-testresults.spec b/gcc12-testresults.spec index ac5e080..f333d16 100644 --- a/gcc12-testresults.spec +++ b/gcc12-testresults.spec @@ -207,7 +207,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') diff --git a/gcc12.changes b/gcc12.changes index e739c81..06d15a1 100644 --- a/gcc12.changes +++ b/gcc12.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue Aug 30 10:09:37 UTC 2022 - Richard Biener + +- Update to gcc-12 branch head, e927d1cf141f221c5a32574bde0, git416 + * includes GCC 12.2 release + * includes recent fixes backported from trunk + ------------------------------------------------------------------- Mon Aug 29 07:48:00 UTC 2022 - Martin Liška diff --git a/gcc12.spec b/gcc12.spec index 72b7423..acb9bb9 100644 --- a/gcc12.spec +++ b/gcc12.spec @@ -186,7 +186,7 @@ %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64 URL: https://gcc.gnu.org/ -Version: 12.1.1+git372 +Version: 12.2.1+git416 Release: 0 %define gcc_dir_version %(echo %version | sed 's/+.*//' | cut -d '.' -f 1) %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/') From e18689ecf28d468ee8891be5f4ad99f9520a2e3a Mon Sep 17 00:00:00 2001 From: OBS User rguenther Date: Wed, 31 Aug 2022 12:40:19 +0000 Subject: [PATCH 4/5] - Prune invalid-license rpmlint warnings, the SLE12 codestream doesn't get fixed but FF applies there, too. Rev devel:gcc/63 Md5 464cbe9ac4ab950098e10c5aadfc806e 2022-08-31 12:40:19 rguenther None --- gcc12-rpmlintrc | 3 ++- gcc12.changes | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc12-rpmlintrc b/gcc12-rpmlintrc index b012f08..2299124 100644 --- a/gcc12-rpmlintrc +++ b/gcc12-rpmlintrc @@ -15,4 +15,5 @@ addFilter ("shlib-legacy-policy-name-error") # Packages provide libgcc_s1 = $version and conflict with other providers # of libgcc_s1 addFilter ("conflicts-with-provides") - +# SLE12 rpmlint complains about valid SPDX licenses +addFilter ("invalid-license") diff --git a/gcc12.changes b/gcc12.changes index 06d15a1..8eda4b1 100644 --- a/gcc12.changes +++ b/gcc12.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Aug 31 12:38:20 UTC 2022 - Richard Biener + +- Prune invalid-license rpmlint warnings, the SLE12 codestream + doesn't get fixed but FF applies there, too. + ------------------------------------------------------------------- Tue Aug 30 10:09:37 UTC 2022 - Richard Biener From 181c49231b7c15f0d99d8195c12f9446b8bcc3c2 Mon Sep 17 00:00:00 2001 From: OBS User rguenther Date: Wed, 31 Aug 2022 12:46:52 +0000 Subject: [PATCH 5/5] doesn't get fixed but FF applies there, too. [bsc#1185337] Rev devel:gcc/64 Md5 fd235451a7584525250c547f984c0804 2022-08-31 12:46:52 rguenther None --- gcc12.changes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc12.changes b/gcc12.changes index 8eda4b1..eb31696 100644 --- a/gcc12.changes +++ b/gcc12.changes @@ -2,7 +2,7 @@ Wed Aug 31 12:38:20 UTC 2022 - Richard Biener - Prune invalid-license rpmlint warnings, the SLE12 codestream - doesn't get fixed but FF applies there, too. + doesn't get fixed but FF applies there, too. [bsc#1185337] ------------------------------------------------------------------- Tue Aug 30 10:09:37 UTC 2022 - Richard Biener