|  | dnl aclocal.m4 generated automatically by aclocal 1.4a | 
|  |  | 
|  | dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. | 
|  | dnl This file is free software; the Free Software Foundation | 
|  | dnl gives unlimited permission to copy and/or distribute it, | 
|  | dnl with or without modifications, as long as this notice is preserved. | 
|  |  | 
|  | dnl This program is distributed in the hope that it will be useful, | 
|  | dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without | 
|  | dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A | 
|  | dnl PARTICULAR PURPOSE. | 
|  |  | 
|  | dnl grub_ASM_USCORE checks if C symbols get an underscore after | 
|  | dnl compiling to assembler. | 
|  | dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by | 
|  | dnl Erich Boleyn and modified by OKUJI Yoshinori | 
|  | AC_DEFUN(grub_ASM_USCORE, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING([if C symbols get an underscore after compilation]) | 
|  | AC_CACHE_VAL(grub_cv_asm_uscore, | 
|  | [cat > conftest.c <<\EOF | 
|  | int | 
|  | func (int *list) | 
|  | { | 
|  | *list = 0; | 
|  | return *list; | 
|  | } | 
|  | EOF | 
|  |  | 
|  | if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -S conftest.c]) && test -s conftest.s; then | 
|  | true | 
|  | else | 
|  | AC_MSG_ERROR([${CC-cc} failed to produce assembly code]) | 
|  | fi | 
|  |  | 
|  | if grep _func conftest.s >/dev/null 2>&1; then | 
|  | grub_cv_asm_uscore=yes | 
|  | else | 
|  | grub_cv_asm_uscore=no | 
|  | fi | 
|  |  | 
|  | rm -f conftest*]) | 
|  |  | 
|  | if test "x$grub_cv_asm_uscore" = xyes; then | 
|  | AC_DEFINE_UNQUOTED([HAVE_ASM_USCORE], $grub_cv_asm_uscore, | 
|  | [Define if C symbols get an underscore after compilation]) | 
|  | fi | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_asm_uscore]) | 
|  | ]) | 
|  |  | 
|  |  | 
|  | dnl Some versions of `objcopy -O binary' vary their output depending | 
|  | dnl on the link address. | 
|  | AC_DEFUN(grub_PROG_OBJCOPY_ABSOLUTE, | 
|  | [AC_MSG_CHECKING([whether ${OBJCOPY} works for absolute addresses]) | 
|  | AC_CACHE_VAL(grub_cv_prog_objcopy_absolute, | 
|  | [cat > conftest.c <<\EOF | 
|  | void | 
|  | cmain (void) | 
|  | { | 
|  | *((int *) 0x1000) = 2; | 
|  | } | 
|  | EOF | 
|  |  | 
|  | if AC_TRY_EVAL(ac_compile) && test -s conftest.o; then : | 
|  | else | 
|  | AC_MSG_ERROR([${CC-cc} cannot compile C source code]) | 
|  | fi | 
|  | grub_cv_prog_objcopy_absolute=yes | 
|  | for link_addr in 2000 8000 7C00; do | 
|  | if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -nostdlib -Wl,-N -Wl,-Ttext -Wl,$link_addr conftest.o -o conftest.exec]); then : | 
|  | else | 
|  | AC_MSG_ERROR([${CC-cc} cannot link at address $link_addr]) | 
|  | fi | 
|  | if AC_TRY_COMMAND([${OBJCOPY-objcopy} -O binary conftest.exec conftest]); then : | 
|  | else | 
|  | AC_MSG_ERROR([${OBJCOPY-objcopy} cannot create binary files]) | 
|  | fi | 
|  | if test ! -f conftest.old || AC_TRY_COMMAND([cmp -s conftest.old conftest]); then | 
|  | mv -f conftest conftest.old | 
|  | else | 
|  | grub_cv_prog_objcopy_absolute=no | 
|  | break | 
|  | fi | 
|  | done | 
|  | rm -f conftest*]) | 
|  | AC_MSG_RESULT([$grub_cv_prog_objcopy_absolute])]) | 
|  |  | 
|  | dnl Mass confusion! | 
|  | dnl Older versions of GAS interpret `.code16' to mean ``generate 32-bit | 
|  | dnl instructions, but implicitly insert addr32 and data32 bytes so | 
|  | dnl that the code works in real mode''. | 
|  | dnl | 
|  | dnl Newer versions of GAS interpret `.code16' to mean ``generate 16-bit | 
|  | dnl instructions,'' which seems right.  This requires the programmer | 
|  | dnl to explicitly insert addr32 and data32 instructions when they want | 
|  | dnl them. | 
|  | dnl | 
|  | dnl We only support the newer versions, because the old versions cause | 
|  | dnl major pain, by requiring manual assembly to get 16-bit instructions into | 
|  | dnl stage1/stage1.S. | 
|  | AC_DEFUN(grub_ASM_ADDR32, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_REQUIRE([grub_ASM_PREFIX_REQUIREMENT]) | 
|  | AC_MSG_CHECKING([for .code16 addr32 assembler support]) | 
|  | AC_CACHE_VAL(grub_cv_asm_addr32, | 
|  | [cat > conftest.s.in <<\EOF | 
|  | .code16 | 
|  | l1:	@ADDR32@	movb	%al, l1 | 
|  | EOF | 
|  |  | 
|  | if test "x$grub_cv_asm_prefix_requirement" = xyes; then | 
|  | sed -e s/@ADDR32@/addr32/ < conftest.s.in > conftest.s | 
|  | else | 
|  | sed -e s/@ADDR32@/addr32\;/ < conftest.s.in > conftest.s | 
|  | fi | 
|  |  | 
|  | if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -c conftest.s]) && test -s conftest.o; then | 
|  | grub_cv_asm_addr32=yes | 
|  | else | 
|  | grub_cv_asm_addr32=no | 
|  | fi | 
|  |  | 
|  | rm -f conftest*]) | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_asm_addr32])]) | 
|  |  | 
|  | dnl | 
|  | dnl Later versions of GAS requires that addr32 and data32 prefixes | 
|  | dnl appear in the same lines as the instructions they modify, while | 
|  | dnl earlier versions requires that they appear in separate lines. | 
|  | AC_DEFUN(grub_ASM_PREFIX_REQUIREMENT, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING(dnl | 
|  | [whether addr32 must be in the same line as the instruction]) | 
|  | AC_CACHE_VAL(grub_cv_asm_prefix_requirement, | 
|  | [cat > conftest.s <<\EOF | 
|  | .code16 | 
|  | l1:	addr32	movb	%al, l1 | 
|  | EOF | 
|  |  | 
|  | if AC_TRY_COMMAND([${CC-cc} ${CFLAGS} -c conftest.s]) && test -s conftest.o; then | 
|  | grub_cv_asm_prefix_requirement=yes | 
|  | else | 
|  | grub_cv_asm_prefix_requirement=no | 
|  | fi | 
|  |  | 
|  | rm -f conftest*]) | 
|  |  | 
|  | if test "x$grub_cv_asm_prefix_requirement" = xyes; then | 
|  | grub_tmp_addr32="addr32" | 
|  | grub_tmp_data32="data32" | 
|  | else | 
|  | grub_tmp_addr32="addr32;" | 
|  | grub_tmp_data32="data32;" | 
|  | fi | 
|  |  | 
|  | AC_DEFINE_UNQUOTED([ADDR32], $grub_tmp_addr32, | 
|  | [Define it to \"addr32\" or \"addr32;\" to make GAS happy]) | 
|  | AC_DEFINE_UNQUOTED([DATA32], $grub_tmp_data32, | 
|  | [Define it to \"data32\" or \"data32;\" to make GAS happy]) | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_asm_prefix_requirement])]) | 
|  |  | 
|  | dnl | 
|  | dnl grub_CHECK_START_SYMBOL checks if start is automatically defined by | 
|  | dnl the compiler. | 
|  | dnl Written by OKUJI Yoshinori | 
|  | AC_DEFUN(grub_CHECK_START_SYMBOL, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING([if start is defined by the compiler]) | 
|  | AC_CACHE_VAL(grub_cv_check_start_symbol, | 
|  | [AC_TRY_LINK([], [asm ("incl start")], | 
|  | grub_cv_check_start_symbol=yes, | 
|  | grub_cv_check_start_symbol=no)]) | 
|  |  | 
|  | if test "x$grub_cv_check_start_symbol" = xyes; then | 
|  | AC_DEFINE([HAVE_START_SYMBOL]) | 
|  | fi | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_check_start_symbol]) | 
|  | ]) | 
|  |  | 
|  | dnl | 
|  | dnl grub_CHECK_USCORE_START_SYMBOL checks if _start is automatically | 
|  | dnl defined by the compiler. | 
|  | dnl Written by OKUJI Yoshinori | 
|  | AC_DEFUN(grub_CHECK_USCORE_START_SYMBOL, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING([if _start is defined by the compiler]) | 
|  | AC_CACHE_VAL(grub_cv_check_uscore_start_symbol, | 
|  | [AC_TRY_LINK([], [asm ("incl _start")], | 
|  | grub_cv_check_uscore_start_symbol=yes, | 
|  | grub_cv_check_uscore_start_symbol=no)]) | 
|  |  | 
|  | if test "x$grub_cv_check_uscore_start_symbol" = xyes; then | 
|  | AC_DEFINE([HAVE_USCORE_START_SYMBOL]) | 
|  | fi | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_check_uscore_start_symbol]) | 
|  | ]) | 
|  |  | 
|  | dnl | 
|  | dnl grub_CHECK_END_SYMBOL checks if end is automatically defined by the | 
|  | dnl compiler. | 
|  | dnl Written by OKUJI Yoshinori | 
|  | AC_DEFUN(grub_CHECK_END_SYMBOL, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING([if end is defined by the compiler]) | 
|  | AC_CACHE_VAL(grub_cv_check_end_symbol, | 
|  | [AC_TRY_LINK([], [asm ("incl end")], | 
|  | grub_cv_check_end_symbol=yes, | 
|  | grub_cv_check_end_symbol=no)]) | 
|  |  | 
|  | if test "x$grub_cv_check_end_symbol" = xyes; then | 
|  | AC_DEFINE([HAVE_END_SYMBOL]) | 
|  | fi | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_check_end_symbol]) | 
|  | ]) | 
|  |  | 
|  | dnl | 
|  | dnl grub_CHECK_USCORE_END_SYMBOL checks if _end is automatically defined | 
|  | dnl by the compiler. | 
|  | dnl Written by OKUJI Yoshinori | 
|  | AC_DEFUN(grub_CHECK_USCORE_END_SYMBOL, | 
|  | [AC_REQUIRE([AC_PROG_CC]) | 
|  | AC_MSG_CHECKING([if _end is defined by the compiler]) | 
|  | AC_CACHE_VAL(grub_cv_check_uscore_end_symbol, | 
|  | [AC_TRY_LINK([], [asm ("incl _end")], | 
|  | grub_cv_check_uscore_end_symbol=yes, | 
|  | grub_cv_check_uscore_end_symbol=no)]) | 
|  |  | 
|  | if test "x$grub_cv_check_uscore_end_symbol" = xyes; then | 
|  | AC_DEFINE([HAVE_USCORE_END_SYMBOL]) | 
|  | fi | 
|  |  | 
|  | AC_MSG_RESULT([$grub_cv_check_uscore_end_symbol]) | 
|  | ]) | 
|  |  | 
|  | # Do all the work for Automake.  This macro actually does too much -- | 
|  | # some checks are only needed if your package does certain things. | 
|  | # But this isn't really a big deal. | 
|  |  | 
|  | # serial 1 | 
|  |  | 
|  | dnl Usage: | 
|  | dnl AM_INIT_AUTOMAKE(package,version, [no-define]) | 
|  |  | 
|  | AC_DEFUN(AM_INIT_AUTOMAKE, | 
|  | [AC_REQUIRE([AC_PROG_INSTALL]) | 
|  | dnl We require 2.13 because we rely on SHELL being computed by configure. | 
|  | AC_PREREQ([2.13]) | 
|  | PACKAGE=[$1] | 
|  | AC_SUBST(PACKAGE) | 
|  | VERSION=[$2] | 
|  | AC_SUBST(VERSION) | 
|  | dnl test to see if srcdir already configured | 
|  | if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then | 
|  | AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) | 
|  | fi | 
|  | ifelse([$3],, | 
|  | AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) | 
|  | AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) | 
|  | AC_REQUIRE([AM_SANITY_CHECK]) | 
|  | AC_REQUIRE([AC_ARG_PROGRAM]) | 
|  | dnl FIXME This is truly gross. | 
|  | missing_dir=`cd $ac_aux_dir && pwd` | 
|  | AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) | 
|  | AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) | 
|  | AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) | 
|  | AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) | 
|  | AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) | 
|  | dnl Set install_sh for make dist | 
|  | install_sh="$missing_dir/install-sh" | 
|  | test -f "$install_sh" || install_sh="$missing_dir/install.sh" | 
|  | AC_SUBST(install_sh) | 
|  | dnl We check for tar when the user configures the end package. | 
|  | dnl This is sad, since we only need this for "dist".  However, | 
|  | dnl there's no other good way to do it.  We prefer GNU tar if | 
|  | dnl we can find it.  If we can't find a tar, it doesn't really matter. | 
|  | AC_CHECK_PROGS(AMTAR, gnutar gtar tar) | 
|  | dnl We need awk for the "check" target.  The system "awk" is bad on | 
|  | dnl some platforms. | 
|  | AC_REQUIRE([AC_PROG_AWK]) | 
|  | AMTARFLAGS= | 
|  | if test -n "$AMTAR"; then | 
|  | if $SHELL -c "$AMTAR --version" > /dev/null 2>&1; then | 
|  | dnl We have GNU tar. | 
|  | AMTARFLAGS=o | 
|  | fi | 
|  | fi | 
|  | AC_SUBST(AMTARFLAGS) | 
|  | AC_REQUIRE([AC_PROG_MAKE_SET])]) | 
|  |  | 
|  | # | 
|  | # Check to make sure that the build environment is sane. | 
|  | # | 
|  |  | 
|  | AC_DEFUN(AM_SANITY_CHECK, | 
|  | [AC_MSG_CHECKING([whether build environment is sane]) | 
|  | # Just in case | 
|  | sleep 1 | 
|  | echo timestamp > conftestfile | 
|  | # Do `set' in a subshell so we don't clobber the current shell's | 
|  | # arguments.  Must try -L first in case configure is actually a | 
|  | # symlink; some systems play weird games with the mod time of symlinks | 
|  | # (eg FreeBSD returns the mod time of the symlink's containing | 
|  | # directory). | 
|  | if ( | 
|  | set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` | 
|  | if test "[$]*" = "X"; then | 
|  | # -L didn't work. | 
|  | set X `ls -t $srcdir/configure conftestfile` | 
|  | fi | 
|  | if test "[$]*" != "X $srcdir/configure conftestfile" \ | 
|  | && test "[$]*" != "X conftestfile $srcdir/configure"; then | 
|  |  | 
|  | # If neither matched, then we have a broken ls.  This can happen | 
|  | # if, for instance, CONFIG_SHELL is bash and it inherits a | 
|  | # broken ls alias from the environment.  This has actually | 
|  | # happened.  Such a system could not be considered "sane". | 
|  | AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken | 
|  | alias in your environment]) | 
|  | fi | 
|  |  | 
|  | test "[$]2" = conftestfile | 
|  | ) | 
|  | then | 
|  | # Ok. | 
|  | : | 
|  | else | 
|  | AC_MSG_ERROR([newly created file is older than distributed files! | 
|  | Check your system clock]) | 
|  | fi | 
|  | rm -f conftest* | 
|  | AC_MSG_RESULT(yes)]) | 
|  |  | 
|  | dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) | 
|  | dnl The program must properly implement --version. | 
|  | AC_DEFUN(AM_MISSING_PROG, | 
|  | [AC_MSG_CHECKING(for working $2) | 
|  | # Run test in a subshell; some versions of sh will print an error if | 
|  | # an executable is not found, even if stderr is redirected. | 
|  | # Redirect stdin to placate older versions of autoconf.  Sigh. | 
|  | if ($2 --version) < /dev/null > /dev/null 2>&1; then | 
|  | $1=$2 | 
|  | AC_MSG_RESULT(found) | 
|  | else | 
|  | $1="$3/missing $2" | 
|  | AC_MSG_RESULT(missing) | 
|  | fi | 
|  | AC_SUBST($1)]) | 
|  |  | 
|  | # Like AC_CONFIG_HEADER, but automatically create stamp file. | 
|  |  | 
|  | AC_DEFUN(AM_CONFIG_HEADER, | 
|  | [AC_PREREQ([2.12]) | 
|  | AC_CONFIG_HEADER([$1]) | 
|  | dnl When config.status generates a header, we must update the stamp-h file. | 
|  | dnl This file resides in the same directory as the config header | 
|  | dnl that is generated.  We must strip everything past the first ":", | 
|  | dnl and everything past the last "/". | 
|  | AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl | 
|  | ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, | 
|  | <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, | 
|  | <<am_indx=1 | 
|  | for am_file in <<$1>>; do | 
|  | case " <<$>>CONFIG_HEADERS " in | 
|  | *" <<$>>am_file "*<<)>> | 
|  | echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx | 
|  | ;; | 
|  | esac | 
|  | am_indx=`expr "<<$>>am_indx" + 1` | 
|  | done<<>>dnl>>) | 
|  | changequote([,]))]) | 
|  |  | 
|  | # Add --enable-maintainer-mode option to configure. | 
|  | # From Jim Meyering | 
|  |  | 
|  | # serial 1 | 
|  |  | 
|  | AC_DEFUN(AM_MAINTAINER_MODE, | 
|  | [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) | 
|  | dnl maintainer-mode is disabled by default | 
|  | AC_ARG_ENABLE(maintainer-mode, | 
|  | [  --enable-maintainer-mode enable make rules and dependencies not useful | 
|  | (and sometimes confusing) to the casual installer], | 
|  | USE_MAINTAINER_MODE=$enableval, | 
|  | USE_MAINTAINER_MODE=no) | 
|  | AC_MSG_RESULT($USE_MAINTAINER_MODE) | 
|  | AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) | 
|  | MAINT=$MAINTAINER_MODE_TRUE | 
|  | AC_SUBST(MAINT)dnl | 
|  | ] | 
|  | ) | 
|  |  | 
|  | # Define a conditional. | 
|  |  | 
|  | AC_DEFUN(AM_CONDITIONAL, | 
|  | [AC_SUBST($1_TRUE) | 
|  | AC_SUBST($1_FALSE) | 
|  | if $2; then | 
|  | $1_TRUE= | 
|  | $1_FALSE='#' | 
|  | else | 
|  | $1_TRUE='#' | 
|  | $1_FALSE= | 
|  | fi]) | 
|  |  |