From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-f50.google.com (mail-wg0-f50.google.com [74.125.82.50]) by dpdk.org (Postfix) with ESMTP id DC6C4AFD1 for ; Tue, 10 Jun 2014 15:52:02 +0200 (CEST) Received: by mail-wg0-f50.google.com with SMTP id x13so3533035wgg.9 for ; Tue, 10 Jun 2014 06:52:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id; bh=orcQb4PJ7WLiKM7l1De/aoUSCpyz/0QBVF5w3CqLFGQ=; b=I1fMNFZr6clP1+dbqi1fLdnxf911trpyFICOSdQ/rfadXleW7Xj+SHlVjoivw4EAWW 6JtpUsQwL6+gdhYAqe4fU1/YpvjAB5+MeqXvBPZSp/zRs1cvXGOo9RiyQA5r3kh8jCUn sFoDaPsh7YWfWNJwoZDYqexr2u0hxH74MPTYQdZ2XpuR98cuDLk44leacC2Z1KA0vfBD johDlya9TjVvy50hFOGv+WjX3u79PeBo6bxd4SKO2KXEnc+1GZv6qwz+XRXUkFxR2twa PZUZef30niqGtLdl+zdABYfk21JTmNLVyGd9uC38yOViJzfv9O8d6id79CW6oBcQWZVD tjqg== X-Gm-Message-State: ALoCoQmTU8bOLf2S9Ow4adgNfFFifi+F0cUHEWDLjO6yYfzALNIDvFHndyy9DBfShCjATGizry46 X-Received: by 10.180.38.107 with SMTP id f11mr29545716wik.59.1402408337163; Tue, 10 Jun 2014 06:52:17 -0700 (PDT) Received: from XPS13.dev.6wind.com (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id gm8sm20987970wib.23.2014.06.10.06.52.15 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 10 Jun 2014 06:52:16 -0700 (PDT) From: Thomas Monjalon To: dev@dpdk.org Date: Tue, 10 Jun 2014 15:52:11 +0200 Message-Id: <1402408331-19493-1-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.0.0 Subject: [dpdk-dev] [PATCH] mk: factorize config rules X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jun 2014 13:52:03 -0000 Error message for missing template is factorized in notemplate rule. RTE_OUTPUT directory is marked as order-only prerequisite. Signed-off-by: Thomas Monjalon --- mk/rte.sdkconfig.mk | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk index 3124dce..d35b83a 100644 --- a/mk/rte.sdkconfig.mk +++ b/mk/rte.sdkconfig.mk @@ -51,23 +51,28 @@ INSTALL_TARGETS := $(addsuffix _install,$(INSTALL_CONFIGS)) showconfigs: @$(foreach CONFIG, $(INSTALL_CONFIGS), echo $(CONFIG);) -.PHONY: config -ifeq ($(RTE_CONFIG_TEMPLATE),) -config: +.PHONY: notemplate +notemplate: @printf "No template specified. " @echo "Use T=template among the following list:" @$(MAKE) -rR showconfigs | sed 's,^, ,' + +.PHONY: config +ifeq ($(RTE_CONFIG_TEMPLATE),) +config: notemplate else config: $(RTE_OUTPUT)/include/rte_config.h $(RTE_OUTPUT)/Makefile $(Q)$(MAKE) depdirs @echo "Configuration done" endif +$(RTE_OUTPUT): + mkdir -p $@ + ifdef NODOTCONF $(RTE_OUTPUT)/.config: ; else -$(RTE_OUTPUT)/.config: $(RTE_CONFIG_TEMPLATE) FORCE - @[ -d $(RTE_OUTPUT) ] || mkdir -p $(RTE_OUTPUT) +$(RTE_OUTPUT)/.config: $(RTE_CONFIG_TEMPLATE) FORCE | $(RTE_OUTPUT) $(Q)if [ "$(RTE_CONFIG_TEMPLATE)" != "" -a -f "$(RTE_CONFIG_TEMPLATE)" ]; then \ $(CPP) -undef -P -x assembler-with-cpp \ -fdirectives-only -ffreestanding \ @@ -78,11 +83,7 @@ $(RTE_OUTPUT)/.config: $(RTE_CONFIG_TEMPLATE) FORCE fi ; \ rm -f $(RTE_OUTPUT)/.config_tmp ; \ else \ - echo -n "No template specified. Use T=template " ; \ - echo "among the following list:" ; \ - for t in $(INSTALL_CONFIGS); do \ - echo " $$t" ; \ - done ; \ + $(MAKE) -rRf $(RTE_SDK)/mk/rte.sdkconfig.mk notemplate; \ fi endif @@ -92,8 +93,7 @@ SDK_RELPATH=$(shell $(RTE_SDK)/scripts/relpath.sh $(abspath $(RTE_SRCDIR)) \ $(abspath $(RTE_OUTPUT))) OUTPUT_RELPATH=$(shell $(RTE_SDK)/scripts/relpath.sh $(abspath $(RTE_OUTPUT)) \ $(abspath $(RTE_SRCDIR))) -$(RTE_OUTPUT)/Makefile: - @[ -d $(RTE_OUTPUT) ] || mkdir -p $(RTE_OUTPUT) +$(RTE_OUTPUT)/Makefile: | $(RTE_OUTPUT) $(Q)$(RTE_SDK)/scripts/gen-build-mk.sh $(SDK_RELPATH) $(OUTPUT_RELPATH) \ > $(RTE_OUTPUT)/Makefile @@ -103,7 +103,6 @@ $(RTE_OUTPUT)/include/rte_config.h: $(RTE_OUTPUT)/.config $(Q)rm -rf $(RTE_OUTPUT)/include $(RTE_OUTPUT)/app \ $(RTE_OUTPUT)/hostapp $(RTE_OUTPUT)/lib \ $(RTE_OUTPUT)/hostlib $(RTE_OUTPUT)/kmod $(RTE_OUTPUT)/build - @[ -d $(RTE_OUTPUT)/include ] || mkdir -p $(RTE_OUTPUT)/include $(Q)$(RTE_SDK)/scripts/gen-config-h.sh $(RTE_OUTPUT)/.config \ > $(RTE_OUTPUT)/include/rte_config.h -- 2.0.0