48fb7bfab7
highlights from: http://gcc.gnu.org/gcc-4.6/changes.html GCC now has stricter checks for invalid command-line options New -Wunused-but-set-variable and -Wunused-but-set-parameter warnings Many platforms have been obsoleted Link-time optimization improvements A new switch -fstack-usage has been added A new function attribute leaf was introduced A new warning, enabled by -Wdouble-promotion Support for selectively enabling and disabling warnings via #pragma GCC diagnostic has been added There is now experimental support for some features from the upcoming C1X revision of the ISO C standard Improved experimental support for the upcoming C++0x ISO C++ standard G++ now issues clearer diagnostics in several cases Updates for ARM, x86, MIPS, PPC/PPC64, SPARC Darwin, FreeBSD, Solaris 2, MinGW and Cygwin now all support __float128 on 32-bit and 64-bit x86 targets. [*1] highlights from: http://gcc.gnu.org/gcc-4.7/changes.html The -fconserve-space flag has been deprecated Support for a new parameter --param case-values-threshold=n was added Interprocedural and Link-time optimization improvements A new built-in, __builtin_assume_aligned, has been added A new warning option -Wunused-local-typedefs was added A new experimental command-line option -ftrack-macro-expansion was added Support for atomic operations specifying the C++11/C11 memory model has been added There is support for some more features from the C11 revision of the ISO C standard Improved experimental support for the new ISO C++ standard, C++11 Updates for ARM, x86, MIPS, PPC/PPC64, SH, SPARC, TILE* A new option (-grecord-gcc-switches) was added highlights from: http://gcc.gnu.org/gcc-4.8/changes.html GCC now uses C++ as its implementation language. This means that to build GCC from sources, you will need a C++ compiler that understands C++ 2003 DWARF4 is now the default when generating DWARF debug information A new general optimization level, -Og, has been introduced A new option -ftree-partial-pre was added The option -fconserve-space has been removed The command-line options -fipa-struct-reorg and -fipa-matrix-reorg have been removed Interprocedural and Link-time optimization improvements AddressSanitizer, a fast memory error detector, has been added [*2] A new -Wsizeof-pointer-memaccess warning has been added G++ now supports a -std=c++1y option for experimentation with features proposed for the next revision of the standard, expected around 2014 Improved experimental support for the new ISO C++ standard, C++11 A new port has been added to support AArch64 Updates for ARM, x86, MIPS, PPC/PPC64, SH, SPARC, TILE* [*1] we should support this too! [*2] we should look into this. https://code.google.com/p/address-sanitizer/
33 lines
638 B
Bash
Executable File
33 lines
638 B
Bash
Executable File
#! /bin/sh
|
|
|
|
if [ $# -ne 1 ]
|
|
then
|
|
echo "Usage: $0 <target-mach-triplet>"
|
|
exit 1
|
|
fi
|
|
|
|
machine=$1
|
|
target=fixinc.sh
|
|
|
|
# Check for special fix rules for particular targets
|
|
case $machine in
|
|
i?86-*-cygwin* | \
|
|
i?86-*-mingw32* | \
|
|
x86_64-*-mingw32* | \
|
|
i?86-*-interix* | \
|
|
powerpc-*-eabisim* | \
|
|
powerpc-*-eabi* | \
|
|
powerpc-*-rtems* | \
|
|
powerpcle-*-eabisim* | \
|
|
powerpcle-*-eabi* )
|
|
# IF there is no include fixing,
|
|
# THEN create a no-op fixer and exit
|
|
(echo "#! /bin/sh" ; echo "exit 0" ) > ${target}
|
|
;;
|
|
|
|
*)
|
|
cat < ${srcdir}/fixinc.in > ${target} || exit 1
|
|
;;
|
|
esac
|
|
chmod 755 ${target}
|