diff options
author | Dongkyun Son <dongkyun.s@samsung.com> | 2023-07-04 16:57:14 +0900 |
---|---|---|
committer | Dongkyun Son <dongkyun.s@samsung.com> | 2023-07-04 16:57:14 +0900 |
commit | 933750ce3dcfc1f219d37243aa35c37d3be89a9a (patch) | |
tree | ceb53ce285af4d02cd99a9dbede01e1abbd0da43 | |
parent | 795394d9adc6b83b07a232d7b8d631bdcddb6e7a (diff) | |
parent | 58426edd91d082cf2c5bfb22b02c917ae49d6ac4 (diff) | |
download | gcc-tizen_base.tar.gz gcc-tizen_base.tar.bz2 gcc-tizen_base.zip |
Merge branch 'sandbox/dkson95/tizen_base' into tizen_basetizen_9.0_m2_releasetizen_8.0_m2_releasesubmit/tizen_base/20230704.080529accepted/tizen/base/tool/20230712.013400accepted/tizen/base/test/20230705.044339accepted/tizen/base/test/20230704.225151accepted/tizen/base/20230714.003321accepted/tizen/9.0/base/20241030.075713accepted/tizen/8.0/base/20231005.044711tizen_basetizen_9.0_basetizen_8.0_baseaccepted/tizen_base_toolaccepted/tizen_base_testaccepted/tizen_baseaccepted/tizen_9.0_baseaccepted/tizen_8.0_base
Change-Id: Ia0c01548c8b087212b4da62a76056a5f9f5f784c
Signed-off-by: Dongkyun Son <dongkyun.s@samsung.com>
-rw-r--r-- | packaging/gcc-aarch64.spec | 15 | ||||
-rw-r--r-- | packaging/gcc-armv7hl.spec | 15 | ||||
-rw-r--r-- | packaging/gcc-armv7l.spec | 15 | ||||
-rw-r--r-- | packaging/gcc-riscv64.spec | 1310 | ||||
-rw-r--r-- | packaging/gcc.spec | 13 | ||||
-rwxr-xr-x | packaging/pre_checkin.sh | 2 |
6 files changed, 21 insertions, 1349 deletions
diff --git a/packaging/gcc-aarch64.spec b/packaging/gcc-aarch64.spec index 0513fe3da9b..cf4a9aa570a 100644 --- a/packaging/gcc-aarch64.spec +++ b/packaging/gcc-aarch64.spec @@ -64,16 +64,13 @@ %define quadmath_arch %ix86 x86_64 ia64 %define tsan_arch x86_64 aarch64 -%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 riscv64 +%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 %define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc aarch64 -%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k riscv64 +%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k %define lsan_arch x86_64 %ix86 %arm aarch64 -%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 riscv64 +%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 %define hwasan_arch aarch64 -%ifarch riscv64 -%define ARCH riscv64 -%endif %ifarch armv7l %define ARCH armv7l %define ABI eabi @@ -97,7 +94,7 @@ %define target_abi %{?cross:%{?armv7l:eabi}%{?armv7hl:eabihf}}%{!?cross:%{?ABI}} %define target_arch %{target_cpu}-tizen-linux-gnu%{?target_abi} -%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}%{?riscv64:64}} +%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}} %define libsubdir %{libdir}/gcc/%{target_arch}/%{version} Name: gcc%{?cross:-%{cross}} @@ -109,10 +106,8 @@ BuildRequires: makeinfo ## until here, but at least renaming and patching info files breaks this BuildRequires: gcc-c++ BuildRequires: zlib-devel -BuildRequires: glibc-devel-static %ifarch x86_64 BuildRequires: glibc-devel-32bit -BuildRequires: glibc-devel-static-32bit %endif BuildRequires: perl %{?cross:BuildRequires: binutils-%{cross}} @@ -767,7 +762,7 @@ fi %{?asan: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -DASAN_INIT_FIRST) } %{?asan_shadow_scale: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -Wp,-DASAN_SHADOW_SCALE=%{asan_shadow_scale})} -%ifarch armv7l armv7hl aarch64 riscv64 +%ifarch armv7l armv7hl aarch64 %undefine gcc_profiledbootstrap %endif diff --git a/packaging/gcc-armv7hl.spec b/packaging/gcc-armv7hl.spec index f08511cbd21..c905d1d0081 100644 --- a/packaging/gcc-armv7hl.spec +++ b/packaging/gcc-armv7hl.spec @@ -64,16 +64,13 @@ %define quadmath_arch %ix86 x86_64 ia64 %define tsan_arch x86_64 aarch64 -%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 riscv64 +%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 %define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc aarch64 -%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k riscv64 +%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k %define lsan_arch x86_64 %ix86 %arm aarch64 -%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 riscv64 +%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 %define hwasan_arch aarch64 -%ifarch riscv64 -%define ARCH riscv64 -%endif %ifarch armv7l %define ARCH armv7l %define ABI eabi @@ -97,7 +94,7 @@ %define target_abi %{?cross:%{?armv7l:eabi}%{?armv7hl:eabihf}}%{!?cross:%{?ABI}} %define target_arch %{target_cpu}-tizen-linux-gnu%{?target_abi} -%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}%{?riscv64:64}} +%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}} %define libsubdir %{libdir}/gcc/%{target_arch}/%{version} Name: gcc%{?cross:-%{cross}} @@ -109,10 +106,8 @@ BuildRequires: makeinfo ## until here, but at least renaming and patching info files breaks this BuildRequires: gcc-c++ BuildRequires: zlib-devel -BuildRequires: glibc-devel-static %ifarch x86_64 BuildRequires: glibc-devel-32bit -BuildRequires: glibc-devel-static-32bit %endif BuildRequires: perl %{?cross:BuildRequires: binutils-%{cross}} @@ -767,7 +762,7 @@ fi %{?asan: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -DASAN_INIT_FIRST) } %{?asan_shadow_scale: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -Wp,-DASAN_SHADOW_SCALE=%{asan_shadow_scale})} -%ifarch armv7l armv7hl aarch64 riscv64 +%ifarch armv7l armv7hl aarch64 %undefine gcc_profiledbootstrap %endif diff --git a/packaging/gcc-armv7l.spec b/packaging/gcc-armv7l.spec index 7a10ab43eae..00abc0c32c6 100644 --- a/packaging/gcc-armv7l.spec +++ b/packaging/gcc-armv7l.spec @@ -64,16 +64,13 @@ %define quadmath_arch %ix86 x86_64 ia64 %define tsan_arch x86_64 aarch64 -%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 riscv64 +%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 %define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc aarch64 -%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k riscv64 +%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k %define lsan_arch x86_64 %ix86 %arm aarch64 -%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 riscv64 +%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 %define hwasan_arch aarch64 -%ifarch riscv64 -%define ARCH riscv64 -%endif %ifarch armv7l %define ARCH armv7l %define ABI eabi @@ -97,7 +94,7 @@ %define target_abi %{?cross:%{?armv7l:eabi}%{?armv7hl:eabihf}}%{!?cross:%{?ABI}} %define target_arch %{target_cpu}-tizen-linux-gnu%{?target_abi} -%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}%{?riscv64:64}} +%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}} %define libsubdir %{libdir}/gcc/%{target_arch}/%{version} Name: gcc%{?cross:-%{cross}} @@ -109,10 +106,8 @@ BuildRequires: makeinfo ## until here, but at least renaming and patching info files breaks this BuildRequires: gcc-c++ BuildRequires: zlib-devel -BuildRequires: glibc-devel-static %ifarch x86_64 BuildRequires: glibc-devel-32bit -BuildRequires: glibc-devel-static-32bit %endif BuildRequires: perl %{?cross:BuildRequires: binutils-%{cross}} @@ -767,7 +762,7 @@ fi %{?asan: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -DASAN_INIT_FIRST) } %{?asan_shadow_scale: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -Wp,-DASAN_SHADOW_SCALE=%{asan_shadow_scale})} -%ifarch armv7l armv7hl aarch64 riscv64 +%ifarch armv7l armv7hl aarch64 %undefine gcc_profiledbootstrap %endif diff --git a/packaging/gcc-riscv64.spec b/packaging/gcc-riscv64.spec deleted file mode 100644 index 82c00f2b521..00000000000 --- a/packaging/gcc-riscv64.spec +++ /dev/null @@ -1,1310 +0,0 @@ -%define cross riscv64 -%define riscv64 1 - -# -# spec file for package gcc -# -# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. -# Copyright (c) 2015-2020 Tizen -# -# All modifications and additions to the file contributed by third parties -# remain the property of their copyright owners, unless otherwise agreed -# upon. The license for this file, and modifications and additions to the -# file, is the same license as for the pristine package itself (unless the -# license for the pristine package is not an Open Source License, in which -# case the license is the MIT License). An "Open Source License" is a -# license that conforms to the Open Source Definition (Version 1.9) -# published by the Open Source Initiative. - -# Please submit bugfixes or comments via http://bugs.tizen.org/ -# -# we use %%{?macro: ... } as it is more compact -%if 0%{?run_tests} -%{!?cross: -%define gcc_run_tests 1 -} -%endif -%if 0%{?dump_configure} -%define gcc_dump_configure 1 -%endif - -# Enable this when testing on device to: -# 1. Enable macro to turn on testsuite building ('gcc_run_tests 1') -# 2. Keep 'obj/' folder in build stage as we do not want to rebuild all gcc -# again on device after invoking rpmbuild --short-circuit -bc ... -# 3. Skip configure and make commands and go directly to 'make check' -%if 0%{?run_tests_on_device} -%define gcc_run_tests 1 -%define gcc_keep_build_dir 1 -%define gcc_skip_configure 1 -%define gcc_skip_make 1 -%endif - -# Exit right after 'make ..' step to keep all object files produced by gcc build -%if 0%{?exit_on_make_finish} -%define gcc_exit_on_make_finish 1 -%endif - -# Bootstrap build constrains for ASan config -%if 0%{?asanbootstrap} - %ifarch %arm aarch64 # or #if 0#{?qemu_user_space_build} - %{error:"'asanbootstrap' supposed to be used with i586/x86_64 arch"} - # The #error macro primitive cannot stop the build because macros are context - # free, lazily expanded whereever they are needed, not only during build. - # Use non-existing define for now to abort the build. - %abort_build - %endif - # We'll get 2 libasan runtime conflict: preloaded one and another from build dir. - %if 0%{?asan} - %{error:"'asanbootstrap' could not be used with sanitized environment."} - %{error:"Use 'asanbootstrap' without defined 'asan'"} - %abort_build - %endif -%endif - -%define quadmath_arch %ix86 x86_64 ia64 -%define tsan_arch x86_64 aarch64 -%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 riscv64 -%define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc aarch64 -%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k riscv64 -%define lsan_arch x86_64 %ix86 %arm aarch64 -%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 riscv64 -%define hwasan_arch aarch64 - -%ifarch riscv64 -%define ARCH riscv64 -%endif -%ifarch armv7l -%define ARCH armv7l -%define ABI eabi -%endif -%ifarch armv7hl -%define ARCH armv7hl -%define ABI eabihf -%endif -%ifarch %ix86 -%define ARCH i586 -%endif -%ifarch x86_64 -%define ARCH x86_64 -%endif -%ifarch aarch64 -%define ARCH aarch64 -%endif -%define host_arch %{ARCH}-tizen-linux-gnu%{?ABI} - -%define target_cpu %{?cross}%{!?cross:%{ARCH}} -%define target_abi %{?cross:%{?armv7l:eabi}%{?armv7hl:eabihf}}%{!?cross:%{?ABI}} - -%define target_arch %{target_cpu}-tizen-linux-gnu%{?target_abi} -%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}%{?riscv64:64}} -%define libsubdir %{libdir}/gcc/%{target_arch}/%{version} - -Name: gcc%{?cross:-%{cross}} -# With generated files in src we could drop the following -BuildRequires: bison -BuildRequires: flex -BuildRequires: gettext-devel -BuildRequires: makeinfo -## until here, but at least renaming and patching info files breaks this -BuildRequires: gcc-c++ -BuildRequires: zlib-devel -BuildRequires: glibc-devel-static -%ifarch x86_64 -BuildRequires: glibc-devel-32bit -BuildRequires: glibc-devel-static-32bit -%endif -BuildRequires: perl -%{?cross:BuildRequires: binutils-%{cross}} -# here we use %%if because OBS spec parser cannot expand -# %%{?macro:...} correctly -%if 0%{?gcc_run_tests} -BuildRequires: dejagnu -BuildRequires: expect -%endif -%if 0%{?gcc_dump_configure} -BuildRequires: configure-dumper -%endif -URL: http://gcc.gnu.org/ -Version: 9.2.0 -Release: 0 -Source: gcc-%{version}.tar.bz2 -Source10: gmp-6.1.2.tar.bz2 -Source11: mpfr-4.0.2.tar.bz2 -Source12: mpc-1.1.0.tar.gz -Source13: isl-0.22.tar.bz2 -Source20: gcc.manifest -Source30: config.sub -Group: Development/Building -Summary: The GNU C Compiler and Support Files -License: GPL-3.0+ -%{?cross:ExcludeArch: %{cross}} -%description -Core package for the GNU Compiler Collection, including the C language -frontend. - -%package c++ -Summary: The GNU C++ Compiler -License: GPL-3.0+ -Group: Development/Languages -%description c++ -This package contains the GNU compiler for C++. - -%package -n libstdc++ -Summary: The standard C++ shared library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libstdc++ -The standard C++ library, needed for dynamically linked C++ programs. -%post -n libstdc++ -p /sbin/ldconfig -%postun -n libstdc++ -p /sbin/ldconfig - -%package -n libstdc++-devel -Summary: Include Files and Libraries mandatory for Development -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libstdc++-devel -This package contains all the headers and libraries of the standard C++ -library. It is needed for compiling C++ code. - -%package -n libgcc -Summary: C compiler runtime library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libgcc -Libgcc is needed for dynamically linked C programs. -%post -n libgcc -p /sbin/ldconfig -%postun -n libgcc -p /sbin/ldconfig - -%package -n libgomp -Summary: The GNU compiler collection OpenMP runtime library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libgomp -This is the OpenMP runtime library needed by OpenMP enabled programs -that were built with the -fopenmp compiler option and by programs that -were auto-parallelized via the -ftree-parallelize-loops compiler -option. -%post -n libgomp -p /sbin/ldconfig -%postun -n libgomp -p /sbin/ldconfig - -%package objc -Summary: GNU Objective C Compiler -License: GPL-3.0+ -Group: Development/Languages -%description objc -This package contains the GNU Objective C compiler. Objective C is an -object oriented language, created by Next Inc. and used in their -Nextstep OS. The source code is available in the gcc package. - -%package -n libobjc -Summary: Library for the GNU Objective C Compiler -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libobjc -The library for the GNU Objective C compiler. -%post -n libobjc -p /sbin/ldconfig -%postun -n libobjc -p /sbin/ldconfig - -%package -n libcc1 -Summary: GNU C Compiler plugin for GDB -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libcc1 -The GCC plugin for GDB -%post -n libcc1 -p /sbin/ldconfig -%postun -n libcc1 -p /sbin/ldconfig - -%package obj-c++ -Summary: GNU Objective C++ Compiler -License: GPL-3.0+ -Group: Development/Languages -%description obj-c++ -This package contains the GNU Objective C++ compiler. Objective C++ is an -object oriented language, created by Next Inc. and used in their -Nextstep OS. The source code is available in the gcc package. - -%package -n cpp -Summary: The GCC Preprocessor -License: GPL-3.0+ -Group: Development/Languages -%description -n cpp -This Package contains just the preprocessor that is used by the X11 -packages. - -%package ada -Summary: GNU Ada95 Compiler Based on GCC (GNAT) -License: GPL-3.0+ -Group: Development/Languages -%description ada -This package contains an Ada95 compiler and associated development -tools based on the GNU GCC technology. Ada95 is the object oriented -successor of the Ada83 language. To build this package from source you -must have installed a binary version to bootstrap the compiler. - -%package -n libada -Summary: GNU Ada Runtime Libraries -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libada -This package contains the shared libraries required to run programs -compiled with the GNU Ada compiler (GNAT) if they are compiled to use -shared libraries. It also contains the shared libraries for the -Implementation of the Ada Semantic Interface Specification (ASIS), the -implementation of Distributed Systems Programming (GLADE) and the Posix -1003.5 Binding (Florist). -%post -n libada -p /sbin/ldconfig -%postun -n libada -p /sbin/ldconfig - -%package fortran -Summary: The GNU Fortran Compiler and Support Files -License: GPL-3.0+ -Group: Development/Languages -%description fortran -This is the Fortran compiler of the GNU Compiler Collection (GCC). - -%package -n libgfortran -Summary: The GNU Fortran Compiler Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libgfortran -The runtime library needed to run programs compiled with the Fortran compiler -of the GNU Compiler Collection (GCC). -%post -n libgfortran -p /sbin/ldconfig -%postun -n libgfortran -p /sbin/ldconfig - -%package -n libquadmath -Summary: The GNU Fortran Compiler Quadmath Runtime Library -License: LGPL-2.1 -Group: Development/Languages -%description -n libquadmath -The runtime library needed to run programs compiled with the Fortran compiler -of the GNU Compiler Collection (GCC) and quadruple precision floating point -operations. -%post -n libquadmath -p /sbin/ldconfig -%postun -n libquadmath -p /sbin/ldconfig - -%package -n libitm -Summary: The GNU Compiler Transactional Memory Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libitm -The runtime library needed to run programs compiled with the --fgnu-tm option of the GNU Compiler Collection (GCC). -%post -n libitm -p /sbin/ldconfig -%postun -n libitm -p /sbin/ldconfig - -%package -n libasan -Summary: The GNU Compiler Address Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libasan -The runtime library needed to run programs compiled with the --fsanitize=address option of the GNU Compiler Collection (GCC). -%post -n libasan -p /sbin/ldconfig -%postun -n libasan -p /sbin/ldconfig - -%package -n libhwasan -Summary: The GNU Compiler Hardware-assisted Address Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libhwasan -The runtime library needed to run programs compiled with the --fsanitize=hwaddress option of the GNU Compiler Collection (GCC). -%post -n libhwasan -p /sbin/ldconfig -%postun -n libhwasan -p /sbin/ldconfig - -%package -n libtsan -Summary: The GNU Compiler Thread Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libtsan -The runtime library needed to run programs compiled with the --fsanitize=thread option of the GNU Compiler Collection (GCC). -%post -n libtsan -p /sbin/ldconfig -%postun -n libtsan -p /sbin/ldconfig - -%package -n libatomic -Summary: The GNU Compiler Atomic Operations Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libatomic -The runtime library for atomic operations of the GNU Compiler Collection (GCC). -%post -n libatomic -p /sbin/ldconfig -%postun -n libatomic -p /sbin/ldconfig - -%package -n liblsan -Summary: The GNU Compiler Leak Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n liblsan -The runtime library needed to run programs compiled with the --fsanitize=leak option of the GNU Compiler Collection (GCC). -%post -n liblsan -p /sbin/ldconfig -%postun -n liblsan -p /sbin/ldconfig - -%package -n libubsan -Summary: The GNU Compiler Undefined Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libubsan -The runtime library needed to run programs compiled with the --fsanitize=undefined option of the GNU Compiler Collection (GCC). -%post -n libubsan -p /sbin/ldconfig -%postun -n libubsan -p /sbin/ldconfig - -%package -n libvtv -Summary: The GNU Compiler Vtable Verifier Runtime Library -License: MIT -Group: Development/Languages -%description -n libvtv -The runtime library needed to run programs compiled with the --fvtable-verify option of the GNU Compiler Collection (GCC). -%post -n libvtv -p /sbin/ldconfig -%postun -n libvtv -p /sbin/ldconfig - -%package -n libgcj -Summary: Java Runtime Library for gcc -License: GPL-2.0-with-classpath-exception -Group: Development/Building -%description -n libgcj -This library is needed if you want to use the GNU Java compiler, gcj. -Source code for this package is in gcc. -%post -n libgcj -p /sbin/ldconfig -%postun -n libgcj -p /sbin/ldconfig - -%package java -Summary: The GNU Java Compiler -License: GPL-3.0+ -Group: Development/Languages -%description java -The Java compiler from the GCC-tools-suite. - -%package -n libgcj_bc -Summary: Fake library for BC-ABI compatibility. -License: GPL-2.0-with-classpath-exception -Group: Development/Languages -%description -n libgcj_bc -A fake library that is used at link time only. It ensures that -binaries built with the BC-ABI link against a constant SONAME. -This way, BC-ABI binaries continue to work if the SONAME underlying -libgcj.so changes. - -%package -n libgcj-jar -Summary: Java runtime library (jar files). -License: GPL-2.0-with-classpath-exception -Group: Development/Languages -%description -n libgcj-jar -These are the jar files that go along with the gcj front end to gcc. - -%package -n libgcj-devel -Summary: Include Files and Libraries mandatory for Development. -License: GPL-2.0-with-classpath-exception -Group: Development/Languages -%description -n libgcj-devel -This package contains all necessary include files and libraries needed -to develop applications that require these. - -%package -n gcc-gij -Summary: Java Bytecode Interpreter for gcc -License: GPL-2.0-with-classpath-exception -Group: Development/Languages -%description -n gcc-gij -This package contains the java bytecode interpreter gij and related tools. - -%package -n libffi -Summary: Foreign Function Interface library -License: BSD-3-Clause -Group: Development/Building -%description -n libffi -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. -%post -n libffi -p /sbin/ldconfig -%postun -n libffi -p /sbin/ldconfig - -%package -n libffi-devel -Summary: Foreign Function Interface library development files -License: BSD 3-Clause -Group: Development/Building -%description -n libffi-devel -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. - -%package go -Summary: GNU Go Compiler -License: GPL-3.0+ -Group: Development/Languages -%description go -This package contains a Go compiler and associated development -files based on the GNU GCC technology. - -%package -n libgo -Summary: GNU Go compiler runtime library -License: BSD-3-Clause -Group: Development/Languages -%description -n libgo -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. -%post -n libgo -p /sbin/ldconfig -%postun -n libgo -p /sbin/ldconfig - -%{?gcc_run_tests: -%package testresults -Summary: Testsuite results -License: Public Domain -Group: Development/Languages -%description testresults -Results from running the gcc and target library testsuites. -} - -%package -n gcc-32bit -Summary: The GNU C Compiler 32bit support -Group: Development/Building -%description -n gcc-32bit -This package contains 32bit support for the GNU Compiler Collection. - -%package -n libstdc++-devel-32bit -Summary: Include Files and Libraries mandatory for Development -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libstdc++-devel-32bit -This package contains all the headers and libraries of the standard C++ -library. It is needed for compiling C++ code. - -%package -n libgcc-32bit -Summary: C compiler runtime library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libgcc-32bit -Libgcc is needed for dynamically linked C programs. -%post -n libgcc-32bit -p /sbin/ldconfig -%postun -n libgcc-32bit -p /sbin/ldconfig - -%package -n libgomp-32bit -Summary: The GNU compiler collection OpenMP runtime library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libgomp-32bit -This is the OpenMP runtime library needed by OpenMP enabled programs -that were built with the -fopenmp compiler option and by programs that -were auto-parallelized via the -ftree-parallelize-loops compiler -option. -%post -n libgomp-32bit -p /sbin/ldconfig -%postun -n libgomp-32bit -p /sbin/ldconfig - -%package -n libstdc++-32bit -Summary: The standard C++ shared library -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libstdc++-32bit -The standard C++ library, needed for dynamically linked C++ programs. -%post -n libstdc++-32bit -p /sbin/ldconfig -%postun -n libstdc++-32bit -p /sbin/ldconfig - -%package objc-32bit -Summary: GNU Objective C Compiler -License: GPL-3.0+ -Group: Development/Languages -%description objc-32bit -This package contains the GNU Objective C compiler. Objective C is an -object oriented language, created by Next Inc. and used in their -Nextstep OS. The source code is available in the gcc package. - -%package -n libobjc-32bit -Summary: Library for the GNU Objective C Compiler -License: GPL-3.0-with-GCC-exception -Group: Development/Building -%description -n libobjc-32bit -The library for the GNU Objective C compiler. -%post -n libobjc-32bit -p /sbin/ldconfig -%postun -n libobjc-32bit -p /sbin/ldconfig - -%package ada-32bit -Summary: GNU Ada95 Compiler Based on GCC (GNAT) -License: GPL-3.0+ -Group: Development/Languages -%description ada-32bit -This package contains an Ada95 compiler and associated development -tools based on the GNU GCC technology. Ada95 is the object oriented -successor of the Ada83 language. To build this package from source you -must have installed a binary version to bootstrap the compiler. - -%package -n libada-32bit -Summary: GNU Ada Runtime Libraries -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libada-32bit -This package contains the shared libraries required to run programs -compiled with the GNU Ada compiler (GNAT) if they are compiled to use -shared libraries. It also contains the shared libraries for the -Implementation of the Ada Semantic Interface Specification (ASIS), the -implementation of Distributed Systems Programming (GLADE) and the Posix -1003.5 Binding (Florist). -%post -n libada-32bit -p /sbin/ldconfig -%postun -n libada-32bit -p /sbin/ldconfig - -%package fortran-32bit -Summary: The GNU Fortran Compiler and Support Files -License: GPL-3.0+ -Group: Development/Languages -%description fortran-32bit -This is the Fortran compiler of the GNU Compiler Collection (GCC). - -%package -n libgfortran-32bit -Summary: The GNU Fortran Compiler Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libgfortran-32bit -The runtime library needed to run programs compiled with the Fortran compiler -of the GNU Compiler Collection (GCC). -%post -n libgfortran-32bit -p /sbin/ldconfig -%postun -n libgfortran-32bit -p /sbin/ldconfig - -%package -n libquadmath-32bit -Summary: The GNU Fortran Compiler Quadmath Runtime Library -License: LGPL-2.1 -Group: Development/Languages -%description -n libquadmath-32bit -The runtime library needed to run programs compiled with the Fortran compiler -of the GNU Compiler Collection (GCC) and quadruple precision floating point -operations. -%post -n libquadmath-32bit -p /sbin/ldconfig -%postun -n libquadmath-32bit -p /sbin/ldconfig - -%package -n libitm-32bit -Summary: The GNU Compiler Transactional Memory Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libitm-32bit -The runtime library needed to run programs compiled with the --fgnu-tm option of the GNU Compiler Collection (GCC). -%post -n libitm-32bit -p /sbin/ldconfig -%postun -n libitm-32bit -p /sbin/ldconfig - -%package -n libasan-32bit -Summary: The GNU Compiler Address Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libasan-32bit -The runtime library needed to run programs compiled with the --fsanitize=address option of the GNU Compiler Collection (GCC). -%post -n libasan-32bit -p /sbin/ldconfig -%postun -n libasan-32bit -p /sbin/ldconfig - -%package -n liblsan-32bit -Summary: The GNU Compiler Address Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n liblsan-32bit -The runtime library needed to run programs compiled with the --fsanitize=leak option of the GNU Compiler Collection (GCC). -%post -n liblsan-32bit -p /sbin/ldconfig -%postun -n liblsan-32bit -p /sbin/ldconfig - -%package -n libtsan-32bit -Summary: The GNU Compiler Thread Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libtsan-32bit -The runtime library needed to run programs compiled with the --fsanitize=thread option of the GNU Compiler Collection (GCC). -%post -n libtsan-32bit -p /sbin/ldconfig -%postun -n libtsan-32bit -p /sbin/ldconfig - -%package -n libatomic-32bit -Summary: The GNU Compiler Atomic Operations Runtime Library -License: GPL-3.0-with-GCC-exception -Group: Development/Languages -%description -n libatomic-32bit -The runtime library for atomic operations of the GNU Compiler Collection (GCC). -%post -n libatomic-32bit -p /sbin/ldconfig -%postun -n libatomic-32bit -p /sbin/ldconfig - -%package -n libubsan-32bit -Summary: The GNU Compiler Undefined Sanitizer Runtime Library -License: MIT -Group: Development/Languages -%description -n libubsan-32bit -The runtime library needed to run programs compiled with the --fsanitize=undefined option of the GNU Compiler Collection (GCC). -%post -n libubsan-32bit -p /sbin/ldconfig -%postun -n libubsan-32bit -p /sbin/ldconfig - -%package -n libvtv-32bit -Summary: The GNU Compiler Vtable Verifier Runtime Library -License: MIT -Group: Development/Languages -%description -n libvtv-32bit -The runtime library needed to run programs compiled with the --fvtable-verify option of the GNU Compiler Collection (GCC). -%post -n libvtv-32bit -p /sbin/ldconfig -%postun -n libvtv-32bit -p /sbin/ldconfig - -%package -n libffi-32bit -Summary: Foreign Function Interface library -License: BSD-3-Clause -Group: Development/Building -%description -n libffi-32bit -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. -%post -n libffi-32bit -p /sbin/ldconfig -%postun -n libffi-32bit -p /sbin/ldconfig - -%package -n libffi-devel-32bit -Summary: Foreign Function Interface library development files -License: BSD 3-Clause -Group: Development/Building -%description -n libffi-devel-32bit -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. - -%package go-32bit -Summary: GNU Go Compiler -License: GPL-3.0+ -Group: Development/Languages -%description go-32bit -This package contains a Go compiler and associated development -files based on the GNU GCC technology. - -%package -n libgo-32bit -Summary: GNU Go compiler runtime library -License: BSD-3-Clause -Group: Development/Languages -%description -n libgo-32bit -A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language. -%post -n libgo-32bit -p /sbin/ldconfig -%postun -n libgo-32bit -p /sbin/ldconfig - -%package plugin-devel -Summary: GNU GCC Plugin development files -License: GPL-3.0+ -Group: Development/Languages -%description plugin-devel -This package contains GCC Plugin development files needed for compiler -plugins build. - -%package -n sanitizer-sources -Summary: Sanitizer family tools sources -License: MIT -Group: Development/Tools -BuildArch: noarch - -%description -n sanitizer-sources -Sanitizer family tools sources for external tools. - -%{!?cross: -%package devel-static -Summary: GNU GCC static libraries -License: GPL-3.0+ -Group: Development/Languages -%description devel-static -This package contains static libraries from GCC -} - -%{?gcc_dump_configure: -%package configure-dump -Summary: GNU GCC configure dump -License: GPL-3.0+ -Group: Development/Languages -%description configure-dump -This package contains dump of configure variables of GCC -} - -%prep -%setup -q -n gcc-%{version} -cp %{SOURCE20} . - -tar xf %{SOURCE10} -ln -sf gmp-6.1.2 gmp -cp -f %{SOURCE30} gmp/ -chmod 755 gmp/config.sub -tar xf %{SOURCE11} -ln -sf mpfr-4.0.2 mpfr -cp -f %{SOURCE30} mpfr/ -chmod 755 mpfr/config.sub -tar xf %{SOURCE12} -ln -sf mpc-1.1.0 mpc -cp -f %{SOURCE30} mpc/ -chmod 755 mpc/config.sub -tar xf %{SOURCE13} -ln -sf isl-0.22 isl -cp -f %{SOURCE30} isl/ -chmod 755 isl/config.sub - -%global gcc_datestamp `sed -e 's/^.*-//g' %{_builddir}/gcc-%{version}/gcc/DATESTAMP` - -%build -%{?asan: -%gcc_unforce_options -%ifarch armv7l -RPM_OPT_FLAGS="$RPM_OPT_FLAGS -mthumb -mthumb-fp -Wa,-mimplicit-it=thumb -fasynchronous-unwind-tables" -%endif -} -%{?hwasan: -%gcc_unforce_options -} -%{!?gcc_keep_build_dir: -rm -rf obj -mkdir obj -} - -RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g' -e 's/-fexceptions//' -e 's/\([[:space:]]\+.*-D_FORTIFY_SOURCE=\)[[:alnum:]]\+/\10/g' -RPM_OPT_FLAGS="$RPM_OPT_FLAGS -D__USE_FORTIFY_LEVEL=0"` -RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-fstack-protector-strong/} -RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-fstack-protector/} - -%{?cross: -RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'` -RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(sse\|fpmath\)[^ ]*//g'` -} -RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/ */ /g'` - -# -Wall is stripped off now, so -Wformat will not turn on implicitly for -# "-Wformat-.." option group, causing additional build warnings and testsuite -# FAIL ("test for excess errors" type). -# Insert "-Wformat" if we find "-Wformat-..." -if [ ! -z "$(echo $RPM_OPT_FLAGS | grep -o "\B\-Wformat\-")" ]; then - if [ -z "$(echo $RPM_OPT_FLAGS | grep -Po "\B\-Wformat(\s|\Z)")" ]; then - RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e "s/-Wformat-/-Wformat -Wformat-/") - fi -fi - -%{?asan: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -DASAN_INIT_FIRST) } -%{?asan_shadow_scale: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -Wp,-DASAN_SHADOW_SCALE=%{asan_shadow_scale})} - -%ifarch armv7l armv7hl aarch64 riscv64 -%undefine gcc_profiledbootstrap -%endif - -%ifarch %arm -## Support DA build with armv8 cpu in 32bit mode: prevent Werror on sqrt function -# Extract current march -cur_arch=$(echo ${RPM_OPT_FLAGS} | sed -e 's/.*-march=\([^[:space:]]\+\).*/\1/') -# And apply it to libatomic to prevent conflict -(echo ${RPM_OPT_FLAGS} | grep '\-march=armv8') && \ - sed -e "/@ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS/s/-march=[^[:space:]]\+/-march=${cur_arch}/" -i libatomic/Makefile.in -%endif - -cd obj - -%{!?gcc_skip_configure: -%{?gcc_dump_configure:patch_configure.pl ..} # Add debug prints into configure -CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \ -TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS" \ -../configure \ - --prefix=%{_prefix} \ - --infodir=%{_infodir} \ - --mandir=%{_mandir} \ - --libdir=%{libdir} \ - --libexecdir=%{libdir} \ - --enable-languages=c,c++,fortran \ - --enable-checking=release \ - --disable-libssp \ - %{!?gcc_profiledbootstrap:--disable-bootstrap} \ - --disable-libvtv \ - --enable-plugin \ - --disable-libcc1 \ - --disable-libgcj \ - --with-slibdir=%{libdir} \ - --with-system-zlib \ - --with-sysroot=/ \ - --enable-__cxa_atexit \ - --enable-libstdcxx-allocator=new \ - --enable-version-specific-runtime-libs \ - --enable-linker-build-id \ - --without-system-libunwind \ - --enable-threads=posix \ - --disable-multilib \ - --enable-lto \ -%{!?cross: \ - --enable-libcc1 \ - --enable-libgfortran \ - %{?asanbootstrap:--enable-bootstrap --with-build-config=bootstrap-asan} \ -%ifarch armv7l - --with-arch=armv7-a \ - --with-tune=cortex-a8 \ - --disable-sjlj-exceptions \ -%endif -%ifarch armv7hl - --with-arch=armv7-a+fp \ - --with-tune=cortex-a8 \ - --with-fpu=neon \ - --disable-sjlj-exceptions \ - --with-float=hard \ -%endif -%ifarch aarch64 - --with-arch=armv8-a \ - --disable-sjlj-exceptions \ -%endif -%ifarch %ix86 - --with-arch-32=i586 \ - --with-tune=generic \ - --disable-libmpx \ -%endif -%ifarch x86_64 - --with-arch-32=i586 \ - --with-tune=generic \ - --enable-multilib \ - --disable-libmpx \ -%endif -} \ -%{?cross: \ -%{?armv7l: \ - --with-arch=armv7-a \ - --with-tune=cortex-a8 \ - --disable-sjlj-exceptions \ -} \ -%{?armv7hl: \ - --with-arch=armv7-a+fp \ - --with-tune=cortex-a8 \ - --with-fpu=neon \ - --disable-sjlj-exceptions \ - --with-float=hard \ -} \ -%{?aarch64: \ - --with-arch=armv8-a \ - --disable-sjlj-exceptions \ -} \ - --disable-libgcc \ - --disable-libgfortran \ - --disable-libquadmath \ - --disable-libgomp \ - --disable-libatomic \ - --disable-libstdc++-v3 \ - --disable-libsanitizer \ - --disable-libitm \ -} \ - --with-bugurl="http://bugs.tizen.org/" \ - --with-pkgversion="Tizen GCC %{version} %{gcc_datestamp} %{release}" \ - --target=%{target_arch} \ - --host=%{host_arch} \ - --build=%{host_arch} -} - -%{!?gcc_skip_make: -make BOOT_CFLAGS="$RPM_OPT_FLAGS" %{?_smp_mflags} %{!?cross:%{?gcc_profiledbootstrap:profiledbootstrap}} -%{?gcc_dump_configure: - dump_configure.pl .. . \ - --project gcc \ - --project-version %{version} \ - --out_db gcc-%{version}-%{release}-%_project-%_repository.db - } -} - -%{?gcc_exit_on_make_finish: - exit 1 -} - -%{?gcc_run_tests: - echo "Run testsuite" - # asan needs a whole shadow address space - ulimit -v unlimited || true - make -k check %{?_smp_mflags} || true - mkdir ../testresults - ../contrib/test_summary | tee ../testresults/test_summary.txt - for tool in $(find -name '*.sum' -exec basename {} \; | sort -u | sed -e 's/.sum//'); do - ../contrib/dg-extract-results.sh -t $tool $(find -name '*.sum') | tee -a ../testresults/test_summary.txt - done -} - -%install -cd obj - -make install DESTDIR=$RPM_BUILD_ROOT - -%{?gcc_dump_configure: - install -D -m 0644 gcc-%{version}-%{release}-%_project-%_repository.db %{buildroot}%{_datadir}/gcc-%{version}-%{release}-%_project-%_repository.db -} - -%{?gcc_run_tests: - find . \( -name "*.sum" -o -name "*.log" -a \! -name "config.log" \) -exec tar -rf testresults.tar {} \; - mkdir -p ../testresults && tar -xf testresults.tar -C ../testresults - find ../testresults/ -type f -exec chmod 644 {} \; -} - -%{remove_docs} -rm -rf %{buildroot}/%{_datadir}/locale - -#remove everything we don't need -rm -rf %{buildroot}/%{libsubdir}/install-tools -find %{buildroot}/ -name "*.la" -delete - -%{!?cross: -ln -s gcc %{buildroot}%{_bindir}/cc -mv %{buildroot}%{libsubdir}/libstdc++.so*-gdb.py %{buildroot}%{_datadir}/gcc-%{version}/python/libstdcxx/ - -# expose plugins for ar (required for lto builds) -mkdir -p %{buildroot}%{_prefix}/lib/bfd-plugins -ln -sf %{libsubdir}/liblto_plugin.so %{buildroot}%{_prefix}/lib/bfd-plugins/liblto_plugin.so - -# legacy preprocessor -mkdir -p %{buildroot}/lib -ln -s %{_bindir}/cpp %{buildroot}/lib/cpp - -# 32-bit libgcc in multilib configuration -%ifarch x86_64 -mv %{buildroot}%{_prefix}/lib/libgcc_s.so* %{buildroot}%{libsubdir}/32/ -%endif - -# move libraries to libdir -for lib in asan asansi hwasan atomic gfortran gomp cc1 itm lsan quadmath stdc++ supc++ tsan ubsan -do - [ -e %{buildroot}%{libsubdir}/lib$lib.a ] && mv %{buildroot}%{libsubdir}/lib$lib.a %{buildroot}%{libdir}/ - [ -e %{buildroot}%{libsubdir}/lib$lib.so ] && mv %{buildroot}%{libsubdir}/lib$lib.so* %{buildroot}%{libdir}/ -done -} - -%{?cross: -rm -rf %{buildroot}/%{libsubdir}/include-fixed -rm -rf %{buildroot}/%{libsubdir}/include -} - -%{!?cross: -cd ../ -tar -czf libsanitizer.tar.bz libsanitizer -mkdir -p %{buildroot}/src -mv -v libsanitizer.tar.bz %{buildroot}/src -} - -%files -%manifest gcc.manifest -%defattr(-,root,root) -%{?cross: -%{_bindir}/* -%{libsubdir}/* -} -%{!?cross: -%{_bindir}/gcc -%{_bindir}/cc -%{_bindir}/gcov -%{_bindir}/gcov-dump -%{_bindir}/gcov-tool -%{_bindir}/gcc-ar -%{_bindir}/gcc-nm -%{_bindir}/gcc-ranlib -%{_bindir}/%{target_arch}-gcc -%{_bindir}/%{target_arch}-gcc-%{version} -%{_bindir}/%{target_arch}-gcc-ar -%{_bindir}/%{target_arch}-gcc-nm -%{_bindir}/%{target_arch}-gcc-ranlib -%{libsubdir}/collect2 -%{libsubdir}/lto1 -%{libsubdir}/lto-wrapper -%{libsubdir}/liblto_plugin.so* -%{_prefix}/lib/bfd-plugins/liblto_plugin.so -%{libsubdir}/include-fixed/* -%{libsubdir}/include/*.h -%{libsubdir}/*.so -%{libsubdir}/*.o -%{libsubdir}/*.spec -%{libdir}/*.so -%{libsubdir}/include/sanitizer/* -%ifarch %asan_arch -%exclude %{libdir}/libasan.so -%exclude %{libdir}/libasansi.so -%endif -%ifarch %hwasan_arch -%exclude %{libdir}/libhwasan.so -%endif -%ifarch %lsan_arch -%exclude %{libdir}/liblsan.so -%endif -%ifarch %tsan_arch -%exclude %{libdir}/libtsan.so -%endif - -%files c++ -%defattr(-,root,root) -%{libsubdir}/cc1plus -%{_bindir}/g++ -%{_bindir}/c++ -%{_bindir}/%{target_arch}-g++ -%{_bindir}/%{target_arch}-c++ - -%files -n libstdc++ -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libdir}/libstdc++.so.* - -%files -n libstdc++-devel -%defattr(-,root,root) -%{libdir}/libstdc++.so -%{libdir}/libstdc++.a -%{libdir}/libsupc++.a -%{libsubdir}/include/c++/* -%{libsubdir}/libstdc++fs.a -%{_datadir}/gcc-%{version}/python/libstdcxx/* -%ifarch x86_64 -%{libsubdir}/32/libstdc++.a -%{libsubdir}/32/libsupc++.a -%{libsubdir}/32/libstdc++fs.a -%endif - -%files -n libgcc -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libdir}/libgcc_s.so.* -%{libsubdir}/libgcc.a -%{libsubdir}/libgcc_eh.a -%{libsubdir}/libgcov.a - -%files -n libgomp -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libdir}/libgomp.so.* - -%files -n libcc1 -%manifest gcc.manifest -%defattr(-,root,root) -%{libdir}/libcc1.so.* - -%ifarch %asan_arch -%files -n libasan -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libdir}/libasan.so* -%{libdir}/libasansi.so* -%endif - -%ifarch %hwasan_arch -%files -n libhwasan -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libdir}/libhwasan.so* -%endif - -%ifarch %lsan_arch -%files -n liblsan -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libdir}/liblsan.so* -%endif - -%ifarch %tsan_arch -%files -n libtsan -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libdir}/libtsan.so* -%endif - -%ifarch %atomic_arch -%files -n libatomic -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libdir}/libatomic.so.* -%endif - -%ifarch %itm_arch -%files -n libitm -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libdir}/libitm.so.* -%endif - -%ifarch %ubsan_arch -%files -n libubsan -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libdir}/libubsan.so.* -%endif - -%files fortran -%defattr(-,root,root) -%dir %{libsubdir}/finclude -%{_bindir}/gfortran -%{_bindir}/%{target_arch}-gfortran -%{libsubdir}/f951 -%{libsubdir}/finclude/* -%{libdir}/libgfortran.a -%{libdir}/libgfortran.so -%{libsubdir}/libgfortran.spec -%{libsubdir}/libcaf_single.a -%ifarch %quadmath_arch -%{libdir}/libquadmath.a -%{libdir}/libquadmath.so -%endif - -%files -n libgfortran -%defattr(-,root,root) -%{libdir}/libgfortran.so.* - -%ifarch %quadmath_arch -%files -n libquadmath -%manifest gcc.manifest -%license COPYING.LIB -%defattr(-,root,root) -%{libdir}/libquadmath.so.* -%{libdir}/libquadmath.a -%endif - -%files -n cpp -%defattr(-,root,root) -%{_bindir}/cpp -%{libsubdir}/cc1 -/lib/cpp - -%files plugin-devel -%defattr(-,root,root) -%{libsubdir}/plugin/* - -%ifarch x86_64 -%files -n gcc-32bit -%defattr(-,root,root) -%{libsubdir}/32/crt* -%{libsubdir}/32/*.a -%{libsubdir}/32/*.so -%{libsubdir}/32/*.o -%{libsubdir}/32/*.spec - -%ifarch %asan_arch -%files -n libasan-32bit -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libsubdir}/32/libasan.so.* -%{libsubdir}/32/libasansi.so.* -%endif - -%ifarch %lsan_arch -%files -n liblsan-32bit -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libsubdir}/32/liblsan.so.* -%endif - -%ifarch %atomic_arch -%files -n libatomic-32bit -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libsubdir}/32/libatomic.so.* -%endif - -%files -n libgcc-32bit -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libsubdir}/32/libgcc_s.so.* -%{libsubdir}/32/libgcc.a -%{libsubdir}/32/libgcc_eh.a -%{libsubdir}/32/libgcov.a - -%files -n libgomp-32bit -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libsubdir}/32/libgomp.so.* - -%ifarch %itm_arch -%files -n libitm-32bit -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libsubdir}/32/libitm.so.* -%endif - -%files -n libgfortran-32bit -%defattr(-,root,root) -%dir %{libsubdir}/32/finclude -%{libsubdir}/32/libgfortran.so.* -%{libsubdir}/32/finclude/* - -%ifarch %quadmath_arch -%files -n libquadmath-32bit -%license COPYING.LIB -%defattr(-,root,root) -%{libsubdir}/32/libquadmath.so.* -%{libsubdir}/32/libquadmath.a -%endif - -%ifarch %ubsan_arch -%files -n libubsan-32bit -%manifest gcc.manifest -%license libsanitizer/LICENSE.TXT -%defattr(-,root,root) -%{libsubdir}/32/libubsan.so.* -%endif - -%files -n libstdc++-32bit -%manifest gcc.manifest -%license COPYING3 COPYING.RUNTIME -%defattr(-,root,root) -%{libsubdir}/32/libstdc++.so.* -%exclude %{libsubdir}/32/libstdc++.so.*-gdb.py - -%files -n libstdc++-devel-32bit -%defattr(-,root,root) -%{libsubdir}/32/libstdc++.so.*-gdb.py -%endif - -%files -n sanitizer-sources -%defattr(-,root,root,-) -/src/libsanitizer.tar.bz -} - -%{!?cross: -%files devel-static -%manifest gcc.manifest -%license COPYING.LIB -%defattr(-,root,root) -%{libdir}/libgomp.a -%ifarch %itm_arch -%{libdir}/libitm.a -%endif -%ifarch %asan_arch -%{libdir}/libasan.a -%{libdir}/libasansi.a -%endif -%ifarch %hwasan_arch -%{libdir}/libhwasan.a -%endif -%ifarch %lsan_arch -%{libdir}/liblsan.a -%endif -%ifarch %ubsan_arch -%{libdir}/libubsan.a -%endif -%ifarch %tsan_arch -%{libdir}/libtsan.a -%endif -%{libdir}/libatomic.a -%{libsubdir}/libcaf_single.a -%ifarch %x86_64 -%{libsubdir}/32/libgomp.a -%ifarch %itm_arch -%{libsubdir}/32/libitm.a -%endif -%ifarch %asan_arch -%{libsubdir}/32/libasan.a -%{libsubdir}/32/libasansi.a -%endif -%ifarch %lsan_arch -%{libsubdir}/32/liblsan.a -%endif -%ifarch %ubsan_arch -%{libsubdir}/32/libubsan.a -%endif -%{libsubdir}/32/libatomic.a -%{libsubdir}/32/libcaf_single.a -%endif -} - -%{?gcc_run_tests: -%files testresults -%defattr(-,root,root) -%doc testresults/test_summary.txt -%doc testresults/ -} - -%{?gcc_dump_configure: -%files configure-dump -%manifest gcc.manifest -%{_datadir}/gcc-%{version}-%{release}-%_project-%_repository.db -} - -%changelog diff --git a/packaging/gcc.spec b/packaging/gcc.spec index b2728f00efb..4a4b04f704f 100644 --- a/packaging/gcc.spec +++ b/packaging/gcc.spec @@ -61,16 +61,13 @@ %define quadmath_arch %ix86 x86_64 ia64 %define tsan_arch x86_64 aarch64 -%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 riscv64 +%define asan_arch x86_64 %ix86 ppc ppc64 %sparc %arm aarch64 %define itm_arch x86_64 %ix86 %arm ppc ppc64 ppc64le s390 s390x %sparc aarch64 -%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k riscv64 +%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k %define lsan_arch x86_64 %ix86 %arm aarch64 -%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 riscv64 +%define ubsan_arch x86_64 %ix86 ppc ppc64 %arm aarch64 %define hwasan_arch aarch64 -%ifarch riscv64 -%define ARCH riscv64 -%endif %ifarch armv7l %define ARCH armv7l %define ABI eabi @@ -94,7 +91,7 @@ %define target_abi %{?cross:%{?armv7l:eabi}%{?armv7hl:eabihf}}%{!?cross:%{?ABI}} %define target_arch %{target_cpu}-tizen-linux-gnu%{?target_abi} -%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}%{?riscv64:64}} +%define libdir %{!?cross:%{_libdir}}%{?cross:%{_prefix}/lib%{?aarch64:64}} %define libsubdir %{libdir}/gcc/%{target_arch}/%{version} Name: gcc%{?cross:-%{cross}} @@ -764,7 +761,7 @@ fi %{?asan: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -DASAN_INIT_FIRST) } %{?asan_shadow_scale: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -Wp,-DASAN_SHADOW_SCALE=%{asan_shadow_scale})} -%ifarch armv7l armv7hl aarch64 riscv64 +%ifarch armv7l armv7hl aarch64 %undefine gcc_profiledbootstrap %endif diff --git a/packaging/pre_checkin.sh b/packaging/pre_checkin.sh index 36db0e113a9..629435b2039 100755 --- a/packaging/pre_checkin.sh +++ b/packaging/pre_checkin.sh @@ -1,7 +1,7 @@ #!/bin/bash # the script takes gcc.spec and creates the gcc-* packages -for arch in riscv64 armv7l armv7hl aarch64; do +for arch in armv7l armv7hl aarch64; do echo -n "Building package for $arch --> gcc-$arch ..." |