summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/aarch64-initplat.c-fix-const-qualifier.patch35
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-Make-setjmp.S-portable-to-ARM.patch50
-rw-r--r--meta/recipes-bsp/gnu-efi/gnu-efi_3.0.4.bb (renamed from meta/recipes-bsp/gnu-efi/gnu-efi_3.0.3.bb)27
3 files changed, 52 insertions, 60 deletions
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/aarch64-initplat.c-fix-const-qualifier.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/aarch64-initplat.c-fix-const-qualifier.patch
new file mode 100644
index 0000000000..965f074ebe
--- /dev/null
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi/aarch64-initplat.c-fix-const-qualifier.patch
@@ -0,0 +1,35 @@
1From dc83b84dc8b4e71efce47143497aac6c126065cf Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Mon, 18 Jul 2016 08:40:29 -0700
4Subject: [PATCH] lib/aarch64/initplat.c: fix const qualifier
5
6Fixed:
7initplat.c:44:35: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers]
8 unsigned char *p = dest, *q = src;
9 ^~~
10cc1: all warnings being treated as errors
11
12Upstream-Status: Pending
13
14Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
15---
16 lib/aarch64/initplat.c | 3 ++-
17 1 file changed, 2 insertions(+), 1 deletion(-)
18
19diff --git a/lib/aarch64/initplat.c b/lib/aarch64/initplat.c
20index 2ac03a7..aae7beb 100644
21--- a/lib/aarch64/initplat.c
22+++ b/lib/aarch64/initplat.c
23@@ -41,7 +41,8 @@ void *memset(void *s, int c, __SIZE_TYPE__ n)
24
25 void *memcpy(void *dest, const void *src, __SIZE_TYPE__ n)
26 {
27- unsigned char *p = dest, *q = src;
28+ unsigned char *p = dest;
29+ const unsigned char *q = src;
30
31 while (n--)
32 *p++ = *q++;
33--
342.9.0
35
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-Make-setjmp.S-portable-to-ARM.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-Make-setjmp.S-portable-to-ARM.patch
deleted file mode 100644
index ced128a313..0000000000
--- a/meta/recipes-bsp/gnu-efi/gnu-efi/gnu-efi-Make-setjmp.S-portable-to-ARM.patch
+++ /dev/null
@@ -1,50 +0,0 @@
1From 8a356d4b6a242ce63b73920d3ed33f88f9e12fe3 Mon Sep 17 00:00:00 2001
2From: Wenzong Fan <wenzong.fan@windriver.com>
3Date: Sun, 6 Sep 2015 05:20:43 -0400
4Subject: [PATCH] gnu-efi: Make setjmp.S portable to ARM
5
6This patch fixes the following error:
7
8 .../lib/arm/setjmp.S:18: Error: unrecognized symbol type ""
9 .../lib/arm/setjmp.S:26: Error: unrecognized symbol type ""
10
11The problem is the assembly syntax that is used is not portable to ARM,
12where the '@' symbol is a comment:
13
14 > Note on targets where the @ character is the start of a comment
15 > (eg ARM) then another character is used instead. For example the
16 > ARM port uses the % character.
17
18(From https://sourceware.org/binutils/docs-2.25/as/Section.html#Section)
19
20Upstream-Status: Pending
21
22Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
23---
24 lib/arm/setjmp.S | 4 ++--
25 1 file changed, 2 insertions(+), 2 deletions(-)
26
27diff --git a/lib/arm/setjmp.S b/lib/arm/setjmp.S
28index 6e3fbf0..85c8705 100644
29--- a/lib/arm/setjmp.S
30+++ b/lib/arm/setjmp.S
31@@ -15,7 +15,7 @@ BASIS,
32 .text
33 .arm
34 .globl setjmp
35- .type setjmp, @function
36+ .type setjmp, %function
37 setjmp:
38 mov r3, r13
39 stmia r0, {r3-r12,r14}
40@@ -23,6 +23,6 @@ setjmp:
41 bx lr
42
43 .globl longjmp
44- .type longjmp, @function
45+ .type longjmp, %function
46 longjmp:
47 ldmia r0, {r3-r12,r14}
48--
491.9.1
50
diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.3.bb b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.4.bb
index 6b130a2e2e..e0d8ee76dd 100644
--- a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.3.bb
+++ b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.4.bb
@@ -2,27 +2,25 @@ SUMMARY = "Libraries for producing EFI binaries"
2HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" 2HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/"
3SECTION = "devel" 3SECTION = "devel"
4LICENSE = "GPLv2+ | BSD-2-Clause" 4LICENSE = "GPLv2+ | BSD-2-Clause"
5LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=9;md5=2240d7bbdf0928294c2f4a68b14d6591 \ 5LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \
6 file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ 6 file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \
7 file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ 7 file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \
8 file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ 8 file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \
9 file://lib/arm/div64.S;beginline=6;endline=12;md5=a96c84f5ad12b4f011f98b5d039242f2 \ 9 file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \
10 file://lib/arm/math.c;beginline=4;endline=10;md5=64dd1987cee1dcf59d11aa572cfa644e \ 10 file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \
11 file://lib/arm/initplat.c;beginline=4;endline=10;md5=64dd1987cee1dcf59d11aa572cfa644e \ 11 file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \
12 file://lib/arm/lib1funcs.S;beginline=9;endline=33;md5=f56d5ebbc87136bc66cfe24db82bcf01 \ 12 file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \
13 file://lib/aarch64/math.c;beginline=9;endline=33;md5=cfade4c560e033a7bb02dab282872c7d \
14 file://lib/aarch64/initplat.c;beginline=9;endline=33;md5=900cb1ffbe3e1ded344102be921830f1 \
15 " 13 "
16 14
17SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ 15SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \
18 file://parallel-make-archives.patch \ 16 file://parallel-make-archives.patch \
19 file://lib-Makefile-fix-parallel-issue.patch \ 17 file://lib-Makefile-fix-parallel-issue.patch \
20 file://gnu-efi-Make-setjmp.S-portable-to-ARM.patch \
21 file://gcc46-compatibility.patch \ 18 file://gcc46-compatibility.patch \
19 file://aarch64-initplat.c-fix-const-qualifier.patch \
22 " 20 "
23 21
24SRC_URI[md5sum] = "15a4bcbc18a9a5e8110ed955970622e6" 22SRC_URI[md5sum] = "612e0f327f31c4b8468ef55f4eeb9649"
25SRC_URI[sha256sum] = "c530f21a15fd9c214dd92d29a6caa20fac989289267512020b6da1f5e6f5b4cb" 23SRC_URI[sha256sum] = "51a00428c3ccb96db24089ed8394843c4f83cf8f42c6a4dfddb4b7c23f2bf8af"
26 24
27COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" 25COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux"
28COMPATIBLE_HOST_armv4 = 'null' 26COMPATIBLE_HOST_armv4 = 'null'
@@ -38,6 +36,10 @@ EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=
38 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ 36 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \
39 " 37 "
40 38
39# gnu-efi's Makefile treats prefix as toolchain prefix, so don't
40# export it.
41prefix[unexport] = "1"
42
41do_install() { 43do_install() {
42 oe_runmake install INSTALLROOT="${D}" 44 oe_runmake install INSTALLROOT="${D}"
43} 45}
@@ -45,3 +47,8 @@ do_install() {
45FILES_${PN} += "${libdir}/*.lds" 47FILES_${PN} += "${libdir}/*.lds"
46 48
47BBCLASSEXTEND = "native" 49BBCLASSEXTEND = "native"
50
51# It doesn't support sse, its make.defaults sets:
52# CFLAGS += -mno-mmx -mno-sse
53# So also remove -mfpmath=sse from TUNE_CCARGS
54TUNE_CCARGS_remove = "-mfpmath=sse"