Summary: Due to testutil depending on :yoga, we are always linking against both :yoga and :yogaForDebug in tests. This is only working right now due to luck in how Buck orders the link line. Adding a dependency is silly but it enforces that Buck maintain the ordering that we currently have even when it changes how it does its traversal. Reviewed By: philipjameson Differential Revision: D15973581 fbshipit-source-id: 3d18aff578ee4d56175ce5efae52b56aeb2d9586
59 lines
1.6 KiB
Python
59 lines
1.6 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", "BASE_COMPILER_FLAGS", "GTEST_TARGET", "LIBRARY_COMPILER_FLAGS", "subdir_glob", "yoga_cxx_library", "yoga_cxx_test", "yoga_dep")
|
|
|
|
GMOCK_OVERRIDE_FLAGS = [
|
|
# gmock does not mark mocked methods as override, ignore the warnings in tests
|
|
"-Wno-inconsistent-missing-override",
|
|
]
|
|
|
|
TEST_COMPILER_FLAGS = BASE_COMPILER_FLAGS + GMOCK_OVERRIDE_FLAGS + [
|
|
"-DDEBUG",
|
|
"-DYG_ENABLE_EVENTS",
|
|
]
|
|
|
|
yoga_cxx_library(
|
|
name = "yoga",
|
|
srcs = glob(["yoga/**/*.cpp"]),
|
|
compiler_flags = LIBRARY_COMPILER_FLAGS,
|
|
public_include_directories = ["."],
|
|
raw_headers = glob(["yoga/**/*.h"]),
|
|
soname = "libyogacore.$(ext)",
|
|
tests = [":YogaTests"],
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
yoga_dep("lib/fb:ndklog"),
|
|
],
|
|
)
|
|
|
|
yoga_cxx_library(
|
|
name = "yogaForDebug",
|
|
srcs = glob(["yoga/**/*.cpp"]),
|
|
compiler_flags = TEST_COMPILER_FLAGS,
|
|
public_include_directories = ["."],
|
|
raw_headers = glob(["yoga/**/*.h"]),
|
|
soname = "libyogacore.$(ext)",
|
|
tests = [":YogaTests"],
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
":yoga",
|
|
yoga_dep("lib/fb:ndklog"),
|
|
],
|
|
)
|
|
|
|
yoga_cxx_test(
|
|
name = "YogaTests",
|
|
srcs = glob(["tests/*.cpp"]),
|
|
headers = subdir_glob([("", "yoga/**/*.h")]),
|
|
compiler_flags = TEST_COMPILER_FLAGS,
|
|
contacts = ["emilsj@fb.com"],
|
|
visibility = ["PUBLIC"],
|
|
deps = [
|
|
":yogaForDebug",
|
|
yoga_dep("testutil:testutil"),
|
|
GTEST_TARGET,
|
|
],
|
|
)
|