libv8 3.16.14.1 → 3.16.14.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1025) hide show
  1. checksums.yaml +4 -4
  2. data/.gitmodules +3 -0
  3. data/.travis.yml +2 -1
  4. data/README.md +13 -0
  5. data/Rakefile +6 -11
  6. data/ext/libv8/arch.rb +1 -1
  7. data/ext/libv8/builder.rb +31 -3
  8. data/ext/libv8/checkout.rb +48 -0
  9. data/ext/libv8/compiler.rb +6 -1
  10. data/lib/libv8/version.rb +1 -1
  11. data/libv8.gemspec +3 -0
  12. data/patches/disable-building-tests.patch +25 -0
  13. data/patches/do-not-imply-vfp3-and-armv7.patch +28 -0
  14. data/patches/fPIC-for-static.patch +13 -0
  15. data/patches/gcc48-wno-unused-local-typedefs.patch +28 -0
  16. data/spec/location_spec.rb +3 -3
  17. data/vendor/gyp/.gitignore +1 -0
  18. data/vendor/gyp/AUTHORS +6 -0
  19. data/vendor/gyp/DEPS +26 -0
  20. data/vendor/gyp/LICENSE +27 -0
  21. data/vendor/gyp/MANIFEST +21 -0
  22. data/vendor/gyp/OWNERS +1 -0
  23. data/vendor/gyp/PRESUBMIT.py +109 -0
  24. data/vendor/gyp/buildbot/buildbot_run.py +98 -0
  25. data/vendor/gyp/codereview.settings +10 -0
  26. data/vendor/gyp/gyp +18 -0
  27. data/vendor/gyp/gyp.bat +5 -0
  28. data/vendor/gyp/gyp_dummy.c +7 -0
  29. data/vendor/gyp/gyptest.py +266 -0
  30. data/vendor/gyp/pylib/gyp/MSVSNew.py +341 -0
  31. data/vendor/gyp/pylib/gyp/MSVSProject.py +208 -0
  32. data/vendor/gyp/pylib/gyp/MSVSSettings.py +1046 -0
  33. data/vendor/gyp/pylib/gyp/MSVSSettings_test.py +1482 -0
  34. data/vendor/gyp/pylib/gyp/MSVSToolFile.py +58 -0
  35. data/vendor/gyp/pylib/gyp/MSVSUserFile.py +147 -0
  36. data/vendor/gyp/pylib/gyp/MSVSVersion.py +366 -0
  37. data/vendor/gyp/pylib/gyp/SCons.py +199 -0
  38. data/vendor/gyp/pylib/gyp/__init__.py +520 -0
  39. data/vendor/gyp/pylib/gyp/common.py +473 -0
  40. data/vendor/gyp/pylib/gyp/common_test.py +71 -0
  41. data/vendor/gyp/pylib/gyp/easy_xml.py +157 -0
  42. data/vendor/gyp/pylib/gyp/easy_xml_test.py +103 -0
  43. data/vendor/gyp/pylib/gyp/generator/__init__.py +0 -0
  44. data/vendor/gyp/pylib/gyp/generator/android.py +1077 -0
  45. data/vendor/gyp/pylib/gyp/generator/dump_dependency_json.py +66 -0
  46. data/vendor/gyp/pylib/gyp/generator/eclipse.py +273 -0
  47. data/vendor/gyp/pylib/gyp/generator/gypd.py +87 -0
  48. data/vendor/gyp/pylib/gyp/generator/gypsh.py +56 -0
  49. data/vendor/gyp/pylib/gyp/generator/make.py +2177 -0
  50. data/vendor/gyp/pylib/gyp/generator/msvs.py +3165 -0
  51. data/vendor/gyp/pylib/gyp/generator/msvs_test.py +35 -0
  52. data/vendor/gyp/pylib/gyp/generator/ninja.py +1744 -0
  53. data/vendor/gyp/pylib/gyp/generator/ninja_test.py +44 -0
  54. data/vendor/gyp/pylib/gyp/generator/scons.py +1072 -0
  55. data/vendor/gyp/pylib/gyp/generator/xcode.py +1230 -0
  56. data/vendor/gyp/pylib/gyp/input.py +2487 -0
  57. data/vendor/gyp/pylib/gyp/mac_tool.py +210 -0
  58. data/vendor/gyp/pylib/gyp/msvs_emulation.py +691 -0
  59. data/vendor/gyp/pylib/gyp/ninja_syntax.py +152 -0
  60. data/vendor/gyp/pylib/gyp/sun_tool.py +51 -0
  61. data/vendor/gyp/pylib/gyp/system_test.py +68 -0
  62. data/vendor/gyp/pylib/gyp/win_tool.py +193 -0
  63. data/vendor/gyp/pylib/gyp/xcode_emulation.py +1065 -0
  64. data/vendor/gyp/pylib/gyp/xcodeproj_file.py +2868 -0
  65. data/vendor/gyp/pylib/gyp/xml_fix.py +69 -0
  66. data/vendor/gyp/pylintrc +307 -0
  67. data/vendor/gyp/samples/samples +81 -0
  68. data/vendor/gyp/samples/samples.bat +5 -0
  69. data/vendor/gyp/setup.py +26 -0
  70. data/vendor/gyp/test/actions-bare/gyptest-bare.py +23 -0
  71. data/vendor/gyp/test/actions-bare/src/bare.gyp +25 -0
  72. data/vendor/gyp/test/actions-bare/src/bare.py +11 -0
  73. data/vendor/gyp/test/actions-multiple/gyptest-all.py +72 -0
  74. data/vendor/gyp/test/actions-multiple/src/actions.gyp +226 -0
  75. data/vendor/gyp/test/actions-multiple/src/copy.py +9 -0
  76. data/vendor/gyp/test/actions-multiple/src/filter.py +12 -0
  77. data/vendor/gyp/test/actions-multiple/src/foo.c +11 -0
  78. data/vendor/gyp/test/actions-multiple/src/input.txt +1 -0
  79. data/vendor/gyp/test/actions-multiple/src/main.c +22 -0
  80. data/vendor/gyp/test/actions-none/gyptest-none.py +26 -0
  81. data/vendor/gyp/test/actions-none/src/fake_cross.py +12 -0
  82. data/vendor/gyp/test/actions-none/src/foo.cc +1 -0
  83. data/vendor/gyp/test/actions-none/src/none_with_source_files.gyp +35 -0
  84. data/vendor/gyp/test/actions-subdir/gyptest-action.py +26 -0
  85. data/vendor/gyp/test/actions-subdir/src/make-file.py +11 -0
  86. data/vendor/gyp/test/actions-subdir/src/none.gyp +31 -0
  87. data/vendor/gyp/test/actions-subdir/src/subdir/make-subdir-file.py +11 -0
  88. data/vendor/gyp/test/actions-subdir/src/subdir/subdir.gyp +28 -0
  89. data/vendor/gyp/test/actions/gyptest-all.py +102 -0
  90. data/vendor/gyp/test/actions/gyptest-default.py +69 -0
  91. data/vendor/gyp/test/actions/gyptest-errors.py +24 -0
  92. data/vendor/gyp/test/actions/src/action_missing_name.gyp +24 -0
  93. data/vendor/gyp/test/actions/src/actions.gyp +114 -0
  94. data/vendor/gyp/test/actions/src/confirm-dep-files.py +21 -0
  95. data/vendor/gyp/test/actions/src/subdir1/counter.py +46 -0
  96. data/vendor/gyp/test/actions/src/subdir1/executable.gyp +74 -0
  97. data/vendor/gyp/test/actions/src/subdir1/make-prog1.py +20 -0
  98. data/vendor/gyp/test/actions/src/subdir1/make-prog2.py +20 -0
  99. data/vendor/gyp/test/actions/src/subdir1/program.c +12 -0
  100. data/vendor/gyp/test/actions/src/subdir2/make-file.py +11 -0
  101. data/vendor/gyp/test/actions/src/subdir2/none.gyp +33 -0
  102. data/vendor/gyp/test/actions/src/subdir3/generate_main.py +21 -0
  103. data/vendor/gyp/test/actions/src/subdir3/null_input.gyp +29 -0
  104. data/vendor/gyp/test/additional-targets/gyptest-additional.py +56 -0
  105. data/vendor/gyp/test/additional-targets/src/all.gyp +13 -0
  106. data/vendor/gyp/test/additional-targets/src/dir1/actions.gyp +56 -0
  107. data/vendor/gyp/test/additional-targets/src/dir1/emit.py +11 -0
  108. data/vendor/gyp/test/additional-targets/src/dir1/lib1.c +6 -0
  109. data/vendor/gyp/test/assembly/gyptest-assembly.py +31 -0
  110. data/vendor/gyp/test/assembly/src/as.bat +4 -0
  111. data/vendor/gyp/test/assembly/src/assembly.gyp +62 -0
  112. data/vendor/gyp/test/assembly/src/lib1.S +15 -0
  113. data/vendor/gyp/test/assembly/src/lib1.c +3 -0
  114. data/vendor/gyp/test/assembly/src/program.c +12 -0
  115. data/vendor/gyp/test/build-option/gyptest-build.py +22 -0
  116. data/vendor/gyp/test/build-option/hello.c +13 -0
  117. data/vendor/gyp/test/build-option/hello.gyp +15 -0
  118. data/vendor/gyp/test/builddir/gyptest-all.py +85 -0
  119. data/vendor/gyp/test/builddir/gyptest-default.py +85 -0
  120. data/vendor/gyp/test/builddir/src/builddir.gypi +21 -0
  121. data/vendor/gyp/test/builddir/src/func1.c +6 -0
  122. data/vendor/gyp/test/builddir/src/func2.c +6 -0
  123. data/vendor/gyp/test/builddir/src/func3.c +6 -0
  124. data/vendor/gyp/test/builddir/src/func4.c +6 -0
  125. data/vendor/gyp/test/builddir/src/func5.c +6 -0
  126. data/vendor/gyp/test/builddir/src/prog1.c +10 -0
  127. data/vendor/gyp/test/builddir/src/prog1.gyp +30 -0
  128. data/vendor/gyp/test/builddir/src/subdir2/prog2.c +10 -0
  129. data/vendor/gyp/test/builddir/src/subdir2/prog2.gyp +19 -0
  130. data/vendor/gyp/test/builddir/src/subdir2/subdir3/prog3.c +10 -0
  131. data/vendor/gyp/test/builddir/src/subdir2/subdir3/prog3.gyp +19 -0
  132. data/vendor/gyp/test/builddir/src/subdir2/subdir3/subdir4/prog4.c +10 -0
  133. data/vendor/gyp/test/builddir/src/subdir2/subdir3/subdir4/prog4.gyp +19 -0
  134. data/vendor/gyp/test/builddir/src/subdir2/subdir3/subdir4/subdir5/prog5.c +10 -0
  135. data/vendor/gyp/test/builddir/src/subdir2/subdir3/subdir4/subdir5/prog5.gyp +19 -0
  136. data/vendor/gyp/test/cflags/cflags.c +15 -0
  137. data/vendor/gyp/test/cflags/cflags.gyp +16 -0
  138. data/vendor/gyp/test/cflags/gyptest-cflags.py +65 -0
  139. data/vendor/gyp/test/compilable/gyptest-headers.py +29 -0
  140. data/vendor/gyp/test/compilable/src/headers.gyp +26 -0
  141. data/vendor/gyp/test/compilable/src/lib1.cpp +7 -0
  142. data/vendor/gyp/test/compilable/src/lib1.hpp +6 -0
  143. data/vendor/gyp/test/compilable/src/program.cpp +9 -0
  144. data/vendor/gyp/test/compiler-override/compiler-global-settings.gyp.in +34 -0
  145. data/vendor/gyp/test/compiler-override/compiler-host.gyp +17 -0
  146. data/vendor/gyp/test/compiler-override/compiler.gyp +16 -0
  147. data/vendor/gyp/test/compiler-override/cxxtest.cc +7 -0
  148. data/vendor/gyp/test/compiler-override/gyptest-compiler-env.py +55 -0
  149. data/vendor/gyp/test/compiler-override/gyptest-compiler-global-settings.py +52 -0
  150. data/vendor/gyp/test/compiler-override/my_cc.py +6 -0
  151. data/vendor/gyp/test/compiler-override/my_cxx.py +6 -0
  152. data/vendor/gyp/test/compiler-override/my_ld.py +6 -0
  153. data/vendor/gyp/test/compiler-override/test.c +7 -0
  154. data/vendor/gyp/test/configurations/basics/configurations.c +15 -0
  155. data/vendor/gyp/test/configurations/basics/configurations.gyp +32 -0
  156. data/vendor/gyp/test/configurations/basics/gyptest-configurations.py +29 -0
  157. data/vendor/gyp/test/configurations/inheritance/configurations.c +21 -0
  158. data/vendor/gyp/test/configurations/inheritance/configurations.gyp +40 -0
  159. data/vendor/gyp/test/configurations/inheritance/gyptest-inheritance.py +33 -0
  160. data/vendor/gyp/test/configurations/invalid/actions.gyp +18 -0
  161. data/vendor/gyp/test/configurations/invalid/all_dependent_settings.gyp +18 -0
  162. data/vendor/gyp/test/configurations/invalid/configurations.gyp +18 -0
  163. data/vendor/gyp/test/configurations/invalid/dependencies.gyp +18 -0
  164. data/vendor/gyp/test/configurations/invalid/direct_dependent_settings.gyp +18 -0
  165. data/vendor/gyp/test/configurations/invalid/gyptest-configurations.py +38 -0
  166. data/vendor/gyp/test/configurations/invalid/libraries.gyp +18 -0
  167. data/vendor/gyp/test/configurations/invalid/link_settings.gyp +18 -0
  168. data/vendor/gyp/test/configurations/invalid/sources.gyp +18 -0
  169. data/vendor/gyp/test/configurations/invalid/target_name.gyp +18 -0
  170. data/vendor/gyp/test/configurations/invalid/type.gyp +18 -0
  171. data/vendor/gyp/test/configurations/target_platform/configurations.gyp +58 -0
  172. data/vendor/gyp/test/configurations/target_platform/front.c +8 -0
  173. data/vendor/gyp/test/configurations/target_platform/gyptest-target_platform.py +40 -0
  174. data/vendor/gyp/test/configurations/target_platform/left.c +3 -0
  175. data/vendor/gyp/test/configurations/target_platform/right.c +3 -0
  176. data/vendor/gyp/test/configurations/x64/configurations.c +12 -0
  177. data/vendor/gyp/test/configurations/x64/configurations.gyp +38 -0
  178. data/vendor/gyp/test/configurations/x64/gyptest-x86.py +31 -0
  179. data/vendor/gyp/test/copies/gyptest-all.py +40 -0
  180. data/vendor/gyp/test/copies/gyptest-default.py +40 -0
  181. data/vendor/gyp/test/copies/gyptest-slash.py +38 -0
  182. data/vendor/gyp/test/copies/gyptest-updir.py +23 -0
  183. data/vendor/gyp/test/copies/src/copies-slash.gyp +36 -0
  184. data/vendor/gyp/test/copies/src/copies-updir.gyp +21 -0
  185. data/vendor/gyp/test/copies/src/copies.gyp +70 -0
  186. data/vendor/gyp/test/copies/src/directory/file3 +1 -0
  187. data/vendor/gyp/test/copies/src/directory/file4 +1 -0
  188. data/vendor/gyp/test/copies/src/directory/subdir/file5 +1 -0
  189. data/vendor/gyp/test/copies/src/file1 +1 -0
  190. data/vendor/gyp/test/copies/src/file2 +1 -0
  191. data/vendor/gyp/test/copies/src/parentdir/subdir/file6 +1 -0
  192. data/vendor/gyp/test/custom-generator/gyptest-custom-generator.py +18 -0
  193. data/vendor/gyp/test/custom-generator/mygenerator.py +14 -0
  194. data/vendor/gyp/test/custom-generator/test.gyp +15 -0
  195. data/vendor/gyp/test/cxxflags/cxxflags.cc +15 -0
  196. data/vendor/gyp/test/cxxflags/cxxflags.gyp +16 -0
  197. data/vendor/gyp/test/cxxflags/gyptest-cxxflags.py +65 -0
  198. data/vendor/gyp/test/defines-escaping/defines-escaping.c +11 -0
  199. data/vendor/gyp/test/defines-escaping/defines-escaping.gyp +19 -0
  200. data/vendor/gyp/test/defines-escaping/gyptest-defines-escaping.py +184 -0
  201. data/vendor/gyp/test/defines/defines-env.gyp +22 -0
  202. data/vendor/gyp/test/defines/defines.c +23 -0
  203. data/vendor/gyp/test/defines/defines.gyp +38 -0
  204. data/vendor/gyp/test/defines/gyptest-define-override.py +34 -0
  205. data/vendor/gyp/test/defines/gyptest-defines-env-regyp.py +51 -0
  206. data/vendor/gyp/test/defines/gyptest-defines-env.py +85 -0
  207. data/vendor/gyp/test/defines/gyptest-defines.py +27 -0
  208. data/vendor/gyp/test/dependencies/a.c +9 -0
  209. data/vendor/gyp/test/dependencies/b/b.c +3 -0
  210. data/vendor/gyp/test/dependencies/b/b.gyp +22 -0
  211. data/vendor/gyp/test/dependencies/b/b3.c +9 -0
  212. data/vendor/gyp/test/dependencies/c/c.c +4 -0
  213. data/vendor/gyp/test/dependencies/c/c.gyp +22 -0
  214. data/vendor/gyp/test/dependencies/c/d.c +3 -0
  215. data/vendor/gyp/test/dependencies/double_dependency.gyp +23 -0
  216. data/vendor/gyp/test/dependencies/double_dependent.gyp +12 -0
  217. data/vendor/gyp/test/dependencies/extra_targets.gyp +18 -0
  218. data/vendor/gyp/test/dependencies/gyptest-double-dependency.py +19 -0
  219. data/vendor/gyp/test/dependencies/gyptest-extra-targets.py +21 -0
  220. data/vendor/gyp/test/dependencies/gyptest-lib-only.py +39 -0
  221. data/vendor/gyp/test/dependencies/gyptest-none-traversal.py +25 -0
  222. data/vendor/gyp/test/dependencies/lib_only.gyp +16 -0
  223. data/vendor/gyp/test/dependencies/main.c +14 -0
  224. data/vendor/gyp/test/dependencies/none_traversal.gyp +46 -0
  225. data/vendor/gyp/test/dependency-copy/gyptest-copy.py +26 -0
  226. data/vendor/gyp/test/dependency-copy/src/copies.gyp +25 -0
  227. data/vendor/gyp/test/dependency-copy/src/file1.c +7 -0
  228. data/vendor/gyp/test/dependency-copy/src/file2.c +7 -0
  229. data/vendor/gyp/test/errors/duplicate_basenames.gyp +13 -0
  230. data/vendor/gyp/test/errors/duplicate_node.gyp +12 -0
  231. data/vendor/gyp/test/errors/duplicate_rule.gyp +22 -0
  232. data/vendor/gyp/test/errors/duplicate_targets.gyp +14 -0
  233. data/vendor/gyp/test/errors/gyptest-errors.py +49 -0
  234. data/vendor/gyp/test/errors/missing_dep.gyp +15 -0
  235. data/vendor/gyp/test/errors/missing_targets.gyp +8 -0
  236. data/vendor/gyp/test/escaping/colon/test.gyp +21 -0
  237. data/vendor/gyp/test/escaping/gyptest-colon.py +43 -0
  238. data/vendor/gyp/test/exclusion/exclusion.gyp +23 -0
  239. data/vendor/gyp/test/exclusion/gyptest-exclusion.py +22 -0
  240. data/vendor/gyp/test/exclusion/hello.c +15 -0
  241. data/vendor/gyp/test/external-cross-compile/gyptest-cross.py +35 -0
  242. data/vendor/gyp/test/external-cross-compile/src/bogus1.cc +1 -0
  243. data/vendor/gyp/test/external-cross-compile/src/bogus2.c +1 -0
  244. data/vendor/gyp/test/external-cross-compile/src/cross.gyp +83 -0
  245. data/vendor/gyp/test/external-cross-compile/src/cross_compile.gypi +23 -0
  246. data/vendor/gyp/test/external-cross-compile/src/fake_cross.py +18 -0
  247. data/vendor/gyp/test/external-cross-compile/src/program.cc +16 -0
  248. data/vendor/gyp/test/external-cross-compile/src/test1.cc +1 -0
  249. data/vendor/gyp/test/external-cross-compile/src/test2.c +1 -0
  250. data/vendor/gyp/test/external-cross-compile/src/test3.cc +1 -0
  251. data/vendor/gyp/test/external-cross-compile/src/test4.c +1 -0
  252. data/vendor/gyp/test/external-cross-compile/src/tochar.py +13 -0
  253. data/vendor/gyp/test/generator-output/actions/actions.gyp +16 -0
  254. data/vendor/gyp/test/generator-output/actions/build/README.txt +4 -0
  255. data/vendor/gyp/test/generator-output/actions/subdir1/actions-out/README.txt +4 -0
  256. data/vendor/gyp/test/generator-output/actions/subdir1/build/README.txt +4 -0
  257. data/vendor/gyp/test/generator-output/actions/subdir1/executable.gyp +44 -0
  258. data/vendor/gyp/test/generator-output/actions/subdir1/make-prog1.py +20 -0
  259. data/vendor/gyp/test/generator-output/actions/subdir1/make-prog2.py +20 -0
  260. data/vendor/gyp/test/generator-output/actions/subdir1/program.c +12 -0
  261. data/vendor/gyp/test/generator-output/actions/subdir2/actions-out/README.txt +4 -0
  262. data/vendor/gyp/test/generator-output/actions/subdir2/build/README.txt +4 -0
  263. data/vendor/gyp/test/generator-output/actions/subdir2/make-file.py +11 -0
  264. data/vendor/gyp/test/generator-output/actions/subdir2/none.gyp +31 -0
  265. data/vendor/gyp/test/generator-output/copies/build/README.txt +4 -0
  266. data/vendor/gyp/test/generator-output/copies/copies-out/README.txt +4 -0
  267. data/vendor/gyp/test/generator-output/copies/copies.gyp +50 -0
  268. data/vendor/gyp/test/generator-output/copies/file1 +1 -0
  269. data/vendor/gyp/test/generator-output/copies/file2 +1 -0
  270. data/vendor/gyp/test/generator-output/copies/subdir/build/README.txt +4 -0
  271. data/vendor/gyp/test/generator-output/copies/subdir/copies-out/README.txt +4 -0
  272. data/vendor/gyp/test/generator-output/copies/subdir/file3 +1 -0
  273. data/vendor/gyp/test/generator-output/copies/subdir/file4 +1 -0
  274. data/vendor/gyp/test/generator-output/copies/subdir/subdir.gyp +32 -0
  275. data/vendor/gyp/test/generator-output/gyptest-actions.py +58 -0
  276. data/vendor/gyp/test/generator-output/gyptest-copies.py +59 -0
  277. data/vendor/gyp/test/generator-output/gyptest-mac-bundle.py +29 -0
  278. data/vendor/gyp/test/generator-output/gyptest-relocate.py +60 -0
  279. data/vendor/gyp/test/generator-output/gyptest-rules.py +59 -0
  280. data/vendor/gyp/test/generator-output/gyptest-subdir2-deep.py +37 -0
  281. data/vendor/gyp/test/generator-output/gyptest-top-all.py +54 -0
  282. data/vendor/gyp/test/generator-output/mac-bundle/Info.plist +32 -0
  283. data/vendor/gyp/test/generator-output/mac-bundle/app.order +1 -0
  284. data/vendor/gyp/test/generator-output/mac-bundle/header.h +1 -0
  285. data/vendor/gyp/test/generator-output/mac-bundle/main.c +1 -0
  286. data/vendor/gyp/test/generator-output/mac-bundle/resource.sb +1 -0
  287. data/vendor/gyp/test/generator-output/mac-bundle/test.gyp +25 -0
  288. data/vendor/gyp/test/generator-output/rules/build/README.txt +4 -0
  289. data/vendor/gyp/test/generator-output/rules/copy-file.py +12 -0
  290. data/vendor/gyp/test/generator-output/rules/rules.gyp +16 -0
  291. data/vendor/gyp/test/generator-output/rules/subdir1/build/README.txt +4 -0
  292. data/vendor/gyp/test/generator-output/rules/subdir1/define3.in0 +1 -0
  293. data/vendor/gyp/test/generator-output/rules/subdir1/define4.in0 +1 -0
  294. data/vendor/gyp/test/generator-output/rules/subdir1/executable.gyp +59 -0
  295. data/vendor/gyp/test/generator-output/rules/subdir1/function1.in1 +6 -0
  296. data/vendor/gyp/test/generator-output/rules/subdir1/function2.in1 +6 -0
  297. data/vendor/gyp/test/generator-output/rules/subdir1/program.c +18 -0
  298. data/vendor/gyp/test/generator-output/rules/subdir2/build/README.txt +4 -0
  299. data/vendor/gyp/test/generator-output/rules/subdir2/file1.in0 +1 -0
  300. data/vendor/gyp/test/generator-output/rules/subdir2/file2.in0 +1 -0
  301. data/vendor/gyp/test/generator-output/rules/subdir2/file3.in1 +1 -0
  302. data/vendor/gyp/test/generator-output/rules/subdir2/file4.in1 +1 -0
  303. data/vendor/gyp/test/generator-output/rules/subdir2/none.gyp +49 -0
  304. data/vendor/gyp/test/generator-output/rules/subdir2/rules-out/README.txt +4 -0
  305. data/vendor/gyp/test/generator-output/src/build/README.txt +4 -0
  306. data/vendor/gyp/test/generator-output/src/inc.h +1 -0
  307. data/vendor/gyp/test/generator-output/src/inc1/include1.h +1 -0
  308. data/vendor/gyp/test/generator-output/src/prog1.c +18 -0
  309. data/vendor/gyp/test/generator-output/src/prog1.gyp +28 -0
  310. data/vendor/gyp/test/generator-output/src/subdir2/build/README.txt +4 -0
  311. data/vendor/gyp/test/generator-output/src/subdir2/deeper/build/README.txt +4 -0
  312. data/vendor/gyp/test/generator-output/src/subdir2/deeper/deeper.c +7 -0
  313. data/vendor/gyp/test/generator-output/src/subdir2/deeper/deeper.gyp +18 -0
  314. data/vendor/gyp/test/generator-output/src/subdir2/deeper/deeper.h +1 -0
  315. data/vendor/gyp/test/generator-output/src/subdir2/inc2/include2.h +1 -0
  316. data/vendor/gyp/test/generator-output/src/subdir2/prog2.c +18 -0
  317. data/vendor/gyp/test/generator-output/src/subdir2/prog2.gyp +28 -0
  318. data/vendor/gyp/test/generator-output/src/subdir3/build/README.txt +4 -0
  319. data/vendor/gyp/test/generator-output/src/subdir3/inc3/include3.h +1 -0
  320. data/vendor/gyp/test/generator-output/src/subdir3/prog3.c +18 -0
  321. data/vendor/gyp/test/generator-output/src/subdir3/prog3.gyp +25 -0
  322. data/vendor/gyp/test/generator-output/src/symroot.gypi +16 -0
  323. data/vendor/gyp/test/gyp-defines/defines.gyp +26 -0
  324. data/vendor/gyp/test/gyp-defines/echo.py +11 -0
  325. data/vendor/gyp/test/gyp-defines/gyptest-multiple-values.py +34 -0
  326. data/vendor/gyp/test/gyp-defines/gyptest-regyp.py +40 -0
  327. data/vendor/gyp/test/hard_dependency/gyptest-exported-hard-dependency.py +37 -0
  328. data/vendor/gyp/test/hard_dependency/gyptest-no-exported-hard-dependency.py +36 -0
  329. data/vendor/gyp/test/hard_dependency/src/a.c +9 -0
  330. data/vendor/gyp/test/hard_dependency/src/a.h +12 -0
  331. data/vendor/gyp/test/hard_dependency/src/b.c +9 -0
  332. data/vendor/gyp/test/hard_dependency/src/b.h +12 -0
  333. data/vendor/gyp/test/hard_dependency/src/c.c +10 -0
  334. data/vendor/gyp/test/hard_dependency/src/c.h +10 -0
  335. data/vendor/gyp/test/hard_dependency/src/d.c +9 -0
  336. data/vendor/gyp/test/hard_dependency/src/emit.py +11 -0
  337. data/vendor/gyp/test/hard_dependency/src/hard_dependency.gyp +78 -0
  338. data/vendor/gyp/test/hello/gyptest-all.py +24 -0
  339. data/vendor/gyp/test/hello/gyptest-default.py +24 -0
  340. data/vendor/gyp/test/hello/gyptest-disable-regyp.py +32 -0
  341. data/vendor/gyp/test/hello/gyptest-regyp.py +32 -0
  342. data/vendor/gyp/test/hello/gyptest-target.py +24 -0
  343. data/vendor/gyp/test/hello/hello.c +11 -0
  344. data/vendor/gyp/test/hello/hello.gyp +15 -0
  345. data/vendor/gyp/test/hello/hello2.c +11 -0
  346. data/vendor/gyp/test/hello/hello2.gyp +15 -0
  347. data/vendor/gyp/test/home_dot_gyp/gyptest-home-includes-regyp.py +44 -0
  348. data/vendor/gyp/test/home_dot_gyp/gyptest-home-includes.py +30 -0
  349. data/vendor/gyp/test/home_dot_gyp/home/.gyp/include.gypi +5 -0
  350. data/vendor/gyp/test/home_dot_gyp/home2/.gyp/include.gypi +5 -0
  351. data/vendor/gyp/test/home_dot_gyp/src/all.gyp +22 -0
  352. data/vendor/gyp/test/home_dot_gyp/src/printfoo.c +7 -0
  353. data/vendor/gyp/test/include_dirs/gyptest-all.py +46 -0
  354. data/vendor/gyp/test/include_dirs/gyptest-default.py +46 -0
  355. data/vendor/gyp/test/include_dirs/src/inc.h +1 -0
  356. data/vendor/gyp/test/include_dirs/src/inc1/include1.h +1 -0
  357. data/vendor/gyp/test/include_dirs/src/includes.c +19 -0
  358. data/vendor/gyp/test/include_dirs/src/includes.gyp +27 -0
  359. data/vendor/gyp/test/include_dirs/src/shadow1/shadow.h +1 -0
  360. data/vendor/gyp/test/include_dirs/src/shadow2/shadow.h +1 -0
  361. data/vendor/gyp/test/include_dirs/src/subdir/inc.h +1 -0
  362. data/vendor/gyp/test/include_dirs/src/subdir/inc2/include2.h +1 -0
  363. data/vendor/gyp/test/include_dirs/src/subdir/subdir_includes.c +14 -0
  364. data/vendor/gyp/test/include_dirs/src/subdir/subdir_includes.gyp +20 -0
  365. data/vendor/gyp/test/intermediate_dir/gyptest-intermediate-dir.py +42 -0
  366. data/vendor/gyp/test/intermediate_dir/src/script.py +24 -0
  367. data/vendor/gyp/test/intermediate_dir/src/shared_infile.txt +1 -0
  368. data/vendor/gyp/test/intermediate_dir/src/test.gyp +42 -0
  369. data/vendor/gyp/test/intermediate_dir/src/test2.gyp +42 -0
  370. data/vendor/gyp/test/lib/README.txt +17 -0
  371. data/vendor/gyp/test/lib/TestCmd.py +1597 -0
  372. data/vendor/gyp/test/lib/TestCommon.py +570 -0
  373. data/vendor/gyp/test/lib/TestGyp.py +1049 -0
  374. data/vendor/gyp/test/library/gyptest-shared-obj-install-path.py +42 -0
  375. data/vendor/gyp/test/library/gyptest-shared.py +84 -0
  376. data/vendor/gyp/test/library/gyptest-static.py +84 -0
  377. data/vendor/gyp/test/library/src/lib1.c +10 -0
  378. data/vendor/gyp/test/library/src/lib1_moveable.c +10 -0
  379. data/vendor/gyp/test/library/src/lib2.c +10 -0
  380. data/vendor/gyp/test/library/src/lib2_moveable.c +10 -0
  381. data/vendor/gyp/test/library/src/library.gyp +58 -0
  382. data/vendor/gyp/test/library/src/program.c +15 -0
  383. data/vendor/gyp/test/library/src/shared_dependency.gyp +33 -0
  384. data/vendor/gyp/test/link-objects/base.c +6 -0
  385. data/vendor/gyp/test/link-objects/extra.c +5 -0
  386. data/vendor/gyp/test/link-objects/gyptest-all.py +28 -0
  387. data/vendor/gyp/test/link-objects/link-objects.gyp +24 -0
  388. data/vendor/gyp/test/mac/action-envvars/action/action.gyp +34 -0
  389. data/vendor/gyp/test/mac/action-envvars/action/action.sh +8 -0
  390. data/vendor/gyp/test/mac/app-bundle/TestApp/English.lproj/InfoPlist.strings +3 -0
  391. data/vendor/gyp/test/mac/app-bundle/TestApp/English.lproj/MainMenu.xib +4119 -0
  392. data/vendor/gyp/test/mac/app-bundle/TestApp/TestApp-Info.plist +32 -0
  393. data/vendor/gyp/test/mac/app-bundle/TestApp/TestAppAppDelegate.h +13 -0
  394. data/vendor/gyp/test/mac/app-bundle/TestApp/TestAppAppDelegate.m +15 -0
  395. data/vendor/gyp/test/mac/app-bundle/TestApp/main.m +10 -0
  396. data/vendor/gyp/test/mac/app-bundle/empty.c +0 -0
  397. data/vendor/gyp/test/mac/app-bundle/test.gyp +39 -0
  398. data/vendor/gyp/test/mac/archs/my_file.cc +4 -0
  399. data/vendor/gyp/test/mac/archs/my_main_file.cc +9 -0
  400. data/vendor/gyp/test/mac/archs/test-archs-x86_64.gyp +27 -0
  401. data/vendor/gyp/test/mac/archs/test-no-archs.gyp +21 -0
  402. data/vendor/gyp/test/mac/cflags/ccfile.cc +7 -0
  403. data/vendor/gyp/test/mac/cflags/ccfile_withcflags.cc +7 -0
  404. data/vendor/gyp/test/mac/cflags/cfile.c +7 -0
  405. data/vendor/gyp/test/mac/cflags/cppfile.cpp +7 -0
  406. data/vendor/gyp/test/mac/cflags/cppfile_withcflags.cpp +7 -0
  407. data/vendor/gyp/test/mac/cflags/cxxfile.cxx +7 -0
  408. data/vendor/gyp/test/mac/cflags/cxxfile_withcflags.cxx +7 -0
  409. data/vendor/gyp/test/mac/cflags/mfile.m +7 -0
  410. data/vendor/gyp/test/mac/cflags/mmfile.mm +7 -0
  411. data/vendor/gyp/test/mac/cflags/mmfile_withcflags.mm +7 -0
  412. data/vendor/gyp/test/mac/cflags/test.gyp +119 -0
  413. data/vendor/gyp/test/mac/copy-dylib/empty.c +1 -0
  414. data/vendor/gyp/test/mac/copy-dylib/test.gyp +31 -0
  415. data/vendor/gyp/test/mac/debuginfo/file.c +6 -0
  416. data/vendor/gyp/test/mac/debuginfo/test.gyp +82 -0
  417. data/vendor/gyp/test/mac/depend-on-bundle/English.lproj/InfoPlist.strings +1 -0
  418. data/vendor/gyp/test/mac/depend-on-bundle/Info.plist +28 -0
  419. data/vendor/gyp/test/mac/depend-on-bundle/bundle.c +1 -0
  420. data/vendor/gyp/test/mac/depend-on-bundle/executable.c +4 -0
  421. data/vendor/gyp/test/mac/depend-on-bundle/test.gyp +28 -0
  422. data/vendor/gyp/test/mac/framework-dirs/calculate.c +15 -0
  423. data/vendor/gyp/test/mac/framework-dirs/framework-dirs.gyp +21 -0
  424. data/vendor/gyp/test/mac/framework-headers/myframework.h +8 -0
  425. data/vendor/gyp/test/mac/framework-headers/myframework.m +8 -0
  426. data/vendor/gyp/test/mac/framework-headers/test.gyp +44 -0
  427. data/vendor/gyp/test/mac/framework/TestFramework/English.lproj/InfoPlist.strings +2 -0
  428. data/vendor/gyp/test/mac/framework/TestFramework/Info.plist +28 -0
  429. data/vendor/gyp/test/mac/framework/TestFramework/ObjCVector.h +28 -0
  430. data/vendor/gyp/test/mac/framework/TestFramework/ObjCVector.mm +63 -0
  431. data/vendor/gyp/test/mac/framework/TestFramework/ObjCVectorInternal.h +9 -0
  432. data/vendor/gyp/test/mac/framework/TestFramework/TestFramework_Prefix.pch +7 -0
  433. data/vendor/gyp/test/mac/framework/empty.c +0 -0
  434. data/vendor/gyp/test/mac/framework/framework.gyp +74 -0
  435. data/vendor/gyp/test/mac/global-settings/src/dir1/dir1.gyp +11 -0
  436. data/vendor/gyp/test/mac/global-settings/src/dir2/dir2.gyp +22 -0
  437. data/vendor/gyp/test/mac/global-settings/src/dir2/file.txt +1 -0
  438. data/vendor/gyp/test/mac/gyptest-action-envvars.py +30 -0
  439. data/vendor/gyp/test/mac/gyptest-app.py +47 -0
  440. data/vendor/gyp/test/mac/gyptest-archs.py +37 -0
  441. data/vendor/gyp/test/mac/gyptest-cflags.py +21 -0
  442. data/vendor/gyp/test/mac/gyptest-copies.py +49 -0
  443. data/vendor/gyp/test/mac/gyptest-copy-dylib.py +25 -0
  444. data/vendor/gyp/test/mac/gyptest-debuginfo.py +36 -0
  445. data/vendor/gyp/test/mac/gyptest-depend-on-bundle.py +40 -0
  446. data/vendor/gyp/test/mac/gyptest-framework-dirs.py +23 -0
  447. data/vendor/gyp/test/mac/gyptest-framework-headers.py +38 -0
  448. data/vendor/gyp/test/mac/gyptest-framework.py +50 -0
  449. data/vendor/gyp/test/mac/gyptest-global-settings.py +26 -0
  450. data/vendor/gyp/test/mac/gyptest-infoplist-process.py +51 -0
  451. data/vendor/gyp/test/mac/gyptest-installname.py +79 -0
  452. data/vendor/gyp/test/mac/gyptest-ldflags-passed-to-libtool.py +31 -0
  453. data/vendor/gyp/test/mac/gyptest-ldflags.py +68 -0
  454. data/vendor/gyp/test/mac/gyptest-libraries.py +22 -0
  455. data/vendor/gyp/test/mac/gyptest-loadable-module.py +45 -0
  456. data/vendor/gyp/test/mac/gyptest-missing-cfbundlesignature.py +29 -0
  457. data/vendor/gyp/test/mac/gyptest-non-strs-flattened-to-env.py +33 -0
  458. data/vendor/gyp/test/mac/gyptest-objc-gc.py +45 -0
  459. data/vendor/gyp/test/mac/gyptest-postbuild-copy-bundle.py +62 -0
  460. data/vendor/gyp/test/mac/gyptest-postbuild-defaults.py +29 -0
  461. data/vendor/gyp/test/mac/gyptest-postbuild-fail.py +55 -0
  462. data/vendor/gyp/test/mac/gyptest-postbuild-multiple-configurations.py +26 -0
  463. data/vendor/gyp/test/mac/gyptest-postbuild-static-library.gyp +28 -0
  464. data/vendor/gyp/test/mac/gyptest-postbuild.py +53 -0
  465. data/vendor/gyp/test/mac/gyptest-prefixheader.py +19 -0
  466. data/vendor/gyp/test/mac/gyptest-rebuild.py +41 -0
  467. data/vendor/gyp/test/mac/gyptest-rpath.py +49 -0
  468. data/vendor/gyp/test/mac/gyptest-sdkroot.py +20 -0
  469. data/vendor/gyp/test/mac/gyptest-sourceless-module.gyp +46 -0
  470. data/vendor/gyp/test/mac/gyptest-strip.py +53 -0
  471. data/vendor/gyp/test/mac/gyptest-type-envvars.py +24 -0
  472. data/vendor/gyp/test/mac/gyptest-xcode-env-order.py +83 -0
  473. data/vendor/gyp/test/mac/gyptest-xcode-gcc.py +39 -0
  474. data/vendor/gyp/test/mac/infoplist-process/Info.plist +36 -0
  475. data/vendor/gyp/test/mac/infoplist-process/main.c +7 -0
  476. data/vendor/gyp/test/mac/infoplist-process/test1.gyp +25 -0
  477. data/vendor/gyp/test/mac/infoplist-process/test2.gyp +25 -0
  478. data/vendor/gyp/test/mac/infoplist-process/test3.gyp +25 -0
  479. data/vendor/gyp/test/mac/installname/Info.plist +28 -0
  480. data/vendor/gyp/test/mac/installname/file.c +1 -0
  481. data/vendor/gyp/test/mac/installname/main.c +1 -0
  482. data/vendor/gyp/test/mac/installname/test.gyp +93 -0
  483. data/vendor/gyp/test/mac/ldflags-libtool/file.c +1 -0
  484. data/vendor/gyp/test/mac/ldflags-libtool/test.gyp +17 -0
  485. data/vendor/gyp/test/mac/ldflags/subdirectory/Info.plist +8 -0
  486. data/vendor/gyp/test/mac/ldflags/subdirectory/file.c +2 -0
  487. data/vendor/gyp/test/mac/ldflags/subdirectory/symbol_list.def +1 -0
  488. data/vendor/gyp/test/mac/ldflags/subdirectory/test.gyp +66 -0
  489. data/vendor/gyp/test/mac/libraries/subdir/README.txt +1 -0
  490. data/vendor/gyp/test/mac/libraries/subdir/hello.cc +10 -0
  491. data/vendor/gyp/test/mac/libraries/subdir/mylib.c +7 -0
  492. data/vendor/gyp/test/mac/libraries/subdir/test.gyp +66 -0
  493. data/vendor/gyp/test/mac/loadable-module/Info.plist +26 -0
  494. data/vendor/gyp/test/mac/loadable-module/module.c +11 -0
  495. data/vendor/gyp/test/mac/loadable-module/test.gyp +18 -0
  496. data/vendor/gyp/test/mac/missing-cfbundlesignature/Info.plist +10 -0
  497. data/vendor/gyp/test/mac/missing-cfbundlesignature/Other-Info.plist +12 -0
  498. data/vendor/gyp/test/mac/missing-cfbundlesignature/Third-Info.plist +12 -0
  499. data/vendor/gyp/test/mac/missing-cfbundlesignature/file.c +1 -0
  500. data/vendor/gyp/test/mac/missing-cfbundlesignature/test.gyp +34 -0
  501. data/vendor/gyp/test/mac/non-strs-flattened-to-env/Info.plist +15 -0
  502. data/vendor/gyp/test/mac/non-strs-flattened-to-env/main.c +7 -0
  503. data/vendor/gyp/test/mac/non-strs-flattened-to-env/test.gyp +24 -0
  504. data/vendor/gyp/test/mac/objc-gc/c-file.c +1 -0
  505. data/vendor/gyp/test/mac/objc-gc/cc-file.cc +1 -0
  506. data/vendor/gyp/test/mac/objc-gc/main.m +6 -0
  507. data/vendor/gyp/test/mac/objc-gc/needs-gc-mm.mm +1 -0
  508. data/vendor/gyp/test/mac/objc-gc/needs-gc.m +1 -0
  509. data/vendor/gyp/test/mac/objc-gc/test.gyp +102 -0
  510. data/vendor/gyp/test/mac/postbuild-copy-bundle/Framework-Info.plist +30 -0
  511. data/vendor/gyp/test/mac/postbuild-copy-bundle/TestApp-Info.plist +32 -0
  512. data/vendor/gyp/test/mac/postbuild-copy-bundle/empty.c +0 -0
  513. data/vendor/gyp/test/mac/postbuild-copy-bundle/main.c +4 -0
  514. data/vendor/gyp/test/mac/postbuild-copy-bundle/postbuild-copy-framework.sh +9 -0
  515. data/vendor/gyp/test/mac/postbuild-copy-bundle/resource_file.sb +1 -0
  516. data/vendor/gyp/test/mac/postbuild-copy-bundle/test.gyp +43 -0
  517. data/vendor/gyp/test/mac/postbuild-defaults/Info.plist +13 -0
  518. data/vendor/gyp/test/mac/postbuild-defaults/main.c +7 -0
  519. data/vendor/gyp/test/mac/postbuild-defaults/postbuild-defaults.sh +15 -0
  520. data/vendor/gyp/test/mac/postbuild-defaults/test.gyp +26 -0
  521. data/vendor/gyp/test/mac/postbuild-fail/file.c +6 -0
  522. data/vendor/gyp/test/mac/postbuild-fail/postbuild-fail.sh +6 -0
  523. data/vendor/gyp/test/mac/postbuild-fail/test.gyp +38 -0
  524. data/vendor/gyp/test/mac/postbuild-fail/touch-dynamic.sh +7 -0
  525. data/vendor/gyp/test/mac/postbuild-fail/touch-static.sh +7 -0
  526. data/vendor/gyp/test/mac/postbuild-multiple-configurations/main.c +4 -0
  527. data/vendor/gyp/test/mac/postbuild-multiple-configurations/postbuild-touch-file.sh +7 -0
  528. data/vendor/gyp/test/mac/postbuild-multiple-configurations/test.gyp +26 -0
  529. data/vendor/gyp/test/mac/postbuild-static-library/empty.c +4 -0
  530. data/vendor/gyp/test/mac/postbuild-static-library/postbuild-touch-file.sh +7 -0
  531. data/vendor/gyp/test/mac/postbuild-static-library/test.gyp +34 -0
  532. data/vendor/gyp/test/mac/postbuilds/copy.sh +3 -0
  533. data/vendor/gyp/test/mac/postbuilds/file.c +4 -0
  534. data/vendor/gyp/test/mac/postbuilds/file_g.c +4 -0
  535. data/vendor/gyp/test/mac/postbuilds/file_h.c +4 -0
  536. data/vendor/gyp/test/mac/postbuilds/script/shared_library_postbuild.sh +23 -0
  537. data/vendor/gyp/test/mac/postbuilds/script/static_library_postbuild.sh +23 -0
  538. data/vendor/gyp/test/mac/postbuilds/subdirectory/copied_file.txt +1 -0
  539. data/vendor/gyp/test/mac/postbuilds/subdirectory/nested_target.gyp +53 -0
  540. data/vendor/gyp/test/mac/postbuilds/test.gyp +87 -0
  541. data/vendor/gyp/test/mac/prefixheader/file.c +1 -0
  542. data/vendor/gyp/test/mac/prefixheader/file.cc +1 -0
  543. data/vendor/gyp/test/mac/prefixheader/file.m +1 -0
  544. data/vendor/gyp/test/mac/prefixheader/file.mm +1 -0
  545. data/vendor/gyp/test/mac/prefixheader/header.h +1 -0
  546. data/vendor/gyp/test/mac/prefixheader/test.gyp +82 -0
  547. data/vendor/gyp/test/mac/rebuild/TestApp-Info.plist +32 -0
  548. data/vendor/gyp/test/mac/rebuild/delay-touch.sh +6 -0
  549. data/vendor/gyp/test/mac/rebuild/empty.c +0 -0
  550. data/vendor/gyp/test/mac/rebuild/main.c +1 -0
  551. data/vendor/gyp/test/mac/rebuild/test.gyp +56 -0
  552. data/vendor/gyp/test/mac/rpath/file.c +1 -0
  553. data/vendor/gyp/test/mac/rpath/main.c +1 -0
  554. data/vendor/gyp/test/mac/rpath/test.gyp +48 -0
  555. data/vendor/gyp/test/mac/sdkroot/file.cc +5 -0
  556. data/vendor/gyp/test/mac/sdkroot/test.gyp +21 -0
  557. data/vendor/gyp/test/mac/sdkroot/test_shorthand.sh +8 -0
  558. data/vendor/gyp/test/mac/sourceless-module/empty.c +1 -0
  559. data/vendor/gyp/test/mac/sourceless-module/test.gyp +39 -0
  560. data/vendor/gyp/test/mac/strip/file.c +9 -0
  561. data/vendor/gyp/test/mac/strip/strip.saves +5 -0
  562. data/vendor/gyp/test/mac/strip/subdirectory/nested_file.c +1 -0
  563. data/vendor/gyp/test/mac/strip/subdirectory/nested_strip.saves +5 -0
  564. data/vendor/gyp/test/mac/strip/subdirectory/subdirectory.gyp +38 -0
  565. data/vendor/gyp/test/mac/strip/subdirectory/test_reading_save_file_from_postbuild.sh +5 -0
  566. data/vendor/gyp/test/mac/strip/test.gyp +119 -0
  567. data/vendor/gyp/test/mac/type_envvars/file.c +6 -0
  568. data/vendor/gyp/test/mac/type_envvars/test.gyp +100 -0
  569. data/vendor/gyp/test/mac/type_envvars/test_bundle_executable.sh +21 -0
  570. data/vendor/gyp/test/mac/type_envvars/test_bundle_loadable_module.sh +22 -0
  571. data/vendor/gyp/test/mac/type_envvars/test_bundle_shared_library.sh +23 -0
  572. data/vendor/gyp/test/mac/type_envvars/test_nonbundle_executable.sh +22 -0
  573. data/vendor/gyp/test/mac/type_envvars/test_nonbundle_loadable_module.sh +21 -0
  574. data/vendor/gyp/test/mac/type_envvars/test_nonbundle_none.sh +22 -0
  575. data/vendor/gyp/test/mac/type_envvars/test_nonbundle_shared_library.sh +21 -0
  576. data/vendor/gyp/test/mac/type_envvars/test_nonbundle_static_library.sh +21 -0
  577. data/vendor/gyp/test/mac/xcode-env-order/Info.plist +56 -0
  578. data/vendor/gyp/test/mac/xcode-env-order/file.ext1 +0 -0
  579. data/vendor/gyp/test/mac/xcode-env-order/file.ext2 +0 -0
  580. data/vendor/gyp/test/mac/xcode-env-order/file.ext3 +0 -0
  581. data/vendor/gyp/test/mac/xcode-env-order/main.c +7 -0
  582. data/vendor/gyp/test/mac/xcode-env-order/test.gyp +121 -0
  583. data/vendor/gyp/test/mac/xcode-gcc/test.gyp +60 -0
  584. data/vendor/gyp/test/mac/xcode-gcc/valid_c.c +8 -0
  585. data/vendor/gyp/test/mac/xcode-gcc/valid_cc.cc +8 -0
  586. data/vendor/gyp/test/mac/xcode-gcc/valid_m.m +8 -0
  587. data/vendor/gyp/test/mac/xcode-gcc/valid_mm.mm +8 -0
  588. data/vendor/gyp/test/mac/xcode-gcc/warn_about_invalid_offsetof_macro.cc +15 -0
  589. data/vendor/gyp/test/mac/xcode-gcc/warn_about_missing_newline.c +8 -0
  590. data/vendor/gyp/test/make/dependencies.gyp +15 -0
  591. data/vendor/gyp/test/make/gyptest-dependencies.py +26 -0
  592. data/vendor/gyp/test/make/gyptest-noload.py +57 -0
  593. data/vendor/gyp/test/make/main.cc +12 -0
  594. data/vendor/gyp/test/make/main.h +0 -0
  595. data/vendor/gyp/test/make/noload/all.gyp +18 -0
  596. data/vendor/gyp/test/make/noload/lib/shared.c +3 -0
  597. data/vendor/gyp/test/make/noload/lib/shared.gyp +16 -0
  598. data/vendor/gyp/test/make/noload/lib/shared.h +1 -0
  599. data/vendor/gyp/test/make/noload/main.c +9 -0
  600. data/vendor/gyp/test/many-actions/file0 +0 -0
  601. data/vendor/gyp/test/many-actions/file1 +0 -0
  602. data/vendor/gyp/test/many-actions/file2 +0 -0
  603. data/vendor/gyp/test/many-actions/file3 +0 -0
  604. data/vendor/gyp/test/many-actions/file4 +0 -0
  605. data/vendor/gyp/test/many-actions/gyptest-many-actions-unsorted.py +34 -0
  606. data/vendor/gyp/test/many-actions/gyptest-many-actions.py +20 -0
  607. data/vendor/gyp/test/many-actions/many-actions-unsorted.gyp +154 -0
  608. data/vendor/gyp/test/many-actions/many-actions.gyp +1817 -0
  609. data/vendor/gyp/test/module/gyptest-default.py +29 -0
  610. data/vendor/gyp/test/module/src/lib1.c +10 -0
  611. data/vendor/gyp/test/module/src/lib2.c +10 -0
  612. data/vendor/gyp/test/module/src/module.gyp +55 -0
  613. data/vendor/gyp/test/module/src/program.c +111 -0
  614. data/vendor/gyp/test/msvs/config_attrs/gyptest-config_attrs.py +31 -0
  615. data/vendor/gyp/test/msvs/config_attrs/hello.c +11 -0
  616. data/vendor/gyp/test/msvs/config_attrs/hello.gyp +21 -0
  617. data/vendor/gyp/test/msvs/express/base/base.gyp +22 -0
  618. data/vendor/gyp/test/msvs/express/express.gyp +19 -0
  619. data/vendor/gyp/test/msvs/express/gyptest-express.py +29 -0
  620. data/vendor/gyp/test/msvs/list_excluded/gyptest-all.py +51 -0
  621. data/vendor/gyp/test/msvs/list_excluded/hello.cpp +10 -0
  622. data/vendor/gyp/test/msvs/list_excluded/hello_exclude.gyp +19 -0
  623. data/vendor/gyp/test/msvs/list_excluded/hello_mac.cpp +10 -0
  624. data/vendor/gyp/test/msvs/missing_sources/gyptest-missing.py +41 -0
  625. data/vendor/gyp/test/msvs/missing_sources/hello_missing.gyp +15 -0
  626. data/vendor/gyp/test/msvs/props/AppName.props +14 -0
  627. data/vendor/gyp/test/msvs/props/AppName.vsprops +11 -0
  628. data/vendor/gyp/test/msvs/props/gyptest-props.py +22 -0
  629. data/vendor/gyp/test/msvs/props/hello.c +11 -0
  630. data/vendor/gyp/test/msvs/props/hello.gyp +22 -0
  631. data/vendor/gyp/test/msvs/shared_output/common.gypi +17 -0
  632. data/vendor/gyp/test/msvs/shared_output/gyptest-shared_output.py +41 -0
  633. data/vendor/gyp/test/msvs/shared_output/hello.c +12 -0
  634. data/vendor/gyp/test/msvs/shared_output/hello.gyp +21 -0
  635. data/vendor/gyp/test/msvs/shared_output/there/there.c +12 -0
  636. data/vendor/gyp/test/msvs/shared_output/there/there.gyp +16 -0
  637. data/vendor/gyp/test/msvs/uldi2010/gyptest-all.py +20 -0
  638. data/vendor/gyp/test/msvs/uldi2010/hello.c +13 -0
  639. data/vendor/gyp/test/msvs/uldi2010/hello.gyp +26 -0
  640. data/vendor/gyp/test/msvs/uldi2010/hello2.c +10 -0
  641. data/vendor/gyp/test/multiple-targets/gyptest-all.py +35 -0
  642. data/vendor/gyp/test/multiple-targets/gyptest-default.py +35 -0
  643. data/vendor/gyp/test/multiple-targets/src/common.c +7 -0
  644. data/vendor/gyp/test/multiple-targets/src/multiple.gyp +24 -0
  645. data/vendor/gyp/test/multiple-targets/src/prog1.c +10 -0
  646. data/vendor/gyp/test/multiple-targets/src/prog2.c +10 -0
  647. data/vendor/gyp/test/ninja/action_dependencies/gyptest-action-dependencies.py +53 -0
  648. data/vendor/gyp/test/ninja/action_dependencies/src/a.c +10 -0
  649. data/vendor/gyp/test/ninja/action_dependencies/src/a.h +13 -0
  650. data/vendor/gyp/test/ninja/action_dependencies/src/action_dependencies.gyp +88 -0
  651. data/vendor/gyp/test/ninja/action_dependencies/src/b.c +18 -0
  652. data/vendor/gyp/test/ninja/action_dependencies/src/b.h +13 -0
  653. data/vendor/gyp/test/ninja/action_dependencies/src/c.c +10 -0
  654. data/vendor/gyp/test/ninja/action_dependencies/src/c.h +13 -0
  655. data/vendor/gyp/test/ninja/action_dependencies/src/emit.py +11 -0
  656. data/vendor/gyp/test/ninja/chained-dependency/chained-dependency.gyp +53 -0
  657. data/vendor/gyp/test/ninja/chained-dependency/chained.c +5 -0
  658. data/vendor/gyp/test/ninja/chained-dependency/gyptest-chained-dependency.py +26 -0
  659. data/vendor/gyp/test/ninja/normalize-paths-win/gyptest-normalize-paths.py +42 -0
  660. data/vendor/gyp/test/ninja/normalize-paths-win/hello.cc +7 -0
  661. data/vendor/gyp/test/ninja/normalize-paths-win/normalize-paths.gyp +56 -0
  662. data/vendor/gyp/test/ninja/solibs_avoid_relinking/gyptest-solibs-avoid-relinking.py +41 -0
  663. data/vendor/gyp/test/ninja/solibs_avoid_relinking/main.cc +5 -0
  664. data/vendor/gyp/test/ninja/solibs_avoid_relinking/solib.cc +8 -0
  665. data/vendor/gyp/test/ninja/solibs_avoid_relinking/solibs_avoid_relinking.gyp +38 -0
  666. data/vendor/gyp/test/no-output/gyptest-no-output.py +21 -0
  667. data/vendor/gyp/test/no-output/src/nooutput.gyp +17 -0
  668. data/vendor/gyp/test/product/gyptest-product.py +44 -0
  669. data/vendor/gyp/test/product/hello.c +15 -0
  670. data/vendor/gyp/test/product/product.gyp +128 -0
  671. data/vendor/gyp/test/relative/foo/a/a.cc +9 -0
  672. data/vendor/gyp/test/relative/foo/a/a.gyp +13 -0
  673. data/vendor/gyp/test/relative/foo/a/c/c.cc +9 -0
  674. data/vendor/gyp/test/relative/foo/a/c/c.gyp +12 -0
  675. data/vendor/gyp/test/relative/foo/b/b.cc +9 -0
  676. data/vendor/gyp/test/relative/foo/b/b.gyp +9 -0
  677. data/vendor/gyp/test/relative/gyptest-default.py +25 -0
  678. data/vendor/gyp/test/rename/filecase/file.c +1 -0
  679. data/vendor/gyp/test/rename/filecase/test-casesensitive.gyp +15 -0
  680. data/vendor/gyp/test/rename/filecase/test.gyp +14 -0
  681. data/vendor/gyp/test/rename/gyptest-filecase.py +35 -0
  682. data/vendor/gyp/test/restat/gyptest-restat.py +31 -0
  683. data/vendor/gyp/test/restat/src/create_intermediate.py +17 -0
  684. data/vendor/gyp/test/restat/src/restat.gyp +50 -0
  685. data/vendor/gyp/test/restat/src/touch.py +16 -0
  686. data/vendor/gyp/test/rules-dirname/gyptest-dirname.py +38 -0
  687. data/vendor/gyp/test/rules-dirname/src/actions.gyp +15 -0
  688. data/vendor/gyp/test/rules-dirname/src/copy-file.py +11 -0
  689. data/vendor/gyp/test/rules-dirname/src/subdir/a/b/c.gencc +11 -0
  690. data/vendor/gyp/test/rules-dirname/src/subdir/a/b/c.printvars +1 -0
  691. data/vendor/gyp/test/rules-dirname/src/subdir/foo/bar/baz.gencc +11 -0
  692. data/vendor/gyp/test/rules-dirname/src/subdir/foo/bar/baz.printvars +1 -0
  693. data/vendor/gyp/test/rules-dirname/src/subdir/input-rule-dirname.gyp +92 -0
  694. data/vendor/gyp/test/rules-dirname/src/subdir/main.cc +12 -0
  695. data/vendor/gyp/test/rules-dirname/src/subdir/printvars.py +14 -0
  696. data/vendor/gyp/test/rules-rebuild/gyptest-all.py +70 -0
  697. data/vendor/gyp/test/rules-rebuild/gyptest-default.py +91 -0
  698. data/vendor/gyp/test/rules-rebuild/src/main.c +12 -0
  699. data/vendor/gyp/test/rules-rebuild/src/make-sources.py +19 -0
  700. data/vendor/gyp/test/rules-rebuild/src/prog1.in +7 -0
  701. data/vendor/gyp/test/rules-rebuild/src/prog2.in +7 -0
  702. data/vendor/gyp/test/rules-rebuild/src/same_target.gyp +31 -0
  703. data/vendor/gyp/test/rules-variables/gyptest-rules-variables.py +26 -0
  704. data/vendor/gyp/test/rules-variables/src/input_ext.c +9 -0
  705. data/vendor/gyp/test/rules-variables/src/input_name/test.c +9 -0
  706. data/vendor/gyp/test/rules-variables/src/input_path/subdir/test.c +9 -0
  707. data/vendor/gyp/test/rules-variables/src/subdir/input_dirname.c +9 -0
  708. data/vendor/gyp/test/rules-variables/src/subdir/test.c +18 -0
  709. data/vendor/gyp/test/rules-variables/src/test.input_root.c +9 -0
  710. data/vendor/gyp/test/rules-variables/src/variables.gyp +40 -0
  711. data/vendor/gyp/test/rules/gyptest-all.py +69 -0
  712. data/vendor/gyp/test/rules/gyptest-default.py +55 -0
  713. data/vendor/gyp/test/rules/gyptest-input-root.py +26 -0
  714. data/vendor/gyp/test/rules/gyptest-special-variables.py +18 -0
  715. data/vendor/gyp/test/rules/src/actions.gyp +22 -0
  716. data/vendor/gyp/test/rules/src/an_asm.S +6 -0
  717. data/vendor/gyp/test/rules/src/as.bat +7 -0
  718. data/vendor/gyp/test/rules/src/copy-file.py +11 -0
  719. data/vendor/gyp/test/rules/src/external/external.gyp +66 -0
  720. data/vendor/gyp/test/rules/src/external/file1.in +1 -0
  721. data/vendor/gyp/test/rules/src/external/file2.in +1 -0
  722. data/vendor/gyp/test/rules/src/input-root.gyp +24 -0
  723. data/vendor/gyp/test/rules/src/noaction/file1.in +1 -0
  724. data/vendor/gyp/test/rules/src/noaction/no_action_with_rules_fails.gyp +37 -0
  725. data/vendor/gyp/test/rules/src/rule.py +17 -0
  726. data/vendor/gyp/test/rules/src/somefile.ext +0 -0
  727. data/vendor/gyp/test/rules/src/special-variables.gyp +35 -0
  728. data/vendor/gyp/test/rules/src/subdir1/executable.gyp +37 -0
  729. data/vendor/gyp/test/rules/src/subdir1/function1.in +6 -0
  730. data/vendor/gyp/test/rules/src/subdir1/function2.in +6 -0
  731. data/vendor/gyp/test/rules/src/subdir1/program.c +12 -0
  732. data/vendor/gyp/test/rules/src/subdir2/file1.in +1 -0
  733. data/vendor/gyp/test/rules/src/subdir2/file2.in +1 -0
  734. data/vendor/gyp/test/rules/src/subdir2/never_used.gyp +31 -0
  735. data/vendor/gyp/test/rules/src/subdir2/no_action.gyp +38 -0
  736. data/vendor/gyp/test/rules/src/subdir2/no_inputs.gyp +32 -0
  737. data/vendor/gyp/test/rules/src/subdir2/none.gyp +33 -0
  738. data/vendor/gyp/test/rules/src/subdir3/executable2.gyp +37 -0
  739. data/vendor/gyp/test/rules/src/subdir3/function3.in +6 -0
  740. data/vendor/gyp/test/rules/src/subdir3/program.c +10 -0
  741. data/vendor/gyp/test/rules/src/subdir4/asm-function.asm +10 -0
  742. data/vendor/gyp/test/rules/src/subdir4/build-asm.gyp +49 -0
  743. data/vendor/gyp/test/rules/src/subdir4/program.c +19 -0
  744. data/vendor/gyp/test/same-gyp-name/gyptest-all.py +34 -0
  745. data/vendor/gyp/test/same-gyp-name/gyptest-default.py +34 -0
  746. data/vendor/gyp/test/same-gyp-name/src/all.gyp +16 -0
  747. data/vendor/gyp/test/same-gyp-name/src/subdir1/executable.gyp +15 -0
  748. data/vendor/gyp/test/same-gyp-name/src/subdir1/main1.cc +6 -0
  749. data/vendor/gyp/test/same-gyp-name/src/subdir2/executable.gyp +15 -0
  750. data/vendor/gyp/test/same-gyp-name/src/subdir2/main2.cc +6 -0
  751. data/vendor/gyp/test/same-rule-output-file-name/gyptest-all.py +23 -0
  752. data/vendor/gyp/test/same-rule-output-file-name/src/subdir1/subdir1.gyp +30 -0
  753. data/vendor/gyp/test/same-rule-output-file-name/src/subdir2/subdir2.gyp +30 -0
  754. data/vendor/gyp/test/same-rule-output-file-name/src/subdirs.gyp +16 -0
  755. data/vendor/gyp/test/same-rule-output-file-name/src/touch.py +11 -0
  756. data/vendor/gyp/test/same-source-file-name/gyptest-all.py +34 -0
  757. data/vendor/gyp/test/same-source-file-name/gyptest-default.py +34 -0
  758. data/vendor/gyp/test/same-source-file-name/gyptest-fail.py +0 -0
  759. data/vendor/gyp/test/same-source-file-name/src/all.gyp +30 -0
  760. data/vendor/gyp/test/same-source-file-name/src/double.gyp +0 -0
  761. data/vendor/gyp/test/same-source-file-name/src/func.c +6 -0
  762. data/vendor/gyp/test/same-source-file-name/src/prog1.c +16 -0
  763. data/vendor/gyp/test/same-source-file-name/src/prog2.c +16 -0
  764. data/vendor/gyp/test/same-source-file-name/src/subdir1/func.c +6 -0
  765. data/vendor/gyp/test/same-source-file-name/src/subdir2/func.c +6 -0
  766. data/vendor/gyp/test/same-target-name-different-directory/gyptest-all.py +36 -0
  767. data/vendor/gyp/test/same-target-name-different-directory/src/subdir1/subdir1.gyp +66 -0
  768. data/vendor/gyp/test/same-target-name-different-directory/src/subdir2/subdir2.gyp +66 -0
  769. data/vendor/gyp/test/same-target-name-different-directory/src/subdirs.gyp +16 -0
  770. data/vendor/gyp/test/same-target-name-different-directory/src/touch.py +11 -0
  771. data/vendor/gyp/test/same-target-name/gyptest-same-target-name.py +18 -0
  772. data/vendor/gyp/test/same-target-name/src/all.gyp +16 -0
  773. data/vendor/gyp/test/same-target-name/src/executable1.gyp +15 -0
  774. data/vendor/gyp/test/same-target-name/src/executable2.gyp +15 -0
  775. data/vendor/gyp/test/sanitize-rule-names/blah.S +0 -0
  776. data/vendor/gyp/test/sanitize-rule-names/gyptest-sanitize-rule-names.py +17 -0
  777. data/vendor/gyp/test/sanitize-rule-names/hello.cc +7 -0
  778. data/vendor/gyp/test/sanitize-rule-names/sanitize-rule-names.gyp +27 -0
  779. data/vendor/gyp/test/sanitize-rule-names/script.py +10 -0
  780. data/vendor/gyp/test/scons_tools/gyptest-tools.py +26 -0
  781. data/vendor/gyp/test/scons_tools/site_scons/site_tools/this_tool.py +10 -0
  782. data/vendor/gyp/test/scons_tools/tools.c +13 -0
  783. data/vendor/gyp/test/scons_tools/tools.gyp +18 -0
  784. data/vendor/gyp/test/sibling/gyptest-all.py +39 -0
  785. data/vendor/gyp/test/sibling/gyptest-relocate.py +41 -0
  786. data/vendor/gyp/test/sibling/src/build/all.gyp +17 -0
  787. data/vendor/gyp/test/sibling/src/prog1/prog1.c +7 -0
  788. data/vendor/gyp/test/sibling/src/prog1/prog1.gyp +15 -0
  789. data/vendor/gyp/test/sibling/src/prog2/prog2.c +7 -0
  790. data/vendor/gyp/test/sibling/src/prog2/prog2.gyp +15 -0
  791. data/vendor/gyp/test/small/gyptest-small.py +53 -0
  792. data/vendor/gyp/test/standalone/gyptest-standalone.py +33 -0
  793. data/vendor/gyp/test/standalone/standalone.gyp +12 -0
  794. data/vendor/gyp/test/subdirectory/gyptest-SYMROOT-all.py +36 -0
  795. data/vendor/gyp/test/subdirectory/gyptest-SYMROOT-default.py +37 -0
  796. data/vendor/gyp/test/subdirectory/gyptest-subdir-all.py +33 -0
  797. data/vendor/gyp/test/subdirectory/gyptest-subdir-default.py +33 -0
  798. data/vendor/gyp/test/subdirectory/gyptest-subdir2-deep.py +25 -0
  799. data/vendor/gyp/test/subdirectory/gyptest-top-all.py +43 -0
  800. data/vendor/gyp/test/subdirectory/gyptest-top-default.py +43 -0
  801. data/vendor/gyp/test/subdirectory/src/prog1.c +7 -0
  802. data/vendor/gyp/test/subdirectory/src/prog1.gyp +21 -0
  803. data/vendor/gyp/test/subdirectory/src/subdir/prog2.c +7 -0
  804. data/vendor/gyp/test/subdirectory/src/subdir/prog2.gyp +18 -0
  805. data/vendor/gyp/test/subdirectory/src/subdir/subdir2/prog3.c +7 -0
  806. data/vendor/gyp/test/subdirectory/src/subdir/subdir2/prog3.gyp +18 -0
  807. data/vendor/gyp/test/subdirectory/src/symroot.gypi +16 -0
  808. data/vendor/gyp/test/toolsets/gyptest-toolsets.py +23 -0
  809. data/vendor/gyp/test/toolsets/main.cc +11 -0
  810. data/vendor/gyp/test/toolsets/toolsets.cc +11 -0
  811. data/vendor/gyp/test/toolsets/toolsets.gyp +49 -0
  812. data/vendor/gyp/test/toplevel-dir/gyptest-toplevel-dir.py +31 -0
  813. data/vendor/gyp/test/toplevel-dir/src/sub1/main.gyp +18 -0
  814. data/vendor/gyp/test/toplevel-dir/src/sub1/prog1.c +7 -0
  815. data/vendor/gyp/test/toplevel-dir/src/sub2/prog2.c +7 -0
  816. data/vendor/gyp/test/toplevel-dir/src/sub2/prog2.gyp +15 -0
  817. data/vendor/gyp/test/variables/commands/commands-repeated.gyp +128 -0
  818. data/vendor/gyp/test/variables/commands/commands-repeated.gyp.stdout +136 -0
  819. data/vendor/gyp/test/variables/commands/commands-repeated.gypd.golden +72 -0
  820. data/vendor/gyp/test/variables/commands/commands.gyp +86 -0
  821. data/vendor/gyp/test/variables/commands/commands.gyp.ignore-env.stdout +86 -0
  822. data/vendor/gyp/test/variables/commands/commands.gyp.stdout +86 -0
  823. data/vendor/gyp/test/variables/commands/commands.gypd.golden +56 -0
  824. data/vendor/gyp/test/variables/commands/commands.gypi +16 -0
  825. data/vendor/gyp/test/variables/commands/gyptest-commands-ignore-env.py +46 -0
  826. data/vendor/gyp/test/variables/commands/gyptest-commands-repeated.py +38 -0
  827. data/vendor/gyp/test/variables/commands/gyptest-commands.py +39 -0
  828. data/vendor/gyp/test/variables/commands/test.py +1 -0
  829. data/vendor/gyp/test/variables/commands/update_golden +11 -0
  830. data/vendor/gyp/test/variables/filelist/filelist.gyp.stdout +26 -0
  831. data/vendor/gyp/test/variables/filelist/filelist.gypd.golden +43 -0
  832. data/vendor/gyp/test/variables/filelist/gyptest-filelist.py +50 -0
  833. data/vendor/gyp/test/variables/filelist/src/filelist.gyp +93 -0
  834. data/vendor/gyp/test/variables/filelist/update_golden +8 -0
  835. data/vendor/gyp/test/variables/latelate/gyptest-latelate.py +25 -0
  836. data/vendor/gyp/test/variables/latelate/src/latelate.gyp +34 -0
  837. data/vendor/gyp/test/variables/latelate/src/program.cc +13 -0
  838. data/vendor/gyp/test/variables/variable-in-path/C1/hello.cc +7 -0
  839. data/vendor/gyp/test/variables/variable-in-path/gyptest-variable-in-path.py +23 -0
  840. data/vendor/gyp/test/variables/variable-in-path/variable-in-path.gyp +31 -0
  841. data/vendor/gyp/test/variants/gyptest-variants.py +45 -0
  842. data/vendor/gyp/test/variants/src/variants.c +13 -0
  843. data/vendor/gyp/test/variants/src/variants.gyp +27 -0
  844. data/vendor/gyp/test/win/asm-files/asm-files.gyp +17 -0
  845. data/vendor/gyp/test/win/asm-files/b.s +0 -0
  846. data/vendor/gyp/test/win/asm-files/c.S +0 -0
  847. data/vendor/gyp/test/win/asm-files/hello.cc +7 -0
  848. data/vendor/gyp/test/win/batch-file-action/batch-file-action.gyp +21 -0
  849. data/vendor/gyp/test/win/batch-file-action/infile +1 -0
  850. data/vendor/gyp/test/win/batch-file-action/somecmd.bat +5 -0
  851. data/vendor/gyp/test/win/command-quote/a.S +0 -0
  852. data/vendor/gyp/test/win/command-quote/bat with spaces.bat +7 -0
  853. data/vendor/gyp/test/win/command-quote/command-quote.gyp +84 -0
  854. data/vendor/gyp/test/win/command-quote/go.bat +7 -0
  855. data/vendor/gyp/test/win/command-quote/subdir/and/another/in-subdir.gyp +28 -0
  856. data/vendor/gyp/test/win/compiler-flags/additional-include-dirs.cc +10 -0
  857. data/vendor/gyp/test/win/compiler-flags/additional-include-dirs.gyp +20 -0
  858. data/vendor/gyp/test/win/compiler-flags/additional-options.cc +10 -0
  859. data/vendor/gyp/test/win/compiler-flags/additional-options.gyp +31 -0
  860. data/vendor/gyp/test/win/compiler-flags/buffer-security-check.gyp +51 -0
  861. data/vendor/gyp/test/win/compiler-flags/buffer-security.cc +12 -0
  862. data/vendor/gyp/test/win/compiler-flags/character-set-mbcs.cc +11 -0
  863. data/vendor/gyp/test/win/compiler-flags/character-set-unicode.cc +15 -0
  864. data/vendor/gyp/test/win/compiler-flags/character-set.gyp +35 -0
  865. data/vendor/gyp/test/win/compiler-flags/debug-format.gyp +48 -0
  866. data/vendor/gyp/test/win/compiler-flags/exception-handling-on.cc +24 -0
  867. data/vendor/gyp/test/win/compiler-flags/exception-handling.gyp +46 -0
  868. data/vendor/gyp/test/win/compiler-flags/function-level-linking.cc +11 -0
  869. data/vendor/gyp/test/win/compiler-flags/function-level-linking.gyp +28 -0
  870. data/vendor/gyp/test/win/compiler-flags/hello.cc +7 -0
  871. data/vendor/gyp/test/win/compiler-flags/optimizations.gyp +147 -0
  872. data/vendor/gyp/test/win/compiler-flags/pdbname.cc +7 -0
  873. data/vendor/gyp/test/win/compiler-flags/pdbname.gyp +24 -0
  874. data/vendor/gyp/test/win/compiler-flags/rtti-on.cc +11 -0
  875. data/vendor/gyp/test/win/compiler-flags/rtti.gyp +37 -0
  876. data/vendor/gyp/test/win/compiler-flags/runtime-checks.cc +11 -0
  877. data/vendor/gyp/test/win/compiler-flags/runtime-checks.gyp +29 -0
  878. data/vendor/gyp/test/win/compiler-flags/runtime-library-md.cc +19 -0
  879. data/vendor/gyp/test/win/compiler-flags/runtime-library-mdd.cc +19 -0
  880. data/vendor/gyp/test/win/compiler-flags/runtime-library-mt.cc +19 -0
  881. data/vendor/gyp/test/win/compiler-flags/runtime-library-mtd.cc +19 -0
  882. data/vendor/gyp/test/win/compiler-flags/runtime-library.gyp +48 -0
  883. data/vendor/gyp/test/win/compiler-flags/subdir/header.h +0 -0
  884. data/vendor/gyp/test/win/compiler-flags/warning-as-error.cc +9 -0
  885. data/vendor/gyp/test/win/compiler-flags/warning-as-error.gyp +37 -0
  886. data/vendor/gyp/test/win/compiler-flags/warning-level.gyp +115 -0
  887. data/vendor/gyp/test/win/compiler-flags/warning-level1.cc +8 -0
  888. data/vendor/gyp/test/win/compiler-flags/warning-level2.cc +14 -0
  889. data/vendor/gyp/test/win/compiler-flags/warning-level3.cc +11 -0
  890. data/vendor/gyp/test/win/compiler-flags/warning-level4.cc +10 -0
  891. data/vendor/gyp/test/win/gyptest-asm-files.py +26 -0
  892. data/vendor/gyp/test/win/gyptest-cl-additional-include-dirs.py +22 -0
  893. data/vendor/gyp/test/win/gyptest-cl-additional-options.py +28 -0
  894. data/vendor/gyp/test/win/gyptest-cl-buffer-security-check.py +53 -0
  895. data/vendor/gyp/test/win/gyptest-cl-character-set.py +22 -0
  896. data/vendor/gyp/test/win/gyptest-cl-debug-format.py +43 -0
  897. data/vendor/gyp/test/win/gyptest-cl-exception-handling.py +33 -0
  898. data/vendor/gyp/test/win/gyptest-cl-function-level-linking.py +52 -0
  899. data/vendor/gyp/test/win/gyptest-cl-optimizations.py +79 -0
  900. data/vendor/gyp/test/win/gyptest-cl-pdbname.py +26 -0
  901. data/vendor/gyp/test/win/gyptest-cl-rtti.py +30 -0
  902. data/vendor/gyp/test/win/gyptest-cl-runtime-checks.py +30 -0
  903. data/vendor/gyp/test/win/gyptest-cl-runtime-library.py +22 -0
  904. data/vendor/gyp/test/win/gyptest-cl-warning-as-error.py +30 -0
  905. data/vendor/gyp/test/win/gyptest-cl-warning-level.py +41 -0
  906. data/vendor/gyp/test/win/gyptest-command-quote.py +37 -0
  907. data/vendor/gyp/test/win/gyptest-link-additional-deps.py +22 -0
  908. data/vendor/gyp/test/win/gyptest-link-additional-options.py +22 -0
  909. data/vendor/gyp/test/win/gyptest-link-aslr.py +35 -0
  910. data/vendor/gyp/test/win/gyptest-link-debug-info.py +26 -0
  911. data/vendor/gyp/test/win/gyptest-link-default-libs.py +22 -0
  912. data/vendor/gyp/test/win/gyptest-link-deffile.py +43 -0
  913. data/vendor/gyp/test/win/gyptest-link-delay-load-dlls.py +35 -0
  914. data/vendor/gyp/test/win/gyptest-link-entrypointsymbol.py +24 -0
  915. data/vendor/gyp/test/win/gyptest-link-fixed-base.py +40 -0
  916. data/vendor/gyp/test/win/gyptest-link-generate-manifest.py +44 -0
  917. data/vendor/gyp/test/win/gyptest-link-incremental.py +37 -0
  918. data/vendor/gyp/test/win/gyptest-link-library-adjust.py +21 -0
  919. data/vendor/gyp/test/win/gyptest-link-library-directories.py +35 -0
  920. data/vendor/gyp/test/win/gyptest-link-nodefaultlib.py +24 -0
  921. data/vendor/gyp/test/win/gyptest-link-nxcompat.py +37 -0
  922. data/vendor/gyp/test/win/gyptest-link-opt-icf.py +41 -0
  923. data/vendor/gyp/test/win/gyptest-link-opt-ref.py +40 -0
  924. data/vendor/gyp/test/win/gyptest-link-outputfile.py +28 -0
  925. data/vendor/gyp/test/win/gyptest-link-restat-importlib.py +39 -0
  926. data/vendor/gyp/test/win/gyptest-link-subsystem.py +28 -0
  927. data/vendor/gyp/test/win/gyptest-link-uldi.py +28 -0
  928. data/vendor/gyp/test/win/gyptest-long-command-line.py +23 -0
  929. data/vendor/gyp/test/win/gyptest-macro-projectname.py +24 -0
  930. data/vendor/gyp/test/win/gyptest-macro-vcinstalldir.py +24 -0
  931. data/vendor/gyp/test/win/gyptest-macros-containing-gyp.py +21 -0
  932. data/vendor/gyp/test/win/gyptest-macros-in-inputs-and-outputs.py +27 -0
  933. data/vendor/gyp/test/win/gyptest-midl-rules.py +22 -0
  934. data/vendor/gyp/test/win/gyptest-quoting-commands.py +25 -0
  935. data/vendor/gyp/test/win/gyptest-rc-build.py +24 -0
  936. data/vendor/gyp/test/win/idl-rules/basic-idl.gyp +30 -0
  937. data/vendor/gyp/test/win/idl-rules/history_indexer.idl +17 -0
  938. data/vendor/gyp/test/win/idl-rules/history_indexer_user.cc +15 -0
  939. data/vendor/gyp/test/win/importlib/has-exports.cc +10 -0
  940. data/vendor/gyp/test/win/importlib/hello.cc +9 -0
  941. data/vendor/gyp/test/win/importlib/importlib.gyp +30 -0
  942. data/vendor/gyp/test/win/linker-flags/additional-deps.cc +10 -0
  943. data/vendor/gyp/test/win/linker-flags/additional-deps.gyp +30 -0
  944. data/vendor/gyp/test/win/linker-flags/additional-options.gyp +29 -0
  945. data/vendor/gyp/test/win/linker-flags/aslr.gyp +35 -0
  946. data/vendor/gyp/test/win/linker-flags/debug-info.gyp +28 -0
  947. data/vendor/gyp/test/win/linker-flags/default-libs.cc +30 -0
  948. data/vendor/gyp/test/win/linker-flags/default-libs.gyp +13 -0
  949. data/vendor/gyp/test/win/linker-flags/deffile-multiple.gyp +17 -0
  950. data/vendor/gyp/test/win/linker-flags/deffile.cc +10 -0
  951. data/vendor/gyp/test/win/linker-flags/deffile.def +8 -0
  952. data/vendor/gyp/test/win/linker-flags/deffile.gyp +38 -0
  953. data/vendor/gyp/test/win/linker-flags/delay-load-dlls.gyp +27 -0
  954. data/vendor/gyp/test/win/linker-flags/delay-load.cc +10 -0
  955. data/vendor/gyp/test/win/linker-flags/entrypointsymbol.cc +13 -0
  956. data/vendor/gyp/test/win/linker-flags/entrypointsymbol.gyp +28 -0
  957. data/vendor/gyp/test/win/linker-flags/extra.manifest +11 -0
  958. data/vendor/gyp/test/win/linker-flags/extra2.manifest +11 -0
  959. data/vendor/gyp/test/win/linker-flags/fixed-base.gyp +52 -0
  960. data/vendor/gyp/test/win/linker-flags/generate-manifest.gyp +64 -0
  961. data/vendor/gyp/test/win/linker-flags/hello.cc +7 -0
  962. data/vendor/gyp/test/win/linker-flags/incremental.gyp +65 -0
  963. data/vendor/gyp/test/win/linker-flags/library-adjust.cc +10 -0
  964. data/vendor/gyp/test/win/linker-flags/library-adjust.gyp +16 -0
  965. data/vendor/gyp/test/win/linker-flags/library-directories-define.cc +7 -0
  966. data/vendor/gyp/test/win/linker-flags/library-directories-reference.cc +10 -0
  967. data/vendor/gyp/test/win/linker-flags/library-directories.gyp +42 -0
  968. data/vendor/gyp/test/win/linker-flags/nodefaultlib.cc +13 -0
  969. data/vendor/gyp/test/win/linker-flags/nodefaultlib.gyp +30 -0
  970. data/vendor/gyp/test/win/linker-flags/nxcompat.gyp +35 -0
  971. data/vendor/gyp/test/win/linker-flags/opt-icf.cc +29 -0
  972. data/vendor/gyp/test/win/linker-flags/opt-icf.gyp +63 -0
  973. data/vendor/gyp/test/win/linker-flags/opt-ref.cc +11 -0
  974. data/vendor/gyp/test/win/linker-flags/opt-ref.gyp +56 -0
  975. data/vendor/gyp/test/win/linker-flags/outputfile.gyp +58 -0
  976. data/vendor/gyp/test/win/linker-flags/subdir/library.gyp +13 -0
  977. data/vendor/gyp/test/win/linker-flags/subsystem-windows.cc +9 -0
  978. data/vendor/gyp/test/win/linker-flags/subsystem.gyp +48 -0
  979. data/vendor/gyp/test/win/long-command-line/function.cc +7 -0
  980. data/vendor/gyp/test/win/long-command-line/hello.cc +7 -0
  981. data/vendor/gyp/test/win/long-command-line/long-command-line.gyp +54 -0
  982. data/vendor/gyp/test/win/precompiled/gyptest-all.py +21 -0
  983. data/vendor/gyp/test/win/precompiled/hello.c +14 -0
  984. data/vendor/gyp/test/win/precompiled/hello.gyp +28 -0
  985. data/vendor/gyp/test/win/precompiled/hello2.c +13 -0
  986. data/vendor/gyp/test/win/precompiled/precomp.c +8 -0
  987. data/vendor/gyp/test/win/rc-build/Resource.h +26 -0
  988. data/vendor/gyp/test/win/rc-build/hello.cpp +30 -0
  989. data/vendor/gyp/test/win/rc-build/hello.gyp +58 -0
  990. data/vendor/gyp/test/win/rc-build/hello.h +3 -0
  991. data/vendor/gyp/test/win/rc-build/hello.ico +0 -0
  992. data/vendor/gyp/test/win/rc-build/hello.rc +86 -0
  993. data/vendor/gyp/test/win/rc-build/small.ico +0 -0
  994. data/vendor/gyp/test/win/rc-build/subdir/hello2.rc +87 -0
  995. data/vendor/gyp/test/win/rc-build/subdir/include.h +1 -0
  996. data/vendor/gyp/test/win/rc-build/targetver.h +24 -0
  997. data/vendor/gyp/test/win/uldi/a.cc +7 -0
  998. data/vendor/gyp/test/win/uldi/b.cc +7 -0
  999. data/vendor/gyp/test/win/uldi/main.cc +10 -0
  1000. data/vendor/gyp/test/win/uldi/uldi.gyp +45 -0
  1001. data/vendor/gyp/test/win/vs-macros/as.py +18 -0
  1002. data/vendor/gyp/test/win/vs-macros/containing-gyp.gyp +40 -0
  1003. data/vendor/gyp/test/win/vs-macros/do_stuff.py +8 -0
  1004. data/vendor/gyp/test/win/vs-macros/hello.cc +7 -0
  1005. data/vendor/gyp/test/win/vs-macros/input-output-macros.gyp +33 -0
  1006. data/vendor/gyp/test/win/vs-macros/input.S +0 -0
  1007. data/vendor/gyp/test/win/vs-macros/projectname.gyp +29 -0
  1008. data/vendor/gyp/test/win/vs-macros/stuff.blah +1 -0
  1009. data/vendor/gyp/test/win/vs-macros/test_exists.py +10 -0
  1010. data/vendor/gyp/test/win/vs-macros/vcinstalldir.gyp +41 -0
  1011. data/vendor/gyp/tools/README +15 -0
  1012. data/vendor/gyp/tools/Xcode/README +5 -0
  1013. data/vendor/gyp/tools/Xcode/Specifications/gyp.pbfilespec +27 -0
  1014. data/vendor/gyp/tools/Xcode/Specifications/gyp.xclangspec +226 -0
  1015. data/vendor/gyp/tools/emacs/README +12 -0
  1016. data/vendor/gyp/tools/emacs/gyp-tests.el +54 -0
  1017. data/vendor/gyp/tools/emacs/gyp.el +251 -0
  1018. data/vendor/gyp/tools/emacs/run-unit-tests.sh +7 -0
  1019. data/vendor/gyp/tools/emacs/testdata/media.gyp +1105 -0
  1020. data/vendor/gyp/tools/emacs/testdata/media.gyp.fontified +1107 -0
  1021. data/vendor/gyp/tools/graphviz.py +100 -0
  1022. data/vendor/gyp/tools/pretty_gyp.py +155 -0
  1023. data/vendor/gyp/tools/pretty_sln.py +168 -0
  1024. data/vendor/gyp/tools/pretty_vcproj.py +329 -0
  1025. metadata +1015 -1007
@@ -0,0 +1,341 @@
1
+ # Copyright (c) 2012 Google Inc. All rights reserved.
2
+ # Use of this source code is governed by a BSD-style license that can be
3
+ # found in the LICENSE file.
4
+
5
+ """New implementation of Visual Studio project generation for SCons."""
6
+
7
+ import os
8
+ import random
9
+
10
+ import gyp.common
11
+
12
+ # hashlib is supplied as of Python 2.5 as the replacement interface for md5
13
+ # and other secure hashes. In 2.6, md5 is deprecated. Import hashlib if
14
+ # available, avoiding a deprecation warning under 2.6. Import md5 otherwise,
15
+ # preserving 2.4 compatibility.
16
+ try:
17
+ import hashlib
18
+ _new_md5 = hashlib.md5
19
+ except ImportError:
20
+ import md5
21
+ _new_md5 = md5.new
22
+
23
+
24
+ # Initialize random number generator
25
+ random.seed()
26
+
27
+ # GUIDs for project types
28
+ ENTRY_TYPE_GUIDS = {
29
+ 'project': '{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}',
30
+ 'folder': '{2150E333-8FDC-42A3-9474-1A3956D46DE8}',
31
+ }
32
+
33
+ #------------------------------------------------------------------------------
34
+ # Helper functions
35
+
36
+
37
+ def MakeGuid(name, seed='msvs_new'):
38
+ """Returns a GUID for the specified target name.
39
+
40
+ Args:
41
+ name: Target name.
42
+ seed: Seed for MD5 hash.
43
+ Returns:
44
+ A GUID-line string calculated from the name and seed.
45
+
46
+ This generates something which looks like a GUID, but depends only on the
47
+ name and seed. This means the same name/seed will always generate the same
48
+ GUID, so that projects and solutions which refer to each other can explicitly
49
+ determine the GUID to refer to explicitly. It also means that the GUID will
50
+ not change when the project for a target is rebuilt.
51
+ """
52
+ # Calculate a MD5 signature for the seed and name.
53
+ d = _new_md5(str(seed) + str(name)).hexdigest().upper()
54
+ # Convert most of the signature to GUID form (discard the rest)
55
+ guid = ('{' + d[:8] + '-' + d[8:12] + '-' + d[12:16] + '-' + d[16:20]
56
+ + '-' + d[20:32] + '}')
57
+ return guid
58
+
59
+ #------------------------------------------------------------------------------
60
+
61
+
62
+ class MSVSFolder(object):
63
+ """Folder in a Visual Studio project or solution."""
64
+
65
+ def __init__(self, path, name = None, entries = None,
66
+ guid = None, items = None):
67
+ """Initializes the folder.
68
+
69
+ Args:
70
+ path: Full path to the folder.
71
+ name: Name of the folder.
72
+ entries: List of folder entries to nest inside this folder. May contain
73
+ Folder or Project objects. May be None, if the folder is empty.
74
+ guid: GUID to use for folder, if not None.
75
+ items: List of solution items to include in the folder project. May be
76
+ None, if the folder does not directly contain items.
77
+ """
78
+ if name:
79
+ self.name = name
80
+ else:
81
+ # Use last layer.
82
+ self.name = os.path.basename(path)
83
+
84
+ self.path = path
85
+ self.guid = guid
86
+
87
+ # Copy passed lists (or set to empty lists)
88
+ self.entries = list(entries or [])
89
+ self.items = list(items or [])
90
+
91
+ self.entry_type_guid = ENTRY_TYPE_GUIDS['folder']
92
+
93
+ def get_guid(self):
94
+ if self.guid is None:
95
+ # Use consistent guids for folders (so things don't regenerate).
96
+ self.guid = MakeGuid(self.path, seed='msvs_folder')
97
+ return self.guid
98
+
99
+
100
+ #------------------------------------------------------------------------------
101
+
102
+
103
+ class MSVSProject(object):
104
+ """Visual Studio project."""
105
+
106
+ def __init__(self, path, name = None, dependencies = None, guid = None,
107
+ spec = None, build_file = None, config_platform_overrides = None,
108
+ fixpath_prefix = None):
109
+ """Initializes the project.
110
+
111
+ Args:
112
+ path: Absolute path to the project file.
113
+ name: Name of project. If None, the name will be the same as the base
114
+ name of the project file.
115
+ dependencies: List of other Project objects this project is dependent
116
+ upon, if not None.
117
+ guid: GUID to use for project, if not None.
118
+ spec: Dictionary specifying how to build this project.
119
+ build_file: Filename of the .gyp file that the vcproj file comes from.
120
+ config_platform_overrides: optional dict of configuration platforms to
121
+ used in place of the default for this target.
122
+ fixpath_prefix: the path used to adjust the behavior of _fixpath
123
+ """
124
+ self.path = path
125
+ self.guid = guid
126
+ self.spec = spec
127
+ self.build_file = build_file
128
+ # Use project filename if name not specified
129
+ self.name = name or os.path.splitext(os.path.basename(path))[0]
130
+
131
+ # Copy passed lists (or set to empty lists)
132
+ self.dependencies = list(dependencies or [])
133
+
134
+ self.entry_type_guid = ENTRY_TYPE_GUIDS['project']
135
+
136
+ if config_platform_overrides:
137
+ self.config_platform_overrides = config_platform_overrides
138
+ else:
139
+ self.config_platform_overrides = {}
140
+ self.fixpath_prefix = fixpath_prefix
141
+ self.msbuild_toolset = None
142
+
143
+ def set_dependencies(self, dependencies):
144
+ self.dependencies = list(dependencies or [])
145
+
146
+ def get_guid(self):
147
+ if self.guid is None:
148
+ # Set GUID from path
149
+ # TODO(rspangler): This is fragile.
150
+ # 1. We can't just use the project filename sans path, since there could
151
+ # be multiple projects with the same base name (for example,
152
+ # foo/unittest.vcproj and bar/unittest.vcproj).
153
+ # 2. The path needs to be relative to $SOURCE_ROOT, so that the project
154
+ # GUID is the same whether it's included from base/base.sln or
155
+ # foo/bar/baz/baz.sln.
156
+ # 3. The GUID needs to be the same each time this builder is invoked, so
157
+ # that we don't need to rebuild the solution when the project changes.
158
+ # 4. We should be able to handle pre-built project files by reading the
159
+ # GUID from the files.
160
+ self.guid = MakeGuid(self.name)
161
+ return self.guid
162
+
163
+ def set_msbuild_toolset(self, msbuild_toolset):
164
+ self.msbuild_toolset = msbuild_toolset
165
+
166
+ #------------------------------------------------------------------------------
167
+
168
+
169
+ class MSVSSolution:
170
+ """Visual Studio solution."""
171
+
172
+ def __init__(self, path, version, entries=None, variants=None,
173
+ websiteProperties=True):
174
+ """Initializes the solution.
175
+
176
+ Args:
177
+ path: Path to solution file.
178
+ version: Format version to emit.
179
+ entries: List of entries in solution. May contain Folder or Project
180
+ objects. May be None, if the folder is empty.
181
+ variants: List of build variant strings. If none, a default list will
182
+ be used.
183
+ websiteProperties: Flag to decide if the website properties section
184
+ is generated.
185
+ """
186
+ self.path = path
187
+ self.websiteProperties = websiteProperties
188
+ self.version = version
189
+
190
+ # Copy passed lists (or set to empty lists)
191
+ self.entries = list(entries or [])
192
+
193
+ if variants:
194
+ # Copy passed list
195
+ self.variants = variants[:]
196
+ else:
197
+ # Use default
198
+ self.variants = ['Debug|Win32', 'Release|Win32']
199
+ # TODO(rspangler): Need to be able to handle a mapping of solution config
200
+ # to project config. Should we be able to handle variants being a dict,
201
+ # or add a separate variant_map variable? If it's a dict, we can't
202
+ # guarantee the order of variants since dict keys aren't ordered.
203
+
204
+
205
+ # TODO(rspangler): Automatically write to disk for now; should delay until
206
+ # node-evaluation time.
207
+ self.Write()
208
+
209
+
210
+ def Write(self, writer=gyp.common.WriteOnDiff):
211
+ """Writes the solution file to disk.
212
+
213
+ Raises:
214
+ IndexError: An entry appears multiple times.
215
+ """
216
+ # Walk the entry tree and collect all the folders and projects.
217
+ all_entries = set()
218
+ entries_to_check = self.entries[:]
219
+ while entries_to_check:
220
+ e = entries_to_check.pop(0)
221
+
222
+ # If this entry has been visited, nothing to do.
223
+ if e in all_entries:
224
+ continue
225
+
226
+ all_entries.add(e)
227
+
228
+ # If this is a folder, check its entries too.
229
+ if isinstance(e, MSVSFolder):
230
+ entries_to_check += e.entries
231
+
232
+ # Sort by name then guid (so things are in order on vs2008).
233
+ def NameThenGuid(a, b):
234
+ if a.name < b.name: return -1
235
+ if a.name > b.name: return 1
236
+ if a.get_guid() < b.get_guid(): return -1
237
+ if a.get_guid() > b.get_guid(): return 1
238
+ return 0
239
+
240
+ all_entries = sorted(all_entries, NameThenGuid)
241
+
242
+ # Open file and print header
243
+ f = writer(self.path)
244
+ f.write('Microsoft Visual Studio Solution File, '
245
+ 'Format Version %s\r\n' % self.version.SolutionVersion())
246
+ f.write('# %s\r\n' % self.version.Description())
247
+
248
+ # Project entries
249
+ sln_root = os.path.split(self.path)[0]
250
+ for e in all_entries:
251
+ relative_path = gyp.common.RelativePath(e.path, sln_root)
252
+ # msbuild does not accept an empty folder_name.
253
+ # use '.' in case relative_path is empty.
254
+ folder_name = relative_path.replace('/', '\\') or '.'
255
+ f.write('Project("%s") = "%s", "%s", "%s"\r\n' % (
256
+ e.entry_type_guid, # Entry type GUID
257
+ e.name, # Folder name
258
+ folder_name, # Folder name (again)
259
+ e.get_guid(), # Entry GUID
260
+ ))
261
+
262
+ # TODO(rspangler): Need a way to configure this stuff
263
+ if self.websiteProperties:
264
+ f.write('\tProjectSection(WebsiteProperties) = preProject\r\n'
265
+ '\t\tDebug.AspNetCompiler.Debug = "True"\r\n'
266
+ '\t\tRelease.AspNetCompiler.Debug = "False"\r\n'
267
+ '\tEndProjectSection\r\n')
268
+
269
+ if isinstance(e, MSVSFolder):
270
+ if e.items:
271
+ f.write('\tProjectSection(SolutionItems) = preProject\r\n')
272
+ for i in e.items:
273
+ f.write('\t\t%s = %s\r\n' % (i, i))
274
+ f.write('\tEndProjectSection\r\n')
275
+
276
+ if isinstance(e, MSVSProject):
277
+ if e.dependencies:
278
+ f.write('\tProjectSection(ProjectDependencies) = postProject\r\n')
279
+ for d in e.dependencies:
280
+ f.write('\t\t%s = %s\r\n' % (d.get_guid(), d.get_guid()))
281
+ f.write('\tEndProjectSection\r\n')
282
+
283
+ f.write('EndProject\r\n')
284
+
285
+ # Global section
286
+ f.write('Global\r\n')
287
+
288
+ # Configurations (variants)
289
+ f.write('\tGlobalSection(SolutionConfigurationPlatforms) = preSolution\r\n')
290
+ for v in self.variants:
291
+ f.write('\t\t%s = %s\r\n' % (v, v))
292
+ f.write('\tEndGlobalSection\r\n')
293
+
294
+ # Sort config guids for easier diffing of solution changes.
295
+ config_guids = []
296
+ config_guids_overrides = {}
297
+ for e in all_entries:
298
+ if isinstance(e, MSVSProject):
299
+ config_guids.append(e.get_guid())
300
+ config_guids_overrides[e.get_guid()] = e.config_platform_overrides
301
+ config_guids.sort()
302
+
303
+ f.write('\tGlobalSection(ProjectConfigurationPlatforms) = postSolution\r\n')
304
+ for g in config_guids:
305
+ for v in self.variants:
306
+ nv = config_guids_overrides[g].get(v, v)
307
+ # Pick which project configuration to build for this solution
308
+ # configuration.
309
+ f.write('\t\t%s.%s.ActiveCfg = %s\r\n' % (
310
+ g, # Project GUID
311
+ v, # Solution build configuration
312
+ nv, # Project build config for that solution config
313
+ ))
314
+
315
+ # Enable project in this solution configuration.
316
+ f.write('\t\t%s.%s.Build.0 = %s\r\n' % (
317
+ g, # Project GUID
318
+ v, # Solution build configuration
319
+ nv, # Project build config for that solution config
320
+ ))
321
+ f.write('\tEndGlobalSection\r\n')
322
+
323
+ # TODO(rspangler): Should be able to configure this stuff too (though I've
324
+ # never seen this be any different)
325
+ f.write('\tGlobalSection(SolutionProperties) = preSolution\r\n')
326
+ f.write('\t\tHideSolutionNode = FALSE\r\n')
327
+ f.write('\tEndGlobalSection\r\n')
328
+
329
+ # Folder mappings
330
+ # TODO(rspangler): Should omit this section if there are no folders
331
+ f.write('\tGlobalSection(NestedProjects) = preSolution\r\n')
332
+ for e in all_entries:
333
+ if not isinstance(e, MSVSFolder):
334
+ continue # Does not apply to projects, only folders
335
+ for subentry in e.entries:
336
+ f.write('\t\t%s = %s\r\n' % (subentry.get_guid(), e.get_guid()))
337
+ f.write('\tEndGlobalSection\r\n')
338
+
339
+ f.write('EndGlobal\r\n')
340
+
341
+ f.close()
@@ -0,0 +1,208 @@
1
+ # Copyright (c) 2012 Google Inc. All rights reserved.
2
+ # Use of this source code is governed by a BSD-style license that can be
3
+ # found in the LICENSE file.
4
+
5
+ """Visual Studio project reader/writer."""
6
+
7
+ import gyp.common
8
+ import gyp.easy_xml as easy_xml
9
+
10
+ #------------------------------------------------------------------------------
11
+
12
+
13
+ class Tool(object):
14
+ """Visual Studio tool."""
15
+
16
+ def __init__(self, name, attrs=None):
17
+ """Initializes the tool.
18
+
19
+ Args:
20
+ name: Tool name.
21
+ attrs: Dict of tool attributes; may be None.
22
+ """
23
+ self._attrs = attrs or {}
24
+ self._attrs['Name'] = name
25
+
26
+ def _GetSpecification(self):
27
+ """Creates an element for the tool.
28
+
29
+ Returns:
30
+ A new xml.dom.Element for the tool.
31
+ """
32
+ return ['Tool', self._attrs]
33
+
34
+ class Filter(object):
35
+ """Visual Studio filter - that is, a virtual folder."""
36
+
37
+ def __init__(self, name, contents=None):
38
+ """Initializes the folder.
39
+
40
+ Args:
41
+ name: Filter (folder) name.
42
+ contents: List of filenames and/or Filter objects contained.
43
+ """
44
+ self.name = name
45
+ self.contents = list(contents or [])
46
+
47
+
48
+ #------------------------------------------------------------------------------
49
+
50
+
51
+ class Writer(object):
52
+ """Visual Studio XML project writer."""
53
+
54
+ def __init__(self, project_path, version, name, guid=None, platforms=None):
55
+ """Initializes the project.
56
+
57
+ Args:
58
+ project_path: Path to the project file.
59
+ version: Format version to emit.
60
+ name: Name of the project.
61
+ guid: GUID to use for project, if not None.
62
+ platforms: Array of string, the supported platforms. If null, ['Win32']
63
+ """
64
+ self.project_path = project_path
65
+ self.version = version
66
+ self.name = name
67
+ self.guid = guid
68
+
69
+ # Default to Win32 for platforms.
70
+ if not platforms:
71
+ platforms = ['Win32']
72
+
73
+ # Initialize the specifications of the various sections.
74
+ self.platform_section = ['Platforms']
75
+ for platform in platforms:
76
+ self.platform_section.append(['Platform', {'Name': platform}])
77
+ self.tool_files_section = ['ToolFiles']
78
+ self.configurations_section = ['Configurations']
79
+ self.files_section = ['Files']
80
+
81
+ # Keep a dict keyed on filename to speed up access.
82
+ self.files_dict = dict()
83
+
84
+ def AddToolFile(self, path):
85
+ """Adds a tool file to the project.
86
+
87
+ Args:
88
+ path: Relative path from project to tool file.
89
+ """
90
+ self.tool_files_section.append(['ToolFile', {'RelativePath': path}])
91
+
92
+ def _GetSpecForConfiguration(self, config_type, config_name, attrs, tools):
93
+ """Returns the specification for a configuration.
94
+
95
+ Args:
96
+ config_type: Type of configuration node.
97
+ config_name: Configuration name.
98
+ attrs: Dict of configuration attributes; may be None.
99
+ tools: List of tools (strings or Tool objects); may be None.
100
+ Returns:
101
+ """
102
+ # Handle defaults
103
+ if not attrs:
104
+ attrs = {}
105
+ if not tools:
106
+ tools = []
107
+
108
+ # Add configuration node and its attributes
109
+ node_attrs = attrs.copy()
110
+ node_attrs['Name'] = config_name
111
+ specification = [config_type, node_attrs]
112
+
113
+ # Add tool nodes and their attributes
114
+ if tools:
115
+ for t in tools:
116
+ if isinstance(t, Tool):
117
+ specification.append(t._GetSpecification())
118
+ else:
119
+ specification.append(Tool(t)._GetSpecification())
120
+ return specification
121
+
122
+
123
+ def AddConfig(self, name, attrs=None, tools=None):
124
+ """Adds a configuration to the project.
125
+
126
+ Args:
127
+ name: Configuration name.
128
+ attrs: Dict of configuration attributes; may be None.
129
+ tools: List of tools (strings or Tool objects); may be None.
130
+ """
131
+ spec = self._GetSpecForConfiguration('Configuration', name, attrs, tools)
132
+ self.configurations_section.append(spec)
133
+
134
+ def _AddFilesToNode(self, parent, files):
135
+ """Adds files and/or filters to the parent node.
136
+
137
+ Args:
138
+ parent: Destination node
139
+ files: A list of Filter objects and/or relative paths to files.
140
+
141
+ Will call itself recursively, if the files list contains Filter objects.
142
+ """
143
+ for f in files:
144
+ if isinstance(f, Filter):
145
+ node = ['Filter', {'Name': f.name}]
146
+ self._AddFilesToNode(node, f.contents)
147
+ else:
148
+ node = ['File', {'RelativePath': f}]
149
+ self.files_dict[f] = node
150
+ parent.append(node)
151
+
152
+ def AddFiles(self, files):
153
+ """Adds files to the project.
154
+
155
+ Args:
156
+ files: A list of Filter objects and/or relative paths to files.
157
+
158
+ This makes a copy of the file/filter tree at the time of this call. If you
159
+ later add files to a Filter object which was passed into a previous call
160
+ to AddFiles(), it will not be reflected in this project.
161
+ """
162
+ self._AddFilesToNode(self.files_section, files)
163
+ # TODO(rspangler) This also doesn't handle adding files to an existing
164
+ # filter. That is, it doesn't merge the trees.
165
+
166
+ def AddFileConfig(self, path, config, attrs=None, tools=None):
167
+ """Adds a configuration to a file.
168
+
169
+ Args:
170
+ path: Relative path to the file.
171
+ config: Name of configuration to add.
172
+ attrs: Dict of configuration attributes; may be None.
173
+ tools: List of tools (strings or Tool objects); may be None.
174
+
175
+ Raises:
176
+ ValueError: Relative path does not match any file added via AddFiles().
177
+ """
178
+ # Find the file node with the right relative path
179
+ parent = self.files_dict.get(path)
180
+ if not parent:
181
+ raise ValueError('AddFileConfig: file "%s" not in project.' % path)
182
+
183
+ # Add the config to the file node
184
+ spec = self._GetSpecForConfiguration('FileConfiguration', config, attrs,
185
+ tools)
186
+ parent.append(spec)
187
+
188
+ def WriteIfChanged(self):
189
+ """Writes the project file."""
190
+ # First create XML content definition
191
+ content = [
192
+ 'VisualStudioProject',
193
+ {'ProjectType': 'Visual C++',
194
+ 'Version': self.version.ProjectVersion(),
195
+ 'Name': self.name,
196
+ 'ProjectGUID': self.guid,
197
+ 'RootNamespace': self.name,
198
+ 'Keyword': 'Win32Proj'
199
+ },
200
+ self.platform_section,
201
+ self.tool_files_section,
202
+ self.configurations_section,
203
+ ['References'], # empty section
204
+ self.files_section,
205
+ ['Globals'] # empty section
206
+ ]
207
+ easy_xml.WriteXmlIfChanged(content, self.project_path,
208
+ encoding="Windows-1252")