summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2016-07-25 01:16:27 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-26 08:56:26 +0100
commit2186bbca70cfcec42b01484126d654bfec987ae0 (patch)
tree727e32399f2d338069bce3182f68b58226e62216 /meta
parent6d9958ee9da793e4c87853e5c74d264423a68f33 (diff)
downloadpoky-2186bbca70cfcec42b01484126d654bfec987ae0.tar.gz
gnu-efi: 3.0.3 -> 3.0.4
* Remove gnu-efi-Make-setjmp.S-portable-to-ARM.patch since it is already in the source. * Updated LIC_FILES_CHKSUM - The following files are gone: lib/arm/div64.S lib/arm/lib1funcs.S - Updated md5sum for other files, they add the following words, which are still GPLv2+: Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice and this list of conditions, without modification. 2. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. Alternatively, this software may be distributed under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. * Remove -mfpmath=sse from TUNE_CCARGS since gnu-efi doesn't support sse to fix the problem: rtdata.c:1:0: error: SSE instruction set disabled, using 387 arithmetics [-Werror] * gnu-efi's Makefile treats prefix as toolchain prefix, so don't export it, otherwise there would be errors: /bin/sh: /usrgcc: No such file or directory * Add aarch64-initplat.c-fix-const-qualifier.patch to fix build on aarch64: initplat.c:44:35: error: initialization discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] (From OE-Core rev: e011f70741d9c60ab68a0fa2458a5051030efd64) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-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"