prestogres 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. data/.gitignore +4 -0
  2. data/Gemfile +2 -0
  3. data/Gemfile.lock +20 -0
  4. data/LICENSE +202 -0
  5. data/NOTICE +22 -0
  6. data/README.md +217 -0
  7. data/Rakefile +13 -0
  8. data/VERSION +1 -0
  9. data/bin/prestogres +254 -0
  10. data/config/pcp.conf.sample +28 -0
  11. data/config/pgpool.conf +678 -0
  12. data/config/pool_hba.conf +84 -0
  13. data/config/pool_passwd +0 -0
  14. data/config/postgresql.conf +2 -0
  15. data/ext/.gitignore +6 -0
  16. data/ext/depend +26 -0
  17. data/ext/extconf.rb +4 -0
  18. data/ext/prestogres_config.c +12 -0
  19. data/pgpool2/.gitignore +36 -0
  20. data/pgpool2/AUTHORS +4 -0
  21. data/pgpool2/COPYING +12 -0
  22. data/pgpool2/ChangeLog +1 -0
  23. data/pgpool2/INSTALL +1 -0
  24. data/pgpool2/Makefile.am +159 -0
  25. data/pgpool2/Makefile.in +1187 -0
  26. data/pgpool2/NEWS +4960 -0
  27. data/pgpool2/README +1 -0
  28. data/pgpool2/README.euc_jp +1 -0
  29. data/pgpool2/README.online-recovery +62 -0
  30. data/pgpool2/TODO +103 -0
  31. data/pgpool2/ac_func_accept_argtypes.m4 +85 -0
  32. data/pgpool2/aclocal.m4 +1088 -0
  33. data/pgpool2/c-compiler.m4 +134 -0
  34. data/pgpool2/c-library.m4 +325 -0
  35. data/pgpool2/child.c +2097 -0
  36. data/pgpool2/config.guess +1532 -0
  37. data/pgpool2/config.h.in +332 -0
  38. data/pgpool2/config.sub +1640 -0
  39. data/pgpool2/configure +15752 -0
  40. data/pgpool2/configure.in +392 -0
  41. data/pgpool2/depcomp +522 -0
  42. data/pgpool2/doc/basebackup.sh +17 -0
  43. data/pgpool2/doc/pgpool-de.html +4220 -0
  44. data/pgpool2/doc/pgpool-en.html +5738 -0
  45. data/pgpool2/doc/pgpool-fr.html +4118 -0
  46. data/pgpool2/doc/pgpool-ja.css +198 -0
  47. data/pgpool2/doc/pgpool-ja.html +11279 -0
  48. data/pgpool2/doc/pgpool-zh_cn.html +4445 -0
  49. data/pgpool2/doc/pgpool.css +280 -0
  50. data/pgpool2/doc/pgpool_remote_start +13 -0
  51. data/pgpool2/doc/recovery.conf.sample +117 -0
  52. data/pgpool2/doc/tutorial-en.html +707 -0
  53. data/pgpool2/doc/tutorial-ja.html +422 -0
  54. data/pgpool2/doc/tutorial-memqcache-en.html +325 -0
  55. data/pgpool2/doc/tutorial-memqcache-ja.html +370 -0
  56. data/pgpool2/doc/tutorial-memqcache-zh_cn.html +322 -0
  57. data/pgpool2/doc/tutorial-watchdog-en.html +306 -0
  58. data/pgpool2/doc/tutorial-watchdog-ja.html +343 -0
  59. data/pgpool2/doc/tutorial-watchdog-zh_cn.html +301 -0
  60. data/pgpool2/doc/tutorial-zh_cn.html +537 -0
  61. data/pgpool2/doc/watchdog.png +0 -0
  62. data/pgpool2/doc/wd-en.html +236 -0
  63. data/pgpool2/doc/wd-en.jpg +0 -0
  64. data/pgpool2/doc/wd-ja.html +219 -0
  65. data/pgpool2/doc/wd-ja.jpg +0 -0
  66. data/pgpool2/doc/wd-zh_cn.html +201 -0
  67. data/pgpool2/doc/where_to_send_queries.odg +0 -0
  68. data/pgpool2/doc/where_to_send_queries.pdf +0 -0
  69. data/pgpool2/general.m4 +166 -0
  70. data/pgpool2/getopt_long.c +200 -0
  71. data/pgpool2/getopt_long.h +44 -0
  72. data/pgpool2/install-sh +251 -0
  73. data/pgpool2/ltmain.sh +8406 -0
  74. data/pgpool2/m4/libtool.m4 +7360 -0
  75. data/pgpool2/m4/ltoptions.m4 +368 -0
  76. data/pgpool2/m4/ltsugar.m4 +123 -0
  77. data/pgpool2/m4/ltversion.m4 +23 -0
  78. data/pgpool2/m4/lt~obsolete.m4 +92 -0
  79. data/pgpool2/main.c +2971 -0
  80. data/pgpool2/md5.c +444 -0
  81. data/pgpool2/md5.h +28 -0
  82. data/pgpool2/missing +360 -0
  83. data/pgpool2/mkinstalldirs +40 -0
  84. data/pgpool2/parser/Makefile.am +50 -0
  85. data/pgpool2/parser/Makefile.in +559 -0
  86. data/pgpool2/parser/copyfuncs.c +3310 -0
  87. data/pgpool2/parser/gram.c +39100 -0
  88. data/pgpool2/parser/gram.h +940 -0
  89. data/pgpool2/parser/gram.y +13408 -0
  90. data/pgpool2/parser/gramparse.h +74 -0
  91. data/pgpool2/parser/keywords.c +32 -0
  92. data/pgpool2/parser/keywords.h +39 -0
  93. data/pgpool2/parser/kwlist.h +425 -0
  94. data/pgpool2/parser/kwlookup.c +88 -0
  95. data/pgpool2/parser/list.c +1156 -0
  96. data/pgpool2/parser/makefuncs.c +518 -0
  97. data/pgpool2/parser/makefuncs.h +83 -0
  98. data/pgpool2/parser/memnodes.h +79 -0
  99. data/pgpool2/parser/nodes.c +29 -0
  100. data/pgpool2/parser/nodes.h +609 -0
  101. data/pgpool2/parser/outfuncs.c +5790 -0
  102. data/pgpool2/parser/parsenodes.h +2615 -0
  103. data/pgpool2/parser/parser.c +262 -0
  104. data/pgpool2/parser/parser.h +46 -0
  105. data/pgpool2/parser/pg_class.h +158 -0
  106. data/pgpool2/parser/pg_config_manual.h +273 -0
  107. data/pgpool2/parser/pg_list.h +352 -0
  108. data/pgpool2/parser/pg_trigger.h +147 -0
  109. data/pgpool2/parser/pg_wchar.h +492 -0
  110. data/pgpool2/parser/pool_memory.c +342 -0
  111. data/pgpool2/parser/pool_memory.h +77 -0
  112. data/pgpool2/parser/pool_parser.h +222 -0
  113. data/pgpool2/parser/pool_string.c +121 -0
  114. data/pgpool2/parser/pool_string.h +37 -0
  115. data/pgpool2/parser/primnodes.h +1280 -0
  116. data/pgpool2/parser/scan.c +4094 -0
  117. data/pgpool2/parser/scan.l +1451 -0
  118. data/pgpool2/parser/scanner.h +120 -0
  119. data/pgpool2/parser/scansup.c +221 -0
  120. data/pgpool2/parser/scansup.h +28 -0
  121. data/pgpool2/parser/snprintf.c +1102 -0
  122. data/pgpool2/parser/stringinfo.c +294 -0
  123. data/pgpool2/parser/stringinfo.h +178 -0
  124. data/pgpool2/parser/value.c +78 -0
  125. data/pgpool2/parser/value.h +62 -0
  126. data/pgpool2/parser/wchar.c +2048 -0
  127. data/pgpool2/pcp.conf.sample +28 -0
  128. data/pgpool2/pcp/Makefile.am +40 -0
  129. data/pgpool2/pcp/Makefile.in +771 -0
  130. data/pgpool2/pcp/libpcp_ext.h +250 -0
  131. data/pgpool2/pcp/md5.c +444 -0
  132. data/pgpool2/pcp/md5.h +28 -0
  133. data/pgpool2/pcp/pcp.c +1652 -0
  134. data/pgpool2/pcp/pcp.h +61 -0
  135. data/pgpool2/pcp/pcp_attach_node.c +172 -0
  136. data/pgpool2/pcp/pcp_detach_node.c +185 -0
  137. data/pgpool2/pcp/pcp_error.c +87 -0
  138. data/pgpool2/pcp/pcp_node_count.c +160 -0
  139. data/pgpool2/pcp/pcp_node_info.c +198 -0
  140. data/pgpool2/pcp/pcp_pool_status.c +166 -0
  141. data/pgpool2/pcp/pcp_proc_count.c +166 -0
  142. data/pgpool2/pcp/pcp_proc_info.c +261 -0
  143. data/pgpool2/pcp/pcp_promote_node.c +185 -0
  144. data/pgpool2/pcp/pcp_recovery_node.c +172 -0
  145. data/pgpool2/pcp/pcp_stop_pgpool.c +179 -0
  146. data/pgpool2/pcp/pcp_stream.c +385 -0
  147. data/pgpool2/pcp/pcp_stream.h +52 -0
  148. data/pgpool2/pcp/pcp_systemdb_info.c +194 -0
  149. data/pgpool2/pcp/pcp_watchdog_info.c +211 -0
  150. data/pgpool2/pcp_child.c +1493 -0
  151. data/pgpool2/pg_md5.c +305 -0
  152. data/pgpool2/pgpool.8.in +121 -0
  153. data/pgpool2/pgpool.conf +553 -0
  154. data/pgpool2/pgpool.conf.sample +666 -0
  155. data/pgpool2/pgpool.conf.sample-master-slave +665 -0
  156. data/pgpool2/pgpool.conf.sample-replication +664 -0
  157. data/pgpool2/pgpool.conf.sample-stream +664 -0
  158. data/pgpool2/pgpool.spec +264 -0
  159. data/pgpool2/pgpool_adm/TODO +7 -0
  160. data/pgpool2/pgpool_adm/pgpool_adm--1.0.sql +85 -0
  161. data/pgpool2/pgpool_adm/pgpool_adm.c +558 -0
  162. data/pgpool2/pgpool_adm/pgpool_adm.control +5 -0
  163. data/pgpool2/pgpool_adm/pgpool_adm.h +46 -0
  164. data/pgpool2/pgpool_adm/pgpool_adm.sql.in +85 -0
  165. data/pgpool2/pool.h +655 -0
  166. data/pgpool2/pool_auth.c +1390 -0
  167. data/pgpool2/pool_config.c +5007 -0
  168. data/pgpool2/pool_config.h +284 -0
  169. data/pgpool2/pool_config.l +3281 -0
  170. data/pgpool2/pool_config_md5.c +29 -0
  171. data/pgpool2/pool_connection_pool.c +812 -0
  172. data/pgpool2/pool_error.c +242 -0
  173. data/pgpool2/pool_globals.c +27 -0
  174. data/pgpool2/pool_hba.c +1723 -0
  175. data/pgpool2/pool_hba.conf.sample +67 -0
  176. data/pgpool2/pool_ip.c +567 -0
  177. data/pgpool2/pool_ip.h +65 -0
  178. data/pgpool2/pool_ipc.h +38 -0
  179. data/pgpool2/pool_lobj.c +242 -0
  180. data/pgpool2/pool_lobj.h +32 -0
  181. data/pgpool2/pool_memqcache.c +3818 -0
  182. data/pgpool2/pool_memqcache.h +268 -0
  183. data/pgpool2/pool_params.c +163 -0
  184. data/pgpool2/pool_passwd.c +249 -0
  185. data/pgpool2/pool_passwd.h +41 -0
  186. data/pgpool2/pool_path.c +193 -0
  187. data/pgpool2/pool_path.h +81 -0
  188. data/pgpool2/pool_process_context.c +247 -0
  189. data/pgpool2/pool_process_context.h +62 -0
  190. data/pgpool2/pool_process_query.c +5001 -0
  191. data/pgpool2/pool_process_reporting.c +1671 -0
  192. data/pgpool2/pool_process_reporting.h +44 -0
  193. data/pgpool2/pool_proto2.c +671 -0
  194. data/pgpool2/pool_proto_modules.c +3524 -0
  195. data/pgpool2/pool_proto_modules.h +185 -0
  196. data/pgpool2/pool_query_cache.c +1020 -0
  197. data/pgpool2/pool_query_context.c +1871 -0
  198. data/pgpool2/pool_query_context.h +105 -0
  199. data/pgpool2/pool_relcache.c +284 -0
  200. data/pgpool2/pool_relcache.h +78 -0
  201. data/pgpool2/pool_rewrite_outfuncs.c +9060 -0
  202. data/pgpool2/pool_rewrite_query.c +715 -0
  203. data/pgpool2/pool_rewrite_query.h +192 -0
  204. data/pgpool2/pool_select_walker.c +1150 -0
  205. data/pgpool2/pool_select_walker.h +68 -0
  206. data/pgpool2/pool_sema.c +161 -0
  207. data/pgpool2/pool_session_context.c +952 -0
  208. data/pgpool2/pool_session_context.h +203 -0
  209. data/pgpool2/pool_shmem.c +185 -0
  210. data/pgpool2/pool_signal.c +158 -0
  211. data/pgpool2/pool_signal.h +61 -0
  212. data/pgpool2/pool_ssl.c +339 -0
  213. data/pgpool2/pool_stream.c +962 -0
  214. data/pgpool2/pool_stream.h +61 -0
  215. data/pgpool2/pool_system.c +659 -0
  216. data/pgpool2/pool_timestamp.c +1215 -0
  217. data/pgpool2/pool_timestamp.h +38 -0
  218. data/pgpool2/pool_type.h +171 -0
  219. data/pgpool2/pool_worker_child.c +384 -0
  220. data/pgpool2/ps_status.c +404 -0
  221. data/pgpool2/recovery.c +435 -0
  222. data/pgpool2/redhat/pgpool.conf.sample.patch +52 -0
  223. data/pgpool2/redhat/pgpool.init +201 -0
  224. data/pgpool2/redhat/pgpool.sysconfig +7 -0
  225. data/pgpool2/redhat/rpm_installer/basebackup-replication.sh +53 -0
  226. data/pgpool2/redhat/rpm_installer/basebackup-stream.sh +55 -0
  227. data/pgpool2/redhat/rpm_installer/config_for_script +17 -0
  228. data/pgpool2/redhat/rpm_installer/failover.sh +64 -0
  229. data/pgpool2/redhat/rpm_installer/getsources.sh +141 -0
  230. data/pgpool2/redhat/rpm_installer/install.sh +1363 -0
  231. data/pgpool2/redhat/rpm_installer/pgpool_recovery_pitr +47 -0
  232. data/pgpool2/redhat/rpm_installer/pgpool_remote_start +15 -0
  233. data/pgpool2/redhat/rpm_installer/recovery.conf +4 -0
  234. data/pgpool2/redhat/rpm_installer/uninstall.sh +57 -0
  235. data/pgpool2/sample/dist_def_pgbench.sql +73 -0
  236. data/pgpool2/sample/pgpool.pam +3 -0
  237. data/pgpool2/sample/pgpool_recovery +20 -0
  238. data/pgpool2/sample/pgpool_recovery_pitr +19 -0
  239. data/pgpool2/sample/pgpool_remote_start +13 -0
  240. data/pgpool2/sample/replicate_def_pgbench.sql +18 -0
  241. data/pgpool2/sql/insert_lock.sql +15 -0
  242. data/pgpool2/sql/pgpool-recovery/pgpool-recovery.c +280 -0
  243. data/pgpool2/sql/pgpool-recovery/pgpool-recovery.sql.in +19 -0
  244. data/pgpool2/sql/pgpool-recovery/pgpool_recovery--1.0.sql +24 -0
  245. data/pgpool2/sql/pgpool-recovery/pgpool_recovery.control +5 -0
  246. data/pgpool2/sql/pgpool-recovery/uninstall_pgpool-recovery.sql +3 -0
  247. data/pgpool2/sql/pgpool-regclass/pgpool-regclass.c +206 -0
  248. data/pgpool2/sql/pgpool-regclass/pgpool-regclass.sql.in +4 -0
  249. data/pgpool2/sql/pgpool-regclass/pgpool_regclass--1.0.sql +7 -0
  250. data/pgpool2/sql/pgpool-regclass/pgpool_regclass.control +5 -0
  251. data/pgpool2/sql/pgpool-regclass/uninstall_pgpool-regclass.sql +1 -0
  252. data/pgpool2/sql/system_db.sql +38 -0
  253. data/pgpool2/strlcpy.c +85 -0
  254. data/pgpool2/test/C/test_extended.c +98 -0
  255. data/pgpool2/test/jdbc/.cvsignore +2 -0
  256. data/pgpool2/test/jdbc/AutoCommitTest.java +45 -0
  257. data/pgpool2/test/jdbc/BatchTest.java +55 -0
  258. data/pgpool2/test/jdbc/ColumnTest.java +60 -0
  259. data/pgpool2/test/jdbc/CreateTempTableTest.java +48 -0
  260. data/pgpool2/test/jdbc/InsertTest.java +34 -0
  261. data/pgpool2/test/jdbc/LockTest.java +36 -0
  262. data/pgpool2/test/jdbc/PgpoolTest.java +75 -0
  263. data/pgpool2/test/jdbc/README.euc_jp +73 -0
  264. data/pgpool2/test/jdbc/RunTest.java +83 -0
  265. data/pgpool2/test/jdbc/SelectTest.java +37 -0
  266. data/pgpool2/test/jdbc/UpdateTest.java +32 -0
  267. data/pgpool2/test/jdbc/expected/CreateTempTable +1 -0
  268. data/pgpool2/test/jdbc/expected/autocommit +10 -0
  269. data/pgpool2/test/jdbc/expected/batch +1 -0
  270. data/pgpool2/test/jdbc/expected/column +100 -0
  271. data/pgpool2/test/jdbc/expected/insert +1 -0
  272. data/pgpool2/test/jdbc/expected/lock +100 -0
  273. data/pgpool2/test/jdbc/expected/select +2 -0
  274. data/pgpool2/test/jdbc/expected/update +1 -0
  275. data/pgpool2/test/jdbc/pgpool.properties +7 -0
  276. data/pgpool2/test/jdbc/prepare.sql +54 -0
  277. data/pgpool2/test/jdbc/run.sh +6 -0
  278. data/pgpool2/test/parser/.cvsignore +6 -0
  279. data/pgpool2/test/parser/README +32 -0
  280. data/pgpool2/test/parser/expected/copy.out +17 -0
  281. data/pgpool2/test/parser/expected/create.out +64 -0
  282. data/pgpool2/test/parser/expected/cursor.out +37 -0
  283. data/pgpool2/test/parser/expected/delete.out +10 -0
  284. data/pgpool2/test/parser/expected/drop.out +12 -0
  285. data/pgpool2/test/parser/expected/insert.out +13 -0
  286. data/pgpool2/test/parser/expected/misc.out +28 -0
  287. data/pgpool2/test/parser/expected/prepare.out +4 -0
  288. data/pgpool2/test/parser/expected/privileges.out +31 -0
  289. data/pgpool2/test/parser/expected/scanner.out +30 -0
  290. data/pgpool2/test/parser/expected/select.out +89 -0
  291. data/pgpool2/test/parser/expected/transaction.out +38 -0
  292. data/pgpool2/test/parser/expected/update.out +11 -0
  293. data/pgpool2/test/parser/expected/v84.out +37 -0
  294. data/pgpool2/test/parser/expected/v90.out +25 -0
  295. data/pgpool2/test/parser/expected/var.out +22 -0
  296. data/pgpool2/test/parser/input/alter.sql +2 -0
  297. data/pgpool2/test/parser/input/copy.sql +17 -0
  298. data/pgpool2/test/parser/input/create.sql +64 -0
  299. data/pgpool2/test/parser/input/cursor.sql +37 -0
  300. data/pgpool2/test/parser/input/delete.sql +10 -0
  301. data/pgpool2/test/parser/input/drop.sql +12 -0
  302. data/pgpool2/test/parser/input/insert.sql +13 -0
  303. data/pgpool2/test/parser/input/misc.sql +28 -0
  304. data/pgpool2/test/parser/input/prepare.sql +4 -0
  305. data/pgpool2/test/parser/input/privileges.sql +31 -0
  306. data/pgpool2/test/parser/input/scanner.sql +34 -0
  307. data/pgpool2/test/parser/input/select.sql +89 -0
  308. data/pgpool2/test/parser/input/transaction.sql +38 -0
  309. data/pgpool2/test/parser/input/update.sql +11 -0
  310. data/pgpool2/test/parser/input/v84.sql +37 -0
  311. data/pgpool2/test/parser/input/v90.sql +38 -0
  312. data/pgpool2/test/parser/input/var.sql +22 -0
  313. data/pgpool2/test/parser/main.c +96 -0
  314. data/pgpool2/test/parser/parse_schedule +16 -0
  315. data/pgpool2/test/parser/pool.h +13 -0
  316. data/pgpool2/test/parser/run-test +62 -0
  317. data/pgpool2/test/pdo-test/README.euc_jp +58 -0
  318. data/pgpool2/test/pdo-test/SQLlist/test1.sql +3 -0
  319. data/pgpool2/test/pdo-test/SQLlist/test2.sql +3 -0
  320. data/pgpool2/test/pdo-test/collections.inc +11 -0
  321. data/pgpool2/test/pdo-test/def.inc +7 -0
  322. data/pgpool2/test/pdo-test/log.txt +0 -0
  323. data/pgpool2/test/pdo-test/mod/database.inc +36 -0
  324. data/pgpool2/test/pdo-test/mod/def.inc +0 -0
  325. data/pgpool2/test/pdo-test/mod/errorhandler.inc +27 -0
  326. data/pgpool2/test/pdo-test/pdotest.php +11 -0
  327. data/pgpool2/test/pdo-test/regsql.inc +56 -0
  328. data/pgpool2/test/pgpool_setup +898 -0
  329. data/pgpool2/test/regression/README +39 -0
  330. data/pgpool2/test/regression/clean.sh +21 -0
  331. data/pgpool2/test/regression/libs.sh +16 -0
  332. data/pgpool2/test/regression/regress.sh +166 -0
  333. data/pgpool2/test/regression/tests/001.load_balance/test.sh +128 -0
  334. data/pgpool2/test/regression/tests/002.native_replication/PgTester.java +47 -0
  335. data/pgpool2/test/regression/tests/002.native_replication/create.sql +6 -0
  336. data/pgpool2/test/regression/tests/002.native_replication/test.sh +71 -0
  337. data/pgpool2/test/regression/tests/003.failover/expected.r +6 -0
  338. data/pgpool2/test/regression/tests/003.failover/expected.s +6 -0
  339. data/pgpool2/test/regression/tests/003.failover/test.sh +45 -0
  340. data/pgpool2/test/regression/tests/004.watchdog/master.conf +12 -0
  341. data/pgpool2/test/regression/tests/004.watchdog/standby.conf +19 -0
  342. data/pgpool2/test/regression/tests/004.watchdog/test.sh +52 -0
  343. data/pgpool2/test/regression/tests/050.bug58/test.sh +50 -0
  344. data/pgpool2/test/regression/tests/051.bug60/bug.sql +12 -0
  345. data/pgpool2/test/regression/tests/051.bug60/database-clean.sql +6 -0
  346. data/pgpool2/test/regression/tests/051.bug60/database-setup.sql +28 -0
  347. data/pgpool2/test/regression/tests/051.bug60/test.sh +79 -0
  348. data/pgpool2/test/regression/tests/052.do_query/test.sh +44 -0
  349. data/pgpool2/test/regression/tests/053.insert_lock_hangs/test.sh +81 -0
  350. data/pgpool2/test/regression/tests/054.postgres_fdw/test.sh +67 -0
  351. data/pgpool2/test/regression/tests/055.backend_all_down/test.sh +52 -0
  352. data/pgpool2/test/regression/tests/056.bug63/jdbctest2.java +66 -0
  353. data/pgpool2/test/regression/tests/056.bug63/test.sh +47 -0
  354. data/pgpool2/test/regression/tests/057.bug61/test.sh +40 -0
  355. data/pgpool2/test/regression/tests/058.bug68/jdbctest3.java +45 -0
  356. data/pgpool2/test/regression/tests/058.bug68/test.sh +47 -0
  357. data/pgpool2/test/timestamp/expected/insert.out +16 -0
  358. data/pgpool2/test/timestamp/expected/misc.out +3 -0
  359. data/pgpool2/test/timestamp/expected/update.out +6 -0
  360. data/pgpool2/test/timestamp/input/insert.sql +16 -0
  361. data/pgpool2/test/timestamp/input/misc.sql +3 -0
  362. data/pgpool2/test/timestamp/input/update.sql +6 -0
  363. data/pgpool2/test/timestamp/main.c +129 -0
  364. data/pgpool2/test/timestamp/parse_schedule +3 -0
  365. data/pgpool2/test/timestamp/run-test +69 -0
  366. data/pgpool2/version.h +1 -0
  367. data/pgpool2/watchdog/Makefile.am +17 -0
  368. data/pgpool2/watchdog/Makefile.in +505 -0
  369. data/pgpool2/watchdog/test/stab.c +266 -0
  370. data/pgpool2/watchdog/test/test.c +85 -0
  371. data/pgpool2/watchdog/test/wd_child_t.c +87 -0
  372. data/pgpool2/watchdog/test/wd_lifecheck_t.c +87 -0
  373. data/pgpool2/watchdog/test/wd_packet_t.c +87 -0
  374. data/pgpool2/watchdog/test/wd_ping_t.c +20 -0
  375. data/pgpool2/watchdog/watchdog.c +408 -0
  376. data/pgpool2/watchdog/watchdog.h +209 -0
  377. data/pgpool2/watchdog/wd_child.c +444 -0
  378. data/pgpool2/watchdog/wd_ext.h +123 -0
  379. data/pgpool2/watchdog/wd_heartbeat.c +577 -0
  380. data/pgpool2/watchdog/wd_if.c +216 -0
  381. data/pgpool2/watchdog/wd_init.c +126 -0
  382. data/pgpool2/watchdog/wd_interlock.c +347 -0
  383. data/pgpool2/watchdog/wd_lifecheck.c +512 -0
  384. data/pgpool2/watchdog/wd_list.c +429 -0
  385. data/pgpool2/watchdog/wd_packet.c +1159 -0
  386. data/pgpool2/watchdog/wd_ping.c +330 -0
  387. data/pgpool2/ylwrap +223 -0
  388. data/pgsql/presto_client.py +346 -0
  389. data/pgsql/prestogres.py +156 -0
  390. data/pgsql/setup_functions.sql +21 -0
  391. data/pgsql/setup_language.sql +3 -0
  392. data/prestogres.gemspec +23 -0
  393. metadata +496 -0
@@ -0,0 +1,1532 @@
1
+ #! /bin/sh
2
+ # Attempt to guess a canonical system name.
3
+ # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4
+ # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
5
+ # Inc.
6
+
7
+ timestamp='2007-01-15'
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 2 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, write to the Free Software
21
+ # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
22
+ # 02110-1301, USA.
23
+ #
24
+ # As a special exception to the GNU General Public License, if you
25
+ # distribute this file as part of a program that contains a
26
+ # configuration script generated by Autoconf, you may include it under
27
+ # the same distribution terms that you use for the rest of that program.
28
+
29
+
30
+ # Originally written by Per Bothner <per@bothner.com>.
31
+ # Please send patches to <config-patches@gnu.org>. Submit a context
32
+ # diff and a properly formatted ChangeLog entry.
33
+ #
34
+ # This script attempts to guess a canonical system name similar to
35
+ # config.sub. If it succeeds, it prints the system name on stdout, and
36
+ # exits with 0. Otherwise, it exits with 1.
37
+ #
38
+ # The plan is that this can be called by configure scripts if you
39
+ # don't specify an explicit build system type.
40
+
41
+ me=`echo "$0" | sed -e 's,.*/,,'`
42
+
43
+ usage="\
44
+ Usage: $0 [OPTION]
45
+
46
+ Output the configuration name of the system \`$me' is run on.
47
+
48
+ Operation modes:
49
+ -h, --help print this help, then exit
50
+ -t, --time-stamp print date of last modification, then exit
51
+ -v, --version print version number, then exit
52
+
53
+ Report bugs and patches to <config-patches@gnu.org>."
54
+
55
+ version="\
56
+ GNU config.guess ($timestamp)
57
+
58
+ Originally written by Per Bothner.
59
+ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
60
+ Free Software Foundation, Inc.
61
+
62
+ This is free software; see the source for copying conditions. There is NO
63
+ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
64
+
65
+ help="
66
+ Try \`$me --help' for more information."
67
+
68
+ # Parse command line
69
+ while test $# -gt 0 ; do
70
+ case $1 in
71
+ --time-stamp | --time* | -t )
72
+ echo "$timestamp" ; exit ;;
73
+ --version | -v )
74
+ echo "$version" ; exit ;;
75
+ --help | --h* | -h )
76
+ echo "$usage"; exit ;;
77
+ -- ) # Stop option processing
78
+ shift; break ;;
79
+ - ) # Use stdin as input.
80
+ break ;;
81
+ -* )
82
+ echo "$me: invalid option $1$help" >&2
83
+ exit 1 ;;
84
+ * )
85
+ break ;;
86
+ esac
87
+ done
88
+
89
+ if test $# != 0; then
90
+ echo "$me: too many arguments$help" >&2
91
+ exit 1
92
+ fi
93
+
94
+ trap 'exit 1' 1 2 15
95
+
96
+ # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97
+ # compiler to aid in system detection is discouraged as it requires
98
+ # temporary files to be created and, as you can see below, it is a
99
+ # headache to deal with in a portable fashion.
100
+
101
+ # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102
+ # use `HOST_CC' if defined, but it is deprecated.
103
+
104
+ # Portable tmp directory creation inspired by the Autoconf team.
105
+
106
+ set_cc_for_build='
107
+ trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108
+ trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
109
+ : ${TMPDIR=/tmp} ;
110
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
111
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
112
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
113
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
114
+ dummy=$tmp/dummy ;
115
+ tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
116
+ case $CC_FOR_BUILD,$HOST_CC,$CC in
117
+ ,,) echo "int x;" > $dummy.c ;
118
+ for c in cc gcc c89 c99 ; do
119
+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
120
+ CC_FOR_BUILD="$c"; break ;
121
+ fi ;
122
+ done ;
123
+ if test x"$CC_FOR_BUILD" = x ; then
124
+ CC_FOR_BUILD=no_compiler_found ;
125
+ fi
126
+ ;;
127
+ ,,*) CC_FOR_BUILD=$CC ;;
128
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
129
+ esac ; set_cc_for_build= ;'
130
+
131
+ # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
132
+ # (ghazi@noc.rutgers.edu 1994-08-24)
133
+ if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134
+ PATH=$PATH:/.attbin ; export PATH
135
+ fi
136
+
137
+ UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138
+ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
139
+ UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
140
+ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
141
+
142
+ if [ "${UNAME_SYSTEM}" = "Linux" ] ; then
143
+ eval $set_cc_for_build
144
+ cat << EOF > $dummy.c
145
+ #include <features.h>
146
+ #ifdef __UCLIBC__
147
+ # ifdef __UCLIBC_CONFIG_VERSION__
148
+ LIBC=uclibc __UCLIBC_CONFIG_VERSION__
149
+ # else
150
+ LIBC=uclibc
151
+ # endif
152
+ #else
153
+ LIBC=gnu
154
+ #endif
155
+ EOF
156
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep LIBC= | sed -e 's: ::g'`
157
+ fi
158
+
159
+ # Note: order is significant - the case branches are not exclusive.
160
+
161
+ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
162
+ *:NetBSD:*:*)
163
+ # NetBSD (nbsd) targets should (where applicable) match one or
164
+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
165
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
166
+ # switched to ELF, *-*-netbsd* would select the old
167
+ # object file format. This provides both forward
168
+ # compatibility and a consistent mechanism for selecting the
169
+ # object file format.
170
+ #
171
+ # Note: NetBSD doesn't particularly care about the vendor
172
+ # portion of the name. We always set it to "unknown".
173
+ sysctl="sysctl -n hw.machine_arch"
174
+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
175
+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
176
+ case "${UNAME_MACHINE_ARCH}" in
177
+ armeb) machine=armeb-unknown ;;
178
+ arm*) machine=arm-unknown ;;
179
+ sh3el) machine=shl-unknown ;;
180
+ sh3eb) machine=sh-unknown ;;
181
+ sh5el) machine=sh5le-unknown ;;
182
+ *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
183
+ esac
184
+ # The Operating System including object format, if it has switched
185
+ # to ELF recently, or will in the future.
186
+ case "${UNAME_MACHINE_ARCH}" in
187
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
188
+ eval $set_cc_for_build
189
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
190
+ | grep __ELF__ >/dev/null
191
+ then
192
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
193
+ # Return netbsd for either. FIX?
194
+ os=netbsd
195
+ else
196
+ os=netbsdelf
197
+ fi
198
+ ;;
199
+ *)
200
+ os=netbsd
201
+ ;;
202
+ esac
203
+ # The OS release
204
+ # Debian GNU/NetBSD machines have a different userland, and
205
+ # thus, need a distinct triplet. However, they do not need
206
+ # kernel version information, so it can be replaced with a
207
+ # suitable tag, in the style of linux-gnu.
208
+ case "${UNAME_VERSION}" in
209
+ Debian*)
210
+ release='-gnu'
211
+ ;;
212
+ *)
213
+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
214
+ ;;
215
+ esac
216
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
217
+ # contains redundant information, the shorter form:
218
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
219
+ echo "${machine}-${os}${release}"
220
+ exit ;;
221
+ *:OpenBSD:*:*)
222
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
223
+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
224
+ exit ;;
225
+ *:ekkoBSD:*:*)
226
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
227
+ exit ;;
228
+ *:SolidBSD:*:*)
229
+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
230
+ exit ;;
231
+ macppc:MirBSD:*:*)
232
+ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
233
+ exit ;;
234
+ *:MirBSD:*:*)
235
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
236
+ exit ;;
237
+ alpha:OSF1:*:*)
238
+ case $UNAME_RELEASE in
239
+ *4.0)
240
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
241
+ ;;
242
+ *5.*)
243
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
244
+ ;;
245
+ esac
246
+ # According to Compaq, /usr/sbin/psrinfo has been available on
247
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
248
+ # covers most systems running today. This code pipes the CPU
249
+ # types through head -n 1, so we only detect the type of CPU 0.
250
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
251
+ case "$ALPHA_CPU_TYPE" in
252
+ "EV4 (21064)")
253
+ UNAME_MACHINE="alpha" ;;
254
+ "EV4.5 (21064)")
255
+ UNAME_MACHINE="alpha" ;;
256
+ "LCA4 (21066/21068)")
257
+ UNAME_MACHINE="alpha" ;;
258
+ "EV5 (21164)")
259
+ UNAME_MACHINE="alphaev5" ;;
260
+ "EV5.6 (21164A)")
261
+ UNAME_MACHINE="alphaev56" ;;
262
+ "EV5.6 (21164PC)")
263
+ UNAME_MACHINE="alphapca56" ;;
264
+ "EV5.7 (21164PC)")
265
+ UNAME_MACHINE="alphapca57" ;;
266
+ "EV6 (21264)")
267
+ UNAME_MACHINE="alphaev6" ;;
268
+ "EV6.7 (21264A)")
269
+ UNAME_MACHINE="alphaev67" ;;
270
+ "EV6.8CB (21264C)")
271
+ UNAME_MACHINE="alphaev68" ;;
272
+ "EV6.8AL (21264B)")
273
+ UNAME_MACHINE="alphaev68" ;;
274
+ "EV6.8CX (21264D)")
275
+ UNAME_MACHINE="alphaev68" ;;
276
+ "EV6.9A (21264/EV69A)")
277
+ UNAME_MACHINE="alphaev69" ;;
278
+ "EV7 (21364)")
279
+ UNAME_MACHINE="alphaev7" ;;
280
+ "EV7.9 (21364A)")
281
+ UNAME_MACHINE="alphaev79" ;;
282
+ esac
283
+ # A Pn.n version is a patched version.
284
+ # A Vn.n version is a released version.
285
+ # A Tn.n version is a released field test version.
286
+ # A Xn.n version is an unreleased experimental baselevel.
287
+ # 1.2 uses "1.2" for uname -r.
288
+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
289
+ exit ;;
290
+ Alpha\ *:Windows_NT*:*)
291
+ # How do we know it's Interix rather than the generic POSIX subsystem?
292
+ # Should we change UNAME_MACHINE based on the output of uname instead
293
+ # of the specific Alpha model?
294
+ echo alpha-pc-interix
295
+ exit ;;
296
+ 21064:Windows_NT:50:3)
297
+ echo alpha-dec-winnt3.5
298
+ exit ;;
299
+ Amiga*:UNIX_System_V:4.0:*)
300
+ echo m68k-unknown-sysv4
301
+ exit ;;
302
+ *:[Aa]miga[Oo][Ss]:*:*)
303
+ echo ${UNAME_MACHINE}-unknown-amigaos
304
+ exit ;;
305
+ *:[Mm]orph[Oo][Ss]:*:*)
306
+ echo ${UNAME_MACHINE}-unknown-morphos
307
+ exit ;;
308
+ *:OS/390:*:*)
309
+ echo i370-ibm-openedition
310
+ exit ;;
311
+ *:z/VM:*:*)
312
+ echo s390-ibm-zvmoe
313
+ exit ;;
314
+ *:OS400:*:*)
315
+ echo powerpc-ibm-os400
316
+ exit ;;
317
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
318
+ echo arm-acorn-riscix${UNAME_RELEASE}
319
+ exit ;;
320
+ arm:riscos:*:*|arm:RISCOS:*:*)
321
+ echo arm-unknown-riscos
322
+ exit ;;
323
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
324
+ echo hppa1.1-hitachi-hiuxmpp
325
+ exit ;;
326
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
327
+ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
328
+ if test "`(/bin/universe) 2>/dev/null`" = att ; then
329
+ echo pyramid-pyramid-sysv3
330
+ else
331
+ echo pyramid-pyramid-bsd
332
+ fi
333
+ exit ;;
334
+ NILE*:*:*:dcosx)
335
+ echo pyramid-pyramid-svr4
336
+ exit ;;
337
+ DRS?6000:unix:4.0:6*)
338
+ echo sparc-icl-nx6
339
+ exit ;;
340
+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
341
+ case `/usr/bin/uname -p` in
342
+ sparc) echo sparc-icl-nx7; exit ;;
343
+ esac ;;
344
+ sun4H:SunOS:5.*:*)
345
+ echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
346
+ exit ;;
347
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
348
+ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
349
+ exit ;;
350
+ i86pc:SunOS:5.*:*)
351
+ echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
352
+ exit ;;
353
+ sun4*:SunOS:6*:*)
354
+ # According to config.sub, this is the proper way to canonicalize
355
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
356
+ # it's likely to be more like Solaris than SunOS4.
357
+ echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
358
+ exit ;;
359
+ sun4*:SunOS:*:*)
360
+ case "`/usr/bin/arch -k`" in
361
+ Series*|S4*)
362
+ UNAME_RELEASE=`uname -v`
363
+ ;;
364
+ esac
365
+ # Japanese Language versions have a version number like `4.1.3-JL'.
366
+ echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
367
+ exit ;;
368
+ sun3*:SunOS:*:*)
369
+ echo m68k-sun-sunos${UNAME_RELEASE}
370
+ exit ;;
371
+ sun*:*:4.2BSD:*)
372
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
373
+ test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
374
+ case "`/bin/arch`" in
375
+ sun3)
376
+ echo m68k-sun-sunos${UNAME_RELEASE}
377
+ ;;
378
+ sun4)
379
+ echo sparc-sun-sunos${UNAME_RELEASE}
380
+ ;;
381
+ esac
382
+ exit ;;
383
+ aushp:SunOS:*:*)
384
+ echo sparc-auspex-sunos${UNAME_RELEASE}
385
+ exit ;;
386
+ # The situation for MiNT is a little confusing. The machine name
387
+ # can be virtually everything (everything which is not
388
+ # "atarist" or "atariste" at least should have a processor
389
+ # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
390
+ # to the lowercase version "mint" (or "freemint"). Finally
391
+ # the system name "TOS" denotes a system which is actually not
392
+ # MiNT. But MiNT is downward compatible to TOS, so this should
393
+ # be no problem.
394
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
395
+ echo m68k-atari-mint${UNAME_RELEASE}
396
+ exit ;;
397
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
398
+ echo m68k-atari-mint${UNAME_RELEASE}
399
+ exit ;;
400
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
401
+ echo m68k-atari-mint${UNAME_RELEASE}
402
+ exit ;;
403
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
404
+ echo m68k-milan-mint${UNAME_RELEASE}
405
+ exit ;;
406
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
407
+ echo m68k-hades-mint${UNAME_RELEASE}
408
+ exit ;;
409
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
410
+ echo m68k-unknown-mint${UNAME_RELEASE}
411
+ exit ;;
412
+ m68k:machten:*:*)
413
+ echo m68k-apple-machten${UNAME_RELEASE}
414
+ exit ;;
415
+ powerpc:machten:*:*)
416
+ echo powerpc-apple-machten${UNAME_RELEASE}
417
+ exit ;;
418
+ RISC*:Mach:*:*)
419
+ echo mips-dec-mach_bsd4.3
420
+ exit ;;
421
+ RISC*:ULTRIX:*:*)
422
+ echo mips-dec-ultrix${UNAME_RELEASE}
423
+ exit ;;
424
+ VAX*:ULTRIX*:*:*)
425
+ echo vax-dec-ultrix${UNAME_RELEASE}
426
+ exit ;;
427
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
428
+ echo clipper-intergraph-clix${UNAME_RELEASE}
429
+ exit ;;
430
+ mips:*:*:UMIPS | mips:*:*:RISCos)
431
+ eval $set_cc_for_build
432
+ sed 's/^ //' << EOF >$dummy.c
433
+ #ifdef __cplusplus
434
+ #include <stdio.h> /* for printf() prototype */
435
+ int main (int argc, char *argv[]) {
436
+ #else
437
+ int main (argc, argv) int argc; char *argv[]; {
438
+ #endif
439
+ #if defined (host_mips) && defined (MIPSEB)
440
+ #if defined (SYSTYPE_SYSV)
441
+ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
442
+ #endif
443
+ #if defined (SYSTYPE_SVR4)
444
+ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
445
+ #endif
446
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
447
+ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
448
+ #endif
449
+ #endif
450
+ exit (-1);
451
+ }
452
+ EOF
453
+ $CC_FOR_BUILD -o $dummy $dummy.c &&
454
+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
455
+ SYSTEM_NAME=`$dummy $dummyarg` &&
456
+ { echo "$SYSTEM_NAME"; exit; }
457
+ echo mips-mips-riscos${UNAME_RELEASE}
458
+ exit ;;
459
+ Motorola:PowerMAX_OS:*:*)
460
+ echo powerpc-motorola-powermax
461
+ exit ;;
462
+ Motorola:*:4.3:PL8-*)
463
+ echo powerpc-harris-powermax
464
+ exit ;;
465
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
466
+ echo powerpc-harris-powermax
467
+ exit ;;
468
+ Night_Hawk:Power_UNIX:*:*)
469
+ echo powerpc-harris-powerunix
470
+ exit ;;
471
+ m88k:CX/UX:7*:*)
472
+ echo m88k-harris-cxux7
473
+ exit ;;
474
+ m88k:*:4*:R4*)
475
+ echo m88k-motorola-sysv4
476
+ exit ;;
477
+ m88k:*:3*:R3*)
478
+ echo m88k-motorola-sysv3
479
+ exit ;;
480
+ AViiON:dgux:*:*)
481
+ # DG/UX returns AViiON for all architectures
482
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
483
+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
484
+ then
485
+ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
486
+ [ ${TARGET_BINARY_INTERFACE}x = x ]
487
+ then
488
+ echo m88k-dg-dgux${UNAME_RELEASE}
489
+ else
490
+ echo m88k-dg-dguxbcs${UNAME_RELEASE}
491
+ fi
492
+ else
493
+ echo i586-dg-dgux${UNAME_RELEASE}
494
+ fi
495
+ exit ;;
496
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
497
+ echo m88k-dolphin-sysv3
498
+ exit ;;
499
+ M88*:*:R3*:*)
500
+ # Delta 88k system running SVR3
501
+ echo m88k-motorola-sysv3
502
+ exit ;;
503
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
504
+ echo m88k-tektronix-sysv3
505
+ exit ;;
506
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
507
+ echo m68k-tektronix-bsd
508
+ exit ;;
509
+ *:IRIX*:*:*)
510
+ echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
511
+ exit ;;
512
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
513
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
514
+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
515
+ i*86:AIX:*:*)
516
+ echo i386-ibm-aix
517
+ exit ;;
518
+ ia64:AIX:*:*)
519
+ if [ -x /usr/bin/oslevel ] ; then
520
+ IBM_REV=`/usr/bin/oslevel`
521
+ else
522
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
523
+ fi
524
+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
525
+ exit ;;
526
+ *:AIX:2:3)
527
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
528
+ eval $set_cc_for_build
529
+ sed 's/^ //' << EOF >$dummy.c
530
+ #include <sys/systemcfg.h>
531
+
532
+ main()
533
+ {
534
+ if (!__power_pc())
535
+ exit(1);
536
+ puts("powerpc-ibm-aix3.2.5");
537
+ exit(0);
538
+ }
539
+ EOF
540
+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
541
+ then
542
+ echo "$SYSTEM_NAME"
543
+ else
544
+ echo rs6000-ibm-aix3.2.5
545
+ fi
546
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
547
+ echo rs6000-ibm-aix3.2.4
548
+ else
549
+ echo rs6000-ibm-aix3.2
550
+ fi
551
+ exit ;;
552
+ *:AIX:*:[45])
553
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
554
+ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
555
+ IBM_ARCH=rs6000
556
+ else
557
+ IBM_ARCH=powerpc
558
+ fi
559
+ if [ -x /usr/bin/oslevel ] ; then
560
+ IBM_REV=`/usr/bin/oslevel`
561
+ else
562
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
563
+ fi
564
+ echo ${IBM_ARCH}-ibm-aix${IBM_REV}
565
+ exit ;;
566
+ *:AIX:*:*)
567
+ echo rs6000-ibm-aix
568
+ exit ;;
569
+ ibmrt:4.4BSD:*|romp-ibm:BSD:*)
570
+ echo romp-ibm-bsd4.4
571
+ exit ;;
572
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
573
+ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
574
+ exit ;; # report: romp-ibm BSD 4.3
575
+ *:BOSX:*:*)
576
+ echo rs6000-bull-bosx
577
+ exit ;;
578
+ DPX/2?00:B.O.S.:*:*)
579
+ echo m68k-bull-sysv3
580
+ exit ;;
581
+ 9000/[34]??:4.3bsd:1.*:*)
582
+ echo m68k-hp-bsd
583
+ exit ;;
584
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
585
+ echo m68k-hp-bsd4.4
586
+ exit ;;
587
+ 9000/[34678]??:HP-UX:*:*)
588
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
589
+ case "${UNAME_MACHINE}" in
590
+ 9000/31? ) HP_ARCH=m68000 ;;
591
+ 9000/[34]?? ) HP_ARCH=m68k ;;
592
+ 9000/[678][0-9][0-9])
593
+ if [ -x /usr/bin/getconf ]; then
594
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
595
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
596
+ case "${sc_cpu_version}" in
597
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
598
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
599
+ 532) # CPU_PA_RISC2_0
600
+ case "${sc_kernel_bits}" in
601
+ 32) HP_ARCH="hppa2.0n" ;;
602
+ 64) HP_ARCH="hppa2.0w" ;;
603
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
604
+ esac ;;
605
+ esac
606
+ fi
607
+ if [ "${HP_ARCH}" = "" ]; then
608
+ eval $set_cc_for_build
609
+ sed 's/^ //' << EOF >$dummy.c
610
+
611
+ #define _HPUX_SOURCE
612
+ #include <stdlib.h>
613
+ #include <unistd.h>
614
+
615
+ int main ()
616
+ {
617
+ #if defined(_SC_KERNEL_BITS)
618
+ long bits = sysconf(_SC_KERNEL_BITS);
619
+ #endif
620
+ long cpu = sysconf (_SC_CPU_VERSION);
621
+
622
+ switch (cpu)
623
+ {
624
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
625
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
626
+ case CPU_PA_RISC2_0:
627
+ #if defined(_SC_KERNEL_BITS)
628
+ switch (bits)
629
+ {
630
+ case 64: puts ("hppa2.0w"); break;
631
+ case 32: puts ("hppa2.0n"); break;
632
+ default: puts ("hppa2.0"); break;
633
+ } break;
634
+ #else /* !defined(_SC_KERNEL_BITS) */
635
+ puts ("hppa2.0"); break;
636
+ #endif
637
+ default: puts ("hppa1.0"); break;
638
+ }
639
+ exit (0);
640
+ }
641
+ EOF
642
+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
643
+ test -z "$HP_ARCH" && HP_ARCH=hppa
644
+ fi ;;
645
+ esac
646
+ if [ ${HP_ARCH} = "hppa2.0w" ]
647
+ then
648
+ eval $set_cc_for_build
649
+
650
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
651
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
652
+ # generating 64-bit code. GNU and HP use different nomenclature:
653
+ #
654
+ # $ CC_FOR_BUILD=cc ./config.guess
655
+ # => hppa2.0w-hp-hpux11.23
656
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
657
+ # => hppa64-hp-hpux11.23
658
+
659
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
660
+ grep __LP64__ >/dev/null
661
+ then
662
+ HP_ARCH="hppa2.0w"
663
+ else
664
+ HP_ARCH="hppa64"
665
+ fi
666
+ fi
667
+ echo ${HP_ARCH}-hp-hpux${HPUX_REV}
668
+ exit ;;
669
+ ia64:HP-UX:*:*)
670
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
671
+ echo ia64-hp-hpux${HPUX_REV}
672
+ exit ;;
673
+ 3050*:HI-UX:*:*)
674
+ eval $set_cc_for_build
675
+ sed 's/^ //' << EOF >$dummy.c
676
+ #include <unistd.h>
677
+ int
678
+ main ()
679
+ {
680
+ long cpu = sysconf (_SC_CPU_VERSION);
681
+ /* The order matters, because CPU_IS_HP_MC68K erroneously returns
682
+ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
683
+ results, however. */
684
+ if (CPU_IS_PA_RISC (cpu))
685
+ {
686
+ switch (cpu)
687
+ {
688
+ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
689
+ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
690
+ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
691
+ default: puts ("hppa-hitachi-hiuxwe2"); break;
692
+ }
693
+ }
694
+ else if (CPU_IS_HP_MC68K (cpu))
695
+ puts ("m68k-hitachi-hiuxwe2");
696
+ else puts ("unknown-hitachi-hiuxwe2");
697
+ exit (0);
698
+ }
699
+ EOF
700
+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
701
+ { echo "$SYSTEM_NAME"; exit; }
702
+ echo unknown-hitachi-hiuxwe2
703
+ exit ;;
704
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
705
+ echo hppa1.1-hp-bsd
706
+ exit ;;
707
+ 9000/8??:4.3bsd:*:*)
708
+ echo hppa1.0-hp-bsd
709
+ exit ;;
710
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
711
+ echo hppa1.0-hp-mpeix
712
+ exit ;;
713
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
714
+ echo hppa1.1-hp-osf
715
+ exit ;;
716
+ hp8??:OSF1:*:*)
717
+ echo hppa1.0-hp-osf
718
+ exit ;;
719
+ i*86:OSF1:*:*)
720
+ if [ -x /usr/sbin/sysversion ] ; then
721
+ echo ${UNAME_MACHINE}-unknown-osf1mk
722
+ else
723
+ echo ${UNAME_MACHINE}-unknown-osf1
724
+ fi
725
+ exit ;;
726
+ parisc*:Lites*:*:*)
727
+ echo hppa1.1-hp-lites
728
+ exit ;;
729
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
730
+ echo c1-convex-bsd
731
+ exit ;;
732
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
733
+ if getsysinfo -f scalar_acc
734
+ then echo c32-convex-bsd
735
+ else echo c2-convex-bsd
736
+ fi
737
+ exit ;;
738
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
739
+ echo c34-convex-bsd
740
+ exit ;;
741
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
742
+ echo c38-convex-bsd
743
+ exit ;;
744
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
745
+ echo c4-convex-bsd
746
+ exit ;;
747
+ CRAY*Y-MP:*:*:*)
748
+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
749
+ exit ;;
750
+ CRAY*[A-Z]90:*:*:*)
751
+ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
752
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
753
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
754
+ -e 's/\.[^.]*$/.X/'
755
+ exit ;;
756
+ CRAY*TS:*:*:*)
757
+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
758
+ exit ;;
759
+ CRAY*T3E:*:*:*)
760
+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
761
+ exit ;;
762
+ CRAY*SV1:*:*:*)
763
+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
764
+ exit ;;
765
+ *:UNICOS/mp:*:*)
766
+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
767
+ exit ;;
768
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
769
+ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
770
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
771
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
772
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
773
+ exit ;;
774
+ 5000:UNIX_System_V:4.*:*)
775
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
776
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
777
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
778
+ exit ;;
779
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
780
+ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
781
+ exit ;;
782
+ sparc*:BSD/OS:*:*)
783
+ echo sparc-unknown-bsdi${UNAME_RELEASE}
784
+ exit ;;
785
+ *:BSD/OS:*:*)
786
+ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
787
+ exit ;;
788
+ *:FreeBSD:*:*)
789
+ case ${UNAME_MACHINE} in
790
+ pc98)
791
+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
792
+ amd64)
793
+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
794
+ *)
795
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
796
+ esac
797
+ exit ;;
798
+ i*:CYGWIN*:*)
799
+ echo ${UNAME_MACHINE}-pc-cygwin
800
+ exit ;;
801
+ *:MINGW*:*)
802
+ echo ${UNAME_MACHINE}-pc-mingw32
803
+ exit ;;
804
+ i*:windows32*:*)
805
+ # uname -m includes "-pc" on this system.
806
+ echo ${UNAME_MACHINE}-mingw32
807
+ exit ;;
808
+ i*:PW*:*)
809
+ echo ${UNAME_MACHINE}-pc-pw32
810
+ exit ;;
811
+ x86:Interix*:[3456]*)
812
+ echo i586-pc-interix${UNAME_RELEASE}
813
+ exit ;;
814
+ EM64T:Interix*:[3456]* | authenticamd:Interix*:[3456]*)
815
+ echo x86_64-unknown-interix${UNAME_RELEASE}
816
+ exit ;;
817
+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
818
+ echo i${UNAME_MACHINE}-pc-mks
819
+ exit ;;
820
+ i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
821
+ # How do we know it's Interix rather than the generic POSIX subsystem?
822
+ # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
823
+ # UNAME_MACHINE based on the output of uname instead of i386?
824
+ echo i586-pc-interix
825
+ exit ;;
826
+ i*:UWIN*:*)
827
+ echo ${UNAME_MACHINE}-pc-uwin
828
+ exit ;;
829
+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
830
+ echo x86_64-unknown-cygwin
831
+ exit ;;
832
+ p*:CYGWIN*:*)
833
+ echo powerpcle-unknown-cygwin
834
+ exit ;;
835
+ prep*:SunOS:5.*:*)
836
+ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
837
+ exit ;;
838
+ *:GNU:*:*)
839
+ # the GNU system
840
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
841
+ exit ;;
842
+ *:GNU/*:*:*)
843
+ # other systems with GNU libc and userland
844
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
845
+ exit ;;
846
+ i*86:Minix:*:*)
847
+ echo ${UNAME_MACHINE}-pc-minix
848
+ exit ;;
849
+ arm*:Linux:*:*)
850
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
851
+ exit ;;
852
+ avr32*:Linux:*:*)
853
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
854
+ exit ;;
855
+ cris:Linux:*:*)
856
+ echo cris-axis-linux-${LIBC}
857
+ exit ;;
858
+ crisv32:Linux:*:*)
859
+ echo crisv32-axis-linux-${LIBC}
860
+ exit ;;
861
+ frv:Linux:*:*)
862
+ echo frv-unknown-linux-${LIBC}
863
+ exit ;;
864
+ ia64:Linux:*:*)
865
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
866
+ exit ;;
867
+ m32r*:Linux:*:*)
868
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
869
+ exit ;;
870
+ m68*:Linux:*:*)
871
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
872
+ exit ;;
873
+ mips:Linux:*:*)
874
+ eval $set_cc_for_build
875
+ sed 's/^ //' << EOF >$dummy.c
876
+ #undef CPU
877
+ #undef mips
878
+ #undef mipsel
879
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
880
+ CPU=mipsel
881
+ #else
882
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
883
+ CPU=mips
884
+ #else
885
+ CPU=
886
+ #endif
887
+ #endif
888
+ EOF
889
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
890
+ /^CPU/{
891
+ s: ::g
892
+ p
893
+ }'`"
894
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
895
+ ;;
896
+ mips64:Linux:*:*)
897
+ eval $set_cc_for_build
898
+ sed 's/^ //' << EOF >$dummy.c
899
+ #undef CPU
900
+ #undef mips64
901
+ #undef mips64el
902
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
903
+ CPU=mips64el
904
+ #else
905
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
906
+ CPU=mips64
907
+ #else
908
+ CPU=
909
+ #endif
910
+ #endif
911
+ EOF
912
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
913
+ /^CPU/{
914
+ s: ::g
915
+ p
916
+ }'`"
917
+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
918
+ ;;
919
+ or32:Linux:*:*)
920
+ echo or32-unknown-linux-${LIBC}
921
+ exit ;;
922
+ ppc:Linux:*:*)
923
+ echo powerpc-unknown-linux-${LIBC}
924
+ exit ;;
925
+ ppc64:Linux:*:*)
926
+ echo powerpc64-unknown-linux-${LIBC}
927
+ exit ;;
928
+ alpha:Linux:*:*)
929
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
930
+ EV5) UNAME_MACHINE=alphaev5 ;;
931
+ EV56) UNAME_MACHINE=alphaev56 ;;
932
+ PCA56) UNAME_MACHINE=alphapca56 ;;
933
+ PCA57) UNAME_MACHINE=alphapca56 ;;
934
+ EV6) UNAME_MACHINE=alphaev6 ;;
935
+ EV67) UNAME_MACHINE=alphaev67 ;;
936
+ EV68*) UNAME_MACHINE=alphaev68 ;;
937
+ esac
938
+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
939
+ if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
940
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
941
+ exit ;;
942
+ parisc:Linux:*:* | hppa:Linux:*:*)
943
+ # Look for CPU level
944
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
945
+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
946
+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
947
+ *) echo hppa-unknown-linux-${LIBC} ;;
948
+ esac
949
+ exit ;;
950
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
951
+ echo hppa64-unknown-linux-${LIBC}
952
+ exit ;;
953
+ s390:Linux:*:* | s390x:Linux:*:*)
954
+ echo ${UNAME_MACHINE}-ibm-linux
955
+ exit ;;
956
+ sh64*:Linux:*:*)
957
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
958
+ exit ;;
959
+ sh*:Linux:*:*)
960
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
961
+ exit ;;
962
+ sparc:Linux:*:* | sparc64:Linux:*:*)
963
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
964
+ exit ;;
965
+ vax:Linux:*:*)
966
+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
967
+ exit ;;
968
+ x86_64:Linux:*:*)
969
+ echo x86_64-unknown-linux-${LIBC}
970
+ exit ;;
971
+ xtensa:Linux:*:*)
972
+ echo xtensa-unknown-linux-${LIBC}
973
+ exit ;;
974
+ i*86:Linux:*:*)
975
+ # The BFD linker knows what the default object file format is, so
976
+ # first see if it will tell us. cd to the root directory to prevent
977
+ # problems with other programs or directories called `ld' in the path.
978
+ # Set LC_ALL=C to ensure ld outputs messages in English.
979
+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
980
+ | sed -ne '/supported targets:/!d
981
+ s/[ ][ ]*/ /g
982
+ s/.*supported targets: *//
983
+ s/ .*//
984
+ p'`
985
+ case "$ld_supported_targets" in
986
+ elf32-i386)
987
+ TENTATIVE="${UNAME_MACHINE}-pc-linux-${LIBC}"
988
+ ;;
989
+ a.out-i386-linux)
990
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}aout"
991
+ exit ;;
992
+ coff-i386)
993
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}coff"
994
+ exit ;;
995
+ "")
996
+ # Either a pre-BFD a.out linker (linux-gnuoldld) or
997
+ # one that does not give us useful --help.
998
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}oldld"
999
+ exit ;;
1000
+ esac
1001
+ # This should get integrated into the C code below, but now we hack
1002
+ if [ "$LIBC" != "gnu" ] ; then echo "$TENTATIVE" && exit 0 ; fi
1003
+ # Determine whether the default compiler is a.out or elf
1004
+ eval $set_cc_for_build
1005
+ sed 's/^ //' << EOF >$dummy.c
1006
+ #include <features.h>
1007
+ #ifdef __ELF__
1008
+ # ifdef __GLIBC__
1009
+ # if __GLIBC__ >= 2
1010
+ LIBC=gnu
1011
+ # else
1012
+ LIBC=gnulibc1
1013
+ # endif
1014
+ # else
1015
+ LIBC=gnulibc1
1016
+ # endif
1017
+ #else
1018
+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
1019
+ LIBC=gnu
1020
+ #else
1021
+ LIBC=gnuaout
1022
+ #endif
1023
+ #endif
1024
+ #ifdef __dietlibc__
1025
+ LIBC=dietlibc
1026
+ #endif
1027
+ EOF
1028
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
1029
+ /^LIBC/{
1030
+ s: ::g
1031
+ p
1032
+ }'`"
1033
+ test x"${LIBC}" != x && {
1034
+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
1035
+ exit
1036
+ }
1037
+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
1038
+ ;;
1039
+ i*86:DYNIX/ptx:4*:*)
1040
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1041
+ # earlier versions are messed up and put the nodename in both
1042
+ # sysname and nodename.
1043
+ echo i386-sequent-sysv4
1044
+ exit ;;
1045
+ i*86:UNIX_SV:4.2MP:2.*)
1046
+ # Unixware is an offshoot of SVR4, but it has its own version
1047
+ # number series starting with 2...
1048
+ # I am not positive that other SVR4 systems won't match this,
1049
+ # I just have to hope. -- rms.
1050
+ # Use sysv4.2uw... so that sysv4* matches it.
1051
+ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1052
+ exit ;;
1053
+ i*86:OS/2:*:*)
1054
+ # If we were able to find `uname', then EMX Unix compatibility
1055
+ # is probably installed.
1056
+ echo ${UNAME_MACHINE}-pc-os2-emx
1057
+ exit ;;
1058
+ i*86:XTS-300:*:STOP)
1059
+ echo ${UNAME_MACHINE}-unknown-stop
1060
+ exit ;;
1061
+ i*86:atheos:*:*)
1062
+ echo ${UNAME_MACHINE}-unknown-atheos
1063
+ exit ;;
1064
+ i*86:syllable:*:*)
1065
+ echo ${UNAME_MACHINE}-pc-syllable
1066
+ exit ;;
1067
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
1068
+ echo i386-unknown-lynxos${UNAME_RELEASE}
1069
+ exit ;;
1070
+ i*86:*DOS:*:*)
1071
+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
1072
+ exit ;;
1073
+ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1074
+ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1075
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1076
+ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1077
+ else
1078
+ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1079
+ fi
1080
+ exit ;;
1081
+ i*86:*:5:[678]*)
1082
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
1083
+ case `/bin/uname -X | grep "^Machine"` in
1084
+ *486*) UNAME_MACHINE=i486 ;;
1085
+ *Pentium) UNAME_MACHINE=i586 ;;
1086
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1087
+ esac
1088
+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1089
+ exit ;;
1090
+ i*86:*:3.2:*)
1091
+ if test -f /usr/options/cb.name; then
1092
+ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1093
+ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1094
+ elif /bin/uname -X 2>/dev/null >/dev/null ; then
1095
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1096
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1097
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1098
+ && UNAME_MACHINE=i586
1099
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1100
+ && UNAME_MACHINE=i686
1101
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1102
+ && UNAME_MACHINE=i686
1103
+ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1104
+ else
1105
+ echo ${UNAME_MACHINE}-pc-sysv32
1106
+ fi
1107
+ exit ;;
1108
+ pc:*:*:*)
1109
+ # Left here for compatibility:
1110
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
1111
+ # the processor, so we play safe by assuming i386.
1112
+ echo i386-pc-msdosdjgpp
1113
+ exit ;;
1114
+ Intel:Mach:3*:*)
1115
+ echo i386-pc-mach3
1116
+ exit ;;
1117
+ paragon:*:*:*)
1118
+ echo i860-intel-osf1
1119
+ exit ;;
1120
+ i860:*:4.*:*) # i860-SVR4
1121
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1122
+ echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1123
+ else # Add other i860-SVR4 vendors below as they are discovered.
1124
+ echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1125
+ fi
1126
+ exit ;;
1127
+ mini*:CTIX:SYS*5:*)
1128
+ # "miniframe"
1129
+ echo m68010-convergent-sysv
1130
+ exit ;;
1131
+ mc68k:UNIX:SYSTEM5:3.51m)
1132
+ echo m68k-convergent-sysv
1133
+ exit ;;
1134
+ M680?0:D-NIX:5.3:*)
1135
+ echo m68k-diab-dnix
1136
+ exit ;;
1137
+ M68*:*:R3V[5678]*:*)
1138
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1139
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
1140
+ OS_REL=''
1141
+ test -r /etc/.relid \
1142
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1143
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1144
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1145
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1146
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1147
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1148
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1149
+ && { echo i486-ncr-sysv4; exit; } ;;
1150
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1151
+ echo m68k-unknown-lynxos${UNAME_RELEASE}
1152
+ exit ;;
1153
+ mc68030:UNIX_System_V:4.*:*)
1154
+ echo m68k-atari-sysv4
1155
+ exit ;;
1156
+ TSUNAMI:LynxOS:2.*:*)
1157
+ echo sparc-unknown-lynxos${UNAME_RELEASE}
1158
+ exit ;;
1159
+ rs6000:LynxOS:2.*:*)
1160
+ echo rs6000-unknown-lynxos${UNAME_RELEASE}
1161
+ exit ;;
1162
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1163
+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
1164
+ exit ;;
1165
+ SM[BE]S:UNIX_SV:*:*)
1166
+ echo mips-dde-sysv${UNAME_RELEASE}
1167
+ exit ;;
1168
+ RM*:ReliantUNIX-*:*:*)
1169
+ echo mips-sni-sysv4
1170
+ exit ;;
1171
+ RM*:SINIX-*:*:*)
1172
+ echo mips-sni-sysv4
1173
+ exit ;;
1174
+ *:SINIX-*:*:*)
1175
+ if uname -p 2>/dev/null >/dev/null ; then
1176
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
1177
+ echo ${UNAME_MACHINE}-sni-sysv4
1178
+ else
1179
+ echo ns32k-sni-sysv
1180
+ fi
1181
+ exit ;;
1182
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1183
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
1184
+ echo i586-unisys-sysv4
1185
+ exit ;;
1186
+ *:UNIX_System_V:4*:FTX*)
1187
+ # From Gerald Hewes <hewes@openmarket.com>.
1188
+ # How about differentiating between stratus architectures? -djm
1189
+ echo hppa1.1-stratus-sysv4
1190
+ exit ;;
1191
+ *:*:*:FTX*)
1192
+ # From seanf@swdc.stratus.com.
1193
+ echo i860-stratus-sysv4
1194
+ exit ;;
1195
+ i*86:VOS:*:*)
1196
+ # From Paul.Green@stratus.com.
1197
+ echo ${UNAME_MACHINE}-stratus-vos
1198
+ exit ;;
1199
+ *:VOS:*:*)
1200
+ # From Paul.Green@stratus.com.
1201
+ echo hppa1.1-stratus-vos
1202
+ exit ;;
1203
+ mc68*:A/UX:*:*)
1204
+ echo m68k-apple-aux${UNAME_RELEASE}
1205
+ exit ;;
1206
+ news*:NEWS-OS:6*:*)
1207
+ echo mips-sony-newsos6
1208
+ exit ;;
1209
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1210
+ if [ -d /usr/nec ]; then
1211
+ echo mips-nec-sysv${UNAME_RELEASE}
1212
+ else
1213
+ echo mips-unknown-sysv${UNAME_RELEASE}
1214
+ fi
1215
+ exit ;;
1216
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1217
+ echo powerpc-be-beos
1218
+ exit ;;
1219
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1220
+ echo powerpc-apple-beos
1221
+ exit ;;
1222
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1223
+ echo i586-pc-beos
1224
+ exit ;;
1225
+ SX-4:SUPER-UX:*:*)
1226
+ echo sx4-nec-superux${UNAME_RELEASE}
1227
+ exit ;;
1228
+ SX-5:SUPER-UX:*:*)
1229
+ echo sx5-nec-superux${UNAME_RELEASE}
1230
+ exit ;;
1231
+ SX-6:SUPER-UX:*:*)
1232
+ echo sx6-nec-superux${UNAME_RELEASE}
1233
+ exit ;;
1234
+ SX-7:SUPER-UX:*:*)
1235
+ echo sx7-nec-superux${UNAME_RELEASE}
1236
+ exit ;;
1237
+ SX-8:SUPER-UX:*:*)
1238
+ echo sx8-nec-superux${UNAME_RELEASE}
1239
+ exit ;;
1240
+ SX-8R:SUPER-UX:*:*)
1241
+ echo sx8r-nec-superux${UNAME_RELEASE}
1242
+ exit ;;
1243
+ Power*:Rhapsody:*:*)
1244
+ echo powerpc-apple-rhapsody${UNAME_RELEASE}
1245
+ exit ;;
1246
+ *:Rhapsody:*:*)
1247
+ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1248
+ exit ;;
1249
+ *:Darwin:*:*)
1250
+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1251
+ case $UNAME_PROCESSOR in
1252
+ unknown) UNAME_PROCESSOR=powerpc ;;
1253
+ esac
1254
+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1255
+ exit ;;
1256
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
1257
+ UNAME_PROCESSOR=`uname -p`
1258
+ if test "$UNAME_PROCESSOR" = "x86"; then
1259
+ UNAME_PROCESSOR=i386
1260
+ UNAME_MACHINE=pc
1261
+ fi
1262
+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1263
+ exit ;;
1264
+ *:QNX:*:4*)
1265
+ echo i386-pc-qnx
1266
+ exit ;;
1267
+ NSE-?:NONSTOP_KERNEL:*:*)
1268
+ echo nse-tandem-nsk${UNAME_RELEASE}
1269
+ exit ;;
1270
+ NSR-?:NONSTOP_KERNEL:*:*)
1271
+ echo nsr-tandem-nsk${UNAME_RELEASE}
1272
+ exit ;;
1273
+ *:NonStop-UX:*:*)
1274
+ echo mips-compaq-nonstopux
1275
+ exit ;;
1276
+ BS2000:POSIX*:*:*)
1277
+ echo bs2000-siemens-sysv
1278
+ exit ;;
1279
+ DS/*:UNIX_System_V:*:*)
1280
+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1281
+ exit ;;
1282
+ *:Plan9:*:*)
1283
+ # "uname -m" is not consistent, so use $cputype instead. 386
1284
+ # is converted to i386 for consistency with other x86
1285
+ # operating systems.
1286
+ if test "$cputype" = "386"; then
1287
+ UNAME_MACHINE=i386
1288
+ else
1289
+ UNAME_MACHINE="$cputype"
1290
+ fi
1291
+ echo ${UNAME_MACHINE}-unknown-plan9
1292
+ exit ;;
1293
+ *:TOPS-10:*:*)
1294
+ echo pdp10-unknown-tops10
1295
+ exit ;;
1296
+ *:TENEX:*:*)
1297
+ echo pdp10-unknown-tenex
1298
+ exit ;;
1299
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1300
+ echo pdp10-dec-tops20
1301
+ exit ;;
1302
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1303
+ echo pdp10-xkl-tops20
1304
+ exit ;;
1305
+ *:TOPS-20:*:*)
1306
+ echo pdp10-unknown-tops20
1307
+ exit ;;
1308
+ *:ITS:*:*)
1309
+ echo pdp10-unknown-its
1310
+ exit ;;
1311
+ SEI:*:*:SEIUX)
1312
+ echo mips-sei-seiux${UNAME_RELEASE}
1313
+ exit ;;
1314
+ *:DragonFly:*:*)
1315
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1316
+ exit ;;
1317
+ *:*VMS:*:*)
1318
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
1319
+ case "${UNAME_MACHINE}" in
1320
+ A*) echo alpha-dec-vms ; exit ;;
1321
+ I*) echo ia64-dec-vms ; exit ;;
1322
+ V*) echo vax-dec-vms ; exit ;;
1323
+ esac ;;
1324
+ *:XENIX:*:SysV)
1325
+ echo i386-pc-xenix
1326
+ exit ;;
1327
+ i*86:skyos:*:*)
1328
+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1329
+ exit ;;
1330
+ i*86:rdos:*:*)
1331
+ echo ${UNAME_MACHINE}-pc-rdos
1332
+ exit ;;
1333
+ esac
1334
+
1335
+ #echo '(No uname command or uname output not recognized.)' 1>&2
1336
+ #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1337
+
1338
+ eval $set_cc_for_build
1339
+ cat >$dummy.c <<EOF
1340
+ #ifdef _SEQUENT_
1341
+ # include <sys/types.h>
1342
+ # include <sys/utsname.h>
1343
+ #endif
1344
+ main ()
1345
+ {
1346
+ #if defined (sony)
1347
+ #if defined (MIPSEB)
1348
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1349
+ I don't know.... */
1350
+ printf ("mips-sony-bsd\n"); exit (0);
1351
+ #else
1352
+ #include <sys/param.h>
1353
+ printf ("m68k-sony-newsos%s\n",
1354
+ #ifdef NEWSOS4
1355
+ "4"
1356
+ #else
1357
+ ""
1358
+ #endif
1359
+ ); exit (0);
1360
+ #endif
1361
+ #endif
1362
+
1363
+ #if defined (__arm) && defined (__acorn) && defined (__unix)
1364
+ printf ("arm-acorn-riscix\n"); exit (0);
1365
+ #endif
1366
+
1367
+ #if defined (hp300) && !defined (hpux)
1368
+ printf ("m68k-hp-bsd\n"); exit (0);
1369
+ #endif
1370
+
1371
+ #if defined (NeXT)
1372
+ #if !defined (__ARCHITECTURE__)
1373
+ #define __ARCHITECTURE__ "m68k"
1374
+ #endif
1375
+ int version;
1376
+ version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1377
+ if (version < 4)
1378
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1379
+ else
1380
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1381
+ exit (0);
1382
+ #endif
1383
+
1384
+ #if defined (MULTIMAX) || defined (n16)
1385
+ #if defined (UMAXV)
1386
+ printf ("ns32k-encore-sysv\n"); exit (0);
1387
+ #else
1388
+ #if defined (CMU)
1389
+ printf ("ns32k-encore-mach\n"); exit (0);
1390
+ #else
1391
+ printf ("ns32k-encore-bsd\n"); exit (0);
1392
+ #endif
1393
+ #endif
1394
+ #endif
1395
+
1396
+ #if defined (__386BSD__)
1397
+ printf ("i386-pc-bsd\n"); exit (0);
1398
+ #endif
1399
+
1400
+ #if defined (sequent)
1401
+ #if defined (i386)
1402
+ printf ("i386-sequent-dynix\n"); exit (0);
1403
+ #endif
1404
+ #if defined (ns32000)
1405
+ printf ("ns32k-sequent-dynix\n"); exit (0);
1406
+ #endif
1407
+ #endif
1408
+
1409
+ #if defined (_SEQUENT_)
1410
+ struct utsname un;
1411
+
1412
+ uname(&un);
1413
+
1414
+ if (strncmp(un.version, "V2", 2) == 0) {
1415
+ printf ("i386-sequent-ptx2\n"); exit (0);
1416
+ }
1417
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1418
+ printf ("i386-sequent-ptx1\n"); exit (0);
1419
+ }
1420
+ printf ("i386-sequent-ptx\n"); exit (0);
1421
+
1422
+ #endif
1423
+
1424
+ #if defined (vax)
1425
+ # if !defined (ultrix)
1426
+ # include <sys/param.h>
1427
+ # if defined (BSD)
1428
+ # if BSD == 43
1429
+ printf ("vax-dec-bsd4.3\n"); exit (0);
1430
+ # else
1431
+ # if BSD == 199006
1432
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
1433
+ # else
1434
+ printf ("vax-dec-bsd\n"); exit (0);
1435
+ # endif
1436
+ # endif
1437
+ # else
1438
+ printf ("vax-dec-bsd\n"); exit (0);
1439
+ # endif
1440
+ # else
1441
+ printf ("vax-dec-ultrix\n"); exit (0);
1442
+ # endif
1443
+ #endif
1444
+
1445
+ #if defined (alliant) && defined (i860)
1446
+ printf ("i860-alliant-bsd\n"); exit (0);
1447
+ #endif
1448
+
1449
+ exit (1);
1450
+ }
1451
+ EOF
1452
+
1453
+ $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1454
+ { echo "$SYSTEM_NAME"; exit; }
1455
+
1456
+ # Apollos put the system type in the environment.
1457
+
1458
+ test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
1459
+
1460
+ # Convex versions that predate uname can use getsysinfo(1)
1461
+
1462
+ if [ -x /usr/convex/getsysinfo ]
1463
+ then
1464
+ case `getsysinfo -f cpu_type` in
1465
+ c1*)
1466
+ echo c1-convex-bsd
1467
+ exit ;;
1468
+ c2*)
1469
+ if getsysinfo -f scalar_acc
1470
+ then echo c32-convex-bsd
1471
+ else echo c2-convex-bsd
1472
+ fi
1473
+ exit ;;
1474
+ c34*)
1475
+ echo c34-convex-bsd
1476
+ exit ;;
1477
+ c38*)
1478
+ echo c38-convex-bsd
1479
+ exit ;;
1480
+ c4*)
1481
+ echo c4-convex-bsd
1482
+ exit ;;
1483
+ esac
1484
+ fi
1485
+
1486
+ cat >&2 <<EOF
1487
+ $0: unable to guess system type
1488
+
1489
+ This script, last modified $timestamp, has failed to recognize
1490
+ the operating system you are using. It is advised that you
1491
+ download the most up to date version of the config scripts from
1492
+
1493
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
1494
+ and
1495
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
1496
+
1497
+ If the version you run ($0) is already up to date, please
1498
+ send the following data and any information you think might be
1499
+ pertinent to <config-patches@gnu.org> in order to provide the needed
1500
+ information to handle your system.
1501
+
1502
+ config.guess timestamp = $timestamp
1503
+
1504
+ uname -m = `(uname -m) 2>/dev/null || echo unknown`
1505
+ uname -r = `(uname -r) 2>/dev/null || echo unknown`
1506
+ uname -s = `(uname -s) 2>/dev/null || echo unknown`
1507
+ uname -v = `(uname -v) 2>/dev/null || echo unknown`
1508
+
1509
+ /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1510
+ /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1511
+
1512
+ hostinfo = `(hostinfo) 2>/dev/null`
1513
+ /bin/universe = `(/bin/universe) 2>/dev/null`
1514
+ /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1515
+ /bin/arch = `(/bin/arch) 2>/dev/null`
1516
+ /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1517
+ /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1518
+
1519
+ UNAME_MACHINE = ${UNAME_MACHINE}
1520
+ UNAME_RELEASE = ${UNAME_RELEASE}
1521
+ UNAME_SYSTEM = ${UNAME_SYSTEM}
1522
+ UNAME_VERSION = ${UNAME_VERSION}
1523
+ EOF
1524
+
1525
+ exit 1
1526
+
1527
+ # Local variables:
1528
+ # eval: (add-hook 'write-file-hooks 'time-stamp)
1529
+ # time-stamp-start: "timestamp='"
1530
+ # time-stamp-format: "%:y-%02m-%02d"
1531
+ # time-stamp-end: "'"
1532
+ # End: