summaryrefslogtreecommitdiff
path: root/nuttx/binfmt/Kconfig
blob: 14bd4364fb8851d6af4b7e9e6c02b475931626f7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

config BINFMT_DISABLE
	bool "Disble BINFMT support"
	default n
	---help---
		By default, support for loadable binary formats is built.  This logic
		may be suppressed be defining this setting.

if !BINFMT_DISABLE

config BINFMT_EXEPATH
	bool "Support PATH variable"
	default n
	depends on !DISABLE_ENVIRON
	---help---
		Use the contents of the PATH environment variable to locate executable
		files.  Default: n

config PATH_INITIAL
	string "Initial PATH Value"
	default ""
	depends on BINFMT_EXEPATH
	---help---
		The initial value of the PATH variable.  This is the colon-separated
		list of absolute paths.  E.g., "/bin:/usr/bin:/sbin"

config NXFLAT
	bool "Enable the NXFLAT Binary Format"
	default n
	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
	---help---
		Enable support for the ELF binary format.  Default: n

if ELF
source binfmt/libelf/Kconfig
endif

config BUILTIN
	bool "Support Builtin Applications"
	default n
	depends on (!BUILD_PROTECTED && !BUILD_KERNEL) || EXPERIMENTAL
	---help---
		Enable support for builtin applications.  This features assigns a string
		name to an application and in addition if FS_BINFS is defined, retaining
		those names in a file system from which they can be executed.  This feature
		is also the underlying requirement to support built-in applications in the
		NuttShell (NSH).

		ISSUES:  This feature is highly coupled with logic in the apps/
		sub-directory and, as a consequence, cannot be used in environments
		that do not include the standard NuttX apps/ nor in build
		configurations using BUILD_PROTECTED or BUILD_KERNEL.

if BUILTIN
source binfmt/libbuiltin/Kconfig
endif

config PCODE
	bool "Support P-Code Applications"
	default n
	depends on INTERPRETERS_PCODE && SYSTEM_PRUN && ((!BUILD_PROTECTED && !BUILD_KERNEL) || EXPERIMENTAL)
	---help---
		Enable support for interpreted P-Code binaries.  P-Code binaries are
		generated by the NuttX Pascal compiler.

		NOTE:  You must first install and select the Pascal P-Code
		interpreter before you can select this binary format.  The P-Code
		interpreter is in the pascal package and can also be fount in the
		misc/pascal directory of the repository.  Read the README.txt file
		in the misc/pascal directory for more details.  The correct
		installation director is: apps/interpreters.

		ISSUES:  This feature is highly coupled with logic in the apps/subdirectory
		and, as a consequence, cannot be used in environments that do not
		include the standard NuttX apps/ nor in build configurations using
		UILD_PROTECTED or BUILD_KERNEL..

if PCODE
source binfmt/libpcode/Kconfig
endif

endif

config PIC
	bool
	default n

config BINFMT_CONSTRUCTORS
	bool "C++ Static Constructor Support"
	default n
	depends on HAVE_CXX && SCHED_STARTHOOK && ELF
	---help---
		Build in support for C++ constructors in loaded modules.  Currently
		only support for ELF binary formats.

config SYMTAB_ORDEREDBYNAME
	bool "Symbol Tables Ordered by Name"
	default n