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