From 4cbdbc875ef4551662e687d7d94822ebd707a1e9 Mon Sep 17 00:00:00 2001 From: Gregory Nutt Date: Thu, 6 Mar 2014 13:00:50 -0600 Subject: [PATCH] Support for the older, manual configurations has been completely removed from the NuttX build system --- ChangeLog | 11 +++ Documentation/NuttShell.html | 32 +-------- Documentation/NuttxPortingGuide.html | 27 +------- Kconfig | 7 -- Makefile.unix | 15 +--- Makefile.win | 8 +-- README.txt | 100 +++------------------------ configs/README.txt | 21 +----- configs/stm3210e-eval/README.txt | 8 +-- configs/stm3220g-eval/README.txt | 47 ++++++------- configs/sure-pic32mx/README.txt | 13 ++-- tools/configure.c | 37 ---------- tools/configure.sh | 20 +----- 13 files changed, 64 insertions(+), 282 deletions(-) diff --git a/ChangeLog b/ChangeLog index 1d42b05b51..63490b23b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -6923,3 +6923,14 @@ * configs/rgmp/x86/cxxtest: Configuration converted to use the kconfig-frontends tools. This completes the conversion of all configurations to the newer format (2014-3-6) + * Removed the CONFIG_NUTTX_NEWCONFIG setting from every defconfig + file (2014-3-6). + * The legacy, manual configuration is no longer supported by the + NuttX build system. Only the newer configurations generated by + the kconfig-frontends tools will generate viable NuttX + configurations. All board configurations in the NuttX source tree + have bee converted to use the newer configuration, but if you have + some older style configurations for you board, you will need to + convert those configurations to use the kconfig-frontends tools. + See http://www.nuttx.org/doku.php?id=wiki:howtos:convertconfig for + some guidelines (2014-3-6). diff --git a/Documentation/NuttShell.html b/Documentation/NuttShell.html index 0f90e76109..21facc51ac 100644 --- a/Documentation/NuttShell.html +++ b/Documentation/NuttShell.html @@ -8,7 +8,7 @@

NuttShell (NSH)

-

Last Updated: February 20, 2014

+

Last Updated: March 6, 2014

@@ -3863,32 +3863,6 @@ CONFIG_SCHED_WAITPID=y Of course, even with CONFIG_SCHED_WAITPID=y defined, specific applications can still be forced to run asynchronously by adding the ampersand (&) after the NSH command.

-

4.3.3 Application Configuration File

- -

- The appconfig File. - A special configuration file is used to configure which applications are to be included in the build. - The source for this file is saved at configs/<board>/<configuration>/appconfig. - The existence of the appconfig file in the board configuration directory is sufficient to enable building of applications. -

- -

- The appconfig file is copied into the apps/ directory as .config when NuttX is configured. - .config is included by the top-level apps/Makefile. - As a minimum, this configuration file must define files to add to the CONFIGURED_APPS list like: -

- - -

- Changes in the Works. - There are changes in the works that will obsolete the appconfig file. - These changes will implement an automated configuration system for NuttX. - One consequence of this new configuration system is that the appconfig file will become obsolete and will be replaced by a new mechanism for selecting applications. - This new mechanism is not yet available, but is dicussed here: http://tech.groups.yahoo.com/group/nuttx/message/1604. -

-
@@ -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 -

      -
    +

    2.4.2 Summary of Files

    2.4.2.1 Board Specific Logic

    @@ -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