From 081c531fecfa27b5c0e9f48a3ca1a96ea3ef553c Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Thu, 18 Aug 2011 13:49:32 +0000 Subject: main/gcc: upgrade to 4.6.1 --- testing/gcc/08_all_cross-compile.patch | 40 -- .../gcc/11_all_default-warn-format-security.patch | 49 -- testing/gcc/12_all_default-warn-trampolines.patch | 25 - testing/gcc/15_all_libgomp-Werror.patch | 16 - testing/gcc/34_all_ia64_note.GNU-stack.patch | 89 ---- testing/gcc/51_all_libiberty-pic.patch | 10 - testing/gcc/74_all_gcc46_cloog-dl.patch | 532 --------------------- testing/gcc/APKBUILD | 381 --------------- testing/gcc/boehem-gc-uclibc.patch | 11 - testing/gcc/gcc-4.6-dynamic-linker.patch | 459 ------------------ testing/gcc/gcc-4.6-pr32219.patch | 25 - testing/gcc/gcc-go.patch | 11 - testing/gcc/gcc-libgcc-x86.get_pc_thunk.bx.patch | 38 -- testing/gcc/gcc-pure64.patch | 12 - testing/gcc/gcc-spec-env.patch | 42 -- testing/gcc/pt_gnu_eh_frame.patch | 12 - testing/gcc/uclibc-getipinfo.patch | 19 - 17 files changed, 1771 deletions(-) delete mode 100644 testing/gcc/08_all_cross-compile.patch delete mode 100644 testing/gcc/11_all_default-warn-format-security.patch delete mode 100644 testing/gcc/12_all_default-warn-trampolines.patch delete mode 100644 testing/gcc/15_all_libgomp-Werror.patch delete mode 100644 testing/gcc/34_all_ia64_note.GNU-stack.patch delete mode 100644 testing/gcc/51_all_libiberty-pic.patch delete mode 100644 testing/gcc/74_all_gcc46_cloog-dl.patch delete mode 100644 testing/gcc/APKBUILD delete mode 100644 testing/gcc/boehem-gc-uclibc.patch delete mode 100644 testing/gcc/gcc-4.6-dynamic-linker.patch delete mode 100644 testing/gcc/gcc-4.6-pr32219.patch delete mode 100644 testing/gcc/gcc-go.patch delete mode 100644 testing/gcc/gcc-libgcc-x86.get_pc_thunk.bx.patch delete mode 100644 testing/gcc/gcc-pure64.patch delete mode 100644 testing/gcc/gcc-spec-env.patch delete mode 100644 testing/gcc/pt_gnu_eh_frame.patch delete mode 100644 testing/gcc/uclibc-getipinfo.patch (limited to 'testing') diff --git a/testing/gcc/08_all_cross-compile.patch b/testing/gcc/08_all_cross-compile.patch deleted file mode 100644 index 4203e3a62..000000000 --- a/testing/gcc/08_all_cross-compile.patch +++ /dev/null @@ -1,40 +0,0 @@ -Some notes on the 'bootstrap with or without libc headers' debate: -http://linuxfromscratch.org/pipermail/lfs-dev/2005-July/052409.html -http://gcc.gnu.org/ml/gcc/2005-07/msg01195.html - ---- a/gcc/configure -+++ b/gcc/configure -@@ -11354,7 +11354,7 @@ then - *) - ;; - esac --elif test "x$TARGET_SYSTEM_ROOT" != x; then -+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then - SYSTEM_HEADER_DIR=$build_system_header_dir - fi - ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -1759,7 +1759,7 @@ then - *) - ;; - esac --elif test "x$TARGET_SYSTEM_ROOT" != x; then -+elif test "x$TARGET_SYSTEM_ROOT" != x -o $build != $host; then - SYSTEM_HEADER_DIR=$build_system_header_dir - fi - ---- a/gcc/unwind-dw2.c -+++ b/gcc/unwind-dw2.c -@@ -329,9 +329,11 @@ _Unwind_GetTextRelBase (struct _Unwind_Context *context) - } - #endif - -+#ifndef inhibit_libc - #ifdef MD_UNWIND_SUPPORT - #include MD_UNWIND_SUPPORT - #endif -+#endif - - /* Extract any interesting information from the CIE for the translation - unit F belongs to. Return a pointer to the byte after the augmentation, diff --git a/testing/gcc/11_all_default-warn-format-security.patch b/testing/gcc/11_all_default-warn-format-security.patch deleted file mode 100644 index 5dbab43f1..000000000 --- a/testing/gcc/11_all_default-warn-format-security.patch +++ /dev/null @@ -1,49 +0,0 @@ -Enable -Wformat and -Wformat-security by default. - - ---- a/gcc/c-family/c-common.c -+++ b/gcc/c-family/c-common.c -@@ -201,7 +201,7 @@ int warn_unknown_pragmas; /* Tri state variable. */ - /* Warn about format/argument anomalies in calls to formatted I/O functions - (*printf, *scanf, strftime, strfmon, etc.). */ - --int warn_format; -+int warn_format = 1; - - /* C/ObjC language option variables. */ - ---- a/gcc/c-family/c.opt -+++ b/gcc/c-family/c.opt -@@ -384,7 +384,7 @@ C ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning - Warn about format strings that contain NUL bytes - - Wformat-security --C ObjC C++ ObjC++ Var(warn_format_security) Warning -+C ObjC C++ ObjC++ Var(warn_format_security) Init(1) Warning - Warn about possible security problems with format functions - - Wformat-y2k ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -3111,6 +3111,9 @@ aspects of format checking, the options @option{-Wformat-y2k}, - @option{-Wformat-nonliteral}, @option{-Wformat-security}, and - @option{-Wformat=2} are available, but are not included in @option{-Wall}. - -+In Gentoo this option is enabled by default for C, C++, ObjC, ObjC++. -+To disable, use @option{-Wformat=0}. -+ - @item -Wformat-y2k - @opindex Wformat-y2k - @opindex Wno-format-y2k -@@ -3164,6 +3167,11 @@ currently a subset of what @option{-Wformat-nonliteral} warns about, but - in future warnings may be added to @option{-Wformat-security} that are not - included in @option{-Wformat-nonliteral}.) - -+In Gentoo this option is enabled by default for C, C++, ObjC, ObjC++. -+To disable, use @option{-Wno-format-security}, or disable all format warnings -+with @option{-Wformat=0}. To make format security warnings fatal, specify -+@option{-Werror=format-security}. -+ - @item -Wformat=2 - @opindex Wformat=2 - @opindex Wno-format=2 diff --git a/testing/gcc/12_all_default-warn-trampolines.patch b/testing/gcc/12_all_default-warn-trampolines.patch deleted file mode 100644 index a5606c5ec..000000000 --- a/testing/gcc/12_all_default-warn-trampolines.patch +++ /dev/null @@ -1,25 +0,0 @@ -Enable -Wtrampolines by default. - - ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -611,7 +611,7 @@ Common Var(warn_system_headers) Warning - Do not suppress warnings from system headers - - Wtrampolines --Common Var(warn_trampolines) Warning -+Common Var(warn_trampolines) Init(1) Warning - Warn whenever a trampoline is generated - - Wtype-limits ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -3766,6 +3766,8 @@ headers---for that, @option{-Wunknown-pragmas} must also be used. - @opindex Wno-trampolines - Warn about trampolines generated for pointers to nested functions. - -+ In Gentoo, @option{-Wtrampolines} is enabled by default. -+ - A trampoline is a small piece of data or code that is created at run - time on the stack when the address of a nested function is taken, and - is used to call the nested function indirectly. For some targets, it diff --git a/testing/gcc/15_all_libgomp-Werror.patch b/testing/gcc/15_all_libgomp-Werror.patch deleted file mode 100644 index 3456e8ae8..000000000 --- a/testing/gcc/15_all_libgomp-Werror.patch +++ /dev/null @@ -1,16 +0,0 @@ -libgomp does not respect --disable-werror - -https://bugs.gentoo.org/229059 -http://gcc.gnu.org/PR38436 - ---- a/libgomp/configure -+++ b/libgomp/configure -@@ -4284,7 +4284,7 @@ save_CFLAGS="$CFLAGS" - - # Add -Wall -Werror if we are using GCC. - if test "x$GCC" = "xyes"; then -- XCFLAGS="$XCFLAGS -Wall -Werror" -+ XCFLAGS="$XCFLAGS -Wall" - fi - - # Find other programs we need. diff --git a/testing/gcc/34_all_ia64_note.GNU-stack.patch b/testing/gcc/34_all_ia64_note.GNU-stack.patch deleted file mode 100644 index b156eacb2..000000000 --- a/testing/gcc/34_all_ia64_note.GNU-stack.patch +++ /dev/null @@ -1,89 +0,0 @@ -2004-09-20 Jakub Jelinek - - * config/rs6000/ppc-asm.h: Add .note.GNU-stack section also - on ppc64-linux. - - * config/ia64/lib1funcs.asm: Add .note.GNU-stack section on - ia64-linux. - * config/ia64/crtbegin.asm: Likewise. - * config/ia64/crtend.asm: Likewise. - * config/ia64/crti.asm: Likewise. - * config/ia64/crtn.asm: Likewise. - -2004-05-14 Jakub Jelinek - - * config/ia64/linux.h (TARGET_ASM_FILE_END): Define. - - ---- a/gcc/config/ia64/crtbegin.asm -+++ b/gcc/config/ia64/crtbegin.asm -@@ -252,3 +252,7 @@ __do_jv_register_classes: - .weak __cxa_finalize - #endif - .weak _Jv_RegisterClasses -+ -+#ifdef __linux__ -+.section .note.GNU-stack; .previous -+#endif ---- a/gcc/config/ia64/crtend.asm -+++ b/gcc/config/ia64/crtend.asm -@@ -119,3 +119,7 @@ __do_global_ctors_aux: - - br.ret.sptk.many rp - .endp __do_global_ctors_aux -+ -+#ifdef __linux__ -+.section .note.GNU-stack; .previous -+#endif ---- a/gcc/config/ia64/crti.asm -+++ b/gcc/config/ia64/crti.asm -@@ -51,3 +51,7 @@ _fini: - .body - - # end of crti.asm -+ -+#ifdef __linux__ -+.section .note.GNU-stack; .previous -+#endif ---- a/gcc/config/ia64/crtn.asm -+++ b/gcc/config/ia64/crtn.asm -@@ -41,3 +41,7 @@ - br.ret.sptk.many b0 - - # end of crtn.asm -+ -+#ifdef __linux__ -+.section .note.GNU-stack; .previous -+#endif ---- a/gcc/config/ia64/lib1funcs.asm -+++ b/gcc/config/ia64/lib1funcs.asm -@@ -793,3 +793,7 @@ __floattitf: - .endp __floattitf - #endif - #endif -+ -+#ifdef __linux__ -+.section .note.GNU-stack; .previous -+#endif ---- a/gcc/config/ia64/linux.h -+++ b/gcc/config/ia64/linux.h -@@ -29,6 +29,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - - #define TARGET_VERSION fprintf (stderr, " (IA-64) Linux"); - -+#define TARGET_ASM_FILE_END file_end_indicate_exec_stack -+ - /* This is for -profile to use -lc_p instead of -lc. */ - #undef CC1_SPEC - #define CC1_SPEC "%{profile:-p} %{G*}" ---- a/gcc/config/rs6000/ppc-asm.h -+++ b/gcc/config/rs6000/ppc-asm.h -@@ -352,7 +352,7 @@ GLUE(.L,name): \ - #endif - #endif - --#if defined __linux__ && !defined __powerpc64__ -+#if defined __linux__ - .section .note.GNU-stack - .previous - #endif diff --git a/testing/gcc/51_all_libiberty-pic.patch b/testing/gcc/51_all_libiberty-pic.patch deleted file mode 100644 index b6160a730..000000000 --- a/testing/gcc/51_all_libiberty-pic.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/libiberty/Makefile.in -+++ b/libiberty/Makefile.in -@@ -246,6 +246,7 @@ $(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS) - $(AR) $(AR_FLAGS) $(TARGETLIB) \ - $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS); \ - $(RANLIB) $(TARGETLIB); \ -+ cp $(TARGETLIB) ../ ; \ - cd ..; \ - else true; fi - diff --git a/testing/gcc/74_all_gcc46_cloog-dl.patch b/testing/gcc/74_all_gcc46_cloog-dl.patch deleted file mode 100644 index 21ceb25b7..000000000 --- a/testing/gcc/74_all_gcc46_cloog-dl.patch +++ /dev/null @@ -1,532 +0,0 @@ -When graphite support is enabled, C++ libraries (libppl, libcloog, libgmpxx, -libstdc++-v3) are linked into cc1. Because of libstdc++ symbol versioning -this has the unfortunate side effect of making it difficult to switch to a -previous version of GCC using gcc-config once these libraries have be built -with the newer version. (http://bugs.gentoo.org/315377#c3) - -Instead, dlopen libcloog as necessary. This patch originated in Fedora and -was modified to work on FreeBSD (http://bugs.gentoo.org/317211). - -2011-01-04 Jakub Jelinek - - * Makefile.in (BACKENDLIBS): Link against -ldl instead of - -lcloog -lppl. - (graphite.o, graphite%.o): Force -O, remove -fkeep-inline-functions. - (GRAPHITE_CLOOG_UTIL_H, GRAPHITE_POLY_H): New. - (graphite*.o): Adjust dependencies. - * graphite-cloog-compat.h: Include . Reference libcloog and - libppl symbols through pointers in cloog_pointers__ variable. - * graphite.c (init_cloog_pointers): New function. - (graphite_transform_loops): Call init_cloog_pointers. - * graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Rename - stmt_for argument to stmt_fora. - * graphite-poly.h: Include graphite-cloog-util.h. - -2011-04-02 Ryan Hill - - * configure.ac (DL_LIB): Check how to dlopen. - * configure: Regenerate. - * Makefile.in (BACKENDLIBS): Use DL_LIB. - * graphite-cloog-compat.h: Add missing symbols. - - - ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -984,6 +984,8 @@ GCC_PLUGIN_H = gcc-plugin.h highlev-plugin-common.h $(CONFIG_H) $(SYSTEM_H) \ - PLUGIN_H = plugin.h $(GCC_PLUGIN_H) - PLUGIN_VERSION_H = plugin-version.h configargs.h - LIBFUNCS_H = libfuncs.h $(HASHTAB_H) -+GRAPHITE_CLOOG_UTIL_H = graphite-cloog-util.h graphite-cloog-compat.h -+GRAPHITE_POLY_H = graphite-poly.h $(GRAPHITE_CLOOG_UTIL_H) - - # - # Now figure out from those variables how to compile and link. -@@ -1037,7 +1039,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY) - # and the system's installed libraries. - LIBS = @LIBS@ $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBIBERTY) $(LIBDECNUMBER) \ - $(HOST_LIBS) --BACKENDLIBS = $(CLOOGLIBS) $(PPLLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \ -+BACKENDLIBS = $(GMPLIBS) $(if $(CLOOGLIBS),@DL_LIB@) $(PLUGINLIBS) $(HOST_LIBS) \ - $(ZLIB) - # Any system libraries needed just for GNAT. - SYSLIBS = @GNAT_LIBEXC@ -@@ -2668,40 +2670,40 @@ sese.o : sese.c sese.h $(CONFIG_H) $(SYSTEM_H) coretypes.h tree-pretty-print.h \ - $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) tree-pass.h value-prof.h - graphite.o : graphite.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) \ - $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h \ -- $(DBGCNT_H) graphite-ppl.h graphite-poly.h graphite-scop-detection.h \ -+ $(DBGCNT_H) graphite-ppl.h $(GRAPHITE_POLY_H) graphite-scop-detection.h \ - graphite-clast-to-gimple.h graphite-sese-to-poly.h - graphite-blocking.o : graphite-blocking.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ -- sese.h graphite-ppl.h graphite-poly.h -+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) - graphite-clast-to-gimple.o : graphite-clast-to-gimple.c $(CONFIG_H) \ - $(SYSTEM_H) coretypes.h $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_DUMP_H) \ -- $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-cloog-util.h \ -- graphite-ppl.h graphite-poly.h graphite-clast-to-gimple.h \ -+ $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h $(GRAPHITE_CLOOG_UTIL_H) \ -+ graphite-ppl.h $(GRAPHITE_POLY_H) graphite-clast-to-gimple.h \ - graphite-dependences.h graphite-cloog-compat.h - graphite-cloog-util.o : graphite-cloog-util.c $(CONFIG_H) $(SYSTEM_H) \ -- coretypes.h graphite-cloog-util.h graphite-cloog-compat.h -+ coretypes.h $(GRAPHITE_CLOOG_UTIL_H) graphite-cloog-compat.h - graphite-dependences.o : graphite-dependences.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ -- sese.h graphite-ppl.h graphite-poly.h graphite-dependences.h \ -- graphite-cloog-util.h -+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) graphite-dependences.h \ -+ $(GRAPHITE_CLOOG_UTIL_H) - graphite-flattening.o : graphite-flattening.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ -- sese.h graphite-ppl.h graphite-poly.h -+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) - graphite-interchange.o : graphite-interchange.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) \ -- sese.h graphite-ppl.h graphite-poly.h -+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) - graphite-poly.o : graphite-poly.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ - $(DIAGNOSTIC_CORE_H) $(TREE_FLOW_H) $(TREE_DUMP_H) gimple-pretty-print.h \ -- $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-ppl.h graphite-poly.h \ -- graphite-dependences.h graphite-cloog-util.h -+ $(CFGLOOP_H) $(TREE_DATA_REF_H) sese.h graphite-ppl.h $(GRAPHITE_POLY_H) \ -+ graphite-dependences.h $(GRAPHITE_CLOOG_UTIL_H) - graphite-ppl.o : graphite-ppl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ -- graphite-cloog-util.h graphite-ppl.h -+ $(GRAPHITE_CLOOG_UTIL_H) graphite-ppl.h - graphite-scop-detection.o : graphite-scop-detection.c $(CONFIG_H) $(SYSTEM_H) \ - coretypes.h $(TREE_FLOW_H) $(CFGLOOP_H) $(TREE_DATA_REF_H) $(TREE_PASS_H) \ -- sese.h graphite-ppl.h graphite-poly.h graphite-scop-detection.h -+ sese.h graphite-ppl.h $(GRAPHITE_POLY_H) graphite-scop-detection.h - graphite-sese-to-poly.o : graphite-sese-to-poly.c $(CONFIG_H) \ - $(SYSTEM_H) coretypes.h $(TREE_FLOW_H) $(TREE_DUMP_H) $(CFGLOOP_H) \ -- $(TREE_DATA_REF_H) domwalk.h sese.h graphite-ppl.h graphite-poly.h \ -+ $(TREE_DATA_REF_H) domwalk.h sese.h graphite-ppl.h $(GRAPHITE_POLY_H) \ - graphite-sese-to-poly.h - tree-vect-loop.o: tree-vect-loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \ - $(TM_H) $(GGC_H) $(TREE_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_H) $(TREE_FLOW_H) \ -@@ -3482,6 +3484,11 @@ $(out_object_file): $(out_file) $(CONFIG_H) coretypes.h $(TM_H) $(TREE_H) \ - $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \ - $(out_file) $(OUTPUT_OPTION) - -+graphite%.o : \ -+ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) -+graphite.o : \ -+ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) -+ - # Build auxiliary files that support ecoff format. - mips-tfile: mips-tfile.o version.o $(LIBDEPS) - $(LINKER) $(LINKERFLAGS) $(LDFLAGS) -o $@ \ ---- a/gcc/configure -+++ b/gcc/configure -@@ -602,6 +602,7 @@ ac_subst_vars='LTLIBOBJS - LIBOBJS - enable_plugin - pluginlibs -+DL_LIB - CLOOGINC - CLOOGLIBS - PPLINC -@@ -17505,7 +17506,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 17508 "configure" -+#line 17509 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -17611,7 +17612,7 @@ else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF --#line 17614 "configure" -+#line 17615 "configure" - #include "confdefs.h" - - #if HAVE_DLFCN_H -@@ -26284,6 +26285,7 @@ $as_echo "unable to check" >&6; } - fi - - # Check -ldl -+ DL_LIB= - saved_LIBS="$LIBS" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 - $as_echo_n "checking for library containing dlopen... " >&6; } -@@ -26343,7 +26345,9 @@ fi - - if test x"$ac_cv_search_dlopen" = x"-ldl"; then - pluginlibs="$pluginlibs -ldl" -+ DL_LIB=$ac_cv_search_dlopen - fi -+ - LIBS="$saved_LIBS" - - # Check that we can build shared objects with -fPIC -shared ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -4841,11 +4841,14 @@ if test x"$enable_plugin" = x"yes"; then - fi - - # Check -ldl -+ DL_LIB= - saved_LIBS="$LIBS" - AC_SEARCH_LIBS([dlopen], [dl]) - if test x"$ac_cv_search_dlopen" = x"-ldl"; then - pluginlibs="$pluginlibs -ldl" -+ DL_LIB=$ac_cv_search_dlopen - fi -+ AC_SUBST(DL_LIB) - LIBS="$saved_LIBS" - - # Check that we can build shared objects with -fPIC -shared ---- a/gcc/graphite-clast-to-gimple.c -+++ b/gcc/graphite-clast-to-gimple.c -@@ -738,10 +738,10 @@ clast_get_body_of_loop (struct clast_stmt *stmt) - from STMT_FOR. */ - - static tree --gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_for, int level, -+gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_fora, int level, - tree lb_type, tree ub_type) - { -- struct clast_stmt *stmt = (struct clast_stmt *) stmt_for; -+ struct clast_stmt *stmt = (struct clast_stmt *) stmt_fora; - struct clast_user_stmt *body = clast_get_body_of_loop (stmt); - CloogStatement *cs = body->statement; - poly_bb_p pbb = (poly_bb_p) cloog_statement_usr (cs); ---- a/gcc/graphite-cloog-compat.h -+++ b/gcc/graphite-cloog-compat.h -@@ -272,4 +272,269 @@ static inline int cloog_matrix_nrows (CloogMatrix * m) - return m->NbRows; - } - #endif /* CLOOG_ORG */ -+ -+#include -+#define DYNSYMS \ -+ DYNSYM (cloog_block_alloc); \ -+ DYNSYM (cloog_block_list_free); \ -+ DYNSYM (cloog_block_list_malloc); \ -+ DYNSYM (cloog_clast_create); \ -+ DYNSYM (cloog_clast_free); \ -+ DYNSYM (cloog_domain_free); \ -+ DYNSYM (cloog_domain_matrix2domain); \ -+ DYNSYM (cloog_initialize); \ -+ DYNSYM (cloog_loop_malloc); \ -+ DYNSYM (cloog_matrix_alloc); \ -+ DYNSYM (cloog_matrix_copy); \ -+ DYNSYM (cloog_matrix_free); \ -+ DYNSYM (cloog_matrix_print); \ -+ DYNSYM (cloog_names_malloc); \ -+ DYNSYM (cloog_names_scalarize); \ -+ DYNSYM (cloog_options_free); \ -+ DYNSYM (cloog_options_malloc); \ -+ DYNSYM (cloog_program_dump_cloog); \ -+ DYNSYM (cloog_program_extract_scalars); \ -+ DYNSYM (cloog_program_free); \ -+ DYNSYM (cloog_program_generate); \ -+ DYNSYM (cloog_program_malloc); \ -+ DYNSYM (cloog_program_print); \ -+ DYNSYM (cloog_program_scatter); \ -+ DYNSYM (cloog_statement_alloc); \ -+ DYNSYM (cloog_domain_union); \ -+ DYNSYM (cloog_matrix_read); \ -+ DYNSYM (cloog_new_pol); \ -+ DYNSYM (cloog_vector_gcd); \ -+ DYNSYM (ppl_finalize); \ -+ DYNSYM (ppl_assign_Coefficient_from_mpz_t); \ -+ DYNSYM (ppl_assign_Linear_Expression_from_Linear_Expression); \ -+ DYNSYM (ppl_Coefficient_to_mpz_t); \ -+ DYNSYM (ppl_Constraint_coefficient); \ -+ DYNSYM (ppl_Constraint_inhomogeneous_term); \ -+ DYNSYM (ppl_Constraint_space_dimension); \ -+ DYNSYM (ppl_Constraint_System_begin); \ -+ DYNSYM (ppl_Constraint_System_const_iterator_dereference); \ -+ DYNSYM (ppl_Constraint_System_const_iterator_equal_test); \ -+ DYNSYM (ppl_Constraint_System_const_iterator_increment); \ -+ DYNSYM (ppl_Constraint_System_end); \ -+ DYNSYM (ppl_Constraint_System_insert_Constraint); \ -+ DYNSYM (ppl_Constraint_System_space_dimension); \ -+ DYNSYM (ppl_Constraint_type); \ -+ DYNSYM (ppl_delete_Coefficient); \ -+ DYNSYM (ppl_delete_Constraint); \ -+ DYNSYM (ppl_delete_Constraint_System_const_iterator); \ -+ DYNSYM (ppl_delete_Linear_Expression); \ -+ DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron); \ -+ DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron_iterator); \ -+ DYNSYM (ppl_delete_Polyhedron); \ -+ DYNSYM (ppl_Linear_Expression_add_to_coefficient); \ -+ DYNSYM (ppl_Linear_Expression_add_to_inhomogeneous); \ -+ DYNSYM (ppl_Linear_Expression_coefficient); \ -+ DYNSYM (ppl_Linear_Expression_inhomogeneous_term); \ -+ DYNSYM (ppl_Linear_Expression_space_dimension); \ -+ DYNSYM (ppl_new_Coefficient); \ -+ DYNSYM (ppl_new_Coefficient_from_mpz_t); \ -+ DYNSYM (ppl_new_Constraint); \ -+ DYNSYM (ppl_new_Constraint_System); \ -+ DYNSYM (ppl_new_Constraint_System_const_iterator); \ -+ DYNSYM (ppl_new_C_Polyhedron_from_C_Polyhedron); \ -+ DYNSYM (ppl_new_C_Polyhedron_from_space_dimension); \ -+ DYNSYM (ppl_new_C_Polyhedron_recycle_Constraint_System); \ -+ DYNSYM (ppl_new_Linear_Expression); \ -+ DYNSYM (ppl_new_Linear_Expression_from_Constraint); \ -+ DYNSYM (ppl_new_Linear_Expression_from_Linear_Expression); \ -+ DYNSYM (ppl_new_Linear_Expression_with_dimension); \ -+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron); \ -+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron); \ -+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension); \ -+ DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_iterator); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_constraint); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_difference_assign); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_intersection_assign); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_is_empty); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_begin); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_end); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_increment); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_maximize); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_minimize); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_size); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_space_dimension); \ -+ DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign); \ -+ DYNSYM (ppl_Polyhedron_add_constraint); \ -+ DYNSYM (ppl_Polyhedron_add_constraints); \ -+ DYNSYM (ppl_Polyhedron_add_space_dimensions_and_embed); \ -+ DYNSYM (ppl_Polyhedron_get_constraints); \ -+ DYNSYM (ppl_Polyhedron_map_space_dimensions); \ -+ DYNSYM (ppl_Polyhedron_remove_space_dimensions); \ -+ DYNSYM (ppl_Polyhedron_space_dimension); \ -+ DYNSYM (ppl_subtract_Linear_Expression_from_Linear_Expression); \ -+ DYNSYM (pprint); \ -+ DYNSYM (stmt_block); \ -+ DYNSYM (stmt_for); \ -+ DYNSYM (stmt_guard); \ -+ DYNSYM (stmt_root); \ -+ DYNSYM (stmt_user); \ -+ DYNSYM (ppl_delete_Constraint_System); \ -+ DYNSYM (ppl_initialize); \ -+ DYNSYM (ppl_new_Constraint_System_from_Constraint); \ -+ DYNSYM (ppl_new_C_Polyhedron_from_Constraint_System); \ -+ DYNSYM (ppl_Polyhedron_affine_image); \ -+ DYNSYM (ppl_io_fprint_Pointset_Powerset_C_Polyhedron); \ -+ DYNSYM (ppl_new_PIP_Problem_from_constraints); \ -+ DYNSYM (ppl_PIP_Problem_is_satisfiable); \ -+ DYNSYM (ppl_delete_PIP_Problem); -+extern struct -+{ -+ bool inited; -+ void *h; -+#define DYNSYM(x) __typeof (x) *p_##x -+ DYNSYMS -+#undef DYNSYM -+} cloog_pointers__; -+ -+#define cloog_block_alloc (*cloog_pointers__.p_cloog_block_alloc) -+#define cloog_block_list_free (*cloog_pointers__.p_cloog_block_list_free) -+#define cloog_block_list_malloc (*cloog_pointers__.p_cloog_block_list_malloc) -+#define cloog_clast_create (*cloog_pointers__.p_cloog_clast_create) -+#define cloog_clast_free (*cloog_pointers__.p_cloog_clast_free) -+#define cloog_domain_free (*cloog_pointers__.p_cloog_domain_free) -+#define cloog_domain_matrix2domain (*cloog_pointers__.p_cloog_domain_matrix2domain) -+#define cloog_initialize (*cloog_pointers__.p_cloog_initialize) -+#ifndef CLOOG_ORG -+#undef cloog_loop_malloc -+#define cloog_loop_malloc(STATE) (*cloog_pointers__.p_cloog_loop_malloc) () -+#else -+#define cloog_loop_malloc (*cloog_pointers__.p_cloog_loop_malloc) -+#endif -+#define cloog_matrix_alloc (*cloog_pointers__.p_cloog_matrix_alloc) -+#define cloog_matrix_copy (*cloog_pointers__.p_cloog_matrix_copy) -+#define cloog_matrix_free (*cloog_pointers__.p_cloog_matrix_free) -+#define cloog_matrix_print (*cloog_pointers__.p_cloog_matrix_print) -+#define cloog_names_malloc (*cloog_pointers__.p_cloog_names_malloc) -+#define cloog_names_scalarize (*cloog_pointers__.p_cloog_names_scalarize) -+#define cloog_options_free (*cloog_pointers__.p_cloog_options_free) -+#ifndef CLOOG_ORG -+#undef cloog_options_malloc -+#define cloog_options_malloc(STATE) (*cloog_pointers__.p_cloog_options_malloc) () -+#undef cloog_program_dump_cloog -+#define cloog_program_dump_cloog(DUMPFILE, PROGRAM, SCATTERINGLIST) \ -+ (*cloog_pointers__.p_cloog_program_dump_cloog) (DUMPFILE, PROGRAM) -+#undef cloog_program_extract_scalars -+#define cloog_program_extract_scalars(PROG, SCATT, OPT) \ -+ (*cloog_pointers__.p_cloog_program_extract_scalars) (PROG, SCATT) -+#else -+#define cloog_options_malloc (*cloog_pointers__.p_cloog_options_malloc) -+#define cloog_program_dump_cloog (*cloog_pointers__.p_cloog_program_dump_cloog) -+#define cloog_program_extract_scalars (*cloog_pointers__.p_cloog_program_extract_scalars) -+#endif -+#define cloog_program_free (*cloog_pointers__.p_cloog_program_free) -+#define cloog_program_generate (*cloog_pointers__.p_cloog_program_generate) -+#define cloog_program_malloc (*cloog_pointers__.p_cloog_program_malloc) -+#define cloog_program_print (*cloog_pointers__.p_cloog_program_print) -+#ifndef CLOOG_ORG -+#undef cloog_program_scatter -+#define cloog_program_scatter(PROG, SCATT, OPT) \ -+ (*cloog_pointers__.p_cloog_program_scatter) (PROG, SCATT) -+#undef cloog_statement_alloc -+#define cloog_statement_alloc(STATE, INDEX) \ -+ (*cloog_pointers__.p_cloog_statement_alloc) (INDEX) -+#else -+#define cloog_program_scatter (*cloog_pointers__.p_cloog_program_scatter) -+#define cloog_statement_alloc (*cloog_pointers__.p_cloog_statement_alloc) -+#endif -+#define cloog_domain_union (*cloog_pointers__.p_cloog_domain_union) -+#define cloog_matrix_read (*cloog_pointers__.p_cloog_matrix_read) -+#define cloog_new_pol (*cloog_pointers__.p_cloog_new_pol) -+#define cloog_vector_gcd (*cloog_pointers__.p_cloog_vector_gcd) -+#define ppl_finalize (*cloog_pointers__.p_ppl_finalize) -+#define ppl_assign_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_assign_Coefficient_from_mpz_t) -+#define ppl_assign_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_assign_Linear_Expression_from_Linear_Expression) -+#define ppl_Coefficient_to_mpz_t (*cloog_pointers__.p_ppl_Coefficient_to_mpz_t) -+#define ppl_Constraint_coefficient (*cloog_pointers__.p_ppl_Constraint_coefficient) -+#define ppl_Constraint_inhomogeneous_term (*cloog_pointers__.p_ppl_Constraint_inhomogeneous_term) -+#define ppl_Constraint_space_dimension (*cloog_pointers__.p_ppl_Constraint_space_dimension) -+#define ppl_Constraint_System_begin (*cloog_pointers__.p_ppl_Constraint_System_begin) -+#define ppl_Constraint_System_const_iterator_dereference (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_dereference) -+#define ppl_Constraint_System_const_iterator_equal_test (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_equal_test) -+#define ppl_Constraint_System_const_iterator_increment (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_increment) -+#define ppl_Constraint_System_end (*cloog_pointers__.p_ppl_Constraint_System_end) -+#define ppl_Constraint_System_insert_Constraint (*cloog_pointers__.p_ppl_Constraint_System_insert_Constraint) -+#define ppl_Constraint_System_space_dimension (*cloog_pointers__.p_ppl_Constraint_System_space_dimension) -+#define ppl_Constraint_type (*cloog_pointers__.p_ppl_Constraint_type) -+#define ppl_delete_Coefficient (*cloog_pointers__.p_ppl_delete_Coefficient) -+#define ppl_delete_Constraint (*cloog_pointers__.p_ppl_delete_Constraint) -+#define ppl_delete_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_delete_Constraint_System_const_iterator) -+#define ppl_delete_Linear_Expression (*cloog_pointers__.p_ppl_delete_Linear_Expression) -+#define ppl_delete_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron) -+#define ppl_delete_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron_iterator) -+#define ppl_delete_Polyhedron (*cloog_pointers__.p_ppl_delete_Polyhedron) -+#define ppl_Linear_Expression_add_to_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_add_to_coefficient) -+#define ppl_Linear_Expression_add_to_inhomogeneous (*cloog_pointers__.p_ppl_Linear_Expression_add_to_inhomogeneous) -+#define ppl_Linear_Expression_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_coefficient) -+#define ppl_Linear_Expression_inhomogeneous_term (*cloog_pointers__.p_ppl_Linear_Expression_inhomogeneous_term) -+#define ppl_Linear_Expression_space_dimension (*cloog_pointers__.p_ppl_Linear_Expression_space_dimension) -+#define ppl_new_Coefficient (*cloog_pointers__.p_ppl_new_Coefficient) -+#define ppl_new_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_new_Coefficient_from_mpz_t) -+#define ppl_new_Constraint (*cloog_pointers__.p_ppl_new_Constraint) -+#define ppl_new_Constraint_System (*cloog_pointers__.p_ppl_new_Constraint_System) -+#define ppl_new_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_new_Constraint_System_const_iterator) -+#define ppl_new_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_C_Polyhedron) -+#define ppl_new_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_space_dimension) -+#define ppl_new_C_Polyhedron_recycle_Constraint_System (*cloog_pointers__.p_ppl_new_C_Polyhedron_recycle_Constraint_System) -+#define ppl_new_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression) -+#define ppl_new_Linear_Expression_from_Constraint (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Constraint) -+#define ppl_new_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Linear_Expression) -+#define ppl_new_Linear_Expression_with_dimension (*cloog_pointers__.p_ppl_new_Linear_Expression_with_dimension) -+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron) -+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron) -+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension) -+#define ppl_new_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_iterator) -+#define ppl_Pointset_Powerset_C_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_constraint) -+#define ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed) -+#define ppl_Pointset_Powerset_C_Polyhedron_difference_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_difference_assign) -+#define ppl_Pointset_Powerset_C_Polyhedron_intersection_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_intersection_assign) -+#define ppl_Pointset_Powerset_C_Polyhedron_is_empty (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_is_empty) -+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_begin (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_begin) -+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference) -+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_end (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_end) -+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test) -+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_increment (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_increment) -+#define ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions) -+#define ppl_Pointset_Powerset_C_Polyhedron_maximize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_maximize) -+#define ppl_Pointset_Powerset_C_Polyhedron_minimize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_minimize) -+#define ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions) -+#define ppl_Pointset_Powerset_C_Polyhedron_size (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_size) -+#define ppl_Pointset_Powerset_C_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_space_dimension) -+#define ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign) -+#define ppl_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Polyhedron_add_constraint) -+#define ppl_Polyhedron_add_constraints (*cloog_pointers__.p_ppl_Polyhedron_add_constraints) -+#define ppl_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Polyhedron_add_space_dimensions_and_embed) -+#define ppl_Polyhedron_get_constraints (*cloog_pointers__.p_ppl_Polyhedron_get_constraints) -+#define ppl_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_map_space_dimensions) -+#define ppl_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_remove_space_dimensions) -+#define ppl_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Polyhedron_space_dimension) -+#define ppl_subtract_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_subtract_Linear_Expression_from_Linear_Expression) -+#define pprint (*cloog_pointers__.p_pprint) -+#define stmt_block (*cloog_pointers__.p_stmt_block) -+#define stmt_for (*cloog_pointers__.p_stmt_for) -+#define stmt_guard (*cloog_pointers__.p_stmt_guard) -+#define stmt_root (*cloog_pointers__.p_stmt_root) -+#define stmt_user (*cloog_pointers__.p_stmt_user) -+#define ppl_delete_Constraint_System (*cloog_pointers__.p_ppl_delete_Constraint_System) -+#define ppl_initialize (*cloog_pointers__.p_ppl_initialize) -+#define ppl_new_Constraint_System_from_Constraint (*cloog_pointers__.p_ppl_new_Constraint_System_from_Constraint) -+#define ppl_new_C_Polyhedron_from_Constraint_System (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_Constraint_System) -+#define ppl_Polyhedron_affine_image (*cloog_pointers__.p_ppl_Polyhedron_affine_image) -+#define ppl_io_fprint_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_io_fprint_Pointset_Powerset_C_Polyhedron) -+#define ppl_new_PIP_Problem_from_constraints (*cloog_pointers__.p_ppl_new_PIP_Problem_from_constraints) -+#define ppl_PIP_Problem_is_satisfiable (*cloog_pointers__.p_ppl_PIP_Problem_is_satisfiable) -+#define ppl_delete_PIP_Problem (*cloog_pointers__.p_ppl_delete_PIP_Problem) -+ -+#define cloog_finalize (*cloog_pointers__.p_ppl_finalize) -+ -+ - #endif /* GRAPHITE_CLOOG_COMPAT_H */ ---- a/gcc/graphite-poly.h -+++ b/gcc/graphite-poly.h -@@ -22,6 +22,8 @@ along with GCC; see the file COPYING3. If not see - #ifndef GCC_GRAPHITE_POLY_H - #define GCC_GRAPHITE_POLY_H - -+#include "graphite-cloog-util.h" -+ - typedef struct poly_dr *poly_dr_p; - DEF_VEC_P(poly_dr_p); - DEF_VEC_ALLOC_P (poly_dr_p, heap); ---- a/gcc/graphite.c -+++ b/gcc/graphite.c -@@ -56,6 +56,35 @@ along with GCC; see the file COPYING3. If not see - - CloogState *cloog_state; - -+__typeof (cloog_pointers__) cloog_pointers__; -+ -+static bool -+init_cloog_pointers (void) -+{ -+ void *h; -+ -+ if (cloog_pointers__.inited) -+ return cloog_pointers__.h != NULL; -+ h = dlopen ("libcloog.so.0", RTLD_LAZY); -+ cloog_pointers__.h = h; -+ if (h == NULL) -+ return false; -+#define DYNSYM(x) \ -+ do \ -+ { \ -+ union { __typeof (cloog_pointers__.p_##x) p; void *q; } u; \ -+ u.q = dlsym (h, #x); \ -+ if (u.q == NULL) \ -+ return false; \ -+ cloog_pointers__.p_##x = u.p; \ -+ } \ -+ while (0) -+ DYNSYMS -+#undef DYNSYM -+ return true; -+} -+ -+ - /* Print global statistics to FILE. */ - - static void -@@ -201,6 +230,12 @@ graphite_initialize (void) - return false; - } - -+ if (!init_cloog_pointers ()) -+ { -+ sorry ("Graphite loop optimizations cannot be used"); -+ return false; -+ } -+ - scev_reset (); - recompute_all_dominators (); - initialize_original_copy_tables (); diff --git a/testing/gcc/APKBUILD b/testing/gcc/APKBUILD deleted file mode 100644 index 3d5ce070e..000000000 --- a/testing/gcc/APKBUILD +++ /dev/null @@ -1,381 +0,0 @@ -# Maintainer: Natanael Copa -pkgname=gcc -pkgver=4.6.1 -_piepatchver=0.4.5 -_specs_ver=0.2.0 -_specs_gcc_ver=4.4.3 - -_uclibc_abiver=0.9.32 - -pkgrel=3 -pkgdesc="The GNU Compiler Collection" -url="http://gcc.gnu.org" -arch="all" -license="GPL LGPL" -depends="binutils libgcc libgomp libobjc" -makedepends="bison flex gmp-dev mpfr-dev texinfo libmpc-dev gawk zlib-dev zip - cloog-dev" -subpackages="$pkgname-doc libstdc++:libcxx g++:gpp libgcc libgomp $pkgname-go - libgo" -replaces="libstdc++" - -if [ -n "$BOOTSTRAP" ]; then - LANG_OBJC=off - LANG_JAVA=off -fi - -if [ "$LANG_OBJC" != "off" ]; then - subpackages="$subpackages libobjc" -fi -if [ "$LANG_JAVA" != "off" ]; then - subpackages="$subpackages $pkgname-java libgcj" - makedepends="$makedepends paxctl" -fi -if [ "$LANG_GO" != "off" ]; then - _languages="$_languages,go" - fi - - - -source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-core-$pkgver.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-g++-$pkgver.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-objc-$pkgver.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-java-$pkgver.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-go-$pkgver.tar.bz2 - http://distfiles.gentoo.org/distfiles/gcc-4.6.1-piepatches-v${_piepatchver}.tar.bz2 - http://distfiles.gentoo.org/distfiles/gcc-$_specs_gcc_ver-specs-$_specs_ver.tar.bz2 - ftp://sourceware.org/pub/java/ecj-latest.jar - - 08_all_cross-compile.patch - 11_all_default-warn-format-security.patch - 12_all_default-warn-trampolines.patch - 15_all_libgomp-Werror.patch - 34_all_ia64_note.GNU-stack.patch - 51_all_libiberty-pic.patch - 74_all_gcc46_cloog-dl.patch - - gcc-spec-env.patch - pt_gnu_eh_frame.patch - uclibc-getipinfo.patch - gcc-4.6-dynamic-linker.patch - gcc-4.6-pr32219.patch - boehem-gc-uclibc.patch - gcc-pure64.patch - gcc-go.patch - gcc-libgcc-x86.get_pc_thunk.bx.patch - " - -# we build out-of-tree -_gccdir="$srcdir"/gcc-$pkgver -_builddir="$srcdir/build" - -prepare() { - cd "$_gccdir" - # verify we have set CHOST - if [ -z "$CHOST" ]; then - error "CHOST not set" - return 1 - fi - - # PIE patches from gentoo - # thanks to Zorry for hard work on those patches - for i in "$srcdir"/piepatch/*.patch; do - msg "Applying $i" - patch -p0 -i $i || patch -p1 -i $i || return 1 - done - - # Gentoo and uclibc patches - _err= - for i in $source; do - case "$i" in - *.patch) - msg "Applying $i" - patch -p1 -i "$srcdir"/$i || _err="$_err $i" - ;; - esac - done - - if [ -n "$_err" ]; then - error "The following patches failed:" - for i in $_err; do - echo " $i" - done - return 1 - fi - - #PR33200 - sed -i 's/use_fixproto=yes/:/' gcc/config.gcc || return 1 - - # enable hardened cflags by default - # building gcc wih PIE seem to hit some strange bug. we probably run - # out of some resource. so we disable PIE for gcc while enabling it - # by default for everything else. - local _hard_cflags="-DEFAULT_PIE_SSP -DEFAULT_RELRO -DEFAULT_BIND_NOW" - sed -e "/^ALL_CFLAGS/iHARD_CFLAGS = ${_hard_cflags}" \ - -e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) -fno-PIE |' \ - -i gcc/Makefile.in || return 1 - sed -e "/stage1_cflags=/s/-fno-stack-protector/-fno-stack-protector -fno-PIE/" \ - -i configure - - # see http://gcc.gnu.org/ml/java/2008-04/msg00027.html - mv "$srcdir"/ecj-latest.jar ecj.jar - - echo ${pkgver} > gcc/BASE-VER -} - -build() { - local _languages= _dynamic_linker= - cd "$_gccdir" - export CFLAGS="-fno-stack-protector" - [ -z "$CBUILD" ] && CBUILD="$CHOST" - [ -z "$CTARGET" ] && CTARGET="$CHOST" - - case "$CHOST" in - x86_64-*-uclibc) - _dynamic_linker="--with-dynamic-linker=ld64-uClibc.so.$_uclibc_abiver" - ;; - *-uclibc) - _dynamic_linker="--with-dynamic-linker=ld-uClibc.so.$_uclibc_abiver" - ;; - *) _dynamic_linker= - ;; - esac - - _languages=c,c++ - # we can disable OBJC with LANG_OBJC=off - if [ "$LANG_OBJC" != "off" ]; then - _languages=$_languages,objc - fi - - # and disable java with LANG_JAVA=off - if [ "$LANG_JAVA" != "off" ]; then - _languages="$_languages,java" - fi - - if [ "$LANG_GO" != "off" ]; then - _languages="$_languages,go" - fi - - # --enable-target-optspace is broken on powerpc - if [ "$CARCH" != "powerpc" ]; then - _target_optspace="--enable-target-optspace" - fi - - msg "Building the following:" - echo "" - echo " CBUILD=$CBUILD" - echo " CHOST=$CHOST" - echo " CTARGET=$CTARGET" - echo " languages=$_languages" - echo " dynamic_linker=$_dynamic_linker" - echo " target_optspace=$_target_optspace" - echo "" - - mkdir -p "$_builddir" - cd "$_builddir" - "$_gccdir"/configure --prefix=/usr \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --build=${CBUILD} \ - --host=${CHOST} \ - --target=${CTARGET} \ - --with-pkgversion="Alpine ${pkgver}-r${pkgrel}" \ - --disable-altivec \ - --disable-checking \ - --disable-fixed-point \ - --disable-libssp \ - --disable-libstdcxx-pch \ - --disable-multilib \ - --disable-nls \ - --disable-werror \ - --enable-__cxa_atexit \ - --enable-cld \ - --enable-esp \ - --enable-cloog-backend \ - --enable-languages=$_languages \ - --enable-shared \ - $_target_optspace \ - --enable-tls \ - --enable-threads \ - $_dynamic_linker \ - --with-dynamic-linker-prefix=/lib \ - --with-system-zlib \ - --without-system-libunwind - - make || return 1 -} - -package() { - cd "$_builddir" - make -j1 DESTDIR="${pkgdir}" install || return 1 - find "$pkgdir" -name '*.la' -delete || return 1 - - ln -s gcc "$pkgdir"/usr/bin/cc - - # binutils provides libiberty.a - rm -f "$pkgdir"/usr/lib/libiberty.a - - # install the specs - cd "$srcdir"/specs - install -d "$pkgdir"/usr/share/gcc - for i in *.specs; do - install -m644 $i "$pkgdir"/usr/share/gcc/$i || return 1 - done - - # we dont support gcj -static - # and saving 35MB is not bad. - find "$pkgdir" -name libgcj.a -o -name libgtkpeer.a \ - -o -name libgjsmalsa.a -o -name libgcj-tools.a \ - -o -name libjvm.a -o -name libgij.a -o -name libgcj_bc.a \ - -o -name libjavamath.a \ - | xargs rm -f \ - || return 1 - - [ "$LANG_JAVA" = "on" ] && \ - sed -i -e 's/lib: /&%{static:%eJava programs cannot be linked statically}/' \ - "$pkdir"/usr/lib/libgcj.spec - - # remove ffi - rm "$pkgdir"/usr/lib/libffi* - find "$pkgdir" -name 'ffi*.h' | xargs rm -f - - mkdir -p "$pkgdir"/usr/share/gdb/python/auto-load/usr/lib - mv "$pkgdir"/usr/lib/*-gdb.py \ - "$pkgdir"/usr/share/gdb/python/auto-load/usr/lib/ -} - -libcxx() { - pkgdesc="GNU C++ standard runtime library" - depends= - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libstdc++.so.* "$subpkgdir"/usr/lib/ -} - -gpp() { - pkgdesc="GNU C++ standard library and compiler" - depends="libstdc++" - local libexec=usr/libexec/gcc/${CHOST:-$_chost}/$pkgver - mkdir -p "$subpkgdir/$libexec" \ - "$subpkgdir"/usr/bin \ - "$subpkgdir"/usr/include \ - "$subpkgdir"/usr/lib \ - - mv "$pkgdir/$libexec/cc1plus" "$subpkgdir/$libexec/" - mv "$pkgdir"/usr/lib/*++* "$subpkgdir"/usr/lib/ - mv "$pkgdir"/usr/include/c++ "$subpkgdir"/usr/include/ - mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/ -} - -libobjc() { - pkgdesc="GNU ObjectiveC library" - replaces="objc" - mkdir -p "$subpkgdir"/usr/lib - - mv "$pkgdir"/usr/lib/*objc* "$subpkgdir"/usr/lib/ -} - -libgcc() { - pkgdesc="GNU C compiler runtime libraries" - depends= - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libgcc_s.so.* "$subpkgdir"/usr/lib/ -} - -libgomp() { - pkgdesc="GCC shared-memory parallel programming API library" - depends= - replaces="gcc" - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libgomp.so.* "$subpkgdir"/usr/lib/ -} - -java() { - pkgdesc="Java support for GCC" - paxctl -c -p -e -m "$pkgdir"/usr/libexec/gcc/*/*/ecj1 || return 1 - mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib - cd "$pkgdir"/usr/bin - mv gcj gcj-dbtool gjavah gcjh jcf-dump "$subpkgdir"/usr/bin/ - cd "$pkgdir" - for i in $(find usr/ -name ecj1 -o -name jc1 -o -name jvgenmain); do - mkdir -p "$subpkgdir"/${i%/*} - mv "$pkgdir"/$i "$subpkgdir"/$i || return 1 - done - mv \ - "$pkgdir"/usr/lib/libgcj*.so \ - "$pkgdir"/usr/lib/libgij.so \ - "$pkgdir"/usr/lib/libgcj.spec \ - "$subpkgdir"/usr/lib/ -} - -libgcj() { - pkgdesc="Java runtime library for gcc" - mkdir -p "$subpkgdir"/usr/bin - cd "$pkgdir"/usr/bin - mv aot-compile gappletviewer gc-analyze gij gjar gjarsigner gkeytool\ - gnative2ascii gorbd grmic grmid grmiregistry gserialver \ - gtnameserv i486-alpine-linux-uclibc-gcj jv-convert \ - rebuild-gcj-db \ - "$subpkgdir"/usr/bin/ - cd "$pkgdir" - for i in $(find usr/lib -name jc1 -o -name jvgenmain); do - mkdir -p "$subpkgdir"/${i%/*} - mv "$pkgdir"/$i "$subpkgdir"/$i || return 1 - done - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/gcj-* \ - "$pkgdir"/usr/lib/libgcj*.so.* \ - "$pkgdir"/usr/lib/libgij.so.* \ - "$pkgdir"/usr/lib/logging.properties \ - "$pkgdir"/usr/lib/security \ - "$subpkgdir"/usr/lib/ - - mkdir -p "$subpkgdir"/usr/share/ - mv "$pkgdir"/usr/share/java "$subpkgdir"/usr/share/ -} - -libgo() { - pkgdesc="Go runtime library for GCC" - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libgo.so.* "$subpkgdir"/usr/lib/ -} - -go() { - pkgdesc="Go support for GCC" - depends="libgo" - local libexec=usr/libexec/gcc/${CHOST:-$_chost}/$pkgver - mkdir -p "$subpkgdir"/$libexec \ - "$subpkgdir"/usr/lib \ - "$subpkgdir"/usr/bin || return 1 - mv "$pkgdir"/usr/lib/go "$subpkgdir"/usr/lib/ || return 1 - mv "$pkgdir"/usr/bin/*gccgo "$subpkgdir"/usr/bin/ || return 1 - mv "$pkgdir"/$libexec/go1 "$subpkgdir"/$libexec/ || return 1 - mv "$pkgdir"/usr/lib/libgo.a \ - "$pkgdir"/usr/lib/libgo.so \ - "$pkgdir"/usr/lib/libgobegin.a \ - "$subpkgdir"/usr/lib/ || return 1 -} - -md5sums="0c0e7e35d2215e19de9c97efba507553 gcc-core-4.6.1.tar.bz2 -0d75ca7ca35b1e7f252223f9d23a6ad1 gcc-g++-4.6.1.tar.bz2 -cbf0d4b701827922cf37ba6a4ace0079 gcc-objc-4.6.1.tar.bz2 -32431ba42c1d18e64f2abfdfc834ef94 gcc-java-4.6.1.tar.bz2 -a69f9f156172c2e1da5590faa70f4fc7 gcc-go-4.6.1.tar.bz2 -5dc7efd84b526801b94fed21462aea62 gcc-4.6.1-piepatches-v0.4.5.tar.bz2 -441c76504e1d97170117c294e65c7a72 gcc-4.4.3-specs-0.2.0.tar.bz2 -d7cd6a27c8801e66cbaa964a039ecfdb ecj-latest.jar -b1b5987e7c53f2c8a0fa929444bd9129 08_all_cross-compile.patch -34e4a0260e9dbd434ac84b9dda381240 11_all_default-warn-format-security.patch -a78022925c0ecb1f13384238b81adbe7 12_all_default-warn-trampolines.patch -6862cb5268fef68a4a1906e0c4ea0d46 15_all_libgomp-Werror.patch -1a8ce6b7a0b9a115e37fdda311704451 34_all_ia64_note.GNU-stack.patch -d8692c56f04b92667096f59d843e95c5 51_all_libiberty-pic.patch -656565d2e2c30ea12a398ef6959a9391 74_all_gcc46_cloog-dl.patch -a695d7648509b4f8e18b389a19e6037c gcc-spec-env.patch -2db1e3482c5dd59dab70f701afa2ca80 pt_gnu_eh_frame.patch -6cc2385c5bbd6d0da6eaedd53c8bf547 uclibc-getipinfo.patch -3be85df859fa1d5c875bbfcc2dee8288 gcc-4.6-dynamic-linker.patch -32e8e4c0e23ed8f5de95a591cb30f1da gcc-4.6-pr32219.patch -2c6cb49bb9bfd8b6e690222e66ccc901 boehem-gc-uclibc.patch -d1d3ad2b0c185b5548125a1b81bee154 gcc-pure64.patch -c94014ece84407a36d239417a2bad25d gcc-go.patch -978e3fac97ad99902a86bafc6f283727 gcc-libgcc-x86.get_pc_thunk.bx.patch" diff --git a/testing/gcc/boehem-gc-uclibc.patch b/testing/gcc/boehem-gc-uclibc.patch deleted file mode 100644 index 0fa688410..000000000 --- a/testing/gcc/boehem-gc-uclibc.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./boehm-gc/include/gc.h.orig -+++ ./boehm-gc/include/gc.h -@@ -503,7 +503,7 @@ - #if defined(__linux__) || defined(__GLIBC__) - # include - # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ -- && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) - # ifndef GC_HAVE_BUILTIN_BACKTRACE - # define GC_HAVE_BUILTIN_BACKTRACE - # endif diff --git a/testing/gcc/gcc-4.6-dynamic-linker.patch b/testing/gcc/gcc-4.6-dynamic-linker.patch deleted file mode 100644 index a6b235cd1..000000000 --- a/testing/gcc/gcc-4.6-dynamic-linker.patch +++ /dev/null @@ -1,459 +0,0 @@ -commit d929f627aba264e63cf779cd4ca51af97b076445 -Author: Natanael Copa -Date: Tue Sep 28 09:45:17 2010 +0000 - - Submitted By: Kevin Day - Date: 2008-12-19 - Initial Package Version: 4.3.2 - Upstream Status: Not submitted - Description: Why not just be able to define the prefix of the dynamic linker instead of hardcoding it.. - This includes the --nostdinc patch as well, so think of this as a specs-3 patch - This also allows for specifying the dynamic-linker as well - -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index ae2416b..b0b9b2c 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -971,7 +971,7 @@ INTERNAL_CFLAGS = -DIN_GCC @CROSS@ - # This is the variable actually used when we compile. If you change this, - # you probably want to update BUILD_CFLAGS in configure.ac - ALL_CFLAGS = $(ESP_NOPIE_CFLAGS) $(T_CFLAGS) $(CFLAGS-$@) \ -- $(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@ -+ $(CFLAGS) $(INTERNAL_CFLAGS) $(COVERAGE_FLAGS) $(WARN_CFLAGS) @DEFS@ @NOSTDINC@ - - # The C++ version. - ALL_CXXFLAGS = $(T_CFLAGS) $(CXXFLAGS) $(INTERNAL_CFLAGS) \ -@@ -2105,6 +2105,8 @@ DRIVER_DEFINES = \ - -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \ - -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \ - -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \ -+ -DDYNAMIC_LINKER_PREFIX=\"@DYNAMICLINKERPREFIX@\" \ -+ -DDYNAMIC_LINKER=\"@DYNAMICLINKER@\" \ - -DDEFAULT_TARGET_VERSION=\"$(version)\" \ - -DDEFAULT_TARGET_MACHINE=\"$(target_noncanonical)\" \ - -DSTANDARD_BINDIR_PREFIX=\"$(bindir)/\" \ -diff --git a/gcc/config/alpha/gnu.h b/gcc/config/alpha/gnu.h -index f98c3e7..bd16dcf 100644 ---- a/gcc/config/alpha/gnu.h -+++ b/gcc/config/alpha/gnu.h -@@ -34,7 +34,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - } while (0) - - #undef ELF_DYNAMIC_LINKER --#define ELF_DYNAMIC_LINKER "/lib/ld.so" -+#define ELF_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef STARTFILE_SPEC - #define STARTFILE_SPEC \ -diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h -index c48fc93..3068717 100644 ---- a/gcc/config/alpha/linux-elf.h -+++ b/gcc/config/alpha/linux-elf.h -@@ -27,8 +27,8 @@ along with GCC; see the file COPYING3. If not see - #define EXTRA_SPECS \ - { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" --#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #if DEFAULT_LIBC == LIBC_UCLIBC - #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" - #else -diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h -index fce1ed1..c3bcd50 100644 ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -61,7 +61,7 @@ - /* Use ld-linux.so.3 so that it will be possible to run "classic" - GNU/Linux binaries on an EABI system. */ - #undef GLIBC_DYNAMIC_LINKER --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to - use the GNU/Linux version, not the generic BPABI version. */ -diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h -index 9fdca41..65b0a5a 100644 ---- a/gcc/config/arm/linux-elf.h -+++ b/gcc/config/arm/linux-elf.h -@@ -62,7 +62,7 @@ - - #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \ - %{b} \ -diff --git a/gcc/config/bfin/linux.h b/gcc/config/bfin/linux.h -index 5c716cd..b5e464e 100644 ---- a/gcc/config/bfin/linux.h -+++ b/gcc/config/bfin/linux.h -@@ -45,7 +45,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - %{shared:-G -Bdynamic} \ - %{!shared: %{!static: \ - %{rdynamic:-export-dynamic} \ -- -dynamic-linker /lib/ld-uClibc.so.0} \ -+ -dynamic-linker DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER} \ - %{static}} -init __init -fini __fini" - - #define MD_UNWIND_SUPPORT "config/bfin/linux-unwind.h" -diff --git a/gcc/config/cris/linux.h b/gcc/config/cris/linux.h -index 38f0a7e..6893407 100644 ---- a/gcc/config/cris/linux.h -+++ b/gcc/config/cris/linux.h -@@ -103,7 +103,7 @@ along with GCC; see the file COPYING3. If not see - #undef CRIS_DEFAULT_CPU_VERSION - #define CRIS_DEFAULT_CPU_VERSION CRIS_CPU_NG - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - /* We need an -rpath-link to ld.so.1, and presumably to each directory - specified with -B. */ -diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h -index 84d8127..fb3e79a 100644 ---- a/gcc/config/freebsd-spec.h -+++ b/gcc/config/freebsd-spec.h -@@ -144,9 +144,9 @@ is built with the --enable-threads configure-time option.} \ - #endif - - #if FBSD_MAJOR < 6 --#define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1" -+#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #else --#define FBSD_DYNAMIC_LINKER "/libexec/ld-elf.so.1" -+#define FBSD_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #endif - - #if defined(HAVE_LD_EH_FRAME_HDR) -diff --git a/gcc/config/frv/linux.h b/gcc/config/frv/linux.h -index 71cd094..221d01d 100644 ---- a/gcc/config/frv/linux.h -+++ b/gcc/config/frv/linux.h -@@ -35,7 +35,7 @@ - #define ENDFILE_SPEC \ - "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC "\ -diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h -index 2a31880..9c08adb 100644 ---- a/gcc/config/i386/linux.h -+++ b/gcc/config/i386/linux.h -@@ -100,7 +100,7 @@ along with GCC; see the file COPYING3. If not see - - /* These macros may be overridden in k*bsd-gnu.h and i386/k*bsd-gnu.h. */ - #define LINK_EMULATION "elf_i386" --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef ASM_SPEC - #define ASM_SPEC \ -diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h -index 867de59..274acca 100644 ---- a/gcc/config/i386/linux64.h -+++ b/gcc/config/i386/linux64.h -@@ -58,8 +58,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - When the -shared link option is used a final link is not being - done. */ - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" -+#define GLIBC_DYNAMIC_LINKER32 "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #if TARGET_64BIT_DEFAULT - #define SPEC_32 "m32" -diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h -index 587a4f4..450fcb5 100644 ---- a/gcc/config/ia64/linux.h -+++ b/gcc/config/ia64/linux.h -@@ -61,7 +61,7 @@ do { \ - /* Define this for shared library support because it isn't in the main - linux.h file. */ - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC "\ -diff --git a/gcc/config/knetbsd-gnu.h b/gcc/config/knetbsd-gnu.h -index 4cc8eb7..bb7a063 100644 ---- a/gcc/config/knetbsd-gnu.h -+++ b/gcc/config/knetbsd-gnu.h -@@ -34,5 +34,5 @@ along with GCC; see the file COPYING3. If not see - - #ifdef GLIBC_DYNAMIC_LINKER - #undef GLIBC_DYNAMIC_LINKER --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #endif -diff --git a/gcc/config/linux.h b/gcc/config/linux.h -index e567e9a..c052fd0 100644 ---- a/gcc/config/linux.h -+++ b/gcc/config/linux.h -@@ -117,9 +117,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - GLIBC_DYNAMIC_LINKER must be defined for each target using them, or - GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets - supporting both 32-bit and 64-bit compilation. */ --#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" -+#define UCLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" - #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" - #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" -@@ -135,3 +135,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - - /* Whether we have sincos that follows the GNU extension. */ - #define TARGET_HAS_SINCOS (OPTION_GLIBC || OPTION_BIONIC) -+ -+#ifdef NOSTDINC -+#undef STANDARD_INCLUDE_DIR -+#define STANDARD_INCLUDE_DIR 0 -+#endif -diff --git a/gcc/config/m32r/linux.h b/gcc/config/m32r/linux.h -index 0515e5b..019e850 100644 ---- a/gcc/config/m32r/linux.h -+++ b/gcc/config/m32r/linux.h -@@ -58,7 +58,7 @@ - - /* If ELF is the default format, we should not use /lib/elf. */ - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #if TARGET_LITTLE_ENDIAN -diff --git a/gcc/config/m68k/linux.h b/gcc/config/m68k/linux.h -index 1d73ee0..e57cf50 100644 ---- a/gcc/config/m68k/linux.h -+++ b/gcc/config/m68k/linux.h -@@ -84,7 +84,7 @@ along with GCC; see the file COPYING3. If not see - - /* If ELF is the default format, we should not use /lib/elf. */ - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC "-m m68kelf %{shared} \ -diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h -index 0512ef7..7efe2fd 100644 ---- a/gcc/config/mips/linux.h -+++ b/gcc/config/mips/linux.h -@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see - #undef MIPS_DEFAULT_GVALUE - #define MIPS_DEFAULT_GVALUE 0 - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - /* Borrowed from sparc/linux.h */ - #undef LINK_SPEC -diff --git a/gcc/config/mips/linux64.h b/gcc/config/mips/linux64.h -index 2f24dfa..850cb22 100644 ---- a/gcc/config/mips/linux64.h -+++ b/gcc/config/mips/linux64.h -@@ -35,10 +35,10 @@ along with GCC; see the file COPYING3. If not see - %{!shared: \ - %{profile:-lc_p} %{!profile:-lc}}" - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1" --#define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1" --#define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" --#define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" -+#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define BIONIC_DYNAMIC_LINKERN32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #define LINUX_DYNAMIC_LINKERN32 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ - BIONIC_DYNAMIC_LINKERN32) -diff --git a/gcc/config/mn10300/linux.h b/gcc/config/mn10300/linux.h -index ac9f8c5..8ab78b1 100644 ---- a/gcc/config/mn10300/linux.h -+++ b/gcc/config/mn10300/linux.h -@@ -32,7 +32,7 @@ - #undef ASM_SPEC - #define ASM_SPEC "%{Wa,*:%*}" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \ -diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h -index da7bca3..c36e7d6 100644 ---- a/gcc/config/rs6000/linux64.h -+++ b/gcc/config/rs6000/linux64.h -@@ -348,10 +348,10 @@ extern int dot_symbols; - #undef LINK_OS_DEFAULT_SPEC - #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld64.so.1" --#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" --#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" -+#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define UCLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - #if DEFAULT_LIBC == LIBC_UCLIBC - #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" - #elif DEFAULT_LIBC == LIBC_GLIBC -diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h -index ddbcfa9..59bfd28 100644 ---- a/gcc/config/s390/linux.h -+++ b/gcc/config/s390/linux.h -@@ -72,8 +72,8 @@ along with GCC; see the file COPYING3. If not see - #define MULTILIB_DEFAULTS { "m31" } - #endif - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" --#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" -+#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC \ -diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h -index d513af8..2ad27a7 100644 ---- a/gcc/config/sh/linux.h -+++ b/gcc/config/sh/linux.h -@@ -47,7 +47,7 @@ along with GCC; see the file COPYING3. If not see - - #define TARGET_ASM_FILE_END file_end_indicate_exec_stack - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux" -diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h -index b12c881..83bdd8e 100644 ---- a/gcc/config/sparc/linux.h -+++ b/gcc/config/sparc/linux.h -@@ -83,7 +83,7 @@ along with GCC; see the file COPYING3. If not see - - /* If ELF is the default format, we should not use /lib/elf. */ - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ -diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h -index c2e78d7..8481a34 100644 ---- a/gcc/config/sparc/linux64.h -+++ b/gcc/config/sparc/linux64.h -@@ -109,8 +109,8 @@ along with GCC; see the file COPYING3. If not see - - /* If ELF is the default format, we should not use /lib/elf. */ - --#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" --#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" -+#define GLIBC_DYNAMIC_LINKER32 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER -+#define GLIBC_DYNAMIC_LINKER64 DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #ifdef SPARC_BI_ARCH - -diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h -index 69ab626..ebc8e0b 100644 ---- a/gcc/config/xtensa/linux.h -+++ b/gcc/config/xtensa/linux.h -@@ -43,7 +43,7 @@ along with GCC; see the file COPYING3. If not see - %{mlongcalls:--longcalls} \ - %{mno-longcalls:--no-longcalls}" - --#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" -+#define GLIBC_DYNAMIC_LINKER DYNAMIC_LINKER_PREFIX "/" DYNAMIC_LINKER - - #undef LINK_SPEC - #define LINK_SPEC \ -diff --git a/gcc/configure b/gcc/configure -index b623a4a..230719b 100755 ---- a/gcc/configure -+++ b/gcc/configure -@@ -757,6 +757,9 @@ AWK - SET_MAKE - REPORT_BUGS_TEXI - REPORT_BUGS_TO -+DYNAMICLINKER -+DYNAMICLINKERPREFIX -+NOSTDINC - PKGVERSION - onestep - CONFIGURE_SPECS -@@ -1657,6 +1660,14 @@ Optional Packages: - --with-gc={page,zone} choose the garbage collection mechanism to use - with the compiler - --with-system-zlib use installed libz -+ --with-dynamic-linker=PATH -+ specifies path to dynamic linker. -+ example: "/lib/ld-linux.so.2", where this defines "ld-linux.so.2" -+ --with-dynamic-linker-prefix=PATH -+ specifies path to dynamic linker. -+ example: "/lib/ld-linux.so.2", where this defines "/lib" -+ --with-nostdinc build gcc to ignore standard include directories. -+ You will have to use --with-local-prefix with this option. - --with-slibdir=DIR shared libraries in DIR [LIBDIR] - - Some influential environment variables: -@@ -6065,6 +6076,47 @@ fi - - - -+# Check whether --with-dynamic-linker was given. -+ -+DYNAMICLINKER="ld-linux.so.2" ; -+if test "${with_dynamic_linker+set}" = set; then -+ withval="$with_dynamic_linker" -+ case "${withval}" in -+yes) { { echo "$as_me:$LINENO: error: bad value "${withval}". Use something like --with-dynamic-linker=$DYNAMICLINKER" >&5 -+echo "$as_me: error: bad value "${withval}". Use something like --with-dynamic-linker=$DYNAMICLINKER" >&2;} -+ { (exit 1); exit 1; }; } ;; -+no) ;; -+*) DYNAMICLINKER=$withval ;; -+esac -+fi; -+ -+# Check whether --with-dynamic-linker-prefix= was given. -+ -+DYNAMICLINKERPREFIX="/lib" ; -+if test "${with_dynamic_linker_prefix+set}" = set; then -+ withval="$with_dynamic_linker_prefix" -+ case "${withval}" in -+yes) { { echo "$as_me:$LINENO: error: bad value "${withval}". Use --with-dynamic-linker-prefix=/path/to/lib/" >&5 -+echo "$as_me: error: bad value "${withval}". Use --with-dynamic-linker-prefix=/path/to/lib/" >&2;} -+ { (exit 1); exit 1; }; } ;; -+no) ;; -+*) DYNAMICLINKERPREFIX=$withval ;; -+esac -+ -+fi; -+ -+# Check whether --with-nostdinc was given. -+ -+if test "${with_nostdinc+set}" = set; then -+ withval="$with_nostdinc" -+ case "${withval}" in -+yes) NOSTDINC="-DNOSTDINC" ;; -+no) ;; -+*) NOSTDINC="-DNOSTDINC" ;; -+esac -+fi; -+ -+ - - # --------------------- - # Warnings and checking diff --git a/testing/gcc/gcc-4.6-pr32219.patch b/testing/gcc/gcc-4.6-pr32219.patch deleted file mode 100644 index 8233e5b23..000000000 --- a/testing/gcc/gcc-4.6-pr32219.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- ./gcc/varasm.c.orig -+++ ./gcc/varasm.c -@@ -6758,6 +6758,10 @@ - /* Static variables are always local. */ - else if (! TREE_PUBLIC (exp)) - local_p = true; -+ /* Weak data can be overridden by a strong symbol -+ in another module and so are not local. */ -+ else if (DECL_WEAK (exp)) -+ local_p = false; - /* A variable is local if the user has said explicitly that it will - be. */ - else if ((DECL_VISIBILITY_SPECIFIED (exp) -@@ -6771,11 +6775,6 @@ - local. */ - else if (DECL_VISIBILITY (exp) != VISIBILITY_DEFAULT) - local_p = true; -- /* Default visibility weak data can be overridden by a strong symbol -- in another module and so are not local. */ -- else if (DECL_WEAK (exp) -- && !resolved_locally) -- local_p = false; - /* If PIC, then assume that any global name can be overridden by - symbols resolved from other modules. */ - else if (shlib) diff --git a/testing/gcc/gcc-go.patch b/testing/gcc/gcc-go.patch deleted file mode 100644 index a882a5a38..000000000 --- a/testing/gcc/gcc-go.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gcc-4.6.1.orig/gcc/go/Make-lang.in -+++ gcc-4.6.1/gcc/go/Make-lang.in -@@ -63,7 +63,7 @@ - go/unsafe.o - - go1$(exeext): $(GO_OBJS) attribs.o $(BACKEND) $(LIBDEPS) -- $(CXX) $(ALL_CXXFLAGS) $(LDFLAGS) -o $@ \ -+ $(CXX) $(ALL_CXXFLAGS) $(LDFLAGS) -fno-PIE -o $@ \ - $(GO_OBJS) attribs.o $(BACKEND) $(LIBS) $(BACKENDLIBS) - - # Documentation. diff --git a/testing/gcc/gcc-libgcc-x86.get_pc_thunk.bx.patch b/testing/gcc/gcc-libgcc-x86.get_pc_thunk.bx.patch deleted file mode 100644 index 551e6150a..000000000 --- a/testing/gcc/gcc-libgcc-x86.get_pc_thunk.bx.patch +++ /dev/null @@ -1,38 +0,0 @@ -Index: libgcc/config/i386/morestack.S -=================================================================== ---- ./libgcc/config/i386/morestack.S (revision 173993) -+++ ./libgcc/config/i386/morestack.S (revision 173994) -@@ -278,8 +278,7 @@ - movl 4(%esp),%eax # Function argument. - movl %eax,(%esp) - #ifdef __PIC__ --#undef __i686 -- call __i686.get_pc_thunk.bx # %ebx may not be set up for us. -+ call __x86.get_pc_thunk.bx # %ebx may not be set up for us. - addl $_GLOBAL_OFFSET_TABLE_, %ebx - call _Unwind_Resume@PLT # Resume unwinding. - #else -@@ -449,6 +448,23 @@ - .size __morestack, . - __morestack - #endif - -+#if !defined(__x86_64__) && defined(__PIC__) -+# Output the thunk to get PC into bx, since we use it above. -+ .section .text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat -+ .globl __x86.get_pc_thunk.bx -+ .hidden __x86.get_pc_thunk.bx -+#ifdef __ELF__ -+ .type __x86.get_pc_thunk.bx, @function -+#endif -+__x86.get_pc_thunk.bx: -+ .cfi_startproc -+ movl (%esp), %ebx -+ ret -+ .cfi_endproc -+#ifdef __ELF__ -+ .size __x86.get_pc_thunk.bx, . - __x86.get_pc_thunk.bx -+#endif -+#endif - - # The exception table. This tells the personality routine to execute - # the exception handler. diff --git a/testing/gcc/gcc-pure64.patch b/testing/gcc/gcc-pure64.patch deleted file mode 100644 index f9ab69326..000000000 --- a/testing/gcc/gcc-pure64.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur gcc-4.2.0.orig/gcc/config/i386/t-linux64 gcc-4.2.0/gcc/config/i386/t-linux64 ---- gcc-4.2.0.orig/gcc/config/i386/t-linux64 2007-05-16 19:21:19.000000000 -0400 -+++ gcc-4.2.0/gcc/config/i386/t-linux64 2007-05-18 17:04:36.000000000 -0400 -@@ -6,7 +6,7 @@ - - MULTILIB_OPTIONS = m64/m32 - MULTILIB_DIRNAMES = 64 32 --MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) -+MULTILIB_OSDIRNAMES = ../lib ../lib32 - - LIBGCC = stmp-multilib - INSTALL_LIBGCC = install-multilib diff --git a/testing/gcc/gcc-spec-env.patch b/testing/gcc/gcc-spec-env.patch deleted file mode 100644 index 57e7567e5..000000000 --- a/testing/gcc/gcc-spec-env.patch +++ /dev/null @@ -1,42 +0,0 @@ - Add support for external spec file via the GCC_SPECS env var. This - allows us to easily control pie/ssp defaults with gcc-config profiles. - - Original patch by Rob Holland - Extended to support multiple entries separated by ':' by Kevin F. Quinn - Modified to use getenv instead of poisoned GET_ENVIRONMENT by Ryan Hill - ---- gcc-4/gcc/gcc.c -+++ gcc-4/gcc/gcc.c -@@ -6482,6 +6482,32 @@ - - /* Process any user specified specs in the order given on the command - line. */ -+#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS) || defined (WIN32)) -+ /* Add specs listed in GCC_SPECS. Note; in the process of separating -+ * each spec listed, the string is overwritten at token boundaries -+ * (':') with '\0', an effect of strtok_r(). -+ */ -+ specs_file = getenv ("GCC_SPECS"); -+ if (specs_file && (strlen(specs_file) > 0)) -+ { -+ char *spec, *saveptr; -+ for (spec=strtok_r(specs_file,":",&saveptr); -+ spec!=NULL; -+ spec=strtok_r(NULL,":",&saveptr)) -+ { -+ struct user_specs *user = (struct user_specs *) -+ xmalloc (sizeof (struct user_specs)); -+ -+ user->next = (struct user_specs *) 0; -+ user->filename = spec; -+ if (user_specs_tail) -+ user_specs_tail->next = user; -+ else -+ user_specs_head = user; -+ user_specs_tail = user; -+ } -+ } -+#endif - for (uptr = user_specs_head; uptr; uptr = uptr->next) - { - char *filename = find_a_file (&startfile_prefixes, uptr->filename, diff --git a/testing/gcc/pt_gnu_eh_frame.patch b/testing/gcc/pt_gnu_eh_frame.patch deleted file mode 100644 index 3e029104a..000000000 --- a/testing/gcc/pt_gnu_eh_frame.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- gcc-4.3.2/gcc/crtstuff.c.orig Mon Nov 17 16:02:38 2008 -+++ gcc-4.3.2/gcc/crtstuff.c Mon Nov 17 16:02:52 2008 -@@ -94,8 +94,7 @@ - #include - /* uClibc pretends to be glibc 2.2 and DT_CONFIG is defined in its link.h. - But it doesn't use PT_GNU_EH_FRAME ELF segment currently. */ --# if !defined(__UCLIBC__) \ -- && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) \ -+# if (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2) \ - || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 2 && defined(DT_CONFIG))) - # define USE_PT_GNU_EH_FRAME - # endif diff --git a/testing/gcc/uclibc-getipinfo.patch b/testing/gcc/uclibc-getipinfo.patch deleted file mode 100644 index 3abbbdd7a..000000000 --- a/testing/gcc/uclibc-getipinfo.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- a/libstdc++-v3/configure 2009-08-04 15:41:02.000000000 +0000 -+++ b/libstdc++-v3/configure 2009-08-04 15:46:20.000000000 +0000 -@@ -113523,14 +113523,14 @@ - # Based on system-libunwind and target, do we have ipinfo? - if test x$with_system_libunwind = xyes; then - case ${target} in -- ia64-*-*) have_unwind_getipinfo=no ;; -+ ia64-*-*|*-uclibc*) have_unwind_getipinfo=no ;; - *) have_unwind_getipinfo=yes ;; - esac - else - # Darwin before version 9 does not have _Unwind_GetIPInfo. - - case ${target} in -- *-*-darwin[3-8]|*-*-darwin[3-8].*) have_unwind_getipinfo=no ;; -+ *-*-darwin[3-8]|*-*-darwin[3-8].*|*-uclibc*) have_unwind_getipinfo=no ;; - *) have_unwind_getipinfo=yes ;; - esac - -- cgit v1.2.3