* configure.ac (STAGE2_CFLAGS): Check if -fno-stack-protector is
supported by GCC. If yes, added the option. This is necessary
for OpenBSD, because the stack protector defines additional
symbols. Reported by uc.sheda <uc.sheda@laposte.net>.
From Sergey Matveychuk <sem@ciam.ru>:
* lib/device.c (get_drive_geometry): Do not open the same device
more than once unnecessarily.
(get_drive_geometry) [__FreeBSD_version >= 500040]: Use new
ioctl methods.
(get_floppy_disk_name) [__FreeBSD__ >= 4]: Use /dev/fd%d rather
than /dev/rfd%d.
(get_ide_disk_name) [__FreeBSD__ >= 4]: Use /dev/ad%d rather
than /dev/rad%d.
(get_scsi_disk_name) [__FreeBSD__ >= 4]: Use /dev/da%d rather
than /dev/rda%d.
* grub/asmstub.c (get_diskinfo): Check if ERRNO is EPERM as
well.
From Yury V. Umanets <umka@namesys.com>:
* stage2/fsys_reiserfs.c (REISER3FS_SUPER_MAGIC_STRING): New
macro.
(reiserfs_mount): Added checks for ReiserFS 3.
(reiserfs_embed): Likewise.
2004-01-25 Yoshinori K. Okuji <okuji@enbug.org>
* docs/grub.texi (Obtaining and Building GRUB): Instead of
describing how to use the anoncvs method, specify the URL of
the description page on Savannah.
Reported by Bernhard Treutwein.
* util/grub-install.in: Use the first word of GRUB_SHELL when
checking if the grub shell is present. This is necessary to
support options to the grub shell (e.g. grub --read-only).
From Eric Kvaalen <E_Kvaalen.Arnesen@noos.fr>:
* docs/grub.texi: Many bug fixes.
Migrated to newer autotools. Also, don't install mkbimage
because its name is too general and it does not conform to the
GNU Coding Standards in some points.
* util/Makefile.am (EXTRA_DIST): New variable.
(sbin_SCRIPTS): Removed mkbimage.
(noinst_SCRIPTS): Added mkbimage.
* stage1/Makefile.am (AM_ASFLAGS): Renamed to ...
(AM_CCASFLAGS): ... this.
* stage2/Makefile.am (pre_stage2_exec_ASFLAGS): Renamed to ...
(pre_stage2_exec_CCASFLAGS): ... this.
(start_exec_ASFLAGS): Renamed to ...
(start_exec_CCASFLAGS): ... this.
(e2fs_stage1_5_exec_ASFLAGS): Renamed to ...
(e2fs_stage1_5_exec_CCASFLAGS): ... this.
(fat_stage1_5_exec_ASFLAGS): Renamed to ...
(fat_stage1_5_exec_CCASFLAGS): ... this.
(ffs_stage1_5_exec_ASFLAGS): Renamed to ...
(ffs_stage1_5_exec_CCASFLAGS): ... this.
(minix_stage1_5_exec_ASFLAGS): Renamed to ...
(minix_stage1_5_exec_CCASFLAGS): ... this.
(reiserfs_stage1_5_exec_ASFLAGS): Renamed to ...
(reiserfs_stage1_5_exec_CCASFLAGS): ... this.
(vstafs_stage1_5_exec_ASFLAGS): Renamed to ...
(vstafs_stage1_5_exec_CCASFLAGS): ... this.
(jfs_stage1_5_exec_ASFLAGS): Renamed to ...
(jfs_stage1_5_exec_CCASFLAGS): ... this.
(xfs_stage1_5_exec_ASFLAGS): Renamed to ...
(xfs_stage1_5_exec_CCASFLAGS): ... this.
(diskless_exec_ASFLAGS): Renamed to ...
(diskless_exec_CCASFLAGS): ... this.
(nbloader_exec_ASFLAGS): Renamed to ...
(nbloader_exec_CCASFLAGS): ... this.
(pxeloader_exec_ASFLAGS): Renamed to ...
(pxeloader_exec_CCASFLAGS): ... this.
* configure.in: Removed.
* configure.ac: New file. Mostly derived from configure.in.
From Tilmann Bubeck:
* stage2/builtins.c [SUPPORT_SERIAL] (terminfo_func): Unescape
arguments before copying them, and escape sequences before
printing them.
* stage2/terminfo.h (TERMINFO_LEN): Changed to 40.
* lib/device.c (check_device): If DEVICE is empty, just return
1.
(get_scsi_disk_name) [__QNXNTO__]: Make NAME empty, because SCSI
disks are detected as IDE disks on QNX RTP.
From Taketo Kabe <kabe@sra-tohoku.co.jp>:
* lib/device.c (get_ide_disk_name) [__QNXNTO__]: Set NAME to
"/dev/hdX".
(get_floppy_disk_name) [__QNXNTO__]: Set NAME to "/dev/fdX".
* stage2/mb_info.h (struct AddrRangeDesc): Specified with the
attribute packed.
* stage2/shared.h (struct mmar_desc): Likewise.
* configure.in (falign_loop_flag): New variable. Set to if GCC
supports `-falign-*'. If true, use `-falign-jumps',
`-falign-loops' and `-falign-functions' instead of
`-malign-jumps', `-malign-loops' and `-malign-functions',
because `-malign-*' are obsolete in GCC 3.x. Reported by Jeremy
Katz.
* netboot/etherboot.h (ETH_MAX_MTU): Because some DHCP/BOOTP
servers don't treat the maximum length the same as Etherboot,
subtract the size of an IP header and that of an UDP header.
* docs/grub.texi (General commands): Added ``pager'' into the
menu.
(pager): New subsection.
(terminal): Added a description about the option
``--lines=LINES''.
* configure.in (AC_INIT_AUTOMAKE): Set the version number to
0.92.
* stage2/stage2.c (run_menu): Call cls outside the loop to run
scripts.
* stage2/cmdline.c (run_script): Prompt a user's intervention,
only when FALLBACK_ENTRY is negative.
* grub/main.c (OPT_NO_PAGER): New macro.
(longopts): Added an entry for "--no-pager".
(usage): Added a description about "--no-pager".
(main): In case of OPT_NO_PAGER, set USE_PAGER to zero. The same
thing is done with OPT_BATCH, because the pager is just harmful
in batch mode.
* grub/main.c (use_preset_menu): New variable.
(OPT_PRESET_MENU): New macro.
(longopts): Added an entry for "--preset-menu".
(usage): Added a description for "--preset-menu". Also, change
the first character of the description for "--device-map" to
lower case for consistency.
(main): Set USE_PRESET_MENU to 1 in the case of OPT_PRESET_MENU.
* stage2/shared.h (use_preset_menu): Declared.
* stage2/stage2.c [PRESET_MENU_STRING || SUPPORT_DISKLESS]
(open_preset_menu) [GRUB_UTIL]: If USE_PRESET_MENU is false,
return zero immediately.
clear the active flag of each of the loaded partition entries,
and then set the active flag of the booted partition image.
VS: ----------------------------------------------------------------------