Commit graph

769 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
53e08cc54c Merged mainstream into newuuid 2009-11-25 23:50:54 +01:00
Vladimir 'phcoder' Serbinenko
bde358ac91 merged with mainline 2009-11-25 23:17:32 +01:00
Robert Millan
e4612999e6 Merge from trunk. 2009-11-25 21:34:53 +00:00
Vladimir 'phcoder' Serbinenko
20f1afd41a Fixed various script issues. Thanks fezie for testing. 2009-11-25 22:34:35 +01:00
Felix Zielcke
6f61ed5513 2009-11-25 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/10_linux.in (linux_entry): Quote the arguments to
	printf and print a newline after the menuentry header line.
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
2009-11-25 19:13:35 +01:00
Felix Zielcke
f022876b03 2009-11-25 Felix Zielcke <fzielcke@z-51.de>
autoconf >= 2.60 support $(localedir).

	* INSTALL: Note that autoconf 2.60 is required.
	* configure.ac (AC_PREREQ): Bump to 2.60.
	* util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased @localedir@.
	* util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
2009-11-25 18:37:04 +01:00
Vladimir 'phcoder' Serbinenko
0e8489094a mainstream merged into pci 2009-11-25 15:15:30 +01:00
Felix Zielcke
4501250b6c 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrelpath.c: New file.
	* conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
	(grub_mkrelpath_SOURCES): New variable.
	* include/grub/util/misc.h: New function prototype.
	* util/misc.c (make_system_path_relative_to_its_root): New function.

	* util/grub-mkconfig_lib.in (bindir): New variable.
	(grub_mkrelpath): Likewise.
	(make_system_path_relative_to_its_root): Use grub-mkrelpath.

	* util/probe.c (probe): Make the file path relative to its root.
	Change a info message to use the GRUB path.  Enable again the
	check if we can read the file with GRUB facilities.

	* util/i386/pc/grub-setup.c (setup): Make core.img path relative
	to its root.
2009-11-24 15:00:25 +01:00
Felix Zielcke
4465287d1b 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c (grub_util_get_dev_abstraction): Properly use
	strncmp().
2009-11-24 09:55:28 +01:00
Felix Zielcke
62b47f220a 2009-11-24 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c (grub_util_is_dmraid): New function.
	(grub_util_get_dev_abstraction): Treat dmraid and multipath
	devices as normal ones, not as LVM.
2009-11-24 08:20:48 +01:00
Vladimir 'phcoder' Serbinenko
59f746dc5f merged mainstream into crypto 2009-11-24 02:54:35 +01:00
Vladimir 'phcoder' Serbinenko
3dcf83ba7d merged mainstream into gfxmenu 2009-11-24 01:22:41 +01:00
Carles Pina i Estany
2b352daff9 Syncs with trunk 2009-11-23 20:50:01 +00:00
Carles Pina i Estany
b58fc33c4f Merging with trunk 2009-11-23 20:34:42 +00:00
Robert Millan
0fdb256813 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* util/hostdisk.c: Include `<grub/i18n.h>'.
        (find_grub_drive): Use ARRAY_SIZE for map size calculation.
        (make_device_name): Rewrite using asprintf.
        (convert_system_partition_to_system_disk): Replace 0 with NULL.
        (find_system_device): If a device is not found, generate one just
        by reusing the OS path name.
        (read_device_map): Make it permissible for device.map not to exist.
2009-11-23 20:30:56 +00:00
Robert Millan
f84b481b35 Cheery-pick grub-emu split from experimental (rev 1361)
2009-11-23  Robert Millan  <rmh.grub@aybabtu.com>

        * configure.ac: Detect all `emu' platforms.  Define
        GRUB_MACHINE_* macros in TARGET_CFLAGS.  Remove
        --enable-grub-emu logic.  Disable include/grub/machine
        symlink on `emu' platforms.

        * genkernsyms.sh.in: Use @TARGET_CFLAGS@ during symbol generation.
        * gensymlist.sh.in: Likewise.

        * include/grub/i386/coreboot/machine.h: Remove file.
        * include/grub/i386/efi/machine.h: Likewise.
        * include/grub/i386/ieee1275/machine.h: Likewise.
        * include/grub/i386/pc/machine.h: Likewise.
        * include/grub/i386/qemu/machine.h: Likewise.
        * include/grub/powerpc/ieee1275/machine.h: Likewise.
        * include/grub/sparc64/ieee1275/machine.h: Likewise.
        * include/grub/x86_64/efi/machine.h: Likewise.

        * commands/acpi.c: Remove `<grub/machine/machine.h>'.
        * commands/halt.c: Likewise.
        * commands/reboot.c: Likewise.
        * include/grub/autoefi.h: Likewise.
        * include/grub/i386/at_keyboard.h: Likewise.
        * include/grub/i386/kernel.h: Likewise.
        * include/grub/i386/loader.h: Likewise.
        * include/grub/i386/pc/memory.h: Likewise.
        * kern/dl.c: Likewise.
        * kern/i386/coreboot/init.c: Likewise.
        * loader/i386/bsd.c: Likewise.
        * loader/i386/linux.c: Likewise.
        * loader/multiboot_loader.c: Likewise.
        * term/i386/pc/serial.c: Likewise.
        * term/usb_keyboard.c: Likewise.

        * include/grub/time.h [!GRUB_MACHINE_EMU]: Remove
        `<grub/machine/machine.h>'
        [!GRUB_MACHINE_EMU] (GRUB_TICKS_PER_SECOND): New macro.
        * util/misc.c: Remove `<grub/machine/machine.h>' and
        `<grub/machine/time.h>'.

        * Makefile.in (enable_grub_emu): Remove variable.
        Include $(srcdir)/conf/any-emu.mk for the `emu' platform.

        * conf/any-emu.rmk: New file.
        * conf/common.rmk (grub_emu_init.lst, grub_emu_init.h)
        (grub_emu_init.c): Move from here ...
        * conf/any-emu.rmk: ... to here.

        * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-emu'.
        (grub_emu_SOURCES, grub_emu_LDFLAGS): Move from here ...
        * conf/any-emu.rmk: ... to here.
2009-11-23 15:31:54 +00:00
Robert Millan
ea1dd8bf0a 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass --keyword=N_ to
        `$(XGETTEXT)'.
        * include/grub/i18n.h (N_): New macro.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/mkisofs.c (ld_options): Wrap all translatable strings
        around N_().
        (usage): Use gettext() to translate help strings when printing them.
2009-11-23 13:18:07 +00:00
Vladimir 'phcoder' Serbinenko
5acc2aba78 merged mainline into PCI 2009-11-23 11:15:24 +01:00
Vladimir 'phcoder' Serbinenko
d00e2a0b4c Merge mainstream into mips 2009-11-23 11:07:31 +01:00
Carles Pina i Estany
39eaee93f1 Sync with trunk 2009-11-22 11:56:10 +00:00
Carles Pina i Estany
0648f857ea Different changes following Robert's email 20091121230904.GA29740@thorin 2009-11-22 11:49:54 +00:00
Vladimir 'phcoder' Serbinenko
7f4f3f581c Unify grub-install.in for sparc64 with i386-ieee1275 2009-11-22 12:22:19 +01:00
Vladimir 'phcoder' Serbinenko
4fe6aa0961 synced with mainstream 2009-11-22 12:11:17 +01:00
Robert Millan
87d58298fd 2009-11-22 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-mkimage.c: Ungettextize grub_util_info() strings.
        * util/i386/pc/grub-setup.c: Likewise.
2009-11-22 10:20:14 +00:00
Carles Pina i Estany
cb681ffd7a Deletes grub-gettext_lib.in (not needed after Robert's changes) 2009-11-21 21:18:12 +00:00
Carles Pina i Estany
a239a5e9cc merge with Trunk 2009-11-21 21:05:15 +00:00
Vladimir 'phcoder' Serbinenko
5afcd00788 merge mainstream into mips 2009-11-21 21:45:32 +01:00
Samuel Thibault
994cc3a308 2009-11-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/getroot.c [__GNU__]: Include <hurd.h>, <hurd/lookup.h>, and
	<hurd/fs.h>
	[__GNU__] (grub_guess_root_device): Call file_name_lookup and
	file_get_storage_info to implement grub_guess_root_device.
2009-11-21 18:00:23 +01:00
Felix Zielcke
74ff1dd52b 2009-11-21 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrescue.in: Print an error and usage if output option
	has not been given.
2009-11-21 17:40:55 +01:00
Felix Zielcke
97951fb232 Merge trunk 2009-11-21 15:49:21 +01:00
Felix Zielcke
0b787d0e99 2009-11-21 Felix Zielcke <fzielcke@z-51.de>
Patch from Loïc Minier <loic.minier@ubuntu.com>.
	* util/grub.d/30_os-prober.in: Cope with Linux entries where
	root and /boot are on different devices.
2009-11-21 15:41:46 +01:00
Robert Millan
13774a2f94 2009-11-21 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-mkrescue.in: Use source directory direcly (without copiing
        or hardlinking it).  Remove -J option, Joliet is not compatible with
        multiple source directories.
2009-11-21 13:22:41 +00:00
Robert Millan
efda854e68 2009-11-21 Carles Pina i Estany <carles@pina.cat>
2009-11-21  Robert Millan  <rmh.grub@aybabtu.com>

        * util/grub-mkrescue.in: Recognize `--override-directory' option.
        (process_input_dir): New function.  Process an arbitrary input
        directory.
        Misc adjustments to support both "override mode" and system-wide mode.
2009-11-21 13:11:38 +00:00
Vladimir 'phcoder' Serbinenko
e242e685f5 merged savedefault in 2009-11-20 10:55:57 +01:00
Colin Watson
242f0731c7 reimported savedefault by cjwatson and myself
Also-By: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
2009-11-20 09:41:20 +01:00
Carles Pina i Estany
fbc5e89710 Syncs with trunk 2009-11-19 21:18:38 +00:00
Robert Millan
f577f7a09d 2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-pc.rmk (grub_setup_SOURCES): Add `gnulib/progname.c'.
        * util/i386/pc/grub-setup.c: Include `<grub/i18n.h>'.
        Include `"progname.h"'.
        (main): Initialize gettext.
        * util/i386/pc/grub-setup.c: Gettexttize.
        * util/i386/pc/grub-mkimage.c: Likewise.

        * Makefile.in (po/*.po): Redefine as ...
        ($(foreach lang, $(LINGUAS), po/$(lang).po)): ... this.

        * po/POTFILES: Add `util/i386/pc/grub-setup.c'.
2009-11-18 23:20:22 +00:00
Robert Millan
700d59cded 2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
* conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/progname.c'.
        * util/mkisofs/mkisofs.c: Include `"progname.h"'.
        (program_name): Remove.
        (main): Initialize gettext support.

        * util/mkisofs/eltorito.c: Gettexttize.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/mkisofs.c: Likewise.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/multi.c: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.

        * po/POTFILES: Update with new files.
2009-11-18 23:05:59 +00:00
Robert Millan
5ce77c6e7e 2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/eltorito.c: Fix minor mistake in license text.
        * util/mkisofs/iso9660.h: Likewise.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/mkisofs.c: Likewise.
        * util/mkisofs/mkisofs.h: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.

        * util/mkisofs/eltorito.c (rcsid): Remove.
        * util/mkisofs/hash.c: Likewise.
        * util/mkisofs/joliet.c: Likewise.
        * util/mkisofs/name.c: Likewise.
        * util/mkisofs/rock.c: Likewise.
        * util/mkisofs/tree.c: Likewise.
        * util/mkisofs/write.c: Likewise.
2009-11-18 22:59:40 +00:00
Robert Millan
1dabbc77cf 2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/match.c: Rewrite from scratch, using a linked list
        instead of static allocation.
        * util/mkisofs/match.h: Likewise.
2009-11-18 22:49:59 +00:00
Robert Millan
769ae37bfd Merge my gettext branch (gettext support in build system for GRUB utilities) 2009-11-17 20:23:06 +00:00
Robert Millan
37fb845ba6 2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
* INSTALL: Document Automake is needed for bootstrap.
        * po/ca.po: Fix PO-Revision-Date and Language-Team fields.
        * util/grub.d/10_kfreebsd.in (bindir): New variable.
        Add gettext initialization.
        (kfreebsd_entry): Make menuentry output translatable.
2009-11-17 11:44:43 +00:00
Robert Millan
5dd39a2f3b Use proper path for gettext.sh and export TEXTDOMAINDIR. 2009-11-17 11:32:05 +00:00
Robert Millan
336262f829 2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
* configure.ac: Call AM_GNU_GETTEXT() (defines localedir, among
        other things).
        * Makefile.in (CPPFLAGS): Add `-DLOCALEDIR=\"$(localedir)\"'.
        * util/i386/pc/grub-mkimage.c (main): Issue setlocale() and
        bindtextdomain() calls for gettext initialization.
2009-11-17 10:47:22 +00:00
Robert Millan
548643e528 * gnulib/progname.c: New file (imported from Gnulib).
* gnulib/progname.h: Likewise.
        * conf/i386-pc.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
        * util/i386/pc/grub-mkimage.c: Include `"progname.h"'.
        (usage): Replace `progname' with `program_name'.
        (main): Use set_program_name() for program name initialization.
2009-11-17 10:40:43 +00:00
Robert Millan
0ef45b9398 Integrate import_gcry.py in autogen.sh. 2009-11-17 10:22:54 +00:00
Robert Millan
59917f8496 Merge import_gcry.py from Vladimir's crypto branch. 2009-11-17 10:21:01 +00:00
Robert Millan
9a90f817a0 Move i18n declarations to their own file. 2009-11-17 09:52:08 +00:00
Robert Millan
a1085f18c5 Gettextify. 2009-11-16 20:19:42 +00:00
Robert Millan
f5e9dadb58 Use PACKAGE instead of hardcoding "grub". 2009-11-16 20:03:14 +00:00
Robert Millan
af2f93ac47 2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
Fix build for systems without error().

        * gnulib/error.c: New file (imported from Gnulib).
        * gnulib/error.h: Likewise.
        * conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/error.c'.
        * util/mkisofs/mkisofs.c (program_name): Remove `static' qualifier
        (this variable is now used by error()).
2009-11-16 18:49:44 +00:00
Felix Zielcke
73fb3dd5f0 2009-11-16 Felix Zielcke <fzielcke@z-51.de>
* util/mkisofs/name.c (FDECL3): Use isascii macro instead of
	relying that char is signed.
2009-11-16 19:47:10 +01:00
Vladimir 'phcoder' Serbinenko
0e3c54a5c5 PBKDF2 passwords available 2009-11-24 02:36:21 +01:00
Robert Millan
ed101e8122 Initial support for gettext in build system. 2009-11-15 23:11:01 +00:00
Robert Millan
fd6fd3d770 2009-11-15 Robert Millan <rmh.grub@aybabtu.com>
Support --version in grub-mkisofs.

        * util/mkisofs/mkisofs.c (rcsid): Remove variable.
        (OPTION_VERSION): New macro.
        (ld_options): Recognize --version.
        (usage): Move `program_name' from here ...
        (program_name): ... to here.  Add `static' qualifier.
        (main): Recognize `OPTION_VERSION'.
2009-11-15 14:02:33 +00:00
Vladimir 'phcoder' Serbinenko
927d0134c7 SDL 2009-11-20 10:28:42 +01:00
Robert Millan
a415847694 2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
Fix help2man generation for mkisofs.

        * util/mkisofs/mkisofs.c (ld_options): Recognize --help.
        (usage): Send output to stdout (rather than stderr).
2009-11-14 21:20:02 +00:00
Robert Millan
fc2208b0ef 2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-coreboot.rmk (grub_mkrescue_SOURCES): Replace
        `util/i386/coreboot/grub-mkrescue.in' with `util/grub-mkrescue.in'.
        * conf/i386-pc.rmk (grub_mkrescue_SOURCES): Replace
        `util/i386/pc/grub-mkrescue.in' with `util/grub-mkrescue.in'.
        (bin_SCRIPTS): Add `grub-mkfloppy'.
        (grub_mkfloppy_SOURCES): New variable.

        * util/grub-mkrescue.in: New file.
        * util/i386/pc/grub-mkfloppy.in: New file.

        * util/i386/coreboot/grub-mkrescue.in: Remove.
        * util/i386/pc/grub-mkrescue.in: Remove.
2009-11-14 18:38:11 +00:00
Felix Zielcke
ad60dd3652 2009-11-13 Felix Zielcke <fzielcke@z-51.de>
* util/misc.c (make_system_path_relative_to_its_root): Fix access
	to a wrong variable.
2009-11-13 23:08:55 +01:00
Carles Pina i Estany
203ffbfa31 Adds gettext support in Grub. Building system needs to be improved and maybe userland utilites improved.
YYYY-MM-DD  Carles Pina i Estany <carles@pina.cat>

	* Makefile.in: Add uptrans target to help to update .pot file
	* conf/common.rmk: Add grub-gettext_lib target, dependency and SOURCES, CFLAGS, LDFLAGS
	* kern/misc.c: Define grub_gettext symbol and add implement grub_gettext_dummy function
	* po/TODO: Temporary file with instructions of what Makefile.in will do
	* po/ca.po: Catalan translation stub
	* include/grub/misc.h: Define macro _(char *s). Declare grub_gettext_dummy and grub_gettext
	* gettext/gettext.c: New file with gettext implementation
	* normal/menu.c (print_message): add _( ) to some strings
	* util/grub.d/10_linux.in: include grub-gettext_lib file. For the Linux menuentry, call eval_gettext
	* util/grub.d/00_header.in: add locale_prefix and gettext locale detection and setting up the access to the mo directory
	* util/grub-mkconfig_lib.in: add get_locale_lang
	* util/grub-gettext_lib.in: new file
2009-11-13 20:39:33 +00:00
Felix Zielcke
f4c62ed6ed Merge trunk 2009-11-13 14:15:36 +01:00
Robert Millan
6e1e0d8954 2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/eltorito.c (init_boot_catalog): Handle return code
        of write calls (converting them to fwrite() if they aren't already).
        (get_torito_desc): Likewise.
        * util/mkisofs/rock.c (generate_rock_ridge_attributes): Likewise.
2009-11-12 21:32:47 +00:00
Robert Millan
7f2b34d84e 2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-install.in: Move from here ...
        * util/grub-install.in: ... to here.  Update all users.
2009-11-12 12:23:11 +00:00
Colin Watson
c0ef331155 2009-11-11 Colin Watson <cjwatson@ubuntu.com>
* util/powerpc/ieee1275/grub-mkrescue.in: Fix --version output.
2009-11-11 23:21:13 +00:00
Felix Zielcke
76b383bbbe 2009-11-11 Felix Zielcke <fzielcke@z-51.de>
* util/grub-probe.c (probe): Abort with an error if file can't be
	opened via GRUB facilities.
2009-11-11 22:20:03 +01:00
Robert Millan
e1f240ff44 2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
Support for El Torito without floppy emulation.

        * util/mkisofs/eltorito.c: Include `<errno.h>'.
        (init_boot_catalog): Improve error handling.
        (get_torito_desc): Don't use floppy emulation unless requested by
        user. Patch boot information table when requested via
        `-boot-info-table'.
        * util/mkisofs/iso9660.h (struct eltorito_boot_info): New struct.
        * util/mkisofs/mkisofs.c (use_eltorito_emul_floppy)
        (use_boot_info_table): New variables.
        (OPTION_BOOT_INFO_TABLE, OPTION_NO_EMUL_BOOT)
        (OPTION_ELTORITO_EMUL_FLOPPY): New macros.
        (ld_options): Handle `-boot-info-table', `-no-emul-boot' and
        `--eltorito-emul-floppy'.
        (main): Handle `OPTION_BOOT_INFO_TABLE', `OPTION_NO_EMUL_BOOT'
        and `OPTION_ELTORITO_EMUL_FLOPPY'.
        * util/mkisofs/mkisofs.h (use_eltorito_emul_floppy)
        (use_boot_info_table, get_731): New prototypes.
        * util/mkisofs/write.c (get_731): New function.
2009-11-11 20:52:04 +00:00
Felix Zielcke
cdfc5ad1b3 2009-11-11 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-setup.c (setup): Make core.img path relative
	to its root.
2009-11-11 21:10:58 +01:00
Felix Zielcke
af7d4de5c2 2009-11-11 Felix Zielcke <fzielcke@z-51.de>
Fix the generation of the man page.

	* util/pc/i386/grub-install.in: Source
	`${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
2009-11-11 17:00:27 +01:00
Robert Millan
2c55dbc0d5 2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
Large file support for grub-mkisofs.

        * conf/common.rmk (grub_mkisofs_CFLAGS): Add `-D_FILE_OFFSET_BITS=64'.
        * util/mkisofs/mkisofs.c (next_extent, last_extent)
        (session_start): Upgrade type to `uint64_t'.  Update all users.
        * util/mkisofs/mkisofs.h: Include `<stdint.h>'.
        (struct directory_entry): Upgrade type of `starting_block' and
        `size' to `uint64_t'.  Update all users.
        (struct deferred): Remove unused structure.
        (xfwrite): Upgrade type of `count' and `size' to `uint64_t'.
        Update all users.
        * util/mkisofs/tree.c (stat_filter, lstat_filter): Return -1 when
        file is larger than `UINT32_MAX'.
        * util/mkisofs/write.c (xfwrite): Upgrade type of `count' and
        `size' to `uint64_t'.  Update all users.  Fix handling of fwrite()
        return value.
        (struct deferred_write): Upgrade type of `extent' and `size' to
        `uint64_t'.  Update all users.
        (last_extent_written): Upgrade type to `uint64_t'.  Update all
        users.
        (write_one_file): Upgrade type of `count' and `size' to `uint64_t'.
        Update all users.  Upgrade type of `remain' to `int64_t' and
        `use' to `size_t'.  Use error() to handle fread() errors.
        (write_files): Rely on write_one_file() rather than calling
        xfwrite() directly.
2009-11-11 00:23:29 +00:00
Vladimir 'phcoder' Serbinenko
99145bdc4b Merged with mainline 2009-11-09 21:58:49 +01:00
Felix Zielcke
6a9cead5cf 2009-11-09 Felix Zielcke <fzielcke@z-51.de>
* util/mkisofs/mkisofs.c (ld_options): Fix a spelling mistake.
2009-11-09 21:36:09 +01:00
Vladimir 'phcoder' Serbinenko
da547ac323 merged with mainstream 2009-11-09 21:16:25 +01:00
Robert Millan
4825d7908c 2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/fnmatch.c: Remove.
        * util/mkisofs/getopt1.c: Likewise.
        * util/mkisofs/getopt.c: Likewise.
        * conf/common.rmk (grub_mkisofs_SOURCES): Replace
        `util/mkisofs/fnmatch.c', `util/mkisofs/getopt1.c' and
        `util/mkisofs/getopt.c' with `gnulib/fnmatch.c',
        `gnulib/getopt1.c' and `gnulib/getopt.c'.
        (grub_mkisofs_CFLAGS): Add `-I$(srcdir)/gnulib'.

        * configure.ac: Detect `mingw32msvc' host_os.
        Check for lstat(), getuid() and getgid().

        * util/mkisofs/joliet.c: Include `<stdint.h>'.  Replace all
        instances of `u_char' with `uint8_t'.

        * util/mkisofs/mkisofs.h: Include `<sys/stat.h>'.
        [!HAVE_GETUID] (getuid): New function (stub).
        [!HAVE_GETGID] (getgid): Likewise.
        [!HAVE_LSTAT] (lstat): Likewise.
        [!S_IROTH] (S_IROTH): New macro (dummy).
        [!S_IRGRP] (S_IRGRP): Likewise.
2009-11-09 19:58:24 +00:00
Vladimir 'phcoder' Serbinenko
1d3c6f1de7 Manually reimported XNU branch 2009-11-09 18:43:53 +01:00
Robert Millan
7c4e16ff88 Integrate grub-mkisofs into the build system. 2009-11-08 23:01:34 +00:00
Robert Millan
cd2dbe8d2e Remove support for non-Autoconf build mode. 2009-11-08 22:55:12 +00:00
Robert Millan
dc83dd6422 Fix build warnings (without -Wall). 2009-11-08 22:54:27 +00:00
Robert Millan
d70d390732 Document date override flags and add sanity checks. Based on patch
sent by Andrew Cady to Debian BTS:

  http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=31;filename=date_override_doc.diff;att=1;bug=498151
2009-11-08 22:53:42 +00:00
Robert Millan
fa8b1c51a3 Implement support for date stamp overrides:
--creation-date
  --modification-date
  --expiration-date
  --effective-date
2009-11-08 22:53:15 +00:00
Robert Millan
11e9a11511 Import http://www.tux.org/pub/people/eric-youngdale/mkisofs/mkisofs-1.12b5.tar.gz 2009-11-08 22:52:08 +00:00
Robert Millan
63eb2d63b1 Import http://www.tux.org/pub/people/eric-youngdale/mkisofs/mkisofs-1.12b4.tar.gz 2009-11-08 22:51:41 +00:00
Robert Millan
4b4c4f6400 Import http://www.tux.org/pub/people/eric-youngdale/mkisofs/mkisofs-1.11.3.tar.gz 2009-11-08 22:51:08 +00:00
Robert Millan
79cb3a568b Fix miss-identification as grub-mkimage' (and use $0' when possible). 2009-11-08 21:52:59 +00:00
Robert Millan
ef4b915ad9 Implement grub-mkrescue for coreboot (needs external grub-mkisofs) 2009-11-08 20:56:32 +00:00
Felix Zielcke
50ceeb7cb5 2009-11-04 Felix Zielcke <fzielcke@z-51.de>
* util//grub-mkconfig_lib.in (bindir): New variable.
	(grub_mkrelpath): Likewise.
	Properly set path variable.  Use ${grub_mkrelpath} instead of
	calling it directly.

2009-11-02  Felix Zielcke  <fzielcke@z-51.de>

	* util/probe.c (probe): Make the file path relative to its root.
	Change a info message to use the GRUB path.  Enable again the
	check if we can read the file with GRUB facilities.

2009-11-01  Felix Zielcke  <fzielcke@z-51.de>

	* util/grub-mkrelpath.c: New file.
	* conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
	(grub_mkrelpath_SOURCES): New variable.
	* include/grub/util/misc.h: New function prototype.
	* util/misc.c (make_system_path_relative_to_its_root): New function.

	* util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
	Use grub-mkrelpath.
2009-11-08 01:49:15 +01:00
fzielcke
246cd78f70 2009-11-03 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/grub.d/30_os-prober.in: Restore default behavior for unsupported
	OSes.
2009-11-03 14:25:34 +00:00
Vladimir 'phcoder' Serbinenko
6174923799 merged with upstream 2009-11-02 23:29:51 +01:00
robertmh
4f9dfb3701 2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/grub.d/30_os-prober.in: Add GNU/Hurd support
2009-11-02 21:01:14 +00:00
robertmh
b82bd5e192 2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/grub.d/10_hurd.in: Drop /dev/ prefix from root device path before
        giving it to GNU Mach.
2009-11-02 19:32:12 +00:00
robertmh
ff1a9bca3a 2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Subtract 1 from
        GNU partition number to get internal GRUB partition number.
2009-11-02 19:14:00 +00:00
robertmh
61697d9c70 2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
* util/grub.d/10_hurd.in: Call prepare_grub_to_access_device  
        ${GRUB_DEVICE_BOOT} before loading /boot kernel.
2009-11-02 13:55:25 +00:00
robertmh
805111a4fd 2009-10-30 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-install.in: Remove hint that device.map should be
        checked (grub-install doesn't currently rely on it).
2009-10-30 22:37:38 +00:00
cjwatson
9031b03aac 2009-10-26 Colin Watson <cjwatson@ubuntu.com>
* util/grub-editenv.c (main): If only a command is given, use
	DEFAULT_DIRECTORY "/" GRUB_ENVBLK_DEFCFG as a default file name.
	(usage): FILENAME is now optional and has a default.
2009-10-26 16:33:13 +00:00
cjwatson
e4f6809bbc 2009-10-26 Colin Watson <cjwatson@ubuntu.com>
Improve grub-mkconfig performance when there are several menu
	entries on a single filesystem.

	* util/grub.d/10_linux.in (linux_entry): Cache the output of
	prepare_grub_to_access_device.
	* util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
	* util/grub.d/30_os-prober.in: Likewise.
2009-10-26 16:28:04 +00:00
robertmh
ba36be4119 2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/10_freebsd.in: Remove.
        * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
        * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.
2009-10-26 00:41:58 +00:00
robertmh
67937d4dca 2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/10_freebsd.in: Remove.
        * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
        * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.
2009-10-26 00:41:54 +00:00
robertmh
ee3756ccb3 2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/10_freebsd.in: Remove.
2009-10-26 00:38:26 +00:00
robertmh
4dea1c6f06 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-setup.c (setup): Add missing parameter to
        grub_util_error() call.
2009-10-25 17:49:27 +00:00
robertmh
042484d78e 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/fs.h [GRUB_UTIL] (struct grub_fs): Add
        `reserved_first_sector' member.
        * fs/ext2.c [GRUB_UTIL] (grub_ext2_fs): Initialize
        `reserved_first_sector' to 1.
        * fs/fat.c [GRUB_UTIL] (grub_fat_fs): Likewise.
        * fs/ntfs.c [GRUB_UTIL] (grub_ntfs_fs): Likewise.
        * fs/hfsplus.c [GRUB_UTIL] (grub_hfsplus_fs): Likewise.
        * util/i386/pc/grub-setup.c (setup): Add safety check that probes for
        filesystems which begin at first sector.
        (options): New option --skip-fs-probe.   
        (main): Handle --skip-fs-probe and pass it to setup().
2009-10-25 15:23:48 +00:00
robertmh
f669389090 2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
Patch from Samuel Thibault <samuel.thibault@ens-lyon.org>
        * docs/grub.cfg: Compensate for recent change in multiboot
        loader (since 2009-08-14 it won't pass filename to payload).
        * util/grub.d/10_hurd.in: Likewise.
2009-10-24 23:03:02 +00:00
phcoder
a9b7a540bd font preload 2009-10-24 12:44:42 +02:00
phcoder
5855d253f4 elf format 2009-10-23 18:20:04 +02:00
phcoder
0f8d98dad2 Merge branch 'pci' into mips 2009-10-22 14:32:09 +02:00
phcoder
b78f2e6e10 Merge branch 'mainline' into mips 2009-10-18 16:12:53 +02:00
phcoder
a9a6948ac3 grub as flash for qemu-gdium 2009-10-18 15:04:14 +02:00
robertmh
035f712204 2009-10-15 Robert Millan <rmh.grub@aybabtu.com>
Make entry text a bit more readable.

        * util/grub.d/10_linux.in: Add `with' before `Linux'.
2009-10-15 20:34:27 +00:00
robertmh
e9d66f6d6a 2009-10-14 Robert Millan <rmh.grub@aybabtu.com>
* conf/common.rmk (grub-dumpbios): Remove rule.
        (sbin_SCRIPTS, CLEANFILES): Remove `grub-dumpbios'.
        * util/grub-dumpbios.in: Remove file.
2009-10-14 18:23:40 +00:00
robertmh
9155bc1796 2009-10-14 Robert Millan <rmh.grub@aybabtu.com>
Refer to kernel of FreeBSD "kFreeBSD" to avoid confusion between
        the Operating System (FreeBSD) and its kernel (kernel of FreeBSD).

        * loader/i386/bsd.c (grub_freebsd_boot): Read kernel environment
        from "kFreeBSD" namespace (rather than "FreeBSD").  Update all
        users.

        (GRUB_MOD_INIT (bsd)): Rename "freebsd" command to "kfreebsd",
        "openbsd" to "kopenbsd", "netbsd" to "knetbsd", "freebsd_loadenv"
        to "kfreebsd_loadenv", "freebsd_module" to "kfreebsd_module",
        and "freebsd_module_elf" to "kfreebsd_module_elf".  Update all
        users.
2009-10-14 16:49:22 +00:00
phcoder
459fed4b98 pciaccess 2009-10-14 18:17:18 +02:00
phcoder
325c8258e7 lspci works in grub-emu 2009-10-14 10:36:37 +02:00
phcoder
3affd0ece8 libpci initial stuff 2009-10-14 10:11:59 +02:00
phcoder
65e64ea4b1 mkimage fix 2009-10-10 21:23:51 +02:00
cjwatson
d244281ce6 2009-10-06 Colin Watson <cjwatson@ubuntu.com>
* util/i386/pc/grub-install.in: Source
	${libdir}/grub/grub-mkconfig_lib before option processing, in order
	that the --grub-probe option will work.
	* util/sparc64/ieee1275/grub-install.in: Likewise.
2009-10-05 23:33:36 +00:00
cjwatson
50dcabcf94 2009-10-01 Colin Watson <cjwatson@ubuntu.com>
* util/grub-editenv.c (create_envblk_file): Write new block with a
	.new suffix and then rename it into place, to ensure atomic
	creation.
2009-10-01 18:22:43 +00:00
robertmh
31299a9556 2009-09-26 Robert Millan <rmh.grub@aybabtu.com>
* conf/common.rmk (pkglib_MODULES): Remove `lua.mod'.
	(lua_mod_SOURCES, lua_mod_CFLAGS, lua_mod_LDFLAGS): Remove.

	* util/osdetect.lua: Remove.
	* script/lua/lauxlib.c: Likewise.
	* script/lua/ldebug.c: Likewise.
	* script/lua/grub_main.c: Likewise.
	* script/lua/lauxlib.h: Likewise.
	* script/lua/ldebug.h: Likewise.
	* script/lua/ltablib.c: Likewise.
	* script/lua/liolib.c: Likewise.
	* script/lua/lstrlib.c: Likewise.
	* script/lua/lualib.h: Likewise.
	* script/lua/ldo.c: Likewise.
	* script/lua/ldump.c: Likewise.
	* script/lua/ldo.h: Likewise.
	* script/lua/loslib.c: Likewise.
	* script/lua/lundump.c: Likewise.
	* script/lua/grub_lib.c: Likewise.
	* script/lua/ldblib.c: Likewise.
	* script/lua/lundump.h: Likewise.
	* script/lua/lmem.c: Likewise.
	* script/lua/grub_lib.h: Likewise.
	* script/lua/lmathlib.c: Likewise.
	* script/lua/lstate.c: Likewise.
	* script/lua/ltm.c: Likewise.
	* script/lua/lvm.c: Likewise.
	* script/lua/lmem.h: Likewise.
	* script/lua/lstate.h: Likewise.
	* script/lua/ltm.h: Likewise.
	* script/lua/ltable.c: Likewise.
	* script/lua/lvm.h: Likewise.
	* script/lua/llex.c: Likewise.
	* script/lua/lgc.c: Likewise.
	* script/lua/grub_lua.h: Likewise.
	* script/lua/loadlib.c: Likewise.
	* script/lua/lfunc.c: Likewise.
	* script/lua/lopcodes.c: Likewise.
	* script/lua/lparser.c: Likewise.
	* script/lua/ltable.h: Likewise.
	* script/lua/llex.h: Likewise.
	* script/lua/lgc.h: Likewise.
	* script/lua/lfunc.h: Likewise.
	* script/lua/lbaselib.c: Likewise.
	* script/lua/lopcodes.h: Likewise.
	* script/lua/lparser.h: Likewise.
	* script/lua/lzio.c: Likewise.
	* script/lua/linit.c: Likewise.
	* script/lua/lobject.c: Likewise.
	* script/lua/llimits.h: Likewise.
	* script/lua/lstring.c: Likewise.
	* script/lua/lzio.h: Likewise.
	* script/lua/lapi.c: Likewise.
	* script/lua/lcode.c: Likewise.
	* script/lua/lua.h: Likewise.
	* script/lua/lobject.h: Likewise.
	* script/lua/lstring.h: Likewise.
	* script/lua/lapi.h: Likewise.
	* script/lua/lcode.h: Likewise.
	* script/lua/luaconf.h: Likewise.
2009-09-26 11:48:55 +00:00
robertmh
6b9b6276d4 2009-09-24 Pavel Roskin <proski@gnu.org>
* include/grub/kernel.h (struct grub_module_header): Remove
        `grub_module_header_types'.  Make `type' unsigned.  Make `size'
        32-bit on all platforms.
        * util/elf/grub-mkimage.c (load_modules): Treat `type' as an
        8-bit field.  Use grub_host_to_target32() for `size'.
        * util/i386/efi/grub-mkimage.c (make_mods_section): Likewise.
        * util/i386/pc/grub-mkimage.c (generate_image): Likewise.
        * util/sparc64/ieee1275/grub-mkimage.c (generate_image): Likewise.
2009-09-24 13:40:40 +00:00
robertmh
c6dcedf6b2 2009-09-24 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-mkimage.c (generate_image): Enclose BIOS-specific
        size check within GRUB_MACHINE_PCBIOS section.
2009-09-24 13:22:19 +00:00
fzielcke
d96875df6e 2009-09-23 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Cope with `*.dpkg-*'
2009-09-23 09:46:08 +00:00
fzielcke
9b3f836571 2009-09-23 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Add support
	for `*.dpkg-new'.
2009-09-23 09:26:34 +00:00
phcoder
afba34eb21 use search_fs_uuid 2009-09-22 09:38:12 +02:00
fzielcke
5a78865b39 2009-09-21 Felix Zielcke <fzielcke@z-51.de>
* util/hostdisk.c: Fix a comment.
2009-09-21 14:03:11 +00:00
cjwatson
a83d079b1e 2009-09-19 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/30_os-prober.in: Don't throw away stderr from
	  os-prober. Under normal operation, it does not print anything to
	  stderr; if it does, we need to debug it, and throwing away stderr
	  makes that excessively difficult.
2009-09-19 14:15:00 +00:00
cjwatson
d52109a7a2 2009-09-14 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/30_os-prober.in: Cope with Windows 7 in os-prober
	output.
2009-09-14 11:32:00 +00:00
fzielcke
8aa1541a41 2009-09-10 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in: Make the created config mode 400 and
	print a warning if it fails.
2009-09-10 19:04:43 +00:00
robertmh
48d9bb0a93 2009-09-10 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/40_custom.in: Ask user to type custom entries below
        comment, rather than below 'exec tail' line.
2009-09-10 12:53:25 +00:00
cjwatson
3b0521bed2 2009-09-10 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/40_custom.in: Make sure that the explanatory text is
	visible in grub.cfg.
2009-09-10 12:44:24 +00:00
cjwatson
50051d5542 2009-09-10 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/40_custom.in: Make it a little clearer how to use this
	file.
2009-09-10 12:10:33 +00:00
robertmh
7f26d4665b 2009-09-05 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-probe.c (probe): Comment out buggy codepath, which
        was unexpectedly enabled by Colin Watson's 2009-09-02 fix.  This
        should be re-enabled after 1.97.
2009-09-05 20:36:49 +00:00
cjwatson
c0bc232b72 2009-09-02 Colin Watson <cjwatson@ubuntu.com>
* util/grub-probe.c (probe): Test st.st_mode using S_ISREG macro
	rather than comparing against S_IFREG, which will almost never work.
2009-09-02 01:42:06 +00:00
robertmh
c90edae43a 2009-08-29 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/10_freebsd.in: Detect `ufs1' and `ufs2' and map them
        to `ufs' in the vfs.root.mountfrom kernel parameter.
2009-08-29 00:34:33 +00:00
fzielcke
3b76e68ba7 2009-08-25 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/00_header.in: Move check for the video backend of
	gfxterm from here ...
	* util/grub-mkconfig.in: ... to here.  Enable gfxterm if there's
	a suitable video backend.
2009-08-25 19:42:56 +00:00
phcoder
aea664ea28 2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
Fix breakage in grub-setup.

	* util/i386/pc/grub-setup.c (setup): Use "part_msdos" instead of
	"msdos_partition_map".
2009-08-25 08:28:13 +00:00
phcoder
2d21e3e8e0 2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
Rename *_partition_map to part_*

	* partmap/acorn.c (grub_acorn_partition_map): Set name to 'part_acorn'.
	* partmap/amiga.c (grub_amiga_partition_map): Set name to 'part_amiga'.
	* partmap/apple.c (grub_apple_partition_map): Set name to 'part_apple'.
	* partmap/gpt.c (grub_gpt_partition_map): Set name to 'part_gpt'.
	All users updated.
	* partmap/msdos.c (grub_msdos_partition_map): Set name to 'part_msdos'.
	All users updated.
	* partmap/sun.c (grub_sun_partition_map): Set name to 'part_sun'.
	* util/grub-probe.c (probe_partmap): Don't transform partition name
	to get module name.
2009-08-24 13:34:03 +00:00
phcoder
0b8e386c09 Revert 2 previous commits.
2009-08-23  Vladimir Serbinenko  <phcoder@gmail.com>

	Fix grub-install.

	* util/grub-probe.c (probe_partmap): Prefix partmap with 'part_'.
2009-08-23 23:40:29 +00:00
phcoder
af0f0beafa 2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
Fix grub-install.

	* util/i386/efi/grub-install.in: Add 'part_' to partmap_module.
	* util/sparc64/ieee1275/grub-install.in: Likewise.
2009-08-23 23:24:33 +00:00
phcoder
cb4735645d 2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
Fix grub-install.

	* util/i386/pc/grub-install.in: Add 'part_' to partmap_module.
2009-08-23 21:04:44 +00:00
phcoder
e9a925da69 2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
* commands/search.c (search_fs): Try searching without autoload first.
	* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
	filesystem module explicitly for faster booting.
2009-08-23 15:27:07 +00:00
fzielcke
5174302b55 2009-08-23 Colin Watson <cjwatson@ubuntu.com>
* util/grub-mkconfig.in: Export GRUB_DISABLE_OS_PROBER.
2009-08-23 15:09:05 +00:00
robertmh
c8c80635ae 2009-08-23 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/30_os-prober.in: Disable os-prober if
        `GRUB_DISABLE_OS_PROBER' was set to true.
2009-08-23 12:59:22 +00:00
robertmh
71acf5e54b 2009-08-23 Robert Millan <rmh.grub@aybabtu.com>
* partmap/pc.c: Rename to ...
        * partmap/msdos.c: ... this.  Update all users.
        (grub_pc_partition_map): Rename to ...
        (grub_msdos_partition_map): ... this.  Update all users.

        * parttool/pcpart.c: Rename to ...
        * parttool/msdospart.c: ... this.  Update all users.

        * include/grub/pc_partition.h: Rename to ...
        * include/grub/msdos_partition.h: ... this.  Update all users.
        (grub_pc_partition_bsd_entry): Rename to ...
        (grub_msdos_partition_bsd_entry): ... this.  Update all users.
        (grub_pc_partition_disk_label): Rename to ...
        (grub_msdos_partition_disk_label): ... this.  Update all users.
        (grub_pc_partition_entry): Rename to ...
        (grub_msdos_partition_entry): ... this.  Update all users.
        (grub_pc_partition_mbr): Rename to ...
        (grub_msdos_partition_mbr): ... this.  Update all users.
        (grub_pc_partition): Rename to ...
        (grub_msdos_partition): ... this.  Update all users.
        (grub_pc_partition_is_empty): Rename to ...
        (grub_msdos_partition_is_empty): ... this.  Update all users.
        (grub_pc_partition_is_extended): Rename to ...
        (grub_msdos_partition_is_extended): ... this.  Update all users.
        (grub_pc_partition_is_bsd): Rename to ...
        (grub_msdos_partition_is_bsd): ... this.  Update all users.

        * conf/common.rmk (amiga_mod_SOURCES, amiga_mod_CFLAGS)
        (amiga_mod_LDFLAGS, apple_mod_SOURCES, apple_mod_CFLAGS)
        (apple_mod_LDFLAGS, msdos_mod_SOURCES, msdos_mod_CFLAGS)
        (msdos_mod_LDFLAGS, sun_mod_SOURCES, sun_mod_CFLAGS)
        (sun_mod_LDFLAGS, acorn_mod_SOURCES, acorn_mod_CFLAGS)
        (acorn_mod_LDFLAGS, gpt_mod_SOURCES, gpt_mod_CFLAGS)
        (gpt_mod_LDFLAGS): Rename to ...
        (part_amiga_mod_SOURCES, part_amiga_mod_CFLAGS, part_amiga_mod_LDFLAGS)
        (part_apple_mod_SOURCES, part_apple_mod_CFLAGS, part_apple_mod_LDFLAGS)
        (part_msdos_mod_SOURCES, part_msdos_mod_CFLAGS, part_msdos_mod_LDFLAGS)
        (part_sun_mod_SOURCES, part_sun_mod_CFLAGS, part_sun_mod_LDFLAGS)
        (part_acorn_mod_SOURCES, part_acorn_mod_CFLAGS, part_acorn_mod_LDFLAGS)
        (part_gpt_mod_SOURCES, part_gpt_mod_CFLAGS)
        (part_gpt_mod_LDFLAGS): ... this.
        (pkglib_MODULES): Prefix partition modules with `part_'.  Rename
        `pcpart.mod' to `msdospart.mod'.
        (pcpart_mod_SOURCES, pcpart_mod_CFLAGS, pcpart_mod_LDFLAGS): Rename
        to ...
        (msdospart_mod_SOURCES, msdospart_mod_CFLAGS)
        (msdospart_mod_LDFLAGS): ... this.
2009-08-23 12:00:57 +00:00
fzielcke
e53cea1182 2009-08-18 Felix Zielcke <fzielcke@z-51.de>
* util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Use
	grub-mkelfimage.
2009-08-18 19:50:31 +00:00
proski
9aced5446d 2009-08-18 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in: Don't use gfxterm by default if not
	explicitly specified by the user.
2009-08-18 17:57:07 +00:00
robertmh
9a10df160e 2009-08-13 Colin Watson <cjwatson@ubuntu.com>
* util/grub-mkconfig.in: Export GRUB_HIDDEN_TIMEOUT.
        * util/grub.d/00_header.in: Enter interruptible sleep if
        GRUB_HIDDEN_TIMEOUT is set.
2009-08-13 20:08:23 +00:00
robertmh
f5d35e7a4b 2009-08-08 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-dumpdevtree: Moved from here ...
        * util/i386/efi/grub-dumpdevtree: ... to here.
        (hexify): New function.  Converts a string to its hex version.
        Generate hex versions of "efi" and "device-properties" by calling
        hexify() on the ASCII strings rather than by hardcoding numbers.
2009-08-08 19:24:58 +00:00
fzielcke
1ebbe064d1 2009-08-08 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/00_header.in: Fix a comment.
	* util/grub.d/10_linux.in: Likewise.
	* util/grub.d/10_windows.in: Likewise.
	* util/grub.d/10_hurd.in: Likewise.
2009-08-08 17:59:19 +00:00
fzielcke
a78c8d240b 2009-08-08 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in: Allow the user to specify the used font
	with GRUB_FONT.
2009-08-08 06:41:54 +00:00
proski
2f5cb8278a 2009-08-08 Pavel Roskin <proski@gnu.org>
* util/grub-mkconfig_lib.in (version_test_numeric): Don't use
	the "g" modifier in sed when the intention is to strip something
	once.  This fixes comparison of kernels with multiple dashes.
2009-08-08 05:37:49 +00:00
proski
29a6b9e8fa 2009-08-08 Pavel Roskin <proski@gnu.org>
* util/grub-mkconfig.in: Define datarootdir, datadir may depend
	on it.  Add missing space before closing bracket.  Fix
	misleading formatting.
2009-08-08 04:28:12 +00:00
fzielcke
998b5aa9ae 2009-08-07 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in: Remove a wrong `fi'.
2009-08-07 14:06:24 +00:00
fzielcke
b969c52f6b 2009-08-07 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig_lib.in (font_path): Move the functionality
	of it to ...
	* util/grub-mkconfig.in: ... here.  Prefer unicode.pf2 and
	unifont.pf2 over ascii.pf2.  Export LANG=C in case ascii.pf2 gets used.
2009-08-07 12:18:03 +00:00
robertmh
9d5bdd2cf6 Split in two commits. This one's the second.
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>

        * util/grub.d/10_linux.in (test_numeric): Moved from here ...
        * util/grub-mkconfig_lib.in (version_test_numeric): ... to here.
        Update all users.

        * util/grub.d/10_linux.in (test_gt): Strip any basename prefix,
        not just "vmlinu[zx]".
        Moved from here ...
        * util/grub-mkconfig_lib.in (version_test_gt): ... to here.  Update
        all users.

        * util/grub.d/10_linux.in (find_latest): Moved from here ...
        * util/grub-mkconfig_lib.in (version_find_latest): ... to here.  Update
        all users.
2009-08-07 12:05:06 +00:00
robertmh
7a4894cc99 Split in two commits. This one's the first.
2009-08-07  Robert Millan  <rmh.grub@aybabtu.com>

        * util/grub.d/10_linux.in (test_numeric): Moved from here ...
        * util/grub-mkconfig_lib.in (version_test_numeric): ... to here.
        Update all users.

        * util/grub.d/10_linux.in (test_gt): Strip any basename prefix,
        not just "vmlinu[zx]".
        Moved from here ...
        * util/grub-mkconfig_lib.in (version_test_gt): ... to here.  Update
        all users.

        * util/grub.d/10_linux.in (find_latest): Moved from here ...
        * util/grub-mkconfig_lib.in (version_find_latest): ... to here.  Update
        all users.
2009-08-07 12:02:54 +00:00
robertmh
4e2171f866 2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
* util/grub.d/10_freebsd.in: Use an absolute device path for
        `vfs.root.mountfrom'.  Set `vfs.root.mountfrom.options=rw'.
2009-08-07 11:55:36 +00:00
fzielcke
6dcfcb3291 2009-08-06 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix
	handling of multiple abstraction modules.
2009-08-06 07:05:48 +00:00
phcoder
e768b77068 2009-08-01 14:44:15 +00:00
bean
f45d6cfc48 2009-07-31 Bean <bean123ch@gmail.com>
* disk/lvm.c (grub_lvm_scan_device): Ignore extra copy of metadata.
	Don't change pv->disk if it's already set.

	* disk/raid.c (grub_raid_scan_device): Merge this function into ...
	(grub_raid_register): ... here.
	(grub_raid_rescan): Removed.

	* include/grub/raid.h (grub_raid_rescan): Removed.

	* util/grub-fstest.c: Remove include file <grub/raid.h>.
	(fstest): Replace grub_raid_rescan with module fini function followed
	by init function.

	* util/grub-probe.c: Add include file <grub/raid.h>.
	(probe_raid_level): New function.
	(probe): Detect abstraction by walking the disk device, support two
	level of abstraction (LVM on RAID) when detecting partition map.
2009-07-31 14:25:19 +00:00
phcoder
a275d9e7c0 2009-07-30 Vladimir Serbinenko <phcoder@gmail.com>
* util/i386/pc/grub-setup.c (setup): Check that no partition is in
	embeding zone, not only the first one.
2009-07-29 22:50:38 +00:00
fzielcke
67bb323a1c 2009-07-29 Felix Zielcke <fzielcke@z-51.de>
* util/deviceiter.c (get_acceleraid_disk_name): New static
	function.
	(grub_util_iterate_devices): Handle Accelraid devices.
	* util/hostdisk.c (convert_system_partition_to_system_disk): Likewise.
2009-07-29 14:11:50 +00:00
fzielcke
2ddd36d7a9 2009-07-28 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-install: Fix parsing of --disk-module
	option.
2009-07-28 18:32:28 +00:00
fzielcke
c521b62b6c 2009-07-28 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-setup.c (setup): Fix 2 incorrect checks
	when embedding.
2009-07-28 15:58:40 +00:00
fzielcke
880e0a0c70 2009-07-26 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in (package_version): New variable.
	Use it do display the version.
2009-07-26 11:03:57 +00:00
phcoder
fcaa8b2177 2009-07-24 Vladimir Serbinenko <phcoder@gmail.com>
* util/i386/pc/grub-setup.c (setup): Fix bug when
	installing on partionless disk.
2009-07-24 20:41:31 +00:00
fzielcke
6a6cbcaf5e 2009-07-21 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in: Remove unused CHAINROOT.  Don't
	add drivemap for Vista.  It breaks Windows 7.
2009-07-21 13:37:43 +00:00
proski
4f253044ec 2009-07-19 Yves BLUSSEAU <yves.grub-devel@zetam.org>
* util/getroot.c (find_root_device): Add support for MacOSX.
	* util/hostdisk.c: Likewise.
2009-07-20 20:03:18 +00:00
proski
5680109e00 2009-07-19 Pavel Roskin <proski@gnu.org>
* Makefile.in: Remove LIBLZO and enable_lzo.
	* conf/i386-pc.rmk: Remove lzo support.
	* configure.ac: Remove checks for lzo, don't define ENABLE_LZMA.
	* include/grub/i386/pc/kernel.h: Define ENABLE_LZMA.  Remove lzo
	support.
	* kern/i386/pc/lzo1x.S: Remove.
	* kern/i386/pc/startup.S: Remove lzo support.
	* util/i386/pc/grub-mkimage.c: Likewise.
2009-07-19 20:23:33 +00:00
proski
eab58da22c 2009-07-16 Pavel Roskin <proski@gnu.org>
* kern/mm.c (grub_zalloc): New function.
	(grub_debug_zalloc): Likewise.
	* include/grub/mm.h: Declare grub_zalloc() and
	grub_debug_zalloc().
	* util/misc.c (grub_zalloc): New function.
	* bus/usb/uhci.c (grub_uhci_pci_iter): Use grub_zalloc()
	instead of grub_malloc(), remove unneeded initializations.
	* bus/usb/usbhub.c (grub_usb_hub_add_dev): Likewise.
	* commands/extcmd.c (grub_extcmd_dispatcher): Likewise.
	* commands/parttool.c (grub_cmd_parttool): Likewise.
	* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
	* disk/raid5_recover.c (grub_raid5_recover): Likewise.
	* disk/raid6_recover.c (grub_raid6_recover): Likewise.
	* disk/usbms.c (grub_usbms_finddevs): Likewise.
	* efiemu/mm.c (grub_efiemu_request_memalign): Likewise.
	* efiemu/pnvram.c (grub_efiemu_pnvram): Likewise.
	(grub_cmd_efiemu_pnvram): Likewise.
	* fs/i386/pc/pxe.c (grub_pxefs_open): Likewise.
	* fs/iso9660.c (grub_iso9660_mount): Likewise.
	(grub_iso9660_iterate_dir): Likewise.
	* fs/jfs.c (grub_jfs_opendir): Likewise.
	* fs/ntfs.c (list_file): Likewise.
	(grub_ntfs_mount): Likewise.
	* kern/disk.c (grub_disk_open): Likewise.
	* kern/dl.c (grub_dl_load_core): Likewise.
	* kern/elf.c (grub_elf_file): Likewise.
	* kern/env.c (grub_env_context_open): Likewise.
	(grub_env_set): Likewise.
	(grub_env_set_data_slot): Likewise.
	* kern/file.c (grub_file_open): Likewise.
	* kern/fs.c (grub_fs_blocklist_open): Likewise.
	* loader/i386/multiboot.c (grub_module): Likewise.
	* loader/xnu.c (grub_xnu_create_key): Likewise.
	(grub_xnu_create_value): Likewise.
	* normal/main.c (grub_normal_add_menu_entry): Likewise.
	(read_config_file): Likewise.
	* normal/menu_entry.c (make_screen): Likewise.
	* partmap/sun.c (sun_partition_map_iterate): Likewise.
	* script/sh/lexer.c (grub_script_lexer_init): Likewise.
	* script/sh/script.c (grub_script_parse): Likewise.
	* video/bitmap.c (grub_video_bitmap_create): Likewise.
	* video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
	* video/readers/png.c (grub_png_output_byte): Likewise.
	(grub_video_reader_png): Likewise.
2009-07-16 22:14:09 +00:00
phcoder
ee293aee1b 2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
Fix hang and segmentation fault in grub-emu-usb

	* disk/scsi.c (grub_scsi_open): return err and not grub_errno
	* util/usb.c (grub_libusb_devices): likewise
	(grub_libusb_init): rename to ...
	(GRUB_MOD_INIT (libusb)):...this
	(grub_libusb_fini): rename to ..
	(GRUB_MOD_FINI (libusb)):...this
	* disk/usbms.c (grub_usbms_transfer): fix retry logic
	* include/grub/disk.h (grub_raid_init): removed, it's useless
	(grub_raid_fini): likewise
	(grub_lvm_init): likewise
	(grub_lvm_fini): likewise
	* util/grub-emu.c (main): don't call grub_libusb_init, it's done
	by grub_init_all
2009-07-16 15:36:43 +00:00
proski
25f9a05a03 2009-07-07 Pavel Roskin <proski@gnu.org>
* include/grub/util/console.h: New file.
	* util/console.c: Use it instead of grub/machine/console.h.
	* util/grub-emu.c: Likewise.
2009-07-07 20:03:03 +00:00
proski
46eeb6a264 2009-07-05 Pavel Roskin <proski@gnu.org>
* util/grub.d/10_freebsd.in: Fix spelling of `device.hints' on
	FreeBSD.
	* util/osdetect.lua: Likewise.
2009-07-05 22:51:05 +00:00
bean
b4a1dc7990 2009-07-05 Bean <bean123ch@gmail.com>
* conf/common.rmk (lua_mode_SOURCES): Add script/lua/lstrlib.c.

	* script/lua/grub_lib.c (grub_lua_run): Check input parameter.
	(grub_lua_getenv): Likewise.
	(grub_lua_setenv): Likewise.
	(save_errno): New function.
	(push_result): Likewise.
	(grub_lua_enum_device): Likewise.
	(grub_lua_enum_file): Likewise.
	(grub_lua_file_open): Likewise.
	(grub_lua_file_close): Likewise.
	(grub_lua_file_seek): Likewise.
	(grub_lua_file_read): Likewise.
	(grub_lua_file_getline): Likewise.
	(grub_lua_file_getsize): Likewise.
	(grub_lua_file_getpos): Likewise.
	(grub_lua_file_eof): Likewise.
	(grub_lua_file_exist): Likewise.
	(grub_lua_add_menu): Likewise.

	* script/lua/grub_lua.h (isupper): New inline function.
	(islower): Likewise.
	(ispunct): Likewise.
	(isxdigit): Likewise.
	(strcspn): Change to normal function.
	(strpbkr): New function declaration.
	(memchr): Likewise.

	* script/lua/grub_main.c (scan_str): New function.
	(strcspn): Likewise.
	(strpbrk): Likewise.
	(memchr): Likewise.

	* script/lua/linit.c (lualibs): Enable the string library.

	* util/osdetect.lua: New file.
2009-07-05 09:59:27 +00:00
proski
d23af54ef4 2009-07-01 Pavel Roskin <proski@gnu.org>
* util/hostdisk.c (open_device): Remove `const' from
	`sysctl_size', as sysctlbyname() can change it (in this case it
	doesn't actually happen).
2009-07-01 23:58:30 +00:00
proski
c6cd3ef022 2009-07-01 Pavel Roskin <proski@gnu.org>
* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Make `p'
	constant to avoid a warning on FreeBSD.
2009-07-01 23:07:17 +00:00
proski
0df634200a 2009-07-01 Pavel Roskin <proski@gnu.org>
* util/hostdisk.c (device_is_wholedisk): Compile only on systems
	where it's needed.
2009-07-01 22:56:51 +00:00
proski
1b96e95249 2009-07-01 Pavel Roskin <proski@gnu.org>
* util/misc.c: Move grub_reboot() and grub_halt() ...
	* util/grub-emu.c: ... here.  Make main_env static.
	* include/grub/util/misc.h: Remove main_env.
2009-07-01 15:59:05 +00:00
robertmh
211d06b54b 2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
* util/misc.c: Include `<setjmp.h>' and `<grub/machine/machine.h>'.
        (grub_reboot, grub_halt): New functions.

        * util/i386/pc/misc.c: Delete.  Update all users.
        * util/sparc64/ieee1275/misc.c: Likewise.
        * util/powerpc/ieee1275/misc.c: Likewise.
2009-07-01 13:01:33 +00:00
proski
18b6c557fd 2009-06-28 Pavel Roskin <proski@gnu.org>
* util/grub.d/10_linux.in: Match SUSE style initrd names.
2009-06-29 02:59:53 +00:00
robertmh
8231fb77c6 2009-06-27 Pavel Roskin <proski@gnu.org>
2009-06-27  Robert Millan  <rmh.grub@aybabtu.com>

        * include/grub/dl.h: Include grub/elf.h.
        (struct grub_dl): Add symtab field.
        * kern/dl.c [GRUB_MACHINE_QEMU]: Define
        GRUB_MODULES_MACHINE_READONLY.
        (grub_dl_resolve_symbols): Populate mod->symtab, making a copy
        of the header for read-only modules.
        (grub_dl_unload): Free mod->symtab for read-only modules.
        * kern/i386/dl.c: Use mod->symtab.
        * kern/powerpc/dl.c: Likewise.
        * kern/sparc64/dl.c: Likewise.
        * kern/x86_64/dl.c: Likewise.

        * conf/i386-qemu.rmk: New file.
        * kern/i386/qemu/startup.S: Likewise.
        * kern/i386/qemu/mmap.c: Likewise.
        * boot/i386/qemu/boot.S: Likewise.
        * include/grub/i386/qemu/time.h: Likewise.
        * include/grub/i386/qemu/serial.h: Likewise.
        * include/grub/i386/qemu/kernel.h: Likewise.
        * include/grub/i386/qemu/console.h: Likewise.
        * include/grub/i386/qemu/boot.h: Likewise.
        * include/grub/i386/qemu/init.h: Likewise.
        * include/grub/i386/qemu/machine.h: Likewise.
        * include/grub/i386/qemu/loader.h: Likewise.
        * include/grub/i386/qemu/memory.h: Likewise.

        * conf/i386-coreboot.rmk (GRUB_BOOT_MACHINE_LINK_ADDR)
        (GRUB_KERNEL_MACHINE_LINK_ADDR): New variables.
        [qemu] (pkglib_IMAGES): Add `boot.img'.
        [qemu] (boot_img_SOURCES, boot_img_ASFLAGS, boot_img_LDFLAGS)
        [qemu] (boot_img_FORMAT): New variables.
        [qemu] (bin_UTILITIES): Add `grub-mkimage'.
        [qemu] (grub_mkimage_SOURCES, grub_mkimage_CFLAGS): New variables.
        [qemu] (kernel_img_SOURCES, kernel_img_HEADERS, kernel_img_CFLAGS)
        [qemu] (kernel_img_ASFLAGS, kernel_img_LDFLAGS)
        [qemu] (kernel_img_FORMAT): New variables.

        * configure.ac: Recognise `i386-qemu'.

        * util/i386/pc/grub-mkimage.c (compress_kernel): Add dummy variant
        (for no compression).
        [GRUB_MACHINE_QEMU] (generate_image): Misc adjustments to produce
        a valid i386 ROM image.  Make `GRUB_KERNEL_MACHINE_COMPRESSED_SIZE',
        `GRUB_KERNEL_MACHINE_INSTALL_DOS_PART' and
        `GRUB_KERNEL_MACHINE_INSTALL_BSD_PART' optional features (with
        ifdefs).
2009-06-27 11:18:10 +00:00
proski
c402ab1734 2009-06-26 Pavel Roskin <proski@gnu.org>
* include/grub/types.h: Define GRUB_TARGET_WORDSIZE.
	* include/grub/elf.h: Define symbols without "32" or "64" based
	on GRUB_TARGET_WORDSIZE.
	* include/grub/multiboot2.h: Use GRUB_TARGET_WORDSIZE.
	* efiemu/loadcore32.c: Redefine GRUB_TARGET_WORDSIZE, remove own
	ELF definitions.
	* efiemu/loadcore64.c: Likewise.
	* loader/i386/bsd32.c: Likewise.
	* loader/i386/bsd64.c: Likewise.
	* kern/dl.c: Remove own ELF definitions.
	* util/i386/efi/grub-mkimage.c: Likewise.
2009-06-27 03:01:42 +00:00
robertmh
132a0a595f 2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): Rename to ...
        (GRUB_KERNEL_MACHINE_LINK_ADDR): ... this.  Update all users.
2009-06-22 19:23:22 +00:00
robertmh
bf3372349c 2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
* conf/i386-ieee1275.rmk (pkglib_PROGRAMS): Replace `kernel.elf'
        with `kernel.img'.
        (kernel_elf_SOURCES): Rename to ...
        (kernel_img_SOURCES): ... this.
        (kernel_elf_HEADERS): Rename to ...
        (kernel_img_HEADERS): ... this.  Update all users.
        (kernel_elf_ASFLAGS): Rename to ...
        (kernel_img_ASFLAGS): ... this.
        (kernel_elf_CFLAGS): Rename to ...
        (kernel_img_CFLAGS): ... this.
        (kernel_elf_LDFLAGS): Rename to ...
        (kernel_img_LDFLAGS): ... this.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/powerpc-ieee1275.rmk: Likewise.

        * util/elf/grub-mkimage.c (add_segments): Replace "kernel.elf"
        with "kernel.img".
2009-06-22 10:27:26 +00:00
robertmh
0db15301d1 2009-06-21 Colin Watson <cjwatson@ubuntu.com>
* util/grub-mkconfig.in (GRUB_DISABLE_LINUX_RECOVERY): Export
        variable.
        * util/grub.d/10_linux.in: If GRUB_DISABLE_LINUX_RECOVERY is true,
        don't write a menu entry for recovery mode.
2009-06-21 11:21:59 +00:00
robertmh
546796c1d7 2009-06-20 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-mkimage.c (main): Oops, free `output' only
        after it's no longer needed.
2009-06-20 14:32:53 +00:00
robertmh
cd7310d5d5 2009-06-20 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/i386/loader.h (grub_linux_prot_size)
        (grub_linux_tmp_addr, grub_linux_real_addr)
        (grub_linux_is_bzimage, grub_linux16_boot): Declare only on
        GRUB_MACHINE_PCBIOS.
        * util/i386/pc/grub-mkimage.c (compress_kernel): Move
        common grub_util_info() call to ...
        (generate_image): ... here.
        Fix use of uninitialized memory, comparison of signed with
        unsigned integers and memory leak.
        Remove bogus module address message.
2009-06-20 14:11:45 +00:00
fzielcke
1bd265f306 2009-06-17 Colin Watson <cjwatson@ubuntu.com>
* util/elf/grub-mkimage.c (usage): Prefix each option line with two
	spaces, for the benefit of help2man.
	* util/i386/efi/grub-mkimage.c (usage): Likewise.
2009-06-17 06:07:36 +00:00
fzielcke
b97bcb1953 2009-06-16 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in: Use ${root} in the generated
	drivemap menuentry.
2009-06-16 16:59:32 +00:00
proski
3ef17a2ebf 2009-06-16 Pavel Roskin <proski@gnu.org>
* boot/i386/pc/boot.S: Remove root_drive.  Assert offset of
	boot_drive_check by using GRUB_BOOT_MACHINE_DRIVE_CHECK.  Don't
	save %dx, we only need %dl and we never change it.
	* boot/i386/pc/cdboot.S: Don't set the root drive.
	* boot/i386/pc/pxeboot.S: Likewise.
	* include/grub/i386/pc/boot.h: Remove
	GRUB_BOOT_MACHINE_ROOT_DRIVE, adjust
	GRUB_BOOT_MACHINE_DRIVE_CHECK.
	* include/grub/i386/pc/kernel.h: Remove grub_root_drive.
	* kern/i386/pc/init.c (make_install_device): Remove references
	to grub_root_drive.
	* kern/i386/pc/startup.S: Likewise.
	* util/i386/pc/grub-setup.c (setup): Don't set root_drive.
2009-06-15 23:25:38 +00:00
phcoder
693fe63766 2009-06-16 Vladimir Serbinenko <phcoder@gmail.com>
xnu_uuid command

	* commands/xnu_uuid.c: new file
	* conf/common.rmk (pkglib_MODULES): add xnu_uuid.mod
	(xnu_uuid_mod_SOURCES): new variable
	(xnu_uuid_mod_CFLAGS): likewise
	(xnu_uuid_mod_LDFLAGS): likewise
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c
	* conf/i386-ieee1275.rmk: likewise
	* conf/i386-pc.rmk: likewise
	* conf/powerpc-ieee1275.rmk: likewise
	* conf/sparc64-ieee1275.rmk: likewise
	* util/grub.d/30_os-prober.in: use UUID for Mac OS X/Darwin
2009-06-15 22:57:39 +00:00
fzielcke
880fc3c4f0 2009-06-13 Jun Inoue <jun.lambda@gmail.com>
* util/grub-mkconfig.in: Fix parsing of --output option.
2009-06-13 09:23:54 +00:00
fzielcke
25ad23236f 2009-06-11 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in: Fix a comment. Source
	${libdir}/grub/grub-mkconfig_lib.  Use prepare_grub_to_access_device
	to set the root device.  Place drivemap command in the generated
	chain entry.
2009-06-11 19:00:49 +00:00
proski
bd47b0b5c7 2009-06-11 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/10_linux.in: Capitalise "Linux".
2009-06-11 17:06:35 +00:00
proski
f285fe2d53 2009-06-11 Colin Watson <cjwatson@ubuntu.com>
* util/grub-pe2elf.c (usage): Fix references to grub-editenv.
2009-06-11 17:02:26 +00:00
fzielcke
b39f9d20a9 remove all trailing whitespace 2009-06-10 21:04:23 +00:00
robertmh
87b8f28cc1 2009-06-09 Robert Millan <rmh.grub@aybabtu.com>
* util/deviceiter.c (grub_util_iterate_devices): Increase number of
        disk limit to 26 for IDE, Virtio, Xen and SCSI.
2009-06-09 14:42:37 +00:00
fzielcke
8ec4a6d0e0 2009-06-09 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-install.in: Change the error message if UUIDs
	aren't avaible if ata.mod gets used.
2009-06-09 13:22:31 +00:00
fzielcke
255a27d434 2009-06-08 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-install.in: Add a parameter --disk-module
	to choose between ata and biosdisk module on i386-pc.
2009-06-08 20:51:16 +00:00
phcoder
4c9ec6b3fc 2009-06-08 Vladimir Serbinenko <phcoder@gmail.com>
Bugfix: install on partitionless device

	* util/hostdisk.c (grub_util_biosdisk_get_grub_dev): check if os_dev
	is a whole disk
2009-06-08 13:04:02 +00:00
phcoder
e37ffc5cf6 2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
Use grub-macho2img when compiling with Apple's CC for PCBIOS machine

	* conf/common.rmk (bin_UTILITIES): add (on false on condition) 
	grub-macho2img 
	(CLEANFILES): add grub-macho2img
	(grub_macho2img_SOURCES): new variable
	* kern/i386/pc/startup.S (bss_start): new variable
	(bss_end): likewise
	* genmk.rb: use grub-macho2img for *.img when compiled with Apple's CC
	* util/grub-macho2img.c: new file
2009-06-04 21:01:11 +00:00
phcoder
fd2bf2e388 2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
Fix wrong assumptions with grub-mkimage on EFI
	
	* i386/efi/grub-mkimage.c (read_kernel_module): don't write prefox here
	(relocate_addresses): consider both r_addend and value at offset
	(make_mods_section): zerofill modinfo and header
	(convert_elf): write prefix here
2009-06-04 19:32:46 +00:00
phcoder
3eb5ed4ec0 2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
gfxpayload support

	* commands/videotest.c (grub_cmd_videotest): use grub_video_set_mode
	* include/grub/video.h (GRUB_VIDEO_MODE_TYPE_PURE_TEXT): new definition
	(grub_video_setup): remove
	(grub_video_set_mode): new prototype
	* loader/i386/linux.c (DEFAULT_VIDEO_MODE): new definition
	(vid_mode): remove
	(linux_vesafb_res): compile only on PCBIOS
	(grub_linux_boot): support gfxpayload
	* loader/i386/pc/xnu.c (video_hook): new function
	(grub_xnu_set_video): support gfxpayload
	* term/gfxterm.c (DEFAULT_VIDEO_WIDTH): removed
	(DEFAULT_VIDEO_HEIGHT): likewise
	(DEFAULT_VIDEO_FLAGS): likewise
	(DEFAULT_VIDEO_MODE): new definition
	(video_hook): new function
	(grub_gfxterm_init): use grub_video_set_mode
	* util/grub.d/30_os-prober.in: remove explicit modesetting before 
	loading xnu
	* video/video.c (grub_video_setup): removed
	(grub_video_set_mode): new function based on grub_gfxterm_init and 
	grub_video_setup
2009-06-04 18:22:45 +00:00
robertmh
f4448a0792 2009-06-04 Robert Millan <rmh.grub@aybabtu.com>
Prevent GRUB from probing floppies during boot.

        * conf/common.rmk (search_mod_CFLAGS): Use `-Werror -Wall'.
        * commands/search.c (options): Add --no-floppy.
        (search_fs, search_file, grub_cmd_search): Support --no-floppy.
        * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Use
        --no-floppy when searching for UUIDs.
2009-06-04 11:37:44 +00:00
fzielcke
f6fd460a40 2009-06-03 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in (update_grub_dir): Rename to grub_mkconfig_dir.
2009-06-03 13:53:10 +00:00
proski
cd0d5e3040 2009-05-26 Pavel Roskin <proski@gnu.org>
* util/getroot.c (grub_util_get_dev_abstraction): Mark os_dev as
	possibly unused.
2009-05-26 20:47:00 +00:00
fzielcke
59e5d3ec80 2009-05-16 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkconfig.in: Export GRUB_TERMINAL_INPUT.
2009-05-16 13:58:07 +00:00
bean
5e898c9d71 2009-05-16 Bean <bean123ch@gmail.com>
* include/grub/kernel.h (grub_module_header_types): Add type
	OBJ_TYPE_CONFIG.

	* kern/main.c (grub_load_config): New function.
	(grub_main): Call grub_load_config to read boot config.

	* grub-mkimage (generate_image): New parameter config_path.
	(options): New option --config.
	(main): Parse --config option, and pass it to generate_image.
2009-05-16 12:12:12 +00:00
proski
6f6a8b2869 2009-05-13 Pavel Roskin <proski@gnu.org>
* util/i386/pc/grub-setup.c (setup): Remove unused variable
	embedding_area_exists.
2009-05-13 21:28:25 +00:00
robertmh
59978c8ae7 2009-05-13 Robert Millan <rmh.grub@aybabtu.com>
Improve warning messages for cases where there's no embedding area,
        or when it is too small (or core.img too large).
2009-05-13 21:13:11 +00:00
robertmh
667712d716 fix indentation for previous commit 2009-05-13 21:01:26 +00:00
robertmh
15fbf4c442 2009-05-13 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-setup.c (setup): Restructure code flow to make
        it easier to understand / work with.
2009-05-13 20:59:45 +00:00
robertmh
901d2f0c27 2009-05-10 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-install.in: Update copyright year.
2009-05-10 15:43:58 +00:00
robertmh
317e1a44b5 2009-05-08 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-setup.c (setup): Factorize find_usable_region(),
        split in two functions (one for msdos and one for gpt).
2009-05-08 19:48:54 +00:00
davem
172800ce74 * util/sparc64/ieee1275/grub-ofpathname.c (main): Set progname. 2009-05-08 09:43:54 +00:00
robertmh
29aa5e8163 2009-05-06 Robert Millan <rmh.grub@aybabtu.com>
* util/i386/pc/grub-setup.c (setup): Fix check for embed region
        existance.
2009-05-06 11:56:17 +00:00
davem
eef73c8a73 * util/sparc64/ieee1275/grub-install.in: Fix sed arg quoting. 2009-05-05 18:54:36 +00:00
davem
67e23c9004 * disk/ieee1275/ofdisk.c (compute_dev_path): New.
(grub_ofdisk_open): Use it to un-escape "," characters.
	* kern/disk.c (find_part_sep): New.
	(grub_disk_open): Use it to find the first non-escaped ','
	character in the disk name.
	* util/ieee1275/devicemap.c (escape_of_path): New.
	(grub_util_emit_devicemap_entry): Use it.
	* util/sparc64/ieee1275/grub-install.in: Update script to
	strip partition specifiers properly by not triggering on
	'\' escaped ',' characters.
2009-05-04 23:13:53 +00:00
proski
4241d2b13a 2009-05-04 Pavel Roskin <proski@gnu.org>
* disk/ata.c: Spelling fixes.
	* disk/raid.c: Likewise.
	* disk/usbms.c: Likewise.
	* disk/dmraid_nvidia.c: Likewise.
	* kern/ieee1275/openfw.c: Likewise.
	* kern/ieee1275/init.c: Likewise.
	* kern/ieee1275/cmain.c: Likewise.
	* boot/i386/pc/cdboot.S: Likewise.
	* video/readers/png.c: Likewise.
	* video/i386/pc/vbe.c: Likewise.
	* fs/udf.c: Likewise.
	* fs/hfs.c: Likewise.
	* fs/reiserfs.c: Likewise.
	* efiemu/runtime/efiemu.c: Likewise.
	* efiemu/main.c: Likewise.
	* efiemu/mm.c: Likewise.
	* include/grub/elf.h: Likewise.
	* include/grub/xnu.h: Likewise.
	* include/grub/usbdesc.h: Likewise.
	* include/grub/usb.h: Likewise.
	* include/grub/script_sh.h: Likewise.
	* include/grub/lib/LzmaEnc.h: Likewise.
	* include/grub/efiemu/efiemu.h: Likewise.
	* include/grub/command.h: Likewise.
	* normal/menu.c: Likewise.
	* normal/main.c: Likewise.
	* normal/datetime.c: Likewise.
	* bus/usb/uhci.c: Likewise.
	* mmap/i386/uppermem.c: Likewise.
	* mmap/mmap.c: Likewise.
	* commands/acpi.c: Likewise.
	* commands/test.c: Likewise.
	* partmap/apple.c: Likewise.
	* font/font.c: Likewise.
	* loader/sparc64/ieee1275/linux.c: Likewise.
	* loader/macho.c: Likewise.
	* loader/i386/bsd_trampoline.S: Likewise.
	* loader/i386/bsd.c: Likewise.
	* loader/xnu.c: Likewise.
	* term/i386/pc/vesafb.c: Likewise.
	* term/usb_keyboard.c: Likewise.
	* util/resolve.c: Likewise.
	* util/getroot.c: Likewise.
2009-05-04 20:06:05 +00:00
robertmh
ae0c0bdca9 2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
* util/misc.c (grub_util_warn): New function.  Emmits a warning
        unconditionally.
        * include/grub/util/misc.h (grub_util_warn): New declaration.

        * util/i386/pc/grub-install.in: Understand --force and pass it down
        to grub-setup.

        * util/i386/pc/grub-setup.c (main): Understand --force and pass it
        down to setup().
        (setup): Improve error messages and add warnings when requested to
        install in odd layouts.  Refuse to install using blocklists unless
        --force was set.
2009-05-04 16:16:03 +00:00
proski
dfc31a22bb 2009-05-03 Pavel Roskin <proski@gnu.org>
* util/i386/pc/grub-mkrescue.in: Allow for the case when
	efiemu??.o doesn't exist.
	* util/i386/pc/grub-install.in: Likewise.  Use "cp -f" for
	copying.
2009-05-03 19:04:59 +00:00
phcoder
bbee0f2b56 2009-05-03 Vladimir Serbinenko <phcoder@gmail.com>
xnu support

	* conf/i386-efi.rmk (kernel_mod_HEADERS): added i386/pit.h
	(pkglib_MODULES): add xnu.mod
	(xnu_mod_SOURCES): new variable
	(xnu_mod_CFLAGS): likewise
	(xnu_mod_LDFLAGS): likewise
	(xnu_mod_ASFLAGS): likewise
	* conf/i386-pc.rmk: likewise
	* conf/x86_64-efi.rmk: likewise
	* include/grub/efi/efi.h (grub_efi_finish_boot_services): 
	new declaration
	* include/grub/i386/macho.h: new file
	* include/grub/i386/xnu.h: likewise
	* include/grub/macho.h: likewise
	* include/grub/machoload.h: likewise
	* include/grub/x86_64/macho.h: likewise
	* include/grub/x86_64/xnu.h: likewise
	* include/grub/xnu.h: likewise
	* kern/efi/efi.c (grub_efi_finish_boot_services): new function
	* kern/efi/mm.c (MAX_HEAP_SIZE): increase
	* loader/i386/efi/xnu.c: new file
	* loader/i386/pc/xnu.c: likewise
	* loader/i386/xnu.c: likewise
	* loader/i386/xnu_helper.S: likewise
	* loader/macho.c: likewise
	* loader/xnu.c: likewise
	* loader/xnu_resume.c: likewise
	* util/grub-dumpdevtree: likewise
	* include/grub/i386/pit.h: include grub/err.h
	(grub_pit_wait): export
	* util/grub.d/30_os-prober.in: support Darwin/Mac OS X
2009-05-02 23:19:20 +00:00
phcoder
5caf964d75 2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
Efiemu
 
	* conf/i386-pc.rmk: new modules efiemu, efiemu_acpi, efiemu_pnvram,
	_linux_efi, linux_efi. 
	new files in grub-emu 
	new targets efiemu32.o and efiemu64.o
	* loader/linux_normal_efiemu.c: likewise
	* loader/i386/efi/linux.c: added preliminary efiemu support
	* util/i386/pc/grub-install.in: add efiemu??.o to the list of 
	files to copy
	* include/grub/autoefi.h: new file
	* nclude/grub/i386/efiemu.h: likewise
	* include/grub/i386/pc/efiemu.h: likewise
	* include/grub/efi/api.h: add LL suffix when necessary
	new definitions relating to tables
	* include/grub/efiemu/efiemu.h: new file
	* include/grub/efiemu/runtime.h: likewise
	* efiemu/prepare.c: likewise
	* efiemu/loadcore_common.c: likewise
	* efiemu/loadcore64.c: likewise
	* efiemu/runtime/efiemu.sh: likewise
	* efiemu/runtime/efiemu.S: likewise
	* efiemu/runtime/efiemu.c: likewise
	* efiemu/runtime/config.h: likewise
	* efiemu/prepare32.c: likewise
	* efiemu/main.c: likewise
	* efiemu/modules/pnvram.c: likewise
	* efiemu/modules/i386: likewise
	* efiemu/modules/i386/pc: likewise
	* efiemu/modules/acpi.c: likewise
	* efiemu/i386/pc/cfgtables.c: likewise
	* efiemu/i386/loadcore64.c: likewise
	* efiemu/i386/loadcore32.c: likewise
	* efiemu/prepare64.c: likewise
	* efiemu/loadcore.c: likewise
	* efiemu/symbols.c: likewise
	* efiemu/mm.c: likewise
	* efiemu/loadcore32.c: likewise
2009-05-02 22:40:21 +00:00
bean
d558e6b5ac 2009-05-02 Bean <bean123ch@gmail.com>
* conf/common.rmk (grub_script.tab.c): Change normal/parser.y to
	script/sh/parser.y.
	(pkglib_MODULES): Add normal.mod and sh.mod.
	(normal_SOURCES): New variable.
	(normal_mod_CFLAGS): Likewise.
	(normal_mod_LDFLAGS): Likewise.
	(sh_mod_SOURCES): Likewise.
	(sh_mod_CFLAGS): Likewise.
	(sh_mod_LDFLAGS): Likewise.

	* conf/i386-pc.rmk (normal/lexer.c_DEPENDENCIES): Changed to
	script/sh/lexer.c_DEPENDENCIES.
	(kernel_img_SOURCES): Remove kern/rescue.c, and kern/reader.c,
	kern/rescue_reader.c and kern/rescue_parser.c.
	(kernel_img_HEADERS): Remove rescue.h, add reader.h.
	(grub_emu_SOURCES): Change source files.
	(pkglib_MODULES): Remove normal.mod.
	(normal_SOURCES): Removed.
	(normal_mod_CFLAGS): Likewise.
	(normal_mod_LDFLAGS): Likewise.
	* conf/i386-coreboot.rmk: Likewise.
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1276.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.

	* include/grub/command.h (grub_command_execute): New inline function.

	* include/grub/menu.h (grub_menu_entry): Removed commands field.

	* include/grub/normal.h: Remove <grub/setjmp.h>.
	(grub_fs_module_list): Moved to normal/autofs.c.
	(grub_exit_env): Removed.
	(grub_command_execute): Likewise.
	(grub_normal_menu_addentry): Renamed to grub_menu_addentry, removed
	parameter script.
	(read_command_list): New function declaration.
	(read_fs_list): Likewise.

	* include/parser.h: Include <grub/reader.h>.
	(grub_parser_split_cmdline): Change type of getline parameter.
	(grub_parser): New structure.
	(grub_parser_class): New variable.
	(grub_parser_execute): New function declaration.
	(grub_register_rescue_parser): Likewise.
	(grub_parser_register): New inline function.
	(grub_parser_unregister): Likewise.
	(grub_parser_get_current): Likewise.
	(grub_parser_set_current): Likewise.

	* include/grub/reader.h: New file.
	* kern/reader.c: Likewise.
	* kern/rescue_parser.c: Likewise.
	* kern/rescue_reader.c: Likewise.
	* normal/autofs.c: Likewise.
	* normal/dyncmd.c: Likewise.

	* include/grub/rescue.h: Removed.
	* normal/command.h: Likewise.

	* include/grub/script.h: Moved to ...
	* include/grub/script_sh.h: ... Moved here.
	* normal/execute.c: Moved to ...
	* script/sh/execute.c: ... Moved here.
	* normal/function.c: Moved to ...
	* script/sh/function.c: ... Moved here.
	* normal/lexer.c: Moved to ...
	* script/sh/lexer.c: ... Moved here.
	* normal/parser.y: Moved to ...
	* script/sh/parser.y: ... Moved here.
	* normal/script.c: Moved to ...
	* script/sh/script.c: ... Moved here.

	* normal/main.c: Remove <grub/rescue.h> and <grub/script.h>, include
	<grub/reader.h>.
	(grub_exit_env): Removed.
	(fs_module_list): Moved to normal/autofs.c.
	(grub_file_getline): Don't handle comment here.
	(free_menu): Skip removed field entry->commands.
	(grub_normal_menu_addentry): Removed as grub_menu_entry, removed
	script parameter.
	(read_config_file): Removed nested parameter, change getline function.
	(grub_enter_normal_mode): Removed.
	(grub_dyncmd_dispatcher): Moved to normal/dyncmd.c.
	(read_command_list): Likewise.
	(autoload_fs_module): Moved to normal/autofs.c.
	(read_fs_list): Likewise.
	(reader_nested): New variable.
	(grub_normal_execute): Run parser.sh to switch to sh parser.
	(grub_cmd_rescue): Removed.
	(cmd_normal): Removed.
	(grub_cmd_normal): Unregister itself at the beginning. Don't register
	rescue command.
	(grub_cmdline_run): New function.
	(grub_normal_reader_init): Likewise.
	(grub_normal_read_line): Likewise.
	(grub_env_write_pager): Likewise.
	(cmdline): New variable.
	(grub_normal_reader): Likewise.
	(GRUB_MOD_INIT): Register normal reader and set as current, register
	pager hook, register normal command with grub_register_command_prio,
	so that it won't show up in command.lst.
	(GRUB_MOD_FINI): Unregister normal reader, unhook pager, clear
	grub_fs_autoload_hook.

	* normal/menu.c: Remove <grub/script.h>, add <grub/command.h>.
	(grub_menu_execute_entry): Replace grub_script_execute with
	grub_parser_execute, change parameter to grub_command_execute.

	* normal/menu_text.c: Remove <grub/script.h>.

	* normal/menu_entry.c: Remove <grub/script.h>, add <grub/command.h>
	and <grub/parser.h>.
	(run): Change editor_getline to use new parser interface. Change
	parameter to grub_command_execute.

	* kern/main.c: Remove <grub/rescue.h>, include <grub/command.h>,
	<grub/reader.h> and <grub/parser.h>.
	(grub_load_normal_mode): Execute normal command.
	(grub_main): Call grub_register_core_commands,
	grub_register_rescue_parser and grub_register_rescue_reader, use
	grub_reader_loop to enter input loop.

	* kern/parser.c (grub_parser_spli_cmdline): Change type of getline
	parameter.
	(grub_parser_class): New variable.
	(grub_parser_execute): New function.

	* loader/i386/multiboot.c: Remove <grub/rescue.h>.
	* loader/multiboot2.c: Likewise.
	* loader/sparc64/ieee1275/linux.c: Likewise.

	* util/grub-emu.c (read_command_list): New dummy function.
2009-05-02 19:49:34 +00:00
robertmh
18db813d65 2009-05-02 Robert Millan <rmh.grub@aybabtu.com>
* util/deviceiter.c (grub_util_iterate_devices): Increase max drive
        count to 16 for CCISS and IDA.
2009-05-02 16:55:35 +00:00
phcoder
d9dc87b01b 2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
Added missing lst to grub-mkrescue

	* util/i386/pc/grub-mkrescue.in: added ${input_dir}/handler.lst
	and ${input_dir}/parttool.lst
2009-05-02 13:34:01 +00:00
davem
ad22a610fe * util/hostdisk.c (device_is_wholedisk): New function.
(grub_util_biosdisk_get_grub_dev): Shortcut when hdg.start is
	zero only if device_is_wholedisk() returns true.
2009-04-30 13:23:48 +00:00
davem
6966215ddb * util/hostdisk.c (convert_system_partition_to_system_disk):
Handle virtual disk devices named /dev/vdiskX as found on sparc
	and powerpc.
2009-04-30 13:21:14 +00:00
davem
5c77c3de65 * util/grub-mkdevicemap.c (make_device_map): Add missing
NESTED_FUNC_ATTR to process_device().
2009-04-26 08:44:36 +00:00
davem
a1447506fe * util/sparc64/ieee1275/misc.c: New file.
* util/sparc64/ieee1275/grub-setup.c: New file.
	* util/sparc64/ieee1275/grub-ofpathname.c: New file.
	* util/sparc64/ieee1275/grub-mkimage.c: New file.
	* util/sparc64/ieee1275/grub-install.in: New file.
	* util/ieee1275/ofpath.c: New file.
	* util/ieee1275/devicemap.c: New file.
	* util/devicemap.c: New file.
	* util/deviceiter.c: New file.
	* kern/sparc64/ieee1275/init.c: New file.
	* include/grub/util/ofpath.h: New file.
	* include/grub/util/deviceiter.h: New file.
	* util/grub-mkdevicemap.c: Include deviceiter.h.
	Implement using grub_util_emit_devicemap_entry and
	grub_util_iterate_devices.
	* conf/i386-corebook.rmk: Build util/deviceiter.c and
	util/devicemap.c into grub-mkdevicemap
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-pc.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Add rules to build boot block
	images and installation utilities.  Build kernel as image
	instead of as elf binary.  Use common rules as much as possible.
2009-04-22 09:57:39 +00:00
proski
41bb0fe9a6 2009-04-15 Pavel Roskin <proski@gnu.org>
* include/grub/types.h: Rename ULONG_MAX to GRUB_ULONG_MAX and
	LONG_MAX to GRUB_LONG_MAX.  Introduce GRUB_LONG_MIN.  Update all
	users of ULONG_MAX, LONG_MAX and LONG_MIN to use the new
	definitions.
2009-04-15 20:45:09 +00:00
bean
d05f0df3eb 2009-04-14 Bean <bean123ch@gmail.com>
* Makefile.in (pkglib_DATA): Add handler.lst.
	(handler.lst): New rule.

	* conf/i386-pc.rmk (normal_mod_SOURCES): Add normal/handler.c.
	* conf/i386-coreboot.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-efi.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Likewise.

	* genhandlerlist.sh: New file.

	* genmk.rb: Add rules to generate handler.lst.

	* include/grub/normal.h (grub_file_getline): New function definition.
	(read_handler_list): Likewise.
	(free_handler_list): Likewise.

	* include/grub/term.h (grub_term_register_input): Add name parameter
	for auto generation of handler.lst.
	(grub_term_register_output): Likewise.

	* normal/handler.c: New file.

	* normal/main.c (get_line): Renamed to grub_file_getline.
	(read_config_file): Use the newly renamed grub_file_getline.
	(read_command_list): Likewise.
	(read_fs_list): Likewise.
	(grub_normal_execute): Call read_handler_list to parse handler.lst.
	(GRUB_MOD_FINI): Call free_handler_list to free handler list.

	* term/efi/console.c (grub_console_init): Add name parameter for auto
	generation of handler.lst.
	* term/gfxterm.c: Likewise.
	* term/i386/pc/at_keyboard.c: Likewise.
	* term/i386/pc/console.c: Likewise.
	* term/i386/pc/serial.c: Likewise.
	* term/i386/pc/vesafb.c: Likewise.
	* term/i386/pc/vga.c: Likewise.
	* term/i386/pc/vga_text.c: Likewise.
	* term/ieee1275/ofconsole.c: Likewise.
	* term/usb_keyboard.c: Likewise.
2009-04-14 18:12:14 +00:00
bean
33c846be29 2009-04-14 Bean <bean123ch@gmail.com>
* util/grub-pe2elf.c (write_symbol_table): Terminate short name symbol
	properly with null character.
2009-04-14 16:56:35 +00:00
davem
5c5bf96ae6 * util/hostdisk.c (make_device_name): Fix buffer length
calculations.
2009-04-14 09:07:25 +00:00
fzielcke
e25b5a8c6c 2009-04-14 Felix Zielcke <fzielcke@z-51.de>
* util/hostdisk.c [__FreeBSD__ || __FreeBSD_kernel__]: Include
	<sys/param.h> and <sys/sysctl.h>.
	(open_device) [__FreeBSD__ || __FreeBSD_kernel_]: Use sysctlgetbyname()
	to add 0x10 to `kern.geom.debugflags' if it's not already set, before
	opening the device and reset them afterwards.
2009-04-14 07:01:34 +00:00
davem
6a4737e5d8 * util/hostdisk.c (make_device_name): Do not make any assumptions
about the length of drive names.
2009-04-13 23:01:54 +00:00
robertmh
7ebc2d6ba6 2009-04-13 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_freebsd.in: Detect Debian GNU/kFreeBSD and use
        that name for menuentries when appropiate.
2009-04-13 19:48:44 +00:00
fzielcke
fbb4848ac0 move fi one line below 2009-04-13 15:37:38 +00:00
fzielcke
d8ba3667a2 2009-04-13 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/10_freebsd.in: Add a missing `fi'.
2009-04-13 15:07:16 +00:00
fzielcke
a547a745a6 2009-04-13 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/10_freebsd.in: Don't exit if /boot/devices.hints
	doestn't exist.  Check also for /boot/kernel/kernel.gz.  Print
	`freebsd_loadenv' only when devices.hints exist.
2009-04-13 14:14:40 +00:00
fzielcke
c301203905 2009-04-13 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc/grub-install.in (install_drive): Remove the BSD
	partition number.
	(grub_drive): Likewise.
2009-04-13 11:45:20 +00:00
fzielcke
c91e1793bf 2009-04-11 Felix Zielcke <fzielcke@z-51.de>
* util/hostdisk.c [__FreeBSD_kernel__]: Include sys/disk.h.
	(grub_util_biosdisk_open) [__FreeBSD_kernel__]: Add support for
	GNU/kFreeBSD. Check if a device is a character device. Use
	DIOCGMEDIASIZE to get the size.
	(convert_system_partition_to_system_disk) [__FreeBSD_kernel__]: Add
	support for GNU/kFreeBSD.
	(grub_util_biosdisk_get_grub_dev) [__FreeBSD_kernel__]: Check if OS_DEV
	is a character device instead of a block device. Add support for
	FreeBSD device names.

	* util/getroot.c (find_root_device) [__FreeBSD_kernel__]: Check if ENT
	is a character device instead of a block device.

	* util/grub-probe.c (probe) [__FreeBSD_kernel__]: Check if DEVICE_NAME
	is a character device instead of a block device.
2009-04-11 18:46:12 +00:00
okuji
b1ac86445e 2009-04-11 Andrey Shuvikov <mr_hyro@yahoo.com>
* util/hostdisk.c [__FreeBSD__]: Include sys/disk.h.
    (grub_util_biosdisk_open) [__FreeBSD__]: Add support for
    FreeBSD. Check if a device is a character device. Use
    DIOCGMEDIASIZE to get the size.
    (convert_system_partition_to_system_disk) [__FreeBSD__]: Add
    support for FreeBSD.
    (grub_util_biosdisk_get_grub_dev) [__FreeBSD__]: Check if OS_DEV
    is a character device instead of a block device. Add support for
    FreeBSD device names.

    * util/getroot.c (find_root_device) [__FreeBSD__]: Check if ENT is
    a character device instead of a block device.
    (grub_util_check_char_device): New function.

    * util/grub-probe.c (probe) [__FreeBSD__]: Check if DEVICE_NAME is
    a character device instead of a block device.

    * include/grub/util/getroot.h (grub_util_check_char_device): New
    prototype.
2009-04-11 09:40:39 +00:00
bean
e7e6862a4c 2009-04-10 Bean <bean123ch@gnail.com>
* include/grub/efi/api.h (grub_efi_configuration_table): Add packed
	attribute, otherwise the size would be wrong for i386 platform.

	* include/grub/pci.h (grub_pci_read_word): New inline function.
	(grub_pci_read_byte): Likewise.
	(grub_pci_write): Likewise.
	(grub_pci_write_word): Likewise.
	(grub_pci_write_byte): Likewise.

	* include/grub/pci.h (grub_pci_iteratefunc_t): Add NESTED_FUNC_ATTR.

	* loader/i386/efi/linux.c (fake_bios_data): Moved to loadbios module.
	(find_framebuf): Scan pci to locate the frame buffer address.

	* commands/efi/fixvideo.c: New file.

	* commands/efi/loadbios.c: Likewise.

	* commands/memrw.c: Likewise.

	* util/grub-dumpbios.in: Likewise.

	* conf/common.rmk (grub-dumpbios): New utility.
	(pkglib_MODULES): New module memrw.mod.
	(memrw_mod_SOURCE): New macro.
	(memrw_mod_CFLAGS): Likewise.
	(memrw_mod_LDFLAGS): Likewise.

	* conf/i386-efi.rmk (pkglig_MODULES): New module loadbios.mod and
	fixvideo.mod.
	(loadbios_mod_SOURCE): New macro.
	(loadbios_mod_CFLAGS): Likewise.
	(loadbios_mod_LDFLAGS): Likewise.
	(fixvideo_mod_SOURCE): Likewise.
	(fixvideo_mod_CFLAGS): Likewise.
	(fixvideo_mod_LDFLAGS): Likewise.

	* conf/x86_64.rmk (pkglig_MODULES): New module loadbios.mod and
	fixvideo.mod.
	(loadbios_mod_SOURCE): New macro.
	(loadbios_mod_CFLAGS): Likewise.
	(loadbios_mod_LDFLAGS): Likewise.
	(fixvideo_mod_SOURCE): Likewise.
	(fixvideo_mod_CFLAGS): Likewise.
	(fixvideo_mod_LDFLAGS): Likewise.
2009-04-10 15:33:34 +00:00
phcoder
05aaebfb7b 2009-04-05 Vladimir Serbinenko <phcoder@gmail.com>
Support for mtime and further expandability of dir command

	* include/grub/lib/datetime.h: moved to ...
	* include/grub/datetime.h: ... moved here and added 
	declaration of grub_unixtime2datetime. All users updated
	* include/grub/fs.h: new syntax for dir and mtime functionin 
	struct grub_fs 
	* include/grub/fshelp.h: new declarations of GRUB_FSHELP_TYPE_MASK
	and GRUB_FSHELP_FLAGS_MASK
	* commands/ls.c (grub_ls_list_files): Write mtime in long format
	* fs/ext2.c (grub_ext2_dir): use new dir syntax and supply mtime
	(grub_ext2_mtime): new function
	* fs/hfsplus.c (grub_hfsplus_dir): use new dir syntax and supply mtime
	(grub_hfsplus_mtime): new function
	* fs/ufs.c (GRUB_UFS_ATTR_TYPE): new definition
	(GRUB_UFS_ATTR_FILE): likewise
	(GRUB_UFS_ATTR_LNK): likewise
	(struct grub_ufs_sblock): new fields mtime
	(grub_ufs_read_inode): new parameter to read inode to a separate buffer
	all users updated
	(grub_ufs_dir): mtime support
	(grub_ufs_mtime): new function
	* fs/affs.c (grub_affs_dir): use new dir syntax
	* fs/afs.c (grub_afs_dir): likewise
	* fs/cpio.c (grub_cpio_dir): likewise
	* fs/fat.c (grub_fat_find_dir): likewise
	* fs/hfs.c (grub_hfs_dir): likewise
	* fs/iso9660.c (grub_iso9660_dir): likewise
	* fs/jfs.c (grub_jfs_dir): likewise
	* fs/minix.c (grub_minix_dir): likewise
	* fs/ntfs.c (grub_ntfs_dir): likewise
	* fs/reiserfs.c (grub_reiserfs_dir): likewise
	* fs/sfs.c (grub_sfs_dir): likewise
	* fs/xfs.c (grub_xfs_dir): likewise
	* util/hostfs.c (grub_hostfs_dir): likewise
	* lib/datetime.c: moved to ...
	* normal/datetime.c: ... moved here
	(grub_unixtime2datetime): new function
	* kern/rescue.c (grub_rescue_print_files): use new dir syntax
	* normal/completition.c (iterate_dir): use new dir syntax
	* normal/misc.c (grub_normal_print_device_info): tell the 
	last modification time of a volume
	* kern/fs.c (grub_fs_probe): updated dummy function to use new syntax 
	* conf/common.rmk: added lib/datetime.c to ls.mod
	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add normal/datetime.c  
	(normal_mod_SOURCES): likewise
	(datetime_mod_SOURCES): Removed lib/datetime.c
	* conf/i386-efi.rmk: likewise
	* conf/i386-ieee1275.rmk: likewise	
	* conf/i386-pc.rmk: likewise
	* conf/powerpc-ieee1275.rmk: likewise
	* conf/sparc64-ieee1275.rmk: likewise	
	* conf/x86_64-efi.rmk: likewise
2009-04-05 20:19:05 +00:00
okuji
6842cec424 Undo r2063. 2009-04-04 09:22:35 +00:00
bean
838c454296 2009-04-04 Bean <bean123ch@gnail.com>
* include/grub/efi/api.h (grub_efi_configuration_table): Add packed
	attribute, otherwise the size would be wrong for i386 platform.

	* include/grub/pci.h (grub_pci_read_word): New inline function.
	(grub_pci_read_byte): Likewise.
	(grub_pci_write): Likewise.
	(grub_pci_write_word): Likewise.
	(grub_pci_write_byte): Likewise.

	* include/grub/pci.h (grub_pci_iteratefunc_t): Add NESTED_FUNC_ATTR.

	* loader/i386/efi/linux.c (fake_bios_data): Moved to loadbios module.
	(find_framebuf): Scan pci to locate the frame buffer address.

	* commands/efi/fixvideo.c: New file.

	* commands/efi/loadbios.c: Likewise.

	* commands/memrw.c: Likewise.

	* util/grub-dumpbios.in: Likewise.

	* conf/common.rmk (grub-dumpbios): New utility.
	(pkglib_MODULES): New module memrw.mod.
	(memrw_mod_SOURCE): New macro.
	(memrw_mod_CFLAGS): Likewise.
	(memrw_mod_LDFLAGS): Likewise.

	* conf/i386-efi.rmk (pkglig_MODULES): New module loadbios.mod and
	fixvideo.mod.
	(loadbios_mod_SOURCE): New macro.
	(loadbios_mod_CFLAGS): Likewise.
	(loadbios_mod_LDFLAGS): Likewise.
	(fixvideo_mod_SOURCE): Likewise.
	(fixvideo_mod_CFLAGS): Likewise.
	(fixvideo_mod_LDFLAGS): Likewise.

	* conf/x86_64.rmk (pkglig_MODULES): New module loadbios.mod and
	fixvideo.mod.
	(loadbios_mod_SOURCE): New macro.
	(loadbios_mod_CFLAGS): Likewise.
	(loadbios_mod_LDFLAGS): Likewise.
	(fixvideo_mod_SOURCE): Likewise.
	(fixvideo_mod_CFLAGS): Likewise.
	(fixvideo_mod_LDFLAGS): Likewise.
2009-04-04 08:08:01 +00:00
bean
da4c0bb629 2009-04-04 Bean <bean123ch@gnail.com>
* include/grub/util/misc.h: Add dummy function fsync for mingw.

	* util/misc.c: Likewise.
2009-04-04 07:42:13 +00:00
robertmh
ae68f4234b 2009-03-29 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_linux.in (linux_entry): New function.
        Factorize generation of Linux boot entries.
2009-03-29 02:23:12 +00:00
okuji
5709cfc4d1 2009-03-29 Yoshinori K. Okuji <okuji@enbug.org>
Make the format of Environment Block plain text. The boot loader
    part is not tested well yet.
    
    * util/grub-editenv.c (DEFAULT_ENVBLK_SIZE): New macro.
    (buffer): Removed.
    (envblk): Likewise.
    (usage): Remove "info" and "clear". Add "unset". Update the
    description of "set", as this does not delete variables any
    longer.
    (create_envblk_file): Complete rewrite.
    (open_envblk_file): Likewise.
    (cmd_info): Removed.
    (cmd_list): Likewise.
    (cmd_set): Likewise.
    (cmd_clear): Likewise.
    (list_variables): New function.
    (write_envblk): Likewise.
    (set_variables): Likewise.
    (unset_variables): Likewise.
    (main): Complete rewrite.

    * commands/loadenv.c (buffer): Removed.
    (envblk): Likewise.
    (open_envblk_file): New function.
    (read_envblk_file): Complete rewrite.
    (grub_cmd_load_env): Likewise.
    (grub_cmd_list_env): Likewise.
    (struct blocklist): New struct.
    (free_blocklists): New function.
    (check_blocklists): Likewise.
    (write_blocklists): Likewise.
    (grub_cmd_save_env): Complete rewrite.

    * include/grub/lib/envblk.h (GRUB_ENVBLK_SIGNATURE): Replaced with
    a plain text signature.
    (GRUB_ENVBLK_MAXLEN): Removed.
    (struct grub_envblk): Complete rewrite.
    (grub_envblk_find): Removed.
    (grub_envblk_insert): Likewise.
    (grub_envblk_open): New prototype.
    (grub_envblk_set): Likewise.
    (grub_envblk_delete): Put const to VALUE.
    (grub_envblk_iterate): Put const to NAME and VALUE.
    (grub_envblk_close): New prototype.
    (grub_envblk_buffer): New inline function.
    (grub_envblk_size): Likewise.

    * lib/envblk.c: Include grub/mm.h.
    (grub_env_find): Removed.
    (grub_envblk_open): New function.
    (grub_envblk_close): Likewise.
    (escaped_value_len): Likewise.
    (find_next_line): Likewise.
    (grub_envblk_insert): Removed.
    (grub_envblk_set): New function.
    (grub_envblk_delete): Complete rewrite.
    (grub_envblk_iterate): Likewise.
2009-03-28 19:58:15 +00:00
bean
b1b797cb1b 2009-03-21 Bean <bean123ch@gmail.com>
* commands/blocklist.c: Add include file <grub/command.h>, remove
	<grub/normal.h> and <grub/arg.h>.
	(grub_cmd_blocklist): Use the new command interface.
	(GRUB_MOD_INIT): Likewise.
	(GRUB_MOD_FINI): Likewise.
	* commands/boot.c: Likewise.
	* commands/cat.c: Likewise.
	* commands/cmp.c: Likewise.
	* commands/configfile.c: Likewise.
	* commands/crc.c: Likewise.
	* commands/echo.c: Likewise.
	* commands/halt.c: Likewise.
	* commands/handler.c: Likewise.
	* commands/hdparm.c: Likewise.
	* commands/help.c: Likewise.
	* commands/hexdump.c: Likewise.
	* commands/loadenv.c: Likewise.
	* commands/ls.c: Likewise.
	* commands/lsmmap.c: Likewise.
	* commands/lspci.c: Likewise.
	* commands/loadenv.c: Likewise.
	* commands/read.c: Likewise.
	* commands/reboot.c: Likewise.
	* commands/search.c: Likewise.
	* commands/sleep.c: Likewise.
	* commands/test.c: Likewise.
	* commands/usbtest.c: Likewise.
	* commands/videotest.c: Likewise.
	* commands/i386/cpuid.c: Likewise.
	* commands/i386/pc/halt.c: Likewise.
	* commands/i386/pc/play.c: Likewise.
	* commands/i386/pc/pxecmd.c: Likewise.
	* commands/i386/pc/vbeinfo.c: Likewise.
	* commands/i386/pc/vbetest.c: Likewise.
	* commands/ieee1275/suspend.c: Likewise.
	* disk/loopback.c: Likewise.
	* font/font_cmd.c: Likewise.
	* hello/hello.c: Likewise.
	* loader/efi/appleloader.c: Likewise.
	* loader/efi/chainloader.c: Likewise.
	* loader/i386/bsd.c: Likewise.
	* loader/i386/efi/linux.c: Likewise.
	* loader/i386/ieee1275/linux.c: Likewise.
	* loader/i386/linux.c: Likewise.
	* loader/i386/pc/chainloader.c: Likewise.
	* loader/i386/pc/linux.c: Likewise.
	* loader/powerpc/ieee1275/linux.c: Likewise.
	* loader/multiboot_loader.c: Likewise.
	* term/gfxterm.c: Likewise.
	* term/i386/pc/serial.c: Likewise.
	* term/terminfo.c: Likewise.

	* term/i386/pc/vesafb.c: Removed <grub/arg.h>.
	* term/i386/pc/vga.c: Likewise.
	* video/readers/jpeg.c: Likewise.
	* video/readers/png.c: Likewise.
	* video/readers/tga.c: Likewise.

	* util/grub-fstest (cmd_loopback): Removed.
	(cmd_blocklist): Likewise.
	(cmd_ls): Likewise.
	(grub_register_command): Likewise.
	(grub_unregister_command): Likewise.
	(execute_command): Use grub_command_find to locate command and execute
	it.

	* include/grub/efi/chainloader.h: Removed.
	* loader/efi/chainloader_normal.c: Likewise.
	* loader/i386/bsd_normal.c: Likewise.
	* loader/i386/pc/chainloader_normal.c: Likewise.
	* loader/i386/pc/multiboot_normal.c: Likewise.
	* loader/linux_normal.c: Likewise.
	* loader/multiboot_loader_normal.c: Likewise.
	* loader/powerpc/ieee1275/linux_normal.c: Likewise.

	* gencmdlist.sh: Scan new registration command grub_register_extcmd
	and grub_register_command_p1.

	* conf/common.rmk (grub_fstest_SOURCES): Add kern/list.c,
	kern/command.c, lib/arg.c and commands/extcmd.c.
	(pkglib_MODULES): Remove boot.mod, and minicmd.mod and extcmd.mod.
	(minicmd_mod_SOURCES): New variable.
	(minicmd_mod_CFLAGS): Likewise.
	(minicmd_mod_LDFLAGS): Likewise.
	(extcmd_mod_SOURCES): Likewise.
	(extcmd_mod_CFLAGS): Likewise.
	(extcmd_mod_LDFLAGS): Likewise.
	(boot_mod_SOURCES): Removed.
	(boot_mod_CFLAGS): Likewise.
	(boot_mod_LDFLAGS): Likewise.

	* conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/command.c and
	kern/corecmd.c.
	(kernel_img_HEADERS): Add command.h.
	(grub_emu_SOURCES): Remove commands/boot.c and normal/arg.c, add
	commands/minicmd.c, kern/command.c, kern/corecmd.c, commands/extcmd.c
	and lib/arg.c.
	(pkglib_MODULES): Change _linux.mod, _chain.mod, _bsd.mod and
	_multiboot.mod as linux.mod, chain.mod, bsd.mod and multiboot.mod,
	remove the corresponding normal mode command.
	(normal_mod_SOURCES): Remove normal/arg.c.
	* conf/i386-coreboot.rmk: Likewise.
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.

	* include/grub/arg.h: Move from here ...
	* include/grub/lib/arg.h: ... to here.

	* normal/arg.c: Move from here ...
	* lib/arg.c: ... to here.

	* commands/extcmd.c: New file.
	* commands/minicmd.c: Likewise.
	* include/grub/command.h: Likewise.
	* include/grub/extcmd.h: Likewise.
	* kern/command.c: Likewise.
	* kern/corecmd.c: Likewise.

	* kern/list.c (grub_list_iterate): Return int instead of void.
	(grub_list_insert): New function.
	(grub_prio_list_insert): Likewise.

	* kern/rescue.c (grub_rescue_command): Removed.
	(grub_rescue_command_list): Likewise.
	(grub_rescue_register_command): Likewise.
	(grub_rescue_unregister_command): Likewise.
	(grub_rescue_cmd_boot): Move to minicmd.c
	(grub_rescue_cmd_help): Likewise.
	(grub_rescue_cmd_info): Likewise.
	(grub_rescue_cmd_boot): Likewise.
	(grub_rescue_cmd_testload): Likewise.
	(grub_rescue_cmd_dump): Likewise.
	(grub_rescue_cmd_rmmod): Likewise.
	(grub_rescue_cmd_lsmod): Likewise.
	(grub_rescue_cmd_exit): Likewise.
	(grub_rescue_print_devices): Moved to corecmd.c.
	(grub_rescue_print_files): Likewise.
	(grub_rescue_cmd_ls): Likewise.
	(grub_rescue_cmd_insmod): Likewise.
	(grub_rescue_cmd_set): Likewise.
	(grub_rescue_cmd_unset): Likewise.
	(attemp_normal_mode): Use grub_command_find to get normal module.
	(grub_enter_rescue_mode): Use grub_register_core_commands to register
	commands, remove grub_rescue_regiter_command calls.

	* normal/command.c (grub_regiser_command): Removed.
	(grub_unregister_command): Likewise.
	(grub_command_find): Likewise.
	(grub_iterate_commands): Likewise.
	(rescue_command): Likewise.
	(export_command): Moved to corecmd.c.
	(set_command): Removed.
	(unset_command): Likewise.
	(insmod_command): Likewise.
	(rmmod_command): Likewise.
	(lsmod_command): Likewise.
	(grub_command_init): Likewise.

	* normal/completion.c (iterate_command): Use cmd->prio to check for
	active command.
	(complete_arguments): Use grub_extcmd_t structure to find options.
	(grub_normal_do_completion): Change function grub_iterate_commands to
	grub_command_iterate.

	* normal/execute.c (grub_script_execute_cmd): No need to parse
	argument here.

	* normal/main.c (grub_dyncmd_dispatcher): New function.
	(read_command_list): Register unload commands as dyncmd.
	(grub_cmd_normal): Use new command interface, register rescue,
	unregister normal at entry, register normal, unregister rescue at exit.

	* include/grub/list.h (grub_list_test_t): New type.
	(grub_list_iterate): Return int instead of void.
	(grub_list_insert): New function.
	(GRUB_AS_NAMED_LIST_P): New macro.
	(GRUB_AS_PRIO_LIST): Likewise.
	(GRUB_AS_PRIO_LIST_P): Likewise.
	(GRUB_PRIO_LIST_PRIO_MASK): New constant.
	(GRUB_PRIO_LIST_FLAG_ACTIVE): Likewise.
	(grub_prio_list): New structure.
	(grub_prio_list_insert): New function.
	(grub_prio_list_remove): New inline function.

	* include/grub/normal.h: Remove <grub/arg.h>, add <grub/command.h>.
	(GRUB_COMMAND_FLAG_CMDLINE): Moved to command.h.
	(GRUB_COMMAND_FLAG_MENU): Likewise.
	(GRUB_COMMAND_FLAG_BOTH): Likewise.
	(GRUB_COMMAND_FLAG_TITLE): Likewise.
	(GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
	(GRUB_COMMAND_FLAG_NO_ARG_PARSE): Removed.
	(GRUB_COMMAND_FLAG_NOT_LOADED): Likewise.
	(grub_command): Likewise.
	(grub_register_command): Likewise.
	(grub_command_find): Likewise.
	(grub_iterate_commands): Likewise.
	(grub_command_init): Likewise.
	(grub_arg_parse): Likewise.
	(grub_arg_show_help): Likewise.

	* include/grub/rescue.h (grub_rescue_register_command): Removed.
	(grub_rescue_unregister_command): Likewise.

	* include/grub/i386/bsd.h: Remove grub_rescue_cmd_freebsd,
	grub_rescue_cmd_openbsd, grub_rescue_cmd_netbsd,
	grub_rescue_cmd_freebsd_loadenv and grub_rescue_cmd_freebsd_module.

	* include/grub/i386/efi/loader.h: Remove grub_rescue_cmd_linux and
	grub_rescue_cmd_initrd.
	* include/grub/i386/loader.h: Likewise.
	* include/grub/x86_64/loader.h: Likewise.

	* include/grub/i386/pc/chainloader.h: Remove grub_chainloader_cmd.
2009-03-21 08:39:59 +00:00
bean
1f4147aaf0 2009-03-21 Bean <bean123ch@gmail.com>
* util/hostdisk.c (read_device_map): Use grub_util_get_disk_size
	instead of stat in mingw environment.

	* util/misc.c (grub_millisleep): Use Sleep in mingw environment.

	* aclocal.m4 (grub_CHECK_LINK_DIR): New function.

	* configure.ac: Use grub_CHECK_LINK_DIR to determine whether to use
	AC_CONFIG_LINKS.
2009-03-21 07:48:28 +00:00
fzielcke
2a54b55917 2009-03-04 Felix Zielcke <fzielcke@z-51.de>
* util/misc.c: Include <time.h>.
	(grub_millisleep): New function.
2009-03-04 10:25:31 +00:00
bean
71b9f36193 2009-03-01 Bean <bean123ch@gmail.com>
* commands/terminal.c: Removed.

	* commands/handler.c: New file.

	* include/grub/list.h: Likewise.

	* include/grub/handler.h: Likewise.

	* kern/list.c: Likewise.

	* kern/handler.c: Likewise.

	* kern/term.h: Include header file <grub/handler.h>.
	(grub_term_input): Move next field to the beginning.
	(grub_term_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_output_class): Likewise.
	(grub_term_register_input): Changed to inline function.
	(grub_term_register_output): Likewise.
	(grub_term_unregister_input): Likewise.
	(grub_term_unregister_output): Likewise.
	(grub_term_set_current_input): Likewise.
	(grub_term_set_current_output): Likewise.
	(grub_term_get_current_input): Likewise.
	(grub_term_get_current_output): Likewise.
	(grub_term_iterate_input): Removed.
	(grub_term_iterate_output): Likewise.

	* kern/term.c (grub_term_list_input): Removed.
	(grub_term_list_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_output_class): Likewise.
	(grub_cur_term_input): Change varaible as macro.
	(grub_cur_term_output): Likewise.
	(grub_term_register_input): Removed.
	(grub_term_register_output): Likewise.
	(grub_term_unregister_input): Likewise.
	(grub_term_unregister_output): Likewise.
	(grub_term_set_current_input): Likewise.
	(grub_term_set_current_output): Likewise.
	(grub_term_iterate_input): Likewise.
	(grub_term_iterate_output): Likewise.
	(grub_term_get_current_input): Likewise.
	(grub_term_get_current_output): Likewise.

	* util/grub-editenv.c: Include header file <grub/handler.h>.
	(grub_term_get_current_input): Removed.
	(grub_term_get_current_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_outout_class): Likewise.

	* util/grub-fstest.c (grub_term_get_current_input): Removed.
	(grub_term_get_current_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_outout_class): Likewise.

	* util/grub-probe.c (grub_term_get_current_input): Removed.
	(grub_term_get_current_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_outout_class): Likewise.

	* util/i386/pc/grub-setup.c (grub_term_get_current_input): Removed.
	(grub_term_get_current_output): Likewise.
	(grub_term_input_class): New variable.
	(grub_term_outout_class): Likewise.

	* conf/common.rmk (pkglib_MODULES): Replace terminal with handler.
	(terminal_mod_SOURCES): Likewise.
	(terminal_mod_CFLAGS): Likewise.
	(terminal_mod_LDFLAGS): Likewise.

	* conf/i386-pc.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_img_SOURCES): Add list.c and handler.c.
	(kernel_img_HEADERS): Add list.h and handler.h.

	* conf/i386-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_mod_SOURCES): Add list.c and handler.c.
	(kernel_mod_HEADERS): Add list.h and handler.h.

	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_elf_SOURCES): Add list.c and handler.c.
	(kernel_elf_HEADERS): Add list.h and handler.h.

	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_elf_SOURCES): Add list.c and handler.c.
	(kernel_elf_HEADERS): Add list.h and handler.h.

	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_mod_SOURCES): Add list.c and handler.c.
	(kernel_mod_HEADERS): Add list.h and handler.h.

	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
	handler.c.
	(kernel_elf_SOURCES): Add list.c and handler.c.
	(kernel_elf_HEADERS): Add list.h and handler.h.
2009-03-01 17:51:44 +00:00