Commit graph

3352 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
13f58ea31f merge mainline into newreloc 2010-05-18 13:19:42 +02:00
Vladimir 'phcoder' Serbinenko
1d3293d67d Remove grub-mkisofs.
* conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
	(grub_mkisofs_SOURCES): Removed.
	(grub_mkisofs_CFLAGS): Removed.
	* util/mkisofs/defaults.h: Removed.
	* util/mkisofs/eltorito.c: Likewise.
	* util/mkisofs/exclude.h: Likewise.
	* util/mkisofs/hash.c: Likewise.
	* util/mkisofs/include/: Likewise.
	* util/mkisofs/include/fctldefs.h: Likewise.
	* util/mkisofs/include/mconfig.h: Likewise.
	* util/mkisofs/include/prototyp.h: Likewise.
	* util/mkisofs/include/statdefs.h: Likewise.
	* util/mkisofs/iso9660.h: Likewise.
	* util/mkisofs/joliet.c: Likewise.
	* util/mkisofs/match.c: Likewise.
	* util/mkisofs/match.h: Likewise.
	* util/mkisofs/mkisofs.c: Likewise.
	* util/mkisofs/mkisofs.h: Likewise.
	* util/mkisofs/msdos_partition.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.
2010-05-17 23:33:03 +02:00
Vladimir 'phcoder' Serbinenko
5dde9afe82 Unify grub-mkimage accross platforms.
* Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir).
	* conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage.
	(grub_mkelfimage_SOURCES): Removed.
	(util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to ..
	(util/grub-mkimage.c_DEPENDENCIES): .. this.
	(bin_UTILITIES): Add grub-mkimage.
	(grub_mkimage_SOURCES): New variable.
	(kernel_img_HEADERS): Remove machine/kernel.h.
	* conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img.
	(pkglib_PROGRAMS): Add kernel.img.
	(kernel_img_HEADERS): Add machine/kernel.h.
	(kernel_img_FORMAT): Removed.
	(bin_UTILITIES): Remove grub-mkimage.
	(grub_mkimage_SOURCES): Removed.
	(grub_mkimage_CFLAGS): Likewise.
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
	* conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img.
	(pkglib_PROGRAMS): Add kernel.img.
	(bin_UTILITIES): Remove grub-mkimage.
	(grub_mkimage_SOURCES): Removed.
	(grub_mkimage_CFLAGS): Likewise.
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
	* conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img.
	(pkglib_PROGRAMS): Add kernel.img.
	* conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img.
	(pkglib_PROGRAMS): Add kernel.img.
	* conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage.
	(grub_mkimage_SOURCES): Removed.
	(grub_mkimage_CFLAGS): Likewise.
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
	* conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img.
	(pkglib_PROGRAMS): Add kernel.img.
	(bin_UTILITIES): Remove grub-mkimage.
	(grub_mkimage_SOURCES): Removed.
	(grub_mkimage_CFLAGS): Likewise.
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
	* conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage.
	(grub_mkimage_SOURCES): Removed.
	(grub_mkimage_CFLAGS): Likewise.
	(util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
	* configure.ac (machine_CFLAGS): Add "-DMACHINE".
	* include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ...
	(grub_pe32_optional_header): ... this.
	(grub_pe64_optional_header): ... and this. All users updated.
	(GRUB_PE32_PE32_MAGIC): Split into ..
	(GRUB_PE32_PE32_MAGIC): .. this.
	(GRUB_PE32_PE64_MAGIC): .. and this.
	(GRUB_PE32_SIGNATURE_SIZE): New definition.
	* include/grub/elf.h (PT_GNU_STACK): New definition.
	* include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated.
	* include/grub/i386/efi/kernel.h: Likewise.
	* include/grub/i386/kernel.h: Likewise.
	* include/grub/i386/pc/kernel.h: Likewise.
	* include/grub/i386/qemu/boot.h: Likewise.
	* include/grub/mips/kernel.h: Likewise.
	* include/grub/mips/qemu-mips/kernel.h: Likewise.
	* include/grub/powerpc/ieee1275/kernel.h: Likewise.
	* include/grub/powerpc/kernel.h: Likewise.
	* include/grub/sparc64/ieee1275/boot.h: Likewise.
	* include/grub/sparc64/ieee1275/kernel.h: Likewise.
	* include/grub/sparc64/kernel.h: Likewise.
	* include/grub/x86_64/efi/kernel.h: Likewise.
	* include/grub/x86_64/kernel.h: Likewise.
	* include/grub/offsets.h: New file.
	* include/grub/kernel.h (grub_module_info): Split into ...
	(grub_module_info32): ... this.
	(grub_module_info64): ... and this.
	* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ...
	* include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here.
	(grub_boot_blocklist): Moved from here ...
	* include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here.
	* include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here.
	* include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here.
	* include/grub/types.h (grub_target_to_host16): Removed.
	(grub_target_to_host32): Likewise.
	(grub_target_to_host64): Likewise.
	(grub_host_to_target16): Likewise.
	(grub_host_to_target32): Likewise.
	(grub_host_to_target64): Likewise.
	(grub_host_to_target_addr): Likewise.

	Support grub-mkrescue for efi, coreboot and qemu.

	* conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue.
	* kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix.
	* util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c.
	* util/grub-mkrawimage.c: Moved from here ...
	* util/grub-mkimage.c: ... here. All users updated.
	(ALIGN_ADDR): Use image_target.
	(TARGET_NO_FIELD): New const.
	(image_target_desc): New type.
	(image_targets): New array.
	(grub_target_to_host64): Use image_target.
	(grub_target_to_host32): Likewise.
	(grub_target_to_host16): Likewise.
	(grub_host_to_target64): Likewise.
	(grub_host_to_target32): Likewise.
	(grub_host_to_target16): Likewise.
	(grub_host_to_target_addr): Likewise.
	(generate_image): Handle multiimage.
	(main): Require -O parameter. All users updated.
	* util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and
	util/efi/grub-mkimage.c
	* util/grub-mkrescue.in: Handle coreboot, efi and qemu.
	New option --rom-directory.
	Use xorriso.
	* util/i386/efi/grub-mkimage.c: Removed.
	* util/i386/pc/grub-setup.c (grub_target_to_host16): New definition.
	(grub_target_to_host32): Likewise.
	(grub_target_to_host64): Likewise.
	(grub_host_to_target16): Likewise.
	(grub_host_to_target32): Likewise.
	(grub_host_to_target64): Likewise.
	* util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition.
	(grub_target_to_host32): Likewise.
	(grub_target_to_host64): Likewise.
	(grub_host_to_target16): Likewise.
	(grub_host_to_target32): Likewise.
	(grub_host_to_target64): Likewise.
2010-05-17 23:04:10 +02:00
Vladimir 'phcoder' Serbinenko
6198f888c9 Revert spurious change in Makefile.in 2010-05-17 22:28:51 +02:00
Vladimir 'phcoder' Serbinenko
8b26d1d30b add missing sh.mod 2010-05-17 22:23:22 +02:00
Vladimir 'phcoder' Serbinenko
7e70395f9c Cherrypick bugfixes and coreboot+qemu support from expermental 2010-05-17 21:35:39 +02:00
Vladimir 'phcoder' Serbinenko
918405fd8c merge mainline into rescue-efi 2010-05-17 21:26:16 +02:00
BVK Chaitanya
f4fc97d02a source tree reorg for emu platform 2010-05-17 21:10:53 +05:30
BVK Chaitanya
d2d32327a8 merge with mainline 2010-05-17 20:36:05 +05:30
Vladimir 'phcoder' Serbinenko
65ce0931d0 Fix inconsistent grub_efiemu_finish_boot_services return type 2010-05-13 14:42:22 +02:00
Vladimir 'phcoder' Serbinenko
cced9145fc Fix gfxmenu crash.
Reported by: Thorsten Grützmacher.

	* gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister
	timeout hook.
	(circprog_set_property): Register and unregister timeout hook.
	* gfxmenu/gui_label.c (grub_gui_label): New fields template and value.
	(label_destroy): Free template. and unregister hook.
	(label_set_state): New function.
	(label_set_property): Handle templates and hooks.
	* gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister
	timeout hook.
	(progress_bar_set_property): Register and unregister timeout hook.
	* gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ...
	* include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here
	* gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable.
	(update_timeout_visit): Removed.
	(update_timeouts): New function.
	(redraw_timeouts): Likewise.
	(grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts.
	(grub_gfxmenu_clear_timeout): Likewise.
	* include/grub/gui.h (grub_gfxmenu_set_state_t): New type.
	(grub_gfxmenu_timeout_notify): Likewise.
	(grub_gfxmenu_timeout_notifications): New external variable.
	(grub_gfxmenu_timeout_register): New function.
	(grub_gfxmenu_timeout_unregister): Likewise.
2010-05-13 03:56:14 +02:00
Vladimir 'phcoder' Serbinenko
c6e5caab1d Transform (broken) vga terminal into (working) vga video driver.
* conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
	video/i386/pc/vga.c.
	* include/grub/video.h (grub_video_driver_id):
	Add GRUB_VIDEO_DRIVER_VGA.
	* term/i386/pc/vga.c: Renamed to ...
	* video/i386/pc/vga.c: ...this
	(DEBUG_VGA): Removed.
	(CHAR_WIDTH): Likewise.
	(CHAR_HEIGHT): Likewise.
	(TEXT_WIDTH): Likewise.
	(TEXT_HEIGHT): Likewise.
	(DEFAULT_FG_COLOR): Likewise.
	(DEFAULT_BG_COLOR): Likewise.
	(colored_char): Likewise.
	(xpos): Likewise.
	(ypos): Likewise.
	(cursor_state): Likewise.
	(fg_color): Likewise.
	(bg_color): Likewise.
	(text_buf): Likewise.
	(page): Likewise.
	(font): Likewise.
	(framebuffer): New variable.
	(set_read_map): Disabled.
	(setup): New variable.
	(is_target): Likewise.
	(grub_vga_mod_init): Likewise.
	(grub_vga_mod_fini): Likewise.
	(check_vga_mem): Likewise.
	(write_char): Likewise.
	(write_cursor): Likewise.
	(scroll_up): Likewise.
	(grub_vga_putchar): Likewise.
	(grub_vga_getcharwidth): Likewise.
	(grub_vga_getwh): Likewise.
	(grub_vga_getxy): Likewise.
	(grub_vga_gotoxy): Likewise.
	(grub_vga_cls): Likewise.
	(grub_vga_setcolorstate): Likewise.
	(grub_vga_setcursor): Likewise.
	(grub_video_vga_init): New function.
	(grub_video_vga_setup): Likewise.
	(grub_video_vga_fini): Likewise.
	(update_target): Likewise.
	(grub_video_vga_blit_bitmap): Likewise.
	(grub_video_vga_blit_render_target): Likewise.
	(grub_video_vga_set_active_render_target): Likewise.
	(grub_video_vga_get_active_render_target): Likewise.
	(grub_video_vga_swap_buffers): Likewise.
	(grub_video_vga_set_palette): Likewise.
	(grub_video_vga_get_info_and_fini): Likewise.
	(grub_vga_term): Removed.
	(grub_video_vga_adapter): New variable.
	(GRUB_MOD_INIT): Register a video driver instead of terminal.
	(GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
2010-05-09 11:00:21 +02:00
BVK Chaitanya
f1c891902d merge with mainline 2010-05-06 21:22:08 +05:30
BVK Chaitanya
60b4a7c45b sparc build fix 2010-05-06 10:16:55 +05:30
BVK Chaitanya
ab4da2cd36 build fixes for real platforms 2010-05-06 09:33:45 +05:30
BVK Chaitanya
da6e6f17f3 cygwin emu build fixes 2010-05-06 08:45:39 +05:30
Vladimir 'phcoder' Serbinenko
f948a3ffab respect GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM 2010-05-05 21:42:39 +02:00
Vladimir 'phcoder' Serbinenko
e96ee4339f merge mainline into newreloc 2010-05-05 21:41:43 +02:00
Vladimir 'phcoder' Serbinenko
0cd8e62cfa remove leftover modules 2010-05-05 21:41:25 +02:00
Vladimir 'phcoder' Serbinenko
2bf61a980b * video/readers/jpeg.c: Indented. 2010-05-05 21:19:55 +02:00
Vladimir 'phcoder' Serbinenko
09ddcd11fb Various jpeg cleanups.
* video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE.
	(grub_jpeg_decode_quan_table): Use sizeof.
	(grub_jpeg_decode_du): Use ARRAY_SIZE.
2010-05-05 21:18:10 +02:00
Peter Hurley
e550750546 * video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all
tables. Ignore non-last ac bit.
	(grub_jpeg_decode_quan_table): Likewise.
2010-05-05 21:03:59 +02:00
Vladimir 'phcoder' Serbinenko
7e720a9bc1 * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM.
	* kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
	GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu.
	* kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below
	1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set.
2010-05-05 18:52:13 +02:00
Vladimir 'phcoder' Serbinenko
a7fc080b56 * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
error.
2010-05-05 18:44:02 +02:00
Vladimir 'phcoder' Serbinenko
2bf6012d7f * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code. 2010-05-05 18:42:33 +02:00
Vladimir 'phcoder' Serbinenko
6a82c1b2db merge mainline into newreloc 2010-05-04 17:35:44 +02:00
Vladimir 'phcoder' Serbinenko
4e75dd1212 fix warnings on x86_64 2010-05-04 17:25:29 +02:00
Vladimir 'phcoder' Serbinenko
c3a4565068 Don't access NULL in dprintf 2010-05-04 11:32:10 +02:00
BVK Chaitanya
81827e248c merge with mainline 2010-05-04 09:09:03 +05:30
Vladimir 'phcoder' Serbinenko
0cb0344d11 Fix overflow and add more dprintfs 2010-05-03 23:02:18 +02:00
Vladimir 'phcoder' Serbinenko
cfdcef121f Fix efiemu compilation condition 2010-05-03 23:00:49 +02:00
Vladimir 'phcoder' Serbinenko
f34c08dac5 merge merge-mkimage into newreloc 2010-05-03 22:59:30 +02:00
Vladimir 'phcoder' Serbinenko
ee0b981c20 Fix BSD tests. Move BSD bootchecks to i386.rmk in hope to enable them one day everywhere 2010-05-03 22:58:27 +02:00
Vladimir 'phcoder' Serbinenko
a1a5c86985 Fix default mkimage path determination 2010-05-03 22:54:46 +02:00
Vladimir 'phcoder' Serbinenko
a57c242287 Add missing token 2010-05-03 22:53:51 +02:00
Vladimir 'phcoder' Serbinenko
265d68cd10 * commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
condition.
2010-05-03 13:17:12 +02:00
Vladimir 'phcoder' Serbinenko
7dd5a111ba * kern/mm.c (grub_real_malloc): Put magic and size assignment in common
part.
2010-05-03 13:12:55 +02:00
Vladimir 'phcoder' Serbinenko
9b058d5291 * kern/mm.c (grub_mm_init_region): Check for region size after aligning
pointers.
2010-05-03 13:07:31 +02:00
Vladimir 'phcoder' Serbinenko
2589383147 * kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0. 2010-05-03 12:53:32 +02:00
Vladimir 'phcoder' Serbinenko
86fbf9798a Fix makefile problem due to compression 2010-05-03 01:46:43 +02:00
Vladimir 'phcoder' Serbinenko
7f5320b319 Compress miniroot and decrease timeout 2010-05-02 23:09:45 +02:00
Vladimir 'phcoder' Serbinenko
05f602fc51 enable xnu on all platforms 2010-05-02 22:06:44 +02:00
Vladimir 'phcoder' Serbinenko
db292d391f Support elfsyms on mb2 2010-05-02 19:39:46 +02:00
Vladimir 'phcoder' Serbinenko
6f030865da Add missing memory.h 2010-05-02 19:39:35 +02:00
Vladimir 'phcoder' Serbinenko
32bf9244dc Remove reference to loader.h 2010-05-02 19:39:07 +02:00
Vladimir 'phcoder' Serbinenko
4fc5ff74f2 USe more low memory on i386-qemu 2010-05-02 16:27:22 +02:00
Vladimir 'phcoder' Serbinenko
92517362b2 Split a memory chunk spanning accross 1MiB mark for openbsd 2010-05-02 16:26:00 +02:00
Christian Franke
d1b61374ed * util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
Remove broken Cygwin path conversion.
	* util/misc.c: [__CYGWIN__] Add include and define.
	[__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify
	for Cygwin 1.7.
	(make_system_path_relative_to_its_root): Simplify loop, replace early
	return by break.
	[__CYGWIN__] Add conversion to win32 path.
	Include "/" case in trailing slash removal.
2010-05-01 21:39:32 +02:00
Vladimir 'phcoder' Serbinenko
3558c6e93c * kern/main.c (grub_load_config): Fix copy-pasted comment.
Reported by: Seth Goldberg
2010-05-01 21:32:23 +02:00
Vladimir 'phcoder' Serbinenko
f5f3ff9326 * commands/help.c (grub_cmd_help): Fix a typo.
Reported by: Seth Goldberg
2010-05-01 21:31:45 +02:00