diff options
| author | Michael Lentine <mlentine@google.com> | 2015-12-03 14:33:09 -0800 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2015-12-11 15:32:58 -0700 |
| commit | 6ce6c20b154a89b9e50646d6bb70b7da763abc87 (patch) | |
| tree | 5b471e3d6c0cadf633fdd0b777b899c6d82e166b | |
| parent | c862cd354e1eaea10c41024f3a2fc4eef58ddacd (diff) | |
| download | usermoji-6ce6c20b154a89b9e50646d6bb70b7da763abc87.tar.xz | |
android: Fix android build.
Temporarily disable shader checker which now depends on glslang
Fix xcb guards and set the ifdef based on platform
| -rw-r--r-- | buildAndroid/jni/Application.mk | 2 | ||||
| -rw-r--r-- | include/vulkan/vk_layer.h | 12 | ||||
| -rw-r--r-- | layers/apidump.h | 3 | ||||
| -rw-r--r-- | layers/object_track.h | 3 | ||||
| -rwxr-xr-x | vk-layer-generate.py | 85 |
5 files changed, 70 insertions, 35 deletions
diff --git a/buildAndroid/jni/Application.mk b/buildAndroid/jni/Application.mk index 1962e681..d89707fe 100644 --- a/buildAndroid/jni/Application.mk +++ b/buildAndroid/jni/Application.mk @@ -15,6 +15,6 @@ APP_ABI := armeabi-v7a arm64-v8a x86 x86_64 mips mips64
APP_PLATFORM := android-22
APP_STL := gnustl_static
-APP_MODULES := layer_utils VKLayerBasic VKLayerDrawState VKLayerMemTracker VKLayerShaderCheker VKLayerImage VKLayerParamChecker VKLayerGeneric VKLayerAPIDump VKLayerObjectTracker VKLayerThreading VKLayerValidationTests
+APP_MODULES := layer_utils VKLayerBasic VKLayerDrawState VKLayerMemTracker VKLayerImage VKLayerParamChecker VKLayerGeneric VKLayerAPIDump VKLayerObjectTracker VKLayerThreading VKLayerValidationTests
APP_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES
NDK_TOOLCHAIN_VERSION := 4.8
diff --git a/include/vulkan/vk_layer.h b/include/vulkan/vk_layer.h index 47165f77..31040c0e 100644 --- a/include/vulkan/vk_layer.h +++ b/include/vulkan/vk_layer.h @@ -14,6 +14,18 @@ #else # define VK_LAYER_EXPORT #endif +#if defined(__ANDROID__) +#define VK_USE_PLATFORM_ANDROID_KHR +#elif defined(_WIN32) +#define VK_USE_PLATFORM_WIN32_KHR +#elif defined(__unix__) +#define VK_USE_PLATFORM_MIR_KHR +#define VK_USE_PLATFORM_WAYLAND_KHR +#define VK_USE_PLATFORM_XLIB_KHR +#define VK_USE_PLATFORM_XCB_KHR +#else +#error "Unsupported Platform!" +#endif typedef void * (VKAPI_PTR *PFN_vkGPA)(void* obj, const char * pName); typedef struct VkBaseLayerObject_ diff --git a/layers/apidump.h b/layers/apidump.h index c61439ec..274e42c4 100644 --- a/layers/apidump.h +++ b/layers/apidump.h @@ -1,6 +1,7 @@ /* * * Copyright (C) 2015 Valve Corporation + * Copyright (C) 2015 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -95,7 +96,7 @@ static void createInstanceRegisterExtensions(const VkInstanceCreateInfo* pCreate #if VK_USE_PLATFORM_WIN32_KHR pDisp->CreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR) gpa(instance, "vkCreateWin32SurfaceKHR"); pDisp->GetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR"); -#else // VK_USE_PLATFORM_XCB_KHR +#elif VK_USE_PLATFORM_XCB_KHR pDisp->CreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR) gpa(instance, "vkCreateXcbSurfaceKHR"); pDisp->GetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR"); #endif diff --git a/layers/object_track.h b/layers/object_track.h index 43089178..6debcb97 100644 --- a/layers/object_track.h +++ b/layers/object_track.h @@ -1,6 +1,7 @@ /* * * Copyright (C) 2015 Valve Corporation + * Copyright (C) 2015 Google Inc. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -218,7 +219,7 @@ static void createInstanceRegisterExtensions(const VkInstanceCreateInfo* pCreate #if VK_USE_PLATFORM_WIN32_KHR pDisp->CreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR) gpa(instance, "vkCreateWin32SurfaceKHR"); pDisp->GetPhysicalDeviceWin32PresentationSupportKHR = (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR"); -#else // VK_USE_PLATFORM_XCB_KHR +#elif VK_USE_PLATFORM_XCB_KHR pDisp->CreateXcbSurfaceKHR = (PFN_vkCreateXcbSurfaceKHR) gpa(instance, "vkCreateXcbSurfaceKHR"); pDisp->GetPhysicalDeviceXcbPresentationSupportKHR = (PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR) gpa(instance, "vkGetPhysicalDeviceXcbPresentationSupportKHR"); #endif diff --git a/vk-layer-generate.py b/vk-layer-generate.py index cc1fb425..5218ec52 100755 --- a/vk-layer-generate.py +++ b/vk-layer-generate.py @@ -3,6 +3,7 @@ # VK # # Copyright (C) 2015 Valve Corporation +# Copyright (C) 2015 Google Inc. # # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the "Software"), @@ -430,8 +431,12 @@ class Subcommand(object): func_body.append(' {') extra_space = " " for ext_name in ext_list: + if 'Xcb' in ext_name: + func_body.append("#ifdef VK_USE_PLATFORM_XCB_KHR") func_body.append(' %sif (!strcmp("%s", funcName))\n' ' return reinterpret_cast<PFN_vkVoidFunction>(%s);' % (extra_space, ext_name, ext_name)) + if 'Xcb' in ext_name: + func_body.append("#endif //VK_USE_PLATFORM_XCB_KHR") if 0 != len(ext_enable): func_body.append(' }\n') @@ -536,8 +541,12 @@ class Subcommand(object): func_body.append(' {') extra_space = " " for ext_name in ext_list: + if 'Xcb' in ext_name: + func_body.append('#ifdef VK_USE_PLATFORM_XCB_KHR') func_body.append(' %sif (!strcmp("%s", funcName))\n' ' return reinterpret_cast<PFN_vkVoidFunction>(%s);' % (extra_space, ext_name, ext_name)) + if 'Xcb' in ext_name: + func_body.append('#endif //VK_USE_PLATFORM_XCB_KHR') if 0 != len(ext_enable): func_body.append(' }\n') @@ -739,6 +748,8 @@ class GenericLayerSubcommand(Subcommand): ' return result;\n' '}\n' % (qual, decl, ret_val, proto.c_call(), proto.name)) else: + if 'Xcb' in proto.name: + funcs.append("#ifdef VK_USE_PLATFORM_XCB_KHR") funcs.append('%s' % self.lineinfo.get()) dispatch_param = proto.params[0].name # Must use 'instance' table for these APIs, 'device' table otherwise @@ -752,6 +763,8 @@ class GenericLayerSubcommand(Subcommand): ' %s%s_dispatch_table(%s)->%s;\n' '%s' '}' % (qual, decl, ret_val, table_type, dispatch_param, proto.c_call(), stmt)) + if 'Xcb' in proto.name: + funcs.append("#endif //VK_USE_PLATFORM_XCB_KHR") return "\n\n".join(funcs) def generate_body(self): @@ -1159,6 +1172,8 @@ class APIDumpSubcommand(Subcommand): '%s' '}' % (qual, decl, table_type, dispatch_param, ret_val, proto.c_call(), f_open, log_func, f_close, stmt)) else: + if 'Xcb' in decl: + funcs.append('#ifdef VK_USE_PLATFORM_XCB_KHR') funcs.append('%s%s\n' '{\n' ' using namespace StreamControl;\n' @@ -1166,25 +1181,27 @@ class APIDumpSubcommand(Subcommand): ' %s%s%s\n' '%s' '}' % (qual, decl, ret_val, table_type, dispatch_param, proto.c_call(), f_open, log_func, f_close, stmt)) + if 'Xcb' in decl: + funcs.append('#endif //VK_USE_PLATFORM_XCB_KHR') return "\n\n".join(funcs) def generate_body(self): self.layer_name = "APIDump" - if sys.platform == 'win32':
- instance_extensions=[('wsi_enabled',
- ['vkGetPhysicalDeviceSurfaceSupportKHR',
- 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR',
- 'vkGetPhysicalDeviceSurfaceFormatsKHR',
- 'vkGetPhysicalDeviceSurfacePresentModesKHR',
- 'vkCreateWin32SurfaceKHR',
- 'vkGetPhysicalDeviceWin32PresentationSupportKHR'])]
- else:
- instance_extensions=[('wsi_enabled',
- ['vkGetPhysicalDeviceSurfaceSupportKHR',
- 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR',
- 'vkGetPhysicalDeviceSurfaceFormatsKHR',
- 'vkGetPhysicalDeviceSurfacePresentModesKHR',
- 'vkCreateXcbSurfaceKHR',
+ if sys.platform == 'win32': + instance_extensions=[('wsi_enabled', + ['vkGetPhysicalDeviceSurfaceSupportKHR', + 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR', + 'vkGetPhysicalDeviceSurfaceFormatsKHR', + 'vkGetPhysicalDeviceSurfacePresentModesKHR', + 'vkCreateWin32SurfaceKHR', + 'vkGetPhysicalDeviceWin32PresentationSupportKHR'])] + else: + instance_extensions=[('wsi_enabled', + ['vkGetPhysicalDeviceSurfaceSupportKHR', + 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR', + 'vkGetPhysicalDeviceSurfaceFormatsKHR', + 'vkGetPhysicalDeviceSurfacePresentModesKHR', + 'vkCreateXcbSurfaceKHR', 'vkGetPhysicalDeviceXcbPresentationSupportKHR'])] extensions=[('wsi_enabled', ['vkCreateSwapchainKHR', @@ -1707,6 +1724,8 @@ class ObjectTrackerSubcommand(Subcommand): table_type = "instance" else: table_type = "device" + if 'Xcb' in proto.name: + funcs.append("#ifdef VK_USE_PLATFORM_XCB_KHR") funcs.append('%s%s\n' '{\n' '%s' @@ -1715,6 +1734,8 @@ class ObjectTrackerSubcommand(Subcommand): '%s' '%s' '}' % (qual, decl, using_line, destroy_line, ret_val, table_type, dispatch_param, proto.c_call(), create_line, stmt)) + if 'Xcb' in proto.name: + funcs.append("#endif //VK_USE_PLATFORM_XCB_KHR") return "\n\n".join(funcs) def generate_body(self): @@ -1723,23 +1744,23 @@ class ObjectTrackerSubcommand(Subcommand): ['vkCreateSwapchainKHR', 'vkDestroySwapchainKHR', 'vkGetSwapchainImagesKHR', 'vkAcquireNextImageKHR', 'vkQueuePresentKHR'])] - if sys.platform == 'win32':
- instance_extensions=[('msg_callback_get_proc_addr', []),
- ('wsi_enabled',
- ['vkGetPhysicalDeviceSurfaceSupportKHR',
- 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR',
- 'vkGetPhysicalDeviceSurfaceFormatsKHR',
- 'vkGetPhysicalDeviceSurfacePresentModesKHR',
- 'vkCreateWin32SurfaceKHR',
- 'vkGetPhysicalDeviceWin32PresentationSupportKHR'])]
- else:
- instance_extensions=[('msg_callback_get_proc_addr', []),
- ('wsi_enabled',
- ['vkGetPhysicalDeviceSurfaceSupportKHR',
- 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR',
- 'vkGetPhysicalDeviceSurfaceFormatsKHR',
- 'vkGetPhysicalDeviceSurfacePresentModesKHR',
- 'vkCreateXcbSurfaceKHR',
+ if sys.platform == 'win32': + instance_extensions=[('msg_callback_get_proc_addr', []), + ('wsi_enabled', + ['vkGetPhysicalDeviceSurfaceSupportKHR', + 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR', + 'vkGetPhysicalDeviceSurfaceFormatsKHR', + 'vkGetPhysicalDeviceSurfacePresentModesKHR', + 'vkCreateWin32SurfaceKHR', + 'vkGetPhysicalDeviceWin32PresentationSupportKHR'])] + else: + instance_extensions=[('msg_callback_get_proc_addr', []), + ('wsi_enabled', + ['vkGetPhysicalDeviceSurfaceSupportKHR', + 'vkGetPhysicalDeviceSurfaceCapabilitiesKHR', + 'vkGetPhysicalDeviceSurfaceFormatsKHR', + 'vkGetPhysicalDeviceSurfacePresentModesKHR', + 'vkCreateXcbSurfaceKHR', 'vkGetPhysicalDeviceXcbPresentationSupportKHR'])] body = [self.generate_maps(), self.generate_procs(), |
