Files
react-native/ReactCommon/jsi/BUCK
T
Kevin Gozali 30822e3923 make RN infra labels public
Summary:
Internal build target labeling.

Changelog: [Internal]

Reviewed By: zlern2k

Differential Revision: D20152676

fbshipit-source-id: 89615a0b3a6f3994b18f2c07b86d0ae93e052327
2020-02-28 12:46:49 -08:00

118 lines
2.6 KiB
Python

# BUILD FILE SYNTAX: SKYLARK
load("@fbsource//tools/build_defs:default_platform_defs.bzl", "APPLE", "IOS", "MACOSX")
load("//tools/build_defs/oss:rn_defs.bzl", "react_native_xplat_dep", "rn_xplat_cxx_library")
rn_xplat_cxx_library(
name = "jsi",
srcs = [
"jsi/jsi.cpp",
],
header_namespace = "",
exported_headers = [
"jsi/instrumentation.h",
"jsi/jsi.h",
"jsi/jsi-inl.h",
"jsi/jsilib.h",
],
compiler_flags = [
"-O3",
"-fexceptions",
"-frtti",
"-std=c++14",
"-Wall",
"-Werror",
"-Wextra",
"-Wcast-qual",
"-Wdelete-non-virtual-dtor",
"-Wwrite-strings",
],
cxx_compiler_flags = [
"-Wglobal-constructors",
"-Wmissing-prototypes",
],
fbobjc_compiler_flags = [
"-Wglobal-constructors",
"-Wmissing-prototypes",
],
visibility = ["PUBLIC"],
)
rn_xplat_cxx_library(
name = "JSIDynamic",
srcs = [
"jsi/JSIDynamic.cpp",
],
header_namespace = "",
exported_headers = [
"jsi/JSIDynamic.h",
],
compiler_flags = [
"-fexceptions",
"-frtti",
],
fbobjc_force_static = True,
visibility = [
"PUBLIC",
],
xcode_public_headers_symlinks = True,
deps = [
"fbsource//xplat/folly:molly",
react_native_xplat_dep("jsi:jsi"),
],
)
rn_xplat_cxx_library(
name = "JSCRuntime",
srcs = [
"JSCRuntime.cpp",
],
header_namespace = "jsi",
exported_headers = [
"JSCRuntime.h",
],
apple_sdks = (IOS, MACOSX),
cxx_exported_platform_linker_flags = [
(
"macosx-x86_64",
[
"-framework",
"JavaScriptCore",
],
),
],
cxx_platform_deps = [
(
"^(linux|gcc|platform)",
[
"fbsource//xplat/jsc:jsc",
],
),
],
fbandroid_compiler_flags = [
"-fexceptions",
"-frtti",
"-O3",
],
fbandroid_deps = [
"fbsource//xplat/jsc:jsc",
],
fbobjc_compiler_flags = [
"-Os",
],
fbobjc_frameworks = [
"$SDKROOT/System/Library/Frameworks/JavaScriptCore.framework",
],
fbobjc_labels = ["supermodule:ios/default/public.react_native.infra"],
# TODO (T55502220): Remove when iOS 9.0 deprecation is complete everywhere.
fbobjc_target_sdk_version = "9.0",
platforms = APPLE,
visibility = ["PUBLIC"],
xplat_mangled_args = {
"soname": "libjscjsi.$(ext)",
},
exported_deps = [
react_native_xplat_dep("jsi:jsi"),
],
)