passagemath-gap-pkg-semigroups 10.6.29__cp312-abi3-macosx_13_0_x86_64.whl

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.

Potentially problematic release.


This version of passagemath-gap-pkg-semigroups might be problematic. Click here for more details.

Files changed (354) hide show
  1. gap/pkg/semigroups/CHANGELOG.md +1699 -0
  2. gap/pkg/semigroups/CONTRIBUTING.md +91 -0
  3. gap/pkg/semigroups/GNUmakefile +110 -0
  4. gap/pkg/semigroups/GNUmakefile.in +110 -0
  5. gap/pkg/semigroups/GPL +674 -0
  6. gap/pkg/semigroups/LICENSE +16 -0
  7. gap/pkg/semigroups/Makefile +26 -0
  8. gap/pkg/semigroups/Makefile.gappkg +225 -0
  9. gap/pkg/semigroups/PackageInfo.g +529 -0
  10. gap/pkg/semigroups/README.md +102 -0
  11. gap/pkg/semigroups/VERSIONS +112 -0
  12. gap/pkg/semigroups/aclocal.m4 +375 -0
  13. gap/pkg/semigroups/autogen.sh +25 -0
  14. gap/pkg/semigroups/bin/x86_64-apple-darwin22-default64-kv10/semigroups.so +0 -0
  15. gap/pkg/semigroups/config.guess +1807 -0
  16. gap/pkg/semigroups/config.log +1082 -0
  17. gap/pkg/semigroups/config.status +1134 -0
  18. gap/pkg/semigroups/config.sub +1960 -0
  19. gap/pkg/semigroups/configure +9742 -0
  20. gap/pkg/semigroups/configure.ac +71 -0
  21. gap/pkg/semigroups/data/doc/greens.pickle +1 -0
  22. gap/pkg/semigroups/data/gens/fullbool-8.pickle.gz +0 -0
  23. gap/pkg/semigroups/data/gens/fullbool.pickle.gz +0 -0
  24. gap/pkg/semigroups/data/gens/hall.pickle.gz +0 -0
  25. gap/pkg/semigroups/data/gens/reflex-6.pickle.gz +0 -0
  26. gap/pkg/semigroups/data/gens/reflex.pickle.gz +0 -0
  27. gap/pkg/semigroups/data/tst/bipart4 +10 -0
  28. gap/pkg/semigroups/data/tst/pperm10 +1 -0
  29. gap/pkg/semigroups/data/tst/tables.gz +0 -0
  30. gap/pkg/semigroups/data/tst/testdata +1 -0
  31. gap/pkg/semigroups/data/tst/testinstall.pickle +1 -0
  32. gap/pkg/semigroups/data/tst/trans3 +7 -0
  33. gap/pkg/semigroups/data/tst/trans3-old +7 -0
  34. gap/pkg/semigroups/environment.yml +7 -0
  35. gap/pkg/semigroups/gap/attributes/acting.gd +15 -0
  36. gap/pkg/semigroups/gap/attributes/acting.gi +297 -0
  37. gap/pkg/semigroups/gap/attributes/attr.gd +91 -0
  38. gap/pkg/semigroups/gap/attributes/attr.gi +1214 -0
  39. gap/pkg/semigroups/gap/attributes/dual.gd +25 -0
  40. gap/pkg/semigroups/gap/attributes/dual.gi +209 -0
  41. gap/pkg/semigroups/gap/attributes/factor.gd +17 -0
  42. gap/pkg/semigroups/gap/attributes/factor.gi +453 -0
  43. gap/pkg/semigroups/gap/attributes/homomorph.gd +84 -0
  44. gap/pkg/semigroups/gap/attributes/homomorph.gi +591 -0
  45. gap/pkg/semigroups/gap/attributes/inverse.gd +38 -0
  46. gap/pkg/semigroups/gap/attributes/inverse.gi +708 -0
  47. gap/pkg/semigroups/gap/attributes/isomorph.gd +16 -0
  48. gap/pkg/semigroups/gap/attributes/isomorph.gi +377 -0
  49. gap/pkg/semigroups/gap/attributes/isorms.gd +49 -0
  50. gap/pkg/semigroups/gap/attributes/isorms.gi +1383 -0
  51. gap/pkg/semigroups/gap/attributes/maximal.gd +16 -0
  52. gap/pkg/semigroups/gap/attributes/maximal.gi +1876 -0
  53. gap/pkg/semigroups/gap/attributes/properties.gd +109 -0
  54. gap/pkg/semigroups/gap/attributes/properties.gi +1658 -0
  55. gap/pkg/semigroups/gap/attributes/rms-translat.gd +39 -0
  56. gap/pkg/semigroups/gap/attributes/rms-translat.gi +1078 -0
  57. gap/pkg/semigroups/gap/attributes/semifp.gd +12 -0
  58. gap/pkg/semigroups/gap/attributes/semifp.gi +84 -0
  59. gap/pkg/semigroups/gap/attributes/translat.gd +474 -0
  60. gap/pkg/semigroups/gap/attributes/translat.gi +1779 -0
  61. gap/pkg/semigroups/gap/congruences/cong.gd +154 -0
  62. gap/pkg/semigroups/gap/congruences/cong.gi +351 -0
  63. gap/pkg/semigroups/gap/congruences/conginv.gd +38 -0
  64. gap/pkg/semigroups/gap/congruences/conginv.gi +589 -0
  65. gap/pkg/semigroups/gap/congruences/conglatt.gd +101 -0
  66. gap/pkg/semigroups/gap/congruences/conglatt.gi +886 -0
  67. gap/pkg/semigroups/gap/congruences/congpairs.gd +21 -0
  68. gap/pkg/semigroups/gap/congruences/congpairs.gi +272 -0
  69. gap/pkg/semigroups/gap/congruences/congpart.gd +90 -0
  70. gap/pkg/semigroups/gap/congruences/congpart.gi +449 -0
  71. gap/pkg/semigroups/gap/congruences/congrees.gd +20 -0
  72. gap/pkg/semigroups/gap/congruences/congrees.gi +313 -0
  73. gap/pkg/semigroups/gap/congruences/congrms.gd +54 -0
  74. gap/pkg/semigroups/gap/congruences/congrms.gi +1467 -0
  75. gap/pkg/semigroups/gap/congruences/congsemigraph.gd +28 -0
  76. gap/pkg/semigroups/gap/congruences/congsemigraph.gi +289 -0
  77. gap/pkg/semigroups/gap/congruences/congsimple.gd +27 -0
  78. gap/pkg/semigroups/gap/congruences/congsimple.gi +236 -0
  79. gap/pkg/semigroups/gap/congruences/conguniv.gd +20 -0
  80. gap/pkg/semigroups/gap/congruences/conguniv.gi +271 -0
  81. gap/pkg/semigroups/gap/congruences/congwordgraph.gd +21 -0
  82. gap/pkg/semigroups/gap/congruences/congwordgraph.gi +250 -0
  83. gap/pkg/semigroups/gap/elements/bipart.gd +71 -0
  84. gap/pkg/semigroups/gap/elements/bipart.gi +995 -0
  85. gap/pkg/semigroups/gap/elements/blocks.gd +31 -0
  86. gap/pkg/semigroups/gap/elements/blocks.gi +134 -0
  87. gap/pkg/semigroups/gap/elements/boolmat.gd +74 -0
  88. gap/pkg/semigroups/gap/elements/boolmat.gi +726 -0
  89. gap/pkg/semigroups/gap/elements/elements.gd +11 -0
  90. gap/pkg/semigroups/gap/elements/elements.gi +121 -0
  91. gap/pkg/semigroups/gap/elements/ffmat.gd +71 -0
  92. gap/pkg/semigroups/gap/elements/ffmat.gi +311 -0
  93. gap/pkg/semigroups/gap/elements/maxplusmat.gd +131 -0
  94. gap/pkg/semigroups/gap/elements/maxplusmat.gi +782 -0
  95. gap/pkg/semigroups/gap/elements/pbr.gd +51 -0
  96. gap/pkg/semigroups/gap/elements/pbr.gi +740 -0
  97. gap/pkg/semigroups/gap/elements/pperm.gd +11 -0
  98. gap/pkg/semigroups/gap/elements/pperm.gi +14 -0
  99. gap/pkg/semigroups/gap/elements/semiringmat.gd +136 -0
  100. gap/pkg/semigroups/gap/elements/semiringmat.gi +717 -0
  101. gap/pkg/semigroups/gap/elements/star.gd +21 -0
  102. gap/pkg/semigroups/gap/elements/star.gi +21 -0
  103. gap/pkg/semigroups/gap/elements/trans.gd +13 -0
  104. gap/pkg/semigroups/gap/elements/trans.gi +50 -0
  105. gap/pkg/semigroups/gap/fp/freeband.gd +22 -0
  106. gap/pkg/semigroups/gap/fp/freeband.gi +502 -0
  107. gap/pkg/semigroups/gap/fp/freeinverse.gd +30 -0
  108. gap/pkg/semigroups/gap/fp/freeinverse.gi +465 -0
  109. gap/pkg/semigroups/gap/fp/tietze.gd +89 -0
  110. gap/pkg/semigroups/gap/fp/tietze.gi +1578 -0
  111. gap/pkg/semigroups/gap/fp/word.gd +15 -0
  112. gap/pkg/semigroups/gap/fp/word.gi +67 -0
  113. gap/pkg/semigroups/gap/greens/acting-inverse.gi +774 -0
  114. gap/pkg/semigroups/gap/greens/acting-regular.gi +553 -0
  115. gap/pkg/semigroups/gap/greens/acting.gd +81 -0
  116. gap/pkg/semigroups/gap/greens/acting.gi +2433 -0
  117. gap/pkg/semigroups/gap/greens/froidure-pin.gd +25 -0
  118. gap/pkg/semigroups/gap/greens/froidure-pin.gi +741 -0
  119. gap/pkg/semigroups/gap/greens/generic.gd +117 -0
  120. gap/pkg/semigroups/gap/greens/generic.gi +630 -0
  121. gap/pkg/semigroups/gap/ideals/acting.gd +17 -0
  122. gap/pkg/semigroups/gap/ideals/acting.gi +1155 -0
  123. gap/pkg/semigroups/gap/ideals/froidure-pin.gd +11 -0
  124. gap/pkg/semigroups/gap/ideals/froidure-pin.gi +105 -0
  125. gap/pkg/semigroups/gap/ideals/ideals.gd +45 -0
  126. gap/pkg/semigroups/gap/ideals/ideals.gi +442 -0
  127. gap/pkg/semigroups/gap/ideals/lambda-rho.gd +16 -0
  128. gap/pkg/semigroups/gap/ideals/lambda-rho.gi +614 -0
  129. gap/pkg/semigroups/gap/libsemigroups/cong.gd +24 -0
  130. gap/pkg/semigroups/gap/libsemigroups/cong.gi +431 -0
  131. gap/pkg/semigroups/gap/libsemigroups/fpsemi.gd +16 -0
  132. gap/pkg/semigroups/gap/libsemigroups/fpsemi.gi +53 -0
  133. gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gd +17 -0
  134. gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gi +945 -0
  135. gap/pkg/semigroups/gap/libsemigroups/sims1.gd +38 -0
  136. gap/pkg/semigroups/gap/libsemigroups/sims1.gi +308 -0
  137. gap/pkg/semigroups/gap/main/acting.gd +36 -0
  138. gap/pkg/semigroups/gap/main/acting.gi +779 -0
  139. gap/pkg/semigroups/gap/main/froidure-pin.gd +72 -0
  140. gap/pkg/semigroups/gap/main/froidure-pin.gi +655 -0
  141. gap/pkg/semigroups/gap/main/graded.gd +26 -0
  142. gap/pkg/semigroups/gap/main/graded.gi +355 -0
  143. gap/pkg/semigroups/gap/main/lambda-rho.gd +29 -0
  144. gap/pkg/semigroups/gap/main/lambda-rho.gi +514 -0
  145. gap/pkg/semigroups/gap/main/orbits.gd +24 -0
  146. gap/pkg/semigroups/gap/main/orbits.gi +512 -0
  147. gap/pkg/semigroups/gap/main/semiact.gd +20 -0
  148. gap/pkg/semigroups/gap/main/semiact.gi +821 -0
  149. gap/pkg/semigroups/gap/main/setup.gd +61 -0
  150. gap/pkg/semigroups/gap/main/setup.gi +1094 -0
  151. gap/pkg/semigroups/gap/obsolete.gd +9 -0
  152. gap/pkg/semigroups/gap/obsolete.gi +14 -0
  153. gap/pkg/semigroups/gap/options.g +55 -0
  154. gap/pkg/semigroups/gap/semigroups/grpperm.gd +12 -0
  155. gap/pkg/semigroups/gap/semigroups/grpperm.gi +177 -0
  156. gap/pkg/semigroups/gap/semigroups/semibipart.gd +28 -0
  157. gap/pkg/semigroups/gap/semigroups/semibipart.gi +570 -0
  158. gap/pkg/semigroups/gap/semigroups/semiboolmat.gd +20 -0
  159. gap/pkg/semigroups/gap/semigroups/semiboolmat.gi +104 -0
  160. gap/pkg/semigroups/gap/semigroups/semicons.gd +52 -0
  161. gap/pkg/semigroups/gap/semigroups/semicons.gi +1194 -0
  162. gap/pkg/semigroups/gap/semigroups/semidp.gd +13 -0
  163. gap/pkg/semigroups/gap/semigroups/semidp.gi +509 -0
  164. gap/pkg/semigroups/gap/semigroups/semieunit.gd +126 -0
  165. gap/pkg/semigroups/gap/semigroups/semieunit.gi +889 -0
  166. gap/pkg/semigroups/gap/semigroups/semiex.gd +104 -0
  167. gap/pkg/semigroups/gap/semigroups/semiex.gi +1590 -0
  168. gap/pkg/semigroups/gap/semigroups/semiffmat.gd +37 -0
  169. gap/pkg/semigroups/gap/semigroups/semiffmat.gi +565 -0
  170. gap/pkg/semigroups/gap/semigroups/semifp.gd +28 -0
  171. gap/pkg/semigroups/gap/semigroups/semifp.gi +1364 -0
  172. gap/pkg/semigroups/gap/semigroups/semigraph.gd +40 -0
  173. gap/pkg/semigroups/gap/semigroups/semigraph.gi +292 -0
  174. gap/pkg/semigroups/gap/semigroups/semigrp.gd +165 -0
  175. gap/pkg/semigroups/gap/semigroups/semigrp.gi +1225 -0
  176. gap/pkg/semigroups/gap/semigroups/semimaxplus.gd +72 -0
  177. gap/pkg/semigroups/gap/semigroups/semimaxplus.gi +710 -0
  178. gap/pkg/semigroups/gap/semigroups/semintmat.gd +13 -0
  179. gap/pkg/semigroups/gap/semigroups/semintmat.gi +74 -0
  180. gap/pkg/semigroups/gap/semigroups/semipbr.gd +19 -0
  181. gap/pkg/semigroups/gap/semigroups/semipbr.gi +139 -0
  182. gap/pkg/semigroups/gap/semigroups/semipperm.gd +27 -0
  183. gap/pkg/semigroups/gap/semigroups/semipperm.gi +711 -0
  184. gap/pkg/semigroups/gap/semigroups/semiquo.gd +14 -0
  185. gap/pkg/semigroups/gap/semigroups/semiquo.gi +97 -0
  186. gap/pkg/semigroups/gap/semigroups/semiringmat.gd +16 -0
  187. gap/pkg/semigroups/gap/semigroups/semiringmat.gi +21 -0
  188. gap/pkg/semigroups/gap/semigroups/semirms.gd +19 -0
  189. gap/pkg/semigroups/gap/semigroups/semirms.gi +977 -0
  190. gap/pkg/semigroups/gap/semigroups/semitrans.gd +49 -0
  191. gap/pkg/semigroups/gap/semigroups/semitrans.gi +909 -0
  192. gap/pkg/semigroups/gap/tools/display.gd +24 -0
  193. gap/pkg/semigroups/gap/tools/display.gi +749 -0
  194. gap/pkg/semigroups/gap/tools/io.gd +17 -0
  195. gap/pkg/semigroups/gap/tools/io.gi +543 -0
  196. gap/pkg/semigroups/gap/tools/iterators.gd +16 -0
  197. gap/pkg/semigroups/gap/tools/iterators.gi +253 -0
  198. gap/pkg/semigroups/gap/tools/utils.gd +19 -0
  199. gap/pkg/semigroups/gap/tools/utils.gi +756 -0
  200. gap/pkg/semigroups/gapbind14/.ccls +18 -0
  201. gap/pkg/semigroups/gapbind14/.clang-format +104 -0
  202. gap/pkg/semigroups/gapbind14/CPPLINT.cfg +5 -0
  203. gap/pkg/semigroups/gapbind14/LICENSE +674 -0
  204. gap/pkg/semigroups/gapbind14/README.md +76 -0
  205. gap/pkg/semigroups/gapbind14/demo/.gitignore +4 -0
  206. gap/pkg/semigroups/gapbind14/demo/LICENSE +293 -0
  207. gap/pkg/semigroups/gapbind14/demo/Makefile.gappkg +220 -0
  208. gap/pkg/semigroups/gapbind14/demo/Makefile.in +19 -0
  209. gap/pkg/semigroups/gapbind14/demo/PackageInfo.g +87 -0
  210. gap/pkg/semigroups/gapbind14/demo/README.md +17 -0
  211. gap/pkg/semigroups/gapbind14/demo/configure +34 -0
  212. gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gd +19 -0
  213. gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gi +10 -0
  214. gap/pkg/semigroups/gapbind14/demo/init.g +16 -0
  215. gap/pkg/semigroups/gapbind14/demo/makedoc.g +10 -0
  216. gap/pkg/semigroups/gapbind14/demo/read.g +6 -0
  217. gap/pkg/semigroups/gapbind14/demo/src/gapbind_demo.cc +142 -0
  218. gap/pkg/semigroups/gapbind14/demo/tst/testall.g +12 -0
  219. gap/pkg/semigroups/gapbind14/include/gapbind14/cpp_fn.hpp +223 -0
  220. gap/pkg/semigroups/gapbind14/include/gapbind14/gap_include.hpp +26 -0
  221. gap/pkg/semigroups/gapbind14/include/gapbind14/gapbind14.hpp +445 -0
  222. gap/pkg/semigroups/gapbind14/include/gapbind14/tame_free_fn.hpp +420 -0
  223. gap/pkg/semigroups/gapbind14/include/gapbind14/tame_mem_fn.hpp +556 -0
  224. gap/pkg/semigroups/gapbind14/include/gapbind14/to_cpp.hpp +162 -0
  225. gap/pkg/semigroups/gapbind14/include/gapbind14/to_gap.hpp +158 -0
  226. gap/pkg/semigroups/gapbind14/src/.clang-format +108 -0
  227. gap/pkg/semigroups/gapbind14/src/gapbind14.cpp +334 -0
  228. gap/pkg/semigroups/init.g +150 -0
  229. gap/pkg/semigroups/m4/ax_append_flag.m4 +50 -0
  230. gap/pkg/semigroups/m4/ax_check_compile_flag.m4 +53 -0
  231. gap/pkg/semigroups/m4/ax_check_hpcombi.m4 +121 -0
  232. gap/pkg/semigroups/m4/ax_check_libsemigroup.m4 +68 -0
  233. gap/pkg/semigroups/m4/ax_compare_version.m4 +177 -0
  234. gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx.m4 +1009 -0
  235. gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx_14.m4 +34 -0
  236. gap/pkg/semigroups/m4/ax_prefix_config_h.m4 +203 -0
  237. gap/pkg/semigroups/m4/ax_pthread.m4 +522 -0
  238. gap/pkg/semigroups/m4/find_gap.m4 +94 -0
  239. gap/pkg/semigroups/makedoc.g +153 -0
  240. gap/pkg/semigroups/prerequisites.sh +62 -0
  241. gap/pkg/semigroups/read.g +105 -0
  242. gap/pkg/semigroups/release.toml +6 -0
  243. gap/pkg/semigroups/tst/extreme/README +2 -0
  244. gap/pkg/semigroups/tst/extreme/attrinv.tst +703 -0
  245. gap/pkg/semigroups/tst/extreme/bipart.tst +2803 -0
  246. gap/pkg/semigroups/tst/extreme/closure.tst +652 -0
  247. gap/pkg/semigroups/tst/extreme/cong.tst +286 -0
  248. gap/pkg/semigroups/tst/extreme/conginv.tst +43 -0
  249. gap/pkg/semigroups/tst/extreme/examples.tst +2449 -0
  250. gap/pkg/semigroups/tst/extreme/freeband.tst +37 -0
  251. gap/pkg/semigroups/tst/extreme/greens-acting-regular.tst +27 -0
  252. gap/pkg/semigroups/tst/extreme/greens-acting.tst +1999 -0
  253. gap/pkg/semigroups/tst/extreme/ideals.tst +858 -0
  254. gap/pkg/semigroups/tst/extreme/inverse.tst +1025 -0
  255. gap/pkg/semigroups/tst/extreme/maximal.tst +856 -0
  256. gap/pkg/semigroups/tst/extreme/misc.tst +4236 -0
  257. gap/pkg/semigroups/tst/extreme/monoid_pkg.tst +1488 -0
  258. gap/pkg/semigroups/tst/extreme/properties.tst +914 -0
  259. gap/pkg/semigroups/tst/extreme/semibipart.tst +2837 -0
  260. gap/pkg/semigroups/tst/extreme/semieunit.tst +49 -0
  261. gap/pkg/semigroups/tst/extreme/semiffmat.tst +353 -0
  262. gap/pkg/semigroups/tst/extreme/semigroups.tst +245 -0
  263. gap/pkg/semigroups/tst/extreme/semiiter.tst +58 -0
  264. gap/pkg/semigroups/tst/extreme/semirms.tst +1091 -0
  265. gap/pkg/semigroups/tst/extreme/transform.tst +305 -0
  266. gap/pkg/semigroups/tst/extreme/translat.tst +44 -0
  267. gap/pkg/semigroups/tst/standard/README +2 -0
  268. gap/pkg/semigroups/tst/standard/attributes/acting.tst +388 -0
  269. gap/pkg/semigroups/tst/standard/attributes/attr.tst +2404 -0
  270. gap/pkg/semigroups/tst/standard/attributes/dual.tst +308 -0
  271. gap/pkg/semigroups/tst/standard/attributes/factor.tst +629 -0
  272. gap/pkg/semigroups/tst/standard/attributes/homomorph.tst +1134 -0
  273. gap/pkg/semigroups/tst/standard/attributes/inverse.tst +1521 -0
  274. gap/pkg/semigroups/tst/standard/attributes/isomorph.tst +435 -0
  275. gap/pkg/semigroups/tst/standard/attributes/isorms.tst +1147 -0
  276. gap/pkg/semigroups/tst/standard/attributes/maximal.tst +853 -0
  277. gap/pkg/semigroups/tst/standard/attributes/properties.tst +2028 -0
  278. gap/pkg/semigroups/tst/standard/attributes/semifp.tst +53 -0
  279. gap/pkg/semigroups/tst/standard/attributes/translat.tst +796 -0
  280. gap/pkg/semigroups/tst/standard/congruences/cong.tst +1044 -0
  281. gap/pkg/semigroups/tst/standard/congruences/conginv.tst +292 -0
  282. gap/pkg/semigroups/tst/standard/congruences/conglatt.tst +421 -0
  283. gap/pkg/semigroups/tst/standard/congruences/congpairs.tst +1011 -0
  284. gap/pkg/semigroups/tst/standard/congruences/congrees.tst +288 -0
  285. gap/pkg/semigroups/tst/standard/congruences/congrms.tst +701 -0
  286. gap/pkg/semigroups/tst/standard/congruences/congsemigraph.tst +422 -0
  287. gap/pkg/semigroups/tst/standard/congruences/congsimple.tst +311 -0
  288. gap/pkg/semigroups/tst/standard/congruences/conguniv.tst +259 -0
  289. gap/pkg/semigroups/tst/standard/congruences/congwordgraph.tst +330 -0
  290. gap/pkg/semigroups/tst/standard/elements/bipart.tst +783 -0
  291. gap/pkg/semigroups/tst/standard/elements/blocks.tst +166 -0
  292. gap/pkg/semigroups/tst/standard/elements/boolmat.tst +608 -0
  293. gap/pkg/semigroups/tst/standard/elements/elements.tst +117 -0
  294. gap/pkg/semigroups/tst/standard/elements/ffmat.tst +349 -0
  295. gap/pkg/semigroups/tst/standard/elements/maxplusmat.tst +613 -0
  296. gap/pkg/semigroups/tst/standard/elements/pbr.tst +506 -0
  297. gap/pkg/semigroups/tst/standard/elements/pperm.tst +32 -0
  298. gap/pkg/semigroups/tst/standard/elements/semiringmat.tst +601 -0
  299. gap/pkg/semigroups/tst/standard/elements/trans.tst +58 -0
  300. gap/pkg/semigroups/tst/standard/fp/freeband.tst +311 -0
  301. gap/pkg/semigroups/tst/standard/fp/freeinverse.tst +147 -0
  302. gap/pkg/semigroups/tst/standard/fp/tietze.tst +780 -0
  303. gap/pkg/semigroups/tst/standard/fp/word.tst +106 -0
  304. gap/pkg/semigroups/tst/standard/greens/acting-inverse.tst +545 -0
  305. gap/pkg/semigroups/tst/standard/greens/acting-regular.tst +396 -0
  306. gap/pkg/semigroups/tst/standard/greens/acting.tst +2033 -0
  307. gap/pkg/semigroups/tst/standard/greens/froidure-pin.tst +1831 -0
  308. gap/pkg/semigroups/tst/standard/greens/generic.tst +1436 -0
  309. gap/pkg/semigroups/tst/standard/ideals/acting.tst +279 -0
  310. gap/pkg/semigroups/tst/standard/ideals/froidure-pin.tst +178 -0
  311. gap/pkg/semigroups/tst/standard/ideals/ideals.tst +380 -0
  312. gap/pkg/semigroups/tst/standard/libsemigroups/cong.tst +310 -0
  313. gap/pkg/semigroups/tst/standard/libsemigroups/froidure-pin.tst +778 -0
  314. gap/pkg/semigroups/tst/standard/libsemigroups/sims1.tst +379 -0
  315. gap/pkg/semigroups/tst/standard/main/acting.tst +411 -0
  316. gap/pkg/semigroups/tst/standard/main/froidure-pin.tst +392 -0
  317. gap/pkg/semigroups/tst/standard/main/semiact.tst +203 -0
  318. gap/pkg/semigroups/tst/standard/main/setup.tst +1144 -0
  319. gap/pkg/semigroups/tst/standard/obsolete.tst +19 -0
  320. gap/pkg/semigroups/tst/standard/options.tst +54 -0
  321. gap/pkg/semigroups/tst/standard/semigroups/grpperm.tst +581 -0
  322. gap/pkg/semigroups/tst/standard/semigroups/semibipart.tst +2635 -0
  323. gap/pkg/semigroups/tst/standard/semigroups/semiboolmat.tst +1871 -0
  324. gap/pkg/semigroups/tst/standard/semigroups/semicons.tst +1173 -0
  325. gap/pkg/semigroups/tst/standard/semigroups/semidp.tst +739 -0
  326. gap/pkg/semigroups/tst/standard/semigroups/semieunit.tst +339 -0
  327. gap/pkg/semigroups/tst/standard/semigroups/semiex.tst +2055 -0
  328. gap/pkg/semigroups/tst/standard/semigroups/semiffmat.tst +746 -0
  329. gap/pkg/semigroups/tst/standard/semigroups/semifp.tst +2702 -0
  330. gap/pkg/semigroups/tst/standard/semigroups/semigraph.tst +133 -0
  331. gap/pkg/semigroups/tst/standard/semigroups/semigrp.tst +1112 -0
  332. gap/pkg/semigroups/tst/standard/semigroups/semimaxplus.tst +654 -0
  333. gap/pkg/semigroups/tst/standard/semigroups/semipbr.tst +2142 -0
  334. gap/pkg/semigroups/tst/standard/semigroups/semipperm.tst +2169 -0
  335. gap/pkg/semigroups/tst/standard/semigroups/semiquo.tst +278 -0
  336. gap/pkg/semigroups/tst/standard/semigroups/semirms.tst +3010 -0
  337. gap/pkg/semigroups/tst/standard/semigroups/semitrans.tst +2758 -0
  338. gap/pkg/semigroups/tst/standard/tools/display.tst +1040 -0
  339. gap/pkg/semigroups/tst/standard/tools/io.tst +363 -0
  340. gap/pkg/semigroups/tst/testinstall.tst +1815 -0
  341. gap/pkg/semigroups/tst/teststandard.g +22 -0
  342. gap/pkg/semigroups/tst/workspaces/load-workspace.tst +142 -0
  343. gap/pkg/semigroups/tst/workspaces/load.g +11 -0
  344. gap/pkg/semigroups/tst/workspaces/save-workspace.tst +166 -0
  345. gap/pkg/semigroups/tst/workspaces/save.g +14 -0
  346. passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA +93 -0
  347. passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA.bak +94 -0
  348. passagemath_gap_pkg_semigroups-10.6.29.dist-info/RECORD +354 -0
  349. passagemath_gap_pkg_semigroups-10.6.29.dist-info/WHEEL +6 -0
  350. passagemath_gap_pkg_semigroups-10.6.29.dist-info/top_level.txt +1 -0
  351. passagemath_gap_pkg_semigroups.dylibs/libsemigroups.2.dylib +0 -0
  352. sage/all__sagemath_gap_pkg_semigroups.py +1 -0
  353. sage/libs/all__sagemath_gap_pkg_semigroups.py +1 -0
  354. sage/libs/gap_pkg_semigroups.abi3.so +0 -0
@@ -0,0 +1,1960 @@
1
+ #! /bin/sh
2
+ # Configuration validation subroutine script.
3
+ # Copyright 1992-2023 Free Software Foundation, Inc.
4
+
5
+ # shellcheck disable=SC2006,SC2268 # see below for rationale
6
+
7
+ timestamp='2023-09-19'
8
+
9
+ # This file is free software; you can redistribute it and/or modify it
10
+ # under the terms of the GNU General Public License as published by
11
+ # the Free Software Foundation, either version 3 of the License, or
12
+ # (at your option) any later version.
13
+ #
14
+ # This program is distributed in the hope that it will be useful, but
15
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
+ # General Public License for more details.
18
+ #
19
+ # You should have received a copy of the GNU General Public License
20
+ # along with this program; if not, see <https://www.gnu.org/licenses/>.
21
+ #
22
+ # As a special exception to the GNU General Public License, if you
23
+ # distribute this file as part of a program that contains a
24
+ # configuration script generated by Autoconf, you may include it under
25
+ # the same distribution terms that you use for the rest of that
26
+ # program. This Exception is an additional permission under section 7
27
+ # of the GNU General Public License, version 3 ("GPLv3").
28
+
29
+
30
+ # Please send patches to <config-patches@gnu.org>.
31
+ #
32
+ # Configuration subroutine to validate and canonicalize a configuration type.
33
+ # Supply the specified configuration type as an argument.
34
+ # If it is invalid, we print an error message on stderr and exit with code 1.
35
+ # Otherwise, we print the canonical config type on stdout and succeed.
36
+
37
+ # You can get the latest version of this script from:
38
+ # https://git.savannah.gnu.org/cgit/config.git/plain/config.sub
39
+
40
+ # This file is supposed to be the same for all GNU packages
41
+ # and recognize all the CPU types, system types and aliases
42
+ # that are meaningful with *any* GNU software.
43
+ # Each package is responsible for reporting which valid configurations
44
+ # it does not support. The user should be able to distinguish
45
+ # a failure to support a valid configuration from a meaningless
46
+ # configuration.
47
+
48
+ # The goal of this file is to map all the various variations of a given
49
+ # machine specification into a single specification in the form:
50
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
51
+ # or in some cases, the newer four-part form:
52
+ # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
53
+ # It is wrong to echo any other type of specification.
54
+
55
+ # The "shellcheck disable" line above the timestamp inhibits complaints
56
+ # about features and limitations of the classic Bourne shell that were
57
+ # superseded or lifted in POSIX. However, this script identifies a wide
58
+ # variety of pre-POSIX systems that do not have POSIX shells at all, and
59
+ # even some reasonably current systems (Solaris 10 as case-in-point) still
60
+ # have a pre-POSIX /bin/sh.
61
+
62
+ me=`echo "$0" | sed -e 's,.*/,,'`
63
+
64
+ usage="\
65
+ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
66
+
67
+ Canonicalize a configuration name.
68
+
69
+ Options:
70
+ -h, --help print this help, then exit
71
+ -t, --time-stamp print date of last modification, then exit
72
+ -v, --version print version number, then exit
73
+
74
+ Report bugs and patches to <config-patches@gnu.org>."
75
+
76
+ version="\
77
+ GNU config.sub ($timestamp)
78
+
79
+ Copyright 1992-2023 Free Software Foundation, Inc.
80
+
81
+ This is free software; see the source for copying conditions. There is NO
82
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
83
+
84
+ help="
85
+ Try '$me --help' for more information."
86
+
87
+ # Parse command line
88
+ while test $# -gt 0 ; do
89
+ case $1 in
90
+ --time-stamp | --time* | -t )
91
+ echo "$timestamp" ; exit ;;
92
+ --version | -v )
93
+ echo "$version" ; exit ;;
94
+ --help | --h* | -h )
95
+ echo "$usage"; exit ;;
96
+ -- ) # Stop option processing
97
+ shift; break ;;
98
+ - ) # Use stdin as input.
99
+ break ;;
100
+ -* )
101
+ echo "$me: invalid option $1$help" >&2
102
+ exit 1 ;;
103
+
104
+ *local*)
105
+ # First pass through any local machine types.
106
+ echo "$1"
107
+ exit ;;
108
+
109
+ * )
110
+ break ;;
111
+ esac
112
+ done
113
+
114
+ case $# in
115
+ 0) echo "$me: missing argument$help" >&2
116
+ exit 1;;
117
+ 1) ;;
118
+ *) echo "$me: too many arguments$help" >&2
119
+ exit 1;;
120
+ esac
121
+
122
+ # Split fields of configuration type
123
+ # shellcheck disable=SC2162
124
+ saved_IFS=$IFS
125
+ IFS="-" read field1 field2 field3 field4 <<EOF
126
+ $1
127
+ EOF
128
+ IFS=$saved_IFS
129
+
130
+ # Separate into logical components for further validation
131
+ case $1 in
132
+ *-*-*-*-*)
133
+ echo "Invalid configuration '$1': more than four components" >&2
134
+ exit 1
135
+ ;;
136
+ *-*-*-*)
137
+ basic_machine=$field1-$field2
138
+ basic_os=$field3-$field4
139
+ ;;
140
+ *-*-*)
141
+ # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
142
+ # parts
143
+ maybe_os=$field2-$field3
144
+ case $maybe_os in
145
+ nto-qnx* | linux-* | uclinux-uclibc* \
146
+ | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
147
+ | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
148
+ | storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \
149
+ | windows-* )
150
+ basic_machine=$field1
151
+ basic_os=$maybe_os
152
+ ;;
153
+ android-linux)
154
+ basic_machine=$field1-unknown
155
+ basic_os=linux-android
156
+ ;;
157
+ *)
158
+ basic_machine=$field1-$field2
159
+ basic_os=$field3
160
+ ;;
161
+ esac
162
+ ;;
163
+ *-*)
164
+ # A lone config we happen to match not fitting any pattern
165
+ case $field1-$field2 in
166
+ decstation-3100)
167
+ basic_machine=mips-dec
168
+ basic_os=
169
+ ;;
170
+ *-*)
171
+ # Second component is usually, but not always the OS
172
+ case $field2 in
173
+ # Prevent following clause from handling this valid os
174
+ sun*os*)
175
+ basic_machine=$field1
176
+ basic_os=$field2
177
+ ;;
178
+ zephyr*)
179
+ basic_machine=$field1-unknown
180
+ basic_os=$field2
181
+ ;;
182
+ # Manufacturers
183
+ dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
184
+ | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
185
+ | unicom* | ibm* | next | hp | isi* | apollo | altos* \
186
+ | convergent* | ncr* | news | 32* | 3600* | 3100* \
187
+ | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
188
+ | ultra | tti* | harris | dolphin | highlevel | gould \
189
+ | cbm | ns | masscomp | apple | axis | knuth | cray \
190
+ | microblaze* | sim | cisco \
191
+ | oki | wec | wrs | winbond)
192
+ basic_machine=$field1-$field2
193
+ basic_os=
194
+ ;;
195
+ *)
196
+ basic_machine=$field1
197
+ basic_os=$field2
198
+ ;;
199
+ esac
200
+ ;;
201
+ esac
202
+ ;;
203
+ *)
204
+ # Convert single-component short-hands not valid as part of
205
+ # multi-component configurations.
206
+ case $field1 in
207
+ 386bsd)
208
+ basic_machine=i386-pc
209
+ basic_os=bsd
210
+ ;;
211
+ a29khif)
212
+ basic_machine=a29k-amd
213
+ basic_os=udi
214
+ ;;
215
+ adobe68k)
216
+ basic_machine=m68010-adobe
217
+ basic_os=scout
218
+ ;;
219
+ alliant)
220
+ basic_machine=fx80-alliant
221
+ basic_os=
222
+ ;;
223
+ altos | altos3068)
224
+ basic_machine=m68k-altos
225
+ basic_os=
226
+ ;;
227
+ am29k)
228
+ basic_machine=a29k-none
229
+ basic_os=bsd
230
+ ;;
231
+ amdahl)
232
+ basic_machine=580-amdahl
233
+ basic_os=sysv
234
+ ;;
235
+ amiga)
236
+ basic_machine=m68k-unknown
237
+ basic_os=
238
+ ;;
239
+ amigaos | amigados)
240
+ basic_machine=m68k-unknown
241
+ basic_os=amigaos
242
+ ;;
243
+ amigaunix | amix)
244
+ basic_machine=m68k-unknown
245
+ basic_os=sysv4
246
+ ;;
247
+ apollo68)
248
+ basic_machine=m68k-apollo
249
+ basic_os=sysv
250
+ ;;
251
+ apollo68bsd)
252
+ basic_machine=m68k-apollo
253
+ basic_os=bsd
254
+ ;;
255
+ aros)
256
+ basic_machine=i386-pc
257
+ basic_os=aros
258
+ ;;
259
+ aux)
260
+ basic_machine=m68k-apple
261
+ basic_os=aux
262
+ ;;
263
+ balance)
264
+ basic_machine=ns32k-sequent
265
+ basic_os=dynix
266
+ ;;
267
+ blackfin)
268
+ basic_machine=bfin-unknown
269
+ basic_os=linux
270
+ ;;
271
+ cegcc)
272
+ basic_machine=arm-unknown
273
+ basic_os=cegcc
274
+ ;;
275
+ convex-c1)
276
+ basic_machine=c1-convex
277
+ basic_os=bsd
278
+ ;;
279
+ convex-c2)
280
+ basic_machine=c2-convex
281
+ basic_os=bsd
282
+ ;;
283
+ convex-c32)
284
+ basic_machine=c32-convex
285
+ basic_os=bsd
286
+ ;;
287
+ convex-c34)
288
+ basic_machine=c34-convex
289
+ basic_os=bsd
290
+ ;;
291
+ convex-c38)
292
+ basic_machine=c38-convex
293
+ basic_os=bsd
294
+ ;;
295
+ cray)
296
+ basic_machine=j90-cray
297
+ basic_os=unicos
298
+ ;;
299
+ crds | unos)
300
+ basic_machine=m68k-crds
301
+ basic_os=
302
+ ;;
303
+ da30)
304
+ basic_machine=m68k-da30
305
+ basic_os=
306
+ ;;
307
+ decstation | pmax | pmin | dec3100 | decstatn)
308
+ basic_machine=mips-dec
309
+ basic_os=
310
+ ;;
311
+ delta88)
312
+ basic_machine=m88k-motorola
313
+ basic_os=sysv3
314
+ ;;
315
+ dicos)
316
+ basic_machine=i686-pc
317
+ basic_os=dicos
318
+ ;;
319
+ djgpp)
320
+ basic_machine=i586-pc
321
+ basic_os=msdosdjgpp
322
+ ;;
323
+ ebmon29k)
324
+ basic_machine=a29k-amd
325
+ basic_os=ebmon
326
+ ;;
327
+ es1800 | OSE68k | ose68k | ose | OSE)
328
+ basic_machine=m68k-ericsson
329
+ basic_os=ose
330
+ ;;
331
+ gmicro)
332
+ basic_machine=tron-gmicro
333
+ basic_os=sysv
334
+ ;;
335
+ go32)
336
+ basic_machine=i386-pc
337
+ basic_os=go32
338
+ ;;
339
+ h8300hms)
340
+ basic_machine=h8300-hitachi
341
+ basic_os=hms
342
+ ;;
343
+ h8300xray)
344
+ basic_machine=h8300-hitachi
345
+ basic_os=xray
346
+ ;;
347
+ h8500hms)
348
+ basic_machine=h8500-hitachi
349
+ basic_os=hms
350
+ ;;
351
+ harris)
352
+ basic_machine=m88k-harris
353
+ basic_os=sysv3
354
+ ;;
355
+ hp300 | hp300hpux)
356
+ basic_machine=m68k-hp
357
+ basic_os=hpux
358
+ ;;
359
+ hp300bsd)
360
+ basic_machine=m68k-hp
361
+ basic_os=bsd
362
+ ;;
363
+ hppaosf)
364
+ basic_machine=hppa1.1-hp
365
+ basic_os=osf
366
+ ;;
367
+ hppro)
368
+ basic_machine=hppa1.1-hp
369
+ basic_os=proelf
370
+ ;;
371
+ i386mach)
372
+ basic_machine=i386-mach
373
+ basic_os=mach
374
+ ;;
375
+ isi68 | isi)
376
+ basic_machine=m68k-isi
377
+ basic_os=sysv
378
+ ;;
379
+ m68knommu)
380
+ basic_machine=m68k-unknown
381
+ basic_os=linux
382
+ ;;
383
+ magnum | m3230)
384
+ basic_machine=mips-mips
385
+ basic_os=sysv
386
+ ;;
387
+ merlin)
388
+ basic_machine=ns32k-utek
389
+ basic_os=sysv
390
+ ;;
391
+ mingw64)
392
+ basic_machine=x86_64-pc
393
+ basic_os=mingw64
394
+ ;;
395
+ mingw32)
396
+ basic_machine=i686-pc
397
+ basic_os=mingw32
398
+ ;;
399
+ mingw32ce)
400
+ basic_machine=arm-unknown
401
+ basic_os=mingw32ce
402
+ ;;
403
+ monitor)
404
+ basic_machine=m68k-rom68k
405
+ basic_os=coff
406
+ ;;
407
+ morphos)
408
+ basic_machine=powerpc-unknown
409
+ basic_os=morphos
410
+ ;;
411
+ moxiebox)
412
+ basic_machine=moxie-unknown
413
+ basic_os=moxiebox
414
+ ;;
415
+ msdos)
416
+ basic_machine=i386-pc
417
+ basic_os=msdos
418
+ ;;
419
+ msys)
420
+ basic_machine=i686-pc
421
+ basic_os=msys
422
+ ;;
423
+ mvs)
424
+ basic_machine=i370-ibm
425
+ basic_os=mvs
426
+ ;;
427
+ nacl)
428
+ basic_machine=le32-unknown
429
+ basic_os=nacl
430
+ ;;
431
+ ncr3000)
432
+ basic_machine=i486-ncr
433
+ basic_os=sysv4
434
+ ;;
435
+ netbsd386)
436
+ basic_machine=i386-pc
437
+ basic_os=netbsd
438
+ ;;
439
+ netwinder)
440
+ basic_machine=armv4l-rebel
441
+ basic_os=linux
442
+ ;;
443
+ news | news700 | news800 | news900)
444
+ basic_machine=m68k-sony
445
+ basic_os=newsos
446
+ ;;
447
+ news1000)
448
+ basic_machine=m68030-sony
449
+ basic_os=newsos
450
+ ;;
451
+ necv70)
452
+ basic_machine=v70-nec
453
+ basic_os=sysv
454
+ ;;
455
+ nh3000)
456
+ basic_machine=m68k-harris
457
+ basic_os=cxux
458
+ ;;
459
+ nh[45]000)
460
+ basic_machine=m88k-harris
461
+ basic_os=cxux
462
+ ;;
463
+ nindy960)
464
+ basic_machine=i960-intel
465
+ basic_os=nindy
466
+ ;;
467
+ mon960)
468
+ basic_machine=i960-intel
469
+ basic_os=mon960
470
+ ;;
471
+ nonstopux)
472
+ basic_machine=mips-compaq
473
+ basic_os=nonstopux
474
+ ;;
475
+ os400)
476
+ basic_machine=powerpc-ibm
477
+ basic_os=os400
478
+ ;;
479
+ OSE68000 | ose68000)
480
+ basic_machine=m68000-ericsson
481
+ basic_os=ose
482
+ ;;
483
+ os68k)
484
+ basic_machine=m68k-none
485
+ basic_os=os68k
486
+ ;;
487
+ paragon)
488
+ basic_machine=i860-intel
489
+ basic_os=osf
490
+ ;;
491
+ parisc)
492
+ basic_machine=hppa-unknown
493
+ basic_os=linux
494
+ ;;
495
+ psp)
496
+ basic_machine=mipsallegrexel-sony
497
+ basic_os=psp
498
+ ;;
499
+ pw32)
500
+ basic_machine=i586-unknown
501
+ basic_os=pw32
502
+ ;;
503
+ rdos | rdos64)
504
+ basic_machine=x86_64-pc
505
+ basic_os=rdos
506
+ ;;
507
+ rdos32)
508
+ basic_machine=i386-pc
509
+ basic_os=rdos
510
+ ;;
511
+ rom68k)
512
+ basic_machine=m68k-rom68k
513
+ basic_os=coff
514
+ ;;
515
+ sa29200)
516
+ basic_machine=a29k-amd
517
+ basic_os=udi
518
+ ;;
519
+ sei)
520
+ basic_machine=mips-sei
521
+ basic_os=seiux
522
+ ;;
523
+ sequent)
524
+ basic_machine=i386-sequent
525
+ basic_os=
526
+ ;;
527
+ sps7)
528
+ basic_machine=m68k-bull
529
+ basic_os=sysv2
530
+ ;;
531
+ st2000)
532
+ basic_machine=m68k-tandem
533
+ basic_os=
534
+ ;;
535
+ stratus)
536
+ basic_machine=i860-stratus
537
+ basic_os=sysv4
538
+ ;;
539
+ sun2)
540
+ basic_machine=m68000-sun
541
+ basic_os=
542
+ ;;
543
+ sun2os3)
544
+ basic_machine=m68000-sun
545
+ basic_os=sunos3
546
+ ;;
547
+ sun2os4)
548
+ basic_machine=m68000-sun
549
+ basic_os=sunos4
550
+ ;;
551
+ sun3)
552
+ basic_machine=m68k-sun
553
+ basic_os=
554
+ ;;
555
+ sun3os3)
556
+ basic_machine=m68k-sun
557
+ basic_os=sunos3
558
+ ;;
559
+ sun3os4)
560
+ basic_machine=m68k-sun
561
+ basic_os=sunos4
562
+ ;;
563
+ sun4)
564
+ basic_machine=sparc-sun
565
+ basic_os=
566
+ ;;
567
+ sun4os3)
568
+ basic_machine=sparc-sun
569
+ basic_os=sunos3
570
+ ;;
571
+ sun4os4)
572
+ basic_machine=sparc-sun
573
+ basic_os=sunos4
574
+ ;;
575
+ sun4sol2)
576
+ basic_machine=sparc-sun
577
+ basic_os=solaris2
578
+ ;;
579
+ sun386 | sun386i | roadrunner)
580
+ basic_machine=i386-sun
581
+ basic_os=
582
+ ;;
583
+ sv1)
584
+ basic_machine=sv1-cray
585
+ basic_os=unicos
586
+ ;;
587
+ symmetry)
588
+ basic_machine=i386-sequent
589
+ basic_os=dynix
590
+ ;;
591
+ t3e)
592
+ basic_machine=alphaev5-cray
593
+ basic_os=unicos
594
+ ;;
595
+ t90)
596
+ basic_machine=t90-cray
597
+ basic_os=unicos
598
+ ;;
599
+ toad1)
600
+ basic_machine=pdp10-xkl
601
+ basic_os=tops20
602
+ ;;
603
+ tpf)
604
+ basic_machine=s390x-ibm
605
+ basic_os=tpf
606
+ ;;
607
+ udi29k)
608
+ basic_machine=a29k-amd
609
+ basic_os=udi
610
+ ;;
611
+ ultra3)
612
+ basic_machine=a29k-nyu
613
+ basic_os=sym1
614
+ ;;
615
+ v810 | necv810)
616
+ basic_machine=v810-nec
617
+ basic_os=none
618
+ ;;
619
+ vaxv)
620
+ basic_machine=vax-dec
621
+ basic_os=sysv
622
+ ;;
623
+ vms)
624
+ basic_machine=vax-dec
625
+ basic_os=vms
626
+ ;;
627
+ vsta)
628
+ basic_machine=i386-pc
629
+ basic_os=vsta
630
+ ;;
631
+ vxworks960)
632
+ basic_machine=i960-wrs
633
+ basic_os=vxworks
634
+ ;;
635
+ vxworks68)
636
+ basic_machine=m68k-wrs
637
+ basic_os=vxworks
638
+ ;;
639
+ vxworks29k)
640
+ basic_machine=a29k-wrs
641
+ basic_os=vxworks
642
+ ;;
643
+ xbox)
644
+ basic_machine=i686-pc
645
+ basic_os=mingw32
646
+ ;;
647
+ ymp)
648
+ basic_machine=ymp-cray
649
+ basic_os=unicos
650
+ ;;
651
+ *)
652
+ basic_machine=$1
653
+ basic_os=
654
+ ;;
655
+ esac
656
+ ;;
657
+ esac
658
+
659
+ # Decode 1-component or ad-hoc basic machines
660
+ case $basic_machine in
661
+ # Here we handle the default manufacturer of certain CPU types. It is in
662
+ # some cases the only manufacturer, in others, it is the most popular.
663
+ w89k)
664
+ cpu=hppa1.1
665
+ vendor=winbond
666
+ ;;
667
+ op50n)
668
+ cpu=hppa1.1
669
+ vendor=oki
670
+ ;;
671
+ op60c)
672
+ cpu=hppa1.1
673
+ vendor=oki
674
+ ;;
675
+ ibm*)
676
+ cpu=i370
677
+ vendor=ibm
678
+ ;;
679
+ orion105)
680
+ cpu=clipper
681
+ vendor=highlevel
682
+ ;;
683
+ mac | mpw | mac-mpw)
684
+ cpu=m68k
685
+ vendor=apple
686
+ ;;
687
+ pmac | pmac-mpw)
688
+ cpu=powerpc
689
+ vendor=apple
690
+ ;;
691
+
692
+ # Recognize the various machine names and aliases which stand
693
+ # for a CPU type and a company and sometimes even an OS.
694
+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
695
+ cpu=m68000
696
+ vendor=att
697
+ ;;
698
+ 3b*)
699
+ cpu=we32k
700
+ vendor=att
701
+ ;;
702
+ bluegene*)
703
+ cpu=powerpc
704
+ vendor=ibm
705
+ basic_os=cnk
706
+ ;;
707
+ decsystem10* | dec10*)
708
+ cpu=pdp10
709
+ vendor=dec
710
+ basic_os=tops10
711
+ ;;
712
+ decsystem20* | dec20*)
713
+ cpu=pdp10
714
+ vendor=dec
715
+ basic_os=tops20
716
+ ;;
717
+ delta | 3300 | motorola-3300 | motorola-delta \
718
+ | 3300-motorola | delta-motorola)
719
+ cpu=m68k
720
+ vendor=motorola
721
+ ;;
722
+ dpx2*)
723
+ cpu=m68k
724
+ vendor=bull
725
+ basic_os=sysv3
726
+ ;;
727
+ encore | umax | mmax)
728
+ cpu=ns32k
729
+ vendor=encore
730
+ ;;
731
+ elxsi)
732
+ cpu=elxsi
733
+ vendor=elxsi
734
+ basic_os=${basic_os:-bsd}
735
+ ;;
736
+ fx2800)
737
+ cpu=i860
738
+ vendor=alliant
739
+ ;;
740
+ genix)
741
+ cpu=ns32k
742
+ vendor=ns
743
+ ;;
744
+ h3050r* | hiux*)
745
+ cpu=hppa1.1
746
+ vendor=hitachi
747
+ basic_os=hiuxwe2
748
+ ;;
749
+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
750
+ cpu=hppa1.0
751
+ vendor=hp
752
+ ;;
753
+ hp9k2[0-9][0-9] | hp9k31[0-9])
754
+ cpu=m68000
755
+ vendor=hp
756
+ ;;
757
+ hp9k3[2-9][0-9])
758
+ cpu=m68k
759
+ vendor=hp
760
+ ;;
761
+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
762
+ cpu=hppa1.0
763
+ vendor=hp
764
+ ;;
765
+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
766
+ cpu=hppa1.1
767
+ vendor=hp
768
+ ;;
769
+ hp9k78[0-9] | hp78[0-9])
770
+ # FIXME: really hppa2.0-hp
771
+ cpu=hppa1.1
772
+ vendor=hp
773
+ ;;
774
+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
775
+ # FIXME: really hppa2.0-hp
776
+ cpu=hppa1.1
777
+ vendor=hp
778
+ ;;
779
+ hp9k8[0-9][13679] | hp8[0-9][13679])
780
+ cpu=hppa1.1
781
+ vendor=hp
782
+ ;;
783
+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
784
+ cpu=hppa1.0
785
+ vendor=hp
786
+ ;;
787
+ i*86v32)
788
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
789
+ vendor=pc
790
+ basic_os=sysv32
791
+ ;;
792
+ i*86v4*)
793
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
794
+ vendor=pc
795
+ basic_os=sysv4
796
+ ;;
797
+ i*86v)
798
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
799
+ vendor=pc
800
+ basic_os=sysv
801
+ ;;
802
+ i*86sol2)
803
+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
804
+ vendor=pc
805
+ basic_os=solaris2
806
+ ;;
807
+ j90 | j90-cray)
808
+ cpu=j90
809
+ vendor=cray
810
+ basic_os=${basic_os:-unicos}
811
+ ;;
812
+ iris | iris4d)
813
+ cpu=mips
814
+ vendor=sgi
815
+ case $basic_os in
816
+ irix*)
817
+ ;;
818
+ *)
819
+ basic_os=irix4
820
+ ;;
821
+ esac
822
+ ;;
823
+ miniframe)
824
+ cpu=m68000
825
+ vendor=convergent
826
+ ;;
827
+ *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
828
+ cpu=m68k
829
+ vendor=atari
830
+ basic_os=mint
831
+ ;;
832
+ news-3600 | risc-news)
833
+ cpu=mips
834
+ vendor=sony
835
+ basic_os=newsos
836
+ ;;
837
+ next | m*-next)
838
+ cpu=m68k
839
+ vendor=next
840
+ case $basic_os in
841
+ openstep*)
842
+ ;;
843
+ nextstep*)
844
+ ;;
845
+ ns2*)
846
+ basic_os=nextstep2
847
+ ;;
848
+ *)
849
+ basic_os=nextstep3
850
+ ;;
851
+ esac
852
+ ;;
853
+ np1)
854
+ cpu=np1
855
+ vendor=gould
856
+ ;;
857
+ op50n-* | op60c-*)
858
+ cpu=hppa1.1
859
+ vendor=oki
860
+ basic_os=proelf
861
+ ;;
862
+ pa-hitachi)
863
+ cpu=hppa1.1
864
+ vendor=hitachi
865
+ basic_os=hiuxwe2
866
+ ;;
867
+ pbd)
868
+ cpu=sparc
869
+ vendor=tti
870
+ ;;
871
+ pbb)
872
+ cpu=m68k
873
+ vendor=tti
874
+ ;;
875
+ pc532)
876
+ cpu=ns32k
877
+ vendor=pc532
878
+ ;;
879
+ pn)
880
+ cpu=pn
881
+ vendor=gould
882
+ ;;
883
+ power)
884
+ cpu=power
885
+ vendor=ibm
886
+ ;;
887
+ ps2)
888
+ cpu=i386
889
+ vendor=ibm
890
+ ;;
891
+ rm[46]00)
892
+ cpu=mips
893
+ vendor=siemens
894
+ ;;
895
+ rtpc | rtpc-*)
896
+ cpu=romp
897
+ vendor=ibm
898
+ ;;
899
+ sde)
900
+ cpu=mipsisa32
901
+ vendor=sde
902
+ basic_os=${basic_os:-elf}
903
+ ;;
904
+ simso-wrs)
905
+ cpu=sparclite
906
+ vendor=wrs
907
+ basic_os=vxworks
908
+ ;;
909
+ tower | tower-32)
910
+ cpu=m68k
911
+ vendor=ncr
912
+ ;;
913
+ vpp*|vx|vx-*)
914
+ cpu=f301
915
+ vendor=fujitsu
916
+ ;;
917
+ w65)
918
+ cpu=w65
919
+ vendor=wdc
920
+ ;;
921
+ w89k-*)
922
+ cpu=hppa1.1
923
+ vendor=winbond
924
+ basic_os=proelf
925
+ ;;
926
+ none)
927
+ cpu=none
928
+ vendor=none
929
+ ;;
930
+ leon|leon[3-9])
931
+ cpu=sparc
932
+ vendor=$basic_machine
933
+ ;;
934
+ leon-*|leon[3-9]-*)
935
+ cpu=sparc
936
+ vendor=`echo "$basic_machine" | sed 's/-.*//'`
937
+ ;;
938
+
939
+ *-*)
940
+ # shellcheck disable=SC2162
941
+ saved_IFS=$IFS
942
+ IFS="-" read cpu vendor <<EOF
943
+ $basic_machine
944
+ EOF
945
+ IFS=$saved_IFS
946
+ ;;
947
+ # We use 'pc' rather than 'unknown'
948
+ # because (1) that's what they normally are, and
949
+ # (2) the word "unknown" tends to confuse beginning users.
950
+ i*86 | x86_64)
951
+ cpu=$basic_machine
952
+ vendor=pc
953
+ ;;
954
+ # These rules are duplicated from below for sake of the special case above;
955
+ # i.e. things that normalized to x86 arches should also default to "pc"
956
+ pc98)
957
+ cpu=i386
958
+ vendor=pc
959
+ ;;
960
+ x64 | amd64)
961
+ cpu=x86_64
962
+ vendor=pc
963
+ ;;
964
+ # Recognize the basic CPU types without company name.
965
+ *)
966
+ cpu=$basic_machine
967
+ vendor=unknown
968
+ ;;
969
+ esac
970
+
971
+ unset -v basic_machine
972
+
973
+ # Decode basic machines in the full and proper CPU-Company form.
974
+ case $cpu-$vendor in
975
+ # Here we handle the default manufacturer of certain CPU types in canonical form. It is in
976
+ # some cases the only manufacturer, in others, it is the most popular.
977
+ craynv-unknown)
978
+ vendor=cray
979
+ basic_os=${basic_os:-unicosmp}
980
+ ;;
981
+ c90-unknown | c90-cray)
982
+ vendor=cray
983
+ basic_os=${Basic_os:-unicos}
984
+ ;;
985
+ fx80-unknown)
986
+ vendor=alliant
987
+ ;;
988
+ romp-unknown)
989
+ vendor=ibm
990
+ ;;
991
+ mmix-unknown)
992
+ vendor=knuth
993
+ ;;
994
+ microblaze-unknown | microblazeel-unknown)
995
+ vendor=xilinx
996
+ ;;
997
+ rs6000-unknown)
998
+ vendor=ibm
999
+ ;;
1000
+ vax-unknown)
1001
+ vendor=dec
1002
+ ;;
1003
+ pdp11-unknown)
1004
+ vendor=dec
1005
+ ;;
1006
+ we32k-unknown)
1007
+ vendor=att
1008
+ ;;
1009
+ cydra-unknown)
1010
+ vendor=cydrome
1011
+ ;;
1012
+ i370-ibm*)
1013
+ vendor=ibm
1014
+ ;;
1015
+ orion-unknown)
1016
+ vendor=highlevel
1017
+ ;;
1018
+ xps-unknown | xps100-unknown)
1019
+ cpu=xps100
1020
+ vendor=honeywell
1021
+ ;;
1022
+
1023
+ # Here we normalize CPU types with a missing or matching vendor
1024
+ armh-unknown | armh-alt)
1025
+ cpu=armv7l
1026
+ vendor=alt
1027
+ basic_os=${basic_os:-linux-gnueabihf}
1028
+ ;;
1029
+ dpx20-unknown | dpx20-bull)
1030
+ cpu=rs6000
1031
+ vendor=bull
1032
+ basic_os=${basic_os:-bosx}
1033
+ ;;
1034
+
1035
+ # Here we normalize CPU types irrespective of the vendor
1036
+ amd64-*)
1037
+ cpu=x86_64
1038
+ ;;
1039
+ blackfin-*)
1040
+ cpu=bfin
1041
+ basic_os=linux
1042
+ ;;
1043
+ c54x-*)
1044
+ cpu=tic54x
1045
+ ;;
1046
+ c55x-*)
1047
+ cpu=tic55x
1048
+ ;;
1049
+ c6x-*)
1050
+ cpu=tic6x
1051
+ ;;
1052
+ e500v[12]-*)
1053
+ cpu=powerpc
1054
+ basic_os=${basic_os}"spe"
1055
+ ;;
1056
+ mips3*-*)
1057
+ cpu=mips64
1058
+ ;;
1059
+ ms1-*)
1060
+ cpu=mt
1061
+ ;;
1062
+ m68knommu-*)
1063
+ cpu=m68k
1064
+ basic_os=linux
1065
+ ;;
1066
+ m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
1067
+ cpu=s12z
1068
+ ;;
1069
+ openrisc-*)
1070
+ cpu=or32
1071
+ ;;
1072
+ parisc-*)
1073
+ cpu=hppa
1074
+ basic_os=linux
1075
+ ;;
1076
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1077
+ cpu=i586
1078
+ ;;
1079
+ pentiumpro-* | p6-* | 6x86-* | athlon-* | athlon_*-*)
1080
+ cpu=i686
1081
+ ;;
1082
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1083
+ cpu=i686
1084
+ ;;
1085
+ pentium4-*)
1086
+ cpu=i786
1087
+ ;;
1088
+ pc98-*)
1089
+ cpu=i386
1090
+ ;;
1091
+ ppc-* | ppcbe-*)
1092
+ cpu=powerpc
1093
+ ;;
1094
+ ppcle-* | powerpclittle-*)
1095
+ cpu=powerpcle
1096
+ ;;
1097
+ ppc64-*)
1098
+ cpu=powerpc64
1099
+ ;;
1100
+ ppc64le-* | powerpc64little-*)
1101
+ cpu=powerpc64le
1102
+ ;;
1103
+ sb1-*)
1104
+ cpu=mipsisa64sb1
1105
+ ;;
1106
+ sb1el-*)
1107
+ cpu=mipsisa64sb1el
1108
+ ;;
1109
+ sh5e[lb]-*)
1110
+ cpu=`echo "$cpu" | sed 's/^\(sh.\)e\(.\)$/\1\2e/'`
1111
+ ;;
1112
+ spur-*)
1113
+ cpu=spur
1114
+ ;;
1115
+ strongarm-* | thumb-*)
1116
+ cpu=arm
1117
+ ;;
1118
+ tx39-*)
1119
+ cpu=mipstx39
1120
+ ;;
1121
+ tx39el-*)
1122
+ cpu=mipstx39el
1123
+ ;;
1124
+ x64-*)
1125
+ cpu=x86_64
1126
+ ;;
1127
+ xscale-* | xscalee[bl]-*)
1128
+ cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
1129
+ ;;
1130
+ arm64-* | aarch64le-*)
1131
+ cpu=aarch64
1132
+ ;;
1133
+
1134
+ # Recognize the canonical CPU Types that limit and/or modify the
1135
+ # company names they are paired with.
1136
+ cr16-*)
1137
+ basic_os=${basic_os:-elf}
1138
+ ;;
1139
+ crisv32-* | etraxfs*-*)
1140
+ cpu=crisv32
1141
+ vendor=axis
1142
+ ;;
1143
+ cris-* | etrax*-*)
1144
+ cpu=cris
1145
+ vendor=axis
1146
+ ;;
1147
+ crx-*)
1148
+ basic_os=${basic_os:-elf}
1149
+ ;;
1150
+ neo-tandem)
1151
+ cpu=neo
1152
+ vendor=tandem
1153
+ ;;
1154
+ nse-tandem)
1155
+ cpu=nse
1156
+ vendor=tandem
1157
+ ;;
1158
+ nsr-tandem)
1159
+ cpu=nsr
1160
+ vendor=tandem
1161
+ ;;
1162
+ nsv-tandem)
1163
+ cpu=nsv
1164
+ vendor=tandem
1165
+ ;;
1166
+ nsx-tandem)
1167
+ cpu=nsx
1168
+ vendor=tandem
1169
+ ;;
1170
+ mipsallegrexel-sony)
1171
+ cpu=mipsallegrexel
1172
+ vendor=sony
1173
+ ;;
1174
+ tile*-*)
1175
+ basic_os=${basic_os:-linux-gnu}
1176
+ ;;
1177
+
1178
+ *)
1179
+ # Recognize the canonical CPU types that are allowed with any
1180
+ # company name.
1181
+ case $cpu in
1182
+ 1750a | 580 \
1183
+ | a29k \
1184
+ | aarch64 | aarch64_be | aarch64c | arm64ec \
1185
+ | abacus \
1186
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
1187
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
1188
+ | alphapca5[67] | alpha64pca5[67] \
1189
+ | am33_2.0 \
1190
+ | amdgcn \
1191
+ | arc | arceb | arc32 | arc64 \
1192
+ | arm | arm[lb]e | arme[lb] | armv* \
1193
+ | avr | avr32 \
1194
+ | asmjs \
1195
+ | ba \
1196
+ | be32 | be64 \
1197
+ | bfin | bpf | bs2000 \
1198
+ | c[123]* | c30 | [cjt]90 | c4x \
1199
+ | c8051 | clipper | craynv | csky | cydra \
1200
+ | d10v | d30v | dlx | dsp16xx \
1201
+ | e2k | elxsi | epiphany \
1202
+ | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
1203
+ | javascript \
1204
+ | h8300 | h8500 \
1205
+ | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
1206
+ | hexagon \
1207
+ | i370 | i*86 | i860 | i960 | ia16 | ia64 \
1208
+ | ip2k | iq2000 \
1209
+ | k1om \
1210
+ | kvx \
1211
+ | le32 | le64 \
1212
+ | lm32 \
1213
+ | loongarch32 | loongarch64 \
1214
+ | m32c | m32r | m32rle \
1215
+ | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
1216
+ | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
1217
+ | m88110 | m88k | maxq | mb | mcore | mep | metag \
1218
+ | microblaze | microblazeel \
1219
+ | mips* \
1220
+ | mmix \
1221
+ | mn10200 | mn10300 \
1222
+ | moxie \
1223
+ | mt \
1224
+ | msp430 \
1225
+ | nds32 | nds32le | nds32be \
1226
+ | nfp \
1227
+ | nios | nios2 | nios2eb | nios2el \
1228
+ | none | np1 | ns16k | ns32k | nvptx \
1229
+ | open8 \
1230
+ | or1k* \
1231
+ | or32 \
1232
+ | orion \
1233
+ | picochip \
1234
+ | pdp10 | pdp11 | pj | pjl | pn | power \
1235
+ | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
1236
+ | pru \
1237
+ | pyramid \
1238
+ | riscv | riscv32 | riscv32be | riscv64 | riscv64be \
1239
+ | rl78 | romp | rs6000 | rx \
1240
+ | s390 | s390x \
1241
+ | score \
1242
+ | sh | shl \
1243
+ | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
1244
+ | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
1245
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
1246
+ | sparclite \
1247
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
1248
+ | spu \
1249
+ | tahoe \
1250
+ | thumbv7* \
1251
+ | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
1252
+ | tron \
1253
+ | ubicom32 \
1254
+ | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
1255
+ | vax \
1256
+ | visium \
1257
+ | w65 \
1258
+ | wasm32 | wasm64 \
1259
+ | we32k \
1260
+ | x86 | x86_64 | xc16x | xgate | xps100 \
1261
+ | xstormy16 | xtensa* \
1262
+ | ymp \
1263
+ | z8k | z80)
1264
+ ;;
1265
+
1266
+ *)
1267
+ echo "Invalid configuration '$1': machine '$cpu-$vendor' not recognized" 1>&2
1268
+ exit 1
1269
+ ;;
1270
+ esac
1271
+ ;;
1272
+ esac
1273
+
1274
+ # Here we canonicalize certain aliases for manufacturers.
1275
+ case $vendor in
1276
+ digital*)
1277
+ vendor=dec
1278
+ ;;
1279
+ commodore*)
1280
+ vendor=cbm
1281
+ ;;
1282
+ *)
1283
+ ;;
1284
+ esac
1285
+
1286
+ # Decode manufacturer-specific aliases for certain operating systems.
1287
+
1288
+ if test x"$basic_os" != x
1289
+ then
1290
+
1291
+ # First recognize some ad-hoc cases, or perhaps split kernel-os, or else just
1292
+ # set os.
1293
+ obj=
1294
+ case $basic_os in
1295
+ gnu/linux*)
1296
+ kernel=linux
1297
+ os=`echo "$basic_os" | sed -e 's|gnu/linux|gnu|'`
1298
+ ;;
1299
+ os2-emx)
1300
+ kernel=os2
1301
+ os=`echo "$basic_os" | sed -e 's|os2-emx|emx|'`
1302
+ ;;
1303
+ nto-qnx*)
1304
+ kernel=nto
1305
+ os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
1306
+ ;;
1307
+ *-*)
1308
+ # shellcheck disable=SC2162
1309
+ saved_IFS=$IFS
1310
+ IFS="-" read kernel os <<EOF
1311
+ $basic_os
1312
+ EOF
1313
+ IFS=$saved_IFS
1314
+ ;;
1315
+ # Default OS when just kernel was specified
1316
+ nto*)
1317
+ kernel=nto
1318
+ os=`echo "$basic_os" | sed -e 's|nto|qnx|'`
1319
+ ;;
1320
+ linux*)
1321
+ kernel=linux
1322
+ os=`echo "$basic_os" | sed -e 's|linux|gnu|'`
1323
+ ;;
1324
+ managarm*)
1325
+ kernel=managarm
1326
+ os=`echo "$basic_os" | sed -e 's|managarm|mlibc|'`
1327
+ ;;
1328
+ *)
1329
+ kernel=
1330
+ os=$basic_os
1331
+ ;;
1332
+ esac
1333
+
1334
+ # Now, normalize the OS (knowing we just have one component, it's not a kernel,
1335
+ # etc.)
1336
+ case $os in
1337
+ # First match some system type aliases that might get confused
1338
+ # with valid system types.
1339
+ # solaris* is a basic system type, with this one exception.
1340
+ auroraux)
1341
+ os=auroraux
1342
+ ;;
1343
+ bluegene*)
1344
+ os=cnk
1345
+ ;;
1346
+ solaris1 | solaris1.*)
1347
+ os=`echo "$os" | sed -e 's|solaris1|sunos4|'`
1348
+ ;;
1349
+ solaris)
1350
+ os=solaris2
1351
+ ;;
1352
+ unixware*)
1353
+ os=sysv4.2uw
1354
+ ;;
1355
+ # es1800 is here to avoid being matched by es* (a different OS)
1356
+ es1800*)
1357
+ os=ose
1358
+ ;;
1359
+ # Some version numbers need modification
1360
+ chorusos*)
1361
+ os=chorusos
1362
+ ;;
1363
+ isc)
1364
+ os=isc2.2
1365
+ ;;
1366
+ sco6)
1367
+ os=sco5v6
1368
+ ;;
1369
+ sco5)
1370
+ os=sco3.2v5
1371
+ ;;
1372
+ sco4)
1373
+ os=sco3.2v4
1374
+ ;;
1375
+ sco3.2.[4-9]*)
1376
+ os=`echo "$os" | sed -e 's/sco3.2./sco3.2v/'`
1377
+ ;;
1378
+ sco*v* | scout)
1379
+ # Don't match below
1380
+ ;;
1381
+ sco*)
1382
+ os=sco3.2v2
1383
+ ;;
1384
+ psos*)
1385
+ os=psos
1386
+ ;;
1387
+ qnx*)
1388
+ os=qnx
1389
+ ;;
1390
+ hiux*)
1391
+ os=hiuxwe2
1392
+ ;;
1393
+ lynx*178)
1394
+ os=lynxos178
1395
+ ;;
1396
+ lynx*5)
1397
+ os=lynxos5
1398
+ ;;
1399
+ lynxos*)
1400
+ # don't get caught up in next wildcard
1401
+ ;;
1402
+ lynx*)
1403
+ os=lynxos
1404
+ ;;
1405
+ mac[0-9]*)
1406
+ os=`echo "$os" | sed -e 's|mac|macos|'`
1407
+ ;;
1408
+ opened*)
1409
+ os=openedition
1410
+ ;;
1411
+ os400*)
1412
+ os=os400
1413
+ ;;
1414
+ sunos5*)
1415
+ os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
1416
+ ;;
1417
+ sunos6*)
1418
+ os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
1419
+ ;;
1420
+ wince*)
1421
+ os=wince
1422
+ ;;
1423
+ utek*)
1424
+ os=bsd
1425
+ ;;
1426
+ dynix*)
1427
+ os=bsd
1428
+ ;;
1429
+ acis*)
1430
+ os=aos
1431
+ ;;
1432
+ atheos*)
1433
+ os=atheos
1434
+ ;;
1435
+ syllable*)
1436
+ os=syllable
1437
+ ;;
1438
+ 386bsd)
1439
+ os=bsd
1440
+ ;;
1441
+ ctix* | uts*)
1442
+ os=sysv
1443
+ ;;
1444
+ nova*)
1445
+ os=rtmk-nova
1446
+ ;;
1447
+ ns2)
1448
+ os=nextstep2
1449
+ ;;
1450
+ # Preserve the version number of sinix5.
1451
+ sinix5.*)
1452
+ os=`echo "$os" | sed -e 's|sinix|sysv|'`
1453
+ ;;
1454
+ sinix*)
1455
+ os=sysv4
1456
+ ;;
1457
+ tpf*)
1458
+ os=tpf
1459
+ ;;
1460
+ triton*)
1461
+ os=sysv3
1462
+ ;;
1463
+ oss*)
1464
+ os=sysv3
1465
+ ;;
1466
+ svr4*)
1467
+ os=sysv4
1468
+ ;;
1469
+ svr3)
1470
+ os=sysv3
1471
+ ;;
1472
+ sysvr4)
1473
+ os=sysv4
1474
+ ;;
1475
+ ose*)
1476
+ os=ose
1477
+ ;;
1478
+ *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
1479
+ os=mint
1480
+ ;;
1481
+ dicos*)
1482
+ os=dicos
1483
+ ;;
1484
+ pikeos*)
1485
+ # Until real need of OS specific support for
1486
+ # particular features comes up, bare metal
1487
+ # configurations are quite functional.
1488
+ case $cpu in
1489
+ arm*)
1490
+ os=eabi
1491
+ ;;
1492
+ *)
1493
+ os=
1494
+ obj=elf
1495
+ ;;
1496
+ esac
1497
+ ;;
1498
+ aout* | coff* | elf* | pe*)
1499
+ # These are machine code file formats, not OSes
1500
+ obj=$os
1501
+ os=
1502
+ ;;
1503
+ *)
1504
+ # No normalization, but not necessarily accepted, that comes below.
1505
+ ;;
1506
+ esac
1507
+
1508
+ else
1509
+
1510
+ # Here we handle the default operating systems that come with various machines.
1511
+ # The value should be what the vendor currently ships out the door with their
1512
+ # machine or put another way, the most popular os provided with the machine.
1513
+
1514
+ # Note that if you're going to try to match "-MANUFACTURER" here (say,
1515
+ # "-sun"), then you have to tell the case statement up towards the top
1516
+ # that MANUFACTURER isn't an operating system. Otherwise, code above
1517
+ # will signal an error saying that MANUFACTURER isn't an operating
1518
+ # system, and we'll never get to this point.
1519
+
1520
+ kernel=
1521
+ obj=
1522
+ case $cpu-$vendor in
1523
+ score-*)
1524
+ os=
1525
+ obj=elf
1526
+ ;;
1527
+ spu-*)
1528
+ os=
1529
+ obj=elf
1530
+ ;;
1531
+ *-acorn)
1532
+ os=riscix1.2
1533
+ ;;
1534
+ arm*-rebel)
1535
+ kernel=linux
1536
+ os=gnu
1537
+ ;;
1538
+ arm*-semi)
1539
+ os=
1540
+ obj=aout
1541
+ ;;
1542
+ c4x-* | tic4x-*)
1543
+ os=
1544
+ obj=coff
1545
+ ;;
1546
+ c8051-*)
1547
+ os=
1548
+ obj=elf
1549
+ ;;
1550
+ clipper-intergraph)
1551
+ os=clix
1552
+ ;;
1553
+ hexagon-*)
1554
+ os=
1555
+ obj=elf
1556
+ ;;
1557
+ tic54x-*)
1558
+ os=
1559
+ obj=coff
1560
+ ;;
1561
+ tic55x-*)
1562
+ os=
1563
+ obj=coff
1564
+ ;;
1565
+ tic6x-*)
1566
+ os=
1567
+ obj=coff
1568
+ ;;
1569
+ # This must come before the *-dec entry.
1570
+ pdp10-*)
1571
+ os=tops20
1572
+ ;;
1573
+ pdp11-*)
1574
+ os=none
1575
+ ;;
1576
+ *-dec | vax-*)
1577
+ os=ultrix4.2
1578
+ ;;
1579
+ m68*-apollo)
1580
+ os=domain
1581
+ ;;
1582
+ i386-sun)
1583
+ os=sunos4.0.2
1584
+ ;;
1585
+ m68000-sun)
1586
+ os=sunos3
1587
+ ;;
1588
+ m68*-cisco)
1589
+ os=
1590
+ obj=aout
1591
+ ;;
1592
+ mep-*)
1593
+ os=
1594
+ obj=elf
1595
+ ;;
1596
+ mips*-cisco)
1597
+ os=
1598
+ obj=elf
1599
+ ;;
1600
+ mips*-*)
1601
+ os=
1602
+ obj=elf
1603
+ ;;
1604
+ or32-*)
1605
+ os=
1606
+ obj=coff
1607
+ ;;
1608
+ *-tti) # must be before sparc entry or we get the wrong os.
1609
+ os=sysv3
1610
+ ;;
1611
+ sparc-* | *-sun)
1612
+ os=sunos4.1.1
1613
+ ;;
1614
+ pru-*)
1615
+ os=
1616
+ obj=elf
1617
+ ;;
1618
+ *-be)
1619
+ os=beos
1620
+ ;;
1621
+ *-ibm)
1622
+ os=aix
1623
+ ;;
1624
+ *-knuth)
1625
+ os=mmixware
1626
+ ;;
1627
+ *-wec)
1628
+ os=proelf
1629
+ ;;
1630
+ *-winbond)
1631
+ os=proelf
1632
+ ;;
1633
+ *-oki)
1634
+ os=proelf
1635
+ ;;
1636
+ *-hp)
1637
+ os=hpux
1638
+ ;;
1639
+ *-hitachi)
1640
+ os=hiux
1641
+ ;;
1642
+ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1643
+ os=sysv
1644
+ ;;
1645
+ *-cbm)
1646
+ os=amigaos
1647
+ ;;
1648
+ *-dg)
1649
+ os=dgux
1650
+ ;;
1651
+ *-dolphin)
1652
+ os=sysv3
1653
+ ;;
1654
+ m68k-ccur)
1655
+ os=rtu
1656
+ ;;
1657
+ m88k-omron*)
1658
+ os=luna
1659
+ ;;
1660
+ *-next)
1661
+ os=nextstep
1662
+ ;;
1663
+ *-sequent)
1664
+ os=ptx
1665
+ ;;
1666
+ *-crds)
1667
+ os=unos
1668
+ ;;
1669
+ *-ns)
1670
+ os=genix
1671
+ ;;
1672
+ i370-*)
1673
+ os=mvs
1674
+ ;;
1675
+ *-gould)
1676
+ os=sysv
1677
+ ;;
1678
+ *-highlevel)
1679
+ os=bsd
1680
+ ;;
1681
+ *-encore)
1682
+ os=bsd
1683
+ ;;
1684
+ *-sgi)
1685
+ os=irix
1686
+ ;;
1687
+ *-siemens)
1688
+ os=sysv4
1689
+ ;;
1690
+ *-masscomp)
1691
+ os=rtu
1692
+ ;;
1693
+ f30[01]-fujitsu | f700-fujitsu)
1694
+ os=uxpv
1695
+ ;;
1696
+ *-rom68k)
1697
+ os=
1698
+ obj=coff
1699
+ ;;
1700
+ *-*bug)
1701
+ os=
1702
+ obj=coff
1703
+ ;;
1704
+ *-apple)
1705
+ os=macos
1706
+ ;;
1707
+ *-atari*)
1708
+ os=mint
1709
+ ;;
1710
+ *-wrs)
1711
+ os=vxworks
1712
+ ;;
1713
+ *)
1714
+ os=none
1715
+ ;;
1716
+ esac
1717
+
1718
+ fi
1719
+
1720
+ # Now, validate our (potentially fixed-up) individual pieces (OS, OBJ).
1721
+
1722
+ case $os in
1723
+ # Sometimes we do "kernel-libc", so those need to count as OSes.
1724
+ musl* | newlib* | relibc* | uclibc*)
1725
+ ;;
1726
+ # Likewise for "kernel-abi"
1727
+ eabi* | gnueabi*)
1728
+ ;;
1729
+ # VxWorks passes extra cpu info in the 4th filed.
1730
+ simlinux | simwindows | spe)
1731
+ ;;
1732
+ # See `case $cpu-$os` validation below
1733
+ ghcjs)
1734
+ ;;
1735
+ # Now accept the basic system types.
1736
+ # The portable systems comes first.
1737
+ # Each alternative MUST end in a * to match a version number.
1738
+ gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
1739
+ | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
1740
+ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
1741
+ | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \
1742
+ | hiux* | abug | nacl* | netware* | windows* \
1743
+ | os9* | macos* | osx* | ios* | tvos* | watchos* \
1744
+ | mpw* | magic* | mmixware* | mon960* | lnews* \
1745
+ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
1746
+ | aos* | aros* | cloudabi* | sortix* | twizzler* \
1747
+ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
1748
+ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
1749
+ | mirbsd* | netbsd* | dicos* | openedition* | ose* \
1750
+ | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
1751
+ | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
1752
+ | bosx* | nextstep* | cxux* | oabi* \
1753
+ | ptx* | ecoff* | winnt* | domain* | vsta* \
1754
+ | udi* | lites* | ieee* | go32* | aux* | hcos* \
1755
+ | chorusrdb* | cegcc* | glidix* | serenity* \
1756
+ | cygwin* | msys* | moss* | proelf* | rtems* \
1757
+ | midipix* | mingw32* | mingw64* | mint* \
1758
+ | uxpv* | beos* | mpeix* | udk* | moxiebox* \
1759
+ | interix* | uwin* | mks* | rhapsody* | darwin* \
1760
+ | openstep* | oskit* | conix* | pw32* | nonstopux* \
1761
+ | storm-chaos* | tops10* | tenex* | tops20* | its* \
1762
+ | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
1763
+ | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
1764
+ | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
1765
+ | skyos* | haiku* | rdos* | toppers* | drops* | es* \
1766
+ | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
1767
+ | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
1768
+ | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
1769
+ | fiwix* | mlibc* | cos* | mbr* )
1770
+ ;;
1771
+ # This one is extra strict with allowed versions
1772
+ sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
1773
+ # Don't forget version if it is 3.2v4 or newer.
1774
+ ;;
1775
+ none)
1776
+ ;;
1777
+ kernel* | msvc* )
1778
+ # Restricted further below
1779
+ ;;
1780
+ '')
1781
+ if test x"$obj" = x
1782
+ then
1783
+ echo "Invalid configuration '$1': Blank OS only allowed with explicit machine code file format" 1>&2
1784
+ fi
1785
+ ;;
1786
+ *)
1787
+ echo "Invalid configuration '$1': OS '$os' not recognized" 1>&2
1788
+ exit 1
1789
+ ;;
1790
+ esac
1791
+
1792
+ case $obj in
1793
+ aout* | coff* | elf* | pe*)
1794
+ ;;
1795
+ '')
1796
+ # empty is fine
1797
+ ;;
1798
+ *)
1799
+ echo "Invalid configuration '$1': Machine code format '$obj' not recognized" 1>&2
1800
+ exit 1
1801
+ ;;
1802
+ esac
1803
+
1804
+ # Here we handle the constraint that a (synthetic) cpu and os are
1805
+ # valid only in combination with each other and nowhere else.
1806
+ case $cpu-$os in
1807
+ # The "javascript-unknown-ghcjs" triple is used by GHC; we
1808
+ # accept it here in order to tolerate that, but reject any
1809
+ # variations.
1810
+ javascript-ghcjs)
1811
+ ;;
1812
+ javascript-* | *-ghcjs)
1813
+ echo "Invalid configuration '$1': cpu '$cpu' is not valid with os '$os$obj'" 1>&2
1814
+ exit 1
1815
+ ;;
1816
+ esac
1817
+
1818
+ # As a final step for OS-related things, validate the OS-kernel combination
1819
+ # (given a valid OS), if there is a kernel.
1820
+ case $kernel-$os-$obj in
1821
+ linux-gnu*- | linux-dietlibc*- | linux-android*- | linux-newlib*- \
1822
+ | linux-musl*- | linux-relibc*- | linux-uclibc*- | linux-mlibc*- )
1823
+ ;;
1824
+ uclinux-uclibc*- )
1825
+ ;;
1826
+ managarm-mlibc*- | managarm-kernel*- )
1827
+ ;;
1828
+ windows*-msvc*-)
1829
+ ;;
1830
+ -dietlibc*- | -newlib*- | -musl*- | -relibc*- | -uclibc*- | -mlibc*- )
1831
+ # These are just libc implementations, not actual OSes, and thus
1832
+ # require a kernel.
1833
+ echo "Invalid configuration '$1': libc '$os' needs explicit kernel." 1>&2
1834
+ exit 1
1835
+ ;;
1836
+ -kernel*- )
1837
+ echo "Invalid configuration '$1': '$os' needs explicit kernel." 1>&2
1838
+ exit 1
1839
+ ;;
1840
+ *-kernel*- )
1841
+ echo "Invalid configuration '$1': '$kernel' does not support '$os'." 1>&2
1842
+ exit 1
1843
+ ;;
1844
+ *-msvc*- )
1845
+ echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2
1846
+ exit 1
1847
+ ;;
1848
+ kfreebsd*-gnu*- | kopensolaris*-gnu*-)
1849
+ ;;
1850
+ vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)
1851
+ ;;
1852
+ nto-qnx*-)
1853
+ ;;
1854
+ os2-emx-)
1855
+ ;;
1856
+ *-eabi*- | *-gnueabi*-)
1857
+ ;;
1858
+ none--*)
1859
+ # None (no kernel, i.e. freestanding / bare metal),
1860
+ # can be paired with an machine code file format
1861
+ ;;
1862
+ -*-)
1863
+ # Blank kernel with real OS is always fine.
1864
+ ;;
1865
+ --*)
1866
+ # Blank kernel and OS with real machine code file format is always fine.
1867
+ ;;
1868
+ *-*-*)
1869
+ echo "Invalid configuration '$1': Kernel '$kernel' not known to work with OS '$os'." 1>&2
1870
+ exit 1
1871
+ ;;
1872
+ esac
1873
+
1874
+ # Here we handle the case where we know the os, and the CPU type, but not the
1875
+ # manufacturer. We pick the logical manufacturer.
1876
+ case $vendor in
1877
+ unknown)
1878
+ case $cpu-$os in
1879
+ *-riscix*)
1880
+ vendor=acorn
1881
+ ;;
1882
+ *-sunos*)
1883
+ vendor=sun
1884
+ ;;
1885
+ *-cnk* | *-aix*)
1886
+ vendor=ibm
1887
+ ;;
1888
+ *-beos*)
1889
+ vendor=be
1890
+ ;;
1891
+ *-hpux*)
1892
+ vendor=hp
1893
+ ;;
1894
+ *-mpeix*)
1895
+ vendor=hp
1896
+ ;;
1897
+ *-hiux*)
1898
+ vendor=hitachi
1899
+ ;;
1900
+ *-unos*)
1901
+ vendor=crds
1902
+ ;;
1903
+ *-dgux*)
1904
+ vendor=dg
1905
+ ;;
1906
+ *-luna*)
1907
+ vendor=omron
1908
+ ;;
1909
+ *-genix*)
1910
+ vendor=ns
1911
+ ;;
1912
+ *-clix*)
1913
+ vendor=intergraph
1914
+ ;;
1915
+ *-mvs* | *-opened*)
1916
+ vendor=ibm
1917
+ ;;
1918
+ *-os400*)
1919
+ vendor=ibm
1920
+ ;;
1921
+ s390-* | s390x-*)
1922
+ vendor=ibm
1923
+ ;;
1924
+ *-ptx*)
1925
+ vendor=sequent
1926
+ ;;
1927
+ *-tpf*)
1928
+ vendor=ibm
1929
+ ;;
1930
+ *-vxsim* | *-vxworks* | *-windiss*)
1931
+ vendor=wrs
1932
+ ;;
1933
+ *-aux*)
1934
+ vendor=apple
1935
+ ;;
1936
+ *-hms*)
1937
+ vendor=hitachi
1938
+ ;;
1939
+ *-mpw* | *-macos*)
1940
+ vendor=apple
1941
+ ;;
1942
+ *-*mint | *-mint[0-9]* | *-*MiNT | *-MiNT[0-9]*)
1943
+ vendor=atari
1944
+ ;;
1945
+ *-vos*)
1946
+ vendor=stratus
1947
+ ;;
1948
+ esac
1949
+ ;;
1950
+ esac
1951
+
1952
+ echo "$cpu-$vendor${kernel:+-$kernel}${os:+-$os}${obj:+-$obj}"
1953
+ exit
1954
+
1955
+ # Local variables:
1956
+ # eval: (add-hook 'before-save-hook 'time-stamp)
1957
+ # time-stamp-start: "timestamp='"
1958
+ # time-stamp-format: "%:y-%02m-%02d"
1959
+ # time-stamp-end: "'"
1960
+ # End: