gfxstream: fixes to get Fuchsia headless to compile

The prior version of gfxstream-fuchsia featured an Android compat
layer, and only worked with Goldfish.  The compat layer was
deleted a while ago.

The Fuchsia Goldfish integration was deleted here:

https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33050

since the Fuchsia emulator itself uses a frozen version of the
library.  This goes further in that direction: deleting leftovers
of the Fuchsia Android compat layer, which used provided VK
dispatch.

This allows Fuchsia + gfxstream to build via meson2hermetic, with
the a few additional common core patches applied.

Reviewed-by: David Gilhooley <djgilhooley@gmail.com>
Reviewed-by: Aaron Ruby <aruby@qnx.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40442>
This commit is contained in:
Gurchetan Singh 2026-03-12 16:33:26 -07:00 committed by Marge Bot
parent 792184b83f
commit 53706931bc
3 changed files with 4 additions and 4 deletions

View file

@ -18,7 +18,7 @@ gfxstream_guest_args = cpp_msvc_compat_args + ['-D_FILE_OFFSET_BITS=64']
# Our internal guest build
if host_machine.system() == 'windows'
gfxstream_guest_args += '-DWINDOWS_GUEST_BUILD'
else
elif host_machine.system() != 'fuchsia'
gfxstream_guest_args += '-DLINUX_GUEST_BUILD'
endif

View file

@ -21,7 +21,7 @@
extern "C" {
#if DETECT_OS_ANDROID || DETECT_OS_FUCHSIA
#if DETECT_OS_ANDROID
#define SET_HWVULKAN_DISPATCH_MAGIC res->dispatch.magic = HWVULKAN_DISPATCH_MAGIC;
#elif DETECT_OS_LINUX
#define SET_HWVULKAN_DISPATCH_MAGIC res->loaderData.loaderMagic = ICD_LOADER_MAGIC;

View file

@ -5,7 +5,7 @@
#pragma once
#include "util/detect_os.h"
#if DETECT_OS_ANDROID || DETECT_OS_FUCHSIA
#if DETECT_OS_ANDROID
#include <hardware/hwvulkan.h>
#elif DETECT_OS_LINUX
#include <vulkan/vk_icd.h>
@ -39,7 +39,7 @@ struct goldfish_vk_object_list {
struct goldfish_vk_object_list* next;
};
#if DETECT_OS_ANDROID || DETECT_OS_FUCHSIA
#if DETECT_OS_ANDROID
#define DECLARE_HWVULKAN_DISPATCH hwvulkan_dispatch_t dispatch;
#elif DETECT_OS_LINUX
#define DECLARE_HWVULKAN_DISPATCH VK_LOADER_DATA loaderData;