summaryrefslogtreecommitdiffstats
path: root/third_party/scons
Commit message (Collapse)AuthorAgeFilesLines
* Have scons fully evaluate order-only prequisites Nodes before evaluatingsgk@google.com2009-03-111-1/+11
| | | | | | | | | | | | | a target direct sources and dependencies, so that the actions of the prerequisites can affect how the sources and dependencies get built (e.g. building ancillary files for use as input to other steps, without having to track the direct file dependency). This tracks an upstream SCons change that will appear in next release: http://scons.tigris.org/issues/show_bug.cgi?id=2372 Review URL: http://codereview.chromium.org/43087 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11461 0039d316-1c4b-4281-b951-d872f2087c98
* Update SCons to latest checkpoint release, 1.2.0.d20090113.sgk@google.com2009-02-03175-708/+1312
| | | | | | | | Key new features include support for batch compilation (directly supported for Visual C/C++) and ${UN,}CHANGED_{SOURCES,TARGETS} variables. Review URL: http://codereview.chromium.org/20025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9101 0039d316-1c4b-4281-b951-d872f2087c98
* Rename README.google to README.chromium.mal@chromium.org2009-01-301-0/+0
| | | | | | | | | No code change. B=4380 Review URL: http://codereview.chromium.org/19501 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8988 0039d316-1c4b-4281-b951-d872f2087c98
* Update to SCons 1.2.0.sgk@google.com2008-12-30174-740/+1564
| | | | | | Review URL: http://codereview.chromium.org/17024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7511 0039d316-1c4b-4281-b951-d872f2087c98
* Set svn:eol-style to LF on the SCons *.py files.sgk@google.com2008-12-301-2253/+2253
| | | | | | Review URL: http://codereview.chromium.org/16492 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7505 0039d316-1c4b-4281-b951-d872f2087c98
* Initial subset of .vcproj file generation, covering generation of:sgk@google.com2008-12-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | base\build\base.vcproj base\build\base_gfx.vcproj base\build\base_unittests.vcproj base\build\debug_message.vcproj skia\skia.vcproj testing\gtest.vcproj third_party\icu38\icu.vcproj third_party\icu38\icudt.vcproj third_party\libpng\libpng.vcproj third_party\zlib\zlib.vcproj Supporting work in *.scons files: * Adds .h files to the input_files lists in the various *.scons files. * Add arguments to ChromeMSVSProject() to actually generate the .vcproj files. * Add MSVS.AddConfig() calls to the *.scons files to preserve the .vsprops inclusion in the generated .vcproj files. (These will go away eventually as we migrate away from .vsprops in favor of using the settings from the SCons configuration.) * Add MSVS.AddConfig() calls to preserve the .vsprops inclusion. * Move the special generation of dmg_fp/*.cc files ahead of the input file list so we can list the generated object files. * Change the 'solutions' Alias to 'msvs' so we don't mislead about what will actually be generated. Updates to the new _Node_MSVS.py module with latest from upstream prototype development: * Support configurability of: * buildtarget (used to generat project name) * RootNamespace * relative_path_prefix (to prepend './') * tools (to avoid repetition in the project configs) * Track the Visual Studio hierarchy in SCons Nodes, not DOM, so we can delay evaluation until after the complete configuration has been specified. * Add a FileList base class for the things that need, with a subclass hierarchy for the different concrete things in our tree, and a FileListWalk() function for traversing hierarchies. * Centralize turning strings into Nodes in the args2nodes() method and have AddFiles() just use it. Updates to chromium_builders.py to support all this * Add knowledge about stripping out noncompilable files (.h files) from input_files lists. * Return a Null() class if we're not generating MSVS files so we don't have to hide the other calls in if:-blocks. * Add custom ChromeFileList subclass of MSVS.FileList as a container for the file list manipulation we need to do. * Move the Chrome*() function definitions out to global space, and just use the generate() function for adding them to the passed-in environment as class methods. * Make a change to SCons (in Node/FS.py) to handle polymorphism in the new MSVS Node hierarchy. Review URL: http://codereview.chromium.org/16447 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7467 0039d316-1c4b-4281-b951-d872f2087c98
* Initial generation of native Visual Studio solution filessgk@google.com2008-12-191-2252/+2253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* Local fix to SCons bug:sgk@google.com2008-12-021-0/+4
| | | | | | | | | | | If a Node exists explicitly in a repository directory but not in the local working directory, SCons would throw an exception when globbing the entry when it tried to extract the non-existent same-named entry from the local working directory's entries dictionary. Since we know we want to return local entry anyway, make sure it exists. Review URL: http://codereview.chromium.org/13044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6212 0039d316-1c4b-4281-b951-d872f2087c98
* Moving to scons 1.1.0bradnelson@google.com2008-10-30172-443/+1138
| | | | | | Review URL: http://codereview.chromium.org/8900 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4197 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the old scons-local-0.98.3 directory and its contents.sgk@google.com2008-09-17179-43016/+40
| | | | | | | Add a scons/README.google file. Review URL: http://codereview.chromium.org/2933 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2329 0039d316-1c4b-4281-b951-d872f2087c98
* Update to the latest 1.0.1 SCons checkpoint.sgk@google.com2008-09-16179-31/+43424
| | | | | | | | | | | | The build engine (library) is getting added in a scons-local subdirectory, without version number, so we can track future changes, and more easily merge any local mods we've had to make in a pinch. Removing the old scons-local-0.98.3 directory will come seprately to avoid Rietveld limitations. Review URL: http://codereview.chromium.org/2902 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2288 0039d316-1c4b-4281-b951-d872f2087c98
* Mark scons.py executable.evanm@google.com2008-08-041-0/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@323 0039d316-1c4b-4281-b951-d872f2087c98
* Add third_party to the repository.initial.commit2008-07-27183-0/+45417
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19 0039d316-1c4b-4281-b951-d872f2087c98