WIP
This commit is contained in:
292
BUILD.bazel
Normal file
292
BUILD.bazel
Normal file
@@ -0,0 +1,292 @@
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
licenses(["notice"])
|
||||
|
||||
config_setting(
|
||||
name = "win",
|
||||
values = {"cpu": "x64_windows_msvc"},
|
||||
)
|
||||
|
||||
cc_library(
|
||||
name = "gmock",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googlemock/src/*.cc",
|
||||
"googlemock/include/gmock/**/*.h",
|
||||
],
|
||||
exclude = [
|
||||
"googlemock/src/gmock-all.cc",
|
||||
],
|
||||
),
|
||||
hdrs = glob([
|
||||
"googlemock/include/gmock/*.h",
|
||||
]),
|
||||
includes = [
|
||||
"googlemock",
|
||||
"googlemock/include",
|
||||
],
|
||||
linkopts = select({
|
||||
":win": [],
|
||||
"//conditions:default": ["-pthread"],
|
||||
}),
|
||||
deps = [
|
||||
":gtest",
|
||||
],
|
||||
)
|
||||
|
||||
cc_library(
|
||||
name = "gtest",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/src/*.cc",
|
||||
"googletest/src/*.h",
|
||||
"googletest/include/gtest/**/*.h",
|
||||
],
|
||||
exclude = [
|
||||
"googletest/src/gtest-all.cc",
|
||||
"googletest/src/gtest_main.cc",
|
||||
],
|
||||
),
|
||||
hdrs = glob([
|
||||
"googletest/include/gtest/*.h",
|
||||
]),
|
||||
copts = select(
|
||||
{
|
||||
":win": [],
|
||||
"//conditions:default": ["-pthread"],
|
||||
},
|
||||
),
|
||||
includes = [
|
||||
"googletest",
|
||||
"googletest/include",
|
||||
],
|
||||
linkopts = select({
|
||||
":win": [],
|
||||
"//conditions:default": [
|
||||
"-pthread",
|
||||
],
|
||||
}),
|
||||
)
|
||||
|
||||
cc_library(
|
||||
name = "gtest_main",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/src/gtest_main.cc",
|
||||
],
|
||||
),
|
||||
hdrs = glob([
|
||||
"googletest/include/gtest/*.h",
|
||||
"googletest/include/gtest/**/*.h",
|
||||
]),
|
||||
includes = [
|
||||
"googletest",
|
||||
"googletest/include",
|
||||
],
|
||||
deps = [":gmock"],
|
||||
)
|
||||
|
||||
"""googletest own tests """
|
||||
|
||||
#on windows exclude gtest-tuple.h and gtest-tuple_test.cc
|
||||
filegroup(
|
||||
name = "win_only_test_files",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/test/gtest-*.cc",
|
||||
"googletest/test/*.h",
|
||||
"googletest/include/gtest/**/*.h",
|
||||
],
|
||||
exclude = [
|
||||
"googletest/src/gtest-unittest-api_test.cc",
|
||||
"googletest/include/gtest/internal/gtest-tuple.h",
|
||||
"googletest/test/gtest-tuple_test.cc",
|
||||
"googletest/src/gtest-all.cc",
|
||||
"googletest/test/gtest_all_test.cc",
|
||||
"googletest/test/gtest-death-test_ex_test.cc",
|
||||
"googletest/test/gtest-listener_test.cc",
|
||||
"googletest/test/gtest-unittest-api_test.cc",
|
||||
"googletest/test/gtest-param-test_test.cc",
|
||||
],
|
||||
),
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "default_test_files",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/test/gtest-*.cc",
|
||||
"googletest/test/*.h",
|
||||
"googletest/include/gtest/**/*.h",
|
||||
],
|
||||
exclude = [
|
||||
"googletest/src/gtest-unittest-api_test.cc",
|
||||
"googletest/src/gtest-all.cc",
|
||||
"googletest/test/gtest_all_test.cc",
|
||||
"googletest/test/gtest-death-test_ex_test.cc",
|
||||
"googletest/test/gtest-listener_test.cc",
|
||||
"googletest/test/gtest-unittest-api_test.cc",
|
||||
"googletest/test/gtest-param-test_test.cc",
|
||||
],
|
||||
),
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "gtest_all_test",
|
||||
size = "small",
|
||||
srcs = select({
|
||||
":win": [":win_only_test_files"],
|
||||
"//conditions:default": [":default_test_files"],
|
||||
}),
|
||||
copts = select({
|
||||
":win": ["-DGTEST_USE_OWN_TR1_TUPLE=0"],
|
||||
"//conditions:default": ["-DGTEST_USE_OWN_TR1_TUPLE=1"],
|
||||
}),
|
||||
includes = [
|
||||
"googletest",
|
||||
"googletest/include",
|
||||
"googletest/include/internal",
|
||||
"googletest/test",
|
||||
],
|
||||
linkopts = select({
|
||||
":win": [],
|
||||
"//conditions:default": [
|
||||
"-pthread",
|
||||
],
|
||||
}),
|
||||
deps = [":gtest_main"],
|
||||
)
|
||||
|
||||
""" these googletest tests have their own main()"""
|
||||
|
||||
cc_test(
|
||||
name = "gtest-death-test",
|
||||
size = "small",
|
||||
srcs = [
|
||||
"googletest/test/gtest-death-test_ex_test.cc",
|
||||
],
|
||||
copts = [
|
||||
"-DGTEST_ENABLE_CATCH_EXCEPTIONS_=1",
|
||||
],
|
||||
deps = [
|
||||
":gtest_main",
|
||||
],
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "gtest-listener_test",
|
||||
size = "small",
|
||||
srcs = [
|
||||
"googletest/test/gtest-listener_test.cc",
|
||||
],
|
||||
deps = [
|
||||
":gtest_main",
|
||||
],
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "gtest-unittest-api_test",
|
||||
size = "small",
|
||||
srcs = [
|
||||
"googletest/test/gtest-unittest-api_test.cc",
|
||||
],
|
||||
deps = [
|
||||
":gtest_main",
|
||||
],
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "gtest-param-test_test",
|
||||
size = "small",
|
||||
srcs = [
|
||||
"googletest/test/gtest-param-test2_test.cc",
|
||||
"googletest/test/gtest-param-test_test.cc",
|
||||
"googletest/test/gtest-param-test_test.h",
|
||||
],
|
||||
deps = [
|
||||
":gtest_main",
|
||||
],
|
||||
)
|
||||
|
||||
""" googletest samples"""
|
||||
|
||||
cc_library(
|
||||
name = "googletest_sample_lib",
|
||||
srcs = [
|
||||
"googletest/samples/sample1.cc",
|
||||
"googletest/samples/sample2.cc",
|
||||
"googletest/samples/sample4.cc",
|
||||
],
|
||||
hdrs = [
|
||||
"googletest/samples/prime_tables.h",
|
||||
"googletest/samples/sample1.h",
|
||||
"googletest/samples/sample2.h",
|
||||
"googletest/samples/sample3-inl.h",
|
||||
"googletest/samples/sample4.h",
|
||||
],
|
||||
deps = ["gtest"],
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "googletest_samples",
|
||||
size = "small",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/samples/sample*.cc",
|
||||
"googletest/samples/sample*.h",
|
||||
],
|
||||
exclude = [
|
||||
"googletest/samples/sample1.cc",
|
||||
"googletest/samples/sample2.cc",
|
||||
"googletest/samples/sample4.cc",
|
||||
"googletest/samples/prime_tables.h",
|
||||
"googletest/samples/sample1.h",
|
||||
"googletest/samples/sample2.h",
|
||||
"googletest/samples/sample3-inl.h",
|
||||
"googletest/samples/sample4.h",
|
||||
"googletest/samples/sample9_unittest.cc",
|
||||
"googletest/samples/sample10_unittest.cc",
|
||||
],
|
||||
),
|
||||
includes = [
|
||||
"googletest/samples",
|
||||
],
|
||||
deps = [
|
||||
":googletest_sample_lib",
|
||||
":gtest_main",
|
||||
],
|
||||
)
|
||||
|
||||
""" googletest samples 9 and 10 have their own main()"""
|
||||
|
||||
cc_test(
|
||||
name = "googletest_sample9",
|
||||
size = "small",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/samples/sample9_unittest.cc",
|
||||
],
|
||||
),
|
||||
includes = [
|
||||
"googletest/samples",
|
||||
],
|
||||
deps = [
|
||||
":gtest",
|
||||
],
|
||||
)
|
||||
|
||||
cc_test(
|
||||
name = "googletest_sample10",
|
||||
size = "small",
|
||||
srcs = glob(
|
||||
include = [
|
||||
"googletest/samples/sample10_unittest.cc",
|
||||
],
|
||||
),
|
||||
includes = [
|
||||
"googletest/samples",
|
||||
],
|
||||
deps = [
|
||||
":gtest",
|
||||
],
|
||||
)
|
||||
Reference in New Issue
Block a user