blob: 5cff4c359f7da7120ec506f9a0c174d923995d8c [file] [log] [blame]
Ben Murdoch097c5b22016-05-18 11:27:45 +01001# Copyright (c) 2012 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 gypi file defines the patterns used for determining whether a
6# file is excluded from the build on a given platform. It is
7# included by common.gypi for chromium_code.
8
9{
10 'target_conditions': [
11 ['OS!="win" or >(nacl_untrusted_build)==1', {
12 'sources/': [ ['exclude', '_win(_browsertest|_unittest|_test)?\\.(h|cc)$'],
13 ['exclude', '(^|/)win/'],
14 ['exclude', '(^|/)win_[^/]*\\.(h|cc)$'] ],
15 }],
16 ['OS!="mac" or >(nacl_untrusted_build)==1', {
17 'sources/': [ ['exclude', '_(cocoa|mac|mach)(_unittest|_test)?\\.(h|cc|c|mm?)$'],
18 ['exclude', '(^|/)(cocoa|mac|mach)/'] ],
19 }],
20 ['OS!="ios" or >(nacl_untrusted_build)==1', {
21 'sources/': [ ['exclude', '_ios(_unittest|_test)?\\.(h|cc|mm?)$'],
22 ['exclude', '(^|/)ios/'] ],
23 }],
24 ['(OS!="mac" and OS!="ios") or >(nacl_untrusted_build)==1', {
25 'sources/': [ ['exclude', '\\.mm?$' ] ],
26 }],
27 # Do not exclude the linux files on *BSD since most of them can be
28 # shared at this point.
29 # In case a file is not needed, it is going to be excluded later on.
30 # TODO(evan): the above is not correct; we shouldn't build _linux
31 # files on non-linux.
32 ['OS!="linux" and OS!="openbsd" and OS!="freebsd" or >(nacl_untrusted_build)==1', {
33 'sources/': [
34 ['exclude', '_linux(_unittest|_test)?\\.(h|cc)$'],
35 ['exclude', '(^|/)linux/'],
36 ],
37 }],
38 ['OS!="android" or _toolset=="host" or >(nacl_untrusted_build)==1', {
39 'sources/': [
40 ['exclude', '_android(_unittest|_test)?\\.(h|cc)$'],
41 ['exclude', '(^|/)android/'],
42 ],
43 }],
44 ['OS=="win" and >(nacl_untrusted_build)==0', {
45 'sources/': [
46 ['exclude', '_posix(_unittest|_test)?\\.(h|cc)$'],
47 ['exclude', '(^|/)posix/'],
48 ],
49 }],
50 ['<(chromeos)!=1 or >(nacl_untrusted_build)==1', {
51 'sources/': [
52 ['exclude', '_chromeos(_unittest|_test)?\\.(h|cc)$'],
53 ['exclude', '(^|/)chromeos/'],
54 ],
55 }],
56 ['>(nacl_untrusted_build)==0', {
57 'sources/': [
58 ['exclude', '_nacl(_unittest)?\\.(h|cc)$'],
59 ],
60 }],
61 ['OS!="linux" and OS!="openbsd" and OS!="freebsd" or >(nacl_untrusted_build)==1', {
62 'sources/': [
63 ['exclude', '_xdg(_unittest)?\\.(h|cc)$'],
64 ],
65 }],
66 ['<(use_x11)!=1 or >(nacl_untrusted_build)==1', {
67 'sources/': [
68 ['exclude', '_(x|x11)(_interactive_uitest|_unittest)?\\.(h|cc)$'],
69 ['exclude', '(^|/)x11_[^/]*\\.(h|cc)$'],
70 ['exclude', '(^|/)x11/'],
71 ['exclude', '(^|/)x/'],
72 ],
73 }],
74 ['<(toolkit_views)==0 or >(nacl_untrusted_build)==1', {
75 'sources/': [ ['exclude', '_views(_browsertest|_unittest)?\\.(h|cc)$'] ]
76 }],
77 ['<(use_aura)==0 or >(nacl_untrusted_build)==1', {
78 'sources/': [ ['exclude', '_aura(_browsertest|_unittest)?\\.(h|cc)$'],
79 ['exclude', '(^|/)aura/'],
80 ['exclude', '_ash(_browsertest|_unittest)?\\.(h|cc)$'],
81 ['exclude', '(^|/)ash/'],
82 ]
83 }],
84 ['<(use_aura)==0 or <(use_x11)==0 or >(nacl_untrusted_build)==1', {
85 'sources/': [ ['exclude', '_aurax11(_browsertest|_unittest)?\\.(h|cc)$'] ]
86 }],
87 ['<(use_aura)==0 or OS!="win" or >(nacl_untrusted_build)==1', {
88 'sources/': [ ['exclude', '_aurawin\\.(h|cc)$'],
89 ['exclude', '_ashwin\\.(h|cc)$']
90 ]
91 }],
92 ['<(use_aura)==0 or OS!="linux" or >(nacl_untrusted_build)==1', {
93 'sources/': [ ['exclude', '_auralinux\\.(h|cc)$'] ]
94 }],
95 ['<(use_ozone)==0 or >(nacl_untrusted_build)==1', {
96 'sources/': [ ['exclude', '_ozone(_browsertest|_unittest)?\\.(h|cc)$'] ]
97 }],
98 ['<(use_pango)==0', {
99 'sources/': [ ['exclude', '(^|_)pango(_util|_browsertest|_unittest)?\\.(h|cc)$'], ],
100 }],
101 ]
102}