@@ -4142,8 +4116,6 @@ mount -t vfat /dev/ram1 /tmp
[
Adding NSH commands
addroute
- appconfig
- Application configuration file (appconfig )
Autogenerated header files
Background commands
Background command priority
@@ -4196,10 +4168,10 @@ mount -t vfat /dev/ram1 /tmp
CONFIG_NSH_NESTDEPTH
CONFIG_NSH_NETMASK
CONFIG_NSH_NOMAC
+ CONFIG_NSH_READLINE
|
- CONFIG_NSH_READLINE
CONFIG_NSH_ROMFSDEVNO
CONFIG_NSH_ROMFSETC
CONFIG_NSH_ROMFSETC
diff --git a/Documentation/NuttxPortingGuide.html b/Documentation/NuttxPortingGuide.html
index 2b9362af52..1f45613255 100644
--- a/Documentation/NuttxPortingGuide.html
+++ b/Documentation/NuttxPortingGuide.html
@@ -645,20 +645,14 @@
|-- <config1-dir>
| |-- Make.defs
| |-- defconfig
-| |-- appconfig1
| `-- setenv.sh
|-- <config2-dir>
| |-- Make.defs
| |-- defconfig
-| |-- appconfig1
| `-- setenv.sh
| ...
`-- (other board-specific configuration sub-directories)/
-
-
- 1Optional
-
-
+
@@ -744,13 +738,6 @@
most C files in the system.
-
-
- appconfig : This is another configuration file that is specific to the
- application. This file is copied into the application build directory
- when NuttX is configured. See ../apps/README.txt for further details.
-
-
setenv.sh : This is a script that you can include that will be installed at
@@ -1461,15 +1448,6 @@ netutils/
Copy configs/ <board-name>/[ <config-dir>/]defconfig to ${TOPDIR}/.config
-
- And if configs/ <board-name>/[ <config-dir>/appconfig exists in the board configuration directory:
-
-
- - Copy
configs/ <board-name>/[ <config-dir>/appconfig to <app-dir>/.config
- echo "APPS_LOC=\"<app-dir>\"" >> "${TOPDIR}/.config"
-
-
-
Where <board-name> is the name of one of the sub-directories of the
NuttX configs/ directory.
@@ -1500,8 +1478,7 @@ netutils/
- If configs/ <board-name>/[ <config-dir>]/appconfig
- exists and your application directory is not in the standard loction (../apps),
+ If your application directory is not in the standard loction (../apps or ../apps-<version> ),
then you should also specify the location of the application directory on the command line like:
diff --git a/Kconfig b/Kconfig
index eecb996703..c2217f4938 100644
--- a/Kconfig
+++ b/Kconfig
@@ -9,13 +9,6 @@ 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 "Build Setup"
config EXPERIMENTAL
diff --git a/Makefile.unix b/Makefile.unix
index 271bc915a5..604da4fd7c 100644
--- a/Makefile.unix
+++ b/Makefile.unix
@@ -802,10 +802,7 @@ endif
# apps_clean: Perform the clean operation only in the user application
# directory
# apps_distclean: Perform the distclean operation only in the user application
-# directory. Note that the apps/.config file (inf any) is
-# preserved so that this is not a "full" distclean but more of a
-# configuration "reset." (There will not be an apps/.config
-# file if the configuration was generated via make menuconfig).
+# directory.
apps_clean:
ifneq ($(APPDIR),)
@@ -814,15 +811,5 @@ endif
apps_distclean:
ifneq ($(APPDIR),)
- $(Q) if [ -r "$(TOPDIR)/$(APPDIR)/.config" ]; then \
- cp "$(TOPDIR)/$(APPDIR)/.config" _SAVED_APPS_config || \
- { echo "Copy of $(APPDIR)/.config failed" ; exit 1 ; } \
- else \
- rm -f _SAVED_APPS_config; \
- fi
$(Q) $(MAKE) -C "$(TOPDIR)/$(APPDIR)" TOPDIR="$(TOPDIR)" distclean
- $(Q) if [ -r _SAVED_APPS_config ]; then \
- mv _SAVED_APPS_config "$(TOPDIR)/$(APPDIR)/.config" || \
- { echo "Copy of _SAVED_APPS_config failed" ; exit 1 ; } \
- fi
endif
diff --git a/Makefile.win b/Makefile.win
index 9fa1248c2d..6583ad86f0 100644
--- a/Makefile.win
+++ b/Makefile.win
@@ -799,10 +799,7 @@ endif
# apps_clean: Perform the clean operation only in the user application
# directory
# apps_distclean: Perform the distclean operation only in the user application
-# directory. Note that the apps\.config file (inf any) is
-# preserved so that this is not a "full" distclean but more of a
-# configuration "reset." (There will not be an apps\.config
-# file if the configuration was generated via make menuconfig).
+# directory.
apps_clean:
ifneq ($(APPDIR),)
@@ -811,8 +808,5 @@ endif
apps_distclean:
ifneq ($(APPDIR),)
- $(call DELFILE, _SAVED_APPS_config
- $(Q) if exist "$(APPDIR)\.config" ( cp "$(APPDIR)\.config" _SAVED_APPS_config )
$(Q) $(MAKE) -C "$(APPDIR)" TOPDIR="$(TOPDIR)" distclean
- $(Q) if exist _SAVED_APPS_config ( mv _SAVED_APPS_config "$(APPDIR)\.config" )
endif
diff --git a/README.txt b/README.txt
index 10c3361079..16a075b638 100644
--- a/README.txt
+++ b/README.txt
@@ -12,7 +12,6 @@ README
- Instantiating "Canned" Configurations
- NuttX Configuration Tool
- Incompatibilities with Older Configurations
- - Converting Older Configurations to use the Configuration Tool
- NuttX Configuration Tool under DOS
o Toolchains
- Cross-Development Toolchains
@@ -254,14 +253,6 @@ additional file to the directory the NuttX application package (APPSDIR)):
included in the build and what is not. This file is also used
to generate a C configuration header at include/nuttx/config.h.
- Copy configs///appconfig to ${APPSDIR}/.config
-
- The appconfig file describes the applications that need to be
- built in the appliction directory (APPSDIR). Not all configurations
- have an appconfig file. This file is deprecated and will not be
- used with new defconfig files produced with the kconfig-mconf
- configuration tool.
-
General information about configuring NuttX can be found in:
${TOPDIR}/configs/README.txt
@@ -379,98 +370,25 @@ Incompatibilities with Older Configurations
***** WARNING *****
- The old legacy, manual configurations and the new kconfig-frontends
- configurations are not 100% compatible. Old legacy configurations
- can *not* be used with the kconfig-frontends tool: If you run
- 'make menuconfig' with a legacy configuration the resulting
+ The current NuttX build system supports *only* the new configuration
+ files generated using the kconfig-frontends tools. The older, legacy,
+ manual configurations and the new kconfig-frontends configurations are
+ not compatible. Old legacy configurations can *not* be used with the kconfig-frontends tool and, hence, cannot be used with recent releases
+ of NuttX:
+
+ If you run 'make menuconfig' with a legacy configuration the resulting
configuration will probably not be functional.
Q: How can I tell if a configuration is a new kconfig-frontends
configuration or an older, manual configuration?
- A: a) New kcondfig-frontends configurations will have this setting
- within the defconfig/.config file":
+ A: Only old, manual configurations will have an appconfig file
- CONFIG_NUTTX_NEWCONFIG=y
-
- b) Only old, manual configurations will have an appconfig file
-
-Converting Older Configurations to use the Configuration Tool
--------------------------------------------------------------
Q: How can I convert a older, manual configuration into a new,
kconfig-frontends toolchain.
- A: 1) Look at the appconfig file: Each application path there
- will now have to have an enabling setting. For example,
- if the old appconfig file had:
-
- CONFIGURED_APPS = examples/ostest
-
- Then the new configuration will need:
-
- CONFIG_EXAMPLES_OSTEST=y
-
- The appconfig file can then be deleted because it will not
- be needed after the conversion.
-
- 2) Build the cmpconfig utility at tools:
-
- cd tools
- make -f Makefile.host cmpconfig
-
- 3) Perform these steps repeatedly until you are convinced that
- the configurations are the same:
-
- a) Repeat the following until you have account for all of the differences:
-
- cp configs///defconfig .config
- make menuconfig (Just exit and save the new .config file)
- tools/cmpconfig configs///defconfig .config | grep file1
-
- The final grep will show settings in the old defconfig file that
- do not appear in the new .config file (or have a different value
- in the new .config file). In the new configuration, you will
- probably have to enable certain groups of features. Such
- hierarachical enabling options were not part of the older
- configuration.
-
- b) Then make sure these all make sense:
-
- tools/cmpconfig configs///defconfig .config | grep file2
-
- The final grep will show settings in the new .config file that
- do not appear in the older defconfig file (or have a different value
- in the new .config file). Here you should see only the new
- hierarachical enabling options (such as CONFIG_SPI or CONFIG_MMCSD)
- plus some other internal configuration settings (like CONFIG_ARCH_HAVE_UART0).
- You will have to convince yourself that these new settings all make sense.
-
- 4) Finally, update the configuration:
-
- cp .config configs///defconfig
- rm configs///appconfig
-
- NOTE: You should comment out the line containing the CONFIG_APPS_DIR
- in the new defconfig file. Why? Because the application directory
- may reside at a different location when the configuration is installed
- at some later time.
-
- # CONFIG_APPS_DIR="../apps"
-
- 5) The updated configuration can then be instantiated in the normal
- fashion:
-
- cd tools
- ./configure.sh /
-
- (or configure.bat for the case of the Windows native build).
-
- NOTE: If CONFIG_APPS_DIR is not defined in the defconfig file,
- the configure.sh script will find and add the new, correct path to
- the application directory (CONFIG_APPS_DIR) when it copies the
- defconfig file to the .config file. This is the setting that was
- commented out in step 4.
+ A: Refer to http://www.nuttx.org/doku.php?id=wiki:howtos:convertconfig
NuttX Configuration Tool under DOS
----------------------------------
diff --git a/configs/README.txt b/configs/README.txt
index aae71edc57..28f83c502a 100644
--- a/configs/README.txt
+++ b/configs/README.txt
@@ -60,17 +60,13 @@ following characteristics:
|--
| |-- Make.defs
| |-- defconfig
- | |-- appconfig*
| `-- setenv.sh
|--
| |-- Make.defs
| |-- defconfig
- | |-- appconfig*
| `-- setenv.sh
...
- *optional
-
Summary of Files
^^^^^^^^^^^^^^^^
@@ -132,10 +128,6 @@ defconfig -- This is a configuration file similar to the Linux
(2) to generate include/nuttx/config.h which is included by
most C files in the system.
-appconfig -- This is another configuration file that is specific to the
- application. This file is copied into the application build directory
- when NuttX is configured. See ../apps/README.txt for further details.
-
setenv.sh -- This is a script that you can include that will be installed at
the toplevel of the directory structure and can be sourced to set any
necessary environment variables. You will most likely have to customize the
@@ -622,12 +614,6 @@ Configuring NuttX requires only copying
configs///setenv.sh to ${TOPDIR}/setenv.sh
configs///defconfig to ${TOPDIR}/.config
-And if configs///appconfig exists in the board
-configuration directory:
-
- Copy configs///appconfig to /.config
- echo "APPS_LOC=\"\"" >> "${TOPDIR}/.config"
-
tools/configure.sh
There is a script that automates these steps. The following steps will
accomplish the same configuration:
@@ -643,10 +629,9 @@ tools/configure.sh
See tools/README.txt for more information about these scripts.
- And if configs///appconfig exists and your
- application directory is not in the standard loction (../apps), then
- you should also specify the location of the application directory on the
- command line like:
+ And if your application directory is not in the standard loction (../apps
+ or ../apps-), then you should also specify the location of the
+ application directory on the command line like:
cd tools
./configure.sh -a /
diff --git a/configs/stm3210e-eval/README.txt b/configs/stm3210e-eval/README.txt
index 58b9a73cd5..d638c7f89f 100644
--- a/configs/stm3210e-eval/README.txt
+++ b/configs/stm3210e-eval/README.txt
@@ -1053,11 +1053,11 @@ Where is one of the following:
USB serial example at apps/examples/usbterm by changing the
following:
- -CONFIGURED_APPS += examples/usbserial
- +CONFIGURED_APPS += examples/usbterm
+ -CONFIG_EXAMPLES_USBSERIAL=y
+ +CONFIG_EXAMPLES_USBSERIAL=n
- In either the original appconfig file (before configuring)
- or in the final apps/.config file (after configuring).
+ -CONFIG_EXAMPLES_USBTERM=n
+ +CONFIG_EXAMPLES_USBTERM=y
usbmsc:
-------
diff --git a/configs/stm3220g-eval/README.txt b/configs/stm3220g-eval/README.txt
index 67a982ba60..ce209c27f6 100644
--- a/configs/stm3220g-eval/README.txt
+++ b/configs/stm3220g-eval/README.txt
@@ -933,18 +933,16 @@ Where is one of the following:
CONFIG_CAN_REGDEBUG
6. This example can support an FTP client. In order to build in FTP client
- support simply uncomment the following lines in the appconfig file (before
- configuring) or in the apps/.config file (after configuring):
+ support simply reconfigure NuttX, adding:
- #CONFIGURED_APPS += netutils/ftpc
- #CONFIGURED_APPS += examples/ftpc
+ CONFIG_NETUTILS_FTPC=y
+ CONFIG_EXAMPLES_FTPC=y
7. This example can support an FTP server. In order to build in FTP server
- support simply uncomment the following lines in the appconfig file (before
- configuring) or in the apps/.config file (after configuring):
+ support simply add the following lines in the NuttX configuration file:
- #CONFIGURED_APPS += netutils/ftpd
- #CONFIGURED_APPS += examples/ftpd
+ CONFIG_NETUTILS_FTPD=y
+ CONFIG_EXAMPLES_FTPD=y
And enable poll() support in the NuttX configuration file:
@@ -968,32 +966,31 @@ Where is one of the following:
9. Adding LCD and graphics support:
- appconfig (apps/.config): Enable the application configurations that you
- want to use. Asexamples:
+ Enable the application configurations that you want to use. As examples:
- CONFIGURED_APPS += examples/nx : Pick one or more
- CONFIGURED_APPS += examples/nxhello :
- CONFIGURED_APPS += examples/nximage :
- CONFIGURED_APPS += examples/nxlines :
+ CONFIG_EXAMPLES_NX=y : Pick one or more
+ CONFIG_EXAMPLES_NXHELLO=y :
+ CONFIG_EXAMPLES_NXIMAGE=y :
+ CONFIG_EXAMPLES_NXLINES=y :
defconfig (nuttx/.config):
- CONFIG_STM32_FSMC=y : FSMC support is required for the LCD
- CONFIG_NX=y : Enable graphics suppport
- CONFIG_MM_REGIONS=2 : When FSMC is enabled, so is the on-board SRAM memory region
+ CONFIG_STM32_FSMC=y : FSMC support is required for the LCD
+ CONFIG_NX=y : Enable graphics suppport
+ CONFIG_MM_REGIONS=2 : When FSMC is enabled, so is the on-board SRAM memory region
10. USB OTG FS Device or Host Support
- CONFIG_USBDEV - Enable USB device support, OR
- CONFIG_USBHOST - Enable USB host support (but not both)
+ CONFIG_USBDEV : Enable USB device support, OR
+ CONFIG_USBHOST : Enable USB host support (but not both)
- CONFIG_STM32_OTGFS - Enable the STM32 USB OTG FS block
- CONFIG_STM32_SYSCFG - Needed for all USB OTF FS support
+ CONFIG_STM32_OTGFS : Enable the STM32 USB OTG FS block
+ CONFIG_STM32_SYSCFG : Needed for all USB OTF FS support
- CONFIG_SCHED_WORKQUEUE - Worker thread support is required for the mass
- storage class (both host and device).
- CONFIG_NSH_ARCHINIT - Architecture specific USB initialization
- is needed
+ CONFIG_SCHED_WORKQUEUE : Worker thread support is required for the mass
+ storage class (both host and device).
+ CONFIG_NSH_ARCHINIT : Architecture specific USB initialization
+ is needed
11. This configuration requires that jumper JP22 be set to enable RS-232 operation.
diff --git a/configs/sure-pic32mx/README.txt b/configs/sure-pic32mx/README.txt
index 65f6a7bb8a..67a8554f05 100644
--- a/configs/sure-pic32mx/README.txt
+++ b/configs/sure-pic32mx/README.txt
@@ -691,8 +691,8 @@ Where is one of the following:
System Type -> PIC32MX Peripheral Support:
CONFIG_PIC32MX_USBDEV=y : Enable PIC32 USB device support
- examples/usbterm - This option can be enabled by uncommenting
- the following line in the appconfig file:
+ examples/usbterm - This option can be enabled by adding the following
+ to the NuttX configuration file:
Application Configuration->Examples:
CONFIG_EXAMPLES_USBTERM=y : Selects /apps/examples/usbterm
@@ -704,7 +704,7 @@ Where is one of the following:
CONFIG_CDCACM=y : or the CDC/ACM serial driver (not both)
system/cdcacm - The system/cdcacm program can be included as an
- function by uncommenting the following line in the appconfig file:
+ function by dding the following to the NuttX configuration file:
Application Configuration->Examples:
CONFIG_SYSTEM_CDCACM=y : Select apps/system/cdcacm
@@ -714,9 +714,10 @@ Where is one of the following:
Drivers->USB Device Driver Support
CONFIG_CDCACM=y : Enable the CDCACM device
- system/usbmsc - There are some hooks in the appconfig file
- to enable the USB mass storage class (MSC)device. However, this device
- cannot work until support for the SD card is also incorporated.
+ system/usbmsc - To enable the USB mass storage class (MSC)device,
+ you would need to add the following to the NuttX configuration file.
+ However, this device cannot work until support for the SD card is
+ also incorporated.
Drivers->USB Device Driver Support
CONFIG_USBMSC=y : Enables the USB MSC class
diff --git a/tools/configure.c b/tools/configure.c
index 323177b75d..5f8fbdddc8 100644
--- a/tools/configure.c
+++ b/tools/configure.c
@@ -87,11 +87,9 @@ static char *g_verstring = "0.0"; /* Version String */
static char *g_srcdefconfig = NULL; /* Source defconfig file */
static char *g_srcmakedefs = NULL; /* Source Make.defs file */
-static char *g_srcappconfig = NULL ; /* Source appconfig file (optional) */
static char *g_srcsetenvsh = NULL; /* Source setenv.sh file (optional) */
static char *g_srcsetenvbat = NULL; /* Source setenv.bat file (optional) */
-static bool g_newconfig = false; /* True: New style configuration */
static bool g_winnative = false; /* True: Windows native configuration */
static bool g_needapppath = true; /* Need to add app path to the .config file */
@@ -603,15 +601,6 @@ static void check_configuration(void)
{
struct variable_s *var;
- /* Check if this the new style configuration based on kconfig-fontends */
-
- var = find_variable("CONFIG_NUTTX_NEWCONFIG", g_configvars);
- if (var && var->val && strcmp("y", var->val) == 0)
- {
- debug("check_configuration: New style configuration\n");
- g_newconfig = true;
- }
-
/* Check if this is a Windows native configuration */
var = find_variable("CONFIG_WINDOWS_NATIVE", g_configvars);
@@ -669,23 +658,6 @@ static void check_configuration(void)
g_srcsetenvsh = strdup(g_buffer);
}
}
-
- /* Old style configurations MUST provide an appconfig file */
-
- if (!g_newconfig)
- {
- snprintf(g_buffer, BUFFER_SIZE, "%s%cappconfig", g_configpath, g_delim);
- debug("check_configuration: Checking %s\n", g_buffer);
- if (!verify_file(g_buffer))
- {
- fprintf(stderr, "ERROR: Configuration corrupted in %s\n", g_configpath);
- fprintf(stderr, " Required appconfig file not found.\n");
- enumerate_configs();
- exit(EXIT_FAILURE);
- }
-
- g_srcappconfig = strdup(g_buffer);
- }
}
static void copy_file(const char *srcpath, const char *destpath, mode_t mode)
@@ -803,15 +775,6 @@ static void configure(void)
copy_file(g_srcsetenvbat, g_buffer, 0644);
}
- /* Copy the appconfig file to ../apps/.config if have one and need one */
-
- if (g_srcappconfig)
- {
- snprintf(g_buffer, BUFFER_SIZE, "%s%c.config", g_apppath, g_delim);
- debug("configure: Copying from %s to %s\n", g_srcappconfig, g_buffer);
- copy_file(g_srcappconfig, g_buffer, 0644);
- }
-
/* If we did not use the CONFIG_APPS_DIR that was in the defconfig config file,
* then append the correct application information to the tail of the .config
* file
diff --git a/tools/configure.sh b/tools/configure.sh
index 7b3a1bdc18..25f5afc15a 100755
--- a/tools/configure.sh
+++ b/tools/configure.sh
@@ -133,15 +133,12 @@ if [ ! -r "${src_config}" ]; then
fi
# Extract values needed from the defconfig file. We need:
-# (1) The CONFIG_NUTTX_NEWCONFIG setting to know if this is a "new" style
-# configuration,
-# (2) The CONFIG_WINDOWS_NATIVE setting to know it this is target for a
+# (1) The CONFIG_WINDOWS_NATIVE setting to know it this is target for a
# native Windows (meaning that we want setenv.bat vs setenv.sh and we need
# to use backslashes in the CONFIG_APPS_DIR setting).
-# (3) The CONFIG_APPS_DIR setting to see if there is a configured location for the
+# (2) The CONFIG_APPS_DIR setting to see if there is a configured location for the
# application directory. This can be overridden from the command line.
-newconfig=`grep CONFIG_NUTTX_NEWCONFIG= "${src_config}" | cut -d'=' -f2`
winnative=`grep CONFIG_WINDOWS_NATIVE= "${src_config}" | cut -d'=' -f2`
defappdir=y
@@ -218,16 +215,3 @@ if [ "X${defappdir}" = "Xy" ]; then
echo "CONFIG_APPS_DIR=\"$posappdir\"" >> "${dest_config}"
fi
fi
-
-# Copy appconfig file. The appconfig file will be copied to ${appdir}/.config
-# if both (1) ${appdir} is defined and (2) we are not using the new configuration
-# (which does not require a .config file in the appsdir.
-
-if [ ! -z "${appdir}" -a "X${newconfig}" != "Xy" ]; then
- if [ ! -r "${configpath}/appconfig" ]; then
- echo "NOTE: No readable appconfig file found in ${configpath}"
- else
- install -m 644 "${configpath}/appconfig" "${TOPDIR}/${posappdir}/.config" || \
- { echo "Failed to copy ${configpath}/appconfig" ; exit 10 ; }
- fi
-fi
|