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 4565BA034F for ; Mon, 22 Mar 2021 12:21:43 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 36F80140D4C; Mon, 22 Mar 2021 12:21:43 +0100 (CET) Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by mails.dpdk.org (Postfix) with ESMTP id D6ED44068A for ; Mon, 22 Mar 2021 12:21:40 +0100 (CET) Received: from 2.general.paelzer.uk.vpn ([10.172.196.173] helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1lOIcu-0001ZP-JT; Mon, 22 Mar 2021 11:21:40 +0000 From: Christian Ehrhardt To: stable@dpdk.org, Thomas Monjalon , Luca Boccassi , Bruce Richardson Cc: Pai Sunil , Ilya Maximets , Stokes Ian , Govindharajan Hariprasad , James Page , Christian Ehrhardt Date: Mon, 22 Mar 2021 12:21:32 +0100 Message-Id: <20210322112135.3420072-5-christian.ehrhardt@canonical.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210322112135.3420072-1-christian.ehrhardt@canonical.com> References: <20210322112135.3420072-1-christian.ehrhardt@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] [PATCH 4/7] Revert "Revert "Revert "build/pkg-config: move pkg-config file creation""" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" This reverts commit deebf952394cef1d14912f3dc2fc5121431c16a5. This series changes linking behavior in 19.11.x and thereby should stay out. It breaks - for example - a rebuild of OVS 2.13 or builds of later OVS 2.13.x stable releases. --- MAINTAINERS | 2 -- buildtools/pkg-config/meson.build | 22 ---------------------- meson.build | 25 +++++++++++++++++++++++-- 3 files changed, 23 insertions(+), 26 deletions(-) delete mode 100644 buildtools/pkg-config/meson.build diff --git a/MAINTAINERS b/MAINTAINERS index 952ded7b00..75431e333b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -131,8 +131,6 @@ F: config/rte_config.h F: buildtools/call-sphinx-build.py F: buildtools/gen-pmdinfo-cfile.sh F: buildtools/map_to_def.py -F: buildtools/list-dir-globs.py -F: buildtools/pkg-config/ F: buildtools/symlink-drivers-solibs.sh Public CI diff --git a/buildtools/pkg-config/meson.build b/buildtools/pkg-config/meson.build deleted file mode 100644 index c93711b5e8..0000000000 --- a/buildtools/pkg-config/meson.build +++ /dev/null @@ -1,22 +0,0 @@ -# SPDX-License-Identifier: BSD-3-Clause -# Copyright(c) 2020 Intel Corporation - -# for static builds, include the drivers as libs and we need to "whole-archive" -# them. -dpdk_drivers = ['-Wl,--whole-archive'] + dpdk_drivers + ['-Wl,--no-whole-archive'] - -pkg = import('pkgconfig') -pkg_extra_cflags = ['-include', 'rte_config.h'] + machine_args -if is_freebsd - pkg_extra_cflags += ['-D__BSD_VISIBLE'] -endif -pkg.generate(name: meson.project_name(), - filebase: 'lib' + meson.project_name().to_lower(), - version: meson.project_version(), - libraries: dpdk_libraries, - description: '''The Data Plane Development Kit (DPDK). -Note that CFLAGS might contain an -march flag higher than typical baseline. -This is required for a number of static inline functions in the public headers.''', - subdirs: [get_option('include_subdir_arch'), '.'], - extra_cflags: pkg_extra_cflag -) diff --git a/meson.build b/meson.build index 00949de995..58995252bd 100644 --- a/meson.build +++ b/meson.build @@ -64,8 +64,29 @@ configure_file(output: build_cfg, install_dir: join_paths(get_option('includedir'), get_option('include_subdir_arch'))) -# build pkg-config files for dpdk -subdir('buildtools/pkg-config') +# for static builds, include the drivers as libs and we need to "whole-archive" +# them. +dpdk_drivers = ['-Wl,--whole-archive'] + dpdk_drivers + ['-Wl,--no-whole-archive'] + +pkg = import('pkgconfig') +pkg_extra_cflags = ['-include', 'rte_config.h'] + machine_args +if is_freebsd + pkg_extra_cflags += ['-D__BSD_VISIBLE'] +endif +pkg.generate(name: meson.project_name(), + filebase: 'lib' + meson.project_name().to_lower(), + version: meson.project_version(), + libraries: dpdk_libraries, + libraries_private: dpdk_drivers + dpdk_static_libraries + + ['-Wl,-Bdynamic'] + dpdk_extra_ldflags, + requires: libbsd, # apps using rte_string_fns.h may need this if enabled + # if libbsd is not enabled, then this is blank + description: '''The Data Plane Development Kit (DPDK). +Note that CFLAGS might contain an -march flag higher than typical baseline. +This is required for a number of static inline functions in the public headers.''', + subdirs: [get_option('include_subdir_arch'), '.'], + extra_cflags: pkg_extra_cflags +) # final output, list all the libs and drivers to be built # this does not affect any part of the build, for information only. -- 2.30.0