| OLD | NEW |
| 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 { | 5 { |
| 6 'variables': { | 6 'variables': { |
| 7 'chromium_code': 1, | 7 'chromium_code': 1, |
| 8 # Define the common dependencies that contain all the actual | 8 # Define the common dependencies that contain all the actual |
| 9 # Chromium functionality. This list gets pulled in below by | 9 # Chromium functionality. This list gets pulled in below by |
| 10 # the link of the actual chrome (or chromium) executable on | 10 # the link of the actual chrome (or chromium) executable on |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 # TODO(jcampan): move these vars to views.gyp. | 58 # TODO(jcampan): move these vars to views.gyp. |
| 59 'views_unit_tests_sources': [ | 59 'views_unit_tests_sources': [ |
| 60 '../views/view_unittest.cc', | 60 '../views/view_unittest.cc', |
| 61 '../views/focus/focus_manager_unittest.cc', | 61 '../views/focus/focus_manager_unittest.cc', |
| 62 ], | 62 ], |
| 63 'views_unit_tests_sources_win_specific': [ | 63 'views_unit_tests_sources_win_specific': [ |
| 64 # TODO(jcampan): make the following tests work on Linux. | 64 # TODO(jcampan): make the following tests work on Linux. |
| 65 '../views/controls/label_unittest.cc', | 65 '../views/controls/label_unittest.cc', |
| 66 '../views/controls/table/table_view_unittest.cc', | 66 '../views/controls/table/table_view_unittest.cc', |
| 67 '../views/grid_layout_unittest.cc', | 67 '../views/grid_layout_unittest.cc', |
| 68 ] | 68 ], |
| 69 'conditions': [ |
| 70 ['OS=="mac"', { |
| 71 'conditions': [ |
| 72 ['branding=="Chrome"', { |
| 73 'bundle_id': 'com.google.Chrome', |
| 74 }, { # else: branding!="Chrome" |
| 75 'bundle_id': 'org.chromium.Chromium', |
| 76 }], # branding |
| 77 ], # conditions |
| 78 }], # OS=="mac" |
| 79 ], # conditions |
| 69 }, | 80 }, |
| 70 'includes': [ | 81 'includes': [ |
| 71 '../build/common.gypi', | 82 '../build/common.gypi', |
| 72 ], | 83 ], |
| 73 'target_defaults': { | 84 'target_defaults': { |
| 74 'sources/': [ | 85 'sources/': [ |
| 75 ['exclude', '/(cocoa|gtk|win)/'], | 86 ['exclude', '/(cocoa|gtk|win)/'], |
| 76 ['exclude', '_(cocoa|gtk|linux|mac|posix|skia|win|views|x)(_unittest)?\\.(
cc|mm?)$'], | 87 ['exclude', '_(cocoa|gtk|linux|mac|posix|skia|win|views|x)(_unittest)?\\.(
cc|mm?)$'], |
| 77 ['exclude', '/(gtk|win|x11)_[^/]*\\.cc$'], | 88 ['exclude', '/(gtk|win|x11)_[^/]*\\.cc$'], |
| 78 ], | 89 ], |
| (...skipping 2923 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3002 'dependencies': [ | 3013 'dependencies': [ |
| 3003 '../views/views.gyp:views', | 3014 '../views/views.gyp:views', |
| 3004 ], | 3015 ], |
| 3005 }], | 3016 }], |
| 3006 ['OS=="mac"', { | 3017 ['OS=="mac"', { |
| 3007 # 'branding' is a variable defined in common.gypi | 3018 # 'branding' is a variable defined in common.gypi |
| 3008 # (e.g. "Chromium", "Chrome") | 3019 # (e.g. "Chromium", "Chrome") |
| 3009 'conditions': [ | 3020 'conditions': [ |
| 3010 ['branding=="Chrome"', { | 3021 ['branding=="Chrome"', { |
| 3011 'mac_bundle_resources': ['app/theme/google_chrome/app.icns'], | 3022 'mac_bundle_resources': ['app/theme/google_chrome/app.icns'], |
| 3012 'variables': { | |
| 3013 'bundle_id': 'com.google.Chrome', | |
| 3014 }, | |
| 3015 'copies': [ | 3023 'copies': [ |
| 3016 { | 3024 { |
| 3017 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Content
s/MacOS/', | 3025 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Content
s/MacOS/', |
| 3018 'files': ['../third_party/ffmpeg/binaries/chrome/libavcodec.52
.dylib', | 3026 'files': ['../third_party/ffmpeg/binaries/chrome/libavcodec.52
.dylib', |
| 3019 '../third_party/ffmpeg/binaries/chrome/libavformat.5
2.dylib', | 3027 '../third_party/ffmpeg/binaries/chrome/libavformat.5
2.dylib', |
| 3020 '../third_party/ffmpeg/binaries/chrome/libavutil.50.
dylib', | 3028 '../third_party/ffmpeg/binaries/chrome/libavutil.50.
dylib', |
| 3021 '<(PRODUCT_DIR)/plugin_carbon_interpose.dylib'], | 3029 '<(PRODUCT_DIR)/plugin_carbon_interpose.dylib'], |
| 3022 }, | 3030 }, |
| 3023 ], | 3031 ], |
| 3024 }, { # else: 'branding!="Chrome" | 3032 }, { # else: 'branding!="Chrome" |
| 3025 'mac_bundle_resources': ['app/theme/chromium/app.icns'], | 3033 'mac_bundle_resources': ['app/theme/chromium/app.icns'], |
| 3026 'variables': { | |
| 3027 'bundle_id': 'org.chromium.Chromium', | |
| 3028 }, | |
| 3029 'copies': [ | 3034 'copies': [ |
| 3030 { | 3035 { |
| 3031 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Content
s/MacOS/', | 3036 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Content
s/MacOS/', |
| 3032 'files': ['../third_party/ffmpeg/binaries/chromium/libavcodec.
52.dylib', | 3037 'files': ['../third_party/ffmpeg/binaries/chromium/libavcodec.
52.dylib', |
| 3033 '../third_party/ffmpeg/binaries/chromium/libavformat
.52.dylib', | 3038 '../third_party/ffmpeg/binaries/chromium/libavformat
.52.dylib', |
| 3034 '../third_party/ffmpeg/binaries/chromium/libavutil.5
0.dylib', | 3039 '../third_party/ffmpeg/binaries/chromium/libavutil.5
0.dylib', |
| 3035 '<(PRODUCT_DIR)/plugin_carbon_interpose.dylib'], | 3040 '<(PRODUCT_DIR)/plugin_carbon_interpose.dylib'], |
| 3036 }, | 3041 }, |
| 3037 ], | 3042 ], |
| 3038 }], | 3043 }], |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3071 'product_name': '<(mac_product_name)', | 3076 'product_name': '<(mac_product_name)', |
| 3072 'xcode_settings': { | 3077 'xcode_settings': { |
| 3073 # chrome/app/app-Info.plist has: | 3078 # chrome/app/app-Info.plist has: |
| 3074 # CFBundleIdentifier of CHROMIUM_BUNDLE_ID | 3079 # CFBundleIdentifier of CHROMIUM_BUNDLE_ID |
| 3075 # CFBundleName of CHROMIUM_SHORT_NAME | 3080 # CFBundleName of CHROMIUM_SHORT_NAME |
| 3076 # Xcode then replaces these values with the branded values we set | 3081 # Xcode then replaces these values with the branded values we set |
| 3077 # as settings on the target. | 3082 # as settings on the target. |
| 3078 'CHROMIUM_BUNDLE_ID': '<(bundle_id)', | 3083 'CHROMIUM_BUNDLE_ID': '<(bundle_id)', |
| 3079 'CHROMIUM_SHORT_NAME': '<(branding)', | 3084 'CHROMIUM_SHORT_NAME': '<(branding)', |
| 3080 }, | 3085 }, |
| 3081 # Bring in pdfsqueeze and run it on all pdfs | 3086 'mac_bundle_resources': [ |
| 3087 '<(PRODUCT_DIR)/<(mac_product_name) Helper.app', |
| 3088 ], |
| 3082 'dependencies': [ | 3089 'dependencies': [ |
| 3090 'helper_app', |
| 3091 # Bring in pdfsqueeze and run it on all pdfs |
| 3083 '../build/temp_gyp/pdfsqueeze.gyp:pdfsqueeze', | 3092 '../build/temp_gyp/pdfsqueeze.gyp:pdfsqueeze', |
| 3084 'interpose_dependency_shim', | 3093 'interpose_dependency_shim', |
| 3085 ], | 3094 ], |
| 3086 'rules': [ | 3095 'rules': [ |
| 3087 { | 3096 { |
| 3088 'rule_name': 'pdfsqueeze', | 3097 'rule_name': 'pdfsqueeze', |
| 3089 'extension': 'pdf', | 3098 'extension': 'pdf', |
| 3090 'inputs': [ | 3099 'inputs': [ |
| 3091 '<(PRODUCT_DIR)/pdfsqueeze', | 3100 '<(PRODUCT_DIR)/pdfsqueeze', |
| 3092 ], | 3101 ], |
| 3093 'outputs': [ | 3102 'outputs': [ |
| 3094 '<(INTERMEDIATE_DIR)/pdfsqueeze/<(RULE_INPUT_ROOT).pdf', | 3103 '<(INTERMEDIATE_DIR)/pdfsqueeze/<(RULE_INPUT_ROOT).pdf', |
| 3095 ], | 3104 ], |
| 3096 'action': ['<(PRODUCT_DIR)/pdfsqueeze', '<(RULE_INPUT_PATH)', '<@(
_outputs)'], | 3105 'action': ['<(PRODUCT_DIR)/pdfsqueeze', '<(RULE_INPUT_PATH)', '<@(
_outputs)'], |
| 3097 'message': 'Running pdfsqueeze on <(RULE_INPUT_PATH)', | 3106 'message': 'Running pdfsqueeze on <(RULE_INPUT_PATH)', |
| 3098 }, | 3107 }, |
| 3099 ], | 3108 ], |
| 3100 'copies': [ | 3109 'copies': [ |
| 3101 { | 3110 { |
| 3102 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Contents/Fr
ameworks', | 3111 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Contents/Fr
ameworks', |
| 3103 'files': ['<(PRODUCT_DIR)/<(mac_product_name) Framework.framework'
], | 3112 'files': ['<(PRODUCT_DIR)/<(mac_product_name) Framework.framework'
], |
| 3104 }, | 3113 }, |
| 3114 { |
| 3115 # Copy web inspector resources to the Contents/Resources folder. |
| 3116 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Contents/Re
sources', |
| 3117 'files': ['<(PRODUCT_DIR)/resources/inspector/'], |
| 3118 }, |
| 3119 ], |
| 3120 'postbuilds': [ |
| 3121 { |
| 3122 # Modify the Info.plist as needed. The script explains why this |
| 3123 # is needed. This is also done in the helper_app target. |
| 3124 'postbuild_name': 'Tweak Info.plist', |
| 3125 'action': ['<(DEPTH)/build/mac/tweak_app_infoplist', |
| 3126 '-b<(mac_breakpad)', |
| 3127 '-k<(mac_keystone)', |
| 3128 '-s1', # Include Subversion information |
| 3129 '<(branding)'], |
| 3130 }, |
| 3105 ], | 3131 ], |
| 3106 }, { # else: OS != "mac" | 3132 }, { # else: OS != "mac" |
| 3107 'conditions': [ | 3133 'conditions': [ |
| 3108 ['branding=="Chrome"', { | 3134 ['branding=="Chrome"', { |
| 3109 'product_name': 'chrome' | 3135 'product_name': 'chrome' |
| 3110 }, { # else: Branding!="Chrome" | 3136 }, { # else: Branding!="Chrome" |
| 3111 # TODO: change to: | 3137 # TODO: change to: |
| 3112 # 'product_name': 'chromium' | 3138 # 'product_name': 'chromium' |
| 3113 # whenever we convert the rest of the infrastructure | 3139 # whenever we convert the rest of the infrastructure |
| 3114 # (buildbots etc.) to use "gyp -Dbranding=Chrome". | 3140 # (buildbots etc.) to use "gyp -Dbranding=Chrome". |
| 3115 # NOTE: chrome/app/theme/chromium/BRANDING and | 3141 # NOTE: chrome/app/theme/chromium/BRANDING and |
| 3116 # chrome/app/theme/google_chrome/BRANDING have the short names, | 3142 # chrome/app/theme/google_chrome/BRANDING have the short names, |
| 3117 # etc.; should we try to extract from there instead? | 3143 # etc.; should we try to extract from there instead? |
| 3118 'product_name': 'chrome' | 3144 'product_name': 'chrome' |
| 3119 }], | 3145 }], |
| 3120 ], | 3146 ], |
| 3121 }], | 3147 }], |
| 3122 ['OS=="mac"', { | |
| 3123 'actions': [ | |
| 3124 { | |
| 3125 # Mac adds an action to modify the Info.plist to meet our needs | |
| 3126 # (see the script for why this is done). | |
| 3127 'action_name': 'tweak_app_infoplist', | |
| 3128 # We don't list any inputs or outputs because we always want | |
| 3129 # the script to run. Why? Because it does thinks like record | |
| 3130 # the svn revision into the info.plist, so there is no file to | |
| 3131 # depend on that will change when ever that changes. | |
| 3132 'inputs': [], | |
| 3133 'outputs': [], | |
| 3134 'action': ['<(DEPTH)/build/mac/tweak_app_infoplist', | |
| 3135 '-b<(mac_breakpad)', | |
| 3136 '-k<(mac_keystone)', | |
| 3137 '<(branding)'], | |
| 3138 }, | |
| 3139 ], | |
| 3140 }], | |
| 3141 ['OS=="mac"', { | |
| 3142 # Copy web inspector resources to the Contents/Resources folder. | |
| 3143 'copies': [ | |
| 3144 { | |
| 3145 'destination': '<(PRODUCT_DIR)/<(mac_product_name).app/Contents/Re
sources', | |
| 3146 'files': ['<(PRODUCT_DIR)/resources/inspector/'], | |
| 3147 }, | |
| 3148 ], | |
| 3149 }], | |
| 3150 ['OS=="linux"', { | 3148 ['OS=="linux"', { |
| 3151 'conditions': [ | 3149 'conditions': [ |
| 3152 ['branding=="Chrome"', { | 3150 ['branding=="Chrome"', { |
| 3153 'dependencies': [ | 3151 'dependencies': [ |
| 3154 'installer/installer.gyp:installer_util', | 3152 'installer/installer.gyp:installer_util', |
| 3155 ], | 3153 ], |
| 3156 }], | 3154 }], |
| 3157 ], | 3155 ], |
| 3158 }], | 3156 }], |
| 3159 ['OS=="mac" or OS=="win"', { | 3157 ['OS=="mac" or OS=="win"', { |
| (...skipping 1229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4389 ], | 4387 ], |
| 4390 'dependencies': [ | 4388 'dependencies': [ |
| 4391 '../build/util/support/support.gyp:*', | 4389 '../build/util/support/support.gyp:*', |
| 4392 ], | 4390 ], |
| 4393 | 4391 |
| 4394 # For now, don't put any resources into the framework. Exclude | 4392 # For now, don't put any resources into the framework. Exclude |
| 4395 # them all and push them into the bundle resources of the sole | 4393 # them all and push them into the bundle resources of the sole |
| 4396 # app bundle, the only dependent of this target. | 4394 # app bundle, the only dependent of this target. |
| 4397 # TODO(mark): Fix. | 4395 # TODO(mark): Fix. |
| 4398 'mac_bundle_resources/': [ | 4396 'mac_bundle_resources/': [ |
| 4399 ['exclude', ''], | 4397 ['exclude', '.*'], |
| 4400 ], | 4398 ], |
| 4401 'direct_dependent_settings': { | 4399 'direct_dependent_settings': { |
| 4402 'mac_bundle_resources': [ | 4400 'mac_bundle_resources': [ |
| 4403 '../third_party/WebKit/WebCore/Resources/aliasCursor.png', | 4401 '../third_party/WebKit/WebCore/Resources/aliasCursor.png', |
| 4404 '../third_party/WebKit/WebCore/Resources/cellCursor.png', | 4402 '../third_party/WebKit/WebCore/Resources/cellCursor.png', |
| 4405 '../third_party/WebKit/WebCore/Resources/contextMenuCursor.png
', | 4403 '../third_party/WebKit/WebCore/Resources/contextMenuCursor.png
', |
| 4406 '../third_party/WebKit/WebCore/Resources/copyCursor.png', | 4404 '../third_party/WebKit/WebCore/Resources/copyCursor.png', |
| 4407 '../third_party/WebKit/WebCore/Resources/crossHairCursor.png', | 4405 '../third_party/WebKit/WebCore/Resources/crossHairCursor.png', |
| 4408 '../third_party/WebKit/WebCore/Resources/eastResizeCursor.png'
, | 4406 '../third_party/WebKit/WebCore/Resources/eastResizeCursor.png'
, |
| 4409 '../third_party/WebKit/WebCore/Resources/eastWestResizeCursor.
png', | 4407 '../third_party/WebKit/WebCore/Resources/eastWestResizeCursor.
png', |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4468 }, { | 4466 }, { |
| 4469 'variables': { | 4467 'variables': { |
| 4470 'linux_breakpad%': 0, | 4468 'linux_breakpad%': 0, |
| 4471 }, | 4469 }, |
| 4472 }], | 4470 }], |
| 4473 ], | 4471 ], |
| 4474 }], | 4472 }], |
| 4475 ['OS=="mac"', | 4473 ['OS=="mac"', |
| 4476 { 'targets': [ | 4474 { 'targets': [ |
| 4477 { | 4475 { |
| 4476 'target_name': 'helper_app', |
| 4477 'type': 'executable', |
| 4478 'product_name': '<(mac_product_name) Helper', |
| 4479 'mac_bundle': 1, |
| 4480 'dependencies': [ |
| 4481 'chrome_dll', |
| 4482 ], |
| 4483 'sources': [ |
| 4484 # chrome_exe_main.mm's main() is the entry point for the "chrome" |
| 4485 # (browser app) target. All it does is jump to chrome_dll's |
| 4486 # ChromeMain. This is appropriate for helper processes too, |
| 4487 # because the logic to discriminate between process types at run |
| 4488 # time is actually directed by the --type command line argument |
| 4489 # processed by ChromeMain. Sharing chrome_exe_main.mm with the |
| 4490 # browser app will suffice for now. |
| 4491 'app/chrome_exe_main.mm', |
| 4492 'app/helper-Info.plist', |
| 4493 ], |
| 4494 # TODO(mark): Come up with a fancier way to do this. It should only |
| 4495 # be necessary to list app-Info.plist once, not the three times it is |
| 4496 # listed here. |
| 4497 'mac_bundle_resources!': [ |
| 4498 'app/helper-Info.plist', |
| 4499 ], |
| 4500 # TODO(mark): For now, don't put any resources into this app. Its |
| 4501 # resources directory will be a symbolic link to the browser app's |
| 4502 # resources directory. |
| 4503 'mac_bundle_resources/': [ |
| 4504 ['exclude', '.*'], |
| 4505 ], |
| 4506 'xcode_settings': { |
| 4507 'CHROMIUM_BUNDLE_ID': '<(bundle_id)', |
| 4508 'CHROMIUM_SHORT_NAME': '<(branding)', |
| 4509 'INFOPLIST_FILE': 'app/helper-Info.plist', |
| 4510 }, |
| 4511 'postbuilds': [ |
| 4512 { |
| 4513 'postbuild_name': 'Make Symbolic Links', |
| 4514 'action': ['app/make_mac_app_symlinks'], |
| 4515 }, |
| 4516 { |
| 4517 # Modify the Info.plist as needed. The script explains why this |
| 4518 # is needed. This is also done in the chrome target. In |
| 4519 # this case, -k0 is always used because Keystone never runs |
| 4520 # within the helper app. -s0 is used to avoid placing Subversion |
| 4521 # data in the helper app's Info.plist. It will be present in |
| 4522 # the main app's Info.plist, which is sufficient. |
| 4523 'postbuild_name': 'Tweak Info.plist', |
| 4524 'action': ['<(DEPTH)/build/mac/tweak_app_infoplist', |
| 4525 '-b<(mac_breakpad)', |
| 4526 '-k0', |
| 4527 '-s0', |
| 4528 '<(branding)'], |
| 4529 }, |
| 4530 ], |
| 4531 'conditions': [ |
| 4532 ['mac_breakpad==1', { |
| 4533 'variables': { |
| 4534 # A real .dSYM is needed for dump_syms to operate on. |
| 4535 'mac_real_dsym': 1, |
| 4536 }, |
| 4537 }], |
| 4538 ], |
| 4539 }, |
| 4540 { |
| 4478 # Convenience target to build a disk image. | 4541 # Convenience target to build a disk image. |
| 4479 'target_name': 'build_app_dmg', | 4542 'target_name': 'build_app_dmg', |
| 4480 # Don't place this in the 'all' list; most won't want it. | 4543 # Don't place this in the 'all' list; most won't want it. |
| 4481 # In GYP, booleans are 0/1, not True/False. | 4544 # In GYP, booleans are 0/1, not True/False. |
| 4482 'suppress_wildcard': 1, | 4545 'suppress_wildcard': 1, |
| 4483 'type': 'none', | 4546 'type': 'none', |
| 4484 'dependencies': [ | 4547 'dependencies': [ |
| 4485 'chrome', | 4548 'chrome', |
| 4486 ], | 4549 ], |
| 4487 'variables': { | 4550 'variables': { |
| (...skipping 909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5397 # Use outputs of this action as inputs for the main target build. | 5460 # Use outputs of this action as inputs for the main target build. |
| 5398 # Seems as a misnomer but makes this happy on Linux (scons). | 5461 # Seems as a misnomer but makes this happy on Linux (scons). |
| 5399 'process_outputs_as_sources': 1, | 5462 'process_outputs_as_sources': 1, |
| 5400 }, | 5463 }, |
| 5401 ], # 'actions' | 5464 ], # 'actions' |
| 5402 }, | 5465 }, |
| 5403 ] | 5466 ] |
| 5404 }], | 5467 }], |
| 5405 ], # 'conditions' | 5468 ], # 'conditions' |
| 5406 } | 5469 } |
| OLD | NEW |