5ff74eca | 25-Mar-2016 |
Nigel Croxon <nigel.croxon@hpe.com> |
Commit 3dd05c and subsequent ones introduced the use of the GNU specific __attribute__((__unused__)), which breaks MSVC compilation...
I'll use this as a reminder that gnu-efi is compiled with more
Commit 3dd05c and subsequent ones introduced the use of the GNU specific __attribute__((__unused__)), which breaks MSVC compilation...
I'll use this as a reminder that gnu-efi is compiled with more than GNU toolchains, and that contributors might want to be careful about adding GNU-specific extensions...
This patch does the following: Create a new eficompiler.h header that sets all compiler-specific options and extensions Create a new EFI_UNUSED macro to be used in lieu of __attribute__((__unused__)) and applies it to the relevant sources Move the ALIGN(x) macro, previously defined in efisetjmp.h to the new header
Oh, and it also fixes a bunch of trailing whitespaces (because my code editor is set to do just that by default).
Signed-off-by: Pete Batard <pbatard@users.sf.net> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
show more ...
|
3dd05c7b | 03-Mar-2016 |
Nigel Croxon <nigel.croxon@hpe.com> |
This makes "-Werror=unused-parameter" not fail.
Signed-off-by: Peter Jones <pjones@redhat.com> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com> |
d39106b3 | 25-Feb-2016 |
Nigel Croxon <nigel.croxon@hpe.com> |
Apparently some linkers will just throw caution to the wind and decide to stick stuff we don't explicitly mention at 0, no matter what else has already explicitly been located there. A debian/ubuntu
Apparently some linkers will just throw caution to the wind and decide to stick stuff we don't explicitly mention at 0, no matter what else has already explicitly been located there. A debian/ubuntu builder noted:
gcc -O0 -g3 -fpic -Wall -fshort-wchar -fno-strict-aliasing \ -fno-merge-constants -ffreestanding -fno-stack-protector \ -fno-stack-check --std=c11 -DCONFIG_aarch64 -D__KERNEL__ \ -I/usr/include/efi/ -I/usr/include/efi/aarch64/ \ -iquote/«PKGBUILDDIR»/include "-DDEBUGDIR=L\"/\"" \ -ffreestanding -I/usr/lib/gcc/aarch64-linux-gnu/4.9/include \ -c -o fakeesrt2.o fakeesrt2.c ld -nostdlib --warn-common --no-undefined --fatal-warnings -shared \ -Bsymbolic -L/usr/lib -L/usr/lib --build-id=sha1 \ /usr/lib/crt0-efi-aarch64.o --defsym=EFI_SUBSYSTEM=0xa \ -o fakeesrt2.so fakeesrt2.o -lefi -lgnuefi \ /usr/lib/gcc/aarch64-linux-gnu/4.9/libgcc.a \ -T elf_aarch64_efi.lds ld: section .note.gnu.build-id loaded at [00000000,00000023] overlaps section .text loaded at [00000000,0000668f]
This shouldn't be a problem if we explicitly tell it where to put them.
Ard added a patch to do this on Arm and aarch64 targets in 16409cad4cb, but it needs to be everywhere.
Signed-off-by: Peter Jones <pjones@redhat.com> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
show more ...
|
06db4a2b | 17-Feb-2016 |
Nigel Croxon <nigel.croxon@hpe.com> |
arm: fix linker script for building efi binaries
On arm, the linker script is missing section collection for data and bss. This causes some symbols (notably static array symbols) not to get relocat
arm: fix linker script for building efi binaries
On arm, the linker script is missing section collection for data and bss. This causes some symbols (notably static array symbols) not to get relocated correctly and the resulting efi binary to crash. Fix this by correctly collecting all the data and bss sections.
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
show more ...
|
e64257b9 | 23-Dec-2015 |
Nigel Croxon <nigel.croxon@hpe.com> |
From: Ard Biesheuvel <ard.biesheuvel@linaro.org> Subject: [PATCH] Add ARM .note.gnu.build-id input section to a dedicated output section
This fixes the builds for ARM and AARCH64, which currently fa
From: Ard Biesheuvel <ard.biesheuvel@linaro.org> Subject: [PATCH] Add ARM .note.gnu.build-id input section to a dedicated output section
This fixes the builds for ARM and AARCH64, which currently fail at link time with an error like this:
arm-linux-gnueabi-ld: section .note.gnu.build-id loaded at [0000000000000000,0000000000000023] overlaps section .text loaded at [0000000000000000,00000000000064cf]
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
show more ...
|
88e3cf95 | 23-Dec-2015 |
Nigel Croxon <nigel.croxon@hpe.com> |
From: Ard Biesheuvel <ard.biesheuvel@linaro.org> Subject: [PATCH 1/2] Relicense ARM and AARCH64 source files as both BSD and GPL
This updates the licenses of the files authored by me under lib/arm a
From: Ard Biesheuvel <ard.biesheuvel@linaro.org> Subject: [PATCH 1/2] Relicense ARM and AARCH64 source files as both BSD and GPL
This updates the licenses of the files authored by me under lib/arm and lib/aarch64 to be both 2-clause BSD and GPL v2+
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Nigel Croxon <nigel.croxon@hpe.com>
show more ...
|
11a459ba | 16-Jul-2015 |
Nigel Croxon <nigel.croxon@hp.com> |
This patch makes the following symbols (relatively) consistent between all of our linker scripts:
_text _etext _text_size _data _edata _data_size
There are various things that are slightly differen
This patch makes the following symbols (relatively) consistent between all of our linker scripts:
_text _etext _text_size _data _edata _data_size
There are various things that are slightly different (positions of .rela*, .dynamic, and similar in relation to .data), but _text and _data are now always at the beginning of their respective sections with regard to how a debuger would reference the debug info, and _etext and _edata are now always extant and guaranteed to be after any of the respective kind of data the debugger would look for in that section.
This also adds an application example of how it might be used, and a makefile target for %.efi.debug which will generate a separate debuginfo file for that example.
This also enables debugging by default (i.e. -g is in CFLAGS) and adds .note.gnu.build-id sections to our .so files (i.e. --build-id=sha1 is in LDFLAGS).
Signed-off-by: Peter Jones <pjones@redhat.com> Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
show more ...
|
ce7098fb | 19-Feb-2015 |
Nigel Croxon <nigel.croxon@hp.com> |
Enable out-of-tree building
This patch enables building gnu-efi outside of the source tree. That in turn enables building for multiple architectures in parallel.
The build directory is controlled b
Enable out-of-tree building
This patch enables building gnu-efi outside of the source tree. That in turn enables building for multiple architectures in parallel.
The build directory is controlled by the OBJDIR make variable. It defaults to the value of ARCH, and can be overridden from the command line.
This patch also cleans up some doubled slashes between INSTALLROOT and PREFIX.
Signed-off-by: Jonathan Boeing <jonathan.n.boeing@gmail.com> Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
show more ...
|
530d68ba | 25-Nov-2014 |
Nigel Croxon <nigel.croxon@hp.com> |
The gnu-efi-3.0 toplevel subdirectory is really annoying. Kill it.
Signed-off-by: Peter Jones <pjones@redhat.com> Signed-off-by: Nigel Croxon <nigel.croxon@hp.com> |