@pnpm/exe 11.9.0 → 12.0.0-alpha.0

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 (445) hide show
  1. package/{dist/node_modules/v8-compile-cache/LICENSE → LICENSE} +2 -1
  2. package/README.md +259 -12
  3. package/install.js +175 -0
  4. package/package.json +30 -59
  5. package/pnpm +4 -1
  6. package/dist/node-gyp-bin/node-gyp +0 -6
  7. package/dist/node-gyp-bin/node-gyp.cmd +0 -5
  8. package/dist/node_modules/.package-map.json +0 -1
  9. package/dist/node_modules/@isaacs/fs-minipass/LICENSE +0 -15
  10. package/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +0 -430
  11. package/dist/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +0 -3
  12. package/dist/node_modules/@isaacs/fs-minipass/dist/esm/index.js +0 -420
  13. package/dist/node_modules/@isaacs/fs-minipass/dist/esm/package.json +0 -3
  14. package/dist/node_modules/@isaacs/fs-minipass/package.json +0 -72
  15. package/dist/node_modules/abbrev/LICENSE +0 -46
  16. package/dist/node_modules/abbrev/lib/index.js +0 -53
  17. package/dist/node_modules/abbrev/package.json +0 -41
  18. package/dist/node_modules/chownr/dist/commonjs/index.js +0 -93
  19. package/dist/node_modules/chownr/dist/commonjs/package.json +0 -3
  20. package/dist/node_modules/chownr/dist/esm/index.js +0 -85
  21. package/dist/node_modules/chownr/dist/esm/package.json +0 -3
  22. package/dist/node_modules/chownr/package.json +0 -69
  23. package/dist/node_modules/env-paths/index.js +0 -74
  24. package/dist/node_modules/env-paths/license +0 -9
  25. package/dist/node_modules/env-paths/package.json +0 -45
  26. package/dist/node_modules/exponential-backoff/LICENSE +0 -202
  27. package/dist/node_modules/exponential-backoff/dist/backoff.js +0 -124
  28. package/dist/node_modules/exponential-backoff/dist/delay/always/always.delay.js +0 -25
  29. package/dist/node_modules/exponential-backoff/dist/delay/delay.base.js +0 -45
  30. package/dist/node_modules/exponential-backoff/dist/delay/delay.factory.js +0 -17
  31. package/dist/node_modules/exponential-backoff/dist/delay/delay.interface.js +0 -3
  32. package/dist/node_modules/exponential-backoff/dist/delay/skip-first/skip-first.delay.js +0 -82
  33. package/dist/node_modules/exponential-backoff/dist/jitter/full/full.jitter.js +0 -8
  34. package/dist/node_modules/exponential-backoff/dist/jitter/jitter.factory.js +0 -15
  35. package/dist/node_modules/exponential-backoff/dist/jitter/no/no.jitter.js +0 -7
  36. package/dist/node_modules/exponential-backoff/dist/options.js +0 -31
  37. package/dist/node_modules/exponential-backoff/package.json +0 -62
  38. package/dist/node_modules/fdir/LICENSE +0 -7
  39. package/dist/node_modules/fdir/dist/index.cjs +0 -588
  40. package/dist/node_modules/fdir/dist/index.d.cts +0 -155
  41. package/dist/node_modules/fdir/dist/index.d.mts +0 -155
  42. package/dist/node_modules/fdir/dist/index.mjs +0 -570
  43. package/dist/node_modules/fdir/package.json +0 -103
  44. package/dist/node_modules/graceful-fs/LICENSE +0 -15
  45. package/dist/node_modules/graceful-fs/clone.js +0 -23
  46. package/dist/node_modules/graceful-fs/graceful-fs.js +0 -448
  47. package/dist/node_modules/graceful-fs/legacy-streams.js +0 -118
  48. package/dist/node_modules/graceful-fs/package.json +0 -53
  49. package/dist/node_modules/graceful-fs/polyfills.js +0 -355
  50. package/dist/node_modules/isexe/dist/commonjs/index.js +0 -56
  51. package/dist/node_modules/isexe/dist/commonjs/index.min.js +0 -2
  52. package/dist/node_modules/isexe/dist/commonjs/options.js +0 -3
  53. package/dist/node_modules/isexe/dist/commonjs/package.json +0 -3
  54. package/dist/node_modules/isexe/dist/commonjs/posix.js +0 -67
  55. package/dist/node_modules/isexe/dist/commonjs/win32.js +0 -63
  56. package/dist/node_modules/isexe/dist/esm/index.js +0 -16
  57. package/dist/node_modules/isexe/dist/esm/index.min.js +0 -2
  58. package/dist/node_modules/isexe/dist/esm/options.js +0 -2
  59. package/dist/node_modules/isexe/dist/esm/package.json +0 -3
  60. package/dist/node_modules/isexe/dist/esm/posix.js +0 -62
  61. package/dist/node_modules/isexe/dist/esm/win32.js +0 -58
  62. package/dist/node_modules/isexe/package.json +0 -78
  63. package/dist/node_modules/minipass/dist/commonjs/index.js +0 -1038
  64. package/dist/node_modules/minipass/dist/commonjs/package.json +0 -3
  65. package/dist/node_modules/minipass/dist/esm/index.js +0 -1020
  66. package/dist/node_modules/minipass/dist/esm/package.json +0 -3
  67. package/dist/node_modules/minipass/package.json +0 -77
  68. package/dist/node_modules/minizlib/LICENSE +0 -26
  69. package/dist/node_modules/minizlib/dist/commonjs/constants.js +0 -123
  70. package/dist/node_modules/minizlib/dist/commonjs/index.js +0 -416
  71. package/dist/node_modules/minizlib/dist/commonjs/package.json +0 -3
  72. package/dist/node_modules/minizlib/dist/esm/constants.js +0 -117
  73. package/dist/node_modules/minizlib/dist/esm/index.js +0 -363
  74. package/dist/node_modules/minizlib/dist/esm/package.json +0 -3
  75. package/dist/node_modules/minizlib/package.json +0 -80
  76. package/dist/node_modules/node-gyp/.release-please-manifest.json +0 -3
  77. package/dist/node_modules/node-gyp/LICENSE +0 -24
  78. package/dist/node_modules/node-gyp/addon.gypi +0 -204
  79. package/dist/node_modules/node-gyp/bin/node-gyp.js +0 -145
  80. package/dist/node_modules/node-gyp/eslint.config.js +0 -3
  81. package/dist/node_modules/node-gyp/gyp/.release-please-manifest.json +0 -3
  82. package/dist/node_modules/node-gyp/gyp/LICENSE +0 -28
  83. package/dist/node_modules/node-gyp/gyp/data/ninja/build.ninja +0 -4
  84. package/dist/node_modules/node-gyp/gyp/data/win/large-pdb-shim.cc +0 -12
  85. package/dist/node_modules/node-gyp/gyp/gyp +0 -8
  86. package/dist/node_modules/node-gyp/gyp/gyp.bat +0 -5
  87. package/dist/node_modules/node-gyp/gyp/gyp_main.py +0 -45
  88. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSNew.py +0 -365
  89. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSProject.py +0 -206
  90. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings.py +0 -1283
  91. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSSettings_test.py +0 -1545
  92. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSToolFile.py +0 -59
  93. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUserFile.py +0 -152
  94. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSUtil.py +0 -270
  95. package/dist/node_modules/node-gyp/gyp/pylib/gyp/MSVSVersion.py +0 -607
  96. package/dist/node_modules/node-gyp/gyp/pylib/gyp/__init__.py +0 -706
  97. package/dist/node_modules/node-gyp/gyp/pylib/gyp/common.py +0 -725
  98. package/dist/node_modules/node-gyp/gyp/pylib/gyp/common_test.py +0 -186
  99. package/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml.py +0 -170
  100. package/dist/node_modules/node-gyp/gyp/pylib/gyp/easy_xml_test.py +0 -113
  101. package/dist/node_modules/node-gyp/gyp/pylib/gyp/flock_tool.py +0 -55
  102. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/__init__.py +0 -0
  103. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/analyzer.py +0 -805
  104. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/android.py +0 -1169
  105. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/cmake.py +0 -1316
  106. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/compile_commands_json.py +0 -128
  107. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/dump_dependency_json.py +0 -104
  108. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/eclipse.py +0 -461
  109. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypd.py +0 -88
  110. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/gypsh.py +0 -55
  111. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/make.py +0 -2755
  112. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs.py +0 -3970
  113. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/msvs_test.py +0 -44
  114. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja.py +0 -2957
  115. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/ninja_test.py +0 -77
  116. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode.py +0 -1389
  117. package/dist/node_modules/node-gyp/gyp/pylib/gyp/generator/xcode_test.py +0 -26
  118. package/dist/node_modules/node-gyp/gyp/pylib/gyp/input.py +0 -3097
  119. package/dist/node_modules/node-gyp/gyp/pylib/gyp/input_test.py +0 -99
  120. package/dist/node_modules/node-gyp/gyp/pylib/gyp/mac_tool.py +0 -765
  121. package/dist/node_modules/node-gyp/gyp/pylib/gyp/msvs_emulation.py +0 -1255
  122. package/dist/node_modules/node-gyp/gyp/pylib/gyp/ninja_syntax.py +0 -174
  123. package/dist/node_modules/node-gyp/gyp/pylib/gyp/simple_copy.py +0 -61
  124. package/dist/node_modules/node-gyp/gyp/pylib/gyp/win_tool.py +0 -371
  125. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation.py +0 -1936
  126. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_emulation_test.py +0 -54
  127. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcode_ninja.py +0 -301
  128. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xcodeproj_file.py +0 -3180
  129. package/dist/node_modules/node-gyp/gyp/pylib/gyp/xml_fix.py +0 -64
  130. package/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE +0 -3
  131. package/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.APACHE +0 -177
  132. package/dist/node_modules/node-gyp/gyp/pylib/packaging/LICENSE.BSD +0 -23
  133. package/dist/node_modules/node-gyp/gyp/pylib/packaging/__init__.py +0 -15
  134. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_elffile.py +0 -107
  135. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_manylinux.py +0 -252
  136. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_musllinux.py +0 -83
  137. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_parser.py +0 -359
  138. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_structures.py +0 -61
  139. package/dist/node_modules/node-gyp/gyp/pylib/packaging/_tokenizer.py +0 -192
  140. package/dist/node_modules/node-gyp/gyp/pylib/packaging/markers.py +0 -251
  141. package/dist/node_modules/node-gyp/gyp/pylib/packaging/metadata.py +0 -807
  142. package/dist/node_modules/node-gyp/gyp/pylib/packaging/py.typed +0 -0
  143. package/dist/node_modules/node-gyp/gyp/pylib/packaging/requirements.py +0 -90
  144. package/dist/node_modules/node-gyp/gyp/pylib/packaging/specifiers.py +0 -1030
  145. package/dist/node_modules/node-gyp/gyp/pylib/packaging/tags.py +0 -541
  146. package/dist/node_modules/node-gyp/gyp/pylib/packaging/utils.py +0 -172
  147. package/dist/node_modules/node-gyp/gyp/pylib/packaging/version.py +0 -563
  148. package/dist/node_modules/node-gyp/gyp/pyproject.toml +0 -116
  149. package/dist/node_modules/node-gyp/gyp/release-please-config.json +0 -11
  150. package/dist/node_modules/node-gyp/gyp/test_gyp.py +0 -260
  151. package/dist/node_modules/node-gyp/lib/Find-VisualStudio.cs +0 -250
  152. package/dist/node_modules/node-gyp/lib/build.js +0 -230
  153. package/dist/node_modules/node-gyp/lib/clean.js +0 -15
  154. package/dist/node_modules/node-gyp/lib/configure.js +0 -328
  155. package/dist/node_modules/node-gyp/lib/create-config-gypi.js +0 -153
  156. package/dist/node_modules/node-gyp/lib/download.js +0 -86
  157. package/dist/node_modules/node-gyp/lib/find-node-directory.js +0 -63
  158. package/dist/node_modules/node-gyp/lib/find-python.js +0 -304
  159. package/dist/node_modules/node-gyp/lib/find-visualstudio.js +0 -606
  160. package/dist/node_modules/node-gyp/lib/install.js +0 -411
  161. package/dist/node_modules/node-gyp/lib/list.js +0 -26
  162. package/dist/node_modules/node-gyp/lib/log.js +0 -168
  163. package/dist/node_modules/node-gyp/lib/node-gyp.js +0 -199
  164. package/dist/node_modules/node-gyp/lib/process-release.js +0 -144
  165. package/dist/node_modules/node-gyp/lib/rebuild.js +0 -12
  166. package/dist/node_modules/node-gyp/lib/remove.js +0 -43
  167. package/dist/node_modules/node-gyp/lib/util.js +0 -81
  168. package/dist/node_modules/node-gyp/macOS_Catalina_acid_test.sh +0 -21
  169. package/dist/node_modules/node-gyp/package.json +0 -52
  170. package/dist/node_modules/node-gyp/release-please-config.json +0 -40
  171. package/dist/node_modules/node-gyp/src/win_delay_load_hook.cc +0 -41
  172. package/dist/node_modules/nopt/LICENSE +0 -15
  173. package/dist/node_modules/nopt/bin/nopt.js +0 -29
  174. package/dist/node_modules/nopt/lib/debug.js +0 -5
  175. package/dist/node_modules/nopt/lib/nopt-lib.js +0 -514
  176. package/dist/node_modules/nopt/lib/nopt.js +0 -34
  177. package/dist/node_modules/nopt/lib/type-defs.js +0 -91
  178. package/dist/node_modules/nopt/package.json +0 -52
  179. package/dist/node_modules/picomatch/LICENSE +0 -21
  180. package/dist/node_modules/picomatch/index.js +0 -17
  181. package/dist/node_modules/picomatch/lib/constants.js +0 -184
  182. package/dist/node_modules/picomatch/lib/parse.js +0 -1386
  183. package/dist/node_modules/picomatch/lib/picomatch.js +0 -349
  184. package/dist/node_modules/picomatch/lib/scan.js +0 -391
  185. package/dist/node_modules/picomatch/lib/utils.js +0 -72
  186. package/dist/node_modules/picomatch/package.json +0 -82
  187. package/dist/node_modules/picomatch/posix.js +0 -3
  188. package/dist/node_modules/proc-log/LICENSE +0 -15
  189. package/dist/node_modules/proc-log/lib/index.js +0 -158
  190. package/dist/node_modules/proc-log/package.json +0 -46
  191. package/dist/node_modules/semver/LICENSE +0 -15
  192. package/dist/node_modules/semver/bin/semver.js +0 -195
  193. package/dist/node_modules/semver/classes/comparator.js +0 -143
  194. package/dist/node_modules/semver/classes/index.js +0 -7
  195. package/dist/node_modules/semver/classes/range.js +0 -577
  196. package/dist/node_modules/semver/classes/semver.js +0 -350
  197. package/dist/node_modules/semver/functions/clean.js +0 -8
  198. package/dist/node_modules/semver/functions/cmp.js +0 -54
  199. package/dist/node_modules/semver/functions/coerce.js +0 -62
  200. package/dist/node_modules/semver/functions/compare-build.js +0 -9
  201. package/dist/node_modules/semver/functions/compare-loose.js +0 -5
  202. package/dist/node_modules/semver/functions/compare.js +0 -7
  203. package/dist/node_modules/semver/functions/diff.js +0 -60
  204. package/dist/node_modules/semver/functions/eq.js +0 -5
  205. package/dist/node_modules/semver/functions/gt.js +0 -5
  206. package/dist/node_modules/semver/functions/gte.js +0 -5
  207. package/dist/node_modules/semver/functions/inc.js +0 -21
  208. package/dist/node_modules/semver/functions/lt.js +0 -5
  209. package/dist/node_modules/semver/functions/lte.js +0 -5
  210. package/dist/node_modules/semver/functions/major.js +0 -5
  211. package/dist/node_modules/semver/functions/minor.js +0 -5
  212. package/dist/node_modules/semver/functions/neq.js +0 -5
  213. package/dist/node_modules/semver/functions/parse.js +0 -18
  214. package/dist/node_modules/semver/functions/patch.js +0 -5
  215. package/dist/node_modules/semver/functions/prerelease.js +0 -8
  216. package/dist/node_modules/semver/functions/rcompare.js +0 -5
  217. package/dist/node_modules/semver/functions/rsort.js +0 -5
  218. package/dist/node_modules/semver/functions/satisfies.js +0 -12
  219. package/dist/node_modules/semver/functions/sort.js +0 -5
  220. package/dist/node_modules/semver/functions/truncate.js +0 -48
  221. package/dist/node_modules/semver/functions/valid.js +0 -8
  222. package/dist/node_modules/semver/index.js +0 -93
  223. package/dist/node_modules/semver/internal/constants.js +0 -37
  224. package/dist/node_modules/semver/internal/debug.js +0 -11
  225. package/dist/node_modules/semver/internal/identifiers.js +0 -29
  226. package/dist/node_modules/semver/internal/lrucache.js +0 -42
  227. package/dist/node_modules/semver/internal/parse-options.js +0 -17
  228. package/dist/node_modules/semver/internal/re.js +0 -223
  229. package/dist/node_modules/semver/package.json +0 -78
  230. package/dist/node_modules/semver/preload.js +0 -4
  231. package/dist/node_modules/semver/range.bnf +0 -17
  232. package/dist/node_modules/semver/ranges/gtr.js +0 -6
  233. package/dist/node_modules/semver/ranges/intersects.js +0 -9
  234. package/dist/node_modules/semver/ranges/ltr.js +0 -6
  235. package/dist/node_modules/semver/ranges/max-satisfying.js +0 -27
  236. package/dist/node_modules/semver/ranges/min-satisfying.js +0 -26
  237. package/dist/node_modules/semver/ranges/min-version.js +0 -63
  238. package/dist/node_modules/semver/ranges/outside.js +0 -82
  239. package/dist/node_modules/semver/ranges/simplify.js +0 -49
  240. package/dist/node_modules/semver/ranges/subset.js +0 -249
  241. package/dist/node_modules/semver/ranges/to-comparators.js +0 -10
  242. package/dist/node_modules/semver/ranges/valid.js +0 -13
  243. package/dist/node_modules/tar/dist/commonjs/create.js +0 -82
  244. package/dist/node_modules/tar/dist/commonjs/cwd-error.js +0 -18
  245. package/dist/node_modules/tar/dist/commonjs/extract.js +0 -88
  246. package/dist/node_modules/tar/dist/commonjs/get-write-flag.js +0 -32
  247. package/dist/node_modules/tar/dist/commonjs/header.js +0 -347
  248. package/dist/node_modules/tar/dist/commonjs/index.js +0 -64
  249. package/dist/node_modules/tar/dist/commonjs/index.min.js +0 -4
  250. package/dist/node_modules/tar/dist/commonjs/large-numbers.js +0 -99
  251. package/dist/node_modules/tar/dist/commonjs/list.js +0 -145
  252. package/dist/node_modules/tar/dist/commonjs/make-command.js +0 -52
  253. package/dist/node_modules/tar/dist/commonjs/mkdir.js +0 -187
  254. package/dist/node_modules/tar/dist/commonjs/mode-fix.js +0 -29
  255. package/dist/node_modules/tar/dist/commonjs/normalize-unicode.js +0 -38
  256. package/dist/node_modules/tar/dist/commonjs/normalize-windows-path.js +0 -12
  257. package/dist/node_modules/tar/dist/commonjs/options.js +0 -66
  258. package/dist/node_modules/tar/dist/commonjs/pack.js +0 -544
  259. package/dist/node_modules/tar/dist/commonjs/package.json +0 -3
  260. package/dist/node_modules/tar/dist/commonjs/parse.js +0 -610
  261. package/dist/node_modules/tar/dist/commonjs/path-reservations.js +0 -170
  262. package/dist/node_modules/tar/dist/commonjs/pax.js +0 -158
  263. package/dist/node_modules/tar/dist/commonjs/process-umask.js +0 -7
  264. package/dist/node_modules/tar/dist/commonjs/read-entry.js +0 -136
  265. package/dist/node_modules/tar/dist/commonjs/replace.js +0 -227
  266. package/dist/node_modules/tar/dist/commonjs/strip-absolute-path.js +0 -29
  267. package/dist/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +0 -18
  268. package/dist/node_modules/tar/dist/commonjs/symlink-error.js +0 -19
  269. package/dist/node_modules/tar/dist/commonjs/types.js +0 -70
  270. package/dist/node_modules/tar/dist/commonjs/unpack.js +0 -932
  271. package/dist/node_modules/tar/dist/commonjs/update.js +0 -33
  272. package/dist/node_modules/tar/dist/commonjs/warn-method.js +0 -31
  273. package/dist/node_modules/tar/dist/commonjs/winchars.js +0 -14
  274. package/dist/node_modules/tar/dist/commonjs/write-entry.js +0 -698
  275. package/dist/node_modules/tar/dist/esm/create.js +0 -76
  276. package/dist/node_modules/tar/dist/esm/cwd-error.js +0 -14
  277. package/dist/node_modules/tar/dist/esm/extract.js +0 -49
  278. package/dist/node_modules/tar/dist/esm/get-write-flag.js +0 -26
  279. package/dist/node_modules/tar/dist/esm/header.js +0 -310
  280. package/dist/node_modules/tar/dist/esm/index.js +0 -20
  281. package/dist/node_modules/tar/dist/esm/index.min.js +0 -4
  282. package/dist/node_modules/tar/dist/esm/large-numbers.js +0 -94
  283. package/dist/node_modules/tar/dist/esm/list.js +0 -105
  284. package/dist/node_modules/tar/dist/esm/make-command.js +0 -48
  285. package/dist/node_modules/tar/dist/esm/mkdir.js +0 -179
  286. package/dist/node_modules/tar/dist/esm/mode-fix.js +0 -25
  287. package/dist/node_modules/tar/dist/esm/normalize-unicode.js +0 -34
  288. package/dist/node_modules/tar/dist/esm/normalize-windows-path.js +0 -9
  289. package/dist/node_modules/tar/dist/esm/options.js +0 -54
  290. package/dist/node_modules/tar/dist/esm/pack.js +0 -502
  291. package/dist/node_modules/tar/dist/esm/package.json +0 -3
  292. package/dist/node_modules/tar/dist/esm/parse.js +0 -606
  293. package/dist/node_modules/tar/dist/esm/path-reservations.js +0 -166
  294. package/dist/node_modules/tar/dist/esm/pax.js +0 -154
  295. package/dist/node_modules/tar/dist/esm/process-umask.js +0 -3
  296. package/dist/node_modules/tar/dist/esm/read-entry.js +0 -132
  297. package/dist/node_modules/tar/dist/esm/replace.js +0 -221
  298. package/dist/node_modules/tar/dist/esm/strip-absolute-path.js +0 -25
  299. package/dist/node_modules/tar/dist/esm/strip-trailing-slashes.js +0 -14
  300. package/dist/node_modules/tar/dist/esm/symlink-error.js +0 -15
  301. package/dist/node_modules/tar/dist/esm/types.js +0 -65
  302. package/dist/node_modules/tar/dist/esm/unpack.js +0 -891
  303. package/dist/node_modules/tar/dist/esm/update.js +0 -30
  304. package/dist/node_modules/tar/dist/esm/warn-method.js +0 -27
  305. package/dist/node_modules/tar/dist/esm/winchars.js +0 -9
  306. package/dist/node_modules/tar/dist/esm/write-entry.js +0 -656
  307. package/dist/node_modules/tar/package.json +0 -298
  308. package/dist/node_modules/tinyglobby/LICENSE +0 -21
  309. package/dist/node_modules/tinyglobby/dist/index.cjs +0 -335
  310. package/dist/node_modules/tinyglobby/dist/index.d.cts +0 -148
  311. package/dist/node_modules/tinyglobby/dist/index.d.mts +0 -148
  312. package/dist/node_modules/tinyglobby/dist/index.mjs +0 -307
  313. package/dist/node_modules/tinyglobby/package.json +0 -70
  314. package/dist/node_modules/undici/LICENSE +0 -21
  315. package/dist/node_modules/undici/index-fetch.js +0 -35
  316. package/dist/node_modules/undici/index.js +0 -169
  317. package/dist/node_modules/undici/lib/api/abort-signal.js +0 -57
  318. package/dist/node_modules/undici/lib/api/api-connect.js +0 -108
  319. package/dist/node_modules/undici/lib/api/api-pipeline.js +0 -251
  320. package/dist/node_modules/undici/lib/api/api-request.js +0 -214
  321. package/dist/node_modules/undici/lib/api/api-stream.js +0 -220
  322. package/dist/node_modules/undici/lib/api/api-upgrade.js +0 -108
  323. package/dist/node_modules/undici/lib/api/index.js +0 -7
  324. package/dist/node_modules/undici/lib/api/readable.js +0 -385
  325. package/dist/node_modules/undici/lib/api/util.js +0 -93
  326. package/dist/node_modules/undici/lib/core/connect.js +0 -240
  327. package/dist/node_modules/undici/lib/core/constants.js +0 -118
  328. package/dist/node_modules/undici/lib/core/diagnostics.js +0 -202
  329. package/dist/node_modules/undici/lib/core/errors.js +0 -425
  330. package/dist/node_modules/undici/lib/core/request.js +0 -405
  331. package/dist/node_modules/undici/lib/core/symbols.js +0 -67
  332. package/dist/node_modules/undici/lib/core/tree.js +0 -152
  333. package/dist/node_modules/undici/lib/core/util.js +0 -719
  334. package/dist/node_modules/undici/lib/dispatcher/agent.js +0 -129
  335. package/dist/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -209
  336. package/dist/node_modules/undici/lib/dispatcher/client-h1.js +0 -1487
  337. package/dist/node_modules/undici/lib/dispatcher/client-h2.js +0 -744
  338. package/dist/node_modules/undici/lib/dispatcher/client.js +0 -623
  339. package/dist/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -199
  340. package/dist/node_modules/undici/lib/dispatcher/dispatcher.js +0 -65
  341. package/dist/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -160
  342. package/dist/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -117
  343. package/dist/node_modules/undici/lib/dispatcher/pool-base.js +0 -194
  344. package/dist/node_modules/undici/lib/dispatcher/pool-stats.js +0 -34
  345. package/dist/node_modules/undici/lib/dispatcher/pool.js +0 -107
  346. package/dist/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -274
  347. package/dist/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  348. package/dist/node_modules/undici/lib/global.js +0 -32
  349. package/dist/node_modules/undici/lib/handler/decorator-handler.js +0 -44
  350. package/dist/node_modules/undici/lib/handler/redirect-handler.js +0 -232
  351. package/dist/node_modules/undici/lib/handler/retry-handler.js +0 -374
  352. package/dist/node_modules/undici/lib/interceptor/dns.js +0 -375
  353. package/dist/node_modules/undici/lib/interceptor/dump.js +0 -123
  354. package/dist/node_modules/undici/lib/interceptor/redirect-interceptor.js +0 -21
  355. package/dist/node_modules/undici/lib/interceptor/redirect.js +0 -24
  356. package/dist/node_modules/undici/lib/interceptor/response-error.js +0 -86
  357. package/dist/node_modules/undici/lib/interceptor/retry.js +0 -19
  358. package/dist/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  359. package/dist/node_modules/undici/lib/llhttp/constants.js +0 -278
  360. package/dist/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -5
  361. package/dist/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -5
  362. package/dist/node_modules/undici/lib/llhttp/utils.js +0 -15
  363. package/dist/node_modules/undici/lib/mock/mock-agent.js +0 -160
  364. package/dist/node_modules/undici/lib/mock/mock-client.js +0 -59
  365. package/dist/node_modules/undici/lib/mock/mock-errors.js +0 -28
  366. package/dist/node_modules/undici/lib/mock/mock-interceptor.js +0 -207
  367. package/dist/node_modules/undici/lib/mock/mock-pool.js +0 -59
  368. package/dist/node_modules/undici/lib/mock/mock-symbols.js +0 -23
  369. package/dist/node_modules/undici/lib/mock/mock-utils.js +0 -367
  370. package/dist/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  371. package/dist/node_modules/undici/lib/mock/pluralizer.js +0 -29
  372. package/dist/node_modules/undici/lib/util/timers.js +0 -423
  373. package/dist/node_modules/undici/lib/web/cache/cache.js +0 -859
  374. package/dist/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  375. package/dist/node_modules/undici/lib/web/cache/symbols.js +0 -5
  376. package/dist/node_modules/undici/lib/web/cache/util.js +0 -45
  377. package/dist/node_modules/undici/lib/web/cookies/constants.js +0 -12
  378. package/dist/node_modules/undici/lib/web/cookies/index.js +0 -184
  379. package/dist/node_modules/undici/lib/web/cookies/parse.js +0 -310
  380. package/dist/node_modules/undici/lib/web/cookies/util.js +0 -282
  381. package/dist/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -398
  382. package/dist/node_modules/undici/lib/web/eventsource/eventsource.js +0 -480
  383. package/dist/node_modules/undici/lib/web/eventsource/util.js +0 -37
  384. package/dist/node_modules/undici/lib/web/fetch/LICENSE +0 -21
  385. package/dist/node_modules/undici/lib/web/fetch/body.js +0 -529
  386. package/dist/node_modules/undici/lib/web/fetch/constants.js +0 -124
  387. package/dist/node_modules/undici/lib/web/fetch/data-url.js +0 -744
  388. package/dist/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +0 -46
  389. package/dist/node_modules/undici/lib/web/fetch/file.js +0 -126
  390. package/dist/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -474
  391. package/dist/node_modules/undici/lib/web/fetch/formdata.js +0 -252
  392. package/dist/node_modules/undici/lib/web/fetch/global.js +0 -40
  393. package/dist/node_modules/undici/lib/web/fetch/headers.js +0 -687
  394. package/dist/node_modules/undici/lib/web/fetch/index.js +0 -2272
  395. package/dist/node_modules/undici/lib/web/fetch/request.js +0 -1037
  396. package/dist/node_modules/undici/lib/web/fetch/response.js +0 -610
  397. package/dist/node_modules/undici/lib/web/fetch/symbols.js +0 -9
  398. package/dist/node_modules/undici/lib/web/fetch/util.js +0 -1632
  399. package/dist/node_modules/undici/lib/web/fetch/webidl.js +0 -695
  400. package/dist/node_modules/undici/lib/web/fileapi/encoding.js +0 -290
  401. package/dist/node_modules/undici/lib/web/fileapi/filereader.js +0 -344
  402. package/dist/node_modules/undici/lib/web/fileapi/progressevent.js +0 -78
  403. package/dist/node_modules/undici/lib/web/fileapi/symbols.js +0 -10
  404. package/dist/node_modules/undici/lib/web/fileapi/util.js +0 -391
  405. package/dist/node_modules/undici/lib/web/websocket/connection.js +0 -371
  406. package/dist/node_modules/undici/lib/web/websocket/constants.js +0 -66
  407. package/dist/node_modules/undici/lib/web/websocket/events.js +0 -329
  408. package/dist/node_modules/undici/lib/web/websocket/frame.js +0 -96
  409. package/dist/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -100
  410. package/dist/node_modules/undici/lib/web/websocket/receiver.js +0 -513
  411. package/dist/node_modules/undici/lib/web/websocket/sender.js +0 -104
  412. package/dist/node_modules/undici/lib/web/websocket/symbols.js +0 -12
  413. package/dist/node_modules/undici/lib/web/websocket/util.js +0 -322
  414. package/dist/node_modules/undici/lib/web/websocket/websocket.js +0 -595
  415. package/dist/node_modules/undici/package.json +0 -160
  416. package/dist/node_modules/undici/scripts/strip-comments.js +0 -8
  417. package/dist/node_modules/v8-compile-cache/package.json +0 -34
  418. package/dist/node_modules/v8-compile-cache/v8-compile-cache.js +0 -373
  419. package/dist/node_modules/which/LICENSE +0 -15
  420. package/dist/node_modules/which/bin/which.js +0 -52
  421. package/dist/node_modules/which/lib/index.js +0 -111
  422. package/dist/node_modules/which/package.json +0 -52
  423. package/dist/node_modules/yallist/dist/commonjs/index.js +0 -384
  424. package/dist/node_modules/yallist/dist/commonjs/package.json +0 -3
  425. package/dist/node_modules/yallist/dist/esm/index.js +0 -379
  426. package/dist/node_modules/yallist/dist/esm/package.json +0 -3
  427. package/dist/node_modules/yallist/package.json +0 -68
  428. package/dist/pnpm.mjs +0 -306294
  429. package/dist/pnpmrc +0 -2
  430. package/dist/templates/completion.bash +0 -31
  431. package/dist/templates/completion.fish +0 -22
  432. package/dist/templates/completion.ps1 +0 -193
  433. package/dist/templates/completion.zsh +0 -27
  434. package/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  435. package/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  436. package/dist/worker.js +0 -11938
  437. package/platform-pkg-name.js +0 -18
  438. package/pn.cmd +0 -2
  439. package/pn.ps1 +0 -1
  440. package/pnpx.cmd +0 -2
  441. package/pnpx.ps1 +0 -1
  442. package/pnx.cmd +0 -2
  443. package/pnx.ps1 +0 -1
  444. package/prepare.js +0 -29
  445. package/setup.js +0 -106
@@ -1,59 +0,0 @@
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
- from gyp import easy_xml
8
-
9
-
10
- class Writer:
11
- """Visual Studio XML tool file writer."""
12
-
13
- def __init__(self, tool_file_path, name):
14
- """Initializes the tool file.
15
-
16
- Args:
17
- tool_file_path: Path to the tool file.
18
- name: Name of the tool file.
19
- """
20
- self.tool_file_path = tool_file_path
21
- self.name = name
22
- self.rules_section = ["Rules"]
23
-
24
- def AddCustomBuildRule(
25
- self, name, cmd, description, additional_dependencies, outputs, extensions
26
- ):
27
- """Adds a rule to the tool file.
28
-
29
- Args:
30
- name: Name of the rule.
31
- description: Description of the rule.
32
- cmd: Command line of the rule.
33
- additional_dependencies: other files which may trigger the rule.
34
- outputs: outputs of the rule.
35
- extensions: extensions handled by the rule.
36
- """
37
- rule = [
38
- "CustomBuildRule",
39
- {
40
- "Name": name,
41
- "ExecutionDescription": description,
42
- "CommandLine": cmd,
43
- "Outputs": ";".join(outputs),
44
- "FileExtensions": ";".join(extensions),
45
- "AdditionalDependencies": ";".join(additional_dependencies),
46
- },
47
- ]
48
- self.rules_section.append(rule)
49
-
50
- def WriteIfChanged(self):
51
- """Writes the tool file."""
52
- content = [
53
- "VisualStudioToolFile",
54
- {"Version": "8.00", "Name": self.name},
55
- self.rules_section,
56
- ]
57
- easy_xml.WriteXmlIfChanged(
58
- content, self.tool_file_path, encoding="Windows-1252"
59
- )
@@ -1,152 +0,0 @@
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 user preferences file writer."""
6
-
7
- import os
8
- import re
9
- import socket # for gethostname
10
-
11
- from gyp import easy_xml
12
-
13
- # ------------------------------------------------------------------------------
14
-
15
-
16
- def _FindCommandInPath(command):
17
- """If there are no slashes in the command given, this function
18
- searches the PATH env to find the given command, and converts it
19
- to an absolute path. We have to do this because MSVS is looking
20
- for an actual file to launch a debugger on, not just a command
21
- line. Note that this happens at GYP time, so anything needing to
22
- be built needs to have a full path."""
23
- if "/" in command or "\\" in command:
24
- # If the command already has path elements (either relative or
25
- # absolute), then assume it is constructed properly.
26
- return command
27
- else:
28
- # Search through the path list and find an existing file that
29
- # we can access.
30
- paths = os.environ.get("PATH", "").split(os.pathsep)
31
- for path in paths:
32
- item = os.path.join(path, command)
33
- if os.path.isfile(item) and os.access(item, os.X_OK):
34
- return item
35
- return command
36
-
37
-
38
- def _QuoteWin32CommandLineArgs(args):
39
- new_args = []
40
- for arg in args:
41
- # Replace all double-quotes with double-double-quotes to escape
42
- # them for cmd shell, and then quote the whole thing if there
43
- # are any.
44
- if arg.find('"') != -1:
45
- arg = '""'.join(arg.split('"'))
46
- arg = '"%s"' % arg
47
-
48
- # Otherwise, if there are any spaces, quote the whole arg.
49
- elif re.search(r"[ \t\n]", arg):
50
- arg = '"%s"' % arg
51
- new_args.append(arg)
52
- return new_args
53
-
54
-
55
- class Writer:
56
- """Visual Studio XML user user file writer."""
57
-
58
- def __init__(self, user_file_path, version, name):
59
- """Initializes the user file.
60
-
61
- Args:
62
- user_file_path: Path to the user file.
63
- version: Version info.
64
- name: Name of the user file.
65
- """
66
- self.user_file_path = user_file_path
67
- self.version = version
68
- self.name = name
69
- self.configurations = {}
70
-
71
- def AddConfig(self, name):
72
- """Adds a configuration to the project.
73
-
74
- Args:
75
- name: Configuration name.
76
- """
77
- self.configurations[name] = ["Configuration", {"Name": name}]
78
-
79
- def AddDebugSettings(
80
- self, config_name, command, environment={}, working_directory=""
81
- ):
82
- """Adds a DebugSettings node to the user file for a particular config.
83
-
84
- Args:
85
- command: command line to run. First element in the list is the
86
- executable. All elements of the command will be quoted if
87
- necessary.
88
- working_directory: other files which may trigger the rule. (optional)
89
- """
90
- command = _QuoteWin32CommandLineArgs(command)
91
-
92
- abs_command = _FindCommandInPath(command[0])
93
-
94
- if environment and isinstance(environment, dict):
95
- env_list = [f'{key}="{val}"' for (key, val) in environment.items()]
96
- environment = " ".join(env_list)
97
- else:
98
- environment = ""
99
-
100
- n_cmd = [
101
- "DebugSettings",
102
- {
103
- "Command": abs_command,
104
- "WorkingDirectory": working_directory,
105
- "CommandArguments": " ".join(command[1:]),
106
- "RemoteMachine": socket.gethostname(),
107
- "Environment": environment,
108
- "EnvironmentMerge": "true",
109
- # Currently these are all "dummy" values that we're just setting
110
- # in the default manner that MSVS does it. We could use some of
111
- # these to add additional capabilities, I suppose, but they might
112
- # not have parity with other platforms then.
113
- "Attach": "false",
114
- "DebuggerType": "3", # 'auto' debugger
115
- "Remote": "1",
116
- "RemoteCommand": "",
117
- "HttpUrl": "",
118
- "PDBPath": "",
119
- "SQLDebugging": "",
120
- "DebuggerFlavor": "0",
121
- "MPIRunCommand": "",
122
- "MPIRunArguments": "",
123
- "MPIRunWorkingDirectory": "",
124
- "ApplicationCommand": "",
125
- "ApplicationArguments": "",
126
- "ShimCommand": "",
127
- "MPIAcceptMode": "",
128
- "MPIAcceptFilter": "",
129
- },
130
- ]
131
-
132
- # Find the config, and add it if it doesn't exist.
133
- if config_name not in self.configurations:
134
- self.AddConfig(config_name)
135
-
136
- # Add the DebugSettings onto the appropriate config.
137
- self.configurations[config_name].append(n_cmd)
138
-
139
- def WriteIfChanged(self):
140
- """Writes the user file."""
141
- configs = ["Configurations"]
142
- for config, spec in sorted(self.configurations.items()):
143
- configs.append(spec)
144
-
145
- content = [
146
- "VisualStudioUserFile",
147
- {"Version": self.version.ProjectVersion(), "Name": self.name},
148
- configs,
149
- ]
150
- easy_xml.WriteXmlIfChanged(
151
- content, self.user_file_path, encoding="Windows-1252"
152
- )
@@ -1,270 +0,0 @@
1
- # Copyright (c) 2013 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
- """Utility functions shared amongst the Windows generators."""
6
-
7
- import copy
8
- import os
9
-
10
- # A dictionary mapping supported target types to extensions.
11
- TARGET_TYPE_EXT = {
12
- "executable": "exe",
13
- "loadable_module": "dll",
14
- "shared_library": "dll",
15
- "static_library": "lib",
16
- "windows_driver": "sys",
17
- }
18
-
19
-
20
- def _GetLargePdbShimCcPath():
21
- """Returns the path of the large_pdb_shim.cc file."""
22
- this_dir = os.path.abspath(os.path.dirname(__file__))
23
- src_dir = os.path.abspath(os.path.join(this_dir, "..", ".."))
24
- win_data_dir = os.path.join(src_dir, "data", "win")
25
- large_pdb_shim_cc = os.path.join(win_data_dir, "large-pdb-shim.cc")
26
- return large_pdb_shim_cc
27
-
28
-
29
- def _DeepCopySomeKeys(in_dict, keys):
30
- """Performs a partial deep-copy on |in_dict|, only copying the keys in |keys|.
31
-
32
- Arguments:
33
- in_dict: The dictionary to copy.
34
- keys: The keys to be copied. If a key is in this list and doesn't exist in
35
- |in_dict| this is not an error.
36
- Returns:
37
- The partially deep-copied dictionary.
38
- """
39
- d = {}
40
- for key in keys:
41
- if key not in in_dict:
42
- continue
43
- d[key] = copy.deepcopy(in_dict[key])
44
- return d
45
-
46
-
47
- def _SuffixName(name, suffix):
48
- """Add a suffix to the end of a target.
49
-
50
- Arguments:
51
- name: name of the target (foo#target)
52
- suffix: the suffix to be added
53
- Returns:
54
- Target name with suffix added (foo_suffix#target)
55
- """
56
- parts = name.rsplit("#", 1)
57
- parts[0] = f"{parts[0]}_{suffix}"
58
- return "#".join(parts)
59
-
60
-
61
- def _ShardName(name, number):
62
- """Add a shard number to the end of a target.
63
-
64
- Arguments:
65
- name: name of the target (foo#target)
66
- number: shard number
67
- Returns:
68
- Target name with shard added (foo_1#target)
69
- """
70
- return _SuffixName(name, str(number))
71
-
72
-
73
- def ShardTargets(target_list, target_dicts):
74
- """Shard some targets apart to work around the linkers limits.
75
-
76
- Arguments:
77
- target_list: List of target pairs: 'base/base.gyp:base'.
78
- target_dicts: Dict of target properties keyed on target pair.
79
- Returns:
80
- Tuple of the new sharded versions of the inputs.
81
- """
82
- # Gather the targets to shard, and how many pieces.
83
- targets_to_shard = {}
84
- for t in target_dicts:
85
- shards = int(target_dicts[t].get("msvs_shard", 0))
86
- if shards:
87
- targets_to_shard[t] = shards
88
- # Shard target_list.
89
- new_target_list = []
90
- for t in target_list:
91
- if t in targets_to_shard:
92
- for i in range(targets_to_shard[t]):
93
- new_target_list.append(_ShardName(t, i))
94
- else:
95
- new_target_list.append(t)
96
- # Shard target_dict.
97
- new_target_dicts = {}
98
- for t in target_dicts:
99
- if t in targets_to_shard:
100
- for i in range(targets_to_shard[t]):
101
- name = _ShardName(t, i)
102
- new_target_dicts[name] = copy.copy(target_dicts[t])
103
- new_target_dicts[name]["target_name"] = _ShardName(
104
- new_target_dicts[name]["target_name"], i
105
- )
106
- sources = new_target_dicts[name].get("sources", [])
107
- new_sources = []
108
- for pos in range(i, len(sources), targets_to_shard[t]):
109
- new_sources.append(sources[pos])
110
- new_target_dicts[name]["sources"] = new_sources
111
- else:
112
- new_target_dicts[t] = target_dicts[t]
113
- # Shard dependencies.
114
- for t in sorted(new_target_dicts):
115
- for deptype in ("dependencies", "dependencies_original"):
116
- dependencies = copy.copy(new_target_dicts[t].get(deptype, []))
117
- new_dependencies = []
118
- for d in dependencies:
119
- if d in targets_to_shard:
120
- for i in range(targets_to_shard[d]):
121
- new_dependencies.append(_ShardName(d, i))
122
- else:
123
- new_dependencies.append(d)
124
- new_target_dicts[t][deptype] = new_dependencies
125
-
126
- return (new_target_list, new_target_dicts)
127
-
128
-
129
- def _GetPdbPath(target_dict, config_name, vars):
130
- """Returns the path to the PDB file that will be generated by a given
131
- configuration.
132
-
133
- The lookup proceeds as follows:
134
- - Look for an explicit path in the VCLinkerTool configuration block.
135
- - Look for an 'msvs_large_pdb_path' variable.
136
- - Use '<(PRODUCT_DIR)/<(product_name).(exe|dll).pdb' if 'product_name' is
137
- specified.
138
- - Use '<(PRODUCT_DIR)/<(target_name).(exe|dll).pdb'.
139
-
140
- Arguments:
141
- target_dict: The target dictionary to be searched.
142
- config_name: The name of the configuration of interest.
143
- vars: A dictionary of common GYP variables with generator-specific values.
144
- Returns:
145
- The path of the corresponding PDB file.
146
- """
147
- config = target_dict["configurations"][config_name]
148
- msvs = config.setdefault("msvs_settings", {})
149
-
150
- linker = msvs.get("VCLinkerTool", {})
151
-
152
- pdb_path = linker.get("ProgramDatabaseFile")
153
- if pdb_path:
154
- return pdb_path
155
-
156
- variables = target_dict.get("variables", {})
157
- pdb_path = variables.get("msvs_large_pdb_path", None)
158
- if pdb_path:
159
- return pdb_path
160
-
161
- pdb_base = target_dict.get("product_name", target_dict["target_name"])
162
- pdb_base = "{}.{}.pdb".format(pdb_base, TARGET_TYPE_EXT[target_dict["type"]])
163
- pdb_path = vars["PRODUCT_DIR"] + "/" + pdb_base
164
-
165
- return pdb_path
166
-
167
-
168
- def InsertLargePdbShims(target_list, target_dicts, vars):
169
- """Insert a shim target that forces the linker to use 4KB pagesize PDBs.
170
-
171
- This is a workaround for targets with PDBs greater than 1GB in size, the
172
- limit for the 1KB pagesize PDBs created by the linker by default.
173
-
174
- Arguments:
175
- target_list: List of target pairs: 'base/base.gyp:base'.
176
- target_dicts: Dict of target properties keyed on target pair.
177
- vars: A dictionary of common GYP variables with generator-specific values.
178
- Returns:
179
- Tuple of the shimmed version of the inputs.
180
- """
181
- # Determine which targets need shimming.
182
- targets_to_shim = []
183
- for t in target_dicts:
184
- target_dict = target_dicts[t]
185
-
186
- # We only want to shim targets that have msvs_large_pdb enabled.
187
- if not int(target_dict.get("msvs_large_pdb", 0)):
188
- continue
189
- # This is intended for executable, shared_library and loadable_module
190
- # targets where every configuration is set up to produce a PDB output.
191
- # If any of these conditions is not true then the shim logic will fail
192
- # below.
193
- targets_to_shim.append(t)
194
-
195
- large_pdb_shim_cc = _GetLargePdbShimCcPath()
196
-
197
- for t in targets_to_shim:
198
- target_dict = target_dicts[t]
199
- target_name = target_dict.get("target_name")
200
-
201
- base_dict = _DeepCopySomeKeys(
202
- target_dict, ["configurations", "default_configuration", "toolset"]
203
- )
204
-
205
- # This is the dict for copying the source file (part of the GYP tree)
206
- # to the intermediate directory of the project. This is necessary because
207
- # we can't always build a relative path to the shim source file (on Windows
208
- # GYP and the project may be on different drives), and Ninja hates absolute
209
- # paths (it ends up generating the .obj and .obj.d alongside the source
210
- # file, polluting GYPs tree).
211
- copy_suffix = "large_pdb_copy"
212
- copy_target_name = target_name + "_" + copy_suffix
213
- full_copy_target_name = _SuffixName(t, copy_suffix)
214
- shim_cc_basename = os.path.basename(large_pdb_shim_cc)
215
- shim_cc_dir = vars["SHARED_INTERMEDIATE_DIR"] + "/" + copy_target_name
216
- shim_cc_path = shim_cc_dir + "/" + shim_cc_basename
217
- copy_dict = copy.deepcopy(base_dict)
218
- copy_dict["target_name"] = copy_target_name
219
- copy_dict["type"] = "none"
220
- copy_dict["sources"] = [large_pdb_shim_cc]
221
- copy_dict["copies"] = [
222
- {"destination": shim_cc_dir, "files": [large_pdb_shim_cc]}
223
- ]
224
-
225
- # This is the dict for the PDB generating shim target. It depends on the
226
- # copy target.
227
- shim_suffix = "large_pdb_shim"
228
- shim_target_name = target_name + "_" + shim_suffix
229
- full_shim_target_name = _SuffixName(t, shim_suffix)
230
- shim_dict = copy.deepcopy(base_dict)
231
- shim_dict["target_name"] = shim_target_name
232
- shim_dict["type"] = "static_library"
233
- shim_dict["sources"] = [shim_cc_path]
234
- shim_dict["dependencies"] = [full_copy_target_name]
235
-
236
- # Set up the shim to output its PDB to the same location as the final linker
237
- # target.
238
- for config_name, config in shim_dict.get("configurations").items():
239
- pdb_path = _GetPdbPath(target_dict, config_name, vars)
240
-
241
- # A few keys that we don't want to propagate.
242
- for key in ["msvs_precompiled_header", "msvs_precompiled_source", "test"]:
243
- config.pop(key, None)
244
-
245
- msvs = config.setdefault("msvs_settings", {})
246
-
247
- # Update the compiler directives in the shim target.
248
- compiler = msvs.setdefault("VCCLCompilerTool", {})
249
- compiler["DebugInformationFormat"] = "3"
250
- compiler["ProgramDataBaseFileName"] = pdb_path
251
-
252
- # Set the explicit PDB path in the appropriate configuration of the
253
- # original target.
254
- config = target_dict["configurations"][config_name]
255
- msvs = config.setdefault("msvs_settings", {})
256
- linker = msvs.setdefault("VCLinkerTool", {})
257
- linker["GenerateDebugInformation"] = "true"
258
- linker["ProgramDatabaseFile"] = pdb_path
259
-
260
- # Add the new targets. They must go to the beginning of the list so that
261
- # the dependency generation works as expected in ninja.
262
- target_list.insert(0, full_copy_target_name)
263
- target_list.insert(0, full_shim_target_name)
264
- target_dicts[full_copy_target_name] = copy_dict
265
- target_dicts[full_shim_target_name] = shim_dict
266
-
267
- # Update the original target to depend on the shim target.
268
- target_dict.setdefault("dependencies", []).append(full_shim_target_name)
269
-
270
- return (target_list, target_dicts)