| # Copyright 2018 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/fuzzing/fuzzer.gni") |
| import("//build/test/test_package.gni") |
| import("//build/testing/environments.gni") |
| |
| group("tests") { |
| testonly = true |
| |
| deps = [ |
| ":cmx_tests", |
| "facet_parser:tests", |
| ] |
| } |
| |
| source_set("cmx") { |
| sources = [ |
| "cmx.cc", |
| "cmx.h", |
| "program.cc", |
| "program.h", |
| "runtime.cc", |
| "runtime.h", |
| "sandbox.cc", |
| "sandbox.h", |
| ] |
| |
| deps = [ |
| "//garnet/public/lib/json", |
| "//src/lib/cmx/facet_parser:cmx_facet_parser", |
| "//src/lib/fxl", |
| "//src/lib/pkg_url", |
| "//zircon/public/lib/fit", |
| "//zircon/system/ulib/trace", |
| |
| # TODO(fxbug.dev/57392): Move it back to //third_party once unification completes. |
| "//zircon/third_party/rapidjson", |
| ] |
| } |
| |
| executable("cmx_unittests") { |
| testonly = true |
| |
| sources = [ |
| "cmx_unittest.cc", |
| "program_unittest.cc", |
| "runtime_unittest.cc", |
| "sandbox_unittest.cc", |
| ] |
| |
| deps = [ |
| ":cmx", |
| "//garnet/public/lib/gtest", |
| "//garnet/public/lib/json", |
| "//src/lib/fxl/test:gtest_main", |
| "//src/lib/pkg_url", |
| "//third_party/googletest:gmock", |
| |
| # TODO(fxbug.dev/57392): Move it back to //third_party once unification completes. |
| "//zircon/third_party/rapidjson", |
| ] |
| |
| # TODO(fxbug.dev/46552): Fix the leaks and remove this. |
| deps += [ "//build/config/sanitizers:suppress-lsan.DO-NOT-USE-THIS" ] |
| } |
| |
| test_package("cmx_tests") { |
| deps = [ ":cmx_unittests" ] |
| tests = [ |
| { |
| name = "cmx_unittests" |
| environments = [ emu_env ] |
| }, |
| ] |
| } |
| |
| fuzzers_package("cmx_fuzzers") { |
| fuzzers = [ ":cmx_fuzzer" ] |
| } |
| |
| fuzzer("cmx_fuzzer") { |
| sources = [ "cmx_fuzztest.cc" ] |
| deps = [ |
| ":cmx", |
| "//src/lib/files", |
| |
| # TODO(fxbug.dev/57392): Move it back to //third_party once unification completes. |
| "//zircon/third_party/rapidjson", |
| ] |
| public_deps = [ |
| "//garnet/public/lib/json", |
| "//src/lib/fxl", |
| ] |
| } |