2 # Extra autoconf macros for the Glasgow fptools
6 # Has timezone the type time_t or long (HP-UX 10.20 apparently
9 AC_DEFUN(AC_TYPE_TIMEZONE,
10 [AC_CACHE_CHECK([type of timezone], ac_cv_type_timezone,
11 [AC_TRY_COMPILE([#if TIME_WITH_SYS_TIME
12 # include <sys/time.h>
16 # include <sys/time.h>
22 extern time_t timezone;
24 [int i;], ac_cv_type_timezone=time_t, ac_cv_type_timezone=long)])
25 AC_DEFINE_UNQUOTED(TYPE_TIMEZONE, $ac_cv_type_timezone)
29 # Is altzone available?
32 [AC_CACHE_CHECK([altzone], ac_cv_altzone,
33 [AC_TRY_LINK([#if TIME_WITH_SYS_TIME
34 # include <sys/time.h>
38 # include <sys/time.h>
44 ac_cv_altzone=yes, ac_cv_altzone=no)])
45 if test "$ac_cv_altzone" = yes; then
46 AC_DEFINE(HAVE_ALTZONE)
51 dnl ** check for leading underscores in symbol names
53 # Test for determining whether symbol names have a leading
56 # We assume that they _haven't_ if anything goes wrong.
58 AC_DEFUN(AC_UNDERSCORE,
59 [AC_CHECK_LIB(elf, nlist, LIBS="-lelf $LIBS")dnl
60 AC_CACHE_CHECK([leading underscore in symbol names], ac_cv_lead_uscore,
62 # Hack!: nlist() under Digital UNIX insist on there being an _,
63 # but symbol table listings show none. What is going on here?!?
65 if test $HostPlatform = "alpha-dec-osf1"; then
66 ac_cv_lead_uscore='no'
68 AC_TRY_RUN([#ifdef HAVE_NLIST_H
70 changequote(<<, >>)dnl
72 struct nlist xYzzY[] = {{"_xYzzY", 0},{0}};
80 if(nlist(argv[0], xYzzY) == 0 && xYzzY[0].n_value != 0)
85 }], ac_cv_lead_uscore=yes, ac_cv_lead_uscore=no, ac_cv_lead_uscore=NO)
88 LeadingUnderscore=`echo $ac_cv_lead_uscore | sed 'y/yesno/YESNO/'`
89 AC_SUBST(LeadingUnderscore)
93 # Check for Happy and version.
96 [AC_PATH_PROG(HappyCmd,happy)
97 AC_CACHE_CHECK([for version of happy], ac_cv_happy_version,
98 [if test x"$HappyCmd" != x; then
99 ac_cv_happy_version="`$HappyCmd -v |
101 grep 'Happy Version' | sed -e 's/Happy Version \([^ ]*\).*/\1/g'`" ;
104 ac_cv_happy_version="";
107 HappyVersion=$ac_cv_happy_version;
108 AC_SUBST(HappyVersion)
112 # What's the best way of doing context diffs?
114 # (NB: NeXTStep thinks diff'ing a file against itself is "trouble")
116 AC_DEFUN(AC_PROG_DIFF,
117 [AC_CACHE_CHECK([for ok way to do context diffs], ac_cv_context_diffs,
118 [echo foo > conftest1
120 if diff -C 1 conftest1 conftest2 > /dev/null 2>&1 ; then
121 ac_cv_context_diffs='diff -C 1'
123 if diff -c1 conftest1 conftest2 > /dev/null 2>&1 ; then
124 ac_cv_context_diffs='diff -c1'
126 echo "Can't figure out how to do context diffs."
127 echo "Neither \`diff -C 1' nor \`diff -c1' works."
131 rm -f conftest1 conftest2
133 ContextDiffCmd=$ac_cv_context_diffs
134 AC_SUBST(ContextDiffCmd)
138 # Finding the Right Yacc
140 AC_DEFUN(AC_PROG_YACCY,
142 if test "$YACC" = "yacc"; then
143 AC_CACHE_CHECK([if it is an OK yacc], ac_cv_prog_yacc,
144 [AC_CHECK_PROG(WhatCmd, what, what, :)
145 $WhatCmd $YACC > conftest.out
146 if egrep 'y1\.c 1\..*SMI' conftest.out >/dev/null 2>&1; then
147 echo "I don't trust your $YaccCmd; it looks like an old Sun yacc"
148 if test -f /usr/lang/yacc; then
149 echo "I'm going to use /usr/lang/yacc instead"
150 ac_cv_prog_yacc=/usr/lang/yacc
152 echo "I'm assuming the worst...no parser generator at all"
155 elif egrep 'y1\.c.*Revision: 4\.2\.6\.3.*DEC' conftest.out >/dev/null 2>&1; then
156 echo "I don't trust your $YaccCmd; it looks like a lame DEC yacc"
157 echo "I'm assuming the worst...no parser generator at all"
160 ac_cv_prog_yacc=$YACC
165 ac_cv_prog_yacc=$YACC
167 YaccCmd=$ac_cv_prog_yacc
171 dnl Checking for ar and its arguments + whether we need ranlib.
173 # ArCmd and RANLIB are AC_SUBST'ed
175 AC_DEFUN(AC_PROG_AR_AND_RANLIB,
176 [AC_PATH_PROG(ArCmd,ar)
177 if test -z "$ArCmd"; then
178 echo "You don't seem to have ar in your PATH...I have no idea how to make a library"
181 if $ArCmd clqs conftest.a >/dev/null 2>/dev/null; then
184 elif $ArCmd cqs conftest.a >/dev/null 2>/dev/null; then
187 elif $ArCmd clq conftest.a >/dev/null 2>/dev/null; then
190 elif $ArCmd cq conftest.a >/dev/null 2>/dev/null; then
193 elif $ArCmd cq conftest.a 2>&1 | grep 'no archive members specified' >/dev/null 2>/dev/null; then
197 echo "I can't figure out how to use your $ArCmd"
201 test -n "$ArCmd" && test -n "$verbose" && echo " setting ArCmd to $ArCmd"
203 if test -z "$NeedRanLib"; then
205 test -n "$verbose" && echo " setting RANLIB to $RANLIB"
213 dnl AC_SHEBANG_PERL - can we she-bang perl?
215 AC_DEFUN(AC_SHEBANG_PERL,
216 [AC_CACHE_CHECK([if your perl works in shell scripts], ac_cv_shebang_perl,
221 (SHELL=/bin/sh; export SHELL; ./conftest 69 > /dev/null)
222 if test $? -ne 69; then
223 ac_cv_shebang_perl=yes
225 ac_cv_shebang_perl=no
231 # Extra testing of the result AC_PROG_CC, testing the gcc version no.
232 # *Must* be called after AC_PROG_CC
234 AC_DEFUN(AC_HAVE_GCC,
235 [AC_CACHE_CHECK([whether you have an ok gcc], ac_cv_have_gcc,
236 [if test -z "$GCC"; then
238 echo "You would be better off with gcc"
239 echo "Perhaps it is already installed, but not in your PATH?"
243 cmd_string="`$CC -v 2>&1 | grep 'version ' | sed -e 's/.*version \(egcs-\)\?\([0-9][0-9]*\)\.\([0-9][0-9]*\).*/expr 20 \\\< \2 \\\* 10 + \3/g' `"
245 if test `eval $cmd_string 2>/dev/null` != "1"; then
247 echo "I'm not sure if your version of gcc will work,"
248 echo "but it's worth a shot, eh?"
253 HaveGcc=`echo $ac_cv_have_gcc | sed 'y/yesno/YESNO/'`
258 # AC_PROG_GNUCPP gathers the path to the cpp that the
259 # gcc driver calls upon.
261 # Substitutes: GNUCPP and RAWCPP (latter is 'GNUCPP -traditional')
263 AC_DEFUN(AC_PROG_GNUCPP,
264 [AC_CACHE_CHECK([how to invoke cpp directly], ac_cv_gnu_cpp,
265 [if echo $CPP | grep gcc >/dev/null 2>&1; then
267 gcc -v -E conftest.c >/dev/null 2>conftest.out
268 echo '/(\S+(\/|\\\\)cpp)/ && print "[$]1";' > conftest.pl
269 # GNUCPP: used in jmake.c (GnuCppCmd) and in mkdependC
270 # (where we could do with the usual pre-#defines)
271 ac_cv_gnu_cpp="`eval $PerlCmd -n conftest.pl conftest.out`"
274 # It is likely that this will go terribly wrong..
275 ac_cv_gnu_cpp='cc -E'
278 GNUCPP=$ac_cv_gnu_cpp
279 if test "$GNUCPP" = "cc -E"; then
282 RAWCPP="$GNUCPP -traditional"
289 # Small feature test for perl version. Assumes PerlCmd
290 # contains path to perl binary
292 AC_DEFUN(AC_CHECK_PERL_VERSION,
293 [$PerlCmd -v >conftest.out 2>&1
294 if grep "version 4" conftest.out >/dev/null 2>&1; then
295 if grep "Patch level: 35" conftest.out >/dev/null 2>&1; then
297 ************************************************************************
298 Uh-oh...looks like you have Perl 4.035.
300 Perl version 4.035 has a bug to do with recursion that will bite if
301 you run the lit2texi script, when making Info files from
302 literate files of various sorts. Either use perl5, the last version of perl4
303 (4.036), or an older version (e.g., perl 4.019). Failing that, don't create
305 ************************************************************************
309 if grep "version 5" conftest.out >/dev/null 2>&1; then
312 echo "I'm not sure if your version of perl will work,"
313 echo "but it's worth a shot, eh?"