diff options
author | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-17 02:25:22 +0000 |
---|---|---|
committer | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-17 02:25:22 +0000 |
commit | caeb7a0ca33ec99cd3dc68e95ca23ca4aa7e8068 (patch) | |
tree | 26d23c79d97efa44f69d1b447ae4618bf34fc609 /chrome/plugin | |
parent | 75ddd63be217e7fed76f90578a8918ab75b3ead8 (diff) | |
download | chromium_src-caeb7a0ca33ec99cd3dc68e95ca23ca4aa7e8068.zip chromium_src-caeb7a0ca33ec99cd3dc68e95ca23ca4aa7e8068.tar.gz chromium_src-caeb7a0ca33ec99cd3dc68e95ca23ca4aa7e8068.tar.bz2 |
Generate all chrome .vcproj files:
* Path name translation (/ to \) of various MSVSTool attributes.
* Explicit keyword= arguments to MSVSProject. This will likely
go away eventually in favor of uniform behavior.
* Add a relative_path_substitutions array that can be used
to substitute in Visual Studio variable like $(OutDir).
* Add a local_directory_prefix that can be set to './' to only
affect files in the current directory.
* Additional Keyword ordering in Tool attributes to continue to
match the default order Visual Studio generates.
* Add a Derived() proxy class that can wrap a File node to tell
the .vcproj generation that we want the derived file, not its
source(s), in the file list.
* In the individual *.scons files, add the necessary files (mostly
.h files) to file lists, and update MSVSProject() calls with
the additional necessary information.
Result is identical .vcproj files modulo the following differences:
* Four locales .vcproj files (da, en-US, he and zh-TW) with
source file orders that don't match the other locale .vcproj
files have re-ordered file lists to match the rest.
* Cosmetic XML changes (white space, ending tags) in:
chrome/app/chrome_dll.vcproj
chrome/app/generated_resources.vcproj
net/build/net_resources.vcproj
* Removal or addition of ./ prefixes from various files that don't
match the other file specifications within their individual
.vcproj files:
chrome/installer/util/util.vcproj
net/build/net.vcproj
net/build/net_unittests.vcproj
* Add missing empty sections (<ToolFiles>, <References>, <Globals>)
for consistency with other .vcproj files:
chrome/tools/test/image_diff/image_diff.vcproj
third_party/libpng/libpng.vcproj
third_party/zlib/zlib.vcproj
* Add missing RootNameSpace attribute:
chrome/test/automation/automation.vcproj
testing/gtest.vcproj
* Use && instead of \r\n as a command separator, to sidestep
XML-generation problems:
chrome/app/chrome_exe.vcproj
* Remove unnecessary (?) duplicate files in the file list:
chrome/browser/views/browser_views.vcproj
(event_utils.cc and event_utils.h were duplicated)
Review URL: http://codereview.chromium.org/17603
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8253 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/plugin')
-rw-r--r-- | chrome/plugin/plugin.scons | 88 |
1 files changed, 79 insertions, 9 deletions
diff --git a/chrome/plugin/plugin.scons b/chrome/plugin/plugin.scons index 26a3702..b0eb5f7 100644 --- a/chrome/plugin/plugin.scons +++ b/chrome/plugin/plugin.scons @@ -24,23 +24,45 @@ if env.Bit('windows'): ], ) -input_files = [ - 'chrome_plugin_host.cc', +input_files = ChromeFileList([ + # TODO(sgk): violate standard indentation so we don't have to + # reindent too much when we remove the explicit MSVSFilter() calls + # in favor of generating the hierarchy to reflect the file system. + MSVSFilter('NPObject', [ 'npobject_proxy.cc', + 'npobject_proxy.h', 'npobject_stub.cc', + 'npobject_stub.h', 'npobject_util.cc', + 'npobject_util.h', + ]), + 'chrome_plugin_host.cc', + 'chrome_plugin_host.h', 'plugin_channel.cc', + 'plugin_channel.h', 'plugin_channel_base.cc', + 'plugin_channel_base.h', 'plugin_main.cc', 'plugin_process.cc', + 'plugin_process.h', 'plugin_thread.cc', + 'plugin_thread.h', + '$CHROME_DIR/tools/build/win/precompiled$OBJSUFFIX', + '$CHROME_DIR/tools/build/win/precompiled.h', 'webplugin_delegate_stub.cc', + 'webplugin_delegate_stub.h', 'webplugin_proxy.cc', -] + 'webplugin_proxy.h', +]) + +if not env.Bit('windows'): + input_files.Remove( + '$CHROME_DIR/tools/build/win/precompiled$OBJSUFFIX', + ) if env.Bit('posix'): # TODO(port) - to_be_ported_files = [ + input_files.Remove( 'chrome_plugin_host.cc', 'npobject_proxy.cc', 'npobject_stub.cc', @@ -52,11 +74,59 @@ if env.Bit('posix'): 'plugin_thread.cc', 'webplugin_delegate_stub.cc', 'webplugin_proxy.cc', - ] - for remove in to_be_ported_files: - input_files.remove(remove) + ) env.ChromeLibrary('plugin', input_files) -env.ChromeMSVSProject('$CHROME_DIR/plugin/plugin.vcproj', - guid='{20A560A0-2CD0-4D9E-A58B-1F24B99C087A}') +p = env.ChromeMSVSProject('plugin.vcproj', + dest='$CHROME_SRC_DIR/chrome/plugin/plugin.vcproj', + guid='{20A560A0-2CD0-4D9E-A58B-1F24B99C087A}', + keyword='Win32Proj', + # TODO(sgk): when we can intuit the hierarchy + # from the built targets. + #buildtargets=TODO, + files=input_files, + local_directory_prefix='./', + tools=[ + 'VCPreBuildEventTool', + 'VCCustomBuildTool', + 'VCXMLDataGeneratorTool', + 'VCWebServiceProxyGeneratorTool', + 'VCMIDLTool', + 'VCCLCompilerTool', + 'VCManagedResourceCompilerTool', + 'VCResourceCompilerTool', + 'VCPreLinkEventTool', + 'VCLibrarianTool', + 'VCALinkTool', + 'VCXDCMakeTool', + 'VCBscMakeTool', + 'VCFxCopTool', + 'VCPostBuildEventTool', + ], + ConfigurationType='4') + + +p.AddConfig('Debug|Win32', + InheritedPropertySheets=[ + '$(SolutionDir)../build/common.vsprops', + '$(SolutionDir)../build/debug.vsprops', + '$(SolutionDir)../skia/using_skia.vsprops', + '../tools/build/win/precompiled.vsprops', + '$(SolutionDir)../third_party/npapi/using_npapi.vsprops', + ]) + +p.AddConfig('Release|Win32', + InheritedPropertySheets=[ + '$(SolutionDir)../build/common.vsprops', + '$(SolutionDir)../build/release.vsprops', + '$(SolutionDir)../third_party/npapi/using_npapi.vsprops', + '$(SolutionDir)../skia/using_skia.vsprops', + ]) + +p.AddFileConfig('../tools/build/win/precompiled.cc', + 'Debug|Win32', + tools=[ + MSVSTool('VCCLCompilerTool', + UsePrecompiledHeader='1'), + ]) |