Top-level Makefiles: Add an application pre-configuration target

This commit is contained in:
Gregory Nutt
2015-08-11 17:35:00 -06:00
parent 597a7b2f52
commit 97ce03737b
2 changed files with 22 additions and 10 deletions
+12 -6
View File
@@ -1,7 +1,7 @@
############################################################################ ############################################################################
# Makefile.unix # Makefile.unix
# #
# Copyright (C) 2007-2012, 2014 Gregory Nutt. All rights reserved. # Copyright (C) 2007-2012, 2014-2015 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org> # Author: Gregory Nutt <gnutt@nuttx.org>
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@@ -473,19 +473,19 @@ pass2dep: context tools/mkdeps$(HOSTEXEEXT)
# location: http://ymorin.is-a-geek.org/projects/kconfig-frontends. See # location: http://ymorin.is-a-geek.org/projects/kconfig-frontends. See
# README.txt file in the NuttX tools GIT repository for additional information. # README.txt file in the NuttX tools GIT repository for additional information.
config: config: apps_preconfig
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf Kconfig $(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf Kconfig
oldconfig: oldconfig: apps_preconfig
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf --oldconfig Kconfig $(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-conf --oldconfig Kconfig
menuconfig: menuconfig: apps_preconfig
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-mconf Kconfig $(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-mconf Kconfig
qconfig: qconfig: apps_preconfig
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-qconf Kconfig $(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-qconf Kconfig
gconfig: gconfig: apps_preconfig
$(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-gconf Kconfig $(Q) APPSDIR=${CONFIG_APPS_DIR} kconfig-gconf Kconfig
# export # export
@@ -556,11 +556,17 @@ endif
# as a convenience, the following targets are included to support housekeeping # as a convenience, the following targets are included to support housekeeping
# functions in the user application directory from the NuttX build directory. # functions in the user application directory from the NuttX build directory.
# #
# apps_preconfig: Prepare applications to be configured
# apps_clean: Perform the clean operation only in the user application # apps_clean: Perform the clean operation only in the user application
# directory # directory
# apps_distclean: Perform the distclean operation only in the user application # apps_distclean: Perform the distclean operation only in the user application
# directory. # directory.
apps_preconfig:
ifneq ($(APPDIR),)
$(Q) $(MAKE) -C "$(TOPDIR)/$(APPDIR)" TOPDIR="$(TOPDIR)" preconfig
endif
apps_clean: apps_clean:
ifneq ($(APPDIR),) ifneq ($(APPDIR),)
$(Q) $(MAKE) -C "$(TOPDIR)/$(APPDIR)" TOPDIR="$(TOPDIR)" clean $(Q) $(MAKE) -C "$(TOPDIR)/$(APPDIR)" TOPDIR="$(TOPDIR)" clean
+10 -4
View File
@@ -1,7 +1,7 @@
############################################################################ ############################################################################
# Makefile.win # Makefile.win
# #
# Copyright (C) 2012 Gregory Nutt. All rights reserved. # Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org> # Author: Gregory Nutt <gnutt@nuttx.org>
# #
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
@@ -476,13 +476,13 @@ pass2dep: context tools\mkdeps$(HOSTEXEEXT)
# location: http://ymorin.is-a-geek.org/projects/kconfig-frontends. See # location: http://ymorin.is-a-geek.org/projects/kconfig-frontends. See
# misc\tools\README.txt for additional information. # misc\tools\README.txt for additional information.
config: config: apps_preconfig
$(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-conf Kconfig $(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-conf Kconfig
oldconfig: oldconfig: apps_preconfig
$(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-conf --oldconfig Kconfig $(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-conf --oldconfig Kconfig
menuconfig: configenv menuconfig: configenv apps_preconfig
$(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-mconf Kconfig $(Q) set APPSDIR=$(patsubst "%",%,${CONFIG_APPS_DIR})& kconfig-mconf Kconfig
# export # export
@@ -545,11 +545,17 @@ endif
# as a convenience, the following targets are included to support housekeeping # as a convenience, the following targets are included to support housekeeping
# functions in the user application directory from the NuttX build directory. # functions in the user application directory from the NuttX build directory.
# #
# apps_preconfig: Prepare applications to be configured
# apps_clean: Perform the clean operation only in the user application # apps_clean: Perform the clean operation only in the user application
# directory # directory
# apps_distclean: Perform the distclean operation only in the user application # apps_distclean: Perform the distclean operation only in the user application
# directory. # directory.
apps_preconfig:
ifneq ($(APPDIR),)
$(Q) $(MAKE) -C "$(APPDIR)" TOPDIR="$(TOPDIR)" preconfig
endif
apps_clean: apps_clean:
ifneq ($(APPDIR),) ifneq ($(APPDIR),)
$(Q) $(MAKE) -C "$(APPDIR)" TOPDIR="$(TOPDIR)" clean $(Q) $(MAKE) -C "$(APPDIR)" TOPDIR="$(TOPDIR)" clean