Update comment for struct type's length field, introduce type_length_units
[deliverable/binutils-gdb.git] / gdb / acinclude.m4
CommitLineData
c906108c
SS
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
7d928dac
PA
4# Keep these includes in sync with the aclocal_m4_deps list in
5# Makefile.in.
6
c971b7fa
PA
7sinclude(acx_configure_dir.m4)
8
17ef446e
PA
9# This gets GDB_AC_LIBMCHECK.
10sinclude(libmcheck.m4)
11
f6a88844
JM
12# This gets GDB_AC_TRANSFORM.
13sinclude(transform.m4)
14
c906108c 15dnl gdb/configure.in uses BFD_NEED_DECLARATION, so get its definition.
85981d60 16sinclude(../bfd/bfd.m4)
c906108c 17
7d928dac 18dnl This gets the standard macros.
c906108c
SS
19sinclude(../config/acinclude.m4)
20
7d928dac
PA
21dnl This gets AC_PLUGINS, needed by ACX_LARGEFILE.
22sinclude(../config/plugins.m4)
23
24dnl For ACX_LARGEFILE.
25sinclude(../config/largefile.m4)
26
27dnl For AM_SET_LEADING_DOT.
28sinclude(../config/lead-dot.m4)
29
30dnl This gets autoconf bugfixes.
fdc59709
PB
31sinclude(../config/override.m4)
32
7d928dac 33dnl For ZW_GNU_GETTEXT_SISTER_DIR.
20e95c23 34sinclude(../config/gettext-sister.m4)
85981d60 35
7fa2210b
DJ
36dnl For AC_LIB_HAVE_LINKFLAGS.
37sinclude(../config/lib-ld.m4)
38sinclude(../config/lib-prefix.m4)
39sinclude(../config/lib-link.m4)
40
c16158bc
JM
41dnl For ACX_PKGVERSION and ACX_BUGURL.
42sinclude(../config/acx.m4)
43
5062cc19
KS
44dnl for TCL definitions
45sinclude(../config/tcl.m4)
46
a417dc56
RW
47dnl For dependency tracking macros.
48sinclude([../config/depstand.m4])
49
a8111142
TT
50dnl For AM_LC_MESSAGES
51sinclude([../config/lcmessage.m4])
52
6c7a06a3
TT
53dnl For AM_LANGINFO_CODESET.
54sinclude([../config/codeset.m4])
55
b040ad30
JB
56sinclude([../config/zlib.m4])
57
3266f10b
TT
58m4_include([common/common.m4])
59
07697489
PA
60dnl For libiberty_INIT.
61m4_include(libiberty.m4)
62
3bc3d82a
PA
63dnl For --enable-build-with-cxx and COMPILER.
64m4_include(build-with-cxx.m4)
65
eb7aa561
PA
66dnl For GDB_AC_PTRACE.
67m4_include(ptrace.m4)
68
56157b4a
AC
69## ----------------------------------------- ##
70## ANSIfy the C compiler whenever possible. ##
71## From Franc,ois Pinard ##
72## ----------------------------------------- ##
73
32d0add0 74# Copyright (C) 1996-2015 Free Software Foundation, Inc.
56157b4a
AC
75
76# This program is free software; you can redistribute it and/or modify
77# it under the terms of the GNU General Public License as published by
78# the Free Software Foundation; either version 2, or (at your option)
79# any later version.
80
81# This program is distributed in the hope that it will be useful,
82# but WITHOUT ANY WARRANTY; without even the implied warranty of
83# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
84# GNU General Public License for more details.
85
86# You should have received a copy of the GNU General Public License
7785b880 87# along with this program; if not, see <http://www.gnu.org/licenses/>.
56157b4a
AC
88
89# serial 1
90
91# @defmac AC_PROG_CC_STDC
92# @maindex PROG_CC_STDC
93# @ovindex CC
94# If the C compiler in not in ANSI C mode by default, try to add an option
95# to output variable @code{CC} to make it so. This macro tries various
96# options that select ANSI C on some system or another. It considers the
97# compiler to be in ANSI C mode if it handles function prototypes correctly.
98#
99# If you use this macro, you should check after calling it whether the C
100# compiler has been set to accept ANSI C; if not, the shell variable
101# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
102# code in ANSI C, you can make an un-ANSIfied copy of it by using the
103# program @code{ansi2knr}, which comes with Ghostscript.
104# @end defmac
105
106AC_DEFUN([AM_PROG_CC_STDC],
107[AC_REQUIRE([AC_PROG_CC])
108AC_BEFORE([$0], [AC_C_INLINE])
109AC_BEFORE([$0], [AC_C_CONST])
110dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
111dnl a magic option to avoid problems with ANSI preprocessor commands
112dnl like #elif.
113dnl FIXME: can't do this because then AC_AIX won't work due to a
114dnl circular dependency.
115dnl AC_BEFORE([$0], [AC_PROG_CPP])
116AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
117AC_CACHE_VAL(am_cv_prog_cc_stdc,
118[am_cv_prog_cc_stdc=no
119ac_save_CC="$CC"
120# Don't try gcc -ansi; that turns off useful extensions and
121# breaks some systems' header files.
122# AIX -qlanglvl=ansi
123# Ultrix and OSF/1 -std1
124# HP-UX 10.20 and later -Ae
125# HP-UX older versions -Aa -D_HPUX_SOURCE
126# SVR4 -Xc -D__EXTENSIONS__
127for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
128do
129 CC="$ac_save_CC $ac_arg"
130 AC_TRY_COMPILE(
131[#include <stdarg.h>
132#include <stdio.h>
133#include <sys/types.h>
134#include <sys/stat.h>
135/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
136struct buf { int x; };
137FILE * (*rcsopen) (struct buf *, struct stat *, int);
138static char *e (p, i)
139 char **p;
140 int i;
141{
142 return p[i];
143}
144static char *f (char * (*g) (char **, int), char **p, ...)
145{
146 char *s;
147 va_list v;
148 va_start (v,p);
149 s = g (p, va_arg (v,int));
150 va_end (v);
151 return s;
152}
153int test (int i, double x);
154struct s1 {int (*f) (int a);};
155struct s2 {int (*f) (double a);};
156int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
157int argc;
158char **argv;
159], [
160return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
161],
162[am_cv_prog_cc_stdc="$ac_arg"; break])
163done
164CC="$ac_save_CC"
165])
166if test -z "$am_cv_prog_cc_stdc"; then
167 AC_MSG_RESULT([none needed])
168else
169 AC_MSG_RESULT([$am_cv_prog_cc_stdc])
170fi
171case "x$am_cv_prog_cc_stdc" in
172 x|xno) ;;
173 *) CC="$CC $am_cv_prog_cc_stdc" ;;
174esac
175])
234b45d4 176
03b952fd
JB
177dnl Originally from Bruno Haible, but with some modifications
178dnl for the GDB project.
234b45d4
KB
179
180AC_DEFUN([AM_ICONV],
181[
182 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
183 dnl those with the standalone portable GNU libiconv installed).
184
185 AC_ARG_WITH([libiconv-prefix],
d2596e2e 186 AS_HELP_STRING([--with-libiconv-prefix=DIR], [search for libiconv in DIR/include and DIR/lib]), [
234b45d4 187 for dir in `echo "$withval" | tr : ' '`; do
94ae1714
TT
188 if test -d $dir/include; then LIBICONV_INCLUDE="-I$dir/include"; fi
189 if test -d $dir/lib; then LIBICONV_LIBDIR="-L$dir/lib"; fi
234b45d4
KB
190 done
191 ])
192
f18c4681 193 BUILD_LIBICONV_LIBDIRS="../libiconv/lib/.libs ../libiconv/lib/_libs"
6c7a06a3
TT
194 BUILD_LIBICONV_INCLUDE="-I../libiconv/include"
195
234b45d4
KB
196 AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
197 am_cv_func_iconv="no, consider installing GNU libiconv"
198 am_cv_lib_iconv=no
6c7a06a3 199 am_cv_use_build_libiconv=no
f0f20949 200 am_cv_build_libiconv_path=
94ae1714 201
4edb1e84
JB
202 # If libiconv is part of the build tree, then try using it over
203 # any system iconv.
204 if test -d ../libiconv; then
f18c4681
JB
205 for lib_dir in $BUILD_LIBICONV_LIBDIRS; do
206 am_save_LIBS="$LIBS"
207 am_save_CPPFLAGS="$CPPFLAGS"
208 LIBS="$LIBS $lib_dir/libiconv.a"
209 CPPFLAGS="$CPPFLAGS $BUILD_LIBICONV_INCLUDE"
210 AC_TRY_LINK([#include <stdlib.h>
234b45d4 211#include <iconv.h>],
f18c4681
JB
212 [iconv_t cd = iconv_open("","");
213 iconv(cd,NULL,NULL,NULL,NULL);
214 iconv_close(cd);],
215 am_cv_use_build_libiconv=yes
f0f20949 216 am_cv_build_libiconv_path=$lib_dir/libiconv.a
f18c4681
JB
217 am_cv_lib_iconv=yes
218 am_cv_func_iconv=yes)
219 LIBS="$am_save_LIBS"
220 CPPFLAGS="$am_save_CPPFLAGS"
221 if test "$am_cv_use_build_libiconv" = "yes"; then
f18c4681
JB
222 break
223 fi
224 done
234b45d4 225 fi
94ae1714 226
4edb1e84
JB
227 # Next, try to find iconv in libc.
228 if test "$am_cv_func_iconv" != yes; then
229 AC_TRY_LINK([#include <stdlib.h>
230#include <iconv.h>],
231 [iconv_t cd = iconv_open("","");
232 iconv(cd,NULL,NULL,NULL,NULL);
233 iconv_close(cd);],
234 am_cv_func_iconv=yes)
235 fi
236
237 # If iconv was not in libc, try -liconv. In this case, arrange to
238 # look in the libiconv prefix, if it was specified by the user.
239 if test "$am_cv_func_iconv" != yes; then
6c7a06a3 240 am_save_CPPFLAGS="$CPPFLAGS"
4edb1e84
JB
241 am_save_LIBS="$LIBS"
242 if test -n "$LIBICONV_INCLUDE"; then
243 CPPFLAGS="$CPPFLAGS $LIBICONV_INCLUDE"
244 LIBS="$LIBS $LIBICONV_LIBDIR"
245 fi
246 LIBS="$LIBS -liconv"
6c7a06a3
TT
247 AC_TRY_LINK([#include <stdlib.h>
248#include <iconv.h>],
249 [iconv_t cd = iconv_open("","");
250 iconv(cd,NULL,NULL,NULL,NULL);
251 iconv_close(cd);],
252 am_cv_lib_iconv=yes
253 am_cv_func_iconv=yes)
254 LIBS="$am_save_LIBS"
fc3b640d 255 CPPFLAGS="$am_save_CPPFLAGS"
6c7a06a3 256 fi
234b45d4 257 ])
94ae1714
TT
258
259 # Set the various flags based on the cache variables. We can't rely
260 # on the flags to remain set from the above code, due to caching.
fc3b640d
TT
261 LIBICONV=
262 if test "$am_cv_lib_iconv" = yes; then
263 LIBICONV="-liconv"
94ae1714
TT
264 else
265 LIBICONV_LIBDIR=
266 LIBICONV_INCLUDE=
fc3b640d
TT
267 fi
268 if test "$am_cv_use_build_libiconv" = yes; then
f0f20949 269 LIBICONV="$am_cv_build_libiconv_path"
f18c4681 270 LIBICONV_LIBDIR=""
fc3b640d
TT
271 LIBICONV_INCLUDE="$BUILD_LIBICONV_INCLUDE"
272 fi
273 CPPFLAGS="$CPPFLAGS $LIBICONV_INCLUDE"
274 LIBS="$LIBS $LIBICONV_LIBDIR $LIBICONV"
94ae1714 275
234b45d4
KB
276 if test "$am_cv_func_iconv" = yes; then
277 AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
278 AC_MSG_CHECKING([for iconv declaration])
279 AC_CACHE_VAL(am_cv_proto_iconv, [
280 AC_TRY_COMPILE([
281#include <stdlib.h>
282#include <iconv.h>
283extern
284#ifdef __cplusplus
285"C"
286#endif
287#if defined(__STDC__) || defined(__cplusplus)
288size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
289#else
290size_t iconv();
291#endif
292], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
293 am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
294 am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
295 AC_MSG_RESULT([$]{ac_t:-
296 }[$]am_cv_proto_iconv)
297 AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
298 [Define as const if the declaration of iconv() needs const.])
299 fi
234b45d4 300])
14abd0fb 301
5b5d99cf
JB
302dnl written by Guido Draheim <guidod@gmx.de>, original by Alexandre Oliva
303dnl Version 1.3 (2001/03/02)
304dnl source http://www.gnu.org/software/ac-archive/Miscellaneous/ac_define_dir.html
305
306AC_DEFUN([AC_DEFINE_DIR], [
307 test "x$prefix" = xNONE && prefix="$ac_default_prefix"
308 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
309 ac_define_dir=`eval echo [$]$2`
310 ac_define_dir=`eval echo [$]ac_define_dir`
311 ifelse($3, ,
312 AC_DEFINE_UNQUOTED($1, "$ac_define_dir"),
313 AC_DEFINE_UNQUOTED($1, "$ac_define_dir", $3))
314])
315
b9362cc7
AC
316dnl See whether we need a declaration for a function.
317dnl The result is highly dependent on the INCLUDES passed in, so make sure
318dnl to use a different cache variable name in this macro if it is invoked
319dnl in a different context somewhere else.
320dnl gcc_AC_CHECK_DECL(SYMBOL,
321dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, INCLUDES]]])
da78b0e7 322AC_DEFUN([gcc_AC_CHECK_DECL],
b9362cc7
AC
323[AC_MSG_CHECKING([whether $1 is declared])
324AC_CACHE_VAL(gcc_cv_have_decl_$1,
325[AC_TRY_COMPILE([$4],
326[#ifndef $1
327char *(*pfn) = (char *(*)) $1 ;
328#endif], eval "gcc_cv_have_decl_$1=yes", eval "gcc_cv_have_decl_$1=no")])
329if eval "test \"`echo '$gcc_cv_have_decl_'$1`\" = yes"; then
330 AC_MSG_RESULT(yes) ; ifelse([$2], , :, [$2])
331else
332 AC_MSG_RESULT(no) ; ifelse([$3], , :, [$3])
333fi
334])dnl
335
336dnl Check multiple functions to see whether each needs a declaration.
337dnl Arrange to define HAVE_DECL_<FUNCTION> to 0 or 1 as appropriate.
338dnl gcc_AC_CHECK_DECLS(SYMBOLS,
339dnl [ACTION-IF-NEEDED [, ACTION-IF-NOT-NEEDED [, INCLUDES]]])
da78b0e7 340AC_DEFUN([gcc_AC_CHECK_DECLS],
b9362cc7
AC
341[for ac_func in $1
342do
343changequote(, )dnl
344 ac_tr_decl=HAVE_DECL_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
345changequote([, ])dnl
346gcc_AC_CHECK_DECL($ac_func,
347 [AC_DEFINE_UNQUOTED($ac_tr_decl, 1) $2],
348 [AC_DEFINE_UNQUOTED($ac_tr_decl, 0) $3],
349dnl It is possible that the include files passed in here are local headers
350dnl which supply a backup declaration for the relevant prototype based on
351dnl the definition of (or lack of) the HAVE_DECL_ macro. If so, this test
352dnl will always return success. E.g. see libiberty.h's handling of
353dnl `basename'. To avoid this, we define the relevant HAVE_DECL_ macro to
354dnl 1 so that any local headers used do not provide their own prototype
355dnl during this test.
356#undef $ac_tr_decl
357#define $ac_tr_decl 1
358 $4
359)
360done
361dnl Automatically generate config.h entries via autoheader.
362if test x = y ; then
363 patsubst(translit([$1], [a-z], [A-Z]), [\w+],
364 [AC_DEFINE([HAVE_DECL_\&], 1,
365 [Define to 1 if we found this declaration otherwise define to 0.])])dnl
366fi
367])
368
5062cc19
KS
369dnl Find the location of the private Tcl headers
370dnl When Tcl is installed, this is TCL_INCLUDE_SPEC/tcl-private/generic
371dnl When Tcl is in the build tree, this is not needed.
372dnl
373dnl Note: you must use first use SC_LOAD_TCLCONFIG!
374AC_DEFUN([CY_AC_TCL_PRIVATE_HEADERS], [
375 AC_MSG_CHECKING([for Tcl private headers])
376 private_dir=""
377 dir=`echo ${TCL_INCLUDE_SPEC}/tcl-private/generic | sed -e s/-I//`
378 if test -f ${dir}/tclInt.h ; then
379 private_dir=${dir}
380 fi
381
382 if test x"${private_dir}" = x; then
383 AC_ERROR(could not find private Tcl headers)
384 else
385 TCL_PRIVATE_INCLUDE="-I${private_dir}"
386 AC_MSG_RESULT(${private_dir})
387 fi
388])
389
390dnl Find the location of the private Tk headers
391dnl When Tk is installed, this is TK_INCLUDE_SPEC/tk-private/generic
392dnl When Tk is in the build tree, this not needed.
393dnl
394dnl Note: you must first use SC_LOAD_TKCONFIG
395AC_DEFUN([CY_AC_TK_PRIVATE_HEADERS], [
396 AC_MSG_CHECKING([for Tk private headers])
397 private_dir=""
398 dir=`echo ${TK_INCLUDE_SPEC}/tk-private/generic | sed -e s/-I//`
399 if test -f ${dir}/tkInt.h; then
400 private_dir=${dir}
401 fi
402
403 if test x"${private_dir}" = x; then
404 AC_ERROR(could not find Tk private headers)
405 else
406 TK_PRIVATE_INCLUDE="-I${private_dir}"
407 AC_MSG_RESULT(${private_dir})
408 fi
409])
b14b1491 410
0c4a4063
DE
411dnl GDB_AC_DEFINE_RELOCATABLE([VARIABLE], [ARG-NAME], [SHELL-VARIABLE])
412dnl For use in processing directory values for --with-foo.
413dnl If the path in SHELL_VARIABLE is relative to the prefix, then the
b14b1491
TT
414dnl result is relocatable, then this will define the C macro
415dnl VARIABLE_RELOCATABLE to 1; otherwise it is defined as 0.
0c4a4063 416AC_DEFUN([GDB_AC_DEFINE_RELOCATABLE], [
b14b1491
TT
417 if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then
418 if test "x$prefix" = xNONE; then
419 test_prefix=/usr/local
420 else
421 test_prefix=$prefix
422 fi
423 else
424 test_prefix=$exec_prefix
425 fi
426 value=0
0c4a4063 427 case [$3] in
b14b1491
TT
428 "${test_prefix}"|"${test_prefix}/"*|\
429 '${exec_prefix}'|'${exec_prefix}/'*)
430 value=1
431 ;;
432 esac
433 AC_DEFINE_UNQUOTED([$1]_RELOCATABLE, $value, [Define if the $2 directory should be relocated when GDB is moved.])
0c4a4063
DE
434])
435
436dnl GDB_AC_WITH_DIR([VARIABLE], [ARG-NAME], [HELP], [DEFAULT])
437dnl Add a new --with option that defines a directory.
438dnl The result is stored in VARIABLE. AC_DEFINE_DIR is called
439dnl on this variable, as is AC_SUBST.
440dnl ARG-NAME is the base name of the argument (without "--with").
441dnl HELP is the help text to use.
442dnl If the user's choice is relative to the prefix, then the
443dnl result is relocatable, then this will define the C macro
444dnl VARIABLE_RELOCATABLE to 1; otherwise it is defined as 0.
445dnl DEFAULT is the default value, which is used if the user
446dnl does not specify the argument.
447AC_DEFUN([GDB_AC_WITH_DIR], [
448 AC_ARG_WITH([$2], AS_HELP_STRING([--with-][$2][=PATH], [$3]), [
449 [$1]=$withval], [[$1]=[$4]])
450 AC_DEFINE_DIR([$1], [$1], [$3])
451 AC_SUBST([$1])
452 GDB_AC_DEFINE_RELOCATABLE([$1], [$2], ${ac_define_dir})
b14b1491 453 ])
def63ff0
TT
454
455dnl GDB_AC_CHECK_BFD([MESSAGE], [CV], [CODE], [HEADER])
456dnl Check whether BFD provides a feature.
457dnl MESSAGE is the "checking" message to display.
458dnl CV is the name of the cache variable where the result is stored.
459dnl The result will be "yes" or "no".
460dnl CODE is some code to compile that checks for the feature.
461dnl A link test is run.
462dnl HEADER is the name of an extra BFD header to include.
463AC_DEFUN([GDB_AC_CHECK_BFD], [
464 OLD_CFLAGS=$CFLAGS
465 OLD_LDFLAGS=$LDFLAGS
466 OLD_LIBS=$LIBS
467 # Put the old CFLAGS/LDFLAGS last, in case the user's (C|LD)FLAGS
468 # points somewhere with bfd, with -I/foo/lib and -L/foo/lib. We
469 # always want our bfd.
470 CFLAGS="-I${srcdir}/../include -I../bfd -I${srcdir}/../bfd $CFLAGS"
5a2d4533
L
471 ZLIBDIR=`echo $zlibdir | sed 's,\$(top_builddir)/,,g'`
472 LDFLAGS="-L../bfd -L../libiberty $ZLIBDIR $LDFLAGS"
def63ff0 473 intl=`echo $LIBINTL | sed 's,${top_builddir}/,,g'`
711a72d3 474 LIBS="-lbfd -liberty -lz $intl $LIBS"
def63ff0
TT
475 AC_CACHE_CHECK([$1], [$2],
476 [AC_TRY_LINK(
477 [#include <stdlib.h>
478 #include "bfd.h"
479 #include "$4"
480 ],
481 [return $3;], [[$2]=yes], [[$2]=no])])
482 CFLAGS=$OLD_CFLAGS
483 LDFLAGS=$OLD_LDFLAGS
484 LIBS=$OLD_LIBS])
e76c5d17
DE
485
486dnl GDB_GUILE_PROGRAM_NAMES([PKG-CONFIG], [VERSION])
487dnl
488dnl Define and substitute 'GUILD' to contain the absolute file name of
489dnl the 'guild' command for VERSION, using PKG-CONFIG. (This is
490dnl similar to Guile's 'GUILE_PROGS' macro.)
491AC_DEFUN([GDB_GUILE_PROGRAM_NAMES], [
492 AC_CACHE_CHECK([for the absolute file name of the 'guild' command],
493 [ac_cv_guild_program_name],
d342a0da 494 [ac_cv_guild_program_name="`$1 --variable guild $2`"
e76c5d17
DE
495
496 # In Guile up to 2.0.11 included, guile-2.0.pc would not define
497 # the 'guild' and 'bindir' variables. In that case, try to guess
498 # what the program name is, at the risk of getting it wrong if
499 # Guile was configured with '--program-suffix' or similar.
500 if test "x$ac_cv_guild_program_name" = "x"; then
d342a0da 501 guile_exec_prefix="`$1 --variable exec_prefix $2`"
e76c5d17
DE
502 ac_cv_guild_program_name="$guile_exec_prefix/bin/guild"
503 fi
504 ])
505
506 if ! "$ac_cv_guild_program_name" --version >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
507 AC_MSG_ERROR(['$ac_cv_guild_program_name' appears to be unusable])
508 fi
509
510 GUILD="$ac_cv_guild_program_name"
511 AC_SUBST([GUILD])
512])
513
514dnl GDB_GUILD_TARGET_FLAG
515dnl
516dnl Compute the value of GUILD_TARGET_FLAG.
517dnl For native builds this is empty.
518dnl For cross builds this is --target=<host>.
519AC_DEFUN([GDB_GUILD_TARGET_FLAG], [
520 if test "$cross_compiling" = no; then
521 GUILD_TARGET_FLAG=
522 else
523 GUILD_TARGET_FLAG="--target=$host"
524 fi
525 AC_SUBST(GUILD_TARGET_FLAG)
526])
527
528dnl GDB_TRY_GUILD([SRC-FILE])
529dnl
530dnl We precompile the .scm files and install them with gdb, so make sure
531dnl guild works for this host.
532dnl The .scm files are precompiled for several reasons:
533dnl 1) To silence Guile during gdb startup (Guile's auto-compilation output
534dnl is unnecessarily verbose).
535dnl 2) Make gdb developers see compilation errors/warnings during the build,
536dnl and not leave it to later when the user runs gdb.
537dnl 3) As a convenience for the user, so that one copy of the files is built
538dnl instead of one copy per user.
539dnl
540dnl Make sure guild can handle this host by trying to compile SRC-FILE, and
541dnl setting ac_cv_guild_ok to yes or no.
542dnl Note that guild can handle cross-compilation.
543dnl It could happen that guild can't handle the host, but guile would still
544dnl work. For the time being we're conservative, and if guild doesn't work
545dnl we punt.
546AC_DEFUN([GDB_TRY_GUILD], [
547 AC_REQUIRE([GDB_GUILD_TARGET_FLAG])
548 AC_CACHE_CHECK([whether guild supports this host],
549 [ac_cv_guild_ok],
550 [echo "$ac_cv_guild_program_name compile $GUILD_TARGET_FLAG -o conftest.go $1" >&AS_MESSAGE_LOG_FD
551 if "$ac_cv_guild_program_name" compile $GUILD_TARGET_FLAG -o conftest.go "$1" >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
552 ac_cv_guild_ok=yes
553 else
554 ac_cv_guild_ok=no
555 fi])
556])
This page took 0.844438 seconds and 4 git commands to generate.