Commit 35f4cc780e for qemu.org

commit 35f4cc780ef844e974eebb8bcdbbdb187cc4ab61
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date:   Thu Sep 17 17:55:49 2026 +0100

    tests/tcg/s390x: Provide the libc bits needed by the system tests

    The meson conversion dropped the SLOF libc include path that commit
    3fa010d5317 ("tests/tcg/s390x: Use the SLOF libc headers for the
    multiarch tests") had added, breaking the build on systems without a
    cross-libc, such as Fedora.

    Rather than reintroducing a dependency on the SLOF submodule, which no
    other tcg test has, declare the three functions that the reused pc-bios
    code actually needs: memcpy(), memset(), and printf().

    Reported-by: Daniel P. Berrangé <berrange@redhat.com>
    Reported-by: Alex Bennée <alex.bennee@linaro.org>
    Closes: https://patchew.org/QEMU/20260910100120.2076092-1-berrange@redhat.com/
    Suggested-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
    Fixes: cd81cf86834 ("tests/tcg/s390x: system tests")
    Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
    Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
    Tested-by: Richard Henderson <richard.henderson@linaro.org>
    Message-ID: <20260915110959.492195-1-iii@linux.ibm.com>
    Message-ID: <20260917165602.3405537-6-alex.bennee@linaro.org>
    Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

diff --git a/tests/tcg/s390x/libc/stdio.h b/tests/tcg/s390x/libc/stdio.h
new file mode 100644
index 0000000000..c3e45995f6
--- /dev/null
+++ b/tests/tcg/s390x/libc/stdio.h
@@ -0,0 +1,11 @@
+/*
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+#ifndef QEMU_TESTS_S390X_STDIO_H
+#define QEMU_TESTS_S390X_STDIO_H
+
+#include <minilib.h>
+
+#define printf ml_printf
+
+#endif
diff --git a/tests/tcg/s390x/libc/string.h b/tests/tcg/s390x/libc/string.h
new file mode 100644
index 0000000000..1cabeb90ad
--- /dev/null
+++ b/tests/tcg/s390x/libc/string.h
@@ -0,0 +1,12 @@
+/*
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+#ifndef QEMU_TESTS_S390X_STRING_H
+#define QEMU_TESTS_S390X_STRING_H
+
+#include <stddef.h>
+
+void *memcpy(void *dest, const void *src, size_t n);
+void *memset(void *dest, int c, size_t size);
+
+#endif
diff --git a/tests/tcg/s390x/system/meson.build b/tests/tcg/s390x/system/meson.build
index ca07f50305..1e360e7082 100644
--- a/tests/tcg/s390x/system/meson.build
+++ b/tests/tcg/s390x/system/meson.build
@@ -6,11 +6,13 @@ link_script = files('../softmmu.ld')[0]
 head64 = files('../head64.S')[0]
 console = files('../console.c')[0]
 ipl_inc = meson.project_source_root()/'include'/'hw'/'s390x'/'ipl'
+libc_inc = meson.current_source_dir()/'..'/'libc'
 cflags = ['-nostdlib',
           '-ffreestanding',
           '-Wa,--noexecstack',
           '-I', minilib_dir, minilib_printf,
           '-I', ipl_inc,
+          '-I', libc_inc,
           '-march=z13',
           head64, console]
 asmflags = ['-nostdlib',