1dnl aclocal.m4 generated automatically by aclocal 1.4a
2
3dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
4dnl This file is free software; the Free Software Foundation
5dnl gives unlimited permission to copy and/or distribute it,
6dnl with or without modifications, as long as this notice is preserved.
7
8dnl This program is distributed in the hope that it will be useful,
9dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11dnl PARTICULAR PURPOSE.
12
13# Configure paths for SDL
14# Sam Lantinga 9/21/99
15# stolen from Manish Singh
16# stolen back from Frank Belew
17# stolen from Manish Singh
18# Shamelessly stolen from Owen Taylor
19
20dnl AM_PATH_SDL([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
21dnl Test for SDL, and define SDL_CFLAGS and SDL_LIBS
22dnl
23AC_DEFUN(AM_PATH_SDL,
24[dnl
25dnl Get the cflags and libraries from the sdl-config script
26dnl
27AC_ARG_WITH(sdl-prefix,[  --with-sdl-prefix=PFX   Prefix where SDL is installed (optional)],
28            sdl_prefix="$withval", sdl_prefix="")
29AC_ARG_WITH(sdl-exec-prefix,[  --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional)],
30            sdl_exec_prefix="$withval", sdl_exec_prefix="")
31AC_ARG_ENABLE(sdltest, [  --disable-sdltest       Do not try to compile and run a test SDL program],
32		    , enable_sdltest=yes)
33
34  if test x$sdl_exec_prefix != x ; then
35     sdl_args="$sdl_args --exec-prefix=$sdl_exec_prefix"
36     if test x${SDL_CONFIG+set} != xset ; then
37        SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config
38     fi
39  fi
40  if test x$sdl_prefix != x ; then
41     sdl_args="$sdl_args --prefix=$sdl_prefix"
42     if test x${SDL_CONFIG+set} != xset ; then
43        SDL_CONFIG=$sdl_prefix/bin/sdl-config
44     fi
45  fi
46
47  AC_PATH_PROG(SDL_CONFIG, sdl-config, no)
48  min_sdl_version=ifelse([$1], ,0.11.0,$1)
49  AC_MSG_CHECKING(for SDL - version >= $min_sdl_version)
50  no_sdl=""
51  if test "$SDL_CONFIG" = "no" ; then
52    no_sdl=yes
53  else
54    SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags`
55    SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs`
56
57    sdl_major_version=`$SDL_CONFIG $sdl_args --version | \
58           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
59    sdl_minor_version=`$SDL_CONFIG $sdl_args --version | \
60           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
61    sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \
62           sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
63    if test "x$enable_sdltest" = "xyes" ; then
64      ac_save_CFLAGS="$CFLAGS"
65      ac_save_LIBS="$LIBS"
66      CFLAGS="$CFLAGS $SDL_CFLAGS"
67      LIBS="$LIBS $SDL_LIBS"
68dnl
69dnl Now check if the installed SDL is sufficiently new. (Also sanity
70dnl checks the results of sdl-config to some extent
71dnl
72      rm -f conf.sdltest
73      AC_TRY_RUN([
74#include <stdio.h>
75#include <stdlib.h>
76#include <string.h>
77#include "SDL.h"
78
79char*
80my_strdup (char *str)
81{
82  char *new_str;
83
84  if (str)
85    {
86      new_str = malloc ((strlen (str) + 1) * sizeof(char));
87      strcpy (new_str, str);
88    }
89  else
90    new_str = NULL;
91
92  return new_str;
93}
94
95int main ()
96{
97  int major, minor, micro;
98  char *tmp_version;
99
100  system ("touch conf.sdltest");
101
102  /* HP/UX 9 (%@#!) writes to sscanf strings */
103  tmp_version = my_strdup("$min_sdl_version");
104  if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
105     printf("%s, bad version string\n", "$min_sdl_version");
106     exit(1);
107   }
108
109   if (($sdl_major_version > major) ||
110      (($sdl_major_version == major) && ($sdl_minor_version > minor)) ||
111      (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro)))
112    {
113      return 0;
114    }
115  else
116    {
117      printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version);
118      printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
119      printf("*** best to upgrade to the required version.\n");
120      printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
121      printf("*** to point to the correct copy of sdl-config, and remove the file\n");
122      printf("*** config.cache before re-running configure\n");
123      return 1;
124    }
125}
126
127],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
128       CFLAGS="$ac_save_CFLAGS"
129       LIBS="$ac_save_LIBS"
130     fi
131  fi
132  if test "x$no_sdl" = x ; then
133     AC_MSG_RESULT(yes)
134     ifelse([$2], , :, [$2])
135  else
136     AC_MSG_RESULT(no)
137     if test "$SDL_CONFIG" = "no" ; then
138       echo "*** The sdl-config script installed by SDL could not be found"
139       echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in"
140       echo "*** your path, or set the SDL_CONFIG environment variable to the"
141       echo "*** full path to sdl-config."
142     else
143       if test -f conf.sdltest ; then
144        :
145       else
146          echo "*** Could not run SDL test program, checking why..."
147          CFLAGS="$CFLAGS $SDL_CFLAGS"
148          LIBS="$LIBS $SDL_LIBS"
149          AC_TRY_LINK([
150#include <stdio.h>
151#include "SDL.h"
152],      [ return 0; ],
153        [ echo "*** The test program compiled, but did not run. This usually means"
154          echo "*** that the run-time linker is not finding SDL or finding the wrong"
155          echo "*** version of SDL. If it is not finding SDL, you'll need to set your"
156          echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
157          echo "*** to the installed location  Also, make sure you have run ldconfig if that"
158          echo "*** is required on your system"
159	  echo "***"
160          echo "*** If you have an old version installed, it is best to remove it, although"
161          echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
162        [ echo "*** The test program failed to compile or link. See the file config.log for the"
163          echo "*** exact error that occured. This usually means SDL was incorrectly installed"
164          echo "*** or that you have moved SDL since it was installed. In the latter case, you"
165          echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ])
166          CFLAGS="$ac_save_CFLAGS"
167          LIBS="$ac_save_LIBS"
168       fi
169     fi
170     SDL_CFLAGS=""
171     SDL_LIBS=""
172     ifelse([$3], , :, [$3])
173  fi
174  AC_SUBST(SDL_CFLAGS)
175  AC_SUBST(SDL_LIBS)
176  rm -f conf.sdltest
177])
178
179
180# Do all the work for Automake.  This macro actually does too much --
181# some checks are only needed if your package does certain things.
182# But this isn't really a big deal.
183
184# serial 1
185
186dnl Usage:
187dnl AM_INIT_AUTOMAKE(package,version, [no-define])
188
189AC_DEFUN(AM_INIT_AUTOMAKE,
190[AC_REQUIRE([AC_PROG_INSTALL])
191dnl We require 2.13 because we rely on SHELL being computed by configure.
192AC_PREREQ([2.13])
193PACKAGE=[$1]
194AC_SUBST(PACKAGE)
195VERSION=[$2]
196AC_SUBST(VERSION)
197dnl test to see if srcdir already configured
198if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
199  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
200fi
201ifelse([$3],,
202AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
203AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
204AC_REQUIRE([AM_SANITY_CHECK])
205AC_REQUIRE([AC_ARG_PROGRAM])
206dnl FIXME This is truly gross.
207missing_dir=`cd $ac_aux_dir && pwd`
208AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
209AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
210AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
211AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
212AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
213dnl We check for tar when the user configures the end package.
214dnl This is sad, since we only need this for "dist".  However,
215dnl there's no other good way to do it.  We prefer GNU tar if
216dnl we can find it.  If we can't find a tar, it doesn't really matter.
217AC_CHECK_PROGS(AMTAR, gnutar gtar tar)
218AMTARFLAGS=
219if test -n "$AMTAR"; then
220  if $SHELL -c "$AMTAR --version" > /dev/null 2>&1; then
221    dnl We have GNU tar.
222    AMTARFLAGS=o
223  fi
224fi
225AC_SUBST(AMTARFLAGS)
226AC_REQUIRE([AC_PROG_MAKE_SET])])
227
228#
229# Check to make sure that the build environment is sane.
230#
231
232AC_DEFUN(AM_SANITY_CHECK,
233[AC_MSG_CHECKING([whether build environment is sane])
234# Just in case
235sleep 1
236echo timestamp > conftestfile
237# Do `set' in a subshell so we don't clobber the current shell's
238# arguments.  Must try -L first in case configure is actually a
239# symlink; some systems play weird games with the mod time of symlinks
240# (eg FreeBSD returns the mod time of the symlink's containing
241# directory).
242if (
243   set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
244   if test "[$]*" = "X"; then
245      # -L didn't work.
246      set X `ls -t $srcdir/configure conftestfile`
247   fi
248   if test "[$]*" != "X $srcdir/configure conftestfile" \
249      && test "[$]*" != "X conftestfile $srcdir/configure"; then
250
251      # If neither matched, then we have a broken ls.  This can happen
252      # if, for instance, CONFIG_SHELL is bash and it inherits a
253      # broken ls alias from the environment.  This has actually
254      # happened.  Such a system could not be considered "sane".
255      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
256alias in your environment])
257   fi
258
259   test "[$]2" = conftestfile
260   )
261then
262   # Ok.
263   :
264else
265   AC_MSG_ERROR([newly created file is older than distributed files!
266Check your system clock])
267fi
268rm -f conftest*
269AC_MSG_RESULT(yes)])
270
271dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
272dnl The program must properly implement --version.
273AC_DEFUN(AM_MISSING_PROG,
274[AC_MSG_CHECKING(for working $2)
275# Run test in a subshell; some versions of sh will print an error if
276# an executable is not found, even if stderr is redirected.
277# Redirect stdin to placate older versions of autoconf.  Sigh.
278if ($2 --version) < /dev/null > /dev/null 2>&1; then
279   $1=$2
280   AC_MSG_RESULT(found)
281else
282   $1="$3/missing $2"
283   AC_MSG_RESULT(missing)
284fi
285AC_SUBST($1)])
286
287# Like AC_CONFIG_HEADER, but automatically create stamp file.
288
289AC_DEFUN(AM_CONFIG_HEADER,
290[AC_PREREQ([2.12])
291AC_CONFIG_HEADER([$1])
292dnl When config.status generates a header, we must update the stamp-h file.
293dnl This file resides in the same directory as the config header
294dnl that is generated.  We must strip everything past the first ":",
295dnl and everything past the last "/".
296AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
297ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
298<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
299<<am_indx=1
300for am_file in <<$1>>; do
301  case " <<$>>CONFIG_HEADERS " in
302  *" <<$>>am_file "*<<)>>
303    echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
304    ;;
305  esac
306  am_indx=`expr "<<$>>am_indx" + 1`
307done<<>>dnl>>)
308changequote([,]))])
309
310