OLD | NEW |
1 """SCons.SConf | 1 """SCons.SConf |
2 | 2 |
3 Autoconf-like configuration support. | 3 Autoconf-like configuration support. |
4 """ | 4 """ |
5 | 5 |
6 # | 6 # |
7 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundat
ion | 7 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 The SCons F
oundation |
8 # | 8 # |
9 # Permission is hereby granted, free of charge, to any person obtaining | 9 # Permission is hereby granted, free of charge, to any person obtaining |
10 # a copy of this software and associated documentation files (the | 10 # a copy of this software and associated documentation files (the |
11 # "Software"), to deal in the Software without restriction, including | 11 # "Software"), to deal in the Software without restriction, including |
12 # without limitation the rights to use, copy, modify, merge, publish, | 12 # without limitation the rights to use, copy, modify, merge, publish, |
13 # distribute, sublicense, and/or sell copies of the Software, and to | 13 # distribute, sublicense, and/or sell copies of the Software, and to |
14 # permit persons to whom the Software is furnished to do so, subject to | 14 # permit persons to whom the Software is furnished to do so, subject to |
15 # the following conditions: | 15 # the following conditions: |
16 # | 16 # |
17 # The above copyright notice and this permission notice shall be included | 17 # The above copyright notice and this permission notice shall be included |
18 # in all copies or substantial portions of the Software. | 18 # in all copies or substantial portions of the Software. |
19 # | 19 # |
20 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY | 20 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY |
21 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE | 21 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE |
22 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | 22 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND |
23 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE | 23 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE |
24 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION | 24 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION |
25 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | 25 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
26 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 26 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
27 # | 27 # |
28 | 28 |
29 __revision__ = "src/engine/SCons/SConf.py 3842 2008/12/20 22:59:52 scons" | 29 __revision__ = "src/engine/SCons/SConf.py 3897 2009/01/13 06:45:54 scons" |
30 | 30 |
31 import os | 31 import os |
32 import re | 32 import re |
33 import string | 33 import string |
34 import StringIO | 34 import StringIO |
35 import sys | 35 import sys |
36 import traceback | 36 import traceback |
37 import types | 37 import types |
38 | 38 |
39 import SCons.Action | 39 import SCons.Action |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
196 Return everything written to orig since the Streamer was created. | 196 Return everything written to orig since the Streamer was created. |
197 """ | 197 """ |
198 return self.s.getvalue() | 198 return self.s.getvalue() |
199 | 199 |
200 def flush(self): | 200 def flush(self): |
201 if self.orig: | 201 if self.orig: |
202 self.orig.flush() | 202 self.orig.flush() |
203 self.s.flush() | 203 self.s.flush() |
204 | 204 |
205 | 205 |
206 class SConfBuildTask(SCons.Taskmaster.Task): | 206 class SConfBuildTask(SCons.Taskmaster.AlwaysTask): |
207 """ | 207 """ |
208 This is almost the same as SCons.Script.BuildTask. Handles SConfErrors | 208 This is almost the same as SCons.Script.BuildTask. Handles SConfErrors |
209 correctly and knows about the current cache_mode. | 209 correctly and knows about the current cache_mode. |
210 """ | 210 """ |
211 def display(self, message): | 211 def display(self, message): |
212 if sconf_global.logstream: | 212 if sconf_global.logstream: |
213 sconf_global.logstream.write("scons: Configure: " + message + "\n") | 213 sconf_global.logstream.write("scons: Configure: " + message + "\n") |
214 | 214 |
215 def display_cached_string(self, bi): | 215 def display_cached_string(self, bi): |
216 """ | 216 """ |
(...skipping 786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1003 if libs == []: | 1003 if libs == []: |
1004 libs = [None] | 1004 libs = [None] |
1005 | 1005 |
1006 if not SCons.Util.is_List(libs): | 1006 if not SCons.Util.is_List(libs): |
1007 libs = [libs] | 1007 libs = [libs] |
1008 | 1008 |
1009 res = SCons.Conftest.CheckLib(context, libs, None, prog_prefix, | 1009 res = SCons.Conftest.CheckLib(context, libs, None, prog_prefix, |
1010 call = call, language = language, autoadd = autoadd) | 1010 call = call, language = language, autoadd = autoadd) |
1011 context.did_show_result = 1 | 1011 context.did_show_result = 1 |
1012 return not res | 1012 return not res |
OLD | NEW |