1load( 2 "//tools/build_defs/oss:rn_defs.bzl", 3 "ANDROID", 4 "APPLE", 5 "CXX", 6 "fb_xplat_cxx_test", 7 "get_apple_compiler_flags", 8 "get_apple_inspector_flags", 9 "get_preprocessor_flags_for_build_mode", 10 "react_native_xplat_target", 11 "rn_xplat_cxx_library", 12 "subdir_glob", 13) 14 15APPLE_COMPILER_FLAGS = get_apple_compiler_flags() 16 17rn_xplat_cxx_library( 18 name = "animations", 19 srcs = glob( 20 ["**/*.cpp"], 21 exclude = glob(["tests/**/*.cpp"]), 22 ), 23 headers = glob( 24 ["**/*.h"], 25 exclude = glob(["tests/**/*.h"]), 26 ), 27 header_namespace = "", 28 exported_headers = subdir_glob( 29 [ 30 ("", "*.h"), 31 ], 32 prefix = "react/renderer/animations", 33 ), 34 compiler_flags = [ 35 "-lm", 36 ], 37 compiler_flags_pedantic = True, 38 # TODO(145803035) Fix Android tests 39 fbandroid_tests_override = [], 40 fbobjc_compiler_flags = APPLE_COMPILER_FLAGS, 41 fbobjc_preprocessor_flags = get_preprocessor_flags_for_build_mode() + get_apple_inspector_flags(), 42 force_static = True, 43 labels = [ 44 "pfh:ReactNative_CommonInfrastructurePlaceholder", 45 ], 46 macosx_tests_override = [], 47 platforms = (ANDROID, APPLE, CXX), 48 preprocessor_flags = [ 49 "-DLOG_TAG=\"ReactNative\"", 50 "-DWITH_FBSYSTRACE=1", 51 ], 52 tests = [":tests"], 53 visibility = ["PUBLIC"], 54 deps = [ 55 "//third-party/glog:glog", 56 "//xplat/fbsystrace:fbsystrace", 57 "//xplat/jsi:jsi", 58 react_native_xplat_target("react/config:config"), 59 react_native_xplat_target("react/debug:debug"), 60 react_native_xplat_target("react/renderer/componentregistry:componentregistry"), 61 react_native_xplat_target("react/renderer/components/view:view"), 62 react_native_xplat_target("react/renderer/components/image:image"), 63 react_native_xplat_target("react/renderer/core:core"), 64 react_native_xplat_target("react/renderer/debug:debug"), 65 react_native_xplat_target("react/renderer/mounting:mounting"), 66 react_native_xplat_target("react/renderer/uimanager:uimanager"), 67 react_native_xplat_target("runtimeexecutor:runtimeexecutor"), 68 ], 69) 70 71fb_xplat_cxx_test( 72 name = "tests", 73 srcs = glob(["tests/**/*.cpp"]), 74 headers = glob(["tests/**/*.h"]), 75 compiler_flags = [ 76 "-fexceptions", 77 "-frtti", 78 "-std=c++17", 79 "-Wall", 80 ], 81 contacts = ["[email protected]"], 82 platforms = (ANDROID, APPLE, CXX), 83 deps = [ 84 ":animations", 85 "//xplat/third-party/gmock:gtest", 86 react_native_xplat_target("react/config:config"), 87 react_native_xplat_target("react/renderer/components/image:image"), 88 react_native_xplat_target("react/renderer/components/root:root"), 89 react_native_xplat_target("react/renderer/components/scrollview:scrollview"), 90 react_native_xplat_target("react/renderer/components/view:view"), 91 react_native_xplat_target("react/test_utils:test_utils"), 92 "//xplat/js/react-native-github:generated_components-rncore", 93 ], 94) 95