129 lines
2.5 KiB
Plaintext
129 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.
|
||
|
|
||
|
PRODUCT_NAME = "ceftests"
|
||
|
PKG_NAME = "//tests/{}".format(PRODUCT_NAME)
|
||
|
|
||
|
# Allow access from subpackages only.
|
||
|
package(default_visibility = [
|
||
|
":__subpackages__",
|
||
|
])
|
||
|
|
||
|
load("@rules_cc//cc:defs.bzl", "cc_library", "objc_library")
|
||
|
|
||
|
#
|
||
|
# Source file lists.
|
||
|
#
|
||
|
|
||
|
srcs_renderer_mac = [
|
||
|
${ceftests_sources_mac_helper}
|
||
|
]
|
||
|
|
||
|
srcs_browser = [
|
||
|
${ceftests_sources_common}
|
||
|
]
|
||
|
|
||
|
srcs_browser_linux = [
|
||
|
${ceftests_sources_linux}
|
||
|
]
|
||
|
|
||
|
srcs_browser_mac = [
|
||
|
${ceftests_sources_mac}
|
||
|
]
|
||
|
|
||
|
srcs_browser_win = [
|
||
|
${ceftests_sources_win}
|
||
|
]
|
||
|
|
||
|
filegroup(
|
||
|
name = "Resources",
|
||
|
srcs = glob(["resources/**"]),
|
||
|
)
|
||
|
|
||
|
#
|
||
|
# MacOS targets.
|
||
|
#
|
||
|
|
||
|
# Copy the 'net' folder into app bundle Resources.
|
||
|
filegroup(
|
||
|
name = "ResourcesMac",
|
||
|
srcs = ["resources/net"],
|
||
|
)
|
||
|
|
||
|
objc_library(
|
||
|
name = "BrowserLibMac",
|
||
|
srcs = srcs_browser + srcs_browser_mac,
|
||
|
target_compatible_with = [
|
||
|
"@platforms//os:macos",
|
||
|
],
|
||
|
deps = [
|
||
|
"//:cef_wrapper",
|
||
|
"//tests/gtest",
|
||
|
"//tests/shared:BrowserLibMacCefTests",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
objc_library(
|
||
|
name = "RendererLibMac",
|
||
|
srcs = srcs_renderer_mac,
|
||
|
target_compatible_with = [
|
||
|
"@platforms//os:macos",
|
||
|
],
|
||
|
deps = [
|
||
|
"//:cef_wrapper",
|
||
|
"//tests/gtest",
|
||
|
"//tests/shared:RendererLibMacCefTests",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
#
|
||
|
# Windows targets.
|
||
|
#
|
||
|
|
||
|
# Allow access from the declare_exe target.
|
||
|
filegroup(
|
||
|
name = "ResourceH",
|
||
|
srcs = [
|
||
|
"resource.h"
|
||
|
]
|
||
|
)
|
||
|
|
||
|
# Include files directly in the declare_exe target. This simplifies the build
|
||
|
# configuration and avoids issues with Windows discarding symbols (like WinMain)
|
||
|
# when linking libraries.
|
||
|
filegroup(
|
||
|
name = "SrcsWin",
|
||
|
srcs = srcs_browser + srcs_browser_win,
|
||
|
target_compatible_with = [
|
||
|
"@platforms//os:windows",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
#
|
||
|
# Linux targets.
|
||
|
#
|
||
|
|
||
|
# Include files directly in the declare_exe target. This simplifies the build
|
||
|
# configuration.
|
||
|
filegroup(
|
||
|
name = "SrcsLinux",
|
||
|
srcs = srcs_browser + srcs_browser_linux,
|
||
|
target_compatible_with = [
|
||
|
"@platforms//os:linux",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
#
|
||
|
# Alias to platform-specific build targets.
|
||
|
#
|
||
|
|
||
|
alias(
|
||
|
name = PRODUCT_NAME,
|
||
|
actual = select({
|
||
|
"@platforms//os:linux": "{}/linux:{}".format(PKG_NAME, PRODUCT_NAME),
|
||
|
"@platforms//os:macos": "{}/mac:{}".format(PKG_NAME, PRODUCT_NAME),
|
||
|
"@platforms//os:windows": "{}/win:{}".format(PKG_NAME, PRODUCT_NAME),
|
||
|
}),
|
||
|
)
|