nuttx/Kconfig

290 lines
7.2 KiB
Plaintext
Raw Normal View History

#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#
mainmenu "Nuttx/$ARCH Configuration"
config APPSDIR
string
option env="APPSDIR"
# This is a temporary kludge to let the build system know that we are using the new
# configuration system
config NUTTX_NEWCONFIG
bool
default y
menu "General Setup"
config EXPERIMENTAL
bool "Prompt for development and/or incomplete code/drivers"
menu "Build Configuration"
config APPS_DIR
string "Application directory"
default "../apps"
---help---
Identifies the directory that builds the
application to link with NuttX. Default: ../apps This symbol must be assigned
to the path to the application build directory *relative* to
the NuttX top build direcory. If you had an application
directory and the NuttX directory each in separate directory
trees like this:
build
|-nuttx
| |
| `- Makefile
`-application
|
`- Makefile
Then you would set CONFIG_APPS_DIR=../application.
The application direction must contain Makefile and this make
file must support the following targets:
libapps$(LIBEXT) (usually libapps.a). libapps.a is a static
library ( an archive) that contains all of application object
files.
clean. Do whatever is appropriate to clean the application
directories for a fresh build.
distclean. Clean everthing -- auto-generated files, symbolic
links etc. -- so that the directory contents are the same as
the contents in your configuration management system.
This is only done when you change the NuttX configuration.
depend. Make or update the application build dependencies.
When this application is invoked it will receive the setting TOPDIR like:
$(MAKE) -C $(CONFIG_APPS_DIR) TOPDIR="$(TOPDIR)" <target>
TOPDIR is the full path to the NuttX directory. It can be used, for
example, to include makefile fragments (e.g., .config or Make.defs)
or to set up include file paths.
config BUILD_2PASS
bool "Two pass build"
default n
---help---
Enables the two pass build options.
Two-pass build options. If the 2 pass build option is selected, then these
options configure the make system build a extra link object. This link object
is assumed to be an incremental (relative) link object, but could be a static
library (archive) (some modification to this Makefile would be required if
CONFIG_PASS1_TARGET generates an archive). Pass 1 1ncremental (relative) link
objects should be put into the processor-specific source directory (where other
link objects will be created). If the pass1 obect is an archive, it could
go anywhere.
if BUILD_2PASS
config PASS1_TARGET
string "Pass one target"
default ""
---help---
The name of the first pass build target. This
can be specific build target, a special build target (all, default, etc.)
or may just be left undefined.
config PASS1_BUILDIR
string "Pass one build directory"
default "build"
---help---
The path, relative to the top NuttX build
directory to directory that contains the Makefile to build the
first pass object. The Makefile must support the following targets:
The special target CONFIG_PASS1_TARGET (if defined)
and the usual depend, clean, and distclean targets.
config PASS1_OBJECT
string "Pass one object"
default ""
---help---
May be used to include an extra, pass1 object
into the final link. This would probably be the object generated
from the CONFIG_PASS1_TARGET. It may be available at link time
in the arch/<architecture>/src directory.
config NUTTX_KERNEL
bool "NuttX kernel build"
default n
---help---
Builds NuttX as a separately compiled kernel.
endif
endmenu
menu "Binary Output Formats"
config RRLOAD_BINARY
bool "rrload binary format"
default n
---help---
Create nuttx.rr in the rrload binary format used with
BSPs from www.ridgerun.com using the tools/mkimage.sh script.
config INTELHEX_BINARY
bool "Intel HEX binary format"
default n
---help---
Create the nuttx.hex in the Intel HEX binary format that is
used with many different loaders. This option will use the GNU objcopy program
and should not be selected if you are not using the GNU toolchain.
config MOTOROLA_SREC
bool "Motorola S-Record binary format"
default n
---help---
Create the nuttx.srec in the Motorola S-Record binary format that is
used with many different loaders. This option will use the GNU objcopy program
and should not be selected if you are not using the GNU toolchain.
config RAW_BINARY
bool "Raw binary format"
default n
---help---
Create the nuttx.bin in the raw binary format that is used with many
different loaders using the GNU objcopy program. This option
should not be selected if you are not using the GNU toolchain.
endmenu
menu "Debug Options"
config DEBUG
bool "Enable debug output"
default n
---help---
enables built-in debug options
if DEBUG
config DEBUG_VERBOSE
bool "Enable debug verbose output"
default n
---help---
enables verbose debug output
config DEBUG_ENABLE
bool "Enable debug controls"
default n
---help---
Support an interface to enable or disable debug output.
config DEBUG_SCHED
bool "Enable scheduler debug output"
default n
---help---
Enable OS debug output (disabled by default)
config DEBUG_MM
bool "Enable memory manager debug output"
default n
---help---
Enable memory management debug output (disabled by default)
config DEBUG_NET
bool "Enable network debug output"
default n
---help---
Enable network debug output (disabled by default)
config DEBUG_USB
bool "Enable USB debug output"
default n
---help---
Enable usb debug output (disabled by default)
config DEBUG_FS
bool "Enable file system debug output"
default n
---help---
Enable file system debug output (disabled by default)
config DEBUG_LIB
bool "Enable C library debug output"
default n
---help---
Enable C library debug output (disabled by default)
config DEBUG_BINFMT
bool "Enable binary loader debug output"
default n
---help---
Enable binary loader debug output (disabled by default)
config DEBUG_GRAPHICS
bool "Enable graphics debug output"
default n
---help---
Enable NX graphics debug output (disabled by default)
config DEBUG_I2C
bool "Enable I2C debug output"
default n
---help---
Enable I2C driver debug output (disabled by default)
config DEBUG_SPI
bool "Enable SPI debug output"
default n
---help---
Enable I2C driver debug output (disabled by default)
config DEBUG_WATCHDOG
bool "Enable watchdog timer debug output"
default n
---help---
Enable watchdog timer debug output (disabled by default)
endif
config DEBUG_SYMBOLS
bool "Enable debug symbols"
default n
---help---
Build without optimization and with debug symbols (needed
for use with a debugger).
endmenu
endmenu
menu "System Type"
source "arch/Kconfig"
endmenu
menu "Board Selection"
source "configs/Kconfig"
endmenu
menu "Kernel Features"
source sched/Kconfig
endmenu
menu "Device Drivers"
source drivers/Kconfig
endmenu
menu "Networking support"
source net/Kconfig
endmenu
menu "File systems"
source fs/Kconfig
endmenu
menu "Memory management"
source mm/Kconfig
endmenu
menu "Library routines"
source lib/Kconfig
source libxx/Kconfig
endmenu
menu "Application configuration"
source "$APPSDIR/Kconfig"
endmenu