mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
197e01b6dc
* arm-tdep.c: * ia64-tdep.c: * i386-tdep.c: * hpread.c: * hppa-tdep.c: * hppa-hpux-tdep.c: * gnu-nat.c: * gdbtypes.c: * gdbarch.h: * gdbarch.c: * eval.c: * dwarf2read.c: * dbxread.c: * copying: * symfile.c: * stabsread.c: * sh64-tdep.c: * sh-tdep.c: * s390-tdep.c: * rs6000-tdep.c: * remote.c: * remote-mips.c: * mips-tdep.c: * mdebugread.c: * linux-nat.c: * infrun.c: * xcoffread.c: * win32-nat.c: * valops.c: * utils.c: * tracepoint.c: * target.c: * symtab.c: * c-exp.y: * ada-valprint.c: * ada-typeprint.c: * ada-lex.l: * ada-lang.h: * ada-lang.c: * ada-exp.y: * alphafbsd-tdep.c: * alphabsd-tdep.h: * alphabsd-tdep.c: * alphabsd-nat.c: * alpha-tdep.h: * alpha-tdep.c: * alpha-osf1-tdep.c: * alpha-nat.c: * alpha-mdebug-tdep.c: * alpha-linux-tdep.c: * alpha-linux-nat.c: * aix-thread.c: * abug-rom.c: * arch-utils.c: * annotate.h: * annotate.c: * amd64obsd-tdep.c: * amd64obsd-nat.c: * amd64nbsd-tdep.c: * amd64nbsd-nat.c: * amd64fbsd-tdep.c: * amd64fbsd-nat.c: * amd64bsd-nat.c: * amd64-tdep.h: * amd64-tdep.c: * amd64-sol2-tdep.c: * amd64-nat.h: * amd64-nat.c: * amd64-linux-tdep.c: * amd64-linux-nat.c: * alphanbsd-tdep.c: * block.h: * block.c: * bfd-target.h: * bfd-target.c: * bcache.h: * bcache.c: * ax.h: * ax-general.c: * ax-gdb.h: * ax-gdb.c: * avr-tdep.c: * auxv.h: * auxv.c: * armnbsd-tdep.c: * armnbsd-nat.c: * arm-tdep.h: * arm-linux-nat.c: * arch-utils.h: * charset.c: * call-cmds.h: * c-valprint.c: * c-typeprint.c: * c-lang.h: * c-lang.c: * buildsym.h: * buildsym.c: * bsd-uthread.h: * bsd-uthread.c: * bsd-kvm.h: * bsd-kvm.c: * breakpoint.h: * core-regset.c: * core-aout.c: * completer.h: * completer.c: * complaints.h: * complaints.c: * command.h: * coffread.c: * coff-solib.h: * coff-solib.c: * coff-pe-read.h: * coff-pe-read.c: * cli-out.h: * cli-out.c: * charset.h: * dink32-rom.c: * dictionary.h: * dictionary.c: * demangle.c: * defs.h: * dcache.h: * dcache.c: * d10v-tdep.c: * cpu32bug-rom.c: * cp-valprint.c: * cp-support.h: * cp-support.c: * cp-namespace.c: * cp-abi.h: * cp-abi.c: * corelow.c: * corefile.c: * environ.c: * elfread.c: * dwarfread.c: * dwarf2loc.c: * dwarf2expr.h: * dwarf2expr.c: * dwarf2-frame.h: * dwarf2-frame.c: * dve3900-rom.c: * dummy-frame.h: * dummy-frame.c: * dsrec.c: * doublest.h: * doublest.c: * disasm.h: * disasm.c: * fork-child.c: * findvar.c: * fbsd-nat.h: * fbsd-nat.c: * f-valprint.c: * f-typeprint.c: * f-lang.h: * f-lang.c: * expression.h: * expprint.c: * exec.h: * exec.c: * exceptions.h: * exceptions.c: * event-top.h: * event-top.c: * event-loop.h: * event-loop.c: * gdb.c: * gdb-stabs.h: * gdb-events.h: * gdb-events.c: * gcore.c: * frv-tdep.h: * frv-tdep.c: * frv-linux-tdep.c: * frame.h: * frame.c: * frame-unwind.h: * frame-unwind.c: * frame-base.h: * frame-base.c: * gdb_vfork.h: * gdb_thread_db.h: * gdb_string.h: * gdb_stat.h: * gdb_regex.h: * gdb_ptrace.h: * gdb_proc_service.h: * gdb_obstack.h: * gdb_locale.h: * gdb_dirent.h: * gdb_curses.h: * gdb_assert.h: * gdbarch.sh: * gdb.h: * hpux-thread.c: * hppabsd-nat.c: * hppa-tdep.h: * hpacc-abi.c: * h8300-tdep.c: * gregset.h: * go32-nat.c: * gnu-v3-abi.c: * gnu-v2-abi.h: * gnu-v2-abi.c: * gnu-nat.h: * glibc-tdep.c: * gdbtypes.h: * gdbcore.h: * gdbcmd.h: * i386nbsd-tdep.c: * i386nbsd-nat.c: * i386gnu-tdep.c: * i386gnu-nat.c: * i386fbsd-tdep.c: * i386fbsd-nat.c: * i386bsd-tdep.c: * i386bsd-nat.h: * i386bsd-nat.c: * i386-tdep.h: * i386-sol2-nat.c: * i386-nto-tdep.c: * i386-nat.c: * i386-linux-tdep.h: * i386-linux-tdep.c: * i386-linux-nat.c: * i386-cygwin-tdep.c: * inf-ttrace.c: * inf-ptrace.h: * inf-ptrace.c: * inf-loop.h: * inf-loop.c: * inf-child.h: * inf-child.c: * ia64-tdep.h: * ia64-linux-nat.c: * i387-tdep.h: * i387-tdep.c: * i386v4-nat.c: * i386v-nat.c: * i386obsd-tdep.c: * i386obsd-nat.c: * kod.c: * jv-valprint.c: * jv-typeprint.c: * jv-lang.h: * jv-lang.c: * irix5-nat.c: * iq2000-tdep.c: * interps.h: * interps.c: * inftarg.c: * inflow.h: * inflow.c: * inferior.h: * infcmd.c: * infcall.h: * infcall.c: * inf-ttrace.h: * m32r-tdep.h: * m32r-tdep.c: * m32r-rom.c: * m32r-linux-tdep.c: * m32r-linux-nat.c: * m2-valprint.c: * m2-typeprint.c: * m2-lang.h: * m2-lang.c: * lynx-nat.c: * linux-thread-db.c: * linux-nat.h: * linespec.c: * libunwind-frame.h: * libunwind-frame.c: * language.h: * language.c: * macroexp.c: * macrocmd.c: * m88kbsd-nat.c: * m88k-tdep.h: * m88k-tdep.c: * m68klinux-tdep.c: * m68klinux-nat.c: * m68kbsd-tdep.c: * m68kbsd-nat.c: * m68k-tdep.h: * m68k-tdep.c: * mips-linux-nat.c: * mips-irix-tdep.c: * minsyms.c: * memattr.h: * memattr.c: * mem-break.c: * mdebugread.h: * main.h: * main.c: * macrotab.h: * macrotab.c: * macroscope.h: * macroscope.c: * macroexp.h: * nbsd-tdep.c: * mt-tdep.c: * monitor.h: * monitor.c: * mn10300-tdep.h: * mn10300-tdep.c: * mn10300-linux-tdep.c: * mipsv4-nat.c: * mipsread.c: * mipsnbsd-tdep.h: * mipsnbsd-tdep.c: * mipsnbsd-nat.c: * mips64obsd-tdep.c: * mips64obsd-nat.c: * mips-tdep.h: * mips-mdebug-tdep.c: * mips-linux-tdep.c: * osabi.h: * osabi.c: * ocd.h: * ocd.c: * observer.c: * objfiles.h: * objfiles.c: * objc-lang.h: * objc-lang.c: * objc-exp.y: * nto-tdep.h: * nto-tdep.c: * nto-procfs.c: * nlmread.c: * nbsd-tdep.h: * ppcobsd-tdep.c: * ppcobsd-nat.c: * ppcnbsd-tdep.h: * ppcnbsd-tdep.c: * ppcnbsd-nat.c: * ppcbug-rom.c: * ppc-tdep.h: * ppc-sysv-tdep.c: * ppc-linux-tdep.c: * ppc-linux-nat.c: * ppc-bdm.c: * parser-defs.h: * parse.c: * p-valprint.c: * p-typeprint.c: * p-lang.h: * p-lang.c: * remote-fileio.h: * remote-fileio.c: * remote-est.c: * remote-e7000.c: * regset.h: * regset.c: * reggroups.h: * reggroups.c: * regcache.h: * regcache.c: * proc-why.c: * proc-service.c: * proc-events.c: * printcmd.c: * ppcobsd-tdep.h: * sentinel-frame.h: * sentinel-frame.c: * scm-valprint.c: * scm-tags.h: * scm-lang.h: * scm-lang.c: * scm-exp.c: * s390-tdep.h: * rom68k-rom.c: * remote.h: * remote-utils.c: * remote-st.c: * remote-sim.c: * remote-sds.c: * remote-rdp.c: * remote-rdi.c: * remote-hms.c: * sim-regno.h: * shnbsd-tdep.h: * shnbsd-tdep.c: * shnbsd-nat.c: * sh-tdep.h: * serial.h: * serial.c: * ser-unix.h: * ser-unix.c: * ser-tcp.c: * ser-pipe.c: * ser-go32.c: * ser-e7kpc.c: * ser-base.h: * ser-base.c: * solib.c: * solib-svr4.h: * solib-svr4.c: * solib-sunos.c: * solib-som.h: * solib-som.c: * solib-pa64.h: * solib-pa64.c: * solib-osf.c: * solib-null.c: * solib-legacy.c: * solib-irix.c: * solib-frv.c: * solib-aix5.c: * sol-thread.c: * sparc64-linux-tdep.c: * sparc64-linux-nat.c: * sparc-tdep.h: * sparc-tdep.c: * sparc-sol2-tdep.c: * sparc-sol2-nat.c: * sparc-nat.h: * sparc-nat.c: * sparc-linux-tdep.c: * sparc-linux-nat.c: * source.h: * source.c: * somread.c: * solist.h: * solib.h: * std-regs.c: * stack.h: * stack.c: * stabsread.h: * sparcobsd-tdep.c: * sparcnbsd-tdep.c: * sparcnbsd-nat.c: * sparc64obsd-tdep.c: * sparc64nbsd-tdep.c: * sparc64nbsd-nat.c: * sparc64fbsd-tdep.c: * sparc64fbsd-nat.c: * sparc64-tdep.h: * sparc64-tdep.c: * sparc64-sol2-tdep.c: * sparc64-nat.c: * ui-file.c: * typeprint.h: * typeprint.c: * tramp-frame.h: * tramp-frame.c: * trad-frame.h: * trad-frame.c: * tracepoint.h: * top.c: * tobs.inc: * thread.c: * terminal.h: * target.h: * symfile.h: * stop-gdb.c: * vaxbsd-nat.c: * vax-tdep.h: * vax-tdep.c: * vax-nat.c: * varobj.h: * varobj.c: * value.h: * value.c: * valprint.h: * valprint.c: * v850-tdep.c: * uw-thread.c: * user-regs.c: * ui-out.h: * ui-out.c: * ui-file.h: * xcoffsolib.h: * xcoffsolib.c: * wrapper.c: * wince.c: * wince-stub.h: * wince-stub.c: * vaxobsd-tdep.c: * vaxnbsd-tdep.c: * gdb_gcore.sh: * copying.c: * configure.ac: * aclocal.m4: * acinclude.m4: * reply_mig_hack.awk: * observer.sh: * gdb_mbuild.sh: * arm-linux-tdep.c: * blockframe.c: * dbug-rom.c: * environ.h: * dwarf2loc.h: * gdb-events.sh: * glibc-tdep.h: * gdb_wait.h: * gdbthread.h: * i386-sol2-tdep.c: * hppabsd-tdep.c: * hppa-linux-nat.c: * hppa-hpux-nat.c: * ia64-linux-tdep.c: * infptrace.c: * linespec.h: * maint.c: * mips-mdebug-tdep.h: * remote-m32r-sdi.c: * s390-nat.c: * rs6000-nat.c: * remote-utils.h: * sh3-rom.c: * sh-linux-tdep.c: * top.h: * symtab.h: * symmisc.c: * symfile-mem.c: * srec.h: * user-regs.h: * version.h: * valarith.c: * xstormy16-tdep.c: * wrapper.h: * Makefile.in: * f-exp.y: * cris-tdep.c: * cp-name-parser.y: * procfs.c: * proc-utils.h: * proc-flags.c: * proc-api.c: * p-exp.y: * m68hc11-tdep.c: * m2-exp.y: * kod.h: * kod-cisco.c: * jv-exp.y: * hppa-linux-tdep.c: Add (c) after Copyright. Update the FSF address.
990 lines
30 KiB
Plaintext
990 lines
30 KiB
Plaintext
dnl written by Rob Savoye <rob@cygnus.com> for Cygnus Support
|
|
dnl major rewriting for Tcl 7.5 by Don Libes <libes@nist.gov>
|
|
|
|
dnl gdb/configure.in uses BFD_NEED_DECLARATION, so get its definition.
|
|
sinclude(../bfd/bfd.m4)
|
|
|
|
dnl This gets the standard macros, like the TCL, TK, etc ones.
|
|
sinclude(../config/acinclude.m4)
|
|
|
|
sinclude(../gettext.m4)
|
|
dnl The lines below arrange for aclocal not to bring gettext.m4's
|
|
dnl CY_GNU_GETTEXT into aclocal.m4.
|
|
ifelse(yes,no,[
|
|
AC_DEFUN([CY_GNU_GETTEXT],)
|
|
])
|
|
|
|
dnl CYGNUS LOCAL: This gets the right posix flag for gcc
|
|
AC_DEFUN([CY_AC_TCL_LYNX_POSIX],
|
|
[AC_REQUIRE([AC_PROG_CC])AC_REQUIRE([AC_PROG_CPP])
|
|
AC_MSG_CHECKING([if running LynxOS])
|
|
AC_CACHE_VAL(ac_cv_os_lynx,
|
|
[AC_EGREP_CPP(yes,
|
|
[/*
|
|
* The old Lynx "cc" only defines "Lynx", but the newer one uses "__Lynx__"
|
|
*/
|
|
#if defined(__Lynx__) || defined(Lynx)
|
|
yes
|
|
#endif
|
|
], ac_cv_os_lynx=yes, ac_cv_os_lynx=no)])
|
|
#
|
|
if test "$ac_cv_os_lynx" = "yes" ; then
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(LYNX)
|
|
AC_MSG_CHECKING([whether -mposix or -X is available])
|
|
AC_CACHE_VAL(ac_cv_c_posix_flag,
|
|
[AC_TRY_COMPILE(,[
|
|
/*
|
|
* This flag varies depending on how old the compiler is.
|
|
* -X is for the old "cc" and "gcc" (based on 1.42).
|
|
* -mposix is for the new gcc (at least 2.5.8).
|
|
*/
|
|
#if defined(__GNUC__) && __GNUC__ >= 2
|
|
choke me
|
|
#endif
|
|
], ac_cv_c_posix_flag=" -mposix", ac_cv_c_posix_flag=" -X")])
|
|
CC="$CC $ac_cv_c_posix_flag"
|
|
AC_MSG_RESULT($ac_cv_c_posix_flag)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
])
|
|
|
|
#
|
|
# Sometimes the native compiler is a bogus stub for gcc or /usr/ucb/cc. This
|
|
# makes configure think it's cross compiling. If --target wasn't used, then
|
|
# we can't configure, so something is wrong. We don't use the cache
|
|
# here cause if somebody fixes their compiler install, we want this to work.
|
|
AC_DEFUN([CY_AC_C_WORKS],
|
|
[# If we cannot compile and link a trivial program, we can't expect anything to work
|
|
AC_MSG_CHECKING(whether the compiler ($CC) actually works)
|
|
AC_TRY_COMPILE(, [/* don't need anything here */],
|
|
c_compiles=yes, c_compiles=no)
|
|
|
|
AC_TRY_LINK(, [/* don't need anything here */],
|
|
c_links=yes, c_links=no)
|
|
|
|
if test x"${c_compiles}" = x"no" ; then
|
|
AC_MSG_ERROR(the native compiler is broken and won't compile.)
|
|
fi
|
|
|
|
if test x"${c_links}" = x"no" ; then
|
|
AC_MSG_ERROR(the native compiler is broken and won't link.)
|
|
fi
|
|
AC_MSG_RESULT(yes)
|
|
])
|
|
|
|
AC_DEFUN([CY_AC_PATH_TCLH], [
|
|
#
|
|
# Ok, lets find the tcl source trees so we can use the headers
|
|
# Warning: transition of version 9 to 10 will break this algorithm
|
|
# because 10 sorts before 9. We also look for just tcl. We have to
|
|
# be careful that we don't match stuff like tclX by accident.
|
|
# the alternative search directory is involked by --with-tclinclude
|
|
#
|
|
|
|
no_tcl=true
|
|
AC_MSG_CHECKING(for Tcl private headers. dir=${configdir})
|
|
AC_ARG_WITH(tclinclude, [ --with-tclinclude=DIR Directory where tcl private headers are], with_tclinclude=${withval})
|
|
AC_CACHE_VAL(ac_cv_c_tclh,[
|
|
# first check to see if --with-tclinclude was specified
|
|
if test x"${with_tclinclude}" != x ; then
|
|
if test -f ${with_tclinclude}/tclInt.h ; then
|
|
ac_cv_c_tclh=`(cd ${with_tclinclude}; pwd)`
|
|
elif test -f ${with_tclinclude}/generic/tclInt.h ; then
|
|
ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_tclinclude} directory doesn't contain private headers])
|
|
fi
|
|
fi
|
|
|
|
# next check if it came with Tcl configuration file
|
|
if test x"${ac_cv_c_tclconfig}" = x ; then
|
|
if test -f $ac_cv_c_tclconfig/../generic/tclInt.h ; then
|
|
ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/..; pwd)`
|
|
fi
|
|
fi
|
|
|
|
# next check in private source directory
|
|
#
|
|
# since ls returns lowest version numbers first, reverse its output
|
|
if test x"${ac_cv_c_tclh}" = x ; then
|
|
for i in \
|
|
${srcdir}/../tcl \
|
|
`ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` \
|
|
${srcdir}/../../tcl \
|
|
`ls -dr ${srcdir}/../../tcl[[7-9]]* 2>/dev/null` \
|
|
${srcdir}/../../../tcl \
|
|
`ls -dr ${srcdir}/../../../tcl[[7-9]]* 2>/dev/null ` ; do
|
|
if test -f $i/generic/tclInt.h ; then
|
|
ac_cv_c_tclh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# finally check in a few common install locations
|
|
#
|
|
# since ls returns lowest version numbers first, reverse its output
|
|
if test x"${ac_cv_c_tclh}" = x ; then
|
|
for i in \
|
|
`ls -dr /usr/local/src/tcl[[7-9]]* 2>/dev/null` \
|
|
`ls -dr /usr/local/lib/tcl[[7-9]]* 2>/dev/null` \
|
|
/usr/local/src/tcl \
|
|
/usr/local/lib/tcl \
|
|
${prefix}/include ; do
|
|
if test -f $i/generic/tclInt.h ; then
|
|
ac_cv_c_tclh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# see if one is installed
|
|
if test x"${ac_cv_c_tclh}" = x ; then
|
|
AC_HEADER_CHECK(tclInt.h, ac_cv_c_tclh=installed, ac_cv_c_tclh="")
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_tclh}" = x ; then
|
|
TCLHDIR="# no Tcl private headers found"
|
|
AC_MSG_ERROR([Can't find Tcl private headers])
|
|
fi
|
|
if test x"${ac_cv_c_tclh}" != x ; then
|
|
no_tcl=""
|
|
if test x"${ac_cv_c_tclh}" = x"installed" ; then
|
|
AC_MSG_RESULT([is installed])
|
|
TCLHDIR=""
|
|
else
|
|
AC_MSG_RESULT([found in ${ac_cv_c_tclh}])
|
|
# this hack is cause the TCLHDIR won't print if there is a "-I" in it.
|
|
TCLHDIR="-I${ac_cv_c_tclh}"
|
|
fi
|
|
fi
|
|
|
|
AC_SUBST(TCLHDIR)
|
|
])
|
|
|
|
|
|
AC_DEFUN([CY_AC_PATH_TCLCONFIG], [
|
|
#
|
|
# Ok, lets find the tcl configuration
|
|
# First, look for one uninstalled.
|
|
# the alternative search directory is invoked by --with-tclconfig
|
|
#
|
|
|
|
if test x"${no_tcl}" = x ; then
|
|
# we reset no_tcl in case something fails here
|
|
no_tcl=true
|
|
AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR Directory containing tcl configuration (tclConfig.sh)],
|
|
with_tclconfig=${withval})
|
|
AC_MSG_CHECKING([for Tcl configuration])
|
|
AC_CACHE_VAL(ac_cv_c_tclconfig,[
|
|
|
|
# First check to see if --with-tclconfig was specified.
|
|
if test x"${with_tclconfig}" != x ; then
|
|
if test -f "${with_tclconfig}/tclConfig.sh" ; then
|
|
ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh])
|
|
fi
|
|
fi
|
|
|
|
# then check for a private Tcl installation
|
|
if test x"${ac_cv_c_tclconfig}" = x ; then
|
|
for i in \
|
|
../tcl \
|
|
`ls -dr ../tcl[[7-9]]* 2>/dev/null` \
|
|
../../tcl \
|
|
`ls -dr ../../tcl[[7-9]]* 2>/dev/null` \
|
|
../../../tcl \
|
|
`ls -dr ../../../tcl[[7-9]]* 2>/dev/null` ; do
|
|
if test -f "$i/${configdir}/tclConfig.sh" ; then
|
|
ac_cv_c_tclconfig=`(cd $i/${configdir}; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few common install locations
|
|
if test x"${ac_cv_c_tclconfig}" = x ; then
|
|
for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
|
|
if test -f "$i/tclConfig.sh" ; then
|
|
ac_cv_c_tclconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few other private locations
|
|
if test x"${ac_cv_c_tclconfig}" = x ; then
|
|
for i in \
|
|
${srcdir}/../tcl \
|
|
`ls -dr ${srcdir}/../tcl[[7-9]]* 2>/dev/null` ; do
|
|
if test -f "$i/${configdir}/tclConfig.sh" ; then
|
|
ac_cv_c_tclconfig=`(cd $i/${configdir}; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_tclconfig}" = x ; then
|
|
TCLCONFIG="# no Tcl configs found"
|
|
AC_MSG_WARN(Can't find Tcl configuration definitions)
|
|
else
|
|
no_tcl=
|
|
TCLCONFIG=${ac_cv_c_tclconfig}/tclConfig.sh
|
|
AC_MSG_RESULT(found $TCLCONFIG)
|
|
fi
|
|
fi
|
|
])
|
|
|
|
# Defined as a separate macro so we don't have to cache the values
|
|
# from PATH_TCLCONFIG (because this can also be cached).
|
|
AC_DEFUN([CY_AC_LOAD_TCLCONFIG], [
|
|
. $TCLCONFIG
|
|
|
|
AC_SUBST(TCL_VERSION)
|
|
AC_SUBST(TCL_MAJOR_VERSION)
|
|
AC_SUBST(TCL_MINOR_VERSION)
|
|
AC_SUBST(TCL_CC)
|
|
AC_SUBST(TCL_DEFS)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TCL_LIB_FILE)
|
|
|
|
dnl don't export, not used outside of configure
|
|
dnl AC_SUBST(TCL_LIBS)
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TCL_PREFIX)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TCL_EXEC_PREFIX)
|
|
|
|
AC_SUBST(TCL_SHLIB_CFLAGS)
|
|
AC_SUBST(TCL_SHLIB_LD)
|
|
dnl don't export, not used outside of configure
|
|
AC_SUBST(TCL_SHLIB_LD_LIBS)
|
|
AC_SUBST(TCL_SHLIB_SUFFIX)
|
|
dnl not used, don't export to save symbols
|
|
AC_SUBST(TCL_DL_LIBS)
|
|
AC_SUBST(TCL_LD_FLAGS)
|
|
dnl don't export, not used outside of configure
|
|
AC_SUBST(TCL_LD_SEARCH_FLAGS)
|
|
AC_SUBST(TCL_CC_SEARCH_FLAGS)
|
|
AC_SUBST(TCL_COMPAT_OBJS)
|
|
AC_SUBST(TCL_RANLIB)
|
|
AC_SUBST(TCL_BUILD_LIB_SPEC)
|
|
AC_SUBST(TCL_LIB_SPEC)
|
|
AC_SUBST(TCL_LIB_VERSIONS_OK)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TCL_SHARED_LIB_SUFFIX)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TCL_UNSHARED_LIB_SUFFIX)
|
|
])
|
|
|
|
# Warning: Tk definitions are very similar to Tcl definitions but
|
|
# are not precisely the same. There are a couple of differences,
|
|
# so don't do changes to Tcl thinking you can cut and paste it do
|
|
# the Tk differences and later simply substitute "Tk" for "Tcl".
|
|
# Known differences:
|
|
# - Acceptable Tcl major version #s is 7-9 while Tk is 4-9
|
|
# - Searching for Tcl includes looking for tclInt.h, Tk looks for tk.h
|
|
# - Computing major/minor versions is different because Tk depends on
|
|
# headers to Tcl, Tk, and X.
|
|
# - Symbols in tkConfig.sh are different than tclConfig.sh
|
|
# - Acceptable for Tk to be missing but not Tcl.
|
|
|
|
AC_DEFUN([CY_AC_PATH_TKH], [
|
|
#
|
|
# Ok, lets find the tk source trees so we can use the headers
|
|
# If the directory (presumably symlink) named "tk" exists, use that one
|
|
# in preference to any others. Same logic is used when choosing library
|
|
# and again with Tcl. The search order is the best place to look first, then in
|
|
# decreasing significance. The loop breaks if the trigger file is found.
|
|
# Note the gross little conversion here of srcdir by cd'ing to the found
|
|
# directory. This converts the path from a relative to an absolute, so
|
|
# recursive cache variables for the path will work right. We check all
|
|
# the possible paths in one loop rather than many seperate loops to speed
|
|
# things up.
|
|
# the alternative search directory is involked by --with-tkinclude
|
|
#
|
|
no_tk=true
|
|
AC_MSG_CHECKING(for Tk private headers)
|
|
AC_ARG_WITH(tkinclude, [ --with-tkinclude=DIR Directory where tk private headers are], with_tkinclude=${withval})
|
|
AC_CACHE_VAL(ac_cv_c_tkh,[
|
|
# first check to see if --with-tkinclude was specified
|
|
if test x"${with_tkinclude}" != x ; then
|
|
if test -f ${with_tkinclude}/tk.h ; then
|
|
ac_cv_c_tkh=`(cd ${with_tkinclude}; pwd)`
|
|
elif test -f ${with_tkinclude}/generic/tk.h ; then
|
|
ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_tkinclude} directory doesn't contain private headers])
|
|
fi
|
|
fi
|
|
|
|
# next check if it came with Tk configuration file
|
|
if test x"${ac_cv_c_tkconfig}" = x ; then
|
|
if test -f $ac_cv_c_tkconfig/../generic/tk.h ; then
|
|
ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/..; pwd)`
|
|
fi
|
|
fi
|
|
|
|
# next check in private source directory
|
|
#
|
|
# since ls returns lowest version numbers first, reverse its output
|
|
if test x"${ac_cv_c_tkh}" = x ; then
|
|
for i in \
|
|
${srcdir}/../tk \
|
|
`ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` \
|
|
${srcdir}/../../tk \
|
|
`ls -dr ${srcdir}/../../tk[[4-9]]* 2>/dev/null` \
|
|
${srcdir}/../../../tk \
|
|
`ls -dr ${srcdir}/../../../tk[[4-9]]* 2>/dev/null ` ; do
|
|
if test -f $i/generic/tk.h ; then
|
|
ac_cv_c_tkh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# finally check in a few common install locations
|
|
#
|
|
# since ls returns lowest version numbers first, reverse its output
|
|
if test x"${ac_cv_c_tkh}" = x ; then
|
|
for i in \
|
|
`ls -dr /usr/local/src/tk[[4-9]]* 2>/dev/null` \
|
|
`ls -dr /usr/local/lib/tk[[4-9]]* 2>/dev/null` \
|
|
/usr/local/src/tk \
|
|
/usr/local/lib/tk \
|
|
${prefix}/include ; do
|
|
if test -f $i/generic/tk.h ; then
|
|
ac_cv_c_tkh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# see if one is installed
|
|
if test x"${ac_cv_c_tkh}" = x ; then
|
|
AC_HEADER_CHECK(tk.h, ac_cv_c_tkh=installed, ac_cv_c_tkh="")
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_tkh}" != x ; then
|
|
no_tk=""
|
|
if test x"${ac_cv_c_tkh}" = x"installed" ; then
|
|
AC_MSG_RESULT([is installed])
|
|
TKHDIR=""
|
|
else
|
|
AC_MSG_RESULT([found in ${ac_cv_c_tkh}])
|
|
# this hack is cause the TKHDIR won't print if there is a "-I" in it.
|
|
TKHDIR="-I${ac_cv_c_tkh}"
|
|
fi
|
|
else
|
|
TKHDIR="# no Tk directory found"
|
|
AC_MSG_WARN([Can't find Tk private headers])
|
|
no_tk=true
|
|
fi
|
|
|
|
AC_SUBST(TKHDIR)
|
|
])
|
|
|
|
|
|
AC_DEFUN([CY_AC_PATH_TKCONFIG], [
|
|
#
|
|
# Ok, lets find the tk configuration
|
|
# First, look for one uninstalled.
|
|
# the alternative search directory is invoked by --with-tkconfig
|
|
#
|
|
|
|
if test x"${no_tk}" = x ; then
|
|
# we reset no_tk in case something fails here
|
|
no_tk=true
|
|
AC_ARG_WITH(tkconfig, [ --with-tkconfig=DIR Directory containing tk configuration (tkConfig.sh)],
|
|
with_tkconfig=${withval})
|
|
AC_MSG_CHECKING([for Tk configuration])
|
|
AC_CACHE_VAL(ac_cv_c_tkconfig,[
|
|
|
|
# First check to see if --with-tkconfig was specified.
|
|
if test x"${with_tkconfig}" != x ; then
|
|
if test -f "${with_tkconfig}/tkConfig.sh" ; then
|
|
ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh])
|
|
fi
|
|
fi
|
|
|
|
# then check for a private Tk library
|
|
if test x"${ac_cv_c_tkconfig}" = x ; then
|
|
for i in \
|
|
../tk \
|
|
`ls -dr ../tk[[4-9]]* 2>/dev/null` \
|
|
../../tk \
|
|
`ls -dr ../../tk[[4-9]]* 2>/dev/null` \
|
|
../../../tk \
|
|
`ls -dr ../../../tk[[4-9]]* 2>/dev/null` ; do
|
|
if test -f "$i/${configdir}/tkConfig.sh" ; then
|
|
ac_cv_c_tkconfig=`(cd $i/${configdir}; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few common install locations
|
|
if test x"${ac_cv_c_tkconfig}" = x ; then
|
|
for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
|
|
if test -f "$i/tkConfig.sh" ; then
|
|
ac_cv_c_tkconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few other private locations
|
|
if test x"${ac_cv_c_tkconfig}" = x ; then
|
|
for i in \
|
|
${srcdir}/../tk \
|
|
`ls -dr ${srcdir}/../tk[[4-9]]* 2>/dev/null` ; do
|
|
if test -f "$i/${configdir}/tkConfig.sh" ; then
|
|
ac_cv_c_tkconfig=`(cd $i/${configdir}; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_tkconfig}" = x ; then
|
|
TKCONFIG="# no Tk configs found"
|
|
AC_MSG_WARN(Can't find Tk configuration definitions)
|
|
else
|
|
no_tk=
|
|
TKCONFIG=${ac_cv_c_tkconfig}/tkConfig.sh
|
|
AC_MSG_RESULT(found $TKCONFIG)
|
|
fi
|
|
fi
|
|
|
|
])
|
|
|
|
# Defined as a separate macro so we don't have to cache the values
|
|
# from PATH_TKCONFIG (because this can also be cached).
|
|
AC_DEFUN([CY_AC_LOAD_TKCONFIG], [
|
|
if test -f "$TKCONFIG" ; then
|
|
. $TKCONFIG
|
|
fi
|
|
|
|
AC_SUBST(TK_VERSION)
|
|
dnl not actually used, don't export to save symbols
|
|
dnl AC_SUBST(TK_MAJOR_VERSION)
|
|
dnl AC_SUBST(TK_MINOR_VERSION)
|
|
AC_SUBST(TK_DEFS)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TK_LIB_FILE)
|
|
|
|
dnl not used outside of configure
|
|
dnl AC_SUBST(TK_LIBS)
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TK_PREFIX)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(TK_EXEC_PREFIX)
|
|
|
|
AC_SUBST(TK_BUILD_INCLUDES)
|
|
AC_SUBST(TK_XINCLUDES)
|
|
AC_SUBST(TK_XLIBSW)
|
|
AC_SUBST(TK_BUILD_LIB_SPEC)
|
|
AC_SUBST(TK_LIB_SPEC)
|
|
])
|
|
|
|
# check for Itcl headers.
|
|
|
|
AC_DEFUN([CY_AC_PATH_ITCLCONFIG], [
|
|
#
|
|
# Ok, lets find the itcl configuration
|
|
# First, look for one uninstalled.
|
|
# the alternative search directory is invoked by --with-itclconfig
|
|
#
|
|
|
|
if test x"${no_itcl}" = x ; then
|
|
# we reset no_itcl in case something fails here
|
|
no_itcl=true
|
|
AC_ARG_WITH(itclconfig, [ --with-itclconfig Directory containing itcl configuration (itclConfig.sh)],
|
|
with_itclconfig=${withval})
|
|
AC_MSG_CHECKING([for Itcl configuration])
|
|
AC_CACHE_VAL(ac_cv_c_itclconfig,[
|
|
|
|
# First check to see if --with-itclconfig was specified.
|
|
if test x"${with_itclconfig}" != x ; then
|
|
if test -f "${with_itclconfig}/itclConfig.sh" ; then
|
|
ac_cv_c_itclconfig=`(cd ${with_itclconfig}; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_itclconfig} directory doesn't contain itclConfig.sh])
|
|
fi
|
|
fi
|
|
|
|
# then check for a private Itcl library
|
|
if test x"${ac_cv_c_itclconfig}" = x ; then
|
|
for i in \
|
|
../itcl/itcl \
|
|
`ls -dr ../itcl[[4-9]]*/itcl 2>/dev/null` \
|
|
../../itcl \
|
|
`ls -dr ../../itcl[[4-9]]*/itcl 2>/dev/null` \
|
|
../../../itcl \
|
|
`ls -dr ../../../itcl[[4-9]]*/itcl 2>/dev/null` ; do
|
|
if test -f "$i/itclConfig.sh" ; then
|
|
ac_cv_c_itclconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few common install locations
|
|
if test x"${ac_cv_c_itclconfig}" = x ; then
|
|
for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
|
|
if test -f "$i/itclConfig.sh" ; then
|
|
ac_cv_c_itclconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few other private locations
|
|
if test x"${ac_cv_c_itclconfig}" = x ; then
|
|
for i in \
|
|
${srcdir}/../itcl/itcl \
|
|
`ls -dr ${srcdir}/../itcl[[4-9]]*/itcl 2>/dev/null` ; do
|
|
if test -f "$i/itclConfig.sh" ; then
|
|
ac_cv_c_itclconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_itclconfig}" = x ; then
|
|
ITCLCONFIG="# no Itcl configs found"
|
|
AC_MSG_WARN(Can't find Itcl configuration definitions)
|
|
else
|
|
no_itcl=
|
|
ITCLCONFIG=${ac_cv_c_itclconfig}/itclConfig.sh
|
|
AC_MSG_RESULT(found $ITCLCONFIG)
|
|
fi
|
|
fi
|
|
])
|
|
|
|
# Defined as a separate macro so we don't have to cache the values
|
|
# from PATH_ITCLCONFIG (because this can also be cached).
|
|
AC_DEFUN([CY_AC_LOAD_ITCLCONFIG], [
|
|
if test -f "$ITCLCONFIG" ; then
|
|
. $ITCLCONFIG
|
|
fi
|
|
|
|
AC_SUBST(ITCL_VERSION)
|
|
dnl not actually used, don't export to save symbols
|
|
dnl AC_SUBST(ITCL_MAJOR_VERSION)
|
|
dnl AC_SUBST(ITCL_MINOR_VERSION)
|
|
AC_SUBST(ITCL_DEFS)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITCL_LIB_FILE)
|
|
|
|
dnl not used outside of configure
|
|
dnl AC_SUBST(ITCL_LIBS)
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITCL_PREFIX)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITCL_EXEC_PREFIX)
|
|
|
|
AC_SUBST(ITCL_BUILD_INCLUDES)
|
|
AC_SUBST(ITCL_BUILD_LIB_SPEC)
|
|
AC_SUBST(ITCL_LIB_SPEC)
|
|
])
|
|
|
|
# check for Itcl headers.
|
|
|
|
AC_DEFUN([CY_AC_PATH_ITCLH], [
|
|
AC_MSG_CHECKING(for Itcl private headers. srcdir=${srcdir})
|
|
if test x"${ac_cv_c_itclh}" = x ; then
|
|
for i in ${srcdir}/../itcl ${srcdir}/../../itcl ${srcdir}/../../../itcl ${srcdir}/../itcl/itcl; do
|
|
if test -f $i/generic/itcl.h ; then
|
|
ac_cv_c_itclh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
if test x"${ac_cv_c_itclh}" = x ; then
|
|
ITCLHDIR="# no Itcl private headers found"
|
|
AC_MSG_ERROR([Can't find Itcl private headers])
|
|
fi
|
|
if test x"${ac_cv_c_itclh}" != x ; then
|
|
ITCLHDIR="-I${ac_cv_c_itclh}"
|
|
fi
|
|
# should always be here
|
|
# ITCLLIB="../itcl/itcl/unix/libitcl.a"
|
|
AC_SUBST(ITCLHDIR)
|
|
#AC_SUBST(ITCLLIB)
|
|
])
|
|
|
|
|
|
AC_DEFUN([CY_AC_PATH_ITKCONFIG], [
|
|
#
|
|
# Ok, lets find the itk configuration
|
|
# First, look for one uninstalled.
|
|
# the alternative search directory is invoked by --with-itkconfig
|
|
#
|
|
|
|
if test x"${no_itk}" = x ; then
|
|
# we reset no_itk in case something fails here
|
|
no_itk=true
|
|
AC_ARG_WITH(itkconfig, [ --with-itkconfig Directory containing itk configuration (itkConfig.sh)],
|
|
with_itkconfig=${withval})
|
|
AC_MSG_CHECKING([for Itk configuration])
|
|
AC_CACHE_VAL(ac_cv_c_itkconfig,[
|
|
|
|
# First check to see if --with-itkconfig was specified.
|
|
if test x"${with_itkconfig}" != x ; then
|
|
if test -f "${with_itkconfig}/itkConfig.sh" ; then
|
|
ac_cv_c_itkconfig=`(cd ${with_itkconfig}; pwd)`
|
|
else
|
|
AC_MSG_ERROR([${with_itkconfig} directory doesn't contain itkConfig.sh])
|
|
fi
|
|
fi
|
|
|
|
# then check for a private Itk library
|
|
if test x"${ac_cv_c_itkconfig}" = x ; then
|
|
for i in \
|
|
../itcl/itk \
|
|
`ls -dr ../itcl[[4-9]]*/itk 2>/dev/null` \
|
|
../../itk \
|
|
`ls -dr ../../itcl[[4-9]]*/itk 2>/dev/null` \
|
|
../../../itk \
|
|
`ls -dr ../../../itcl[[4-9]]*/itk 2>/dev/null` ; do
|
|
if test -f "$i/itkConfig.sh" ; then
|
|
ac_cv_c_itkconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few common install locations
|
|
if test x"${ac_cv_c_itkconfig}" = x ; then
|
|
for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do
|
|
if test -f "$i/itkConfig.sh" ; then
|
|
ac_cv_c_itkconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
# check in a few other private locations
|
|
if test x"${ac_cv_c_itkconfig}" = x ; then
|
|
for i in \
|
|
${srcdir}/../itcl/itk \
|
|
`ls -dr ${srcdir}/../itcl[[4-9]]*/itk 2>/dev/null` ; do
|
|
if test -f "$i/itkConfig.sh" ; then
|
|
ac_cv_c_itkconfig=`(cd $i; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
])
|
|
if test x"${ac_cv_c_itkconfig}" = x ; then
|
|
ITKCONFIG="# no Itk configs found"
|
|
AC_MSG_WARN(Can't find Itk configuration definitions)
|
|
else
|
|
no_itk=
|
|
ITKCONFIG=${ac_cv_c_itkconfig}/itkConfig.sh
|
|
AC_MSG_RESULT(found $ITKCONFIG)
|
|
fi
|
|
fi
|
|
|
|
])
|
|
|
|
# Defined as a separate macro so we don't have to cache the values
|
|
# from PATH_ITKCONFIG (because this can also be cached).
|
|
AC_DEFUN([CY_AC_LOAD_ITKCONFIG], [
|
|
if test -f "$ITKCONFIG" ; then
|
|
. $ITKCONFIG
|
|
fi
|
|
|
|
AC_SUBST(ITK_VERSION)
|
|
dnl not actually used, don't export to save symbols
|
|
dnl AC_SUBST(ITK_MAJOR_VERSION)
|
|
dnl AC_SUBST(ITK_MINOR_VERSION)
|
|
AC_SUBST(ITK_DEFS)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITK_LIB_FILE)
|
|
|
|
dnl not used outside of configure
|
|
dnl AC_SUBST(ITK_LIBS)
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITK_PREFIX)
|
|
|
|
dnl not used, don't export to save symbols
|
|
dnl AC_SUBST(ITK_EXEC_PREFIX)
|
|
|
|
AC_SUBST(ITK_BUILD_INCLUDES)
|
|
AC_SUBST(ITK_BUILD_LIB_SPEC)
|
|
AC_SUBST(ITK_LIB_SPEC)
|
|
])
|
|
|
|
AC_DEFUN([CY_AC_PATH_ITKH], [
|
|
AC_MSG_CHECKING(for Itk private headers. srcdir=${srcdir})
|
|
if test x"${ac_cv_c_itkh}" = x ; then
|
|
for i in ${srcdir}/../itcl ${srcdir}/../../itcl ${srcdir}/../../../itcl ${srcdir}/../itcl/itk; do
|
|
if test -f $i/generic/itk.h ; then
|
|
ac_cv_c_itkh=`(cd $i/generic; pwd)`
|
|
break
|
|
fi
|
|
done
|
|
fi
|
|
if test x"${ac_cv_c_itkh}" = x ; then
|
|
ITKHDIR="# no Itk private headers found"
|
|
AC_MSG_ERROR([Can't find Itk private headers])
|
|
fi
|
|
if test x"${ac_cv_c_itkh}" != x ; then
|
|
ITKHDIR="-I${ac_cv_c_itkh}"
|
|
fi
|
|
# should always be here
|
|
# ITKLIB="../itcl/itk/unix/libitk.a"
|
|
AC_SUBST(ITKHDIR)
|
|
#AC_SUBST(ITKLIB)
|
|
])
|
|
|
|
|
|
## ----------------------------------------- ##
|
|
## ANSIfy the C compiler whenever possible. ##
|
|
## From Franc,ois Pinard ##
|
|
## ----------------------------------------- ##
|
|
|
|
# Copyright (C) 1996, 1997, 1999, 2000, 2001 Free Software Foundation, Inc.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2, or (at your option)
|
|
# any later version.
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
# Boston, MA 02110-1301, USA.
|
|
|
|
# serial 1
|
|
|
|
# @defmac AC_PROG_CC_STDC
|
|
# @maindex PROG_CC_STDC
|
|
# @ovindex CC
|
|
# If the C compiler in not in ANSI C mode by default, try to add an option
|
|
# to output variable @code{CC} to make it so. This macro tries various
|
|
# options that select ANSI C on some system or another. It considers the
|
|
# compiler to be in ANSI C mode if it handles function prototypes correctly.
|
|
#
|
|
# If you use this macro, you should check after calling it whether the C
|
|
# compiler has been set to accept ANSI C; if not, the shell variable
|
|
# @code{am_cv_prog_cc_stdc} is set to @samp{no}. If you wrote your source
|
|
# code in ANSI C, you can make an un-ANSIfied copy of it by using the
|
|
# program @code{ansi2knr}, which comes with Ghostscript.
|
|
# @end defmac
|
|
|
|
AC_DEFUN([AM_PROG_CC_STDC],
|
|
[AC_REQUIRE([AC_PROG_CC])
|
|
AC_BEFORE([$0], [AC_C_INLINE])
|
|
AC_BEFORE([$0], [AC_C_CONST])
|
|
dnl Force this before AC_PROG_CPP. Some cpp's, eg on HPUX, require
|
|
dnl a magic option to avoid problems with ANSI preprocessor commands
|
|
dnl like #elif.
|
|
dnl FIXME: can't do this because then AC_AIX won't work due to a
|
|
dnl circular dependency.
|
|
dnl AC_BEFORE([$0], [AC_PROG_CPP])
|
|
AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
|
|
AC_CACHE_VAL(am_cv_prog_cc_stdc,
|
|
[am_cv_prog_cc_stdc=no
|
|
ac_save_CC="$CC"
|
|
# Don't try gcc -ansi; that turns off useful extensions and
|
|
# breaks some systems' header files.
|
|
# AIX -qlanglvl=ansi
|
|
# Ultrix and OSF/1 -std1
|
|
# HP-UX 10.20 and later -Ae
|
|
# HP-UX older versions -Aa -D_HPUX_SOURCE
|
|
# SVR4 -Xc -D__EXTENSIONS__
|
|
for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
|
|
do
|
|
CC="$ac_save_CC $ac_arg"
|
|
AC_TRY_COMPILE(
|
|
[#include <stdarg.h>
|
|
#include <stdio.h>
|
|
#include <sys/types.h>
|
|
#include <sys/stat.h>
|
|
/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
|
|
struct buf { int x; };
|
|
FILE * (*rcsopen) (struct buf *, struct stat *, int);
|
|
static char *e (p, i)
|
|
char **p;
|
|
int i;
|
|
{
|
|
return p[i];
|
|
}
|
|
static char *f (char * (*g) (char **, int), char **p, ...)
|
|
{
|
|
char *s;
|
|
va_list v;
|
|
va_start (v,p);
|
|
s = g (p, va_arg (v,int));
|
|
va_end (v);
|
|
return s;
|
|
}
|
|
int test (int i, double x);
|
|
struct s1 {int (*f) (int a);};
|
|
struct s2 {int (*f) (double a);};
|
|
int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
|
|
int argc;
|
|
char **argv;
|
|
], [
|
|
return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
|
|
],
|
|
[am_cv_prog_cc_stdc="$ac_arg"; break])
|
|
done
|
|
CC="$ac_save_CC"
|
|
])
|
|
if test -z "$am_cv_prog_cc_stdc"; then
|
|
AC_MSG_RESULT([none needed])
|
|
else
|
|
AC_MSG_RESULT([$am_cv_prog_cc_stdc])
|
|
fi
|
|
case "x$am_cv_prog_cc_stdc" in
|
|
x|xno) ;;
|
|
*) CC="$CC $am_cv_prog_cc_stdc" ;;
|
|
esac
|
|
])
|
|
|
|
dnl From Bruno Haible.
|
|
|
|
AC_DEFUN([AM_ICONV],
|
|
[
|
|
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
|
|
dnl those with the standalone portable GNU libiconv installed).
|
|
|
|
AC_ARG_WITH([libiconv-prefix],
|
|
[ --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib], [
|
|
for dir in `echo "$withval" | tr : ' '`; do
|
|
if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi
|
|
if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi
|
|
done
|
|
])
|
|
|
|
AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
|
|
am_cv_func_iconv="no, consider installing GNU libiconv"
|
|
am_cv_lib_iconv=no
|
|
AC_TRY_LINK([#include <stdlib.h>
|
|
#include <iconv.h>],
|
|
[iconv_t cd = iconv_open("","");
|
|
iconv(cd,NULL,NULL,NULL,NULL);
|
|
iconv_close(cd);],
|
|
am_cv_func_iconv=yes)
|
|
if test "$am_cv_func_iconv" != yes; then
|
|
am_save_LIBS="$LIBS"
|
|
LIBS="$LIBS -liconv"
|
|
AC_TRY_LINK([#include <stdlib.h>
|
|
#include <iconv.h>],
|
|
[iconv_t cd = iconv_open("","");
|
|
iconv(cd,NULL,NULL,NULL,NULL);
|
|
iconv_close(cd);],
|
|
am_cv_lib_iconv=yes
|
|
am_cv_func_iconv=yes)
|
|
LIBS="$am_save_LIBS"
|
|
fi
|
|
])
|
|
if test "$am_cv_func_iconv" = yes; then
|
|
AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
|
|
AC_MSG_CHECKING([for iconv declaration])
|
|
AC_CACHE_VAL(am_cv_proto_iconv, [
|
|
AC_TRY_COMPILE([
|
|
#include <stdlib.h>
|
|
#include <iconv.h>
|
|
extern
|
|
#ifdef __cplusplus
|
|
"C"
|
|
#endif
|
|
#if defined(__STDC__) || defined(__cplusplus)
|
|
size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
|
|
#else
|
|
size_t iconv();
|
|
#endif
|
|
], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
|
|
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);"])
|
|
am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
|
|
AC_MSG_RESULT([$]{ac_t:-
|
|
}[$]am_cv_proto_iconv)
|
|
AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
|
|
[Define as const if the declaration of iconv() needs const.])
|
|
fi
|
|
LIBICONV=
|
|
if test "$am_cv_lib_iconv" = yes; then
|
|
LIBICONV="-liconv"
|
|
fi
|
|
AC_SUBST(LIBICONV)
|
|
])
|
|
|
|
dnl written by Guido Draheim <guidod@gmx.de>, original by Alexandre Oliva
|
|
dnl Version 1.3 (2001/03/02)
|
|
dnl source http://www.gnu.org/software/ac-archive/Miscellaneous/ac_define_dir.html
|
|
|
|
AC_DEFUN([AC_DEFINE_DIR], [
|
|
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
|
|
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
|
|
ac_define_dir=`eval echo [$]$2`
|
|
ac_define_dir=`eval echo [$]ac_define_dir`
|
|
ifelse($3, ,
|
|
AC_DEFINE_UNQUOTED($1, "$ac_define_dir"),
|
|
AC_DEFINE_UNQUOTED($1, "$ac_define_dir", $3))
|
|
])
|
|
|
|
dnl See whether we need a declaration for a function.
|
|
dnl The result is highly dependent on the INCLUDES passed in, so make sure
|
|
dnl to use a different cache variable name in this macro if it is invoked
|
|
dnl in a different context somewhere else.
|
|
dnl gcc_AC_CHECK_DECL(SYMBOL,
|
|
dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, INCLUDES]]])
|
|
AC_DEFUN([gcc_AC_CHECK_DECL],
|
|
[AC_MSG_CHECKING([whether $1 is declared])
|
|
AC_CACHE_VAL(gcc_cv_have_decl_$1,
|
|
[AC_TRY_COMPILE([$4],
|
|
[#ifndef $1
|
|
char *(*pfn) = (char *(*)) $1 ;
|
|
#endif], eval "gcc_cv_have_decl_$1=yes", eval "gcc_cv_have_decl_$1=no")])
|
|
if eval "test \"`echo '$gcc_cv_have_decl_'$1`\" = yes"; then
|
|
AC_MSG_RESULT(yes) ; ifelse([$2], , :, [$2])
|
|
else
|
|
AC_MSG_RESULT(no) ; ifelse([$3], , :, [$3])
|
|
fi
|
|
])dnl
|
|
|
|
dnl Check multiple functions to see whether each needs a declaration.
|
|
dnl Arrange to define HAVE_DECL_<FUNCTION> to 0 or 1 as appropriate.
|
|
dnl gcc_AC_CHECK_DECLS(SYMBOLS,
|
|
dnl [ACTION-IF-NEEDED [, ACTION-IF-NOT-NEEDED [, INCLUDES]]])
|
|
AC_DEFUN([gcc_AC_CHECK_DECLS],
|
|
[for ac_func in $1
|
|
do
|
|
changequote(, )dnl
|
|
ac_tr_decl=HAVE_DECL_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
|
|
changequote([, ])dnl
|
|
gcc_AC_CHECK_DECL($ac_func,
|
|
[AC_DEFINE_UNQUOTED($ac_tr_decl, 1) $2],
|
|
[AC_DEFINE_UNQUOTED($ac_tr_decl, 0) $3],
|
|
dnl It is possible that the include files passed in here are local headers
|
|
dnl which supply a backup declaration for the relevant prototype based on
|
|
dnl the definition of (or lack of) the HAVE_DECL_ macro. If so, this test
|
|
dnl will always return success. E.g. see libiberty.h's handling of
|
|
dnl `basename'. To avoid this, we define the relevant HAVE_DECL_ macro to
|
|
dnl 1 so that any local headers used do not provide their own prototype
|
|
dnl during this test.
|
|
#undef $ac_tr_decl
|
|
#define $ac_tr_decl 1
|
|
$4
|
|
)
|
|
done
|
|
dnl Automatically generate config.h entries via autoheader.
|
|
if test x = y ; then
|
|
patsubst(translit([$1], [a-z], [A-Z]), [\w+],
|
|
[AC_DEFINE([HAVE_DECL_\&], 1,
|
|
[Define to 1 if we found this declaration otherwise define to 0.])])dnl
|
|
fi
|
|
])
|
|
|