Vladimir 'phcoder' Serbinenko
bef393d4b3
fix qemu and coreboot ports
2009-12-05 18:46:28 +01:00
Robert Millan
69ac6c405a
Merge from trunk
2009-12-04 00:04:41 +00:00
Robert Millan
6b8474f8e8
2009-12-04 Robert Millan <rmh.grub@aybabtu.com>
...
* commands/halt.c: Replace misc arch-specific headers with
`<grub/misc.h>'.
* commands/reboot.c: Likewise.
* commands/i386/pc/halt.c: Replace `<grub/machine/init.h>' with
`<grub/misc.h>'.
* conf/i386-coreboot.rmk (kernel_img_HEADERS): Remove `cpu/reboot.h'.
(halt_mod_SOURCES): Move `kern/i386/halt.c' from here ...
(kernel_img_SOURCES): ... to here.
* include/grub/efi/efi.h (grub_reboot, grub_halt): Remove prototypes.
* include/grub/i386/pc/init.h: Likewise.
* include/grub/powerpc/ieee1275/kernel.h: Likewise.
* include/grub/sparc64/ieee1275/kernel.h: Likewise.
* include/grub/misc.h (grub_reboot, grub_halt): New prototypes.
* include/grub/i386/halt.h: Remove.
* include/grub/i386/reboot.h: Likewise.
* kern/i386/halt.c: Remove `<grub/cpu/halt.h>'.
2009-12-03 23:07:29 +00:00
Robert Millan
5239348f18
2009-12-02 Robert Millan <rmh.grub@aybabtu.com>
...
Use the same reboot approach on i386 coreboot and qemu as we do on
BIOS.
* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add `cpu/reboot.h'.
(reboot_mod_SOURCES): Remove `kern/i386/reboot.c'.
* kern/i386/reboot.c: Remove.
* include/grub/i386/reboot.h (grub_reboot): Export function.
* kern/i386/pc/startup.S (grub_reboot): Move from here ...
* kern/i386/realmode.S (grub_reboot): ... to here. Jump to
0xf000:0xfff0 instead of 0xffff:0x0000.
[!GRUB_MACHINE_PCBIOS] (prot_to_real): Do not restore interrupts.
* kern/i386/qemu/startup.S: Include `"../realmode.S"'.
2009-12-02 22:48:02 +00:00
Vladimir 'phcoder' Serbinenko
4f41a23d4e
merge mainline into mips
2009-12-02 09:51:36 +01:00
Robert Millan
7656de4f5b
2009-11-26 Robert Millan <rmh.grub@aybabtu.com>
...
* conf/i386-coreboot.rmk: Cleanup stale filenames from my previous
commit.
* conf/i386-efi.rmk: Likewise.
* conf/i386-ieee1275.rmk: Likewise.
* conf/powerpc-ieee1275.rmk: Likewise.
* conf/sparc64-ieee1275.rmk: Likewise.
* conf/x86_64-efi.rmk: Likewise.
2009-11-26 00:45:53 +00:00
Robert Millan
8a4c07fd6a
2009-11-26 Robert Millan <rmh.grub@aybabtu.com>
...
* conf/common.rmk (sbin_UTILITIES): Add `grub-mkdevicemap'.
(grub_mkdevicemap_SOURCES): New variable.
(grub_probe_SOURCES, grub_fstest_SOURCES, grub_mkfont_SOURCES)
(grub_mkrelpath_SOURCES, grub_editenv_SOURCES)
(grub_pe2elf_SOURCES): Add `gnulib/progname.c'.
* conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-mkdevicemap'.
(grub_mkdevicemap_SOURCES): Remove.
* 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.
* util/elf/grub-mkimage.c: Include `<grub/i18n.h>' and `"progname.h"'.
(usage): Fix strings to use `program_name'.
(main): Initialize gettext.
* util/grub-editenv.c: Likewise.
* util/grub-emu.c: Likewise.
* util/grub-fstest.c: Likewise.
* util/grub-mkdevicemap.c: Likewise.
* util/grub-mkfont.c: Likewise.
* util/grub-mkrelpath.c: Likewise.
* util/grub-pe2elf.c: Likewise.
* util/grub-probe.c: Likewise.
* util/sparc64/ieee1275/grub-mkimage.c: Likewise.
* util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
* util/sparc64/ieee1275/grub-setup.c: Likewise.
* util/misc.c: Include `"progname.h"'.
(progname): Remove variable.
(grub_util_warn, grub_util_info, grub_util_error): Use `program_name'.
2009-11-25 23:10:02 +00:00
Vladimir 'phcoder' Serbinenko
bde358ac91
merged with mainline
2009-11-25 23:17:32 +01:00
Carles Pina i Estany
4a8572e9d8
2009-11-24 Carles Pina i Estany <carles@pina.cat>
...
* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h.
* 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.
* gettext/gettex.c: Include <grub/i18n.h>.
* include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from
here ...
* include/grub/i18n.h: ... to here
* include/grub/i18n.h: ... to here.
* kern/misc.c: Include <grub/i18n.h>
(grub_gettext_dummy): Move above user.
2009-11-24 21:42:14 +00:00
Felix Zielcke
fefa1b7deb
2009-11-24 Felix Zielcke <fzielcke@z-51.de>
...
* conf/i386-coreboot.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
2009-11-24 15:47:48 +01:00
Robert Millan
f515aa6224
2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
...
* script/sh/execute.c: Move from here ...
* script/execute.c: ... to here. Update all users.
* script/sh/function.c: Move from here ...
* script/function.c: ... to here. Update all users.
* script/sh/lexer.c: Move from here ...
* script/lexer.c: ... to here. Update all users.
* script/sh/main.c: Move from here ...
* script/main.c: ... to here. Update all users.
* script/sh/parser.y: Move from here ...
* script/parser.y: ... to here. Update all users.
* script/sh/script.c: Move from here ...
* script/script.c: ... to here. Update all users.
2009-11-23 15:37:33 +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
Vladimir 'phcoder' Serbinenko
5afcd00788
merge mainstream into mips
2009-11-21 21:45:32 +01:00
Felix Zielcke
2af8f0f4fc
2009-11-16 Felix Zielcke <fzielcke@z-51.de>
...
Enable ata.mod on x86_64-efi, i386-efi and i386-ieee1275.
* disk/ata.c (grub_ata_dumpinfo): Add a cast.
(grub_ata_readwrite): Likewise. Update 2 format strings.
(grub_atapi_read): Likewise.
* conf/i386-coreboot.rmk (pkglib_MODULES): Move `ata.mod' from here ...
* conf/i386.rmk (pkglib_MODULES): ... to here ...
* conf/x86_64-efi.rmk (pkglib_MODULES): ... and here.
* conf/i386-coreboot.rmk (ata_mod_SOURCES, ata_mod_CFLAGS)
(ata_mod_LDFLAGS): Move from here ...
* conf/i386.rmk: ... to here ...
* conf/x86_64-efi.rmk: ... and here.
* conf/i386-pc.rmk (pkglib_MODULES): Remove `ata.mod'
(ata_mod_SOURCES, ata_mod_CFLAGS, ata_mod_LDFLAGS): Remove.
2009-11-16 16:01:15 +01: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
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
Vladimir 'phcoder' Serbinenko
da547ac323
merged with mainstream
2009-11-09 21:16:25 +01:00
Robert Millan
ef4b915ad9
Implement grub-mkrescue for coreboot (needs external grub-mkisofs)
2009-11-08 20:56:32 +00:00
robertmh
fa6e945f50
2009-10-29 Robert Millan <rmh.grub@aybabtu.com>
...
Revert SVN r2660.
* conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): Moved from here ...
* conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
* conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): ... and here.
* 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-10-29 10:03:13 +00:00
robertmh
94180ff6c7
2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
...
* conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): Moved
from here ...
* conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
* conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): Remove.
* 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-10-26 18:02:19 +00:00
phcoder
f651d13a18
split serial
2009-10-10 20:59:18 +02:00
blusseau
f79572cdd6
2009-09-02 Yves BLUSSEAU <blusseau@zetam.org>
...
Embedding loadenv module into grub-emu
* conf/i386-pc.rmk (grub_emu_SOURCES): add lib/envblk.c and
commands/loadenv.c
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise
* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise
* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise
2009-09-03 17:07:08 +00:00
cjwatson
4cbe67e509
2009-08-28 Colin Watson <cjwatson@ubuntu.com>
...
2009-08-28 Robert Millan <rmh.grub@aybabtu.com>
Add `getkeystatus' terminal method. Add a new `keystatus' command
to query it.
* include/grub/term.h (GRUB_TERM_STATUS_SHIFT,
GRUB_TERM_STATUS_CTRL, GRUB_TERM_STATUS_ALT): Definitions for
modifier key bitmasks.
(struct grub_term_input): Add `getkeystatus' member.
(grub_getkeystatus): Add prototype.
* kern/term.c (grub_getkeystatus): New function.
* include/grub/i386/pc/memory.h
(GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR): New macro.
(struct grub_machine_bios_data_area): Define necessary parts of BIOS
Data Area layout.
* term/i386/pc/console.c (grub_console_getkeystatus): New function.
(grub_console_term_input): Set `getkeystatus' member.
* term/usb_keyboard.c (grub_usb_hid): Macroify HID protocol
constants.
(grub_usb_keyboard_getreport): Likewise.
(grub_usb_keyboard_checkkey): Likewise.
(grub_usb_keyboard_getkeystatus): New function.
(grub_usb_keyboard_term): Set `getkeystatus' member.
* commands/keystatus.c: New file.
* conf/common.rmk (pkglib_MODULES): Add keystatus.mod.
(keystatus_mod_SOURCES): New variable.
(keystatus_mod_CFLAGS): Likewise.
(keystatus_mod_LDFLAGS): Likewise.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add
commands/keystatus.c.
* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
* DISTLIST: Add commands/keystatus.c.
2009-08-28 13:20:34 +00:00
phcoder
6e2a90859a
2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
...
Split befs.mod and afs.mod into *_be.mod and *.mod
* conf/common.rmk (grub_probe_SOURCES): Add afs_be.c and befs_be.c.
(grub_fstest_SOURCES): Likewise.
(pkglib_MODULES): Add afs_be.mod and befs_be.mod.
(afs_be_mod_SOURCES): New variable.
(afs_be_mod_CFLAGS): Likewise.
(afs_be_mod_LDFLAGS): Likewise.
(befs_be_mod_SOURCES): Likewise.
(befs_be_mod_CFLAGS): Likewise.
(befs_be_mod_LDFLAGS): Likewise.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add afs_be.c and befs_be.c.
* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
(grub_emu_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
* fs/afs_be.c: New file.
* fs/befs_be.c: New file.
* fs/afs.c (GRUB_AFS_FSNAME_SUFFIX): New definition.
(GRUB_AFS_FSNAME): Use GRUB_AFS_FSNAME_SUFFIX.
(U16): Replaced with ...
(grub_afs_to_cpu16): ...this. All users updated.
(U32): Replaced with ...
(grub_afs_to_cpu32): ...this. All users updated.
(U64): Replaced with ...
(grub_afs_to_cpu64): ...this. All users updated.
(GRUB_AFS_BO_LITTLE_ENDIAN): Remove.
(GRUB_AFS_BO_BIG_ENDIAN): Likewise.
(grub_afs_validate_sblock): Check only one endiannness.
(GRUB_MOD_INIT (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
(GRUB_MOD_INIT (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
(GRUB_MOD_INIT (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
(GRUB_MOD_INIT (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
(GRUB_MOD_FINI (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
(GRUB_MOD_FINI (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
(GRUB_MOD_FINI (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
(GRUB_MOD_FINI (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
2009-08-28 13:01:26 +00:00
phcoder
1ae2078cd8
2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
...
Enable bsd.mod on coreboot.
* conf/i386-coreboot.rmk (pkglib_MODULES): Add bsd.mod.
(bsd_mod_SOURCES): New variable.
(bsd_mod_CFLAGS): Likewise.
(bsd_mod_LDFLAGS): Likewise.
(bsd_mod_ASFLAGS): Likewise.
* loader/i386/bsd.c [!GRUB_MACHINE_PCBIOS]: Fix includes.
(grub_bsd_get_device) [!GRUB_MACHINE_PCBIOS]: Set *biosdev to 0xff.
2009-08-25 23:18:48 +00:00
phcoder
e7e1f93ff6
2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
...
Authentication support.
* commands/password.c: New file.
* conf/common.rmk (pkglib_MODULES): Add password.mod.
(password_mod_SOURCES): New variable.
(password_mod_CFLAGS): Likewise.
(password_mod_LDFLAGS): Likewise.
(normal_mod_SOURCES): Add normal/auth.c.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and
normal/auth.c.
* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
* include/grub/auth.h: New file.
* include/grub/err.h (grub_err_t): New enum value
GRUB_ERR_ACCESS_DENIED.
* include/grub/menu.h (grub_menu_entry): New fields 'restricted' and
'users'.
* include/grub/normal.h (grub_cmdline_get): New argument 'history'.
* normal/cmdline.c (grub_cmdline_get): New argument 'history'. All
users updated.
* normal/auth.c: New file.
* normal/main.c (grub_normal_add_menu_entry): Handle --users option.
(grub_cmdline_run): Don't allow to go to command line without
authentication.
* normal/menu.c (grub_menu_execute_entry): Handle restricted entries.
* normal/menu_entry.c (grub_menu_entry_run): Don't allow editing
menuentry without superuser rights.
* normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if
user isn't a superuser.
2009-08-24 23:55:06 +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
phcoder
c0d8b5d42a
2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
...
Split ufs.mod into ufs1.mod and ufs2.mod.
* conf/common.rmk (grub_probe_SOURCES): Add fs/ufs2.c.
(grub_fstest_SOURCES): Likewise.
(pkglib_MODULES): Remove ufs.mod. Add ufs1.mod and ufs2.mod.
(ufs_mod_SOURCES): Remove.
(ufs_mod_CFLAGS): Likewise.
(ufs_mod_LDFLAGS): Likewise.
(ufs1_mod_SOURCES): New variable.
(ufs1_mod_CFLAGS): Likewise.
(ufs1_mod_LDFLAGS): Likewise.
(ufs2_mod_SOURCES): New variable.
(ufs2_mod_CFLAGS): Likewise.
(ufs2_mod_LDFLAGS): Likewise.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add fs/ufs2.c.
* conf/i386-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
Likewise.
(grub_emu_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
(grub_setup_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64.rmk (grub_emu_SOURCES): Likewise.
(grub_setup_SOURCES): Likewise.
* conf/x86_64-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
Likewise.
* fs/ufs2.c: New file.
* fs/ufs.c: Separate UFS1 from UFS2 by using preprocessor.
2009-08-14 13:31:09 +00:00
phcoder
1ef44b802b
2009-07-20 Vladimir Serbinenko <phcoder@gmail.com>
...
Add BFS support
* conf/common.rmk (grub_probe_SOURCES): Add fs/befs.c.
(grub_fstest_SOURCES): Likewise.
(pkglib_MODULES): Add befs.mod.
(befs_mod_SOURCES): New variable.
(befs_mod_CFLAGS): Likewise.
(befs_mod_LDFLAGS): Likewise.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
(grub_setup_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
(grub_setup_SOURCES): Likewise.
* fs/befs.c: New file.
* fs/afs.c (GRUB_AFS_FSNAME): New declaration.
(GRUB_AFS_SBLOCK_SECTOR): Likewise.
(GRUB_AFS_SBLOCK_MAGIC1) [MODE_BFS]: New conditional declaration.
(GRUB_AFS_BTREE_MAGIC) [MODE_BFS]: Likewise
(B_KEY_INDEX_ALIGN): New declaration.
(B_KEY_INDEX_OFFSET): Use B_KEY_INDEX_ALIGN.
(grub_afs_bnode) [MODE_BFS]: Make key_count and key_size 16-bit
(grub_afs_btree) [MODE_BFS]: New conditional declaration.
(grub_afs_sblock) [MODE_BFS]: Remove link_count.
(grub_afs_validate_sblock) [MODE_BFS]: Support BFS
(grub_afs_mount) [MODE_BFS]: Likewise.
(grub_afs_dir) [MODE_BFS]: Divide mtime by 65536 and not 1000000.
(grub_afs_fs): Use GRUB_AFS_FSNAME
(GRUB_MOD_INIT (afs)) [MODE_BFS]: Rename to ...
(GRUB_MOD_INIT (befs)) [MODE_BFS]: ... this
(GRUB_MOD_FINI (afs)) [MODE_BFS]: Rename to ...
(GRUB_MOD_FINI (befs)) [MODE_BFS]: ... this
2009-07-20 21:18:59 +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
robertmh
aaf53e3ce3
2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
...
* conf/i386.rmk (setjmp_mod_SOURCES)
(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Move to ...
* conf/common.rmk (setjmp_mod_SOURCES)
(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): ... here, and modify
to use $(target_cpu).
* conf/x86_64-efi.rmk (setjmp_mod_SOURCES)
(setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Remove.
* conf/powerpc-ieee1275.rmk: Likewise.
* conf/sparc64-ieee1275.rmk: Likewise.
* conf/i386-pc.rmk (kernel_img_SOURCES): Use
$(target_cpu) for kern/$(target_cpu)/dl.c.
* conf/i386-efi.rmk: Likewise.
* conf/i386-ieee1275.rmk: Likewise.
* conf/x86_64-efi.rmk: Likewise.
* conf/i386-coreboot.rmk: Likewise.
* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Use
$(target_cpu) for kern/$(target_cpu)/dl.c and for
kern/$(target_cpu)/cache.S.
* conf/sparc64-ieee1275.rmk: Likewise.
2009-07-01 12:59:47 +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
robertmh
387a140ce6
2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
...
* conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/misc.S'.
* conf/i386-ieee1275.rmk: Likewise.
* conf/i386-coreboot.rmk: Likewise.
* kern/i386/pc/startup.S (grub_stop): Remove function.
* kern/i386/ieee1275/startup.S: Likewise.
* kern/i386/coreboot/startup.S: Likewise.
* kern/i386/misc.S (grub_stop): New function.
2009-06-22 18:04:37 +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
proski
c22a006a07
2009-06-17 Pavel Roskin <proski@gnu.org>
...
* conf/i386-coreboot.rmk (kernel_elf_SOURCES): Remove
term/i386/pc/at_keyboard.c, it doesn't need to be compiled into
the kernel.
* kern/i386/coreboot/init.c: Don't call grub_at_keyboard_init()
and grub_at_keyboard_fini(), it's done on module load and
unload.
2009-06-17 19:39:36 +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
phcoder
9c6f459688
2009-06-16 Vladimir Serbinenko <phcoder@gmail.com>
...
Probe command
* commands/probe.c: new file
* conf/common.rmk (pkglib_MODULES): add probe.mod
(probe_mod_SOURCES): new variable
(probe_mod_CFLAGS): likewise
(probe_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
2009-06-15 22:41:42 +00:00
phcoder
63963d17d0
2009-06-11 Vladimir Serbinenko <phcoder@gmail.com>
...
Drivemap fixes
* commands/i386/pc/drivemap.c (grub_get_root_biosnumber_drivemap):
new function
(grub_get_root_biosnumber_saved): new variable
(GRUB_MOD_INIT): register grub_get_root_biosnumber_drivemap
(GRUB_MOD_FINI): unregister grub_get_root_biosnumber_drivemap
* commands/i386/pc/drivemap_int13h.S (grub_drivemap_handler): restore
%dx after the call if necessary
* conf/common.rmk (pkglib_MODULES): remove boot.mod
(boot_mod_SOURCES): remove
(boot_mod_CFLAGS): remove
(boot_mod_LDFLAGS): remove
* conf/i386-coreboot.rmk (pkglib_MODULES): add boot.mod
(boot_mod_SOURCES): new variable
(boot_mod_CFLAGS): likewise
(boot_mod_LDFLAGS): likewise
* 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
* include/grub/i386/pc/biosnum.h: new file
* lib/i386/pc/biosnum.c: likewise
* loader/i386/bsd.c (grub_bsd_get_device): use grub_get_root_biosnumber
* loader/i386/multiboot.c (grub_multiboot_get_bootdev): likewise
* loader/i386/pc/chainloader.c (grub_chainloader_cmd): likewise
2009-06-11 16:13:39 +00:00
phcoder
2eac4c1611
2009-05-09 Vladimir Serbinenko <phcoder@gmail.com>
...
gptsync
* commands/gptsync.c: new file
* conf/common.rmk (pkglib_MODULES): add gptsync.mod
(gptsync_mod_SOURCES): new variable
(gptsync_mod_CFLAGS): likewise
(gptsync_mod_LDFLAGS): likewise
* include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_NTFS):
new definition
(GRUB_PC_PARTITION_TYPE_HFS): likewise
* conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/gptsync.c
* conf/i386-ieee1275.rmk: likewise
* conf/i386-pc.rmk: likewise
* conf/powerpc-ieee1275.rmk: likewise
2009-05-09 11:04:08 +00:00
fzielcke
afd5c11527
2009-05-04 Felix Zielcke <fzielcke@z-51.de>
...
* conf/i386-efi.rmk (grub_emu_SOURCES): Remove `normal/execute.c',
`normal/lexer.c', `kern/rescue.c', `normal/function.c', `normal/misc.c'
and `normal/script.c'. Add `kern/rescue_reader.c',
`kern/rescue_parser.c', `script/sh/main.c', `script/sh/execute.c',
`script/sh/function.c', `script/sh/lexer.c', `script/sh/script.c' and
`grub_script.tab.c'.
* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
* conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
2009-05-04 17:49:57 +00:00
phcoder
09d842b9c6
2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
...
Mmap services
* loader/i386/efi/linux.c (grub_linux_boot): use grub_mmap_iterate
* loader/i386/linux.c (find_mmap_size): likewise
(allocate_pages): likewise
* loader/i386/multiboot.c (grub_get_multiboot_mmap_len): likewise
(grub_fill_multiboot_mmap): likewise
(grub_multiboot): use grub_mmap_get_lower and grub_mmap_get_upper
* loader/i386/pc/linux.c (grub_cmd_linux): use grub_mmap_get_lower
* include/grub/i386/bsd.h (OPENBSD_MMAP_AVAILABLE): new definition
(OPENBSD_MMAP_RESERVED): likewise
* include/grub/i386/pc/memory.h: include grub/memory.h
(grub_lower_mem): removed
(grub_upper_mem): likewise
(GRUB_MACHINE_MEMORY_ACPI): new definition
(GRUB_MACHINE_MEMORY_NVS): likewise
(GRUB_MACHINE_MEMORY_MAX_TYPE): likewise
(GRUB_MACHINE_MEMORY_HOLE): likewise
(grub_machine_mmap_register): likewise
(grub_machine_mmap_unregister): likewise
(grub_machine_get_upper): likewise
(grub_machine_get_lower): likewise
(grub_machine_get_post64): likewise
* include/grub/i386/efi/memory.h: new file
* include/grub/x86_64/efi/memory.h: likewise
* include/grub/efi/memory.h: likewise
* conf/i386-pc.rmk (pkglib_MODULES): added mmap.mod
(mmap_mod_SOURCES): new variable
(mmap_mod_LDFLAGS): likewise
(mmap_mod_ASFLAGS): likewise
* conf/i386-coreboot.rmk: likewise
* conf/i386-ieee1275.rmk: likewise
* conf/i386-efi.rmk: likewise
* conf/x86_64-efi.rmk: likewise
* include/grub/types.h (UINT_TO_PTR): new macro
(PTR_TO_UINT32): likewise
(PTR_TO_UINT64): likewise
* include/grub/memory.h: new file
* mmap/i386/pc/mmap.c: likewise
* mmap/i386/pc/mmap_helper.S: likewise
* mmap/i386/uppermem.c: likewise
* mmap/mmap.c: likewise
* mmap/efi/mmap.c: likewise
* kern/i386/coreboot/init.c (grub_machine_init): don't use
grub_upper_mem
* kern/i386/pc/init.c (grub_lower_mem): removed variable
(grub_upper_mem): likewise
(grub_machine_init): don't use grub_upper_mem,
make grub_lower_mem local
* loader/i386/bsd.c (grub_openbsd_boot): use grub_mmap_get_lower,
grub_mmap_iterate and grub_mmap_get_upper
(grub_netbsd_boot): use grub_mmap_get_lower and grub_mmap_get_upper
2009-05-02 21:46:34 +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
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
phcoder
0d5d565326
2009-04-15 Vladimir Serbinenko <phcoder@gmail.com>
...
Move loader out of the kernel
* kern/loader.c: moved to ...
* commands/boot.c: ... moved here
* commands/minicmd.c (grub_mini_cmd_boot): moved to ...
* commands/boot.c (grub_cmd_boot): moved here. All users updated
* include/grub/kernel.h (grub_machine_fini): export
* include/grub/loader.h (grub_loader_is_loaded): update declaration
(grub_loader_set): likewise
(grub_loader_unset): likewise
(grub_loader_boot): likewise
* conf/common.rmk: new module boot.mod
(pkglib_MODULES): add boot.mod
* conf/i386-coreboot.rmk (kernel_elf_SOURCES): remove kern/loader.c
(grub_emu_SOURCES): likewise
* conf/i386-efi.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
* conf/i386-ieee1275.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
* conf/i386-pc.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
* conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
* conf/sparcs64-ieee1275.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
* conf/x86_64-efi.rmk (kernel_elf_SOURCES): likewise
(grub_emu_SOURCES): likewise
2009-04-15 12:45:50 +00:00
phcoder
13c007813a
2009-04-15 Vladimir Serbinenko <phcoder@gmail.com>
...
Restore grub-emu
* conf/i386-pc.rmk (grub_emu_SOURCES): add normal/handler.c
* conf/i386-coreboot.rmk: likewise
* conf/i386-ieee1275.rmk: likewise
* conf/powerpc-ieee1275.rmk: likewise
2009-04-15 12:32:08 +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
phcoder
ea761d4014
2009-04-06 Vladimir Serbinenko <phcoder@gmail.com>
...
Parttool
* parttool/pcpart.c: new file
* commands/parttool.c: likewise
* conf/common.rmk (pkglib_MODULES): Added parttool.mod and pcpart.mod
(parttool_mod_SOURCES): new variable
(parttool_mod_CFLAGS): likewise
(parttool_mod_LDFLAGS): likewise
(pcpart_mod_SOURCES): likewise
(pcpart_mod_CFLAGS): likewise
(pcpart_mod_LDFLAGS): likewise
* conf/i386-coreboot.rmk (grub_emu_SOURCES): added commands/parttool.c
and parttool/pcpart.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-ieee1275.rmk: likewise
2009-04-06 09:51:01 +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
robertmh
c04d6e0548
2009-03-22 Vladimir Serbinenko <phcoder@gmail.com>
...
Move multiboot helper out of kernel
* conf/i386-pc.rmk (multiboot_mod_SOURCES): Add
`loader/i386/multiboot_helper.S'.
* conf/i386-coreboot.rmk: Likewise
* conf/i386-ieee1275.rmk: Likewise
* kern/i386/loader.S: Move multiboot helpers from here...
* loader/i386/multiboot_helper.S: ...moved here
* include/grub/i386/loader.h: Move declarations of multiboot
helpers from here...
* include/grub/i386/multiboot.h: ...moved here
* loader/i386/multiboot.c: Added include of grub/cpu/multiboot.h
2009-03-22 12:28:00 +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