* conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Link at 64KB.
* kern/powerpc/ieee1275/init.c (_end): Add declaration.
(_start): Likewise.
(grub_arch_modules_addr): Return address after `_end'.
* util/powerpc/ieee1275/grub-mkimage.c: Include grub/misc.h.
(load_modules): Use new parameter as `p_paddr' and `p_vaddr'.
(add_segments): Calculate `_end' from phdr size and location.
(ALIGN_UP): Moved to ...
* include/grub/misc.h: here.
* include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN):
New macro.
(GRUB_IEEE1275_MODULE_BASE): Removed.
Add --with-platform to configure. Use pkglibdir instead of
pkgdatadir. This is reported by Roger Leigh.
* util/powerpc/ieee1275/grub-install.in (datadir): Removed.
(host_vendor): Likewise.
(host_os): Likewise.
(pkgdatadir): Likewise.
(platform): New variable.
(pkglibdir): Likewise.
Use PKGLIBDIR instead of PKGDATADIR.
* util/i386/pc/grub-install.in (datadir): Removed.
(host_vendor): Likewise.
(host_os): Likewise.
(pkgdatadir): Likewise.
(platform): New variable.
(pkglibdir): Likewise.
Use PKGLIBDIR instead of PKGDATADIR.
* util/powerpc/ieee1275/grub-mkimage.c (usage): Use GRUB_LIBDIR
instead of GRUB_DATADIR.
(main): Likewise.
* util/i386/pc/grub-mkimage.c (usage): Likewise.
(main): Likewise.
* util/i386/efi/grub-mkimage.c (usage): Likewise.
(main): Likewise.
* configure.ac (--with-platform): New option.
Use PLATFORM instead of HOST_VENDOR to specify a platform.
* Makefile.in: Include a makefile based on PLATFORM instead of
HOST_VENDOR.
(pkgdatadir): Not appended by the machine type.
(pkglibdir): Appended by the machine type.
(host_vendor): Removed.
(platform): New variable.
(BUILD_CPPFLAGS): Specify GRUB_LIBDIR instead of GRUB_DATADIR.
(install-local): Use PKGLIBDIR instead of PKGDATADIR.
(uninstall): Likewise.
* configure.ac: Fix the test for cross-compiling.
* genmk.rb (Program): Use `$(CC)' instead of `$(BUILD_CC)'. Don't
define GRUB_UTIL anymore.
* util/powerpc/ieee1275/grub-mkimage.c (load_note): Endian fixes
so this function works on other systems than just big endian.
(load_modules): Likewise.
(add_segments): Likewise.
* util/powerpc/ieee1275/grub-mkimage.c: Include <string.h>.
(note_path): Remove variable.
(GRUB_IEEE1275_NOTE_NAME): New macro.
(GRUB_IEEE1275_NOTE_TYPE): Likewise.
(grub_ieee1275_note_hdr): New structure.
(grub_ieee1275_note_desc): Likewise.
(grub_ieee1275_note): Likewise.
(load_note): Remove `dir' argument. All callers updated. Remove
`note_img' and `path'. Do not load a file from `note_path'.
Initialize a struct grub_ieee1275_note and write that to `out'.
Use GRUB_IEEE1275_MODULE_BASE instead of MODULE_BASE.