Commit Graph

8552 Commits

Author SHA1 Message Date
Andrey Borzenkov 840a2c0592 add verbose information to linux platform check
As suggested by Vladimir Serbienko, add additional verbose output to inform
why we selected this specific platform.
2013-12-16 23:17:40 +04:00
Andrey Borzenkov 35248820ea ChangeLog for previous two commits. 2013-12-16 22:56:48 +04:00
Andrey Borzenkov d770e63557 use grub_util_exec_redirect_all to silence "moprobe efivars"
modprobe -q still prints error on non-EFI. Redirect stderr instead.

Reported by Javier Vasquez.
2013-12-16 22:41:16 +04:00
Andrey Borzenkov 396311f0f6 consolidate grub_util_exec code
We need to hide "modprobe efivars" error output to avoid confusion. So
consolidate grub_util_exec_* into single function that can optionally redirect
all three standard descriptors and make all other functions compatibility
wrappers.

Also remove include/grub/osdep/exec_unix.h which does not appear to be used
anywhere.
2013-12-16 22:41:15 +04:00
Vladimir Serbinenko 316c8d9a18 Make grub_xen_hypercall on i386 cdecl rather than stdcall to avoid
linker trying to "fixup" the code.
2013-12-16 18:10:50 +01:00
Vladimir Serbinenko 8fcce8d50f * grub-core/kern/x86_64/xen/startup.S: Align stack. 2013-12-16 17:44:10 +01:00
Vladimir Serbinenko 6f1f6a0c82 Add support for converting PE+ to Elf64. 2013-12-16 15:30:50 +01:00
Vladimir Serbinenko 66a07ce2f8 * grub-core/commands/minicmd.c (grub_mini_cmd_dump): Handle LLP case. 2013-12-16 15:28:07 +01:00
Vladimir Serbinenko cc6fb517de Remove practice of assigning random const pointers to device id.
This is not required as cache code already checks driver id as well.
2013-12-16 14:49:11 +01:00
Vladimir Serbinenko f009f07c95 * include/grub/x86_64/types.h: Define sizeof (long) as 4 when compiling
with mingw.
2013-12-16 14:41:12 +01:00
Vladimir Serbinenko 9fdec226ff * include/grub/efi/api.h: Don't use call wrappers when compiled with
mingw or cygwin as API already matches.
2013-12-16 14:39:06 +01:00
Vladimir Serbinenko d87cb3ae3c * grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining. 2013-12-16 14:36:48 +01:00
Vladimir Serbinenko 3e38c31a4b * include/grub/efi/api.h: Define (u)intn_t based on pointer size and
not on long.
2013-12-16 14:34:23 +01:00
Vladimir Serbinenko f4171ebd34 Handle X86_64_PC64 relocation.
Those are generated by some cygwin compilers.
2013-12-16 14:24:19 +01:00
Vladimir Serbinenko 252a289cb3 Determine the need for mingw-related stubs at compile time rather than
using not very significant $target_os.
2013-12-16 14:18:15 +01:00
Vladimir Serbinenko fadddc260a Merge branch 'master' of git.sv.gnu.org:/srv/git/grub
Conflicts:
	ChangeLog
2013-12-16 14:15:37 +01:00
Vladimir Serbinenko 23d2abc33c * grub-core/genmod.sh.in: Strip before converting to ELF as strip
may not work with ELF.
2013-12-16 13:18:48 +01:00
Vladimir Serbinenko 4f979ccbf1 Use unix functions for temporary files and special files on cygwin. 2013-12-16 13:16:37 +01:00
Vladimir Serbinenko 37378f748a Define functions explicitly rather than using --defsym in tests
whenever possible. Respect locality in remaining cases.
2013-12-16 13:07:28 +01:00
Vladimir Serbinenko 6a09d83e12 * grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin. 2013-12-16 13:02:19 +01:00
Andrey Borzenkov e477187bf4 small fixes for Windows EFI install code
Fix potential crash caused by signed vs. unsigned comparison. Negative
length compares as very large unsigned number causing subsequent NULL access.

Make exhaustive search for all BootNNNN variables to find one matching
requested efi_distributor.
2013-12-15 22:00:15 +04:00
Ian Campbell 80b865bdc8 * grub-core/kern/uboot/init.c: Fix units of uboot timer. 2013-12-15 17:59:40 +01:00
Vladimir Serbinenko 04b0285701 New functional test for sleep function.
This test allows to check sleep without qemu. Keep qemu version as
	well as functional test won't notice if all clocks are going too fast
	or too slow.
2013-12-15 17:57:58 +01:00
Vladimir Serbinenko 39711101fd Add explicit sysv_abi on amd64 asm routines. 2013-12-15 14:48:42 +01:00
Vladimir Serbinenko d99af4f0e8 * grub-core/commands/efi/lsefisystab.c: Use %lld to show num_table_entries. 2013-12-15 14:42:19 +01:00
Vladimir Serbinenko 7104368446 * include/grub/test.h: Use gnu_printf rather than printf on GRUB
functions.
2013-12-15 14:39:21 +01:00
Vladimir Serbinenko 111bf5db8b * grub-core/loader/i386/linux.c: Use grub_addr_t rather than long when
appropriate.
2013-12-15 14:37:12 +01:00
Vladimir Serbinenko 24ca71c93b * grub-core/loader/i386/linux.c: Use %p rather than %lx for pointers. 2013-12-15 14:35:18 +01:00
Vladimir Serbinenko 48ba5c0c86 * grub-core/kern/elfXX.c: Use grub_addr_t rather than long when
appropriate.
2013-12-15 14:33:22 +01:00
Vladimir Serbinenko 8ae6704517 * grub-core/disk/loopback.c: Use sequential IDs rather than pointer.
In case of quick removal of loopback and adding another one it may
	get same ID, confusing the cache system.
2013-12-15 14:31:21 +01:00
Vladimir Serbinenko ed55931073 * grub-core/commands/acpi.c: Use grub_addr_t rather than long when
appropriate.
2013-12-15 14:27:04 +01:00
Vladimir Serbinenko 8fa2627942 * grub-core/kern/i386/coreboot/cbtable.c: Use char * arithmetic rather
than converting to long.
2013-12-15 14:24:34 +01:00
Vladimir Serbinenko 6f5f3337d8 * grub-core/disk/cryptodisk.c: Rename "n" to "last_cryptodisk_id". 2013-12-15 14:21:14 +01:00
Vladimir Serbinenko e7c418c58f * util/grub-mkimagexx.c (relocate_addresses): Display offset rather
than almost useless pointer.
2013-12-15 14:18:30 +01:00
Vladimir Serbinenko 7e47e27bd8 Add gcc_struct to all packed structures when compiling with mingw.
Just "packed" doesn't always pack the way we expect.
2013-12-15 14:14:30 +01:00
Vladimir Serbinenko ae8159b9ca * include/grub/i386/coreboot/lbio.h: Add missing attribute (packed). 2013-12-15 00:56:11 +01:00
Vladimir Serbinenko 74e7ad6604 * util/grub-pe2elf.c: Fix handling of .bss. 2013-12-15 00:55:17 +01:00
Vladimir Serbinenko 814442ba69 Implement windows flavour of EFI install routines. 2013-12-14 23:35:58 +01:00
Vladimir Serbinenko 5f5bb10748 * conf/Makefile.extra-dist: Adjust path to conf/i386-cygwin-img-ld.sc. 2013-12-14 23:33:05 +01:00
Vladimir Serbinenko a24725cc6e Change grub_install_register_efi interface to pass GRUB device.
This allows grub_install_register_efi to request partition info
	directly.
2013-12-14 23:31:56 +01:00
Vladimir Serbinenko 38933cee85 Workaround cygwin bug when using \\?\Volume{GUID} syntax. 2013-12-14 23:28:34 +01:00
Vladimir Serbinenko 6d3cfe5063 Do not use TCHAR string functions as they are not available on cygwin. 2013-12-14 23:25:30 +01:00
Vladimir Serbinenko 4bad23a15f Workaround windows bug when querying EFI system partition parameters. 2013-12-14 23:23:11 +01:00
Vladimir Serbinenko 6a5fe1328b * grub-core/kern/i386/qemu/init.c (resource): Decrease struct size
by using bitfields.
2013-12-14 23:15:47 +01:00
Vladimir Serbinenko bc8fcf4bd3 * grub-core/boot/i386/qemu/boot.S: Add missing EXT_C. 2013-12-14 23:13:42 +01:00
Vladimir Serbinenko 60b967be7e Make i386-* other than i386-pc compileable under cygwin. 2013-12-14 23:12:53 +01:00
Vladimir Serbinenko 6dc3337774 Fix definition of grub_efi_hard_drive_device_path. Take care that
existing code would work even if by some reason bogus definition is
	used by EFI implementations.
2013-12-14 22:04:02 +01:00
Vladimir Serbinenko f2c6ff15e5 * grub-core/osdep/windows/hostdisk.c: Fix cygwin compilation. 2013-12-14 21:55:44 +01:00
Vladimir Serbinenko 6b8a162516 * grub-core/osdep/windows/blocklist.c: Add missing cast in printf
invocation.
2013-12-14 21:54:37 +01:00
Vladimir Serbinenko 954c723acc * util/config.c: Remove trailing newline from distributor in simple
parsing.
2013-12-14 21:50:36 +01:00