1d3dd328dd
maintains the same semantics as Kernel’s module build
and compatible with Kconfiglib implementation.
The problem of kconfiglib not being able to use tri-states is this:
linux is here torvalds/linux@6dd85ff
The module option is extracted from one of the triate three states into a MODULE keyword.
Kconfiglib supports the default implementation of module to be MODULE for compatibility with the linux kernel, and triate degenerates into bool two states
Refer to this code: 061e71f7d7/kconfiglib.py (L4274-L4284)
Signed-off-by: xuxin19 <xuxin19@xiaomi.com>
89 lines
2.0 KiB
Plaintext
89 lines
2.0 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
config BINFMT_DISABLE
|
|
bool "Disable BINFMT support"
|
|
default DEFAULT_SMALL
|
|
---help---
|
|
By default, support for loadable binary formats is built. This logic
|
|
may be suppressed by defining this setting.
|
|
|
|
if !BINFMT_DISABLE
|
|
|
|
config PATH_INITIAL
|
|
string "Initial PATH Value"
|
|
default ""
|
|
depends on LIBC_ENVPATH
|
|
---help---
|
|
The initial value of the PATH variable. This is the colon-separated
|
|
list of absolute paths. E.g., "/bin:/usr/bin:/sbin"
|
|
|
|
config BINFMT_LOADABLE
|
|
bool
|
|
select MODULES
|
|
default n
|
|
---help---
|
|
Automatically selected if a loadable binary format is selected.
|
|
|
|
config PIC
|
|
bool
|
|
default n
|
|
---help---
|
|
Automatically selected if the binary format requires position
|
|
independent operation.
|
|
|
|
config NXFLAT
|
|
bool "Enable the NXFLAT Binary Format"
|
|
default n
|
|
select BINFMT_LOADABLE
|
|
select PIC
|
|
---help---
|
|
Enable support for the NXFLAT binary format. Default: n
|
|
|
|
if NXFLAT
|
|
source "binfmt/libnxflat/Kconfig"
|
|
endif
|
|
|
|
config ELF
|
|
bool "Enable the ELF Binary Format"
|
|
default n
|
|
select BINFMT_LOADABLE
|
|
select LIBC_ARCH_ELF
|
|
select ARCH_USE_TEXT_HEAP if ARCH_HAVE_TEXT_HEAP
|
|
---help---
|
|
Enable support for the ELF binary format. Default: n
|
|
|
|
if ELF
|
|
source "binfmt/libelf/Kconfig"
|
|
endif
|
|
endif
|
|
|
|
config BINFMT_CONSTRUCTORS
|
|
bool "C++ Static Constructor Support"
|
|
default n
|
|
depends on HAVE_CXX && SCHED_STARTHOOK && ELF
|
|
---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
|