Colin Watson
10955cda06
Credit and bug reference.
2013-12-03 16:14:01 +00:00
Colin Watson
8f236c1419
Revamp hidden timeout handling
...
Add a new timeout_style environment variable and a corresponding
GRUB_TIMEOUT_STYLE configuration key for grub-mkconfig. This
controls hidden-timeout handling more simply than the previous
arrangements, and pressing any hotkeys associated with menu entries
during the hidden timeout will now boot the corresponding menu entry
immediately.
GRUB_HIDDEN_TIMEOUT=<non-empty> + GRUB_TIMEOUT=<non-zero> now
generates a warning, and if it shows the menu it will do so as if
the second timeout were not present. Other combinations are
translated into reasonable equivalents.
2013-11-28 02:29:15 +00:00
Vladimir Serbinenko
2d76b4d81e
Eliminate variable length arrays in grub_vsnprintf_real.
...
A bit tricky because this function has to continue to work without
heap for short strings. Fixing prealloc to 32 arguments is reasonable
but make all stack references use 32-bit offset rather than 8-bit one.
So split va_args preparsing to separate function and put the prealloc
into the caller.
2013-11-27 15:16:09 +01:00
Vladimir Serbinenko
4f9541226c
Introduce grub_util_file_sync and use it instead of fsync(fileno(f)).
...
Fixes build for windows.
2013-11-27 14:13:50 +01:00
Vladimir Serbinenko
b1f742c103
* gentpl.py: Don't generate platform-dependent conditionals for
...
platform-independent targets.
2013-11-27 14:10:04 +01:00
Colin Watson
16ef26fd3a
* grub-core/osdep/unix/exec.c (grub_util_exec_redirect): Remove
...
references to mdadm from otherwise generic code.
(grub_util_exec_pipe): Likewise.
(grub_util_exec_pipe_stderr): Likewise.
* grub-core/osdep/unix/getroot.c (grub_util_pull_lvm_by_command):
This function calls vgs, not mdadm; adjust variable names
accordingly.
2013-11-27 11:22:31 +00:00
Colin Watson
cf8c80ff77
Merge branch 'new-autogen'
2013-11-27 10:57:27 +00:00
Colin Watson
5c7206e45e
Speed up test suite by avoiding fsync
...
Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls into
no-ops, and use it in programs that copy files but do not need to take
special care to sync writes (grub-mknetdir, grub-rescue,
grub-mkstandalone).
On my laptop, this reduces partmap_test's runtime from 1236 seconds to
204 seconds.
2013-11-27 10:10:22 +00:00
Colin Watson
fc3f2b72cd
* tests/util/grub-fs-tester.in: Execute xorriso from $PATH rather
...
than hardcoding /usr/local/bin/xorriso.
2013-11-26 23:51:48 +00:00
Colin Watson
ab4f15013a
Generate Makefile.*.am directly from gentpl.py, eliminating the use of Autogen. The Autogen definitions files remain intact as they offer a useful abstraction.
2013-11-26 17:13:01 +00:00
Vladimir Serbinenko
1e4b358720
Add PCI command activation to all PCI drivers as required for coreboot
...
and maybe some other firmwares.
2013-11-26 14:21:11 +01:00
Vladimir Serbinenko
9208367d3f
* grub-core/Makefile.am: Reduce gratuituous differences between Apple
...
and non-Apple variants of efiemu compile.
2013-11-26 11:38:12 +01:00
Andrey Borzenkov
67b9b7afd7
Add ChangeLog entry for previous commit
2013-11-25 23:14:04 +04:00
Vladimir Serbinenko
bee1b5ce3f
* util/grub-mknetdir.c: Look for platform directories under pkglibdir
...
and not pkgdatadir.
2013-11-25 19:16:05 +01:00
Colin Watson
07e3b04742
Add a --locale-directory option to grub-install and related tools.
...
* include/grub/util/install.h (GRUB_INSTALL_OPTIONS): Add
--locale-directory option.
(enum grub_install_options): Add
GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
* util/grub-install-common.c (grub_install_help_filter): Handle
GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
(grub_install_parse): Likewise.
(get_localedir): New function to check for a user-provided option
before trying grub_util_get_localedir.
(copy_locales): Use get_localedir rather than
grub_util_get_localedir. Handle differing locale directory layouts.
(grub_install_copy_files): Likewise.
2013-11-25 18:04:50 +00:00
Vladimir Serbinenko
61e1b9a49d
* grub-core/osdep/unix/platform.c (get_ofpathname): Trim ending newline.
...
Don't rely on PATH_MAX.
2013-11-25 07:34:49 +01:00
Vladimir Serbinenko
c98dd165b0
* grub-core/genmoddep.awk: Use more portable && rather than and.
2013-11-25 07:32:51 +01:00
Vladimir Serbinenko
ff1c277ef8
* grub-core/kern/i386/pc/startup.S [__APPLE__]: Create _edata by placing
...
an object after data. While it doesn't seem right solution, it
works well enough and OSX isn't main compilation platform.
2013-11-25 05:55:33 +01:00
Vladimir Serbinenko
c8f7614b98
* gentpl.py: Add -ed2016 in order to make objconv accept our binary.
...
While it doesn't seem right solution, it works well enough and
OSX isn't main compilation platform.
2013-11-25 05:53:20 +01:00
Vladimir Serbinenko
246a434f61
* configure.ac: Add -static to LDFLAGS when using apple linker to
...
prevent it from pulling in dynamic linker.
2013-11-25 05:47:20 +01:00
Vladimir Serbinenko
5c066a81c2
Apple assembly doesn't handle symbol arithmetic well. So define an
...
offset symbol in boot.S and use it.
2013-11-24 07:12:12 +01:00
Vladimir Serbinenko
78f961efe9
Apple assembly doesn't handle symbol arithmetic well. So instead
...
of getting addres of kernel_sector + 4 define kernel_sector_high.
It also makes code more readable.
2013-11-24 07:11:00 +01:00
Vladimir Serbinenko
09bc0a577d
With Apple assembly in .macro environvemnt you have to use $$ instead
...
of $. So introduce new preprocessor macro MACRO_DOLLAR(x) which expands
to $$x on Apple and to $x on everything else.
2013-11-24 07:08:18 +01:00
Vladimir Serbinenko
b700a427d2
* grub-core/Makefile.am: Use correct TARGET_OBJCONV rather than
...
OBJCONV.
2013-11-24 05:27:20 +01:00
Vladimir Serbinenko
4480b95dcd
* grub-core/gdb/i386/machdep.S: Use xorl %eax, %eax on both Apple
...
and non-Apple. This instruction is shorter and faster,
so no reason not to use it on both.
2013-11-24 05:17:24 +01:00
Vladimir Serbinenko
e77c81f6f8
* grub-core/lib/reed_solomon.c: Use section _text, _text rather than
...
.text when compiling for Apple.
2013-11-24 05:14:11 +01:00
Vladimir Serbinenko
971dbee521
* grub-core/term/arc/console.c: Add missing cast to silence warning.
2013-11-24 05:05:34 +01:00
Vladimir Serbinenko
6f2e82be3a
* grub-core/boot/i386/pc/boot.S: Fix floppy probe. Due to missing
...
%dx restore the probe worked on non-existant drive. Reorganize the
code a little bit to free 2 bytes necessary for push/pop.
2013-11-24 05:05:33 +01:00
Vladimir Serbinenko
9eec9699b9
* grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
...
Add missing cast to silence warning.
2013-11-23 15:35:01 +01:00
Keshav Padram Amburay
5ae5c54c7e
* util/grub-install.c (update_nvram): Support --no-nvram flag
...
for EFI targets.
2013-11-23 13:02:12 +01:00
Vladimir Serbinenko
7b04fe6c9e
* INSTALL: Add note about sparc64/ia64 with clang (unsupported).
2013-11-23 12:49:41 +01:00
Vladimir Serbinenko
e67566ce0a
* util/garbage-gen.c: Add missing include of sys/time.h.
2013-11-23 12:42:30 +01:00
Vladimir Serbinenko
f93ddcfd1c
Don't add -mflush-func if it's not supported by compiler.
2013-11-23 12:40:44 +01:00
Vladimir Serbinenko
1bba40f578
Move common BIOS/coreboot memory map declarations to
...
include/grub/i386/memory_raw.h and eliminate duplicate declarations.
2013-11-23 12:39:21 +01:00
Andrey Borzenkov
f65e14dc3a
add util/garbage-gen.c to EXTRA_DIST
2013-11-23 14:39:35 +04:00
Vladimir Serbinenko
14a94bba6f
* INSTALL: Document why older clang versions aren't appropriate.
2013-11-23 01:16:47 +01:00
Vladimir Serbinenko
8109c5d4e2
* INSTALL: Document about clang for mips.
2013-11-23 00:41:32 +01:00
Vladimir Serbinenko
a92b5cb8d8
* grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips
...
clang.
2013-11-23 00:36:13 +01:00
Vladimir Serbinenko
4a23e2fe29
Add *-xen to the list of grub-install-common platforms.
2013-11-22 14:21:16 +01:00
Vladimir Serbinenko
a3ba74104e
* configure.ac: Do not enforce -mcmodel=large. It's not necessarry with
...
3 last commits.
2013-11-22 13:07:51 +01:00
Vladimir Serbinenko
e1c22419ac
* grub-core/kern/xen/init.c: Do not map more pages than we can address.
2013-11-22 13:04:29 +01:00
Vladimir Serbinenko
189090cee9
* grub-core/kern/efi/mm.c: Limit allocations to 2GiB when not compiling
...
with -mcmodel=large.
2013-11-22 13:03:19 +01:00
Vladimir Serbinenko
1a5b7b404f
* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Add
...
range-checking for 32-bit quantities.
2013-11-22 13:01:14 +01:00
Vladimir Serbinenko
9cf12b20af
* configure.ac: Compile with -fPIC when compiling with clang on
...
mips.
2013-11-22 12:50:41 +01:00
Vladimir Serbinenko
63a45330cb
* configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS
...
when compiling with clang.
2013-11-22 12:48:32 +01:00
Vladimir Serbinenko
4a0aaad022
clang emits calls to abort () under some unknown conditions.
...
Export abort () when compiling with clang.
2013-11-22 12:42:58 +01:00
Vladimir Serbinenko
095bb1bfa5
* docs/grub-dev.texi: Document stack and heap sizes.
2013-11-22 12:03:44 +01:00
Vladimir Serbinenko
3937bd962b
* include/grub/i386/pc/memory.h: Decrease
...
GRUB_MEMORY_MACHINE_SCRATCH_SIZE and increase
GRUB_MEMORY_MACHINE_PROT_STACK_SIZE.
The binary doesn't change (checked). It's more to better reflect actual
usage.
2013-11-22 12:02:00 +01:00
Vladimir Serbinenko
ddb3efc906
* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Ensure
...
at compile time that enough of scratch size is available.
2013-11-22 12:00:10 +01:00
Vladimir Serbinenko
4e42521d8c
* grub-core/kern/x86_64/efi/callwrap.S: Fix stack alignment.
...
Previously we misaligned stack by 8 in startup.S and compensated
for it in callwrap.S. According to ABI docs (EFI and sysv amd64)
right behaviour is to align stack in startup.S and keep it aligned
in callwrap.S. startup.S part was committed few commits before. This
takes care of callwrap.S.
Reported by: Gary Lin.
2013-11-22 05:40:32 +01:00