summaryrefslogtreecommitdiffstats
path: root/site_scons/site_tools
Commit message (Collapse)AuthorAgeFilesLines
* Initial generation of native Visual Studio solution filessgk@google.com2008-12-191-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (project files still to come). To wit: * Solution file configuration is in *_sln.scons files (base\base_sln.scons, chrome\chrome_sln.scons). * Individual Project file configuration is in the the .scons file for the relevant target (base\base_unittests.scons, third_party\libxml\libxml.scons, etc.)--that is, where their file lists will live. * MSVSProject() calls are currently placeholders that establish the existence of Project Nodes (and Project dependencies) but don't yet have actual Project configuration information (file lists, .vsprops, etc.). * Configuraiton is very manual. In particular, the entries in the .sln file will be written out in exactly the order specified in the configuration(s). The current ordering is taken from our existing .sln files, so we can generate virtually the same configurations on output. * Generated solution files are nearly byte-for-byte identical with our existing .sln files, modulo: * net\dump_cache has a WebsiteProperties sections (making that configurable per project isn't important right now); * sandbox\sandbox.sln was missing a dependency of base.vcproj on on debug_message.vcproj (present in other .sln files) * webkit\webkit.sln was missing dependencies of WebCore.vcproj on libxml_config.vcproj and libxslt_config.vcproj (present in chrome.sln); * add a handful of other miscellaneous missing dependencies on various .vcproj definitions in chrome.sln (present in other .sln files). * remove stats_viewer.csproj from chrome.sln (sorry, mbelshe), which was complicating the solution configuration with unnecessary (for us) "Mixed Platform" types; * All MSVSFolder(), MSVSProject() and MSVSSolution() calls have hard-wired guid= values taken from our existing configuration, so we can: 1) verify generation of working configs; 2) minimize diffs when checking in generated .sln files. We can remove these in the future in favor of extracting them from existing .sln files if we wish. * Add ChromeMSVSFolder(), ChromeMSVSProject() and ChromeMSVSSolution() wrappers to chromium_builders.py, that gate the underlying call to the env.MSVS*() builders based on whether env.Bit('msvs') is set (i.e., we're in --mode=msvs). * Remove platform-specific gating of to-be-ported .scons files that we now need to load on any platform to generate coheren MSVS files. Move the env.Bit('windows') tests for actually building their executables into the individual .scons files. Review URL: http://codereview.chromium.org/14472 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7297 0039d316-1c4b-4281-b951-d872f2087c98
* Underlying functionality for generating native Visual Studio solution files:sgk@google.com2008-12-172-0/+485
| | | | | | | | | | | | | | | | * New _Node_MSVS.py module (from rspangler) with new MSVSFolder(), MSVSProject() and MSVSSolution() Nodes. This will eventually become a new SCons/Node/MSVS.py module in upstream SCons. * New MSVSNew.py Tool module imports MSVS.py (either from SCons.Node or from our temporary _Node_MSVS.py module) and attaches the appropriate environment methods. * MSVSSolution().Write() will generate a solution file based on explicit configuration in the SConscript files. * While we're here, define $SQLITE_DIR, which will be used by the next checkins. Review URL: http://codereview.chromium.org/14467 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7120 0039d316-1c4b-4281-b951-d872f2087c98
* Pulling in hammer changes.bradnelson@chromium.org2008-12-0413-67/+350
| | | | | | Review URL: http://codereview.chromium.org/13134 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6370 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes and enhancementssgk@google.com2008-12-021-3/+12
| | | | | | | | | | | | | | | | | | * Configurable CHROME_BUILD_TYPE command line or external environment variable for selecting appropriate release_impl*.scons settings (_checksenabled, _coverage, _dom_stats, _official, _purify). * Configurable CHROMIUM_BUILD command line or external environment variable for selecting appropriate chromium_build*.scons settings (_google_chrome). * Configurable /INCREMENTAL linking via command line or external environment variable ($INCREMENTAL), through appropriate setting of an internal $CHROMIUM_INCREMENTAL_FLAGS construction variable. * Full link of release builds by default. * Alphabetize *.scons files in the mac_env.FilterOut() list. * Explicitly set _checksenabled.scons link flags. Review URL: http://codereview.chromium.org/13039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6210 0039d316-1c4b-4281-b951-d872f2087c98
* Fix use of LOAD= with WantSystemLib() (we could blow up if a variablesgk@google.com2008-11-212-0/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hadn't been added to the config) and extend use of LOAD= into submodules: * Add a ChromeLoadSConscriptModules() method that encapsulates the conditional logic, and makes things more readable by specifying component names as keyword arguments, not hard-coding the logic as a series of if-tests. * Put the ChromeLoadSConscriptModules() logic in a Tool module in site_scons/site_tools, so it doesn't clutter up build/SConscript.main directly. * Move env.WantSystemLib() calls into the individual *.scons files, so we call them each time (or not, based one LOAD=) and the config itself just returns if the system library is requested and we don't need to build anything locally. * Move the settings where a library name changes based on whether or not the system lib is being used into the using_*.scons files, so they're available to clients independently of whether or not the component's *.scons configuration is loaded. * While here: rename the affected third_party SConscript files: third_party/libjpeg/SConscript => third_party/libjpeg/libjpeg.scons third_party/libxml/SConscript => third_party/libxml/libxml.scons third_party/libxslt/SConscript => third_party/libxslt/libxslt.scons * While here: move the Chrome{Program,SharedLibrary}() etc. builder definitions from build/SConscript.main to a new too Ad the ChromeLoadSConscriptModules() logic in a Tool module, to remove more clutter from build/SConscript.main. Review URL: http://codereview.chromium.org/11430 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5820 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes for Visual Studio solution + project file generation:sgk@google.com2008-11-141-1/+1
| | | | | | | | | | | | * Fix the grit tool so it works with Repository() directories (and tap gspencer to upstream the changes). * Fix the evaluation of $PRE_EVALUATE_DIRS, which was interfering with sucking up the source files for listing in the .vcproj files. * Set AlwaysBuild() on the project files so they're always evaluated for up-to-dateness when 'all_solutions' is the target. Review URL: http://codereview.chromium.org/10725 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5440 0039d316-1c4b-4281-b951-d872f2087c98
* Adding in new solution builder pattern.bradnelson@chromium.org2008-11-081-15/+21
| | | | | | Review URL: http://codereview.chromium.org/10231 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5047 0039d316-1c4b-4281-b951-d872f2087c98
* Bringing in sct changes.bradnelson@google.com2008-11-073-73/+603
| | | | | | Review URL: http://codereview.chromium.org/10210 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5008 0039d316-1c4b-4281-b951-d872f2087c98
* Missed a file in 9468.bradnelson@chromium.org2008-11-061-1/+1
| | | | | | | | | | Will submit this TBR. Propogating fix from mainline sct. Review URL: http://codereview.chromium.org/9663 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4927 0039d316-1c4b-4281-b951-d872f2087c98
* Unrollback the Scons changes, they weren't the cause of the problem.brettw@google.com2008-11-052-2/+9
| | | | | | Review URL: http://codereview.chromium.org/9184 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4783 0039d316-1c4b-4281-b951-d872f2087c98
* Rollback r4734 to see if it fixes the crashing I experience when starting ↵brettw@google.com2008-11-052-9/+2
| | | | | | | | chrome, as well as the 1MB regression in chrome.dll size. Review URL: http://codereview.chromium.org/8226 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4781 0039d316-1c4b-4281-b951-d872f2087c98
* Adding better project generation (source and build targets).bradnelson@chromium.org2008-11-052-2/+9
| | | | | | | | | Adding fix to targets_msvs to work with chrome hammer.bat in depot_tools. Review URL: http://codereview.chromium.org/9149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4734 0039d316-1c4b-4281-b951-d872f2087c98
* Adding in new software construction toolkit version.bradnelson@google.com2008-11-0412-112/+1222
| | | | | | Review URL: http://codereview.chromium.org/9094 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4566 0039d316-1c4b-4281-b951-d872f2087c98
* Adding visual studio solution files.bradnelson@chromium.org2008-11-041-14/+13
| | | | | | | | | Sandbox is currently having a problem with this so it is disabled. Fixed a few stray items. Review URL: http://codereview.chromium.org/9259 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4525 0039d316-1c4b-4281-b951-d872f2087c98
* Pulling in latest software construction toolkit.bradnelson@google.com2008-10-2314-66/+498
| | | | | | Review URL: http://codereview.chromium.org/8117 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3861 0039d316-1c4b-4281-b951-d872f2087c98
* Dropping in software construction toolkit.bradnelson@chromium.org2008-10-0925-0/+3526
Review URL: http://codereview.chromium.org/6329 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3145 0039d316-1c4b-4281-b951-d872f2087c98