add a workaround for some BIOSes into stage1, remove our own rult to produce info files.
This commit is contained in:
parent
c17c927969
commit
9d7344365c
8 changed files with 42 additions and 221 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
1999-10-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
||||||
|
|
||||||
|
* stage1/stage1.S: Long jump to real_start, because some bogus
|
||||||
|
BIOSes jump to 07C0:0000 instead of 0000:7C00.
|
||||||
|
(real_start): New label.
|
||||||
|
* docs/Makefile.am (grub.info): Removed. Use the default rule
|
||||||
|
instead.
|
||||||
|
|
||||||
1999-10-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
1999-10-25 OKUJI Yoshinori <okuji@kuicr.kyoto-u.ac.jp>
|
||||||
|
|
||||||
* stage2/asm.S [DEFINE_TRACK_INT13] (int3_handler): Save the
|
* stage2/asm.S [DEFINE_TRACK_INT13] (int3_handler): Save the
|
||||||
|
|
12
README
12
README
|
@ -15,7 +15,7 @@ See the file NEWS for a description of recent changes to GRUB.
|
||||||
You need recent developmental environment to build GRUB. We recommend
|
You need recent developmental environment to build GRUB. We recommend
|
||||||
you use the following utilities:
|
you use the following utilities:
|
||||||
|
|
||||||
* binutils 2.9.1.0.23 and later (Do not use early 2.9.1.0.x!)
|
* binutils 2.9.1.0.23 or later (Do not use early 2.9.1.0.x!)
|
||||||
|
|
||||||
Binutils has changed the behavior of 16bit assembler between 2.9.1
|
Binutils has changed the behavior of 16bit assembler between 2.9.1
|
||||||
and 2.9.1.0.x, and we support only 2.9.1.0.x and higher. It is available
|
and 2.9.1.0.x, and we support only 2.9.1.0.x and higher. It is available
|
||||||
|
@ -34,15 +34,21 @@ The latter is what you should see. If you have installed a recent
|
||||||
version of binutils but this version number is not identical with it,
|
version of binutils but this version number is not identical with it,
|
||||||
you need to specify the option ``--with-binutils=DIR'' for configure.
|
you need to specify the option ``--with-binutils=DIR'' for configure.
|
||||||
|
|
||||||
|
* texinfo 4.0 or later
|
||||||
|
|
||||||
|
We use some new macros in the manuals, so you need a recent TeXinfo
|
||||||
|
release. See http://www.gnu.org/software/texinfo/texinfo.html, for more
|
||||||
|
information.
|
||||||
|
|
||||||
|
|
||||||
These below are required when you develop GRUB or when you get it from
|
These below are required when you develop GRUB or when you get it from
|
||||||
the CVS:
|
the CVS:
|
||||||
|
|
||||||
* automake 19990620 and later
|
* automake 19990620 or later
|
||||||
|
|
||||||
The new feature, per-executable flags, is requred, so you need to get
|
The new feature, per-executable flags, is requred, so you need to get
|
||||||
an unreleased version from the CVS. See
|
an unreleased version from the CVS. See
|
||||||
http://sourceware.cygnus.com/automake/ for more information.
|
http://sourceware.cygnus.com/automake/, for more information.
|
||||||
|
|
||||||
|
|
||||||
See the file INSTALL for instructions on how to build and install the
|
See the file INSTALL for instructions on how to build and install the
|
||||||
|
|
183
acinclude.m4
183
acinclude.m4
|
@ -1,15 +1,3 @@
|
||||||
dnl aclocal.m4 generated automatically by aclocal 1.4a
|
|
||||||
|
|
||||||
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
|
||||||
dnl This file is free software; the Free Software Foundation
|
|
||||||
dnl gives unlimited permission to copy and/or distribute it,
|
|
||||||
dnl with or without modifications, as long as this notice is preserved.
|
|
||||||
|
|
||||||
dnl This program is distributed in the hope that it will be useful,
|
|
||||||
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
dnl PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
dnl grub_ASM_USCORE checks if C symbols get an underscore after
|
dnl grub_ASM_USCORE checks if C symbols get an underscore after
|
||||||
dnl compiling to assembler.
|
dnl compiling to assembler.
|
||||||
dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by
|
dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by
|
||||||
|
@ -295,174 +283,3 @@ fi
|
||||||
|
|
||||||
AC_MSG_RESULT([$grub_cv_check_uscore_end_symbol])
|
AC_MSG_RESULT([$grub_cv_check_uscore_end_symbol])
|
||||||
])
|
])
|
||||||
|
|
||||||
# Do all the work for Automake. This macro actually does too much --
|
|
||||||
# some checks are only needed if your package does certain things.
|
|
||||||
# But this isn't really a big deal.
|
|
||||||
|
|
||||||
# serial 1
|
|
||||||
|
|
||||||
dnl Usage:
|
|
||||||
dnl AM_INIT_AUTOMAKE(package,version, [no-define])
|
|
||||||
|
|
||||||
AC_DEFUN(AM_INIT_AUTOMAKE,
|
|
||||||
[AC_REQUIRE([AC_PROG_INSTALL])
|
|
||||||
dnl We require 2.13 because we rely on SHELL being computed by configure.
|
|
||||||
AC_PREREQ([2.13])
|
|
||||||
PACKAGE=[$1]
|
|
||||||
AC_SUBST(PACKAGE)
|
|
||||||
VERSION=[$2]
|
|
||||||
AC_SUBST(VERSION)
|
|
||||||
dnl test to see if srcdir already configured
|
|
||||||
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
|
|
||||||
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
|
|
||||||
fi
|
|
||||||
ifelse([$3],,
|
|
||||||
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
|
|
||||||
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
|
|
||||||
AC_REQUIRE([AM_SANITY_CHECK])
|
|
||||||
AC_REQUIRE([AC_ARG_PROGRAM])
|
|
||||||
dnl FIXME This is truly gross.
|
|
||||||
missing_dir=`cd $ac_aux_dir && pwd`
|
|
||||||
AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
|
|
||||||
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
|
|
||||||
AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
|
|
||||||
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
|
|
||||||
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
|
|
||||||
dnl Set install_sh for make dist
|
|
||||||
install_sh="$missing_dir/install-sh"
|
|
||||||
test -f "$install_sh" || install_sh="$missing_dir/install.sh"
|
|
||||||
AC_SUBST(install_sh)
|
|
||||||
dnl We check for tar when the user configures the end package.
|
|
||||||
dnl This is sad, since we only need this for "dist". However,
|
|
||||||
dnl there's no other good way to do it. We prefer GNU tar if
|
|
||||||
dnl we can find it. If we can't find a tar, it doesn't really matter.
|
|
||||||
AC_CHECK_PROGS(AMTAR, gnutar gtar tar)
|
|
||||||
dnl We need awk for the "check" target. The system "awk" is bad on
|
|
||||||
dnl some platforms.
|
|
||||||
AC_REQUIRE([AC_PROG_AWK])
|
|
||||||
AMTARFLAGS=
|
|
||||||
if test -n "$AMTAR"; then
|
|
||||||
if $SHELL -c "$AMTAR --version" > /dev/null 2>&1; then
|
|
||||||
dnl We have GNU tar.
|
|
||||||
AMTARFLAGS=o
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
AC_SUBST(AMTARFLAGS)
|
|
||||||
AC_REQUIRE([AC_PROG_MAKE_SET])])
|
|
||||||
|
|
||||||
#
|
|
||||||
# Check to make sure that the build environment is sane.
|
|
||||||
#
|
|
||||||
|
|
||||||
AC_DEFUN(AM_SANITY_CHECK,
|
|
||||||
[AC_MSG_CHECKING([whether build environment is sane])
|
|
||||||
# Just in case
|
|
||||||
sleep 1
|
|
||||||
echo timestamp > conftestfile
|
|
||||||
# Do `set' in a subshell so we don't clobber the current shell's
|
|
||||||
# arguments. Must try -L first in case configure is actually a
|
|
||||||
# symlink; some systems play weird games with the mod time of symlinks
|
|
||||||
# (eg FreeBSD returns the mod time of the symlink's containing
|
|
||||||
# directory).
|
|
||||||
if (
|
|
||||||
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
|
|
||||||
if test "[$]*" = "X"; then
|
|
||||||
# -L didn't work.
|
|
||||||
set X `ls -t $srcdir/configure conftestfile`
|
|
||||||
fi
|
|
||||||
if test "[$]*" != "X $srcdir/configure conftestfile" \
|
|
||||||
&& test "[$]*" != "X conftestfile $srcdir/configure"; then
|
|
||||||
|
|
||||||
# If neither matched, then we have a broken ls. This can happen
|
|
||||||
# if, for instance, CONFIG_SHELL is bash and it inherits a
|
|
||||||
# broken ls alias from the environment. This has actually
|
|
||||||
# happened. Such a system could not be considered "sane".
|
|
||||||
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
|
|
||||||
alias in your environment])
|
|
||||||
fi
|
|
||||||
|
|
||||||
test "[$]2" = conftestfile
|
|
||||||
)
|
|
||||||
then
|
|
||||||
# Ok.
|
|
||||||
:
|
|
||||||
else
|
|
||||||
AC_MSG_ERROR([newly created file is older than distributed files!
|
|
||||||
Check your system clock])
|
|
||||||
fi
|
|
||||||
rm -f conftest*
|
|
||||||
AC_MSG_RESULT(yes)])
|
|
||||||
|
|
||||||
dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
|
|
||||||
dnl The program must properly implement --version.
|
|
||||||
AC_DEFUN(AM_MISSING_PROG,
|
|
||||||
[AC_MSG_CHECKING(for working $2)
|
|
||||||
# Run test in a subshell; some versions of sh will print an error if
|
|
||||||
# an executable is not found, even if stderr is redirected.
|
|
||||||
# Redirect stdin to placate older versions of autoconf. Sigh.
|
|
||||||
if ($2 --version) < /dev/null > /dev/null 2>&1; then
|
|
||||||
$1=$2
|
|
||||||
AC_MSG_RESULT(found)
|
|
||||||
else
|
|
||||||
$1="$3/missing $2"
|
|
||||||
AC_MSG_RESULT(missing)
|
|
||||||
fi
|
|
||||||
AC_SUBST($1)])
|
|
||||||
|
|
||||||
# Like AC_CONFIG_HEADER, but automatically create stamp file.
|
|
||||||
|
|
||||||
AC_DEFUN(AM_CONFIG_HEADER,
|
|
||||||
[AC_PREREQ([2.12])
|
|
||||||
AC_CONFIG_HEADER([$1])
|
|
||||||
dnl When config.status generates a header, we must update the stamp-h file.
|
|
||||||
dnl This file resides in the same directory as the config header
|
|
||||||
dnl that is generated. We must strip everything past the first ":",
|
|
||||||
dnl and everything past the last "/".
|
|
||||||
AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
|
|
||||||
ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
|
|
||||||
<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
|
|
||||||
<<am_indx=1
|
|
||||||
for am_file in <<$1>>; do
|
|
||||||
case " <<$>>CONFIG_HEADERS " in
|
|
||||||
*" <<$>>am_file "*<<)>>
|
|
||||||
echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
am_indx=`expr "<<$>>am_indx" + 1`
|
|
||||||
done<<>>dnl>>)
|
|
||||||
changequote([,]))])
|
|
||||||
|
|
||||||
# Add --enable-maintainer-mode option to configure.
|
|
||||||
# From Jim Meyering
|
|
||||||
|
|
||||||
# serial 1
|
|
||||||
|
|
||||||
AC_DEFUN(AM_MAINTAINER_MODE,
|
|
||||||
[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
|
|
||||||
dnl maintainer-mode is disabled by default
|
|
||||||
AC_ARG_ENABLE(maintainer-mode,
|
|
||||||
[ --enable-maintainer-mode enable make rules and dependencies not useful
|
|
||||||
(and sometimes confusing) to the casual installer],
|
|
||||||
USE_MAINTAINER_MODE=$enableval,
|
|
||||||
USE_MAINTAINER_MODE=no)
|
|
||||||
AC_MSG_RESULT($USE_MAINTAINER_MODE)
|
|
||||||
AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
|
|
||||||
MAINT=$MAINTAINER_MODE_TRUE
|
|
||||||
AC_SUBST(MAINT)dnl
|
|
||||||
]
|
|
||||||
)
|
|
||||||
|
|
||||||
# Define a conditional.
|
|
||||||
|
|
||||||
AC_DEFUN(AM_CONDITIONAL,
|
|
||||||
[AC_SUBST($1_TRUE)
|
|
||||||
AC_SUBST($1_FALSE)
|
|
||||||
if $2; then
|
|
||||||
$1_TRUE=
|
|
||||||
$1_FALSE='#'
|
|
||||||
else
|
|
||||||
$1_TRUE='#'
|
|
||||||
$1_FALSE=
|
|
||||||
fi])
|
|
||||||
|
|
||||||
|
|
13
aclocal.m4
vendored
13
aclocal.m4
vendored
|
@ -10,18 +10,6 @@ dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
dnl PARTICULAR PURPOSE.
|
dnl PARTICULAR PURPOSE.
|
||||||
|
|
||||||
dnl aclocal.m4 generated automatically by aclocal 1.4a
|
|
||||||
|
|
||||||
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
|
||||||
dnl This file is free software; the Free Software Foundation
|
|
||||||
dnl gives unlimited permission to copy and/or distribute it,
|
|
||||||
dnl with or without modifications, as long as this notice is preserved.
|
|
||||||
|
|
||||||
dnl This program is distributed in the hope that it will be useful,
|
|
||||||
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
||||||
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
||||||
dnl PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
dnl grub_ASM_USCORE checks if C symbols get an underscore after
|
dnl grub_ASM_USCORE checks if C symbols get an underscore after
|
||||||
dnl compiling to assembler.
|
dnl compiling to assembler.
|
||||||
dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by
|
dnl Written by Pavel Roskin. Based on grub_ASM_EXT_C written by
|
||||||
|
@ -478,4 +466,3 @@ else
|
||||||
$1_FALSE=
|
$1_FALSE=
|
||||||
fi])
|
fi])
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -9,6 +9,15 @@
|
||||||
/* Defined if _start is defined. */
|
/* Defined if _start is defined. */
|
||||||
#undef HAVE_USCORE_START_SYMBOL
|
#undef HAVE_USCORE_START_SYMBOL
|
||||||
|
|
||||||
|
/* Defined if __bss_start is defined. */
|
||||||
|
#undef HAVE_USCORE_USCORE_BSS_START_SYMBOL
|
||||||
|
|
||||||
|
/* Defined if edata is defined. */
|
||||||
|
#undef HAVE_EDATA_SYMBOL
|
||||||
|
|
||||||
|
/* Defined if _edata is defined. */
|
||||||
|
#undef HAVE_USCORE_EDATA_SYMBOL
|
||||||
|
|
||||||
/* Defined if end is defined. */
|
/* Defined if end is defined. */
|
||||||
#undef HAVE_END_SYMBOL
|
#undef HAVE_END_SYMBOL
|
||||||
|
|
||||||
|
|
|
@ -24,12 +24,6 @@ EXTRA_DIST = menu.lst $(man_MANS) $(noinst_SCRIPTS) \
|
||||||
%.S.texi: %.S $(srcdir)/$(SRC2TEXI)
|
%.S.texi: %.S $(srcdir)/$(SRC2TEXI)
|
||||||
$(SHELL) $(srcdir)/$(SRC2TEXI) $(srcdir) $< $@
|
$(SHELL) $(srcdir)/$(SRC2TEXI) $(srcdir) $< $@
|
||||||
|
|
||||||
# FIXME: Use this rule until Debian has the new Texinfo.
|
|
||||||
grub.info: grub.texi
|
|
||||||
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
|
|
||||||
cd $(srcdir) \
|
|
||||||
&& sed 's/@command/@file/g; s/ifnottex/ifinfo/' grub.texi | $(MAKEINFO)
|
|
||||||
|
|
||||||
if MAINTAINER_MODE
|
if MAINTAINER_MODE
|
||||||
$(srcdir)/grub.8: ../grub/grub $(srcdir)/$(HELP2MAN)
|
$(srcdir)/grub.8: ../grub/grub $(srcdir)/$(HELP2MAN)
|
||||||
$(PERL) $(srcdir)/$(HELP2MAN) --name="the grub shell" \
|
$(PERL) $(srcdir)/$(HELP2MAN) --name="the grub shell" \
|
||||||
|
|
|
@ -83,6 +83,9 @@ install_sh = @install_sh@
|
||||||
|
|
||||||
|
|
||||||
info_TEXINFOS = grub.texi multiboot.texi
|
info_TEXINFOS = grub.texi multiboot.texi
|
||||||
|
grub_TEXINFOS = tutorial.texi user-ref.texi prog-ref.texi \
|
||||||
|
appendices.texi
|
||||||
|
|
||||||
EXAMPLES = boot.S kernel.c multiboot.h
|
EXAMPLES = boot.S kernel.c multiboot.h
|
||||||
multiboot_TEXINFOS = boot.S.texi kernel.c.texi multiboot.h.texi
|
multiboot_TEXINFOS = boot.S.texi kernel.c.texi multiboot.h.texi
|
||||||
man_MANS = grub.8 mbchk.1
|
man_MANS = grub.8 mbchk.1
|
||||||
|
@ -90,13 +93,8 @@ HELP2MAN = help2man
|
||||||
SRC2TEXI = src2texi
|
SRC2TEXI = src2texi
|
||||||
noinst_SCRIPTS = $(HELP2MAN) $(SRC2TEXI)
|
noinst_SCRIPTS = $(HELP2MAN) $(SRC2TEXI)
|
||||||
|
|
||||||
# The unfinished manuals.
|
|
||||||
UNFINISHED_MANUALS = new-grub.texi tutorial.texi user-ref.texi \
|
|
||||||
prog-ref.texi appendices.texi
|
|
||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = menu.lst $(man_MANS) $(noinst_SCRIPTS) \
|
EXTRA_DIST = menu.lst $(man_MANS) $(noinst_SCRIPTS) \
|
||||||
$(EXAMPLES) $(multiboot_TEXINFOS) $(UNFINISHED_MANUALS)
|
$(EXAMPLES) $(multiboot_TEXINFOS)
|
||||||
|
|
||||||
subdir = docs
|
subdir = docs
|
||||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||||
|
@ -114,8 +112,8 @@ man8dir = $(mandir)/man8
|
||||||
MANS = $(man_MANS)
|
MANS = $(man_MANS)
|
||||||
|
|
||||||
NROFF = nroff
|
NROFF = nroff
|
||||||
DIST_COMMON = $(multiboot_TEXINFOS) Makefile.am Makefile.in mdate-sh \
|
DIST_COMMON = $(grub_TEXINFOS) $(multiboot_TEXINFOS) Makefile.am \
|
||||||
stamp-vti texinfo.tex version.texi
|
Makefile.in mdate-sh stamp-vti texinfo.tex version.texi
|
||||||
|
|
||||||
|
|
||||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
@ -155,8 +153,8 @@ distclean-vti:
|
||||||
maintainer-clean-vti:
|
maintainer-clean-vti:
|
||||||
-@MAINTAINER_MODE_TRUE@rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
|
-@MAINTAINER_MODE_TRUE@rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
|
||||||
|
|
||||||
grub.info: grub.texi version.texi
|
grub.info: grub.texi version.texi $(grub_TEXINFOS)
|
||||||
grub.dvi: grub.texi version.texi
|
grub.dvi: grub.texi version.texi $(grub_TEXINFOS)
|
||||||
|
|
||||||
|
|
||||||
multiboot.info: multiboot.texi $(multiboot_TEXINFOS)
|
multiboot.info: multiboot.texi $(multiboot_TEXINFOS)
|
||||||
|
@ -457,12 +455,6 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean
|
||||||
%.S.texi: %.S $(srcdir)/$(SRC2TEXI)
|
%.S.texi: %.S $(srcdir)/$(SRC2TEXI)
|
||||||
$(SHELL) $(srcdir)/$(SRC2TEXI) $(srcdir) $< $@
|
$(SHELL) $(srcdir)/$(SRC2TEXI) $(srcdir) $< $@
|
||||||
|
|
||||||
# FIXME: Use this rule until Debian has the new Texinfo.
|
|
||||||
grub.info: grub.texi
|
|
||||||
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9]
|
|
||||||
cd $(srcdir) \
|
|
||||||
&& sed 's/@command/@file/g; s/ifnottex/ifinfo/' grub.texi | $(MAKEINFO)
|
|
||||||
|
|
||||||
@MAINTAINER_MODE_TRUE@$(srcdir)/grub.8: ../grub/grub $(srcdir)/$(HELP2MAN)
|
@MAINTAINER_MODE_TRUE@$(srcdir)/grub.8: ../grub/grub $(srcdir)/$(HELP2MAN)
|
||||||
@MAINTAINER_MODE_TRUE@ $(PERL) $(srcdir)/$(HELP2MAN) --name="the grub shell" \
|
@MAINTAINER_MODE_TRUE@ $(PERL) $(srcdir)/$(HELP2MAN) --name="the grub shell" \
|
||||||
@MAINTAINER_MODE_TRUE@ --section=8 --output=$@ $<
|
@MAINTAINER_MODE_TRUE@ --section=8 --output=$@ $<
|
||||||
|
|
|
@ -102,6 +102,14 @@ after_BPB:
|
||||||
/* general setup */
|
/* general setup */
|
||||||
cli /* we're not safe here! */
|
cli /* we're not safe here! */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* ljmp to the next instruction because some bogus BIOSes
|
||||||
|
* jump to 07C0:0000 instead of 0000:7C00.
|
||||||
|
*/
|
||||||
|
ljmp $0, $ABS(real_start)
|
||||||
|
|
||||||
|
real_start:
|
||||||
|
|
||||||
/* set up %ds and %ss as offset from 0 */
|
/* set up %ds and %ss as offset from 0 */
|
||||||
xorw %ax, %ax
|
xorw %ax, %ax
|
||||||
movw %ax, %ds
|
movw %ax, %ds
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue