72 lines
2.5 KiB
Plaintext
72 lines
2.5 KiB
Plaintext
|
# Copyright (c) 2024 The Chromium Embedded Framework Authors. All rights
|
||
|
# reserved. Use of this source code is governed by a BSD-style license that
|
||
|
# can be found in the LICENSE file.
|
||
|
|
||
|
load("//bazel/win:variables.bzl",
|
||
|
WIN_COMMON_LINKOPTS="COMMON_LINKOPTS",
|
||
|
WIN_COMMON_COPTS="COMMON_COPTS",
|
||
|
WIN_COMMON_COPTS_RELEASE="COMMON_COPTS_RELEASE",
|
||
|
WIN_COMMON_COPTS_DEBUG="COMMON_COPTS_DEBUG")
|
||
|
load("//bazel/linux:variables.bzl",
|
||
|
LINUX_COMMON_LINKOPTS="COMMON_LINKOPTS",
|
||
|
LINUX_COMMON_COPTS="COMMON_COPTS",
|
||
|
LINUX_COMMON_COPTS_RELEASE="COMMON_COPTS_RELEASE",
|
||
|
LINUX_COMMON_COPTS_DEBUG="COMMON_COPTS_DEBUG")
|
||
|
load("//bazel/mac:variables.bzl",
|
||
|
MAC_COMMON_LINKOPTS="COMMON_LINKOPTS",
|
||
|
MAC_COMMON_COPTS="COMMON_COPTS",
|
||
|
MAC_COMMON_COPTS_RELEASE="COMMON_COPTS_RELEASE",
|
||
|
MAC_COMMON_COPTS_DEBUG="COMMON_COPTS_DEBUG")
|
||
|
load("@rules_cc//cc:defs.bzl", "cc_library", "objc_library")
|
||
|
|
||
|
# Allow access from targets in other packages.
|
||
|
package(default_visibility = [
|
||
|
"//visibility:public",
|
||
|
])
|
||
|
|
||
|
cc_library(
|
||
|
name = "gtest",
|
||
|
srcs = [
|
||
|
"include/gtest/gtest.h",
|
||
|
"src/gtest-all.cc",
|
||
|
"teamcity/include/teamcity_gtest.h",
|
||
|
"teamcity/src/teamcity_gtest.cpp",
|
||
|
"teamcity/src/teamcity_messages.cpp",
|
||
|
"teamcity/src/teamcity_messages.h",
|
||
|
],
|
||
|
local_defines = [
|
||
|
# In order to allow regex matches in gtest to be shared between Windows
|
||
|
# and other systems we tell gtest to always use it's internal engine.
|
||
|
"GTEST_HAS_POSIX_RE=0",
|
||
|
"GTEST_LANG_CXX11=1",
|
||
|
],
|
||
|
defines = [
|
||
|
# All dependent targets are unit tests.
|
||
|
"UNIT_TEST",
|
||
|
],
|
||
|
includes = [
|
||
|
# The gtest-all.cc file uses #include "gtest/gtest.h"
|
||
|
"include",
|
||
|
],
|
||
|
copts = select({
|
||
|
"@platforms//os:windows": [
|
||
|
# Disable unused variable warning.
|
||
|
"/wd4800",
|
||
|
] + WIN_COMMON_COPTS,
|
||
|
"@platforms//os:linux": LINUX_COMMON_COPTS,
|
||
|
"@platforms//os:macos": MAC_COMMON_COPTS,
|
||
|
"//conditions:default": None,
|
||
|
}) + select({
|
||
|
"//:windows_opt": WIN_COMMON_COPTS_RELEASE,
|
||
|
"//:windows_dbg": WIN_COMMON_COPTS_DEBUG,
|
||
|
"//:windows_fastbuild": WIN_COMMON_COPTS_DEBUG,
|
||
|
"//:linux_opt": LINUX_COMMON_COPTS_RELEASE,
|
||
|
"//:linux_dbg": LINUX_COMMON_COPTS_DEBUG,
|
||
|
"//:linux_fastbuild": LINUX_COMMON_COPTS_DEBUG,
|
||
|
"//:macos_opt": MAC_COMMON_COPTS_RELEASE,
|
||
|
"//:macos_dbg": MAC_COMMON_COPTS_DEBUG,
|
||
|
"//:macos_fastbuild": MAC_COMMON_COPTS_DEBUG,
|
||
|
"//conditions:default": None,
|
||
|
}),
|
||
|
)
|