[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