summaryrefslogtreecommitdiffstats
path: root/build/filename_rules.gypi
diff options
context:
space:
mode:
authorevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-27 04:55:13 +0000
committerevan@chromium.org <evan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-27 04:55:13 +0000
commita5c59815b4d3169562ffae7928cd9a664d6b0052 (patch)
treeb0176f6388782bb81ead31e8a470b055b51e7c81 /build/filename_rules.gypi
parent89307897057aa94aaabae16d4f5bd28a659de769 (diff)
downloadchromium_src-a5c59815b4d3169562ffae7928cd9a664d6b0052.zip
chromium_src-a5c59815b4d3169562ffae7928cd9a664d6b0052.tar.gz
chromium_src-a5c59815b4d3169562ffae7928cd9a664d6b0052.tar.bz2
build/common.gypi: split out filename exclude rules
Here's a step towards making this enormous file a little more tractable. Review URL: http://codereview.chromium.org/9288078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119372 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build/filename_rules.gypi')
-rw-r--r--build/filename_rules.gypi86
1 files changed, 86 insertions, 0 deletions
diff --git a/build/filename_rules.gypi b/build/filename_rules.gypi
new file mode 100644
index 0000000..6a27107
--- /dev/null
+++ b/build/filename_rules.gypi
@@ -0,0 +1,86 @@
+# Copyright (c) 2012 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# This gypi file defines the patterns used for determining whether a
+# file is excluded from the build on a given platform. It is
+# included by common.gypi for chromium_code.
+
+{
+ 'conditions': [
+ ['OS!="win"', {
+ 'sources/': [ ['exclude', '_win(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)win/'],
+ ['exclude', '(^|/)win_[^/]*\\.(h|cc)$'] ],
+ }],
+ ['OS!="mac"', {
+ 'sources/': [ ['exclude', '_(cocoa|mac)(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)(cocoa|mac)/'],
+ ['exclude', '\\.mm?$' ] ],
+ }],
+ # Do not exclude the linux files on *BSD since most of them can be
+ # shared at this point.
+ # In case a file is not needed, it is going to be excluded later on.
+ # TODO(evan): the above is not correct; we shouldn't build _linux
+ # files on non-linux.
+ ['OS!="linux" and OS!="openbsd" and OS!="freebsd"', {
+ 'sources/': [
+ ['exclude', '_linux(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)linux/'],
+ ],
+ }],
+ ['OS!="android"', {
+ 'sources/': [
+ ['exclude', '_android(_unittest)?\\.cc$'],
+ ['exclude', '(^|/)android/'],
+ ],
+ }],
+ ['OS=="win"', {
+ 'sources/': [ ['exclude', '_posix(_unittest)?\\.(h|cc)$'] ],
+ }],
+ ['chromeos!=1', {
+ 'sources/': [ ['exclude', '_chromeos\\.(h|cc)$'] ]
+ }],
+ ['OS!="linux" and OS!="openbsd" and OS!="freebsd"', {
+ 'sources/': [
+ ['exclude', '_xdg(_unittest)?\\.(h|cc)$'],
+ ],
+ }],
+
+
+ ['use_x11!=1', {
+ 'sources/': [
+ ['exclude', '_(chromeos|x|x11)(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)x11_[^/]*\\.(h|cc)$'],
+ ],
+ }],
+ ['toolkit_uses_gtk!=1', {
+ 'sources/': [
+ ['exclude', '_gtk(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)gtk/'],
+ ['exclude', '(^|/)gtk_[^/]*\\.(h|cc)$'],
+ ],
+ }],
+ ['toolkit_views==0', {
+ 'sources/': [ ['exclude', '_views\\.(h|cc)$'] ]
+ }],
+ ['use_aura==0', {
+ 'sources/': [ ['exclude', '_aura(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)aura/'],
+ ]
+ }],
+ ['use_aura==0 or use_x11==0', {
+ 'sources/': [ ['exclude', '_aurax11\\.(h|cc)$'] ]
+ }],
+ ['use_aura==0 or OS!="win"', {
+ 'sources/': [ ['exclude', '_aurawin\\.(h|cc)$'] ]
+ }],
+ ['use_wayland!=1', {
+ 'sources/': [
+ ['exclude', '_(wayland)(_unittest)?\\.(h|cc)$'],
+ ['exclude', '(^|/)wayland/'],
+ ['exclude', '(^|/)(wayland)_[^/]*\\.(h|cc)$'],
+ ],
+ }],
+ ]
+}