diff --git a/.gitignore b/.gitignore index 0726ecc..ddfe5c3 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,5 @@ /gcc-4.9.0-20140619.tar.bz2 /gcc-4.9.0-20140625.tar.bz2 /gcc-4.9.0-20140702.tar.bz2 +/gcc-4.9.1-20140716.tar.bz2 +/gcc-4.9.1-20140717.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 5d6d05c..9ce314a 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20140702 -%global SVNREV 212237 -%global gcc_version 4.9.0 +%global DATE 20140717 +%global SVNREV 212747 +%global gcc_version 4.9.1 # Note, gcc_release must be integer, if you want to add suffixes to # %{release}, append them after %{gcc_release} on Release: line. -%global gcc_release 15 +%global gcc_release 2 %global _unpackaged_files_terminate_build 0 %global _performance_build 1 %global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64 @@ -52,7 +52,7 @@ %else %global build_libatomic 0 %endif -%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x +%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x aarch64 %global build_libitm 1 %else %global build_libitm 0 @@ -86,7 +86,7 @@ License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2 Group: Development/Languages # The source for this package was pulled from upstream's vcs. Use the # following commands to generate the tarball: -# svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_7-branch@%{SVNREV} gcc-%{version}-%{DATE} +# svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-4_9-branch@%{SVNREV} gcc-%{version}-%{DATE} # tar cf - gcc-%{version}-%{DATE} | bzip2 -9 > gcc-%{version}-%{DATE}.tar.bz2 Source0: gcc-%{version}-%{DATE}.tar.bz2 %global isl_version 0.12.2 @@ -196,7 +196,8 @@ Patch12: gcc49-no-add-needed.patch Patch14: gcc49-pr56493.patch Patch15: gcc49-color-auto.patch Patch16: gcc49-libgo-p224.patch -Patch17: gcc49-pr61673.patch +Patch17: gcc49-aarch64-async-unw-tables.patch +Patch18: gcc49-aarch64-GNU_STACK.patch Patch1100: cloog-%{cloog_version}-ppc64le-config.patch @@ -723,7 +724,8 @@ package or when debugging this package. %endif %patch16 -p0 -b .libgo-p224~ rm -f libgo/go/crypto/elliptic/p224{,_test}.go -%patch17 -p0 -b .pr61673~ +%patch17 -p0 -b .aarch64-async-unw-tables~ +%patch18 -p0 -b .aarch64-GNU_STACK~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -774,7 +776,7 @@ chmod 755 split-debuginfo.sh %patch1100 -p0 -b .cloog-ppc64le-config~ -sed -i -e 's/4\.9\.1/4.9.0/' gcc/BASE-VER +sed -i -e 's/4\.9\.2/4.9.1/' gcc/BASE-VER echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE %if 0%{?fedora} >= 16 || 0%{?rhel} >= 7 @@ -2796,6 +2798,23 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Thu Jul 17 2014 Jakub Jelinek 4.9.1-2 +- update from the 4.9 branch + - PRs c-family/61741, rtl-optimization/61801, target/61737, + tree-optimization/61779 + +* Wed Jul 16 2014 Jakub Jelinek 4.9.1-1 +- update from the 4.9 branch + - GCC 4.9.1 release + - PRs c++/58155, c++/58636, c++/61661, fortran/41936, fortran/58883, + fortran/61459, libgfortran/61640, middle-end/53590, + middle-end/61654, target/59843, target/61062, target/61544, + tree-optimization/61680, tree-optimization/61681, + tree-optimization/61684, tree-optimization/61725 +- enable libitm on aarch64 +- emit .note.GNU-stack on aarch64 (#1119885) +- small -fsanitize=bounds fix from the trunk + * Sat Jul 12 2014 Tom Callaway 4.9.0-15 - fix license handling diff --git a/gcc49-aarch64-GNU_STACK.patch b/gcc49-aarch64-GNU_STACK.patch new file mode 100644 index 0000000..9868dfb --- /dev/null +++ b/gcc49-aarch64-GNU_STACK.patch @@ -0,0 +1,13 @@ +2014-05-15 Kyle McMartin + + * config/aarch64/aarch64-linux.h (TARGET_ASM_FILE_END): Define. + +--- gcc/config/aarch64/aarch64-linux.h ++++ gcc/config/aarch64/aarch64-linux.h +@@ -44,4 +44,6 @@ + } \ + while (0) + ++#define TARGET_ASM_FILE_END file_end_indicate_exec_stack ++ + #endif /* GCC_AARCH64_LINUX_H */ diff --git a/gcc49-aarch64-async-unw-tables.patch b/gcc49-aarch64-async-unw-tables.patch new file mode 100644 index 0000000..feec149 --- /dev/null +++ b/gcc49-aarch64-async-unw-tables.patch @@ -0,0 +1,35 @@ +2014-04-07 Richard Henderson + + * common/config/aarch64/aarch64-common.c (TARGET_OPTION_INIT_STRUCT): + Define. + (aarch64_option_init_struct): New function. + +--- gcc/common/config/aarch64/aarch64-common.c ++++ gcc/common/config/aarch64/aarch64-common.c +@@ -39,6 +39,9 @@ + #undef TARGET_OPTION_OPTIMIZATION_TABLE + #define TARGET_OPTION_OPTIMIZATION_TABLE aarch_option_optimization_table + ++#undef TARGET_OPTION_INIT_STRUCT ++#define TARGET_OPTION_INIT_STRUCT aarch64_option_init_struct ++ + /* Set default optimization options. */ + static const struct default_options aarch_option_optimization_table[] = + { +@@ -47,6 +50,16 @@ static const struct default_options aarch_option_optimization_table[] = + { OPT_LEVELS_NONE, 0, NULL, 0 } + }; + ++/* Implement TARGET_OPTION_INIT_STRUCT. */ ++ ++static void ++aarch64_option_init_struct (struct gcc_options *opts) ++{ ++ /* By default, always emit DWARF-2 unwind info. This allows debugging ++ without maintaining a stack frame back-chain. */ ++ opts->x_flag_asynchronous_unwind_tables = 1; ++} ++ + /* Implement TARGET_HANDLE_OPTION. + This function handles the target specific options for CPU/target selection. + diff --git a/gcc49-libstdc++-docs.patch b/gcc49-libstdc++-docs.patch index dd328a2..2c8c2b8 100644 --- a/gcc49-libstdc++-docs.patch +++ b/gcc49-libstdc++-docs.patch @@ -4,7 +4,7 @@ FSF

-+ Release 4.9.0 ++ Release 4.9.1 +

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation @@ -18,7 +18,7 @@ - The API documentation, rendered into HTML, can be viewed online: + The API documentation, rendered into HTML, can be viewed here: