blob: faf25cba380d7c52817c74d42f45c1bf8b34ce7b [file] [log] [blame]
# Copyright (C) 2017 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
config("ftrace_reader_config") {
include_dirs = [ "include" ]
}
executable("ftrace_reader_unittests") {
testonly = true
deps += [
":ftrace_reader",
"//buildtools:gmock",
"//buildtools:gtest",
"//buildtools:gtest_main",
"//protos/ftrace:full",
]
sources = [
"src/cpu_reader_unittest.cc",
"src/format_parser_unittest.cc",
"src/ftrace_controller_unittest.cc",
"src/ftrace_to_proto_unittest.cc",
"src/proto_translation_table_unittest.cc",
"src/scattered_stream_delegate_for_testing.h",
]
}
# These tests require access to a real ftrace implementation and must
# run with sudo.
executable("ftrace_reader_integrationtests") {
testonly = true
deps += [
":ftrace_reader",
"//base",
"//buildtools:gmock",
"//buildtools:gtest",
"//buildtools:gtest_main",
"//buildtools:protobuf_full",
"//protos/ftrace:full",
]
sources = [
"src/end_to_end_integrationtest.cc",
"src/ftrace_procfs_integrationtest.cc",
]
}
executable("ftrace_reader_demo") {
testonly = true
sources = [
"src/main.cc",
]
deps += [
":ftrace_reader",
"//base",
]
}
source_set("ftrace_reader") {
all_dependent_configs = [
":ftrace_reader_config",
"//buildtools:googletest_prod_config",
]
deps += [ "//base" ]
public_deps = [
"//protos/ftrace:zero",
]
sources = [
"include/ftrace_reader/format_parser.h",
"include/ftrace_reader/ftrace_controller.h",
"include/ftrace_reader/ftrace_to_proto.h",
"src/cpu_reader.cc",
"src/cpu_reader.h",
"src/format_parser.cc",
"src/ftrace_controller.cc",
"src/ftrace_procfs.cc",
"src/ftrace_procfs.h",
"src/ftrace_to_proto.cc",
"src/proto_translation_table.cc",
"src/proto_translation_table.h",
]
}