blob: 1ada0863eb7ecf0ea42156702ee99d6806db5025 [file] [log] [blame]
package {
default_applicable_licenses: ["external_trace-cmd_license"],
}
// See: http://go/android-license-faq
license {
name: "external_trace-cmd_license",
visibility: [":__subpackages__"],
license_kinds: [
"SPDX-license-identifier-GPL-2.0",
"SPDX-license-identifier-GPL-2.0-only",
"SPDX-license-identifier-GPL-2.0+",
"SPDX-license-identifier-GPL-2.0-or-later",
"SPDX-license-identifier-GPL-2.0-or-later",
"SPDX-license-identifier-LGPL-2.1+",
"SPDX-license-identifier-LGPL-2.1+",
],
license_text: [
"LICENSE",
],
}
genrule {
name: "tc_version_header",
srcs: ["Makefile"],
out: ["tc_version.h"],
cmd: "(" +
"VERSION=$$(grep '\\bTC_VERSION =' <$(in) | awk '{ print $$3 }') " +
"&& PATCHLEVEL=$$(grep '\\bTC_PATCHLEVEL =' <$(in) | awk '{ print $$3 }') " +
"&& VERSION_CODE=$$(expr $${VERSION} \\* 256 + $${PATCHLEVEL}) " +
"&& EXTRAVERSION=$$(grep '\\bTC_EXTRAVERSION =' <$(in) | awk '{ print $$3 }') " +
"&& echo '/* This file is automatically generated. Do not modify */' " +
"&& echo \"#define VERSION_CODE $${VERSION_CODE}\" " +
"&& echo \"#define EXTRAVERSION $${EXTRAVERSION}\" " +
"&& echo '#define VERSION_STRING \"'$${VERSION}.$${PATCHLEVEL}.$${EXTRAVERSION}'\"' " +
"&& echo '#define FILE_VERSION ' " +
"&& echo '#define VERSION_GIT \"not-a-git-repo\"' " +
") > $(out)",
}
cc_library {
name: "libtracecmd",
// Restrict visibility due to GPL license
visibility: [
"//external/trace-cmd:__subpackages__",
],
local_include_dirs: [
"lib/trace-cmd/include/private",
"lib/trace-cmd/include",
"include/trace-cmd",
"tracecmd/include",
"include",
],
export_include_dirs: [
"lib/trace-cmd/include",
],
srcs: [
"lib/trace-cmd/test.c",
"lib/trace-cmd/trace-blk-hack.c",
"lib/trace-cmd/trace-compress.c",
"lib/trace-cmd/trace-compress-zlib.c",
"lib/trace-cmd/trace-filter-hash.c",
"lib/trace-cmd/trace-ftrace.c",
"lib/trace-cmd/trace-hash.c",
"lib/trace-cmd/trace-hooks.c",
"lib/trace-cmd/trace-input.c",
"lib/trace-cmd/trace-msg.c",
"lib/trace-cmd/trace-output.c",
"lib/trace-cmd/trace-perf.c",
"lib/trace-cmd/trace-plugin.c",
"lib/trace-cmd/trace-recorder.c",
"lib/trace-cmd/trace-timesync.c",
"lib/trace-cmd/trace-timesync-kvm.c",
"lib/trace-cmd/trace-timesync-ptp.c",
"lib/trace-cmd/trace-util.c",
],
shared: {
shared_libs: [
"libtraceevent",
"libtracefs",
"libz",
],
export_shared_lib_headers: [
"libtraceevent",
"libtracefs",
"libz",
],
},
static: {
static_libs: [
"libtraceevent",
"libtracefs",
"libz",
],
export_static_lib_headers: [
"libtraceevent",
"libtracefs",
"libz",
],
},
generated_headers: ["tc_version_header"],
export_generated_headers: ["tc_version_header"],
cflags: [
"-D__bswap_64=__swap64",
"-D_GNU_SOURCE",
"-DPERF",
"-DVSOCK",
"-Wno-unused-parameter",
"-Wno-macro-redefined",
"-Wno-unused-but-set-variable",
"-Wno-user-defined-warnings",
"-Wno-visibility",
"-Wno-pointer-arith",
],
c_std: "gnu99",
}
cc_binary {
name: "trace-cmd",
local_include_dirs: [
"lib/trace-cmd/include/private",
"include/trace-cmd",
"tracecmd/include",
"include",
],
srcs: ["tracecmd/*.c"],
static_libs: [
"libtraceevent",
"libtracecmd",
"libtracefs",
],
static_executable: true,
cflags: [
"-D_GNU_SOURCE",
"-DNO_AUDIT",
"-DVSOCK",
"-Wno-unused-parameter",
"-Wno-macro-redefined",
"-Wno-visibility",
"-Wno-pointer-arith",
],
c_std: "gnu99",
}