From patchwork Fri Sep 6 16:12:41 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 143746 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 04C4845920; Fri, 6 Sep 2024 18:13:02 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 92A8442F7A; Fri, 6 Sep 2024 18:12:58 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.13]) by mails.dpdk.org (Postfix) with ESMTP id 8506B42F4D for ; Fri, 6 Sep 2024 18:12:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1725639177; x=1757175177; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=D3jGSLMn4Yud4kJZbmOtXyUAam8Jyl6K0TwTI0eiFt0=; b=eg+TYgGZTgv8FU3XhMrQ23gjw7I4XCAx03343Sh6+G92m86Ri4IUmaOI Ae5BMqHu2G6WXveFOH0hMhVML9gszs3dmhhw8/po7cxLdxH5/adSdpt8P Ti5GXKCDaTW1RFYA/dULK89ul8CQdUVgePNNMgUPfXnJbgtw8TBI2Ie6F TDBRNnHHG2pdrkJrwqmvKaSRHSEsFrwaQdoLNx/6q6lHy0h/dHq4tnajI ZQUNzSO668KmMnDyu+fAyKR+n469qQauuJj5zTftBWwynifyaz4bV6YJR sAEUjJTsCI+bi4UfKs+4cwfDVyanu0uz1n8q7gaQRT0Zv1PZ2PwDhdL2O Q==; X-CSE-ConnectionGUID: oo08YOZ9RdaHV1LGWsVmrg== X-CSE-MsgGUID: x6vggjDlTFmcNG07ucPscA== X-IronPort-AV: E=McAfee;i="6700,10204,11187"; a="27329846" X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="27329846" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2024 09:12:56 -0700 X-CSE-ConnectionGUID: wTFMlkdATweEaDIJ4+Yv1A== X-CSE-MsgGUID: PUh9N6XLREKnSWPBswDfZw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="65986429" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.39]) by fmviesa009.fm.intel.com with ESMTP; 06 Sep 2024 09:12:55 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Vladimir Medvedkin Subject: [PATCH v2 1/4] config: add 32-bit x86 debian cross-compilation file Date: Fri, 6 Sep 2024 17:12:41 +0100 Message-ID: <20240906161244.1663967-2-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240906161244.1663967-1-bruce.richardson@intel.com> References: <20240904135939.329324-1-bruce.richardson@intel.com> <20240906161244.1663967-1-bruce.richardson@intel.com> MIME-Version: 1.0 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 To simplify building 32-bit binaries on 64-bit system, we can supply a cross-compilation file which provides the relevant compiler flags and settings needed - '-m32' compile/link flag, and appropriate PKG_CONFIG_LIBDIR value. This latter setting will depend upon the layout format of the particular OS/distro in use, so initially add a cross file with paths set for Debian or Ubuntu systems. Note, unlike previous cross files, this file has a .ini extension which means that editors use correct syntax highlighting on it. Signed-off-by: Bruce Richardson Acked-by: Vladimir Medvedkin --- config/x86/cross-32bit-debian.ini | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 config/x86/cross-32bit-debian.ini -- 2.43.0 diff --git a/config/x86/cross-32bit-debian.ini b/config/x86/cross-32bit-debian.ini new file mode 100644 index 0000000000..2f6e4714cb --- /dev/null +++ b/config/x86/cross-32bit-debian.ini @@ -0,0 +1,22 @@ +[binaries] +c = 'cc' +cpp = 'c++' +ar = 'ar' +strip = 'strip' +pkg-config = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = 'x86' +cpu = 'native' +endian = 'little' + +[properties] +pkg_config_libdir = '/usr/lib/i386-linux-gnu/pkgconfig' + +[built-in options] +c_args = '-m32' +c_link_args = '-m32' +cpp_args = '-m32' +cpp_link_args = '-m32' +libdir = 'lib/i386-linux-gnu' From patchwork Fri Sep 6 16:12:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 143747 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 89CB445920; Fri, 6 Sep 2024 18:13:08 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F368142F97; Fri, 6 Sep 2024 18:12:59 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.13]) by mails.dpdk.org (Postfix) with ESMTP id 7C6DB42F77 for ; Fri, 6 Sep 2024 18:12:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1725639178; x=1757175178; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Zaj4ufJaAuryL5UMkPg7b6XzOYtJVJ6Ag9I18UVqF/0=; b=Yzesnuf7AATb/6f65LuuVYOeezErY0KH+XAKoQoSwY4oCZ9POQW+ByHf E/tetWGdsUvZFXIVnNOMahoKZY3c3AyZSYcCFx8XthDX3NwxazEvVy6aL jG9DJAjfK8T3BRbdiWZH/e/YIUVmWI/BSUK5ivgsAY4XTkDNfOYiGezMl Yr5TtjWTHAj3FvgUFYI7LNe3Dar/qowpPSw1cWmMYXuYOE5Cd/KnKyPWb CbgQwT70xW6bGgCOxsd4Yoiaq9n6oDF2HHGSPKvYRy7WybtQiRQXbE1Nc HFmhG0A/0II2NbGObQd9x80HvVlI0yCvnWmBTd+UJZxbQ40be/H0Gha5E Q==; X-CSE-ConnectionGUID: +/3IAQS2QqiD9bU6zBXPOg== X-CSE-MsgGUID: vXI3zx9NSzeEsYit/guAgQ== X-IronPort-AV: E=McAfee;i="6700,10204,11187"; a="27329855" X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="27329855" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2024 09:12:58 -0700 X-CSE-ConnectionGUID: saEU2SGRTZqQpwqbkj3eWQ== X-CSE-MsgGUID: NbWdZOHcQtKOLOiTKpqDgA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="65986473" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.39]) by fmviesa009.fm.intel.com with ESMTP; 06 Sep 2024 09:12:57 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 2/4] config: add fedora 32-bit x86 cross-compile file Date: Fri, 6 Sep 2024 17:12:42 +0100 Message-ID: <20240906161244.1663967-3-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240906161244.1663967-1-bruce.richardson@intel.com> References: <20240904135939.329324-1-bruce.richardson@intel.com> <20240906161244.1663967-1-bruce.richardson@intel.com> MIME-Version: 1.0 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 Add cross-compilation target for building 32-bit x86 DPDK on Fedora or RHEL. Signed-off-by: Bruce Richardson --- config/x86/cross-32bit-fedora.ini | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 config/x86/cross-32bit-fedora.ini diff --git a/config/x86/cross-32bit-fedora.ini b/config/x86/cross-32bit-fedora.ini new file mode 100644 index 0000000000..fd407cc7fb --- /dev/null +++ b/config/x86/cross-32bit-fedora.ini @@ -0,0 +1,22 @@ +[binaries] +c = 'cc' +cpp = 'c++' +ar = 'ar' +strip = 'strip' +pkg-config = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = 'x86' +cpu = 'native' +endian = 'little' + +[properties] +pkg_config_libdir = '/usr/lib/pkgconfig' + +[built-in options] +c_args = '-m32' +c_link_args = '-m32' +cpp_args = '-m32' +cpp_link_args = '-m32' +libdir = 'lib' From patchwork Fri Sep 6 16:12:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 143748 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9717545913; Fri, 6 Sep 2024 18:13:14 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4E5A542F9F; Fri, 6 Sep 2024 18:13:02 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.13]) by mails.dpdk.org (Postfix) with ESMTP id 1503D42F9F for ; Fri, 6 Sep 2024 18:13:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1725639181; x=1757175181; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XKFKTLKjvUxpi4jFZJ4EOtAdlS9gHAyRm95qj/VmFyU=; b=jkcUi536bKBT/6XcMkpwSxF2SPlIr0suwENVqnSjwkmQPGiQj0MW3gMI r/uGsk/92dAHEwn1NwS3qZtZ8t9KvWMLGzaO+HXTV55q/xJqRftp5HNWS tUR4426w4RvVZZO7xSQmi+i/aSEudxyVexxm3Fep4N57EPGKOtQXS6P11 1RoSsJEpoVNykSJJes780bK56OBs1LiAcP0FkwjwHuIpsmBmPWRxMQezn dFdxlRmXx6VTlQYCHL0hqf0yU+TdPqyLTabSi8m0aqby1sjrZ0uQ8088/ WcOkvEIWgT+7h9UDkc9M5//sqJGuLU77fHtjNhRxgV0qXxUhkqqmco8TS w==; X-CSE-ConnectionGUID: hL8g8RACTL27KsPe2MCIbA== X-CSE-MsgGUID: ovqy2k3fTWqwbJcG+rZ+xA== X-IronPort-AV: E=McAfee;i="6700,10204,11187"; a="27329873" X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="27329873" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2024 09:13:01 -0700 X-CSE-ConnectionGUID: OPLQ2LIiS1qqyKjn2CLPYQ== X-CSE-MsgGUID: DRpVTMkBT/OYNyrj4gx+YQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="65986530" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.39]) by fmviesa009.fm.intel.com with ESMTP; 06 Sep 2024 09:12:59 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 3/4] config: add arch 32-bit cross-compilation file Date: Fri, 6 Sep 2024 17:12:43 +0100 Message-ID: <20240906161244.1663967-4-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240906161244.1663967-1-bruce.richardson@intel.com> References: <20240904135939.329324-1-bruce.richardson@intel.com> <20240906161244.1663967-1-bruce.richardson@intel.com> MIME-Version: 1.0 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 Add a 32-bit cross file for x86 for Arch linux Signed-off-by: Bruce Richardson --- config/x86/cross-32bit-arch.ini | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 config/x86/cross-32bit-arch.ini diff --git a/config/x86/cross-32bit-arch.ini b/config/x86/cross-32bit-arch.ini new file mode 100644 index 0000000000..b88244d1ef --- /dev/null +++ b/config/x86/cross-32bit-arch.ini @@ -0,0 +1,22 @@ +[binaries] +c = 'cc' +cpp = 'c++' +ar = 'ar' +strip = 'strip' +pkg-config = 'pkg-config' + +[host_machine] +system = 'linux' +cpu_family = 'x86' +cpu = 'native' +endian = 'little' + +[properties] +pkg_config_libdir = '/usr/lib32/pkgconfig' + +[built-in options] +c_args = '-m32' +c_link_args = '-m32' +cpp_args = '-m32' +cpp_link_args = '-m32' +libdir = 'lib32' From patchwork Fri Sep 6 16:12:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 143749 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9A05C45913; Fri, 6 Sep 2024 18:13:20 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8C88542FB1; Fri, 6 Sep 2024 18:13:04 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.13]) by mails.dpdk.org (Postfix) with ESMTP id 2D52042FAF for ; Fri, 6 Sep 2024 18:13:03 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1725639183; x=1757175183; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=pL/Ptqt3vAlgYMaZIReHtHjIHXVmR4/Rjvqqemo87vo=; b=KIb+KS1loWkg5nya1sVlnsidzsjiX71nHhEXMnTUFo+lDiucmUeSojjx OHDH4fdMTcZjK+aP/yUfyh7R+jZHYUicUXsOv0YQksE4RoI/SnvBe/P+b skUokLO8sHGnmmUwGzsAjExYZxFQgNoc3SeDzZrz19/md3hJ7NbaPgeow SVDLkgypsB6qvKPDC8aCWNVQN2B+ETjsY20Kg7nhYFXDZgkThKZXrtZZ7 DR7MX/Bu+K8tS6vEVlATG8p+G0gi8p/bEGpyOKbUhyhqqOhFlViOx1Rsx hEdgshOOiaqd0Zk/9vwGMEz+1fxHvCBe8VabdHQvd9Gu6b1tc/ysUTqsW g==; X-CSE-ConnectionGUID: quyFX+R2SbqrfoKbzbshyw== X-CSE-MsgGUID: MxXTnjoYSyWthUfXWp3h9Q== X-IronPort-AV: E=McAfee;i="6700,10204,11187"; a="27329875" X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="27329875" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by fmvoesa107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Sep 2024 09:13:03 -0700 X-CSE-ConnectionGUID: SuyV8/ghQF2qQo3tCk8ypw== X-CSE-MsgGUID: uAmO8HBZS5uYf2W2MMCSLQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,208,1719903600"; d="scan'208";a="65986578" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.39]) by fmviesa009.fm.intel.com with ESMTP; 06 Sep 2024 09:13:02 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 4/4] devtools/test-meson-builds: use cross files for 32bit build Date: Fri, 6 Sep 2024 17:12:44 +0100 Message-ID: <20240906161244.1663967-5-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240906161244.1663967-1-bruce.richardson@intel.com> References: <20240904135939.329324-1-bruce.richardson@intel.com> <20240906161244.1663967-1-bruce.richardson@intel.com> MIME-Version: 1.0 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 When testing the 32-bit x86 build, use a cross-file rather than using args and pkgconfig environment variable. The advantage of using the cross-file is that the paths are saved across runs. Without this patch, while the '-m32' args settings are preserved between meson runs, the PKG_CONFIG_LIBDIR value from environment is not, which can cause rebuilds of the build-32b directory to fail if meson needs to do a reconfiguration first. Signed-off-by: Bruce Richardson --- devtools/test-meson-builds.sh | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh index d71bb1ded0..4fff1f7177 100755 --- a/devtools/test-meson-builds.sh +++ b/devtools/test-meson-builds.sh @@ -253,21 +253,18 @@ build build-x86-generic cc skipABI -Dcheck_includes=true \ # 32-bit with default compiler if check_cc_flags '-m32' ; then + target_override='i386-pc-linux-gnu' if [ -d '/usr/lib/i386-linux-gnu' ] ; then - # 32-bit pkgconfig on Debian/Ubuntu - export PKG_CONFIG_LIBDIR='/usr/lib/i386-linux-gnu/pkgconfig' + # 32-bit pkgconfig on Debian/Ubuntu, use cross file + build build-32b $srcdir/config/x86/cross-32bit-debian.ini ABI elif [ -d '/usr/lib32' ] ; then # 32-bit pkgconfig on Arch - export PKG_CONFIG_LIBDIR='/usr/lib32/pkgconfig' + build build-32b $srcdir/config/x86/cross-32bit-arch.ini ABI else # 32-bit pkgconfig on RHEL/Fedora (lib vs lib64) - export PKG_CONFIG_LIBDIR='/usr/lib/pkgconfig' + build build-32b $srcdir/config/x86/cross-32bit-fedora.ini ABI fi - target_override='i386-pc-linux-gnu' - build build-32b cc ABI -Dc_args='-m32' -Dc_link_args='-m32' \ - -Dcpp_args='-m32' -Dcpp_link_args='-m32' target_override= - unset PKG_CONFIG_LIBDIR fi # x86 MinGW