forked from vulkan-go/vulkan
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathBUILD.bazel
105 lines (103 loc) · 2.83 KB
/
BUILD.bazel
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
load("@io_bazel_rules_go//go:def.bzl", "go_library")
cc_library(
name = "vulkan_headers",
hdrs = glob(["vulkan/*"]),
)
go_library(
name = "vulkan",
srcs = [
"cgo_helpers.c",
"cgo_helpers.go",
"cgo_helpers.h",
"const.go",
"doc.go",
"errors.go",
"init.go",
"types.go",
"util.go",
"vk_bridge.c",
"vk_bridge.h",
"vk_debug_android.go",
"vk_default_loader.c",
"vk_default_loader.h",
"vk_null32.go",
"vk_null64.go",
"vk_wrapper.h",
"vk_wrapper_android.c",
"vk_wrapper_desktop.c",
"vk_wrapper_ios.m",
"vulkan.go",
"vulkan_android.go",
"vulkan_darwin.go",
"vulkan_freebsd.go",
"vulkan_ios.go",
"vulkan_linux.go",
],
cdeps = [":vulkan_headers"] + select({
"@io_bazel_rules_go//go/platform:darwin": [
"@com_github_goki_vulkan_mac_deps//:vulkan_mac_deps",
],
"//conditions:default": [],
}),
cgo = True,
clinkopts = select({
"@io_bazel_rules_go//go/platform:android": [
"-Wl,--no-warn-mismatch",
"-lm_hard",
"-llog",
],
"@io_bazel_rules_go//go/platform:darwin": [
"-F/Library/Frameworks",
"-framework Cocoa",
"-framework IOKit",
"-framework IOSurface",
"-framework QuartzCore",
"-framework Metal",
"-lc++",
],
"@io_bazel_rules_go//go/platform:freebsd": [
"-L/usr/local/lib",
"-ldl",
"-lvulkan",
],
"@io_bazel_rules_go//go/platform:linux": [
"-ldl",
],
"//conditions:default": [],
}) + select({
"@io_bazel_rules_go//go/platform:ios_arm64": [
"-framework Foundation",
"-framework Metal",
"-framework QuartzCore",
"-framework MoltenVK",
"-lc++",
],
"//conditions:default": [],
}),
copts = [
"-I.",
"-DVK_NO_PROTOTYPES",
] + select({
"@io_bazel_rules_go//go/platform:android": [
"-DVK_USE_PLATFORM_ANDROID_KHR",
"-D__ARM_ARCH_7A__",
"-D_NDK_MATH_NO_SOFTFP=1",
"-mfpu=vfp",
"-mfloat-abi=hard",
"-march=armv7-a",
],
"@io_bazel_rules_go//go/platform:darwin": [
"-DVK_USE_PLATFORM_MACOS_MVK",
"-Wno-deprecated-declarations",
],
"//conditions:default": [],
}) + select({
"@io_bazel_rules_go//go/platform:ios_arm64": [
"-x objective-c",
"-DVK_USE_PLATFORM_IOS_MVK",
],
"//conditions:default": [],
}),
importpath = "github.com/goki/vulkan",
visibility = ["//visibility:public"],
)