diff options
author | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-24 04:32:18 +0000 |
---|---|---|
committer | thakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-24 04:32:18 +0000 |
commit | 3f55cf80386618578049cb73aaa094d848f9fba6 (patch) | |
tree | 18294d2d67637b13b6729090d4ee34096f4ae5f1 | |
parent | 319c9842070164aa0ca74c730601b7b19d16a5b4 (diff) | |
download | chromium_src-3f55cf80386618578049cb73aaa094d848f9fba6.zip chromium_src-3f55cf80386618578049cb73aaa094d848f9fba6.tar.gz chromium_src-3f55cf80386618578049cb73aaa094d848f9fba6.tar.bz2 |
android: Fold all_android.gyp into all.gyp.
All other platforms have their targets in all.gyp. Android didn't during
bring-up, but enough stuff works by now that there's no need for the
separate all_android.gyp file any more.
BUG=330631
R=yfriedman@chromium.org
TBR=rsleevi@chromium.org
Review URL: https://codereview.chromium.org/139743016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@246782 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | build/all.gyp | 199 | ||||
-rw-r--r-- | build/all_android.gyp | 175 | ||||
-rwxr-xr-x | build/android/envsetup_functions.sh | 7 | ||||
-rw-r--r-- | net/net.gyp | 2 |
4 files changed, 198 insertions, 185 deletions
diff --git a/build/all.gyp b/build/all.gyp index 5234463..cb9a7c0 100644 --- a/build/all.gyp +++ b/build/all.gyp @@ -3,6 +3,11 @@ # found in the LICENSE file. { + 'variables': { + # A hook that can be overridden in other repositories to add additional + # compilation targets to 'All'. Only used on Android. + 'android_app_targets%': [], + }, 'targets': [ { 'target_name': 'All', @@ -11,16 +16,13 @@ 'dependencies': [ 'some.gyp:*', '../base/base.gyp:*', - '../chrome/chrome.gyp:*', '../components/components.gyp:*', '../components/components_tests.gyp:*', '../content/content.gyp:*', - '../content/content_shell_and_tests.gyp:*', '../crypto/crypto.gyp:*', '../net/net.gyp:*', '../sdch/sdch.gyp:*', '../sql/sql.gyp:*', - '../sync/sync.gyp:*', '../testing/gmock.gyp:*', '../testing/gtest.gyp:*', '../third_party/icu/icu.gyp:*', @@ -33,9 +35,38 @@ '../url/url.gyp:*', ], 'conditions': [ - ['OS!="ios"', { + ['OS=="ios"', { + 'dependencies': [ + '../ios/ios.gyp:*', + '../ui/ui_unittests.gyp:ui_unittests', + ], + }], + ['OS=="android"', { + 'dependencies': [ + '../content/content_shell_and_tests.gyp:content_shell_apk', + '../mojo/mojo.gyp:mojo_shell_apk', + '<@(android_app_targets)', + 'android_builder_tests', + '../android_webview/android_webview.gyp:android_webview_apk', + '../chrome/chrome.gyp:chromium_testshell', + '../remoting/remoting.gyp:remoting_apk', + '../tools/telemetry/telemetry.gyp:*#host', + # TODO(nyquist) This should instead by a target for sync when all of + # the sync-related code for Android has been upstreamed. + # See http://crbug.com/159203 + '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_javalib', + ], + }, { + 'dependencies': [ + '../content/content_shell_and_tests.gyp:*', + # TODO: This should build on Android and the target should move to the list above. + '../sync/sync.gyp:*', + ], + }], + ['OS!="ios" and OS!="android"', { 'dependencies': [ '../third_party/re2/re2.gyp:re2', + '../chrome/chrome.gyp:*', '../cc/cc_tests.gyp:*', '../device/bluetooth/bluetooth.gyp:*', '../device/device_tests.gyp:*', @@ -75,11 +106,6 @@ '../webkit/renderer/compositor_bindings/compositor_bindings_tests.gyp:*', '<(libjpeg_gyp_path):*', ], - }, { # 'OS=="ios"' - 'dependencies': [ - '../ios/ios.gyp:*', - '../ui/ui_unittests.gyp:ui_unittests', - ], }], ['OS!="android" and OS!="ios"', { 'dependencies': [ @@ -222,6 +248,8 @@ ], }, # target_name: All_syzygy { + # Note: Android uses android_builder_tests below. + # TODO: Consider merging that with this target. 'target_name': 'chromium_builder_tests', 'type': 'none', 'dependencies': [ @@ -235,7 +263,7 @@ '../url/url.gyp:url_unittests', ], 'conditions': [ - ['OS!="ios"', { + ['OS!="ios" and OS!="android"', { 'dependencies': [ '../cc/cc_tests.gyp:cc_unittests', '../chrome/chrome.gyp:browser_tests', @@ -384,15 +412,26 @@ 'type': 'none', 'dependencies': [ '../third_party/WebKit/public/all.gyp:all_blink', - '../content/content_shell_and_tests.gyp:content_shell', ], 'conditions': [ + ['OS=="android"', { + 'dependencies': [ + '../content/content_shell_and_tests.gyp:content_shell_apk', + '../breakpad/breakpad.gyp:dump_syms#host', + '../breakpad/breakpad.gyp:minidump_stackwalk#host', + ], + }, { # OS!="android" + 'dependencies': [ + '../content/content_shell_and_tests.gyp:content_shell', + ], + }], ['OS=="win"', { 'dependencies': [ '../content/content_shell_and_tests.gyp:content_shell_crash_service', '../content/content_shell_and_tests.gyp:layout_test_helper', ], - }, { # OS!="win" + }], + ['OS!="win" and OS!="android"', { 'dependencies': [ '../breakpad/breakpad.gyp:minidump_stackwalk', ], @@ -419,6 +458,10 @@ 'blink_tests', ], }, # target_name: all_webkit + ], + }], # OS!=ios + ['OS!="ios" and OS!="android"', { + 'targets': [ { 'target_name': 'chromium_builder_nacl_win_integration', 'type': 'none', @@ -650,7 +693,137 @@ ], }, ], # targets - }], + }], #OS!=ios and OS!=android + ['OS=="android"', { + 'targets': [ + { + # The current list of tests for android. This is temporary + # until the full set supported. If adding a new test here, + # please also add it to build/android/pylib/gtest/gtest_config.py, + # else the test is not run. + # + # WARNING: + # Do not add targets here without communicating the implications + # on tryserver triggers and load. Discuss with + # chrome-infrastructure-team please. + 'target_name': 'android_builder_tests', + 'type': 'none', + 'dependencies': [ + '../android_webview/android_webview.gyp:android_webview_unittests', + '../base/android/jni_generator/jni_generator.gyp:jni_generator_tests', + '../base/base.gyp:base_unittests', + '../breakpad/breakpad.gyp:breakpad_unittests', + # Also compile the tools needed to deal with minidumps, they are + # needed to run minidump tests upstream. + '../breakpad/breakpad.gyp:dump_syms#host', + '../breakpad/breakpad.gyp:symupload#host', + '../breakpad/breakpad.gyp:minidump_dump#host', + '../breakpad/breakpad.gyp:minidump_stackwalk#host', + '../build/android/tests/multiple_proguards/multiple_proguards.gyp:multiple_proguards_test_apk', + '../cc/cc_tests.gyp:cc_perftests_apk', + '../cc/cc_tests.gyp:cc_unittests', + '../chrome/chrome.gyp:unit_tests', + '../components/components_tests.gyp:components_unittests', + '../content/content_shell_and_tests.gyp:content_browsertests', + '../content/content_shell_and_tests.gyp:content_gl_tests', + '../content/content_shell_and_tests.gyp:content_shell_test_apk', + '../content/content_shell_and_tests.gyp:content_unittests', + '../gpu/gpu.gyp:gl_tests', + '../gpu/gpu.gyp:gpu_unittests', + '../ipc/ipc.gyp:ipc_tests', + '../media/media.gyp:media_perftests_apk', + '../media/media.gyp:media_unittests', + '../net/net.gyp:net_unittests', + '../sandbox/sandbox.gyp:sandbox_linux_unittests', + '../sql/sql.gyp:sql_unittests', + '../sync/sync.gyp:sync_unit_tests', + '../third_party/WebKit/public/all.gyp:*', + '../tools/android/android_tools.gyp:android_tools', + '../tools/android/android_tools.gyp:memconsumer', + '../tools/android/findbugs_plugin/findbugs_plugin.gyp:findbugs_plugin_test', + '../ui/ui_unittests.gyp:ui_unittests', + # Required by ui_unittests. + # TODO(wangxianzhu): It'd better let ui_unittests depend on it, but + # this would cause circular gyp dependency which needs refactoring the + # gyps to resolve. + '../chrome/chrome_resources.gyp:packed_resources', + ], + 'conditions': [ + ['"<(gtest_target_type)"=="shared_library"', { + 'dependencies': [ + # Unit test bundles packaged as an apk. + '../android_webview/android_webview.gyp:android_webview_unittests_apk', + '../base/base.gyp:base_unittests_apk', + '../cc/cc_tests.gyp:cc_unittests_apk', + '../chrome/chrome.gyp:unit_tests_apk', + '../components/components_tests.gyp:components_unittests_apk', + '../content/content_shell_and_tests.gyp:content_browsertests_apk', + '../content/content_shell_and_tests.gyp:content_gl_tests_apk', + '../content/content_shell_and_tests.gyp:content_unittests_apk', + '../content/content_shell_and_tests.gyp:video_decode_accelerator_unittest_apk', + '../gpu/gpu.gyp:gl_tests_apk', + '../gpu/gpu.gyp:gpu_unittests_apk', + '../ipc/ipc.gyp:ipc_tests_apk', + '../media/media.gyp:media_unittests_apk', + '../net/net.gyp:net_unittests_apk', + '../sandbox/sandbox.gyp:sandbox_linux_jni_unittests_apk', + '../sql/sql.gyp:sql_unittests_apk', + '../sync/sync.gyp:sync_unit_tests_apk', + '../ui/ui_unittests.gyp:ui_unittests_apk', + '../android_webview/android_webview.gyp:android_webview_test_apk', + '../chrome/chrome.gyp:chromium_testshell_test_apk', + '../chrome/chrome.gyp:chromium_testshell_uiautomator_tests', + '../webkit/renderer/compositor_bindings/compositor_bindings_tests.gyp:webkit_compositor_bindings_unittests_apk' + ], + }], + ], + }, + { + # WebRTC Android APK tests. + 'target_name': 'android_builder_webrtc', + 'type': 'none', + 'variables': { + # Set default value for include_tests to '0'. It is normally only + # used in WebRTC GYP files. It is set to '1' only when building + # WebRTC for Android, inside a Chromium checkout. + 'include_tests%': 0, + }, + 'conditions': [ + ['"<(gtest_target_type)"=="shared_library" and include_tests==1', { + 'dependencies': [ + '../third_party/webrtc/build/apk_tests.gyp:*', + ], + }], + ], + }, # target_name: android_builder_webrtc + { + # WebRTC Chromium tests to run on Android. + 'target_name': 'android_builder_chromium_webrtc', + 'type': 'none', + 'dependencies': [ + '../content/content_shell_and_tests.gyp:content_browsertests', + '../tools/android/android_tools.gyp:android_tools', + '../tools/android/android_tools.gyp:memconsumer', + ], + 'conditions': [ + ['"<(gtest_target_type)"=="shared_library"', { + 'dependencies': [ + # Unit test bundles packaged as an apk. + '../content/content_shell_and_tests.gyp:content_browsertests_apk', + ], + }], + ], + }, # target_name: android_builder_chromium_webrtc + { + # Build the java portions of the binary size analysis tool. + 'target_name': 'binary_size_tool', + 'type': 'none', + 'dependencies': [ + '../tools/binary_size/binary_size.gyp:binary_size_java', + ], + }, + ], # targets + }], # OS="android" ['OS=="mac"', { 'targets': [ { diff --git a/build/all_android.gyp b/build/all_android.gyp index f5cb4ee..b327b30 100644 --- a/build/all_android.gyp +++ b/build/all_android.gyp @@ -2,178 +2,15 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -# This is all.gyp file for Android to prevent breakage in Android and other -# platform; It will be churning a lot in the short term and eventually be merged -# into all.gyp. - +# TODO(thakis): Remove this file after https://codereview.chromium.org/139743016 +# has been in the tree for a while. { - 'variables': { - # A hook that can be overridden in other repositories to add additional - # compilation targets to 'All' - 'android_app_targets%': [], - }, 'targets': [ { - 'target_name': 'All', - 'type': 'none', - 'dependencies': [ - '../content/content_shell_and_tests.gyp:content_shell_apk', - '../mojo/mojo.gyp:mojo_shell_apk', - '<@(android_app_targets)', - 'android_builder_tests', - '../android_webview/android_webview.gyp:android_webview_apk', - '../chrome/chrome.gyp:chromium_testshell', - '../remoting/remoting.gyp:remoting_apk', - # TODO(nyquist) This should instead by a target for sync when all of - # the sync-related code for Android has been upstreamed. - # See http://crbug.com/159203 - '../third_party/cacheinvalidation/cacheinvalidation.gyp:cacheinvalidation_javalib', - '../tools/telemetry/telemetry.gyp:*#host', - ], - }, # target_name: All - { - 'target_name': 'blink_tests', - 'type': 'none', - 'dependencies': [ - '../third_party/WebKit/public/all.gyp:all_blink', - '../content/content_shell_and_tests.gyp:content_shell_apk', - '../breakpad/breakpad.gyp:dump_syms#host', - '../breakpad/breakpad.gyp:minidump_stackwalk#host', - ], - }, # target_name: blink_tests - { - # TODO(jochen): Eventually remove this target after everybody and the - # bots started to use blink_tests only. - 'target_name': 'all_webkit', - 'type': 'none', - 'dependencies': [ - 'blink_tests', - ], - }, # target_name: all_webkit - { - # The current list of tests for android. This is temporary - # until the full set supported. If adding a new test here, - # please also add it to build/android/pylib/gtest/gtest_config.py, - # else the test is not run. - # - # WARNING: - # Do not add targets here without communicating the implications - # on tryserver triggers and load. Discuss with jrg please. - 'target_name': 'android_builder_tests', - 'type': 'none', - 'dependencies': [ - '../android_webview/android_webview.gyp:android_webview_unittests', - '../base/android/jni_generator/jni_generator.gyp:jni_generator_tests', - '../base/base.gyp:base_unittests', - '../breakpad/breakpad.gyp:breakpad_unittests', - # Also compile the tools needed to deal with minidumps, they are - # needed to run minidump tests upstream. - '../breakpad/breakpad.gyp:dump_syms#host', - '../breakpad/breakpad.gyp:symupload#host', - '../breakpad/breakpad.gyp:minidump_dump#host', - '../breakpad/breakpad.gyp:minidump_stackwalk#host', - '../build/android/tests/multiple_proguards/multiple_proguards.gyp:multiple_proguards_test_apk', - '../cc/cc_tests.gyp:cc_perftests_apk', - '../cc/cc_tests.gyp:cc_unittests', - '../chrome/chrome.gyp:unit_tests', - '../components/components_tests.gyp:components_unittests', - '../content/content_shell_and_tests.gyp:content_browsertests', - '../content/content_shell_and_tests.gyp:content_gl_tests', - '../content/content_shell_and_tests.gyp:content_shell_test_apk', - '../content/content_shell_and_tests.gyp:content_unittests', - '../gpu/gpu.gyp:gl_tests', - '../gpu/gpu.gyp:gpu_unittests', - '../ipc/ipc.gyp:ipc_tests', - '../media/media.gyp:media_perftests_apk', - '../media/media.gyp:media_unittests', - '../net/net.gyp:net_unittests', - '../sandbox/sandbox.gyp:sandbox_linux_unittests', - '../sql/sql.gyp:sql_unittests', - '../sync/sync.gyp:sync_unit_tests', - '../third_party/WebKit/public/all.gyp:*', - '../tools/android/android_tools.gyp:android_tools', - '../tools/android/android_tools.gyp:memconsumer', - '../tools/android/findbugs_plugin/findbugs_plugin.gyp:findbugs_plugin_test', - '../ui/ui_unittests.gyp:ui_unittests', - # Required by ui_unittests. - # TODO(wangxianzhu): It'd better let ui_unittests depend on it, but - # this would cause circular gyp dependency which needs refactoring the - # gyps to resolve. - '../chrome/chrome_resources.gyp:packed_resources', - ], - 'conditions': [ - ['"<(gtest_target_type)"=="shared_library"', { - 'dependencies': [ - # Unit test bundles packaged as an apk. - '../android_webview/android_webview.gyp:android_webview_unittests_apk', - '../base/base.gyp:base_unittests_apk', - '../cc/cc_tests.gyp:cc_unittests_apk', - '../chrome/chrome.gyp:unit_tests_apk', - '../components/components_tests.gyp:components_unittests_apk', - '../content/content_shell_and_tests.gyp:content_browsertests_apk', - '../content/content_shell_and_tests.gyp:content_gl_tests_apk', - '../content/content_shell_and_tests.gyp:content_unittests_apk', - '../content/content_shell_and_tests.gyp:video_decode_accelerator_unittest_apk', - '../gpu/gpu.gyp:gl_tests_apk', - '../gpu/gpu.gyp:gpu_unittests_apk', - '../ipc/ipc.gyp:ipc_tests_apk', - '../media/media.gyp:media_unittests_apk', - '../net/net.gyp:net_unittests_apk', - '../sandbox/sandbox.gyp:sandbox_linux_jni_unittests_apk', - '../sql/sql.gyp:sql_unittests_apk', - '../sync/sync.gyp:sync_unit_tests_apk', - '../ui/ui_unittests.gyp:ui_unittests_apk', - '../android_webview/android_webview.gyp:android_webview_test_apk', - '../chrome/chrome.gyp:chromium_testshell_test_apk', - '../chrome/chrome.gyp:chromium_testshell_uiautomator_tests', - '../webkit/renderer/compositor_bindings/compositor_bindings_tests.gyp:webkit_compositor_bindings_unittests_apk' - ], - }], - ], - }, - { - # WebRTC Android APK tests. - 'target_name': 'android_builder_webrtc', - 'type': 'none', - 'variables': { - # Set default value for include_tests to '0'. It is normally only - # used in WebRTC GYP files. It is set to '1' only when building - # WebRTC for Android, inside a Chromium checkout. - 'include_tests%': 0, - }, - 'conditions': [ - ['"<(gtest_target_type)"=="shared_library" and include_tests==1', { - 'dependencies': [ - '../third_party/webrtc/build/apk_tests.gyp:*', - ], - }], - ], - }, # target_name: android_builder_webrtc - { - # WebRTC Chromium tests to run on Android. - 'target_name': 'android_builder_chromium_webrtc', - 'type': 'none', - 'dependencies': [ - '../content/content_shell_and_tests.gyp:content_browsertests', - '../tools/android/android_tools.gyp:android_tools', - '../tools/android/android_tools.gyp:memconsumer', - ], - 'conditions': [ - ['"<(gtest_target_type)"=="shared_library"', { - 'dependencies': [ - # Unit test bundles packaged as an apk. - '../content/content_shell_and_tests.gyp:content_browsertests_apk', - ], - }], - ], - }, # target_name: android_builder_chromium_webrtc - { - # Build the java portions of the binary size analysis tool. - 'target_name': 'binary_size_tool', - 'type': 'none', + 'target_name': 'temporary_android_dummy_target', 'dependencies': [ - '../tools/binary_size/binary_size.gyp:binary_size_java', + 'all.gyp:*', ], - }, - ], # targets + ], + ], } diff --git a/build/android/envsetup_functions.sh b/build/android/envsetup_functions.sh index b9502e8..c4ca98f 100755 --- a/build/android/envsetup_functions.sh +++ b/build/android/envsetup_functions.sh @@ -143,8 +143,11 @@ common_gyp_vars() { # Use our All target as the default export GYP_GENERATOR_FLAGS="${GYP_GENERATOR_FLAGS} default_target=All" - # We want to use our version of "all" targets. - export CHROMIUM_GYP_FILE="${CHROME_SRC}/build/all_android.gyp" + # TODO(thakis): Remove this after a week or two. Sourcing envsetup.sh used to + # set this variable, but now that all_android.gyp is gone having it set will + # lead to errors, so explicitly unset it to remove it from the environment of + # developers who keep their shells open for weeks (most of them, probably). + unset CHROMIUM_GYP_FILE } diff --git a/net/net.gyp b/net/net.gyp index bccf777..1293ab2 100644 --- a/net/net.gyp +++ b/net/net.gyp @@ -2606,7 +2606,7 @@ }, ], }], - ['OS != "ios"', { + ['OS != "ios" and OS != "android"', { 'targets': [ # iOS doesn't have the concept of simple executables, these targets # can't be compiled on the platform. |