1N/Adnl Configure script for GRUB.
1N/Adnl Copyright 1999,2000,2001,2002,2003,2004,2005 Free Software Foundation, Inc.
1N/A
1N/Adnl Permission to use, copy, modify and distribute this software and its
1N/Adnl documentation is hereby granted, provided that both the copyright
1N/Adnl notice and this permission notice appear in all copies of the
1N/Adnl software, derivative works or modified versions, and any portions
1N/Adnl thereof, and that both notices appear in supporting documentation.
1N/Adnl
1N/Adnl THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
1N/Adnl "AS IS" CONDITION. THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
1N/Adnl LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
1N/Adnl USE OF THIS SOFTWARE.
1N/A
1N/AAC_PREREQ(2.57)
1N/AAC_INIT([GRUB], [0.97], [bug-grub@gnu.org])
1N/AAC_CONFIG_SRCDIR([stage2/stage2.c])
1N/AAC_CONFIG_HEADER([config.h])
1N/AAM_INIT_AUTOMAKE
1N/A
1N/AAC_CANONICAL_HOST
1N/A
1N/Acase "$host_cpu" in
1N/Ai[[3456]]86) host_cpu=i386 ;;
1N/Ax86_64) host_cpu=x86_64 ;;
1N/A*) AC_MSG_ERROR([unsupported CPU type]) ;;
1N/Aesac
1N/A
1N/AAC_SUBST(host_cpu)
1N/AAC_SUBST(host_vendor)
1N/A
1N/A#
1N/A# Options
1N/A#
1N/A
1N/AAM_MAINTAINER_MODE
1N/Aif test "x$enable_maintainer_mode" = xyes; then
1N/A AC_PATH_PROG(PERL,perl)
1N/A if test -z "$PERL"; then
1N/A AC_MSG_ERROR([perl not found])
1N/A fi
1N/Afi
1N/A
1N/A# This should be checked before AC_PROG_CC
1N/Aif test "x$CFLAGS" = x; then
1N/A default_CFLAGS=yes
1N/Afi
1N/A
1N/Aif test "x$host_cpu" = xx86_64; then
1N/A CFLAGS="-m32 $CFLAGS"
1N/Afi
1N/A
1N/A#
1N/A# Programs
1N/A#
1N/A
1N/AAC_CHECK_TOOL(CC, gcc)
1N/AAC_PROG_CC
1N/A# We need this for older versions of Autoconf.
1N/A_AM_DEPENDENCIES(CC)
1N/A
1N/Adnl Because recent automake complains about AS, set it here.
1N/ACCAS="$CC"
1N/AAC_SUBST(CCAS)
1N/A
1N/AAC_ARG_WITH(binutils,
1N/A [ --with-binutils=DIR search the directory DIR to find binutils])
1N/A
1N/Aif test "x$with_binutils" != x; then
1N/Adnl AC_PATH_TOOL is not seen in autoconf 2.13, so use AC_PATH_PROG
1N/Adnl instead for now. It is preferable when you cross-compile GRUB.
1N/Adnl AC_PATH_TOOL(RANLIB, ranlib, :, "$with_binutils:$PATH")
1N/A AC_PATH_PROG(RANLIB, ranlib, :, "$with_binutils:$PATH")
1N/Aelse
1N/A AC_PROG_RANLIB
1N/Afi
1N/A
1N/A# optimization flags
1N/Aif test "x$ac_cv_prog_gcc" = xyes; then
1N/A if test "x$default_CFLAGS" = xyes; then
1N/A # Autoconf may set CFLAGS to -O2 and/or -g. So eliminate them.
1N/A CFLAGS="`echo $CFLAGS | sed -e 's/-g//g' -e 's/-O[[0-9]]//g'` -g"
1N/A # If the user specify the directory for binutils, add the option `-B'.
1N/A if test "x$with_binutils" != x; then
1N/A CFLAGS="-B$with_binutils/ $CFLAGS"
1N/A fi
1N/A STAGE1_CFLAGS="-O2"
1N/A GRUB_CFLAGS="-O2"
1N/A AC_CACHE_CHECK([whether optimization for size works], size_flag, [
1N/A saved_CFLAGS=$CFLAGS
1N/A CFLAGS="-Os -g"
1N/A AC_TRY_COMPILE(, , size_flag=yes, size_flag=no)
1N/A CFLAGS=$saved_CFLAGS
1N/A ])
1N/A if test "x$size_flag" = xyes; then
1N/A STAGE2_CFLAGS="-Os"
1N/A else
1N/A STAGE2_CFLAGS="-O2 -fno-strength-reduce -fno-unroll-loops"
1N/A fi
1N/A # OpenBSD has a GCC extension for protecting applications from
1N/A # stack smashing attacks, but GRUB doesn't want this feature.
1N/A AC_CACHE_CHECK([whether gcc has -fno-stack-protector],
1N/A no_stack_protector_flag, [
1N/A saved_CFLAGS=$CFLAGS
1N/A CFLAGS="-fno-stack-protector"
1N/A AC_TRY_COMPILE(,
1N/A ,
1N/A no_stack_protector_flag=yes,
1N/A no_stack_protector_flag=no)
1N/A CFLAGS=$saved_CFLAGS
1N/A ])
1N/A if test "x$no_stack_protector_flag" = xyes; then
1N/A STAGE2_CFLAGS="$STAGE2_CFLAGS -fno-stack-protector"
1N/A fi
1N/A fi
1N/Afi
1N/A
1N/AAC_SUBST(STAGE1_CFLAGS)
1N/AAC_SUBST(STAGE2_CFLAGS)
1N/AAC_SUBST(GRUB_CFLAGS)
1N/A
1N/A# Enforce coding standards.
1N/ACPPFLAGS="$CPPFLAGS -Wall -Wmissing-prototypes -Wunused -Wshadow"
1N/ACPPFLAGS="$CPPFLAGS -Wpointer-arith"
1N/A
1N/AAC_CACHE_CHECK([whether -Wundef works], undef_flag, [
1N/A saved_CPPFLAGS="$CPPFLAGS"
1N/A CPPFLAGS="-Wundef"
1N/A AC_TRY_COMPILE(, , undef_flag=yes, undef_flag=no)
1N/A CPPFLAGS="$saved_CPPFLAGS"
1N/A])
1N/A
1N/A# The options `-falign-*' are supported by gcc 3.0 or later.
1N/A# Probably it is sufficient to only check for -falign-loops.
1N/AAC_CACHE_CHECK([whether -falign-loops works], [falign_loop_flag], [
1N/A saved_CPPFLAGS="$CPPFLAGS"
1N/A CPPFLAGS="-falign-loops=1"
1N/A AC_TRY_COMPILE(, , [falign_loop_flag=yes], [falign_loop_flag=no])
1N/A CPPFLAGS="$saved_CPPFLAGS"
1N/A])
1N/A
1N/A# Force no alignment to save space.
1N/Aif test "x$falign_loop_flag" = xyes; then
1N/A CPPFLAGS="$CPPFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1"
1N/Aelse
1N/A CPPFLAGS="$CPPFLAGS -malign-jumps=1 -malign-loops=1 -malign-functions=1"
1N/Afi
1N/A
1N/Aif test "x$undef_flag" = xyes; then
1N/A CPPFLAGS="$CPPFLAGS -Wundef"
1N/Afi
1N/A
1N/Aif test "x$with_binutils" != x; then
1N/Adnl AC_PATH_TOOL(OBJCOPY, objcopy, , "$with_binutils:$PATH")
1N/A AC_PATH_PROG(OBJCOPY, objcopy, , "$with_binutils:$PATH")
1N/Aelse
1N/A AC_CHECK_TOOL(OBJCOPY, objcopy)
1N/Afi
1N/A
1N/A# Defined in acinclude.m4.
1N/Agrub_ASM_USCORE
1N/Agrub_PROG_OBJCOPY_ABSOLUTE
1N/Aif test "x$grub_cv_prog_objcopy_absolute" != xyes; then
1N/A AC_MSG_ERROR([GRUB requires a working absolute objcopy; upgrade your binutils])
1N/Afi
1N/A
1N/Agrub_ASM_PREFIX_REQUIREMENT
1N/A
1N/Agrub_ASM_ADDR32
1N/Aif test "x$grub_cv_asm_addr32" != xyes; then
1N/A AC_MSG_ERROR([GRUB requires GAS .code16 addr32 support; upgrade your binutils])
1N/Afi
1N/A
1N/Agrub_ASM_ABSOLUTE_WITHOUT_ASTERISK
1N/A
1N/Agrub_CHECK_START_SYMBOL
1N/Agrub_CHECK_USCORE_START_SYMBOL
1N/Aif test "x$grub_cv_check_start_symbol" != "xyes" \
1N/A -a "x$grub_cv_check_uscore_start_symbol" != "xyes"; then
1N/A AC_MSG_ERROR([Neither start nor _start is defined])
1N/Afi
1N/A
1N/Agrub_CHECK_USCORE_USCORE_BSS_START_SYMBOL
1N/Agrub_CHECK_USCORE_EDATA_SYMBOL
1N/Agrub_CHECK_EDATA_SYMBOL
1N/Aif test "x$grub_cv_check_uscore_uscore_bss_start_symbol" != "xyes" \
1N/A -a "x$grub_cv_check_uscore_edata_symbol" != "xyes" \
1N/A -a "x$grub_cv_check_edata_symbol" != "xyes"; then
1N/A AC_MSG_ERROR([None of __bss_start, _edata, edata defined])
1N/Afi
1N/A
1N/Agrub_CHECK_END_SYMBOL
1N/Agrub_CHECK_USCORE_END_SYMBOL
1N/Aif test "x$grub_cv_check_end_symbol" != "xyes" \
1N/A -a "x$grub_cv_check_uscore_end_symbol" != "xyes"; then
1N/A AC_MSG_ERROR([Neither end nor _end is defined])
1N/Afi
1N/A
1N/A# Check for curses libraries.
1N/AAC_ARG_WITH(curses,
1N/A [ --without-curses do not use curses])
1N/A
1N/A# Get the filename or the whole disk and open it.
1N/A# Known to work on NetBSD.
1N/AAC_CHECK_LIB(util, opendisk, [GRUB_LIBS="$GRUB_LIBS -lutil"
1N/A AC_DEFINE(HAVE_OPENDISK, 1, [Define if opendisk() in -lutil can be used])])
1N/A
1N/A# Unless the user specify --without-curses, check for curses.
1N/Aif test "x$with_curses" != "xno"; then
1N/A AC_CHECK_LIB(ncurses, wgetch, [GRUB_LIBS="$GRUB_LIBS -lncurses"
1N/A AC_DEFINE(HAVE_LIBCURSES, 1, [Define if you have a curses library])],
1N/A [AC_CHECK_LIB(curses, wgetch, [GRUB_LIBS="$GRUB_LIBS -lcurses"
1N/A AC_DEFINE(HAVE_LIBCURSES, 1, [Define if you have a curses library])])])
1N/Afi
1N/A
1N/AAC_SUBST(GRUB_LIBS)
1N/A
1N/A# Check for headers.
1N/AAC_CHECK_HEADERS(string.h strings.h ncurses/curses.h ncurses.h curses.h)
1N/A
1N/A# Check for user options.
1N/A
1N/A# filesystems support.
1N/AAC_ARG_ENABLE(ext2fs,
1N/A [ --disable-ext2fs disable ext2fs support in Stage 2])
1N/A
1N/Aif test x"$enable_ext2fs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_EXT2FS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(fat,
1N/A [ --disable-fat disable FAT support in Stage 2])
1N/A
1N/Aif test x"$enable_fat" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FAT=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ffs,
1N/A [ --disable-ffs disable FFS support in Stage 2])
1N/A
1N/Aif test x"$enable_ffs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ufs,
1N/A [ --disable-ufs disable UFS support in Stage 2])
1N/A
1N/Aif test x"$enable_ufs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_UFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ufs2,
1N/A [ --disable-ufs2 disable UFS2 support in Stage 2])
1N/A
1N/Aif test x"$enable_ufs2" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_UFS2=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(minix,
1N/A [ --disable-minix disable Minix fs support in Stage 2])
1N/A
1N/Aif test x"$enable_minix" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_MINIX=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(reiserfs,
1N/A [ --disable-reiserfs disable ReiserFS support in Stage 2])
1N/A
1N/Aif test x"$enable_reiserfs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_REISERFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(vstafs,
1N/A [ --disable-vstafs disable VSTa FS support in Stage 2])
1N/A
1N/Aif test x"$enable_vstafs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_VSTAFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(jfs,
1N/A [ --disable-jfs disable IBM JFS support in Stage 2])
1N/A
1N/Aif test x"$enable_jfs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_JFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(xfs,
1N/A [ --disable-xfs disable SGI XFS support in Stage 2])
1N/A
1N/Aif test x"$enable_xfs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_XFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(zfs,
1N/A [ --disable-zfs disable ZFS support in Stage 2])
1N/A
1N/Aif test x"$enable_zfs" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_ZFS=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(iso9660,
1N/A [ --disable-iso9660 disable ISO9660 support in Stage 2])
1N/A
1N/Aif test x"$enable_iso9660" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_ISO9660=1"
1N/Afi
1N/A
1N/Adnl AC_ARG_ENABLE(tftp,
1N/Adnl [ --enable-tftp enable TFTP support in Stage 2])
1N/Adnl
1N/Adnl #if test x"$enable_tftp" = xyes; then
1N/Adnl FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_TFTP=1"
1N/Adnl fi
1N/A
1N/AAC_ARG_ENABLE(gunzip,
1N/A [ --disable-gunzip disable decompression in Stage 2])
1N/A
1N/Aif test x"$enable_gunzip" = xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DNO_DECOMPRESSION=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(md5-password,
1N/A [ --disable-md5-password disable MD5 password support in Stage 2])
1N/Aif test "x$enable_md5_password" != xno; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DUSE_MD5_PASSWORDS=1"
1N/Afi
1N/A
1N/Adnl The netboot support.
1N/Adnl General options.
1N/AAC_ARG_ENABLE(packet-retransmission,
1N/A [ --disable-packet-retransmission
1N/A turn off packet retransmission])
1N/Aif test "x$enable_packet_retransmission" != xno; then
1N/A NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DCONGESTED=1 -DCONFIG_PCI"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(pci-direct,
1N/A [ --enable-pci-direct access PCI directly instead of using BIOS])
1N/Aif test "x$enable_pci_direct" = xyes; then
1N/A NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DCONFIG_PCI_DIRECT=1"
1N/Afi
1N/A
1N/Adnl Device drivers.
1N/AAC_ARG_ENABLE(3c595,
1N/A [ --enable-3c595 enable 3Com595 driver])
1N/Aif test "x$enable_3c595" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_3C595=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS 3c595.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(3c90x,
1N/A [ --enable-3c90x enable 3Com90x driver])
1N/Aif test "x$enable_3c90x" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_3C90X=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS 3c90x.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(davicom,
1N/A [ --enable-davicom enable Davicom driver])
1N/Aif test "x$enable_davicom" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_DAVICOM=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS davicom.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(e1000,
1N/A [ --enable-e1000 enable Etherexpress Pro/1000 driver])
1N/Aif test "x$enable_e1000" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_E1000=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS e1000.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(eepro100,
1N/A [ --enable-eepro100 enable Etherexpress Pro/100 driver])
1N/Aif test "x$enable_eepro100" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_EEPRO100=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS eepro100.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(epic100,
1N/A [ --enable-epic100 enable SMC 83c170 EPIC/100 driver])
1N/Aif test "x$enable_epic100" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_EPIC100=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS epic100.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(forcedeth,
1N/A [ --enable-forcedeth enable Nvidia Geforce driver])
1N/Aif test "x$enable_forcedeth" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_FORCEDETH=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS forcedeth.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(natsemi,
1N/A [ --enable-natsemi enable NatSemi DP8381x driver])
1N/Aif test "x$enable_natsemi" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_NATSEMI=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS natsemi.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ns83820,
1N/A [ --enable-ns83820 enable NS83820 driver])
1N/Aif test "x$enable_ns83820" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_NS83820=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS ns83820.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ns8390,
1N/A [ --enable-ns8390 enable NE2000 PCI driver])
1N/Aif test "x$enable_ns8390" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_NS8390=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS ns8390.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(pcnet32,
1N/A [ --enable-pcnet32 enable AMD Lance/PCI PCNet/32 driver])
1N/Aif test "x$enable_pcnet32" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_PCNET32=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS pcnet32.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(pnic,
1N/A [ --enable-pnic enable Bochs Pseudo Nic driver])
1N/Aif test "x$enable_pnic" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_PNIC=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS pnic.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(rtl8139,
1N/A [ --enable-rtl8139 enable Realtek 8139 driver])
1N/Aif test "x$enable_rtl8139" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_RTL8139=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS rtl8139.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(r8169,
1N/A [ --enable-r8169 enable Realtek 8169 driver])
1N/Aif test "x$enable_r8169" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_R8169=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS r8169.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(sis900,
1N/A [ --enable-sis900 enable SIS 900 and SIS 7016 driver])
1N/Aif test "x$enable_sis900" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_SIS900=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS sis900.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(sundance,
1N/A [ --enable-sundance enable Sundance ST201 driver])
1N/Aif test "x$enable_sundance" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_SUNDANCE=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS sundance.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(tg3,
1N/A [ --enable-tg3 enable Broadcom Tigon3 driver])
1N/Aif test "x$enable_tg3" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_TG3=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS tg3.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(tulip,
1N/A [ --enable-tulip enable Tulip driver])
1N/Aif test "x$enable_tulip" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_TULIP=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS tulip.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(tlan,
1N/A [ --enable-tlan enable TI ThunderLAN driver])
1N/Aif test "x$enable_tlan" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_TLAN=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS tlan.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(undi,
1N/A [ --enable-undi enable PXE UNDI driver])
1N/Aif test "x$enable_undi" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_UNDI=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS undi.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(via-rhine,
1N/A [ --enable-via-rhine enable Rhine-I/II driver])
1N/Aif test "x$enable_via_rhine" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_VIA_RHINE=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS via_rhine.o"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(w89c840,
1N/A [ --enable-w89c840 enable Winbond W89c840 driver])
1N/Aif test "x$enable_w89c840" = xyes; then
1N/A NET_CFLAGS="$NET_CFLAGS -DINCLUDE_W89C840=1"
1N/A NETBOOT_DRIVERS="$NETBOOT_DRIVERS w89c840.o"
1N/Afi
1N/A
1N/Adnl Check if the netboot support is turned on.
1N/AAM_CONDITIONAL(NETBOOT_SUPPORT, test "x$NET_CFLAGS" != x)
1N/Aif test "x$NET_CFLAGS" != x; then
1N/A FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_TFTP=1"
1N/Afi
1N/A
1N/Adnl extra flag for ns8390.c
1N/AAC_ARG_ENABLE(compex-rl2000-fix,
1N/A [ --enable-compex-rl2000-fix
1N/A specify this if you have a Compex RL2000 PCI])
1N/Aif test "x$enable_compex_rl2000_fix" = xyes; then
1N/A NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DCOMPEX_RL2000_FIX=1"
1N/Afi
1N/A
1N/AAC_ARG_ENABLE(ne-scan,
1N/A [ --enable-ne-scan=LIST probe for NE base address using LIST],
1N/A [NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DNE_SCAN=$enable_ne_scan"],
1N/A [NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DNE_SCAN=0x280,0x300,0x320,0x340"])
1N/A
1N/AAC_ARG_ENABLE(wd-default-mem,
1N/A [ --enable-wd-default-mem=MEM
1N/A set the default memory location for WD/SMC],
1N/A [NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DWD_DEFAULT_MEM=$enable_wd_default_mem"],
1N/A [NET_EXTRAFLAGS="$NET_EXTRAFLAGS -DWD_DEFAULT_MEM=0xCC000"])
1N/A
1N/Adnl Diskless
1N/AAC_ARG_ENABLE(diskless,
1N/A [ --enable-diskless enable diskless support])
1N/AAM_CONDITIONAL(DISKLESS_SUPPORT, test "x$enable_diskless" = xyes)
1N/A
1N/Adnl Graphical splashscreen support
1N/AAC_ARG_ENABLE(graphics,
1N/A [ --disable-graphics disable graphics terminal support])
1N/AAM_CONDITIONAL(GRAPHICS_SUPPORT, test "x$enable_graphics" != xno)
1N/A
1N/Adnl Hercules terminal
1N/AAC_ARG_ENABLE(hercules,
1N/A [ --disable-hercules disable hercules terminal support])
1N/AAM_CONDITIONAL(HERCULES_SUPPORT, test "x$enable_hercules" != xno)
1N/A
1N/Adnl Serial terminal
1N/AAC_ARG_ENABLE(serial,
1N/A [ --disable-serial disable serial terminal support])
1N/AAM_CONDITIONAL(SERIAL_SUPPORT, test "x$enable_serial" != xno)
1N/A
1N/Adnl Simulation of the slowness of a serial device.
1N/AAC_ARG_ENABLE(serial-speed-simulation,
1N/A [ --enable-serial-speed-simulation
1N/A simulate the slowness of a serial device])
1N/AAM_CONDITIONAL(SERIAL_SPEED_SIMULATION,
1N/A test "x$enable_serial_speed_simulation" = xyes)
1N/A
1N/A# Sanity check.
1N/Aif test "x$enable_diskless" = xyes; then
1N/A if test "x$NET_CFLAGS" = x; then
1N/A AC_MSG_ERROR([You must enable at least one network driver])
1N/A fi
1N/Afi
1N/A
1N/Adnl Embed a menu string in GRUB itself.
1N/AAC_ARG_ENABLE(preset-menu,
1N/A [ --enable-preset-menu=FILE
1N/A preset a menu file FILE in Stage 2])
1N/Aif test "x$enable_preset_menu" = x; then
1N/A :
1N/Aelse
1N/A if test -r $enable_preset_menu; then
1N/A grub_DEFINE_FILE(PRESET_MENU_STRING, [$enable_preset_menu],
1N/A [Define if there is user specified preset menu string])
1N/A else
1N/A AC_MSG_ERROR([Cannot read the preset menu file $enable_preset_menu])
1N/A fi
1N/Afi
1N/A
1N/Adnl Build the example Multiboot kernel.
1N/AAC_ARG_ENABLE(example-kernel,
1N/A [ --enable-example-kernel
1N/A build the example Multiboot kernel])
1N/AAM_CONDITIONAL(BUILD_EXAMPLE_KERNEL, test "x$enable_example_kernel" = xyes)
1N/A
1N/Adnl Automatic Linux mem= option.
1N/AAC_ARG_ENABLE(auto-linux-mem-opt,
1N/A [ --disable-auto-linux-mem-opt
1N/A don't pass Linux mem= option automatically])
1N/Aif test "x$enable_auto_linux_mem_opt" = xno; then
1N/A :
1N/Aelse
1N/A AC_DEFINE(AUTO_LINUX_MEM_OPT, 1, [Define if you don't want to pass the mem= option to Linux])
1N/Afi
1N/A
1N/Adnl Now substitute the variables.
1N/AAC_SUBST(FSYS_CFLAGS)
1N/AAC_SUBST(NET_CFLAGS)
1N/AAC_SUBST(NET_EXTRAFLAGS)
1N/AAC_SUBST(NETBOOT_DRIVERS)
1N/A
1N/Adnl Because recent automake complains about CCASFLAGS, set it here.
1N/ACCASFLAGS='$(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)'
1N/AAC_SUBST(CCASFLAGS)
1N/A
1N/A
1N/Adnl Output.
1N/AAC_CONFIG_FILES([Makefile stage1/Makefile stage2/Makefile \
1N/A docs/Makefile lib/Makefile util/Makefile \
1N/A grub/Makefile netboot/Makefile util/grub-image \
1N/A util/grub-install util/grub-md5-crypt \
1N/A util/grub-terminfo util/grub-set-default])
1N/AAC_OUTPUT