ffi 1.16.3 → 1.17.0-java

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 (550) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/CHANGELOG.md +42 -0
  4. data/Gemfile +9 -2
  5. data/README.md +1 -1
  6. data/Rakefile +17 -5
  7. data/lib/ffi/autopointer.rb +1 -9
  8. data/lib/ffi/dynamic_library.rb +34 -5
  9. data/lib/ffi/enum.rb +0 -1
  10. data/lib/ffi/function.rb +1 -1
  11. data/lib/ffi/io.rb +2 -2
  12. data/lib/ffi/library.rb +23 -23
  13. data/lib/ffi/platform/aarch64-linux/types.conf +74 -3
  14. data/lib/ffi/pointer.rb +6 -6
  15. data/lib/ffi/struct.rb +4 -4
  16. data/lib/ffi/struct_layout.rb +2 -2
  17. data/lib/ffi/struct_layout_builder.rb +8 -8
  18. data/lib/ffi/types.rb +51 -49
  19. data/lib/ffi/version.rb +1 -1
  20. data/sig/ffi/abstract_memory.rbs +165 -0
  21. data/sig/ffi/auto_pointer.rbs +27 -0
  22. data/sig/ffi/buffer.rbs +18 -0
  23. data/sig/ffi/data_converter.rbs +10 -0
  24. data/sig/ffi/dynamic_library.rbs +9 -0
  25. data/sig/ffi/enum.rbs +38 -0
  26. data/sig/ffi/function.rbs +39 -0
  27. data/sig/ffi/library.rbs +42 -0
  28. data/sig/ffi/native_type.rbs +86 -0
  29. data/sig/ffi/pointer.rbs +42 -0
  30. data/sig/ffi/struct.rbs +76 -0
  31. data/sig/ffi/struct_by_reference.rbs +11 -0
  32. data/sig/ffi/struct_by_value.rbs +7 -0
  33. data/sig/ffi/struct_layout.rbs +9 -0
  34. data/sig/ffi/struct_layout_builder.rbs +5 -0
  35. data/sig/ffi/type.rbs +39 -0
  36. data/sig/ffi.rbs +26 -0
  37. data.tar.gz.sig +0 -0
  38. metadata +34 -532
  39. metadata.gz.sig +0 -0
  40. data/ext/ffi_c/AbstractMemory.c +0 -1128
  41. data/ext/ffi_c/AbstractMemory.h +0 -176
  42. data/ext/ffi_c/ArrayType.c +0 -198
  43. data/ext/ffi_c/ArrayType.h +0 -60
  44. data/ext/ffi_c/Buffer.c +0 -417
  45. data/ext/ffi_c/Call.c +0 -498
  46. data/ext/ffi_c/Call.h +0 -107
  47. data/ext/ffi_c/ClosurePool.c +0 -333
  48. data/ext/ffi_c/ClosurePool.h +0 -59
  49. data/ext/ffi_c/DynamicLibrary.c +0 -397
  50. data/ext/ffi_c/DynamicLibrary.h +0 -98
  51. data/ext/ffi_c/Function.c +0 -1063
  52. data/ext/ffi_c/Function.h +0 -84
  53. data/ext/ffi_c/FunctionInfo.c +0 -322
  54. data/ext/ffi_c/LastError.c +0 -243
  55. data/ext/ffi_c/LastError.h +0 -47
  56. data/ext/ffi_c/LongDouble.c +0 -65
  57. data/ext/ffi_c/LongDouble.h +0 -47
  58. data/ext/ffi_c/MappedType.c +0 -211
  59. data/ext/ffi_c/MappedType.h +0 -57
  60. data/ext/ffi_c/MemoryPointer.c +0 -219
  61. data/ext/ffi_c/MemoryPointer.h +0 -49
  62. data/ext/ffi_c/MethodHandle.c +0 -350
  63. data/ext/ffi_c/MethodHandle.h +0 -56
  64. data/ext/ffi_c/Platform.c +0 -78
  65. data/ext/ffi_c/Platform.h +0 -45
  66. data/ext/ffi_c/Pointer.c +0 -546
  67. data/ext/ffi_c/Pointer.h +0 -60
  68. data/ext/ffi_c/Struct.c +0 -897
  69. data/ext/ffi_c/Struct.h +0 -115
  70. data/ext/ffi_c/StructByValue.c +0 -177
  71. data/ext/ffi_c/StructByValue.h +0 -55
  72. data/ext/ffi_c/StructLayout.c +0 -769
  73. data/ext/ffi_c/Thread.c +0 -129
  74. data/ext/ffi_c/Thread.h +0 -76
  75. data/ext/ffi_c/Type.c +0 -447
  76. data/ext/ffi_c/Type.h +0 -63
  77. data/ext/ffi_c/Types.c +0 -138
  78. data/ext/ffi_c/Types.h +0 -88
  79. data/ext/ffi_c/Variadic.c +0 -345
  80. data/ext/ffi_c/compat.h +0 -82
  81. data/ext/ffi_c/extconf.rb +0 -115
  82. data/ext/ffi_c/ffi.c +0 -97
  83. data/ext/ffi_c/libffi/.appveyor/site.exp +0 -16
  84. data/ext/ffi_c/libffi/.appveyor/unix-noexec.exp +0 -7
  85. data/ext/ffi_c/libffi/.appveyor.yml +0 -84
  86. data/ext/ffi_c/libffi/.ci/ar-lib +0 -270
  87. data/ext/ffi_c/libffi/.ci/bfin-sim.exp +0 -58
  88. data/ext/ffi_c/libffi/.ci/build-cross-in-container.sh +0 -18
  89. data/ext/ffi_c/libffi/.ci/build-in-container.sh +0 -10
  90. data/ext/ffi_c/libffi/.ci/build.sh +0 -124
  91. data/ext/ffi_c/libffi/.ci/compile +0 -351
  92. data/ext/ffi_c/libffi/.ci/install.sh +0 -78
  93. data/ext/ffi_c/libffi/.ci/m32r-sim.exp +0 -58
  94. data/ext/ffi_c/libffi/.ci/moxie-sim.exp +0 -60
  95. data/ext/ffi_c/libffi/.ci/msvs-detect +0 -1103
  96. data/ext/ffi_c/libffi/.ci/or1k-sim.exp +0 -58
  97. data/ext/ffi_c/libffi/.ci/powerpc-eabisim.exp +0 -58
  98. data/ext/ffi_c/libffi/.ci/site.exp +0 -29
  99. data/ext/ffi_c/libffi/.ci/wine-sim.exp +0 -55
  100. data/ext/ffi_c/libffi/.circleci/config.yml +0 -156
  101. data/ext/ffi_c/libffi/.gitattributes +0 -4
  102. data/ext/ffi_c/libffi/.github/issue_template.md +0 -10
  103. data/ext/ffi_c/libffi/.github/workflows/build.yml +0 -460
  104. data/ext/ffi_c/libffi/.github/workflows/emscripten.yml +0 -171
  105. data/ext/ffi_c/libffi/.gitignore +0 -46
  106. data/ext/ffi_c/libffi/ChangeLog.old +0 -7407
  107. data/ext/ffi_c/libffi/LICENSE +0 -21
  108. data/ext/ffi_c/libffi/LICENSE-BUILDTOOLS +0 -353
  109. data/ext/ffi_c/libffi/Makefile.am +0 -157
  110. data/ext/ffi_c/libffi/Makefile.in +0 -2127
  111. data/ext/ffi_c/libffi/README.md +0 -526
  112. data/ext/ffi_c/libffi/acinclude.m4 +0 -377
  113. data/ext/ffi_c/libffi/autogen.sh +0 -2
  114. data/ext/ffi_c/libffi/compile +0 -348
  115. data/ext/ffi_c/libffi/config.guess +0 -1754
  116. data/ext/ffi_c/libffi/config.sub +0 -1892
  117. data/ext/ffi_c/libffi/configure +0 -22791
  118. data/ext/ffi_c/libffi/configure.ac +0 -451
  119. data/ext/ffi_c/libffi/configure.host +0 -337
  120. data/ext/ffi_c/libffi/doc/Makefile.am +0 -3
  121. data/ext/ffi_c/libffi/doc/Makefile.in +0 -818
  122. data/ext/ffi_c/libffi/doc/libffi.texi +0 -1046
  123. data/ext/ffi_c/libffi/doc/version.texi +0 -4
  124. data/ext/ffi_c/libffi/fficonfig.h.in +0 -188
  125. data/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +0 -312
  126. data/ext/ffi_c/libffi/include/Makefile.am +0 -9
  127. data/ext/ffi_c/libffi/include/Makefile.in +0 -609
  128. data/ext/ffi_c/libffi/include/ffi.h.in +0 -527
  129. data/ext/ffi_c/libffi/include/ffi_cfi.h +0 -76
  130. data/ext/ffi_c/libffi/include/ffi_common.h +0 -182
  131. data/ext/ffi_c/libffi/include/tramp.h +0 -45
  132. data/ext/ffi_c/libffi/install-sh +0 -541
  133. data/ext/ffi_c/libffi/libffi.map.in +0 -76
  134. data/ext/ffi_c/libffi/libffi.pc.in +0 -11
  135. data/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +0 -997
  136. data/ext/ffi_c/libffi/libtool-ldflags +0 -106
  137. data/ext/ffi_c/libffi/libtool-version +0 -29
  138. data/ext/ffi_c/libffi/ltmain.sh +0 -11448
  139. data/ext/ffi_c/libffi/m4/asmcfi.m4 +0 -13
  140. data/ext/ffi_c/libffi/m4/ax_append_flag.m4 +0 -50
  141. data/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -198
  142. data/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -158
  143. data/ext/ffi_c/libffi/m4/ax_check_compile_flag.m4 +0 -53
  144. data/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -119
  145. data/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -49
  146. data/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -302
  147. data/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -267
  148. data/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -89
  149. data/ext/ffi_c/libffi/m4/ax_prepend_flag.m4 +0 -51
  150. data/ext/ffi_c/libffi/m4/ax_require_defined.m4 +0 -37
  151. data/ext/ffi_c/libffi/make_sunver.pl +0 -333
  152. data/ext/ffi_c/libffi/man/Makefile.am +0 -8
  153. data/ext/ffi_c/libffi/man/Makefile.in +0 -565
  154. data/ext/ffi_c/libffi/man/ffi.3 +0 -41
  155. data/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  156. data/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -68
  157. data/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +0 -73
  158. data/ext/ffi_c/libffi/missing +0 -215
  159. data/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.sln +0 -33
  160. data/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj +0 -130
  161. data/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.filters +0 -57
  162. data/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.user +0 -4
  163. data/ext/ffi_c/libffi/msvc_build/aarch64/aarch64_include/ffi.h +0 -511
  164. data/ext/ffi_c/libffi/msvc_build/aarch64/aarch64_include/fficonfig.h +0 -219
  165. data/ext/ffi_c/libffi/msvcc.sh +0 -353
  166. data/ext/ffi_c/libffi/src/aarch64/ffi.c +0 -1129
  167. data/ext/ffi_c/libffi/src/aarch64/ffitarget.h +0 -97
  168. data/ext/ffi_c/libffi/src/aarch64/internal.h +0 -100
  169. data/ext/ffi_c/libffi/src/aarch64/sysv.S +0 -543
  170. data/ext/ffi_c/libffi/src/aarch64/win64_armasm.S +0 -506
  171. data/ext/ffi_c/libffi/src/alpha/ffi.c +0 -521
  172. data/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -57
  173. data/ext/ffi_c/libffi/src/alpha/internal.h +0 -23
  174. data/ext/ffi_c/libffi/src/alpha/osf.S +0 -282
  175. data/ext/ffi_c/libffi/src/arc/arcompact.S +0 -210
  176. data/ext/ffi_c/libffi/src/arc/ffi.c +0 -443
  177. data/ext/ffi_c/libffi/src/arc/ffitarget.h +0 -67
  178. data/ext/ffi_c/libffi/src/arm/ffi.c +0 -921
  179. data/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -89
  180. data/ext/ffi_c/libffi/src/arm/internal.h +0 -17
  181. data/ext/ffi_c/libffi/src/arm/sysv.S +0 -456
  182. data/ext/ffi_c/libffi/src/arm/sysv_msvc_arm32.S +0 -311
  183. data/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  184. data/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -55
  185. data/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  186. data/ext/ffi_c/libffi/src/bfin/ffi.c +0 -196
  187. data/ext/ffi_c/libffi/src/bfin/ffitarget.h +0 -43
  188. data/ext/ffi_c/libffi/src/bfin/sysv.S +0 -179
  189. data/ext/ffi_c/libffi/src/closures.c +0 -1107
  190. data/ext/ffi_c/libffi/src/cris/ffi.c +0 -386
  191. data/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -56
  192. data/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  193. data/ext/ffi_c/libffi/src/csky/ffi.c +0 -395
  194. data/ext/ffi_c/libffi/src/csky/ffitarget.h +0 -63
  195. data/ext/ffi_c/libffi/src/csky/sysv.S +0 -371
  196. data/ext/ffi_c/libffi/src/debug.c +0 -64
  197. data/ext/ffi_c/libffi/src/dlmalloc.c +0 -5171
  198. data/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  199. data/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  200. data/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -62
  201. data/ext/ffi_c/libffi/src/ia64/ffi.c +0 -616
  202. data/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -56
  203. data/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  204. data/ext/ffi_c/libffi/src/ia64/unix.S +0 -585
  205. data/ext/ffi_c/libffi/src/java_raw_api.c +0 -374
  206. data/ext/ffi_c/libffi/src/kvx/asm.h +0 -5
  207. data/ext/ffi_c/libffi/src/kvx/ffi.c +0 -273
  208. data/ext/ffi_c/libffi/src/kvx/ffitarget.h +0 -75
  209. data/ext/ffi_c/libffi/src/kvx/sysv.S +0 -127
  210. data/ext/ffi_c/libffi/src/loongarch64/ffi.c +0 -621
  211. data/ext/ffi_c/libffi/src/loongarch64/ffitarget.h +0 -82
  212. data/ext/ffi_c/libffi/src/loongarch64/sysv.S +0 -327
  213. data/ext/ffi_c/libffi/src/m32r/ffi.c +0 -249
  214. data/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -53
  215. data/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  216. data/ext/ffi_c/libffi/src/m68k/ffi.c +0 -362
  217. data/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -54
  218. data/ext/ffi_c/libffi/src/m68k/sysv.S +0 -357
  219. data/ext/ffi_c/libffi/src/m88k/ffi.c +0 -400
  220. data/ext/ffi_c/libffi/src/m88k/ffitarget.h +0 -49
  221. data/ext/ffi_c/libffi/src/m88k/obsd.S +0 -209
  222. data/ext/ffi_c/libffi/src/metag/ffi.c +0 -330
  223. data/ext/ffi_c/libffi/src/metag/ffitarget.h +0 -53
  224. data/ext/ffi_c/libffi/src/metag/sysv.S +0 -311
  225. data/ext/ffi_c/libffi/src/microblaze/ffi.c +0 -321
  226. data/ext/ffi_c/libffi/src/microblaze/ffitarget.h +0 -53
  227. data/ext/ffi_c/libffi/src/microblaze/sysv.S +0 -302
  228. data/ext/ffi_c/libffi/src/mips/ffi.c +0 -1309
  229. data/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -251
  230. data/ext/ffi_c/libffi/src/mips/n32.S +0 -772
  231. data/ext/ffi_c/libffi/src/mips/o32.S +0 -561
  232. data/ext/ffi_c/libffi/src/moxie/eabi.S +0 -101
  233. data/ext/ffi_c/libffi/src/moxie/ffi.c +0 -310
  234. data/ext/ffi_c/libffi/src/moxie/ffitarget.h +0 -52
  235. data/ext/ffi_c/libffi/src/nios2/ffi.c +0 -304
  236. data/ext/ffi_c/libffi/src/nios2/ffitarget.h +0 -52
  237. data/ext/ffi_c/libffi/src/nios2/sysv.S +0 -136
  238. data/ext/ffi_c/libffi/src/or1k/ffi.c +0 -341
  239. data/ext/ffi_c/libffi/src/or1k/ffitarget.h +0 -58
  240. data/ext/ffi_c/libffi/src/or1k/sysv.S +0 -107
  241. data/ext/ffi_c/libffi/src/pa/ffi.c +0 -673
  242. data/ext/ffi_c/libffi/src/pa/ffi64.c +0 -614
  243. data/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -94
  244. data/ext/ffi_c/libffi/src/pa/hpux32.S +0 -417
  245. data/ext/ffi_c/libffi/src/pa/hpux64.S +0 -681
  246. data/ext/ffi_c/libffi/src/pa/linux.S +0 -427
  247. data/ext/ffi_c/libffi/src/powerpc/aix.S +0 -566
  248. data/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -694
  249. data/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  250. data/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -378
  251. data/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -571
  252. data/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -175
  253. data/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1452
  254. data/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +0 -1153
  255. data/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +0 -105
  256. data/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +0 -923
  257. data/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -204
  258. data/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -293
  259. data/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -566
  260. data/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -397
  261. data/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -173
  262. data/ext/ffi_c/libffi/src/powerpc/t-aix +0 -5
  263. data/ext/ffi_c/libffi/src/prep_cif.c +0 -283
  264. data/ext/ffi_c/libffi/src/raw_api.c +0 -267
  265. data/ext/ffi_c/libffi/src/riscv/ffi.c +0 -514
  266. data/ext/ffi_c/libffi/src/riscv/ffitarget.h +0 -69
  267. data/ext/ffi_c/libffi/src/riscv/sysv.S +0 -293
  268. data/ext/ffi_c/libffi/src/s390/ffi.c +0 -756
  269. data/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -70
  270. data/ext/ffi_c/libffi/src/s390/internal.h +0 -11
  271. data/ext/ffi_c/libffi/src/s390/sysv.S +0 -325
  272. data/ext/ffi_c/libffi/src/sh/ffi.c +0 -717
  273. data/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -54
  274. data/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  275. data/ext/ffi_c/libffi/src/sh64/ffi.c +0 -469
  276. data/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -58
  277. data/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  278. data/ext/ffi_c/libffi/src/sparc/ffi.c +0 -468
  279. data/ext/ffi_c/libffi/src/sparc/ffi64.c +0 -624
  280. data/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -81
  281. data/ext/ffi_c/libffi/src/sparc/internal.h +0 -26
  282. data/ext/ffi_c/libffi/src/sparc/v8.S +0 -443
  283. data/ext/ffi_c/libffi/src/sparc/v9.S +0 -440
  284. data/ext/ffi_c/libffi/src/tile/ffi.c +0 -355
  285. data/ext/ffi_c/libffi/src/tile/ffitarget.h +0 -65
  286. data/ext/ffi_c/libffi/src/tile/tile.S +0 -360
  287. data/ext/ffi_c/libffi/src/tramp.c +0 -716
  288. data/ext/ffi_c/libffi/src/types.c +0 -108
  289. data/ext/ffi_c/libffi/src/vax/elfbsd.S +0 -195
  290. data/ext/ffi_c/libffi/src/vax/ffi.c +0 -276
  291. data/ext/ffi_c/libffi/src/vax/ffitarget.h +0 -49
  292. data/ext/ffi_c/libffi/src/wasm32/ffi.c +0 -934
  293. data/ext/ffi_c/libffi/src/wasm32/ffitarget.h +0 -62
  294. data/ext/ffi_c/libffi/src/x86/asmnames.h +0 -30
  295. data/ext/ffi_c/libffi/src/x86/ffi.c +0 -832
  296. data/ext/ffi_c/libffi/src/x86/ffi64.c +0 -950
  297. data/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -164
  298. data/ext/ffi_c/libffi/src/x86/ffiw64.c +0 -361
  299. data/ext/ffi_c/libffi/src/x86/internal.h +0 -43
  300. data/ext/ffi_c/libffi/src/x86/internal64.h +0 -36
  301. data/ext/ffi_c/libffi/src/x86/sysv.S +0 -1272
  302. data/ext/ffi_c/libffi/src/x86/sysv_intel.S +0 -998
  303. data/ext/ffi_c/libffi/src/x86/unix64.S +0 -711
  304. data/ext/ffi_c/libffi/src/x86/win64.S +0 -254
  305. data/ext/ffi_c/libffi/src/x86/win64_intel.S +0 -238
  306. data/ext/ffi_c/libffi/src/xtensa/ffi.c +0 -306
  307. data/ext/ffi_c/libffi/src/xtensa/ffitarget.h +0 -57
  308. data/ext/ffi_c/libffi/src/xtensa/sysv.S +0 -268
  309. data/ext/ffi_c/libffi/stamp-h.in +0 -1
  310. data/ext/ffi_c/libffi/testsuite/Makefile.am +0 -135
  311. data/ext/ffi_c/libffi/testsuite/Makefile.in +0 -664
  312. data/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  313. data/ext/ffi_c/libffi/testsuite/emscripten/build-tests.sh +0 -54
  314. data/ext/ffi_c/libffi/testsuite/emscripten/build.sh +0 -63
  315. data/ext/ffi_c/libffi/testsuite/emscripten/conftest.py +0 -80
  316. data/ext/ffi_c/libffi/testsuite/emscripten/node-tests.sh +0 -48
  317. data/ext/ffi_c/libffi/testsuite/emscripten/test.html +0 -7
  318. data/ext/ffi_c/libffi/testsuite/emscripten/test_libffi.py +0 -51
  319. data/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -682
  320. data/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -283
  321. data/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  322. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/Makefile +0 -28
  323. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/README +0 -78
  324. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/alignof.h +0 -50
  325. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/bhaible.exp +0 -63
  326. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-call.c +0 -1746
  327. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-callback.c +0 -2885
  328. data/ext/ffi_c/libffi/testsuite/libffi.bhaible/testcases.c +0 -747
  329. data/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +0 -46
  330. data/ext/ffi_c/libffi/testsuite/libffi.call/align_stdcall.c +0 -46
  331. data/ext/ffi_c/libffi/testsuite/libffi.call/bpo_38748.c +0 -41
  332. data/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -54
  333. data/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  334. data/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -163
  335. data/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  336. data/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -60
  337. data/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -61
  338. data/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -74
  339. data/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  340. data/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +0 -110
  341. data/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -59
  342. data/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +0 -57
  343. data/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +0 -70
  344. data/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +0 -78
  345. data/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -52
  346. data/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +0 -46
  347. data/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +0 -127
  348. data/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  349. data/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc_tc.c +0 -114
  350. data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -36
  351. data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  352. data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  353. data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  354. data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  355. data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  356. data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  357. data/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  358. data/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  359. data/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -48
  360. data/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  361. data/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -42
  362. data/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  363. data/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -42
  364. data/ext/ffi_c/libffi/testsuite/libffi.call/s55.c +0 -60
  365. data/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -43
  366. data/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +0 -49
  367. data/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +0 -49
  368. data/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +0 -55
  369. data/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -67
  370. data/ext/ffi_c/libffi/testsuite/libffi.call/struct10.c +0 -57
  371. data/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  372. data/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -60
  373. data/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -64
  374. data/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -66
  375. data/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  376. data/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  377. data/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -81
  378. data/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -68
  379. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_2.c +0 -63
  380. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_3.c +0 -65
  381. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_3f.c +0 -65
  382. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_4.c +0 -67
  383. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_4f.c +0 -67
  384. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_big.c +0 -93
  385. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_small.c +0 -61
  386. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_return_2H.c +0 -63
  387. data/ext/ffi_c/libffi/testsuite/libffi.call/struct_return_8H.c +0 -90
  388. data/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +0 -61
  389. data/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +0 -78
  390. data/ext/ffi_c/libffi/testsuite/libffi.call/va_2.c +0 -220
  391. data/ext/ffi_c/libffi/testsuite/libffi.call/va_3.c +0 -154
  392. data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +0 -134
  393. data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +0 -134
  394. data/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +0 -140
  395. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure.exp +0 -67
  396. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn0.c +0 -90
  397. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn1.c +0 -83
  398. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn2.c +0 -83
  399. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn3.c +0 -102
  400. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn4.c +0 -91
  401. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn5.c +0 -94
  402. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn6.c +0 -92
  403. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_loc_fn0.c +0 -96
  404. data/ext/ffi_c/libffi/testsuite/libffi.closures/closure_simple.c +0 -61
  405. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_12byte.c +0 -112
  406. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_16byte.c +0 -117
  407. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_18byte.c +0 -120
  408. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_19byte.c +0 -131
  409. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_1_1byte.c +0 -93
  410. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_20byte.c +0 -109
  411. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_20byte1.c +0 -113
  412. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_24byte.c +0 -145
  413. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_2byte.c +0 -103
  414. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3_1byte.c +0 -114
  415. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3byte1.c +0 -103
  416. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3byte2.c +0 -103
  417. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3float.c +0 -113
  418. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_4_1byte.c +0 -120
  419. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_4byte.c +0 -103
  420. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_5_1_byte.c +0 -137
  421. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_5byte.c +0 -116
  422. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_64byte.c +0 -148
  423. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_6_1_byte.c +0 -140
  424. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_6byte.c +0 -121
  425. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_7_1_byte.c +0 -155
  426. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_7byte.c +0 -121
  427. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_8byte.c +0 -102
  428. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_9byte1.c +0 -103
  429. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_9byte2.c +0 -103
  430. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_double.c +0 -111
  431. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_float.c +0 -109
  432. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble.c +0 -111
  433. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble_split.c +0 -147
  434. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble_split2.c +0 -152
  435. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_pointer.c +0 -113
  436. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint16.c +0 -108
  437. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint32.c +0 -106
  438. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint64.c +0 -109
  439. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint16.c +0 -108
  440. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint32.c +0 -109
  441. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint64.c +0 -111
  442. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_dbls_struct.c +0 -68
  443. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_double.c +0 -43
  444. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_double_va.c +0 -69
  445. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_float.c +0 -46
  446. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_longdouble.c +0 -115
  447. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_longdouble_va.c +0 -80
  448. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_many_mixed_args.c +0 -70
  449. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_many_mixed_float_double.c +0 -55
  450. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_schar.c +0 -78
  451. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_sshort.c +0 -79
  452. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_sshortchar.c +0 -94
  453. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_uchar.c +0 -99
  454. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_ushort.c +0 -78
  455. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_ushortchar.c +0 -94
  456. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_pointer.c +0 -79
  457. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_pointer_stack.c +0 -152
  458. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_schar.c +0 -47
  459. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_sint.c +0 -44
  460. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_sshort.c +0 -45
  461. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_struct_va1.c +0 -125
  462. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uchar.c +0 -45
  463. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uint.c +0 -47
  464. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uint_va.c +0 -49
  465. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ulong_va.c +0 -49
  466. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ulonglong.c +0 -49
  467. data/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ushort.c +0 -46
  468. data/ext/ffi_c/libffi/testsuite/libffi.closures/err_bad_abi.c +0 -36
  469. data/ext/ffi_c/libffi/testsuite/libffi.closures/ffitest.h +0 -1
  470. data/ext/ffi_c/libffi/testsuite/libffi.closures/huge_struct.c +0 -343
  471. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct.c +0 -175
  472. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct1.c +0 -161
  473. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct10.c +0 -146
  474. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct11.c +0 -137
  475. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct12.c +0 -86
  476. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct13.c +0 -115
  477. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct2.c +0 -119
  478. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct3.c +0 -120
  479. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct4.c +0 -120
  480. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct5.c +0 -121
  481. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct6.c +0 -142
  482. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct7.c +0 -120
  483. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct8.c +0 -142
  484. data/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct9.c +0 -142
  485. data/ext/ffi_c/libffi/testsuite/libffi.closures/problem1.c +0 -90
  486. data/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs1.c +0 -86
  487. data/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs2.c +0 -102
  488. data/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs3.c +0 -101
  489. data/ext/ffi_c/libffi/testsuite/libffi.closures/stret_large.c +0 -145
  490. data/ext/ffi_c/libffi/testsuite/libffi.closures/stret_large2.c +0 -148
  491. data/ext/ffi_c/libffi/testsuite/libffi.closures/stret_medium.c +0 -124
  492. data/ext/ffi_c/libffi/testsuite/libffi.closures/stret_medium2.c +0 -125
  493. data/ext/ffi_c/libffi/testsuite/libffi.closures/testclosure.c +0 -75
  494. data/ext/ffi_c/libffi/testsuite/libffi.closures/unwindtest.cc +0 -118
  495. data/ext/ffi_c/libffi/testsuite/libffi.closures/unwindtest_ffi_call.cc +0 -55
  496. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +0 -91
  497. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +0 -10
  498. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +0 -10
  499. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +0 -10
  500. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +0 -42
  501. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +0 -10
  502. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +0 -10
  503. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +0 -10
  504. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +0 -71
  505. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +0 -10
  506. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +0 -10
  507. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +0 -10
  508. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +0 -80
  509. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +0 -10
  510. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +0 -16
  511. data/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +0 -10
  512. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp +0 -36
  513. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +0 -51
  514. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +0 -7
  515. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +0 -7
  516. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +0 -7
  517. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +0 -10
  518. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +0 -10
  519. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +0 -86
  520. data/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +0 -10
  521. data/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +0 -1
  522. data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +0 -78
  523. data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +0 -10
  524. data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +0 -10
  525. data/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +0 -10
  526. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +0 -37
  527. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +0 -41
  528. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +0 -10
  529. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +0 -10
  530. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +0 -10
  531. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +0 -44
  532. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +0 -10
  533. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +0 -10
  534. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +0 -10
  535. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +0 -10
  536. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +0 -10
  537. data/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +0 -10
  538. data/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +0 -34
  539. data/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +0 -28
  540. data/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +0 -1
  541. data/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +0 -36
  542. data/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +0 -19
  543. data/ext/ffi_c/libffi.bsd.mk +0 -40
  544. data/ext/ffi_c/libffi.darwin.mk +0 -105
  545. data/ext/ffi_c/libffi.gnu.mk +0 -32
  546. data/ext/ffi_c/libffi.mk +0 -18
  547. data/ext/ffi_c/libffi.vc.mk +0 -26
  548. data/ext/ffi_c/libffi.vc64.mk +0 -26
  549. data/ext/ffi_c/rbffi.h +0 -55
  550. data/ext/ffi_c/rbffi_endian.h +0 -59
@@ -1,302 +0,0 @@
1
- # ===========================================================================
2
- # https://www.gnu.org/software/autoconf-archive/ax_enable_builddir.html
3
- # ===========================================================================
4
- #
5
- # SYNOPSIS
6
- #
7
- # AX_ENABLE_BUILDDIR [(dirstring-or-command [,Makefile.mk [,-all]])]
8
- #
9
- # DESCRIPTION
10
- #
11
- # If the current configure was run within the srcdir then we move all
12
- # configure-files into a subdir and let the configure steps continue
13
- # there. We provide an option --disable-builddir to suppress the move into
14
- # a separate builddir.
15
- #
16
- # Defaults:
17
- #
18
- # $1 = $host (overridden with $HOST)
19
- # $2 = Makefile.mk
20
- # $3 = -all
21
- #
22
- # This macro must be called before AM_INIT_AUTOMAKE. It creates a default
23
- # toplevel srcdir Makefile from the information found in the created
24
- # toplevel builddir Makefile. It just copies the variables and
25
- # rule-targets, each extended with a default rule-execution that recurses
26
- # into the build directory of the current "HOST". You can override the
27
- # auto-detection through `config.guess` and build-time of course, as in
28
- #
29
- # make HOST=i386-mingw-cross
30
- #
31
- # which can of course set at configure time as well using
32
- #
33
- # configure --host=i386-mingw-cross
34
- #
35
- # After the default has been created, additional rules can be appended
36
- # that will not just recurse into the subdirectories and only ever exist
37
- # in the srcdir toplevel makefile - these parts are read from the $2 =
38
- # Makefile.mk file
39
- #
40
- # The automatic rules are usually scanning the toplevel Makefile for lines
41
- # like '#### $host |$builddir' to recognize the place where to recurse
42
- # into. Usually, the last one is the only one used. However, almost all
43
- # targets have an additional "*-all" rule which makes the script to
44
- # recurse into _all_ variants of the current HOST (!!) setting. The "-all"
45
- # suffix can be overridden for the macro as well.
46
- #
47
- # a special rule is only given for things like "dist" that will copy the
48
- # tarball from the builddir to the sourcedir (or $(PUB)) for reason of
49
- # convenience.
50
- #
51
- # LICENSE
52
- #
53
- # Copyright (c) 2009 Guido U. Draheim <guidod@gmx.de>
54
- # Copyright (c) 2009 Alan Jenkins <alan-jenkins@tuffmail.co.uk>
55
- #
56
- # This program is free software; you can redistribute it and/or modify it
57
- # under the terms of the GNU General Public License as published by the
58
- # Free Software Foundation; either version 3 of the License, or (at your
59
- # option) any later version.
60
- #
61
- # This program is distributed in the hope that it will be useful, but
62
- # WITHOUT ANY WARRANTY; without even the implied warranty of
63
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
64
- # Public License for more details.
65
- #
66
- # You should have received a copy of the GNU General Public License along
67
- # with this program. If not, see <https://www.gnu.org/licenses/>.
68
- #
69
- # As a special exception, the respective Autoconf Macro's copyright owner
70
- # gives unlimited permission to copy, distribute and modify the configure
71
- # scripts that are the output of Autoconf when processing the Macro. You
72
- # need not follow the terms of the GNU General Public License when using
73
- # or distributing such scripts, even though portions of the text of the
74
- # Macro appear in them. The GNU General Public License (GPL) does govern
75
- # all other use of the material that constitutes the Autoconf Macro.
76
- #
77
- # This special exception to the GPL applies to versions of the Autoconf
78
- # Macro released by the Autoconf Archive. When you make and distribute a
79
- # modified version of the Autoconf Macro, you may extend this special
80
- # exception to the GPL to apply to your modified version as well.
81
-
82
- #serial 30
83
-
84
- AC_DEFUN([AX_ENABLE_BUILDDIR],[
85
- AC_REQUIRE([AC_CANONICAL_HOST])[]dnl
86
- AC_REQUIRE([AC_CANONICAL_TARGET])[]dnl
87
- AC_REQUIRE([AX_CONFIGURE_ARGS])[]dnl
88
- AC_REQUIRE([AM_AUX_DIR_EXPAND])[]dnl
89
- AC_BEFORE([$0],[AM_INIT_AUTOMAKE])dnl
90
- AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
91
- AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
92
- AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
93
- SUB="."
94
- AC_ARG_ENABLE([builddir], AS_HELP_STRING(
95
- [--disable-builddir],[disable automatic build in subdir of sources])
96
- ,[SUB="$enableval"], [SUB="auto"])
97
- if test ".$ac_srcdir_defaulted" != ".no" ; then
98
- if test ".$srcdir" = ".." ; then
99
- if test -f config.status ; then
100
- AC_MSG_NOTICE(toplevel srcdir already configured... skipping subdir build)
101
- else
102
- test ".$SUB" = "." && SUB="."
103
- test ".$SUB" = ".no" && SUB="."
104
- test ".$TARGET" = "." && TARGET="$target"
105
- test ".$SUB" = ".auto" && SUB="m4_ifval([$1], [$1],[$TARGET])"
106
- if test ".$SUB" != ".." ; then # we know where to go and
107
- AS_MKDIR_P([$SUB])
108
- echo __.$SUB.__ > $SUB/conftest.tmp
109
- cd $SUB
110
- if grep __.$SUB.__ conftest.tmp >/dev/null 2>/dev/null ; then
111
- rm conftest.tmp
112
- AC_MSG_RESULT([continue configure in default builddir "./$SUB"])
113
- else
114
- AC_MSG_ERROR([could not change to default builddir "./$SUB"])
115
- fi
116
- srcdir=`echo "$SUB" |
117
- sed -e 's,^\./,,;s,[[^/]]$,&/,;s,[[^/]]*/,../,g;s,[[/]]$,,;'`
118
- # going to restart from subdirectory location
119
- test -f $srcdir/config.log && mv $srcdir/config.log .
120
- test -f $srcdir/confdefs.h && mv $srcdir/confdefs.h .
121
- test -f $srcdir/conftest.log && mv $srcdir/conftest.log .
122
- test -f $srcdir/$cache_file && mv $srcdir/$cache_file .
123
- AC_MSG_RESULT(....exec $SHELL $srcdir/[$]0 "--srcdir=$srcdir" "--enable-builddir=$SUB" ${1+"[$]@"})
124
- case "[$]0" in # restart
125
- [[\\/]]* | ?:[[\\/]]*) # Absolute name
126
- eval $SHELL "'[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
127
- *) eval $SHELL "'$srcdir/[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
128
- esac ; exit $?
129
- fi
130
- fi
131
- fi fi
132
- test ".$SUB" = ".auto" && SUB="."
133
- dnl ac_path_prog uses "set dummy" to override $@ which would defeat the "exec"
134
- AC_PATH_PROG(SED,gsed sed, sed)
135
- AUX="$am_aux_dir"
136
- AS_VAR_POPDEF([SED])dnl
137
- AS_VAR_POPDEF([AUX])dnl
138
- AS_VAR_POPDEF([SUB])dnl
139
- AC_CONFIG_COMMANDS([buildir],[dnl .............. config.status ..............
140
- AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
141
- AS_VAR_PUSHDEF([TOP],[top_srcdir])dnl
142
- AS_VAR_PUSHDEF([SRC],[ac_top_srcdir])dnl
143
- AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
144
- AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
145
- pushdef([END],[Makefile.mk])dnl
146
- pushdef([_ALL],[ifelse([$3],,[-all],[$3])])dnl
147
- SRC="$ax_enable_builddir_srcdir"
148
- if test ".$SUB" = ".." ; then
149
- if test -f "$TOP/Makefile" ; then
150
- AC_MSG_NOTICE([skipping TOP/Makefile - left untouched])
151
- else
152
- AC_MSG_NOTICE([skipping TOP/Makefile - not created])
153
- fi
154
- else
155
- if test -f "$SRC/Makefile" ; then
156
- a=`grep "^VERSION " "$SRC/Makefile"` ; b=`grep "^VERSION " Makefile`
157
- test "$a" != "$b" && rm "$SRC/Makefile"
158
- fi
159
- if test -f "$SRC/Makefile" ; then
160
- echo "$SRC/Makefile : $SRC/Makefile.in" > $tmp/conftemp.mk
161
- echo " []@ echo 'REMOVED,,,' >\$[]@" >> $tmp/conftemp.mk
162
- eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"
163
- if grep '^REMOVED,,,' "$SRC/Makefile" >/dev/null
164
- then rm $SRC/Makefile ; fi
165
- cp $tmp/conftemp.mk $SRC/makefiles.mk~ ## DEBUGGING
166
- fi
167
- if test ! -f "$SRC/Makefile" ; then
168
- AC_MSG_NOTICE([create TOP/Makefile guessed from local Makefile])
169
- x='`' ; cat >$tmp/conftemp.sed <<_EOF
170
- /^\$/n
171
- x
172
- /^\$/bS
173
- x
174
- /\\\\\$/{H;d;}
175
- {H;s/.*//;x;}
176
- bM
177
- :S
178
- x
179
- /\\\\\$/{h;d;}
180
- {h;s/.*//;x;}
181
- :M
182
- s/\\(\\n\\) /\\1 /g
183
- /^ /d
184
- /^[[ ]]*[[\\#]]/d
185
- /^VPATH *=/d
186
- s/^srcdir *=.*/srcdir = ./
187
- s/^top_srcdir *=.*/top_srcdir = ./
188
- /[[:=]]/!d
189
- /^\\./d
190
- dnl Now handle rules (i.e. lines containing ":" but not " = ").
191
- / = /b
192
- / .= /b
193
- /:/!b
194
- s/:.*/:/
195
- s/ / /g
196
- s/ \\([[a-z]][[a-z-]]*[[a-zA-Z0-9]]\\)\\([[ :]]\\)/ \\1 \\1[]_ALL\\2/g
197
- s/^\\([[a-z]][[a-z-]]*[[a-zA-Z0-9]]\\)\\([[ :]]\\)/\\1 \\1[]_ALL\\2/
198
- s/ / /g
199
- /^all all[]_ALL[[ :]]/i\\
200
- all-configured : all[]_ALL
201
- dnl dist-all exists... and would make for dist-all-all
202
- s/ [[a-zA-Z0-9-]]*[]_ALL [[a-zA-Z0-9-]]*[]_ALL[]_ALL//g
203
- /[]_ALL[]_ALL/d
204
- a\\
205
- @ HOST="\$(HOST)\" \\\\\\
206
- ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
207
- ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
208
- ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
209
- ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\
210
- ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\
211
- ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
212
- ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\
213
- ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
214
- ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done
215
- dnl special rule add-on: "dist" copies the tarball to $(PUB). (source tree)
216
- /dist[]_ALL *:/a\\
217
- @ HOST="\$(HOST)\" \\\\\\
218
- ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
219
- ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
220
- ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
221
- ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\
222
- ; if test "\$\$found" -eq "0" ; then : \\\\\\
223
- ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
224
- ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
225
- ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\
226
- ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
227
- dnl special rule add-on: "dist-foo" copies all the archives to $(PUB). (source tree)
228
- /dist-[[a-zA-Z0-9]]*[]_ALL *:/a\\
229
- @ HOST="\$(HOST)\" \\\\\\
230
- ; test ".\$\$HOST" = "." && HOST=$x sh ./config.guess $x \\\\\\
231
- ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
232
- ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
233
- ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).*" \\\\\\
234
- ; if test "\$\$found" -eq "0" ; then : \\\\\\
235
- ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
236
- ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
237
- ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).* \\\\\\
238
- ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
239
- dnl special rule add-on: "distclean" removes all local builddirs completely
240
- /distclean[]_ALL *:/a\\
241
- @ HOST="\$(HOST)\" \\\\\\
242
- ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
243
- ; BUILD=$x grep "^#### .*|" Makefile | sed -e 's/.*|//' $x \\\\\\
244
- ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
245
- ; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\
246
- ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
247
- ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
248
- ; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\
249
- ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
250
- ; echo "\$\$i" | grep "^/" > /dev/null && continue \\\\\\
251
- ; echo "\$\$i" | grep "^../" > /dev/null && continue \\\\\\
252
- ; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile
253
- _EOF
254
- cp "$tmp/conftemp.sed" "$SRC/makefile.sed~" ## DEBUGGING
255
- $SED -f $tmp/conftemp.sed Makefile >$SRC/Makefile
256
- if test -f "$SRC/m4_ifval([$2],[$2],[END])" ; then
257
- AC_MSG_NOTICE([extend TOP/Makefile with TOP/m4_ifval([$2],[$2],[END])])
258
- cat $SRC/END >>$SRC/Makefile
259
- fi ; xxxx="####"
260
- echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$SRC/Makefile
261
- # sanity check
262
- if grep '^; echo "MAKE ' $SRC/Makefile >/dev/null ; then
263
- AC_MSG_NOTICE([buggy sed found - it deletes tab in "a" text parts])
264
- $SED -e '/^@ HOST=/s/^/ /' -e '/^; /s/^/ /' $SRC/Makefile \
265
- >$SRC/Makefile~
266
- (test -s $SRC/Makefile~ && mv $SRC/Makefile~ $SRC/Makefile) 2>/dev/null
267
- fi
268
- else
269
- xxxx="\\#\\#\\#\\#"
270
- # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed
271
- echo "s!^$xxxx [[^|]]* | *$SUB *\$!$xxxx ...... $SUB!" >$tmp/conftemp.sed
272
- $SED -f "$tmp/conftemp.sed" "$SRC/Makefile" >$tmp/mkfile.tmp
273
- cp "$tmp/conftemp.sed" "$SRC/makefiles.sed~" ## DEBUGGING
274
- cp "$tmp/mkfile.tmp" "$SRC/makefiles.out~" ## DEBUGGING
275
- if cmp -s "$SRC/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then
276
- AC_MSG_NOTICE([keeping TOP/Makefile from earlier configure])
277
- rm "$tmp/mkfile.tmp"
278
- else
279
- AC_MSG_NOTICE([reusing TOP/Makefile from earlier configure])
280
- mv "$tmp/mkfile.tmp" "$SRC/Makefile"
281
- fi
282
- fi
283
- AC_MSG_NOTICE([build in $SUB (HOST=$ax_enable_builddir_host)])
284
- xxxx="####"
285
- echo "$xxxx" "$ax_enable_builddir_host" "|$SUB" >>$SRC/Makefile
286
- fi
287
- popdef([END])dnl
288
- AS_VAR_POPDEF([SED])dnl
289
- AS_VAR_POPDEF([AUX])dnl
290
- AS_VAR_POPDEF([SRC])dnl
291
- AS_VAR_POPDEF([TOP])dnl
292
- AS_VAR_POPDEF([SUB])dnl
293
- ],[dnl
294
- ax_enable_builddir_srcdir="$srcdir" # $srcdir
295
- ax_enable_builddir_host="$HOST" # $HOST / $host
296
- ax_enable_builddir_version="$VERSION" # $VERSION
297
- ax_enable_builddir_package="$PACKAGE" # $PACKAGE
298
- ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX
299
- ax_enable_builddir_sed="$ax_enable_builddir_sed" # $SED
300
- ax_enable_builddir="$ax_enable_builddir" # $SUB
301
- ])dnl
302
- ])
@@ -1,267 +0,0 @@
1
- # ===========================================================================
2
- # https://www.gnu.org/software/autoconf-archive/ax_gcc_archflag.html
3
- # ===========================================================================
4
- #
5
- # SYNOPSIS
6
- #
7
- # AX_GCC_ARCHFLAG([PORTABLE?], [ACTION-SUCCESS], [ACTION-FAILURE])
8
- #
9
- # DESCRIPTION
10
- #
11
- # This macro tries to guess the "native" arch corresponding to the target
12
- # architecture for use with gcc's -march=arch or -mtune=arch flags. If
13
- # found, the cache variable $ax_cv_gcc_archflag is set to this flag and
14
- # ACTION-SUCCESS is executed; otherwise $ax_cv_gcc_archflag is set to
15
- # "unknown" and ACTION-FAILURE is executed. The default ACTION-SUCCESS is
16
- # to add $ax_cv_gcc_archflag to the end of $CFLAGS.
17
- #
18
- # PORTABLE? should be either [yes] (default) or [no]. In the former case,
19
- # the flag is set to -mtune (or equivalent) so that the architecture is
20
- # only used for tuning, but the instruction set used is still portable. In
21
- # the latter case, the flag is set to -march (or equivalent) so that
22
- # architecture-specific instructions are enabled.
23
- #
24
- # The user can specify --with-gcc-arch=<arch> in order to override the
25
- # macro's choice of architecture, or --without-gcc-arch to disable this.
26
- #
27
- # When cross-compiling, or if $CC is not gcc, then ACTION-FAILURE is
28
- # called unless the user specified --with-gcc-arch manually.
29
- #
30
- # Requires macros: AX_CHECK_COMPILE_FLAG, AX_GCC_X86_CPUID
31
- #
32
- # (The main emphasis here is on recent CPUs, on the principle that doing
33
- # high-performance computing on old hardware is uncommon.)
34
- #
35
- # LICENSE
36
- #
37
- # Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
38
- # Copyright (c) 2008 Matteo Frigo
39
- # Copyright (c) 2014 Tsukasa Oi
40
- # Copyright (c) 2017-2018 Alexey Kopytov
41
- #
42
- # This program is free software: you can redistribute it and/or modify it
43
- # under the terms of the GNU General Public License as published by the
44
- # Free Software Foundation, either version 3 of the License, or (at your
45
- # option) any later version.
46
- #
47
- # This program is distributed in the hope that it will be useful, but
48
- # WITHOUT ANY WARRANTY; without even the implied warranty of
49
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
50
- # Public License for more details.
51
- #
52
- # You should have received a copy of the GNU General Public License along
53
- # with this program. If not, see <https://www.gnu.org/licenses/>.
54
- #
55
- # As a special exception, the respective Autoconf Macro's copyright owner
56
- # gives unlimited permission to copy, distribute and modify the configure
57
- # scripts that are the output of Autoconf when processing the Macro. You
58
- # need not follow the terms of the GNU General Public License when using
59
- # or distributing such scripts, even though portions of the text of the
60
- # Macro appear in them. The GNU General Public License (GPL) does govern
61
- # all other use of the material that constitutes the Autoconf Macro.
62
- #
63
- # This special exception to the GPL applies to versions of the Autoconf
64
- # Macro released by the Autoconf Archive. When you make and distribute a
65
- # modified version of the Autoconf Macro, you may extend this special
66
- # exception to the GPL to apply to your modified version as well.
67
-
68
- #serial 22
69
-
70
- AC_DEFUN([AX_GCC_ARCHFLAG],
71
- [AC_REQUIRE([AC_PROG_CC])
72
- AC_REQUIRE([AC_CANONICAL_HOST])
73
- AC_REQUIRE([AC_PROG_SED])
74
- AC_REQUIRE([AX_COMPILER_VENDOR])
75
-
76
- AC_ARG_WITH(gcc-arch, [AS_HELP_STRING([--with-gcc-arch=<arch>], [use architecture <arch> for gcc -march/-mtune, instead of guessing])],
77
- ax_gcc_arch=$withval, ax_gcc_arch=yes)
78
-
79
- AC_MSG_CHECKING([for gcc architecture flag])
80
- AC_MSG_RESULT([])
81
- AC_CACHE_VAL(ax_cv_gcc_archflag,
82
- [
83
- ax_cv_gcc_archflag="unknown"
84
-
85
- if test "$GCC" = yes; then
86
-
87
- if test "x$ax_gcc_arch" = xyes; then
88
- ax_gcc_arch=""
89
- if test "$cross_compiling" = no; then
90
- case $host_cpu in
91
- i[[3456]]86*|x86_64*|amd64*) # use cpuid codes
92
- AX_GCC_X86_CPUID(0)
93
- AX_GCC_X86_CPUID(1)
94
- case $ax_cv_gcc_x86_cpuid_0 in
95
- *:756e6547:6c65746e:49656e69) # Intel
96
- case $ax_cv_gcc_x86_cpuid_1 in
97
- *5[[4578]]?:*:*:*) ax_gcc_arch="pentium-mmx pentium" ;;
98
- *5[[123]]?:*:*:*) ax_gcc_arch=pentium ;;
99
- *0?61?:*:*:*|?61?:*:*:*|61?:*:*:*) ax_gcc_arch=pentiumpro ;;
100
- *0?6[[356]]?:*:*:*|?6[[356]]?:*:*:*|6[[356]]?:*:*:*) ax_gcc_arch="pentium2 pentiumpro" ;;
101
- *0?6[[78ab]]?:*:*:*|?6[[78ab]]?:*:*:*|6[[78ab]]?:*:*:*) ax_gcc_arch="pentium3 pentiumpro" ;;
102
- *0?6[[9d]]?:*:*:*|?6[[9d]]?:*:*:*|6[[9d]]?:*:*:*|*1?65?:*:*:*) ax_gcc_arch="pentium-m pentium3 pentiumpro" ;;
103
- *0?6e?:*:*:*|?6e?:*:*:*|6e?:*:*:*) ax_gcc_arch="yonah pentium-m pentium3 pentiumpro" ;;
104
- *0?6f?:*:*:*|?6f?:*:*:*|6f?:*:*:*|*1?66?:*:*:*) ax_gcc_arch="core2 pentium-m pentium3 pentiumpro" ;;
105
- *1?6[[7d]]?:*:*:*) ax_gcc_arch="penryn core2 pentium-m pentium3 pentiumpro" ;;
106
- *1?6[[aef]]?:*:*:*|*2?6e?:*:*:*) ax_gcc_arch="nehalem corei7 core2 pentium-m pentium3 pentiumpro" ;;
107
- *2?6[[5cf]]?:*:*:*) ax_gcc_arch="westmere corei7 core2 pentium-m pentium3 pentiumpro" ;;
108
- *2?6[[ad]]?:*:*:*) ax_gcc_arch="sandybridge corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;
109
- *3?6[[ae]]?:*:*:*) ax_gcc_arch="ivybridge core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;
110
- *3?6[[cf]]?:*:*:*|*4?6[[56]]?:*:*:*) ax_gcc_arch="haswell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;
111
- *3?6d?:*:*:*|*4?6[[7f]]?:*:*:*|*5?66?:*:*:*) ax_gcc_arch="broadwell core-avx2 core-avx-i corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;
112
- *1?6c?:*:*:*|*2?6[[67]]?:*:*:*|*3?6[[56]]?:*:*:*) ax_gcc_arch="bonnell atom core2 pentium-m pentium3 pentiumpro" ;;
113
- *3?67?:*:*:*|*[[45]]?6[[ad]]?:*:*:*) ax_gcc_arch="silvermont atom core2 pentium-m pentium3 pentiumpro" ;;
114
- *000?f[[012]]?:*:*:*|?f[[012]]?:*:*:*|f[[012]]?:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;
115
- *000?f[[346]]?:*:*:*|?f[[346]]?:*:*:*|f[[346]]?:*:*:*) ax_gcc_arch="nocona prescott pentium4 pentiumpro" ;;
116
- # fallback
117
- *5??:*:*:*) ax_gcc_arch=pentium ;;
118
- *??6??:*:*:*) ax_gcc_arch="core2 pentiumpro" ;;
119
- *6??:*:*:*) ax_gcc_arch=pentiumpro ;;
120
- *00??f??:*:*:*|??f??:*:*:*|?f??:*:*:*|f??:*:*:*) ax_gcc_arch="pentium4 pentiumpro" ;;
121
- esac ;;
122
- *:68747541:444d4163:69746e65) # AMD
123
- case $ax_cv_gcc_x86_cpuid_1 in
124
- *5[[67]]?:*:*:*) ax_gcc_arch=k6 ;;
125
- *5[[8]]?:*:*:*) ax_gcc_arch="k6-2 k6" ;;
126
- *5[[9d]]?:*:*:*) ax_gcc_arch="k6-3 k6" ;;
127
- *6[[12]]?:*:*:*) ax_gcc_arch="athlon k7" ;;
128
- *6[[34]]?:*:*:*) ax_gcc_arch="athlon-tbird k7" ;;
129
- *6[[678a]]?:*:*:*) ax_gcc_arch="athlon-xp athlon-4 athlon k7" ;;
130
- *000?f[[4578bcef]]?:*:*:*|?f[[4578bcef]]?:*:*:*|f[[4578bcef]]?:*:*:*|*001?f[[4578bcf]]?:*:*:*|1?f[[4578bcf]]?:*:*:*) ax_gcc_arch="athlon64 k8" ;;
131
- *002?f[[13457bcf]]?:*:*:*|2?f[[13457bcf]]?:*:*:*|*004?f[[138bcf]]?:*:*:*|4?f[[138bcf]]?:*:*:*|*005?f[[df]]?:*:*:*|5?f[[df]]?:*:*:*|*006?f[[8bcf]]?:*:*:*|6?f[[8bcf]]?:*:*:*|*007?f[[cf]]?:*:*:*|7?f[[cf]]?:*:*:*|*00c?f1?:*:*:*|c?f1?:*:*:*|*020?f3?:*:*:*|20?f3?:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;
132
- *010?f[[245689a]]?:*:*:*|10?f[[245689a]]?:*:*:*|*030?f1?:*:*:*|30?f1?:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;
133
- *050?f[[12]]?:*:*:*|50?f[[12]]?:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;
134
- *060?f1?:*:*:*|60?f1?:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;
135
- *060?f2?:*:*:*|60?f2?:*:*:*|*061?f[[03]]?:*:*:*|61?f[[03]]?:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;
136
- *063?f0?:*:*:*|63?f0?:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;
137
- *07[[03]]?f0?:*:*:*|7[[03]]?f0?:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;
138
- # fallback
139
- *0[[13]]??f??:*:*:*|[[13]]??f??:*:*:*) ax_gcc_arch="barcelona amdfam10 k8" ;;
140
- *020?f??:*:*:*|20?f??:*:*:*) ax_gcc_arch="athlon64-sse3 k8-sse3 athlon64 k8" ;;
141
- *05??f??:*:*:*|5??f??:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;
142
- *060?f??:*:*:*|60?f??:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;
143
- *061?f??:*:*:*|61?f??:*:*:*) ax_gcc_arch="bdver2 bdver1 amdfam10 k8" ;;
144
- *06??f??:*:*:*|6??f??:*:*:*) ax_gcc_arch="bdver3 bdver2 bdver1 amdfam10 k8" ;;
145
- *070?f??:*:*:*|70?f??:*:*:*) ax_gcc_arch="btver2 btver1 amdfam10 k8" ;;
146
- *???f??:*:*:*) ax_gcc_arch="amdfam10 k8" ;;
147
- esac ;;
148
- *:746e6543:736c7561:48727561) # IDT / VIA (Centaur)
149
- case $ax_cv_gcc_x86_cpuid_1 in
150
- *54?:*:*:*) ax_gcc_arch=winchip-c6 ;;
151
- *5[[89]]?:*:*:*) ax_gcc_arch=winchip2 ;;
152
- *66?:*:*:*) ax_gcc_arch=winchip2 ;;
153
- *6[[78]]?:*:*:*) ax_gcc_arch=c3 ;;
154
- *6[[9adf]]?:*:*:*) ax_gcc_arch="c3-2 c3" ;;
155
- esac ;;
156
- esac
157
- if test x"$ax_gcc_arch" = x; then # fallback
158
- case $host_cpu in
159
- i586*) ax_gcc_arch=pentium ;;
160
- i686*) ax_gcc_arch=pentiumpro ;;
161
- esac
162
- fi
163
- ;;
164
-
165
- sparc*)
166
- AC_PATH_PROG([PRTDIAG], [prtdiag], [prtdiag], [$PATH:/usr/platform/`uname -i`/sbin/:/usr/platform/`uname -m`/sbin/])
167
- cputype=`(((grep cpu /proc/cpuinfo | cut -d: -f2) ; ($PRTDIAG -v |grep -i sparc) ; grep -i cpu /var/run/dmesg.boot ) | head -n 1) 2> /dev/null`
168
- cputype=`echo "$cputype" | tr -d ' -' | $SED 's/SPARCIIi/SPARCII/' |tr $as_cr_LETTERS $as_cr_letters`
169
- case $cputype in
170
- *ultrasparciv*) ax_gcc_arch="ultrasparc4 ultrasparc3 ultrasparc v9" ;;
171
- *ultrasparciii*) ax_gcc_arch="ultrasparc3 ultrasparc v9" ;;
172
- *ultrasparc*) ax_gcc_arch="ultrasparc v9" ;;
173
- *supersparc*|*tms390z5[[05]]*) ax_gcc_arch="supersparc v8" ;;
174
- *hypersparc*|*rt62[[056]]*) ax_gcc_arch="hypersparc v8" ;;
175
- *cypress*) ax_gcc_arch=cypress ;;
176
- esac ;;
177
-
178
- alphaev5) ax_gcc_arch=ev5 ;;
179
- alphaev56) ax_gcc_arch=ev56 ;;
180
- alphapca56) ax_gcc_arch="pca56 ev56" ;;
181
- alphapca57) ax_gcc_arch="pca57 pca56 ev56" ;;
182
- alphaev6) ax_gcc_arch=ev6 ;;
183
- alphaev67) ax_gcc_arch=ev67 ;;
184
- alphaev68) ax_gcc_arch="ev68 ev67" ;;
185
- alphaev69) ax_gcc_arch="ev69 ev68 ev67" ;;
186
- alphaev7) ax_gcc_arch="ev7 ev69 ev68 ev67" ;;
187
- alphaev79) ax_gcc_arch="ev79 ev7 ev69 ev68 ev67" ;;
188
-
189
- powerpc*)
190
- cputype=`((grep cpu /proc/cpuinfo | head -n 1 | cut -d: -f2 | cut -d, -f1 | $SED 's/ //g') ; /usr/bin/machine ; /bin/machine; grep CPU /var/run/dmesg.boot | head -n 1 | cut -d" " -f2) 2> /dev/null`
191
- cputype=`echo $cputype | $SED -e 's/ppc//g;s/ *//g'`
192
- case $cputype in
193
- *750*) ax_gcc_arch="750 G3" ;;
194
- *740[[0-9]]*) ax_gcc_arch="$cputype 7400 G4" ;;
195
- *74[[4-5]][[0-9]]*) ax_gcc_arch="$cputype 7450 G4" ;;
196
- *74[[0-9]][[0-9]]*) ax_gcc_arch="$cputype G4" ;;
197
- *970*) ax_gcc_arch="970 G5 power4";;
198
- *POWER4*|*power4*|*gq*) ax_gcc_arch="power4 970";;
199
- *POWER5*|*power5*|*gr*|*gs*) ax_gcc_arch="power5 power4 970";;
200
- 603ev|8240) ax_gcc_arch="$cputype 603e 603";;
201
- *POWER7*) ax_gcc_arch="power7";;
202
- *POWER8*) ax_gcc_arch="power8";;
203
- *POWER9*) ax_gcc_arch="power9";;
204
- *POWER10*) ax_gcc_arch="power10";;
205
- *) ax_gcc_arch=$cputype ;;
206
- esac
207
- ax_gcc_arch="$ax_gcc_arch powerpc"
208
- ;;
209
- aarch64)
210
- cpuimpl=`grep 'CPU implementer' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`
211
- cpuarch=`grep 'CPU architecture' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`
212
- cpuvar=`grep 'CPU variant' /proc/cpuinfo 2> /dev/null | cut -d: -f2 | tr -d " " | head -n 1`
213
- case $cpuimpl in
214
- 0x42) case $cpuarch in
215
- 8) case $cpuvar in
216
- 0x0) ax_gcc_arch="thunderx2t99 vulcan armv8.1-a armv8-a+lse armv8-a native" ;;
217
- esac
218
- ;;
219
- esac
220
- ;;
221
- 0x43) case $cpuarch in
222
- 8) case $cpuvar in
223
- 0x0) ax_gcc_arch="thunderx armv8-a native" ;;
224
- 0x1) ax_gcc_arch="thunderx+lse armv8.1-a armv8-a+lse armv8-a native" ;;
225
- esac
226
- ;;
227
- esac
228
- ;;
229
- esac
230
- ;;
231
- esac
232
- fi # not cross-compiling
233
- fi # guess arch
234
-
235
- if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then
236
- if test "x[]m4_default([$1],yes)" = xyes; then # if we require portable code
237
- flag_prefixes="-mtune="
238
- if test "x$ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor" = xclang; then flag_prefixes="-march="; fi
239
- # -mcpu=$arch and m$arch generate nonportable code on every arch except
240
- # x86. And some other arches (e.g. Alpha) don't accept -mtune. Grrr.
241
- case $host_cpu in i*86|x86_64*|amd64*) flag_prefixes="$flag_prefixes -mcpu= -m";; esac
242
- else
243
- flag_prefixes="-march= -mcpu= -m"
244
- fi
245
- for flag_prefix in $flag_prefixes; do
246
- for arch in $ax_gcc_arch; do
247
- flag="$flag_prefix$arch"
248
- AX_CHECK_COMPILE_FLAG($flag, [if test "x$ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor" = xclang; then
249
- if test "x[]m4_default([$1],yes)" = xyes; then
250
- if test "x$flag" = "x-march=$arch"; then flag=-mtune=$arch; fi
251
- fi
252
- fi; ax_cv_gcc_archflag=$flag; break])
253
- done
254
- test "x$ax_cv_gcc_archflag" = xunknown || break
255
- done
256
- fi
257
-
258
- fi # $GCC=yes
259
- ])
260
- AC_MSG_CHECKING([for gcc architecture flag])
261
- AC_MSG_RESULT($ax_cv_gcc_archflag)
262
- if test "x$ax_cv_gcc_archflag" = xunknown; then
263
- m4_default([$3],:)
264
- else
265
- m4_default([$2], [CFLAGS="$CFLAGS $ax_cv_gcc_archflag"])
266
- fi
267
- ])
@@ -1,89 +0,0 @@
1
- # ===========================================================================
2
- # https://www.gnu.org/software/autoconf-archive/ax_gcc_x86_cpuid.html
3
- # ===========================================================================
4
- #
5
- # SYNOPSIS
6
- #
7
- # AX_GCC_X86_CPUID(OP)
8
- # AX_GCC_X86_CPUID_COUNT(OP, COUNT)
9
- #
10
- # DESCRIPTION
11
- #
12
- # On Pentium and later x86 processors, with gcc or a compiler that has a
13
- # compatible syntax for inline assembly instructions, run a small program
14
- # that executes the cpuid instruction with input OP. This can be used to
15
- # detect the CPU type. AX_GCC_X86_CPUID_COUNT takes an additional COUNT
16
- # parameter that gets passed into register ECX before calling cpuid.
17
- #
18
- # On output, the values of the eax, ebx, ecx, and edx registers are stored
19
- # as hexadecimal strings as "eax:ebx:ecx:edx" in the cache variable
20
- # ax_cv_gcc_x86_cpuid_OP.
21
- #
22
- # If the cpuid instruction fails (because you are running a
23
- # cross-compiler, or because you are not using gcc, or because you are on
24
- # a processor that doesn't have this instruction), ax_cv_gcc_x86_cpuid_OP
25
- # is set to the string "unknown".
26
- #
27
- # This macro mainly exists to be used in AX_GCC_ARCHFLAG.
28
- #
29
- # LICENSE
30
- #
31
- # Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
32
- # Copyright (c) 2008 Matteo Frigo
33
- # Copyright (c) 2015 Michael Petch <mpetch@capp-sysware.com>
34
- #
35
- # This program is free software: you can redistribute it and/or modify it
36
- # under the terms of the GNU General Public License as published by the
37
- # Free Software Foundation, either version 3 of the License, or (at your
38
- # option) any later version.
39
- #
40
- # This program is distributed in the hope that it will be useful, but
41
- # WITHOUT ANY WARRANTY; without even the implied warranty of
42
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
43
- # Public License for more details.
44
- #
45
- # You should have received a copy of the GNU General Public License along
46
- # with this program. If not, see <https://www.gnu.org/licenses/>.
47
- #
48
- # As a special exception, the respective Autoconf Macro's copyright owner
49
- # gives unlimited permission to copy, distribute and modify the configure
50
- # scripts that are the output of Autoconf when processing the Macro. You
51
- # need not follow the terms of the GNU General Public License when using
52
- # or distributing such scripts, even though portions of the text of the
53
- # Macro appear in them. The GNU General Public License (GPL) does govern
54
- # all other use of the material that constitutes the Autoconf Macro.
55
- #
56
- # This special exception to the GPL applies to versions of the Autoconf
57
- # Macro released by the Autoconf Archive. When you make and distribute a
58
- # modified version of the Autoconf Macro, you may extend this special
59
- # exception to the GPL to apply to your modified version as well.
60
-
61
- #serial 10
62
-
63
- AC_DEFUN([AX_GCC_X86_CPUID],
64
- [AX_GCC_X86_CPUID_COUNT($1, 0)
65
- ])
66
-
67
- AC_DEFUN([AX_GCC_X86_CPUID_COUNT],
68
- [AC_REQUIRE([AC_PROG_CC])
69
- AC_LANG_PUSH([C])
70
- AC_CACHE_CHECK(for x86 cpuid $1 output, ax_cv_gcc_x86_cpuid_$1,
71
- [AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>], [
72
- int op = $1, level = $2, eax, ebx, ecx, edx;
73
- FILE *f;
74
- __asm__ __volatile__ ("xchg %%ebx, %1\n"
75
- "cpuid\n"
76
- "xchg %%ebx, %1\n"
77
- : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx)
78
- : "a" (op), "2" (level));
79
-
80
- f = fopen("conftest_cpuid", "w"); if (!f) return 1;
81
- fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);
82
- fclose(f);
83
- return 0;
84
- ])],
85
- [ax_cv_gcc_x86_cpuid_$1=`cat conftest_cpuid`; rm -f conftest_cpuid],
86
- [ax_cv_gcc_x86_cpuid_$1=unknown; rm -f conftest_cpuid],
87
- [ax_cv_gcc_x86_cpuid_$1=unknown])])
88
- AC_LANG_POP([C])
89
- ])