goldfish-opengl: be more platform agnostic with

- enable HostVisibleVirtualization on Linux builds
- don't need to #ifdef mRenderNodeFd since it's just an int

BUG=202552093
TEST=./deqp-vk

Change-Id: Iafa9e60a1b10686e01c7e567166b3d659d024578
diff --git a/system/vulkan_enc/Android.mk b/system/vulkan_enc/Android.mk
index 3fa99df..583d3bf 100644
--- a/system/vulkan_enc/Android.mk
+++ b/system/vulkan_enc/Android.mk
@@ -44,6 +44,7 @@
     -fstrict-aliasing \
     -DVK_USE_PLATFORM_ANDROID_KHR \
     -DVK_NO_PROTOTYPES \
+    -DVIRTIO_GPU
 
 LOCAL_SRC_FILES := AndroidHardwareBuffer.cpp \
     CommandBufferStagingStream.cpp \
diff --git a/system/vulkan_enc/CMakeLists.txt b/system/vulkan_enc/CMakeLists.txt
index bf6c47f..3584939 100644
--- a/system/vulkan_enc/CMakeLists.txt
+++ b/system/vulkan_enc/CMakeLists.txt
@@ -1,10 +1,10 @@
 # This is an autogenerated file! Do not edit!
 # instead run make from .../device/generic/goldfish-opengl
 # which will re-generate this file.
-android_validate_sha256("${GOLDFISH_DEVICE_ROOT}/system/vulkan_enc/Android.mk" "b1d2aa0910307fc5084d14e06fee02a540235b844672aeefa772327651bff9b6")
+android_validate_sha256("${GOLDFISH_DEVICE_ROOT}/system/vulkan_enc/Android.mk" "c24e604f7cd8a39732ec2aae658ded8a919a8e566deee75b74389ccd718e3a36")
 set(vulkan_enc_src AndroidHardwareBuffer.cpp CommandBufferStagingStream.cpp DescriptorSetVirtualization.cpp HostVisibleMemoryVirtualization.cpp Resources.cpp Validation.cpp VulkanStreamGuest.cpp VulkanHandleMapping.cpp ResourceTracker.cpp VkEncoder.cpp goldfish_vk_extension_structs_guest.cpp goldfish_vk_marshaling_guest.cpp goldfish_vk_reserved_marshaling_guest.cpp goldfish_vk_deepcopy_guest.cpp goldfish_vk_counting_guest.cpp goldfish_vk_handlemap_guest.cpp goldfish_vk_transform_guest.cpp func_table.cpp)
 android_add_library(TARGET vulkan_enc SHARED LICENSE Apache-2.0 SRC AndroidHardwareBuffer.cpp CommandBufferStagingStream.cpp DescriptorSetVirtualization.cpp HostVisibleMemoryVirtualization.cpp Resources.cpp Validation.cpp VulkanStreamGuest.cpp VulkanHandleMapping.cpp ResourceTracker.cpp VkEncoder.cpp goldfish_vk_extension_structs_guest.cpp goldfish_vk_marshaling_guest.cpp goldfish_vk_reserved_marshaling_guest.cpp goldfish_vk_deepcopy_guest.cpp goldfish_vk_counting_guest.cpp goldfish_vk_handlemap_guest.cpp goldfish_vk_transform_guest.cpp func_table.cpp)
 target_include_directories(vulkan_enc PRIVATE ${GOLDFISH_DEVICE_ROOT}/shared/GoldfishAddressSpace/include ${GOLDFISH_DEVICE_ROOT}/system/renderControl_enc ${GOLDFISH_DEVICE_ROOT}/shared/OpenglCodecCommon ${GOLDFISH_DEVICE_ROOT}/android-emu ${GOLDFISH_DEVICE_ROOT}/shared/qemupipe/include-types ${GOLDFISH_DEVICE_ROOT}/shared/qemupipe/include ${GOLDFISH_DEVICE_ROOT}/system/vulkan_enc ${GOLDFISH_DEVICE_ROOT}/./host/include/libOpenglRender ${GOLDFISH_DEVICE_ROOT}/./system/include ${GOLDFISH_DEVICE_ROOT}/./../../../external/qemu/android/android-emugl/guest ${GOLDFISH_DEVICE_ROOT}/./../../../external/qemu/android/android-emugl/host/include ${GOLDFISH_DEVICE_ROOT}/./../../../external/qemu/android/android-emugl/host/include/vulkan)
-target_compile_definitions(vulkan_enc PRIVATE "-DPLATFORM_SDK_VERSION=29" "-DGOLDFISH_HIDL_GRALLOC" "-DEMULATOR_OPENGL_POST_O=1" "-DHOST_BUILD" "-DANDROID" "-DGL_GLEXT_PROTOTYPES" "-DPAGE_SIZE=4096" "-DGFXSTREAM" "-DLOG_TAG=\"goldfish_vulkan\"" "-DVK_ANDROID_native_buffer" "-DVK_EXT_device_memory_report" "-DVK_GOOGLE_gfxstream" "-DVK_USE_PLATFORM_ANDROID_KHR" "-DVK_NO_PROTOTYPES" "-D__ANDROID_API__=28")
+target_compile_definitions(vulkan_enc PRIVATE "-DPLATFORM_SDK_VERSION=29" "-DGOLDFISH_HIDL_GRALLOC" "-DEMULATOR_OPENGL_POST_O=1" "-DHOST_BUILD" "-DANDROID" "-DGL_GLEXT_PROTOTYPES" "-DPAGE_SIZE=4096" "-DGFXSTREAM" "-DLOG_TAG=\"goldfish_vulkan\"" "-DVK_ANDROID_native_buffer" "-DVK_EXT_device_memory_report" "-DVK_GOOGLE_gfxstream" "-DVK_USE_PLATFORM_ANDROID_KHR" "-DVK_NO_PROTOTYPES" "-DVIRTIO_GPU" "-D__ANDROID_API__=28")
 target_compile_options(vulkan_enc PRIVATE "-fvisibility=default" "-Wno-unused-parameter" "-Wno-missing-field-initializers" "-Werror" "-fstrict-aliasing")
 target_link_libraries(vulkan_enc PRIVATE gui log android-emu-shared _renderControl_enc OpenglCodecCommon_host cutils utils androidemu PRIVATE GoldfishAddressSpace_host qemupipe_host)
\ No newline at end of file
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index 75db67e..2c38dad 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -68,11 +68,6 @@
 #include "../egl/goldfish_sync.h"
 #include "AndroidHardwareBuffer.h"
 
-#ifndef HOST_BUILD
-#include "virtgpu_drm.h"
-#include <xf86drm.h>
-#endif
-
 #else
 
 #include <android/hardware_buffer.h>
@@ -144,13 +139,17 @@
 #include <stdlib.h>
 #include <sync/sync.h>
 
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
+#if defined(__ANDROID__) || defined(__linux__)
 
 #include <sys/mman.h>
+#include <unistd.h>
 #include <sys/syscall.h>
 
 #ifdef HOST_BUILD
 #include "android/utils/tempfile.h"
+#else
+#include "virtgpu_drm.h"
+#include <xf86drm.h>
 #endif
 
 static inline int
@@ -163,8 +162,9 @@
     return syscall(SYS_memfd_create, name, flags);
 #endif
 }
+
 #define memfd_create inline_memfd_create
-#endif // !VK_USE_PLATFORM_ANDROID_KHR
+#endif
 
 #define RESOURCE_TRACKER_DEBUG 0
 
@@ -1048,7 +1048,7 @@
         if (mFeatureInfo->hasVulkanQueueSubmitWithCommands) {
             ResourceTracker::streamFeatureBits |= VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
         }
-#if !defined(HOST_BUILD) && defined(VK_USE_PLATFORM_ANDROID_KHR)
+#if !defined(HOST_BUILD) && defined(VIRTIO_GPU)
         if (mFeatureInfo->hasVirtioGpuNext) {
             ALOGD("%s: has virtio-gpu-next; create auxiliary rendernode\n", __func__);
             mRendernodeFd = drmOpenRender(128 /* RENDERNODE_MINOR */);
@@ -3715,7 +3715,7 @@
                       (unsigned long long)directMappedAddr);
                 mLock.lock();
             } else if (mFeatureInfo->hasVirtioGpuNext) {
-#if !defined(HOST_BUILD) && defined(VK_USE_PLATFORM_ANDROID_KHR)
+#if !defined(HOST_BUILD) && defined(VIRTIO_GPU)
                 uint64_t hvaSizeId[3];
 
                 int rendernodeFdForMem = drmOpenRender(128 /* RENDERNODE_MINOR */);
@@ -7910,9 +7910,7 @@
     std::vector<VkExtensionProperties> mHostDeviceExtensions;
 
     int mSyncDeviceFd = -1;
-#ifdef VK_USE_PLATFORM_ANDROID_KHR
     int mRendernodeFd = -1;
-#endif
 
 #ifdef VK_USE_PLATFORM_FUCHSIA
     fidl::WireSyncClient<fuchsia_hardware_goldfish::ControlDevice>
diff --git a/system/vulkan_enc/meson.build b/system/vulkan_enc/meson.build
index e7a8280..ab53b6a 100644
--- a/system/vulkan_enc/meson.build
+++ b/system/vulkan_enc/meson.build
@@ -27,5 +27,6 @@
    cpp_args: cpp_args,
    include_directories: [inc_android_emu, inc_host, inc_android_compat,
                          inc_opengl_codec, inc_render_enc,
-			 inc_goldfish_address_space]
+			 inc_goldfish_address_space],
+   dependencies: dependency('libdrm'),
 )