summaryrefslogtreecommitdiff
path: root/config/binutils
diff options
context:
space:
mode:
Diffstat (limited to 'config/binutils')
-rw-r--r--config/binutils/binutils.in215
-rw-r--r--config/binutils/binutils.in.282
2 files changed, 46 insertions, 251 deletions
diff --git a/config/binutils/binutils.in b/config/binutils/binutils.in
index 695256a..286ed4b 100644
--- a/config/binutils/binutils.in
+++ b/config/binutils/binutils.in
@@ -2,182 +2,18 @@
comment "GNU binutils"
-config BINUTILS_CUSTOM
- bool
- prompt "Custom binutils"
- depends on EXPERIMENTAL
- select BINUTILS_2_26_or_later
- help
- The choosen binutils version shall be not downloaded. Instead use
- a custom location to get the source.
-
-if BINUTILS_CUSTOM
-
-config BINUTILS_CUSTOM_LOCATION
- string
- prompt "Full path to custom binutils source"
- help
- Enter the path to the directory or tarball of your source for binutils.
-
- If the path is a tarball, it should extract to: <name>-<version>/
- where the name is this component, binutils, and the version is set
- below in the custom version string.
-
-config BINUTILS_CUSTOM_VERSION
- string
- prompt "Binutils Custom Version number"
- help
- Enter the version number for your custom binutils.
-
-config BINUTILS_VERSION
- string
- default BINUTILS_CUSTOM_VERSION
-
-endif # BINUTILS_CUSTOM
-
-if ! BINUTILS_CUSTOM
-
-config BINUTILS_SHOW_LINARO
- bool
- prompt "Show Linaro versions"
- help
- Linaro is maintaining some advanced/more stable/experimental versions
- of binutils, especially for the ARM architecture.
-
- Those versions have not been blessed by the binutils comunity (nor have they
- been cursed either!), but they look to be pretty much stable, and even
- more stable than the upstream versions. YMMV...
-
- If you do not know what this Linaro stuff is, then simply say 'n' here,
- and rest in peace. OTOH, if you know what you are doing, you will be
- able to use and enjoy :-) the Linaro versions by saying 'y' here.
-
- Linaro: http://www.linaro.org/
-
-choice
- bool
- prompt "binutils version"
-# Don't remove next line
-# CT_INSERT_VERSION_BELOW
-
-config BINUTILS_V_2_27
- bool
- prompt "2.27"
- select BINUTILS_2_27_or_later
-
-config BINUTILS_V_2_26
- bool
- prompt "2.26"
- select BINUTILS_2_26_or_later
-
-config BINUTILS_V_2_25_1
- bool
- prompt "2.25.1 (OBSOLETE)"
- select BINUTILS_2_25_1_or_later
- depends on OBSOLETE
-
-config BINUTILS_LINARO_V_2_25
- bool
- prompt "linaro-2.25.0-2015.01-2 (OBSOLETE)"
- select BINUTILS_2_25_or_later
- depends on BINUTILS_SHOW_LINARO
- depends on OBSOLETE
-
-config BINUTILS_LINARO_V_2_24
- bool
- prompt "linaro-2.24.0-2014.11-2 (OBSOLETE)"
- select BINUTILS_2_24_or_later
- depends on BINUTILS_SHOW_LINARO
- depends on OBSOLETE
-
-config BINUTILS_V_2_24
- bool
- prompt "2.24 (OBSOLETE)"
- select BINUTILS_2_24_or_later
- depends on OBSOLETE
-
-config BINUTILS_LINARO_V_2_23_2
- bool
- prompt "linaro-2.23.2-2013.10-4 (OBSOLETE)"
- select BINUTILS_2_23_2_or_later
- depends on BINUTILS_SHOW_LINARO
- depends on OBSOLETE
-
-config BINUTILS_V_2_23_2
- bool
- prompt "2.23.2 (OBSOLETE)"
- select BINUTILS_2_23_2_or_later
- depends on OBSOLETE
-
-endchoice
-
-config BINUTILS_VERSION
- string
-# Don't remove next line
-# CT_INSERT_VERSION_STRING_BELOW
- default "2.27" if BINUTILS_V_2_27
- default "2.26" if BINUTILS_V_2_26
- default "2.25.1" if BINUTILS_V_2_25_1
- default "linaro-2.25.0-2015.01-2" if BINUTILS_LINARO_V_2_25
- default "linaro-2.24.0-2014.11-2" if BINUTILS_LINARO_V_2_24
- default "2.24" if BINUTILS_V_2_24
- default "linaro-2.23.2-2013.10-4" if BINUTILS_LINARO_V_2_23_2
- default "2.23.2" if BINUTILS_V_2_23_2
-
-endif # ! BINUTILS_CUSTOM
-
-config BINUTILS_2_27_or_later
- bool
- select BINUTILS_2_26_or_later
-
-config BINUTILS_2_26_or_later
- bool
- select BINUTILS_2_25_1_or_later
-
-config BINUTILS_2_25_1_or_later
- bool
- select BINUTILS_2_25_or_later
-
-config BINUTILS_2_25_or_later
- bool
- select BINUTILS_2_24_or_later
-
-config BINUTILS_2_24_or_later
- bool
- select BINUTILS_2_23_2_or_later
-
-config BINUTILS_2_23_2_or_later
- bool
- select BINUTILS_HAS_GOLD
- select BINUTILS_HAS_HASH_STYLE
- select BINUTILS_HAS_PKGVERSION_BUGURL
- select BINUTILS_HAS_PLUGINS
-
-config BINUTILS_HAS_HASH_STYLE
- bool
-
-config BINUTILS_HAS_GOLD
- bool
-
# gold only suports the listed architectures
config BINUTILS_GOLD_SUPPORTS_ARCH
bool
- default y if ARCH_arm
- default y if ARCH_x86
+ default y if ARCH_ARM
+ default y if ARCH_X86
config BINUTILS_GOLD_SUPPORT
bool
default y
- depends on BINUTILS_HAS_GOLD
depends on BINUTILS_GOLD_SUPPORTS_ARCH
depends on ! STATIC_TOOLCHAIN
-config BINUTILS_HAS_PLUGINS
- bool
-
-config BINUTILS_HAS_PKGVERSION_BUGURL
- bool
-
# Force using the BFD linker if needed. There are two options:
# - For some C libraries (eg. glibc at least), BFD ld must be
# built and be selected by default.
@@ -226,7 +62,7 @@ config BINUTILS_LINKER_LD_GOLD
config BINUTILS_LINKER_GOLD_LD
bool
prompt "gold, ld"
- depends on !BINUTILS_FORCE_LD_BFD_ONLY
+ depends on !BINUTILS_FORCE_LD_BFD_DEFAULT && !BINUTILS_FORCE_LD_BFD_ONLY
depends on BINUTILS_GOLD_SUPPORT
select BINUTILS_GOLD_INSTALLED
select BINUTILS_LINKER_BOTH
@@ -286,13 +122,31 @@ config BINUTILS_LINKER_DEFAULT
config BINUTILS_PLUGINS
bool
prompt "Enable support for plugins"
- depends on BINUTILS_HAS_PLUGINS
depends on ! STATIC_TOOLCHAIN
help
binutils can be extended through the use of plugins.
Especially, gold can use the lto-plugin, as installed
by gcc, to handle LTO.
+config BINUTILS_RELRO
+ tristate
+ prompt "Enable -z relro in ELF linker by default" if BINUTILS_2_27_or_later
+ default m
+ help
+ Setting this option forces "-z relro" by default in the ELF linker.
+ Clearing this option forces "-z norelro" by default in the ELF linker.
+ Setting this option to 'M' configures binutils with their internal
+ default for the selected architecture.
+
+config BINUTILS_DETERMINISTIC_ARCHIVES
+ bool
+ prompt "Enable deterministic archives by default"
+ default y
+ help
+ Setting this option will enable deterministic mode by default (-D).
+ ar and ranlib will use zero for UIDs, GIDs,
+ timestamps, and use consistent file modes for all files.
+
config BINUTILS_EXTRA_CONFIG_ARRAY
string
prompt "binutils extra config"
@@ -308,7 +162,6 @@ config BINUTILS_FOR_TARGET
bool
prompt "binutils libraries for the target"
depends on ! BARE_METAL
- depends on ! BACKEND
help
Some utilities may need binutils libraries to be available on
the target, eg. oprofile.
@@ -326,3 +179,27 @@ config BINUTILS_FOR_TARGET_BFD
default y
endif # BINUTILS_FOR_TARGET
+
+if ARCH_BINFMT_FLAT
+
+comment "elf2flt"
+
+config ELF2FLT_REQUIRES
+ def_bool y
+ select ZLIB_NEEDED
+ select BINUTILS_FORCE_LD_BFD_ONLY
+
+source "config/versions/elf2flt.in"
+
+config ELF2FLT_EXTRA_CONFIG_ARRAY
+ string
+ prompt "elf2flt extra config"
+ default ""
+ help
+ Extra flags passed onto ./configure when configuring
+
+ You can enter multiple arguments here, and arguments can contain spaces
+ if they are properly quoted (or escaped, but prefer quotes). Eg.:
+ --with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
+
+endif # ARCH_BINFMT_FLAT
diff --git a/config/binutils/binutils.in.2 b/config/binutils/binutils.in.2
deleted file mode 100644
index 227f3d8..0000000
--- a/config/binutils/binutils.in.2
+++ /dev/null
@@ -1,82 +0,0 @@
-# elf2flt options
-
-if ARCH_BINFMT_FLAT
-
-config ELF2FLT_REQUIRES
- def_bool y
- select ZLIB
- select BINUTILS_FORCE_LD_BFD_ONLY
-
-comment "elf2flt"
-
-choice
- bool
- prompt "elf2flt version"
-
-config ELF2FLT_GIT
- bool
- prompt "git"
- depends on CONFIGURE_has_git
- help
- Grab the latest version of elf2flt from the CVS repository
-
-config ELF2FLT_CUSTOM
- bool
- prompt "Custom elf2flt"
- depends on EXPERIMENTAL || !CONFIGURE_has_git
- help
- The choosen elf2flt version shall be not downloaded. Instead use
- a custom location to get the source.
-
-endchoice
-
-if ELF2FLT_GIT
-
-config ELF2FLT_GIT_CSET
- string
- prompt "git cset"
- default "4820f0dbb77cd6564d5fa0817218fe2a1fb99f32"
- help
- Enter the git changeset to use.
-
- The default currently points to the HEAD of the git tree.
-
-endif # ELF2FLT_GIT
-
-config ELF2FLT_VERSION
- string
- default ELF2FLT_GIT_CSET if ELF2FLT_GIT
- default ELF2FLT_CUSTOM_VERSION if ELF2FLT_CUSTOM
-
-if ELF2FLT_CUSTOM
-
-config ELF2FLT_CUSTOM_LOCATION
- string
- prompt "Full path to custom elf2flt source"
- help
- Enter the path to the directory or tarball of your source for elf2flt.
-
- If the path is a tarball, it should extract to: <name>-<version>/
- where the name is this component, elf2flt, and the version is set
- below in the custom version string.
-
-config ELF2FLT_CUSTOM_VERSION
- string
- prompt "elf2flt custom version number"
- help
- Enter the version number for your custom elf2flt.
-
-endif # ELF2FLT_CUSTOM
-
-config ELF2FLT_EXTRA_CONFIG_ARRAY
- string
- prompt "elf2flt extra config"
- default ""
- help
- Extra flags passed onto ./configure when configuring
-
- You can enter multiple arguments here, and arguments can contain spaces
- if they are properly quoted (or escaped, but prefer quotes). Eg.:
- --with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
-
-endif # ARCH_BINFMT_FLAT