home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 mARCH / PCWK3A99.iso / Linux / DDD331 / DDD-3_1_.000 / DDD-3_1_ / ddd-3.1.1 / ddd / configure.in < prev    next >
Text File  |  1998-12-06  |  20KB  |  766 lines

  1. dnl $Id: configure.in,v 1.175.4.2 1998/12/06 14:09:12 zeller Exp $
  2. dnl Process this file with autoconf to produce a configure script.
  3. dnl
  4. dnl Copyright (C) 1995-1998 Technische Universitaet Braunschweig, Germany.
  5. dnl Written by Andreas Zeller <zeller@ips.cs.tu-bs.de>.
  6. dnl 
  7. dnl This file is part of DDD.
  8. dnl 
  9. dnl DDD is free software; you can redistribute it and/or
  10. dnl modify it under the terms of the GNU General Public
  11. dnl License as published by the Free Software Foundation; either
  12. dnl version 2 of the License, or (at your option) any later version.
  13. dnl 
  14. dnl DDD is distributed in the hope that it will be useful,
  15. dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. dnl See the GNU General Public License for more details.
  18. dnl 
  19. dnl You should have received a copy of the GNU General Public
  20. dnl License along with DDD -- see the file COPYING.
  21. dnl If not, write to the Free Software Foundation, Inc.,
  22. dnl 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  23. dnl 
  24. dnl DDD is the data display debugger.
  25. dnl For details, see the DDD World-Wide-Web page, 
  26. dnl `http://www.cs.tu-bs.de/softech/ddd/',
  27. dnl or send a mail to the DDD developers <ddd@ips.cs.tu-bs.de>.
  28. dnl
  29. dnl
  30. dnl
  31. dnl
  32. dnl
  33. dnl
  34. dnl Revision Control
  35. dnl
  36. AC_PREREQ(2.12)dnl
  37. AC_REVISION($Revision: 1.175.4.2 $)
  38. dnl
  39. dnl
  40. dnl Initialization - setup names and paths
  41. dnl
  42. AC_INIT(DispBox.h)
  43. AC_CONFIG_HEADER(config.h)
  44. AC_PREFIX_PROGRAM(ddd)
  45. AC_ARG_PROGRAM
  46. dnl
  47. dnl
  48. dnl Autoconf 2.8 bug fix
  49. dnl
  50. ac_cv_lib_dnet=no
  51. dnl
  52. dnl Zdenek Sekera <zs@cray.com> says that if CDPATH is set, it may break
  53. dnl this script.
  54. dnl
  55. unset CDPATH
  56. dnl
  57. dnl Autoconf 2.12 bug fix (occurs on sparc-sun-solaris2.5.1)
  58. ac_cv_func_vfork_works=yes
  59. dnl
  60. dnl
  61. dnl
  62. dnl Name and version number
  63. dnl *This* is the place where name and version numbers are defined.
  64. AC_MSG_CHECKING(for product name)
  65. dnl
  66. dnl The product name, in various capitalizations.
  67. ddd=ddd
  68. Ddd=Ddd
  69. DDD=DDD
  70. dnl
  71. dnl The product version, in the form `MAJOR-NUMBER.MINOR-NUMBER[.PATCHLEVEL]'
  72. dnl A version in the form `YYYY-MM-DD' is a release-of-the-day, i.e. a
  73. dnl snapshot of the current development tree.
  74. VERSION=3.1.1
  75. dnl
  76. dnl The version nickname.
  77. NICKNAME="Morning Sky"
  78. dnl 
  79. dnl The product expiration date, in ISO 8601 YYYY-MM-DD format.
  80. dnl After this date, users are requested to update the product.
  81. dnl An empty expiration date means no expiration.
  82. EXPIRES=
  83. dnl
  84. dnl
  85. AC_SUBST(ddd)dnl
  86. AC_SUBST(Ddd)dnl
  87. AC_SUBST(DDD)dnl
  88. AC_SUBST(VERSION)dnl
  89. AC_SUBST(NICKNAME)dnl
  90. AC_MSG_RESULT(${DDD} ${VERSION} \"${NICKNAME}\")
  91. dnl
  92. dnl
  93. AC_MSG_CHECKING(for expiration date)
  94. dnl
  95. AC_SUBST(EXPIRES)dnl
  96. if test "$EXPIRES" = ""; then
  97. AC_MSG_RESULT(no)
  98. else
  99. AC_MSG_RESULT(${EXPIRES})
  100. fi
  101. AM_INIT_AUTOMAKE(${ddd}, ${VERSION})
  102. dnl
  103. dnl
  104. dnl
  105. dnl
  106. dnl
  107. dnl
  108. dnl Find out what host this is
  109. dnl
  110. AC_CANONICAL_HOST
  111. AC_SUBST(host)
  112. dnl
  113. dnl
  114. dnl Check for POSIX stuff (required by AC_FIND_X)
  115. dnl
  116. AC_ISC_POSIX
  117. dnl
  118. dnl
  119. dnl
  120. dnl
  121. dnl Locate programs
  122. dnl
  123. AC_PROG_LN_S
  124. AC_PATH_PROGS(SH, sh)
  125. AC_CHECK_PROGS(TAR, gtar tar)
  126. AC_CHECK_PROGS(M4, gm4 m4)
  127. AC_CHECK_PROGS(SED, gsed sed)
  128. AC_CHECK_PROGS(DIFF, gdiff diff)
  129. AC_CHECK_PROGS(DVIPS, dvips dvi2ps)
  130. AC_CHECK_PROGS(COMPRESS, gzip compress)
  131. COMPRESS="$COMPRESS -c"
  132. case "$COMPRESS" in
  133. *gzip*) COMPRESS="$COMPRESS -9";;
  134. esac
  135. AC_CHECK_PROGS(UNCOMPRESS, gzip gunzip gzcat zcat uncompress)
  136. case "$UNCOMPRESS" in
  137. *gzip*)       UNCOMPRESS="$UNCOMPRESS -d";;
  138. esac
  139. case "$UNCOMPRESS" in
  140. *zip*)        UNCOMPRESS="$UNCOMPRESS -c";;
  141. *uncompress*) UNCOMPRESS="$UNCOMPRESS -c";;
  142. esac
  143. AC_PATH_PROGS(RSH, remsh rsh on)
  144. AC_CHECK_PROGS(LPR, lp lpr)
  145. if test "$LPR" = "lpr"; then
  146. PRINT_COMMAND="lpr"
  147. elif test "$LPR" = "lp"; then
  148. PRINT_COMMAND="lp -c"
  149. else
  150. PRINT_COMMAND="lp"
  151. fi
  152. AC_SUBST(PRINT_COMMAND)dnl
  153. AC_CHECK_PROGS(GCORE, gcore)
  154. if test "$GCORE" = "gcore"; then
  155. GCORE_COMMAND="gcore -o @FILE@ @PID@"
  156. else
  157. GCORE_COMMAND=
  158. fi
  159. AC_SUBST(GCORE_COMMAND)dnl
  160. AC_CHECK_PROGS(DEBUGGER, gdb dbx xdb jdb)dnl
  161. case "$DEBUGGER" in
  162. *gdb*) DEBUGGER_OPTION="";;
  163. *dbx*) DEBUGGER_OPTION="--dbx";;
  164. *xdb*) DEBUGGER_OPTION="--xdb";;
  165. *jdb*) DEBUGGER_OPTION="--jdb";;
  166. esac
  167. case "$DEBUGGER" in
  168. gdb) ;;
  169. dbx) ;;
  170. xdb) ;;
  171. jdb) ;;
  172. *)   DEBUGGER_OPTION="$DEBUGGER_OPTION --debugger $DEBUGGER";
  173. esac
  174. AC_SUBST(DEBUGGER_OPTION)dnl
  175. AC_CHECK_PROGS(XTERM, xterm kterm dtterm hpterm, xterm)dnl
  176. AC_CHECK_PROGS(XFONTSEL, xfontsel, xfontsel)dnl
  177. AC_PROG_INSTALL
  178. AC_PROG_RANLIB
  179. AC_PROG_YACC
  180. AC_MSG_CHECKING(for ${YACC} flags)
  181. YFLAGS=""
  182. AC_MSG_RESULT(${YFLAGS})
  183. AC_SUBST(YFLAGS)dnl
  184. AM_PROG_LEX
  185. AC_MSG_CHECKING(for ${LEX} flags)
  186. LFLAGS=""
  187. if test "$LEX" = "flex"; then
  188. LFLAGS="-8"
  189. fi
  190. AC_MSG_RESULT(${LFLAGS})
  191. AC_SUBST(LFLAGS)dnl
  192. AC_PROG_AWK
  193. dnl
  194. dnl Find and check C/C++ compilers
  195. dnl
  196. ICE_PROG_CC
  197. ICE_PROG_CXX
  198. dnl
  199. dnl 
  200. dnl Find and check C/C++ preprocessors
  201. dnl
  202. AC_PROG_CPP
  203. AC_PROG_CXXCPP
  204. dnl
  205. dnl
  206. dnl Check for compiler characteristics
  207. dnl
  208. dnl ICE_CXX_PROBLEMATIC_VERSION
  209. dnl ICE_CXX_INCLUDE_DIR
  210. dnl ICE_CXX_LIB_DIR
  211. ICE_CXX_OPTIONS
  212. ICE_CXX_BOOL
  213. ICE_CXX_EXPLICIT
  214. ICE_CXX_MUTABLE
  215. ICE_CXX_EXCEPTIONS
  216. ICE_CXX_STD_EXCEPTIONS
  217. ICE_CXX_NAMESPACE
  218. ICE_CXX_TYPEINFO
  219. ICE_CXX_LONG_LONG
  220. ICE_CXX_NAMED_RETURN_VALUES
  221. ICE_CXX_PRETTY_FUNCTION
  222. ICE_CXX_ARRAY_OPERATOR_NEW
  223. ICE_CXX_PLACEMENT_NEW
  224. ICE_CXX_LIFETIME_OF_TEMPORARIES
  225. ICE_PROG_CPP_TRADITIONAL
  226. dnl
  227. dnl
  228. dnl Check for .exe extension (used in the Windows/Cygwin32 environment)
  229. dnl
  230. AM_EXEEXT
  231. dnl
  232. dnl
  233. dnl The C++ compiler is set up.  Use it for further checks.
  234. dnl 
  235. AC_LANG_CPLUSPLUS
  236. dnl
  237. dnl
  238. dnl
  239. dnl
  240. dnl Locate Libraries
  241. dnl
  242. dnl Check for networking functions in C++ runtime library.
  243. dnl Zdenek Sekera <zs@cray.com> reports that SGI IRIX 6.x has these in -lc.
  244. ddd_have_connect_in_libc=no
  245. AC_CHECK_FUNC(connect, ddd_have_connect_in_libc=yes)
  246. ddd_have_gethostbyname_in_libc=no
  247. AC_CHECK_FUNC(gethostbyname, ddd_have_gethostbyname_in_libc=yes)
  248. ddd_have_regcmp_in_libc=no
  249. AC_CHECK_FUNC(regcmp, ddd_have_regcmp_in_libc=yes)
  250. dnl
  251. dnl
  252. if test "$ddd_have_connect_in_libc" != yes; then
  253. dnl Solaris 2.6 wants an explicit `-lsocket' before `-lnsl'.
  254. dnl Reported by Emmanuel Engel <Emmanuel.Engel@lri.fr>
  255. dnl 
  256. dnl Andreas Buschmann <Andreas.Buschmann@ks.sel.alcatel.de> says that
  257. dnl libsocket may _not_ go into LIBS, because otherwise the X11
  258. dnl configuration on Solaris will not find -lsocket -lnsl anymore.
  259. AC_CHECK_LIB(socket, connect, LIBSOCKET="-lsocket")
  260. AC_SUBST(LIBSOCKET)
  261. fi
  262. dnl
  263. if test "$ddd_have_gethostbyname_in_libc" != yes; then
  264. AC_CHECK_LIB(nsl, gethostbyname, LIBNSL="-lnsl")
  265. fi
  266. AC_SUBST(LIBNSL)
  267. dnl
  268. if test "$ddd_have_regcmp_in_libc" != yes; then
  269. AC_CHECK_LIB(gen, regcmp, LIBGEN="-lgen")
  270. fi
  271. AC_SUBST(LIBGEN)
  272. dnl
  273. dnl
  274. dnl Check for -ly, -lm, and -lc libraries.  These should always be present.
  275. AC_CHECK_LIB(y, yyerror, LIBY="-ly")
  276. AC_SUBST(LIBY)
  277. dnl
  278. AC_CHECK_LIB(m, sin, LIBM="-lm")
  279. AC_SUBST(LIBM)
  280. dnl
  281. AC_CHECK_LIB(c, open, LIBC="-lc")
  282. AC_SUBST(LIBC)
  283. dnl
  284. dnl
  285. dnl
  286. dnl Marc Lepage <mlepage@kingston.hummingbird.com> reports that
  287. dnl the Digital UNIX native compiler wants -lcxxinst to get
  288. dnl template instantiations.  Do this only if not GCC.
  289. dnl
  290. if test "$GXX" != yes; then
  291. AC_CHECK_LIB(cxxinst, main, CXXLIBS="-lcxxinst $CXXLIBS")
  292. fi
  293. dnl
  294. dnl
  295. dnl Look for the tgetent() function - either in libtermcap, libcurses,
  296. dnl or use the GNU termcap library as shipped with DDD.
  297. dnl
  298. dnl On FreeBSD systems, `-lmytinfo' is preferred to `-lncurses'.
  299. dnl Reported by Vincenzo Capuano <vcapuano@esoc.esa.de>
  300. dnl
  301. dnl On Linux ELF systems, `-lncurses' is preferred to `-ltermcap'.
  302. dnl Reported by jdassen@wi.leidenuniv.nl (J.H.M. Dassen)
  303. dnl
  304. LIBTERMCAP="../termcap/libtermcap.a"
  305. for termlib in mytinfo ncurses curses termcap terminfo termlib; do
  306.    AC_CHECK_LIB(${termlib}, tgetent, [LIBTERMCAP="-l${termlib}"; break])
  307. done
  308. AC_SUBST(LIBTERMCAP)
  309. dnl
  310. dnl
  311. dnl The `-liberty' library per definition contains only functions
  312. dnl missing in system libraries.
  313. LIBIBERTY="../libiberty/libiberty.a"
  314. dnl
  315. dnl Prefer the installed one over the one shipped with DDD.
  316. AC_CHECK_LIB(iberty, xstrerror, LIBIBERTY="-liberty")
  317. dnl
  318. AC_SUBST(LIBIBERTY)
  319. dnl
  320. dnl
  321. dnl
  322. dnl
  323. dnl Check for X stuff
  324. dnl
  325. dnl
  326. dnl Check X options
  327. dnl
  328. if test "$with_x" = no; then
  329. AC_MSG_ERROR([$DDD requires the X window system to compile and run.
  330.                   Please do not use the configure option '--without-x'.])
  331. fi
  332. if test "$with_motif" = no; then
  333. AC_MSG_ERROR([$DDD requires Motif to compile and run.
  334.                   Please do not use the configure option '--without-motif'.])
  335. fi
  336. dnl
  337. dnl
  338. dnl Check for X libraries
  339. dnl
  340. if test "$with_x" != no; then
  341. ice_save_LIBS="$LIBS"
  342. ice_save_CFLAGS="$CFLAGS"
  343. ice_save_CPPFLAGS="$CPPFLAGS"
  344. ice_save_LDFLAGS="$LDFLAGS"
  345. dnl
  346. AC_PATH_XTRA
  347. ICE_FIND_MOTIF
  348. ICE_FIND_ATHENA
  349. ICE_FIND_XPM
  350. dnl
  351. dnl Autoconf bug fix: Sun CC 3.0 requires `-R lib', g++ requires `-Rlib'.
  352. changequote(,)dnl
  353. case "$CXX" in
  354.   *CC) X_LIBS="`echo $X_LIBS | $SED 's, -R\([^ ]\), -R \1,g'`"
  355. esac
  356. changequote([,])dnl
  357. dnl
  358. dnl
  359. dnl
  360. LIBS="$LIBS $X_EXTRA_LIBS"
  361. CFLAGS="$CFLAGS $X_CFLAGS"
  362. CPPFLAGS="$CPPFLAGS $X_CFLAGS"
  363. LDFLAGS="$LDFLAGS $X_LIBS"
  364. dnl
  365. dnl Check for X library
  366. dnl
  367. X11_LIBS=""
  368. AC_CHECK_LIB(X11, XOpenDisplay, X11_LIBS="-lX11",,${X_PRE_LIBS})
  369. if test "$X11_LIBS" = ""; then
  370. dnl Not having X is fatal.  Let the user fix this.
  371. AC_MSG_ERROR([The X11 library '-lX11' could not be found.
  372.                   Please use the configure options '--x-includes=DIR'
  373.                   and '--x-libraries=DIR' to specify the X location.
  374.                   See the files 'config.log' and 'ddd/config.log'
  375.                   for further diagnostics.])
  376. fi
  377. AC_SUBST(X_LIBS)
  378. AC_SUBST(X11_LIBS)
  379. AC_SUBST(X_PRE_LIBS)
  380. dnl
  381. dnl
  382. dnl Check for -lXintl library.  Lutz Kittler <kittler@sse-erfurt.de> says
  383. dnl that DLD-Linux with CDE wants `-lXintl' to refine `Xlcmbcurmax'.
  384. dnl Guenther Roehrich <guenther@studbox.uni-stuttgart.de> says that
  385. dnl we must check for `_Xlcmbcurmax' instead of `Xlcmbcurmax'.
  386. dnl
  387. AC_CHECK_LIB(Xintl, _Xlcmbcurmax, X11_LIBS="${X11_LIBS} -lXintl",,
  388.     ${X_PRE_LIBS} ${X11_LIBS})
  389. dnl
  390. dnl
  391. dnl Check for -lipc library.  SCO unix is said to want that.
  392. dnl
  393. AC_CHECK_LIB(ipc, shmap, X11_LIBS="${X11_LIBS} -lipc",,
  394.     ${X_PRE_LIBS} ${X11_LIBS})
  395. dnl
  396. dnl
  397. dnl Check for X toolkit libraries
  398. dnl
  399. XT_LIBS=""
  400. AC_CHECK_LIB(Xt, XtToolkitInitialize, XT_LIBS="-lXt",,
  401.     ${X_PRE_LIBS} ${X11_LIBS})
  402. if test "$XT_LIBS" = ""; then
  403. dnl Not having Xt is fatal.  Let the user fix this.
  404. AC_MSG_ERROR([The X toolkit library '-lXt' could not be found.
  405.                   Please use the configure options '--x-includes=DIR'
  406.                   and '--x-libraries=DIR' to specify the X location.
  407.                   See the files 'config.log' and 'ddd/config.log'
  408.                   for further diagnostics.])
  409. fi
  410. AC_SUBST(XT_LIBS)
  411. dnl
  412. dnl
  413. dnl Check for X extension libraries
  414. dnl
  415. dnl
  416. XEXT_LIBS=""
  417. AC_CHECK_LIB(Xext, XShapeQueryVersion, XEXT_LIBS="-lXext",,
  418.     ${X_PRE_LIBS} ${X11_LIBS})
  419. AC_SUBST(XEXT_LIBS)
  420. dnl
  421. dnl
  422. dnl
  423. dnl Check for Athena widget libraries
  424. dnl
  425. dnl
  426. XAW_LIBS=""
  427. if test "$athena_includes" != "no" && test "$athena_libraries" != "no"
  428. then
  429. AC_CHECK_LIB(Xmu, XmuCvtStringToOrientation,
  430.     XAW_LIBS="-lXmu ${XAW_LIBS}",,
  431.     ${X_PRE_LIBS} ${XAW_LIBS} ${XT_LIBS} ${XEXT_LIBS} ${X11_LIBS})
  432. AC_CHECK_LIB(Xaw, XawTextSetInsertionPoint, 
  433.     XAW_LIBS="-lXaw ${XAW_LIBS}"
  434.     AC_DEFINE(HAVE_ATHENA),,
  435.     ${X_PRE_LIBS} ${XAW_LIBS} ${XT_LIBS} ${XEXT_LIBS} ${X11_LIBS})
  436. if test "$XAW_LIBS" = ""; then
  437. dnl A warning suffices here -- DDD also works without Athena.
  438. AC_MSG_WARN([The Athena widgets library '-lXaw' could not be found.
  439.                     If you have the athena library, please use the
  440.                     configure options '--with-athena-includes=DIR' and 
  441.                     '--with-athena-libraries=DIR' to specify the Xaw location.
  442.                     If you do not have the athena library, use the configure
  443.                     option '--without-athena' to suppress this message.
  444.                     See the files 'config.log' and 'ddd/config.log'
  445.                     for further diagnostics.])
  446. fi
  447. fi
  448. if test "$XAW_LIBS" != ""; then
  449. AC_CHECK_HEADERS(X11/Xaw/Form.h X11/Xaw/Panner.h X11/Xaw/Porthole.h)
  450. AC_CHECK_HEADERS(X11/Xmu/Editres.h)
  451. fi
  452. AC_SUBST(XAW_LIBS)
  453. dnl
  454. dnl
  455. dnl Check for Xpm library and headers
  456. dnl
  457. XPM_LIBS=""
  458. if test "$xpm_includes" != "no" && test "$xpm_libraries" != "no"
  459. then
  460. AC_CHECK_LIB(Xpm, XpmCreatePixmapFromXpmImage,
  461.     XPM_LIBS="-lXpm"
  462.     AC_DEFINE(HAVE_XPM),,${X_PRE_LIBS} ${X11_LIBS})
  463. if test "$XPM_LIBS" != ""; then
  464. AC_CHECK_HEADERS(X11/xpm.h xpm.h)
  465. fi
  466. fi
  467. AC_SUBST(XPM_LIBS)
  468. dnl
  469. dnl
  470. dnl Check for Motif widget libraries
  471. dnl
  472. dnl
  473. XM_LIBS=""
  474. XP_LIBS=""
  475. if test "$motif_includes" != "no" && test "$motif_libraries" != "no"
  476. then
  477. dnl Motif 2.1 wants `-lXp' (X11R6.3 print server)
  478. AC_CHECK_LIB(Xp, XpSelectInput,
  479.     XP_LIBS="-lXp"
  480.     AC_DEFINE(HAVE_XP),,
  481.     ${X_PRE_LIBS} ${XPM_LIBS} ${XEXT_LIBS} ${XT_LIBS} ${XEXT_LIBS} ${X11_LIBS} ${LIBGEN})
  482. dnl
  483. AC_CHECK_LIB(Xm, XmCreateOptionMenu, 
  484.     XM_LIBS="-lXm"
  485.     AC_DEFINE(HAVE_MOTIF),,
  486.     ${X_PRE_LIBS} ${XP_LIBS} ${XPM_LIBS} ${XEXT_LIBS} ${XT_LIBS} ${XEXT_LIBS} ${X11_LIBS} ${LIBGEN})
  487. dnl
  488. AC_CHECK_LIB(Xm, xmUseVersion, 
  489.     AC_DEFINE(HAVE_XMUSEVERSION),,
  490.     ${X_PRE_LIBS} ${XP_LIBS} ${XPM_LIBS} ${XEXT_LIBS} ${XT_LIBS} ${XEXT_LIBS} ${X11_LIBS} ${LIBGEN})
  491. fi
  492. if test "$XM_LIBS" = ""; then
  493. dnl Without Motif, we won't get far.  Let the user fix this.
  494. AC_MSG_ERROR([The Motif library '-lXm' could not be found.
  495.                   Please use the configure options '--with-motif-includes=DIR'
  496.                   and '--with-motif-libraries=DIR' to specify the Xm location.
  497.                   See the files 'config.log' and 'ddd/config.log'
  498.                   for further diagnostics.])
  499. fi
  500. AC_SUBST(XP_LIBS)
  501. AC_SUBST(XM_LIBS)
  502. dnl
  503. dnl Check for `baseTranslations' resource
  504. ICE_TRANSLATION_RESOURCE
  505. dnl
  506. dnl
  507. dnl
  508. dnl
  509. LIBS="$ice_save_LIBS"
  510. CFLAGS="$ice_save_CFLAGS"
  511. CPPFLAGS="$ice_save_CPPFLAGS"
  512. LDFLAGS="$ice_save_LDFLAGS"
  513. fi
  514. dnl
  515. dnl
  516. dnl Check for Make characteristics
  517. dnl
  518. AC_PROG_MAKE_SET
  519. dnl
  520. dnl
  521. dnl Find types
  522. dnl 
  523. dnl The getgroups() check fails with SGI CC.  Use the C compiler instead.
  524. AC_LANG_SAVE
  525. AC_LANG_C
  526. AC_TYPE_MODE_T
  527. AC_TYPE_OFF_T
  528. AC_TYPE_PID_T
  529. AC_TYPE_SIZE_T
  530. AC_TYPE_UID_T
  531. AC_TYPE_GETGROUPS
  532. AC_TYPE_SIGNAL
  533. AC_LANG_RESTORE
  534. dnl
  535. ICE_TYPE_SIG_HANDLER_ARGS
  536. dnl
  537. dnl
  538. dnl Find libraries and functions
  539. dnl 
  540. AC_CHECK_FUNC(getpgrp)
  541. AC_CHECK_FUNC(setpgrp)
  542. dnl
  543. dnl The getprgp() check fails with SGI CC.  Use the C compiler instead.
  544. AC_LANG_SAVE
  545. AC_LANG_C
  546. AC_FUNC_GETPGRP
  547. AC_FUNC_SETPGRP
  548. AC_LANG_RESTORE
  549. dnl
  550. dnl
  551. dnl
  552. AC_HEADER_STDC
  553. AC_CHECK_HEADERS(alloca.h fcntl.h limits.h malloc.h netdb.h pwd.h regex.h rx.h)
  554. AC_CHECK_HEADERS(stdlib.h string.h strings.h termio.h termios.h unistd.h)
  555. AC_CHECK_HEADERS(sys/ioctl.h sys/int_types.h sys/param.h sys/resource.h)
  556. AC_CHECK_HEADERS(sys/stat.h sys/stropts.h sys/vty.h sys/sysmacros.h sys/core.h)
  557. AC_CHECK_HEADERS(sys/socket.h sys/termios.h sys/time.h sys/timeb.h sys/types.h)
  558. AC_CHECK_HEADERS(sys/utsname.h sys/user.h sys/ptrace.h)
  559. AC_CHECK_HEADERS(exception stdexcept)
  560. AC_HEADER_TIME
  561. AC_HEADER_SYS_WAIT
  562. AC_HEADER_DIRENT
  563. AC_STAT_MACROS_BROKEN
  564. dnl
  565. dnl These checks may require `-lstdc++' to link and run properly
  566. ice_save_LIBS="$LIBS"
  567. LIBS="$CXXLIBS $LIBS"
  568. ICE_CHECK_CORE_MAGIC
  569. ICE_CHECK_PTRACE_DUMPCORE
  570. ICE_CHECK_FROZEN_OSTRSTREAM
  571. ICE_OSTRSTREAM_PCOUNT_BROKEN
  572. ICE_TYPE_REGEX_T
  573. dnl
  574. dnl The regexec() check fails with SGI CC.  Use the C compiler instead.
  575. AC_LANG_SAVE
  576. AC_LANG_C
  577. ICE_REGCOMP_BROKEN
  578. AC_LANG_RESTORE
  579. dnl
  580. LIBS="$ice_save_LIBS"
  581. dnl
  582. ICE_CHECK_DECL(_getpty, unistd.h)
  583. ICE_CHECK_DECL(alloca, alloca.h stdlib.h)
  584. ICE_CHECK_DECL(asctime, time.h)
  585. ICE_CHECK_DECL(clock, time.h)
  586. ICE_CHECK_DECL(difftime, time.h)
  587. ICE_CHECK_DECL(dup2, unistd.h)
  588. ICE_CHECK_DECL(endpwent, pwd.h)
  589. ICE_CHECK_DECL(fcntl, fcntl.h)
  590. ICE_CHECK_DECL(ftime, sys/timeb.h)
  591. ICE_CHECK_DECL(gethostbyname, netdb.h)
  592. ICE_CHECK_DECL(gethostname, unistd.h)
  593. ICE_CHECK_DECL(getpty, unistd.h)
  594. ICE_CHECK_DECL(getrlimit, sys/resource.h)
  595. ICE_CHECK_DECL(getrusage, sys/resource.h)
  596. ICE_CHECK_DECL(getwd, unistd.h)
  597. ICE_CHECK_DECL(grantpt, stdlib.h)
  598. ICE_CHECK_DECL(hypot, math.h)
  599. ICE_CHECK_DECL(ioctl, unistd.h sys/ioctl.h)
  600. ICE_CHECK_DECL(link, unistd.h)
  601. ICE_CHECK_DECL(lstat, sys/stat.h)
  602. ICE_CHECK_DECL(malloc, stdlib.h)
  603. ICE_CHECK_DECL(memcpy, string.h)
  604. ICE_CHECK_DECL(memset, string.h)
  605. ICE_CHECK_DECL(pclose, stdio.h)
  606. ICE_CHECK_DECL(popen, stdio.h)
  607. ICE_CHECK_DECL(ptrace, unistd.h sys/ptrace.h)
  608. ICE_CHECK_DECL(ptsname, stdlib.h)
  609. ICE_CHECK_DECL(raise, signal.h)
  610. ICE_CHECK_DECL(rand, stdlib.h)
  611. ICE_CHECK_DECL(random, stdlib.h)
  612. ICE_CHECK_DECL(readlink, unistd.h)
  613. ICE_CHECK_DECL(setbuf, stdio.h)
  614. ICE_CHECK_DECL(setpgid, unistd.h)
  615. ICE_CHECK_DECL(setpgrp, unistd.h)
  616. ICE_CHECK_DECL(setpgrp2, unistd.h)
  617. ICE_CHECK_DECL(setpwent, pwd.h)
  618. ICE_CHECK_DECL(setrlimit, sys/resource.h)
  619. ICE_CHECK_DECL(setsid, unistd.h)
  620. ICE_CHECK_DECL(setvbuf, stdio.h)
  621. ICE_CHECK_DECL(sigblock, signal.h)
  622. ICE_CHECK_DECL(sigprocmask, signal.h)
  623. ICE_CHECK_DECL(sigsetmask, signal.h)
  624. ICE_CHECK_DECL(sigsuspend, signal.h)
  625. ICE_CHECK_DECL(srand, stdlib.h)
  626. ICE_CHECK_DECL(srandom, stdlib.h)
  627. ICE_CHECK_DECL(stat, sys/stat.h)
  628. ICE_CHECK_DECL(strerror, string.h)
  629. ICE_CHECK_DECL(strftime, time.h)
  630. ICE_CHECK_DECL(strsignal, string.h)
  631. ICE_CHECK_DECL(strtod, stdlib.h)
  632. ICE_CHECK_DECL(strtol, stdlib.h)
  633. ICE_CHECK_DECL(strtoul, stdlib.h)
  634. ICE_CHECK_DECL(symlink, unistd.h)
  635. ICE_CHECK_DECL(tcdrain, termios.h)
  636. ICE_CHECK_DECL(tcflow, termios.h)
  637. ICE_CHECK_DECL(tcflush, termios.h)
  638. ICE_CHECK_DECL(tcgetattr, termios.h)
  639. ICE_CHECK_DECL(tcgetpgrp, unistd.h)
  640. ICE_CHECK_DECL(tcgetsid, sys/termios.h)
  641. ICE_CHECK_DECL(tcsendbreak, termios.h)
  642. ICE_CHECK_DECL(tcsetattr, termios.h)
  643. ICE_CHECK_DECL(tcsetpgrp, unistd.h)
  644. ICE_CHECK_DECL(times, sys/times.h)
  645. ICE_CHECK_DECL(uname, sys/utsname.h)
  646. ICE_CHECK_DECL(unlink, unistd.h)
  647. ICE_CHECK_DECL(unlockpt, stdlib.h)
  648. ICE_CHECK_DECL(waitpid, sys/wait.h)
  649. dnl
  650. dnl These checks may require -lstdc++ to link and tun properly
  651. ice_save_LIBS="$LIBS"
  652. LIBS="$CXXLIBS $LIBS"
  653. ICE_CHECK_PATH_MAX
  654. ICE_CHECK_POSIX_PATH_MAX
  655. ICE_CHECK_MAXPATHLEN
  656. LIBS="$ice_save_LIBS"
  657. dnl
  658. dnl
  659. dnl Check for a POSIX.2 regcomp()/regexec() library
  660. LIBRX="../librx/librx.a"
  661. if test "$ice_have_regcomp" = yes && test "$ice_have_regexec" = yes && test "$ice_cv_regcomp_broken" = no; then
  662. dnl No need to use the GNU regcomp() library - there's one in the system
  663. LIBRX=""
  664. fi
  665. AC_SUBST(LIBRX)
  666. dnl
  667. dnl
  668. dnl As of DDD 2.2, we don't need all this RX stuff, but use
  669. dnl a LEX-generated scanner for regexps.
  670. dnl
  671. AC_DEFINE(WITH_RUNTIME_REGEX, 0)
  672. AC_DEFINE(RUNTIME_REGEX, 0)
  673. dnl
  674. dnl
  675. dnl User-defined options
  676. dnl
  677. AC_ARG_ENABLE(builtin-manual,
  678. [  --disable-builtin-manual         do not compile manual into DDD], 
  679.     builtin_manual="$enableval", builtin_manual=yes)
  680. AC_ARG_ENABLE(builtin-app-defaults,
  681. [  --disable-builtin-app-defaults   do not compile app-defaults file into DDD],
  682.     builtin_app_defaults="$enableval", builtin_app_defaults=yes)
  683. dnl
  684. if test "$builtin_manual" != no; then
  685. AC_DEFINE(WITH_BUILTIN_MANUAL)
  686. fi
  687. if test "$builtin_app_defaults" != no; then
  688. AC_DEFINE(WITH_BUILTIN_APP_DEFAULTS)
  689. fi
  690. dnl
  691. dnl
  692. dnl Check for risky LessTif versions.
  693. dnl
  694. risky_lesstif=false
  695. ice_save_CPPFLAGS="$CPPFLAGS"
  696. CPPFLAGS="$CPPFLAGS $X_CFLAGS"
  697. AC_TRY_CPP([#include <Xm/Xm.h>
  698. #ifdef LESSTIF_VERSION
  699. #if LESSTIF_VERSION == 0 && LESSTIF_REVISION <= 86
  700. #error LessTif 0.86 or earlier
  701. #endif
  702. #endif], risky_lesstif=false, risky_lesstif=true)
  703. CPPFLAGS="$ice_save_CPPFLAGS"
  704. dnl
  705. dnl
  706. dnl Check for risky CC versions.
  707. dnl
  708. risky_cc=false
  709. # Warn about old SGI CC versions.
  710. case "$CXX" in
  711. *CC)
  712.   if test "$host_vendor" = "sgi" && test "$ice_cv_have_bool" != yes; then
  713.     risky_cc=true
  714.   fi
  715.   ;;
  716. *)
  717.   ;;
  718. esac
  719. dnl
  720. # Warn about old xlC versions.
  721. case "$CXX" in
  722. *xlC)
  723.   if test "$ice_cv_have_bool" != yes; then
  724.     risky_cc=true
  725.   fi
  726.   ;;
  727. *)
  728.   ;;
  729. esac
  730. dnl
  731. dnl
  732. dnl
  733. dnl That's all, folks!
  734. dnl
  735. AC_OUTPUT(Makefile vr.h Ddd ddd.man .gdbinit, date > stamp-h)
  736. dnl
  737. dnl 
  738. dnl Give some warnings
  739. dnl
  740. if test "$silent" != yes; then
  741. dnl
  742. if $risky_cc; then
  743. echo
  744. echo "configure: This $CXX version may not generate safe $DDD code."
  745. echo "Use GCC instead or continue at own risk."
  746. fi
  747. dnl
  748. if $risky_lesstif; then
  749. echo
  750. echo "configure: This $DDD release requires LessTif 0.87 or later."
  751. echo "Upgrade to a recent LessTif version or continue at own risk."
  752. fi
  753. dnl
  754. fi
  755. dnl
  756. dnl Give an indication of what to do next.
  757. dnl
  758. if test "$silent" != yes; then
  759. echo
  760. echo "configure: configuration is done.  Type \`make' to make $DDD."
  761. echo "In case of trouble, please check the settings in the files generated"
  762. echo "by \`configure' - that is, \`ddd/config.h' and \`ddd/Makefile'."
  763. echo
  764. fi
  765. exit 0
  766.