diff --git a/src/gallium/frontends/lavapipe/lvp_device.c b/src/gallium/frontends/lavapipe/lvp_device.c index af130be3c69..67550bcfee7 100644 --- a/src/gallium/frontends/lavapipe/lvp_device.c +++ b/src/gallium/frontends/lavapipe/lvp_device.c @@ -711,6 +711,12 @@ VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL lvp_GetInstanceProcAddr( pName); } +/* Windows will use a dll definition file to avoid build errors. */ +#ifdef _WIN32 +#undef PUBLIC +#define PUBLIC +#endif + /* The loader wants us to expose a second GetInstanceProcAddr function * to work around certain LD_PRELOAD issues seen in apps. */ diff --git a/src/gallium/targets/lavapipe/meson.build b/src/gallium/targets/lavapipe/meson.build index d64f7606412..55c227d5e40 100644 --- a/src/gallium/targets/lavapipe/meson.build +++ b/src/gallium/targets/lavapipe/meson.build @@ -1,6 +1,7 @@ libvulkan_lvp = shared_library( 'vulkan_lvp', [ 'target.c' ], + vs_module_defs : 'vulkan_lvp.def', include_directories : [ inc_src, inc_util, inc_include, inc_gallium, inc_gallium_aux, inc_gallium_winsys, inc_gallium_drivers ], link_whole : [ liblavapipe_st ], link_with : [libpipe_loader_static, libgallium, libwsw, libswdri, libws_null, libswkmsdri ], diff --git a/src/gallium/targets/lavapipe/vulkan_lvp.def b/src/gallium/targets/lavapipe/vulkan_lvp.def new file mode 100644 index 00000000000..64a9caae593 --- /dev/null +++ b/src/gallium/targets/lavapipe/vulkan_lvp.def @@ -0,0 +1,4 @@ +EXPORTS +vk_icdNegotiateLoaderICDInterfaceVersion +vk_icdGetInstanceProcAddr +vk_icdGetPhysicalDeviceProcAddr