From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 9908FA09E0;
	Fri, 13 Nov 2020 15:06:38 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 57FD1C86E;
	Fri, 13 Nov 2020 15:06:37 +0100 (CET)
Received: from mga06.intel.com (mga06.intel.com [134.134.136.31])
 by dpdk.org (Postfix) with ESMTP id 329B3C86C
 for <dev@dpdk.org>; Fri, 13 Nov 2020 15:06:35 +0100 (CET)
IronPort-SDR: 0LVw7rj0PDtNSbMaEBqVl+arbkzQThQkHLcYP7jUKmcO2eNPsNIc8zrrRmofgj/2g/767btECq
 AZhPOYRIOVVQ==
X-IronPort-AV: E=McAfee;i="6000,8403,9803"; a="232092183"
X-IronPort-AV: E=Sophos;i="5.77,475,1596524400"; d="scan'208";a="232092183"
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from orsmga004.jf.intel.com ([10.7.209.38])
 by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 13 Nov 2020 06:06:25 -0800
IronPort-SDR: TnHl3sF9Ns/z5lGJiPl+PJGDg9oEj565Y+ft4+Ykc4QcLlcU5zxNS8egLZTRRzNPpjvXjlsoJM
 HssW7j/R+QxA==
X-IronPort-AV: E=Sophos;i="5.77,475,1596524400"; d="scan'208";a="474671802"
Received: from bricha3-mobl.ger.corp.intel.com ([10.252.3.226])
 by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA;
 13 Nov 2020 06:06:24 -0800
Date: Fri, 13 Nov 2020 14:06:20 +0000
From: Bruce Richardson <bruce.richardson@intel.com>
To: David Marchand <david.marchand@redhat.com>
Cc: dev@dpdk.org, thomas@monjalon.net, bluca@debian.org
Message-ID: <20201113140620.GC53@bricha3-MOBL.ger.corp.intel.com>
References: <20201110151219.4893-1-david.marchand@redhat.com>
 <20201113122430.25354-1-david.marchand@redhat.com>
 <20201113122430.25354-12-david.marchand@redhat.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <20201113122430.25354-12-david.marchand@redhat.com>
Subject: Re: [dpdk-dev] [PATCH v2 11/11] devtools: compile all buildable
 examples with pkg-config
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

On Fri, Nov 13, 2020 at 01:24:30PM +0100, David Marchand wrote:
> Rather than just installing all examples, we can use the build checks to
> filter out any examples that are missing dependencies or are otherwise
> unbuildable on the current system.
> Introduce a new "buildable" special value for the -Dexamples= meson
> option, this way existing behavior on installing all examples is
> preserved.
> 
> Select only buildable examples and test their compilation for the
> x86-default target.
> 
> Note for maintainers/users of the script: for existing environments,
> the x86-default target might get broken by this patch since the script
> now tries to build all "installed" examples and dependencies for some
> might be unfulfilled.
> To fix this temporary situation, you can either delete the whole
> directory or reconfigure it:
> $ meson configure $DPDK_BUILD_TEST_DIR/build-x86-default \
>   -Dexamples=buildable
> 
> Suggested-by: Bruce Richardson <bruce.richardson@intel.com>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
> Changelog since v1:
> - rebased on main,
> - introduced a new "buildable" special value for the -Dexamples option,
> - installation of the "multi-level" examples has been fixed, so
>   corresponding exceptions have been removed,
> - a fix for the vhost is waiting in next-virtio, I assume it will get
>   pulled before this series,
> - the only remaining exception is for vm_power_manager which is broken,
> 
> ---
I'm not sure my "suggested-by" should be on this, since the idea of adding
an extra buildable option is not mine here. I actually think I prefer the
previous approach based on your original suggestion of always skipping
unbuildable examples. Two reasons for that:
* I'm not fully sure of the value of installing examples that can't be
  built, which was the original issue you raised.
* I don't like mixing together two separate things - examples to build, and
  examples to install in a single option.

Therefore, I think we should choose one of two less confusing paths -
either lets just always install all applications, or let's always install
only those apps which can be built. I'm not massively concerned either way
which is chosen, but I don't think we should try and support both and
overload options to do so.

/Bruce