blob: f342e66b1a95d3fbcb8f59fa2e01e5e2284ba542 [file] [log] [blame]
# This Package contains the necessary targets to incorporate the googletest
# libraries into your Bazel built projects.
#
# The libraries are defined here rather than in their component directories
# because googlemock has dependencies on googletest and by defining the
# build targets here, the libraries are independent of their location in
# a more straightforward way.
load('/tools/build_rules/empty_main', 'empty_main_if_asan')
licenses(["notice"])
cc_library(
name = "googletest",
visibility = ["//visibility:public"],
srcs = glob([
"googletest/src/gtest.cc",
"googletest/src/gtest-death-test.cc",
"googletest/src/gtest-filepath.cc",
"googletest/src/gtest-internal-inl.h",
"googletest/src/gtest-port.cc",
"googletest/src/gtest-printers.cc",
"googletest/src/gtest-test-part.cc",
"googletest/src/gtest-typed-test.cc",
"googletest/include/gtest/internal/*.h",
"googletest/include/gtest/internal/custom/*.h",
]),
hdrs = glob([
"googletest/include/gtest/*.h"
]),
includes = [
"googletest",
"googletest/include",
],
copts = [
"-g",
"-Wall",
"-Wextra",
"-Wno-format-nonliteral",
"-Wno-switch-enum",
"-Wno-missing-field-initializers",
],
linkopts = [
"-pthread",
],
)
cc_library(
name = "googletest_main",
visibility = ["//visibility:public"],
srcs = [
"googletest/src/gtest_main.cc",
],
deps = [
":googletest",
],
)
cc_library(
name = "googlemock",
visibility = ["//visibility:public"],
srcs = glob([
"googlemock/src/gmock-cardinalities.cc",
"googlemock/src/gmock.cc",
"googlemock/src/gmock-internal-utils.cc",
"googlemock/src/gmock_main.cc",
"googlemock/src/gmock-matchers.cc",
"googlemock/src/gmock-spec-builders.cc",
"googlemock/include/gmock/internal/*.h",
"googlemock/include/gmock/internal/custom/*.h",
]),
hdrs = glob([
"googlemock/include/gmock/*.h"
]),
includes = [
"googletest/include",
"googlemock",
"googlemock/include",
],
copts = [
"-std=c++11",
"-g",
"-Wall",
"-Wextra",
"-Wno-switch-enum",
"-Wno-missing-field-initializers",
"-Wno-unused-parameter",
],
linkopts = [
"-pthread",
],
deps = [
":googletest",
],
)
cc_library(
name = "googletest_sample_libs",
hdrs = [
"googletest/samples/prime_tables.h",
"googletest/samples/sample1.h",
"googletest/samples/sample2.h",
"googletest/samples/sample3-inl.h",
"googletest/samples/sample4.h",
],
srcs = [
"googletest/samples/sample1.cc",
"googletest/samples/sample2.cc",
"googletest/samples/sample4.cc",
],
)
test_suite(
name = "googletest_example_tests",
tests = [
":googletest_sample1_test",
":googletest_sample2_test",
":googletest_sample3_test",
":googletest_sample4_test",
":googletest_sample5_test",
":googletest_sample6_test",
":googletest_sample7_test",
":googletest_sample8_test",
":googletest_sample9_test",
":googletest_sample10_test",
],
)
test_suite(
name = "googletest_tests",
tests = [
":googletest_gtest_filepath_test",
":googletest_gtest_linked_ptr_test",
":googletest_gtest_message_test",
# The gtest_options_test fails when run as a test suite since it
# uses a hard-coded binary name.
# ":googletest_gtest_options_test",
":googletest_gtest_port_test",
":googletest_gtest_pred_impl_unittest",
":googletest_gtest_prod_test",
":googletest_gtest_test_part_test",
":googletest_gtest_typed_test_test",
":googletest_gtest_typed_test2_test",
":googletest_gtest_unittest",
":googletest_gtest_production_test",
],
)
test_suite(
name = "googlemock_tests",
tests = [
":googlemock_gmock_actions_test",
":googlemock_gmock_cardinalities_test",
#":googlemock_gmock_ex_test",
":googlemock_gmock_generated_actions_test",
":googlemock_gmock-generated_function_mockers_test",
":googlemock_gmock-generated_internal_utils_test",
":googlemock_gmock-generated_matchers_test",
":googlemock_gmock_internal_utils_test",
# ":googlemock_gmock_leak_test",
":googlemock_gmock_link_test",
":googlemock_gmock_link2_test",
":googlemock_gmock_matchers_test",
":googlemock_gmock_more_actions_test",
":googlemock_gmock_nice_strict_test",
# ":googlemock_gmock_output_test",
":googlemock_gmock_port_test",
":googlemock_gmock_spec_builders_test",
":googlemock_gmock_stress_test",
":googlemock_gmock_test",
],
)
cc_test(
name = "googletest_sample1_test",
srcs = ["googletest/samples/sample1_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample2_test",
srcs = ["googletest/samples/sample2_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample3_test",
srcs = ["googletest/samples/sample3_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample4_test",
srcs = ["googletest/samples/sample4_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample5_test",
srcs = ["googletest/samples/sample5_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample6_test",
srcs = ["googletest/samples/sample6_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample7_test",
srcs = ["googletest/samples/sample7_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample8_test",
srcs = ["googletest/samples/sample8_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample9_test",
srcs = ["googletest/samples/sample9_unittest.cc"],
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
cc_test(
name = "googletest_sample10_test",
srcs = empty_main_if_asan(["googletest/samples/sample10_unittest.cc"]),
deps = [
":googletest_main",
":googletest_sample_libs",
],
)
""" Tests on the googletest library itself."""
cc_library(
name = "gtest_production",
hdrs = [
"googletest/test/production.h",
],
srcs = [
"googletest/test/production.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_filepath_test",
srcs = [
"googletest/test/gtest-filepath_test.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_linked_ptr_test",
srcs = [
"googletest/test/gtest-linked_ptr_test.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_message_test",
srcs = [
"googletest/test/gtest-message_test.cc",
],
deps = [
":googletest_main",
],
)
"""
This test currently fails based on how the test itself checks for the running executable
name.
cc_test(
name = "googletest_gtest_options_test",
srcs = [
"googletest/test/gtest-options_test.cc",
],
deps = [
":googletest_main",
],
)"""
cc_test(
name = "googletest_gtest_port_test",
srcs = [
"googletest/test/gtest-port_test.cc",
],
deps = [
":googletest_main",
],
copts = [
"-Wno-empty-body",
]
)
cc_test(
name = "googletest_gtest_pred_impl_unittest",
srcs = [
"googletest/test/gtest_pred_impl_unittest.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_prod_test",
srcs = [
"googletest/test/gtest_prod_test.cc",
],
includes = [
"googletest",
"googletest/include",
],
deps = [
":googletest_main",
":gtest_production",
],
)
cc_test(
name = "googletest_gtest_test_part_test",
srcs = [
"googletest/test/gtest-test-part_test.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_typed_test_test",
srcs = [
"googletest/test/gtest-typed-test_test.h",
"googletest/test/gtest-typed-test_test.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_typed_test2_test",
srcs = [
"googletest/test/gtest-typed-test_test.h",
"googletest/test/gtest-typed-test2_test.cc",
],
deps = [
":googletest_main",
],
)
cc_test(
name = "googletest_gtest_unittest",
srcs = [
"googletest/test/gtest_unittest.cc",
],
deps = [
":googletest_main",
],
copts = [
"-Wno-empty-body",
"-Wno-missing-field-initializers",
]
)
cc_test(
name = "googletest_gtest_production_test",
srcs = [
"googletest/test/production.h",
"googletest/test/production.cc",
],
deps = [
":googletest_main",
],
)
""" Tests on the googlemock library itself."""
cc_test(
name = "googlemock_gmock_actions_test",
srcs = [
"googlemock/test/gmock-actions_test.cc",
],
copts = [
"-std=c++11",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_cardinalities_test",
srcs = [
"googlemock/test/gmock-cardinalities_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
'''
cc_test(
name = "googlemock_gmock_ex_test",
srcs = [
"googlemock/test/gmock_ex_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
'''
cc_test(
name = "googlemock_gmock_generated_actions_test",
srcs = [
"googlemock/test/gmock-generated-actions_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock-generated_function_mockers_test",
srcs = [
"googlemock/test/gmock-generated-function-mockers_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock-generated_internal_utils_test",
srcs = [
"googlemock/test/gmock-generated-internal-utils_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock-generated_matchers_test",
srcs = [
"googlemock/test/gmock-generated-matchers_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
copts = [
"-Wno-unused-parameter",
],
)
cc_test(
name = "googlemock_gmock_internal_utils_test",
srcs = [
"googlemock/test/gmock-internal-utils_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
"""
This test currently runs through the python component and fails on its own.
cc_test(
name = "googlemock_gmock_leak_test",
srcs = [
"googlemock/test/gmock_leak_test_.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)"""
cc_test(
name = "googlemock_gmock_link_test",
srcs = [
"googlemock/test/gmock_link_test.h",
"googlemock/test/gmock_link_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_link2_test",
srcs = [
"googlemock/test/gmock_link_test.h",
"googlemock/test/gmock_link2_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_matchers_test",
srcs = [
"googlemock/test/gmock-matchers_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
copts = [
"-Wno-unused-parameter",
],
)
cc_test(
name = "googlemock_gmock_more_actions_test",
srcs = [
"googlemock/test/gmock-more-actions_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_nice_strict_test",
srcs = [
"googlemock/test/gmock-nice-strict_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
"""
This test is currently run through the python component and fails on its own.
cc_test(
name = "googlemock_gmock_output_test",
srcs = [
"googlemock/test/gmock_output_test_.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)"""
cc_test(
name = "googlemock_gmock_port_test",
srcs = [
"googlemock/test/gmock-port_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_spec_builders_test",
srcs = [
"googlemock/test/gmock-spec-builders_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_stress_test",
srcs = [
"googlemock/test/gmock_stress_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)
cc_test(
name = "googlemock_gmock_test",
srcs = [
"googlemock/test/gmock_test.cc",
],
deps = [
":googlemock",
":googletest_main",
],
)