mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
ceae48c0f7
Summary: While it would be better to be able to do all of the ownership metadata at the Buck macro level, that proved to be more work than expected. This diff adds the corresponding pfh label to all targets in `xplat/js/react-native-github` that have a Supermodule label. Once the migration is complete the Supermodules labels will be able to be removed. Reviewed By: cortinico Differential Revision: D35221544 fbshipit-source-id: d87d5e266dfb5e6ee087251dc34dff5db299bbaf
96 lines
3.1 KiB
Python
96 lines
3.1 KiB
Python
load(
|
|
"//tools/build_defs/oss:rn_defs.bzl",
|
|
"ANDROID",
|
|
"APPLE",
|
|
"CXX",
|
|
"YOGA_CXX_TARGET",
|
|
"fb_xplat_cxx_test",
|
|
"get_apple_compiler_flags",
|
|
"get_apple_inspector_flags",
|
|
"get_preprocessor_flags_for_build_mode",
|
|
"react_native_target",
|
|
"react_native_xplat_target",
|
|
"rn_xplat_cxx_library",
|
|
"subdir_glob",
|
|
)
|
|
|
|
APPLE_COMPILER_FLAGS = get_apple_compiler_flags()
|
|
|
|
rn_xplat_cxx_library(
|
|
name = "androidswitch",
|
|
srcs = glob(
|
|
["androidswitch/react/renderer/components/androidswitch/*.cpp"],
|
|
exclude = glob(["tests/**/*.cpp"]),
|
|
),
|
|
headers = glob(
|
|
["androidswitch/react/renderer/components/androidswitch/*.h"],
|
|
exclude = glob(["tests/**/*.h"]),
|
|
),
|
|
header_namespace = "",
|
|
exported_headers = subdir_glob(
|
|
[
|
|
("", "*.h"),
|
|
("androidswitch/react/renderer/components/androidswitch", "*.h"),
|
|
],
|
|
prefix = "react/renderer/components/androidswitch",
|
|
),
|
|
cxx_tests = [":tests"],
|
|
fbandroid_deps = [
|
|
react_native_target("jni/react/jni:jni"),
|
|
],
|
|
fbobjc_compiler_flags = APPLE_COMPILER_FLAGS,
|
|
fbobjc_preprocessor_flags = get_preprocessor_flags_for_build_mode() + get_apple_inspector_flags(),
|
|
force_static = True,
|
|
labels = [
|
|
"pfh:ReactNative_CommonInfrastructurePlaceholde",
|
|
"supermodule:xplat/default/public.react_native.infra",
|
|
],
|
|
platforms = (ANDROID, APPLE, CXX),
|
|
preprocessor_flags = [
|
|
"-DLOG_TAG=\"ReactNative\"",
|
|
"-DWITH_FBSYSTRACE=1",
|
|
],
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
"//third-party/glog:glog",
|
|
"//xplat/fbsystrace:fbsystrace",
|
|
"//xplat/folly:headers_only",
|
|
"//xplat/folly:memory",
|
|
"//xplat/folly:molly",
|
|
YOGA_CXX_TARGET,
|
|
react_native_xplat_target("react/renderer/debug:debug"),
|
|
react_native_xplat_target("react/renderer/core:core"),
|
|
react_native_xplat_target("react/renderer/graphics:graphics"),
|
|
react_native_xplat_target("react/renderer/components/view:view"),
|
|
react_native_xplat_target("react/renderer/uimanager:uimanager"),
|
|
react_native_xplat_target("react/renderer/componentregistry:componentregistry"),
|
|
"//xplat/js/react-native-github:generated_components-rncore",
|
|
],
|
|
)
|
|
|
|
fb_xplat_cxx_test(
|
|
name = "tests",
|
|
srcs = glob(["tests/**/*.cpp"]),
|
|
headers = glob(["tests/**/*.h"]),
|
|
compiler_flags = [
|
|
"-fexceptions",
|
|
"-frtti",
|
|
"-std=c++17",
|
|
"-Wall",
|
|
],
|
|
contacts = ["oncall+react_native@xmail.facebook.com"],
|
|
platforms = (
|
|
# `Apple` and `Android` flavors are disabled because the module depends on `textlayoutmanager` which requires real an Emulator/Simulator to run.
|
|
# At the same time, the code of tests does not rely on the simulator capabilities and it would be wasteful to add `fbandroid_use_instrumentation_test = True`.
|
|
# (Beware of this option though.)
|
|
# ANDROID,
|
|
# APPLE,
|
|
CXX
|
|
),
|
|
deps = [
|
|
":androidswitch",
|
|
"//xplat/folly:molly",
|
|
"//xplat/third-party/gmock:gtest",
|
|
],
|
|
)
|