| # Copyright 2018 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//mojo/public/tools/bindings/mojom.gni") |
| |
| component("base") { |
| output_name = "mojo_base_lib" |
| |
| sources = [ |
| "big_buffer.cc", |
| "big_buffer.h", |
| "shared_memory_utils.cc", |
| "shared_memory_utils.h", |
| ] |
| |
| defines = [ "IS_MOJO_BASE_IMPL" ] |
| |
| public_deps = [ |
| "//base", |
| "//mojo/core/embedder", |
| "//mojo/public/cpp/bindings", |
| "//mojo/public/cpp/system", |
| ] |
| } |
| |
| component("typemap_traits") { |
| output_name = "mojo_base_typemap_traits" |
| |
| sources = [ |
| "big_string_mojom_traits.cc", |
| "big_string_mojom_traits.h", |
| "memory_allocator_dump_cross_process_uid_mojom_traits.cc", |
| "memory_allocator_dump_cross_process_uid_mojom_traits.h", |
| "memory_pressure_level_mojom_traits.cc", |
| "memory_pressure_level_mojom_traits.h", |
| "message_pump_type_mojom_traits.cc", |
| "message_pump_type_mojom_traits.h", |
| "process_id_mojom_traits.cc", |
| "process_id_mojom_traits.h", |
| "ref_counted_memory_mojom_traits.cc", |
| "ref_counted_memory_mojom_traits.h", |
| "string16_mojom_traits.cc", |
| "string16_mojom_traits.h", |
| "text_direction_mojom_traits.cc", |
| "text_direction_mojom_traits.h", |
| "thread_type_mojom_traits.cc", |
| "thread_type_mojom_traits.h", |
| ] |
| |
| if (is_android) { |
| sources += [ |
| "application_state_mojom_traits.cc", |
| "application_state_mojom_traits.h", |
| ] |
| } |
| |
| if (is_win) { |
| sources += [ |
| "logfont_win_mojom_traits.cc", |
| "logfont_win_mojom_traits.h", |
| "wstring_mojom_traits.cc", |
| "wstring_mojom_traits.h", |
| ] |
| } |
| |
| defines = [ "IS_MOJO_BASE_TRAITS_IMPL" ] |
| |
| public_deps = [ |
| ":shared_typemap_traits", |
| "//base", |
| "//mojo/public/cpp/base", |
| "//mojo/public/mojom/base:base_shared", |
| ] |
| } |
| |
| # Normally typemap traits sources should be build directly into mojom targets |
| # via the typemap file. This target is for typemapped mojo_base types whose |
| # traits are shared between chromium and blink variants. |
| component("shared_typemap_traits") { |
| output_name = "mojo_base_shared_typemap_traits" |
| |
| sources = [ |
| "big_buffer_mojom_traits.cc", |
| "big_buffer_mojom_traits.h", |
| "byte_string_mojom_traits.cc", |
| "byte_string_mojom_traits.h", |
| "file_info_mojom_traits.cc", |
| "file_info_mojom_traits.h", |
| "file_mojom_traits.cc", |
| "file_mojom_traits.h", |
| "file_path_mojom_traits.cc", |
| "file_path_mojom_traits.h", |
| "generic_pending_associated_receiver_mojom_traits.cc", |
| "generic_pending_associated_receiver_mojom_traits.h", |
| "generic_pending_receiver_mojom_traits.cc", |
| "generic_pending_receiver_mojom_traits.h", |
| "int128_mojom_traits.cc", |
| "int128_mojom_traits.h", |
| "read_only_buffer_mojom_traits.cc", |
| "read_only_buffer_mojom_traits.h", |
| "read_only_file_mojom_traits.cc", |
| "read_only_file_mojom_traits.h", |
| "safe_base_name_mojom_traits.cc", |
| "safe_base_name_mojom_traits.h", |
| "shared_memory_mojom_traits.cc", |
| "shared_memory_mojom_traits.h", |
| "time_mojom_traits.cc", |
| "time_mojom_traits.h", |
| "token_mojom_traits.cc", |
| "token_mojom_traits.h", |
| "unguessable_token_mojom_traits.cc", |
| "unguessable_token_mojom_traits.h", |
| "values_mojom_traits.cc", |
| "values_mojom_traits.h", |
| "version_mojom_traits.cc", |
| "version_mojom_traits.h", |
| ] |
| |
| defines = [ "IS_MOJO_BASE_SHARED_TRAITS_IMPL" ] |
| |
| public_deps = [ |
| ":base", |
| "//base:i18n", |
| "//mojo/public/mojom/base:base_shared", |
| "//third_party/abseil-cpp:absl", |
| ] |
| } |
| |
| source_set("tests") { |
| testonly = true |
| |
| sources = [ |
| "big_buffer_unittest.cc", |
| "big_string_unittest.cc", |
| "byte_string_unittest.cc", |
| "file_path_unittest.cc", |
| "file_unittest.cc", |
| "int128_unittest.cc", |
| "memory_allocator_dump_cross_process_uid_unittest.cc", |
| "process_id_unittest.cc", |
| "read_only_buffer_unittest.cc", |
| "ref_counted_memory_unittest.cc", |
| "safe_base_name_unittest.cc", |
| "shared_memory_unittest.cc", |
| "string16_unittest.cc", |
| "text_direction_unittest.cc", |
| "thread_type_unittest.cc", |
| "time_unittest.cc", |
| "token_unittest.cc", |
| "unguessable_token_unittest.cc", |
| "values_unittest.cc", |
| "version_unittest.cc", |
| ] |
| |
| public_deps = [ |
| ":base", |
| ":shared_typemap_traits", |
| "//base", |
| "//base/test:test_support", |
| "//mojo/public/cpp/test_support:test_utils", |
| "//mojo/public/mojom/base", |
| "//testing/gtest", |
| "//third_party/abseil-cpp:absl", |
| ] |
| |
| if (is_fuchsia) { |
| public_deps += [ "//mojo/public/cpp/base/fuchsia:unittests" ] |
| } |
| } |