Index: build/config/features.gni |
diff --git a/build/config/features.gni b/build/config/features.gni |
index b1e9280c0921a5e4d1057ed114f07f16961abc40..abd8b9a7b68eb6ed3ff21c8de75adfebda18018b 100644 |
--- a/build/config/features.gni |
+++ b/build/config/features.gni |
@@ -25,6 +25,11 @@ declare_args() { |
enable_plugins = !is_android && !is_ios |
+ # This indicates whether the chromeos interfaces and features should be |
+ # made available. Contrast with whether we are targetting the embedded |
+ # OS. That flag controls the linking, flags, filesystems, etc. we expect. |
+ use_cros_fe = is_chromeos |
+ |
# Enables Native Client support. |
# TODO(GYP): Get NaCl linking on other platforms. |
# Also, see if we can always get rid of enable_nacl_untrusted and |
@@ -209,3 +214,18 @@ enable_pre_sync_backup = is_win || is_mac || (is_linux && !is_chromeos) |
# WebVR support disabled until platform implementations have been added |
enable_webvr = false |
+ |
+# |
+# Maintain some sanity for refactoring build configs. |
+# |
+if (is_chromeos_os) { |
+ assert(use_cros_fe, "ChromeOS targetting requires ChromeOS UI") |
+} |
+ |
+if (use_cros_fe) { |
+ assert(!is_desktop_linux, "ChromeOS Frontend is not desktop linux") |
+} |
+ |
+assert(use_cros_fe == is_chromeos, |
+ "is_chromeos and use_cros_fe are expected to be aliases, " + |
+ "old and new, respectively") |