1. 14 Apr, 2009 1 commit
    • fzielcke's avatar
      2009-04-14 Felix Zielcke <fzielcke@z-51.de> · 4484e01e
      fzielcke authored
      	* configure: Remove.
      	* config.h.in: Likewise.
      	* DISTLIST: Likewise.
      	* conf/common.mk: Likewise.
      	* conf/i386-coreboot.mk: Likewise.
      	* conf/i386-efi.mk: Likewise.
      	* conf/i386-ieee1275.mk: Likewise.
      	* conf/i386.mk: Likewise.
      	* conf/i386-pc.mk: Likewise.
      	* conf/powerpc-ieee1275.mk: Likewise.
      	* conf/sparc64-ieee1275.mk: Likewise.
      	* conf/x86_64-efi.mk: Likewise.
      	* INSTALL: Remove the sentence that Ruby and autoconf are only required if you
      	develop on GRUB.
  2. 13 Apr, 2009 1 commit
  3. 12 Apr, 2009 1 commit
    • proski's avatar
      2009-04-12 Pavel Roskin <proski@gnu.org> · 5b5d4aa5
      proski authored
               * configure.ac: Change the logic when we check for target tools.
               Do it when the target is specified and it's different from the
               specified value of the host.
  4. 11 Apr, 2009 1 commit
  5. 04 Apr, 2009 3 commits
    • phcoder's avatar
      2009-04-04 Vladimir Serbinenko <phcoder@gmail.com> · 04186a9c
      phcoder authored
      	* conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): add list.h 
      	and command.h
      	remove extraneous kernel_elf_HEADERS
    • okuji's avatar
      Undo r2063. · 6842cec4
      okuji authored
    • bean's avatar
      2009-04-04 Bean <bean123ch@gnail.com> · 838c4542
      bean authored
      	* 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
      	(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
      	(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.
  6. 01 Apr, 2009 3 commits
  7. 28 Mar, 2009 1 commit
    • okuji's avatar
      2009-03-29 Yoshinori K. Okuji <okuji@enbug.org> · 5709cfc4
      okuji authored
          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
          (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.
  8. 22 Mar, 2009 1 commit
    • proski's avatar
      2009-03-22 Pavel Roskin <proski@gno.org> · 41473ac2
      proski authored
      	* aclocal.m4 (grub_CHECK_START_SYMBOL): Remove.
      	* configure.ac: Don't call grub_CHECK_START_SYMBOL.
      	* kern/i386/pc/startup.S: Use _start instead of START_SYMBOL.
  9. 21 Mar, 2009 1 commit
    • bean's avatar
      2009-03-21 Bean <bean123ch@gmail.com> · 1f4147aa
      bean authored
      	* 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
  10. 04 Mar, 2009 2 commits
    • robertmh's avatar
      2009-03-04 Robert Millan <rmh@aybabtu.com> · 9304eef1
      robertmh authored
              Filter /etc/grub.d/10_* so that only add-ons for native kernels are
              * Makefile.in (host_kernel): New variable.
              * conf/common.rmk (grub-mkconfig_SCRIPTS): Conditionalize all 10_*.in
              scripts instead of just the windows one.
              * configure.ac: Initialize and AC_SUBST `host_kernel'.
    • bean's avatar
      2009-03-04 Bean <bean123ch@gmail.com> · 7e9ca17a
      bean authored
      	* configure.ac: Only test -mcmodel=large option in x86_64-efi, also add
      	another option -mno-red-zone.
      	* commands/handler.c: Change module description.
      	* kern/handler.c: Add missing space at the end of description line.
      	* kern/list.c: Likewise.
  11. 24 Feb, 2009 1 commit
    • bean's avatar
      2009-02-24 Bean <bean123ch@gmail.com> · 6e09b8b7
      bean authored
      	* 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
      	* 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.
  12. 08 Feb, 2009 2 commits
    • robertmh's avatar
      2009-02-08 Robert Millan <rmh@aybabtu.com> · 56978920
      robertmh authored
              * Makefile.in (host_os, host_cpu): New variables.
              (target_os): Remove.  Update all users.
    • robertmh's avatar
      2009-02-08 Marco Gerards <marco@gnu.org> · d64399b5
      robertmh authored
              * 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
              * 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'.
  13. 25 Jan, 2009 1 commit
  14. 13 Jan, 2009 1 commit
    • bean's avatar
      2009-01-13 Bean <bean123ch@gmail.com> · e52db1f7
      bean authored
      	* 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.
  15. 02 Jan, 2009 1 commit
    • chaac's avatar
      2009-01-02 Colin D Bennett <colin@gibibit.com> · 1e901a75
      chaac authored
      	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
      	* 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_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.
  16. 19 Sep, 2008 1 commit
    • chrfranke's avatar
      2008-09-19 Christian Franke <franke@computer.org> · 9035dce4
      chrfranke authored
      	* aclocal.m4 (grub_CHECK_ENABLE_EXECUTE_STACK): New function.
      	* configure.ac: Call grub_CHECK_ENABLE_EXECUTE_STACK.
      	* include/grub/misc.h [NEED_ENABLE_EXECUTE_STACK]:
      	Export __enable_execute_stack() to modules.
      	* kern/misc.c [NEED_ENABLE_EXECUTE_STACK] (__enable_execute_stack):
      	New function.
  17. 29 Aug, 2008 1 commit
    • bean's avatar
      2008-08-29 Bean <bean123ch@gmail.com> · 6e5a42fe
      bean authored
      	* 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.
  18. 09 Aug, 2008 1 commit
    • chrfranke's avatar
      2008-08-09 Christian Franke <franke@computer.org> · 2d05bc6a
      chrfranke authored
      	* Makefile.in: Add `target_os' and `enable_grub_pe2elf'.
      	* conf/common.rmk: Install `grub-pe2elf' only if requested.
      	Install `grub.d/10_windows' only on Cygwin.
      	* configure.ac: Add subst of `target_os'.
      	Check `target_os' also before setting TARGET_OBJ2ELF.
      	Add `--enable-grub-pe2elf'.
  19. 24 Jul, 2008 2 commits
    • bean's avatar
      2008-07-24 Bean <bean123ch@gmail.com> · 7810e747
      bean authored
      	* configure.ac: Fixed a bug caused by the previous cygwin patch,
      	variable `target_platform' should be `platform'.
    • bean's avatar
      2008-07-24 Bean <bean123ch@gmail.com> · 2a8a80e4
      bean authored
      	* common.rmk (bin_UTILITIES): Add grub-pe2elf.
      	(grub_pe2elf_SOURCES): New macro.
      	(CLEANFILES): Add grub-pe2elf.
      	* include/grub/efi/pe32.h (GRUB_PE32_SCN_ALIGN_1BYTES): New constant.
      	(GRUB_PE32_SCN_ALIGN_2BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_4BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_8BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_16BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_32BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_64BYTES): Likewise.
      	(GRUB_PE32_SCN_ALIGN_SHIFT): Likewise.
      	(GRUB_PE32_SCN_ALIGN_MASK): Likewise.
      	(GRUB_PE32_SYM_CLASS_EXTERNAL): Likewise.
      	(GRUB_PE32_SYM_CLASS_STATIC): Likewise.
      	(GRUB_PE32_SYM_CLASS_FILE): Likewise.
      	(GRUB_PE32_DT_FUNCTION): Likewise.
      	(GRUB_PE32_REL_I386_DIR32): Likewise.
      	(GRUB_PE32_REL_I386_REL32): Likewise.
      	(grub_pe32_symbol): New structure.
      	(grub_pe32_reloc): Likewise.
      	* util/grub-pe2elf.c: New file.
      	* configure.ac: Set TARGET_OBJ2ELF if host os is cygwin. Don't test for
      	start symbol in non pc platform.
      	* genmk.rb: Use TARGET_OBJ2ELF to convert native object format to elf.
      	The following patches are from Christian Franke.
      	* include/grub/dl.h: Remove .previous, gas supports this only
      	for ELF format.
      	* include/grub/symbol.h [__CYGWIN__] (#define FUNCTION/VARIABLE):
      	Remove .type, gas supports this only for ELF format.
      	* kern/dl.c (grub_dl_resolve_dependencies): Add check for trailing
      	nullbytes in symbol table. This fixes an infinite loop if table is
      	zero filled.
      	* Makefile.in: Add autoconf replacements TARGET_IMG_LDSCRIPT,
      	* aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Replace -Wl,-N by
      	(grub_CHECK_STACK_ARG_PROBE): New function.
      	* conf/i386-pc.rmk: Replace -Wl,-N by TARGET_IMG_LDFLAGS.
      	* conf/i386-pc-cygwin-ld-img.sc: New linker script.
      	* configure.ac: Add check for linker script "conf/${target}-img-ld.c"
      	to set TARGET_IMG_LD* accordingly.
      	Add check for Cygwin to set TARGET_MOD_OBJCOPY accordingly.
      	Add call to grub_CHECK_STACK_ARG_PROBE.
      	Use TARGET_IMG_LDFLAGS to check start, bss_start, end symbols.
      	* genkernsyms.sh.in: Handle HAVE_ASM_USCORE case.
      	* genmk.rb: Add EXEEXT to CLEANFILES.
  20. 18 Jul, 2008 1 commit
    • proski's avatar
      2008-07-17 Pavel Roskin <proski@gnu.org> · 3f4ce737
      proski authored
      	* configure.ac: Use -m32 or -m64 regardless of whether we had to
      	change target_cpu.  The compiler default can mismatch target_cpu
      	in any case.
  21. 17 Jul, 2008 5 commits
    • proski's avatar
      2008-07-17 Pavel Roskin <proski@gnu.org> · f6130a12
      proski authored
      	* aclocal.m4 (grub_PROG_TARGET_CC): New macro.  Check if the
      	target compiler is functional.
      	* configure.ac: Call grub_PROG_TARGET_CC once all target flags
      	are set up.
    • proski's avatar
      2008-07-17 Pavel Roskin <proski@gnu.org> · 58393a2d
      proski authored
      	* configure.ac: Default to efi platform for x86_64-apple.  Allow
      	powerpc64 CPU, default to ieee1275 platform for it.  Split CPU
      	adjustments from the rest, only do them if target is not
      	explicitly given.  Merge other adjustments with the final sanity
      	check.  Remove an extraneous check for supported CPU.  Be
      	specific which CPU and which platform is not supported.
    • proski's avatar
      2008-07-17 Pavel Roskin <proski@gnu.org> · 737feb35
      proski authored
      	* configure.ac: Default to pc platform for x86_64.
    • robertmh's avatar
      2008-07-17 Robert Millan <rmh@aybabtu.com> · 546f966a
      robertmh authored
              Partial LinuxBIOS -> Coreboot rename.
              * conf/i386-linuxbios.rmk: Renamed to ...
              * conf/i386-coreboot.rmk: ... this.
              * Makefile.in (RMKFILES): s/i386-linuxbios.rmk/i386-coreboot.rmk/g.
              * configure.ac: Accept coreboot as input platform (but maintain
              compatibility with linuxbios).
              * include/grub/i386/linuxbios: Renamed to ...
              * include/grub/i386/coreboot: ... this.
    • bean's avatar
      2008-07-17 Bean <bean123ch@gmail.com> · 20011694
      bean authored
      	* conf/i386/efi.rmk (pkglib_MODULES): add pci.mod and lspci.mod.
      	(appleldr_mod_SOURCE): New variavle.
      	(appleldr_mod_CFLAGS): Likewise.
      	(appleldr_mod_LDFLAGS): Likewise.
      	(pci_mod_SOURCES): Likewise.
      	(pci_mod_CFLAGS): Likewise.
      	(pci_mod_LDFLAGS): Likewise.
      	(lspci_mod_SOURCES): Likewise.
      	(lspci_mod_CFLAGS): Likewise.
      	(lspci_mod_LDFLAGS): Likewise.
      	* conf/x86_64-efi.rmk: New file.
      	* disk/efi/efidisk.c (grub_efidisk_read): Wrap efi calls with efi_call_N
      	(grub_efidisk_write): Likewise.
      	* include/efi/api.h (efi_call_0): New macro.
      	(efi_call_1): Likewise.
      	(efi_call_2): Likewise.
      	(efi_call_3): Likewise.
      	(efi_call_4): Likewise.
      	(efi_call_5): Likewise.
      	(efi_call_6): Likewise.
      	* include/grub/efi/chainloader.h (grub_chainloader_cmd): Rename to
      	* include/grub/efi/pe32.h (GRUB_PE32_MACHINE_X86_64): New macro.
      	(grub_pe32_optional_header): Change some fields based on i386 or
      	x86_64 platform.
      	(GRUB_PE32_PE32_MAGIC): Likewise.
      	* include/grub/efi/uga_draw.h: New file.
      	* include/grub/elf.h (STN_ABS): New constant.
      	(R_X86_64_NONE): Relocation constant for x86_64.
      	(R_X86_64_64): Likewise.
      	(R_X86_64_PC32): Likewise.
      	(R_X86_64_GOT32): Likewise.
      	(R_X86_64_PLT32): Likewise.
      	(R_X86_64_COPY): Likewise.
      	(R_X86_64_GLOB_DAT): Likewise.
      	(R_X86_64_JUMP_SLOT): Likewise.
      	(R_X86_64_RELATIVE): Likewise.
      	(R_X86_64_GOTPCREL): Likewise.
      	(R_X86_64_32): Likewise.
      	(R_X86_64_32S): Likewise.
      	(R_X86_64_16): Likewise.
      	(R_X86_64_PC16): Likewise.
      	(R_X86_64_8): Likewise.
      	(R_X86_64_PC8): Likewise.
      	* include/grub/i386/efi/pci.h: New file.
      	* include/grub/i386/linux.h (GRUB_LINUX_EFI_SIGNATURE):
      	Change it value based on platform.
      	(GRUB_LINUX_EFI_SIGNATURE_0204): New constant.
      	(GRUB_E820_RAM): Likewise.
      	(GRUB_E820_RESERVED): Likewise.
      	(GRUB_E820_ACPI): Likewise.
      	(GRUB_E820_NVS): Likewise.
      	(GRUB_E820_EXEC_CODE): Likewise.
      	(GRUB_E820_MAX_ENTRY): Likewise.
      	(grub_e820_mmap): New structure.
      	(linux_kernel_header): Change the efi field according to different
      	kernel version, also field from linux_kernel_header.
      	* include/grub/kernel.h (grub_module_info): Add padding for x86_64.
      	* include/grub/pci.h (GRUB_PCI_ADDR_SPACE_MASK): New constant.
      	(GRUB_PCI_ADDR_SPACE_MEMORY): Likewise.
      	(GRUB_PCI_ADDR_SPACE_IO): Likewise.
      	(GRUB_PCI_ADDR_MEM_TYPE_MASK): Likewise.
      	(GRUB_PCI_ADDR_MEM_TYPE_32): Likewise.
      	(GRUB_PCI_ADDR_MEM_TYPE_1M): Likewise.
      	(GRUB_PCI_ADDR_MEM_TYPE_64): Likewise.
      	(GRUB_PCI_ADDR_MEM_PREFETCH): Likewise.
      	(GRUB_PCI_ADDR_MEM_MASK): Likewise.
      	(GRUB_PCI_ADDR_IO_MASK): Likewise.
      	* include/grub/x86_64/efi/kernel.h: New file.
      	* include/grub/x86_64/efi/loader.h: Likewise.
      	* include/grub/x86_64/efi/machine.h: Likewise.
      	* include/grub/x86_64/efi/pci.h: Likewise.
      	* include/grub/x86_64/efi/time.h: Likewise.
      	* include/grub/x86_64/linux.h: Likewise.
      	* include/grub/x86_64/setjmp.h: Likewise.
      	* include/grub/x86_64/time.h: Likewise.
      	* include/grub/x86_64/types.h: Likewise.
      	* kern/dl.c (GRUB_CPU_SIZEOF_VOID_P): Changed to
      	* kern/efi/efi.c (grub_efi_locate_protocol): Wrap efi calls.
      	(grub_efi_locate_handle): Likewise.
      	(grub_efi_open_protocol): Likewise.
      	(grub_efi_set_text_mode): Likewise.
      	(grub_efi_stall): Likewise.
      	(grub_exit): Likewise.
      	(grub_reboot): Likewise.
      	(grub_halt): Likewise.
      	(grub_efi_exit_boot_services): Likewise.
      	(grub_get_rtc): Likewise.
      	* kern/efi/mm.c (MEMORY_MAP_SIZE): Change to 0x3000 for new models.
      	(grub_efi_allocate_pages): Wrap efi calls.
      	(grub_efi_free_pages): Wrap efi calls.
      	(grub_efi_get_memory_map): Wrap efi calls.
      	* kern/x86_64/dl.c: New file.
      	* kern/x86_64/efi/callwrap.S: Likewise.
      	* kern/x86_64/efi/startup.S: Likewise.
      	* loader/efi/appleloader.c: Likewise.
      	* loader/efi/chainloader.c (cmdline): New variable.
      	(grub_chainloader_unload): Wrap efi calls.
      	(grub_chainloader_boot): Likewise.
      	(grub_rescue_cmd_chainloader): Wrap efi calls, handle
      	command line.
      	* loader/efi/chainloader_normal.c (chainloader_command):
      	Change grub_chainloader_cmd to grub_rescue_cmd_chainloader, pass
      	command line.
      	* loader/i386/efi/linux.c (allocate_pages): Change allocation
      	(grub_e820_add_region): New function.
      	(grub_linux_boot): Construct e820 map from efi map, handle x86_64
      	(grub_find_video_card): New function.
      	(grub_linux_setup_video): New function.
      	(grub_rescue_cmd_linux): Probe for video information.
      	* normal/x86_64/setjmp.S: New file.
      	* term/efi/console.c (map_char): New function.
      	(grub_console_putchar): Map unicode char.
      	(grub_console_checkkey): Wrap efi calls.
      	(grub_console_getkey): Likewise.
      	(grub_console_getwh): Likewise.
      	(grub_console_gotoxy): Likewise.
      	(grub_console_cls): Likewise.
      	(grub_console_setcolorstate): Likewise.
      	(grub_console_setcursor): Likewise.
      	* util/i386/efi/grub-mkimage.c: Add support for x86_64.
  22. 13 Jul, 2008 1 commit
    • bean's avatar
      2008-07-13 Bean <bean123ch@gmail.com> · aa24b516
      bean authored
      	* Makefile.in (enable_lzo): New rule.
      	* conf/i386-pc.rmk (grub_mkimage_SOURCES): New test with enable_lzo.
      	* configure.ac (ENABLE_LZO): New option --enable-lzo.
      	* boot/i386/pc/lnxboot.S: #include <config.h>.
      	* include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): Change
      	its value accordding to the compression algorithm used, lzo or lzma.
      	* util/i386/pc/grub-mkimage.c (compress_kernel): Use different
      	compression algorithm according to configure macro.
      	* kern/i386/pc/startup.S (codestart): Likewise.
      	* kern/i386/pc/lzma_decode.S: New file.
      	* include/grub/lib/LzFind.h: Likewise.
      	* include/grub/lib/LzHash.h: Likewise.
      	* include/grub/lib/LzmaDec.h: Likewise.
      	* include/grub/lib/LzmaEnc.h: Likewise.
      	* include/grub/lib/LzmaTypes.h: Likewise.
      	* lib/LzFind.c: Likewise.
      	* lib/LzmaDec.c: Likewise.
      	* lib/LzmaEnc.c: Likewise.
  23. 02 Jul, 2008 1 commit
    • proski's avatar
      2008-07-02 Pavel Roskin <proski@gnu.org> · cb71ba20
      proski authored
      	* Makefile.in (MODULE_LDFLAGS): New variable.
      	* aclocal.m4 (grub_PROG_LD_BUILD_ID_NONE): New macro.  Check if
      	the linker accepts --build-id=none.
      	* configure.ac: Call grub_PROG_LD_BUILD_ID_NONE.  Substitute
      	* genmk.rb: Use MODULE_LDFLAGS when linking modules.
  24. 17 Apr, 2008 1 commit
    • robertmh's avatar
      2008-04-17 Lubomir Kundrak <lkundrak@redhat.com> · 1977517d
      robertmh authored
              * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): take only .text
              section into account, newer toolchains generate unique build ids
              * configure.ac: remove the test for --build-id=none acceptance,
              we want build ids to bre preserved
              * genmk.rb: add -R .note.gnu.build-id to objcopy, so build id
              far from other sections don't cause the raw binary images grow
  25. 10 Apr, 2008 1 commit
  26. 13 Feb, 2008 2 commits
  27. 09 Feb, 2008 1 commit
    • robertmh's avatar
      2008-02-09 Robert Millan <rmh@aybabtu.com> · 68807e5f
      robertmh authored
              * configure.ac: Probe for `help2man'.
              * Makefile.in (builddir): New variable.
              (HELP2MAN): Likewise.  Set to `true' when @HELP2MAN@ doesn't provide it,
              or otherwise add a few flags/options to it.
              (install-local): For every executable utility or script that is
              installed, invoke $(HELP2MAN) to install a manpage based on --help
              * util/i386/pc/grub-install.in: Move down `update-grub_lib' sourcing, so
              that it doesn't prevent --help from working in build tree.
              * util/i386/pc/grub-mkrescue.in (usage): Replace `grub-devel@gnu.org'
              with `bug-grub@gnu.org'.
              * util/powerpc/ieee1275/grub-mkrescue.in (usage): Likewise.
              * util/update-grub.in (usage): New function.
              Implement proper argument check, with support for --help and --version
              (as well as existing -y).
  28. 05 Feb, 2008 1 commit
    • robertmh's avatar
      2008-02-05 Robert Millan <rmh@aybabtu.com> · 409480b7
      robertmh authored
              * include/grub/term.h (GRUB_TERM_LEFT, GRUB_TERM_RIGHT)
              (GRUB_TERM_TAB, GRUB_TERM_BACKSPACE): New macros.
              * kern/i386/pc/startup.S: Include `<grub/term.h>'.
              (translation_table): Replace hardcoded values with macros
              provided by `<grub/term.h>'.
              * term/i386/pc/at_keyboard.c: Include `<grub/term.h>'.
              (keyboard_map): Correct/add a few values, with macros provided
              by `<grub/term.h>'.
              (keyboard_map_shift): Zero values that don't differ from their
              `keyboard_map' equivalents.
              (grub_console_checkkey): Optimize KEYBOARD_STATUS_CAPS_LOCK toggling.
              Discard the second scan code that is always sent by Caps lock.
              Only use `keyboard_map_shift' when it provides a non-zero value,
              otherwise fallback to `keyboard_map'.