libv8 3.3.10.2 → 3.3.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. data/.gitignore +1 -0
  2. data/README.md +35 -7
  3. data/Rakefile +61 -20
  4. data/ext/libv8/extconf.rb +15 -0
  5. data/lib/libv8/scons/CHANGES.txt +231 -24
  6. data/lib/libv8/scons/LICENSE.txt +1 -1
  7. data/lib/libv8/scons/MANIFEST +1 -0
  8. data/lib/libv8/scons/PKG-INFO +1 -1
  9. data/lib/libv8/scons/README.txt +9 -9
  10. data/lib/libv8/scons/RELEASE.txt +77 -75
  11. data/lib/libv8/scons/engine/SCons/Action.py +22 -6
  12. data/lib/libv8/scons/engine/SCons/Builder.py +2 -2
  13. data/lib/libv8/scons/engine/SCons/CacheDir.py +2 -2
  14. data/lib/libv8/scons/engine/SCons/Debug.py +2 -2
  15. data/lib/libv8/scons/engine/SCons/Defaults.py +24 -10
  16. data/lib/libv8/scons/engine/SCons/Environment.py +118 -19
  17. data/lib/libv8/scons/engine/SCons/Errors.py +2 -2
  18. data/lib/libv8/scons/engine/SCons/Executor.py +2 -2
  19. data/lib/libv8/scons/engine/SCons/Job.py +2 -2
  20. data/lib/libv8/scons/engine/SCons/Memoize.py +2 -2
  21. data/lib/libv8/scons/engine/SCons/Node/Alias.py +2 -2
  22. data/lib/libv8/scons/engine/SCons/Node/FS.py +281 -121
  23. data/lib/libv8/scons/engine/SCons/Node/Python.py +2 -2
  24. data/lib/libv8/scons/engine/SCons/Node/__init__.py +6 -5
  25. data/lib/libv8/scons/engine/SCons/Options/BoolOption.py +2 -2
  26. data/lib/libv8/scons/engine/SCons/Options/EnumOption.py +2 -2
  27. data/lib/libv8/scons/engine/SCons/Options/ListOption.py +2 -2
  28. data/lib/libv8/scons/engine/SCons/Options/PackageOption.py +2 -2
  29. data/lib/libv8/scons/engine/SCons/Options/PathOption.py +2 -2
  30. data/lib/libv8/scons/engine/SCons/Options/__init__.py +2 -2
  31. data/lib/libv8/scons/engine/SCons/PathList.py +2 -2
  32. data/lib/libv8/scons/engine/SCons/Platform/__init__.py +2 -2
  33. data/lib/libv8/scons/engine/SCons/Platform/aix.py +2 -2
  34. data/lib/libv8/scons/engine/SCons/Platform/cygwin.py +2 -2
  35. data/lib/libv8/scons/engine/SCons/Platform/darwin.py +27 -3
  36. data/lib/libv8/scons/engine/SCons/Platform/hpux.py +2 -2
  37. data/lib/libv8/scons/engine/SCons/Platform/irix.py +2 -2
  38. data/lib/libv8/scons/engine/SCons/Platform/os2.py +2 -2
  39. data/lib/libv8/scons/engine/SCons/Platform/posix.py +2 -2
  40. data/lib/libv8/scons/engine/SCons/Platform/sunos.py +2 -2
  41. data/lib/libv8/scons/engine/SCons/Platform/win32.py +2 -2
  42. data/lib/libv8/scons/engine/SCons/SConf.py +2 -2
  43. data/lib/libv8/scons/engine/SCons/SConsign.py +9 -3
  44. data/lib/libv8/scons/engine/SCons/Scanner/C.py +2 -2
  45. data/lib/libv8/scons/engine/SCons/Scanner/D.py +2 -2
  46. data/lib/libv8/scons/engine/SCons/Scanner/Dir.py +2 -2
  47. data/lib/libv8/scons/engine/SCons/Scanner/Fortran.py +2 -2
  48. data/lib/libv8/scons/engine/SCons/Scanner/IDL.py +2 -2
  49. data/lib/libv8/scons/engine/SCons/Scanner/LaTeX.py +5 -2
  50. data/lib/libv8/scons/engine/SCons/Scanner/Prog.py +2 -2
  51. data/lib/libv8/scons/engine/SCons/Scanner/RC.py +3 -3
  52. data/lib/libv8/scons/engine/SCons/Scanner/__init__.py +2 -2
  53. data/lib/libv8/scons/engine/SCons/Script/Interactive.py +2 -2
  54. data/lib/libv8/scons/engine/SCons/Script/Main.py +82 -11
  55. data/lib/libv8/scons/engine/SCons/Script/SConsOptions.py +5 -5
  56. data/lib/libv8/scons/engine/SCons/Script/SConscript.py +2 -2
  57. data/lib/libv8/scons/engine/SCons/Script/__init__.py +2 -2
  58. data/lib/libv8/scons/engine/SCons/Sig.py +2 -2
  59. data/lib/libv8/scons/engine/SCons/Subst.py +2 -2
  60. data/lib/libv8/scons/engine/SCons/Taskmaster.py +10 -2
  61. data/lib/libv8/scons/engine/SCons/Tool/386asm.py +2 -2
  62. data/lib/libv8/scons/engine/SCons/Tool/BitKeeper.py +2 -2
  63. data/lib/libv8/scons/engine/SCons/Tool/CVS.py +2 -2
  64. data/lib/libv8/scons/engine/SCons/Tool/FortranCommon.py +19 -2
  65. data/lib/libv8/scons/engine/SCons/Tool/JavaCommon.py +2 -2
  66. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/__init__.py +2 -2
  67. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/arch.py +2 -2
  68. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/common.py +2 -2
  69. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/netframework.py +2 -2
  70. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/sdk.py +2 -2
  71. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/vc.py +9 -6
  72. data/lib/libv8/scons/engine/SCons/Tool/MSCommon/vs.py +29 -2
  73. data/lib/libv8/scons/engine/SCons/Tool/Perforce.py +2 -2
  74. data/lib/libv8/scons/engine/SCons/Tool/PharLapCommon.py +2 -2
  75. data/lib/libv8/scons/engine/SCons/Tool/RCS.py +2 -2
  76. data/lib/libv8/scons/engine/SCons/Tool/SCCS.py +2 -2
  77. data/lib/libv8/scons/engine/SCons/Tool/Subversion.py +2 -2
  78. data/lib/libv8/scons/engine/SCons/Tool/__init__.py +3 -3
  79. data/lib/libv8/scons/engine/SCons/Tool/aixc++.py +2 -2
  80. data/lib/libv8/scons/engine/SCons/Tool/aixcc.py +2 -2
  81. data/lib/libv8/scons/engine/SCons/Tool/aixf77.py +2 -2
  82. data/lib/libv8/scons/engine/SCons/Tool/aixlink.py +2 -2
  83. data/lib/libv8/scons/engine/SCons/Tool/applelink.py +2 -2
  84. data/lib/libv8/scons/engine/SCons/Tool/ar.py +2 -2
  85. data/lib/libv8/scons/engine/SCons/Tool/as.py +2 -2
  86. data/lib/libv8/scons/engine/SCons/Tool/bcc32.py +2 -2
  87. data/lib/libv8/scons/engine/SCons/Tool/c++.py +2 -2
  88. data/lib/libv8/scons/engine/SCons/Tool/cc.py +2 -2
  89. data/lib/libv8/scons/engine/SCons/Tool/cvf.py +2 -2
  90. data/lib/libv8/scons/engine/SCons/Tool/default.py +2 -2
  91. data/lib/libv8/scons/engine/SCons/Tool/dmd.py +24 -7
  92. data/lib/libv8/scons/engine/SCons/Tool/dvi.py +2 -2
  93. data/lib/libv8/scons/engine/SCons/Tool/dvipdf.py +3 -2
  94. data/lib/libv8/scons/engine/SCons/Tool/dvips.py +3 -2
  95. data/lib/libv8/scons/engine/SCons/Tool/f03.py +63 -0
  96. data/lib/libv8/scons/engine/SCons/Tool/f77.py +2 -2
  97. data/lib/libv8/scons/engine/SCons/Tool/f90.py +2 -2
  98. data/lib/libv8/scons/engine/SCons/Tool/f95.py +2 -2
  99. data/lib/libv8/scons/engine/SCons/Tool/filesystem.py +2 -2
  100. data/lib/libv8/scons/engine/SCons/Tool/fortran.py +2 -2
  101. data/lib/libv8/scons/engine/SCons/Tool/g++.py +2 -2
  102. data/lib/libv8/scons/engine/SCons/Tool/g77.py +2 -2
  103. data/lib/libv8/scons/engine/SCons/Tool/gas.py +2 -2
  104. data/lib/libv8/scons/engine/SCons/Tool/gcc.py +2 -2
  105. data/lib/libv8/scons/engine/SCons/Tool/gfortran.py +3 -3
  106. data/lib/libv8/scons/engine/SCons/Tool/gnulink.py +2 -3
  107. data/lib/libv8/scons/engine/SCons/Tool/gs.py +2 -2
  108. data/lib/libv8/scons/engine/SCons/Tool/hpc++.py +2 -2
  109. data/lib/libv8/scons/engine/SCons/Tool/hpcc.py +2 -2
  110. data/lib/libv8/scons/engine/SCons/Tool/hplink.py +2 -2
  111. data/lib/libv8/scons/engine/SCons/Tool/icc.py +2 -2
  112. data/lib/libv8/scons/engine/SCons/Tool/icl.py +2 -2
  113. data/lib/libv8/scons/engine/SCons/Tool/ifl.py +2 -2
  114. data/lib/libv8/scons/engine/SCons/Tool/ifort.py +2 -2
  115. data/lib/libv8/scons/engine/SCons/Tool/ilink.py +2 -2
  116. data/lib/libv8/scons/engine/SCons/Tool/ilink32.py +2 -2
  117. data/lib/libv8/scons/engine/SCons/Tool/install.py +57 -3
  118. data/lib/libv8/scons/engine/SCons/Tool/intelc.py +65 -25
  119. data/lib/libv8/scons/engine/SCons/Tool/ipkg.py +2 -2
  120. data/lib/libv8/scons/engine/SCons/Tool/jar.py +9 -3
  121. data/lib/libv8/scons/engine/SCons/Tool/javac.py +2 -2
  122. data/lib/libv8/scons/engine/SCons/Tool/javah.py +2 -2
  123. data/lib/libv8/scons/engine/SCons/Tool/latex.py +3 -2
  124. data/lib/libv8/scons/engine/SCons/Tool/lex.py +2 -2
  125. data/lib/libv8/scons/engine/SCons/Tool/link.py +6 -5
  126. data/lib/libv8/scons/engine/SCons/Tool/linkloc.py +2 -2
  127. data/lib/libv8/scons/engine/SCons/Tool/m4.py +2 -2
  128. data/lib/libv8/scons/engine/SCons/Tool/masm.py +2 -2
  129. data/lib/libv8/scons/engine/SCons/Tool/midl.py +2 -2
  130. data/lib/libv8/scons/engine/SCons/Tool/mingw.py +31 -10
  131. data/lib/libv8/scons/engine/SCons/Tool/mslib.py +2 -2
  132. data/lib/libv8/scons/engine/SCons/Tool/mslink.py +61 -9
  133. data/lib/libv8/scons/engine/SCons/Tool/mssdk.py +2 -2
  134. data/lib/libv8/scons/engine/SCons/Tool/msvc.py +21 -11
  135. data/lib/libv8/scons/engine/SCons/Tool/msvs.py +477 -59
  136. data/lib/libv8/scons/engine/SCons/Tool/mwcc.py +2 -2
  137. data/lib/libv8/scons/engine/SCons/Tool/mwld.py +2 -2
  138. data/lib/libv8/scons/engine/SCons/Tool/nasm.py +2 -2
  139. data/lib/libv8/scons/engine/SCons/Tool/packaging/__init__.py +2 -2
  140. data/lib/libv8/scons/engine/SCons/Tool/packaging/ipk.py +2 -2
  141. data/lib/libv8/scons/engine/SCons/Tool/packaging/msi.py +2 -2
  142. data/lib/libv8/scons/engine/SCons/Tool/packaging/rpm.py +2 -2
  143. data/lib/libv8/scons/engine/SCons/Tool/packaging/src_tarbz2.py +2 -2
  144. data/lib/libv8/scons/engine/SCons/Tool/packaging/src_targz.py +2 -2
  145. data/lib/libv8/scons/engine/SCons/Tool/packaging/src_zip.py +2 -2
  146. data/lib/libv8/scons/engine/SCons/Tool/packaging/tarbz2.py +2 -2
  147. data/lib/libv8/scons/engine/SCons/Tool/packaging/targz.py +2 -2
  148. data/lib/libv8/scons/engine/SCons/Tool/packaging/zip.py +2 -2
  149. data/lib/libv8/scons/engine/SCons/Tool/pdf.py +2 -2
  150. data/lib/libv8/scons/engine/SCons/Tool/pdflatex.py +3 -2
  151. data/lib/libv8/scons/engine/SCons/Tool/pdftex.py +3 -2
  152. data/lib/libv8/scons/engine/SCons/Tool/qt.py +2 -2
  153. data/lib/libv8/scons/engine/SCons/Tool/rmic.py +9 -3
  154. data/lib/libv8/scons/engine/SCons/Tool/rpcgen.py +2 -2
  155. data/lib/libv8/scons/engine/SCons/Tool/rpm.py +2 -2
  156. data/lib/libv8/scons/engine/SCons/Tool/sgiar.py +2 -2
  157. data/lib/libv8/scons/engine/SCons/Tool/sgic++.py +2 -2
  158. data/lib/libv8/scons/engine/SCons/Tool/sgicc.py +2 -2
  159. data/lib/libv8/scons/engine/SCons/Tool/sgilink.py +2 -3
  160. data/lib/libv8/scons/engine/SCons/Tool/sunar.py +2 -2
  161. data/lib/libv8/scons/engine/SCons/Tool/sunc++.py +2 -2
  162. data/lib/libv8/scons/engine/SCons/Tool/suncc.py +2 -2
  163. data/lib/libv8/scons/engine/SCons/Tool/sunf77.py +2 -2
  164. data/lib/libv8/scons/engine/SCons/Tool/sunf90.py +2 -2
  165. data/lib/libv8/scons/engine/SCons/Tool/sunf95.py +2 -2
  166. data/lib/libv8/scons/engine/SCons/Tool/sunlink.py +2 -3
  167. data/lib/libv8/scons/engine/SCons/Tool/swig.py +6 -5
  168. data/lib/libv8/scons/engine/SCons/Tool/tar.py +2 -2
  169. data/lib/libv8/scons/engine/SCons/Tool/tex.py +96 -43
  170. data/lib/libv8/scons/engine/SCons/Tool/textfile.py +2 -2
  171. data/lib/libv8/scons/engine/SCons/Tool/tlib.py +2 -2
  172. data/lib/libv8/scons/engine/SCons/Tool/wix.py +2 -2
  173. data/lib/libv8/scons/engine/SCons/Tool/yacc.py +12 -2
  174. data/lib/libv8/scons/engine/SCons/Tool/zip.py +2 -2
  175. data/lib/libv8/scons/engine/SCons/Util.py +3 -3
  176. data/lib/libv8/scons/engine/SCons/Variables/BoolVariable.py +2 -2
  177. data/lib/libv8/scons/engine/SCons/Variables/EnumVariable.py +3 -3
  178. data/lib/libv8/scons/engine/SCons/Variables/ListVariable.py +2 -2
  179. data/lib/libv8/scons/engine/SCons/Variables/PackageVariable.py +2 -2
  180. data/lib/libv8/scons/engine/SCons/Variables/PathVariable.py +2 -2
  181. data/lib/libv8/scons/engine/SCons/Variables/__init__.py +2 -2
  182. data/lib/libv8/scons/engine/SCons/Warnings.py +2 -2
  183. data/lib/libv8/scons/engine/SCons/__init__.py +6 -6
  184. data/lib/libv8/scons/engine/SCons/compat/__init__.py +2 -2
  185. data/lib/libv8/scons/engine/SCons/compat/_scons_builtins.py +2 -2
  186. data/lib/libv8/scons/engine/SCons/compat/_scons_collections.py +2 -2
  187. data/lib/libv8/scons/engine/SCons/compat/_scons_dbm.py +2 -2
  188. data/lib/libv8/scons/engine/SCons/compat/_scons_hashlib.py +2 -2
  189. data/lib/libv8/scons/engine/SCons/compat/_scons_io.py +2 -2
  190. data/lib/libv8/scons/engine/SCons/cpp.py +2 -2
  191. data/lib/libv8/scons/engine/SCons/dblite.py +4 -1
  192. data/lib/libv8/scons/engine/SCons/exitfuncs.py +2 -2
  193. data/lib/libv8/scons/scons-time.1 +3 -3
  194. data/lib/libv8/scons/scons.1 +1209 -1203
  195. data/lib/libv8/scons/sconsign.1 +3 -3
  196. data/lib/libv8/scons/script/scons +22 -22
  197. data/lib/libv8/scons/script/scons-time +2 -2
  198. data/lib/libv8/scons/script/scons.bat +7 -4
  199. data/lib/libv8/scons/script/sconsign +21 -20
  200. data/lib/libv8/scons/setup.cfg +0 -1
  201. data/lib/libv8/scons/setup.py +38 -40
  202. data/lib/libv8/version.rb +4 -2
  203. data/libv8.gemspec +7 -2
  204. metadata +46 -67
@@ -8,7 +8,7 @@ Coded by Andy Friesen
8
8
  """
9
9
 
10
10
  #
11
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
11
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
12
12
  #
13
13
  # Permission is hereby granted, free of charge, to any person obtaining
14
14
  # a copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@ Coded by Andy Friesen
30
30
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
31
  #
32
32
 
33
- __revision__ = "src/engine/SCons/Scanner/D.py 5134 2010/08/16 23:02:40 bdeegan"
33
+ __revision__ = "src/engine/SCons/Scanner/D.py 5357 2011/09/09 21:31:03 bdeegan"
34
34
 
35
35
  import re
36
36
 
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
2
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -20,7 +20,7 @@
20
20
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
21
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
22
 
23
- __revision__ = "src/engine/SCons/Scanner/Dir.py 5134 2010/08/16 23:02:40 bdeegan"
23
+ __revision__ = "src/engine/SCons/Scanner/Dir.py 5357 2011/09/09 21:31:03 bdeegan"
24
24
 
25
25
  import SCons.Node.FS
26
26
  import SCons.Scanner
@@ -5,7 +5,7 @@ This module implements the dependency scanner for Fortran code.
5
5
  """
6
6
 
7
7
  #
8
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
8
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
9
9
  #
10
10
  # Permission is hereby granted, free of charge, to any person obtaining
11
11
  # a copy of this software and associated documentation files (the
@@ -26,7 +26,7 @@ This module implements the dependency scanner for Fortran code.
26
26
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27
27
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
28
 
29
- __revision__ = "src/engine/SCons/Scanner/Fortran.py 5134 2010/08/16 23:02:40 bdeegan"
29
+ __revision__ = "src/engine/SCons/Scanner/Fortran.py 5357 2011/09/09 21:31:03 bdeegan"
30
30
 
31
31
  import re
32
32
 
@@ -6,7 +6,7 @@ Definition Language) files.
6
6
  """
7
7
 
8
8
  #
9
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
9
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
10
10
  #
11
11
  # Permission is hereby granted, free of charge, to any person obtaining
12
12
  # a copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@ Definition Language) files.
28
28
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
29
  #
30
30
 
31
- __revision__ = "src/engine/SCons/Scanner/IDL.py 5134 2010/08/16 23:02:40 bdeegan"
31
+ __revision__ = "src/engine/SCons/Scanner/IDL.py 5357 2011/09/09 21:31:03 bdeegan"
32
32
 
33
33
  import SCons.Node.FS
34
34
  import SCons.Scanner
@@ -5,7 +5,7 @@ This module implements the dependency scanner for LaTeX code.
5
5
  """
6
6
 
7
7
  #
8
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
8
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
9
9
  #
10
10
  # Permission is hereby granted, free of charge, to any person obtaining
11
11
  # a copy of this software and associated documentation files (the
@@ -27,7 +27,7 @@ This module implements the dependency scanner for LaTeX code.
27
27
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
28
  #
29
29
 
30
- __revision__ = "src/engine/SCons/Scanner/LaTeX.py 5134 2010/08/16 23:02:40 bdeegan"
30
+ __revision__ = "src/engine/SCons/Scanner/LaTeX.py 5357 2011/09/09 21:31:03 bdeegan"
31
31
 
32
32
  import os.path
33
33
  import re
@@ -148,6 +148,8 @@ class LaTeX(SCons.Scanner.Base):
148
148
  env['TEXINPUTS'] for "lstinputlisting" keyword
149
149
  env['BIBINPUTS'] for "bibliography" keyword
150
150
  env['BSTINPUTS'] for "bibliographystyle" keyword
151
+ env['INDEXSTYLE'] for "makeindex" keyword, no scanning support needed
152
+ just allows user to set it if needed.
151
153
 
152
154
  FIXME: also look for the class or style in document[class|style]{}
153
155
  FIXME: also look for the argument of bibliographystyle{}
@@ -157,6 +159,7 @@ class LaTeX(SCons.Scanner.Base):
157
159
  'includegraphics': 'TEXINPUTS',
158
160
  'bibliography': 'BIBINPUTS',
159
161
  'bibliographystyle': 'BSTINPUTS',
162
+ 'makeindex': 'INDEXSTYLE',
160
163
  'usepackage': 'TEXINPUTS',
161
164
  'lstinputlisting': 'TEXINPUTS'}
162
165
  env_variables = SCons.Util.unique(list(keyword_paths.values()))
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
2
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -21,7 +21,7 @@
21
21
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
22
  #
23
23
 
24
- __revision__ = "src/engine/SCons/Scanner/Prog.py 5134 2010/08/16 23:02:40 bdeegan"
24
+ __revision__ = "src/engine/SCons/Scanner/Prog.py 5357 2011/09/09 21:31:03 bdeegan"
25
25
 
26
26
  import SCons.Node
27
27
  import SCons.Node.FS
@@ -6,7 +6,7 @@ Definition Language) files.
6
6
  """
7
7
 
8
8
  #
9
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
9
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
10
10
  #
11
11
  # Permission is hereby granted, free of charge, to any person obtaining
12
12
  # a copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@ Definition Language) files.
28
28
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
29
  #
30
30
 
31
- __revision__ = "src/engine/SCons/Scanner/RC.py 5134 2010/08/16 23:02:40 bdeegan"
31
+ __revision__ = "src/engine/SCons/Scanner/RC.py 5357 2011/09/09 21:31:03 bdeegan"
32
32
 
33
33
  import SCons.Node.FS
34
34
  import SCons.Scanner
@@ -40,7 +40,7 @@ def RCScan():
40
40
  res_re= r'^(?:\s*#\s*(?:include)|' \
41
41
  '.*?\s+(?:ICON|BITMAP|CURSOR|HTML|FONT|MESSAGETABLE|TYPELIB|REGISTRY|D3DFX)' \
42
42
  '\s*.*?)' \
43
- '\s*(<|"| )([^>"\s]+)(?:[>" ])*$'
43
+ '\s*(<|"| )([^>"\s]+)(?:[>"\s])*$'
44
44
  resScanner = SCons.Scanner.ClassicCPP( "ResourceScanner",
45
45
  "$RCSUFFIXES",
46
46
  "CPPPATH",
@@ -5,7 +5,7 @@ The Scanner package for the SCons software construction utility.
5
5
  """
6
6
 
7
7
  #
8
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
8
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
9
9
  #
10
10
  # Permission is hereby granted, free of charge, to any person obtaining
11
11
  # a copy of this software and associated documentation files (the
@@ -27,7 +27,7 @@ The Scanner package for the SCons software construction utility.
27
27
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28
28
  #
29
29
 
30
- __revision__ = "src/engine/SCons/Scanner/__init__.py 5134 2010/08/16 23:02:40 bdeegan"
30
+ __revision__ = "src/engine/SCons/Scanner/__init__.py 5357 2011/09/09 21:31:03 bdeegan"
31
31
 
32
32
  import re
33
33
 
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
2
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -20,7 +20,7 @@
20
20
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
21
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
22
 
23
- __revision__ = "src/engine/SCons/Script/Interactive.py 5134 2010/08/16 23:02:40 bdeegan"
23
+ __revision__ = "src/engine/SCons/Script/Interactive.py 5357 2011/09/09 21:31:03 bdeegan"
24
24
 
25
25
  __doc__ = """
26
26
  SCons interactive mode
@@ -13,7 +13,7 @@ it goes here.
13
13
  unsupported_python_version = (2, 3, 0)
14
14
  deprecated_python_version = (2, 4, 0)
15
15
 
16
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
16
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
17
17
  #
18
18
  # Permission is hereby granted, free of charge, to any person obtaining
19
19
  # a copy of this software and associated documentation files (the
@@ -34,7 +34,7 @@ deprecated_python_version = (2, 4, 0)
34
34
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
35
35
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
36
36
 
37
- __revision__ = "src/engine/SCons/Script/Main.py 5134 2010/08/16 23:02:40 bdeegan"
37
+ __revision__ = "src/engine/SCons/Script/Main.py 5357 2011/09/09 21:31:03 bdeegan"
38
38
 
39
39
  import SCons.compat
40
40
 
@@ -60,6 +60,7 @@ import SCons.Errors
60
60
  import SCons.Job
61
61
  import SCons.Node
62
62
  import SCons.Node.FS
63
+ import SCons.Platform
63
64
  import SCons.SConf
64
65
  import SCons.Script
65
66
  import SCons.Taskmaster
@@ -653,6 +654,10 @@ def _set_debug_values(options):
653
654
  print_time = 1
654
655
  if "tree" in debug_values:
655
656
  options.tree_printers.append(TreePrinter())
657
+ if "prepare" in debug_values:
658
+ SCons.Taskmaster.print_prepare = 1
659
+ if "duplicate" in debug_values:
660
+ SCons.Node.FS.print_duplicate = 1
656
661
 
657
662
  def _create_path(plist):
658
663
  path = '.'
@@ -665,15 +670,15 @@ def _create_path(plist):
665
670
 
666
671
  def _load_site_scons_dir(topdir, site_dir_name=None):
667
672
  """Load the site_scons dir under topdir.
668
- Adds site_scons to sys.path, imports site_scons/site_init.py,
669
- and adds site_scons/site_tools to default toolpath."""
673
+ Prepends site_scons to sys.path, imports site_scons/site_init.py,
674
+ and prepends site_scons/site_tools to default toolpath."""
670
675
  if site_dir_name:
671
676
  err_if_not_found = True # user specified: err if missing
672
677
  else:
673
678
  site_dir_name = "site_scons"
674
679
  err_if_not_found = False
675
680
 
676
- site_dir = os.path.join(topdir.path, site_dir_name)
681
+ site_dir = os.path.join(topdir, site_dir_name)
677
682
  if not os.path.exists(site_dir):
678
683
  if err_if_not_found:
679
684
  raise SCons.Errors.UserError("site dir %s not found."%site_dir)
@@ -682,11 +687,12 @@ def _load_site_scons_dir(topdir, site_dir_name=None):
682
687
  site_init_filename = "site_init.py"
683
688
  site_init_modname = "site_init"
684
689
  site_tools_dirname = "site_tools"
690
+ # prepend to sys.path
685
691
  sys.path = [os.path.abspath(site_dir)] + sys.path
686
692
  site_init_file = os.path.join(site_dir, site_init_filename)
687
693
  site_tools_dir = os.path.join(site_dir, site_tools_dirname)
688
694
  if os.path.exists(site_init_file):
689
- import imp
695
+ import imp, re
690
696
  # TODO(2.4): turn this into try:-except:-finally:
691
697
  try:
692
698
  try:
@@ -705,14 +711,26 @@ def _load_site_scons_dir(topdir, site_dir_name=None):
705
711
  fmt = 'cannot import site_init.py: missing SCons.Script module %s'
706
712
  raise SCons.Errors.InternalError(fmt % repr(e))
707
713
  try:
714
+ sfx = description[0]
715
+ modname = os.path.basename(pathname)[:-len(sfx)]
716
+ site_m = {"__file__": pathname, "__name__": modname, "__doc__": None}
717
+ re_special = re.compile("__[^_]+__")
718
+ for k in m.__dict__.keys():
719
+ if not re_special.match(k):
720
+ site_m[k] = m.__dict__[k]
721
+
708
722
  # This is the magic.
709
- exec fp in m.__dict__
723
+ exec fp in site_m
710
724
  except KeyboardInterrupt:
711
725
  raise
712
726
  except Exception, e:
713
727
  fmt = '*** Error loading site_init file %s:\n'
714
728
  sys.stderr.write(fmt % repr(site_init_file))
715
729
  raise
730
+ else:
731
+ for k in site_m:
732
+ if not re_special.match(k):
733
+ m.__dict__[k] = site_m[k]
716
734
  except KeyboardInterrupt:
717
735
  raise
718
736
  except ImportError, e:
@@ -723,7 +741,55 @@ def _load_site_scons_dir(topdir, site_dir_name=None):
723
741
  if fp:
724
742
  fp.close()
725
743
  if os.path.exists(site_tools_dir):
726
- SCons.Tool.DefaultToolpath.append(os.path.abspath(site_tools_dir))
744
+ # prepend to DefaultToolpath
745
+ SCons.Tool.DefaultToolpath.insert(0, os.path.abspath(site_tools_dir))
746
+
747
+ def _load_all_site_scons_dirs(topdir, verbose=None):
748
+ """Load all of the predefined site_scons dir.
749
+ Order is significant; we load them in order from most generic
750
+ (machine-wide) to most specific (topdir).
751
+ The verbose argument is only for testing.
752
+ """
753
+ platform = SCons.Platform.platform_default()
754
+
755
+ def homedir(d):
756
+ return os.path.expanduser('~/'+d)
757
+
758
+ if platform == 'win32' or platform == 'cygwin':
759
+ # Note we use $ here instead of %...% because older
760
+ # pythons (prior to 2.6?) didn't expand %...% on Windows.
761
+ # This set of dirs should work on XP, Vista, 7 and later.
762
+ sysdirs=[
763
+ os.path.expandvars('$ALLUSERSPROFILE\\Application Data\\scons'),
764
+ os.path.expandvars('$USERPROFILE\\Local Settings\\Application Data\\scons')]
765
+ appdatadir = os.path.expandvars('$APPDATA\\scons')
766
+ if appdatadir not in sysdirs:
767
+ sysdirs.append(appdatadir)
768
+ sysdirs.append(homedir('.scons'))
769
+
770
+ elif platform == 'darwin': # MacOS X
771
+ sysdirs=['/Library/Application Support/SCons',
772
+ '/opt/local/share/scons', # (for MacPorts)
773
+ '/sw/share/scons', # (for Fink)
774
+ homedir('Library/Application Support/SCons'),
775
+ homedir('.scons')]
776
+ elif platform == 'sunos': # Solaris
777
+ sysdirs=['/opt/sfw/scons',
778
+ '/usr/share/scons',
779
+ homedir('.scons')]
780
+ else: # Linux, HPUX, etc.
781
+ # assume posix-like, i.e. platform == 'posix'
782
+ sysdirs=['/usr/share/scons',
783
+ homedir('.scons')]
784
+
785
+ dirs=sysdirs + [topdir]
786
+ for d in dirs:
787
+ if verbose: # this is used by unit tests.
788
+ print "Loading site dir ", d
789
+ _load_site_scons_dir(d)
790
+
791
+ def test_load_all_site_scons_dirs(d):
792
+ _load_all_site_scons_dirs(d, True)
727
793
 
728
794
  def version_string(label, module):
729
795
  version = module.__version__
@@ -739,6 +805,10 @@ def version_string(label, module):
739
805
  module.__developer__,
740
806
  module.__buildsys__)
741
807
 
808
+ def path_string(label, module):
809
+ path = module.__path__
810
+ return "\t%s path: %s\n"%(label,path)
811
+
742
812
  def _main(parser):
743
813
  global exit_status
744
814
  global this_build_status
@@ -860,9 +930,9 @@ def _main(parser):
860
930
  progress_display.set_mode(0)
861
931
 
862
932
  if options.site_dir:
863
- _load_site_scons_dir(d, options.site_dir)
933
+ _load_site_scons_dir(d.path, options.site_dir)
864
934
  elif not options.no_site_dir:
865
- _load_site_scons_dir(d)
935
+ _load_all_site_scons_dirs(d.path)
866
936
 
867
937
  if options.include_dir:
868
938
  sys.path = options.include_dir + sys.path
@@ -1258,7 +1328,8 @@ def main():
1258
1328
  # __main__.__version__, hence there is no script version.
1259
1329
  pass
1260
1330
  parts.append(version_string("engine", SCons))
1261
- parts.append("Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation")
1331
+ parts.append(path_string("engine", SCons))
1332
+ parts.append("Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation")
1262
1333
  version = ''.join(parts)
1263
1334
 
1264
1335
  import SConsOptions
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
2
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -21,7 +21,7 @@
21
21
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
22
  #
23
23
 
24
- __revision__ = "src/engine/SCons/Script/SConsOptions.py 5134 2010/08/16 23:02:40 bdeegan"
24
+ __revision__ = "src/engine/SCons/Script/SConsOptions.py 5357 2011/09/09 21:31:03 bdeegan"
25
25
 
26
26
  import optparse
27
27
  import re
@@ -596,9 +596,9 @@ def Parser(version):
596
596
  "tree" : '; please use --tree=all instead',
597
597
  }
598
598
 
599
- debug_options = ["count", "explain", "findlibs",
599
+ debug_options = ["count", "duplicate", "explain", "findlibs",
600
600
  "includes", "memoizer", "memory", "objects",
601
- "pdb", "presub", "stacktrace",
601
+ "pdb", "prepare", "presub", "stacktrace",
602
602
  "time"] + list(deprecated_debug_options.keys())
603
603
 
604
604
  def opt_debug(option, opt, value, parser,
@@ -867,7 +867,7 @@ def Parser(version):
867
867
  sys.stderr.write(msg)
868
868
 
869
869
  op.add_option('-l', '--load-average', '--max-load',
870
- nargs=1, type="int",
870
+ nargs=1, type="float",
871
871
  dest="load_average", default=0,
872
872
  action="callback", callback=opt_not_yet,
873
873
  # action="store",
@@ -6,7 +6,7 @@ files.
6
6
  """
7
7
 
8
8
  #
9
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
9
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
10
10
  #
11
11
  # Permission is hereby granted, free of charge, to any person obtaining
12
12
  # a copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@ files.
28
28
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
29
  from __future__ import division
30
30
 
31
- __revision__ = "src/engine/SCons/Script/SConscript.py 5134 2010/08/16 23:02:40 bdeegan"
31
+ __revision__ = "src/engine/SCons/Script/SConscript.py 5357 2011/09/09 21:31:03 bdeegan"
32
32
 
33
33
  import SCons
34
34
  import SCons.Action
@@ -12,7 +12,7 @@ it goes here.
12
12
  """
13
13
 
14
14
  #
15
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
15
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
16
16
  #
17
17
  # Permission is hereby granted, free of charge, to any person obtaining
18
18
  # a copy of this software and associated documentation files (the
@@ -34,7 +34,7 @@ it goes here.
34
34
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
35
35
  #
36
36
 
37
- __revision__ = "src/engine/SCons/Script/__init__.py 5134 2010/08/16 23:02:40 bdeegan"
37
+ __revision__ = "src/engine/SCons/Script/__init__.py 5357 2011/09/09 21:31:03 bdeegan"
38
38
 
39
39
  import time
40
40
  start_time = time.time()
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation
2
+ # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 The SCons Foundation
3
3
  #
4
4
  # Permission is hereby granted, free of charge, to any person obtaining
5
5
  # a copy of this software and associated documentation files (the
@@ -21,7 +21,7 @@
21
21
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
22
  #
23
23
 
24
- __revision__ = "src/engine/SCons/Sig.py 5134 2010/08/16 23:02:40 bdeegan"
24
+ __revision__ = "src/engine/SCons/Sig.py 5357 2011/09/09 21:31:03 bdeegan"
25
25
 
26
26
  __doc__ = """Place-holder for the old SCons.Sig module hierarchy
27
27