curses 1.4.4 → 1.4.6

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 (258) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +6 -0
  3. data/.github/workflows/macos.yml +1 -1
  4. data/.github/workflows/push_gem.yml +48 -0
  5. data/.github/workflows/ubuntu.yml +2 -2
  6. data/.github/workflows/windows.yml +2 -2
  7. data/History.md +23 -0
  8. data/README.md +7 -0
  9. data/curses.gemspec +1 -1
  10. data/ext/curses/curses.c +7 -7
  11. data/sample/colors.rb +6 -1
  12. data/sample/form.rb +1 -1
  13. data/sample/menu.rb +2 -0
  14. metadata +9 -251
  15. data/vendor/PDCurses/.gitignore +0 -47
  16. data/vendor/PDCurses/.travis.yml +0 -49
  17. data/vendor/PDCurses/CMakeLists.txt +0 -68
  18. data/vendor/PDCurses/HISTORY.md +0 -2036
  19. data/vendor/PDCurses/IMPLEMNT.md +0 -327
  20. data/vendor/PDCurses/Makefile +0 -27
  21. data/vendor/PDCurses/README.md +0 -77
  22. data/vendor/PDCurses/acs_defs.h +0 -265
  23. data/vendor/PDCurses/appveyor.yml +0 -218
  24. data/vendor/PDCurses/cmake/README.md +0 -71
  25. data/vendor/PDCurses/cmake/build_dependencies.cmake +0 -178
  26. data/vendor/PDCurses/cmake/build_options.cmake +0 -25
  27. data/vendor/PDCurses/cmake/dll_version.cmake +0 -26
  28. data/vendor/PDCurses/cmake/gen_config_header.cmake +0 -43
  29. data/vendor/PDCurses/cmake/get_version.cmake +0 -17
  30. data/vendor/PDCurses/cmake/make_uninstall.cmake +0 -19
  31. data/vendor/PDCurses/cmake/project_common.cmake +0 -121
  32. data/vendor/PDCurses/cmake/resource.in.cmake +0 -52
  33. data/vendor/PDCurses/cmake/sdl2_ttf/CMakeLists.txt +0 -83
  34. data/vendor/PDCurses/cmake/target_arch.cmake +0 -36
  35. data/vendor/PDCurses/cmake/version.in.cmake +0 -73
  36. data/vendor/PDCurses/cmake/watcom_open_dos16_toolchain.cmake +0 -96
  37. data/vendor/PDCurses/cmake/watcom_open_dos32_toolchain.cmake +0 -106
  38. data/vendor/PDCurses/cmake/watcom_open_os2v2_toolchain.cmake +0 -105
  39. data/vendor/PDCurses/curses.h +0 -1846
  40. data/vendor/PDCurses/curspriv.h +0 -134
  41. data/vendor/PDCurses/demos/README.md +0 -25
  42. data/vendor/PDCurses/demos/firework.c +0 -144
  43. data/vendor/PDCurses/demos/newtest.c +0 -581
  44. data/vendor/PDCurses/demos/ozdemo.c +0 -447
  45. data/vendor/PDCurses/demos/ptest.c +0 -283
  46. data/vendor/PDCurses/demos/rain.c +0 -157
  47. data/vendor/PDCurses/demos/testcurs.c +0 -1607
  48. data/vendor/PDCurses/demos/tui.c +0 -1048
  49. data/vendor/PDCurses/demos/tui.h +0 -65
  50. data/vendor/PDCurses/demos/tuidemo.c +0 -233
  51. data/vendor/PDCurses/demos/version.c +0 -61
  52. data/vendor/PDCurses/demos/worm.c +0 -432
  53. data/vendor/PDCurses/demos/xmas.c +0 -955
  54. data/vendor/PDCurses/dos/CMakeLists.txt +0 -47
  55. data/vendor/PDCurses/dos/Makefile +0 -105
  56. data/vendor/PDCurses/dos/Makefile.bcc +0 -83
  57. data/vendor/PDCurses/dos/Makefile.dmc +0 -257
  58. data/vendor/PDCurses/dos/Makefile.msc +0 -113
  59. data/vendor/PDCurses/dos/Makefile.wcc +0 -107
  60. data/vendor/PDCurses/dos/README.md +0 -51
  61. data/vendor/PDCurses/dos/bccdos.lrf +0 -9
  62. data/vendor/PDCurses/dos/mscdos.lrf +0 -50
  63. data/vendor/PDCurses/dos/pdcclip.c +0 -132
  64. data/vendor/PDCurses/dos/pdcdisp.c +0 -135
  65. data/vendor/PDCurses/dos/pdcdos.h +0 -194
  66. data/vendor/PDCurses/dos/pdcgetsc.c +0 -98
  67. data/vendor/PDCurses/dos/pdckbd.c +0 -513
  68. data/vendor/PDCurses/dos/pdcscrn.c +0 -785
  69. data/vendor/PDCurses/dos/pdcsetsc.c +0 -101
  70. data/vendor/PDCurses/dos/pdcutil.c +0 -212
  71. data/vendor/PDCurses/libobjs.mif +0 -26
  72. data/vendor/PDCurses/makedist.mif +0 -20
  73. data/vendor/PDCurses/man/Makefile +0 -37
  74. data/vendor/PDCurses/man/README.md +0 -21
  75. data/vendor/PDCurses/man/intro.md +0 -361
  76. data/vendor/PDCurses/man/manext.c +0 -119
  77. data/vendor/PDCurses/man/sdl.md +0 -152
  78. data/vendor/PDCurses/man/sdl2.md +0 -58
  79. data/vendor/PDCurses/man/x11.md +0 -407
  80. data/vendor/PDCurses/ncurses/CMakeLists.txt +0 -66
  81. data/vendor/PDCurses/ncurses/README.md +0 -26
  82. data/vendor/PDCurses/ncurses/makefile +0 -29
  83. data/vendor/PDCurses/os2/CMakeLists.txt +0 -41
  84. data/vendor/PDCurses/os2/Makefile +0 -132
  85. data/vendor/PDCurses/os2/Makefile.bcc +0 -90
  86. data/vendor/PDCurses/os2/Makefile.wcc +0 -43
  87. data/vendor/PDCurses/os2/README.md +0 -43
  88. data/vendor/PDCurses/os2/iccos2.lrf +0 -50
  89. data/vendor/PDCurses/os2/iccos2.mak +0 -256
  90. data/vendor/PDCurses/os2/pdcclip.c +0 -188
  91. data/vendor/PDCurses/os2/pdcdisp.c +0 -93
  92. data/vendor/PDCurses/os2/pdcgetsc.c +0 -89
  93. data/vendor/PDCurses/os2/pdckbd.c +0 -521
  94. data/vendor/PDCurses/os2/pdcos2.h +0 -55
  95. data/vendor/PDCurses/os2/pdcscrn.c +0 -449
  96. data/vendor/PDCurses/os2/pdcsetsc.c +0 -112
  97. data/vendor/PDCurses/os2/pdcutil.c +0 -52
  98. data/vendor/PDCurses/panel.h +0 -56
  99. data/vendor/PDCurses/pdcurses/README.md +0 -25
  100. data/vendor/PDCurses/pdcurses/addch.c +0 -693
  101. data/vendor/PDCurses/pdcurses/addchstr.c +0 -245
  102. data/vendor/PDCurses/pdcurses/addstr.c +0 -240
  103. data/vendor/PDCurses/pdcurses/attr.c +0 -359
  104. data/vendor/PDCurses/pdcurses/beep.c +0 -68
  105. data/vendor/PDCurses/pdcurses/bkgd.c +0 -223
  106. data/vendor/PDCurses/pdcurses/border.c +0 -411
  107. data/vendor/PDCurses/pdcurses/clear.c +0 -159
  108. data/vendor/PDCurses/pdcurses/color.c +0 -298
  109. data/vendor/PDCurses/pdcurses/debug.c +0 -109
  110. data/vendor/PDCurses/pdcurses/delch.c +0 -96
  111. data/vendor/PDCurses/pdcurses/deleteln.c +0 -211
  112. data/vendor/PDCurses/pdcurses/deprec.c +0 -27
  113. data/vendor/PDCurses/pdcurses/getch.c +0 -417
  114. data/vendor/PDCurses/pdcurses/getstr.c +0 -474
  115. data/vendor/PDCurses/pdcurses/getyx.c +0 -139
  116. data/vendor/PDCurses/pdcurses/inch.c +0 -127
  117. data/vendor/PDCurses/pdcurses/inchstr.c +0 -214
  118. data/vendor/PDCurses/pdcurses/initscr.c +0 -367
  119. data/vendor/PDCurses/pdcurses/inopts.c +0 -324
  120. data/vendor/PDCurses/pdcurses/insch.c +0 -271
  121. data/vendor/PDCurses/pdcurses/insstr.c +0 -264
  122. data/vendor/PDCurses/pdcurses/instr.c +0 -246
  123. data/vendor/PDCurses/pdcurses/kernel.c +0 -259
  124. data/vendor/PDCurses/pdcurses/keyname.c +0 -157
  125. data/vendor/PDCurses/pdcurses/mouse.c +0 -438
  126. data/vendor/PDCurses/pdcurses/move.c +0 -57
  127. data/vendor/PDCurses/pdcurses/outopts.c +0 -159
  128. data/vendor/PDCurses/pdcurses/overlay.c +0 -214
  129. data/vendor/PDCurses/pdcurses/pad.c +0 -260
  130. data/vendor/PDCurses/pdcurses/panel.c +0 -633
  131. data/vendor/PDCurses/pdcurses/printw.c +0 -126
  132. data/vendor/PDCurses/pdcurses/refresh.c +0 -279
  133. data/vendor/PDCurses/pdcurses/scanw.c +0 -578
  134. data/vendor/PDCurses/pdcurses/scr_dump.c +0 -213
  135. data/vendor/PDCurses/pdcurses/scroll.c +0 -101
  136. data/vendor/PDCurses/pdcurses/slk.c +0 -591
  137. data/vendor/PDCurses/pdcurses/termattr.c +0 -182
  138. data/vendor/PDCurses/pdcurses/terminfo.c +0 -217
  139. data/vendor/PDCurses/pdcurses/touch.c +0 -163
  140. data/vendor/PDCurses/pdcurses/util.c +0 -312
  141. data/vendor/PDCurses/pdcurses/window.c +0 -569
  142. data/vendor/PDCurses/sdl1/Makefile +0 -129
  143. data/vendor/PDCurses/sdl1/Makefile.mng +0 -110
  144. data/vendor/PDCurses/sdl1/README.md +0 -31
  145. data/vendor/PDCurses/sdl1/deffont.h +0 -385
  146. data/vendor/PDCurses/sdl1/deficon.h +0 -23
  147. data/vendor/PDCurses/sdl1/pdcclip.c +0 -131
  148. data/vendor/PDCurses/sdl1/pdcdisp.c +0 -373
  149. data/vendor/PDCurses/sdl1/pdcgetsc.c +0 -30
  150. data/vendor/PDCurses/sdl1/pdckbd.c +0 -405
  151. data/vendor/PDCurses/sdl1/pdcscrn.c +0 -414
  152. data/vendor/PDCurses/sdl1/pdcsdl.h +0 -31
  153. data/vendor/PDCurses/sdl1/pdcsetsc.c +0 -64
  154. data/vendor/PDCurses/sdl1/pdcutil.c +0 -40
  155. data/vendor/PDCurses/sdl1/sdltest.c +0 -79
  156. data/vendor/PDCurses/sdl2/CMakeLists.txt +0 -76
  157. data/vendor/PDCurses/sdl2/Makefile +0 -135
  158. data/vendor/PDCurses/sdl2/Makefile.vc +0 -164
  159. data/vendor/PDCurses/sdl2/README.md +0 -34
  160. data/vendor/PDCurses/sdl2/deffont.h +0 -385
  161. data/vendor/PDCurses/sdl2/deficon.h +0 -23
  162. data/vendor/PDCurses/sdl2/pdcclip.c +0 -93
  163. data/vendor/PDCurses/sdl2/pdcdisp.c +0 -534
  164. data/vendor/PDCurses/sdl2/pdcgetsc.c +0 -30
  165. data/vendor/PDCurses/sdl2/pdckbd.c +0 -480
  166. data/vendor/PDCurses/sdl2/pdcscrn.c +0 -443
  167. data/vendor/PDCurses/sdl2/pdcsdl.h +0 -33
  168. data/vendor/PDCurses/sdl2/pdcsetsc.c +0 -67
  169. data/vendor/PDCurses/sdl2/pdcutil.c +0 -39
  170. data/vendor/PDCurses/sdl2/sdltest.c +0 -81
  171. data/vendor/PDCurses/term.h +0 -48
  172. data/vendor/PDCurses/version.mif +0 -7
  173. data/vendor/PDCurses/vt/CMakeLists.txt +0 -28
  174. data/vendor/PDCurses/vt/Makefile +0 -135
  175. data/vendor/PDCurses/vt/Makefile.bcc +0 -111
  176. data/vendor/PDCurses/vt/Makefile.dmc +0 -258
  177. data/vendor/PDCurses/vt/Makefile.vc +0 -144
  178. data/vendor/PDCurses/vt/Makefile.wcc +0 -107
  179. data/vendor/PDCurses/vt/README.md +0 -64
  180. data/vendor/PDCurses/vt/pdcclip.c +0 -20
  181. data/vendor/PDCurses/vt/pdcdisp.c +0 -284
  182. data/vendor/PDCurses/vt/pdcgetsc.c +0 -27
  183. data/vendor/PDCurses/vt/pdckbd.c +0 -394
  184. data/vendor/PDCurses/vt/pdcscrn.c +0 -434
  185. data/vendor/PDCurses/vt/pdcsetsc.c +0 -45
  186. data/vendor/PDCurses/vt/pdcutil.c +0 -43
  187. data/vendor/PDCurses/vt/pdcvt.h +0 -16
  188. data/vendor/PDCurses/watcom.mif +0 -68
  189. data/vendor/PDCurses/wincon/CMakeLists.txt +0 -27
  190. data/vendor/PDCurses/wincon/Makefile.bcc +0 -88
  191. data/vendor/PDCurses/wincon/Makefile.dmc +0 -256
  192. data/vendor/PDCurses/wincon/Makefile.lcc +0 -273
  193. data/vendor/PDCurses/wincon/Makefile.mng +0 -176
  194. data/vendor/PDCurses/wincon/Makefile.vc +0 -144
  195. data/vendor/PDCurses/wincon/Makefile.wcc +0 -51
  196. data/vendor/PDCurses/wincon/README.md +0 -85
  197. data/vendor/PDCurses/wincon/pdcclip.c +0 -174
  198. data/vendor/PDCurses/wincon/pdcdisp.c +0 -143
  199. data/vendor/PDCurses/wincon/pdcgetsc.c +0 -55
  200. data/vendor/PDCurses/wincon/pdckbd.c +0 -786
  201. data/vendor/PDCurses/wincon/pdcscrn.c +0 -717
  202. data/vendor/PDCurses/wincon/pdcsetsc.c +0 -91
  203. data/vendor/PDCurses/wincon/pdcurses.ico +0 -0
  204. data/vendor/PDCurses/wincon/pdcurses.rc +0 -28
  205. data/vendor/PDCurses/wincon/pdcutil.c +0 -41
  206. data/vendor/PDCurses/wincon/pdcwin.h +0 -31
  207. data/vendor/PDCurses/wingui/CMakeLists.txt +0 -27
  208. data/vendor/PDCurses/wingui/Makefile.bcc +0 -85
  209. data/vendor/PDCurses/wingui/Makefile.dmc +0 -259
  210. data/vendor/PDCurses/wingui/Makefile.lcc +0 -273
  211. data/vendor/PDCurses/wingui/Makefile.mng +0 -171
  212. data/vendor/PDCurses/wingui/Makefile.vc +0 -144
  213. data/vendor/PDCurses/wingui/Makefile.wcc +0 -51
  214. data/vendor/PDCurses/wingui/README.md +0 -93
  215. data/vendor/PDCurses/wingui/pdcclip.c +0 -174
  216. data/vendor/PDCurses/wingui/pdcdisp.c +0 -718
  217. data/vendor/PDCurses/wingui/pdcgetsc.c +0 -30
  218. data/vendor/PDCurses/wingui/pdckbd.c +0 -143
  219. data/vendor/PDCurses/wingui/pdcscrn.c +0 -2797
  220. data/vendor/PDCurses/wingui/pdcsetsc.c +0 -89
  221. data/vendor/PDCurses/wingui/pdcurses.ico +0 -0
  222. data/vendor/PDCurses/wingui/pdcurses.rc +0 -28
  223. data/vendor/PDCurses/wingui/pdcutil.c +0 -61
  224. data/vendor/PDCurses/wingui/pdcwin.h +0 -122
  225. data/vendor/PDCurses/x11/Makefile.in +0 -754
  226. data/vendor/PDCurses/x11/PDCurses.spec +0 -82
  227. data/vendor/PDCurses/x11/README.md +0 -62
  228. data/vendor/PDCurses/x11/ScrollBox.c +0 -319
  229. data/vendor/PDCurses/x11/ScrollBox.h +0 -51
  230. data/vendor/PDCurses/x11/ScrollBoxP.h +0 -70
  231. data/vendor/PDCurses/x11/aclocal.m4 +0 -994
  232. data/vendor/PDCurses/x11/big_icon.xbm +0 -46
  233. data/vendor/PDCurses/x11/compose.h +0 -201
  234. data/vendor/PDCurses/x11/config.guess +0 -1500
  235. data/vendor/PDCurses/x11/config.h.in +0 -100
  236. data/vendor/PDCurses/x11/config.sub +0 -1616
  237. data/vendor/PDCurses/x11/configure +0 -6700
  238. data/vendor/PDCurses/x11/configure.ac +0 -295
  239. data/vendor/PDCurses/x11/debian/changelog +0 -6
  240. data/vendor/PDCurses/x11/debian/compat +0 -1
  241. data/vendor/PDCurses/x11/debian/control +0 -11
  242. data/vendor/PDCurses/x11/debian/copyright +0 -27
  243. data/vendor/PDCurses/x11/debian/rules +0 -98
  244. data/vendor/PDCurses/x11/install-sh +0 -253
  245. data/vendor/PDCurses/x11/little_icon.xbm +0 -14
  246. data/vendor/PDCurses/x11/ncurses_cfg.h +0 -45
  247. data/vendor/PDCurses/x11/pdcclip.c +0 -173
  248. data/vendor/PDCurses/x11/pdcdisp.c +0 -85
  249. data/vendor/PDCurses/x11/pdcgetsc.c +0 -28
  250. data/vendor/PDCurses/x11/pdckbd.c +0 -104
  251. data/vendor/PDCurses/x11/pdcscrn.c +0 -258
  252. data/vendor/PDCurses/x11/pdcsetsc.c +0 -95
  253. data/vendor/PDCurses/x11/pdcutil.c +0 -52
  254. data/vendor/PDCurses/x11/pdcx11.c +0 -316
  255. data/vendor/PDCurses/x11/pdcx11.h +0 -191
  256. data/vendor/PDCurses/x11/sb.c +0 -155
  257. data/vendor/PDCurses/x11/x11.c +0 -3686
  258. data/vendor/PDCurses/x11/xcurses-config.in +0 -81
@@ -1,994 +0,0 @@
1
- dnl ---------------------------------------------------------------------------
2
- dnl This file offers the following macros...
3
- dnl ---------------------------------------------------------------------------
4
- dnl MH_IPC
5
- dnl MH_CHECK_X_INC
6
- dnl MH_CHECK_X_LIB
7
- dnl MH_CHECK_X_HEADERS
8
- dnl MH_CHECK_X_KEYDEFS
9
- dnl MH_CHECK_X_TYPEDEF
10
- dnl MH_CHECK_LIB
11
- dnl MH_SHARED_LIBRARY
12
- dnl MH_HOWTO_DYN_LINK
13
- dnl MH_CHECK_CC_O
14
- dnl MH_SHLPST
15
- dnl MH_CHECK_MAX_SIGNALS
16
- dnl MH_CHECK_OSX_ARCH
17
- dnl MH_GET_DISTRO_NAME
18
- dnl MH_CHECK_RPM
19
- dnl MH_CHECK_ARCH
20
- dnl AC_DEFINE_DIR
21
-
22
- dnl ---------------------------------------------------------------------------
23
- dnl Determine if the system has System V IPC. ie sys/ipc.h and sys/shm.h
24
- dnl headers.
25
- dnl ---------------------------------------------------------------------------
26
- AC_DEFUN([MH_IPC],
27
- [
28
- AC_CHECK_HEADER(sys/ipc.h)
29
- if test $ac_cv_header_sys_ipc_h = no; then
30
- AC_MSG_ERROR(Cannot find required header file sys/ipc.h; PDCurses cannot be configured)
31
- fi
32
- ])dnl
33
-
34
- dnl ---------------------------------------------------------------------------
35
- dnl Set up the correct X header file location
36
- dnl ---------------------------------------------------------------------------
37
- AC_DEFUN([MH_CHECK_X_INC],
38
- [
39
- mh_x11_dir=""
40
- mh_x11_xaw_dir=""
41
-
42
- mh_inc_dirs="$ac_x_header_dirs"
43
-
44
- dnl Provide for user supplying directory
45
-
46
- if test "x$x_includes" != xNONE ; then
47
- mh_inc_dirs="$x_includes $mh_inc_dirs"
48
- fi
49
-
50
- dnl Try to determine the directory containing X headers
51
- dnl We will append X11 to all the paths above as an extra check
52
-
53
- for ac_dir in $mh_inc_dirs ; do
54
- if test -r $ac_dir/Intrinsic.h; then
55
- mh_x11_dir=$ac_dir
56
- break
57
- fi
58
- if test -r $ac_dir/X11/Intrinsic.h; then
59
- mh_x11_dir="$ac_dir/X11"
60
- break
61
- fi
62
- done
63
-
64
- dnl Try to determine the directory containing Xaw headers
65
- dnl We will append X11 to all the paths above as an extra check
66
-
67
- if test "$with_xaw3d" = yes; then
68
- mh_xaw_dir="Xaw3d"
69
- else
70
- if test "$with_nextaw" = yes; then
71
- mh_xaw_dir="neXtaw"
72
- else
73
- mh_xaw_dir="Xaw"
74
- fi
75
- fi
76
- for ac_dir in $mh_inc_dirs ; do
77
- if test -r $ac_dir/$mh_xaw_dir/Box.h; then
78
- mh_x11_xaw_dir=$ac_dir
79
- break
80
- fi
81
- if test -r $ac_dir/X11/$mh_xaw_dir/Box.h; then
82
- mh_x11_xaw_dir="$ac_dir/X11"
83
- break
84
- fi
85
- done
86
-
87
- if test "x$mh_x11_dir" != "x" ; then
88
- mh_x11_dir_no_x11=`echo $mh_x11_dir | sed 's/\/X11$//'`
89
-
90
- if test "$mh_x11_dir_no_x11" != "$mh_x11_dir" ; then
91
- MH_XINC_DIR="-I$mh_x11_dir -I$mh_x11_dir_no_x11"
92
- else
93
- MH_XINC_DIR="-I$mh_x11_dir"
94
- fi
95
- else
96
- AC_MSG_ERROR(Cannot find required header file Intrinsic.h; PDCurses cannot be configured)
97
- fi
98
-
99
- if test "x$mh_x11_xaw_dir" != "x"; then
100
- if test "$mh_x11_xaw_dir" != "$mh_x11_dir" ; then
101
- MH_XINC_DIR="-I$mh_x11_xaw_dir $MH_XINC_DIR"
102
- fi
103
- else
104
- AC_MSG_ERROR(Cannot find required Xaw header file Box.h; PDCurses cannot be configured)
105
- fi
106
-
107
- AC_SUBST(MH_XINC_DIR)
108
-
109
- ])dnl
110
-
111
- dnl ---------------------------------------------------------------------------
112
- dnl Set up the correct X library file location
113
- dnl ---------------------------------------------------------------------------
114
- AC_DEFUN([MH_CHECK_X_LIB],
115
- [
116
- dnl Some systems require extra libraries...
117
-
118
- mh_solaris_flag=no
119
- mh_hpux9_flag=no
120
- AC_REQUIRE([AC_CANONICAL_SYSTEM])
121
- case "$target" in
122
- *solaris*)
123
- mh_solaris_flag=yes
124
- ;;
125
- *pc-sco*)
126
- extra_x_libs="Xext"
127
- ;;
128
- sparc*sunos*)
129
- extra_x_libs="Xext"
130
- if test "$ac_cv_prog_CC" = "gcc" ; then
131
- extra_ld_flags="-Wl,-Bstatic"
132
- extra_ld_flags2="-Wl,-Bdynamic"
133
- else
134
- extra_ld_flags="-Bstatic"
135
- extra_ld_flags2="-Bdynamic"
136
- fi
137
- ;;
138
- *hpux9*)
139
- mh_hpux9_flag=yes
140
- ;;
141
- esac
142
-
143
- if test "$with_xaw3d" = yes; then
144
- MH_X11_LIBS="Xaw3d Xmu Xt X11"
145
- else
146
- if test "$with_nextaw" = yes; then
147
- MH_X11_LIBS="neXtaw Xmu Xt X11"
148
- else
149
- MH_X11_LIBS="Xaw Xmu Xt X11"
150
- fi
151
- fi
152
- MH_X11R6_LIBS="SM ICE Xext"
153
- mh_x11r6=no
154
-
155
- which dpkg-architecture > /dev/null
156
- if test $? -eq 0; then
157
- multiarch_libdir="/usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH`"
158
- else
159
- multiarch_libdir=""
160
- fi
161
-
162
- mh_lib_dirs="$multiarch_libdir /usr/lib64 /usr/lib/x86_64-linux-gnu /usr/lib/i386-linux-gnu $x_libraries `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g`"
163
-
164
- dnl try to find libSM.[a,sl,so,dylib]. If we find it we are using X11R6
165
- for ac_dir in $mh_lib_dirs ; do
166
- for mh_xsm in libSM.a libSM.so libSM.sl libSM.dylib; do
167
- if test -r $ac_dir/$mh_xsm; then
168
- mh_x11r6=yes
169
- break 2
170
- fi
171
- done
172
- done
173
-
174
- if test "$mh_x11r6" = yes ; then
175
- mh_libs="$MH_X11_LIBS $MH_X11R6_LIBS"
176
- else
177
- mh_libs="$MH_X11_LIBS $extra_x_libs"
178
- fi
179
-
180
-
181
- dnl Ensure that all required X libraries are found
182
-
183
- mh_prev_dir=""
184
- mh_where_found=""
185
- mh_where_found_dirs=""
186
- mh_solaris_path=""
187
- for mh_lib in $mh_libs; do
188
- mh_lib_found=no
189
- for ac_dir in $mh_lib_dirs ; do
190
- for mh_ext in a so sl dll.a dylib; do
191
- if test -r $ac_dir/lib$mh_lib.$mh_ext; then
192
- if test "x$mh_prev_dir" != "x$ac_dir" ; then
193
- if test "x$mh_prev_dir" = "x" ; then
194
- mh_where_found="$mh_where_found found in $ac_dir"
195
- else
196
- mh_where_found="$mh_where_found and in $ac_dir"
197
- fi
198
- mh_prev_dir=$ac_dir
199
- mh_where_found_dirs="$mh_where_found_dirs $ac_dir"
200
- MH_XLIBS="$MH_XLIBS -L$ac_dir"
201
- mh_solaris_path="${mh_solaris_path}:$ac_dir"
202
- fi
203
- MH_XLIBS="$MH_XLIBS -l$mh_lib"
204
- mh_lib_found=yes
205
- break 2
206
- fi
207
- done
208
- done
209
- if test "$mh_lib_found" = no; then
210
- AC_MSG_ERROR(Cannot find required X library; lib$mh_lib. PDCurses cannot be configured)
211
- fi
212
- done
213
-
214
- mh_solaris_path=`echo $mh_solaris_path | sed 's/^://'`
215
- if test "$mh_solaris_flag" = yes ; then
216
- MH_XLIBS="-R$mh_solaris_path $extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
217
- else
218
- MH_XLIBS="$extra_ld_flags $MH_XLIBS $extra_libs $extra_ld_flags2"
219
- fi
220
- if test "$mh_hpux9_flag" = yes ; then
221
- grep -q XtSetLanguageProc $mh_x11_dir/Intrinsic.h
222
- if test $? -eq 0 ; then
223
- mh_found_xtshellstrings=no
224
- for mh_acdir in $mh_where_found_dirs ; do
225
- for mh_xaw in `ls $mh_acdir/libXaw.*` ; do
226
- nm $mh_xaw | grep XtShellStrings | grep -qv extern
227
- if test $? -eq 0 ; then
228
- mh_found_xtshellstrings=yes
229
- fi
230
- done
231
- done
232
- if test "$mh_found_xtshellstrings" = no ; then
233
- AC_MSG_WARN(The X11 development environment has not been installed correctly.)
234
- AC_MSG_WARN(The header file; Intrinsic.h, is for X11R5 while the Athena Widget)
235
- AC_MSG_WARN(Set library; libXaw is for X11R4. This is a common problem with)
236
- AC_MSG_WARN(HP-UX 9.x.)
237
- AC_MSG_ERROR(X11 installation incomplete; cannot continue)
238
- fi
239
- fi
240
- fi
241
-
242
- AC_SUBST(MH_XLIBS)
243
-
244
- ])dnl
245
-
246
- dnl ---------------------------------------------------------------------------
247
- dnl Determine if the supplied X headers exist.
248
- dnl ---------------------------------------------------------------------------
249
- AC_DEFUN([MH_CHECK_X_HEADERS],
250
- [
251
- save_CPPFLAGS="$CPPFLAGS"
252
- CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
253
- for mh_header in $1; do
254
- AC_CHECK_HEADERS($mh_header)
255
- done
256
- CPPFLAGS="$save_CPPFLAGS"
257
- ])dnl
258
-
259
- dnl ---------------------------------------------------------------------------
260
- dnl Determine if various key definitions exist in keysym.h
261
- dnl ---------------------------------------------------------------------------
262
- AC_DEFUN([MH_CHECK_X_KEYDEFS],
263
- [
264
- save_CPPFLAGS="$CPPFLAGS"
265
- CPPFLAGS="$CPPFLAGS $MH_XINC_DIR"
266
- for mh_keydef in $1; do
267
- AC_MSG_CHECKING(for $mh_keydef in keysym.h)
268
- mh_upper_name="HAVE_`echo $mh_keydef | tr '[a-z]' '[A-Z]'`"
269
- AC_TRY_COMPILE([#include <keysym.h>],
270
- [int i = $mh_keydef;],
271
- mh_have_key=yes; AC_DEFINE_UNQUOTED($mh_upper_name,1), mh_have_key=no )
272
- AC_MSG_RESULT($mh_have_key)
273
- done
274
- CPPFLAGS="$save_CPPFLAGS"
275
- ])dnl
276
-
277
- dnl ---------------------------------------------------------------------------
278
- dnl Determine if supplied types have been typedefed
279
- dnl ---------------------------------------------------------------------------
280
- AC_DEFUN([MH_CHECK_X_TYPEDEF],
281
- [
282
- save_CPPFLAGS="$CPPFLAGS"
283
- CPPFLAGS="$CPPFLAGS $SYS_DEFS $MH_XINC_DIR"
284
- for td in $1 ; do
285
- AC_MSG_CHECKING(if $td is typedefed:)
286
- AC_TRY_COMPILE(
287
- [#include "X11/Xlib.h"],
288
- [$td fred],
289
- [mh_td=yes],
290
- [mh_td=no]
291
- )
292
- if test "$mh_td" = yes ; then
293
- TD_upper=`echo $td | tr a-z A-Z`
294
- AC_DEFINE_UNQUOTED(${TD_upper}_TYPEDEFED, 1)
295
- fi
296
- AC_MSG_RESULT($mh_td)
297
- done
298
- CPPFLAGS="$save_CPPFLAGS"
299
- ])dnl
300
-
301
- dnl ---------------------------------------------------------------------------
302
- dnl Check for presence of various libraries
303
- dnl ---------------------------------------------------------------------------
304
- AC_DEFUN([MH_CHECK_LIB],
305
- [
306
- MH_EXTRA_LIBS=''
307
- for mh_lib in $1; do
308
- if test "$on_qnx" = yes; then
309
- AC_MSG_CHECKING(for library -l${mh_lib})
310
- if test -r /usr/lib/${mh_lib}3r.lib; then
311
- AC_MSG_RESULT(found)
312
- MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
313
- else
314
- AC_MSG_RESULT(not found)
315
- fi
316
- else
317
- AC_CHECK_LIB($mh_lib,main,mh_lib_found=yes,mh_lib_found=no)
318
- if test "$mh_lib_found" = yes; then
319
- MH_EXTRA_LIBS="${MH_EXTRA_LIBS} -l${mh_lib}"
320
- fi
321
- fi
322
- done
323
- ])dnl
324
-
325
- dnl ---------------------------------------------------------------------------
326
- dnl Work out how to create a dynamically loaded module
327
- dnl ---------------------------------------------------------------------------
328
- AC_DEFUN([MH_HOWTO_DYN_LINK],
329
- [
330
- mh_compile='${CC-cc} -c $DYN_COMP conftest.$ac_ext 1>&AC_FD_CC'
331
- cat > conftest.$ac_ext <<EOF
332
- dnl [#]line __oline__ "[$]0"
333
- [#]line __oline__ "configure"
334
- int foo()
335
- {
336
- return(0);
337
- }
338
- EOF
339
- if AC_TRY_EVAL(mh_compile) && test -s conftest.o; then
340
- mh_dyn_link='ld -shared -o conftest.rxlib conftest.o -lc 1>&AC_FD_CC'
341
- # mh_dyn_link='${CC} -Wl,-shared -o conftest.rxlib conftest.o -lc 1>&AC_FD_CC'
342
- if AC_TRY_EVAL(mh_dyn_link) && test -s conftest.rxlib; then
343
- LD_RXLIB1="ld -shared"
344
- # LD_RXLIB1="${CC} -Wl,-shared"
345
- SHLPRE="lib"
346
- SHLPST=".so"
347
- else
348
- mh_dyn_link='ld -G -o conftest.rxlib conftest.o 1>&AC_FD_CC'
349
- # mh_dyn_link='${CC} -Wl,-G -o conftest.rxlib conftest.o 1>&AC_FD_CC'
350
- if AC_TRY_EVAL(mh_dyn_link) && test -s conftest.rxlib; then
351
- LD_RXLIB1="ld -G"
352
- # LD_RXLIB1="${CC} -Wl,-G"
353
- SHLPRE="lib"
354
- SHLPST=".so"
355
- else
356
- LD_RXLIB1=""
357
- SHLPRE=""
358
- SHLPST=""
359
- fi
360
- fi
361
- fi
362
- rm -f conftest*
363
- ])dnl
364
-
365
- dnl ---------------------------------------------------------------------------
366
- dnl Determine how to build shared libraries etc..
367
- dnl ---------------------------------------------------------------------------
368
- AC_DEFUN([MH_SHARED_LIBRARY],
369
- [
370
- AC_REQUIRE([MH_SHLPST])
371
- dnl
372
- dnl If compiler is gcc, then flags should be the same for all platforms
373
- dnl (just guessing on this)
374
- dnl
375
- AIX_DYN="no"
376
- BEOS_DYN="no"
377
- SHLFILE="$1"
378
- SHLFILES="$*"
379
- RXPACKEXPORTS=""
380
- SHLPRE="lib"
381
- LD_RXLIB1=""
382
- BASE_INSTALL="installbase"
383
- BASE_BINARY="binarybase"
384
- # OTHER_INSTALLS is set to install a non-version numbered shared library
385
- # by default; ie. no .\$(ABI) suffix. Set OTHER_INSTALLS="installabilib" if you
386
- # are building a version numbered shared library.
387
- OTHER_INSTALLS="installlib"
388
-
389
- AC_REQUIRE([AC_CANONICAL_SYSTEM])
390
- case "$target" in
391
- *hp-hpux*)
392
- SYS_DEFS="-D_HPUX_SOURCE"
393
- LD_RXLIB1="ld -b -q -n"
394
- ;;
395
- *ibm-aix*)
396
- SYS_DEFS="-D_ALL_SOURCE -DAIX"
397
- AIX_DYN="yes"
398
- DYN_COMP="-DDYNAMIC"
399
- LD_RXLIB1="ld -bnoentry -bM:SRE"
400
- RXPACKEXPORTS="-bE:$SHLFILE.exp"
401
- RXPACKEXP="$SHLFILE.exp"
402
- ;;
403
- *dec-osf*)
404
- if test "$ac_cv_prog_CC" = "gcc"; then
405
- SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE"
406
- else
407
- SYS_DEFS="-D_POSIX_SOURCE -D_XOPEN_SOURCE -Olimit 800"
408
- fi
409
- LD_RXLIB1="ld -shared"
410
- ;;
411
- *sequent-dynix*|*esix*|*dgux*)
412
- LD_RXLIB1="ld -G"
413
- ;;
414
- *solaris*)
415
- if test "$ac_cv_prog_CC" = "gcc"; then
416
- LD_RXLIB1="gcc -shared"
417
- else
418
- LD_RXLIB1="ld -G"
419
- fi
420
- ;;
421
- sparc*sunos*)
422
- SYS_DEFS="-DSUNOS -DSUNOS_STRTOD_BUG"
423
- LD_RXLIB1="ld"
424
- ;;
425
- *atheos*|*nto-qnx*)
426
- LD_RXLIB1="${CC} -shared"
427
- ;;
428
- *linux*|*kfreebsd*-gnu*)
429
- LD_RXLIB1="${CC} -shared -Wl,-soname,\$(@)"
430
- CAN_USE_ABI="yes"
431
- if test "$USE_ABI" = "yes"; then
432
- OTHER_INSTALLS="installabilib"
433
- fi
434
- ;;
435
- *freebsd*)
436
- LD_RXLIB1="ld -Bdynamic -Bshareable"
437
- ;;
438
- *pc-sco*)
439
- LD_RXLIB1="ld -dy -G"
440
- ;;
441
- *beos*)
442
- LD_RXLIB1="${CC} -Wl,-shared -nostart -Xlinker -soname=\$(@)"
443
- BEOS_DYN="yes"
444
- ;;
445
- *qnx*)
446
- SHLPRE=""
447
- DYN_COMP="-Q" # force no check for dynamic loading
448
- SHLFILE=""
449
- ;;
450
- *cygwin)
451
- SHLPRE=""
452
- DYN_COMP="-DDYNAMIC"
453
- LD_RXLIB1="dllwrap --def \$(srcdir)/../win32/pdcurses.def --target i386-cygwin32 --dllname \$(@)"
454
- # cygwininstall target MUST install the shared library itself because
455
- # it puts it into $(bindir) not $(libdir) as all other platforms
456
- ;;
457
- *darwin*)
458
- DYN_COMP="-fno-common"
459
- LD_RXLIB1="${CC} -flat_namespace -undefined suppress -dynamiclib -install_name=\$(@)"
460
- ;;
461
- *)
462
- ;;
463
- esac
464
-
465
- dnl determine what switches our compiler uses for building objects
466
- dnl suitable for inclusion in shared libraries
467
- dnl Only call this if DYN_COMP is not set. If we have set DYN_COMP
468
- dnl above, then we know how to compile AND link for dynamic libraries
469
-
470
- if test "$DYN_COMP" = ""; then
471
- AC_MSG_CHECKING(compiler flags for a dynamic object)
472
-
473
- cat > conftest.$ac_ext <<EOF
474
- dnl [#]line __oline__ "[$]0"
475
- [#]line __oline__ "configure"
476
- int a=0
477
- EOF
478
-
479
- DYN_COMP=""
480
- mh_cv_stop=no
481
- save_cflags="$CFLAGS"
482
- mh_cv_flags="-fPIC -KPIC +Z"
483
- for a in $mh_cv_flags; do
484
- CFLAGS="-c $a"
485
-
486
- mh_compile='${CC-cc} -c $CFLAGS conftest.$ac_ext > conftest.tmp 2>&1'
487
- if AC_TRY_EVAL(mh_compile); then
488
- DYN_COMP=""
489
- else
490
- slash="\\"
491
- mh_dyncomp="`egrep -c $slash$a conftest.tmp`"
492
- if test "$mh_dyncomp" = "0"; then
493
- DYN_COMP="$a -DDYNAMIC"
494
- AC_MSG_RESULT($a)
495
- break
496
- else
497
- DYN_COMP=""
498
- fi
499
- fi
500
- done
501
- if test "$DYN_COMP" = ""; then
502
- AC_MSG_RESULT(none of $mh_cv_flags supported)
503
- fi
504
- if test "$LD_RXLIB1" = ""; then
505
- MH_HOWTO_DYN_LINK()
506
- fi
507
- CFLAGS=$save_cflags
508
- rm -f conftest.*
509
- fi
510
-
511
-
512
- SHL_TARGETS=""
513
-
514
- if test "$AIX_DYN" = "yes"; then
515
- aix_exports="config.exports.aix"
516
- echo "" > $aix_exports
517
- fi
518
-
519
- if test "$ac_cv_header_dl_h" = "yes" -o "$ac_cv_header_dlfcn_h" = "yes" -o "$AIX_DYN" = "yes" -o "$BEOS_DYN" = "yes" -o "$DLFCNINCDIR" != "" -o "$DLFCNLIBDIR" != ""; then
520
- EXPS="1,2,3,4,5,6,7,8,9"
521
- for a in $SHLFILES
522
- do
523
- if test "$USE_ABI" = "yes" -a "$CAN_USE_ABI" = "yes"; then
524
- SHL_TARGETS="${SHL_TARGETS} ${SHLPRE}${a}${SHLPST}.\$(ABI)"
525
- else
526
- SHL_TARGETS="${SHL_TARGETS} ${SHLPRE}${a}${SHLPST}"
527
- fi
528
- this=`echo $EXPS | cut -d, -f1`
529
- EXPS=`echo $EXPS | cut -d, -f2-`
530
- if test "$AIX_DYN" = "yes"; then
531
- echo "RXPACKEXP$this=$a.exp" >> $aix_exports
532
- echo "RXPACKEXPORTS$this=-bE:$a.exp" >> $aix_exports
533
- fi
534
- done
535
- fi
536
-
537
- AC_SUBST(DYN_COMP)
538
- AC_SUBST(LIBS)
539
- AC_SUBST(LD_RXLIB1)
540
- AC_SUBST(SHLPRE)
541
- AC_SUBST(SHLPST)
542
- AC_SUBST(SHL_TARGETS)
543
- AC_SUBST(O2SAVE)
544
- AC_SUBST(CC2O)
545
- AC_SUBST(SAVE2O)
546
- AC_SUBST(RXPACKEXPORTS)
547
- AC_SUBST(BASE_INSTALL)
548
- AC_SUBST(OTHER_INSTALLS)
549
- AC_SUBST(BASE_BINARY)
550
- AC_SUBST(CAN_USE_ABI)
551
- ])dnl
552
-
553
- dnl ---------------------------------------------------------------------------
554
- dnl Check if C compiler supports -c -o file.ooo
555
- dnl ---------------------------------------------------------------------------
556
- AC_DEFUN([MH_CHECK_CC_O],
557
- [
558
- AC_MSG_CHECKING(whether $CC understand -c and -o together)
559
- set dummy $CC; ac_cc="`echo [$]2 |
560
- changequote(, )dnl
561
- sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`"
562
- changequote([, ])dnl
563
- AC_CACHE_VAL(ac_cv_prog_cc_${ac_cc}_c_o,
564
- [echo 'foo(){}' > conftest.c
565
- # We do the test twice because some compilers refuse to overwrite an
566
- # existing .o file with -o, though they will create one.
567
- eval ac_cv_prog_cc_${ac_cc}_c_o=no
568
- ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&AC_FD_CC'
569
- if AC_TRY_EVAL(ac_try) && test -f conftest.ooo && AC_TRY_EVAL(ac_try);
570
- then
571
- ac_try='${CC-cc} -c conftest.c -o conftest.ooo 1>&AC_FD_CC'
572
- if AC_TRY_EVAL(ac_try) && test -f conftest.ooo && AC_TRY_EVAL(ac_try);
573
- then
574
- eval ac_cv_prog_cc_${ac_cc}_c_o=yes
575
- fi
576
- fi
577
- rm -f conftest*
578
- ])dnl
579
- if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then
580
- O2SAVE=""
581
- SAVE2O=""
582
- CC2O="-o $"'@'
583
- AC_MSG_RESULT(yes)
584
- else
585
- O2SAVE="-mv \`basename "$'@'" .sho\`.o \`basename "$'@'" .sho\`.o.save;"
586
- SAVE2O="-mv \`basename "$'@'" .sho\`.o "$'@'"; mv \`basename "$'@'" .sho\`.o.save \`basename "$'@'" .sho\`.o"
587
- CC2O=""
588
- AC_MSG_RESULT(no)
589
- fi
590
- ])
591
-
592
- dnl ---------------------------------------------------------------------------
593
- dnl Determines the file extension for shared libraries
594
- dnl ---------------------------------------------------------------------------
595
- AC_DEFUN([MH_SHLPST],
596
- [
597
- AC_MSG_CHECKING(shared library extension)
598
- SHLPST=".so"
599
- AC_REQUIRE([AC_CANONICAL_SYSTEM])
600
- case "$target" in
601
- *hp-hpux*)
602
- SHLPST=".sl"
603
- ;;
604
- *ibm-aix*)
605
- SHLPST=".a"
606
- ;;
607
- *qnx*)
608
- SHLPST=""
609
- ;;
610
- *cygwin*)
611
- SHLPST=".dll"
612
- ;;
613
- *darwin*)
614
- SHLPST=".dylib"
615
- ;;
616
- esac
617
- AC_SUBST(SHLPST)
618
- AC_MSG_RESULT($SHLPST)
619
- ])
620
-
621
- dnl ---------------------------------------------------------------------------
622
- dnl Determine the system limit for number of signals
623
- dnl ---------------------------------------------------------------------------
624
- AC_DEFUN([MH_CHECK_MAX_SIGNALS],
625
- [
626
- save_CPPFLAGS="$CPPFLAGS"
627
- CPPFLAGS="$CPPFLAGS $SYS_DEFS"
628
- AC_MSG_CHECKING(for maximum signal specifier:)
629
- AC_CACHE_VAL(mh_cv_max_signals,
630
- mh_found="no"
631
- for mh_sigs in $1; do
632
- AC_TRY_COMPILE([#include <signal.h>],
633
- [return $mh_sigs;],
634
- mh_found="yes"; mh_cv_max_signals="$mh_sigs" )
635
- if test "$mh_found" = "yes"; then
636
- break;
637
- fi
638
- done)
639
- CPPFLAGS="$save_CPPFLAGS"
640
- if test "$mh_found" = "no"; then
641
- AC_MSG_ERROR(Cannot find a system limit for number of signals. PDCurses cannot be configured on this machine.)
642
- else
643
- AC_DEFINE_UNQUOTED(PDC_MAX_SIGNALS,$mh_cv_max_signals)
644
- AC_MSG_RESULT($mh_cv_max_signals)
645
- fi
646
- ])dnl
647
-
648
- dnl ---------------------------------------------------------------------------
649
- dnl Determines which -arch flags valid on Mac OSX with gcc
650
- dnl ---------------------------------------------------------------------------
651
- AC_DEFUN([MH_CHECK_OSX_ARCH],
652
- [
653
- valid_arch_flags=""
654
- found_arch_flags=""
655
- AC_ARG_WITH(arch,
656
- [ --with-arch=option build universal binaries on OS X, option: one of "all 32bit 64bit intel ppc ppc64 x86_64 i386"],
657
- [with_arch=$withval],
658
- [with_arch=none],
659
- )
660
- case "$with_arch" in
661
- none)
662
- arch_flags=""
663
- ;;
664
- all)
665
- arch_flags="-arch ppc -arch ppc64 -arch x86_64 -arch i386"
666
- ;;
667
- 32bit)
668
- arch_flags="-arch ppc -arch i386"
669
- ;;
670
- 64bit)
671
- arch_flags="-arch ppc64 -arch x86_64"
672
- ;;
673
- intel)
674
- arch_flags="-arch i386 -arch x86_64"
675
- ;;
676
- *)
677
- arch_flags="-arch $with_arch"
678
- ;;
679
- esac
680
-
681
- valid_arch_flags=""
682
- found_arch_flags=""
683
- if test $on_osx = "yes"; then
684
- AC_MSG_CHECKING(for which Mac OSX -arch flags are supported for universal binaries)
685
- for a in $arch_flags; do
686
- save_ldflags="$LDFLAGS"
687
- LDFLAGS="$LDFLAGS -arch $a"
688
- AC_LINK_IFELSE(
689
- [AC_LANG_PROGRAM([#include <stdio.h>],
690
- [exit(0)])],
691
- [valid_arch_flags="$valid_arch_flags -arch $a";found_arch_flags="$found_arch_flags $a"],
692
- [a="$a"]
693
- )
694
- LDFLAGS="$save_ldflags"
695
- done
696
- AC_MSG_RESULT($found_arch_flags)
697
- AC_SUBST(valid_arch_flags)
698
- fi
699
- ])
700
-
701
- dnl ---------------------------------------------------------------------------
702
- dnl Determines the Linux distribution name
703
- dnl ---------------------------------------------------------------------------
704
- AC_DEFUN([MH_GET_DISTRO_NAME],
705
- [
706
- AC_CHECK_PROG(lsb_release, [lsb_release], yes, no)
707
- if test "$ac_cv_prog_lsb_release" = yes; then
708
- AC_MSG_CHECKING(OS distribution name)
709
- MYDISTRO="`lsb_release -i | cut -f 2`-`lsb_release -r | cut -f 2`"
710
- MYDISTRO="`echo $MYDISTRO | sed \"s/ /_/g\"`"
711
- AC_MSG_RESULT($MYDISTRO)
712
- else
713
- case "$target" in
714
- *freebsd* | *openbsd*)
715
- MYDISTRO="`echo $target | cut -f3 -d-`"
716
- ;;
717
- *darwin*)
718
- MYDISTRO="`echo $target | cut -f2-3 -d-`"
719
- ;;
720
- *pc-solaris2*)
721
- MYDISTRO="`echo $target | cut -f2- -d-`"
722
- ;;
723
- *cygwin*)
724
- MYDISTRO="`echo $target | cut -f2- -d-`"
725
- ;;
726
- *)
727
- MYDISTRO="$target"
728
- ;;
729
- esac
730
- fi
731
- AC_SUBST(MYDISTRO)
732
- ])
733
-
734
- dnl ---------------------------------------------------------------------------
735
- dnl Determines where rpm build files are located
736
- dnl ---------------------------------------------------------------------------
737
- AC_DEFUN([MH_CHECK_RPM],
738
- [
739
- AC_CHECK_PROG(mh_rpm_exists, rpm, yes, no )
740
- if test "$mh_rpm_exists" = yes; then
741
- AC_MSG_CHECKING(where rpms are built)
742
- RPMTOPDIR=`rpm --eval "%{_topdir}"`
743
- AC_MSG_RESULT($RPMTOPDIR)
744
- AC_SUBST(RPMTOPDIR)
745
- fi
746
- ])
747
-
748
- dnl
749
- dnl Determine if the platform can handle 64 bit binaries
750
- dnl
751
- dnl Assumes AC_CANONICAL_SYSTEM has already been called
752
- dnl assumes we are on a 32bit system
753
-
754
- AC_DEFUN([MH_CHECK_ARCH],
755
- [
756
- dnl ---------------------- check 32/64 bit -----------------------
757
- dnl allow --with-32bit to ensure that 32bit libraries are used
758
- AC_ARG_ENABLE(32bit,
759
- [ --enable-32bit specify if 32bit libraries are to be used],
760
- [bitflag32=yes],
761
- [bitflag32=no],
762
- )
763
- dnl allow --with-64bit to ensure that 64bit libraries are used
764
- AC_ARG_ENABLE(64bit,
765
- [ --enable-64bit specify if 64bit libraries are to be used],
766
- [bitflag64=yes],
767
- [bitflag64=no],
768
- )
769
-
770
- #
771
- # Now do platform specific tests
772
- #
773
- gcc_64bit="-m64"
774
- gcc_32bit="-m32"
775
- on_osx="no"
776
- osis64bit=no
777
- bitflag=""
778
- case "$target" in
779
- *hp-hpux*)
780
- ;;
781
- *ibm-aix*)
782
- rc=`lsconf -k | grep -c 64-bit`
783
- if test $rc -eq 1; then
784
- bitflag="64"
785
- osis64bit=yes
786
- fi
787
- #
788
- # AIX gcc has its own special bit switches :-(
789
- #
790
- gcc_64bit="-maix64"
791
- gcc_32bit="-maix32"
792
- ;;
793
- *dec-osf4*)
794
- ;;
795
- *dec-osf*)
796
- ;;
797
- *sequent-dynix*)
798
- ;;
799
- i*86*solaris*)
800
- ;;
801
- *solaris*)
802
- rc=`isainfo -v | grep -c 64-bit`
803
- if test $rc -eq 1; then
804
- bitflag="64"
805
- osis64bit=yes
806
- fi
807
- ;;
808
- sparc*sunos*)
809
- ;;
810
- *linux*|*kfreebsd*-gnu*)
811
- mach="`uname -m`"
812
- if test "$mach" = "x86_64" -o "$mach" = "ia86" -o "$mach" = "alpha" -o "$mach" = "ppc64" -o "$mach" = "s390x"; then
813
- bitflag="64"
814
- osis64bit=yes
815
- fi
816
- ;;
817
- *-freebsd*)
818
- mach="`uname -m`"
819
- if test "$mach" = "amd64"; then
820
- bitflag="64"
821
- osis64bit=yes
822
- fi
823
- ;;
824
- *nto-qnx*)
825
- ;;
826
- *qnx*)
827
- ;;
828
- *beos*)
829
- ;;
830
- *cygwin*)
831
- ;;
832
- *apple-darwin*)
833
- on_osx="yes"
834
- osx_64bit=`sysctl hw.cpu64bit_capable | cut -f2 -d' '`
835
- if test $osx_64bit -eq 1; then
836
- bitflag="64"
837
- osis64bit=yes
838
- fi
839
- ;;
840
- esac
841
-
842
- if test "x$bitflag32" = "xyes" -a "x$bitflag64" = "xyes"; then
843
- AC_MSG_ERROR(--enable-32bit and --enable-64bit flags cannot both be specified.)
844
- fi
845
-
846
- if test "x$bitflag64" = "xyes" -a "$osis64bit" = "no"; then
847
- AC_MSG_ERROR(--enable-64bit cannot be specified on non-64bit OS.)
848
- fi
849
-
850
- binarybitprefix=""
851
- if test "x$bitflag32" = "xyes"; then
852
- bitflag="32"
853
- if test "$osis64bit" = "yes"; then
854
- binarybitprefix="32"
855
- fi
856
- elif test "x$bitflag64" = "xyes"; then
857
- bitflag="64"
858
- fi
859
- MACH_ARCH=`$ac_config_guess | cut -f1 -d-`
860
- AC_SUBST(MACH_ARCH)
861
- dnl
862
- dnl following variable used to name 32bit binaries on a 64bit system
863
- dnl allows 32bit and 64bit binaries t co-exist on a 64bit system
864
- AC_SUBST(binarybitprefix)
865
-
866
- dnl --------------- allow --with-arch to specify which architectures to build universal binaries
867
- dnl
868
- if test "$on_osx" = "yes"; then
869
- MH_CHECK_OSX_ARCH()
870
- else
871
- dnl
872
- dnl Now set the correct compiler flags
873
- dnl
874
- if test "$ac_cv_prog_CC" = "gcc" -o "$ac_cv_prog_CC" = "g++"; then
875
- if test "$bitflag" = "32"; then
876
- CFLAGS="${CFLAGS} $gcc_32bit"
877
- LDFLAGS="${LDFLAGS} $gcc_32bit"
878
- elif test "$bitflag" = "64"; then
879
- CFLAGS="${CFLAGS} $gcc_64bit"
880
- LDFLAGS="${LDFLAGS} $gcc_64bit"
881
- else
882
- bitflag="32"
883
- fi
884
- elif test "$ac_cv_prog_CC" = "xlc" -o "$ac_cv_prog_CC" = "xlC"; then
885
- if test "$bitflag" = "32"; then
886
- CFLAGS="${CFLAGS} -q32"
887
- LDFLAGS="${LDFLAGS} -q32"
888
- elif test "$bitflag" = "64"; then
889
- CFLAGS="${CFLAGS} -q64"
890
- LDFLAGS="${LDFLAGS} -q64"
891
- else
892
- bitflag="32"
893
- fi
894
- fi
895
- fi
896
-
897
- dnl allow --disable-libdir-change to ensure that building a .deb works
898
- #libdir_change=yes
899
- AC_ARG_ENABLE(libdir-change,
900
- [ --enable-libdir-change specify --disable-libdir-change if building a .deb],
901
- [libdir_change=$enableval],
902
- [libdir_change=yes],
903
- )
904
- echo "libdir: $libdir_change"
905
- if test "$libdir_change" = yes; then
906
- dnl
907
- dnl If the user hasn't specified libdir, check for specific lib dirs
908
- dnl
909
- if test "${libdir}" = '${exec_prefix}/lib'; then
910
- dnl
911
- dnl expand the active $prefix
912
- dnl
913
- myprefix=$prefix
914
- AC_DEFINE_DIR(MY_PREFIX,"$myprefix")
915
- if test "${myprefix}" = "NONE"; then
916
- myprefix="$ac_default_prefix"
917
- fi
918
- dnl
919
- dnl check for 64bit libdir
920
- dnl
921
- if test -d "${myprefix}/lib/x86_64-linux-gnu"; then
922
- libdir64="${myprefix}/lib/x86_64-linux-gnu"
923
- elif test -d "${myprefix}/lib64"; then
924
- libdir64="${myprefix}/lib64"
925
- else
926
- libdir64="${myprefix}/lib"
927
- fi
928
- dnl
929
- dnl check for 32bit libdir
930
- dnl
931
- if test -d "${myprefix}/lib/i386-linux-gnu"; then
932
- libdir32="${myprefix}/lib/i386-linux-gnu"
933
- elif test -d "${myprefix}/lib32"; then
934
- libdir32="${myprefix}/lib32"
935
- else
936
- libdir32="${myprefix}/lib"
937
- fi
938
- dnl
939
- dnl Depending on the build type, set the default libdir
940
- dnl
941
- if test "$bitflag" = "64"; then
942
- libdir="$libdir64"
943
- else
944
- libdir="$libdir32"
945
- fi
946
- else
947
- libdir64="$libdir"
948
- libdir32="$libdir"
949
- fi
950
- else
951
- libdir64="$libdir"
952
- libdir32="$libdir"
953
- fi
954
- AC_SUBST(libdir64)
955
- AC_SUBST(libdir32)
956
- AC_SUBST(bitflag)
957
- ])
958
- dnl @synopsis AC_DEFINE_DIR(VARNAME, DIR [, DESCRIPTION])
959
- dnl
960
- dnl This macro sets VARNAME to the expansion of the DIR variable,
961
- dnl taking care of fixing up ${prefix} and such.
962
- dnl
963
- dnl VARNAME is then offered as both an output variable and a C
964
- dnl preprocessor symbol.
965
- dnl
966
- dnl Modified by Mark Hessling to fix eval bug
967
- dnl
968
- dnl Example:
969
- dnl
970
- dnl AC_DEFINE_DIR([DATADIR], [datadir], [Where data are placed to.])
971
- dnl
972
- dnl @category Misc
973
- dnl @author Stepan Kasal <kasal@ucw.cz>
974
- dnl @author Andreas Schwab <schwab@suse.de>
975
- dnl @author Guido U. Draheim <guidod@gmx.de>
976
- dnl @author Alexandre Oliva
977
- dnl @version 2006-10-13
978
- dnl @license AllPermissive
979
-
980
- AC_DEFUN([AC_DEFINE_DIR], [
981
- prefix_NONE=
982
- exec_prefix_NONE=
983
- test "x$prefix" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix
984
- test "x$exec_prefix" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix
985
- dnl In Autoconf 2.60, ${datadir} refers to ${datarootdir}, which in turn
986
- dnl refers to ${prefix}. Thus we have to use `eval' twice.
987
- eval ac_define_dir="\"$2\""
988
- eval ac_define_dir="\"$ac_define_dir\""
989
- AC_SUBST($1, "$ac_define_dir")
990
- AC_DEFINE_UNQUOTED($1, "$ac_define_dir", [$3])
991
- test "$prefix_NONE" && prefix=NONE
992
- test "$exec_prefix_NONE" && exec_prefix=NONE
993
- ])
994
-