diff options
Diffstat (limited to 'common/recipes-bsp')
-rw-r--r-- | common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch | 48 |
1 files changed, 48 insertions, 0 deletions
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 00000000..e5b47c19 --- /dev/null +++ b/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make-archives.patch | |||
@@ -0,0 +1,48 @@ | |||
1 | Fix parallel make failure for archives | ||
2 | |||
3 | Upstream-Status: Pending | ||
4 | |||
5 | The lib and gnuefi makefiles were using the lib.a() form which compiles | ||
6 | and ar's as a pair instead of compiling all and then ar'ing which can | ||
7 | parallelize better. This was resulting in build failures on larger values | ||
8 | of -j. | ||
9 | |||
10 | See http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_toc.html#TOC105 | ||
11 | for details. | ||
12 | |||
13 | Signed-off-by: Saul Wold <sgw@linux.intel.com> | ||
14 | Signed-off-by: Darren Hart <dvhart@linux.intel.com> | ||
15 | --- | ||
16 | --- | ||
17 | gnuefi/Makefile | 3 ++- | ||
18 | lib/Makefile | 3 ++- | ||
19 | 2 files changed, 4 insertions(+), 2 deletions(-) | ||
20 | |||
21 | Index: gnu-efi-3.0/lib/Makefile | ||
22 | =================================================================== | ||
23 | --- gnu-efi-3.0.orig/lib/Makefile | ||
24 | +++ gnu-efi-3.0/lib/Makefile | ||
25 | @@ -66,7 +66,8 @@ all: libsubdirs libefi.a | ||
26 | libsubdirs: | ||
27 | for sdir in $(SUBDIRS); do mkdir -p $$sdir; done | ||
28 | |||
29 | -libefi.a: $(patsubst %,libefi.a(%),$(OBJS)) | ||
30 | +libefi.a: $(OBJS) | ||
31 | + $(AR) rv $@ $(OBJS) | ||
32 | |||
33 | clean: | ||
34 | rm -f libefi.a *~ $(OBJS) */*.o | ||
35 | Index: gnu-efi-3.0/gnuefi/Makefile | ||
36 | =================================================================== | ||
37 | --- gnu-efi-3.0.orig/gnuefi/Makefile | ||
38 | +++ gnu-efi-3.0/gnuefi/Makefile | ||
39 | @@ -51,7 +51,8 @@ TARGETS = crt0-efi-$(ARCH).o libgnuefi.a | ||
40 | |||
41 | all: $(TARGETS) | ||
42 | |||
43 | -libgnuefi.a: $(patsubst %,libgnuefi.a(%),$(OBJS)) | ||
44 | +libgnuefi.a: $(OBJS) | ||
45 | + $(AR) rv $@ $(OBJS) | ||
46 | |||
47 | clean: | ||
48 | rm -f $(TARGETS) *~ *.o $(OBJS) | ||