From c6e7f20cfff077898228fb72fc4d28e3dd84e979 Mon Sep 17 00:00:00 2001 From: Andrey Bondrov Date: Tue, 30 Aug 2016 18:10:46 +1000 Subject: [PATCH] New version 5.3.1 (2016.05) Add new files and subpackages --- .abf.yml | 2 +- gcc-4.7-androidcompat.patch | 168 ---------------------- gcc-4.7.1-extern-inline-not-inlined.patch | 26 ---- gcc-4.7.3-texinfo-5.0.patch | 88 ------------ gcc-4.9-aarch64-ld-path.patch | 12 -- gcc-4.9-lto-names-reproduce.patch | 45 ------ gcc-5.3-aarch64-ld-path.patch | 12 ++ gcc.spec | 102 ++++++++----- 8 files changed, 83 insertions(+), 372 deletions(-) delete mode 100644 gcc-4.7-androidcompat.patch delete mode 100644 gcc-4.7.1-extern-inline-not-inlined.patch delete mode 100644 gcc-4.7.3-texinfo-5.0.patch delete mode 100644 gcc-4.9-aarch64-ld-path.patch delete mode 100644 gcc-4.9-lto-names-reproduce.patch create mode 100644 gcc-5.3-aarch64-ld-path.patch diff --git a/.abf.yml b/.abf.yml index d4473e7..b03e00d 100644 --- a/.abf.yml +++ b/.abf.yml @@ -1,3 +1,3 @@ sources: gcc-x32-seed.tar.xz: c656c8f0d0f17a94f0a21ec65ba6633b56e6ea47 - gcc-linaro-4.9-2014.08.tar.xz: f4377a752b39dfd371f7ebf5c47d7d893077894c + gcc-linaro-5.3-2016.05.tar.xz: 9fa9f261af3a434218a5a60fd1edfbb5e436b971 diff --git a/gcc-4.7-androidcompat.patch b/gcc-4.7-androidcompat.patch deleted file mode 100644 index 59e0e3f..0000000 --- a/gcc-4.7-androidcompat.patch +++ /dev/null @@ -1,168 +0,0 @@ ---- gcc-linaro-4.7-2012.12/gcc/config/linux-android.h.bero 2013-01-03 20:39:55.843625931 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/config/linux-android.h 2013-01-03 20:40:20.059328679 +0100 -@@ -47,7 +47,8 @@ - - #define ANDROID_CC1PLUS_SPEC \ - "%{!fexceptions:%{!fno-exceptions: -fno-exceptions}} " \ -- "%{!frtti:%{!fno-rtti: -fno-rtti}}" -+ "%{!frtti:%{!fno-rtti: -fno-rtti}}" \ -+ "%{!nostdinc: -isystem /system/include/stlport}" - - #define ANDROID_LIB_SPEC \ - "%{!static: -ldl}" ---- gcc-linaro-4.7-2012.12/gcc/cp/g++spec.c.bero 2013-01-03 20:40:43.748037236 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/cp/g++spec.c 2013-01-03 20:53:42.716591603 +0100 -@@ -326,6 +326,17 @@ lang_specific_driver (struct cl_decoded_ - CL_DRIVER, &new_decoded_options[j]); - added_libraries++; - j++; -+ -+ /* For Android targets, we need to add STLport as well */ -+ if (OPTION_BIONIC) -+ { -+ generate_option (OPT_l, -+ "stlport", 1, -+ CL_DRIVER, &new_decoded_options[j]); -+ added_libraries++; -+ j++; -+ } -+ - /* Add target-dependent static library, if necessary. */ - if ((static_link || library > 1) && LIBSTDCXX_STATIC != NULL) - { ---- gcc-linaro-4.7-2012.12/libgomp/env.c.bero 2013-01-03 20:36:51.015887023 +0100 -+++ gcc-linaro-4.7-2012.12/libgomp/env.c 2013-01-03 20:37:06.466697110 +0100 -@@ -44,6 +44,9 @@ - #endif - #include - #include -+#ifdef __BIONIC__ -+# include -+#endif - - #ifndef HAVE_STRTOULL - # define strtoull(ptr, eptr, base) strtoul (ptr, eptr, base) ---- gcc-linaro-4.7-2012.12/libitm/config/arm/hwcap.cc.bero 2013-01-03 20:37:52.578142933 +0100 -+++ gcc-linaro-4.7-2012.12/libitm/config/arm/hwcap.cc 2013-01-03 20:39:35.144880430 +0100 -@@ -40,7 +40,19 @@ int GTM_hwcap HIDDEN = 0 - - #ifdef __linux__ - #include -+#ifdef __BIONIC__ -+# include -+/* copied from glibc elf.h */ -+typedef struct -+{ -+ uint32_t a_type; -+ union { -+ uint32_t a_val; -+ } a_un; -+} Elf32_auxv_t; -+#else - #include -+#endif - #include - - static void __attribute__((constructor)) ---- gcc-linaro-4.7-2012.12/gcc/ada/adaint.c.bero 2013-01-03 21:51:28.736271162 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/adaint.c 2013-01-03 21:51:56.500929635 +0100 -@@ -88,8 +88,7 @@ extern "C" { - #include - #endif - --#ifdef __vxworks --/* S_IREAD and S_IWRITE are not defined in VxWorks */ -+/* S_IREAD and S_IWRITE are not defined in VxWorks and Bionic */ - #ifndef S_IREAD - #define S_IREAD (S_IRUSR | S_IRGRP | S_IROTH) - #endif -@@ -97,7 +96,6 @@ extern "C" { - #ifndef S_IWRITE - #define S_IWRITE (S_IWUSR) - #endif --#endif - - /* We don't have libiberty, so use malloc. */ - #define xmalloc(S) malloc (S) ---- gcc-linaro-4.7-2012.12/gcc/ada/cio.c.bero 2013-01-03 21:53:30.644782736 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/cio.c 2013-01-03 21:55:05.819624130 +0100 -@@ -50,9 +50,12 @@ extern "C" { - #undef putchar - #undef getchar - #undef fputc -+/* With Bionic, the defines are needed */ -+#ifndef __BIONIC__ - #undef stderr - #undef stdout - #endif -+#endif - - /* Don't use macros versions of this functions on VxWorks since they cause - imcompatible changes in some VxWorks versions */ ---- gcc-linaro-4.7-2012.12/gcc/ada/cstreams.c.bero 2013-01-03 21:55:38.052239782 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/cstreams.c 2013-01-03 21:56:05.931897060 +0100 -@@ -54,9 +54,9 @@ extern "C" { - #include - #endif - --#ifdef linux -+#if defined(linux) && !defined(__BIONIC__) - /* Don't use macros on GNU/Linux since they cause incompatible changes between -- glibc 2.0 and 2.1 */ -+ glibc 2.0 and 2.1. However, they're needed with Bionic */ - - #ifdef stderr - # undef stderr ---- gcc-linaro-4.7-2012.12/gcc/ada/errno.c.bero 2013-01-03 21:56:45.267425593 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/errno.c 2013-01-03 21:57:27.283910081 +0100 -@@ -59,8 +59,11 @@ __get_errno(void) - return errno; - } - -+/* Bionic has (and exports) __set_errno */ -+#ifndef __BIONIC__ - void - __set_errno(int err) - { - errno = err; - } -+#endif ---- gcc-linaro-4.7-2012.12/gcc/ada/init.c.bero 2013-01-03 21:58:05.541450019 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/init.c 2013-01-03 22:00:21.972768337 +0100 -@@ -541,7 +541,9 @@ __gnat_install_handler (void) - #include - - #define __USE_GNU 1 /* required to get REG_EIP/RIP from glibc's ucontext.h */ -+#ifndef __BIONIC__ - #include -+#endif - - /* GNU/Linux, which uses glibc, does not define NULL in included - header files. */ ---- gcc-linaro-4.7-2012.12/gcc/ada/socket.c.bero 2013-01-03 22:01:05.141250301 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/socket.c 2013-01-03 22:02:26.076257162 +0100 -@@ -33,6 +33,11 @@ - - #include "gsocket.h" - -+#ifdef __BIONIC__ -+/* for fd_set */ -+#include -+#endif -+ - #ifdef VMS - /* - * For VMS, gsocket.h can't include sockets-related DEC C header files ---- gcc-linaro-4.7-2012.12/gcc/ada/terminals.c.bero 2013-01-03 22:03:05.500782769 +0100 -+++ gcc-linaro-4.7-2012.12/gcc/ada/terminals.c 2013-01-03 22:05:03.189337762 +0100 -@@ -1015,6 +1015,10 @@ __gnat_setup_winsize (void *desc, int ro - # include - #endif - -+#ifndef _POSIX_VDISABLE /* Bionic */ -+#define _POSIX_VDISABLE '\0' -+#endif -+ - #define CDISABLE _POSIX_VDISABLE - - /* On HP-UX and Sun system, there is a bzero function but with a different diff --git a/gcc-4.7.1-extern-inline-not-inlined.patch b/gcc-4.7.1-extern-inline-not-inlined.patch deleted file mode 100644 index ca6815f..0000000 --- a/gcc-4.7.1-extern-inline-not-inlined.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- gcc-linaro-4.7-2012.07/gcc/c-decl.c.ext_inline~ 2012-08-20 12:47:13.151991184 +0200 -+++ gcc-linaro-4.7-2012.07/gcc/c-decl.c 2012-08-20 12:47:17.172051876 +0200 -@@ -1854,21 +1854,10 @@ diagnose_mismatched_decls (tree newdecl, - { - if (DECL_INITIAL (olddecl)) - { -- /* If both decls are in the same TU and the new declaration -- isn't overriding an extern inline reject the new decl. -+ /* If both decls are in the same TU reject the new decl. - In c99, no overriding is allowed in the same translation - unit. */ -- if ((!DECL_EXTERN_INLINE (olddecl) -- || DECL_EXTERN_INLINE (newdecl) -- || (!flag_gnu89_inline -- && (!DECL_DECLARED_INLINE_P (olddecl) -- || !lookup_attribute ("gnu_inline", -- DECL_ATTRIBUTES (olddecl))) -- && (!DECL_DECLARED_INLINE_P (newdecl) -- || !lookup_attribute ("gnu_inline", -- DECL_ATTRIBUTES (newdecl)))) -- ) -- && same_translation_unit_p (newdecl, olddecl)) -+ if (same_translation_unit_p (newdecl, olddecl)) - { - error ("redefinition of %q+D", newdecl); - locate_old_decl (olddecl); diff --git a/gcc-4.7.3-texinfo-5.0.patch b/gcc-4.7.3-texinfo-5.0.patch deleted file mode 100644 index 68bc948..0000000 --- a/gcc-4.7.3-texinfo-5.0.patch +++ /dev/null @@ -1,88 +0,0 @@ ---- gcc-linaro-4.7-2013.03/gcc/doc/cppopts.texi.bero 2013-03-13 16:07:35.811992222 +0100 -+++ gcc-linaro-4.7-2013.03/gcc/doc/cppopts.texi 2013-03-13 16:07:39.708943504 +0100 -@@ -803,7 +803,7 @@ Replacement: [ ] @{ @} - Enable special code to work around file systems which only permit very - short file names, such as MS-DOS@. - --@itemx --help -+@item --help - @itemx --target-help - @opindex help - @opindex target-help ---- gcc-linaro-4.7-2013.03/gcc/doc/generic.texi.bero 2013-03-13 16:09:32.788529814 +0100 -+++ gcc-linaro-4.7-2013.03/gcc/doc/generic.texi 2013-03-13 16:09:39.173449992 +0100 -@@ -1415,13 +1415,13 @@ generate these expressions anyhow, if it - not matter. The type of the operands and that of the result are - always of @code{BOOLEAN_TYPE} or @code{INTEGER_TYPE}. - --@itemx POINTER_PLUS_EXPR -+@item POINTER_PLUS_EXPR - This node represents pointer arithmetic. The first operand is always - a pointer/reference type. The second operand is always an unsigned - integer type compatible with sizetype. This is the only binary - arithmetic operand that can operate on pointer types. - --@itemx PLUS_EXPR -+@item PLUS_EXPR - @itemx MINUS_EXPR - @itemx MULT_EXPR - These nodes represent various binary arithmetic operations. ---- gcc-linaro-4.7-2013.03/gcc/doc/invoke.texi.bero 2013-03-13 15:56:10.148564195 +0100 -+++ gcc-linaro-4.7-2013.03/gcc/doc/invoke.texi 2013-03-13 16:07:24.538133165 +0100 -@@ -5190,8 +5190,8 @@ thus dbg_cnt() returns true always unles - e.g. With -fdbg-cnt=dce:10,tail_call:0 - dbg_cnt(dce) will return true only for first 10 invocations - --@itemx -fenable-@var{kind}-@var{pass} --@itemx -fdisable-@var{kind}-@var{pass}=@var{range-list} -+@item -fenable-@var{kind}-@var{pass} -+@item -fdisable-@var{kind}-@var{pass}=@var{range-list} - @opindex fdisable- - @opindex fenable- - -@@ -5338,11 +5338,11 @@ Dump after duplicating the computed goto - @option{-fdump-rtl-ce3} enable dumping after the three - if conversion passes. - --@itemx -fdump-rtl-cprop_hardreg -+@item -fdump-rtl-cprop_hardreg - @opindex fdump-rtl-cprop_hardreg - Dump after hard register copy propagation. - --@itemx -fdump-rtl-csa -+@item -fdump-rtl-csa - @opindex fdump-rtl-csa - Dump after combining stack adjustments. - -@@ -5353,11 +5353,11 @@ Dump after combining stack adjustments. - @option{-fdump-rtl-cse1} and @option{-fdump-rtl-cse2} enable dumping after - the two common sub-expression elimination passes. - --@itemx -fdump-rtl-dce -+@item -fdump-rtl-dce - @opindex fdump-rtl-dce - Dump after the standalone dead code elimination passes. - --@itemx -fdump-rtl-dbr -+@item -fdump-rtl-dbr - @opindex fdump-rtl-dbr - Dump after delayed branch scheduling. - -@@ -5402,7 +5402,7 @@ Dump after the initialization of the reg - @opindex fdump-rtl-initvals - Dump after the computation of the initial value sets. - --@itemx -fdump-rtl-into_cfglayout -+@item -fdump-rtl-into_cfglayout - @opindex fdump-rtl-into_cfglayout - Dump after converting to cfglayout mode. - -@@ -5432,7 +5432,7 @@ Dump after removing redundant mode switc - @opindex fdump-rtl-rnreg - Dump after register renumbering. - --@itemx -fdump-rtl-outof_cfglayout -+@item -fdump-rtl-outof_cfglayout - @opindex fdump-rtl-outof_cfglayout - Dump after converting from cfglayout mode. - diff --git a/gcc-4.9-aarch64-ld-path.patch b/gcc-4.9-aarch64-ld-path.patch deleted file mode 100644 index 286c514..0000000 --- a/gcc-4.9-aarch64-ld-path.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN gcc-linaro-4.9-2014.07/gcc/config/aarch64/aarch64-linux.h gcc-linaro-4.9-2014.07-patched/gcc/config/aarch64/aarch64-linux.h ---- gcc-linaro-4.9-2014.07/gcc/config/aarch64/aarch64-linux.h 2014-07-17 02:45:43.000000000 +1100 -+++ gcc-linaro-4.9-2014.07-patched/gcc/config/aarch64/aarch64-linux.h 2014-07-18 17:31:37.751914799 +1100 -@@ -21,7 +21,7 @@ - #ifndef GCC_AARCH64_LINUX_H - #define GCC_AARCH64_LINUX_H - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#define GLIBC_DYNAMIC_LINKER "/lib64/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" - - #define CPP_SPEC "%{pthread:-D_REENTRANT}" - diff --git a/gcc-4.9-lto-names-reproduce.patch b/gcc-4.9-lto-names-reproduce.patch deleted file mode 100644 index 2a35be7..0000000 --- a/gcc-4.9-lto-names-reproduce.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- a/gcc/varasm.c 2014/11/05 12:02:17 217119 -+++ b/gcc/varasm.c 2015/02/24 09:09:11 220935 -@@ -6957,7 +6957,13 @@ - fputs (ASM_APP_OFF, asm_out_file); - - if (targetm.asm_file_start_file_directive) -- output_file_directive (asm_out_file, main_input_filename); -+ { -+ /* LTO produced units have no meaningful main_input_filename. */ -+ if (in_lto_p) -+ output_file_directive (asm_out_file, ""); -+ else -+ output_file_directive (asm_out_file, main_input_filename); -+ } - } - - /* This is a generic routine suitable for use as TARGET_ASM_FILE_END ---- a/gcc/dwarf2out.c 2015/02/01 17:31:48 220321 -+++ b/gcc/dwarf2out.c 2015/02/24 09:09:11 220935 -@@ -19196,6 +19196,9 @@ - case OPT__sysroot_: - case OPT_nostdinc: - case OPT_nostdinc__: -+ case OPT_fpreprocessed: -+ case OPT_fltrans_output_list_: -+ case OPT_fresolution_: - /* Ignore these. */ - continue; - default: -@@ -23984,8 +23987,13 @@ - gen_remaining_tmpl_value_param_die_attribute (); - - /* Add the name for the main input file now. We delayed this from -- dwarf2out_init to avoid complications with PCH. */ -- add_name_attribute (comp_unit_die (), remap_debug_filename (filename)); -+ dwarf2out_init to avoid complications with PCH. -+ For LTO produced units use a fixed artificial name to avoid -+ leaking tempfile names into the dwarf. */ -+ if (!in_lto_p) -+ add_name_attribute (comp_unit_die (), remap_debug_filename (filename)); -+ else -+ add_name_attribute (comp_unit_die (), ""); - if (!IS_ABSOLUTE_PATH (filename) || targetm.force_at_comp_dir) - add_comp_dir_attribute (comp_unit_die ()); - else if (get_AT (comp_unit_die (), DW_AT_comp_dir) == NULL) diff --git a/gcc-5.3-aarch64-ld-path.patch b/gcc-5.3-aarch64-ld-path.patch new file mode 100644 index 0000000..3f9d359 --- /dev/null +++ b/gcc-5.3-aarch64-ld-path.patch @@ -0,0 +1,12 @@ +diff -urN gcc-linaro-5.3-2016.05-orig/gcc/config/aarch64/aarch64-linux.h gcc-linaro-5.3-2016.05-patched/gcc/config/aarch64/aarch64-linux.h +--- gcc-linaro-5.3-2016.05-orig/gcc/config/aarch64/aarch64-linux.h 2016-07-02 08:47:18.000000000 +1000 ++++ gcc-linaro-5.3-2016.05-patched/gcc/config/aarch64/aarch64-linux.h 2016-08-30 16:08:09.581934574 +1000 +@@ -21,7 +21,7 @@ + #ifndef GCC_AARCH64_LINUX_H + #define GCC_AARCH64_LINUX_H + +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" ++#define GLIBC_DYNAMIC_LINKER "/lib64/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" + + #undef MUSL_DYNAMIC_LINKER + #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" diff --git a/gcc.spec b/gcc.spec index 1baad13..62bc1da 100644 --- a/gcc.spec +++ b/gcc.spec @@ -17,9 +17,10 @@ %define snapshot -20120413 %endif %define system_compiler 1 -%define branch 4.9 -%define ver %{branch}.2 -%define linaro 2014.08 +%define majorver 5 +%define branch 5.3 +%define ver %{branch}.1 +%define linaro 2016.05 %define linaro_spin %nil %define alternatives /usr/sbin/update-alternatives %define gcclibexecdir %{_libexecdir}/gcc/%{_target_platform}/%{ver} @@ -37,7 +38,10 @@ %define libstdcxx_devel %mklibname stdc++ -d %define libstdcxx_static_devel %mklibname stdc++ -d -s %define multilibstdcxx libstdc++%{stdcxx_major} -%define gcj_major 15 +%define cc1_major 0 +%define libcc1 %mklibname cc1_ %{cc1_major} +%define libcc1_devel %mklibname cc1 -d +%define gcj_major 16 %define libgcj %mklibname gcj %{gcj_major} %define libgcj_devel %mklibname gcj -d %define libgcj_static_devel %mklibname gcj -d -s @@ -59,7 +63,7 @@ %define libgnat_devel %mklibname gnat -d %define libgnat_static_devel %mklibname gnat -d -s %define multilibgnat libgnat%{gnat_major} -%define go_major 5 +%define go_major 7 %define libgo %mklibname go %{go_major} %define libgo_devel %mklibname go -d %define libgo_static_devel %mklibname go -d -s @@ -89,7 +93,7 @@ %define libitm_devel %mklibname itm -d %define libitm_static_devel %mklibname itm -d -s %define multilibitm libitm%{itm_major} -%define asan_major 1 +%define asan_major 2 %define libasan %mklibname asan %{asan_major} %define libasan_devel %mklibname asan -d %define libasan_static_devel %mklibname asan -d -s @@ -200,7 +204,7 @@ Name: gcc %else Name: gcc%{branch} %endif -Release: 5 +Release: 1 License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD Group: Development/C Url: http://gcc.gnu.org/ @@ -235,17 +239,13 @@ Source100: %{name}.rpmlintrc Patch0: gcc-4.7.1-uclibc-ldso-path.patch Patch1: gcc-4.6.0-java-nomulti.patch -Patch2: gcc-4.9-aarch64-ld-path.patch +Patch2: gcc-5.3-aarch64-ld-path.patch Patch3: gcc-4.7.1-linux32.patch Patch4: gnatmake-execstack.patch # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55930 Patch5: gcc-4.8-disable-dependency-tracking.patch Patch6: gcc-4.7.1-autoconf-2.69.patch Patch7: gcc-4.7.1-linker-plugin-detect.patch -Patch8: gcc-4.7.1-extern-inline-not-inlined.patch -# Patch for Android compatibility (creating Linux->Android crosscompilers etc) -Patch9: gcc-4.7-androidcompat.patch -Patch10: gcc-4.7.3-texinfo-5.0.patch # Fix build failure Patch11: gcc-4.8-istream-ignore.patch Patch12: gcc-4.8-non-fatal-compare-failure.patch @@ -253,7 +253,6 @@ Patch12: gcc-4.8-non-fatal-compare-failure.patch Patch13: Gcc-4.8.2-arm-thumb2-CASE_VECTOR_SHORTEN_MODE.patch # Fix for fileline_fn callback being NULL in libbacktrace sometimes Patch15: gcc-4.9.1-libbacktrace-fix-null-callback.patch -Patch16: gcc-4.9-lto-names-reproduce.patch BuildRequires: binutils >= 2.20.51.0.2 BuildRequires: dejagnu @@ -287,6 +286,7 @@ BuildRequires: pkgconfig(isl) Requires: gcc-cpp >= %{EVRD} Requires: libgcc >= %{EVRD} Requires: libgomp >= %{EVRD} +Requires: libcc1 >= %{EVRD} %endif Requires: binutils >= 2.20.51.0.2 # Ensure https://qa.mandriva.com/show_bug.cgi?id=62943 @@ -315,6 +315,7 @@ The gcc package contains the GNU Compiler Collection version %{branch}. %{_bindir}/gcc-nm %{_bindir}/gcc-ranlib %{_bindir}/gcov +%{_bindir}/gcov-tool %{_bindir}/%{_target_platform}-gcc %{_bindir}/%{_target_platform}-gcc-ar %{_bindir}/%{_target_platform}-gcc-nm @@ -612,9 +613,11 @@ Static libraries for the GNU standard C++ library. %files -n %{libstdcxx_static_devel} %{_libdir}/libstdc++.*a +%{_libdir}/libstdc++fs.*a %{_libdir}/libsupc++.*a %if %{build_multilib} %{multilibdir}/libstdc++.*a +%{multilibdir}/libstdc++fs.*a %{multilibdir}/libsupc++.*a %endif @@ -622,6 +625,31 @@ Static libraries for the GNU standard C++ library. # build_cxx %endif +######################################################################## +%package -n %{libcc1} +Summary: GCC parsing shared library +Group: System/Libraries +Provides: libcc1 = %{EVRD} + +%description -n %{libcc1} +This package contains GCC parsing shared library. + +%files -n %{libcc1} +%{_libdir}/libcc1.so.%{cc1_major}* + +#----------------------------------------------------------------------- + +%package -n %{libcc1_devel} +Summary: GCC parsing development libraries +Group: Development/Other +Requires: %{libcc1} = %{EVRD} + +%description -n %{libcc1_devel} +This package includes GCC parsing development libraries. + +%files -n %{libcc1_devel} +%{_libdir}/libcc1.so + ######################################################################## %if %{build_ada} #----------------------------------------------------------------------- @@ -664,8 +692,8 @@ GNAT is a GNU Ada 95 front-end to GCC. This package includes shared libraries, which are required to run programs compiled with the GNAT. %files -n %{libgnat} -%{_libdir}/libgnat-%{branch}.so.%{gnat_major} -%{_libdir}/libgnarl-%{branch}.so.%{gnat_major} +%{_libdir}/libgnat-%{majorver}.so.%{gnat_major} +%{_libdir}/libgnarl-%{majorver}.so.%{gnat_major} #----------------------------------------------------------------------- @@ -680,8 +708,8 @@ GNAT is a GNU Ada 95 front-end to GCC. This package includes shared libraries, which are required to run programs compiled with the GNAT. %files -n %{multilibgnat} -%{multilibdir}/libgnat-%{branch}.so.%{gnat_major} -%{multilibdir}/libgnarl-%{branch}.so.%{gnat_major} +%{multilibdir}/libgnat-%{majorver}.so.%{gnat_major} +%{multilibdir}/libgnarl-%{majorver}.so.%{gnat_major} %endif %endif @@ -877,7 +905,7 @@ Summary: Go support for gcc Group: Development/Other Requires: %{name} = %{EVRD} Requires: %{libgo_devel} = %{EVRD} -BuildRequires: gcc-go +Conflicts: golang %description go The gcc-go package provides support for compiling Go programs @@ -886,20 +914,29 @@ with the GNU Compiler Collection. %files go %{_bindir}/gccgo %{_bindir}/%{_target_platform}-gccgo +%{_bindir}/go +%{_bindir}/gofmt %dir %{_libdir}/go %if %{build_multilib} %dir %{multilibdir}/go %endif %{_infodir}/gccgo.info* %{_mandir}/man1/gccgo.1* +%{_mandir}/man1/go.1* +%{_mandir}/man1/gofmt.1* %{_bindir}/gccgo-%{ver} %{_bindir}/%{_target_platform}-gccgo-%{ver} +%{gcclibexecdir}/cgo %{gcclibexecdir}/go1 %{_libdir}/go/%{ver} %{_libdir}/libgobegin.a +%{_libdir}/libgolibbegin.a +%{_libdir}/libnetgo.a %if %{build_multilib} %{multilibdir}/go/%{ver} %{multilibdir}/libgobegin.a +%{multilibdir}/libgolibbegin.a +%{multilibdir}/libnetgo.a %endif %if %{build_doc} %doc %{_docdir}/gcc-go @@ -1169,7 +1206,7 @@ package to compile your Java programs using the GCC Java compiler (gcj). %{gccdir}/include/jni*.h %{gccdir}/include/jvm*.h %{py_puresitedir}/libjava -%{_libdir}/pkgconfig/libgcj-%{branch}.pc +%{_libdir}/pkgconfig/libgcj-%{majorver}.pc %{_libdir}/libgcj*.spec %{_libdir}/libgcj*.so %{_libdir}/libgij.so @@ -1480,6 +1517,7 @@ for OpenMP v3.0 support. %files -n %{libgomp} /%{_lib}/libgomp.so.%{gomp_major}* +%{_libdir}/libgomp-plugin-host_nonshm.so.%{gomp_major}* #----------------------------------------------------------------------- @@ -1496,6 +1534,7 @@ for OpenMP v3.0 support. %files -n %{multilibgomp} %{multirootlibdir}/libgomp.so.%{gomp_major}* +%{multilibdir}/libgomp-plugin-host_nonshm.so.%{gomp_major}* %endif #----------------------------------------------------------------------- @@ -1518,9 +1557,11 @@ to compile OpenMP v3.0 support. %files -n %{libgomp_devel} %{_libdir}/libgomp.so %{_libdir}/libgomp.spec +%{_libdir}/libgomp-plugin-host_nonshm.so %if %{build_multilib} %{multilibdir}/libgomp.so %{multilibdir}/libgomp.spec +%{multilibdir}/libgomp-plugin-host_nonshm.so %endif %{_infodir}/libgomp.info* %{gccdir}/include/omp*.h @@ -2079,6 +2120,8 @@ to use Undefined Behavior Sanitizer features. %{_prefix}/lib/libubsan.so %{_prefix}/lib/libsanitizer.spec %endif +%dir %{gccdir}/include/sanitizer/ +%{gccdir}/include/sanitizer/*.h #----------------------------------------------------------------------- @@ -2165,15 +2208,10 @@ Static liblsan. %patch5 -p1 -b .deptrack~ %patch6 -p1 -b .ac269~ %patch7 -p1 -b .plugindet~ -# Breaks the build, see comment on bug 33763 -#patch8 -p1 -b .ext_inline~ -#patch9 -p1 -b .android~ -#patch10 -p1 -b .texi50~ %patch11 -p1 -b .buildfix~ %patch12 -p1 -b .compare~ %patch13 -p1 -b .short %patch15 -p1 -b .libbacktrace -%patch16 -p1 -b .repr aclocal -I config autoconf @@ -2532,17 +2570,17 @@ popd for lib in libgnarl libgnat; do rm -f %{buildroot}%{_libdir}/$lib.so rm -f %{buildroot}%{gccdir}/adalib/$lib.so - mv -f %{buildroot}%{gccdir}/adalib/$lib-%{branch}.so \ - %{buildroot}%{_libdir}/$lib-%{branch}.so.1 - ln -sf $lib-%{branch}.so.1 %{buildroot}%{_libdir}/$lib-%{branch}.so - ln -sf $lib-%{branch}.so.1 %{buildroot}%{_libdir}/$lib.so + mv -f %{buildroot}%{gccdir}/adalib/$lib-%{majorver}.so \ + %{buildroot}%{_libdir}/$lib-%{majorver}.so.1 + ln -sf $lib-%{majorver}.so.1 %{buildroot}%{_libdir}/$lib-%{majorver}.so + ln -sf $lib-%{majorver}.so.1 %{buildroot}%{_libdir}/$lib.so %if %{build_multilib} rm -f %{buildroot}%{multilibdir}/$lib.so rm -f %{buildroot}%{multigccdir}/adalib/$lib.so - mv -f %{buildroot}%{multigccdir}/adalib/$lib-%{branch}.so \ - %{buildroot}%{multilibdir}/$lib-%{branch}.so.1 - ln -sf $lib-%{branch}.so.1 %{buildroot}%{multilibdir}/$lib-%{branch}.so - ln -sf $lib-%{branch}.so.1 %{buildroot}%{multilibdir}/$lib.so + mv -f %{buildroot}%{multigccdir}/adalib/$lib-%{majorver}.so \ + %{buildroot}%{multilibdir}/$lib-%{majorver}.so.1 + ln -sf $lib-%{majorver}.so.1 %{buildroot}%{multilibdir}/$lib-%{majorver}.so + ln -sf $lib-%{majorver}.so.1 %{buildroot}%{multilibdir}/$lib.so %endif done %endif