This commit is contained in:
misterg 2017-08-08 15:17:56 -04:00
parent aecea3842c
commit 8815087cfa
2 changed files with 201 additions and 150 deletions

View File

@ -1,12 +1,13 @@
# Copyright 2017 Google Inc. All Rights Reserved.
# Author: misterg@google.com (Gennadiy Civil)
#
# Description:
# Bazel BUILD file for googletest, initial revision
#
package(default_visibility = ["//visibility:public"]) package(default_visibility = ["//visibility:public"])
licenses(["notice"]) licenses(["notice"])
config_setting(
name = "win",
values = {"cpu": "x64_windows_msvc"},
)
cc_library( cc_library(
name = "gmock", name = "gmock",
srcs = glob( srcs = glob(
@ -34,6 +35,18 @@ cc_library(
], ],
) )
# gtest public API.
GTEST_HDRS = \
glob([
"googletest/include/gtest/*.h",
])
config_setting(
name = "win",
values = {"cpu": "x64_windows_msvc"},
)
# Google Test
cc_library( cc_library(
name = "gtest", name = "gtest",
srcs = glob( srcs = glob(
@ -47,9 +60,7 @@ cc_library(
"googletest/src/gtest_main.cc", "googletest/src/gtest_main.cc",
], ],
), ),
hdrs = glob([ hdrs = GTEST_HDRS,
"googletest/include/gtest/*.h",
]),
copts = select( copts = select(
{ {
":win": [], ":win": [],
@ -68,6 +79,39 @@ cc_library(
}), }),
) )
## Google Test with exceptions enabled.
cc_library(
name = "gtest_ex",
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 = GTEST_HDRS,
copts = ["-fexceptions"] + select(
{
":win": [],
"//conditions:default": ["-pthread"],
},
),
includes = [
"googletest",
"googletest/include",
],
linkopts = select({
":win": [],
"//conditions:default": [
"-pthread",
],
}),
)
cc_library( cc_library(
name = "gtest_main", name = "gtest_main",
srcs = glob( srcs = glob(
@ -83,131 +127,9 @@ cc_library(
"googletest", "googletest",
"googletest/include", "googletest/include",
], ],
deps = [":gmock"], deps = ["//:gtest"],
) )
""" gtest 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",
],
)
# The following rules build samples of how to use gTest. # The following rules build samples of how to use gTest.
cc_library( cc_library(
name = "gtest_sample_lib", name = "gtest_sample_lib",
@ -228,21 +150,19 @@ cc_library(
cc_test( cc_test(
name = "gtest_samples", name = "gtest_samples",
size = "small", size = "small",
srcs = glob( #All Samples except:
include = [ #sample9 ( main )
#All Samples here except: #sample10 (main and takes a command line option and needs to be separate)
#sample9 designed to fail srcs = [
#sample10 takes a command line option and needs to be separate "googletest/samples/sample1_unittest.cc",
"googletest/samples/sample1_unittest.cc", "googletest/samples/sample2_unittest.cc",
"googletest/samples/sample2_unittest.cc", "googletest/samples/sample3_unittest.cc",
"googletest/samples/sample3_unittest.cc", "googletest/samples/sample4_unittest.cc",
"googletest/samples/sample4_unittest.cc", "googletest/samples/sample5_unittest.cc",
"googletest/samples/sample5_unittest.cc", "googletest/samples/sample6_unittest.cc",
"googletest/samples/sample6_unittest.cc", "googletest/samples/sample7_unittest.cc",
"googletest/samples/sample7_unittest.cc", "googletest/samples/sample8_unittest.cc",
"googletest/samples/sample8_unittest.cc", ],
],
),
deps = [ deps = [
"gtest_sample_lib", "gtest_sample_lib",
":gtest_main", ":gtest_main",
@ -253,7 +173,7 @@ cc_test(
name = "sample9_unittest", name = "sample9_unittest",
size = "small", size = "small",
srcs = ["googletest/samples/sample9_unittest.cc"], srcs = ["googletest/samples/sample9_unittest.cc"],
deps = [":gtest_main"], deps = [":gtest"],
) )
cc_test( cc_test(
@ -261,8 +181,6 @@ cc_test(
size = "small", size = "small",
srcs = ["googletest/samples/sample10_unittest.cc"], srcs = ["googletest/samples/sample10_unittest.cc"],
deps = [ deps = [
":gtest_main", ":gtest",
], ],
) )

133
googletest/test/BUILD.bazel Normal file
View File

@ -0,0 +1,133 @@
# Copyright 2017 Google Inc. All Rights Reserved.
# Author: misterg@google.com (Gennadiy Civil)
#
# Description:
# Bazel BUILD file for googletest/test, initial revision
#
licenses(["notice"])
""" gtest own tests """
#on windows exclude gtest-tuple.h and gtest-tuple_test.cc
filegroup(
name = "win_only_test_files",
srcs = glob(
include = [
"gtest-*.cc",
"*.h",
"googletest/include/gtest/**/*.h",
],
exclude = [
"googletest/src/gtest-unittest-api_test.cc",
"googletest/include/gtest/internal/gtest-tuple.h",
"gtest-tuple_test.cc",
"googletest/src/gtest-all.cc",
"gtest_all_test.cc",
"gtest-death-test_ex_test.cc",
"gtest-listener_test.cc",
"gtest-unittest-api_test.cc",
"gtest-param-test_test.cc",
],
),
)
filegroup(
name = "default_test_files",
srcs = glob(
include = [
"gtest-*.cc",
"*.h",
"googletest/include/gtest/**/*.h",
],
exclude = [
"googletest/src/gtest-unittest-api_test.cc",
"googletest/src/gtest-all.cc",
"gtest_all_test.cc",
"gtest-death-test_ex_test.cc",
"gtest-listener_test.cc",
"gtest-unittest-api_test.cc",
"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-listener_test",
size = "small",
srcs = [
"gtest-listener_test.cc",
],
deps = [
"//:gtest_main",
],
)
cc_test(
name = "gtest-unittest-api_test",
size = "small",
srcs = [
"gtest-unittest-api_test.cc",
],
deps = [
"//:gtest_main",
],
)
cc_test(
name = "gtest-param-test_test",
size = "small",
srcs = [
"gtest-param-test2_test.cc",
"gtest-param-test_test.cc",
"gtest-param-test_test.h",
],
deps = [
"//:gtest_main",
],
)
#Verifies interaction of death tests and exceptions.
cc_test(
name = "gtest-death-test_ex_catch_test",
size = "small",
srcs = ["gtest-death-test_ex_test.cc"],
copts = ["-fexceptions"],
defines = ["GTEST_ENABLE_CATCH_EXCEPTIONS_=0"],
deps = ["//:gtest_ex"],
)
cc_test(
name = "gtest-death-test_ex_nocatch_test",
size = "small",
srcs = ["gtest-death-test_ex_test.cc"],
copts = ["-fexceptions"],
defines = ["GTEST_ENABLE_CATCH_EXCEPTIONS_=1"],
deps = ["//:gtest_ex"],
)