aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/binutils/binutils/0016-add-i386pep-emulation-for-x86_64.patch
blob: 9f20784eba03bc701d502b64aa073d43b372a588 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
binutils : enable x86_64-pep for producing EFI binaries on x86-64

Add x86_64-pep emulation support to the set enabled for x86_64 targets
to enable the linker to produce Portable Executables for EFI binaries.

Enables building the x86-64 EFI variant of the Xen hypervisor for
the OpenXT Project.

Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>

Upstream-Status: Inappropriate [OE configuration specific]
---
diff --git a/bfd/config.bfd b/bfd/config.bfd
index c882421..dc705b6 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -688,7 +688,7 @@ case "${targ}" in
     ;;
   x86_64-*-linux-*)
     targ_defvec=x86_64_elf64_vec
-    targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec"
+    targ_selvecs="i386_elf32_vec iamcu_elf32_vec x86_64_elf32_vec i386_pei_vec x86_64_pei_vec l1om_elf64_vec k1om_elf64_vec x86_64_pe_vec x86_64_pe_be_vec i386_pe_vec"
     want64=true
     ;;
   x86_64-*-nacl*)
diff --git a/ld/configure.tgt b/ld/configure.tgt
index a1db7ad..65a984a 100644
--- a/ld/configure.tgt
+++ b/ld/configure.tgt
@@ -253,8 +253,9 @@ x86_64-*-linux-gnux32)	targ_emul=elf32_x86_64
 			tdir_elf_iamcu=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'`
 			tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/' -e 's/-linux-gnux32/-linux-gnu/'` ;;
 x86_64-*-linux-*)	targ_emul=elf_x86_64
-			targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om"
-			targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om"
+			targ_extra_emuls="elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om i386pe i386pep"
+			targ_extra_libpath="elf_i386 elf32_x86_64 elf_l1om elf_k1om i386pep"
+			targ_extra_ofiles="deffilep.o pep-dll.o pe-dll.o"
 			tdir_elf_i386=`echo ${targ_alias} | sed -e 's/x86_64/i386/'` ;;
 i[3-7]86-*-redox*)	targ_emul=elf_i386
 			targ_extra_emuls=elf_x86_64 ;;