[Buildroot] [PATCH v2 1/2] package/qemu: fix disabling fp-bench test compilation

Dario Binacchi dario.binacchi at amarulasolutions.com
Thu May 2 07:23:26 UTC 2024


With the bump to version 8.1.1, the patch that disabled the compilation
of the fp-bench test is no longer applicable, even though the package
compilation process does not report any errors in applying the patch
itself. The new patch does not disable the test by default but only if
the file fenv.h is not missing, with the hope that this approach will be
considered acceptable by the maintainer and merged upstream.

The patch is an adaptation of the one sent upstream.

Link: https://lists.nongnu.org/archive/html/qemu-devel/2021-03/msg00492.html
Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>

---

Changes v1 -> v2
 - Replace [Upstream status: <url>] with Upstream: <url>
 - Drop the added line to .checkpackageignore

 .checkpackageignore                           |  1 -
 ...fp-disable-fp-bench-build-by-default.patch | 28 -----------
 ...on-t-build-fp-bench-test-if-fenv.h-i.patch | 49 +++++++++++++++++++
 3 files changed, 49 insertions(+), 29 deletions(-)
 delete mode 100644 package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch
 create mode 100644 package/qemu/0001-tests-fp-meson-don-t-build-fp-bench-test-if-fenv.h-i.patch

diff --git a/.checkpackageignore b/.checkpackageignore
index db23450f0381..3693b770cf4d 100644
--- a/.checkpackageignore
+++ b/.checkpackageignore
@@ -1360,7 +1360,6 @@ package/python3/0028-fix-building-on-older-distributions.patch lib_patch.Upstrea
 package/python3/0029-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch lib_patch.Upstream
 package/python3/0030-Add-an-option-to-disable-the-berkeleydb-module.patch lib_patch.Upstream
 package/python3/0031-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch lib_patch.Upstream
-package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch lib_patch.Upstream
 package/qemu/0002-softmmu-qemu-seccomp.c-add-missing-header-for-CLONE_.patch lib_patch.Upstream
 package/qextserialport/0001-Create-a-main-include-file-QExtSerialPort.patch lib_patch.Upstream
 package/qextserialport/0002-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch lib_patch.Upstream
diff --git a/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch b/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch
deleted file mode 100644
index fb7a9a69897b..000000000000
--- a/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 83d976d6d7f0357659d5daa0f01c52048a609e88 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour at gmail.com>
-Date: Wed, 25 Aug 2021 21:55:53 +0200
-Subject: [PATCH] tests/fp: disable fp-bench build by default
-
-Fixes:
-https://lists.nongnu.org/archive/html/qemu-devel/2021-03/msg00947.html
-
-Signed-off-by: Romain Naour <romain.naour at gmail.com>
----
- tests/fp/meson.build | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/tests/fp/meson.build b/tests/fp/meson.build
-index 8bd0979f67..2fe019d2c6 100644
---- a/tests/fp/meson.build
-+++ b/tests/fp/meson.build
-@@ -640,6 +640,7 @@ fpbench = executable(
-   dependencies: [qemuutil],
-   include_directories: [sfinc, include_directories(tfdir)],
-   c_args: fpcflags,
-+  build_by_default: false,
- )
- 
- fptestlog2 = executable(
--- 
-2.35.1
-
diff --git a/package/qemu/0001-tests-fp-meson-don-t-build-fp-bench-test-if-fenv.h-i.patch b/package/qemu/0001-tests-fp-meson-don-t-build-fp-bench-test-if-fenv.h-i.patch
new file mode 100644
index 000000000000..b7e41d6f232c
--- /dev/null
+++ b/package/qemu/0001-tests-fp-meson-don-t-build-fp-bench-test-if-fenv.h-i.patch
@@ -0,0 +1,49 @@
+From b4a692f46135af1011bf0adbfeb19abf354ca191 Mon Sep 17 00:00:00 2001
+From: Dario Binacchi <dario.binacchi at amarulasolutions.com>
+Date: Tue, 30 Apr 2024 09:40:55 +0200
+Subject: [PATCH] tests/fp/meson: don't build fp-bench test if fenv.h is
+ missing
+
+The fp-bench test (i. e. tests/fp/fp-bench.c) use fenv.h that is not
+always provided by the libc (uClibc). The patch disables its compilation
+in case the header is not available.
+
+The patch is based on a suggestion from Paolo Bonzini, which you can
+find at the following link.
+
+Link: https://lists.nongnu.org/archive/html/qemu-devel/2021-03/msg00492.html
+Suggested-by: Paolo Bonzini <pbonzini at redhat.com>
+Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
+Upstream: https://patchwork.ozlabs.org/project/qemu-devel/patch/20240430164752.645521-1-dario.binacchi@amarulasolutions.com/
+---
+ tests/fp/meson.build | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/tests/fp/meson.build b/tests/fp/meson.build
+index cbc17392d678..cd052667e940 100644
+--- a/tests/fp/meson.build
++++ b/tests/fp/meson.build
+@@ -126,12 +126,14 @@ test('fp-test-mulAdd', fptest,
+            ['f16_mulAdd', 'f32_mulAdd', 'f64_mulAdd', 'f128_mulAdd'],
+      suite: ['softfloat-slow', 'softfloat-ops-slow', 'slow'], timeout: 90)
+ 
+-executable(
+-  'fp-bench',
+-  ['fp-bench.c', '../../fpu/softfloat.c'],
+-  dependencies: [qemuutil, libtestfloat, libsoftfloat],
+-  c_args: fpcflags,
+-)
++if cc.has_header('fenv.h')
++  executable(
++    'fp-bench',
++    ['fp-bench.c', '../../fpu/softfloat.c'],
++    dependencies: [qemuutil, libtestfloat, libsoftfloat],
++    c_args: fpcflags,
++  )
++endif
+ 
+ fptestlog2 = executable(
+   'fp-test-log2',
+-- 
+2.43.0
+
-- 
2.43.0




More information about the buildroot mailing list