2005-01-16 11:43:02 +00:00
|
|
|
# Choose gcc version.
|
2006-03-19 03:50:18 +00:00
|
|
|
|
2005-01-16 11:43:02 +00:00
|
|
|
choice
|
2006-04-20 23:03:42 +00:00
|
|
|
prompt "GCC compiler Version" if TOOLCHAINOPTS
|
toolchain/gcc: switch to version 12 by default
This was build tested with all core packages on all targets
successfully.
Most packages from the feed are also building fine.
This was run tested on the following systems:
* lantiq/xrx200 musl
* pistachio/generic musl
* sunxi/cortexa53 musl
* x86/64 musl
* x86/64 glibc
* armvirt/64 musl
The size of the images stays more or less the same for MIPS BE and
aarch64. I haven't tested other architectures.
With GCC 11 I got these sizes for lantiq/xrx200:
7,219,848 openwrt-lantiq-xrx200-tplink_tdw8970-initramfs-kernel.bin
7,472,208 openwrt-lantiq-xrx200-tplink_tdw8970-squashfs-sysupgrade.bin
With GCC 12 I got these sizes for lantiq/xrx200:
7,217,355 openwrt-lantiq-xrx200-tplink_tdw8970-initramfs-kernel.bin
7,406,674 openwrt-lantiq-xrx200-tplink_tdw8970-squashfs-sysupgrade.bin
The sysupgrade image is probably padded. The initramfs image is 0.03% smaller.
With GCC 11 I got these sizes for armvirt/64:
4,143,943 openwrt-armvirt-64-default-rootfs.tar.gz
10,887,176 openwrt-armvirt-64-Image
24,911,880 openwrt-armvirt-64-Image-initramfs
4,141,572 openwrt-armvirt-64-rootfs.cpio.gz
4,255,854 openwrt-armvirt-64-rootfs-ext4.img.gz
3,391,178 openwrt-armvirt-64-rootfs-squashfs.img.gz
With GCC 12 I got these sizes for armvirt/64:
4,142,778 openwrt-armvirt-64-default-rootfs.tar.gz
10,887,176 openwrt-armvirt-64-Image
24,911,880 openwrt-armvirt-64-Image-initramfs
4,138,105 openwrt-armvirt-64-rootfs.cpio.gz
4,255,463 openwrt-armvirt-64-rootfs-ext4.img.gz
3,390,390 openwrt-armvirt-64-rootfs-squashfs.img.gz
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2022-12-19 00:47:48 +00:00
|
|
|
default GCC_USE_VERSION_12
|
2005-01-16 11:43:02 +00:00
|
|
|
help
|
|
|
|
Select the version of gcc you wish to use.
|
|
|
|
|
2021-07-05 23:21:46 +00:00
|
|
|
config GCC_USE_VERSION_11
|
|
|
|
bool "gcc 11.x"
|
2022-05-06 14:42:06 +00:00
|
|
|
|
|
|
|
config GCC_USE_VERSION_12
|
|
|
|
bool "gcc 12.x"
|
2005-01-16 11:43:02 +00:00
|
|
|
endchoice
|
|
|
|
|
2009-11-12 13:42:07 +00:00
|
|
|
config GCC_USE_GRAPHITE
|
|
|
|
bool
|
|
|
|
prompt "Compile in support for the new Graphite framework in GCC 4.4+" if TOOLCHAINOPTS
|
2010-04-20 16:18:08 +00:00
|
|
|
|
2006-04-20 23:03:42 +00:00
|
|
|
config EXTRA_GCC_CONFIG_OPTIONS
|
2005-04-05 18:21:58 +00:00
|
|
|
string
|
2009-09-10 14:32:36 +00:00
|
|
|
prompt "Additional gcc configure options" if TOOLCHAINOPTS
|
2005-01-16 11:43:02 +00:00
|
|
|
default ""
|
|
|
|
help
|
|
|
|
Any additional gcc options you may want to include....
|
|
|
|
|
2018-01-07 16:41:35 +00:00
|
|
|
config GCC_DEFAULT_PIE
|
|
|
|
bool
|
|
|
|
prompt "Build executable with PIE enabled by default" if TOOLCHAINOPTS
|
|
|
|
help
|
|
|
|
Use gcc configure option --enable-default-pie to turn on -fPIE and -pie by default.
|
|
|
|
|
|
|
|
config GCC_DEFAULT_SSP
|
|
|
|
bool
|
|
|
|
prompt "Build executable with Stack-Smashing Protection enabled by default" if TOOLCHAINOPTS
|
|
|
|
help
|
|
|
|
Use gcc configure option --enable-default-ssp to turn on -fstack-protector-strong by default.
|
|
|
|
|
2011-06-23 11:37:39 +00:00
|
|
|
config SJLJ_EXCEPTIONS
|
|
|
|
bool
|
|
|
|
prompt "Use setjump()/longjump() exceptions" if TOOLCHAINOPTS
|
|
|
|
help
|
|
|
|
Use old setjump()/longjump() exceptions instead of the newer
|
|
|
|
frame unwinding exceptions handling routines. Warning: increases
|
|
|
|
code size and runtime memory usage.
|
|
|
|
|
2011-06-23 11:46:24 +00:00
|
|
|
config INSTALL_GFORTRAN
|
|
|
|
bool
|
|
|
|
prompt "Build/install fortran compiler?" if TOOLCHAINOPTS
|
|
|
|
help
|
|
|
|
Build/install GNU fortran compiler ?
|
2016-07-15 10:17:20 +00:00
|
|
|
|
|
|
|
config INSTALL_GCCGO
|
|
|
|
bool
|
|
|
|
prompt "Build/install Go compiler?" if TOOLCHAINOPTS
|
2017-02-27 18:27:50 +00:00
|
|
|
depends on USE_GLIBC || BROKEN
|
2016-07-15 10:17:20 +00:00
|
|
|
help
|
|
|
|
Build/install GNU gccgo compiler ?
|