summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2016-07-04 20:51:39 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2016-07-05 09:48:19 +0200
commit49d97993d83f92bb975110a7ff49ea75a84ee2c2 (patch)
tree01e6a77e0e1cabfef741fb8d0136b576f752e9e2 /arch
parent4b4ed7a7f9f11d3bb180045b2d907f30edb8280e (diff)
arch: define dependencies for the binfmt flat formats
The situation looks like following for elf2flt and binfmt FLAT: * Only gcc for bfin/m68k implements -msep-data (BR2_BINFMT_FLAT_SEP_DATA) and -mid-shared-library (BR2_BINFMT_FLAT_SHARED), so the corresponding options are made only visible on those architectures. * When the default of BR2_BINFMT_FLAT_ONE is used on m68k, broken binaries are produced, which mainly end up in SIGILL, so do not use it for m68k. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> [Thomas: - also add the dependencies on m68k/bfin to BR2_BINFMT_FLAT_SHARED - rework commit log.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/Config.in3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/Config.in b/arch/Config.in
index be37481ac..b980e05b9 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -331,17 +331,20 @@ choice
config BR2_BINFMT_FLAT_ONE
bool "One memory region"
+ depends on !BR2_m68k
help
All segments are linked into one memory region.
config BR2_BINFMT_FLAT_SEP_DATA
bool "Separate data and code region"
+ depends on BR2_m68k || BR2_bfin
help
Allow for the data and text segments to be separated and placed in
different regions of memory.
config BR2_BINFMT_FLAT_SHARED
bool "Shared binary"
+ depends on BR2_m68k || BR2_bfin
# Even though this really generates shared binaries, there is no libdl
# and dlopen() cannot be used. So packages that require shared
# libraries cannot be built. Therefore, we don't select