Commit graph

1024 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
607a3701db 2010-01-07 Vladimir Serbinenko <phcoder@gmail.com>
Merge crypto branch.

	* Makefile.in (pkglib_DATA):  Add crypto.lst.
	(crypto.lst): New target.
	* commands/hashsum.c: New file.
	* commands/password.c (check_password): Use grub_crypto_memcmp.
	* commands/password_pbkdf2.c: New file.
	* commands/xnu_uuid.c: Remove MD5. Use GRUB_MD_MD5.
	* conf/any-emu.rmk (grub_emu_SOURCES): Add lib/crypto.c,
	normal/crypto.c and lib/libgcrypt-grub/cipher/md5.c.
	(grub_emu_CFLAGS): Add -Wno-missing-field-initializers -Wno-error
	-I$(srcdir)/lib/libgcrypt_wrap.
	* conf/common.rmk (normal_mod_SOURCES): Add normal/crypto.c.
	(pkglib_MODULES): Add crypto.mod, hashsum.mod, pbkdf2.mod and
	password_pbkdf2.mod.
	(crypto_mod_SOURCES): New variable.
	(crypto_mod_CFLAGS): Likewise.
	(crypto_mod_LDFLAGS): Likewise.
	(hashsum_mod_SOURCES): New variable.
	(hashsum_mod_CFLAGS): Likewise.
	(hashsum_mod_LDFLAGS): Likewise.
	(pbkdf2_mod_SOURCES): New variable.
	(pbkdf2_mod_CFLAGS): Likewise.
	(pbkdf2_mod_LDFLAGS): Likewise.
	(password_pbkdf2_mod_SOURCES): New variable.
	(password_pbkdf2_mod_CFLAGS): Likewise.
	(password_pbkdf2_mod_LDFLAGS): Likewise.
	(bin_UTILITIES): Add grub-mkpasswd-pbkdf2.
	(grub_mkpasswd_pbkdf2_SOURCES): New variable.
	(grub_mkpasswd_pbkdf2_CFLAGS): Likewise.
	Include conf/gcry.rmk.
	* include/grub/auth.h: Rewritten.
	* include/grub/crypto.h: New file.
	* include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_LUKS_ID.
	* include/grub/normal.h (read_crypto_list): New prototype.
	* lib/crypto.c: New file.
	* lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
	* lib/pbkdf2.c: Likewise.
	* normal/auth.c (grub_auth_strcmp): Removed.
	(grub_iswordseparator): Likewise.
	(grub_auth_strword): Likewise.
	(is_authenticated): Use grub_strword.
	(grub_auth_check_authentication): Use grub_strcmp, grub_password_get
	and grub_strword. Pass entered password to authentication callback.
	* normal/crypto.c: New file.
	* normal/main.c: Call read_crypto_list.
	* util/grub-mkpasswd-pbkdf2.c: New file.
	* util/import_gcry.py: Generate crypto.lst. Add hash blocklen.
2010-01-07 01:13:01 +01:00
Vladimir 'phcoder' Serbinenko
42841caa75 2010-01-06 Vladimir Serbinenko <phcoder@gmail.com>
Fix descent and ascent calculation.

	* util/grub-mkfont.c (grub_font_info): New fields 'asce' and 'max_y'.
	(options): New option "asce".
	(usage): Likewise.
	(add_char): Ignore invalid glyphs for descent calculation.
	Calculate ascent from actual content.
	(print_glyphs): Use 'asce'.
	(write_font): Likewise. Allow ascent override.
	(main): Handle "asce" option.
2010-01-06 23:25:57 +01:00
Vladimir 'phcoder' Serbinenko
89784252dc merge gfxmenu+multiterm into exp 2010-01-06 22:22:04 +01:00
Vladimir 'phcoder' Serbinenko
ec647fb940 Merge mainline into gfxmenu+multiterm 2010-01-06 22:19:52 +01:00
Vladimir 'phcoder' Serbinenko
f0cfb703b8 Initial bidi support for gfxmenu 2010-01-06 20:37:16 +01:00
Vladimir 'phcoder' Serbinenko
841353a2f9 merge gfxmenu into gfxmenu+multiterm 2010-01-05 21:25:03 +01:00
Vladimir 'phcoder' Serbinenko
eb1c959440 grub-mkconfig support for themes 2010-01-05 21:24:33 +01:00
Yves Blusseau
6581dd3a58 2010-01-05 Yves Blusseau <yves.blusseau@zetam.org>
* util/sparc64/ieee1275/grub-mkimage.c (main): Typo fix.
2010-01-05 18:24:10 +01:00
Colin Watson
3bff18c5c6 2010-01-05 Colin Watson <cjwatson@ubuntu.com>
* util/mkisofs/write.c (padblock_write): Switch size and nmemb
	arguments to fread so that we get a return value in bytes, rather
	than something that will normally be rounded down to 0.
	Adjust error handling to avoid producing garbage when size_t is not
	the same size as long long.
2010-01-05 16:09:02 +00:00
Vladimir 'phcoder' Serbinenko
e6e86df1de Merge multiterm into gfxmenu+multiterm 2010-01-05 16:34:10 +01:00
Vladimir 'phcoder' Serbinenko
519634516f Merge mainline into multiterm 2010-01-05 16:27:41 +01:00
Colin Watson
a136811886 2010-01-05 Colin Watson <cjwatson@ubuntu.com>
* util/mkisofs/write.c (padblock_write): Check return value of
	fread.
2010-01-05 12:40:30 +00:00
Colin Watson
cf2fd2a6d1 2010-10-05 Jordan Uggla <jordan.uggla@gmail.com>
2010-10-05  Colin Watson  <cjwatson@ubuntu.com>

	* util/grub-reboot.in: Make sure prev_saved_entry always gets a
	non-empty value.
2010-01-05 11:16:42 +00:00
Colin Watson
bc11fee9f5 merge from trunk 2010-01-05 10:53:03 +00:00
Colin Watson
5c23bb0f52 2010-10-05 Jordan Uggla <jordan.uggla@gmail.com>
2010-10-05  Colin Watson  <cjwatson@ubuntu.com>

	* util/grub.d/00_header.in: Define a "savedefault" function for use
	in menu entries.
	* util/grub-mkconfig_lib.in (save_default_entry): Use it.
2010-01-05 10:41:51 +00:00
Colin Watson
fcab4f04e5 missing backslash 2010-01-05 10:39:30 +00:00
Colin Watson
b445cfaa4d 2010-10-05 Jordan Uggla <jordan.uggla@gmail.com>
2010-10-05  Colin Watson  <cjwatson@ubuntu.com>

	* util/grub-mkconfig_lib.in (save_default_entry): Only set
	saved_entry if boot_once is unset.
	* util/grub.d/00_header.in: Set boot_once to "true" if there was a
	previous saved entry (i.e. grub-reboot).
2010-01-05 10:30:14 +00:00
Robert Millan
7c30297857 2010-01-05 Robert Millan <rmh.grub@aybabtu.com>
Remove grub-mkfloppy.  Images produced by grub-mkrescue are valid
	floppy images now.
	
	* util/i386/pc/grub-mkfloppy.in: Remove.  Update all users.
2010-01-05 00:31:07 +00:00
Robert Millan
3a73dcb6f5 2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
* boot/i386/pc/diskboot.S: Fix inaccurate comment.
	
	* util/i386/pc/grub-setup.c: Include `<assert.h>'.
	(struct boot_blocklist): Move from here ...
	* include/grub/i386/pc/boot.h [ASM_FILE]
	(struct grub_boot_blocklist): ... to here.  Update all users.
	(setup): Only initialize `start' member of `first_block'
	structure.  Add assert() calls to verify the other members.
	
	* util/i386/pc/grub-mkimage.c: Include `<assert.h>'.
	(generate_image): Fix broken blocklist length initialization.
	Add assert() call to verify blocklist `segment' field.
2010-01-03 22:34:03 +00:00
Robert Millan
58bc8bd5b1 2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
* boot/i386/pc/boot.S: Update copyright year.
	* boot/i386/pc/cdboot.S: Likewise.
	* boot/i386/pc/diskboot.S: Likewise.
	* boot/i386/pc/lnxboot.S: Likewise.
	* boot/i386/pc/pxeboot.S: Likewise.
	* bus/pci.c: Likewise.
	* commands/cmp.c: Likewise.
	* commands/help.c: Likewise.
	* commands/hexdump.c: Likewise.
	* commands/i386/pc/halt.c: Likewise.
	* commands/i386/pc/play.c: Likewise.
	* commands/i386/pc/vbeinfo.c: Likewise.
	* commands/ls.c: Likewise.
	* commands/test.c: Likewise.
	* disk/dmraid_nvidia.c: Likewise.
	* disk/i386/pc/biosdisk.c: Likewise.
	* disk/ieee1275/nand.c: Likewise.
	* disk/ieee1275/ofdisk.c: Likewise.
	* disk/lvm.c: Likewise.
	* disk/raid.c: Likewise.
	* disk/raid6_recover.c: Likewise.
	* disk/scsi.c: Likewise.
	* fs/affs.c: Likewise.
	* fs/cpio.c: Likewise.
	* fs/ext2.c: Likewise.
	* fs/hfs.c: Likewise.
	* fs/iso9660.c: Likewise.
	* fs/ntfs.c: Likewise.
	* fs/sfs.c: Likewise.
	* fs/udf.c: Likewise.
	* fs/ufs.c: Likewise.
	* fs/xfs.c: Likewise.
	* gencmdlist.sh: Likewise.
	* genmk.rb: Likewise.
	* include/grub/disk.h: Likewise.
	* include/grub/efi/api.h: Likewise.
	* include/grub/efi/efi.h: Likewise.
	* include/grub/efi/pe32.h: Likewise.
	* include/grub/elf.h: Likewise.
	* include/grub/fs.h: Likewise.
	* include/grub/i386/at_keyboard.h: Likewise.
	* include/grub/i386/pc/memory.h: Likewise.
	* include/grub/i386/pc/vbe.h: Likewise.
	* include/grub/i386/pci.h: Likewise.
	* include/grub/i386/tsc.h: Likewise.
	* include/grub/ieee1275/ieee1275.h: Likewise.
	* include/grub/ntfs.h: Likewise.
	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
	* include/grub/sparc64/libgcc.h: Likewise.
	* include/grub/symbol.h: Likewise.
	* include/grub/types.h: Likewise.
	* include/multiboot2.h: Likewise.
	* io/gzio.c: Likewise.
	* kern/device.c: Likewise.
	* kern/disk.c: Likewise.
	* kern/efi/efi.c: Likewise.
	* kern/efi/mm.c: Likewise.
	* kern/elf.c: Likewise.
	* kern/file.c: Likewise.
	* kern/i386/dl.c: Likewise.
	* kern/i386/pc/init.c: Likewise.
	* kern/i386/pc/startup.S: Likewise.
	* kern/ieee1275/ieee1275.c: Likewise.
	* kern/ieee1275/init.c: Likewise.
	* kern/main.c: Likewise.
	* kern/mm.c: Likewise.
	* kern/powerpc/dl.c: Likewise.
	* kern/sparc64/dl.c: Likewise.
	* kern/x86_64/dl.c: Likewise.
	* lib/hexdump.c: Likewise.
	* loader/efi/appleloader.c: Likewise.
	* loader/i386/ieee1275/linux.c: Likewise.
	* loader/i386/pc/chainloader.c: Likewise.
	* loader/i386/pc/linux.c: Likewise.
	* loader/i386/pc/multiboot2.c: Likewise.
	* loader/ieee1275/multiboot2.c: Likewise.
	* loader/multiboot2.c: Likewise.
	* loader/multiboot_loader.c: Likewise.
	* loader/powerpc/ieee1275/linux.c: Likewise.
	* normal/completion.c: Likewise.
	* normal/menu_entry.c: Likewise.
	* partmap/apple.c: Likewise.
	* util/grub.d/10_hurd.in: Likewise.
	* util/hostfs.c: Likewise.
	* video/readers/png.c: Likewise.
2010-01-03 22:05:07 +00:00
Yves Blusseau
b1c10d4412 2009-01-01 Yves Blusseau <blusseau@zetam.org>
* util/mkisofs/mkisofs.c: fix a warning about a bad cast when NLS
	is disabled
2010-01-01 21:41:59 +01:00
Yves Blusseau
2f1a3acf75 2009-01-01 Yves Blusseau <yves.blusseau@zetam.org>
* configure.ac: check external intl library
	* Makefile.in: add compiler and linker flags to properly compile with
	intl library
	* include/grub/i18n.h: add a check to disable NLS
	* util/misc.c (grub_util_init_nls): new function
	* include/grub/util/misc.h: likewise
	* util/elf/grub-mkimage.c: use the new function below to initialize NLS
	* 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-probe.c: likewise
	* util/i386/pc/grub-mkimage.c: likewise
	* util/i386/pc/grub-setup.c: likewise
	* util/sparc64/ieee1275/grub-mkimage.c: likewise
	* util/sparc64/ieee1275/grub-ofpathname.c: likewise
	* util/sparc64/ieee1275/grub-setup.c: likewise
	* util/mkisofs/mkisofs.h: add a check to disable NLS
	* util/mkisofs/mkisofs.c: likewise
2010-01-01 21:32:30 +01:00
Vladimir 'phcoder' Serbinenko
ac0289ba92 grub-mkrescue for EFI (untested) 2009-12-29 11:24:13 +01:00
Vladimir 'phcoder' Serbinenko
8b442f3f4c asprintf and snprintf support 2009-12-29 10:04:06 +01:00
Vladimir 'phcoder' Serbinenko
94c201f714 Add forgotten config_opt parameter 2009-12-28 01:07:18 +01:00
Vladimir 'phcoder' Serbinenko
45a8e94c9c Ensure embeded config finishes with \0 2009-12-28 01:06:48 +01:00
Vladimir 'phcoder' Serbinenko
742e1f7e72 merge mainline into mips 2009-12-28 01:05:47 +01:00
Vladimir 'phcoder' Serbinenko
7f1f423cda merge multiterm gfxmenu+multiterm 2009-12-27 22:38:22 +01:00
Vladimir 'phcoder' Serbinenko
13d1f24696 Fix grub-emu compilation 2009-12-27 22:36:09 +01:00
Vladimir 'phcoder' Serbinenko
bee140683a Initial effort for gfxmenu on multiterm branch 2009-12-26 01:49:57 +01:00
Robert Millan
d94000ed13 Merge from trunk 2009-12-25 22:29:47 +00:00
Vladimir 'phcoder' Serbinenko
9c288be27a 2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
Use search command for preliminar UUID search.

	* commands/search.c: Split into ...
	* commands/search_wrap.c: ...this
	* commands/search.c: ...and this.
	* commands/search_file.c: New file.
	* commands/search_label.c: New file.
	* commands/search_uuid.c: New file.
	* conf/any-emu.rmk (grub_emu_SOURCES): Remove commands/search.c.
	Add commands/search_wrap.c, commands/search_file.c,
	commands/search_label.c and commands/search_uuid.c.
	* conf/common.rmk (pkglib_MODULES): Remove fs_uuid.mod and fs_file.mod.
	(search_mod_SOURCES): Set to commands/search_wrap.c.
	(pkglib_MODULES): Add search_fs_file.mod, search_fs_uuid.mod and
	search_label.mod.
	(search_fs_file_mod_SOURCES): New variable.
	(search_fs_file_mod_CFLAGS): Likewise.
	(search_fs_file_mod_LDFLAGS): Likewise.
	(search_label_mod_SOURCES): Likewise.
	(search_label_mod_CFLAGS): Likewise.
	(search_label_mod_LDFLAGS): Likewise.
	(search_fs_uuid_mod_SOURCES): New variable.
	(search_fs_uuid_mod_CFLAGS): Likewise.
	(search_fs_uuid_mod_LDFLAGS): Likewise.
	(fs_file_mod_SOURCES): Removed.
	(fs_file_mod_CFLAGS): Likewise.
	(fs_file_mod_LDFLAGS): Likewise.
	(fs_uuid_mod_SOURCES): Removed.
	(fs_uuid_mod_CFLAGS): Likewise.
	(fs_uuid_mod_LDFLAGS): Likewise.
	* conf/sparc64-ieee1275.rmk (grub_install_SOURCES):
	Set to util/grub-install.in.
	* disk/fs_file.c: Removed.
	* disk/fs_uuid.c: Likewise.
	* include/grub/search.h: New file.
	* util/grub-install.in: Handle sparc64.
	Create and use load.cfg.
	* util/sparc64/ieee1275/grub-install.in: Removed.
2009-12-25 23:06:52 +01:00
Vladimir 'phcoder' Serbinenko
9f293ab0df merge mainline into gfxmenu 2009-12-25 21:32:46 +01:00
Felix Zielcke
0ad46fd771 2009-12-25 Felix Zielcke <fzielcke@z-51.de>
* util/hostdisk.c (open_device): Fix a comment.
2009-12-25 18:29:17 +01:00
Robert Millan
427d6aa453 Merge my local branch 2009-12-25 12:43:20 +01:00
carles
61ba42be03 2009-12-25 Carles Pina i Estany <carles@pina.cat>
* commands/efi/loadbios.c: Capitalize acronyms, replace `could not' by
	`couldn't' and `can not' by `cannot'.
	* commands/i386/pc/drivemap.c: Likewise.
	* disk/ata.c: Likewise.
	* disk/ieee1275/nand.c: Likewise.
	* fs/affs.c: Likewise.
	* fs/fat.c: Likewise.
	* fs/hfs.c: Likewise.
	* fs/hfsplus.c: Likewise.
	* fs/iso9660.c: Likewise.
	* fs/jfs.c: Likewise.
	* fs/minix.c: Likewise.
	* fs/reiserfs.c: Likewise.
	* fs/sfs.c: Likewise.
	* fs/udf.c: Likewise.
	* fs/ufs.c: Likewise.
	* fs/xfs.c: Likewise.
	* loader/powerpc/ieee1275/linux.c: Likewise.
	* loader/sparc64/ieee1275/linux.c: Likewise.
	* util/grub-probe.c: Likewise.
	* util/misc.c: Likewise.
2009-12-25 01:04:51 +01:00
Vladimir 'phcoder' Serbinenko
4fc4ee303d Set default console on non-i386-pc 2009-12-25 00:13:03 +01:00
Robert Millan
d0e158c2f3 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-install.in (host_os): New variable.
	* util/i386/efi/grub-install.in (host_os): Likewise.
2009-12-24 22:23:22 +00:00
Robert Millan
401c0ad6fd 2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/write.c (padblock_write): Abort when given an
	excedingly large embed image, instead of silently truncating it.
2009-12-24 18:00:48 +00:00
Robert Millan
8eca55a6eb Imported nyu's multi-input 2009-12-24 17:08:14 +01:00
Vladimir 'phcoder' Serbinenko
2e71383172 Core changes hopefully finished 2009-12-24 15:34:33 +01:00
Vladimir 'phcoder' Serbinenko
a2e77ce455 merge mainline into crypto 2009-12-23 20:34:26 +01:00
Vladimir 'phcoder' Serbinenko
0eb11149c9 eliminate dead code and data in des.c 2009-12-23 19:58:33 +01:00
Felix Zielcke
a2c1332b70 2009-12-23 Felix Zielcke <fzielcke@z-51.de>
* commands/i386/pc/drivemap.c: Remove all trailing whitespace.
	* commands/lspci.c: Likewise.
	* commands/probe.c: Likewise.
	* commands/xnu_uuid.c: Likewise.
	* conf/i386-coreboot.rmk: 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.
	* fs/i386/pc/pxe.c: Likewise.
	* gettext/gettext.c: Likewise.
	* include/grub/efi/graphics_output.h: Likewise.
	* include/grub/i386/pc/memory.h: Likewise.
	* kern/env.c: Likewise.
	* kern/i386/qemu/startup.S: Likewise.
	* lib/i386/pc/biosnum.c: Likewise.
	* lib/i386/relocator.c: Likewise.
	* lib/i386/relocator_asm.S: Likewise.
	* lib/relocator.c: Likewise.
	* loader/i386/bsd.c: Likewise.
	* loader/i386/multiboot.c: Likewise.
	* loader/i386/pc/chainloader.c: Likewise.
	* loader/i386/xnu.c: Likewise.
	* loader/xnu.c: Likewise.
	* normal/main.c: Likewise.
	* normal/menu_text.c: Likewise.
	* util/getroot.c: Likewise.
	* util/grub-mkconfig_lib.in: Likewise.
	* util/grub.d/00_header.in: Likewise.
	* util/i386/pc/grub-mkimage.c: Likewise.
	* util/mkisofs/eltorito.c: Likewise.
	* util/mkisofs/exclude.h: Likewise.
	* util/mkisofs/hash.c: Likewise.
	* util/mkisofs/iso9660.h: Likewise.
	* util/mkisofs/joliet.c: Likewise.
	* util/mkisofs/mkisofs.c: Likewise.
	* util/mkisofs/mkisofs.h: Likewise.
	* util/mkisofs/multi.c: Likewise.
	* util/mkisofs/name.c: Likewise.
	* util/mkisofs/rock.c: Likewise.
	* util/mkisofs/tree.c: Likewise.
	* util/mkisofs/write.c: Likewise.
	* video/efi_gop.c: Likewise.
2009-12-23 17:41:32 +01:00
Vladimir 'phcoder' Serbinenko
7316783f35 Crypto module autoloading 2009-12-23 17:33:35 +01:00
Felix Zielcke
990f35486e 2009-12-22 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrescue.in (pkglib_DATA): Set to @pkglib_DATA@.
	* genmk.rb (class SCRIPT): Modify the target file instead of source.
2009-12-22 18:20:27 +01:00
Vladimir 'phcoder' Serbinenko
fbb8a88714 Byte-addressable PCI config space 2009-12-22 15:09:25 +01:00
Vladimir 'phcoder' Serbinenko
ba136b293a merge mainline into crypto 2009-12-22 14:28:39 +01:00
Felix Zielcke
10a8879783 2009-12-22 Felix Zielcke <fzielcke@z-51.de>
* genmk.rb (class SCRIPT): Use sed to substitute @pkglib_DATA@
	with the actual contents of the correspondending make variable.
	* util/grub-mkrescue.in (pkglib_DATA): New variable.
	(process_input_dir): Copy all $pkglib_DATA files instead of explicitly
	specifying `*.lst' and `efiemu??.o'
2009-12-22 12:12:51 +01:00
Felix Zielcke
7e70dfffc1 2009-12-22 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in (osx_entry): Add round brackets
	after function name.
	Noticed by Rene Engelhard <rene@debian.org>.
2009-12-22 12:02:57 +01:00
Felix Zielcke
82000aa2b2 2009-12-22 Felix Zielcke <fzielcke@z-51.de>
* util/grub.d/30_os-prober.in (osx_entry): Remove non POSIX compliant
	`function' keyword.
	Patch by Tony Mancill <tmancill@debian.org>.
2009-12-22 10:35:04 +01:00
Felix Zielcke
4dd13225a0 2009-12-21 Felix Zielcke <fzielcke@z-51.de>
* util/grub-mkrescue.in: (process_input_dir): Copy `*.lst' files
	instead of specifying them explicit.
2009-12-21 22:19:25 +01:00
Robert Millan
9b214e3a53 2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/msdos_partition.h: New file (based on
        include/grub/msdos_partition.h).
        * util/mkisofs/mkisofs.c (use_protective_msdos_label): New variable.
        (OPTION_PROTECTIVE_MSDOS_LABEL): New macro.
        (ld_options, main): Recognize --protective-msdos-label.
        * util/mkisofs/mkisofs.h (use_protective_msdos_label): New declaration.
        * util/mkisofs/write.c: Include `"msdos_partition.h"'.
        (padblock_write): If `use_protective_msdos_label' is set, patch a
        protective DOS-style label in the output image.

        * util/grub-mkrescue.in: Use --protective-msdos-label.
2009-12-21 20:22:12 +00:00
Robert Millan
e930981361 2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-mkrescue.in: Do not zero-pad image for BIOS-based disk
        boot.
2009-12-21 19:10:07 +00:00
Robert Millan
0ae5692966 2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/mkisofs.c (use_embedded_boot, boot_image_embed): New
        variables.
        (ld_options, main): Recognize `--embedded-boot'.
        * util/mkisofs/mkisofs.h (use_embedded_boot, boot_image_embed): New
        declarations.
        * util/mkisofs/write.c (PADBLOCK_SIZE): New variable.
        (padblock_size): Use `PADBLOCK_SIZE' instead of hardcoding 16.
        (padblock_write): Likewise.  Rewrite to support embedded boot image.

        * util/grub-mkrescue.in: When building i386-pc images, embed core.img
        for BIOS-based disk boot instead of only ElTorito.
2009-12-21 17:40:26 +00:00
Robert Millan
b15937b110 2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-mkrescue.in: Remove `configfile' and `sh' from i386-pc
        build (not needed for bootstrap).
2009-12-21 17:03:08 +00:00
Robert Millan
52cc3ce041 2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-mkrescue.in: Remove `memdisk', `tar' and `search' modules
        from i386-pc build (not needed for bootstrap).
        Rewrite a pair of strings.
2009-12-21 16:11:35 +00:00
Vladimir 'phcoder' Serbinenko
de15bf8e7f 2009-12-20 Vladimir Serbinenko <phcoder@gmail.com>
* util/i386/pc/grub-setup.c (setup): Don't install on non-GPT,
	non-MSDOS paritions.
2009-12-20 21:08:03 +01:00
Vladimir 'phcoder' Serbinenko
e0a6ca52f2 2009-12-19 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/types.h (UNUSED): Removed since it conflicts with
	NetBSD headers. All users changed to direct __attribute__ ((unused)).
	Reported by Grégoire Sutre.
2009-12-20 14:09:16 +01:00
Vladimir 'phcoder' Serbinenko
68693c0743 Reimpliment grub-dumpdevtree 2009-12-18 04:57:29 +01:00
Vladimir 'phcoder' Serbinenko
7ea73643f5 merge mtrunk into xnu 2009-12-18 03:57:32 +01:00
Vladimir 'phcoder' Serbinenko
2cd7057fc8 30_os-prober update 2009-12-18 03:33:24 +01:00
Felix Zielcke
574cce0cfa 2009-12-14 Felix Zielcke <fzielcke@z-51.de>
Fix a segfault with parsing unknown long options.

	* util/grub-mkrelpath.c (options): Zero terminate it.
2009-12-14 11:06:24 +01:00
Robert Millan
2e8a760287 2009-12-13 Robert Millan <rmh.grub@aybabtu.com>
* util/grub-probe.c (probe): Improve error message.
2009-12-13 19:46:59 +00:00
Robert Millan
648fb15b29 Merge from trunk 2009-12-13 18:41:21 +00:00
Vladimir 'phcoder' Serbinenko
4d902d3715 merge from trunk 2009-12-12 02:38:30 +01:00
Vladimir 'phcoder' Serbinenko
5417641c66 Fix loading of modules of size not divisible by 4 2009-12-12 02:33:15 +01:00
Robert Millan
dc0c71d974 2009-12-12 Robert Millan <rmh@aybabtu.com>
* gendistlist.sh (EXTRA_DISTFILES): Add `genvideolist.sh'.
        * genmk.rb (video): New variable.
        (CLEANFILES, VIDEOFILES): Add #{video}.
        (#{video}): New target rule.
        * genvideolist.sh: New file.
        * Makefile.in (pkglib_DATA): Add video.lst.
        (video.lst): New target rule.
        * util/grub-mkconfig.in: Initialize ${GRUB_VIDEO_BACKEND} using
        `video.lst'.
        * util/grub.d/30_os-prober.in: Replace `vbe' with
        ${GRUB_VIDEO_BACKEND}.
2009-12-12 00:43:32 +00:00
Robert Millan
03157a273d util/sparc64/ieee1275/grub-install.in was meant to be removed 2009-12-12 00:10:38 +00:00
Robert Millan
37ba589a4e Merge from trunk 2009-12-12 00:07:45 +00:00
Robert Millan
838114b687 Merge from trunk 2009-12-11 21:15:58 +00:00
Robert Millan
2a3aa4d570 Merge pciaccess branch 2009-12-11 21:12:57 +00:00
Felix Zielcke
8d0502d9b2 2009-12-11 Felix Zielcke <fzielcke@z-51.de>
* util/misc.c: Don't include <errno.h> twice.
2009-12-11 11:11:34 +01:00
Vladimir 'phcoder' Serbinenko
71ee178adb 2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
Eliminate grub-fstest 4Gib barrier.

	* util/grub-fstest.c (skip, leng): Use grub_disk_addr_t.
	(read_file): Fix error reporting.
2009-12-10 14:39:54 +01:00
Vladimir 'phcoder' Serbinenko
546d060783 grub-install for yeeloong 2009-12-09 19:39:21 +01:00
Colin Watson
c631d9fb17 2009-12-09 Colin Watson <cjwatson@ubuntu.com>
* util/grub-mkconfig_lib.in: Don't set grub_probe or grub_mkrelpath
	if they're already set.  This resolves the conflict between my
	grub-install change on 2009-10-06 and Felix' change on 2009-11-11,
	fixing the --grub-probe option again.
	* util/sparc64/ieee1275/grub-install.in: Revert the last piece of my
	change on 2009-10-06, so that we now once again source
	`${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
2009-12-09 16:20:17 +00:00
Colin Watson
6c1f8c1215 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/30_os-prober.in: Call save_default_entry for hurd.
2009-12-08 01:02:08 +00:00
Colin Watson
b967a04d5b 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/00_header.in: Use `set var=val' rather than plain
	`var=val'.
	* util/grub-mkconfig_lib.in (save_default_entry): Likewise.
2009-12-08 01:01:21 +00:00
Colin Watson
47075ea3c7 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub-reboot.in: Fix --version output.
	* util/grub-set-default.in: Likewise.
2009-12-08 01:00:26 +00:00
Colin Watson
42356b4d5e 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/00_header.in: Silently ignore zero-sized environment
	blocks.
2009-12-08 00:59:26 +00:00
Colin Watson
36cd6dd151 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/00_header.in: Quote the value assigned to `default',
	in case it contains spaces.
2009-12-08 00:57:46 +00:00
Colin Watson
b824145a8f 2009-12-08 Colin Watson <cjwatson@ubuntu.com>
* util/grub.d/30_os-prober.in: Fix merge error that moved a
	`save_default_entry' call from the macosx case to the linux case.
2009-12-08 00:56:39 +00:00
Colin Watson
e8b2988803 merge from trunk 2009-12-08 00:55:17 +00:00
Colin Watson
d6ceebf1d9 2009-12-07 Colin Watson <cjwatson@ubuntu.com>
* configure.ac: Check for vasprintf.
	* util/misc.c (asprintf): Move allocation from here ...
	(vasprintf): ... to here.  New function.
	(xasprintf): New function.
	* include/grub/util/misc.h (vasprintf, xasprintf): Add
	prototypes.
	* util/getroot.c (grub_util_get_grub_dev): Use xasprintf.
	* util/grub-mkfont.c (write_font): Likewise.
	* util/grub-probe.c (probe): Likewise.
	* util/hostdisk.c (make_device_name): Likewise.
2009-12-07 16:46:24 +00:00
Vladimir 'phcoder' Serbinenko
a22078eb4f Startup code cleanup 2009-12-06 15:32:32 +01:00
Felix Zielcke
df91e67900 2009-12-06 Felix Zielcke <fzielcke@z-51.de>
* util/misc.c (make_system_path_relative_to_its_root): Correctly cope with
	mount points.
2009-12-06 10:20:01 +01:00
Vladimir 'phcoder' Serbinenko
fd39f820fd fix mismerge with trunk (progname) 2009-12-05 18:59:36 +01:00
Vladimir 'phcoder' Serbinenko
df2e3593f3 merge mainline into mips 2009-12-05 18:37:15 +01:00
Vladimir 'phcoder' Serbinenko
b283f10857 2009-12-05 Vladimir Serbinenko <phcoder@gmail.com>
Rename kernel.mod to kernel.img.

	* conf/i386-efi.rmk (pkglib_MODULES): Change kernel.mod to kernel.img.
	(kernel_mod_EXPORTS): Rename to ...
	(kernel_img_EXPORTS): ... this.
	(kernel_mod_SOURCES): Rename to ...
	(kernel_img_SOURCES): ... this.
	(kernel_mod_HEADERS): Rename to ...
	(kernel_img_HEADERS): ... this. All users updated.
	(kernel_mod_CFLAGS): Rename to ...
	(kernel_img_CFLAGS): ... this.
	(kernel_mod_ASFLAGS): Rename to ...
	(kernel_img_ASFLAGS): ... this.
	(kernel_mod_LDFLAGS): Rename to ...
	(kernel_img_LDFLAGS): ... this.
	* conf/x86_64-efi.rmk: Likewise.
	* util/i386/efi/grub-mkimage.c (read_kernel_module): Rename to ...
	(read_kernel_image): ... this. All users updated.
	(read_kernel_image): Read "kernel.img" instead of "kernel.mod".
2009-12-05 17:10:36 +01:00
Vladimir 'phcoder' Serbinenko
7d624c2949 merge mainline into crypto 2009-12-05 16:34:27 +01:00
Vladimir 'phcoder' Serbinenko
9d1fafb96e Move include/grub/cipher_wrap.h to lib/libgcrypt_wrap/cipher_wrap.h 2009-12-05 16:33:39 +01:00
Carles Pina i Estany
57bbe3beb1 2009-12-05 Carles Pina i Estany <carles@pina.cat>
* util/grub-install.in: Install gettext .mo files.
	* util/grub-mkrescue.in (process_input_dir): Copy gettext .mo files.
2009-12-05 09:31:36 +00:00
Robert Millan
69ac6c405a Merge from trunk 2009-12-04 00:04:41 +00:00
David S. Miller
4b2e6ca2b6 2009-12-03 David S. Miller <davem@sunset.davemloft.net>
* conf/sparc64-ieee1275.rmk (grub_mkimage_SOURCES,
	grub_setup_SOURCES, grub_ofpathname_SOURCES): Add gnulib/progname.c
	* util/sparc64/ieee1275/grub-mkimage.c: Include <grub/i18n.h> and
	"progname.h"
	* util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
	* util/sparc64/ieee1275/grub-setup.c: Likewise.
	(usage): Add missing comma in printf.
2009-12-03 12:18:56 +01:00
Vladimir 'phcoder' Serbinenko
c8dea671ff 2009-12-02 Vladimir Serbinenko <phcoder@gmail.com>
Rename kernel.mod to kernel.img.

	* conf/i386-efi.rmk (pkglib_MODULES): Change kernel.mod to kernel.img.
	(kernel_mod_EXPORTS): Rename to ...
	(kernel_img_EXPORTS): ... this.
	(kernel_mod_SOURCES): Rename to ...
	(kernel_img_SOURCES): ... this.
	(kernel_mod_HEADERS): Rename to ...
	(kernel_img_HEADERS): ... this. All users updated.
	(kernel_mod_CFLAGS): Rename to ...
	(kernel_img_CFLAGS): ... this.
	(kernel_mod_ASFLAGS): Rename to ...
	(kernel_img_ASFLAGS): ... this.
	(kernel_mod_LDFLAGS): Rename to ...
	(kernel_img_LDFLAGS): ... this.
	* conf/x86_64-efi.rmk: Likewise.
	* util/i386/efi/grub-mkimage.c (read_kernel_module): Rename to ...
	(read_kernel_image): ... this. All users updated.
	(read_kernel_image): Read "kernel.img" instead of "kernel.mod".
2009-12-02 17:13:45 +01:00
Vladimir 'phcoder' Serbinenko
ff684a8d7d Propagate gettext changes from trunk 2009-12-02 13:31:10 +01:00
Vladimir 'phcoder' Serbinenko
4f41a23d4e merge mainline into mips 2009-12-02 09:51:36 +01:00
Vladimir 'phcoder' Serbinenko
e45f7848e6 merged mainline into pci 2009-11-30 16:39:59 +01:00
Vladimir 'phcoder' Serbinenko
9ec25583a9 Merge bmpidx into gfxmenu 2009-11-29 15:25:13 +01:00
Samuel Thibault
dc9837ea5f 2009-11-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
Fix GNU/Hurd grub-install crash.
	* util/grub-probe.c (probe): Try to access `path' only when it is not
	NULL.
2009-11-29 12:40:32 +01:00
Robert Millan
c5448046d3 2009-11-28 Robert Millan <rmh.grub@aybabtu.com>
* util/mkisofs/mkisofs.c (ld_options): Mark all `arg' strings as
        translatable.
        (usage): Translate `arg' strings using gettext().
        Thanks to Jordi Mallach for the suggestion.
2009-11-28 19:31:30 +00:00
Robert Millan
3df1f5113a Merge from trunk. 2009-11-27 00:03:09 +00:00
Vladimir 'phcoder' Serbinenko
84c6b0863f renamed grub-pbkdf2 into grub-mkpasswd-pbkdf2 2009-11-26 17:34:22 +01:00
Felix Zielcke
242668a26a 2009-11-26 Felix Zielcke <fzielcke@z-51.de>
* util/i386/efi/grub-mkimage.c: Include "progname.h".
	(main): Use `program_name' instead of nonexistent `progname'.
2009-11-26 17:15:16 +01: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
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
robertmh
51cd3dfc70 2009-02-27 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_linux.in: Rename "single-user mode" to
        "recovery mode".
2009-02-27 21:37:07 +00:00
robertmh
b941342428 2009-02-27 Robert Millan <rmh@aybabtu.com>
Patch from Alexandre Bique <bique.alexandre@gmail.com>
        * util/i386/pc/grub-setup.c (setup): Fix directory path.
2009-02-27 21:01:25 +00:00
bean
6e09b8b72e 2009-02-24 Bean <bean123ch@gmail.com>
* configure.ac: Check for -mcmodel=large in x86_64 target.

	* include/grub/efi/api.h (efi_call_10): New macro.
	(efi_wrap_10): New function.

	* include/grub/efi/pe32.h (GRUB_PE32_REL_BASE_HIGH): New macro.
	(GRUB_PE32_REL_BASED_HIGH): Likewise.
	(GRUB_PE32_REL_BASED_LOW): Likewise.
	(GRUB_PE32_REL_BASED_HIGHLOW): Likewise.
	(GRUB_PE32_REL_BASED_HIGHADJ): Likewise.
	(GRUB_PE32_REL_BASED_MIPS_JMPADDR): Likewise.
	(GRUB_PE32_REL_BASED_SECTION): Likewise.
	(GRUB_PE32_REL_BASED_REL): Likewise.
	(GRUB_PE32_REL_BASED_IA64_IMM64): Likewise.
	(GRUB_PE32_REL_BASED_DIR64): Likewise.
	(GRUB_PE32_REL_BASED_HIGH3ADJ): Likewise.

	* kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Fixed relocation
	issue.

	* kern/x86_64/efi/callwrap.S (efi_wrap_6): Bug fix.
	(efi_wrap_10): New function.

	* kern/x86_64/efi/startup.S (codestart): Use relative addressing.

	* loader/efi/appleloader.c (devpath_5): Add support for late 2008
	MB/MBP model (NV chipset).
	(devdata_devs): Add devpath_5 to the list.

	* load/i386/efi/linux.c (video_base): Remove variable.
	(RGB_MASK): New macro.
	(RGB_MAGIC): Likewise.
	(LINE_MIN): Likewise.
	(LINE_MAX): Likewise.
	(FBTEST_STEP): Likewise.
	(FBTEST_COUNT): Likewise.
	(fb_list): New variable.
	(grub_find_video_card): Remove function.
	(find_framebuf): New function.
	(grub_linux_setup_video): Use find_framebuf to get frame buffer and
	line length.

	* util/i386/efi/grub-mkimage.c (grub_reloc_section): Fix relocation
	problem for x86_64.
2009-02-24 13:19:46 +00:00
chaac
74b21bee5c 2009-02-22 Vesa Jääskeläinen <chaac@nic.fi>
Patch #25624 by Kevin Lacquement <kevin@lacqui>.

	* util/grub-mkconfig.in: Use ${grub_mkdevicemap} instead of hard
	coding tool name.
2009-02-22 21:55:49 +00:00
robertmh
16ac430e8c 2009-02-11 Robert Millan <rmh@aybabtu.com>
* util/grub.d/00_header.in: Update old reference to `font' command.
2009-02-11 00:36:58 +00:00
robertmh
d64399b562 2009-02-08 Marco Gerards <marco@gnu.org>
* Makefile.in (enable_grub_emu_usb): New variable.
        * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/scsi.c'.
        (grub_emu_SOURCES) [grub_emu_SOURCES]: Add `disk/usbms.c',
        `util/usb.c', `bus/usb/usb.c' and `commands/usbtest.c'.
        (grub_emu_LDFLAGS): Add `$(LIBUSB)'.
        (pkglib_MODULES): Add `usb.mod', `uhci.mod', `ohci.mod',
        `usbtest.mod' and `usbms.mod'.
        (usb_mod_SOURCES, usb_mod_CFLAGS, usb_mod_LDFLAGS)
        (usbtest_mod_SOURCES, usbtest_mod_CFLAGS, usbtest_mod_LDFLAGS)
        (uhci_mod_SOURCES, uhci_mod_CFLAGS, uhci_mod_LDFLAGS,
        (ohci_mod_SOURCES, ohci_mod_CFLAGS, ohci_mod_LDFLAGS)
        (usbms_mod_SOURCES, usbms_mod_CFLAGS, usbms_mod_LDFLAGS): New
        variables.

        * disk/usbms.c: New file.

        * include/grub/usb.h: Likewise.

        * include/grub/usbtrans.h: Likewise.

        * include/grub/usbdesc.h: Likewise.

        * bus/usb/usbtrans.c: Likewise.

        * bus/usb/ohci.c: Likewise.

        * bus/usb/uhci.c: Likewise.

        * bus/usb/usbhub.c: Likewise.

        * bus/usb/usb.c: Likewise.

        * commands/usbtest.c: Likewise.

        * util/usb.c: Likewise.

        * include/grub/err.h (grub_err_t): Add `GRUB_ERR_IO'.

        * configure.ac: Test for libusb presence.

        * util/grub-emu.c (main) [HAVE_LIBUSB_H]: Call `grub_libusb_init'.
2009-02-08 17:58:32 +00:00
robertmh
f821ce593a 2009-02-08 Robert Millan <rmh@aybabtu.com>
* fs/cpio.c: Split tar functionality to ...
        * fs/tar.c: ... here (new file).  Update all users.
2009-02-07 23:38:01 +00:00
fzielcke
3143cc1c5f 2009-02-04 Felix Zielcke <fzielcke@z-51.de>
util/getroot.c (grub_util_get_grub_dev): Add support for /dev/mdNpN and
	/dev/md/NpN style mdraid devices.
2009-02-04 10:52:25 +00:00
fzielcke
9cba6fce00 2009-02-03 Felix Zielcke <fzielcke@z-51.de>
* util/unifont2pff.rb: Remove.
2009-02-03 20:23:33 +00:00
chaac
6a7eab2c13 2009-01-27 Vesa Jääskeläinen <chaac@nic.fi>
* disk/scsi.c (grub_scsi_read): Fix sign problem.

	* term/i386/pc/vga_text.c (grub_vga_text_init_fini). Fix declaration.

	* util/grub-mkfont.c (usage): Fix typo.

	* util/elf/grub-mkimage.c (load_modules): Fix warning.
2009-01-27 18:26:09 +00:00
fzielcke
4fa809981f 2009-01-17 Felix Zielcke <fzielcke@z-51.de>
* Makefile.in: Change font compilation to use new grub-mkfont instead
	of java version.

	* util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: Remove.
	* util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.
2009-01-17 09:38:38 +00:00
proski
4a412913d1 2009-01-13 Carles Pina i Estany <carles@pina.cat>
* util/grub-editenv.c (main): Use fseeko(), not fseek().
2009-01-14 00:17:12 +00:00
bean
d913988ca9 2009-01-13 Bean <bean123ch@gmail.com>
* util/grub-mkfont.c (write_font): forget to remove some debug code.
2009-01-13 17:03:13 +00:00
bean
e52db1f722 2009-01-13 Bean <bean123ch@gmail.com>
* Makefile.in: (enable_grub_mkfont): New variable.
	(freetype_cflags): Likewise.
	(freetype_libs): Likewise.

	* common.rmk (bin_UTILITIES): Add `grub-mkfont' if requested.
	(grub_mkfont_SOURCES): New variable.
	(grub_mkfont_CFLAGS): Likewise.
	(grub_mkfont_LDFLAGS): Likewise.

	* configure.ac (--enable-grub-mkfont): New option. Check for freetype2
	library if `--enable-grub-mkfont' is requested.
	(enable_grub_mkfont): New variable.
	(freetype_cflags): Likewise.
	(freetype_libs): Likewise.

	* util/grub-mkfont.c: New file.
2009-01-13 16:34:26 +00:00
robertmh
f36cc10867 2009-01-10 Robert Millan <rmh@aybabtu.com>
Update a few copyright years which we forgot to do in 2008 (only for
            files whose changes made in 2008 were copyright-significant)

            * Makefile.in: Add 2008 to Copyright line.
            * disk/ieee1275/ofdisk.c: Likewise.
            * disk/efi/efidisk.c: Likewise.
            * kern/dl.c: Likewise.
            * kern/sparc64/ieee1275/init.c: Likewise.
            * kern/mm.c: Likewise.
            * kern/efi/mm.c: Likewise.
            * boot/i386/pc/boot.S: Likewise.
            * genfslist.sh: Likewise.
            * fs/iso9660.c: Likewise.
            * fs/hfs.c: Likewise.
            * fs/jfs.c: Likewise.
            * fs/minix.c: Likewise.
            * fs/ufs.c: Likewise.
            * gensymlist.sh.in: Likewise.
            * genkernsyms.sh.in: Likewise.
            * include/grub/misc.h: Likewise.
            * include/grub/types.h: Likewise.
            * include/grub/symbol.h: Likewise.
            * include/grub/elf.h: Likewise.
            * include/grub/kernel.h: Likewise.
            * include/grub/disk.h: Likewise.
            * include/grub/dl.h: Likewise.
            * include/grub/i386/linux.h: Likewise.
            * include/grub/i386/pc/biosdisk.h: Likewise.
            * include/grub/efi/api.h: Likewise.
            * include/grub/efi/pe32.h: Likewise.
            * include/grub/util/misc.h: Likewise.
            * normal/execute.c: Likewise.
            * normal/arg.c: Likewise.
            * normal/completion.c: Likewise.
            * normal/lexer.c: Likewise.
            * normal/parser.y: Likewise.
            * normal/misc.c: Likewise.
            * commands/i386/pc/vbeinfo.c: Likewise.
            * commands/hexdump.c: Likewise.
            * commands/terminal.c: Likewise.
            * commands/ls.c: Likewise.
            * commands/help.c: Likewise.
            * partmap/pc.c: Likewise.
            * loader/efi/chainloader.c: Likewise.
            * loader/multiboot_loader.c: Likewise.
            * loader/i386/pc/multiboot2.c: Likewise.
            * term/efi/console.c: Likewise.
            * term/i386/pc/serial.c: Likewise.
            * util/lvm.c: Likewise.
            * util/console.c: Likewise.
            * util/i386/efi/grub-mkimage.c: Likewise.
            * util/raid.c: Likewise.
2009-01-10 13:07:44 +00:00
chaac
1e901a7573 2009-01-02 Colin D Bennett <colin@gibibit.com>
New font engine.
	
	Additional changes by Vesa Jääskeläinen <chaac@nic.fi> to adapt to
	build system and fixed gfxterm.c to work with different	sized fonts.

	* configure.ac: Changed UNIFONT_HEX to UNIFONT_BDF.
	
	* configure: Re-generated.
	
	* DISTLIST: Removed font/manager.c.
	Added font/font.c.
	Added font/font_cmd.c.
	
	* Makefile.in: Changed UNIFONT_HEX to UNIFONT_BDF.  Added Font tool
	compilation.
	
	* include/grub/misc.h (grub_utf8_to_ucs4): Changed prototype.  Changed users.
	
	* kern/misc.c (grub_utf8_to_ucs4): Changed prototype. 

	* kern/term.c: Changed users of grub_utf8_to_ucs4.
	
	* normal/menu.c: Likewise.
		
	* conf/common.rmk (font_mod_SOURCES): Removed font/manager.c.
	(font_mod_SOURCES): Added font/font_cmd.c, font/font.c.
	
	* include/grub/font.h: Replaced with new file.
	
	* include/grub/video.h (GRUB_VIDEO_MODE_TYPE_ALPHA): Changed value.
	(GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED): Likewise.
	(GRUB_VIDEO_MODE_TYPE_COLOR_MASK): Likewise.
	(GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP): Added.
	(grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED.
	(grub_video_mode_info): Added bg_red, bg_green, bg_blue, bg_alpha, 
	fg_red, fg_green, fg_blue, fg_alpha.
	(grub_video_adapter): Removed blit_glyph.
	(grub_video_blit_glyph): Removed.	
	
	* font/manager.c: Removed file.
	
	* font/font.c: New file. 
	
	* font/font_cmd.c: Likewise.
	
	* video/video.c (grub_video_blit_glyph): Removed.
	
	* video/i386/pc/vbe.c (grub_video_vbe_map_rgb): Added 1-bit support.
	(grub_video_vbe_map_rgba): Likewise.
	(grub_video_vbe_unmap_color_int): Likewise.
	(grub_video_vbe_blit_glyph): Removed.
	(grub_video_vbe_adapter): Removed blit_glyph.
	
	* video/i386/pc/vbeutil.c (get_data_ptr): Added 1-bit support.
	(get_pixel): Likewise.
	(set_pixel): Likewise. 
	
	* commands/videotest.c (grub_cmd_videotest): Added more tests for fonts.
	
	* term/gfxterm.c: Adapted to new font engine.
	
	* term/i386/pc/vesafb.c: Marked as deprecated.  Made it compile.
	
	* term/i386/pc/vga.c: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: New file.
	
	* util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
	
	* util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.

	* util/grub.d/00_header.in: Changed to use new loadfont command.
	
	* util/grub-mkconfig_lib.in: Changed font extension.
2009-01-02 15:26:06 +00:00
fzielcke
278922e80b 2008-12-28 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c (grub_util_get_grub_dev): Add support for
	/dev/md/dNNpNN style partitionable mdraid devices.
2008-12-28 16:20:30 +00:00
robertmh
15257703eb Provide grub-install on coreboot.
* conf/i386-coreboot.rmk (sbin_SCRIPTS): Add `grub-install'.
        (grub_install_SOURCES): New variable.
        * util/i386/pc/grub-install.in: Add a few condition checks to make it
        usable on coreboot.
2008-11-28 20:06:55 +00:00
fzielcke
9fc5388a5d 2008-11-25 Felix Zielcke <fzielcke@z-51.de>
* util/grub-fstest.c (grub_term_get_current_input): Change return type
	to `grub_term_input_t'.
	(grub_term_get_current_output): Change return type to
	`grub_term_output_t'.
2008-11-25 16:40:17 +00:00
robertmh
73e8e268b7 * util/grub-mkconfig_lib.in (grub_warn): New function.
(convert_system_path_to_grub_path): Use grub_warn() when issuing
        warnings, to obtain consistent formatting.
        * util/grub.d/00_header.in: Likewise.
        * util/update-grub_lib.in: Likewise.
2008-11-20 19:22:20 +00:00
robertmh
6c529df74c 2008-11-10 Robert Millan <rmh@aybabtu.com>
* util/grub.d/00_header.in: Add backward compatibility check for
        versions of terminal.mod that don't understand `terminal_input' or
        `terminal_output'.
2008-11-10 08:49:26 +00:00
robertmh
0025933a5e 2008-11-08 Robert Millan <rmh@aybabtu.com>
* term/i386/pc/vesafb.c (grub_vesafb_term): Change type to
        `struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
        members.  Update all users.
        * util/console.c (grub_ncurses_term): Split in ...
        (grub_ncurses_term_input): ... this, and ...
        (grub_ncurses_term_output): ... this.  Update all users.
2008-11-08 12:17:51 +00:00
proski
b6c15a2d2a 2008-11-07 Pavel Roskin <proski@gnu.org>
* util/grub.d/00_header.in: Remove incorrect space before
	"serial".
2008-11-07 22:30:24 +00:00
robertmh
651c29b79e 2008-11-07 Robert Millan <rmh@aybabtu.com>
Modularize at_keyboard.mod:

            * conf/i386.rmk (pkglib_MODULES): Add `at_keyboard.mod'.
            (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
            (at_keyboard_mod_LDFLAGS): New variables.

            Actual terminal split:

            * include/grub/term.h (struct grub_term): Split in ...
            (struct grub_term_input): ... this, and ...
            (struct grub_term_output): ... this.  Update all users.
            (grub_term_set_current): Split in ...
            (grub_term_set_current_input): ... this, and ...
            (grub_term_set_current_output): ... this.
            (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            (grub_term_register): Split in ...
            (grub_term_register_input): ... this, and ...
            (grub_term_register_output): ... this.
            (grub_term_unregister): Split in ...
            (grub_term_unregister_input): ... this, and ...
            (grub_term_unregister_output): ... this.
            (grub_term_iterate): Split in ...
            (grub_term_iterate_input): ... this, and ...
            (grub_term_iterate_output): ... this.

            * kern/term.c (grub_term_list): Split in ...
            (grub_term_list_input): ... this, and ...
            (grub_term_list_output): ... this.  Update all users.
            (grub_cur_term): Split in ...
            (grub_cur_term_input): ... this, and ...
            (grub_cur_term_output): ... this.  Update all users.
            (grub_term_set_current): Split in ...
            (grub_term_set_current_input): ... this, and ...
            (grub_term_set_current_output): ... this.
            (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            (grub_term_register): Split in ...
            (grub_term_register_input): ... this, and ...
            (grub_term_register_output): ... this.
            (grub_term_unregister): Split in ...
            (grub_term_unregister_input): ... this, and ...
            (grub_term_unregister_output): ... this.
            (grub_term_iterate): Split in ...
            (grub_term_iterate_input): ... this, and ...
            (grub_term_iterate_output): ... this.

            * kern/misc.c (grub_abort): Split use of grub_term_get_current() into
            a check for input and one for output (and only attempt to get keys
            from user when input works).

            * util/grub-probe.c (grub_term_get_current): Split in ...
            (grub_term_get_current_input): ... this, and ...
            (grub_term_get_current_output): ... this.
            * util/grub-fstest.c: Likewise.
            * util/i386/pc/grub-setup.c: Likewise.
            * util/grub-editenv.c: Likewise.

            Portability adjustments:

            * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Remove
            `term/i386/pc/at_keyboard.c'.
            * kern/ieee1275/init.c [__i386__] (grub_machine_init): Remove call to
            grub_keyboard_controller_init() (now handled by terminal .init).
            * kern/i386/coreboot/init.c (grub_machine_init): Add call to
            grub_at_keyboard_init().
            * include/grub/i386/ieee1275/console.h (grub_keyboard_controller_init)
            (grub_console_checkkey, grub_console_getkey): Remove (now provided by
            at_keyboard.mod via input terminal interface).
            * include/grub/i386/coreboot/console.h: Convert into a stub for
            `<grub/i386/pc/console.h>'.

            Migrate full terminals to new API:

            * term/efi/console.c (grub_console_term): Split into ...
            (grub_console_term_input): ... this, and ...
            (grub_console_term_output): ... this.  Update all users.
            * term/ieee1275/ofconsole.c: Remove __i386__ hack.
            (grub_ofconsole_init): Split into ...
            (grub_ofconsole_init_input): ... this, and ...
            (grub_ofconsole_init_output): ... this.
            (grub_ofconsole_term): Split into ...
            (grub_ofconsole_term_input): ... this, and ...
            (grub_ofconsole_term_output): ... this.  Update all users.
            * term/i386/pc/serial.c (grub_serial_term): Split into ...
            (grub_serial_term_input): ... this, and ...
            (grub_serial_term_output): ... this.  Update all users.
            * term/i386/pc/console.c (grub_console_term): Split into ...
            (grub_console_term_input): ... this, and ...
            (grub_console_term_output): ... this.  Update all users.
            (grub_console_term_input): Only enable it on PC/BIOS platform.
            (grub_console_init): Remove grub_keyboard_controller_init() call.

            Migrate input terminals to new API:

            * term/i386/pc/at_keyboard.c: Replace `cpu' and `machine' with
            `i386' and `i386/pc' to enable build on x86_64 (this driver is
            i386-specific anyway).
            (grub_console_checkkey): Rename to ...
            (grub_at_keyboard_checkkey): ... this.  Static-ize.  Update all
            users.
            (grub_keyboard_controller_orig): New variable.
            (grub_console_getkey): Rename to ...
            (grub_at_keyboard_getkey): ... this.  Static-ize.  Update all
            users.
            (grub_keyboard_controller_init): Static-ize.  Save original
            controller value so that it can be restored ...
            (grub_keyboard_controller_fini): ... here (new function).
            (grub_at_keyboard_term): New structure.
            (GRUB_MOD_INIT(at_keyboard), GRUB_MOD_FINI(at_keyboard)): New
            functions.

            Migrate output terminals to new API:

            * term/i386/pc/vga.c (grub_vga_term): Change type to
            `struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
            members.  Update all users.
            * term/gfxterm.c (grub_video_term): Change type to
            `struct  grub_term_output'.  Remove `.checkkey' and `.getkey'
            members.  Update all users.
            * include/grub/i386/pc/console.h (grub_console_checkkey)
            (grub_console_getkey): Do not export (no longer needed by gfxterm,
            etc).

            Migrate `terminal' command and userland tools to new API:

            * commands/terminal.c (grub_cmd_terminal): Split into ...
            (grub_cmd_terminal_input): ... this, and ...
            (grub_cmd_terminal_output): ... this.
            (GRUB_MOD_INIT(terminal)): Split `terminal' command in two commands:
            `terminal_input' and `terminal_output'.
            * util/grub.d/00_header.in: Adjust `terminal' calls to new
            `terminal_input' / `terminal_output' API.
            * util/grub-mkconfig.in: Export ${GRUB_TERMINAL_INPUT} and
            ${GRUB_TERMINAL_OUTPUT} instead of ${GRUB_TERMINAL} (and if user
            provided ${GRUB_TERMINAL}, convert it).
2008-11-07 19:11:39 +00:00
robertmh
96e5d876a4 2008-11-04 Robert Millan <rmh@aybabtu.com>
* util/grub.d/10_freebsd.in: New file.  Generate grub configuration
        for FreeBSD.
        * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 10_freebsd.
2008-11-04 15:20:35 +00:00
robertmh
7ab28c2157 2008-10-29 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-install.in: Handle empty string as output from
        make_system_path_relative_to_its_root().
2008-10-29 19:14:12 +00:00
fzielcke
c9618ab2fa 2008-10-03 Felix Zielcke <fzielcke@z-51.de>
* util/i386/pc: Source grub-mkconfig_lib instead of update-grub_lib.
2008-10-03 18:05:21 +00:00
fzielcke
bf981c620b 2008-10-03 Felix Zielcke <fzielcke@z-51.de>
* util/update-grub_lib.in: Mention filename in warning message.
2008-10-03 07:22:45 +00:00
fzielcke
18ade780ed 2008-09-29 Felix Zielcke <fzielcke@z-51.de>
* util/update-grub_lib.in: Copy to ...
	* util/grub-mkconfig_lib.in: ... this.  Update all users.
	* util/update-grub_lib.in: Make it a stub to `grub-mkconfigig_lib.in'.
	* util/update-grub.in: Rename to ...
	* util/grub-mkconfig.in: ... this.  Update all users.  Remove `-y'
	option. Add `--output' option to allow users to specify the generated
	configuration file.  Default to stdout.
	(update_grub_dir): Rename to ...
	(grub_mkconfig_dir): ... this.
	(grub_cfg): Default to an empty string.
	* conf/common.rmk (update-grub): Rename to ...
	(grub-mkconfig): ... this.
	(update-grub_lib): Copy to ...
	(grub-mkconfig_lib): ... this.
	(update-grub_SCRIPTS): Copy to ...
	(grub-mkconfig_SCRIPTS): ... this. Update all users.
	(update-grub_DATA): Rename to ...
	(grub-mkconfig_DATA): ... this.
2008-09-29 14:57:05 +00:00
robertmh
add6f17a17 2008-09-25 Robert Millan <rmh@aybabtu.com>
* util/grub-mkdevicemap.c (make_device_map): Actually replace all
        instances of grub_util_get_disk_name() (see previous commit).
2008-09-25 14:40:59 +00:00
robertmh
0e981d36bb Forgot to remove files / run autogen.sh 2008-09-25 14:17:43 +00:00
robertmh
d2a367b86f 2008-09-25 Robert Millan <rmh@aybabtu.com>
* conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/i386/get_disk_name.c'.
        * conf/i386-efi.rmk: Likewise.
        * conf/x86_64-efi.rmk: Likewise.
        * conf/i386-coreboot.rmk: Likewise.
        * conf/i386-ieee1275.rmk: Likewise.
        * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove
        `util/ieee1275/get_disk_name.c'.
        * include/grub/util/misc.h (grub_util_get_disk_name): Remove.
        * util/ieee1275/get_disk_name.c: Remove file.
        * util/i386/get_disk_name.c: Remove file.
        * util/grub-mkdevicemap.c (make_device_map): Back to hardcoding
        "hd%d" for device.map entries, rather than using
        grub_util_get_disk_name().
2008-09-25 14:15:24 +00:00
fzielcke
7fd75377be 2008-09-09 Felix Zielcke <fzielcke@z-51.de>
* util/hostdisk.c: Change #include <grub/util/biosdisk.h> to
        #include <grub/util/hostdisk.h>.
2008-09-09 07:28:17 +00:00
robertmh
40da438f10 2008-09-08 Robert Millan <rmh@aybabtu.com>
* util/hostdisk.c (open_device): Replace a grub_util_info() call
        with grub_dprintf("hostdisk", ...), as it was so verbose that it
        clobbered useful information.
2008-09-08 14:00:29 +00:00
robertmh
ddbf5556a7 2008-09-08 Robert Millan <rmh@aybabtu.com>
* include/grub/util/biosdisk.h: Move to ...
        * include/grub/util/hostdisk.h: ... here.  Update all users.
        * util/biosdisk.c: Move to ...
        * util/hostdisk.c: ... here.  Update all users.
2008-09-08 13:52:30 +00:00
fzielcke
4ee5592137 2008-09-04 Felix Zielcke <fzielcke@z-51.de>
* util/getroot.c: Include <config.h>.
        (grub_util_get_grub_dev): Rewrite to use asprintf for mdraid devices,
        add support for /dev/md/N devices and handle LVM double dash escaping.
2008-09-04 19:54:59 +00:00
robertmh
64d2d53c6b 2008-08-31 Colin D Bennett <colin@gibibit.com>
* util/i386/pc/grub-mkrescue.in: Support multiple overlay directories.
2008-08-31 16:28:32 +00:00
proski
7c5d8d950c 2008-08-30 Pavel Roskin <proski@gnu.org>
* util/genmoddep.c: Remove for real this time.
	* DISTLIST: Remove util/genmoddep.c.
2008-08-31 02:19:17 +00:00
bean
6e5a42fe9a 2008-08-29 Bean <bean123ch@gmail.com>
* configure.ac: Change host_os to cygwin for mingw.
	(asprintf): New check for function.

	* include/grub/symbol.h: Replace #ifndef __CYGWIN__ with
	#if ! defined (__CYGWIN__) && ! defined (__MINGW32__).

	* include/grub/util/misc.h: #include <config.h> and <grub/types.h>,
	declear asprintf if HAVE_ASPRINTF is not set, declear fseeko, ftello,
	sync, sleep and grub_util_get_disk_size for mingw.

	* util/biosdisk.c (grub_util_biosdisk_open): Use grub_util_get_disk_size
	to get size in mingw.
	(open_device): Use flag O_BINARY if it's defined.
	(find_root_device): Add dummy code for mingw.

	* util/grub-mkdevicemap.c (get_floppy_disk_name): Return 0 for mingw.
	(get_ide_disk_name): Return //./PHYSICALDRIVE%d for mingw.
	(get_scsi_disk_name): Return 0 for mingw.

	* util/hostfs.c: #include <grub/util/misc.h>.
	(grub_hostfs_open): Use "rb" flag to open file, use
	grub_util_get_disk_size to get disk size for mingw.

	* util/misc.c: #include <windows.h> and <winioctl.h> in mingw.
	(asprintf): New function if HAVE_ASPRINTF is not set.
	(sync): New function for mingw.
	(sleep): Likewise.
	(grub_util_get_disk_size): Likewise.
2008-08-29 19:55:23 +00:00
robertmh
1c282483bf 2008-08-28 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (find_grub_drive): Declare missing `i' variable.
2008-08-28 19:08:21 +00:00
robertmh
678e849cd3 2008-08-28 Robert Millan <rmh@aybabtu.com>
Change find_grub_drive() syntax so it doesn't prevent it from
        detecting NULL names as errors.

        * util/biosdisk.c (find_grub_drive): Move free slot search code
        from here ...
        (find_free_slot): ... to here.
        (read_device_map): Use find_free_slot() to search for free slots.
2008-08-28 14:36:18 +00:00
robertmh
c07ae501cb 2008-08-26 Robert Millan <rmh@aybabtu.com>
* util/biosdisk.c (grub_util_biosdisk_open, open_device)
        (grub_util_biosdisk_get_grub_dev): Make error messages a bit more
        descriptive.
2008-08-26 19:09:07 +00:00
bean
5ed20adcb9 2008-08-23 Bean <bean123ch@gmail.com>
* conf/common.rmk (grub_probe_SOURCES): Add disk/mdraid_linux.c.
	(grub_fstest_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c,
	disk/mdraid_linux.c and disk/dmraid_nvidia.c and lib/crc.c.
	(pkglib_MODULES): Add raid5rec.mod, raid6rec.mod, mdraid.mod and
	dm_nv.mod.
	(raid5rec_mod_SOURCES): New macro.
	(raid5rec_mod_CFLAGS): Likewise.
	(raid5rec_mod_LDFLAGS): Likewise.
	(raid6rec_mod_SOURCES): Likewise.
	(raid6rec_mod_CFLAGS): Likewise.
	(raid6rec_mod_LDFLAGS): Likewise.
	(mdraid_mod_SOURCES): Likewise.
	(mdraid_mod_CFLAGS): Likewise.
	(mdraid_mod_LDFLAGS): Likewise.
	(dm_nv_mod_SOURCES): Likewise.
	(dm_nv_mod_CFLAGS): Likewise.
	(dm_nv_mod_LDFLAGS): Likewise.

	* conf/i386-pc.rmk (grub_setup_SOURCES): Add disk/mdraid_linux.c.
	(grub_emu_SOURCES):  Add disk/raid5_recover.c, disk/raid6_recover.c,
	disk/mdraid_linux.c and disk/dmraid_nvidia.c.

	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add disk/raid5_recover.c,
	disk/raid6_recover.c, disk/mdraid_linux.c and disk/dmraid_nvidia.c.

	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.

	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.

	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.

	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.

	* disk/raid5_recover.c: New file.

	* disk/raid6_recover.c: Likewise.

	* disk/mdraid_linux.c: Likewise.

	* disk/dmraid_nvidia.c: Likewise.

	* disk/i386/pc/biosdisk.c: Set total_sectors of cdrom device to
	ULONG_MAX.

	* disk/raid.c (grub_raid_open): Use the size of the smallest disk to
	calculate the size of raid device.
	(grub_raid_read): Simplify raid0 code. Support raid4, raid6 and four
	different layout of raid5.
	(grub_raid_scan_device): Remove code specific to mdraid.
	(grub_raid_list): New variable.
	(free_array): New function.
	(grub_raid_register): Likewise.
	(grub_raid_unregister): Likewise.
	(grub_raid_rescan): Likewise.
	(GRUB_MOD_INIT): Don't iterate device here.
	(GRUB_MOD_FINI): Use free_array to release resource.

	* include/grub/raid.h: Remove macro and structure specific to mdraid.
	(grub_raid5_recover_func_t): New function variable type.
	(grub_raid6_recover_func_t): Likewise.
	(grub_raid5_recover_func): New variable.
	(grub_raid6_recover_func): Likewise.
	(grub_raid_register): New function.
	(grub_raid_unregister): Likewise.
	(grub_raid_rescan): Likewise.
	(grub_raid_block_xor): Likewise.

	* util/grub-fstest.c: Add #include <grub/raid.h> and <grub/lib/crc.h>.
	(CMD_CRC): New macro.
	(part): Removed.
	(read_file): Handle device as well as file.
	(cmd_crc): New function.
	(fstest): Handle multiple disks.
	(options): Remove part, raw and long, add root and diskcount.
	(usage): Add crc, remove -p, -r, -l, add -r and -c.
	(main): Find the first non option entry and ignore subsequence options,
	add handling for the new options, support multiple disks.

	* util/grub-probe.c (probe): Add mdraid to abstraction_name.
2008-08-23 14:51:19 +00:00
robertmh
8415f2617c 2008-08-23 Robert Millan <rmh@aybabtu.com>
* util/getroot.c (find_root_device): Skip anything that starts with
        a dot, not just directories.  This avoids things like /dev/.tmp.md0.
2008-08-23 12:19:43 +00:00
fzielcke
d5a7dc5b74 2008-08-22 Felix Zielcke <fzielcke@z-51.de>
* util/update-grub.in (GRUB_GFXMODE): Export variable.
	* util/grub.d/00_header.in: Allow the administrator to change default
	gfxmode via ${GRUB_GFXMODE}.
2008-08-22 12:58:46 +00:00