Also build for armv7
Signed-off-by: Peter Jones <pjones@redhat.com>
This commit is contained in:
parent
0d85a58186
commit
c9952e9c14
133
0001-Explicitly-place-our-build-id-notes.patch
Normal file
133
0001-Explicitly-place-our-build-id-notes.patch
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
From 5652abf9c4ede88d7b5cad25415db4ea530631a3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Peter Jones <pjones@redhat.com>
|
||||||
|
Date: Wed, 15 Jul 2015 10:15:51 -0400
|
||||||
|
Subject: [PATCH] Explicitly place our build-id notes.
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
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.
|
||||||
|
I hope.
|
||||||
|
|
||||||
|
Signed-off-by: Peter Jones <pjones@redhat.com>
|
||||||
|
---
|
||||||
|
gnuefi/elf_aarch64_efi.lds | 1 +
|
||||||
|
gnuefi/elf_arm_efi.lds | 1 +
|
||||||
|
gnuefi/elf_ia32_efi.lds | 2 ++
|
||||||
|
gnuefi/elf_ia32_fbsd_efi.lds | 2 ++
|
||||||
|
gnuefi/elf_ia64_efi.lds | 2 ++
|
||||||
|
gnuefi/elf_x86_64_efi.lds | 2 ++
|
||||||
|
gnuefi/elf_x86_64_fbsd_efi.lds | 2 ++
|
||||||
|
7 files changed, 12 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/gnuefi/elf_aarch64_efi.lds b/gnuefi/elf_aarch64_efi.lds
|
||||||
|
index 8864757..85f1582 100644
|
||||||
|
--- a/gnuefi/elf_aarch64_efi.lds
|
||||||
|
+++ b/gnuefi/elf_aarch64_efi.lds
|
||||||
|
@@ -38,6 +38,7 @@ SECTIONS
|
||||||
|
. = ALIGN(16);
|
||||||
|
_bss_end = .;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
.rela.dyn : { *(.rela.dyn) }
|
||||||
|
.rela.plt : { *(.rela.plt) }
|
||||||
|
.rela.got : { *(.rela.got) }
|
||||||
|
diff --git a/gnuefi/elf_arm_efi.lds b/gnuefi/elf_arm_efi.lds
|
||||||
|
index 2ca8fc6..665bbdb 100644
|
||||||
|
--- a/gnuefi/elf_arm_efi.lds
|
||||||
|
+++ b/gnuefi/elf_arm_efi.lds
|
||||||
|
@@ -39,6 +39,7 @@ SECTIONS
|
||||||
|
. = ALIGN(16);
|
||||||
|
_bss_end = .;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
.rel.dyn : { *(.rel.dyn) }
|
||||||
|
.rel.plt : { *(.rel.plt) }
|
||||||
|
.rel.got : { *(.rel.got) }
|
||||||
|
diff --git a/gnuefi/elf_ia32_efi.lds b/gnuefi/elf_ia32_efi.lds
|
||||||
|
index b164094..6cc4ce1 100644
|
||||||
|
--- a/gnuefi/elf_ia32_efi.lds
|
||||||
|
+++ b/gnuefi/elf_ia32_efi.lds
|
||||||
|
@@ -46,6 +46,8 @@ SECTIONS
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
+ .note.gnu.build-id : { *(.note.gnu.build-id) }
|
||||||
|
+
|
||||||
|
. = ALIGN(4096);
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
. = ALIGN(4096);
|
||||||
|
diff --git a/gnuefi/elf_ia32_fbsd_efi.lds b/gnuefi/elf_ia32_fbsd_efi.lds
|
||||||
|
index 1f56cd7..77d6fad 100644
|
||||||
|
--- a/gnuefi/elf_ia32_fbsd_efi.lds
|
||||||
|
+++ b/gnuefi/elf_ia32_fbsd_efi.lds
|
||||||
|
@@ -46,6 +46,8 @@ SECTIONS
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
+ .note.gnu.build-id : { *(.note.gnu.build-id) }
|
||||||
|
+
|
||||||
|
. = ALIGN(4096);
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
. = ALIGN(4096);
|
||||||
|
diff --git a/gnuefi/elf_ia64_efi.lds b/gnuefi/elf_ia64_efi.lds
|
||||||
|
index a6ec717..baca962 100644
|
||||||
|
--- a/gnuefi/elf_ia64_efi.lds
|
||||||
|
+++ b/gnuefi/elf_ia64_efi.lds
|
||||||
|
@@ -43,6 +43,8 @@ SECTIONS
|
||||||
|
*(.bss)
|
||||||
|
*(COMMON)
|
||||||
|
}
|
||||||
|
+ .note.gnu.build-id : { *(.note.gnu.build-id) }
|
||||||
|
+
|
||||||
|
. = ALIGN(4096);
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
. = ALIGN(4096);
|
||||||
|
diff --git a/gnuefi/elf_x86_64_efi.lds b/gnuefi/elf_x86_64_efi.lds
|
||||||
|
index 3862d9f..942d1f3 100644
|
||||||
|
--- a/gnuefi/elf_x86_64_efi.lds
|
||||||
|
+++ b/gnuefi/elf_x86_64_efi.lds
|
||||||
|
@@ -46,6 +46,8 @@ SECTIONS
|
||||||
|
*(COMMON)
|
||||||
|
*(.rel.local)
|
||||||
|
}
|
||||||
|
+ .note.gnu.build-id : { *(.note.gnu.build-id) }
|
||||||
|
+
|
||||||
|
_edata = .;
|
||||||
|
_data_size = . - _etext;
|
||||||
|
. = ALIGN(4096);
|
||||||
|
diff --git a/gnuefi/elf_x86_64_fbsd_efi.lds b/gnuefi/elf_x86_64_fbsd_efi.lds
|
||||||
|
index 507fe43..6fd2031 100644
|
||||||
|
--- a/gnuefi/elf_x86_64_fbsd_efi.lds
|
||||||
|
+++ b/gnuefi/elf_x86_64_fbsd_efi.lds
|
||||||
|
@@ -43,6 +43,8 @@ SECTIONS
|
||||||
|
*(COMMON)
|
||||||
|
*(.rel.local)
|
||||||
|
}
|
||||||
|
+ .note.gnu.build-id : { *(.note.gnu.build-id) }
|
||||||
|
+
|
||||||
|
. = ALIGN(4096);
|
||||||
|
.dynamic : { *(.dynamic) }
|
||||||
|
. = ALIGN(4096);
|
||||||
|
--
|
||||||
|
2.5.0
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
Summary: Development Libraries and headers for EFI
|
Summary: Development Libraries and headers for EFI
|
||||||
Name: gnu-efi
|
Name: gnu-efi
|
||||||
Version: 3.0.3
|
Version: 3.0.3
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Group: Development/System
|
Group: Development/System
|
||||||
License: BSD
|
License: BSD
|
||||||
@ -10,6 +10,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|||||||
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
|
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
|
||||||
BuildRequires: git
|
BuildRequires: git
|
||||||
Source: http://superb-dca2.dl.sourceforge.net/project/gnu-efi/gnu-efi-%{version}.tar.bz2
|
Source: http://superb-dca2.dl.sourceforge.net/project/gnu-efi/gnu-efi-%{version}.tar.bz2
|
||||||
|
Patch0001: 0001-Explicitly-place-our-build-id-notes.patch
|
||||||
|
|
||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
|
|
||||||
@ -93,6 +94,9 @@ rm -rf %{buildroot}
|
|||||||
%attr(0644,root,root) /boot/efi/EFI/%{efidir}/*.efi
|
%attr(0644,root,root) /boot/efi/EFI/%{efidir}/*.efi
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Feb 23 2016 Peter Jones <pjones@redhat.com> - 3.0.3-2
|
||||||
|
- We still need build-id patches in some places.
|
||||||
|
|
||||||
* Mon Feb 22 2016 Peter Jones <pjones@redhat.com> - 3.0.3-1
|
* Mon Feb 22 2016 Peter Jones <pjones@redhat.com> - 3.0.3-1
|
||||||
- Rebase to 3.0.3
|
- Rebase to 3.0.3
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user