diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2011-01-17 21:55:49 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2011-01-17 21:55:49 +0100 |
commit | 15c84adca94bfe4a89ece5c04f06a884cf508ebb (patch) | |
tree | 727d3fd768a1abe75521190b90833b3a68cce4c6 /package/gcc | |
parent | 0de5d9ecedff55481b3c1eb9c3841de17716a485 (diff) |
fix packages to be compile with stack protector
- libtool do not pass -fstack-protector while linking,
but this is required to successfully link libraries or
executables with SSP
- pass LDFLAGS for non-libtool packages
Diffstat (limited to 'package/gcc')
-rw-r--r-- | package/gcc/Makefile | 3 | ||||
-rw-r--r-- | package/gcc/patches/cross-gcc-fix.patch | 10 | ||||
-rw-r--r-- | package/gcc/patches/ltmain.patch | 12 |
3 files changed, 19 insertions, 6 deletions
diff --git a/package/gcc/Makefile b/package/gcc/Makefile index 1f2ce8f99..faf1f9e31 100644 --- a/package/gcc/Makefile +++ b/package/gcc/Makefile @@ -36,7 +36,8 @@ CONFIGURE_ARGS+= --enable-languages=c,c++ \ --disable-libmudflap \ --disable-libgomp \ --disable-multilib \ - --disable-libstdcxx-pch + --disable-libstdcxx-pch \ + --enable-cxx-flags="${TARGET_LDFLAGS}" post-install: ${INSTALL_DIR} ${IDIR_GCC}/usr/lib/gcc ${IDIR_GCC}/usr/bin diff --git a/package/gcc/patches/cross-gcc-fix.patch b/package/gcc/patches/cross-gcc-fix.patch index 9b5d55318..f39b35fb9 100644 --- a/package/gcc/patches/cross-gcc-fix.patch +++ b/package/gcc/patches/cross-gcc-fix.patch @@ -1,7 +1,7 @@ diff -Nur gcc-4.4.2.orig/gcc/Makefile.in gcc-4.4.2/gcc/Makefile.in ---- gcc-4.4.2.orig/gcc/Makefile.in 2009-07-25 19:53:35.000000000 +0200 -+++ gcc-4.4.2/gcc/Makefile.in 2009-11-22 15:30:27.000000000 +0100 -@@ -898,7 +898,8 @@ +--- gcc-4.5.2.orig/gcc/Makefile.in 2010-09-02 15:05:30.000000000 +0200 ++++ gcc-4.5.2/gcc/Makefile.in 2011-01-15 14:29:18.000000000 +0100 +@@ -980,7 +980,8 @@ ALL_CXXFLAGS = $(T_CFLAGS) $(CXXFLAGS) $ # Likewise. Put INCLUDES at the beginning: this way, if some autoconf macro # puts -I options in CPPFLAGS, our include files in the srcdir will always # win against random include files in /usr/include. @@ -9,5 +9,5 @@ diff -Nur gcc-4.4.2.orig/gcc/Makefile.in gcc-4.4.2/gcc/Makefile.in +#ALL_CPPFLAGS = $(INCLUDES) $(CPPFLAGS) +ALL_CPPFLAGS = $(INCLUDES) - # Build and host support libraries. - LIBIBERTY = ../libiberty/libiberty.a + # This is the variable to use when using $(COMPILER). + ifneq ($(ENABLE_BUILD_WITH_CXX),yes) diff --git a/package/gcc/patches/ltmain.patch b/package/gcc/patches/ltmain.patch new file mode 100644 index 000000000..215889b70 --- /dev/null +++ b/package/gcc/patches/ltmain.patch @@ -0,0 +1,12 @@ +diff -Nur gcc-4.5.2.orig/ltmain.sh gcc-4.5.2/ltmain.sh +--- gcc-4.5.2.orig/ltmain.sh 2009-12-05 18:18:53.000000000 +0100 ++++ gcc-4.5.2/ltmain.sh 2011-01-15 14:45:07.000000000 +0100 +@@ -4980,7 +4980,7 @@ + # @file GCC response files + # -tp=* Portland pgcc target processor selection + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ +- -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*) ++ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|-fstack-protector*|-flto) + func_quote_for_eval "$arg" + arg="$func_quote_for_eval_result" + func_append compile_command " $arg" |