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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
diff -r c1e8ee6bd379 genie.lua
--- a/genie.lua Fri May 10 21:14:23 2019 +0200
+++ b/genie.lua Sat May 11 15:21:26 2019 +0200
@@ -88,6 +88,10 @@
.. " engine passes option objcarcopts coverage support lto coroutines"
.. " webassembly")
local LLVM_INCLUDEDIR = pkg_config(LLVM_CONFIG .. " --includedir")
+local CLANG_INCLUDEDIR = pkg_config(LLVM_CONFIG .. " --prefix")[1]
+ .. "/lib/clang/"
+ .. pkg_config(LLVM_CONFIG .. " --version")[1]
+ .. "/include"
if not os.is("windows") then
premake.gcc.cxx = CLANG_CXX
@@ -203,7 +207,6 @@
includedirs {
"external/linenoise-ng/include",
"external",
- "SPIRV-Tools/include",
"include",
"."
}
@@ -217,6 +220,7 @@
targetdir "bin"
defines {
"SPIRV_CROSS_EXCEPTIONS_TO_ASSERTIONS",
+ "CLANG_INCLUDE_DIR=\"" .. CLANG_INCLUDEDIR .. "\"",
"SCOPESRT_IMPL"
}
@@ -277,8 +281,8 @@
--"-Wl,--export-dynamic",
--"-rdynamic",
- THISDIR .. "/SPIRV-Tools/build/source/opt/libSPIRV-Tools-opt.a",
- THISDIR .. "/SPIRV-Tools/build/source/libSPIRV-Tools.a"
+ "-lSPIRV-Tools-opt",
+ "-lSPIRV-Tools"
}
linkoptions(LLVM_LDFLAGS)
linkoptions {
@@ -368,8 +372,8 @@
"-Wl,--stack,8388608"
}
linkoptions {
- THISDIR .. "/SPIRV-Tools/build/source/opt/libSPIRV-Tools-opt.a",
- THISDIR .. "/SPIRV-Tools/build/source/libSPIRV-Tools.a"
+ "-lSPIRV-Tools-opt",
+ "-lSPIRV-Tools"
}
linkoptions(LLVM_LDFLAGS)
linkoptions {
@@ -438,8 +442,8 @@
}
linkoptions {
- THISDIR .. "/SPIRV-Tools/build/source/opt/libSPIRV-Tools-opt.a",
- THISDIR .. "/SPIRV-Tools/build/source/libSPIRV-Tools.a"
+ "-lSPIRV-Tools-opt",
+ "-lSPIRV-Tools"
}
linkoptions(LLVM_LDFLAGS)
diff -r c1e8ee6bd379 src/boot.cpp
--- a/src/boot.cpp Fri May 10 21:14:23 2019 +0200
+++ b/src/boot.cpp Sat May 11 15:21:26 2019 +0200
@@ -231,7 +231,11 @@
char *path_copy = strdup(scopes_compiler_path);
scopes_compiler_dir = format("%s/..", dirname(path_copy))->data;
free(path_copy);
+#ifdef CLANG_INCLUDE_DIR
+ scopes_clang_include_dir = CLANG_INCLUDE_DIR;
+#else
scopes_clang_include_dir = format("%s/lib/clang/include", scopes_compiler_dir)->data;
+#endif
scopes_include_dir = format("%s/include", scopes_compiler_dir)->data;
}
|