From 2f97c7852893ad8ee747d821dcb129866dc5cd79 Mon Sep 17 00:00:00 2001 From: okuji Date: Fri, 22 Jun 2001 02:32:56 +0000 Subject: [PATCH] Add VSTa filesystem support. --- AUTHORS | 2 + ChangeLog | 44 +++++++++++ Makefile.in | 144 +++++++++++++++++++++--------------- NEWS | 1 + THANKS | 1 + configure | 181 ++++++++++++++++++++++++--------------------- configure.in | 7 ++ stage2/Makefile.am | 29 +++++--- stage2/Makefile.in | 177 ++++++++++++++++++++++++++++++++++++++------ stage2/char_io.c | 10 +++ stage2/disk_io.c | 3 + stage2/filesys.h | 13 +++- stage2/pc_slice.h | 3 +- stage2/shared.h | 3 + 14 files changed, 436 insertions(+), 182 deletions(-) diff --git a/AUTHORS b/AUTHORS index 1a8a164cd..18c01f324 100644 --- a/AUTHORS +++ b/AUTHORS @@ -35,3 +35,5 @@ stage2/fsys_reiserfs.c and stage2/md5.c. Christoph Plattner added support for Net Boot Image Proposal. Frank Mehnert added support for hercules console. + +Kristoffer Branemyr added VSTa filesystem support. diff --git a/ChangeLog b/ChangeLog index 812dec295..6d4317d90 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,47 @@ +2001-06-22 OKUJI Yoshinori + + * stage2/char_io.c [STAGE1_5] (grub_strcmp): Defined, even + for Stage 1.5. See thecomment, for a possible future strategy. + * stage2/fsys_vstafs.c [!FSYS_VSTAFS]: Don't define anything. + [STAGE1_5] (grub_strcmp): Removed. + (get_file_info): Made static. + (vstafs_readdir): Likewise. + (vstafs_nextdir): Likewise. + (curr_ext): Likewise. + (current_direntry): Likewise. + (current_blockpos): Likewise. + (a): Likewise. + +2001-06-22 OKUJI Yoshinori + + VSTa filesystem support is added. + + From Kristoffer Brånemyr : + * stage2/configure.in (--disable-vstafs): New option. + * stage2/Makefile.am (noinst_HEADERS): Added vstafs.h. + (libgrub_a_SOURCES): Added fsys_vstafs.c. + (libgrub_a_CFLAGS): Added -DFSYS_VSTAFS=1. + (pkgdata_DATA): Added vstafs_stage1_5. + (noinst_PROGRAMS): Added vstafs_stage1_5.exec. + (pre_stage2_exec_SOURCES): Added fsys_vstafs.c. + (vstafs_stage1_5_exec_SOURCES): New variable. + (vstafs_stage1_5_exec_CFLAGS): Likewise. + (vstafs_stage1_5_exec_LDFLAGS): Likewise. + * stage2/disk_io.c (fsys_table): Added an entry for vstafs. + * stage2/filesys.h [FSYS_VSTAFS] (FSYS_VSTAFS_NUM): Defined as + 1. + [FSYS_VSTAFS] (vstafs_mount): New prototype. + [FSYS_VSTAFS] (vstafs_read): Likewise. + [FSYS_VSTAFS] (vstafs_dir): Likewise. + [!FSYS_VSTAFS] (FSYS_VSTAFS_NUM): Defined as 0. + (NUM_FSYS): Added FSYS_VSTAFS_NUM. + * stage2/pc_slice.h (PC_SLICE_TYPE_VSTAFS): New macro. + * stage2/shared.h (STAGE2_ID_VSTAFS_STAGE1_5): Likewise. + [STAGE1_5 && FSYS_VSTAFS] (STAGE2_ID): Defined as + STAGE2_ID_VSTAFS_STAGE1_5. + * stage2/vstafs.h: New file. + * stage2/fsys_vstafs.c: Likewise. + 2001-06-22 OKUJI Yoshinori From Thierry Laronde : diff --git a/Makefile.in b/Makefile.in index 6547d6f0f..fe1660565 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,6 +1,6 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. +# Copyright (C) 1994, 1995-9, 2000 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -10,9 +10,6 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# Do not change this order if you don't know what you are doing. - - SHELL = @SHELL@ srcdir = @srcdir@ @@ -34,8 +31,6 @@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include -DESTDIR = - pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ @@ -48,9 +43,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -59,6 +55,8 @@ POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : + +@SET_MAKE@ host_alias = @host_alias@ host_triplet = @host@ AMDEP = @AMDEP@ @@ -88,28 +86,33 @@ host_cpu = @host_cpu@ host_vendor = @host_vendor@ install_sh = @install_sh@ +# Do not change this order if you don't know what you are doing. + + SUBDIRS = netboot stage2 stage1 lib grub util docs EXTRA_DIST = BUGS +subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = +DIST_SOURCES = DIST_COMMON = README ./stamp-h.in AUTHORS COPYING ChangeLog INSTALL \ Makefile.am Makefile.in NEWS THANKS TODO acconfig.h acinclude.m4 \ -aclocal.m4 config.guess config.h.in config.sub configure configure.in \ -install-sh mdate-sh missing mkinstalldirs texinfo.tex +aclocal.m4 compile config.guess config.h.in config.sub configure \ +configure.in depcomp install-sh mdate-sh missing mkinstalldirs \ +texinfo.tex -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar GZIP_ENV = --best all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status @@ -127,18 +130,22 @@ config.h: stamp-h $(MAKE) stamp-h; \ else :; fi stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status + @rm -f stamp-h stamp-hT + @echo timestamp > stamp-hT 2> /dev/null cd $(top_builddir) \ && CONFIG_FILES= CONFIG_HEADERS=config.h \ $(SHELL) ./config.status - @echo timestamp > stamp-h 2> /dev/null -$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/stamp-h.in + @mv stamp-hT stamp-h +$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/./stamp-h.in @if test ! -f $@; then \ - rm -f $(srcdir)/stamp-h.in; \ - $(MAKE) $(srcdir)/stamp-h.in; \ + rm -f $(srcdir)/./stamp-h.in; \ + $(MAKE) $(srcdir)/./stamp-h.in; \ else :; fi -$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h +$(srcdir)/./stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h + @rm -f $(srcdir)/./stamp-h.in $(srcdir)/./stamp-h.inT + @echo timestamp > $(srcdir)/./stamp-h.inT 2> /dev/null cd $(top_srcdir) && $(AUTOHEADER) - @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null + @mv $(srcdir)/./stamp-h.inT $(srcdir)/./stamp-h.in mostlyclean-hdr: @@ -156,8 +163,6 @@ maintainer-clean-hdr: # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. -@SET_MAKE@ - all-recursive install-data-recursive install-exec-recursive \ installdirs-recursive install-recursive uninstall-recursive \ check-recursive installcheck-recursive info-recursive dvi-recursive: @@ -185,7 +190,7 @@ maintainer-clean-recursive: dot_seen=no; \ rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \ rev="$$subdir $$rev"; \ - test "$$subdir" = "." && dot_seen=yes; \ + if test "$$subdir" = "."; then dot_seen=yes; else :; fi; \ done; \ test "$$dot_seen" = "no" && rev=". $$rev"; \ target=`echo $@ | sed s/-recursive//`; \ @@ -206,15 +211,17 @@ tags-recursive: tags: TAGS -ID: $(HEADERS) $(SOURCES) $(LISP) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(LISP) + mkid -fID $$unique $(LISP) -TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP) +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ @@ -222,12 +229,14 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LI test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ fi; \ done; \ - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ + list='$(SOURCES) $(HEADERS) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \ - || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS) + || etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) mostlyclean-tags: @@ -241,54 +250,65 @@ maintainer-clean-tags: distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) + # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist - -rm -rf $(distdir) - GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz + -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir) + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - + chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/=build mkdir $(distdir)/=inst - dc_install_base=`cd $(distdir)/=inst && pwd`; \ - cd $(distdir)/=build \ + chmod a-w $(distdir) + dc_install_base=`CDPATH=: && cd $(distdir)/=inst && pwd` \ + && cd $(distdir)/=build \ && ../configure --srcdir=.. --prefix=$$dc_install_base \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ - && $(MAKE) $(AM_MAKEFLAGS) dist - -rm -rf $(distdir) + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && test `find $$dc_install_base -type f -print | wc -l` -le 1 \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && $(MAKE) $(AM_MAKEFLAGS) distclean \ + && rm -f $(distdir).tar.gz \ + && test `find . -type f -print | wc -l` -eq 0 + -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir) @banner="$(distdir).tar.gz is ready for distribution"; \ dashes=`echo "$$banner" | sed s/./=/g`; \ echo "$$dashes"; \ echo "$$banner"; \ echo "$$dashes" dist: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) - -rm -rf $(distdir) + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c > $(distdir).tar.gz + -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir) dist-all: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) - -rm -rf $(distdir) + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) + $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c > $(distdir).tar.gz + -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir) distdir: $(DISTFILES) - -rm -rf $(distdir) + -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir) mkdir $(distdir) - -chmod 777 $(distdir) - here=`cd $(top_builddir) && pwd`; \ - top_distdir=`cd $(distdir) && pwd`; \ - distdir=`cd $(distdir) && pwd`; \ - cd $(top_srcdir) \ - && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ + cp -pR $$d/$$file $(distdir) \ + || exit 1; \ else \ test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ fi; \ done for subdir in $(SUBDIRS); do \ @@ -296,7 +316,6 @@ distdir: $(DISTFILES) test -d $(distdir)/$$subdir \ || mkdir $(distdir)/$$subdir \ || exit 1; \ - chmod 777 $(distdir)/$$subdir; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \ || exit 1; \ fi; \ @@ -326,7 +345,7 @@ uninstall: uninstall-recursive all-am: Makefile config.h all-redirect: all-recursive-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: installdirs-recursive installdirs-am: @@ -340,6 +359,7 @@ distclean-generic: -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: + -rm -f Makefile.in mostlyclean-am: mostlyclean-hdr mostlyclean-tags mostlyclean-generic mostlyclean: mostlyclean-recursive @@ -362,7 +382,8 @@ maintainer-clean: maintainer-clean-recursive -rm -f config.status .PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ -install-data-recursive uninstall-data-recursive install-exec-recursive \ +install-recursive uninstall-recursive install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ all-recursive check-recursive installcheck-recursive info-recursive \ dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ @@ -370,9 +391,10 @@ maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir info-am info \ dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \ install-exec-am install-exec install-data-am install-data install-am \ -install uninstall-am uninstall all-redirect all-am all installdirs-am \ -installdirs mostlyclean-generic distclean-generic clean-generic \ -maintainer-clean-generic clean mostlyclean distclean maintainer-clean +install uninstall-am uninstall all-redirect all-am all install-strip \ +installdirs-am installdirs mostlyclean-generic distclean-generic \ +clean-generic maintainer-clean-generic clean mostlyclean distclean \ +maintainer-clean # Tell versions [3.59,3.63) of GNU make to not export all variables. diff --git a/NEWS b/NEWS index f327d510d..3f96a8adf 100644 --- a/NEWS +++ b/NEWS @@ -35,6 +35,7 @@ New in 1.0 - XXXX-XX-XX: * The commands "bootp" and "dhcp" accepts a new option `--with-configfile', so that you can load a remotely specified configuration file automatically, like the network boot images. +* VSTa filesystem support is added. New in 0.5.96 - 2000-10-04: * New commands, "reboot" and "halt". diff --git a/THANKS b/THANKS index 56d2b5aef..87545b815 100644 --- a/THANKS +++ b/THANKS @@ -44,6 +44,7 @@ Josip Rodin Kalle Olavi Niemitalo Khimenko Victor Klaus Reichl +Kristoffer Branemyr Kunihiro Ishiguro Leendert Meyer M. Meiarashi diff --git a/configure b/configure index 2103b3361..fed861edf 100644 --- a/configure +++ b/configure @@ -31,6 +31,8 @@ ac_help="$ac_help --disable-minix disable Minix fs support in Stage 2" ac_help="$ac_help --disable-reiserfs disable ReiserFS support in Stage 2" +ac_help="$ac_help + --disable-vstafs disable VSTa FS support in Stage 2" ac_help="$ac_help --disable-gunzip disable decompression in Stage 2" ac_help="$ac_help @@ -673,7 +675,7 @@ ac_configure=$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:677: checking for a BSD compatible install" >&5 +echo "configure:679: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -726,7 +728,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 -echo "configure:730: checking whether build environment is sane" >&5 +echo "configure:732: checking whether build environment is sane" >&5 # Just in case sleep 1 echo timestamp > conftestfile @@ -798,7 +800,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:802: checking for $ac_word" >&5 +echo "configure:804: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -828,7 +830,7 @@ test -n "$AWK" && break done echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:832: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:834: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -954,7 +956,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:958: checking host system type" >&5 +echo "configure:960: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -988,7 +990,7 @@ esac # echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:992: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:994: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" @@ -1014,7 +1016,7 @@ if test "x$enable_maintainer_mode" = xyes; then # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1018: checking for $ac_word" >&5 +echo "configure:1020: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1061,7 +1063,7 @@ fi # echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:1065: checking build system type" >&5 +echo "configure:1067: checking build system type" >&5 build_alias=$build case "$build_alias" in @@ -1087,7 +1089,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:1091: checking for $ac_word" >&5 +echo "configure:1093: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1119,7 +1121,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:1123: checking for $ac_word" >&5 +echo "configure:1125: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1149,7 +1151,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:1153: checking for $ac_word" >&5 +echo "configure:1155: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1200,7 +1202,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:1204: checking for $ac_word" >&5 +echo "configure:1206: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1232,7 +1234,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1236: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:1238: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1243,12 +1245,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 1247 "configure" +#line 1249 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:1252: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1254: \"$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 @@ -1274,12 +1276,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 $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1278: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1280: checking whether the C compiler ($CC $CFLAGS $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:1283: checking whether we are using GNU C" >&5 +echo "configure:1285: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1288,7 +1290,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1292: \"$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:1294: \"$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 @@ -1307,7 +1309,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:1311: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1313: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1340,7 +1342,7 @@ fi echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1344: checking how to run the C preprocessor" >&5 +echo "configure:1346: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1355,13 +1357,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:1365: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1367: \"$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 : @@ -1372,13 +1374,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:1382: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1384: \"$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 : @@ -1389,13 +1391,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:1399: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1401: \"$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 : @@ -1428,7 +1430,7 @@ echo "$ac_t""$CPP" 1>&6 depcc="$CC" depcpp="$CPP" echo $ac_n "checking dependency style of $depcc""... $ac_c" 1>&6 -echo "configure:1432: checking dependency style of $depcc" >&5 +echo "configure:1434: checking dependency style of $depcc" >&5 if eval "test \"`echo '$''{'am_cv_CC_dependencies_compiler_type'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1484,7 +1486,7 @@ if test "x$with_binutils" != x; then # 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:1488: checking for $ac_word" >&5 +echo "configure:1490: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1521,7 +1523,7 @@ else # 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:1525: checking for $ac_word" >&5 +echo "configure:1527: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1561,7 +1563,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:1565: checking whether optimization for size works" >&5 +echo "configure:1567: checking whether optimization for size works" >&5 if eval "test \"`echo '$''{'size_flag'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1569,14 +1571,14 @@ else saved_CFLAGS=$CFLAGS CFLAGS="-Os -g" cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1582: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* size_flag=yes else @@ -1608,7 +1610,7 @@ CPPFLAGS="$CPPFLAGS -Wall -Wmissing-prototypes -Wunused -Wshadow" CPPFLAGS="$CPPFLAGS -Wpointer-arith" echo $ac_n "checking whether -Wundef works""... $ac_c" 1>&6 -echo "configure:1612: checking whether -Wundef works" >&5 +echo "configure:1614: checking whether -Wundef works" >&5 if eval "test \"`echo '$''{'undef_flag'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1616,14 +1618,14 @@ else saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="-Wundef" cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* undef_flag=yes else @@ -1650,7 +1652,7 @@ if test "x$with_binutils" != x; then # Extract the first word of "objcopy", so it can be a program name with args. set dummy objcopy; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1654: checking for $ac_word" >&5 +echo "configure:1656: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_OBJCOPY'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1686,7 +1688,7 @@ else # 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:1690: checking for $ac_word" >&5 +echo "configure:1692: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1720,7 +1722,7 @@ fi # Defined in acinclude.m4. echo $ac_n "checking if C symbols get an underscore after compilation""... $ac_c" 1>&6 -echo "configure:1724: checking if C symbols get an underscore after compilation" >&5 +echo "configure:1726: checking if C symbols get an underscore after compilation" >&5 if eval "test \"`echo '$''{'grub_cv_asm_uscore'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1733,7 +1735,7 @@ func (int *list) } EOF -if { ac_try='${CC-cc} ${CFLAGS} -S conftest.c'; { (eval echo configure:1737: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.s; then +if { ac_try='${CC-cc} ${CFLAGS} -S conftest.c'; { (eval echo configure:1739: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.s; then true else { echo "configure: error: ${CC-cc} failed to produce assembly code" 1>&2; exit 1; } @@ -1759,7 +1761,7 @@ fi echo "$ac_t""$grub_cv_asm_uscore" 1>&6 echo $ac_n "checking whether ${OBJCOPY} works for absolute addresses""... $ac_c" 1>&6 -echo "configure:1763: checking whether ${OBJCOPY} works for absolute addresses" >&5 +echo "configure:1765: checking whether ${OBJCOPY} works for absolute addresses" >&5 if eval "test \"`echo '$''{'grub_cv_prog_objcopy_absolute'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1771,21 +1773,21 @@ cmain (void) } EOF -if { (eval echo configure:1775: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then : +if { (eval echo configure:1777: \"$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='${CC-cc} ${CFLAGS} -nostdlib -Wl,-N -Wl,-Ttext -Wl,$link_addr conftest.o -o conftest.exec'; { (eval echo configure:1781: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : + if { ac_try='${CC-cc} ${CFLAGS} -nostdlib -Wl,-N -Wl,-Ttext -Wl,$link_addr conftest.o -o conftest.exec'; { (eval echo configure:1783: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : else { echo "configure: error: ${CC-cc} cannot link at address $link_addr" 1>&2; exit 1; } fi - if { ac_try='${OBJCOPY-objcopy} -O binary conftest.exec conftest'; { (eval echo configure:1785: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then : + if { ac_try='${OBJCOPY-objcopy} -O binary conftest.exec conftest'; { (eval echo configure:1787: \"$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:1789: \"$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:1791: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then mv -f conftest conftest.old else grub_cv_prog_objcopy_absolute=no @@ -1802,7 +1804,7 @@ fi echo $ac_n "checking whether addr32 must be in the same line as the instruction""... $ac_c" 1>&6 -echo "configure:1806: checking whether addr32 must be in the same line as the instruction" >&5 +echo "configure:1808: checking whether addr32 must be in the same line as the instruction" >&5 if eval "test \"`echo '$''{'grub_cv_asm_prefix_requirement'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1811,7 +1813,7 @@ else l1: addr32 movb %al, l1 EOF -if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1815: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then +if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1817: \"$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 @@ -1843,7 +1845,7 @@ echo "$ac_t""$grub_cv_asm_prefix_requirement" 1>&6 echo $ac_n "checking for .code16 addr32 assembler support""... $ac_c" 1>&6 -echo "configure:1847: checking for .code16 addr32 assembler support" >&5 +echo "configure:1849: checking for .code16 addr32 assembler support" >&5 if eval "test \"`echo '$''{'grub_cv_asm_addr32'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1858,7 +1860,7 @@ else sed -e s/@ADDR32@/addr32\;/ < conftest.s.in > conftest.s fi -if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1862: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then +if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1864: \"$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 @@ -1875,7 +1877,7 @@ fi echo $ac_n "checking whether an absolute indirect call/jump must not be prefixed with an asterisk""... $ac_c" 1>&6 -echo "configure:1879: checking whether an absolute indirect call/jump must not be prefixed with an asterisk" >&5 +echo "configure:1881: checking whether an absolute indirect call/jump must not be prefixed with an asterisk" >&5 if eval "test \"`echo '$''{'grub_cv_asm_absolute_without_asterisk'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1886,7 +1888,7 @@ offset: .word 0 EOF -if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1890: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then +if { ac_try='${CC-cc} ${CFLAGS} -c conftest.s'; { (eval echo configure:1892: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest.o; then grub_cv_asm_absolute_without_asterisk=no else grub_cv_asm_absolute_without_asterisk=yes @@ -1907,19 +1909,19 @@ echo "$ac_t""$grub_cv_asm_absolute_without_asterisk" 1>&6 echo $ac_n "checking if start is defined by the compiler""... $ac_c" 1>&6 -echo "configure:1911: checking if start is defined by the compiler" >&5 +echo "configure:1913: checking if start is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_start_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_start_symbol=yes else @@ -1943,19 +1945,19 @@ echo "$ac_t""$grub_cv_check_start_symbol" 1>&6 echo $ac_n "checking if _start is defined by the compiler""... $ac_c" 1>&6 -echo "configure:1947: checking if _start is defined by the compiler" >&5 +echo "configure:1949: checking if _start is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_uscore_start_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1961: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_uscore_start_symbol=yes else @@ -1984,19 +1986,19 @@ fi echo $ac_n "checking if __bss_start is defined by the compiler""... $ac_c" 1>&6 -echo "configure:1988: checking if __bss_start is defined by the compiler" >&5 +echo "configure:1990: checking if __bss_start is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_uscore_uscore_bss_start_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2002: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_uscore_uscore_bss_start_symbol=yes else @@ -2020,19 +2022,19 @@ echo "$ac_t""$grub_cv_check_uscore_uscore_bss_start_symbol" 1>&6 echo $ac_n "checking if _edata is defined by the compiler""... $ac_c" 1>&6 -echo "configure:2024: checking if _edata is defined by the compiler" >&5 +echo "configure:2026: checking if _edata is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_uscore_edata_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2038: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_uscore_edata_symbol=yes else @@ -2056,19 +2058,19 @@ echo "$ac_t""$grub_cv_check_uscore_edata_symbol" 1>&6 echo $ac_n "checking if edata is defined by the compiler""... $ac_c" 1>&6 -echo "configure:2060: checking if edata is defined by the compiler" >&5 +echo "configure:2062: checking if edata is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_edata_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_edata_symbol=yes else @@ -2098,19 +2100,19 @@ fi echo $ac_n "checking if end is defined by the compiler""... $ac_c" 1>&6 -echo "configure:2102: checking if end is defined by the compiler" >&5 +echo "configure:2104: checking if end is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_end_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_end_symbol=yes else @@ -2134,19 +2136,19 @@ echo "$ac_t""$grub_cv_check_end_symbol" 1>&6 echo $ac_n "checking if _end is defined by the compiler""... $ac_c" 1>&6 -echo "configure:2138: checking if _end is defined by the compiler" >&5 +echo "configure:2140: checking if _end is defined by the compiler" >&5 if eval "test \"`echo '$''{'grub_cv_check_uscore_end_symbol'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2152: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* grub_cv_check_uscore_end_symbol=yes else @@ -2184,7 +2186,7 @@ fi # Get the filename or the whole disk and open it. # Known to work on NetBSD. echo $ac_n "checking for opendisk in -lutil""... $ac_c" 1>&6 -echo "configure:2188: checking for opendisk in -lutil" >&5 +echo "configure:2190: checking for opendisk in -lutil" >&5 ac_lib_var=`echo util'_'opendisk | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2192,7 +2194,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lutil $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2209: \"$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 @@ -2231,7 +2233,7 @@ fi # Unless the user specify --without-curses, check for curses. if test "x$with_curses" != "xno"; then echo $ac_n "checking for wgetch in -lncurses""... $ac_c" 1>&6 -echo "configure:2235: checking for wgetch in -lncurses" >&5 +echo "configure:2237: checking for wgetch in -lncurses" >&5 ac_lib_var=`echo ncurses'_'wgetch | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2239,7 +2241,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:2256: \"$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 @@ -2273,7 +2275,7 @@ EOF else echo "$ac_t""no" 1>&6 echo $ac_n "checking for wgetch in -lcurses""... $ac_c" 1>&6 -echo "configure:2277: checking for wgetch in -lcurses" >&5 +echo "configure:2279: checking for wgetch in -lcurses" >&5 ac_lib_var=`echo curses'_'wgetch | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2281,7 +2283,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:2298: \"$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 @@ -2327,17 +2329,17 @@ for ac_hdr in string.h strings.h ncurses/curses.h ncurses.h curses.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2331: checking for $ac_hdr" >&5 +echo "configure:2333: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'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:2341: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2343: \"$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* @@ -2422,6 +2424,17 @@ if test x"$enable_reiserfs" != xno; then FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_REISERFS=1" fi +# Check whether --enable-vstafs or --disable-vstafs was given. +if test "${enable_vstafs+set}" = set; then + enableval="$enable_vstafs" + : +fi + + +if test x"$enable_vstafs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_VSTAFS=1" +fi + # Check whether --enable-gunzip or --disable-gunzip was given. if test "${enable_gunzip+set}" = set; then @@ -2959,7 +2972,7 @@ main (void) } EOF -if { ac_try='${CC-cc} ${CFLAGS} conftest.c -o conftest'; { (eval echo configure:2963: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest; then +if { ac_try='${CC-cc} ${CFLAGS} conftest.c -o conftest'; { (eval echo configure:2976: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } && test -s conftest; then grub_tmp_value=`./conftest < "$enable_preset_menu"` else { echo "configure: error: ${CC-cc} failed to produce an executable file" 1>&2; exit 1; } diff --git a/configure.in b/configure.in index 8a8359e87..84c6ff9a9 100644 --- a/configure.in +++ b/configure.in @@ -215,6 +215,13 @@ if test x"$enable_reiserfs" != xno; then FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_REISERFS=1" fi +AC_ARG_ENABLE(vstafs, + [ --disable-vstafs disable VSTa FS support in Stage 2]) + +if test x"$enable_vstafs" != xno; then + FSYS_CFLAGS="$FSYS_CFLAGS -DFSYS_VSTAFS=1" +fi + dnl AC_ARG_ENABLE(tftp, dnl [ --enable-tftp enable TFTP support in Stage 2]) dnl diff --git a/stage2/Makefile.am b/stage2/Makefile.am index 402da27b1..37daa5a11 100644 --- a/stage2/Makefile.am +++ b/stage2/Makefile.am @@ -6,7 +6,7 @@ noinst_SCRIPTS = $(TESTS) noinst_HEADERS = apic.h defs.h dir.h disk_inode.h disk_inode_ffs.h \ fat.h filesys.h freebsd.h fs.h hercules.h i386-elf.h \ imgact_aout.h mb_header.h mb_info.h md5.h pc_slice.h serial.h \ - shared.h smp-imps.h nbi.h + shared.h smp-imps.h nbi.h vstafs.h EXTRA_DIST = setjmp.S apm.S $(noinst_SCRIPTS) # For . @@ -16,11 +16,11 @@ INCLUDES = -I$(top_srcdir)/stage1 noinst_LIBRARIES = libgrub.a libgrub_a_SOURCES = boot.c builtins.c common.c char_io.c cmdline.c \ disk_io.c gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c \ - fsys_minix.c fsys_reiserfs.c stage2.c md5.c + fsys_minix.c fsys_reiserfs.c fsys_vstafs.c stage2.c md5.c libgrub_a_CFLAGS = $(GRUB_CFLAGS) -I$(top_srcdir)/lib \ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 \ - -DFSYS_MINIX=1 -DFSYS_REISERFS=1 -DSUPPORT_SERIAL=1 \ - -DSUPPORT_HERCULES=1 -fwritable-strings + -DFSYS_MINIX=1 -DFSYS_REISERFS=1 -DFSYS_VSTAFS=1 \ + -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1 -fwritable-strings # Stage 2 and Stage 1.5's. pkgdatadir = $(datadir)/$(PACKAGE)/$(host_cpu)-$(host_vendor) @@ -29,19 +29,19 @@ EXTRA_PROGRAMS = nbloader.exec pxeloader.exec diskless.exec if DISKLESS_SUPPORT pkgdata_DATA = stage2 e2fs_stage1_5 fat_stage1_5 ffs_stage1_5 \ - minix_stage1_5 reiserfs_stage1_5 nbgrub pxegrub + minix_stage1_5 reiserfs_stage1_5 vstafs_stage1_5 nbgrub pxegrub noinst_DATA = pre_stage2 start nbloader pxeloader diskless noinst_PROGRAMS = pre_stage2.exec start.exec e2fs_stage1_5.exec \ fat_stage1_5.exec ffs_stage1_5.exec minix_stage1_5.exec \ - reiserfs_stage1_5.exec nbloader.exec pxeloader.exec \ - diskless.exec + reiserfs_stage1_5.exec vstafs_stage1_5.exec nbloader.exec \ + pxeloader.exec diskless.exec else pkgdata_DATA = stage2 e2fs_stage1_5 fat_stage1_5 ffs_stage1_5 \ - minix_stage1_5 reiserfs_stage1_5 + minix_stage1_5 reiserfs_stage1_5 vstafs_stage1_5 noinst_DATA = pre_stage2 start noinst_PROGRAMS = pre_stage2.exec start.exec e2fs_stage1_5.exec \ fat_stage1_5.exec ffs_stage1_5.exec minix_stage1_5.exec \ - reiserfs_stage1_5.exec + reiserfs_stage1_5.exec vstafs_stage1_5.exec endif MOSTLYCLEANFILES = $(noinst_PROGRAMS) @@ -77,8 +77,8 @@ STAGE1_5_COMPILE = $(STAGE2_COMPILE) -DNO_DECOMPRESSION=1 -DSTAGE1_5=1 # For stage2 target. pre_stage2_exec_SOURCES = asm.S bios.c boot.c builtins.c common.c \ char_io.c cmdline.c disk_io.c gunzip.c fsys_ext2fs.c \ - fsys_fat.c fsys_ffs.c fsys_minix.c fsys_reiserfs.c hercules.c \ - serial.c smp-imps.c stage2.c md5.c + fsys_fat.c fsys_ffs.c fsys_minix.c fsys_reiserfs.c \ + fsys_vstafs.c hercules.c serial.c smp-imps.c stage2.c md5.c pre_stage2_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) pre_stage2_exec_LDFLAGS = $(PRE_STAGE2_LINK) @@ -149,6 +149,13 @@ reiserfs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_REISERFS=1 \ -DNO_BLOCK_FILES=1 reiserfs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) +# For vstafs_stage1_5 target. +vstafs_stage1_5_exec_SOURCES = start.S asm.S common.c char_io.c \ + disk_io.c stage1_5.c fsys_vstafs.c bios.c +vstafs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_VSTAFS=1 \ + -DNO_BLOCK_FILES=1 +vstafs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) + # For diskless target. diskless_exec_SOURCES = $(pre_stage2_exec_SOURCES) diskless_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) \ diff --git a/stage2/Makefile.in b/stage2/Makefile.in index 04be16560..294dfe051 100644 --- a/stage2/Makefile.in +++ b/stage2/Makefile.in @@ -94,7 +94,7 @@ noinst_SCRIPTS = $(TESTS) noinst_HEADERS = apic.h defs.h dir.h disk_inode.h disk_inode_ffs.h \ fat.h filesys.h freebsd.h fs.h hercules.h i386-elf.h \ imgact_aout.h mb_header.h mb_info.h md5.h pc_slice.h serial.h \ - shared.h smp-imps.h nbi.h + shared.h smp-imps.h nbi.h vstafs.h EXTRA_DIST = setjmp.S apm.S $(noinst_SCRIPTS) @@ -105,12 +105,12 @@ INCLUDES = -I$(top_srcdir)/stage1 noinst_LIBRARIES = libgrub.a libgrub_a_SOURCES = boot.c builtins.c common.c char_io.c cmdline.c \ disk_io.c gunzip.c fsys_ffs.c fsys_ext2fs.c fsys_fat.c \ - fsys_minix.c fsys_reiserfs.c stage2.c md5.c + fsys_minix.c fsys_reiserfs.c fsys_vstafs.c stage2.c md5.c libgrub_a_CFLAGS = $(GRUB_CFLAGS) -I$(top_srcdir)/lib \ -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 \ - -DFSYS_MINIX=1 -DFSYS_REISERFS=1 -DSUPPORT_SERIAL=1 \ - -DSUPPORT_HERCULES=1 -fwritable-strings + -DFSYS_MINIX=1 -DFSYS_REISERFS=1 -DFSYS_VSTAFS=1 \ + -DSUPPORT_SERIAL=1 -DSUPPORT_HERCULES=1 -fwritable-strings # Stage 2 and Stage 1.5's. @@ -118,18 +118,18 @@ pkgdatadir = $(datadir)/$(PACKAGE)/$(host_cpu)-$(host_vendor) EXTRA_PROGRAMS = nbloader.exec pxeloader.exec diskless.exec @DISKLESS_SUPPORT_TRUE@pkgdata_DATA = @DISKLESS_SUPPORT_TRUE@stage2 e2fs_stage1_5 fat_stage1_5 ffs_stage1_5 \ -@DISKLESS_SUPPORT_TRUE@ minix_stage1_5 reiserfs_stage1_5 nbgrub pxegrub +@DISKLESS_SUPPORT_TRUE@ minix_stage1_5 reiserfs_stage1_5 vstafs_stage1_5 nbgrub pxegrub @DISKLESS_SUPPORT_FALSE@pkgdata_DATA = @DISKLESS_SUPPORT_FALSE@stage2 e2fs_stage1_5 fat_stage1_5 ffs_stage1_5 \ -@DISKLESS_SUPPORT_FALSE@ minix_stage1_5 reiserfs_stage1_5 +@DISKLESS_SUPPORT_FALSE@ minix_stage1_5 reiserfs_stage1_5 vstafs_stage1_5 @DISKLESS_SUPPORT_TRUE@noinst_DATA = @DISKLESS_SUPPORT_TRUE@pre_stage2 start nbloader pxeloader diskless @DISKLESS_SUPPORT_FALSE@noinst_DATA = @DISKLESS_SUPPORT_FALSE@pre_stage2 start @DISKLESS_SUPPORT_TRUE@noinst_PROGRAMS = @DISKLESS_SUPPORT_TRUE@pre_stage2.exec start.exec e2fs_stage1_5.exec \ @DISKLESS_SUPPORT_TRUE@ fat_stage1_5.exec ffs_stage1_5.exec minix_stage1_5.exec \ -@DISKLESS_SUPPORT_TRUE@ reiserfs_stage1_5.exec nbloader.exec pxeloader.exec \ -@DISKLESS_SUPPORT_TRUE@ diskless.exec +@DISKLESS_SUPPORT_TRUE@ reiserfs_stage1_5.exec vstafs_stage1_5.exec nbloader.exec \ +@DISKLESS_SUPPORT_TRUE@ pxeloader.exec diskless.exec @DISKLESS_SUPPORT_FALSE@noinst_PROGRAMS = @DISKLESS_SUPPORT_FALSE@pre_stage2.exec start.exec e2fs_stage1_5.exec \ @DISKLESS_SUPPORT_FALSE@ fat_stage1_5.exec ffs_stage1_5.exec minix_stage1_5.exec \ -@DISKLESS_SUPPORT_FALSE@ reiserfs_stage1_5.exec +@DISKLESS_SUPPORT_FALSE@ reiserfs_stage1_5.exec vstafs_stage1_5.exec MOSTLYCLEANFILES = $(noinst_PROGRAMS) PRE_STAGE2_LINK = -nostdlib -Wl,-N -Wl,-Ttext -Wl,8200 @@ -153,8 +153,8 @@ STAGE1_5_COMPILE = $(STAGE2_COMPILE) -DNO_DECOMPRESSION=1 -DSTAGE1_5=1 # For stage2 target. pre_stage2_exec_SOURCES = asm.S bios.c boot.c builtins.c common.c \ char_io.c cmdline.c disk_io.c gunzip.c fsys_ext2fs.c \ - fsys_fat.c fsys_ffs.c fsys_minix.c fsys_reiserfs.c hercules.c \ - serial.c smp-imps.c stage2.c md5.c + fsys_fat.c fsys_ffs.c fsys_minix.c fsys_reiserfs.c \ + fsys_vstafs.c hercules.c serial.c smp-imps.c stage2.c md5.c pre_stage2_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) pre_stage2_exec_LDFLAGS = $(PRE_STAGE2_LINK) @@ -215,6 +215,15 @@ reiserfs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_REISERFS=1 \ reiserfs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) +# For vstafs_stage1_5 target. +vstafs_stage1_5_exec_SOURCES = start.S asm.S common.c char_io.c \ + disk_io.c stage1_5.c fsys_vstafs.c bios.c + +vstafs_stage1_5_exec_CFLAGS = $(STAGE1_5_COMPILE) -DFSYS_VSTAFS=1 \ + -DNO_BLOCK_FILES=1 + +vstafs_stage1_5_exec_LDFLAGS = $(STAGE1_5_LINK) + # For diskless target. diskless_exec_SOURCES = $(pre_stage2_exec_SOURCES) diskless_exec_CFLAGS = $(STAGE2_COMPILE) $(FSYS_CFLAGS) \ @@ -249,7 +258,8 @@ am_libgrub_a_OBJECTS = libgrub_a-boot.o libgrub_a-builtins.o \ libgrub_a-common.o libgrub_a-char_io.o libgrub_a-cmdline.o \ libgrub_a-disk_io.o libgrub_a-gunzip.o libgrub_a-fsys_ffs.o \ libgrub_a-fsys_ext2fs.o libgrub_a-fsys_fat.o libgrub_a-fsys_minix.o \ -libgrub_a-fsys_reiserfs.o libgrub_a-stage2.o libgrub_a-md5.o +libgrub_a-fsys_reiserfs.o libgrub_a-fsys_vstafs.o libgrub_a-stage2.o \ +libgrub_a-md5.o libgrub_a_OBJECTS = $(am_libgrub_a_OBJECTS) AR = ar PROGRAMS = $(noinst_PROGRAMS) @@ -260,8 +270,9 @@ diskless_exec-char_io.o diskless_exec-cmdline.o diskless_exec-disk_io.o \ diskless_exec-gunzip.o diskless_exec-fsys_ext2fs.o \ diskless_exec-fsys_fat.o diskless_exec-fsys_ffs.o \ diskless_exec-fsys_minix.o diskless_exec-fsys_reiserfs.o \ -diskless_exec-hercules.o diskless_exec-serial.o \ -diskless_exec-smp-imps.o diskless_exec-stage2.o diskless_exec-md5.o +diskless_exec-fsys_vstafs.o diskless_exec-hercules.o \ +diskless_exec-serial.o diskless_exec-smp-imps.o diskless_exec-stage2.o \ +diskless_exec-md5.o diskless_exec_OBJECTS = $(am_diskless_exec_OBJECTS) diskless_exec_DEPENDENCIES = ../netboot/libdrivers.a am_e2fs_stage1_5_exec_OBJECTS = e2fs_stage1_5_exec-start.o \ @@ -307,9 +318,10 @@ pre_stage2_exec-char_io.o pre_stage2_exec-cmdline.o \ pre_stage2_exec-disk_io.o pre_stage2_exec-gunzip.o \ pre_stage2_exec-fsys_ext2fs.o pre_stage2_exec-fsys_fat.o \ pre_stage2_exec-fsys_ffs.o pre_stage2_exec-fsys_minix.o \ -pre_stage2_exec-fsys_reiserfs.o pre_stage2_exec-hercules.o \ -pre_stage2_exec-serial.o pre_stage2_exec-smp-imps.o \ -pre_stage2_exec-stage2.o pre_stage2_exec-md5.o +pre_stage2_exec-fsys_reiserfs.o pre_stage2_exec-fsys_vstafs.o \ +pre_stage2_exec-hercules.o pre_stage2_exec-serial.o \ +pre_stage2_exec-smp-imps.o pre_stage2_exec-stage2.o \ +pre_stage2_exec-md5.o pre_stage2_exec_OBJECTS = $(am_pre_stage2_exec_OBJECTS) @NETBOOT_SUPPORT_TRUE@pre_stage2_exec_DEPENDENCIES = \ @NETBOOT_SUPPORT_TRUE@../netboot/libdrivers.a @@ -329,6 +341,14 @@ am_start_exec_OBJECTS = start_exec-start.o start_exec_OBJECTS = $(am_start_exec_OBJECTS) start_exec_LDADD = $(LDADD) start_exec_DEPENDENCIES = +am_vstafs_stage1_5_exec_OBJECTS = vstafs_stage1_5_exec-start.o \ +vstafs_stage1_5_exec-asm.o vstafs_stage1_5_exec-common.o \ +vstafs_stage1_5_exec-char_io.o vstafs_stage1_5_exec-disk_io.o \ +vstafs_stage1_5_exec-stage1_5.o vstafs_stage1_5_exec-fsys_vstafs.o \ +vstafs_stage1_5_exec-bios.o +vstafs_stage1_5_exec_OBJECTS = $(am_vstafs_stage1_5_exec_OBJECTS) +vstafs_stage1_5_exec_LDADD = $(LDADD) +vstafs_stage1_5_exec_DEPENDENCIES = SCRIPTS = $(noinst_SCRIPTS) COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -340,7 +360,7 @@ $(e2fs_stage1_5_exec_SOURCES) $(fat_stage1_5_exec_SOURCES) \ $(ffs_stage1_5_exec_SOURCES) $(minix_stage1_5_exec_SOURCES) \ $(nbloader_exec_SOURCES) $(pre_stage2_exec_SOURCES) \ $(pxeloader_exec_SOURCES) $(reiserfs_stage1_5_exec_SOURCES) \ -$(start_exec_SOURCES) +$(start_exec_SOURCES) $(vstafs_stage1_5_exec_SOURCES) DATA = $(noinst_DATA) $(pkgdata_DATA) HEADERS = $(noinst_HEADERS) @@ -355,6 +375,7 @@ $(DEPDIR)/diskless_exec-fsys_ext2fs.Po \ $(DEPDIR)/diskless_exec-fsys_fat.Po $(DEPDIR)/diskless_exec-fsys_ffs.Po \ $(DEPDIR)/diskless_exec-fsys_minix.Po \ $(DEPDIR)/diskless_exec-fsys_reiserfs.Po \ +$(DEPDIR)/diskless_exec-fsys_vstafs.Po \ $(DEPDIR)/diskless_exec-gunzip.Po $(DEPDIR)/diskless_exec-hercules.Po \ $(DEPDIR)/diskless_exec-md5.Po $(DEPDIR)/diskless_exec-serial.Po \ $(DEPDIR)/diskless_exec-smp-imps.Po $(DEPDIR)/diskless_exec-stage2.Po \ @@ -385,8 +406,9 @@ $(DEPDIR)/libgrub_a-cmdline.Po $(DEPDIR)/libgrub_a-common.Po \ $(DEPDIR)/libgrub_a-disk_io.Po $(DEPDIR)/libgrub_a-fsys_ext2fs.Po \ $(DEPDIR)/libgrub_a-fsys_fat.Po $(DEPDIR)/libgrub_a-fsys_ffs.Po \ $(DEPDIR)/libgrub_a-fsys_minix.Po $(DEPDIR)/libgrub_a-fsys_reiserfs.Po \ -$(DEPDIR)/libgrub_a-gunzip.Po $(DEPDIR)/libgrub_a-md5.Po \ -$(DEPDIR)/libgrub_a-stage2.Po $(DEPDIR)/minix_stage1_5_exec-asm.Po \ +$(DEPDIR)/libgrub_a-fsys_vstafs.Po $(DEPDIR)/libgrub_a-gunzip.Po \ +$(DEPDIR)/libgrub_a-md5.Po $(DEPDIR)/libgrub_a-stage2.Po \ +$(DEPDIR)/minix_stage1_5_exec-asm.Po \ $(DEPDIR)/minix_stage1_5_exec-bios.Po \ $(DEPDIR)/minix_stage1_5_exec-char_io.Po \ $(DEPDIR)/minix_stage1_5_exec-common.Po \ @@ -406,6 +428,7 @@ $(DEPDIR)/pre_stage2_exec-fsys_fat.Po \ $(DEPDIR)/pre_stage2_exec-fsys_ffs.Po \ $(DEPDIR)/pre_stage2_exec-fsys_minix.Po \ $(DEPDIR)/pre_stage2_exec-fsys_reiserfs.Po \ +$(DEPDIR)/pre_stage2_exec-fsys_vstafs.Po \ $(DEPDIR)/pre_stage2_exec-gunzip.Po \ $(DEPDIR)/pre_stage2_exec-hercules.Po $(DEPDIR)/pre_stage2_exec-md5.Po \ $(DEPDIR)/pre_stage2_exec-serial.Po \ @@ -419,15 +442,23 @@ $(DEPDIR)/reiserfs_stage1_5_exec-common.Po \ $(DEPDIR)/reiserfs_stage1_5_exec-disk_io.Po \ $(DEPDIR)/reiserfs_stage1_5_exec-fsys_reiserfs.Po \ $(DEPDIR)/reiserfs_stage1_5_exec-stage1_5.Po \ -$(DEPDIR)/reiserfs_stage1_5_exec-start.Po $(DEPDIR)/start_exec-start.Po +$(DEPDIR)/reiserfs_stage1_5_exec-start.Po $(DEPDIR)/start_exec-start.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-asm.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-bios.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-char_io.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-common.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-disk_io.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-fsys_vstafs.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-stage1_5.Po \ +$(DEPDIR)/vstafs_stage1_5_exec-start.Po DIST_COMMON = $(noinst_HEADERS) Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) GZIP_ENV = --best -SOURCES = $(libgrub_a_SOURCES) $(diskless_exec_SOURCES) $(e2fs_stage1_5_exec_SOURCES) $(fat_stage1_5_exec_SOURCES) $(ffs_stage1_5_exec_SOURCES) $(minix_stage1_5_exec_SOURCES) $(nbloader_exec_SOURCES) $(pre_stage2_exec_SOURCES) $(pxeloader_exec_SOURCES) $(reiserfs_stage1_5_exec_SOURCES) $(start_exec_SOURCES) -OBJECTS = $(am_libgrub_a_OBJECTS) $(am_diskless_exec_OBJECTS) $(am_e2fs_stage1_5_exec_OBJECTS) $(am_fat_stage1_5_exec_OBJECTS) $(am_ffs_stage1_5_exec_OBJECTS) $(am_minix_stage1_5_exec_OBJECTS) $(am_nbloader_exec_OBJECTS) $(am_pre_stage2_exec_OBJECTS) $(am_pxeloader_exec_OBJECTS) $(am_reiserfs_stage1_5_exec_OBJECTS) $(am_start_exec_OBJECTS) +SOURCES = $(libgrub_a_SOURCES) $(diskless_exec_SOURCES) $(e2fs_stage1_5_exec_SOURCES) $(fat_stage1_5_exec_SOURCES) $(ffs_stage1_5_exec_SOURCES) $(minix_stage1_5_exec_SOURCES) $(nbloader_exec_SOURCES) $(pre_stage2_exec_SOURCES) $(pxeloader_exec_SOURCES) $(reiserfs_stage1_5_exec_SOURCES) $(start_exec_SOURCES) $(vstafs_stage1_5_exec_SOURCES) +OBJECTS = $(am_libgrub_a_OBJECTS) $(am_diskless_exec_OBJECTS) $(am_e2fs_stage1_5_exec_OBJECTS) $(am_fat_stage1_5_exec_OBJECTS) $(am_ffs_stage1_5_exec_OBJECTS) $(am_minix_stage1_5_exec_OBJECTS) $(am_nbloader_exec_OBJECTS) $(am_pre_stage2_exec_OBJECTS) $(am_pxeloader_exec_OBJECTS) $(am_reiserfs_stage1_5_exec_OBJECTS) $(am_start_exec_OBJECTS) $(am_vstafs_stage1_5_exec_OBJECTS) all: all-redirect .SUFFIXES: @@ -470,6 +501,7 @@ libgrub_a-fsys_ext2fs.o: fsys_ext2fs.c libgrub_a-fsys_fat.o: fsys_fat.c libgrub_a-fsys_minix.o: fsys_minix.c libgrub_a-fsys_reiserfs.o: fsys_reiserfs.c +libgrub_a-fsys_vstafs.o: fsys_vstafs.c libgrub_a-stage2.o: stage2.c libgrub_a-md5.o: md5.c @@ -501,6 +533,7 @@ diskless_exec-fsys_fat.o: fsys_fat.c diskless_exec-fsys_ffs.o: fsys_ffs.c diskless_exec-fsys_minix.o: fsys_minix.c diskless_exec-fsys_reiserfs.o: fsys_reiserfs.c +diskless_exec-fsys_vstafs.o: fsys_vstafs.c diskless_exec-hercules.o: hercules.c diskless_exec-serial.o: serial.c diskless_exec-smp-imps.o: smp-imps.c @@ -587,6 +620,7 @@ pre_stage2_exec-fsys_fat.o: fsys_fat.c pre_stage2_exec-fsys_ffs.o: fsys_ffs.c pre_stage2_exec-fsys_minix.o: fsys_minix.c pre_stage2_exec-fsys_reiserfs.o: fsys_reiserfs.c +pre_stage2_exec-fsys_vstafs.o: fsys_vstafs.c pre_stage2_exec-hercules.o: hercules.c pre_stage2_exec-serial.o: serial.c pre_stage2_exec-smp-imps.o: smp-imps.c @@ -622,6 +656,20 @@ start_exec-start.o: start.S start.exec: $(start_exec_OBJECTS) $(start_exec_DEPENDENCIES) @rm -f start.exec $(LINK) $(start_exec_LDFLAGS) $(start_exec_OBJECTS) $(start_exec_LDADD) $(LIBS) +vstafs_stage1_5_exec-start.o: start.S + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-start.o `test -f start.S || echo '$(srcdir)/'`start.S +vstafs_stage1_5_exec-asm.o: asm.S + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-asm.o `test -f asm.S || echo '$(srcdir)/'`asm.S +vstafs_stage1_5_exec-common.o: common.c +vstafs_stage1_5_exec-char_io.o: char_io.c +vstafs_stage1_5_exec-disk_io.o: disk_io.c +vstafs_stage1_5_exec-stage1_5.o: stage1_5.c +vstafs_stage1_5_exec-fsys_vstafs.o: fsys_vstafs.c +vstafs_stage1_5_exec-bios.o: bios.c + +vstafs_stage1_5.exec: $(vstafs_stage1_5_exec_OBJECTS) $(vstafs_stage1_5_exec_DEPENDENCIES) + @rm -f vstafs_stage1_5.exec + $(LINK) $(vstafs_stage1_5_exec_LDFLAGS) $(vstafs_stage1_5_exec_OBJECTS) $(vstafs_stage1_5_exec_LDADD) $(LIBS) .S.o: $(COMPILE) -c $< @@ -689,6 +737,7 @@ maintainer-clean-tags: @AMDEP@include $(DEPDIR)/diskless_exec-fsys_ffs.Po @AMDEP@include $(DEPDIR)/diskless_exec-fsys_minix.Po @AMDEP@include $(DEPDIR)/diskless_exec-fsys_reiserfs.Po +@AMDEP@include $(DEPDIR)/diskless_exec-fsys_vstafs.Po @AMDEP@include $(DEPDIR)/diskless_exec-gunzip.Po @AMDEP@include $(DEPDIR)/diskless_exec-hercules.Po @AMDEP@include $(DEPDIR)/diskless_exec-md5.Po @@ -730,6 +779,7 @@ maintainer-clean-tags: @AMDEP@include $(DEPDIR)/libgrub_a-fsys_ffs.Po @AMDEP@include $(DEPDIR)/libgrub_a-fsys_minix.Po @AMDEP@include $(DEPDIR)/libgrub_a-fsys_reiserfs.Po +@AMDEP@include $(DEPDIR)/libgrub_a-fsys_vstafs.Po @AMDEP@include $(DEPDIR)/libgrub_a-gunzip.Po @AMDEP@include $(DEPDIR)/libgrub_a-md5.Po @AMDEP@include $(DEPDIR)/libgrub_a-stage2.Po @@ -755,6 +805,7 @@ maintainer-clean-tags: @AMDEP@include $(DEPDIR)/pre_stage2_exec-fsys_ffs.Po @AMDEP@include $(DEPDIR)/pre_stage2_exec-fsys_minix.Po @AMDEP@include $(DEPDIR)/pre_stage2_exec-fsys_reiserfs.Po +@AMDEP@include $(DEPDIR)/pre_stage2_exec-fsys_vstafs.Po @AMDEP@include $(DEPDIR)/pre_stage2_exec-gunzip.Po @AMDEP@include $(DEPDIR)/pre_stage2_exec-hercules.Po @AMDEP@include $(DEPDIR)/pre_stage2_exec-md5.Po @@ -771,6 +822,14 @@ maintainer-clean-tags: @AMDEP@include $(DEPDIR)/reiserfs_stage1_5_exec-stage1_5.Po @AMDEP@include $(DEPDIR)/reiserfs_stage1_5_exec-start.Po @AMDEP@include $(DEPDIR)/start_exec-start.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-asm.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-bios.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-char_io.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-common.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-disk_io.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-fsys_vstafs.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-stage1_5.Po +@AMDEP@include $(DEPDIR)/vstafs_stage1_5_exec-start.Po mostlyclean-depend: @@ -888,6 +947,14 @@ libgrub_a-fsys_reiserfs.o: fsys_reiserfs.c @AMDEP@CCDEPMODE = @CCDEPMODE@ +libgrub_a-fsys_vstafs.o: fsys_vstafs.c +@AMDEP@ source='fsys_vstafs.c' object='libgrub_a-fsys_vstafs.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/libgrub_a-fsys_vstafs.Po' tmpdepfile='$(DEPDIR)/libgrub_a-fsys_vstafs.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgrub_a_CFLAGS) $(CFLAGS) -c -o libgrub_a-fsys_vstafs.o `test -f fsys_vstafs.c || echo '$(srcdir)/'`fsys_vstafs.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + libgrub_a-stage2.o: stage2.c @AMDEP@ source='stage2.c' object='libgrub_a-stage2.o' libtool=no @AMDEPBACKSLASH@ @AMDEP@ depfile='$(DEPDIR)/libgrub_a-stage2.Po' tmpdepfile='$(DEPDIR)/libgrub_a-stage2.TPo' @AMDEPBACKSLASH@ @@ -1008,6 +1075,14 @@ diskless_exec-fsys_reiserfs.o: fsys_reiserfs.c @AMDEP@CCDEPMODE = @CCDEPMODE@ +diskless_exec-fsys_vstafs.o: fsys_vstafs.c +@AMDEP@ source='fsys_vstafs.c' object='diskless_exec-fsys_vstafs.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/diskless_exec-fsys_vstafs.Po' tmpdepfile='$(DEPDIR)/diskless_exec-fsys_vstafs.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(diskless_exec_CFLAGS) $(CFLAGS) -c -o diskless_exec-fsys_vstafs.o `test -f fsys_vstafs.c || echo '$(srcdir)/'`fsys_vstafs.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + diskless_exec-hercules.o: hercules.c @AMDEP@ source='hercules.c' object='diskless_exec-hercules.o' libtool=no @AMDEPBACKSLASH@ @AMDEP@ depfile='$(DEPDIR)/diskless_exec-hercules.Po' tmpdepfile='$(DEPDIR)/diskless_exec-hercules.TPo' @AMDEPBACKSLASH@ @@ -1344,6 +1419,14 @@ pre_stage2_exec-fsys_reiserfs.o: fsys_reiserfs.c @AMDEP@CCDEPMODE = @CCDEPMODE@ +pre_stage2_exec-fsys_vstafs.o: fsys_vstafs.c +@AMDEP@ source='fsys_vstafs.c' object='pre_stage2_exec-fsys_vstafs.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/pre_stage2_exec-fsys_vstafs.Po' tmpdepfile='$(DEPDIR)/pre_stage2_exec-fsys_vstafs.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pre_stage2_exec_CFLAGS) $(CFLAGS) -c -o pre_stage2_exec-fsys_vstafs.o `test -f fsys_vstafs.c || echo '$(srcdir)/'`fsys_vstafs.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + pre_stage2_exec-hercules.o: hercules.c @AMDEP@ source='hercules.c' object='pre_stage2_exec-hercules.o' libtool=no @AMDEPBACKSLASH@ @AMDEP@ depfile='$(DEPDIR)/pre_stage2_exec-hercules.Po' tmpdepfile='$(DEPDIR)/pre_stage2_exec-hercules.TPo' @AMDEPBACKSLASH@ @@ -1429,6 +1512,54 @@ reiserfs_stage1_5_exec-bios.o: bios.c @AMDEP@ depfile='$(DEPDIR)/reiserfs_stage1_5_exec-bios.Po' tmpdepfile='$(DEPDIR)/reiserfs_stage1_5_exec-bios.TPo' @AMDEPBACKSLASH@ @AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(reiserfs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o reiserfs_stage1_5_exec-bios.o `test -f bios.c || echo '$(srcdir)/'`bios.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-common.o: common.c +@AMDEP@ source='common.c' object='vstafs_stage1_5_exec-common.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-common.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-common.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-common.o `test -f common.c || echo '$(srcdir)/'`common.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-char_io.o: char_io.c +@AMDEP@ source='char_io.c' object='vstafs_stage1_5_exec-char_io.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-char_io.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-char_io.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-char_io.o `test -f char_io.c || echo '$(srcdir)/'`char_io.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-disk_io.o: disk_io.c +@AMDEP@ source='disk_io.c' object='vstafs_stage1_5_exec-disk_io.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-disk_io.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-disk_io.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-disk_io.o `test -f disk_io.c || echo '$(srcdir)/'`disk_io.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-stage1_5.o: stage1_5.c +@AMDEP@ source='stage1_5.c' object='vstafs_stage1_5_exec-stage1_5.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-stage1_5.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-stage1_5.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-stage1_5.o `test -f stage1_5.c || echo '$(srcdir)/'`stage1_5.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-fsys_vstafs.o: fsys_vstafs.c +@AMDEP@ source='fsys_vstafs.c' object='vstafs_stage1_5_exec-fsys_vstafs.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-fsys_vstafs.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-fsys_vstafs.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-fsys_vstafs.o `test -f fsys_vstafs.c || echo '$(srcdir)/'`fsys_vstafs.c + +@AMDEP@CCDEPMODE = @CCDEPMODE@ + +vstafs_stage1_5_exec-bios.o: bios.c +@AMDEP@ source='bios.c' object='vstafs_stage1_5_exec-bios.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP@ depfile='$(DEPDIR)/vstafs_stage1_5_exec-bios.Po' tmpdepfile='$(DEPDIR)/vstafs_stage1_5_exec-bios.TPo' @AMDEPBACKSLASH@ +@AMDEP@ $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ + $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(vstafs_stage1_5_exec_CFLAGS) $(CFLAGS) -c -o vstafs_stage1_5_exec-bios.o `test -f bios.c || echo '$(srcdir)/'`bios.c check-TESTS: $(TESTS) @failed=0; all=0; xfail=0; xpass=0; \ srcdir=$(srcdir); export srcdir; \ diff --git a/stage2/char_io.c b/stage2/char_io.c index 72fd10d2d..3ce8cfbeb 100644 --- a/stage2/char_io.c +++ b/stage2/char_io.c @@ -1015,7 +1015,15 @@ grub_strncat (char *s1, const char *s2, int n) return 1; } +#endif /* ! STAGE1_5 */ +/* XXX: This below is an evil hack. Certainly, we should change the + strategy to determine what should be defined and what shouldn't be + defined for each image. For example, it would be better to create + a static library supporting minimal standard C functions and link + each image with the library. Complicated things should be left to + computer, definitely. -okuji */ +#if ! defined(STAGE1_5) || defined(FSYS_VSTAFS) int grub_strcmp (const char *s1, const char *s2) { @@ -1031,7 +1039,9 @@ grub_strcmp (const char *s1, const char *s2) return 0; } +#endif /* ! STAGE1_5 || FSYS_VSTAFS */ +#ifndef STAGE1_5 /* Wait for a keypress and return its code. */ int getkey (void) diff --git a/stage2/disk_io.c b/stage2/disk_io.c index ea98ef393..f61009386 100644 --- a/stage2/disk_io.c +++ b/stage2/disk_io.c @@ -59,6 +59,9 @@ struct fsys_entry fsys_table[NUM_FSYS + 1] = # endif # ifdef FSYS_REISERFS {"reiserfs", reiserfs_mount, reiserfs_read, reiserfs_dir, 0, reiserfs_embed}, +# endif +# ifdef FSYS_VSTAFS + {"vstafs", vstafs_mount, vstafs_read, vstafs_dir, 0, 0}, # endif /* XX FFS should come last as it's superblock is commonly crossing tracks on floppies from track 1 to 2, while others only use 1. */ diff --git a/stage2/filesys.h b/stage2/filesys.h index 324039985..56ba90bac 100644 --- a/stage2/filesys.h +++ b/stage2/filesys.h @@ -2,7 +2,7 @@ /* * GRUB -- GRand Unified Bootloader * Copyright (C) 1996 Erich Boleyn - * Copyright (C) 1999, 2000 Free Software Foundation, Inc. + * Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -68,6 +68,15 @@ int reiserfs_embed (int *start_sector, int needed_sectors); #define FSYS_REISERFS_NUM 0 #endif +#ifdef FSYS_VSTAFS +#define FSYS_VSTAFS_NUM 1 +int vstafs_mount (void); +int vstafs_read (char *buf, int len); +int vstafs_dir (char *dirname); +#else +#define FSYS_VSTAFS_NUM 0 +#endif + #ifdef FSYS_TFTP #define FSYS_TFTP_NUM 1 int tftp_mount (void); @@ -81,7 +90,7 @@ void tftp_close (void); #ifndef NUM_FSYS #define NUM_FSYS \ (FSYS_FFS_NUM + FSYS_FAT_NUM + FSYS_EXT2FS_NUM + FSYS_MINIX_NUM \ - + FSYS_REISERFS_NUM + FSYS_TFTP_NUM) + + FSYS_REISERFS_NUM + FSYS_VSTAFS_NUM + FSYS_TFTP_NUM) #endif /* defines for the block filesystem info area */ diff --git a/stage2/pc_slice.h b/stage2/pc_slice.h index 9b90194c3..3e20849a7 100644 --- a/stage2/pc_slice.h +++ b/stage2/pc_slice.h @@ -1,7 +1,7 @@ /* * GRUB -- GRand Unified Bootloader * Copyright (C) 1996 Erich Boleyn - * Copyright (C) 1999, 2000 Free Software Foundation, Inc. + * Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -114,6 +114,7 @@ #define PC_SLICE_TYPE_LINUX_MINIX 0x81 #define PC_SLICE_TYPE_EXT2FS 0x83 #define PC_SLICE_TYPE_LINUX_EXTENDED 0x85 +#define PC_SLICE_TYPE_VSTAFS 0x9e #define PC_SLICE_TYPE_LINUX_RAID 0xfd diff --git a/stage2/shared.h b/stage2/shared.h index fc041a793..59dd2853b 100644 --- a/stage2/shared.h +++ b/stage2/shared.h @@ -206,6 +206,7 @@ extern char *grub_scratch_mem; #define STAGE2_ID_FAT_STAGE1_5 3 #define STAGE2_ID_MINIX_STAGE1_5 4 #define STAGE2_ID_REISERFS_STAGE1_5 5 +#define STAGE2_ID_VSTAFS_STAGE1_5 6 #ifndef STAGE1_5 # define STAGE2_ID STAGE2_ID_STAGE2 @@ -220,6 +221,8 @@ extern char *grub_scratch_mem; # define STAGE2_ID STAGE2_ID_MINIX_STAGE1_5 # elif defined(FSYS_REISERFS) # define STAGE2_ID STAGE2_ID_REISERFS_STAGE1_5 +# elif defined(FSYS_VSTAFS) +# define STAGE2_ID STAGE2_ID_VSTAFS_STAGE1_5 # else # error "unknown Stage 2" # endif