diff options
Diffstat (limited to 'common/recipes-bsp/gnu-efi')
-rw-r--r-- | common/recipes-bsp/gnu-efi/gnu-efi/cross-compile-support.patch | 31 | ||||
-rw-r--r-- | common/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch | 22 | ||||
-rw-r--r-- | common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb | 34 |
3 files changed, 87 insertions, 0 deletions
diff --git a/common/recipes-bsp/gnu-efi/gnu-efi/cross-compile-support.patch b/common/recipes-bsp/gnu-efi/gnu-efi/cross-compile-support.patch new file mode 100644 index 00000000..221f80ed --- /dev/null +++ b/common/recipes-bsp/gnu-efi/gnu-efi/cross-compile-support.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | Add cross compile support | ||
2 | |||
3 | Upstream-Status: Submitted [Maintainer directly] | ||
4 | |||
5 | All the user to specify the build variables in the environment. | ||
6 | |||
7 | Signed-off-by: Darren Hart <dvhart@Linux.intel.com> | ||
8 | |||
9 | Index: gnu-efi-3.0/Make.defaults | ||
10 | =================================================================== | ||
11 | --- gnu-efi-3.0.orig/Make.defaults | ||
12 | +++ gnu-efi-3.0/Make.defaults | ||
13 | @@ -54,12 +55,12 @@ LDFLAGS = -nostdlib | ||
14 | INSTALL = install | ||
15 | prefix = /usr/bin/ | ||
16 | |||
17 | -CC = $(prefix)gcc | ||
18 | -AS = $(prefix)as | ||
19 | -LD = $(prefix)ld | ||
20 | -AR = $(prefix)ar | ||
21 | -RANLIB = $(prefix)ranlib | ||
22 | -OBJCOPY = $(prefix)objcopy | ||
23 | +CC := $(prefix)gcc | ||
24 | +AS := $(prefix)as | ||
25 | +LD := $(prefix)ld | ||
26 | +AR := $(prefix)ar | ||
27 | +RANLIB := $(prefix)ranlib | ||
28 | +OBJCOPY := $(prefix)objcopy | ||
29 | |||
30 | ifeq ($(ARCH),ia64) | ||
31 | CFLAGS += -mfixed-range=f32-f127 | ||
diff --git a/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch b/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch new file mode 100644 index 00000000..27c94e8a --- /dev/null +++ b/common/recipes-bsp/gnu-efi/gnu-efi/parallel-make.patch | |||
@@ -0,0 +1,22 @@ | |||
1 | Fix parallel make failure | ||
2 | |||
3 | Upstream-Status: Submitted [Maintainer directly] | ||
4 | |||
5 | Add a missing dependency which resulted in a race leading to failure | ||
6 | on larger values of -j. | ||
7 | |||
8 | Signed-off-by: Darren Hart <dvhart@linux.intel.com> | ||
9 | |||
10 | Index: gnu-efi-3.0/Makefile | ||
11 | =================================================================== | ||
12 | --- gnu-efi-3.0.orig/Makefile | ||
13 | +++ gnu-efi-3.0/Makefile | ||
14 | @@ -42,6 +42,8 @@ include $(SRCDIR)/Make.defaults | ||
15 | |||
16 | SUBDIRS = lib gnuefi inc apps | ||
17 | |||
18 | +gnuefi: lib | ||
19 | + | ||
20 | all: check_gcc $(SUBDIRS) | ||
21 | |||
22 | $(SUBDIRS): | ||
diff --git a/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb b/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb new file mode 100644 index 00000000..252d49a1 --- /dev/null +++ b/common/recipes-bsp/gnu-efi/gnu-efi_3.0m.bb | |||
@@ -0,0 +1,34 @@ | |||
1 | SUMMARY = "Libraries for producing EFI binaries" | ||
2 | HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" | ||
3 | SECTION = "devel" | ||
4 | LICENSE = "GPLv2+" | ||
5 | LIC_FILES_CHKSUM = "file://debian/copyright;md5=5fb358a180f484b285b0d99acdc29666" | ||
6 | |||
7 | PR = "r2" | ||
8 | |||
9 | SRCREV = "74" | ||
10 | |||
11 | SRC_URI = "http://downloads.sourceforge.net/gnu-efi/gnu-efi_3.0m.orig.tar.gz \ | ||
12 | file://cross-compile-support.patch \ | ||
13 | file://parallel-make.patch \ | ||
14 | " | ||
15 | SRC_URI[md5sum] = "d0a21125aee56c0c7291ad260e916cb3" | ||
16 | |||
17 | S = "${WORKDIR}/gnu-efi-3.0" | ||
18 | |||
19 | def gnu_efi_arch(d): | ||
20 | import re | ||
21 | tarch = d.getVar("TARGET_ARCH", True) | ||
22 | if re.match("i[3456789]86", tarch): | ||
23 | return "ia32" | ||
24 | return tarch | ||
25 | |||
26 | EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ | ||
27 | 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' \ | ||
28 | " | ||
29 | |||
30 | do_install() { | ||
31 | oe_runmake install INSTALLROOT="${D}${prefix}" | ||
32 | } | ||
33 | |||
34 | FILES_${PN} += "${libdir}/*.lds" | ||