Thu May 21 13:14:25 1998 John Metzler <jmetzler@cygnus.com>
[deliverable/binutils-gdb.git] / gdb / aclocal.m4
... / ...
CommitLineData
1dnl written by Rob Savoye <rob@cygnus.com> for Cygnus Support
2dnl major rewriting for Tcl 7.5 by Don Libes <libes@nist.gov>
3
4sinclude(../bfd/aclocal.m4)
5
6dnl CY_AC_PATH_TCLCONFIG and CY_AC_LOAD_TCLCONFIG should be invoked
7dnl (in that order) before any other TCL macros. Similarly for TK.
8
9dnl CYGNUS LOCAL: This gets the right posix flag for gcc
10AC_DEFUN(CY_AC_TCL_LYNX_POSIX,
11[AC_REQUIRE([AC_PROG_CC])AC_REQUIRE([AC_PROG_CPP])
12AC_MSG_CHECKING([if running LynxOS])
13AC_CACHE_VAL(ac_cv_os_lynx,
14[AC_EGREP_CPP(yes,
15[/*
16 * The old Lynx "cc" only defines "Lynx", but the newer one uses "__Lynx__"
17 */
18#if defined(__Lynx__) || defined(Lynx)
19yes
20#endif
21], ac_cv_os_lynx=yes, ac_cv_os_lynx=no)])
22#
23if test "$ac_cv_os_lynx" = "yes" ; then
24 AC_MSG_RESULT(yes)
25 AC_DEFINE(LYNX)
26 AC_MSG_CHECKING([whether -mposix or -X is available])
27 AC_CACHE_VAL(ac_cv_c_posix_flag,
28 [AC_TRY_COMPILE(,[
29 /*
30 * This flag varies depending on how old the compiler is.
31 * -X is for the old "cc" and "gcc" (based on 1.42).
32 * -mposix is for the new gcc (at least 2.5.8).
33 */
34 #if defined(__GNUC__) && __GNUC__ >= 2
35 choke me
36 #endif
37 ], ac_cv_c_posix_flag=" -mposix", ac_cv_c_posix_flag=" -X")])
38 CC="$CC $ac_cv_c_posix_flag"
39 AC_MSG_RESULT($ac_cv_c_posix_flag)
40 else
41 AC_MSG_RESULT(no)
42fi
43])
44
45#
46# Sometimes the native compiler is a bogus stub for gcc or /usr/ucb/cc. This
47# makes configure think it's cross compiling. If --target wasn't used, then
48# we can't configure, so something is wrong. We don't use the cache
49# here cause if somebody fixes their compiler install, we want this to work.
50AC_DEFUN(CY_AC_C_WORKS,
51[# If we cannot compile and link a trivial program, we can't expect anything to work
52AC_MSG_CHECKING(whether the compiler ($CC) actually works)
53AC_TRY_COMPILE(, [/* don't need anything here */],
54 c_compiles=yes, c_compiles=no)
55
56AC_TRY_LINK(, [/* don't need anything here */],
57 c_links=yes, c_links=no)
58
59if test x"${c_compiles}" = x"no" ; then
60 AC_MSG_ERROR(the native compiler is broken and won't compile.)
61fi
62
63if test x"${c_links}" = x"no" ; then
64 AC_MSG_ERROR(the native compiler is broken and won't link.)
65fi
66AC_MSG_RESULT(yes)
67])
68
69AC_DEFUN(CY_AC_PATH_TCLH, [
70#
71# Ok, lets find the tcl source trees so we can use the headers
72# Warning: transition of version 9 to 10 will break this algorithm
73# because 10 sorts before 9. We also look for just tcl. We have to
74# be careful that we don't match stuff like tclX by accident.
75# the alternative search directory is involked by --with-tclinclude
76#
77
78no_tcl=true
79AC_MSG_CHECKING(for Tcl private headers. dir=${configdir})
80AC_ARG_WITH(tclinclude, [ --with-tclinclude directory where tcl private headers are], with_tclinclude=${withval})
81AC_CACHE_VAL(ac_cv_c_tclh,[
82# first check to see if --with-tclinclude was specified
83if test x"${with_tclinclude}" != x ; then
84 if test -f ${with_tclinclude}/tclInt.h ; then
85 ac_cv_c_tclh=`(cd ${with_tclinclude}; pwd)`
86 elif test -f ${with_tclinclude}/generic/tclInt.h ; then
87 ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; pwd)`
88 else
89 AC_MSG_ERROR([${with_tclinclude} directory doesn't contain private headers])
90 fi
91fi
92
93# next check if it came with Tcl configuration file
94if test x"${ac_cv_c_tclconfig}" = x ; then
95 if test -f $ac_cv_c_tclconfig/../generic/tclInt.h ; then
96 ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/..; pwd)`
97 fi
98fi
99
100# next check in private source directory
101#
102# since ls returns lowest version numbers first, reverse its output
103if test x"${ac_cv_c_tclh}" = x ; then
104 for i in \
105 ${srcdir}/../tcl \
106 `ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` \
107 ${srcdir}/../../tcl \
108 `ls -dr ${srcdir}/../../tcl[[7-9]]* 2>/dev/null` \
109 ${srcdir}/../../../tcl \
110 `ls -dr ${srcdir}/../../../tcl[[7-9]]* 2>/dev/null ` ; do
111 if test -f $i/generic/tclInt.h ; then
112 ac_cv_c_tclh=`(cd $i/generic; pwd)`
113 break
114 fi
115 done
116fi
117# finally check in a few common install locations
118#
119# since ls returns lowest version numbers first, reverse its output
120if test x"${ac_cv_c_tclh}" = x ; then
121 for i in \
122 `ls -dr /usr/local/src/tcl[[7-9]]* 2>/dev/null` \
123 `ls -dr /usr/local/lib/tcl[[7-9]]* 2>/dev/null` \
124 /usr/local/src/tcl \
125 /usr/local/lib/tcl \
126 ${prefix}/include ; do
127 if test -f $i/generic/tclInt.h ; then
128 ac_cv_c_tclh=`(cd $i/generic; pwd)`
129 break
130 fi
131 done
132fi
133# see if one is installed
134if test x"${ac_cv_c_tclh}" = x ; then
135 AC_HEADER_CHECK(tclInt.h, ac_cv_c_tclh=installed, ac_cv_c_tclh="")
136fi
137])
138if test x"${ac_cv_c_tclh}" = x ; then
139 TCLHDIR="# no Tcl private headers found"
140 AC_MSG_ERROR([Can't find Tcl private headers])
141fi
142if test x"${ac_cv_c_tclh}" != x ; then
143 no_tcl=""
144 if test x"${ac_cv_c_tclh}" = x"installed" ; then
145 AC_MSG_RESULT([is installed])
146 TCLHDIR=""
147 else
148 AC_MSG_RESULT([found in ${ac_cv_c_tclh}])
149 # this hack is cause the TCLHDIR won't print if there is a "-I" in it.
150 TCLHDIR="-I${ac_cv_c_tclh}"
151 fi
152fi
153
154AC_SUBST(TCLHDIR)
155])
156
157
158AC_DEFUN(CY_AC_PATH_TCLCONFIG, [
159#
160# Ok, lets find the tcl configuration
161# First, look for one uninstalled.
162# the alternative search directory is invoked by --with-tclconfig
163#
164
165if test x"${no_tcl}" = x ; then
166 # we reset no_tcl in case something fails here
167 no_tcl=true
168 AC_ARG_WITH(tclconfig, [ --with-tclconfig directory containing tcl configuration (tclConfig.sh)],
169 with_tclconfig=${withval})
170 AC_MSG_CHECKING([for Tcl configuration])
171 AC_CACHE_VAL(ac_cv_c_tclconfig,[
172
173 # First check to see if --with-tclconfig was specified.
174 if test x"${with_tclconfig}" != x ; then
175 if test -f "${with_tclconfig}/tclConfig.sh" ; then
176 ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)`
177 else
178 AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh])
179 fi
180 fi
181
182 # then check for a private Tcl installation
183 if test x"${ac_cv_c_tclconfig}" = x ; then
184 for i in \
185 ../tcl \
186 `ls -dr ../tcl[[7-9]]* 2>/dev/null` \
187 ../../tcl \
188 `ls -dr ../../tcl[[7-9]]* 2>/dev/null` \
189 ../../../tcl \
190 `ls -dr ../../../tcl[[7-9]]* 2>/dev/null` ; do
191 if test -f "$i/${configdir}/tclConfig.sh" ; then
192 ac_cv_c_tclconfig=`(cd $i/${configdir}; pwd)`
193 break
194 fi
195 done
196 fi
197 # check in a few common install locations
198 if test x"${ac_cv_c_tclconfig}" = x ; then
199 for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
200 if test -f "$i/tclConfig.sh" ; then
201 ac_cv_c_tclconfig=`(cd $i; pwd)`
202 break
203 fi
204 done
205 fi
206 # check in a few other private locations
207 if test x"${ac_cv_c_tclconfig}" = x ; then
208 for i in \
209 ${srcdir}/../tcl \
210 `ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` ; do
211 if test -f "$i/${configdir}/tclConfig.sh" ; then
212 ac_cv_c_tclconfig=`(cd $i/${configdir}; pwd)`
213 break
214 fi
215 done
216 fi
217 ])
218 if test x"${ac_cv_c_tclconfig}" = x ; then
219 TCLCONFIG="# no Tcl configs found"
220 AC_MSG_WARN(Can't find Tcl configuration definitions)
221 else
222 no_tcl=
223 TCLCONFIG=${ac_cv_c_tclconfig}/tclConfig.sh
224 AC_MSG_RESULT(found $TCLCONFIG)
225 fi
226fi
227])
228
229# Defined as a separate macro so we don't have to cache the values
230# from PATH_TCLCONFIG (because this can also be cached).
231AC_DEFUN(CY_AC_LOAD_TCLCONFIG, [
232 . $TCLCONFIG
233
234 AC_SUBST(TCL_VERSION)
235 AC_SUBST(TCL_MAJOR_VERSION)
236 AC_SUBST(TCL_MINOR_VERSION)
237 AC_SUBST(TCL_CC)
238 AC_SUBST(TCL_DEFS)
239
240dnl not used, don't export to save symbols
241dnl AC_SUBST(TCL_LIB_FILE)
242
243dnl don't export, not used outside of configure
244dnl AC_SUBST(TCL_LIBS)
245dnl not used, don't export to save symbols
246dnl AC_SUBST(TCL_PREFIX)
247
248dnl not used, don't export to save symbols
249dnl AC_SUBST(TCL_EXEC_PREFIX)
250
251 AC_SUBST(TCL_SHLIB_CFLAGS)
252 AC_SUBST(TCL_SHLIB_LD)
253dnl don't export, not used outside of configure
254 AC_SUBST(TCL_SHLIB_LD_LIBS)
255 AC_SUBST(TCL_SHLIB_SUFFIX)
256dnl not used, don't export to save symbols
257 AC_SUBST(TCL_DL_LIBS)
258 AC_SUBST(TCL_LD_FLAGS)
259dnl don't export, not used outside of configure
260 AC_SUBST(TCL_LD_SEARCH_FLAGS)
261 AC_SUBST(TCL_COMPAT_OBJS)
262 AC_SUBST(TCL_RANLIB)
263 AC_SUBST(TCL_BUILD_LIB_SPEC)
264 AC_SUBST(TCL_LIB_SPEC)
265 AC_SUBST(TCL_LIB_VERSIONS_OK)
266
267dnl not used, don't export to save symbols
268dnl AC_SUBST(TCL_SHARED_LIB_SUFFIX)
269
270dnl not used, don't export to save symbols
271dnl AC_SUBST(TCL_UNSHARED_LIB_SUFFIX)
272])
273
274# Warning: Tk definitions are very similar to Tcl definitions but
275# are not precisely the same. There are a couple of differences,
276# so don't do changes to Tcl thinking you can cut and paste it do
277# the Tk differences and later simply substitute "Tk" for "Tcl".
278# Known differences:
279# - Acceptable Tcl major version #s is 7-9 while Tk is 4-9
280# - Searching for Tcl includes looking for tclInt.h, Tk looks for tk.h
281# - Computing major/minor versions is different because Tk depends on
282# headers to Tcl, Tk, and X.
283# - Symbols in tkConfig.sh are different than tclConfig.sh
284# - Acceptable for Tk to be missing but not Tcl.
285
286AC_DEFUN(CY_AC_PATH_TKH, [
287#
288# Ok, lets find the tk source trees so we can use the headers
289# If the directory (presumably symlink) named "tk" exists, use that one
290# in preference to any others. Same logic is used when choosing library
291# and again with Tcl. The search order is the best place to look first, then in
292# decreasing significance. The loop breaks if the trigger file is found.
293# Note the gross little conversion here of srcdir by cd'ing to the found
294# directory. This converts the path from a relative to an absolute, so
295# recursive cache variables for the path will work right. We check all
296# the possible paths in one loop rather than many seperate loops to speed
297# things up.
298# the alternative search directory is involked by --with-tkinclude
299#
300no_tk=true
301AC_MSG_CHECKING(for Tk private headers)
302AC_ARG_WITH(tkinclude, [ --with-tkinclude directory where tk private headers are], with_tkinclude=${withval})
303AC_CACHE_VAL(ac_cv_c_tkh,[
304# first check to see if --with-tkinclude was specified
305if test x"${with_tkinclude}" != x ; then
306 if test -f ${with_tkinclude}/tk.h ; then
307 ac_cv_c_tkh=`(cd ${with_tkinclude}; pwd)`
308 elif test -f ${with_tkinclude}/generic/tk.h ; then
309 ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; pwd)`
310 else
311 AC_MSG_ERROR([${with_tkinclude} directory doesn't contain private headers])
312 fi
313fi
314
315# next check if it came with Tk configuration file
316if test x"${ac_cv_c_tkconfig}" = x ; then
317 if test -f $ac_cv_c_tkconfig/../generic/tk.h ; then
318 ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/..; pwd)`
319 fi
320fi
321
322# next check in private source directory
323#
324# since ls returns lowest version numbers first, reverse its output
325if test x"${ac_cv_c_tkh}" = x ; then
326 for i in \
327 ${srcdir}/../tk \
328 `ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` \
329 ${srcdir}/../../tk \
330 `ls -dr ${srcdir}/../../tk[[4-9]]* 2>/dev/null` \
331 ${srcdir}/../../../tk \
332 `ls -dr ${srcdir}/../../../tk[[4-9]]* 2>/dev/null ` ; do
333 if test -f $i/generic/tk.h ; then
334 ac_cv_c_tkh=`(cd $i/generic; pwd)`
335 break
336 fi
337 done
338fi
339# finally check in a few common install locations
340#
341# since ls returns lowest version numbers first, reverse its output
342if test x"${ac_cv_c_tkh}" = x ; then
343 for i in \
344 `ls -dr /usr/local/src/tk[[4-9]]* 2>/dev/null` \
345 `ls -dr /usr/local/lib/tk[[4-9]]* 2>/dev/null` \
346 /usr/local/src/tk \
347 /usr/local/lib/tk \
348 ${prefix}/include ; do
349 if test -f $i/generic/tk.h ; then
350 ac_cv_c_tkh=`(cd $i/generic; pwd)`
351 break
352 fi
353 done
354fi
355# see if one is installed
356if test x"${ac_cv_c_tkh}" = x ; then
357 AC_HEADER_CHECK(tk.h, ac_cv_c_tkh=installed, ac_cv_c_tkh="")
358fi
359])
360if test x"${ac_cv_c_tkh}" != x ; then
361 no_tk=""
362 if test x"${ac_cv_c_tkh}" = x"installed" ; then
363 AC_MSG_RESULT([is installed])
364 TKHDIR=""
365 else
366 AC_MSG_RESULT([found in ${ac_cv_c_tkh}])
367 # this hack is cause the TKHDIR won't print if there is a "-I" in it.
368 TKHDIR="-I${ac_cv_c_tkh}"
369 fi
370else
371 TKHDIR="# no Tk directory found"
372 AC_MSG_WARN([Can't find Tk private headers])
373 no_tk=true
374fi
375
376AC_SUBST(TKHDIR)
377])
378
379
380AC_DEFUN(CY_AC_PATH_TKCONFIG, [
381#
382# Ok, lets find the tk configuration
383# First, look for one uninstalled.
384# the alternative search directory is invoked by --with-tkconfig
385#
386
387if test x"${no_tk}" = x ; then
388 # we reset no_tk in case something fails here
389 no_tk=true
390 AC_ARG_WITH(tkconfig, [ --with-tkconfig directory containing tk configuration (tkConfig.sh)],
391 with_tkconfig=${withval})
392 AC_MSG_CHECKING([for Tk configuration])
393 AC_CACHE_VAL(ac_cv_c_tkconfig,[
394
395 # First check to see if --with-tkconfig was specified.
396 if test x"${with_tkconfig}" != x ; then
397 if test -f "${with_tkconfig}/tkConfig.sh" ; then
398 ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)`
399 else
400 AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh])
401 fi
402 fi
403
404 # then check for a private Tk library
405 if test x"${ac_cv_c_tkconfig}" = x ; then
406 for i in \
407 ../tk \
408 `ls -dr ../tk[[4-9]]* 2>/dev/null` \
409 ../../tk \
410 `ls -dr ../../tk[[4-9]]* 2>/dev/null` \
411 ../../../tk \
412 `ls -dr ../../../tk[[4-9]]* 2>/dev/null` ; do
413 if test -f "$i/${configdir}/tkConfig.sh" ; then
414 ac_cv_c_tkconfig=`(cd $i/${configdir}; pwd)`
415 break
416 fi
417 done
418 fi
419 # check in a few common install locations
420 if test x"${ac_cv_c_tkconfig}" = x ; then
421 for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
422 if test -f "$i/tkConfig.sh" ; then
423 ac_cv_c_tkconfig=`(cd $i; pwd)`
424 break
425 fi
426 done
427 fi
428 # check in a few other private locations
429 if test x"${ac_cv_c_tkconfig}" = x ; then
430 for i in \
431 ${srcdir}/../tk \
432 `ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` ; do
433 if test -f "$i/${configdir}/tkConfig.sh" ; then
434 ac_cv_c_tkconfig=`(cd $i/${configdir}; pwd)`
435 break
436 fi
437 done
438 fi
439 ])
440 if test x"${ac_cv_c_tkconfig}" = x ; then
441 TKCONFIG="# no Tk configs found"
442 AC_MSG_WARN(Can't find Tk configuration definitions)
443 else
444 no_tk=
445 TKCONFIG=${ac_cv_c_tkconfig}/tkConfig.sh
446 AC_MSG_RESULT(found $TKCONFIG)
447 fi
448fi
449
450])
451
452# Defined as a separate macro so we don't have to cache the values
453# from PATH_TKCONFIG (because this can also be cached).
454AC_DEFUN(CY_AC_LOAD_TKCONFIG, [
455 if test -f "$TKCONFIG" ; then
456 . $TKCONFIG
457 fi
458
459 AC_SUBST(TK_VERSION)
460dnl not actually used, don't export to save symbols
461dnl AC_SUBST(TK_MAJOR_VERSION)
462dnl AC_SUBST(TK_MINOR_VERSION)
463 AC_SUBST(TK_DEFS)
464
465dnl not used, don't export to save symbols
466 dnl AC_SUBST(TK_LIB_FILE)
467
468dnl not used outside of configure
469dnl AC_SUBST(TK_LIBS)
470dnl not used, don't export to save symbols
471dnl AC_SUBST(TK_PREFIX)
472
473dnl not used, don't export to save symbols
474dnl AC_SUBST(TK_EXEC_PREFIX)
475
476 AC_SUBST(TK_BUILD_INCLUDES)
477 AC_SUBST(TK_XINCLUDES)
478 AC_SUBST(TK_XLIBSW)
479 AC_SUBST(TK_BUILD_LIB_SPEC)
480 AC_SUBST(TK_LIB_SPEC)
481])
482
483
484# check for Itcl headers.
485
486AC_DEFUN(CY_AC_PATH_ITCLH, [
487AC_MSG_CHECKING(for Itcl private headers. srcdir=${srcdir})
488if test x"${ac_cv_c_itclh}" = x ; then
489 for i in ${srcdir}/../itcl ${srcdir}/../../itcl ${srcdir}/../../../itcl ; do
490 if test -f $i/src/itcl.h ; then
491 ac_cv_c_itclh=`(cd $i/src; pwd)`
492 break
493 fi
494 done
495fi
496if test x"${ac_cv_c_itclh}" = x ; then
497 ITCLHDIR="# no Itcl private headers found"
498 AC_MSG_ERROR([Can't find Itcl private headers])
499fi
500if test x"${ac_cv_c_itclh}" != x ; then
501 ITCLHDIR="-I${ac_cv_c_itclh}"
502fi
503# should always be here
504 ITCLLIB="../itcl/src/libitcl.a"
505AC_SUBST(ITCLHDIR)
506AC_SUBST(ITCLLIB)
507])
508
509# check for Tix headers.
510
511AC_DEFUN(CY_AC_PATH_TIX, [
512AC_MSG_CHECKING(for Tix private headers. srcdir=${srcdir})
513if test x"${ac_cv_c_tixh}" = x ; then
514 for i in ${srcdir}/../tix ${srcdir}/../../tix ${srcdir}/../../../tix ; do
515 if test -f $i/generic/tix.h ; then
516 ac_cv_c_tixh=`(cd $i/generic; pwd)`
517 break
518 fi
519 done
520fi
521if test x"${ac_cv_c_tixh}" = x ; then
522 TIXHDIR="# no Tix private headers found"
523 AC_MSG_ERROR([Can't find Tix private headers])
524fi
525if test x"${ac_cv_c_tixh}" != x ; then
526 TIXHDIR="-I${ac_cv_c_tixh}"
527fi
528AC_SUBST(TIXHDIR)
529])
This page took 0.024179 seconds and 4 git commands to generate.