blob: 79c201deccb3b99bf444200fbc6d40cbfa1cec79 [file] [log] [blame]
Ben Murdoch097c5b22016-05-18 11:27:45 +01001# Copyright 2013 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# This is the set of recommended gyp variable settings for Chrome for Android development.
6#
7# These can be used by copying this file to $CHROME_SRC/chrome/supplement.gypi.
8#
9# Even better, create chrome/supplement.gypi containing the following:
10# {
11# 'includes': [ '../build/android/developer_recommended_flags.gypi' ]
12# }
13# and you'll get new settings automatically.
14# When using this method, you can override individual settings by setting them unconditionally (with
15# no %) in chrome/supplement.gypi.
16# I.e. to disable gyp_managed_install but use everything else:
17# {
18# 'variables': {
19# 'gyp_managed_install': 0,
20# },
21# 'includes': [ '../build/android/developer_recommended_flags.gypi' ]
22# }
23
24{
25 'variables': {
26 'variables': {
27 # Set component to 'shared_library' to enable the component build. This builds native code as
28 # many small shared libraries instead of one monolithic library. This slightly reduces the time
29 # required for incremental builds.
30 'component%': 'shared_library',
31 },
32 'component%': '<(component)',
33
34 # When gyp_managed_install is set to 1, building an APK will install that APK on the connected
35 # device(/emulator). To install on multiple devices (or onto a new device), build the APK once
36 # with each device attached. This greatly reduces the time required for incremental builds.
37 #
38 # This comes with some caveats:
39 # Only works with a single device connected (it will print a warning if
40 # zero or multiple devices are attached).
41 # Device must be flashed with a user-debug unsigned Android build.
42 # Some actions are always run (i.e. ninja will never say "no work to do").
43 'gyp_managed_install%': 1,
44
45 # With gyp_managed_install, we do not necessarily need a standalone APK.
46 # When create_standalone_apk is set to 1, we will build a standalone APK
47 # anyway. For even faster builds, you can set create_standalone_apk to 0.
48 'create_standalone_apk%': 1,
49
50 # Set clang to 1 to use the clang compiler. Clang has much (much, much) better warning/error
51 # messages than gcc.
52 # TODO(cjhopman): Enable this when http://crbug.com/156420 is addressed. Until then, users can
53 # set clang to 1, but Android stack traces will sometimes be incomplete.
54 #'clang%': 1,
55
56 # Set fastbuild to 1 to build with less debugging information. This can greatly decrease linking
57 # time. The downside is that stack traces will be missing useful information (like line
58 # numbers).
59 #'fastbuild%': 1,
60 },
61}