1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
#!/usr/bin/env python
Import('env')
env_vlk_ldr = env.Clone()
loader_dir = "#thirdparty/vulkan/loader/"
loader_sources = [
"asm_offset.c",
"dev_ext_trampoline.c",
"phys_dev_ext.c",
"cJSON.c",
"loader.c",
"trampoline.c",
"unknown_ext_chain.c",
"wsi.c",
"debug_utils.c",
"extension_manual.c",
"murmurhash.c"
]
if (env_vlk_ldr["platform"]=="windows"):
loader_sources.append("dirent_on_windows.c")
env_vlk_ldr.AppendUnique(CPPDEFINES = [
'VK_USE_PLATFORM_WIN32_KHR',
'VULKAN_NON_CMAKE_BUILD',
'WIN32_LEAN_AND_MEAN',
'API_NAME=\\"%s\\"' % 'Vulkan'
])
if not env.msvc: #windows 7+, missing in mingw headers
env_vlk_ldr.AppendUnique(CPPDEFINES = [
"CM_GETIDLIST_FILTER_CLASS=0x00000200",
"CM_GETIDLIST_FILTER_PRESENT=0x00000100"
])
elif (env_vlk_ldr["platform"]=="osx"):
env_vlk_ldr.AppendUnique(CPPDEFINES = [
'VK_USE_PLATFORM_MACOS_MVK',
'VULKAN_NON_CMAKE_BUILD',
'SYSCONFDIR=\\"%s\\"' % '/etc',
'FALLBACK_DATA_DIRS=\\"%s\\"' % '/usr/local/share:/usr/share',
'FALLBACK_CONFIG_DIRS=\\"%s\\"' % '/etc/xdg'
])
elif (env_vlk_ldr["platform"]=="x11"):
env_vlk_ldr.AppendUnique(CPPDEFINES = [
'VK_USE_PLATFORM_XLIB_KHR',
'VULKAN_NON_CMAKE_BUILD',
'SYSCONFDIR=\\"%s\\"' % '/etc',
'FALLBACK_DATA_DIRS=\\"%s\\"' % '/usr/local/share:/usr/share',
'FALLBACK_CONFIG_DIRS=\\"%s\\"' % '/etc/xdg'
])
loader_sources = [loader_dir + file for file in loader_sources]
env_thirdparty = env_vlk_ldr.Clone()
env_thirdparty.add_source_files(env.drivers_sources, loader_sources)
env.Prepend(CPPPATH=[loader_dir])
|