frida 16.2.0 → 16.2.2

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 (386) hide show
  1. package/BSDmakefile +6 -0
  2. package/Makefile +16 -0
  3. package/README.md +14 -11
  4. package/configure +18 -0
  5. package/configure.bat +22 -0
  6. package/dist/native.js +0 -8
  7. package/lib/application.ts +98 -0
  8. package/lib/authentication.ts +3 -0
  9. package/lib/build.py +50 -0
  10. package/lib/bus.ts +30 -0
  11. package/lib/cancellable.ts +33 -0
  12. package/lib/child.ts +15 -0
  13. package/lib/crash.ts +11 -0
  14. package/lib/device.ts +329 -0
  15. package/lib/device_manager.ts +69 -0
  16. package/lib/endpoint_parameters.ts +56 -0
  17. package/lib/icon.ts +15 -0
  18. package/lib/index.ts +311 -0
  19. package/lib/iostream.ts +78 -0
  20. package/lib/meson.build +53 -0
  21. package/lib/native.ts +9 -0
  22. package/lib/portal_membership.ts +10 -0
  23. package/lib/portal_service.ts +105 -0
  24. package/lib/process.ts +57 -0
  25. package/lib/relay.ts +44 -0
  26. package/lib/script.ts +352 -0
  27. package/lib/session.ts +113 -0
  28. package/lib/signals.ts +45 -0
  29. package/lib/socket_address.ts +35 -0
  30. package/lib/spawn.ts +4 -0
  31. package/lib/system_parameters.ts +78 -0
  32. package/make.bat +23 -0
  33. package/meson.build +160 -0
  34. package/meson.options +11 -0
  35. package/package.json +27 -6
  36. package/releng/deps.py +1133 -0
  37. package/releng/deps.toml +391 -0
  38. package/releng/devkit-assets/frida-core-example-unix.c +188 -0
  39. package/releng/devkit-assets/frida-core-example-windows.c +197 -0
  40. package/releng/devkit-assets/frida-core-example.sln +28 -0
  41. package/releng/devkit-assets/frida-core-example.vcxproj +157 -0
  42. package/releng/devkit-assets/frida-core-example.vcxproj.filters +27 -0
  43. package/releng/devkit-assets/frida-gum-example-unix.c +122 -0
  44. package/releng/devkit-assets/frida-gum-example-windows.c +132 -0
  45. package/releng/devkit-assets/frida-gum-example.sln +28 -0
  46. package/releng/devkit-assets/frida-gum-example.vcxproj +157 -0
  47. package/releng/devkit-assets/frida-gum-example.vcxproj.filters +27 -0
  48. package/releng/devkit-assets/frida-gumjs-example-unix.c +84 -0
  49. package/releng/devkit-assets/frida-gumjs-example-windows.c +91 -0
  50. package/releng/devkit-assets/frida-gumjs-example.sln +28 -0
  51. package/releng/devkit-assets/frida-gumjs-example.vcxproj +157 -0
  52. package/releng/devkit-assets/frida-gumjs-example.vcxproj.filters +27 -0
  53. package/releng/devkit.py +535 -0
  54. package/releng/env.py +420 -0
  55. package/releng/env_android.py +150 -0
  56. package/releng/env_apple.py +176 -0
  57. package/releng/env_generic.py +373 -0
  58. package/releng/frida_version.py +69 -0
  59. package/releng/machine_file.py +44 -0
  60. package/releng/machine_spec.py +290 -0
  61. package/releng/meson/meson.py +27 -0
  62. package/releng/meson/mesonbuild/__init__.py +0 -0
  63. package/releng/meson/mesonbuild/_pathlib.py +63 -0
  64. package/releng/meson/mesonbuild/_typing.py +69 -0
  65. package/releng/meson/mesonbuild/arglist.py +321 -0
  66. package/releng/meson/mesonbuild/ast/__init__.py +23 -0
  67. package/releng/meson/mesonbuild/ast/interpreter.py +441 -0
  68. package/releng/meson/mesonbuild/ast/introspection.py +374 -0
  69. package/releng/meson/mesonbuild/ast/postprocess.py +109 -0
  70. package/releng/meson/mesonbuild/ast/printer.py +620 -0
  71. package/releng/meson/mesonbuild/ast/visitor.py +161 -0
  72. package/releng/meson/mesonbuild/backend/__init__.py +0 -0
  73. package/releng/meson/mesonbuild/backend/backends.py +2047 -0
  74. package/releng/meson/mesonbuild/backend/ninjabackend.py +3808 -0
  75. package/releng/meson/mesonbuild/backend/nonebackend.py +26 -0
  76. package/releng/meson/mesonbuild/backend/vs2010backend.py +2078 -0
  77. package/releng/meson/mesonbuild/backend/vs2012backend.py +35 -0
  78. package/releng/meson/mesonbuild/backend/vs2013backend.py +34 -0
  79. package/releng/meson/mesonbuild/backend/vs2015backend.py +35 -0
  80. package/releng/meson/mesonbuild/backend/vs2017backend.py +59 -0
  81. package/releng/meson/mesonbuild/backend/vs2019backend.py +54 -0
  82. package/releng/meson/mesonbuild/backend/vs2022backend.py +54 -0
  83. package/releng/meson/mesonbuild/backend/xcodebackend.py +1781 -0
  84. package/releng/meson/mesonbuild/build.py +3249 -0
  85. package/releng/meson/mesonbuild/cargo/__init__.py +5 -0
  86. package/releng/meson/mesonbuild/cargo/builder.py +238 -0
  87. package/releng/meson/mesonbuild/cargo/cfg.py +274 -0
  88. package/releng/meson/mesonbuild/cargo/interpreter.py +733 -0
  89. package/releng/meson/mesonbuild/cargo/manifest.py +227 -0
  90. package/releng/meson/mesonbuild/cargo/version.py +95 -0
  91. package/releng/meson/mesonbuild/cmake/__init__.py +28 -0
  92. package/releng/meson/mesonbuild/cmake/common.py +331 -0
  93. package/releng/meson/mesonbuild/cmake/data/__init__.py +0 -0
  94. package/releng/meson/mesonbuild/cmake/data/preload.cmake +82 -0
  95. package/releng/meson/mesonbuild/cmake/executor.py +241 -0
  96. package/releng/meson/mesonbuild/cmake/fileapi.py +324 -0
  97. package/releng/meson/mesonbuild/cmake/generator.py +186 -0
  98. package/releng/meson/mesonbuild/cmake/interpreter.py +1267 -0
  99. package/releng/meson/mesonbuild/cmake/toolchain.py +248 -0
  100. package/releng/meson/mesonbuild/cmake/traceparser.py +814 -0
  101. package/releng/meson/mesonbuild/cmake/tracetargets.py +161 -0
  102. package/releng/meson/mesonbuild/compilers/__init__.py +86 -0
  103. package/releng/meson/mesonbuild/compilers/asm.py +307 -0
  104. package/releng/meson/mesonbuild/compilers/c.py +788 -0
  105. package/releng/meson/mesonbuild/compilers/c_function_attributes.py +143 -0
  106. package/releng/meson/mesonbuild/compilers/compilers.py +1388 -0
  107. package/releng/meson/mesonbuild/compilers/cpp.py +1035 -0
  108. package/releng/meson/mesonbuild/compilers/cs.py +136 -0
  109. package/releng/meson/mesonbuild/compilers/cuda.py +806 -0
  110. package/releng/meson/mesonbuild/compilers/cython.py +91 -0
  111. package/releng/meson/mesonbuild/compilers/d.py +861 -0
  112. package/releng/meson/mesonbuild/compilers/detect.py +1396 -0
  113. package/releng/meson/mesonbuild/compilers/fortran.py +523 -0
  114. package/releng/meson/mesonbuild/compilers/java.py +113 -0
  115. package/releng/meson/mesonbuild/compilers/mixins/__init__.py +0 -0
  116. package/releng/meson/mesonbuild/compilers/mixins/arm.py +167 -0
  117. package/releng/meson/mesonbuild/compilers/mixins/ccrx.py +113 -0
  118. package/releng/meson/mesonbuild/compilers/mixins/clang.py +170 -0
  119. package/releng/meson/mesonbuild/compilers/mixins/clike.py +1330 -0
  120. package/releng/meson/mesonbuild/compilers/mixins/compcert.py +117 -0
  121. package/releng/meson/mesonbuild/compilers/mixins/elbrus.py +93 -0
  122. package/releng/meson/mesonbuild/compilers/mixins/emscripten.py +89 -0
  123. package/releng/meson/mesonbuild/compilers/mixins/gnu.py +629 -0
  124. package/releng/meson/mesonbuild/compilers/mixins/intel.py +167 -0
  125. package/releng/meson/mesonbuild/compilers/mixins/islinker.py +120 -0
  126. package/releng/meson/mesonbuild/compilers/mixins/metrowerks.py +279 -0
  127. package/releng/meson/mesonbuild/compilers/mixins/pgi.py +88 -0
  128. package/releng/meson/mesonbuild/compilers/mixins/ti.py +130 -0
  129. package/releng/meson/mesonbuild/compilers/mixins/visualstudio.py +458 -0
  130. package/releng/meson/mesonbuild/compilers/mixins/xc16.py +111 -0
  131. package/releng/meson/mesonbuild/compilers/objc.py +120 -0
  132. package/releng/meson/mesonbuild/compilers/objcpp.py +102 -0
  133. package/releng/meson/mesonbuild/compilers/rust.py +230 -0
  134. package/releng/meson/mesonbuild/compilers/swift.py +131 -0
  135. package/releng/meson/mesonbuild/compilers/vala.py +121 -0
  136. package/releng/meson/mesonbuild/coredata.py +1532 -0
  137. package/releng/meson/mesonbuild/dependencies/__init__.py +252 -0
  138. package/releng/meson/mesonbuild/dependencies/base.py +663 -0
  139. package/releng/meson/mesonbuild/dependencies/boost.py +1083 -0
  140. package/releng/meson/mesonbuild/dependencies/cmake.py +656 -0
  141. package/releng/meson/mesonbuild/dependencies/coarrays.py +80 -0
  142. package/releng/meson/mesonbuild/dependencies/configtool.py +163 -0
  143. package/releng/meson/mesonbuild/dependencies/cuda.py +295 -0
  144. package/releng/meson/mesonbuild/dependencies/data/CMakeLists.txt +102 -0
  145. package/releng/meson/mesonbuild/dependencies/data/CMakeListsLLVM.txt +204 -0
  146. package/releng/meson/mesonbuild/dependencies/data/CMakePathInfo.txt +31 -0
  147. package/releng/meson/mesonbuild/dependencies/data/__init__.py +0 -0
  148. package/releng/meson/mesonbuild/dependencies/detect.py +225 -0
  149. package/releng/meson/mesonbuild/dependencies/dev.py +707 -0
  150. package/releng/meson/mesonbuild/dependencies/dub.py +424 -0
  151. package/releng/meson/mesonbuild/dependencies/factory.py +146 -0
  152. package/releng/meson/mesonbuild/dependencies/framework.py +111 -0
  153. package/releng/meson/mesonbuild/dependencies/hdf5.py +168 -0
  154. package/releng/meson/mesonbuild/dependencies/misc.py +618 -0
  155. package/releng/meson/mesonbuild/dependencies/mpi.py +231 -0
  156. package/releng/meson/mesonbuild/dependencies/pkgconfig.py +570 -0
  157. package/releng/meson/mesonbuild/dependencies/platform.py +52 -0
  158. package/releng/meson/mesonbuild/dependencies/python.py +431 -0
  159. package/releng/meson/mesonbuild/dependencies/qt.py +484 -0
  160. package/releng/meson/mesonbuild/dependencies/scalapack.py +142 -0
  161. package/releng/meson/mesonbuild/dependencies/ui.py +281 -0
  162. package/releng/meson/mesonbuild/depfile.py +82 -0
  163. package/releng/meson/mesonbuild/envconfig.py +480 -0
  164. package/releng/meson/mesonbuild/environment.py +987 -0
  165. package/releng/meson/mesonbuild/interpreter/__init__.py +47 -0
  166. package/releng/meson/mesonbuild/interpreter/compiler.py +900 -0
  167. package/releng/meson/mesonbuild/interpreter/dependencyfallbacks.py +386 -0
  168. package/releng/meson/mesonbuild/interpreter/interpreter.py +3595 -0
  169. package/releng/meson/mesonbuild/interpreter/interpreterobjects.py +1096 -0
  170. package/releng/meson/mesonbuild/interpreter/kwargs.py +479 -0
  171. package/releng/meson/mesonbuild/interpreter/mesonmain.py +487 -0
  172. package/releng/meson/mesonbuild/interpreter/primitives/__init__.py +29 -0
  173. package/releng/meson/mesonbuild/interpreter/primitives/array.py +108 -0
  174. package/releng/meson/mesonbuild/interpreter/primitives/boolean.py +52 -0
  175. package/releng/meson/mesonbuild/interpreter/primitives/dict.py +88 -0
  176. package/releng/meson/mesonbuild/interpreter/primitives/integer.py +86 -0
  177. package/releng/meson/mesonbuild/interpreter/primitives/range.py +38 -0
  178. package/releng/meson/mesonbuild/interpreter/primitives/string.py +247 -0
  179. package/releng/meson/mesonbuild/interpreter/type_checking.py +853 -0
  180. package/releng/meson/mesonbuild/interpreterbase/__init__.py +126 -0
  181. package/releng/meson/mesonbuild/interpreterbase/_unholder.py +25 -0
  182. package/releng/meson/mesonbuild/interpreterbase/baseobjects.py +174 -0
  183. package/releng/meson/mesonbuild/interpreterbase/decorators.py +806 -0
  184. package/releng/meson/mesonbuild/interpreterbase/disabler.py +35 -0
  185. package/releng/meson/mesonbuild/interpreterbase/exceptions.py +22 -0
  186. package/releng/meson/mesonbuild/interpreterbase/helpers.py +67 -0
  187. package/releng/meson/mesonbuild/interpreterbase/interpreterbase.py +665 -0
  188. package/releng/meson/mesonbuild/interpreterbase/operator.py +32 -0
  189. package/releng/meson/mesonbuild/linkers/__init__.py +20 -0
  190. package/releng/meson/mesonbuild/linkers/base.py +39 -0
  191. package/releng/meson/mesonbuild/linkers/detect.py +229 -0
  192. package/releng/meson/mesonbuild/linkers/linkers.py +1614 -0
  193. package/releng/meson/mesonbuild/mcompile.py +380 -0
  194. package/releng/meson/mesonbuild/mconf.py +368 -0
  195. package/releng/meson/mesonbuild/mdevenv.py +234 -0
  196. package/releng/meson/mesonbuild/mdist.py +376 -0
  197. package/releng/meson/mesonbuild/mesondata.py +38 -0
  198. package/releng/meson/mesonbuild/mesonlib.py +23 -0
  199. package/releng/meson/mesonbuild/mesonmain.py +289 -0
  200. package/releng/meson/mesonbuild/minit.py +204 -0
  201. package/releng/meson/mesonbuild/minstall.py +864 -0
  202. package/releng/meson/mesonbuild/mintro.py +667 -0
  203. package/releng/meson/mesonbuild/mlog.py +542 -0
  204. package/releng/meson/mesonbuild/modules/__init__.py +270 -0
  205. package/releng/meson/mesonbuild/modules/cmake.py +442 -0
  206. package/releng/meson/mesonbuild/modules/cuda.py +377 -0
  207. package/releng/meson/mesonbuild/modules/dlang.py +117 -0
  208. package/releng/meson/mesonbuild/modules/external_project.py +306 -0
  209. package/releng/meson/mesonbuild/modules/fs.py +323 -0
  210. package/releng/meson/mesonbuild/modules/gnome.py +2215 -0
  211. package/releng/meson/mesonbuild/modules/hotdoc.py +487 -0
  212. package/releng/meson/mesonbuild/modules/i18n.py +405 -0
  213. package/releng/meson/mesonbuild/modules/icestorm.py +123 -0
  214. package/releng/meson/mesonbuild/modules/java.py +112 -0
  215. package/releng/meson/mesonbuild/modules/keyval.py +65 -0
  216. package/releng/meson/mesonbuild/modules/modtest.py +33 -0
  217. package/releng/meson/mesonbuild/modules/pkgconfig.py +744 -0
  218. package/releng/meson/mesonbuild/modules/python.py +556 -0
  219. package/releng/meson/mesonbuild/modules/python3.py +85 -0
  220. package/releng/meson/mesonbuild/modules/qt.py +621 -0
  221. package/releng/meson/mesonbuild/modules/qt4.py +23 -0
  222. package/releng/meson/mesonbuild/modules/qt5.py +23 -0
  223. package/releng/meson/mesonbuild/modules/qt6.py +22 -0
  224. package/releng/meson/mesonbuild/modules/rust.py +355 -0
  225. package/releng/meson/mesonbuild/modules/simd.py +114 -0
  226. package/releng/meson/mesonbuild/modules/sourceset.py +291 -0
  227. package/releng/meson/mesonbuild/modules/wayland.py +151 -0
  228. package/releng/meson/mesonbuild/modules/windows.py +207 -0
  229. package/releng/meson/mesonbuild/mparser.py +1114 -0
  230. package/releng/meson/mesonbuild/msetup.py +365 -0
  231. package/releng/meson/mesonbuild/msubprojects.py +764 -0
  232. package/releng/meson/mesonbuild/mtest.py +2201 -0
  233. package/releng/meson/mesonbuild/munstable_coredata.py +107 -0
  234. package/releng/meson/mesonbuild/optinterpreter.py +276 -0
  235. package/releng/meson/mesonbuild/programs.py +367 -0
  236. package/releng/meson/mesonbuild/rewriter.py +1075 -0
  237. package/releng/meson/mesonbuild/scripts/__init__.py +10 -0
  238. package/releng/meson/mesonbuild/scripts/clangformat.py +55 -0
  239. package/releng/meson/mesonbuild/scripts/clangtidy.py +30 -0
  240. package/releng/meson/mesonbuild/scripts/cleantrees.py +35 -0
  241. package/releng/meson/mesonbuild/scripts/cmake_run_ctgt.py +103 -0
  242. package/releng/meson/mesonbuild/scripts/cmd_or_ps.ps1 +17 -0
  243. package/releng/meson/mesonbuild/scripts/copy.py +19 -0
  244. package/releng/meson/mesonbuild/scripts/coverage.py +214 -0
  245. package/releng/meson/mesonbuild/scripts/delwithsuffix.py +27 -0
  246. package/releng/meson/mesonbuild/scripts/depfixer.py +495 -0
  247. package/releng/meson/mesonbuild/scripts/depscan.py +198 -0
  248. package/releng/meson/mesonbuild/scripts/dirchanger.py +20 -0
  249. package/releng/meson/mesonbuild/scripts/env2mfile.py +402 -0
  250. package/releng/meson/mesonbuild/scripts/externalproject.py +106 -0
  251. package/releng/meson/mesonbuild/scripts/gettext.py +86 -0
  252. package/releng/meson/mesonbuild/scripts/gtkdochelper.py +286 -0
  253. package/releng/meson/mesonbuild/scripts/hotdochelper.py +40 -0
  254. package/releng/meson/mesonbuild/scripts/itstool.py +77 -0
  255. package/releng/meson/mesonbuild/scripts/meson_exe.py +115 -0
  256. package/releng/meson/mesonbuild/scripts/msgfmthelper.py +29 -0
  257. package/releng/meson/mesonbuild/scripts/pycompile.py +54 -0
  258. package/releng/meson/mesonbuild/scripts/python_info.py +121 -0
  259. package/releng/meson/mesonbuild/scripts/regen_checker.py +55 -0
  260. package/releng/meson/mesonbuild/scripts/run_tool.py +58 -0
  261. package/releng/meson/mesonbuild/scripts/scanbuild.py +57 -0
  262. package/releng/meson/mesonbuild/scripts/symbolextractor.py +322 -0
  263. package/releng/meson/mesonbuild/scripts/tags.py +44 -0
  264. package/releng/meson/mesonbuild/scripts/test_loaded_modules.py +14 -0
  265. package/releng/meson/mesonbuild/scripts/uninstall.py +41 -0
  266. package/releng/meson/mesonbuild/scripts/vcstagger.py +35 -0
  267. package/releng/meson/mesonbuild/scripts/yasm.py +24 -0
  268. package/releng/meson/mesonbuild/templates/__init__.py +0 -0
  269. package/releng/meson/mesonbuild/templates/cpptemplates.py +143 -0
  270. package/releng/meson/mesonbuild/templates/cstemplates.py +90 -0
  271. package/releng/meson/mesonbuild/templates/ctemplates.py +126 -0
  272. package/releng/meson/mesonbuild/templates/cudatemplates.py +143 -0
  273. package/releng/meson/mesonbuild/templates/dlangtemplates.py +109 -0
  274. package/releng/meson/mesonbuild/templates/fortrantemplates.py +101 -0
  275. package/releng/meson/mesonbuild/templates/javatemplates.py +94 -0
  276. package/releng/meson/mesonbuild/templates/mesontemplates.py +70 -0
  277. package/releng/meson/mesonbuild/templates/objcpptemplates.py +126 -0
  278. package/releng/meson/mesonbuild/templates/objctemplates.py +126 -0
  279. package/releng/meson/mesonbuild/templates/rusttemplates.py +79 -0
  280. package/releng/meson/mesonbuild/templates/samplefactory.py +41 -0
  281. package/releng/meson/mesonbuild/templates/sampleimpl.py +160 -0
  282. package/releng/meson/mesonbuild/templates/valatemplates.py +82 -0
  283. package/releng/meson/mesonbuild/utils/__init__.py +0 -0
  284. package/releng/meson/mesonbuild/utils/core.py +166 -0
  285. package/releng/meson/mesonbuild/utils/platform.py +27 -0
  286. package/releng/meson/mesonbuild/utils/posix.py +32 -0
  287. package/releng/meson/mesonbuild/utils/universal.py +2445 -0
  288. package/releng/meson/mesonbuild/utils/vsenv.py +126 -0
  289. package/releng/meson/mesonbuild/utils/win32.py +29 -0
  290. package/releng/meson/mesonbuild/wrap/__init__.py +59 -0
  291. package/releng/meson/mesonbuild/wrap/wrap.py +846 -0
  292. package/releng/meson/mesonbuild/wrap/wraptool.py +198 -0
  293. package/releng/meson-scripts/BSDmakefile +6 -0
  294. package/releng/meson-scripts/Makefile +16 -0
  295. package/releng/meson-scripts/configure +18 -0
  296. package/releng/meson-scripts/configure.bat +22 -0
  297. package/releng/meson-scripts/make.bat +23 -0
  298. package/releng/meson_configure.py +506 -0
  299. package/releng/meson_make.py +131 -0
  300. package/releng/mkdevkit.py +107 -0
  301. package/releng/mkfatmacho.py +54 -0
  302. package/releng/post-process-oabi.py +97 -0
  303. package/releng/progress.py +14 -0
  304. package/releng/sync-from-upstream.py +185 -0
  305. package/releng/tomlkit/tomlkit/__init__.py +59 -0
  306. package/releng/tomlkit/tomlkit/_compat.py +22 -0
  307. package/releng/tomlkit/tomlkit/_types.py +83 -0
  308. package/releng/tomlkit/tomlkit/_utils.py +158 -0
  309. package/releng/tomlkit/tomlkit/api.py +308 -0
  310. package/releng/tomlkit/tomlkit/container.py +875 -0
  311. package/releng/tomlkit/tomlkit/exceptions.py +227 -0
  312. package/releng/tomlkit/tomlkit/items.py +1967 -0
  313. package/releng/tomlkit/tomlkit/parser.py +1141 -0
  314. package/releng/tomlkit/tomlkit/py.typed +0 -0
  315. package/releng/tomlkit/tomlkit/source.py +180 -0
  316. package/releng/tomlkit/tomlkit/toml_char.py +52 -0
  317. package/releng/tomlkit/tomlkit/toml_document.py +7 -0
  318. package/releng/tomlkit/tomlkit/toml_file.py +58 -0
  319. package/releng/winenv.py +140 -0
  320. package/scripts/adjust-version.py +19 -0
  321. package/scripts/detect-version.py +40 -0
  322. package/scripts/fetch-abi-bits.py +343 -0
  323. package/scripts/install.js +23 -0
  324. package/scripts/package.py +15 -0
  325. package/src/addon.cc +76 -0
  326. package/src/application.cc +148 -0
  327. package/src/application.h +31 -0
  328. package/src/authentication.cc +174 -0
  329. package/src/authentication.h +24 -0
  330. package/src/bus.cc +167 -0
  331. package/src/bus.h +33 -0
  332. package/src/cancellable.cc +117 -0
  333. package/src/cancellable.h +31 -0
  334. package/src/child.cc +150 -0
  335. package/src/child.h +32 -0
  336. package/src/crash.cc +122 -0
  337. package/src/crash.h +30 -0
  338. package/src/device.cc +1302 -0
  339. package/src/device.h +55 -0
  340. package/src/device_manager.cc +362 -0
  341. package/src/device_manager.h +35 -0
  342. package/src/endpoint_parameters.cc +171 -0
  343. package/src/endpoint_parameters.h +28 -0
  344. package/src/glib_context.cc +62 -0
  345. package/src/glib_context.h +29 -0
  346. package/src/glib_object.cc +25 -0
  347. package/src/glib_object.h +37 -0
  348. package/src/iostream.cc +247 -0
  349. package/src/iostream.h +30 -0
  350. package/src/meson.build +26 -0
  351. package/src/operation.h +94 -0
  352. package/src/portal_membership.cc +100 -0
  353. package/src/portal_membership.h +26 -0
  354. package/src/portal_service.cc +401 -0
  355. package/src/portal_service.h +40 -0
  356. package/src/process.cc +135 -0
  357. package/src/process.h +30 -0
  358. package/src/relay.cc +139 -0
  359. package/src/relay.h +31 -0
  360. package/src/runtime.cc +443 -0
  361. package/src/runtime.h +64 -0
  362. package/src/script.cc +301 -0
  363. package/src/script.h +36 -0
  364. package/src/session.cc +860 -0
  365. package/src/session.h +42 -0
  366. package/src/signals.cc +334 -0
  367. package/src/signals.h +47 -0
  368. package/src/spawn.cc +95 -0
  369. package/src/spawn.h +27 -0
  370. package/src/usage_monitor.h +117 -0
  371. package/src/uv_context.cc +118 -0
  372. package/src/uv_context.h +40 -0
  373. package/src/win_delay_load_hook.cc +63 -0
  374. package/subprojects/frida-core.wrap +8 -0
  375. package/subprojects/nan.wrap +9 -0
  376. package/subprojects/packagefiles/nan.patch +13 -0
  377. package/test/data/index.ts +13 -0
  378. package/test/data/unixvictim-linux-x86 +0 -0
  379. package/test/data/unixvictim-linux-x86_64 +0 -0
  380. package/test/data/unixvictim-macos +0 -0
  381. package/test/device.ts +27 -0
  382. package/test/device_manager.ts +16 -0
  383. package/test/labrat.ts +32 -0
  384. package/test/script.ts +176 -0
  385. package/test/session.ts +73 -0
  386. package/tsconfig.json +18 -0
@@ -0,0 +1,479 @@
1
+ # SPDX-License-Identifier: Apache-2.0
2
+ # Copyright © 2021 The Meson Developers
3
+ # Copyright © 2021 Intel Corporation
4
+ from __future__ import annotations
5
+
6
+ """Keyword Argument type annotations."""
7
+
8
+ import typing as T
9
+
10
+ from typing_extensions import TypedDict, Literal, Protocol, NotRequired
11
+
12
+ from .. import build
13
+ from .. import coredata
14
+ from ..compilers import Compiler
15
+ from ..dependencies.base import Dependency
16
+ from ..mesonlib import EnvironmentVariables, MachineChoice, File, FileMode, FileOrString, OptionKey
17
+ from ..modules.cmake import CMakeSubprojectOptions
18
+ from ..programs import ExternalProgram
19
+ from .type_checking import PkgConfigDefineType, SourcesVarargsType
20
+
21
+ class FuncAddProjectArgs(TypedDict):
22
+
23
+ """Keyword Arguments for the add_*_arguments family of arguments.
24
+
25
+ including `add_global_arguments`, `add_project_arguments`, and their
26
+ link variants
27
+
28
+ Because of the use of a convertor function, we get the native keyword as
29
+ a MachineChoice instance already.
30
+ """
31
+
32
+ native: MachineChoice
33
+ language: T.List[str]
34
+
35
+
36
+ class BaseTest(TypedDict):
37
+
38
+ """Shared base for the Rust module."""
39
+
40
+ args: T.List[T.Union[str, File, build.Target]]
41
+ should_fail: bool
42
+ timeout: int
43
+ workdir: T.Optional[str]
44
+ depends: T.List[T.Union[build.CustomTarget, build.BuildTarget]]
45
+ priority: int
46
+ env: EnvironmentVariables
47
+ suite: T.List[str]
48
+
49
+
50
+ class FuncBenchmark(BaseTest):
51
+
52
+ """Keyword Arguments shared between `test` and `benchmark`."""
53
+
54
+ protocol: Literal['exitcode', 'tap', 'gtest', 'rust']
55
+
56
+
57
+ class FuncTest(FuncBenchmark):
58
+
59
+ """Keyword Arguments for `test`
60
+
61
+ `test` only adds the `is_parallel` argument over benchmark, so inheritance
62
+ is helpful here.
63
+ """
64
+
65
+ is_parallel: bool
66
+
67
+
68
+ class ExtractRequired(TypedDict):
69
+
70
+ """Keyword Arguments consumed by the `extract_required_kwargs` function.
71
+
72
+ Any function that uses the `required` keyword argument which accepts either
73
+ a boolean or a feature option should inherit it's arguments from this class.
74
+ """
75
+
76
+ required: T.Union[bool, coredata.UserFeatureOption]
77
+
78
+
79
+ class ExtractSearchDirs(TypedDict):
80
+
81
+ """Keyword arguments consumed by the `extract_search_dirs` function.
82
+
83
+ See the not in `ExtractRequired`
84
+ """
85
+
86
+ dirs: T.List[str]
87
+
88
+
89
+ class FuncGenerator(TypedDict):
90
+
91
+ """Keyword rguments for the generator function."""
92
+
93
+ arguments: T.List[str]
94
+ output: T.List[str]
95
+ depfile: T.Optional[str]
96
+ capture: bool
97
+ depends: T.List[T.Union[build.BuildTarget, build.CustomTarget]]
98
+
99
+
100
+ class GeneratorProcess(TypedDict):
101
+
102
+ """Keyword Arguments for generator.process."""
103
+
104
+ preserve_path_from: T.Optional[str]
105
+ extra_args: T.List[str]
106
+ env: EnvironmentVariables
107
+
108
+ class DependencyMethodPartialDependency(TypedDict):
109
+
110
+ """ Keyword Arguments for the dep.partial_dependency methods """
111
+
112
+ compile_args: bool
113
+ link_args: bool
114
+ links: bool
115
+ includes: bool
116
+ sources: bool
117
+
118
+ class BuildTargeMethodExtractAllObjects(TypedDict):
119
+ recursive: bool
120
+
121
+ class FuncInstallSubdir(TypedDict):
122
+
123
+ install_dir: str
124
+ strip_directory: bool
125
+ exclude_files: T.List[str]
126
+ exclude_directories: T.List[str]
127
+ install_mode: FileMode
128
+ follow_symlinks: T.Optional[bool]
129
+
130
+
131
+ class FuncInstallData(TypedDict):
132
+
133
+ install_dir: str
134
+ sources: T.List[FileOrString]
135
+ rename: T.List[str]
136
+ install_mode: FileMode
137
+ follow_symlinks: T.Optional[bool]
138
+
139
+
140
+ class FuncInstallHeaders(TypedDict):
141
+
142
+ install_dir: T.Optional[str]
143
+ install_mode: FileMode
144
+ subdir: T.Optional[str]
145
+ follow_symlinks: T.Optional[bool]
146
+
147
+
148
+ class FuncInstallMan(TypedDict):
149
+
150
+ install_dir: T.Optional[str]
151
+ install_mode: FileMode
152
+ locale: T.Optional[str]
153
+
154
+
155
+ class FuncImportModule(ExtractRequired):
156
+
157
+ disabler: bool
158
+
159
+
160
+ class FuncIncludeDirectories(TypedDict):
161
+
162
+ is_system: bool
163
+
164
+ class FuncAddLanguages(ExtractRequired):
165
+
166
+ native: T.Optional[bool]
167
+
168
+ class RunTarget(TypedDict):
169
+
170
+ command: T.List[T.Union[str, build.BuildTarget, build.CustomTarget, ExternalProgram, File]]
171
+ depends: T.List[T.Union[build.BuildTarget, build.CustomTarget]]
172
+ env: EnvironmentVariables
173
+
174
+
175
+ class CustomTarget(TypedDict):
176
+
177
+ build_always: bool
178
+ build_always_stale: T.Optional[bool]
179
+ build_by_default: T.Optional[bool]
180
+ capture: bool
181
+ command: T.List[T.Union[str, build.BuildTarget, build.CustomTarget,
182
+ build.CustomTargetIndex, ExternalProgram, File]]
183
+ console: bool
184
+ depend_files: T.List[FileOrString]
185
+ depends: T.List[T.Union[build.BuildTarget, build.CustomTarget]]
186
+ depfile: T.Optional[str]
187
+ env: EnvironmentVariables
188
+ feed: bool
189
+ input: T.List[T.Union[str, build.BuildTarget, build.CustomTarget, build.CustomTargetIndex,
190
+ build.ExtractedObjects, build.GeneratedList, ExternalProgram, File]]
191
+ install: bool
192
+ install_dir: T.List[T.Union[str, T.Literal[False]]]
193
+ install_mode: FileMode
194
+ install_tag: T.List[T.Optional[str]]
195
+ output: T.List[str]
196
+
197
+ class AddTestSetup(TypedDict):
198
+
199
+ exe_wrapper: T.List[T.Union[str, ExternalProgram]]
200
+ gdb: bool
201
+ timeout_multiplier: int
202
+ is_default: bool
203
+ exclude_suites: T.List[str]
204
+ env: EnvironmentVariables
205
+
206
+
207
+ class Project(TypedDict):
208
+
209
+ version: T.Optional[FileOrString]
210
+ meson_version: T.Optional[str]
211
+ default_options: T.Dict[OptionKey, T.Union[str, int, bool, T.List[str]]]
212
+ license: T.List[str]
213
+ subproject_dir: str
214
+
215
+
216
+ class _FoundProto(Protocol):
217
+
218
+ """Protocol for subdir arguments.
219
+
220
+ This allows us to define any object that has a found(self) -> bool method
221
+ """
222
+
223
+ def found(self) -> bool: ...
224
+
225
+
226
+ class Subdir(TypedDict):
227
+
228
+ if_found: T.List[_FoundProto]
229
+
230
+
231
+ class Summary(TypedDict):
232
+
233
+ section: str
234
+ bool_yn: bool
235
+ list_sep: T.Optional[str]
236
+
237
+
238
+ class FindProgram(ExtractRequired, ExtractSearchDirs):
239
+
240
+ default_options: T.Dict[OptionKey, T.Union[str, int, bool, T.List[str]]]
241
+ native: MachineChoice
242
+ version: T.List[str]
243
+
244
+
245
+ class RunCommand(TypedDict):
246
+
247
+ check: bool
248
+ capture: T.Optional[bool]
249
+ env: EnvironmentVariables
250
+
251
+
252
+ class FeatureOptionRequire(TypedDict):
253
+
254
+ error_message: T.Optional[str]
255
+
256
+
257
+ class DependencyPkgConfigVar(TypedDict):
258
+
259
+ default: T.Optional[str]
260
+ define_variable: PkgConfigDefineType
261
+
262
+
263
+ class DependencyGetVariable(TypedDict):
264
+
265
+ cmake: T.Optional[str]
266
+ pkgconfig: T.Optional[str]
267
+ configtool: T.Optional[str]
268
+ internal: T.Optional[str]
269
+ default_value: T.Optional[str]
270
+ pkgconfig_define: PkgConfigDefineType
271
+
272
+
273
+ class ConfigurationDataSet(TypedDict):
274
+
275
+ description: T.Optional[str]
276
+
277
+ class VcsTag(TypedDict):
278
+
279
+ command: T.List[T.Union[str, build.BuildTarget, build.CustomTarget,
280
+ build.CustomTargetIndex, ExternalProgram, File]]
281
+ fallback: T.Optional[str]
282
+ input: T.List[T.Union[str, build.BuildTarget, build.CustomTarget, build.CustomTargetIndex,
283
+ build.ExtractedObjects, build.GeneratedList, ExternalProgram, File]]
284
+ output: T.List[str]
285
+ replace_string: str
286
+
287
+
288
+ class ConfigureFile(TypedDict):
289
+
290
+ output: str
291
+ capture: bool
292
+ format: T.Literal['meson', 'cmake', 'cmake@']
293
+ output_format: T.Literal['c', 'json', 'nasm']
294
+ depfile: T.Optional[str]
295
+ install: T.Optional[bool]
296
+ install_dir: T.Union[str, T.Literal[False]]
297
+ install_mode: FileMode
298
+ install_tag: T.Optional[str]
299
+ encoding: str
300
+ command: T.Optional[T.List[T.Union[build.Executable, ExternalProgram, Compiler, File, str]]]
301
+ input: T.List[FileOrString]
302
+ configuration: T.Optional[T.Union[T.Dict[str, T.Union[str, int, bool]], build.ConfigurationData]]
303
+ macro_name: T.Optional[str]
304
+
305
+
306
+ class Subproject(ExtractRequired):
307
+
308
+ default_options: T.Dict[OptionKey, T.Union[str, int, bool, T.List[str]]]
309
+ version: T.List[str]
310
+ native: MachineChoice
311
+
312
+
313
+ class DoSubproject(ExtractRequired):
314
+
315
+ default_options: T.Dict[OptionKey, T.Union[str, int, bool, T.List[str]]]
316
+ version: T.List[str]
317
+ cmake_options: T.List[str]
318
+ options: T.Optional[CMakeSubprojectOptions]
319
+ for_machine: MachineChoice
320
+
321
+
322
+ class _BaseBuildTarget(TypedDict):
323
+
324
+ """Arguments used by all BuildTarget like functions.
325
+
326
+ This really exists because Jar is so different than all of the other
327
+ BuildTarget functions.
328
+ """
329
+
330
+ build_by_default: bool
331
+ build_rpath: str
332
+ extra_files: T.List[FileOrString]
333
+ gnu_symbol_visibility: str
334
+ install: bool
335
+ install_mode: FileMode
336
+ install_rpath: str
337
+ implicit_include_directories: bool
338
+ link_depends: T.List[T.Union[str, File, build.CustomTarget, build.CustomTargetIndex, build.BuildTarget]]
339
+ link_language: T.Optional[str]
340
+ name_prefix: T.Optional[str]
341
+ name_suffix: T.Optional[str]
342
+ native: MachineChoice
343
+ objects: T.List[build.ObjectTypes]
344
+ override_options: T.Dict[OptionKey, T.Union[str, int, bool, T.List[str]]]
345
+ depend_files: NotRequired[T.List[File]]
346
+ resources: T.List[str]
347
+
348
+
349
+ class _BuildTarget(_BaseBuildTarget):
350
+
351
+ """Arguments shared by non-JAR functions"""
352
+
353
+ d_debug: T.List[T.Union[str, int]]
354
+ d_import_dirs: T.List[T.Union[str, build.IncludeDirs]]
355
+ d_module_versions: T.List[T.Union[str, int]]
356
+ d_unittest: bool
357
+ rust_dependency_map: T.Dict[str, str]
358
+ sources: SourcesVarargsType
359
+ c_args: T.List[str]
360
+ cpp_args: T.List[str]
361
+ cuda_args: T.List[str]
362
+ fortran_args: T.List[str]
363
+ d_args: T.List[str]
364
+ objc_args: T.List[str]
365
+ objcpp_args: T.List[str]
366
+ rust_args: T.List[str]
367
+ vala_args: T.List[T.Union[str, File]] # Yes, Vala is really special
368
+ cs_args: T.List[str]
369
+ swift_args: T.List[str]
370
+ cython_args: T.List[str]
371
+ nasm_args: T.List[str]
372
+ masm_args: T.List[str]
373
+
374
+
375
+ class _LibraryMixin(TypedDict):
376
+
377
+ rust_abi: T.Optional[Literal['c', 'rust']]
378
+
379
+
380
+ class Executable(_BuildTarget):
381
+
382
+ export_dynamic: T.Optional[bool]
383
+ gui_app: T.Optional[bool]
384
+ implib: T.Optional[T.Union[str, bool]]
385
+ pie: T.Optional[bool]
386
+ vs_module_defs: T.Optional[T.Union[str, File, build.CustomTarget, build.CustomTargetIndex]]
387
+ win_subsystem: T.Optional[str]
388
+
389
+
390
+ class _StaticLibMixin(TypedDict):
391
+
392
+ prelink: bool
393
+ pic: T.Optional[bool]
394
+
395
+
396
+ class StaticLibrary(_BuildTarget, _StaticLibMixin, _LibraryMixin):
397
+ pass
398
+
399
+
400
+ class _SharedLibMixin(TypedDict):
401
+
402
+ darwin_versions: T.Optional[T.Tuple[str, str]]
403
+ soversion: T.Optional[str]
404
+ version: T.Optional[str]
405
+ vs_module_defs: T.Optional[T.Union[str, File, build.CustomTarget, build.CustomTargetIndex]]
406
+
407
+
408
+ class SharedLibrary(_BuildTarget, _SharedLibMixin, _LibraryMixin):
409
+ pass
410
+
411
+
412
+ class SharedModule(_BuildTarget, _LibraryMixin):
413
+
414
+ vs_module_defs: T.Optional[T.Union[str, File, build.CustomTarget, build.CustomTargetIndex]]
415
+
416
+
417
+ class Library(_BuildTarget, _SharedLibMixin, _StaticLibMixin, _LibraryMixin):
418
+
419
+ """For library, both_library, and as a base for build_target"""
420
+
421
+ c_static_args: NotRequired[T.List[str]]
422
+ c_shared_args: NotRequired[T.List[str]]
423
+ cpp_static_args: NotRequired[T.List[str]]
424
+ cpp_shared_args: NotRequired[T.List[str]]
425
+ cuda_static_args: NotRequired[T.List[str]]
426
+ cuda_shared_args: NotRequired[T.List[str]]
427
+ fortran_static_args: NotRequired[T.List[str]]
428
+ fortran_shared_args: NotRequired[T.List[str]]
429
+ d_static_args: NotRequired[T.List[str]]
430
+ d_shared_args: NotRequired[T.List[str]]
431
+ objc_static_args: NotRequired[T.List[str]]
432
+ objc_shared_args: NotRequired[T.List[str]]
433
+ objcpp_static_args: NotRequired[T.List[str]]
434
+ objcpp_shared_args: NotRequired[T.List[str]]
435
+ rust_static_args: NotRequired[T.List[str]]
436
+ rust_shared_args: NotRequired[T.List[str]]
437
+ vala_static_args: NotRequired[T.List[T.Union[str, File]]] # Yes, Vala is really special
438
+ vala_shared_args: NotRequired[T.List[T.Union[str, File]]] # Yes, Vala is really special
439
+ cs_static_args: NotRequired[T.List[str]]
440
+ cs_shared_args: NotRequired[T.List[str]]
441
+ swift_static_args: NotRequired[T.List[str]]
442
+ swift_shared_args: NotRequired[T.List[str]]
443
+ cython_static_args: NotRequired[T.List[str]]
444
+ cython_shared_args: NotRequired[T.List[str]]
445
+ nasm_static_args: NotRequired[T.List[str]]
446
+ nasm_shared_args: NotRequired[T.List[str]]
447
+ masm_static_args: NotRequired[T.List[str]]
448
+ masm_shared_args: NotRequired[T.List[str]]
449
+
450
+
451
+ class BuildTarget(Library):
452
+
453
+ target_type: Literal['executable', 'shared_library', 'static_library',
454
+ 'shared_module', 'both_libraries', 'library', 'jar']
455
+
456
+
457
+ class Jar(_BaseBuildTarget):
458
+
459
+ main_class: str
460
+ java_resources: T.Optional[build.StructuredSources]
461
+ sources: T.Union[str, File, build.CustomTarget, build.CustomTargetIndex, build.GeneratedList, build.ExtractedObjects, build.BuildTarget]
462
+ java_args: T.List[str]
463
+
464
+
465
+ class FuncDeclareDependency(TypedDict):
466
+
467
+ compile_args: T.List[str]
468
+ d_import_dirs: T.List[T.Union[build.IncludeDirs, str]]
469
+ d_module_versions: T.List[T.Union[str, int]]
470
+ dependencies: T.List[Dependency]
471
+ extra_files: T.List[FileOrString]
472
+ include_directories: T.List[T.Union[build.IncludeDirs, str]]
473
+ link_args: T.List[str]
474
+ link_whole: T.List[T.Union[build.StaticLibrary, build.CustomTarget, build.CustomTargetIndex]]
475
+ link_with: T.List[build.LibTypes]
476
+ objects: T.List[build.ExtractedObjects]
477
+ sources: T.List[T.Union[FileOrString, build.GeneratedTypes]]
478
+ variables: T.Dict[str, str]
479
+ version: T.Optional[str]