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

Issue 16447: Initial subset of .vcproj file generation, covering generation of:... (Closed)

Created:
12 years ago by sgk
Modified:
9 years, 5 months ago
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

Initial subset of .vcproj file generation, covering generation of: 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. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=7467

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 2

Patch Set 3 : '' #

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1811 lines, -315 lines) Patch
M base/base_lib.scons View 1 2 3 4 5 6 chunks +266 lines, -41 lines 0 comments Download
M base/base_sln.scons View 1 1 chunk +1 line, -1 line 0 comments Download
M base/base_unittests.scons View 3 chunks +95 lines, -33 lines 0 comments Download
M base/debug_message.scons View 1 2 3 1 chunk +50 lines, -1 line 0 comments Download
M base/gfx/base_gfx.scons View 1 2 3 4 5 1 chunk +55 lines, -10 lines 0 comments Download
M build/SConscript.main View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/chrome_sln.scons View 1 1 chunk +1 line, -1 line 0 comments Download
M net/net_sln.scons View 1 1 chunk +1 line, -1 line 0 comments Download
M sandbox/sandbox_sln.scons View 1 1 chunk +1 line, -1 line 0 comments Download
M site_scons/site_tools/_Node_MSVS.py View 1 2 3 8 chunks +658 lines, -24 lines 0 comments Download
M site_scons/site_tools/chromium_builders.py View 1 2 3 1 chunk +96 lines, -40 lines 0 comments Download
M skia/SConscript View 4 5 6 3 chunks +433 lines, -132 lines 0 comments Download
M testing/SConscript.gtest View 1 2 3 1 chunk +54 lines, -4 lines 0 comments Download
M third_party/libpng/libpng.scons View 1 2 3 1 chunk +54 lines, -19 lines 0 comments Download
M third_party/scons/scons-local/SCons/Node/FS.py View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/zlib/zlib.scons View 1 2 3 1 chunk +43 lines, -4 lines 0 comments Download
M webkit/webkit_sln.scons View 1 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 4 (0 generated)
sgk
This starts with a manageable subset of the .vcproj files used to build base. I ...
12 years ago (2008-12-23 05:00:44 UTC) #1
bradn
LGTM http://codereview.chromium.org/16447/diff/17/30 File base/base_lib.scons (right): http://codereview.chromium.org/16447/diff/17/30#newcode384 Line 384: # 'debug_message.vcproj', I assume this is something ...
12 years ago (2008-12-23 18:20:42 UTC) #2
Nicolas Sylvain
mostly rubber stamp lgtm
12 years ago (2008-12-23 20:23:38 UTC) #3
sgk
12 years ago (2008-12-24 03:19:32 UTC) #4
Updated with generation of the additional .vcproj files necessary for base
(skia.vcproj, icu.vcproj, icudt.vcproj, base_unittests.vcproj) and support for
their explicit MSVSFilter hierarchies.  This required some additional
refactoring in the emerging Node.MSVS hierarchy.

I'm going to TBR this, given the previous lgtm, the fact that it passes on all
architectures on the try server, the need to keep making progress, and the
general rubber-stampiness of this anyway.  Feedback still welcome, of course.

http://codereview.chromium.org/16447/diff/17/30
File base/base_lib.scons (right):

http://codereview.chromium.org/16447/diff/17/30#newcode384
Line 384: #    'debug_message.vcproj',
On 2008/12/23 18:20:42, bradn wrote:
> I assume this is something coming later?

Commented out before adding debug_message.vcproj to the list, now restored. 
Thanks.

Powered by Google App Engine
This is Rietveld 408576698