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)
87 LeadingUnderscore=`echo $ac_cv_lead_uscore | sed 'y/yesno/YESNO/'`
88 AC_SUBST(LeadingUnderscore)
92 # Check for Happy and version.
95 [AC_PATH_PROG(HappyCmd,happy)
96 AC_CACHE_CHECK([for version of happy], ac_cv_happy_version,
97 [if test x"$HappyCmd" != x; then
98 ac_cv_happy_version="`$HappyCmd -v |
100 grep 'Happy Version' | sed -e 's/Happy Version \([^ ]*\).*/\1/g'`" ;
103 ac_cv_happy_version="";
106 HappyVersion=$ac_cv_happy_version;
107 AC_SUBST(HappyVersion)
111 # What's the best way of doing context diffs?
113 # (NB: NeXTStep thinks diff'ing a file against itself is "trouble")
115 AC_DEFUN(AC_PROG_DIFF,
116 [AC_CACHE_CHECK([for ok way to do context diffs], ac_cv_context_diffs,
117 [echo foo > conftest1
119 if diff -C 1 conftest1 conftest2 > /dev/null 2>&1 ; then
120 ac_cv_context_diffs='diff -C 1'
122 if diff -c1 conftest1 conftest2 > /dev/null 2>&1 ; then
123 ac_cv_context_diffs='diff -c1'
125 echo "Can't figure out how to do context diffs."
126 echo "Neither \`diff -C 1' nor \`diff -c1' works."
130 rm -f conftest1 conftest2
132 ContextDiffCmd=$ac_cv_context_diffs
133 AC_SUBST(ContextDiffCmd)
137 # Finding the Right Yacc
139 AC_DEFUN(AC_PROG_YACCY,
141 if test "$YACC" = "yacc"; then
142 AC_CACHE_CHECK([if it is an OK yacc], ac_cv_prog_yacc,
143 [AC_CHECK_PROG(WhatCmd, what, what, :)
144 $WhatCmd $YACC > conftest.out
145 if egrep 'y1\.c 1\..*SMI' conftest.out >/dev/null 2>&1; then
146 echo "I don't trust your $YaccCmd; it looks like an old Sun yacc"
147 if test -f /usr/lang/yacc; then
148 echo "I'm going to use /usr/lang/yacc instead"
149 ac_cv_prog_yacc=/usr/lang/yacc
151 echo "I'm assuming the worst...no parser generator at all"
154 elif egrep 'y1\.c.*Revision: 4\.2\.6\.3.*DEC' conftest.out >/dev/null 2>&1; then
155 echo "I don't trust your $YaccCmd; it looks like a lame DEC yacc"
156 echo "I'm assuming the worst...no parser generator at all"
159 ac_cv_prog_yacc=$YACC
164 ac_cv_prog_yacc=$YACC
166 YaccCmd=$ac_cv_prog_yacc
170 dnl Checking for ar and its arguments + whether we need ranlib.
172 # ArCmd and RANLIB are AC_SUBST'ed
174 AC_DEFUN(AC_PROG_AR_AND_RANLIB,
175 [AC_PATH_PROG(ArCmd,ar)
176 if test -z "$ArCmd"; then
177 echo "You don't seem to have ar in your PATH...I have no idea how to make a library"
180 if $ArCmd clqs conftest.a >/dev/null 2>/dev/null; then
183 elif $ArCmd cqs conftest.a >/dev/null 2>/dev/null; then
186 elif $ArCmd clq conftest.a >/dev/null 2>/dev/null; then
189 elif $ArCmd cq conftest.a >/dev/null 2>/dev/null; then
192 elif $ArCmd cq conftest.a 2>&1 | grep 'no archive members specified' >/dev/null 2>/dev/null; then
196 echo "I can't figure out how to use your $ArCmd"
200 test -n "$ArCmd" && test -n "$verbose" && echo " setting ArCmd to $ArCmd"
202 if test -z "$NeedRanLib"; then
204 test -n "$verbose" && echo " setting RANLIB to $RANLIB"
212 dnl AC_SHEBANG_PERL - can we she-bang perl?
214 AC_DEFUN(AC_SHEBANG_PERL,
215 [AC_CACHE_CHECK([if your perl works in shell scripts], ac_cv_shebang_perl,
220 (SHELL=/bin/sh; export SHELL; ./conftest 69 > /dev/null)
221 if test $? -ne 69; then
222 ac_cv_shebang_perl=yes
224 ac_cv_shebang_perl=no
230 # Extra testing of the result AC_PROG_CC, testing the gcc version no.
231 # *Must* be called after AC_PROG_CC
233 AC_DEFUN(AC_HAVE_GCC,
234 [AC_CACHE_CHECK([whether you have an ok gcc], ac_cv_have_gcc,
235 [if test -z "$GCC"; then
237 echo "You would be better off with gcc"
238 echo "Perhaps it is already installed, but not in your PATH?"
242 cmd_string="`$CC -v 2>&1 | grep 'version ' | sed -e 's/.*version \([0-9][0-9]*\)\.\([0-9][0-9]*\).*/expr 20 \\\< \1 \\\* 10 + \2/g' `"
244 if test `eval $cmd_string 2>/dev/null` != "1"; then
246 echo "I'm not sure if your version of gcc will work,"
247 echo "but it's worth a shot, eh?"
252 HaveGcc=`echo $ac_cv_have_gcc | sed 'y/yesno/YESNO/'`
257 # AC_PROG_GNUCPP gathers the path to the cpp that the
258 # gcc driver calls upon.
260 # Substitutes: GNUCPP and RAWCPP (latter is 'GNUCPP -traditional')
262 AC_DEFUN(AC_PROG_GNUCPP,
263 [AC_CACHE_CHECK([how to invoke GNU cpp directly], ac_cv_gnu_cpp,
264 [if test "$HaveGcc" = "YES"; then
266 gcc -v -E conftest.c >/dev/null 2>conftest.out
267 echo '/(\S+(\/|\\\\)cpp)/ && print "[$]1";' > conftest.pl
268 ac_cv_gnu_cpp="`eval $PerlCmd -n conftest.pl conftest.out`"
271 # We need to be able to invoke CPP directly, preferably
272 # with input from stdin (mkdependHS and hscpp depend on
273 # this at the moment).
274 # Take a guess at what to use, this probably won't work.
275 echo Warning: GNU cpp not found, using $CPP
279 GNUCPP=$ac_cv_gnu_cpp
280 RAWCPP="$GNUCPP -traditional"
286 # Small feature test for perl version. Assumes PerlCmd
287 # contains path to perl binary
289 AC_DEFUN(AC_CHECK_PERL_VERSION,
290 [$PerlCmd -v >conftest.out 2>&1
291 if grep "version 4" conftest.out >/dev/null 2>&1; then
292 if grep "Patch level: 35" conftest.out >/dev/null 2>&1; then
294 ************************************************************************
295 Uh-oh...looks like you have Perl 4.035.
297 Perl version 4.035 has a bug to do with recursion that will bite if
298 you run the lit2texi script, when making Info files from
299 literate files of various sorts. Either use perl5, the last version of perl4
300 (4.036), or an older version (e.g., perl 4.019). Failing that, don't create
302 ************************************************************************
306 if grep "version 5" conftest.out >/dev/null 2>&1; then
309 echo "I'm not sure if your version of perl will work,"
310 echo "but it's worth a shot, eh?"