From: Bruce Richardson <bruce.richardson@intel.com>
To: "Burakov, Anatoly" <anatoly.burakov@intel.com>
Cc: Thomas Monjalon <thomas@monjalon.net>,
dev@dpdk.org, Gregory Etelson <getelson@nvidia.com>,
Nicolas Chautru <nicolas.chautru@intel.com>,
Chas Williams <chas3@att.com>,
"Min Hu (Connor)" <humin29@huawei.com>,
Olivier Matz <olivier.matz@6wind.com>,
David Hunt <david.hunt@intel.com>,
Harry van Haaren <harry.van.haaren@intel.com>,
Marko Kovacevic <marko.kovacevic@intel.com>,
Bernard Iremonger <bernard.iremonger@intel.com>,
Ori Kam <orika@nvidia.com>,
Konstantin Ananyev <konstantin.ananyev@intel.com>,
Cristian Dumitrescu <cristian.dumitrescu@intel.com>,
Radu Nicolau <radu.nicolau@intel.com>,
Akhil Goyal <akhil.goyal@nxp.com>,
Ferruh Yigit <ferruh.yigit@intel.com>,
Tomasz Kantecki <tomasz.kantecki@intel.com>,
Declan Doherty <declan.doherty@intel.com>,
Sunil Kumar Kori <skori@marvell.com>,
Pavan Nikhilesh <pbhagavatula@marvell.com>,
Jerin Jacob <jerinj@marvell.com>,
Kiran Kumar K <kirankumark@marvell.com>,
Nithin Dabilpuram <ndabilpuram@marvell.com>,
Xiaoyun Li <xiaoyun.li@intel.com>,
Jingjing Wu <jingjing.wu@intel.com>,
Reshma Pattan <reshma.pattan@intel.com>,
John McNamara <john.mcnamara@intel.com>,
Kirill Rybalchenko <kirill.rybalchenko@intel.com>,
Jasvinder Singh <jasvinder.singh@intel.com>,
Byron Marohn <byron.marohn@intel.com>,
Yipeng Wang <yipeng1.wang@intel.com>,
Robert Sanford <rsanford@akamai.com>,
Erik Gabriel Carrillo <erik.g.carrillo@intel.com>,
Maxime Coquelin <maxime.coquelin@redhat.com>,
Chenbo Xia <chenbo.xia@intel.com>
Subject: Re: [dpdk-dev] [PATCH] examples: warn about broken pkg-config
Date: Fri, 29 Jan 2021 16:05:38 +0000 [thread overview]
Message-ID: <20210129160538.GL929@bricha3-MOBL.ger.corp.intel.com> (raw)
In-Reply-To: <85fc72d8-ee34-7b03-6ae4-4ee5a292257e@intel.com>
On Fri, Jan 29, 2021 at 04:04:18PM +0000, Burakov, Anatoly wrote:
> On 29-Jan-21 3:55 PM, Bruce Richardson wrote:
> > On Fri, Jan 29, 2021 at 04:47:35PM +0100, Thomas Monjalon wrote:
> > > 19/01/2021 14:03, Bruce Richardson:
> > > > Since the examples are designed to be built by end-users using Make, we
> > > > can detect and warn about broken pkg-config on the user's system as part
> > > > of the build process.
> > > >
> > > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > > > ---
> > > > examples/bbdev_app/Makefile | 8 ++++++++
> > > > examples/bond/Makefile | 8 ++++++++
> > > > examples/cmdline/Makefile | 8 ++++++++
> > > > examples/distributor/Makefile | 8 ++++++++
> > > > examples/ethtool/ethtool-app/Makefile | 8 ++++++++
> > > > examples/eventdev_pipeline/Makefile | 8 ++++++++
> > > > examples/fips_validation/Makefile | 8 ++++++++
> > > > examples/flow_classify/Makefile | 8 ++++++++
> > > > examples/flow_filtering/Makefile | 8 ++++++++
> > > > examples/helloworld/Makefile | 8 ++++++++
> > > > examples/ioat/Makefile | 8 ++++++++
> > > > examples/ip_fragmentation/Makefile | 11 ++++++++++-
> > > > examples/ip_pipeline/Makefile | 8 ++++++++
> > > > examples/ip_reassembly/Makefile | 8 ++++++++
> > > > examples/ipsec-secgw/Makefile | 8 ++++++++
> > > > examples/ipv4_multicast/Makefile | 8 ++++++++
> > > > examples/kni/Makefile | 8 ++++++++
> > > > examples/l2fwd-cat/Makefile | 8 ++++++++
> > > > examples/l2fwd-crypto/Makefile | 8 ++++++++
> > > > examples/l2fwd-event/Makefile | 8 ++++++++
> > > > examples/l2fwd-jobstats/Makefile | 8 ++++++++
> > > > examples/l2fwd-keepalive/Makefile | 8 ++++++++
> > > > examples/l2fwd-keepalive/ka-agent/Makefile | 8 ++++++++
> > > > examples/l2fwd/Makefile | 8 ++++++++
> > > > examples/l3fwd-acl/Makefile | 8 ++++++++
> > > > examples/l3fwd-graph/Makefile | 12 +++++++++++-
> > > > examples/l3fwd-power/Makefile | 8 ++++++++
> > > > examples/l3fwd/Makefile | 8 ++++++++
> > > > examples/link_status_interrupt/Makefile | 8 ++++++++
> > > > .../client_server_mp/mp_client/Makefile | 8 ++++++++
> > > > .../client_server_mp/mp_server/Makefile | 8 ++++++++
> > > > examples/multi_process/hotplug_mp/Makefile | 8 ++++++++
> > > > examples/multi_process/simple_mp/Makefile | 8 ++++++++
> > > > examples/multi_process/symmetric_mp/Makefile | 8 ++++++++
> > > > examples/ntb/Makefile | 11 ++++++++++-
> > > > examples/packet_ordering/Makefile | 8 ++++++++
> > > > examples/performance-thread/l3fwd-thread/Makefile | 8 ++++++++
> > > > examples/performance-thread/pthread_shim/Makefile | 8 ++++++++
> > > > examples/pipeline/Makefile | 8 ++++++++
> > > > examples/ptpclient/Makefile | 8 ++++++++
> > > > examples/qos_meter/Makefile | 8 ++++++++
> > > > examples/qos_sched/Makefile | 8 ++++++++
> > > > examples/rxtx_callbacks/Makefile | 8 ++++++++
> > > > examples/server_node_efd/node/Makefile | 8 ++++++++
> > > > examples/server_node_efd/server/Makefile | 8 ++++++++
> > > > examples/service_cores/Makefile | 8 ++++++++
> > > > examples/skeleton/Makefile | 8 ++++++++
> > > > examples/timer/Makefile | 8 ++++++++
> > > > examples/vdpa/Makefile | 8 ++++++++
> > > > examples/vhost/Makefile | 8 ++++++++
> > > > examples/vhost_blk/Makefile | 8 ++++++++
> > > > examples/vhost_crypto/Makefile | 8 ++++++++
> > > > examples/vm_power_manager/Makefile | 8 ++++++++
> > > > examples/vm_power_manager/guest_cli/Makefile | 8 ++++++++
> > > > examples/vmdq/Makefile | 8 ++++++++
> > > > examples/vmdq_dcb/Makefile | 8 ++++++++
> > > > 56 files changed, 455 insertions(+), 3 deletions(-)
> > >
> > > That's a lot of duplicated code that may need some extension in future.
> > > What about having a file examples/common.mk to include?
> > > With the special syntax -include there will be no error in case
> > > ../common.mk does not exist. Deal?
> > >
> > > ref: https://www.gnu.org/software/make/manual/html_node/Include.html
> > >
> >
> > Yes, and no. There is far more boilerplate already in these files which
> > needs to be consolidated, so I see little point in just trying to extract
> > this part out alone. Therefore, what I'd like to see done (if ever someone
> > has the time) is to extract all the boilerplate out to a common makefile,
> > but also add a postinstall script to flatten out the makefile on install,
> > so that each example is once again self-contained.
> >
> > I've been thinking about this for a while, just haven't got time for it.
> >
> > /Bruce
> >
>
> These makefiles are supposed to be examples. Meaning, it should be possible
> to just take the example app and compile it as is. That means we can't rely
> on external makefiles, they're supposed to be self-contained.
>
Exactly. Hence the need to "flatten" out the makefiles, by changing the
include to be the actual contents.
next prev parent reply other threads:[~2021-01-29 16:05 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-19 13:03 Bruce Richardson
2021-01-29 15:47 ` Thomas Monjalon
2021-01-29 15:55 ` Bruce Richardson
2021-01-29 16:04 ` Burakov, Anatoly
2021-01-29 16:05 ` Bruce Richardson [this message]
2021-01-29 16:27 ` Thomas Monjalon
2021-01-29 16:51 ` Bruce Richardson
2021-01-30 0:32 ` Thomas Monjalon
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=20210129160538.GL929@bricha3-MOBL.ger.corp.intel.com \
--to=bruce.richardson@intel.com \
--cc=akhil.goyal@nxp.com \
--cc=anatoly.burakov@intel.com \
--cc=bernard.iremonger@intel.com \
--cc=byron.marohn@intel.com \
--cc=chas3@att.com \
--cc=chenbo.xia@intel.com \
--cc=cristian.dumitrescu@intel.com \
--cc=david.hunt@intel.com \
--cc=declan.doherty@intel.com \
--cc=dev@dpdk.org \
--cc=erik.g.carrillo@intel.com \
--cc=ferruh.yigit@intel.com \
--cc=getelson@nvidia.com \
--cc=harry.van.haaren@intel.com \
--cc=humin29@huawei.com \
--cc=jasvinder.singh@intel.com \
--cc=jerinj@marvell.com \
--cc=jingjing.wu@intel.com \
--cc=john.mcnamara@intel.com \
--cc=kirankumark@marvell.com \
--cc=kirill.rybalchenko@intel.com \
--cc=konstantin.ananyev@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=maxime.coquelin@redhat.com \
--cc=ndabilpuram@marvell.com \
--cc=nicolas.chautru@intel.com \
--cc=olivier.matz@6wind.com \
--cc=orika@nvidia.com \
--cc=pbhagavatula@marvell.com \
--cc=radu.nicolau@intel.com \
--cc=reshma.pattan@intel.com \
--cc=rsanford@akamai.com \
--cc=skori@marvell.com \
--cc=thomas@monjalon.net \
--cc=tomasz.kantecki@intel.com \
--cc=xiaoyun.li@intel.com \
--cc=yipeng1.wang@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).