koffi 2.3.8 → 2.3.10-beta.1

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 (83) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/LICENSE.txt +22 -165
  3. package/README.md +2 -2
  4. package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_darwin_arm64/koffi.node +0 -0
  5. package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_darwin_x64/koffi.node +0 -0
  6. package/build/2.3.10-beta.1/koffi_freebsd_arm64/koffi.node +0 -0
  7. package/build/2.3.10-beta.1/koffi_freebsd_ia32/koffi.node +0 -0
  8. package/build/2.3.10-beta.1/koffi_freebsd_x64/koffi.node +0 -0
  9. package/build/2.3.10-beta.1/koffi_linux_arm32hf/koffi.node +0 -0
  10. package/build/2.3.10-beta.1/koffi_linux_arm64/koffi.node +0 -0
  11. package/build/2.3.10-beta.1/koffi_linux_ia32/koffi.node +0 -0
  12. package/build/2.3.10-beta.1/koffi_linux_riscv64hf64/koffi.node +0 -0
  13. package/build/2.3.10-beta.1/koffi_linux_x64/koffi.node +0 -0
  14. package/build/2.3.10-beta.1/koffi_openbsd_ia32/koffi.node +0 -0
  15. package/build/2.3.10-beta.1/koffi_openbsd_x64/koffi.node +0 -0
  16. package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_arm64/koffi.node +0 -0
  17. package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_ia32/koffi.node +0 -0
  18. package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_x64/koffi.node +0 -0
  19. package/doc/index.rst +2 -2
  20. package/doc/static/custom.css +18 -10
  21. package/package.json +7 -7
  22. package/src/cnoke/LICENSE.txt +22 -165
  23. package/src/cnoke/assets/FindCNoke.cmake +18 -10
  24. package/src/cnoke/assets/win_delay_hook.c +18 -10
  25. package/src/cnoke/cnoke.js +18 -10
  26. package/src/cnoke/package.json +1 -1
  27. package/src/cnoke/src/builder.js +18 -10
  28. package/src/cnoke/src/index.js +18 -10
  29. package/src/cnoke/src/tools.js +18 -10
  30. package/src/core/libcc/libcc.cc +93 -33
  31. package/src/core/libcc/libcc.hh +31 -14
  32. package/src/{koffi/src/index.d.ts → index.d.ts} +22 -14
  33. package/src/index.js +50 -0
  34. package/src/koffi/CMakeLists.txt +27 -19
  35. package/src/koffi/src/abi_arm32.cc +19 -11
  36. package/src/koffi/src/abi_arm32_asm.S +211 -0
  37. package/src/koffi/src/abi_arm64.cc +19 -11
  38. package/src/koffi/src/abi_arm64_asm.S +238 -0
  39. package/src/koffi/src/abi_arm64_asm.asm +207 -0
  40. package/src/koffi/src/abi_riscv64.cc +19 -11
  41. package/src/koffi/src/abi_riscv64_asm.S +239 -0
  42. package/src/koffi/src/abi_x64_sysv.cc +19 -11
  43. package/src/koffi/src/abi_x64_sysv_asm.S +272 -0
  44. package/src/koffi/src/abi_x64_win.cc +19 -11
  45. package/src/koffi/src/abi_x64_win_asm.asm +203 -0
  46. package/src/koffi/src/abi_x86.cc +19 -11
  47. package/src/koffi/src/abi_x86_asm.S +213 -0
  48. package/src/koffi/src/abi_x86_asm.asm +191 -0
  49. package/src/koffi/src/call.cc +18 -10
  50. package/src/koffi/src/call.hh +18 -10
  51. package/src/koffi/src/ffi.cc +18 -10
  52. package/src/koffi/src/ffi.hh +18 -10
  53. package/src/koffi/src/parser.cc +18 -10
  54. package/src/koffi/src/parser.hh +18 -10
  55. package/src/koffi/src/{abi_arm64_fwd.asm → trampolines/armasm.inc} +18 -193
  56. package/src/koffi/src/{abi_arm64_fwd.S → trampolines/gnu.inc} +18 -226
  57. package/src/koffi/src/{abi_x86_fwd.asm → trampolines/masm32.inc} +1042 -1203
  58. package/src/koffi/src/{abi_x64_win_fwd.asm → trampolines/masm64.inc} +1042 -1215
  59. package/src/koffi/src/{abi_trampolines.inc → trampolines/prototypes.inc} +18 -10
  60. package/src/koffi/src/util.cc +18 -10
  61. package/src/koffi/src/util.hh +18 -10
  62. package/src/koffi/src/win32.hh +18 -10
  63. package/src/koffi/build/2.3.8/koffi_freebsd_arm64/koffi.node +0 -0
  64. package/src/koffi/build/2.3.8/koffi_freebsd_ia32/koffi.node +0 -0
  65. package/src/koffi/build/2.3.8/koffi_freebsd_x64/koffi.node +0 -0
  66. package/src/koffi/build/2.3.8/koffi_linux_arm32hf/koffi.node +0 -0
  67. package/src/koffi/build/2.3.8/koffi_linux_arm64/koffi.node +0 -0
  68. package/src/koffi/build/2.3.8/koffi_linux_ia32/koffi.node +0 -0
  69. package/src/koffi/build/2.3.8/koffi_linux_riscv64hf64/koffi.node +0 -0
  70. package/src/koffi/build/2.3.8/koffi_linux_x64/koffi.node +0 -0
  71. package/src/koffi/build/2.3.8/koffi_openbsd_ia32/koffi.node +0 -0
  72. package/src/koffi/build/2.3.8/koffi_openbsd_x64/koffi.node +0 -0
  73. package/src/koffi/src/abi_arm32_fwd.S +0 -6344
  74. package/src/koffi/src/abi_riscv64_fwd.S +0 -6375
  75. package/src/koffi/src/abi_x64_sysv_fwd.S +0 -6410
  76. package/src/koffi/src/abi_x86_fwd.S +0 -6346
  77. package/src/koffi/src/index.js +0 -57
  78. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_arm64/koffi.exp +0 -0
  79. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_arm64/koffi.lib +0 -0
  80. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_ia32/koffi.exp +0 -0
  81. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_ia32/koffi.lib +0 -0
  82. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_x64/koffi.exp +0 -0
  83. /package/{src/koffi/build/2.3.8 → build/2.3.10-beta.1}/koffi_win32_x64/koffi.lib +0 -0
@@ -1,57 +0,0 @@
1
- // This program is free software: you can redistribute it and/or modify
2
- // it under the terms of the GNU Lesser General Public License as published by
3
- // the Free Software Foundation, either version 3 of the License, or
4
- // (at your option) any later version.
5
- //
6
- // This program is distributed in the hope that it will be useful,
7
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
8
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9
- // GNU Lesser General Public License for more details.
10
- //
11
- // You should have received a copy of the GNU Lesser General Public License
12
- // along with this program. If not, see https://www.gnu.org/licenses/.
13
-
14
- 'use strict';
15
-
16
- const cnoke = require('../../cnoke/src/index.js');
17
- const util = require('util');
18
- const fs = require('fs');
19
-
20
- const pkg = (() => {
21
- try {
22
- return require('../../../package.json');
23
- } catch (err) {
24
- return require('../package.json');
25
- }
26
- })();
27
-
28
- if (process.versions.napi == null || process.versions.napi < pkg.cnoke.napi) {
29
- let major = parseInt(process.versions.node, 10);
30
- let required = cnoke.get_napi_version(pkg.cnoke.napi, major);
31
-
32
- if (required != null) {
33
- throw new Error(`Project ${pkg.name} requires Node >= ${required} in the Node ${major}.x branch (N-API >= ${pkg.cnoke.napi})`);
34
- } else {
35
- throw new Error(`Project ${pkg.name} does not support the Node ${major}.x branch (N-API < ${pkg.cnoke.napi})`);
36
- }
37
- }
38
-
39
- let arch = cnoke.determine_arch();
40
- let filename = __dirname + `/../build/${pkg.version}/koffi_${process.platform}_${arch}/koffi.node`;
41
-
42
- // Development build
43
- if (!fs.existsSync(filename)) {
44
- let dev_filename = __dirname + '/../build/koffi.node';
45
-
46
- if (fs.existsSync(dev_filename))
47
- filename = dev_filename;
48
- }
49
-
50
- let native = require(filename);
51
-
52
- module.exports = {
53
- ...native,
54
-
55
- // Deprecated functions
56
- handle: util.deprecate(native.opaque, 'The koffi.handle() function was deprecated in Koffi 2.1, use koffi.opaque() instead', 'KOFFI001')
57
- };