|  | # Copyright 2014 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. | 
|  |  | 
|  | component("sql") { | 
|  | sources = [ | 
|  | "connection.cc", | 
|  | "connection.h", | 
|  | "error_delegate_util.cc", | 
|  | "error_delegate_util.h", | 
|  | "init_status.h", | 
|  | "meta_table.cc", | 
|  | "meta_table.h", | 
|  | "recovery.cc", | 
|  | "recovery.h", | 
|  | "statement.cc", | 
|  | "statement.h", | 
|  | "transaction.cc", | 
|  | "transaction.h", | 
|  | ] | 
|  |  | 
|  | defines = [ "SQL_IMPLEMENTATION" ] | 
|  |  | 
|  | if (is_win) { | 
|  | cflags = [ "/wd4267" ]  # size_t to int. | 
|  | } | 
|  |  | 
|  | deps = [ | 
|  | "//base", | 
|  | "//third_party/sqlite", | 
|  | "//base/third_party/dynamic_annotations", | 
|  | ] | 
|  | } | 
|  |  | 
|  | source_set("test_support") { | 
|  | testonly = true | 
|  | sources = [ | 
|  | "test/error_callback_support.cc", | 
|  | "test/error_callback_support.h", | 
|  | "test/scoped_error_ignorer.cc", | 
|  | "test/scoped_error_ignorer.h", | 
|  | "test/test_helpers.cc", | 
|  | "test/test_helpers.h", | 
|  | ] | 
|  |  | 
|  | deps = [ | 
|  | ":sql", | 
|  | "//base", | 
|  | "//testing/gtest", | 
|  | ] | 
|  | } | 
|  |  | 
|  | test("sql_unittests") { | 
|  | sources = [ | 
|  | "connection_unittest.cc", | 
|  | "meta_table_unittest.cc", | 
|  | "recovery_unittest.cc", | 
|  | "sqlite_features_unittest.cc", | 
|  | "statement_unittest.cc", | 
|  | "test/paths.cc", | 
|  | "test/paths.h", | 
|  | "test/run_all_unittests.cc", | 
|  | "test/sql_test_suite.cc", | 
|  | "test/sql_test_suite.h", | 
|  | "transaction_unittest.cc", | 
|  | ] | 
|  |  | 
|  | if (is_win) { | 
|  | cflags = [ "/wd4267" ]  # size_t -> int | 
|  | } | 
|  |  | 
|  | deps = [ | 
|  | ":sql", | 
|  | ":test_support", | 
|  | "//base/allocator", | 
|  | "//base/test:test_support", | 
|  | "//testing/gtest", | 
|  | "//third_party/sqlite", | 
|  | ] | 
|  |  | 
|  | # TODO(GYP) | 
|  | #['OS == "android"', { | 
|  | #  'dependencies': [ | 
|  | #    '../testing/android/native_test.gyp:native_test_native_code', | 
|  | #  ], | 
|  | #}], | 
|  | } | 
|  |  | 
|  | if (is_android) { | 
|  | #TODO(GYP) | 
|  | #'target_name': 'sql_unittests_apk', | 
|  | #'type': 'none', | 
|  | #'dependencies': [ | 
|  | #  'sql_unittests', | 
|  | #], | 
|  | #'variables': { | 
|  | #  'test_suite_name': 'sql_unittests', | 
|  | #}, | 
|  | #'includes': [ '../build/apk_test.gypi' ], | 
|  | } |