diff options
author | Gary Oberbrunner <garyo@oberbrunner.com> | 2011-05-30 14:23:24 +0000 |
---|---|---|
committer | Gary Oberbrunner <garyo@oberbrunner.com> | 2011-05-30 14:23:24 +0000 |
commit | d26c0e55791b250b74ace3abb936bce4443e4c54 (patch) | |
tree | 9d07f3040db6e84208382e96b0a02066dd92271b | |
parent | f0068df02cd50b5c0df9a4868d40210306e08e5c (diff) | |
download | scons-d26c0e55791b250b74ace3abb936bce4443e4c54.tar.gz |
Handle DOS line endings in RC scanner. Fixes #2747.
-rw-r--r-- | src/CHANGES.txt | 3 | ||||
-rw-r--r-- | src/RELEASE.txt | 1 | ||||
-rw-r--r-- | src/engine/SCons/Scanner/RC.py | 2 | ||||
-rw-r--r-- | src/engine/SCons/Scanner/RCTests.py | 11 |
4 files changed, 16 insertions, 1 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt index be557b7d..7afc9d83 100644 --- a/src/CHANGES.txt +++ b/src/CHANGES.txt @@ -7,6 +7,9 @@ RELEASE 2.1.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE + From Anton Lazarev: + - Fix Windows resource compiler scanner to accept DOS line endings. + From Matthias: - Update MSVS documents to remove note indicating that only one project is currently supported per solution file. diff --git a/src/RELEASE.txt b/src/RELEASE.txt index 8cd46a95..6f71dcbb 100644 --- a/src/RELEASE.txt +++ b/src/RELEASE.txt @@ -56,6 +56,7 @@ FIXES + - Windows resource compiler (RC) scanner now handles DOS line endings - Visual Studio project generation now works when CPPPATH contains Dir nodes - Visual Studio projects are regenerated when CPPPATH or CPPDEFINES change NOTE: this will cause all MSVS projects to be regenerated with this version. diff --git a/src/engine/SCons/Scanner/RC.py b/src/engine/SCons/Scanner/RC.py index f8313fba..437b861e 100644 --- a/src/engine/SCons/Scanner/RC.py +++ b/src/engine/SCons/Scanner/RC.py @@ -40,7 +40,7 @@ def RCScan(): res_re= r'^(?:\s*#\s*(?:include)|' \ '.*?\s+(?:ICON|BITMAP|CURSOR|HTML|FONT|MESSAGETABLE|TYPELIB|REGISTRY|D3DFX)' \ '\s*.*?)' \ - '\s*(<|"| )([^>"\s]+)(?:[>" ])*$' + '\s*(<|"| )([^>"\s]+)(?:[>"\s])*$' resScanner = SCons.Scanner.ClassicCPP( "ResourceScanner", "$RCSUFFIXES", "CPPPATH", diff --git a/src/engine/SCons/Scanner/RCTests.py b/src/engine/SCons/Scanner/RCTests.py index 2d97df51..88028850 100644 --- a/src/engine/SCons/Scanner/RCTests.py +++ b/src/engine/SCons/Scanner/RCTests.py @@ -57,6 +57,7 @@ TEST_D3DFX D3DFX DISCARDABLE "testEffect.fx" """) +test.write('t3.rc','#include "t1.h"\r\n') # Create dummy include files headers = ['t1.h', @@ -144,12 +145,22 @@ class RCScannerTestCase2(unittest.TestCase): 'testregis.rgs','testtypelib.tlb'] deps_match(self, deps, headers) +class RCScannerTestCase3(unittest.TestCase): + def runTest(self): + path = [] + env = DummyEnvironment(RCSUFFIXES=['.rc','.rc2'], + CPPPATH=path) + s = SCons.Scanner.RC.RCScan() + deps = s(env.File('t3.rc'), env, path) + headers = ['t1.h'] + deps_match(self, deps, headers) def suite(): suite = unittest.TestSuite() suite.addTest(RCScannerTestCase1()) suite.addTest(RCScannerTestCase2()) + suite.addTest(RCScannerTestCase3()) return suite if __name__ == "__main__": |