From: "Hunt, David" <david.hunt@intel.com>
To: Shreyansh Jain <shreyansh.jain@nxp.com>
Cc: dev@dpdk.org, thomas@monjalon.net
Subject: Re: [PATCH v2 1/2] mk: allow use of environment var for make config
Date: Wed, 7 Jun 2017 11:28:49 +0100 [thread overview]
Message-ID: <ccf49fb3-032b-f5aa-62a0-ebb32086b3f7@intel.com> (raw)
In-Reply-To: <ef07f4e9-6a88-5ac6-8f00-04a573dfaebd@nxp.com>
Hi Shreyansh,
On 7/6/2017 10:36 AM, Shreyansh Jain wrote:
> Hello David,
>
> On Wednesday 07 June 2017 02:09 PM, Hunt, David wrote:
>> Shreyansh,
>>
>> I found an issue (or two) with this part of the patch, and have
>> a proposed solution.
>>
>> 1. RTE_TARGET originally had a different meaning. It was used for
>> making examples, specifying the target directory of where the SDK was
>> built. It's not good to re-purpose this for something else, as I'm
>> doing in this patch. (even though I'm not sure that variable is
>> suitably named in the first place, but that's a different issue).
>
> Even I didn't realize this until you highlighted here.
>
>> 2. If we set RTE_TARGET on the environment, we will break the 'make
>> -C examples/<app>', unless we set RTE_TARGET to be something else
>> (i.e. 'make -C examples/<app> RTE_TARGET=build'). One value for
>> making DPDK, and another for building examples. It's confusing to the
>> user.
>
> Agree about re-using RTE_TARGET is breaking existing assumption about
> its use.
>
>>
>> An alternative patch would be as follows:
>>
>> RTE_CONFIG_TEMPLATE :=
>> ifdef T
>> *-ifeq ("$(origin T)", "command line")*
>> RTE_CONFIG_TEMPLATE := $(RTE_SRCDIR)/config/defconfig_$(T)
>> *-endif**
>> *endif
>> export RTE_CONFIG_TEMPLATE
> So, that would mean, user would do either of the following:
>
> make T=<template> config
>
> or
>
> export T=<template>
> make config
>
> Is that correct? (I tried it and it seems to be working fine)
> First method is same as today. For the second, I am just skeptical
> whether we should use such a small identifier ("T") or we have a new
> RTE_TEMPLATE.
>
> Either way, I am OK. [export T=<template>] looks fine to me - in fact,
> on a second though, IMO, if T=<template> is provided as command line,
> it should also be acceptable as env variable.
>
I did a quick poll here in the office and people feel that 'T' is too
short for an environment variable. RTE_TEMPLATE would be preferred, and
it's a sensible choice that does not conflict with RTE_TARGET.
So if we use RTE_TEMPLATE, we'd also have to put in a couple of lines
for the "make install" case, but it's still a small enough patch:
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index dbac2a2..a464b01 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -47,6 +47,10 @@ ifneq ($(MAKECMDGOALS),pre_install)
include $(RTE_SDK)/mk/rte.vars.mk
endif
*+ifndef T**
**+T := $(RTE_TEMPLATE)**
**+endif**
* ifdef T # defaults with T= will install an almost flat staging tree
export prefix ?=
kerneldir ?= $(prefix)/kmod
diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index 076a2d7..0b71a4e 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -63,6 +63,8 @@ ifdef T
ifeq ("$(origin T)", "command line")
RTE_CONFIG_TEMPLATE := $(RTE_SRCDIR)/config/defconfig_$(T)
endif
*+else**
**+RTE_CONFIG_TEMPLATE := $(RTE_SRCDIR)/config/defconfig_$(RTE_TEMPLATE)**
* endif
export RTE_CONFIG_TEMPLATE
So if T is provided on the command line, it takes priority.
If that seems reasonable to you, I'll push up a v3. :)
Regards,
Dave.
next prev parent reply other threads:[~2017-06-07 10:28 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-23 10:28 mk: make config enhancements David Hunt
2017-05-23 10:28 ` [PATCH v1 1/2] mk: allow use of environment var for make config David Hunt
2017-05-23 10:28 ` [PATCH v1 2/2] mk: add sensible default target with defconfig David Hunt
2017-05-24 6:10 ` Shreyansh Jain
2017-05-25 13:04 ` Hunt, David
2017-05-25 13:19 ` Shreyansh Jain
2017-05-26 8:52 ` [PATCH v2 0/2] mk: make config enhancements David Hunt
2017-05-26 8:52 ` [PATCH v2 1/2] mk: allow use of environment var for make config David Hunt
2017-06-07 8:39 ` Hunt, David
2017-06-07 9:36 ` Shreyansh Jain
2017-06-07 10:28 ` Hunt, David [this message]
2017-06-07 11:46 ` Shreyansh Jain
2017-06-07 12:07 ` Bruce Richardson
2017-06-07 14:37 ` [PATCH v3 0/3] mk: make config enhancements David Hunt
2017-06-07 14:37 ` [PATCH v3 1/3] mk: add sensible default target with defconfig David Hunt
2017-06-12 8:36 ` Jerin Jacob
2017-08-03 22:39 ` Thomas Monjalon
2017-08-04 8:22 ` Hunt, David
2017-08-04 9:36 ` Thomas Monjalon
2017-08-04 9:53 ` Hunt, David
2017-08-04 10:05 ` Thomas Monjalon
2017-08-04 10:42 ` Hunt, David
2017-08-04 10:28 ` [PATCH v4] " David Hunt
2017-08-04 10:39 ` [PATCH v5] " David Hunt
2017-08-05 8:24 ` Thomas Monjalon
2017-06-07 14:37 ` [PATCH v3 2/3] mk: allow use of environment var for template David Hunt
2017-06-12 8:37 ` Jerin Jacob
2017-08-03 22:42 ` Thomas Monjalon
2017-06-07 14:37 ` [PATCH v3 3/3] doc: update build-sdk-quick txt file David Hunt
2017-06-12 12:50 ` Mcnamara, John
2018-02-13 12:18 ` Ferruh Yigit
2018-02-13 23:41 ` Thomas Monjalon
2018-04-11 8:44 ` Hunt, David
2018-04-11 8:49 ` Thomas Monjalon
2017-05-26 8:52 ` [PATCH v2 2/2] mk: add sensible default target with defconfig David Hunt
2017-05-29 7:31 ` [PATCH v2 0/2] mk: make config enhancements Shreyansh Jain
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ccf49fb3-032b-f5aa-62a0-ebb32086b3f7@intel.com \
--to=david.hunt@intel.com \
--cc=dev@dpdk.org \
--cc=shreyansh.jain@nxp.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.