fix EFI detection on Windows

We are on legacy BIOS if GetFirmwareEnvironmentVariable fails (returns
zero) *and* extended error information is ERROR_INVALID_FUNCTION.

Cf. http://msdn.microsoft.com/en-us/library/windows/desktop/ms724325%28v=vs.85%29.aspx
	* grub-core/kern/arm/cache_armv6.S: Remove .arch directive.

	As these functions are used on pre-ARMv6 CPUs as well we don't want
	to make assembler assume that architecture is higher than default one.
* INSTALL (Cross-compiling the GRUB): Fix some spelling mistakes.
* docs/grub.texi (Getting the source code): Likewise.

Conflicts:
	ChangeLog
* NEWS: First draft of 2.02 entry.
* NEWS: The cmosclean command in fact dates back to 1.99.  Remove
mention of it from 2.02.
remove unused error.h from kern/emu/misc.c

Fixes compilation on mingw32, where include is apparently missing.
	Don't abort() on unavailable coreboot tables if not running on coreboot.
	* NEWS: Add few missing entries. Correct existing ones.
strip .eh_frame section from arm64-efi kernel

Fixes grub-mkimage error "relocation 0x105 is not implemented yet."
use {grub,boot}aa64.efi for boot images on AArch64

According to UEFI 2.4 specification, default boot file name on AArch64
is BOOTAA64.EFI (3.4.1.1 Removable Media Boot Behavior). Also set default
GRUB image name to grubaa64.efi to match it.
fix 32 bit compilation on MinGW-w64

Use _FILE_OFFSET_BITS macro to distinguish between native MinGW and
32 bit under MinGW-64. The latter does not require fseeko/ftello
redefinition which it already does in case of _FILE_OFFSET_BITS=64.
Change grub-mkrescue to use bootaa64.efi too

Also add ChangeLog entry for previous change.
arm64: set correct length of device path end entry

The length of the Device Path End entry in the grub_linux_boot()
function was incorrectly set to 0. This triggers an assert failure
in debug builds of Tianocore.

Set it to sizeof (grub_efi_device_path_t).
* Makefile.util.def (grub-macbless): Change mansection to 8.
add part_apple to EFI rescue image to fix missing prefix

On Mac rescue image is booted from HFS+ partition, so bootpath looks like
/ACPI(a0341d0,0)/PCI(1,1f)/ATAPI(0,0,0)/HD(3,5d1,ca3,0000000000000000,20,0)/EndEntire

grub fails to find device for this path because it cannot scan partition
table. The simplest fix is to add part_apple by default.
freebsd/hostdisk.c is only ever compiled on FreeBSD

* grub-core/osdep/freebsd/hostdisk.c (grub_util_fd_open): Remove
redundant preprocessor conditional.
Prefer more portable test(1) constructs

* util/grub.d/00_header.in (make_timeout): Use && rather than test
-a.
* util/grub.d/10_windows.in: Likewise.
* util/grub.d/10_netbsd.in (netbsd_load_fs_module): Use || rather
than test -o.
* util/grub.d/30_os-prober.in: Use && rather than test -a, and ||
rather than test -o.
	* NEWS: Add few missing entries.
	* grub-core/kern/efi/efi.c: Ensure that the result starts with /
	and has no //.
	* util/grub-mount.c: Extend GCC warning workaround to grub-mount.