mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
f760f90f1e
Summary: This defines a separate codegen entrypoint for the entire react-native repo, picking up all JS files under Libraries/ subdir. Buck can then build the codegen library targets. This is a pre-req for removing the checked in Java spec files for NativeModules. Changelog: [Internal] Reviewed By: RSNara Differential Revision: D24518569 fbshipit-source-id: 2ece53c7274698e2431a00e590fad213e3a0bece
37 lines
1008 B
Python
37 lines
1008 B
Python
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# This source code is licensed under the MIT license found in the
|
|
# LICENSE file in the root directory of this source tree.
|
|
|
|
load("//tools/build_defs:fb_native_wrapper.bzl", "fb_native")
|
|
load(
|
|
"//tools/build_defs/oss:rn_codegen_defs.bzl",
|
|
"rn_codegen_modules",
|
|
)
|
|
load(
|
|
"//tools/build_defs/oss:rn_defs.bzl",
|
|
"react_native_root_target",
|
|
)
|
|
|
|
fb_native.genrule(
|
|
name = "react_native_codegen_schema",
|
|
srcs = glob(
|
|
[
|
|
"**/*.js",
|
|
],
|
|
exclude = [
|
|
"**/__tests__/**/*",
|
|
],
|
|
),
|
|
cmd = "$(exe {}) $OUT $SRCS".format(react_native_root_target("packages/react-native-codegen:write_to_json")),
|
|
out = "schema.json",
|
|
labels = ["codegen_rule"],
|
|
)
|
|
|
|
rn_codegen_modules(
|
|
name = "FBReactNativeSpec",
|
|
library_labels = ["supermodule:xplat/default/public.react_native.infra"],
|
|
native_module_spec_name = "FBReactNativeSpec",
|
|
schema_target = ":react_native_codegen_schema",
|
|
)
|