pytorch
181 строка · 5.0 Кб
1load("//tools/build_defs:glob_defs.bzl", "subdir_glob")
2
3# kineto code should be updated to not have to
4# suppress these warnings.
5KINETO_COMPILER_FLAGS = [
6"-fexceptions",
7"-Wno-deprecated-declarations",
8"-Wno-unused-function",
9"-Wno-unused-private-field",
10]
11
12def define_kineto():
13cxx_library(
14name = "libkineto",
15srcs = [
16"kineto/libkineto/src/ActivityProfilerController.cpp",
17"kineto/libkineto/src/ActivityProfilerProxy.cpp",
18"kineto/libkineto/src/CuptiActivityApi.cpp",
19"kineto/libkineto/src/CuptiActivityProfiler.cpp",
20"kineto/libkineto/src/CuptiRangeProfilerApi.cpp",
21"kineto/libkineto/src/Demangle.cpp",
22"kineto/libkineto/src/init.cpp",
23"kineto/libkineto/src/output_csv.cpp",
24"kineto/libkineto/src/output_json.cpp",
25],
26headers = subdir_glob(
27[
28("kineto/libkineto/include", "*.h"),
29("kineto/libkineto/src", "*.h"),
30],
31),
32compiler_flags = KINETO_COMPILER_FLAGS,
33# @lint-ignore BUCKLINT
34link_whole = True,
35visibility = ["PUBLIC"],
36exported_deps = [
37":base_logger",
38":libkineto_api",
39":thread_util",
40":fmt",
41],
42)
43
44cxx_library(
45name = "libkineto_api",
46srcs = [
47"kineto/libkineto/src/libkineto_api.cpp",
48],
49headers = subdir_glob(
50[
51("kineto/libkineto/include", "*.h"),
52("kineto/libkineto/src", "*.h"),
53],
54),
55compiler_flags = KINETO_COMPILER_FLAGS,
56# @lint-ignore BUCKLINT
57link_whole = True,
58visibility = ["PUBLIC"],
59exported_deps = [
60":base_logger",
61":config_loader",
62":thread_util",
63":fmt",
64],
65)
66
67cxx_library(
68name = "config_loader",
69srcs = [
70"kineto/libkineto/src/ConfigLoader.cpp",
71],
72headers = subdir_glob(
73[
74("kineto/libkineto/include", "ActivityType.h"),
75("kineto/libkineto/src", "*.h"),
76],
77),
78compiler_flags = KINETO_COMPILER_FLAGS,
79exported_deps = [
80":config",
81":thread_util",
82],
83)
84
85cxx_library(
86name = "config",
87srcs = [
88"kineto/libkineto/src/AbstractConfig.cpp",
89"kineto/libkineto/src/ActivityType.cpp",
90"kineto/libkineto/src/Config.cpp",
91],
92compiler_flags = KINETO_COMPILER_FLAGS,
93public_include_directories = [
94"kineto/libkineto/include",
95"kineto/libkineto/src",
96],
97# @lint-ignore BUCKRESTRICTEDSYNTAX
98raw_headers = glob([
99"kineto/libkineto/include/*.h",
100"kineto/libkineto/src/*.h",
101]),
102exported_deps = [
103":logger",
104":thread_util",
105":fmt",
106],
107)
108
109cxx_library(
110name = "logger",
111srcs = [
112"kineto/libkineto/src/ILoggerObserver.cpp",
113"kineto/libkineto/src/Logger.cpp",
114],
115compiler_flags = KINETO_COMPILER_FLAGS,
116public_include_directories = [
117"kineto/libkineto/include",
118"kineto/libkineto/src",
119],
120raw_headers = [
121"kineto/libkineto/include/ILoggerObserver.h",
122"kineto/libkineto/include/ThreadUtil.h",
123"kineto/libkineto/src/Logger.h",
124"kineto/libkineto/src/LoggerCollector.h",
125],
126exported_deps = [
127":thread_util",
128":fmt",
129],
130)
131
132cxx_library(
133name = "base_logger",
134srcs = [
135"kineto/libkineto/src/GenericTraceActivity.cpp",
136],
137public_include_directories = [
138"kineto/libkineto/include",
139"kineto/libkineto/src",
140],
141# @lint-ignore BUCKRESTRICTEDSYNTAX
142raw_headers = glob([
143"kineto/libkineto/include/*.h",
144"kineto/libkineto/src/*.h",
145"kineto/libkineto/src/*.tpp",
146]),
147exported_deps = [
148":thread_util",
149],
150)
151
152cxx_library(
153name = "thread_util",
154srcs = [
155"kineto/libkineto/src/ThreadUtil.cpp",
156],
157compiler_flags = KINETO_COMPILER_FLAGS,
158exported_preprocessor_flags = [
159"-DKINETO_NAMESPACE=libkineto",
160],
161public_include_directories = [
162"kineto/libkineto/include",
163],
164raw_headers = [
165"kineto/libkineto/include/ThreadUtil.h",
166],
167exported_deps = [
168":fmt",
169],
170)
171
172cxx_library(
173name = "libkineto_headers",
174exported_headers = native.glob([
175"kineto/libkineto/include/*.h",
176]),
177public_include_directories = [
178"kineto/libkineto/include",
179],
180visibility = ["PUBLIC"],
181)
182