lede/toolchain/gcc/Config.in

68 lines
1.7 KiB
Plaintext
Raw Normal View History

2017-09-06 19:19:45 +08:00
# Choose gcc version.
choice
prompt "GCC compiler Version" if TOOLCHAINOPTS
default GCC_USE_VERSION_8 if mips || mipsel || mips64 || mips64el
treewide: sync with upstream (#10750) * build: fix incomplete initramfs compression options Requires: tools/lz4, tools/lzop complete the wiring so that these options work: * `CONFIG_KERNEL_INITRAMFS_COMPRESSION_LZO` * `CONFIG_KERNEL_INITRAMFS_COMPRESSION_LZ4` Signed-off-by: Tony Butler <spudz76@gmail.com> [remove blocking dependencies for separate ramdisk, fix lzop options] Signed-off-by: Daniel Golle <daniel@makrotopia.org> * include: sync with upstream * toolchain/binutils: add support for version 2.40 Release notes: https://sourceware.org/pipermail/binutils/2023-January/125671.html Signed-off-by: Linhui Liu <liulinhui36@gmail.com> * toolchain/gcc: switch to version 12 by default Also fix build error with gcc 12. * toolchain/nasm: update to 2.16.01 ChangeLog: Version 2.16.01 _This is a documentation update release only._ (*) Fix the creation of the table of contents in the HTML version of the documentation. Version 2.16 (*) Support for the `rdf' format has been discontinued and all the RDOFF utilities has been removed. (*) The `--reproducible' option now leaves the filename field in the COFF object format blank. This was always rather useless since it is only 18 characters long; as such debug formats have to carry their own filename information anyway. (*) Fix handling of MASM-syntax reserved memory (e.g. `dw ?') when used in structure definitions. (*) The preprocessor now supports functions, which can be less verbose and more convenient than the equivalent code implemented using directives. See section 4.4. (*) Fix the handling of `%00' in the preprocessor. (*) Fix incorrect handling of path names affecting error messages, dependency generation, and debug format output. (*) Support for the RDOFF output format and the RDOFF tools have been removed. The RDOFF tools had already been broken since at least NASM 2.14. For flat code the ELF output format recommended; for segmented code the `obj' (OMF) output format. (*) New facility: preprocessor functions. Preprocessor functions, which are expanded similarly to single-line macros, can greatly simplify code that in the past would have required a lengthy list of directives and intermediate macros. See section 4.4. (*) Single-line macros can now declare parameters (using a `&&' prefix) that creates a quoted string, but does _not_ requote an already quoted string. See section 4.2.1. (*) Instruction table updated per public information available as of November 2022. (*) All warnings in the preprocessor have now been assigned warning classes. See appendix A. (*) Fix the invalid use of `RELA'-type relocations instead of `REL'- type relocations when generating DWARF debug information for the `elf32' output format. (*) Fix the handling `at' in `istruc' when the structure contains local labels. See section 5.9.2. (*) When assembling with `--reproducible', don't encode the filename in the COFF header for the `coff', `win32' or `win64' output formats. The COFF header only has space for an 18-character filename, which makes this field rather useless in the first place. Debug output data, if enabled, is not affected. (*) Fix incorrect size calculation when using MASM syntax for non- byte reservations (e.g. `dw ?'.) (*) Allow forcing an instruction in 64-bit mode to have a (possibly redundant) REX prefix, using the syntax `{rex}' as a prefix. (*) Add a `{vex}' prefix to enforce VEX (AVX) encoding of an instruction, either using the 2- or 3-byte VEX prefixes. (*) The `CPU' directive has been augmented to allow control of generation of VEX (AVX) versus EVEX (AVX-512) instruction formats, see section 7.11. (*) Some recent instructions that previously have been only available using EVEX encodings are now also encodable using VEX (AVX) encodings. For backwards compatibility these encodings are not enabled by default, but can be generated either via an explicit `{vex}' prefix or by specifying either `CPU LATEVEX' or `CPU NOEVEX'; see section 7.11. (*) Document the already existing `%unimacro' directive. See section 4.5.12. (*) Fix a code range generation bug in the DWARF debug format (incorrect information in the `DW_AT_high_pc' field) for the ELF output formats. This bug happened to cancel out with a bug in older versions of the GNU binutils linker, but breaks with other linkers and updated or other linkers that expect the spec to be followed. (*) Fix segment symbols with addends, e.g. `jmp _TEXT+10h:0' in output formats that support segment relocations, e.g. the `obj' format. (*) Fix various crashes and hangs on invalid input. Signed-off-by: Linhui Liu <liulinhui36@gmail.com> * toolchain: musl: Fix symbol loading in gdb Fix DT_DEBUG handling on MIPS in musl libc. With this change gdb will load the symbol files for shared libraries on MIPS too. This patch was taken from this thread: https://www.openwall.com/lists/musl/2022/01/09/4 Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com> * tools: sync with upstream * build: fix issues with targets installed via feeds - fix including modules.mk when a target is being replaced - fix calling make targets from target/linux Signed-off-by: Felix Fietkau <nbd@nbd.name> * package: sync with upstream Signed-off-by: Tony Butler <spudz76@gmail.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: Linhui Liu <liulinhui36@gmail.com> Signed-off-by: Hauke Mehrtens <hmehrtens@maxlinear.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> Co-authored-by: Tony Butler <spudz76@gmail.com> Co-authored-by: Hauke Mehrtens <hmehrtens@maxlinear.com> Co-authored-by: Felix Fietkau <nbd@nbd.name>
2023-01-25 15:30:35 +08:00
default GCC_USE_VERSION_12
2017-09-06 19:19:45 +08:00
help
Select the version of gcc you wish to use.
2018-09-07 13:43:55 +08:00
config GCC_USE_VERSION_8
bool "gcc 8.x"
2020-07-02 23:30:56 +08:00
config GCC_USE_VERSION_11
bool "gcc 11.x"
sync with upstream (#10562) * package: sync with upstream Removed: package/libs/libselinux/bcm27xx-userland (Already in package/utils/bcm27xx-userland) Signed-off-by: Linhui Liu <liulinhui36@gmail.com> * uclibc++: remove No package here depends on it. Furthermore, uClibc++ is a fairly buggy C++ library and seems to be relatively inactive upstream. It also lacks proper support for modern C++11 features. The main benefit of it is size: 66.6 KB vs 287.3 KB on mips24kc. Static linking and LTO can help bring the size down of packages that need it. Added warning message to uclibc++.mk Signed-off-by: Rosen Penev <rosenp@gmail.com> Acked-by: Hauke Mehrtens <hauke@hauke-m.de> * target: sync with upstream Signed-off-by: Linhui Liu <liulinhui36@gmail.com> * toolchain: gcc: Remove gcc 10.x support This compiler is old and was never used by default in OpenWrt. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> * ucode: update to latest Git HEAD 46d93c9 tests: fixup testcases 4c654df types: adjust double printing format eac2add compiler: fix bytecode for logical assignments of properties 3903b18 fs: add `realpath()` function 8366102 math: add isnan() function eef83d3 tests: relax sleep() test 394e901 lib: uc_json(): accept trailing whitespace when parsing strings 1867c8b uloop: terminate parent uloop in task child processes d2cc003 uci: auto-load package in `ctx.foreach()` and `ctx.get_first()` 6c5ee53 compiler: ensure that arrow functions with block bodies return no value fdc9b6a compiler: fix `??=`, `||=` and `&&=` logical assignment semantics 88dcca7 add cmake to install requires for debian Signed-off-by: Jo-Philipp Wich <jo@mein.io> * firewall4: update to latest Git HEAD 700a925 fw4: prevent null access when no ipsets are defined 6443ec7 config: drop input traffic by default 119ee1a ruleset: drop ctstate invalid traffic for masq-enabled zones Signed-off-by: Jo-Philipp Wich <jo@mein.io> * ustream-ssl: update to Git version 2022-12-07 9217ab4 ustream-openssl: Disable renegotiation in TLSv1.2 and earlier 2ce1d48 ci: fix building with i.MX6 SDK 584f1f6 ustream-openssl: wolfSSL: provide detailed information in debug builds aa8c48e cmake: add a possibility to set library version Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> * tools/mpfr: import patch fixing macro bug Co-authored-by: Nick Hainke <vincent@systemli.org> Signed-off-by: Linhui Liu <liulinhui36@gmail.com> Signed-off-by: Linhui Liu <liulinhui36@gmail.com> Signed-off-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Jo-Philipp Wich <jo@mein.io> Co-authored-by: Rosen Penev <rosenp@gmail.com> Co-authored-by: Hauke Mehrtens <hauke@hauke-m.de> Co-authored-by: Jo-Philipp Wich <jo@mein.io> Co-authored-by: Nick Hainke <vincent@systemli.org>
2022-12-08 14:20:57 +08:00
2022-09-09 21:18:58 +08:00
config GCC_USE_VERSION_12
bool "gcc 12.x"
2017-09-06 19:19:45 +08:00
endchoice
config GCC_USE_GRAPHITE
bool
prompt "Compile in support for the new Graphite framework in GCC 4.4+" if TOOLCHAINOPTS
config EXTRA_GCC_CONFIG_OPTIONS
string
prompt "Additional gcc configure options" if TOOLCHAINOPTS
default ""
help
Any additional gcc options you may want to include....
2018-02-08 22:08:32 +08:00
config GCC_DEFAULT_PIE
2017-09-06 19:19:45 +08:00
bool
2018-02-08 22:08:32 +08:00
prompt "Build executable with PIE enabled by default" if TOOLCHAINOPTS
default n
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
default n
help
Use gcc configure option --enable-default-ssp to turn on -fstack-protector-strong by default.
2017-09-06 19:19:45 +08:00
config SJLJ_EXCEPTIONS
bool
prompt "Use setjump()/longjump() exceptions" if TOOLCHAINOPTS
default n
help
Use old setjump()/longjump() exceptions instead of the newer
frame unwinding exceptions handling routines. Warning: increases
code size and runtime memory usage.
config INSTALL_GFORTRAN
bool
prompt "Build/install fortran compiler?" if TOOLCHAINOPTS
default n
help
Build/install GNU fortran compiler ?
config INSTALL_GCCGO
bool
prompt "Build/install Go compiler?" if TOOLCHAINOPTS
depends on USE_GLIBC || BROKEN
default n
help
Build/install GNU gccgo compiler ?