# Copyright 2015 The Chromium 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/buildflag_header.gni") import("//build/config/ios/ios_sdk.gni") source_set("common") { configs += [ "//build/config/compiler:enable_arc" ] sources = [ "channel_info.h", "channel_info.mm", "string_util.h", "string_util.mm", "x_callback_url.cc", "x_callback_url.h", ] deps = [ "//base", "//components/version_info", "//components/version_info:version_string", "//ios/chrome/common/app_group:main_app", "//net", "//url", ] public_deps = [ ":timing", ] libs = [ "QuartzCore.framework" ] } source_set("common_extension") { sources = [ "highlight_button.h", "highlight_button.mm", ] libs = [ "UIKit.framework" ] public_deps = [ ":timing", ] configs += [ "//build/config/compiler:enable_arc" ] } source_set("timing") { sources = [ "material_timing.h", "material_timing.mm", ] libs = [ "QuartzCore.framework" ] configs += [ "//build/config/compiler:enable_arc" ] } source_set("unit_tests") { testonly = true sources = [ "block_unittest.mm", "ns_regular_expression_unittest.mm", "string_util_unittest.mm", "x_callback_url_unittest.cc", ] deps = [ ":common", ":noarc_unit_tests", "//base", "//testing/gtest", ] configs += [ "//build/config/compiler:enable_arc" ] } # The block_unittest.mm has been duplicated during the migration of iOS code # to ARC (see crbug.com/624363). As this test checks the interaction of C++ # objects and Objective-C blocks, it is necessary to keep two version of the # test compiled with and without ARC. Remove this file when the conversion to # ARC is complete. source_set("noarc_unit_tests") { visibility = [ ":unit_tests" ] testonly = true sources = [ "noarc_block_unittest.mm", ] deps = [ ":common", "//base", "//testing/gtest", ] } buildflag_header("ios_app_bundle_id_prefix_buildflags") { header = "ios_app_bundle_id_prefix_buildflags.h" flags = [ "IOS_APP_BUNDLE_ID_PREFIX=\"$ios_app_bundle_id_prefix\"" ] }