cef/tools/distrib/bazel/tests-cefclient-win-BUILD.bazel
Marshall Greenblatt 08ae3a44a6 bazel: Fix resource paths as external repo (see #3757)
- Headers that are included by .rc files need to be supplied to
  `declare_exe` via the `resources_deps` attribute (passed as the `deps
  attribute to `compile_rc`). The headers must be part of a cc_library
  target via either the `hdrs` or `srcs` attribute.
- File paths for CEF resources are prefixed with "external/<repo>"
  when CEF is loaded as an external repo. Update `copy_filegroups` to
  work with these paths.
2024-08-02 16:51:11 -04:00

62 lines
1.4 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.
PRODUCT_NAME = "cefclient"
PKG_NAME = "//tests/{}".format(PRODUCT_NAME)
# Allow access from the parent package only.
package(default_visibility = [
"{}:__pkg__".format(PKG_NAME),
])
load("//bazel/win:exe_helpers.bzl", "declare_exe")
#
# Windows executable target.
#
LINK_LIBS = [
"comdlg32.lib",
"d3d11.lib",
"glu32.lib",
"imm32.lib",
"opengl32.lib",
]
DELAYLOAD_DLLS = [
"comdlg32.dll",
"glu32.dll",
"oleaut32.dll",
"opengl32.dll",
]
declare_exe(
name = PRODUCT_NAME,
srcs = [
"{}:SrcsWin".format(PKG_NAME),
"//tests/shared:SrcsWin",
],
rc_file = "{}.rc".format(PRODUCT_NAME),
manifest_srcs = [
"compatibility.manifest",
"{}.exe.manifest".format(PRODUCT_NAME),
],
resources_srcs = [
"{}:Resources".format(PKG_NAME),
"{}.ico".format(PRODUCT_NAME),
"small.ico",
"//tests/shared:Resources",
],
resources_deps = [
"{}:ResourceH".format(PKG_NAME),
],
linkopts = [
"/SUBSYSTEM:WINDOWS",
] + [
"/DEFAULTLIB:{}".format(lib) for lib in LINK_LIBS
] + [
"/DELOAYLOAD:{}".format(lib) for lib in DELAYLOAD_DLLS
],
)