# Copyright (c) 2025 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 = "gmock", srcs = [ "include/gmock/gmock.h", "src/gmock-all.cc", ], includes = [ # The gmock-all.cc file uses #include "gmock/gmock.h" "include", ], deps = [ "//tests/gtest:gtest", ], 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, }), )