From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id AE612A0547; Fri, 12 Mar 2021 23:20:14 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 569FA1608E7; Fri, 12 Mar 2021 23:20:14 +0100 (CET) Received: from linux.microsoft.com (linux.microsoft.com [13.77.154.182]) by mails.dpdk.org (Postfix) with ESMTP id E81BC40142 for ; Fri, 12 Mar 2021 23:20:12 +0100 (CET) Received: from linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net (linux.microsoft.com [13.77.154.182]) by linux.microsoft.com (Postfix) with ESMTPSA id EF20D209B363; Fri, 12 Mar 2021 14:20:11 -0800 (PST) DKIM-Filter: OpenDKIM Filter v2.11.0 linux.microsoft.com EF20D209B363 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.microsoft.com; s=default; t=1615587612; bh=fMPtKzbQRXTnTI6rb9BnK0EtzVB8Y5oeIexVcZ95ceg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MaCpcPFW0blzdYMZyqL1zaeBWJz7oulF/BLum0FPsjWL7Seu7FKldPcLI6DLQQmAp t7Vn8hBu/tO5KBOh1dH9KXLo4sx6Pf0iFv37uQYQ8bhj4+3mxuj5sqYrUd08FdQvXp 9goQylVGb3AqEj6N0+WedHw5KZZ17vyeatu2FOPk= From: Tyler Retzlaff To: dev@dpdk.org Cc: thomas@monjalon.net, ferruh.yigit@intel.com, andrew.rybchenko@oktetlabs.ru, bruce.richardson@intel.com Date: Fri, 12 Mar 2021 14:20:06 -0800 Message-Id: <1615587606-29329-1-git-send-email-roretzla@linux.microsoft.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1615490833-23052-1-git-send-email-roretzla@linux.microsoft.com> References: <1615490833-23052-1-git-send-email-roretzla@linux.microsoft.com> Subject: [dpdk-dev] [PATCH v2] ethdev: introduce enable_driver_sdk to install driver headers X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Introduce a meson option enable_driver_sdk when true installs internal driver headers for ethdev. this allows drivers that do not depend on stable api/abi to be built external to the dpdk source tree. Signed-off-by: Tyler Retzlaff --- lib/librte_ethdev/meson.build | 6 ++++++ lib/meson.build | 4 ++++ meson_options.txt | 2 ++ 3 files changed, 12 insertions(+) diff --git a/lib/librte_ethdev/meson.build b/lib/librte_ethdev/meson.build index c37b2e377..4353fa6b7 100644 --- a/lib/librte_ethdev/meson.build +++ b/lib/librte_ethdev/meson.build @@ -20,8 +20,14 @@ headers = files('rte_ethdev.h', 'rte_mtr_driver.h', 'rte_tm.h', 'rte_tm_driver.h') + indirect_headers += files( 'rte_ethdev_core.h', 'rte_eth_ctrl.h') +driver_sdk_headers += files( + 'ethdev_driver.h', + 'ethdev_pci.h', + 'ethdev_vdev.h') + deps += ['net', 'kvargs', 'meter', 'telemetry'] diff --git a/lib/meson.build b/lib/meson.build index 7712aa497..992ebdf63 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -67,6 +67,7 @@ foreach l:libraries sources = [] headers = [] indirect_headers = [] # public headers not directly included by apps + driver_sdk_headers = [] # public headers included by drivers includes = [] cflags = default_cflags objs = [] # other object files to link against, used e.g. for @@ -105,6 +106,9 @@ foreach l:libraries dpdk_conf.set('RTE_LIB_' + name.to_upper(), 1) install_headers(headers) install_headers(indirect_headers) + if get_option('enable_driver_sdk') + install_headers(driver_sdk_headers) + endif dpdk_chkinc_headers += headers libname = 'rte_' + name diff --git a/meson_options.txt b/meson_options.txt index 6eff62e47..857874a19 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -8,6 +8,8 @@ option('drivers_install_subdir', type: 'string', value: 'dpdk/pmds-', description: 'Subdirectory of libdir where to install PMDs. Defaults to using a versioned subdirectory.') option('enable_docs', type: 'boolean', value: false, description: 'build documentation') +option('enable_driver_sdk', type: 'boolean', value: false, + description: 'install internal driver plugin headers') option('enable_kmods', type: 'boolean', value: false, description: 'build kernel modules') option('examples', type: 'string', value: '', -- 2.30.0.vfs.0.2