Summary: We are passing layout context from yoga as event data for Layout Pass End event and it is being then used to get the local reference of node so that we can pass it as method parameter to java layer Reviewed By: davidaurelio Differential Revision: D15602923 fbshipit-source-id: 54b25956af098700cea25c4f7f8ffe0b9117432c
80 lines
2.0 KiB
Python
80 lines
2.0 KiB
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/oss:yoga_defs.bzl", "ANDROID", "CXX_LIBRARY_WHITELIST", "FBJNI_JAVA_TARGET", "FBJNI_TARGET", "INFER_ANNOTATIONS_TARGET", "JNI_TARGET", "JSR_305_TARGET", "JUNIT_TARGET", "PROGRUARD_ANNOTATIONS_TARGET", "SOLOADER_TARGET", "yoga_cxx_lib", "yoga_cxx_library", "yoga_dep", "yoga_java_binary", "yoga_java_library", "yoga_java_test")
|
|
|
|
CXX_LIBRARY_WHITELIST_FOR_TESTS = CXX_LIBRARY_WHITELIST + [
|
|
yoga_cxx_lib("testutil:jni"),
|
|
yoga_cxx_lib("testutil:testutil"),
|
|
]
|
|
|
|
yoga_cxx_library(
|
|
name = "jni",
|
|
srcs = glob(["jni/*.cpp"]),
|
|
header_namespace = "yoga/java",
|
|
exported_headers = glob(["jni/*.h"]),
|
|
allow_jni_merging = True,
|
|
compiler_flags = [
|
|
"-fno-omit-frame-pointer",
|
|
"-fexceptions",
|
|
"-fPIC",
|
|
"-Wall",
|
|
"-Werror",
|
|
"-Os",
|
|
"-std=c++11",
|
|
],
|
|
platforms = ANDROID,
|
|
preprocessor_flags = [
|
|
"-DFBJNI_WITH_FAST_CALLS",
|
|
],
|
|
soname = "libyoga.$(ext)",
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
FBJNI_TARGET,
|
|
JNI_TARGET,
|
|
yoga_dep(":yoga"),
|
|
],
|
|
)
|
|
|
|
yoga_java_library(
|
|
name = "java",
|
|
srcs = glob(["com/facebook/yoga/*.java"]),
|
|
required_for_source_only_abi = True,
|
|
source = "1.7",
|
|
target = "1.7",
|
|
tests = [
|
|
yoga_dep("java:tests"),
|
|
],
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
":jni",
|
|
INFER_ANNOTATIONS_TARGET,
|
|
JSR_305_TARGET,
|
|
PROGRUARD_ANNOTATIONS_TARGET,
|
|
SOLOADER_TARGET,
|
|
],
|
|
)
|
|
|
|
yoga_java_test(
|
|
name = "tests",
|
|
srcs = glob(["tests/**/*.java"]),
|
|
cxx_library_whitelist = CXX_LIBRARY_WHITELIST_FOR_TESTS,
|
|
use_cxx_libraries = True,
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
":java",
|
|
yoga_dep("testutil:java"),
|
|
JUNIT_TARGET,
|
|
],
|
|
)
|
|
|
|
yoga_java_binary(
|
|
name = "yoga",
|
|
deps = [
|
|
":java",
|
|
FBJNI_JAVA_TARGET,
|
|
],
|
|
)
|