OLD | NEW |
1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import re | 5 import re |
6 | 6 |
7 Import('env') | 7 Import('env') |
8 | 8 |
9 env = env.Clone(OPEN_VCDIFF_DIR='open-vcdiff') | 9 env = env.Clone(OPEN_VCDIFF_DIR='open-vcdiff') |
10 | 10 |
11 cpppath = [ | 11 cpppath = [ |
12 '$OPEN_VCDIFF_DIR/src', | 12 '$OPEN_VCDIFF_DIR/src', |
13 ] | 13 ] |
14 | 14 |
15 if env.Bit('windows'): | 15 if env.Bit('windows'): |
16 cpppath.append('$OPEN_VCDIFF_DIR/vsprojects') | 16 cpppath.append('$OPEN_VCDIFF_DIR/vsprojects') |
17 | 17 |
18 env.Prepend(CPPPATH = cpppath) | 18 env.Prepend(CPPPATH = cpppath) |
19 | 19 |
20 input_files = [ | 20 input_files = ChromeFileList([ |
21 '$OPEN_VCDIFF_DIR/src/addrcache.cc', | 21 # TODO(sgk): violate standard indentation so we don't have to |
22 '$OPEN_VCDIFF_DIR/src/adler32.c', | 22 # reindent too much when we remove the explicit MSVSFilter() calls |
23 '$OPEN_VCDIFF_DIR/src/blockhash.cc', | 23 # in favor of generating the hierarchy to reflect the file system. |
24 '$OPEN_VCDIFF_DIR/src/codetable.cc', | 24 MSVSFilter('Header Files', [ |
25 '$OPEN_VCDIFF_DIR/src/decodetable.cc', | 25 'open-vcdiff/src/blockhash.h', |
26 '$OPEN_VCDIFF_DIR/src/encodetable.cc', | 26 'open-vcdiff/src/checksum.h', |
27 '$OPEN_VCDIFF_DIR/src/headerparser.cc', | 27 'open-vcdiff/src/codetable.h', |
28 '$OPEN_VCDIFF_DIR/src/instruction_map.cc', | 28 'open-vcdiff/src/compile_assert.h', |
29 '$OPEN_VCDIFF_DIR/src/logging.cc', | 29 'open-vcdiff/vsprojects/config.h', |
30 '$OPEN_VCDIFF_DIR/src/varint_bigendian.cc', | 30 'open-vcdiff/src/decodetable.h', |
31 '$OPEN_VCDIFF_DIR/src/vcdecoder.cc', | 31 'open-vcdiff/src/encodetable.h', |
32 '$OPEN_VCDIFF_DIR/src/vcdiffengine.cc', | 32 'open-vcdiff/src/headerparser.h', |
33 ] | 33 'open-vcdiff/src/logging.h', |
| 34 'open-vcdiff/src/google/output_string.h', |
| 35 'open-vcdiff/src/rolling_hash.h', |
| 36 'open-vcdiff/vsprojects/stdint.h', |
| 37 'open-vcdiff/src/testing.h', |
| 38 'open-vcdiff/src/varint_bigendian.h', |
| 39 'open-vcdiff/src/google/vcdecoder.h', |
| 40 'open-vcdiff/src/vcdiff_defs.h', |
| 41 'open-vcdiff/src/vcdiffengine.h', |
| 42 'open-vcdiff/src/zconf.h', |
| 43 'open-vcdiff/src/zlib.h', |
| 44 ]), |
| 45 MSVSFilter('Source Files', [ |
| 46 'open-vcdiff/src/addrcache.cc', |
| 47 'open-vcdiff/src/adler32.c', |
| 48 'open-vcdiff/src/blockhash.cc', |
| 49 'open-vcdiff/src/codetable.cc', |
| 50 'open-vcdiff/src/decodetable.cc', |
| 51 'open-vcdiff/src/encodetable.cc', |
| 52 'open-vcdiff/src/headerparser.cc', |
| 53 'open-vcdiff/src/logging.cc', |
| 54 'open-vcdiff/src/varint_bigendian.cc', |
| 55 'open-vcdiff/src/vcdecoder.cc', |
| 56 'open-vcdiff/src/vcdiffengine.cc', |
| 57 ]), |
| 58 ]) |
34 | 59 |
35 env.ChromeLibrary('sdch', input_files) | 60 env.ChromeLibrary('sdch', input_files) |
36 | 61 |
37 env.ChromeMSVSProject('$SDCH_DIR/sdch.vcproj', | |
38 guid='{F54ABC59-5C00-414A-A9BA-BAF26D1699F0}') | |
39 | |
40 if env.Bit('posix'): | 62 if env.Bit('posix'): |
41 | 63 |
42 # Generate a target config.h file from a source config.h.in file. | 64 # Generate a target config.h file from a source config.h.in file. |
43 # | 65 # |
44 # The list of defines has been taken empirically from Autoconf | 66 # The list of defines has been taken empirically from Autoconf |
45 # (./configure) runs on Mac OS X and Ubuntu Hardy. | 67 # (./configure) runs on Mac OS X and Ubuntu Hardy. |
46 | 68 |
47 defines = [ | 69 defines = [ |
48 'HAVE_DLFCN_H', | 70 'HAVE_DLFCN_H', |
49 'HAVE_FNMATCH_H', | 71 'HAVE_FNMATCH_H', |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 | 139 |
118 header = '/* src/config.h. Generated by SCons. */\n' | 140 header = '/* src/config.h. Generated by SCons. */\n' |
119 open(str(target[0]), 'w').write(header + contents) | 141 open(str(target[0]), 'w').write(header + contents) |
120 | 142 |
121 # varlist['DEFINES'] below makes the target config.h file depend | 143 # varlist['DEFINES'] below makes the target config.h file depend |
122 # on the list of definitions in the passed-in $DEFINES variable. | 144 # on the list of definitions in the passed-in $DEFINES variable. |
123 env.Command('$OPEN_VCDIFF_DIR/src/config.h', | 145 env.Command('$OPEN_VCDIFF_DIR/src/config.h', |
124 '$OPEN_VCDIFF_DIR/src/config.h.in', | 146 '$OPEN_VCDIFF_DIR/src/config.h.in', |
125 Action(AutoConfig, varlist=['DEFINES']), | 147 Action(AutoConfig, varlist=['DEFINES']), |
126 DEFINES=defines) | 148 DEFINES=defines) |
| 149 |
| 150 |
| 151 p = env.ChromeMSVSProject('sdch.vcproj', |
| 152 dest='$CHROME_SRC_DIR/sdch/sdch.vcproj', |
| 153 guid='{F54ABC59-5C00-414A-A9BA-BAF26D1699F0}', |
| 154 keyword='Win32Proj', |
| 155 # TODO(sgk): when we can intuit the hierarchy |
| 156 # from the built targets. |
| 157 #buildtargets=TODO, |
| 158 files=input_files, |
| 159 relative_path_prefix='./', |
| 160 tools=[ |
| 161 'VCPreBuildEventTool', |
| 162 'VCCustomBuildTool', |
| 163 'VCXMLDataGeneratorTool', |
| 164 'VCWebServiceProxyGeneratorTool', |
| 165 'VCMIDLTool', |
| 166 MSVSTool('VCCLCompilerTool', |
| 167 AdditionalIncludeDirectories=[ |
| 168 './open-vcdiff/vsprojects', |
| 169 '', |
| 170 ], |
| 171 DefaultCharIsUnsigned="true"), |
| 172 'VCManagedResourceCompilerTool', |
| 173 'VCResourceCompilerTool', |
| 174 'VCPreLinkEventTool', |
| 175 'VCLibrarianTool', |
| 176 'VCALinkTool', |
| 177 'VCXDCMakeTool', |
| 178 'VCBscMakeTool', |
| 179 'VCFxCopTool', |
| 180 'VCPostBuildEventTool', |
| 181 ], |
| 182 ConfigurationType='4') |
| 183 |
| 184 |
| 185 p.AddConfig('Debug|Win32', |
| 186 InheritedPropertySheets=[ |
| 187 '$(SolutionDir)../build/debug.vsprops', |
| 188 '$(SolutionDir)../sdch/using_sdch.vsprops', |
| 189 ]) |
| 190 |
| 191 p.AddConfig('Release|Win32', |
| 192 InheritedPropertySheets=[ |
| 193 '$(SolutionDir)../build/release.vsprops', |
| 194 '$(SolutionDir)../sdch/using_sdch.vsprops', |
| 195 ]) |
OLD | NEW |