15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles){
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  'variables': {
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'chromium_code': 1,
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # Define the common dependencies that contain all the actual
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # Chromium functionality.  This list gets pulled in below by
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # the link of the actual chrome (or chromium) executable on
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # Linux or Mac, and into chrome.dll on Windows.
122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    # NOTE: Most new includes should go in the OS!="ios" condition below.
1303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    #
1403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    # GN version is the group //chrome:browser_dependencies
15b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    'chromium_browser_dependencies': [
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      'common',
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      'browser',
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      '../sync/sync.gyp:sync',
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ],
2003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    # GN version is the group //chrome:child_dependencies
21b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    'chromium_child_dependencies': [
22b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      'common',
23b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      '../sync/sync.gyp:sync',
24b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    ],
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'allocator_target': '../base/allocator/allocator.gyp:allocator',
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/chrome',
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out',
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'conditions': [
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      ['OS!="ios"', {
30b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        'chromium_browser_dependencies': [
3103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)          'debugger',
32ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch          '../ppapi/ppapi_internal.gyp:ppapi_host',
33b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        ],
34b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        'chromium_child_dependencies': [
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'plugin',
362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'renderer',
372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'utility',
382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          '../content/content.gyp:content_gpu',
392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          '../content/content.gyp:content_ppapi_plugin',
40a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)          '../third_party/WebKit/public/blink_devtools.gyp:blink_devtools_frontend_resources',
412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        ],
422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      }],
43f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ['enable_printing!=0', {
44f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        'chromium_browser_dependencies': [
45f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)          '../printing/printing.gyp:printing',
46f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        ],
47f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      }],
48c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch      ['enable_printing==1', {
49b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        'chromium_browser_dependencies': [
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'service',
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        ],
525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      }],
536e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      ['OS=="win"', {
546e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        'platform_locale_settings_grd':
556e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)            'app/resources/locale_settings_win.grd',
566e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      },],
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ['OS=="linux"', {
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        'conditions': [
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ['chromeos==1', {
602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'conditions': [
612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)              ['branding=="Chrome"', {
622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                'platform_locale_settings_grd':
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    'app/resources/locale_settings_google_chromeos.grd',
642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)              }, {  # branding!=Chrome
652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                'platform_locale_settings_grd':
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    'app/resources/locale_settings_chromiumos.grd',
672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)              }],
682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            ]
695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          }, {  # chromeos==0
705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'platform_locale_settings_grd':
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'app/resources/locale_settings_linux.grd',
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          }],
735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        ],
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      },],
752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "linux"', {
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        'platform_locale_settings_grd':
775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/resources/locale_settings_linux.grd',
785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      },],
795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ['OS=="mac"', {
805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        'tweak_info_plist_path': '../build/mac/tweak_info_plist.py',
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        'platform_locale_settings_grd':
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/resources/locale_settings_mac.grd',
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      }],  # OS=="mac"
845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ],  # conditions
855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  },  # variables
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  'includes': [
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # Place some targets in gypi files to reduce contention on this file.
885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # By using an include, we keep everything in a single xcodeproj file.
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # Note on Win64 targets: targets that end with win64 be used
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # on 64-bit Windows only. Targets that end with nacl_win64 should be used
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    # by Native Client only.
922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    # NOTE: Most new includes should go in the OS!="ios" condition below.
935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    '../build/chrome_settings.gypi',
94a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    '../build/util/version.gypi',
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    '../build/win_precompile.gypi',
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'chrome_browser.gypi',
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'chrome_browser_ui.gypi',
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'chrome_common.gypi',
995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    'chrome_installer_util.gypi',
100d3868032626d59662ff73b372b5d584c1d144c53Ben Murdoch    '../components/nacl/nacl_defines.gypi',
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ],
1022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  'conditions': [
1032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    ['OS!="ios"', {
1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      'includes': [
105010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        '../apps/apps.gypi',
106010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        'chrome_debugger.gypi',
1072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        'chrome_dll.gypi',
1082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        'chrome_exe.gypi',
1092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        'chrome_installer.gypi',
110010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        'chrome_plugin.gypi',
1112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        'chrome_renderer.gypi',
1122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        'chrome_tests.gypi',
113f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        'chrome_tests_unit.gypi',
114010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        'chrome_utility.gypi',
1155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        'policy_templates.gypi',
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ],
1172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      'targets': [
1182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        {
1192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'target_name': 'default_extensions',
1202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'type': 'none',
1212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'conditions': [
1222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            ['OS=="win"', {
1232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)              'copies': [
1242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                {
1252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                  'destination': '<(PRODUCT_DIR)/extensions',
1262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                  'files': [
1272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    'browser/extensions/default_extensions/external_extensions.json'
1282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                  ]
1292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                }
1302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)              ],
131424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)            }]
1322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          ],
1332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        },
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ],
1352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    }],  # OS!="ios"
136f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    ['OS=="mac"', {
137f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      'includes': [
1381320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci        'app_shim/app_shim.gypi',
1391320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci        'browser/apps/app_shim/browser_app_shim.gypi',
140f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ],
141f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      'targets': [
1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'helper_app',
1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'executable',
1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': { 'enable_wexit_time_destructors': 1, },
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'product_name': '<(mac_product_name) Helper',
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'mac_bundle': 1,
1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'chrome_dll',
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'infoplist_strings_tool',
1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # chrome_exe_main_mac.cc's main() is the entry point for
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # the "chrome" (browser app) target.  All it does is jump
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # to chrome_dll's ChromeMain.  This is appropriate for
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # helper processes too, because the logic to discriminate
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # between process types at run time is actually directed
1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # by the --type command line argument processed by
1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # ChromeMain.  Sharing chrome_exe_main_mac.cc with the
1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            # browser app will suffice for now.
1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/chrome_exe_main_mac.cc',
1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/helper-Info.plist',
1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # TODO(mark): Come up with a fancier way to do this.  It should only
1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # be necessary to list helper-Info.plist once, not the three times it
1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # is listed here.
1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'mac_bundle_resources!': [
1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/helper-Info.plist',
1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # TODO(mark): For now, don't put any resources into this app.  Its
1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # resources directory will be a symbolic link to the browser app's
1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # resources directory.
1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'mac_bundle_resources/': [
1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['exclude', '.*'],
1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'xcode_settings': {
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'CHROMIUM_BUNDLE_ID': '<(mac_bundle_id)',
1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'CHROMIUM_SHORT_NAME': '<(branding)',
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'CHROMIUM_STRIP_SAVE_FILE': 'app/app.saves',
1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'INFOPLIST_FILE': 'app/helper-Info.plist',
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'postbuilds': [
1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # The helper doesn't have real localizations, it just has
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # empty .lproj directories, which is enough to convince Cocoa
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # that anything running out of the helper .app supports those
1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # languages.
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'postbuild_name': 'Make Empty Localizations',
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'variables': {
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'locale_dirs': [
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  '>!@(<(apply_locales_cmd) -d ZZLOCALE.lproj <(locales))',
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                ],
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': [
1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'tools/build/mac/make_locale_dirs.sh',
1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<@(locale_dirs)',
1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # The framework (chrome_dll) defines its load-time path
2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # (DYLIB_INSTALL_NAME_BASE) relative to the main executable
2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # (chrome).  A different relative path needs to be used in
2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # helper_app.
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'postbuild_name': 'Fix Framework Link',
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': [
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'install_name_tool',
2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '-change',
2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '@executable_path/../Versions/<(version_full)/<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '@executable_path/../../../<(mac_product_name) Framework.framework/<(mac_product_name) Framework',
2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}'
2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # Modify the Info.plist as needed.  The script explains why this
2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # is needed.  This is also done in the chrome and chrome_dll
2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # targets.  In this case, --breakpad=0, --keystone=0, and --scm=0
2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # are used because Breakpad, Keystone, and SCM keys are
2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # never placed into the helper.
2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'postbuild_name': 'Tweak Info.plist',
2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': ['<(tweak_info_plist_path)',
2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                         '--breakpad=0',
2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                         '--keystone=0',
2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                         '--scm=0'],
2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # Make sure there isn't any Objective-C in the helper app's
2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # executable.
2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'postbuild_name': 'Verify No Objective-C',
2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': [
2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '../build/mac/verify_no_objc.sh',
2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'conditions': [
2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['mac_breakpad==1', {
2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'variables': {
2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                # A real .dSYM is needed for dump_syms to operate on.
2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'mac_real_dsym': 1,
2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'xcode_settings': {
2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                # With mac_real_dsym set, strip_from_xcode won't be used.
2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                # Specify CHROMIUM_STRIP_SAVE_FILE directly to Xcode.
2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'STRIPFLAGS': '-s $(CHROMIUM_STRIP_SAVE_FILE)',
2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }],
2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['asan==1', {
2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'xcode_settings': {
2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                # Override the outer definition of CHROMIUM_STRIP_SAVE_FILE.
2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'CHROMIUM_STRIP_SAVE_FILE': 'app/app_asan.saves',
2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }],
2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['component=="shared_library"', {
2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'xcode_settings': {
2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'LD_RUNPATH_SEARCH_PATHS': [
2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  # Get back from Chromium.app/Contents/Versions/V/
2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  #                                    Helper.app/Contents/MacOS
2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  '@loader_path/../../../../../../..',
2585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                ],
2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
2605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }],
2615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },  # target helper_app
2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # A library containing the actual code for the app mode app, shared
2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # by unit tests.
2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'app_mode_app_support',
2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'static_library',
2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': { 'enable_wexit_time_destructors': 1, },
2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'product_name': 'app_mode_app_support',
2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base',
2722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'common_constants.gyp:common_constants',
2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'common/mac/app_mode_chrome_locator.h',
2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'common/mac/app_mode_chrome_locator.mm',
2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'common/mac/app_mode_common.h',
2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'common/mac/app_mode_common.mm',
2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'include_dirs': [
2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '..',
2825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },  # target app_mode_app_support
2845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
2855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # Convenience target to build a disk image.
2865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'build_app_dmg',
2875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # Don't place this in the 'all' list; most won't want it.
2885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # In GYP, booleans are 0/1, not True/False.
2895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'suppress_wildcard': 1,
2905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
2915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'chrome',
2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': {
2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'build_app_dmg_script_path': 'tools/build/mac/build_app_dmg',
2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'pkg_dmg_script_path': 'installer/mac/pkg-dmg',
2975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'conditions': [
2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              # This duplicates the output path from build_app_dmg.
3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ['branding=="Chrome"', {
3015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'dmg_name': 'GoogleChrome.dmg',
3025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              }, { # else: branding!="Chrome"
3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'dmg_name': 'Chromium.dmg',
3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              }],
3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ],
3065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'actions': [
3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'inputs': [
3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(build_app_dmg_script_path)',
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(pkg_dmg_script_path)',
3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(PRODUCT_DIR)/<(mac_product_name).app',
3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'outputs': [
3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(PRODUCT_DIR)/<(dmg_name)',
3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action_name': 'build_app_dmg',
3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': ['<(build_app_dmg_script_path)', '<@(branding)'],
3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],  # 'actions'
3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'infoplist_strings_tool',
3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'executable',
3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': { 'enable_wexit_time_destructors': 1, },
3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'chrome_resources.gyp:chrome_strings',
3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base',
329a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            '../ui/base/ui_base.gyp:ui_base',
3304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)            '../ui/gfx/gfx.gyp:gfx',
3315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            '../ui/gfx/gfx.gyp:gfx_geometry',
3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'include_dirs': [
3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '<(grit_out_dir)',
3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
3365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'tools/mac_helpers/infoplist_strings_util.mm',
3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ],  # targets
3412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    }],  # OS=="mac"
3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ['OS=="linux"',
3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      { 'targets': [
3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'linux_symbols',
3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'conditions': [
3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['linux_dump_symbols==1', {
3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'actions': [
3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                {
3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'action_name': 'dump_symbols',
3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'inputs': [
3535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    '<(DEPTH)/build/linux/dump_app_syms',
3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    '<(PRODUCT_DIR)/dump_syms',
3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    '<(PRODUCT_DIR)/chrome',
3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  ],
3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'outputs': [
3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    '<(PRODUCT_DIR)/chrome.breakpad.<(target_arch)',
3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  ],
3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'action': ['<(DEPTH)/build/linux/dump_app_syms',
3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                             '<(PRODUCT_DIR)/dump_syms',
3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                             '<(linux_strip_binary)',
3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                             '<(PRODUCT_DIR)/chrome',
3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                             '<@(_outputs)'],
3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'message': 'Dumping breakpad symbols to <(_outputs)',
3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'process_outputs_as_sources': 1,
3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                },
3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'dependencies': [
3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'chrome',
3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '../breakpad/breakpad.gyp:dump_syms',
3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }],
3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ],
377868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    }],  # OS=="linux"
3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ['OS=="win"',
3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      { 'targets': [
3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # For historical reasons, chrome/chrome.sln has been the entry point
3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # for new Chrome developers. To assist development, include several
3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # core unittests that are otherwise only accessible side-by-side with
3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          # chrome via all/all.sln.
3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'test_targets',
3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base_unittests',
3898bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)            '../content/content_shell_and_tests.gyp:content_browsertests',
3908bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)            '../content/content_shell_and_tests.gyp:content_shell',
3918bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)            '../content/content_shell_and_tests.gyp:content_unittests',
3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../net/net.gyp:net_unittests',
3931320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci            '../ui/base/ui_base_tests.gyp:ui_unittests',
3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'chrome_version_resources',
3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'conditions': [
4005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ['branding == "Chrome"', {
4015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'variables': {
4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                 'branding_path': 'app/theme/google_chrome/BRANDING',
4035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }, { # else branding!="Chrome"
4055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'variables': {
4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                 'branding_path': 'app/theme/chromium/BRANDING',
4075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
4085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            }],
4095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': {
4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'output_dir': 'chrome_version',
4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'template_input_path': 'app/chrome_version.rc.version',
4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'direct_dependent_settings': {
4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'include_dirs': [
4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              '<(SHARED_INTERMEDIATE_DIR)/<(output_dir)',
4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            ],
4185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
4195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
4205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/chrome_exe.ver',
4215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/chrome_dll.ver',
4225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/nacl64_exe.ver',
4235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'app/other.ver',
4245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'includes': [
4265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'version_resource_rules.gypi',
4275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
43003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)          # GN version: //chrome:version_header
4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'chrome_version_header',
4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'hard_dependency': 1,
4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'actions': [
4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            {
4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action_name': 'version_header',
4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'variables': {
4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'lastchange_path':
4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  '<(DEPTH)/build/util/LASTCHANGE',
4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              },
4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'conditions': [
4425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                ['branding == "Chrome"', {
4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'variables': {
4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     'branding_path': 'app/theme/google_chrome/BRANDING',
4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  },
4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                }, { # else branding!="Chrome"
4475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  'variables': {
4485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     'branding_path': 'app/theme/chromium/BRANDING',
4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                  },
4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                }],
4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
4525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'inputs': [
4535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(version_path)',
4545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(branding_path)',
4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(lastchange_path)',
4565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'version.h.in',
4575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
4585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'outputs': [
4595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(SHARED_INTERMEDIATE_DIR)/version.h',
4605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
4615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'action': [
4625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'python',
4635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<(version_py_path)',
4645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '-f', '<(version_path)',
4655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '-f', '<(branding_path)',
4665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '-f', '<(lastchange_path)',
4675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                'version.h.in',
4685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                '<@(_outputs)',
4695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              ],
4705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'message': 'Generating version header file: <@(_outputs)',
4715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
4725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
4745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
4755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'crash_service',
4765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'executable',
4775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
4785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'installer_util',
4795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base',
4805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../chrome/common_constants.gyp:common_constants',
4818bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)            '../components/components.gyp:breakpad_crash_service',
4825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'include_dirs': [
4845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '..',
4855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
4875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'tools/crash_service/main.cc',
4885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
4895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'msvs_settings': {
4905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'VCLinkerTool': {
4915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'SubSystem': '2',         # Set /SUBSYSTEM:WINDOWS
4925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
4935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
4945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
4955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
4962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'target_name': 'sb_sigutil',
4972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'type': 'executable',
4982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'dependencies': [
4992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            '../base/base.gyp:base',
5002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'safe_browsing_proto',
5012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          ],
5022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          'sources': [
503effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch            'browser/safe_browsing/binary_feature_extractor.h',
504effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch            'browser/safe_browsing/binary_feature_extractor_win.cc',
505effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch            'browser/safe_browsing/pe_image_reader_win.cc',
506effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch            'browser/safe_browsing/pe_image_reader_win.h',
5072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'tools/safe_browsing/sb_sigutil.cc',
5082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)          ],
5092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        },
510868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      ],  # 'targets'
511868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      'includes': [
512868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)        'chrome_process_finder.gypi',
513868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)        'metro_utils.gypi',
514868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      ],
515868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    }],  # OS=="win"
5162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    ['OS=="win" and target_arch=="ia32"',
5172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)      { 'targets': [
5182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)        {
519c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'target_name': 'chrome_user32_delay_imports',
520c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'type': 'none',
521c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'variables': {
522c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            'lib_dir': '<(INTERMEDIATE_DIR)',
523c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          },
524c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'sources': [
525c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)              'chrome.user32.delay.imports'
526c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          ],
527c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'includes': [
528c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)              '../build/win/importlibs/create_import_lib.gypi',
529c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          ],
530c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          'direct_dependent_settings': {
531c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            'msvs_settings': {
532c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)              'VCLinkerTool': {
533c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                'AdditionalLibraryDirectories': ['<(lib_dir)', ],
534c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                'AdditionalDependencies': ['chrome.user32.delay.lib', ],
535c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)              },
536c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            },
537c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          },
538c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        },
539c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        {
5405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'crash_service_win64',
5415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'executable',
5425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'product_name': 'crash_service64',
5435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
5445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'installer_util_nacl_win64',
5455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base_static_win64',
5465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../chrome/common_constants.gyp:common_constants_win64',
5478bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)            '../components/components.gyp:breakpad_crash_service_win64',
5485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
5495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'include_dirs': [
5505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '..',
5515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
5525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'sources': [
5535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'tools/crash_service/main.cc',
5545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../content/public/common/content_switches.cc',
5555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
5565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'defines': [
5575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'COMPILE_CONTENT_STATICALLY',
5585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
5595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'msvs_settings': {
5605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'VCLinkerTool': {
5615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'SubSystem': '2',         # Set /SUBSYSTEM:WINDOWS
5625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
5635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
5645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'configurations': {
5655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'Common_Base': {
5665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)              'msvs_target_platform': 'x64',
5675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            },
5685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
5695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
5705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ]},  # 'targets'
5712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    ],  # OS=="win" and target_arch=="ia32"
5725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ['chromeos==1', {
5735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      'includes': [ 'chrome_browser_chromeos.gypi' ],
5745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    }],  # chromeos==1
5755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ['OS=="android"',
5765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      {
5775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      'targets': [
5785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        {
5795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'target_name': 'chrome_java',
5805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'type': 'none',
5815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'dependencies': [
5825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'activity_type_ids_java',
583a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            'app_banner_metrics_ids_java',
584c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            'chrome_resources.gyp:chrome_strings',
585cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)            'chrome_strings_grd',
5862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'profile_sync_service_model_type_selection_java',
58790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)            'resource_id_java',
5882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'toolbar_model_security_levels_java',
589a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            'tab_load_status_java',
5905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../base/base.gyp:base',
5916e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)            '../components/components.gyp:bookmarks_java',
592a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            '../components/components.gyp:dom_distiller_core_java',
593cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)            '../components/components.gyp:gcm_driver_java',
5942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            '../components/components.gyp:navigation_interception_java',
595c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            '../components/components.gyp:sessions',
596116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch            '../components/components.gyp:variations_java',
5972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            '../components/components.gyp:web_contents_delegate_android_java',
5985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../content/content.gyp:content_java',
599f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)            '../printing/printing.gyp:printing_java',
6002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            '../sync/sync.gyp:sync_java',
601116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch            '../third_party/android_tools/android_tools.gyp:android_support_v7_appcompat_javalib',
6021320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci            '../third_party/android_tools/android_tools.gyp:android_support_v13_javalib',
603f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)            '../ui/android/ui_android.gyp:ui_java',
6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'variables': {
6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            'java_in_dir': '../chrome/android/java',
6072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'has_java_resources': 1,
6082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'R_package': 'org.chromium.chrome',
6092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)            'R_package_relpath': 'org/chromium/chrome',
610c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            # Include xml string files generated from generated_resources.grd
611c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            'res_extra_dirs': ['<(SHARED_INTERMEDIATE_DIR)/chrome/java/res'],
612c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)            'res_extra_files': ['<!@pymod_do_main(grit_info <@(grit_defines) --outputs "<(SHARED_INTERMEDIATE_DIR)/chrome" app/generated_resources.grd)'],
6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          },
6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          'includes': [
6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)            '../build/java.gypi',
6165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          ],
6175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        },
618cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        {
619cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          'target_name': 'chrome_strings_grd',
620cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          'type': 'none',
621cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          'variables': {
622cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)            'grd_file': '../chrome/android/java/strings/android_chrome_strings.grd',
623cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          },
624cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          'includes': [
625cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)            '../build/java_strings_grd.gypi',
626cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          ],
627cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        },
6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ], # 'targets'
6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      'includes': [
6305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)        'chrome_android.gypi',
6315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      ]}, # 'includes'
6325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ],  # OS=="android"
6335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    ['configuration_policy==1 and OS!="android" and OS!="ios"', {
634868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      'includes': [ 'policy.gypi', ],
635868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    }],
6366e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    ['enable_extensions==1', {
6376e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      'includes': [
6386e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        'chrome_browser_extensions.gypi',
6396e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      ],
6406e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    }],
641c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch    ['enable_printing==1', {
642c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch      'targets': [
643c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch        {
644116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch          # GN version: //chrome/service
645c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'target_name': 'service',
646c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'type': 'static_library',
647c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'variables': { 'enable_wexit_time_destructors': 1, },
648c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'dependencies': [
649c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'chrome_resources.gyp:chrome_strings',
650c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'common',
651c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'common_net',
652c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../base/base.gyp:base',
6530529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch            '../components/components.gyp:cloud_devices_common',
654c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../google_apis/google_apis.gyp:google_apis',
655c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../jingle/jingle.gyp:notifier',
656c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../net/net.gyp:net',
657c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../printing/printing.gyp:printing',
658c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../skia/skia.gyp:skia',
659c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '../third_party/libjingle/libjingle.gyp:libjingle',
660c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          ],
661c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'sources': [
662116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch            # Note: sources list duplicated in GN build.
6635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/cloud_print/cdd_conversion_win.cc',
6645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/cloud_print/cdd_conversion_win.h',
665c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_auth.cc',
666c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_auth.h',
667c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_connector.cc',
668c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_connector.h',
669c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_proxy.cc',
670c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_proxy.h',
671c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_proxy_backend.cc',
672c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_proxy_backend.h',
6735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/cloud_print/cloud_print_service_helpers.cc',
6745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/cloud_print/cloud_print_service_helpers.h',
675c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_token_store.cc',
676c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_token_store.h',
677c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_url_fetcher.cc',
678c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_url_fetcher.h',
679c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_wipeout.cc',
680c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/cloud_print_wipeout.h',
681c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/connector_settings.cc',
682c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/connector_settings.h',
683c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/job_status_updater.cc',
684c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/job_status_updater.h',
685c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/print_system.cc',
686c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/print_system.h',
6875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/cloud_print/print_system_win.cc',
688c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/printer_job_handler.cc',
689c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/printer_job_handler.h',
690c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/printer_job_queue_handler.cc',
691c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            'service/cloud_print/printer_job_queue_handler.h',
692116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch            'service/net/service_url_request_context_getter.cc',
693116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch            'service/net/service_url_request_context_getter.h',
6945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_ipc_server.cc',
6955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_ipc_server.h',
6965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_main.cc',
6975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_process.cc',
6985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_process.h',
6995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_process_prefs.cc',
7005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_process_prefs.h',
7015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_utility_process_host.cc',
7025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)            'service/service_utility_process_host.h',
703c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          ],
704c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'include_dirs': [
705c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            '..',
706c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          ],
707c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          'conditions': [
708c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            ['use_cups==1', {
709c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch              'dependencies': [
710c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch                '../printing/printing.gyp:cups',
711c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch              ],
712c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch              'sources': [
713c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch                'service/cloud_print/print_system_cups.cc',
714c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch              ],
715c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch            }],
716f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)            ['OS!="win" and use_cups!=1', {
717f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)              'sources': [
718f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                'service/cloud_print/print_system_dummy.cc',
719f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)              ],
720f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)            }],
7211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci            ['OS!="win"', {
7221320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci              'sources!': [
7231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                'service/service_utility_process_host.cc',
7241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci                'service/service_utility_process_host.h',
7251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci              ],
7261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci            }],
727c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch          ],
728c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch        },
729c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch      ],
730c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch    }],
7315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ],  # 'conditions'
7325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
733