googletest/BUILD.bazel

187 lines
4.1 KiB
Python
Raw Normal View History

2017-08-08 19:17:56 +00:00
# Copyright 2017 Google Inc. All Rights Reserved.
# Author: misterg@google.com (Gennadiy Civil)
#
# Description:
# Bazel BUILD file for googletest, initial revision
#
2017-08-01 18:36:29 +00:00
package(default_visibility = ["//visibility:public"])
licenses(["notice"])
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",
],
)
2017-08-08 19:17:56 +00:00
# gtest public API.
GTEST_HDRS = \
glob([
"googletest/include/gtest/*.h",
])
config_setting(
name = "win",
values = {"cpu": "x64_windows_msvc"},
)
# Google Test
2017-08-01 18:36:29 +00:00
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",
],
),
2017-08-08 19:17:56 +00:00
hdrs = GTEST_HDRS,
2017-08-01 18:36:29 +00:00
copts = select(
{
":win": [],
"//conditions:default": ["-pthread"],
},
),
includes = [
"googletest",
"googletest/include",
],
linkopts = select({
":win": [],
"//conditions:default": [
"-pthread",
],
}),
)
2017-08-08 19:17:56 +00:00
## Google Test with exceptions enabled.
2017-08-01 18:36:29 +00:00
cc_library(
2017-08-08 19:17:56 +00:00
name = "gtest_ex",
2017-08-01 18:36:29 +00:00
srcs = glob(
include = [
2017-08-08 19:17:56 +00:00
"googletest/src/*.cc",
"googletest/src/*.h",
2017-08-01 18:36:29 +00:00
"googletest/include/gtest/**/*.h",
],
exclude = [
"googletest/src/gtest-all.cc",
2017-08-08 19:17:56 +00:00
"googletest/src/gtest_main.cc",
2017-08-01 18:36:29 +00:00
],
),
2017-08-08 19:17:56 +00:00
hdrs = GTEST_HDRS,
2017-08-08 19:41:44 +00:00
copts = select(
2017-08-08 19:17:56 +00:00
{
2017-08-08 19:41:44 +00:00
":win": ["-DGTEST_ENABLE_CATCH_EXCEPTIONS_=1"],
"//conditions:default": ["-fexceptions","-pthread"],
2017-08-08 19:17:56 +00:00
},
2017-08-01 18:36:29 +00:00
),
includes = [
"googletest",
"googletest/include",
],
linkopts = select({
":win": [],
"//conditions:default": [
"-pthread",
],
}),
)
2017-08-08 19:17:56 +00:00
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",
2017-08-01 18:36:29 +00:00
],
2017-08-08 19:17:56 +00:00
deps = ["//:gtest"],
2017-08-01 18:36:29 +00:00
)
2017-08-02 18:36:39 +00:00
# The following rules build samples of how to use gTest.
2017-08-01 18:36:29 +00:00
cc_library(
2017-08-01 18:50:59 +00:00
name = "gtest_sample_lib",
2017-08-01 18:36:29 +00:00
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",
],
)
cc_test(
2017-08-01 18:50:59 +00:00
name = "gtest_samples",
2017-08-01 18:36:29 +00:00
size = "small",
2017-08-08 19:17:56 +00:00
#All Samples except:
#sample9 ( main )
#sample10 (main and takes a command line option and needs to be separate)
srcs = [
"googletest/samples/sample1_unittest.cc",
"googletest/samples/sample2_unittest.cc",
"googletest/samples/sample3_unittest.cc",
"googletest/samples/sample4_unittest.cc",
"googletest/samples/sample5_unittest.cc",
"googletest/samples/sample6_unittest.cc",
"googletest/samples/sample7_unittest.cc",
"googletest/samples/sample8_unittest.cc",
],
2017-08-01 18:36:29 +00:00
deps = [
2017-08-02 19:40:14 +00:00
"gtest_sample_lib",
2017-08-01 18:36:29 +00:00
":gtest_main",
],
)
cc_test(
2017-08-02 19:40:14 +00:00
name = "sample9_unittest",
2017-08-01 18:36:29 +00:00
size = "small",
2017-08-02 19:40:14 +00:00
srcs = ["googletest/samples/sample9_unittest.cc"],
2017-08-08 19:17:56 +00:00
deps = [":gtest"],
2017-08-01 18:36:29 +00:00
)
cc_test(
2017-08-02 19:40:14 +00:00
name = "sample10_unittest",
2017-08-01 18:36:29 +00:00
size = "small",
2017-08-02 19:40:14 +00:00
srcs = ["googletest/samples/sample10_unittest.cc"],
2017-08-01 18:36:29 +00:00
deps = [
2017-08-08 19:17:56 +00:00
":gtest",
2017-08-01 18:36:29 +00:00
],
)