From 25de0c4bba215305c7368a2b1d62ab2b40ac4b80 Mon Sep 17 00:00:00 2001 From: okuji Date: Fri, 13 Aug 1999 14:52:37 +0000 Subject: [PATCH] new options, --disable-ext2fs, --disable-fat and --disable-ffs --- ChangeLog | 21 ++++++ Makefile.in | 1 + NEWS | 2 + README | 3 +- TODO | 2 + configure | 159 ++++++++++++++++++++++++++++--------------- configure.in | 28 ++++++++ debian/Makefile.in | 1 + docs/Makefile.in | 1 + grub/Makefile.am | 3 +- grub/Makefile.in | 4 +- stage1/Makefile.in | 1 + stage2/Makefile.am | 9 +-- stage2/Makefile.in | 137 +++++++++++++++++++------------------ stage2/filesys.h | 10 --- stage2/fsys_ext2fs.c | 3 + stage2/fsys_fat.c | 3 + stage2/fsys_ffs.c | 4 +- 18 files changed, 251 insertions(+), 141 deletions(-) diff --git a/ChangeLog b/ChangeLog index ab43332d2..7fb3fc336 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +1999-08-13 OKUJI Yoshinori + + Pavel Roskin's patch that adds new options to disable arbitrary + filesystems is heavily modified and applied. + + * configure.in (--disable-ext2fs): New option. + (--disable-fat): Likewise. + (--disable-ffs): Likewise. + (FSYS_CFLAGS): New variable. Set to filesystems the user choose. + * grub/Makefile.am (AM_CFLAGS): Added -DFSYS_EXT2FS=1, + -DFSYS_FAT=1 and -DFSYS_FFS=1. + * stage2/Makefile.am (libgrub_a_CFLAGS): Likewise. + (stage2_exec_CFLAGS): Added @FSYS_CFLAGS@. + * stage2/filesys.h + [!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_FFS): Deleted. + [!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_FAT): Likewise. + [!(FSYS_FFS || FSYS_FAT || FSYS_EXT2FS)] (FSYS_EXT2FS): Likewise. + * stage2/fsys_ext2fs.c [!FSYS_EXT2FS]: Do not define anything. + * stage2/fsys_fat.c [!FSYS_FAT]: Likewise. + * stage2/fsys_ffs.c [!FSYS_FFS]: Likewise. + 1999-08-12 OKUJI Yoshinori * stage1/stage1_lba.S: Use STAGE1_DRP_ADDR for the address of diff --git a/Makefile.in b/Makefile.in index 2ac0fab1c..6b76be5f7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -63,6 +63,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ diff --git a/NEWS b/NEWS index a821f69b1..bc77a136b 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,8 @@ New in 0.5.93: * ELF format of FreeBSD kernel is supported. * Support the partition ids for NetBSD and OpenBSD. * Exit from the grub emulator just by pushing the key `q' in the menu. +* The options --disable-ext2fs, --disable-fat and --disable-ffs disable + ext2fs, FAT and FFS support in Stage 2 respectively. New in 0.5.92 - 1999-07-26: * Bug fixes (i.e. Stage 1.5 can work fine again). diff --git a/README b/README index 7bdcaf197..a2849aafa 100644 --- a/README +++ b/README @@ -44,7 +44,8 @@ using GRUB as your bootloader. GNU GRUB has a page on the web. See: - http://www.gnu.org/software/grub/grub.html + http://www.gnu.org/software/grub/grub.en.html (English) + http://www.gnu.org/software/grub/grub.ja.html (Japanese) If you have any suggestions or bug reports, please send electronic mail to the GRUB mailing list . diff --git a/TODO b/TODO index e5eb64168..eb98c5d15 100644 --- a/TODO +++ b/TODO @@ -36,3 +36,5 @@ Clean up and enhance the manuals, especially concept indexes. Add more filesystems support (minix, FAT32, etc.) ??? Add hide and unhide facilities. + +Add remote console support (serial, parallel and net). diff --git a/configure b/configure index 4d0cb4207..fb369f637 100644 --- a/configure +++ b/configure @@ -14,6 +14,12 @@ ac_default_prefix=/usr/local ac_help="$ac_help --enable-maintainer-mode enable the maintainer mode" +ac_help="$ac_help + --disable-ext2fs disable ext2fs support in Stage 2" +ac_help="$ac_help + --disable-fat disable FAT support in Stage 2" +ac_help="$ac_help + --disable-ffs disable FFS support in Stage 2" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -555,7 +561,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:559: checking for a BSD compatible install" >&5 +echo "configure:565: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"\${ac_cv_path_install+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -612,7 +618,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 -echo "configure:616: checking whether build environment is sane" >&5 +echo "configure:622: checking whether build environment is sane" >&5 # Just in case sleep 1 echo timestamp > conftestfile @@ -673,7 +679,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:677: checking for $ac_word" >&5 +echo "configure:683: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_AWK+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -703,7 +709,7 @@ test -n "$AWK" && break done echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:707: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:713: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -752,7 +758,7 @@ EOF missing_dir=`cd $ac_aux_dir && pwd` echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 -echo "configure:756: checking for working aclocal" >&5 +echo "configure:762: checking for working aclocal" >&5 # 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. @@ -765,7 +771,7 @@ else fi echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 -echo "configure:769: checking for working autoconf" >&5 +echo "configure:775: checking for working autoconf" >&5 # 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. @@ -778,7 +784,7 @@ else fi echo $ac_n "checking for working automake""... $ac_c" 1>&6 -echo "configure:782: checking for working automake" >&5 +echo "configure:788: checking for working automake" >&5 # 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. @@ -791,7 +797,7 @@ else fi echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 -echo "configure:795: checking for working autoheader" >&5 +echo "configure:801: checking for working autoheader" >&5 # 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. @@ -804,7 +810,7 @@ else fi echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 -echo "configure:808: checking for working makeinfo" >&5 +echo "configure:814: checking for working makeinfo" >&5 # 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. @@ -824,7 +830,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:828: checking for $ac_word" >&5 +echo "configure:834: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_AMTAR+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -865,7 +871,7 @@ fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:869: checking host system type" >&5 +echo "configure:875: checking host system type" >&5 if test "x$ac_cv_host" = "x" || (test "x$host" != "xNONE" && test "x$host" != "x$ac_cv_host_alias"); then # Make sure we can run config.sub. @@ -950,7 +956,7 @@ fi echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:954: checking build system type" >&5 +echo "configure:960: checking build system type" >&5 if test "x$ac_cv_build" = "x" || (test "x$build" != "xNONE" && test "x$build" != "x$ac_cv_build_alias"); then # Make sure we can run config.sub. @@ -997,7 +1003,7 @@ fi # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1001: checking for $ac_word" >&5 +echo "configure:1007: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1029,7 +1035,7 @@ fi # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1033: checking for $ac_word" >&5 +echo "configure:1039: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1059,7 +1065,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1063: checking for $ac_word" >&5 +echo "configure:1069: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1110,7 +1116,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1114: checking for $ac_word" >&5 +echo "configure:1120: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1142,7 +1148,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1146: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works" >&5 +echo "configure:1152: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1153,12 +1159,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 1157 "configure" +#line 1163 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:1162: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1168: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1184,12 +1190,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1188: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1194: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1193: checking whether we are using GNU C" >&5 +echo "configure:1199: checking whether we are using GNU C" >&5 if eval "test \"\${ac_cv_prog_gcc+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1198,7 +1204,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1202: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1208: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1217,7 +1223,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1221: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1227: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"\${ac_cv_prog_cc_g+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1251,7 +1257,7 @@ fi # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1255: checking for $ac_word" >&5 +echo "configure:1261: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_RANLIB+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1286,7 +1292,7 @@ if test "x$ac_cv_prog_gcc" = xyes; then STAGE1_CFLAGS="-O2" GRUB_CFLAGS="-O2" echo $ac_n "checking whether optimization for size works""... $ac_c" 1>&6 -echo "configure:1290: checking whether optimization for size works" >&5 +echo "configure:1296: checking whether optimization for size works" >&5 if eval "test \"\${size_flag+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1294,14 +1300,14 @@ else saved_CFLAGS=$CFLAGS CFLAGS="-Os -g" cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1311: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* size_flag=yes else @@ -1334,7 +1340,7 @@ CPPFLAGS="$CPPFLAGS -Wall -Wmissing-prototypes -Wunused" # Extract the first word of "${ac_tool_prefix}ld", so it can be a program name with args. set dummy ${ac_tool_prefix}ld; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1338: checking for $ac_word" >&5 +echo "configure:1344: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_LD+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1366,7 +1372,7 @@ fi # Extract the first word of "${ac_tool_prefix}objcopy", so it can be a program name with args. set dummy ${ac_tool_prefix}objcopy; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1370: checking for $ac_word" >&5 +echo "configure:1376: checking for $ac_word" >&5 if eval "test \"\${ac_cv_prog_OBJCOPY+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1399,7 +1405,7 @@ fi # Defined in acinclude.m4. echo $ac_n "checking symbol names produced by ${CC-cc}""... $ac_c" 1>&6 -echo "configure:1403: checking symbol names produced by ${CC-cc}" >&5 +echo "configure:1409: checking symbol names produced by ${CC-cc}" >&5 if eval "test \"\${grub_cv_asm_ext_c+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1412,7 +1418,7 @@ func (int *list) } EOF -if { ac_try='${CC-cc} -S conftest.c'; { (eval echo configure:1416: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.s; then : +if { ac_try='${CC-cc} -S conftest.c'; { (eval echo configure:1422: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.s; then : else { echo "configure: error: ${CC-cc} failed to produce assembly code" 1>&2; exit 1; } fi @@ -1441,7 +1447,7 @@ EOF echo $ac_n "checking whether ${OBJCOPY} works for absolute addresses""... $ac_c" 1>&6 -echo "configure:1445: checking whether ${OBJCOPY} works for absolute addresses" >&5 +echo "configure:1451: checking whether ${OBJCOPY} works for absolute addresses" >&5 if eval "test \"\${grub_cv_prog_objcopy_absolute+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1453,21 +1459,21 @@ blah (void) } EOF -if { (eval echo configure:1457: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then : +if { (eval echo configure:1463: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then : else { echo "configure: error: ${CC-cc} cannot compile C source code" 1>&2; exit 1; } fi grub_cv_prog_objcopy_absolute=yes for link_addr in 2000 8000 7C00; do - if { ac_try='${LD-ld} -N -Ttext $link_addr conftest.o -o conftest.exec'; { (eval echo configure:1463: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : + if { ac_try='${LD-ld} -N -Ttext $link_addr conftest.o -o conftest.exec'; { (eval echo configure:1469: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : else { echo "configure: error: ${LD-ld} cannot link at address $link_addr" 1>&2; exit 1; } fi - if { ac_try='${OBJCOPY-objcopy} -O binary conftest.exec conftest'; { (eval echo configure:1467: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : + if { ac_try='${OBJCOPY-objcopy} -O binary conftest.exec conftest'; { (eval echo configure:1473: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : else { echo "configure: error: ${OBJCOPY-objcopy} cannot create binary files" 1>&2; exit 1; } fi - if test ! -f conftest.old || { ac_try='cmp -s conftest.old conftest'; { (eval echo configure:1471: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + if test ! -f conftest.old || { ac_try='cmp -s conftest.old conftest'; { (eval echo configure:1477: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then mv -f conftest conftest.old else grub_cv_prog_objcopy_absolute=no @@ -1484,7 +1490,7 @@ fi echo $ac_n "checking for .code16 addr32 assembler support""... $ac_c" 1>&6 -echo "configure:1488: checking for .code16 addr32 assembler support" >&5 +echo "configure:1494: checking for .code16 addr32 assembler support" >&5 if eval "test \"\${grub_cv_asm_addr32+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1494,7 +1500,7 @@ l1: addr32 movb %al, l1 EOF -if { ac_try='${CC-cc} -c conftest.s'; { (eval echo configure:1498: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then +if { ac_try='${CC-cc} -c conftest.s'; { (eval echo configure:1504: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then grub_cv_asm_addr32=yes else grub_cv_asm_addr32=no @@ -1509,7 +1515,7 @@ fi echo $ac_n "checking whether addr32 must be in the same line as the instruction""... $ac_c" 1>&6 -echo "configure:1513: checking whether addr32 must be in the same line as the instruction" >&5 +echo "configure:1519: checking whether addr32 must be in the same line as the instruction" >&5 if eval "test \"\${grub_cv_asm_prefix_requirement+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1518,7 +1524,7 @@ else l1: addr32 movb %al, l1 EOF -if { ac_try='${CC-cc} -c conftest.s'; { (eval echo configure:1522: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then +if { ac_try='${CC-cc} -c conftest.s'; { (eval echo configure:1528: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then grub_cv_asm_prefix_requirement=yes else grub_cv_asm_prefix_requirement=no @@ -1549,7 +1555,7 @@ fi # Check for curses libraries. echo $ac_n "checking for getch in -lncurses""... $ac_c" 1>&6 -echo "configure:1553: checking for getch in -lncurses" >&5 +echo "configure:1559: checking for getch in -lncurses" >&5 ac_lib_var=`echo ncurses'_'getch | sed 'y%./+-:%__p__%'` if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1557,7 +1563,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lncurses $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1578: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1591,7 +1597,7 @@ EOF else echo "$ac_t""no" 1>&6 echo $ac_n "checking for getch in -lcurses""... $ac_c" 1>&6 -echo "configure:1595: checking for getch in -lcurses" >&5 +echo "configure:1601: checking for getch in -lcurses" >&5 ac_lib_var=`echo curses'_'getch | sed 'y%./+-:%__p__%'` if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1599,7 +1605,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcurses $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1620: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1640,7 +1646,7 @@ fi # Check for headers. echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1644: checking how to run the C preprocessor" >&5 +echo "configure:1650: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1655,13 +1661,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1665: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1671: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1672,13 +1678,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1688: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1689,13 +1695,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1699: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1705: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1723,17 +1729,17 @@ for ac_hdr in string.h strings.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1727: checking for $ac_hdr" >&5 +echo "configure:1733: checking for $ac_hdr" >&5 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1737: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1760,6 +1766,46 @@ fi done +# Check for user options. + +# filesystems support. +# Check whether --enable-ext2fs or --disable-ext2fs was given. +if test "${enable_ext2fs+set}" = set; then + enableval="$enable_ext2fs" + : +fi + + +if test x"$enable_ext2fs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_EXT2FS=1" +fi + +# Check whether --enable-fat or --disable-fat was given. +if test "${enable_fat+set}" = set; then + enableval="$enable_fat" + : +fi + + +if test x"$enable_fat" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FAT=1" +fi + +# Check whether --enable-ffs or --disable-ffs was given. +if test "${enable_ffs+set}" = set; then + enableval="$enable_ffs" + : +fi + + +if test x"$enable_ffs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FFS=1" +fi + + + + +# Output. trap '' 1 2 15 cat > confcache <<\EOF # This file is a shell script that caches the results of configure @@ -1942,6 +1988,7 @@ s%@LD@%$LD%g s%@OBJCOPY@%$OBJCOPY%g s%@GRUB_LIBS@%$GRUB_LIBS%g s%@CPP@%$CPP%g +s%@FSYS_CFLAGS@%$FSYS_CFLAGS%g CEOF EOF diff --git a/configure.in b/configure.in index 55266aedb..54959d24f 100644 --- a/configure.in +++ b/configure.in @@ -117,5 +117,33 @@ AC_SUBST(GRUB_LIBS) # Check for headers. AC_CHECK_HEADERS(string.h strings.h) +# Check for user options. + +# filesystems support. +AC_ARG_ENABLE(ext2fs, + [ --disable-ext2fs disable ext2fs support in Stage 2]) + +if test x"$enable_ext2fs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_EXT2FS=1" +fi + +AC_ARG_ENABLE(fat, + [ --disable-fat disable FAT support in Stage 2]) + +if test x"$enable_fat" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FAT=1" +fi + +AC_ARG_ENABLE(ffs, + [ --disable-ffs disable FFS support in Stage 2]) + +if test x"$enable_ffs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_FFS=1" +fi + +AC_SUBST(FSYS_CFLAGS) + + +# Output. AC_OUTPUT([Makefile stage1/Makefile stage2/Makefile docs/Makefile \ debian/Makefile grub/Makefile]) diff --git a/debian/Makefile.in b/debian/Makefile.in index ea1251c40..ac7762c93 100644 --- a/debian/Makefile.in +++ b/debian/Makefile.in @@ -63,6 +63,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ diff --git a/docs/Makefile.in b/docs/Makefile.in index 67347cef9..e547d51e9 100644 --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -63,6 +63,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ diff --git a/grub/Makefile.am b/grub/Makefile.am index cd94fa9e9..61a636ca3 100644 --- a/grub/Makefile.am +++ b/grub/Makefile.am @@ -1,6 +1,7 @@ sbin_PROGRAMS = grub -AM_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -fwritable-strings \ +AM_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 \ + -DFSYS_FFS=1 -fwritable-strings \ -I$(top_srcdir)/stage2 -I$(top_srcdir)/stage1 grub_SOURCES = main.c asmstub.c getopt.c getopt1.c getopt.h diff --git a/grub/Makefile.in b/grub/Makefile.in index 0bceb32be..93c7bad1f 100644 --- a/grub/Makefile.in +++ b/grub/Makefile.in @@ -63,6 +63,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ @@ -80,7 +81,8 @@ install_sh = @install_sh@ sbin_PROGRAMS = grub -AM_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -fwritable-strings \ +AM_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 \ + -DFSYS_FFS=1 -fwritable-strings \ -I$(top_srcdir)/stage2 -I$(top_srcdir)/stage1 diff --git a/stage1/Makefile.in b/stage1/Makefile.in index e8974478f..cc8fa8b27 100644 --- a/stage1/Makefile.in +++ b/stage1/Makefile.in @@ -61,6 +61,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ diff --git a/stage2/Makefile.am b/stage2/Makefile.am index 48d2c080b..7314d17ae 100644 --- a/stage2/Makefile.am +++ b/stage2/Makefile.am @@ -15,7 +15,8 @@ INCLUDES = -I$(top_srcdir)/stage1 noinst_LIBRARIES = libgrub.a libgrub_a_SOURCES = boot.c common.c char_io.c cmdline.c disk_io.c \ gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c stage2.c -libgrub_a_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -fwritable-strings +libgrub_a_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 \ + -DFSYS_FAT=1 -DFSYS_FFS=1 -fwritable-strings # Stage 2 and Stage 1.5's. pkgdatadir = $(datadir)/$(PACKAGE)/$(host_cpu)-$(host_vendor) @@ -35,9 +36,9 @@ STAGE1_5_COMPILE = $(STAGE2_COMPILE) -DNO_DECOMPRESSION=1 -DSTAGE1_5=1 \ # asm.S absolutely needs to come first! # For stage2 target. stage2_exec_SOURCES = asm.S boot.c common.c char_io.c cmdline.c \ - disk_io.c gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c stage2.c \ - bios.c smp-imps.c -stage2_exec_CFLAGS = $(STAGE2_COMPILE) + disk_io.c gunzip.c stage2.c bios.c smp-imps.c fsys_ext2fs.c \ + fsys_fat.c fsys_ffs.c +stage2_exec_CFLAGS = $(STAGE2_COMPILE) @FSYS_CFLAGS@ stage2_exec_LDFLAGS = $(STAGE2_LINK) # For e2fs_stage1_5 target. diff --git a/stage2/Makefile.in b/stage2/Makefile.in index 4557ed4e0..7743bced7 100644 --- a/stage2/Makefile.in +++ b/stage2/Makefile.in @@ -61,6 +61,7 @@ AMTAR = @AMTAR@ AMTARFLAGS = @AMTARFLAGS@ AWK = @AWK@ CC = @CC@ +FSYS_CFLAGS = @FSYS_CFLAGS@ GRUB_CFLAGS = @GRUB_CFLAGS@ GRUB_LIBS = @GRUB_LIBS@ LD = @LD@ @@ -96,7 +97,9 @@ noinst_LIBRARIES = libgrub.a libgrub_a_SOURCES = boot.c common.c char_io.c cmdline.c disk_io.c \ gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c stage2.c -libgrub_a_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -fwritable-strings +libgrub_a_CFLAGS = @GRUB_CFLAGS@ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 \ + -DFSYS_FAT=1 -DFSYS_FFS=1 -fwritable-strings + # Stage 2 and Stage 1.5's. pkgdatadir = $(datadir)/$(PACKAGE)/$(host_cpu)-$(host_vendor) @@ -118,10 +121,10 @@ STAGE1_5_COMPILE = $(STAGE2_COMPILE) -DNO_DECOMPRESSION=1 -DSTAGE1_5=1 \ # asm.S absolutely needs to come first! # For stage2 target. stage2_exec_SOURCES = asm.S boot.c common.c char_io.c cmdline.c \ - disk_io.c gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c stage2.c \ - bios.c smp-imps.c + disk_io.c gunzip.c stage2.c bios.c smp-imps.c fsys_ext2fs.c \ + fsys_fat.c fsys_ffs.c -stage2_exec_CFLAGS = $(STAGE2_COMPILE) +stage2_exec_CFLAGS = $(STAGE2_COMPILE) @FSYS_CFLAGS@ stage2_exec_LDFLAGS = $(STAGE2_LINK) # For e2fs_stage1_5 target. @@ -192,9 +195,9 @@ ffs_stage1_5_exec_LDADD = $(LDADD) ffs_stage1_5_exec_DEPENDENCIES = am_stage2_exec_OBJECTS = stage2_exec-asm.o stage2_exec-boot.o \ stage2_exec-common.o stage2_exec-char_io.o stage2_exec-cmdline.o \ -stage2_exec-disk_io.o stage2_exec-gunzip.o stage2_exec-fsys_ffs.o \ -stage2_exec-fsys_ext2fs.o stage2_exec-fsys_fat.o stage2_exec-stage2.o \ -stage2_exec-bios.o stage2_exec-smp-imps.o +stage2_exec-disk_io.o stage2_exec-gunzip.o stage2_exec-stage2.o \ +stage2_exec-bios.o stage2_exec-smp-imps.o stage2_exec-fsys_ext2fs.o \ +stage2_exec-fsys_fat.o stage2_exec-fsys_ffs.o stage2_exec_OBJECTS = $(am_stage2_exec_OBJECTS) stage2_exec_LDADD = $(LDADD) stage2_exec_DEPENDENCIES = @@ -321,12 +324,12 @@ stage2_exec-char_io.o: char_io.c stage2_exec-cmdline.o: cmdline.c stage2_exec-disk_io.o: disk_io.c stage2_exec-gunzip.o: gunzip.c -stage2_exec-fsys_ffs.o: fsys_ffs.c -stage2_exec-fsys_ext2fs.o: fsys_ext2fs.c -stage2_exec-fsys_fat.o: fsys_fat.c stage2_exec-stage2.o: stage2.c stage2_exec-bios.o: bios.c stage2_exec-smp-imps.o: smp-imps.c +stage2_exec-fsys_ext2fs.o: fsys_ext2fs.c +stage2_exec-fsys_fat.o: fsys_fat.c +stage2_exec-fsys_ffs.o: fsys_ffs.c stage2.exec: $(stage2_exec_OBJECTS) $(stage2_exec_DEPENDENCIES) @rm -f stage2.exec @@ -1084,63 +1087,6 @@ stage2_exec-gunzip.lo: gunzip.c >> .deps/$(*D)/$(*F).P; \ rm -f .deps/$(*D)/$(*F).pp -stage2_exec-fsys_ffs.o: fsys_ffs.c - @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm .deps/$(*D)/$(*F).pp - -stage2_exec-fsys_ffs.lo: fsys_ffs.c - @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm -f .deps/$(*D)/$(*F).pp - -stage2_exec-fsys_ext2fs.o: fsys_ext2fs.c - @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm .deps/$(*D)/$(*F).pp - -stage2_exec-fsys_ext2fs.lo: fsys_ext2fs.c - @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm -f .deps/$(*D)/$(*F).pp - -stage2_exec-fsys_fat.o: fsys_fat.c - @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm .deps/$(*D)/$(*F).pp - -stage2_exec-fsys_fat.lo: fsys_fat.c - @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ - $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< - @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ - tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ - | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*D)/$(*F).P; \ - rm -f .deps/$(*D)/$(*F).pp - stage2_exec-stage2.o: stage2.c @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< @@ -1197,6 +1143,63 @@ stage2_exec-smp-imps.lo: smp-imps.c | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ >> .deps/$(*D)/$(*F).P; \ rm -f .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_ext2fs.o: fsys_ext2fs.c + @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_ext2fs.lo: fsys_ext2fs.c + @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm -f .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_fat.o: fsys_fat.c + @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_fat.lo: fsys_fat.c + @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm -f .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_ffs.o: fsys_ffs.c + @echo '$(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm .deps/$(*D)/$(*F).pp + +stage2_exec-fsys_ffs.lo: fsys_ffs.c + @echo '$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -c -o $@ $<'; \ + $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage2_exec_CFLAGS) $(CFLAGS) -Wp,-MD,.deps/$(*D)/$(*F).pp -c -o $@ $< + @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ + < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ + | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ + >> .deps/$(*D)/$(*F).P; \ + rm -f .deps/$(*D)/$(*F).pp check-TESTS: $(TESTS) @failed=0; all=0; xfail=0; xpass=0; \ srcdir=$(srcdir); export srcdir; \ diff --git a/stage2/filesys.h b/stage2/filesys.h index d18646a84..a3c6ad35b 100644 --- a/stage2/filesys.h +++ b/stage2/filesys.h @@ -21,16 +21,6 @@ #include "pc_slice.h" -/* - * Default to all functioning filesystems enabled - */ - -#if !( defined(FSYS_FFS) || defined(FSYS_FAT) || defined(FSYS_EXT2FS) ) -#define FSYS_FFS -#define FSYS_FAT -#define FSYS_EXT2FS -#endif - #ifdef FSYS_FFS #define FSYS_FFS_NUM 1 int ffs_mount (void); diff --git a/stage2/fsys_ext2fs.c b/stage2/fsys_ext2fs.c index f30d2bfd9..f54de0742 100644 --- a/stage2/fsys_ext2fs.c +++ b/stage2/fsys_ext2fs.c @@ -18,6 +18,7 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#ifdef FSYS_EXT2FS #include "shared.h" #include "filesys.h" @@ -772,3 +773,5 @@ ext2fs_dir (char *dirname) } /* never get here */ } + +#endif /* FSYS_EXT2_FS */ diff --git a/stage2/fsys_fat.c b/stage2/fsys_fat.c index 359921b5c..94d18a4a0 100644 --- a/stage2/fsys_fat.c +++ b/stage2/fsys_fat.c @@ -17,6 +17,7 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#ifdef FSYS_FAT #include "shared.h" @@ -256,3 +257,5 @@ loop: /* go back to main loop at top of function */ goto loop; } + +#endif /* FSYS_FAT */ diff --git a/stage2/fsys_ffs.c b/stage2/fsys_ffs.c index 183ac294d..611c8e721 100644 --- a/stage2/fsys_ffs.c +++ b/stage2/fsys_ffs.c @@ -53,7 +53,7 @@ * $Id$ */ - +#ifdef FSYS_FFS #include "shared.h" @@ -267,3 +267,5 @@ loop: /* go back to main loop at top of function */ goto loop; } + +#endif /* FSYS_FFS */