187 lines
4.1 KiB
Python
187 lines
4.1 KiB
Python
# 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"])
|
|
|
|
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",
|
|
],
|
|
)
|
|
|
|
# gtest public API.
|
|
GTEST_HDRS = \
|
|
glob([
|
|
"googletest/include/gtest/*.h",
|
|
])
|
|
|
|
config_setting(
|
|
name = "win",
|
|
values = {"cpu": "x64_windows_msvc"},
|
|
)
|
|
|
|
# Google Test
|
|
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 = GTEST_HDRS,
|
|
copts = select(
|
|
{
|
|
":win": [],
|
|
"//conditions:default": ["-pthread"],
|
|
},
|
|
),
|
|
includes = [
|
|
"googletest",
|
|
"googletest/include",
|
|
],
|
|
linkopts = select({
|
|
":win": [],
|
|
"//conditions:default": [
|
|
"-pthread",
|
|
],
|
|
}),
|
|
)
|
|
|
|
## 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 = select(
|
|
{
|
|
":win": ["-DGTEST_ENABLE_CATCH_EXCEPTIONS_=1"],
|
|
"//conditions:default": ["-fexceptions","-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 = ["//:gtest"],
|
|
)
|
|
|
|
# The following rules build samples of how to use gTest.
|
|
cc_library(
|
|
name = "gtest_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",
|
|
],
|
|
)
|
|
|
|
cc_test(
|
|
name = "gtest_samples",
|
|
size = "small",
|
|
#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",
|
|
],
|
|
deps = [
|
|
"gtest_sample_lib",
|
|
":gtest_main",
|
|
],
|
|
)
|
|
|
|
cc_test(
|
|
name = "sample9_unittest",
|
|
size = "small",
|
|
srcs = ["googletest/samples/sample9_unittest.cc"],
|
|
deps = [":gtest"],
|
|
)
|
|
|
|
cc_test(
|
|
name = "sample10_unittest",
|
|
size = "small",
|
|
srcs = ["googletest/samples/sample10_unittest.cc"],
|
|
deps = [
|
|
":gtest",
|
|
],
|
|
)
|