From 698f5907056ebf1e2606b3f5aafd3fecb0491330 Mon Sep 17 00:00:00 2001 From: Brahmajit Das Date: Sun, 10 Aug 2025 16:04:09 +0530 Subject: [PATCH] media-libs/virglrenderer: amdgpu_renderer.c: Fix error: extension used Bug: https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/627 Closes: https://bugs.gentoo.org/961270 Signed-off-by: Brahmajit Das Part-of: https://github.com/gentoo/gentoo/pull/43403 Closes: https://github.com/gentoo/gentoo/pull/43403 Signed-off-by: Joonas Niilola --- ...l-use-c11-alignof-instead-of-our-own.patch | 34 +++++++++++++++++++ ...derer-fix-clang-warning-about-typeof.patch | 26 ++++++++++++++ .../virglrenderer-1.1.1-r1.ebuild | 7 ++++ 3 files changed, 67 insertions(+) create mode 100644 media-libs/virglrenderer/files/0001-mesa-util-use-c11-alignof-instead-of-our-own.patch create mode 100644 media-libs/virglrenderer/files/virglrenderer-fix-clang-warning-about-typeof.patch diff --git a/media-libs/virglrenderer/files/0001-mesa-util-use-c11-alignof-instead-of-our-own.patch b/media-libs/virglrenderer/files/0001-mesa-util-use-c11-alignof-instead-of-our-own.patch new file mode 100644 index 0000000000000..704440ff88f88 --- /dev/null +++ b/media-libs/virglrenderer/files/0001-mesa-util-use-c11-alignof-instead-of-our-own.patch @@ -0,0 +1,34 @@ +From 4ee18a4d5a14d63ff758bf94df04cd1d4e570074 Mon Sep 17 00:00:00 2001 +From: Erik Faye-Lund +Date: Tue, 7 Jun 2022 16:33:02 +0200 +Subject: [PATCH] mesa/util: use c11 alignof instead of our own + +...with an exception for MSVC, which doesn't have stdalign.h, so let's +add a definition for that. + +Taken from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16908 + +Part-of: +--- a/src/mesa/util/macros.h ++++ b/src/mesa/util/macros.h +@@ -442,13 +442,11 @@ enum pipe_debug_type + PIPE_DEBUG_TYPE_CONFORMANCE, + }; + +-#if !defined(alignof) && !defined(__cplusplus) +-#if __STDC_VERSION__ >= 201112L +-#define alignof(t) _Alignof(t) +-#elif defined(_MSC_VER) +-#define alignof(t) __alignof(t) ++#ifndef __cplusplus ++#ifdef _MSC_VER ++#define alignof _Alignof + #else +-#define alignof(t) __alignof__(t) ++#include + #endif + #endif + +-- +2.50.1 + diff --git a/media-libs/virglrenderer/files/virglrenderer-fix-clang-warning-about-typeof.patch b/media-libs/virglrenderer/files/virglrenderer-fix-clang-warning-about-typeof.patch new file mode 100644 index 0000000000000..2744b913fac65 --- /dev/null +++ b/media-libs/virglrenderer/files/virglrenderer-fix-clang-warning-about-typeof.patch @@ -0,0 +1,26 @@ +https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1547 +From: Dmitry Osipenko +Date: Mon, 11 Aug 2025 13:17:56 +0300 +Subject: [PATCH] drm: amdgpu: Fix clang warning about typeof() extension + +AMDGPU nctx code uses typeof(), which is a GCC extension. Clang supports +typeof(), but emits a warning that breaks compilation because -Werror is +enabled by default. Silence the clang warning about typeof() like we do it +for drm_utils. + +Closes: https://gitlab.freedesktop.org/virgl/virglrenderer/-/issues/627 +Signed-off-by: Dmitry Osipenko +Part-of: +--- a/src/drm/amdgpu/amdgpu_renderer.c ++++ b/src/drm/amdgpu/amdgpu_renderer.c +@@ -51,6 +51,7 @@ + + #if defined(__clang__) + #pragma GCC diagnostic ignored "-Wgnu-zero-variadic-macro-arguments" ++#pragma GCC diagnostic ignored "-Wlanguage-extension-token" + #endif + + #if 0 +-- +GitLab + diff --git a/media-libs/virglrenderer/virglrenderer-1.1.1-r1.ebuild b/media-libs/virglrenderer/virglrenderer-1.1.1-r1.ebuild index 2746bb17e4d84..b6231d51d1e07 100644 --- a/media-libs/virglrenderer/virglrenderer-1.1.1-r1.ebuild +++ b/media-libs/virglrenderer/virglrenderer-1.1.1-r1.ebuild @@ -37,6 +37,13 @@ DEPEND=" sys-kernel/linux-headers " +PATCHES=( + # ALready in main, can be dropped in newer versions + "${FILESDIR}/0001-mesa-util-use-c11-alignof-instead-of-our-own.patch" + # bug 961270 + "${FILESDIR}/${PN}-fix-clang-warning-about-typeof.patch" +) + src_configure() { local -a gpus=() use video_cards_amdgpu && gpus+=( amdgpu-experimental )