From 91dad340e32271d5db681bae34ed5599310e8703 Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Thu, 28 Jun 2018 15:39:49 +0800 Subject: gnu-efi: update to 3.0.8 Signed-off-by: Yi Zhao Signed-off-by: Richard Purdie --- .../gnu-efi/lib-Makefile-fix-parallel-issue.patch | 14 ++--- .../gnu-efi/gnu-efi/parallel-make-archives.patch | 16 ++--- meta/recipes-bsp/gnu-efi/gnu-efi_3.0.6.bb | 71 ---------------------- meta/recipes-bsp/gnu-efi/gnu-efi_3.0.8.bb | 71 ++++++++++++++++++++++ 4 files changed, 87 insertions(+), 85 deletions(-) delete mode 100644 meta/recipes-bsp/gnu-efi/gnu-efi_3.0.6.bb create mode 100644 meta/recipes-bsp/gnu-efi/gnu-efi_3.0.8.bb (limited to 'meta') diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/lib-Makefile-fix-parallel-issue.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/lib-Makefile-fix-parallel-issue.patch index 1b2ae1ef06..dc00b8fa4d 100644 --- a/meta/recipes-bsp/gnu-efi/gnu-efi/lib-Makefile-fix-parallel-issue.patch +++ b/meta/recipes-bsp/gnu-efi/gnu-efi/lib-Makefile-fix-parallel-issue.patch @@ -1,7 +1,7 @@ -From 0daa354a16aa3cade56ed423d0f8a04cf1c22f9d Mon Sep 17 00:00:00 2001 +From 3ec8c2a70304eabd5760937a4ec3fbc4068a77ed Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Thu, 23 Apr 2015 01:49:31 -0700 -Subject: [PATCH] lib/Makefile: fix parallel issue +Subject: [PATCH 2/3] lib/Makefile: fix parallel issue Fixed: Assembler messages: @@ -17,22 +17,22 @@ Upstream-Status: Pending Signed-off-by: Robert Yang --- - lib/Makefile | 2 ++ + lib/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/Makefile b/lib/Makefile -index dc4b94a..f64d1ed 100644 +index 048751a..ed39bbb 100644 --- a/lib/Makefile +++ b/lib/Makefile -@@ -73,6 +73,8 @@ all: libsubdirs libefi.a +@@ -74,6 +74,8 @@ all: libsubdirs libefi.a libsubdirs: for sdir in $(SUBDIRS); do mkdir -p $$sdir; done +$(OBJS): libsubdirs + libefi.a: $(OBJS) - $(AR) rv $@ $(OBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) -- -1.7.9.5 +2.7.4 diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch index 0110260bd8..a9806cfdf6 100644 --- a/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch +++ b/meta/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch @@ -1,4 +1,4 @@ -From 16865de66db33ca70872199e70d93efccecc8575 Mon Sep 17 00:00:00 2001 +From 48b2cdbcd761105e8ebad412fcbf23db1ac4ef7c Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Sun, 9 Mar 2014 15:22:15 +0200 Subject: [PATCH 1/3] Fix parallel make failure for archives @@ -17,13 +17,15 @@ Signed-off-by: Saul Wold Signed-off-by: Darren Hart [Rebased for 3.0.6] Signed-off-by: California Sullivan +[Rebased for 3.0.8] +Signed-off-by: Yi Zhao --- gnuefi/Makefile | 3 ++- lib/Makefile | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/gnuefi/Makefile b/gnuefi/Makefile -index 2a61699..148106e 100644 +index 2a61699..89b560a 100644 --- a/gnuefi/Makefile +++ b/gnuefi/Makefile @@ -54,7 +54,8 @@ TARGETS = crt0-efi-$(ARCH).o libgnuefi.a @@ -32,23 +34,23 @@ index 2a61699..148106e 100644 -libgnuefi.a: $(patsubst %,libgnuefi.a(%),$(OBJS)) +libgnuefi.a: $(OBJS) -+ $(AR) rv $@ $(OBJS) ++ $(AR) $(ARFLAGS) $@ $(OBJS) clean: rm -f $(TARGETS) *~ *.o $(OBJS) diff --git a/lib/Makefile b/lib/Makefile -index b8d1ce7..6ef8107 100644 +index 0e6410d..048751a 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -75,7 +75,7 @@ libsubdirs: for sdir in $(SUBDIRS); do mkdir -p $$sdir; done libefi.a: $(OBJS) -- $(AR) rv -U $@ $^ -+ $(AR) rv $@ $(OBJS) +- $(AR) $(ARFLAGS) $@ $^ ++ $(AR) $(ARFLAGS) $@ $(OBJS) clean: rm -f libefi.a *~ $(OBJS) */*.o -- -2.9.4 +2.7.4 diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.6.bb b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.6.bb deleted file mode 100644 index 2a60717480..0000000000 --- a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.6.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "Libraries for producing EFI binaries" -HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" -SECTION = "devel" -LICENSE = "GPLv2+ | BSD-2-Clause" -LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ - file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ - file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - " - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ - file://parallel-make-archives.patch \ - file://lib-Makefile-fix-parallel-issue.patch \ - file://gcc46-compatibility.patch \ - " - -SRC_URI[md5sum] = "46f633758a8a37db9fd6909fe270c26b" -SRC_URI[sha256sum] = "21515902d80fbea23328a61d70d3d51a47204abd1507ebfa27550a7b9bf22c91" - -COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" -COMPATIBLE_HOST_armv4 = 'null' - -do_configure_linux-gnux32_prepend() { - cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h - cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h -} - -def gnu_efi_arch(d): - import re - tarch = d.getVar("TARGET_ARCH") - if re.match("i[3456789]86", tarch): - return "ia32" - return tarch - -EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ - 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ - " - -# gnu-efi's Makefile treats prefix as toolchain prefix, so don't -# export it. -prefix[unexport] = "1" - -do_install() { - oe_runmake install INSTALLROOT="${D}" -} - -FILES_${PN} += "${libdir}/*.lds" - -# 64-bit binaries are expected for EFI when targeting X32 -INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" -INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" - -BBCLASSEXTEND = "native" - -# It doesn't support sse, its make.defaults sets: -# CFLAGS += -mno-mmx -mno-sse -# So also remove -mfpmath=sse from TUNE_CCARGS -TUNE_CCARGS_remove = "-mfpmath=sse" - -python () { - ccargs = d.getVar('TUNE_CCARGS').split() - if '-mx32' in ccargs: - # use x86_64 EFI ABI - ccargs.remove('-mx32') - ccargs.append('-m64') - d.setVar('TUNE_CCARGS', ' '.join(ccargs)) -} diff --git a/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.8.bb b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.8.bb new file mode 100644 index 0000000000..dba4733442 --- /dev/null +++ b/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.8.bb @@ -0,0 +1,71 @@ +SUMMARY = "Libraries for producing EFI binaries" +HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" +SECTION = "devel" +LICENSE = "GPLv2+ | BSD-2-Clause" +LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ + file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ + file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + " + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ + file://parallel-make-archives.patch \ + file://lib-Makefile-fix-parallel-issue.patch \ + file://gcc46-compatibility.patch \ + " + +SRC_URI[md5sum] = "ae32011cfe6b1c40c0f244b9a49ba181" +SRC_URI[sha256sum] = "76006d8ea8d67bcf72f35d09d43e9ef6a69400d6d5d4bf64baf1ab7434e2b722" + +COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" +COMPATIBLE_HOST_armv4 = 'null' + +do_configure_linux-gnux32_prepend() { + cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h + cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h +} + +def gnu_efi_arch(d): + import re + tarch = d.getVar("TARGET_ARCH") + if re.match("i[3456789]86", tarch): + return "ia32" + return tarch + +EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ + 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ + " + +# gnu-efi's Makefile treats prefix as toolchain prefix, so don't +# export it. +prefix[unexport] = "1" + +do_install() { + oe_runmake install INSTALLROOT="${D}" +} + +FILES_${PN} += "${libdir}/*.lds" + +# 64-bit binaries are expected for EFI when targeting X32 +INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" +INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" + +BBCLASSEXTEND = "native" + +# It doesn't support sse, its make.defaults sets: +# CFLAGS += -mno-mmx -mno-sse +# So also remove -mfpmath=sse from TUNE_CCARGS +TUNE_CCARGS_remove = "-mfpmath=sse" + +python () { + ccargs = d.getVar('TUNE_CCARGS').split() + if '-mx32' in ccargs: + # use x86_64 EFI ABI + ccargs.remove('-mx32') + ccargs.append('-m64') + d.setVar('TUNE_CCARGS', ' '.join(ccargs)) +} -- cgit 1.2.3-korg