[meta-intel] [PATCH] gnu-efi: Add parallel make patch for archives
Darren Hart
dvhart at linux.intel.com
Thu May 9 11:10:29 PDT 2013
I've pushed this to master. I have it queued up for danny and dylan.
Tom, did you want to do that push or shall I go ahead and do it?
Thanks,
Darren
On 05/09/2013 11:11 AM, Darren Hart wrote:
> The library makefiles were using the lib.a() form which compiles and
> ar's as a pair instead of compiling all and then ar'ing which can
> parallelize better.
>
> Signed-off-by: Saul Wold <sgw at linux.intel.com>
> Signed-off-by: Darren Hart <dvhart at linux.intel.com>
> ---
> .../gnu-efi/gnu-efi/parallel-make-archives.patch | 45 ++++++++++++++++++++
> common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb | 5 +-
> 2 files changed, 48 insertions(+), 2 deletions(-)
> create mode 100644 common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
>
> diff --git a/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch b/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
> new file mode 100644
> index 0000000..092bd90
> --- /dev/null
> +++ b/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch
> @@ -0,0 +1,45 @@
> +Fix parallel make failure for archives
> +
> +Upstream-Status: Pending
> +
> +The lib and gnuefi makefiles were using the lib.a() form which compiles
> +and ar's as a pair instead of compiling all and then ar'ing which can
> +parallelize better. This was resulting in build failures on larger values
> +of -j.
> +
> +Signed-off-by: Saul Wold <sgw at linux.intel.com>
> +Signed-off-by: Darren Hart <dvhart at linux.intel.com>
> +---
> +---
> + gnuefi/Makefile | 3 ++-
> + lib/Makefile | 3 ++-
> + 2 files changed, 4 insertions(+), 2 deletions(-)
> +
> +Index: gnu-efi-3.0/lib/Makefile
> +===================================================================
> +--- gnu-efi-3.0.orig/lib/Makefile
> ++++ gnu-efi-3.0/lib/Makefile
> +@@ -66,7 +66,8 @@ all: libsubdirs libefi.a
> + libsubdirs:
> + for sdir in $(SUBDIRS); do mkdir -p $$sdir; done
> +
> +-libefi.a: libefi.a($(OBJS))
> ++libefi.a: $(OBJS)
> ++ $(AR) rv $@ $(OBJS)
> +
> + clean:
> + rm -f libefi.a *~ $(OBJS) */*.o
> +Index: gnu-efi-3.0/gnuefi/Makefile
> +===================================================================
> +--- gnu-efi-3.0.orig/gnuefi/Makefile
> ++++ gnu-efi-3.0/gnuefi/Makefile
> +@@ -51,7 +51,8 @@ TARGETS = crt0-efi-$(ARCH).o libgnuefi.a
> +
> + all: $(TARGETS)
> +
> +-libgnuefi.a: libgnuefi.a($(OBJS))
> ++libgnuefi.a: $(OBJS)
> ++ $(AR) rv $@ $(OBJS)
> +
> + clean:
> + rm -f $(TARGETS) *~ *.o $(OBJS)
> diff --git a/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb b/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb
> index f8015f2..c672ab7 100644
> --- a/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb
> +++ b/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb
> @@ -4,13 +4,14 @@ SECTION = "devel"
> LICENSE = "GPLv2+"
> LIC_FILES_CHKSUM = "file://debian/copyright;md5=5fb358a180f484b285b0d99acdc29666"
>
> -PR = "r2"
> +PR = "r3"
>
> SRCREV = "74"
>
> SRC_URI = "http://downloads.sourceforge.net/gnu-efi/gnu-efi_3.0m.orig.tar.gz \
> file://cross-compile-support.patch \
> - file://parallel-make.patch \
> + file://parallel-make.patch \
> + file://parallel-make-archives.patch \
> "
> SRC_URI[md5sum] = "d0a21125aee56c0c7291ad260e916cb3"
> SRC_URI[sha256sum] = "b7fb638f5ec8faa6edebe54beb90957f01ccccf70a2a948d1b58b834c8d7f86d"
>
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Technical Lead - Linux Kernel
More information about the meta-intel
mailing list