Commit graph

261 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
4dff488793 merge mainline into intwrap 2010-05-04 15:57:37 +02:00
Jiro SEKIBA
f67dc308f6 Nilfs2 support.
* conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
	(grub_fstest_SOURCES): Likewise.
	(pkglib_MODULES): Add nilfs2.mod.
	(nilfs2_mod_SOURCES): New variable.
	(nilfs2_mod_CFLAGS): Likewise.
	(nilfs2_mod_LDFLAGS): Likewise.
	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
	* fs/nilfs2.c: New file.
2010-04-24 22:09:08 +02:00
Vladimir 'phcoder' Serbinenko
5d04b11e0e Unify libgcc processing.
* Makefile.in (kernel_img_LDFLAGS): New variable.
	* conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
	* conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
	overwriting.
	* conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
	* conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
	* conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
	* conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
	* conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
	overwriting. Remove -lgcc and -static-libgcc
	* conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
	* conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
	* conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
	(kernel_img_LDFLAGS): Append instead of overwriting.
	Remove -lgcc and -static-libgcc
	* conf/sparc64-ieee1275.rmk: Likewise.
	* include/grub/powerpc/libgcc.h: Move to ...
	* include/grub/libgcc.h: .. this.
	* include/grub/libgcc.h: Don't export most of the function on x86.
	(__bswapsi2): New export.
	(__bswapdi2): Likewise.
	* include/grub/mips/libgcc.h: Removed.
	* include/grub/sparc64/libgcc.h: Likewise.
2010-04-11 01:14:31 +02:00
Vladimir 'phcoder' Serbinenko
44f77f21d8 Remove misc.S from i386-pc sources 2010-04-10 20:00:14 +02:00
Vladimir 'phcoder' Serbinenko
d2e5601745 Merge mainline into intwrap 2010-04-10 19:29:40 +02:00
Vladimir 'phcoder' Serbinenko
a29e902132 Merge mainline into emu-modload 2010-04-10 01:25:46 +02:00
Vladimir 'phcoder' Serbinenko
064cb524ec * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
* conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
2010-04-05 15:57:40 +02:00
Vladimir 'phcoder' Serbinenko
77356db852 Intwrapped biosdisk 2010-04-04 18:43:26 +02:00
Vladimir 'phcoder' Serbinenko
65936631e4 intwrap vbe and vga calls 2010-04-04 14:24:50 +02:00
Vladimir 'phcoder' Serbinenko
56912f57b6 Merge mainline into intwrap 2010-04-04 14:14:50 +02:00
Vladimir 'phcoder' Serbinenko
bb8eacef88 Merge mainline into sunpc 2010-03-26 16:35:12 +01:00
Vladimir 'phcoder' Serbinenko
c9ea504d25 merge mainline into nestpart 2010-03-26 15:44:13 +01:00
Vladimir 'phcoder' Serbinenko
1d63a066e2 Remove some redundancy in build system.
* Makefile.in (TARGET_CFLAGS): Add -ffreestanding.
	(TARGET_ASFLAGS): Add -nostdinc -fno-builtin.
	(TARGET_LDFLAGS): Add -nostdlib.
	(TARGET_IMG_LDFLAGS): Likewise.
	* commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do
	anything since mmap isn't available.
	* conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c.
	Add util/time.c.
	(pkglib_MODULES): Remove reboot.mod.
	(reboot_mod_SOURCES): Removed.
	(reboot_mod_CFLAGS): Likewise.
	(reboot_mod_LDFLAGS): Likewise.
	* conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable.
	(MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst.
	(DEFSYMFILES): Add kernel_syms.lst.
	(kernel_img_HEADERS): Add common headers.
	(symlist.c): New target.
	(kernel_syms.lst): Likewise.
	(pkglib_MODULES): Add memdisk.mod.
	(memdisk_mod_SOURCES): New variable.
	(memdisk_mod_CFLAGS): Likewise.
	(memdisk_mod_LDFLAGS): Likewise.
	(pkglib_MODULES): Add reboot.mod.
	(reboot_mod_SOURCES): New variable.
	(reboot_mod_CFLAGS): Likewise.
	(reboot_mod_LDFLAGS): Likewise.
	(pkglib_MODULES): Add date.mod.
	(date_mod_SOURCES): New variable.
	(date_mod_CFLAGS): Likewise.
	(date_mod_LDFLAGS): Likewise.
	(pkglib_MODULES): Add datehook.mod.
	(datehook_mod_SOURCES): New variable.
	(datehook_mod_CFLAGS): Likewise.
	(datehook_mod_LDFLAGS): Likewise.
	(pkglib_MODULES): Add lsmmap.mod.
	(lsmmap_mod_SOURCES): New variable.
	(lsmmap_mod_CFLAGS): Likewise.
	(lsmmap_mod_LDFLAGS): Likewise.
	(pkglib_MODULES): Add boot.mod.
	(boot_mod_SOURCES): New variable.
	(boot_mod_CFLAGS): Likewise.
	(boot_mod_LDFLAGS): Likewise.
	* conf/i386-coreboot.rmk: Removed redundant parts.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-pc.rmk: Likewise.
	* conf/mips-yeeloong.rmk: Likewise.
	* conf/mips.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.
	* conf/i386-coreboot.rmk: Moved qemu parts ..
	* conf/i386-qemu.rmk: ... here
	* conf/i386-efi.rmk: Moved common parts to...
	* conf/x86-efi.rmk: ... here.
	* conf/i386.rmk: Added modules common to all x86 variants.
	* configure.ac: Add -m32/-m64 to TARGET_ASFLAGS.
	* disk/memdisk.c: Remove grub/machine/kernel.h.
	* gensymlist.sh.in: Include symbol.h.
	* hook/datehook.c: Correct module name.
	* include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export.
	(grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise.
	* include/grub/i386/efi/serial.h: New file.
	* include/grub/x86_64/efi/serial.h: Likewise.
	* util/time.c: Likewise.
	* video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *.
2010-03-14 17:17:49 +01:00
Colin Watson
22d7b6137a 2010-03-03 Colin Watson <cjwatson@ubuntu.com>
* util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
	(grub_util_biosdisk_open): Initialise disk->data.
	(struct linux_partition_cache): New structure.
	(linux_find_partition): Cache partition start positions; these are
	expensive to compute on every read and write.
	(open_device): Cache open file descriptor in disk->data, so that we
	don't have to reopen it and flush the buffer cache for consecutive
	operations on the same device.
	(grub_util_biosdisk_close): New function.
	(grub_util_biosdisk_dev): Set `close' member.

	* conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
	* conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
	* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
	* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
	* conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
2010-03-03 10:44:12 +00:00
Vladimir 'phcoder' Serbinenko
abac2bf4db merge cleanbuild int emu-modload 2010-02-10 02:03:04 +01:00
Vladimir 'phcoder' Serbinenko
5c2ee77128 Share common compilation flags 2010-02-10 01:39:23 +01:00
Vladimir 'phcoder' Serbinenko
428b0b2edd Unify lexer.c_DEPENDENCIES 2010-02-10 01:09:23 +01:00
Vladimir 'phcoder' Serbinenko
efca454179 Merge kernel_img_HEADERS 2010-02-10 01:05:40 +01:00
Vladimir 'phcoder' Serbinenko
ed4e9b07a4 unify symlist.c 2010-02-10 00:16:28 +01:00
Vladimir 'phcoder' Serbinenko
ca3112ba2d merge cleanbuild into emu-modload 2010-02-08 00:21:55 +01:00
Vladimir 'phcoder' Serbinenko
ec0be08d40 Clean building system 2010-02-07 23:49:49 +01:00
Vladimir 'phcoder' Serbinenko
cc306106b9 Merge mainline into intwrap 2010-02-06 23:49:41 +01:00
Vladimir 'phcoder' Serbinenko
05d4e36ff6 reimport sunpc 2010-02-06 21:36:24 +01:00
Vladimir 'phcoder' Serbinenko
f3e309ad7d Use (hd0,msdos1) syntax. Eliminate partmap_iterate 2010-02-06 21:00:53 +01:00
Vladimir 'phcoder' Serbinenko
15cb7d433f Reimport nestpart 2010-02-06 18:43:37 +01:00
Vladimir 'phcoder' Serbinenko
61c501a941 merge mainline into newenv 2010-01-20 21:31:39 +01:00
Robert Millan
e022a2d667 Sync with trunk 2010-01-18 20:51:35 +00:00
Vladimir 'phcoder' Serbinenko
7728813a47 merge mainline into intwrap 2010-01-17 21:16:52 +01:00
Vladimir 'phcoder' Serbinenko
a0b766fc9b 2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
Enable multiboot on non-pc.

	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (pkglib_MODULES): Move
	multiboot.mod and multiboot2.mod to ...
	* conf/i386.rmk (pkglib_MODULES): ... here.
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_SOURCES):
	Moved to ...
	* conf/i386.rmk (multiboot_mod_SOURCES): .. here.
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_CFLAGS):
	Moved to ...
	* conf/i386.rmk (multiboot_mod_CFLAGS): .. here.
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_ASFLAGS):
	Moved to ...
	* conf/i386.rmk (multiboot_mod_ASFLAGS): .. here.
	* conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_LDFLAGS):
	Moved to ...
	* conf/i386.rmk (multiboot_mod_LDFLAGS): .. here.
	* conf/x86_64-efi.rmk (pkglib_MODULES): Remove ata.mod and
	relocator.mod.
	(ata_mod_SOURCES): Removed.
	(ata_mod_CFLAGS): Likewise.
	(ata_mod_LDFLAGS): Likewise.
	(relocator_mod_SOURCES): Removed.
	(relocator_mod_CFLAGS): Likewise.
	(relocator_mod_ASFLAGS): Likewise.
	(relocator_mod_LDFLAGS): Likewise.
	Include i386.mk.
	* include/grub/x86_64/multiboot.h: New file.
	* loader/i386/multiboot.c (grub_multiboot_boot) [GRUB_MACHINE_EFI]:
	Terminate EFI.
2010-01-15 21:11:51 +01:00
Vladimir 'phcoder' Serbinenko
cd0514794a MAnipulate mbi in abstract way 2010-01-10 18:58:18 +01:00
Vladimir 'phcoder' Serbinenko
85a2cf749f merge mainline into mips 2010-01-10 13:34:48 +01:00
Robert Millan
75cc5b682e Merge from trunk 2010-01-09 23:22:48 +01:00
Vladimir 'phcoder' Serbinenko
fc054c9cb8 Various cleanups 2010-01-07 22:18:59 +01:00
Robert Millan
bc8b32b3ec 2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
Reset Multiboot 2 support.  New loader implements the draft in
	/branches/multiboot2 and shares as much code as possible with the
	production Multiboot 1 implementation.
	
	* loader/ieee1275/multiboot2.c: Remove file.  Update all users.
	* loader/multiboot2.c: Likewise.
	* loader/i386/multiboot_helper.S: Likewise.
	* include/multiboot2.h: Replace with latest version from the draft
	in /branches/multiboot2.
	
	* conf/i386-coreboot.rmk (multiboot_mod_SOURCES): Remove
	`loader/i386/multiboot_helper.S', `loader/i386/pc/multiboot2.c'
	and `loader/multiboot2.c'.
	(pkglib_MODULES): Add `multiboot2.mod'.
	(multiboot2_mod_SOURCES): New variable.
	(multiboot2_mod_LDFLAGS): Likewise.
	(multiboot2_mod_CFLAGS): Likewise.  Define `GRUB_USE_MULTIBOOT2'.
	
	* conf/i386-pc.rmk: Likewise.
	
	* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
	(multiboot_mod_SOURCES): Remove variable.
	(multiboot_mod_LDFLAGS): Likewise.
	(multiboot_mod_CFLAGS): Likewise.
	
	* include/grub/multiboot.h [GRUB_USE_MULTIBOOT2]: Include
	`<multiboot2.h>' instead of `<multiboot.h>'.
	[GRUB_USE_MULTIBOOT2] (MULTIBOOT_BOOTLOADER_MAGIC)
	(MULTIBOOT_HEADER_MAGIC): New macros.
	
	* loader/multiboot_loader.c (module_version_status): Remove variable.
	(find_multi_boot2_header): Remove function.
	(grub_cmd_multiboot_loader): Remove Multiboot 2 / Multiboot 1 selection
	logic.  Always check for the Multiboot version we're compiling for.
	(grub_cmd_module_loader): Likewise.
	[GRUB_USE_MULTIBOOT2] (GRUB_MOD_INIT(multiboot)): Register `multiboot2'
	command instead of `multiboot'.
2010-01-07 21:05:25 +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
Vladimir 'phcoder' Serbinenko
eb3f57d3c4 proof of concept interrupt wrapping 2009-12-31 13:07:51 +01:00
Robert Millan
d94000ed13 Merge from trunk 2009-12-25 22:29:47 +00: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
2fbcbbc389 Save 314 bytes on not handling contexts in core 2009-12-20 02:52:39 +01:00
Vladimir 'phcoder' Serbinenko
7ea73643f5 merge mtrunk into xnu 2009-12-18 03:57:32 +01:00
Robert Millan
dfec2d96f9 Merge from trunk 2009-12-11 21:20:00 +00:00
Vladimir 'phcoder' Serbinenko
d4af2a73dc datetime for yeeloong 2009-12-11 22:14:09 +01:00
Vladimir 'phcoder' Serbinenko
bef393d4b3 fix qemu and coreboot ports 2009-12-05 18:46:28 +01:00
Vladimir 'phcoder' Serbinenko
537ee0a5f1 Merge relocators into mips 2009-12-02 09:55:04 +01:00
Vladimir 'phcoder' Serbinenko
4f41a23d4e merge mainline into mips 2009-12-02 09:51:36 +01:00
Vladimir 'phcoder' Serbinenko
159194989d Ported xnu to relocator framework 2009-11-27 09:42:50 +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
bde358ac91 merged with mainline 2009-11-25 23:17:32 +01:00
Carles Pina i Estany
4a8572e9d8 2009-11-24 Carles Pina i Estany <carles@pina.cat>
* conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h.
	* conf/i386-efi.rmk: Likewise.
	* conf/i386-ieee1275.rmk: Likewise.
	* conf/i386-pc.rmk: Likewise.
	* conf/powerpc-ieee1275.rmk: Likewise.
	* conf/sparc64-ieee1275.rmk: Likewise.
	* conf/x86_64-efi.rmk: Likewise.
	* gettext/gettex.c: Include <grub/i18n.h>.
	* include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from
 	  here ...
	* include/grub/i18n.h: ... to here
	* include/grub/i18n.h: ... to here.
	* kern/misc.c: Include <grub/i18n.h>
	(grub_gettext_dummy): Move above user.
2009-11-24 21:42:14 +00:00
Robert Millan
f515aa6224 2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
* script/sh/execute.c: Move from here ...
        * script/execute.c: ... to here.  Update all users.
        * script/sh/function.c: Move from here ...
        * script/function.c: ... to here.  Update all users.
        * script/sh/lexer.c: Move from here ...
        * script/lexer.c: ... to here.  Update all users.
        * script/sh/main.c: Move from here ...
        * script/main.c: ... to here.  Update all users.
        * script/sh/parser.y: Move from here ...
        * script/parser.y: ... to here.  Update all users.
        * script/sh/script.c: Move from here ...
        * script/script.c: ... to here.  Update all users.
2009-11-23 15:37:33 +00:00