Update _CheckBuildConfigMacrosWithoutInclude() so that it excludes OS_CHROMEOS.

Bug: 742692
Change-Id: I3a64ed5870d6a1769bfccab353ad261ce24de17d
Reviewed-on: https://chromium-review.googlesource.com/571521
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#487294}
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
index fc07745..0a1d129 100644
--- a/PRESUBMIT.py
+++ b/PRESUBMIT.py
@@ -2134,8 +2134,9 @@
 
 
 def _CheckBuildConfigMacrosWithoutInclude(input_api, output_api):
-  macro_re = input_api.re.compile(
-      r'^\s*#(el)?if.*\bdefined\(((OS_|COMPILER_|ARCH_CPU_|WCHAR_T_IS_)[^)]*)')
+  # Excludes OS_CHROMEOS, which is not defined in build_config.h.
+  macro_re = input_api.re.compile(r'^\s*#(el)?if.*\bdefined\(((OS_(?!CHROMEOS)|'
+                                  'COMPILER_|ARCH_CPU_|WCHAR_T_IS_)[^)]*)')
   include_re = input_api.re.compile(
       r'^#include\s+"build/build_config.h"', input_api.re.MULTILINE)
   extension_re = input_api.re.compile(r'\.[a-z]+$')