OLD | NEW |
1 # Copyright (c) 2014 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2014 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 # This file is meant to be included to optimize a target for speed | 5 # This file is meant to be included to optimize a target for speed |
6 # rather than for size on Android. | 6 # rather than for size on Android. |
7 # This is used in some carefully tailored targets and is not meant | 7 # This is used in some carefully tailored targets and is not meant |
8 # to be included everywhere. Before adding the template to another target, | 8 # to be included everywhere. Before adding the template to another target, |
9 # please ask in chromium-dev@. See crbug.com/411909 | 9 # please ask in chromium-dev@. See crbug.com/411909 |
10 | 10 |
11 { | 11 { |
12 'configurations': { | 12 'configurations': { |
13 'Release': { | 13 'Release': { |
14 'target_conditions': [ | 14 'target_conditions': [ |
15 ['_toolset=="target"', { | 15 ['_toolset=="target"', { |
16 'conditions': [ | 16 'conditions': [ |
17 ['OS=="android"', { | 17 ['OS=="android"', { |
18 'cflags!': ['-Os'], | 18 'cflags!': ['-Os'], |
19 'cflags': ['-O2'], | 19 'cflags': ['-O2'], |
20 }], | 20 }], |
| 21 # Do not merge -Os and -O2 in LTO. |
| 22 # LTO merges all optimization options at link-time. -O2 takes |
| 23 # precedence over -Os. Avoid using LTO simultaneously |
| 24 # on -Os and -O2 parts for that reason. |
| 25 ['use_lto==1', { |
| 26 'cflags!': [ |
| 27 '-flto', |
| 28 '-ffat-lto-objects', |
| 29 ], |
| 30 }], |
| 31 ['use_lto_o2==1', { |
| 32 'cflags': [ |
| 33 '-flto', |
| 34 '-ffat-lto-objects', |
| 35 ], |
| 36 }], |
21 ], | 37 ], |
22 }], | 38 }], |
23 ], | 39 ], |
24 }, | 40 }, |
25 }, | 41 }, |
26 } | 42 } |
OLD | NEW |