From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f182.google.com (mail-wi0-f182.google.com [209.85.212.182]) by dpdk.org (Postfix) with ESMTP id 15F62B0A5 for ; Tue, 10 Jun 2014 15:58:56 +0200 (CEST) Received: by mail-wi0-f182.google.com with SMTP id r20so6207678wiv.9 for ; Tue, 10 Jun 2014 06:59:11 -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:in-reply-to :references; bh=o050TDeahrfbSq9Evy2fWuGVZT6m2nt1PmefdzNMwZE=; b=fqu1FLoU5ro6K1By4CS93g7Myn9AGkc9l9hFl3HoXV5st8wD2uPz96Lwt3eMV4d2JJ UWGvHbF8+oUtgq4qKYVaZjX983Fr2K8ZIjtFuDK9y/vmeCvUe35dH0mGn92h9scSNfGC dywqg6qPSjDUfyy8oH/5VjtSQXCuyo73UQQy1BS6K435MVNovumhDEe4bylx0uFrndHj Qr3C8dDOXdfFN4i2z/X2dPbtt80pURXB8fiS7oJFu67vRRToEwxksEXwhUySz0Yq+oEV Wkko4TcyToZqC5sq6QqLkPvhtiXNvRUh9RXc5UPCAc3TP3LbNVio0oB7F7br0LNiNYkb TgRA== X-Gm-Message-State: ALoCoQmzBw4LgpC3FclMG8NVRsiKTuEfHlfHqmSJ0mIoHJgpuO/5MG4wLt8QUZcSFWkac0Q/HfQO X-Received: by 10.180.13.113 with SMTP id g17mr38810348wic.48.1402408750459; Tue, 10 Jun 2014 06:59:10 -0700 (PDT) Received: from XPS13.dev.6wind.com (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id o12sm1338331wiw.5.2014.06.10.06.59.09 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 10 Jun 2014 06:59:09 -0700 (PDT) From: Thomas Monjalon To: dev@dpdk.org Date: Tue, 10 Jun 2014 15:59:04 +0200 Message-Id: <1402408744-19661-1-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.0.0 In-Reply-To: <1402408331-19493-1-git-send-email-thomas.monjalon@6wind.com> References: <1402408331-19493-1-git-send-email-thomas.monjalon@6wind.com> Subject: [dpdk-dev] [PATCH v2] 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:58:57 -0000 Error message for missing template is factorized in notemplate rule. RTE_OUTPUT directory is marked as order-only prerequisite. RTE_OUTPUT is always created after having been cleaned for rte_config.h. Signed-off-by: Thomas Monjalon --- mk/rte.sdkconfig.mk | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) changes in v2: - keep RTE_OUTPUT creation for rte_config.h diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk index 3124dce..26bd611 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,7 @@ $(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)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