From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id 98E7E2BBD for ; Wed, 7 Jun 2017 16:38:05 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP; 07 Jun 2017 07:38:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.39,311,1493708400"; d="scan'208";a="1138912795" Received: from silpixa00397898.ir.intel.com ([10.237.223.116]) by orsmga001.jf.intel.com with ESMTP; 07 Jun 2017 07:38:03 -0700 From: David Hunt To: dev@dpdk.org Cc: thomas@monjalon.net, shreyansh.jain@nxp.com, David Hunt Date: Wed, 7 Jun 2017 15:37:55 +0100 Message-Id: <1496846277-280267-2-git-send-email-david.hunt@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1496846277-280267-1-git-send-email-david.hunt@intel.com> References: <1495788764-37652-2-git-send-email-david.hunt@intel.com> <1496846277-280267-1-git-send-email-david.hunt@intel.com> Subject: [dpdk-dev] [PATCH v3 1/3] mk: add sensible default target with defconfig X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Jun 2017 14:38:06 -0000 Users can now use 'make defconfig' to generate a configuration using the most appropriate defaults for the current machine. arch taken from uname -m machine defaults to native execenv is taken from uname, Linux=linuxapp, otherwise bsdapp toolchain is taken from $CC -v to see which compiler to use Signed-off-by: David Hunt Acked-by: Shreyansh Jain --- mk/rte.sdkconfig.mk | 28 +++++++++++++++++++++++++--- mk/rte.sdkroot.mk | 4 ++-- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/mk/rte.sdkconfig.mk b/mk/rte.sdkconfig.mk index 1f2d6bd..fc03fe3 100644 --- a/mk/rte.sdkconfig.mk +++ b/mk/rte.sdkconfig.mk @@ -60,16 +60,38 @@ showconfigs: .PHONY: notemplate notemplate: - @printf "No template specified. " - @echo "Use T=template among the following list:" + @printf "No template specified. Use 'make defconfig' or " + @echo "use T=template from the following list:" @$(MAKE) -rR showconfigs | sed 's,^, ,' + +.PHONY: defconfig +defconfig: + @$(MAKE) config T=$(shell \ + uname -m | awk '{ \ + if ($$0 == "aarch64") { \ + print "arm64-armv8a"} \ + else if ($$0 == "armv7l") { \ + print "arm-armv7a"} \ + else if ($$0 == "ppc64") { \ + print "ppc_64-power8"} \ + else { \ + printf "%s-native", $$0} }')-$(shell \ + uname | awk '{ \ + if ($$0 == "Linux") { \ + print "linuxapp"} \ + else { \ + print "bsdapp"} }')-$(shell \ + ${CC} -v 2>&1 | \ + grep " version " | cut -d ' ' -f 1) + .PHONY: config ifeq ($(RTE_CONFIG_TEMPLATE),) config: notemplate else config: $(RTE_OUTPUT)/include/rte_config.h $(RTE_OUTPUT)/Makefile - @echo "Configuration done" + @echo "Configuration done using "$(shell basename \ + $(RTE_CONFIG_TEMPLATE) | sed "s/defconfig_//g") endif $(RTE_OUTPUT): diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk index 2843b7d..076a2d7 100644 --- a/mk/rte.sdkroot.mk +++ b/mk/rte.sdkroot.mk @@ -88,8 +88,8 @@ export ROOTDIRS-y ROOTDIRS- ROOTDIRS-n .PHONY: default default: all -.PHONY: config showconfigs showversion showversionum -config showconfigs showversion showversionum: +.PHONY: defconfig config showconfigs showversion showversionum +defconfig config showconfigs showversion showversionum: $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk $@ .PHONY: cscope gtags tags etags -- 2.7.4