forked from nuttx/nuttx-update
binfmt/elf: Allow the userspace ELF type to be defined by board configuration.
This change allows boards to define an additional kconfig option, which specifies the final link format of application executables. By selecting `CONFIG_BINFMT_ELF_RELOCATABLE`, and providing an appropriate linker script, applications can be fully linked, removing the need to process relocations.
This commit is contained in:
parent
9bd1d5ddda
commit
6492f0172e
2 changed files with 23 additions and 0 deletions
|
@ -474,6 +474,10 @@ config ARCH_HAVE_CPUINFO
|
|||
bool
|
||||
default n
|
||||
|
||||
config ARCH_HAVE_ELF_EXECUTABLE
|
||||
bool
|
||||
default n
|
||||
|
||||
config ARCH_FPU
|
||||
bool "FPU support"
|
||||
default y
|
||||
|
|
|
@ -66,3 +66,22 @@ config BINFMT_CONSTRUCTORS
|
|||
---help---
|
||||
Built-in support for C++ constructors in loaded modules. Currently
|
||||
only support for ELF binary formats.
|
||||
|
||||
choice
|
||||
prompt "File output format"
|
||||
default BINFMT_ELF_RELOCATABLE
|
||||
---help---
|
||||
Defines the type of ELF file produced by the NuttX build system.
|
||||
|
||||
config BINFMT_ELF_RELOCATABLE
|
||||
bool "Relocatable ELF"
|
||||
---help---
|
||||
Produce a relocatable object as output. This is also known as partial linking.
|
||||
|
||||
config BINFMT_ELF_EXECUTABLE
|
||||
bool "Executable ELF"
|
||||
depends on ARCH_HAVE_ELF_EXECUTABLE
|
||||
---help---
|
||||
Produce a full linked executable object as output.
|
||||
|
||||
endchoice
|
||||
|
|
Loading…
Reference in a new issue