1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
7 # Core sources shared by sessions_content and sessions_ios.
9 # TODO(rohitrao): We are including these sources directly into each
10 # individual target in order to avoid the complications associated with
11 # making a separate sessions_core target. The files in sessions/core
12 # declare a static function that they do not define, which means that a
13 # sessions_core target would not link as a shared_library. It would also be
14 # unsuitable as a static_library because it would be linked into multiple
15 # shared libraries. Revisit this setup if necessary.
16 'sessions_core_sources': [
17 'sessions/base_session_service.cc',
18 'sessions/base_session_service.h',
19 'sessions/base_session_service_commands.cc',
20 'sessions/base_session_service_commands.h',
21 'sessions/base_session_service_delegate.h',
22 'sessions/core/serialized_navigation_driver.h',
23 'sessions/serialized_navigation_entry.cc',
24 'sessions/serialized_navigation_entry.h',
25 'sessions/session_backend.cc',
26 'sessions/session_backend.h',
27 'sessions/session_command.cc',
28 'sessions/session_command.h',
29 'sessions/session_id.cc',
30 'sessions/session_id.h',
31 'sessions/session_service_commands.cc',
32 'sessions/session_service_commands.h',
33 'sessions/session_types.cc',
34 'sessions/session_types.h',
39 # GN version: //components/sessions:test_support
40 'target_name': 'sessions_test_support',
41 'type': 'static_library',
42 'defines!': ['SESSIONS_IMPLEMENTATION'],
44 '../skia/skia.gyp:skia',
45 '../testing/gtest.gyp:gtest',
51 # Note: sources list duplicated in GN build.
52 'sessions/serialized_navigation_entry_test_helper.cc',
53 'sessions/serialized_navigation_entry_test_helper.h',
56 ['android_webview_build == 0', {
58 '../sync/sync.gyp:sync',
61 ['OS!="ios" and OS!="android"', {
63 'sessions/base_session_service_test_helper.cc',
64 'sessions/base_session_service_test_helper.h',
65 'sessions/session_backend.cc',
66 'sessions/session_backend.h',
73 # Platform-specific targets.
78 # GN version: //components/sessions:sessions_content
79 'target_name': 'sessions_content',
80 'type': '<(component)',
82 '../base/base.gyp:base',
83 '../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
84 '../content/content.gyp:content_browser',
85 '../skia/skia.gyp:skia',
86 '../third_party/protobuf/protobuf.gyp:protobuf_lite',
87 '../ui/base/ui_base.gyp:ui_base',
88 '../ui/gfx/gfx.gyp:gfx_geometry',
89 '../url/url.gyp:url_lib',
95 'SESSIONS_IMPLEMENTATION',
98 # Note: sources list duplicated in GN build.
99 '<@(sessions_core_sources)',
101 'sessions/content/content_serialized_navigation_builder.cc',
102 'sessions/content/content_serialized_navigation_builder.h',
103 'sessions/content/content_serialized_navigation_driver.cc',
104 'sessions/content/content_serialized_navigation_driver.h',
107 ['android_webview_build == 0', {
109 '../sync/sync.gyp:sync',
118 'target_name': 'sessions_ios',
119 'type': 'static_library',
121 '../base/base.gyp:base',
122 '../ios/web/ios_web.gyp:ios_web',
123 '../sync/sync.gyp:sync',
124 '../third_party/protobuf/protobuf.gyp:protobuf_lite',
125 '../ui/base/ui_base.gyp:ui_base',
126 '../ui/gfx/gfx.gyp:gfx_geometry',
127 '../url/url.gyp:url_lib',
133 'SESSIONS_IMPLEMENTATION',
136 '<@(sessions_core_sources)',
138 'sessions/ios/ios_serialized_navigation_builder.cc',
139 'sessions/ios/ios_serialized_navigation_builder.h',
140 'sessions/ios/ios_serialized_navigation_driver.cc',
141 'sessions/ios/ios_serialized_navigation_driver.h',