Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2116)

Unified Diff: build/SConscript.main

Issue 14472: Initial generation of native Visual Studio solution files... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 12 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « breakpad/SConscript ('k') | build/SConscript.v8 » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/SConscript.main
===================================================================
--- build/SConscript.main (revision 7290)
+++ build/SConscript.main (working copy)
@@ -379,6 +379,35 @@
windows_opt.ApplySConscript(['$CHROME_SRC_DIR/build/release.scons'])
# --------------------------------------------------------------------------
+# Platform-independent "msvs" mode for generating Visual Studio
+# project and solution files from any platform.
+
+DeclareBit('msvs', 'Generate Visual Studio files')
+
+msvs_env = windows_env.Clone()
+
+msvs_env.Tool('target_platform_windows')
+msvs_env.Tool('component_targets_msvs') # Per target project support.
+
+del msvs_env['BUILDERS']['MSVSProject']
+del msvs_env['BUILDERS']['MSVSSolution']
+msvs_env.Tool('MSVSNew')
+
+msvs_env.Tool('midl')
+
+environment_list.append(msvs_env)
+msvs_env.Replace(
+ BUILD_TYPE = 'msvs',
+ BUILD_TYPE_DESCRIPTION = 'Generate Visual Studio files',
+ HOST_PLATFORMS = ['*'],
+ ICU_LIBS = [],
+)
+msvs_env.SetBits('windows', 'msvs')
+# TODO(sgk): turn into separate debug + release env adding
+# to a common .sln file
+msvs_env.Tool('target_debug')
+
+# --------------------------------------------------------------------------
# Linux specific
linux_env = root_env.Clone()
@@ -624,6 +653,30 @@
)
+# --------------------------------------------------------------------------
+# Platform-independent "xcode" mode for generating XCode files
+# from any platform.
+
+DeclareBit('xcode', 'Generate XCode files')
+
+# TODO(sgk): remove this after we update Hammer modules.
+DeclareBit('mac', 'Target platform is mac.')
+
+xcode_env = mac_env.Clone()
+# TODO(sgk): uncomment when xcode generation becomes real.
+#environment_list.append(xcode_env)
+xcode_env.Replace(
+ BUILD_TYPE = 'xcode',
+ BUILD_TYPE_DESCRIPTION = 'Generate XCode files',
+ HOST_PLATFORMS = ['*'],
+ ICU_LIBS = [],
+)
+xcode_env.SetBits('mac', 'xcode')
+# TODO(sgk): turn into separate debug + release env adding
+# to a common .sln file
+xcode_env.Tool('target_debug')
+
+
# -------------------------------------------------------------------------
@@ -671,11 +724,6 @@
Help(help_fmt % (components, all_system_libs))
-
-Import('build_component')
-Default(None) # Reset default target to empty.
-Default(Alias(build_component)) # Set default target based on where built.
-
# -------------------------------------------------------------------------
# Invoke all the SConscripts in each of the environments that make sense on
@@ -684,6 +732,24 @@
# -------------------------------------------------------------------------
+Default(None) # Reset default target to empty.
+
+modes = GetTargetModes().keys()
+
+if set(modes) - set(['msvs', 'xcode']):
+ # There's at least one mode being built besides the platform-
+ # independent 'msvs' or 'xcode' modes. Build the current
+ # build_component's Alias as default--that is, "base" when we're
+ # in the base/ subdirectory, "chrome" under chrome/, etc.
+ Import('build_component')
+ Default(Alias(build_component)) # Set default target based on where built.
+
+if 'msvs' in modes:
+ # We're in --mode=msvs, so add its Alias(es) to the default targets.
+ Default(Alias('solutions'))
+
+# -------------------------------------------------------------------------
+
# This must occur after BuildComponents so that the dependency graph
# will be populated.
vs_env = windows_env.Clone()
« no previous file with comments | « breakpad/SConscript ('k') | build/SConscript.v8 » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698