All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCH v2 1/2] efivar: update to 0.23
@ 2016-03-04  7:14 Koen Kooi
  2016-03-04  7:14 ` [meta-oe][PATCH v2 2/2] efibootmgr: update and unblacklist Koen Kooi
  2016-03-04 13:34 ` [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Martin Jansa
  0 siblings, 2 replies; 8+ messages in thread
From: Koen Kooi @ 2016-03-04  7:14 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
---
 .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
 ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
 meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
 meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
 4 files changed, 45 insertions(+), 122 deletions(-)
 delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
 delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
 create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb

diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
index 4bd7d95..b02edd9 100644
--- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
+++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
@@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/src/Makefile b/src/Makefile
-index 6eac858..ef4eb1d 100644
+index 5fc7887..1829d22 100644
 --- a/src/Makefile
 +++ b/src/Makefile
-@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
- makeguids : makeguids.o fakeguid.o
- 	$(CC) $(cflags) -o $@ $^ -ldl
- 
+@@ -29,8 +29,8 @@ all : deps $(TARGETS)
+ ./guid-symbols.c : include/efivar/efivar-guids.h
+ ./guids.bin : include/efivar/efivar-guids.h
+ ./names.bin : include/efivar/efivar-guids.h
 -include/efivar/efivar-guids.h : makeguids guids.txt
--	./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
+-	./makeguids guids.txt guids.bin names.bin \
 +include/efivar/efivar-guids.h : guids.txt
-+	makeguids guids.txt guids.bin names.bin guid-symbols.S $@
++	makeguids guids.txt guids.bin names.bin \
+ 		guid-symbols.c include/efivar/efivar-guids.h
  
- guidlist.o : guids.S include/efivar/efivar-guids.h
- 	$(CC) $(cflags) -c -o guidlist.o guids.S
--- 
-2.6.0.rc2.10.gf4d9753
-
+ makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
deleted file mode 100644
index 7f04b19..0000000
--- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
-whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
-compatible.
-
-Upstream-Status: Pending
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
-diff --git a/Make.defaults b/Make.defaults
-index cc2baa9..118ae56 100644
---- a/Make.defaults
-+++ b/Make.defaults
-@@ -10,10 +10,9 @@ CFLAGS	?= -O2 -g
- 
- ARCH = $(shell uname -m)
- clang_cflags =
--gcc_cflags = -Wmaybe-uninitialized
- cflags	:= $(CFLAGS) \
- 	-Werror -Wall -Wsign-compare -Wstrict-aliasing \
--	-std=gnu11 -fshort-wchar -fPIC \
-+	-fshort-wchar -fPIC \
- 	-fvisibility=hidden \
- 	-D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
- 	$(if $(filter $(CC),clang),$(clang_cflags),) \
-diff --git a/src/guid.h b/src/guid.h
-index 9542ee1..0817991 100644
---- a/src/guid.h
-+++ b/src/guid.h
-@@ -31,7 +31,8 @@ static inline int
- real_isspace(char c)
- {
- 	char spaces[] = " \f\n\r\t\v";
--	for (int i = 0; spaces[i] != '\0'; i++)
-+	int i;
-+	for (i = 0; spaces[i] != '\0'; i++)
- 		if (c == spaces[i])
- 			return 1;
- 	return 0;
-@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
- static inline int
- check_segment_sanity(const char *text, size_t len)
- {
--	for(unsigned int i = 0; i < len; i++) {
-+	unsigned int i;
-+	for(i = 0; i < len; i++) {
- 		if (text[i] >= '0' && text[i] <= '9')
- 			continue;
- 		/* "| 0x20" is tolower() without having to worry about
-diff --git a/src/makeguids.c b/src/makeguids.c
-index e9acf15..7e16cb2 100644
---- a/src/makeguids.c
-+++ b/src/makeguids.c
-@@ -150,7 +150,8 @@ main(int argc, char *argv[])
- 
- 	fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
- 
--	for (unsigned int i = 0; i < line-1; i++) {
-+	unsigned int i, j;
-+	for (i = 0; i < line-1; i++) {
- 		if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
- 			fprintf(symout, "\t.globl %s\n"
- 					"\t.data\n"
-@@ -176,7 +177,7 @@ main(int argc, char *argv[])
- 			fprintf(symout, "efi_guid_empty:\n");
- 
- 		uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
--		for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
-+		for (j = 0; j < sizeof (efi_guid_t); j++)
- 			fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
- 
- 		fprintf(symout, "%s_end:\n", outbuf[i].symbol);
diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
deleted file mode 100644
index f7a4d55..0000000
--- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Tools to manipulate UEFI variables"
-DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
-HOMEPAGE = "https://github.com/rhinstaller/efivar"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
-
-DEPENDS_class-target = "popt efivar-native"
-
-SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
-SRC_URI = "git://github.com/rhinstaller/efivar.git"
-SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
-SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
-
-S = "${WORKDIR}/git"
-
-do_install() {
-    oe_runmake install DESTDIR=${D}
-}
-
-do_compile_class-native() {
-    oe_runmake -C src makeguids
-}
-
-do_install_class-native() {
-    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
-}
-
-BBCLASSEXTEND = "native"
-
-# See
-# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
-# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
-# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
-# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
-# but it's still broken:
-# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
-# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
-PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
new file mode 100644
index 0000000..faffb79
--- /dev/null
+++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
@@ -0,0 +1,36 @@
+SUMMARY = "Tools to manipulate UEFI variables"
+DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
+HOMEPAGE = "https://github.com/rhinstaller/efivar"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
+
+DEPENDS_class-target = "popt efivar-native"
+
+SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
+SRC_URI = "git://github.com/rhinstaller/efivar.git"
+SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
+
+S = "${WORKDIR}/git"
+
+# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
+EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
+
+do_compile_prepend() {
+    sed -i -e s:-Werror::g ${S}/gcc.specs
+}
+
+do_compile_class-native() {
+    oe_runmake -C src makeguids
+}
+
+do_install() {
+    oe_runmake install DESTDIR=${D}
+}
+
+do_install_class-native() {
+    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
+}
+
+BBCLASSEXTEND = "native"
+
-- 
2.4.3



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [meta-oe][PATCH v2 2/2] efibootmgr: update and unblacklist
  2016-03-04  7:14 [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Koen Kooi
@ 2016-03-04  7:14 ` Koen Kooi
  2016-03-04 13:34 ` [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Martin Jansa
  1 sibling, 0 replies; 8+ messages in thread
From: Koen Kooi @ 2016-03-04  7:14 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

Also fix style issues.

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
---
 meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb  | 14 +++++++-------
 meta-oe/recipes-extended/efibootmgr/files/ldflags.patch | 17 -----------------
 2 files changed, 7 insertions(+), 24 deletions(-)
 delete mode 100644 meta-oe/recipes-extended/efibootmgr/files/ldflags.patch

diff --git a/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb b/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
index 9b611ce..d80c89f 100644
--- a/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
+++ b/meta-oe/recipes-extended/efibootmgr/efibootmgr_0.12.bb
@@ -10,20 +10,20 @@ DEPENDS = "pciutils zlib efivar"
 
 COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux"
 
-SRC_URI = "https://github.com/rhinstaller/efibootmgr/releases/download/${BP}/${BP}.tar.bz2 \
-           file://ldflags.patch \
+SRCREV = "eb6e36c9064eae256cd60df24a977e3abd87fd16"
+SRC_URI = "git://github.com/rhinstaller/efibootmgr.git;protocol=https \
           "
 
-SRC_URI[md5sum] = "6647f5cd807bc8484135ba74fcbcc39a"
-SRC_URI[sha256sum] = "a66f5850677e86255d93cb1cead04c3c48a823a2b864c579321f2a07f00256e6"
+S = "${WORKDIR}/git"
+
+
+inherit pkgconfig
 
 EXTRA_OEMAKE = "'CC=${CC}' 'CFLAGS=${CFLAGS} -I${S}/src/include `pkg-config --cflags efivar` \
                  -DEFIBOOTMGR_VERSION=\"$(RELEASE_MAJOR).$(RELEASE_MINOR)\" '"
 
 do_install () {
-    install -D -p -m0755 src/efibootmgr/efibootmgr ${D}/${sbindir}/efibootmgr
+    install -D -p -m0755 src/efibootmgr ${D}/${sbindir}/efibootmgr
 }
 
-inherit pkgconfig
 
-PNBLACKLIST[efibootmgr] ?= "Depends on blacklisted efivar"
diff --git a/meta-oe/recipes-extended/efibootmgr/files/ldflags.patch b/meta-oe/recipes-extended/efibootmgr/files/ldflags.patch
deleted file mode 100644
index 0d5594a..0000000
--- a/meta-oe/recipes-extended/efibootmgr/files/ldflags.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Upstream-Status: Pending
-
-Import this patch from meta-linaro.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
---- efibootmgr-0.5.4.orig/Makefile
-+++ efibootmgr-0.5.4/Makefile
-@@ -11,6 +11,8 @@
-   CFLAGS = $(EXTRA_CFLAGS) -DEFIBOOTMGR_VERSION=\"$(RELEASE_MAJOR).$(RELEASE_MINOR).$(RELEASE_SUBLEVEL)$(RELEASE_EXTRALEVEL)\" \
- 	    -Wall -g -D_FILE_OFFSET_BITS=64
- 
-+  LDFLAGS += -lz
-+
-   MODULES := src
- 
-   BINDIR := /usr/sbin
-- 
2.4.3



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-04  7:14 [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Koen Kooi
  2016-03-04  7:14 ` [meta-oe][PATCH v2 2/2] efibootmgr: update and unblacklist Koen Kooi
@ 2016-03-04 13:34 ` Martin Jansa
  2016-03-04 14:16   ` Koen Kooi
  1 sibling, 1 reply; 8+ messages in thread
From: Martin Jansa @ 2016-03-04 13:34 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Koen Kooi

[-- Attachment #1: Type: text/plain, Size: 9371 bytes --]

On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.

This fails to build static version, when no-static-libs.inc is used
(e.g. default in Poky).

Can you either disable static in popt or change efivar to respect
--disable-static (if possible)?

5.3.0/ld: cannot find -lpopt
| collect2: error: ld returned 1 exit status
| make[1]: *** [efivar-static] Error 1
| make[1]: *** Waiting for unfinished jobs....


> 
> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
> ---
>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
>  4 files changed, 45 insertions(+), 122 deletions(-)
>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
> 
> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> index 4bd7d95..b02edd9 100644
> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
>   1 file changed, 2 insertions(+), 2 deletions(-)
>  
>  diff --git a/src/Makefile b/src/Makefile
> -index 6eac858..ef4eb1d 100644
> +index 5fc7887..1829d22 100644
>  --- a/src/Makefile
>  +++ b/src/Makefile
> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
> - makeguids : makeguids.o fakeguid.o
> - 	$(CC) $(cflags) -o $@ $^ -ldl
> - 
> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
> + ./guid-symbols.c : include/efivar/efivar-guids.h
> + ./guids.bin : include/efivar/efivar-guids.h
> + ./names.bin : include/efivar/efivar-guids.h
>  -include/efivar/efivar-guids.h : makeguids guids.txt
> --	./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> +-	./makeguids guids.txt guids.bin names.bin \
>  +include/efivar/efivar-guids.h : guids.txt
> -+	makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> ++	makeguids guids.txt guids.bin names.bin \
> + 		guid-symbols.c include/efivar/efivar-guids.h
>   
> - guidlist.o : guids.S include/efivar/efivar-guids.h
> - 	$(CC) $(cflags) -c -o guidlist.o guids.S
> --- 
> -2.6.0.rc2.10.gf4d9753
> -
> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> deleted file mode 100644
> index 7f04b19..0000000
> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> +++ /dev/null
> @@ -1,71 +0,0 @@
> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
> -compatible.
> -
> -Upstream-Status: Pending
> -
> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
> ----
> -diff --git a/Make.defaults b/Make.defaults
> -index cc2baa9..118ae56 100644
> ---- a/Make.defaults
> -+++ b/Make.defaults
> -@@ -10,10 +10,9 @@ CFLAGS	?= -O2 -g
> - 
> - ARCH = $(shell uname -m)
> - clang_cflags =
> --gcc_cflags = -Wmaybe-uninitialized
> - cflags	:= $(CFLAGS) \
> - 	-Werror -Wall -Wsign-compare -Wstrict-aliasing \
> --	-std=gnu11 -fshort-wchar -fPIC \
> -+	-fshort-wchar -fPIC \
> - 	-fvisibility=hidden \
> - 	-D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
> - 	$(if $(filter $(CC),clang),$(clang_cflags),) \
> -diff --git a/src/guid.h b/src/guid.h
> -index 9542ee1..0817991 100644
> ---- a/src/guid.h
> -+++ b/src/guid.h
> -@@ -31,7 +31,8 @@ static inline int
> - real_isspace(char c)
> - {
> - 	char spaces[] = " \f\n\r\t\v";
> --	for (int i = 0; spaces[i] != '\0'; i++)
> -+	int i;
> -+	for (i = 0; spaces[i] != '\0'; i++)
> - 		if (c == spaces[i])
> - 			return 1;
> - 	return 0;
> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
> - static inline int
> - check_segment_sanity(const char *text, size_t len)
> - {
> --	for(unsigned int i = 0; i < len; i++) {
> -+	unsigned int i;
> -+	for(i = 0; i < len; i++) {
> - 		if (text[i] >= '0' && text[i] <= '9')
> - 			continue;
> - 		/* "| 0x20" is tolower() without having to worry about
> -diff --git a/src/makeguids.c b/src/makeguids.c
> -index e9acf15..7e16cb2 100644
> ---- a/src/makeguids.c
> -+++ b/src/makeguids.c
> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
> - 
> - 	fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
> - 
> --	for (unsigned int i = 0; i < line-1; i++) {
> -+	unsigned int i, j;
> -+	for (i = 0; i < line-1; i++) {
> - 		if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
> - 			fprintf(symout, "\t.globl %s\n"
> - 					"\t.data\n"
> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
> - 			fprintf(symout, "efi_guid_empty:\n");
> - 
> - 		uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
> --		for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
> -+		for (j = 0; j < sizeof (efi_guid_t); j++)
> - 			fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
> - 
> - 		fprintf(symout, "%s_end:\n", outbuf[i].symbol);
> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> deleted file mode 100644
> index f7a4d55..0000000
> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> +++ /dev/null
> @@ -1,39 +0,0 @@
> -SUMMARY = "Tools to manipulate UEFI variables"
> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
> -
> -LICENSE = "LGPLv2.1"
> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> -
> -DEPENDS_class-target = "popt efivar-native"
> -
> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
> -
> -S = "${WORKDIR}/git"
> -
> -do_install() {
> -    oe_runmake install DESTDIR=${D}
> -}
> -
> -do_compile_class-native() {
> -    oe_runmake -C src makeguids
> -}
> -
> -do_install_class-native() {
> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> -}
> -
> -BBCLASSEXTEND = "native"
> -
> -# See
> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
> -# but it's still broken:
> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> new file mode 100644
> index 0000000..faffb79
> --- /dev/null
> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> @@ -0,0 +1,36 @@
> +SUMMARY = "Tools to manipulate UEFI variables"
> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
> +
> +LICENSE = "LGPLv2.1"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> +
> +DEPENDS_class-target = "popt efivar-native"
> +
> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> +
> +S = "${WORKDIR}/git"
> +
> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
> +
> +do_compile_prepend() {
> +    sed -i -e s:-Werror::g ${S}/gcc.specs
> +}
> +
> +do_compile_class-native() {
> +    oe_runmake -C src makeguids
> +}
> +
> +do_install() {
> +    oe_runmake install DESTDIR=${D}
> +}
> +
> +do_install_class-native() {
> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> +}
> +
> +BBCLASSEXTEND = "native"
> +
> -- 
> 2.4.3
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-04 13:34 ` [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Martin Jansa
@ 2016-03-04 14:16   ` Koen Kooi
  2016-03-04 15:09     ` Martin Jansa
  0 siblings, 1 reply; 8+ messages in thread
From: Koen Kooi @ 2016-03-04 14:16 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OpenEmbedded Devel List

On 4 March 2016 at 14:34, Martin Jansa <martin.jansa@gmail.com> wrote:
> On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
>> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.
>
> This fails to build static version, when no-static-libs.inc is used
> (e.g. default in Poky).
>
> Can you either disable static in popt or change efivar to respect
> --disable-static (if possible)?

I've patched out the static build in v3, that should fix this.

regards,

Koen


>
> 5.3.0/ld: cannot find -lpopt
> | collect2: error: ld returned 1 exit status
> | make[1]: *** [efivar-static] Error 1
> | make[1]: *** Waiting for unfinished jobs....
>
>
>>
>> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
>> ---
>>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
>>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
>>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
>>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
>>  4 files changed, 45 insertions(+), 122 deletions(-)
>>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
>>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
>>
>> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> index 4bd7d95..b02edd9 100644
>> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>>  diff --git a/src/Makefile b/src/Makefile
>> -index 6eac858..ef4eb1d 100644
>> +index 5fc7887..1829d22 100644
>>  --- a/src/Makefile
>>  +++ b/src/Makefile
>> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
>> - makeguids : makeguids.o fakeguid.o
>> -     $(CC) $(cflags) -o $@ $^ -ldl
>> -
>> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
>> + ./guid-symbols.c : include/efivar/efivar-guids.h
>> + ./guids.bin : include/efivar/efivar-guids.h
>> + ./names.bin : include/efivar/efivar-guids.h
>>  -include/efivar/efivar-guids.h : makeguids guids.txt
>> --    ./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>> +-    ./makeguids guids.txt guids.bin names.bin \
>>  +include/efivar/efivar-guids.h : guids.txt
>> -+    makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>> ++    makeguids guids.txt guids.bin names.bin \
>> +             guid-symbols.c include/efivar/efivar-guids.h
>>
>> - guidlist.o : guids.S include/efivar/efivar-guids.h
>> -     $(CC) $(cflags) -c -o guidlist.o guids.S
>> ---
>> -2.6.0.rc2.10.gf4d9753
>> -
>> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
>> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>> deleted file mode 100644
>> index 7f04b19..0000000
>> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>> +++ /dev/null
>> @@ -1,71 +0,0 @@
>> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
>> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
>> -compatible.
>> -
>> -Upstream-Status: Pending
>> -
>> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> ----
>> -diff --git a/Make.defaults b/Make.defaults
>> -index cc2baa9..118ae56 100644
>> ---- a/Make.defaults
>> -+++ b/Make.defaults
>> -@@ -10,10 +10,9 @@ CFLAGS    ?= -O2 -g
>> -
>> - ARCH = $(shell uname -m)
>> - clang_cflags =
>> --gcc_cflags = -Wmaybe-uninitialized
>> - cflags      := $(CFLAGS) \
>> -     -Werror -Wall -Wsign-compare -Wstrict-aliasing \
>> --    -std=gnu11 -fshort-wchar -fPIC \
>> -+    -fshort-wchar -fPIC \
>> -     -fvisibility=hidden \
>> -     -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
>> -     $(if $(filter $(CC),clang),$(clang_cflags),) \
>> -diff --git a/src/guid.h b/src/guid.h
>> -index 9542ee1..0817991 100644
>> ---- a/src/guid.h
>> -+++ b/src/guid.h
>> -@@ -31,7 +31,8 @@ static inline int
>> - real_isspace(char c)
>> - {
>> -     char spaces[] = " \f\n\r\t\v";
>> --    for (int i = 0; spaces[i] != '\0'; i++)
>> -+    int i;
>> -+    for (i = 0; spaces[i] != '\0'; i++)
>> -             if (c == spaces[i])
>> -                     return 1;
>> -     return 0;
>> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
>> - static inline int
>> - check_segment_sanity(const char *text, size_t len)
>> - {
>> --    for(unsigned int i = 0; i < len; i++) {
>> -+    unsigned int i;
>> -+    for(i = 0; i < len; i++) {
>> -             if (text[i] >= '0' && text[i] <= '9')
>> -                     continue;
>> -             /* "| 0x20" is tolower() without having to worry about
>> -diff --git a/src/makeguids.c b/src/makeguids.c
>> -index e9acf15..7e16cb2 100644
>> ---- a/src/makeguids.c
>> -+++ b/src/makeguids.c
>> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
>> -
>> -     fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
>> -
>> --    for (unsigned int i = 0; i < line-1; i++) {
>> -+    unsigned int i, j;
>> -+    for (i = 0; i < line-1; i++) {
>> -             if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
>> -                     fprintf(symout, "\t.globl %s\n"
>> -                                     "\t.data\n"
>> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
>> -                     fprintf(symout, "efi_guid_empty:\n");
>> -
>> -             uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
>> --            for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
>> -+            for (j = 0; j < sizeof (efi_guid_t); j++)
>> -                     fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
>> -
>> -             fprintf(symout, "%s_end:\n", outbuf[i].symbol);
>> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>> deleted file mode 100644
>> index f7a4d55..0000000
>> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>> +++ /dev/null
>> @@ -1,39 +0,0 @@
>> -SUMMARY = "Tools to manipulate UEFI variables"
>> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
>> -
>> -LICENSE = "LGPLv2.1"
>> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>> -
>> -DEPENDS_class-target = "popt efivar-native"
>> -
>> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
>> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
>> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
>> -
>> -S = "${WORKDIR}/git"
>> -
>> -do_install() {
>> -    oe_runmake install DESTDIR=${D}
>> -}
>> -
>> -do_compile_class-native() {
>> -    oe_runmake -C src makeguids
>> -}
>> -
>> -do_install_class-native() {
>> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>> -}
>> -
>> -BBCLASSEXTEND = "native"
>> -
>> -# See
>> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
>> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
>> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
>> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
>> -# but it's still broken:
>> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
>> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
>> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
>> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>> new file mode 100644
>> index 0000000..faffb79
>> --- /dev/null
>> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>> @@ -0,0 +1,36 @@
>> +SUMMARY = "Tools to manipulate UEFI variables"
>> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
>> +
>> +LICENSE = "LGPLv2.1"
>> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>> +
>> +DEPENDS_class-target = "popt efivar-native"
>> +
>> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
>> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
>> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>> +
>> +S = "${WORKDIR}/git"
>> +
>> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
>> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
>> +
>> +do_compile_prepend() {
>> +    sed -i -e s:-Werror::g ${S}/gcc.specs
>> +}
>> +
>> +do_compile_class-native() {
>> +    oe_runmake -C src makeguids
>> +}
>> +
>> +do_install() {
>> +    oe_runmake install DESTDIR=${D}
>> +}
>> +
>> +do_install_class-native() {
>> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>> +}
>> +
>> +BBCLASSEXTEND = "native"
>> +
>> --
>> 2.4.3
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
> --
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com



-- 
Koen Kooi

Builds and Baselines | Release Manager
Linaro.org | Open source software for ARM SoCs


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-04 14:16   ` Koen Kooi
@ 2016-03-04 15:09     ` Martin Jansa
  2016-03-05 12:33       ` Martin Jansa
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Jansa @ 2016-03-04 15:09 UTC (permalink / raw)
  To: Koen Kooi; +Cc: OpenEmbedded Devel List

[-- Attachment #1: Type: text/plain, Size: 10872 bytes --]

On Fri, Mar 04, 2016 at 03:16:22PM +0100, Koen Kooi wrote:
> On 4 March 2016 at 14:34, Martin Jansa <martin.jansa@gmail.com> wrote:
> > On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
> >> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.
> >
> > This fails to build static version, when no-static-libs.inc is used
> > (e.g. default in Poky).
> >
> > Can you either disable static in popt or change efivar to respect
> > --disable-static (if possible)?
> 
> I've patched out the static build in v3, that should fix this.

Thanks for quick updated, applied in master-next with small indentation
fix.

> 
> regards,
> 
> Koen
> 
> 
> >
> > 5.3.0/ld: cannot find -lpopt
> > | collect2: error: ld returned 1 exit status
> > | make[1]: *** [efivar-static] Error 1
> > | make[1]: *** Waiting for unfinished jobs....
> >
> >
> >>
> >> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
> >> ---
> >>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
> >>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
> >>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
> >>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
> >>  4 files changed, 45 insertions(+), 122 deletions(-)
> >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
> >>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
> >>
> >> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> >> index 4bd7d95..b02edd9 100644
> >> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> >> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> >> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
> >>   1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >>  diff --git a/src/Makefile b/src/Makefile
> >> -index 6eac858..ef4eb1d 100644
> >> +index 5fc7887..1829d22 100644
> >>  --- a/src/Makefile
> >>  +++ b/src/Makefile
> >> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
> >> - makeguids : makeguids.o fakeguid.o
> >> -     $(CC) $(cflags) -o $@ $^ -ldl
> >> -
> >> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
> >> + ./guid-symbols.c : include/efivar/efivar-guids.h
> >> + ./guids.bin : include/efivar/efivar-guids.h
> >> + ./names.bin : include/efivar/efivar-guids.h
> >>  -include/efivar/efivar-guids.h : makeguids guids.txt
> >> --    ./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> >> +-    ./makeguids guids.txt guids.bin names.bin \
> >>  +include/efivar/efivar-guids.h : guids.txt
> >> -+    makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> >> ++    makeguids guids.txt guids.bin names.bin \
> >> +             guid-symbols.c include/efivar/efivar-guids.h
> >>
> >> - guidlist.o : guids.S include/efivar/efivar-guids.h
> >> -     $(CC) $(cflags) -c -o guidlist.o guids.S
> >> ---
> >> -2.6.0.rc2.10.gf4d9753
> >> -
> >> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
> >> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> >> deleted file mode 100644
> >> index 7f04b19..0000000
> >> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> >> +++ /dev/null
> >> @@ -1,71 +0,0 @@
> >> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
> >> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
> >> -compatible.
> >> -
> >> -Upstream-Status: Pending
> >> -
> >> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
> >> ----
> >> -diff --git a/Make.defaults b/Make.defaults
> >> -index cc2baa9..118ae56 100644
> >> ---- a/Make.defaults
> >> -+++ b/Make.defaults
> >> -@@ -10,10 +10,9 @@ CFLAGS    ?= -O2 -g
> >> -
> >> - ARCH = $(shell uname -m)
> >> - clang_cflags =
> >> --gcc_cflags = -Wmaybe-uninitialized
> >> - cflags      := $(CFLAGS) \
> >> -     -Werror -Wall -Wsign-compare -Wstrict-aliasing \
> >> --    -std=gnu11 -fshort-wchar -fPIC \
> >> -+    -fshort-wchar -fPIC \
> >> -     -fvisibility=hidden \
> >> -     -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
> >> -     $(if $(filter $(CC),clang),$(clang_cflags),) \
> >> -diff --git a/src/guid.h b/src/guid.h
> >> -index 9542ee1..0817991 100644
> >> ---- a/src/guid.h
> >> -+++ b/src/guid.h
> >> -@@ -31,7 +31,8 @@ static inline int
> >> - real_isspace(char c)
> >> - {
> >> -     char spaces[] = " \f\n\r\t\v";
> >> --    for (int i = 0; spaces[i] != '\0'; i++)
> >> -+    int i;
> >> -+    for (i = 0; spaces[i] != '\0'; i++)
> >> -             if (c == spaces[i])
> >> -                     return 1;
> >> -     return 0;
> >> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
> >> - static inline int
> >> - check_segment_sanity(const char *text, size_t len)
> >> - {
> >> --    for(unsigned int i = 0; i < len; i++) {
> >> -+    unsigned int i;
> >> -+    for(i = 0; i < len; i++) {
> >> -             if (text[i] >= '0' && text[i] <= '9')
> >> -                     continue;
> >> -             /* "| 0x20" is tolower() without having to worry about
> >> -diff --git a/src/makeguids.c b/src/makeguids.c
> >> -index e9acf15..7e16cb2 100644
> >> ---- a/src/makeguids.c
> >> -+++ b/src/makeguids.c
> >> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
> >> -
> >> -     fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
> >> -
> >> --    for (unsigned int i = 0; i < line-1; i++) {
> >> -+    unsigned int i, j;
> >> -+    for (i = 0; i < line-1; i++) {
> >> -             if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
> >> -                     fprintf(symout, "\t.globl %s\n"
> >> -                                     "\t.data\n"
> >> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
> >> -                     fprintf(symout, "efi_guid_empty:\n");
> >> -
> >> -             uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
> >> --            for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
> >> -+            for (j = 0; j < sizeof (efi_guid_t); j++)
> >> -                     fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
> >> -
> >> -             fprintf(symout, "%s_end:\n", outbuf[i].symbol);
> >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> >> deleted file mode 100644
> >> index f7a4d55..0000000
> >> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> >> +++ /dev/null
> >> @@ -1,39 +0,0 @@
> >> -SUMMARY = "Tools to manipulate UEFI variables"
> >> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> >> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
> >> -
> >> -LICENSE = "LGPLv2.1"
> >> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> >> -
> >> -DEPENDS_class-target = "popt efivar-native"
> >> -
> >> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
> >> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
> >> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> >> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
> >> -
> >> -S = "${WORKDIR}/git"
> >> -
> >> -do_install() {
> >> -    oe_runmake install DESTDIR=${D}
> >> -}
> >> -
> >> -do_compile_class-native() {
> >> -    oe_runmake -C src makeguids
> >> -}
> >> -
> >> -do_install_class-native() {
> >> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> >> -}
> >> -
> >> -BBCLASSEXTEND = "native"
> >> -
> >> -# See
> >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
> >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
> >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
> >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
> >> -# but it's still broken:
> >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
> >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
> >> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
> >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> >> new file mode 100644
> >> index 0000000..faffb79
> >> --- /dev/null
> >> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> >> @@ -0,0 +1,36 @@
> >> +SUMMARY = "Tools to manipulate UEFI variables"
> >> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> >> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
> >> +
> >> +LICENSE = "LGPLv2.1"
> >> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> >> +
> >> +DEPENDS_class-target = "popt efivar-native"
> >> +
> >> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
> >> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
> >> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> >> +
> >> +S = "${WORKDIR}/git"
> >> +
> >> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
> >> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
> >> +
> >> +do_compile_prepend() {
> >> +    sed -i -e s:-Werror::g ${S}/gcc.specs
> >> +}
> >> +
> >> +do_compile_class-native() {
> >> +    oe_runmake -C src makeguids
> >> +}
> >> +
> >> +do_install() {
> >> +    oe_runmake install DESTDIR=${D}
> >> +}
> >> +
> >> +do_install_class-native() {
> >> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> >> +}
> >> +
> >> +BBCLASSEXTEND = "native"
> >> +
> >> --
> >> 2.4.3
> >>
> >> --
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel@lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> > --
> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> 
> 
> 
> -- 
> Koen Kooi
> 
> Builds and Baselines | Release Manager
> Linaro.org | Open source software for ARM SoCs

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-04 15:09     ` Martin Jansa
@ 2016-03-05 12:33       ` Martin Jansa
  2016-03-22 11:38         ` Koen Kooi
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Jansa @ 2016-03-05 12:33 UTC (permalink / raw)
  To: Koen Kooi; +Cc: OpenEmbedded Devel List

[-- Attachment #1: Type: text/plain, Size: 13466 bytes --]

On Fri, Mar 04, 2016 at 04:09:14PM +0100, Martin Jansa wrote:
> On Fri, Mar 04, 2016 at 03:16:22PM +0100, Koen Kooi wrote:
> > On 4 March 2016 at 14:34, Martin Jansa <martin.jansa@gmail.com> wrote:
> > > On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
> > >> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.
> > >
> > > This fails to build static version, when no-static-libs.inc is used
> > > (e.g. default in Poky).
> > >
> > > Can you either disable static in popt or change efivar to respect
> > > --disable-static (if possible)?
> > 
> > I've patched out the static build in v3, that should fix this.
> 
> Thanks for quick updated, applied in master-next with small indentation
> fix.

Well, almost there

one build failed with:
| i586-oe-linux-gcc  -m32 -march=i586
--sysroot=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86
-O2 -pipe -g -feliminate-unused-debug-types
-fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
-fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
-fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux=
-fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86=
-I/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/src/include/efivar/
-specs=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/gcc.specs
-L.  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed     -shared \
| 	  -Wl,-soname,libefivar.so.0 \
| 	  -o libefivar.so dp.o dp-acpi.o dp-hw.o dp-media.o dp-message.o
efivarfs.o export.o guid.o guids.o guid-symbols.o lib.o vars.o -ldl
|
/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
--default-symver: unknown option
|
/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
use the --help option for usage information
| collect2: error: ld returned 1 exit status
| make[1]: *** [libefivar.so] Error 1
| make[1]: *** Waiting for unfinished jobs....

2nd one failed with:

| install -d -m 755 efivar/0.23-r0/image/usr/lib/pkgconfig/
| install -m 644 efivar.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
;  install -m 644 efiboot.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
;
| install: cannot stat 'efivar.pc': No such file or directory
| install: cannot stat 'efiboot.pc': No such file or directory
| make[1]: *** [install] Error 1
| make[1]: Leaving directory `efivar/0.23-r0/git/src'
| make: *** [install] Error 2
| ERROR: oe_runmake failed


> > > 5.3.0/ld: cannot find -lpopt
> > > | collect2: error: ld returned 1 exit status
> > > | make[1]: *** [efivar-static] Error 1
> > > | make[1]: *** Waiting for unfinished jobs....
> > >
> > >
> > >>
> > >> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
> > >> ---
> > >>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
> > >>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
> > >>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
> > >>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
> > >>  4 files changed, 45 insertions(+), 122 deletions(-)
> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
> > >>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
> > >>
> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> > >> index 4bd7d95..b02edd9 100644
> > >> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> > >> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
> > >> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
> > >>   1 file changed, 2 insertions(+), 2 deletions(-)
> > >>
> > >>  diff --git a/src/Makefile b/src/Makefile
> > >> -index 6eac858..ef4eb1d 100644
> > >> +index 5fc7887..1829d22 100644
> > >>  --- a/src/Makefile
> > >>  +++ b/src/Makefile
> > >> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
> > >> - makeguids : makeguids.o fakeguid.o
> > >> -     $(CC) $(cflags) -o $@ $^ -ldl
> > >> -
> > >> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
> > >> + ./guid-symbols.c : include/efivar/efivar-guids.h
> > >> + ./guids.bin : include/efivar/efivar-guids.h
> > >> + ./names.bin : include/efivar/efivar-guids.h
> > >>  -include/efivar/efivar-guids.h : makeguids guids.txt
> > >> --    ./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> > >> +-    ./makeguids guids.txt guids.bin names.bin \
> > >>  +include/efivar/efivar-guids.h : guids.txt
> > >> -+    makeguids guids.txt guids.bin names.bin guid-symbols.S $@
> > >> ++    makeguids guids.txt guids.bin names.bin \
> > >> +             guid-symbols.c include/efivar/efivar-guids.h
> > >>
> > >> - guidlist.o : guids.S include/efivar/efivar-guids.h
> > >> -     $(CC) $(cflags) -c -o guidlist.o guids.S
> > >> ---
> > >> -2.6.0.rc2.10.gf4d9753
> > >> -
> > >> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> > >> deleted file mode 100644
> > >> index 7f04b19..0000000
> > >> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
> > >> +++ /dev/null
> > >> @@ -1,71 +0,0 @@
> > >> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
> > >> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
> > >> -compatible.
> > >> -
> > >> -Upstream-Status: Pending
> > >> -
> > >> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
> > >> ----
> > >> -diff --git a/Make.defaults b/Make.defaults
> > >> -index cc2baa9..118ae56 100644
> > >> ---- a/Make.defaults
> > >> -+++ b/Make.defaults
> > >> -@@ -10,10 +10,9 @@ CFLAGS    ?= -O2 -g
> > >> -
> > >> - ARCH = $(shell uname -m)
> > >> - clang_cflags =
> > >> --gcc_cflags = -Wmaybe-uninitialized
> > >> - cflags      := $(CFLAGS) \
> > >> -     -Werror -Wall -Wsign-compare -Wstrict-aliasing \
> > >> --    -std=gnu11 -fshort-wchar -fPIC \
> > >> -+    -fshort-wchar -fPIC \
> > >> -     -fvisibility=hidden \
> > >> -     -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
> > >> -     $(if $(filter $(CC),clang),$(clang_cflags),) \
> > >> -diff --git a/src/guid.h b/src/guid.h
> > >> -index 9542ee1..0817991 100644
> > >> ---- a/src/guid.h
> > >> -+++ b/src/guid.h
> > >> -@@ -31,7 +31,8 @@ static inline int
> > >> - real_isspace(char c)
> > >> - {
> > >> -     char spaces[] = " \f\n\r\t\v";
> > >> --    for (int i = 0; spaces[i] != '\0'; i++)
> > >> -+    int i;
> > >> -+    for (i = 0; spaces[i] != '\0'; i++)
> > >> -             if (c == spaces[i])
> > >> -                     return 1;
> > >> -     return 0;
> > >> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
> > >> - static inline int
> > >> - check_segment_sanity(const char *text, size_t len)
> > >> - {
> > >> --    for(unsigned int i = 0; i < len; i++) {
> > >> -+    unsigned int i;
> > >> -+    for(i = 0; i < len; i++) {
> > >> -             if (text[i] >= '0' && text[i] <= '9')
> > >> -                     continue;
> > >> -             /* "| 0x20" is tolower() without having to worry about
> > >> -diff --git a/src/makeguids.c b/src/makeguids.c
> > >> -index e9acf15..7e16cb2 100644
> > >> ---- a/src/makeguids.c
> > >> -+++ b/src/makeguids.c
> > >> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
> > >> -
> > >> -     fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
> > >> -
> > >> --    for (unsigned int i = 0; i < line-1; i++) {
> > >> -+    unsigned int i, j;
> > >> -+    for (i = 0; i < line-1; i++) {
> > >> -             if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
> > >> -                     fprintf(symout, "\t.globl %s\n"
> > >> -                                     "\t.data\n"
> > >> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
> > >> -                     fprintf(symout, "efi_guid_empty:\n");
> > >> -
> > >> -             uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
> > >> --            for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
> > >> -+            for (j = 0; j < sizeof (efi_guid_t); j++)
> > >> -                     fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
> > >> -
> > >> -             fprintf(symout, "%s_end:\n", outbuf[i].symbol);
> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> > >> deleted file mode 100644
> > >> index f7a4d55..0000000
> > >> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
> > >> +++ /dev/null
> > >> @@ -1,39 +0,0 @@
> > >> -SUMMARY = "Tools to manipulate UEFI variables"
> > >> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> > >> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
> > >> -
> > >> -LICENSE = "LGPLv2.1"
> > >> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> > >> -
> > >> -DEPENDS_class-target = "popt efivar-native"
> > >> -
> > >> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
> > >> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
> > >> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> > >> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
> > >> -
> > >> -S = "${WORKDIR}/git"
> > >> -
> > >> -do_install() {
> > >> -    oe_runmake install DESTDIR=${D}
> > >> -}
> > >> -
> > >> -do_compile_class-native() {
> > >> -    oe_runmake -C src makeguids
> > >> -}
> > >> -
> > >> -do_install_class-native() {
> > >> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> > >> -}
> > >> -
> > >> -BBCLASSEXTEND = "native"
> > >> -
> > >> -# See
> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
> > >> -# but it's still broken:
> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
> > >> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> > >> new file mode 100644
> > >> index 0000000..faffb79
> > >> --- /dev/null
> > >> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
> > >> @@ -0,0 +1,36 @@
> > >> +SUMMARY = "Tools to manipulate UEFI variables"
> > >> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
> > >> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
> > >> +
> > >> +LICENSE = "LGPLv2.1"
> > >> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
> > >> +
> > >> +DEPENDS_class-target = "popt efivar-native"
> > >> +
> > >> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
> > >> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
> > >> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
> > >> +
> > >> +S = "${WORKDIR}/git"
> > >> +
> > >> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
> > >> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
> > >> +
> > >> +do_compile_prepend() {
> > >> +    sed -i -e s:-Werror::g ${S}/gcc.specs
> > >> +}
> > >> +
> > >> +do_compile_class-native() {
> > >> +    oe_runmake -C src makeguids
> > >> +}
> > >> +
> > >> +do_install() {
> > >> +    oe_runmake install DESTDIR=${D}
> > >> +}
> > >> +
> > >> +do_install_class-native() {
> > >> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
> > >> +}
> > >> +
> > >> +BBCLASSEXTEND = "native"
> > >> +
> > >> --
> > >> 2.4.3
> > >>
> > >> --
> > >> _______________________________________________
> > >> Openembedded-devel mailing list
> > >> Openembedded-devel@lists.openembedded.org
> > >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >
> > > --
> > > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> > 
> > 
> > 
> > -- 
> > Koen Kooi
> > 
> > Builds and Baselines | Release Manager
> > Linaro.org | Open source software for ARM SoCs
> 
> -- 
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com



-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-05 12:33       ` Martin Jansa
@ 2016-03-22 11:38         ` Koen Kooi
  2016-03-23  7:45           ` Koen Kooi
  0 siblings, 1 reply; 8+ messages in thread
From: Koen Kooi @ 2016-03-22 11:38 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OpenEmbedded Devel List

On 5 March 2016 at 13:33, Martin Jansa <martin.jansa@gmail.com> wrote:
> On Fri, Mar 04, 2016 at 04:09:14PM +0100, Martin Jansa wrote:
>> On Fri, Mar 04, 2016 at 03:16:22PM +0100, Koen Kooi wrote:
>> > On 4 March 2016 at 14:34, Martin Jansa <martin.jansa@gmail.com> wrote:
>> > > On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
>> > >> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.
>> > >
>> > > This fails to build static version, when no-static-libs.inc is used
>> > > (e.g. default in Poky).
>> > >
>> > > Can you either disable static in popt or change efivar to respect
>> > > --disable-static (if possible)?
>> >
>> > I've patched out the static build in v3, that should fix this.
>>
>> Thanks for quick updated, applied in master-next with small indentation
>> fix.
>
> Well, almost there

I'm looking at it this week, hopefully I'll get something done before
heading to ELC.

>
> one build failed with:
> | i586-oe-linux-gcc  -m32 -march=i586
> --sysroot=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86
> -O2 -pipe -g -feliminate-unused-debug-types
> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux=
> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86=
> -I/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/src/include/efivar/
> -specs=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/gcc.specs
> -L.  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed     -shared \
> |         -Wl,-soname,libefivar.so.0 \
> |         -o libefivar.so dp.o dp-acpi.o dp-hw.o dp-media.o dp-message.o
> efivarfs.o export.o guid.o guids.o guid-symbols.o lib.o vars.o -ldl
> |
> /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
> --default-symver: unknown option
> |
> /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
> use the --help option for usage information
> | collect2: error: ld returned 1 exit status
> | make[1]: *** [libefivar.so] Error 1
> | make[1]: *** Waiting for unfinished jobs....
>
> 2nd one failed with:
>
> | install -d -m 755 efivar/0.23-r0/image/usr/lib/pkgconfig/
> | install -m 644 efivar.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
> ;  install -m 644 efiboot.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
> ;
> | install: cannot stat 'efivar.pc': No such file or directory
> | install: cannot stat 'efiboot.pc': No such file or directory
> | make[1]: *** [install] Error 1
> | make[1]: Leaving directory `efivar/0.23-r0/git/src'
> | make: *** [install] Error 2
> | ERROR: oe_runmake failed
>
>
>> > > 5.3.0/ld: cannot find -lpopt
>> > > | collect2: error: ld returned 1 exit status
>> > > | make[1]: *** [efivar-static] Error 1
>> > > | make[1]: *** Waiting for unfinished jobs....
>> > >
>> > >
>> > >>
>> > >> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
>> > >> ---
>> > >>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
>> > >>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
>> > >>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
>> > >>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
>> > >>  4 files changed, 45 insertions(+), 122 deletions(-)
>> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
>> > >>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
>> > >>
>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> > >> index 4bd7d95..b02edd9 100644
>> > >> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> > >> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>> > >> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> > >>   1 file changed, 2 insertions(+), 2 deletions(-)
>> > >>
>> > >>  diff --git a/src/Makefile b/src/Makefile
>> > >> -index 6eac858..ef4eb1d 100644
>> > >> +index 5fc7887..1829d22 100644
>> > >>  --- a/src/Makefile
>> > >>  +++ b/src/Makefile
>> > >> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
>> > >> - makeguids : makeguids.o fakeguid.o
>> > >> -     $(CC) $(cflags) -o $@ $^ -ldl
>> > >> -
>> > >> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
>> > >> + ./guid-symbols.c : include/efivar/efivar-guids.h
>> > >> + ./guids.bin : include/efivar/efivar-guids.h
>> > >> + ./names.bin : include/efivar/efivar-guids.h
>> > >>  -include/efivar/efivar-guids.h : makeguids guids.txt
>> > >> --    ./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>> > >> +-    ./makeguids guids.txt guids.bin names.bin \
>> > >>  +include/efivar/efivar-guids.h : guids.txt
>> > >> -+    makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>> > >> ++    makeguids guids.txt guids.bin names.bin \
>> > >> +             guid-symbols.c include/efivar/efivar-guids.h
>> > >>
>> > >> - guidlist.o : guids.S include/efivar/efivar-guids.h
>> > >> -     $(CC) $(cflags) -c -o guidlist.o guids.S
>> > >> ---
>> > >> -2.6.0.rc2.10.gf4d9753
>> > >> -
>> > >> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>> > >> deleted file mode 100644
>> > >> index 7f04b19..0000000
>> > >> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>> > >> +++ /dev/null
>> > >> @@ -1,71 +0,0 @@
>> > >> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
>> > >> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
>> > >> -compatible.
>> > >> -
>> > >> -Upstream-Status: Pending
>> > >> -
>> > >> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
>> > >> ----
>> > >> -diff --git a/Make.defaults b/Make.defaults
>> > >> -index cc2baa9..118ae56 100644
>> > >> ---- a/Make.defaults
>> > >> -+++ b/Make.defaults
>> > >> -@@ -10,10 +10,9 @@ CFLAGS    ?= -O2 -g
>> > >> -
>> > >> - ARCH = $(shell uname -m)
>> > >> - clang_cflags =
>> > >> --gcc_cflags = -Wmaybe-uninitialized
>> > >> - cflags      := $(CFLAGS) \
>> > >> -     -Werror -Wall -Wsign-compare -Wstrict-aliasing \
>> > >> --    -std=gnu11 -fshort-wchar -fPIC \
>> > >> -+    -fshort-wchar -fPIC \
>> > >> -     -fvisibility=hidden \
>> > >> -     -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
>> > >> -     $(if $(filter $(CC),clang),$(clang_cflags),) \
>> > >> -diff --git a/src/guid.h b/src/guid.h
>> > >> -index 9542ee1..0817991 100644
>> > >> ---- a/src/guid.h
>> > >> -+++ b/src/guid.h
>> > >> -@@ -31,7 +31,8 @@ static inline int
>> > >> - real_isspace(char c)
>> > >> - {
>> > >> -     char spaces[] = " \f\n\r\t\v";
>> > >> --    for (int i = 0; spaces[i] != '\0'; i++)
>> > >> -+    int i;
>> > >> -+    for (i = 0; spaces[i] != '\0'; i++)
>> > >> -             if (c == spaces[i])
>> > >> -                     return 1;
>> > >> -     return 0;
>> > >> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
>> > >> - static inline int
>> > >> - check_segment_sanity(const char *text, size_t len)
>> > >> - {
>> > >> --    for(unsigned int i = 0; i < len; i++) {
>> > >> -+    unsigned int i;
>> > >> -+    for(i = 0; i < len; i++) {
>> > >> -             if (text[i] >= '0' && text[i] <= '9')
>> > >> -                     continue;
>> > >> -             /* "| 0x20" is tolower() without having to worry about
>> > >> -diff --git a/src/makeguids.c b/src/makeguids.c
>> > >> -index e9acf15..7e16cb2 100644
>> > >> ---- a/src/makeguids.c
>> > >> -+++ b/src/makeguids.c
>> > >> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
>> > >> -
>> > >> -     fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
>> > >> -
>> > >> --    for (unsigned int i = 0; i < line-1; i++) {
>> > >> -+    unsigned int i, j;
>> > >> -+    for (i = 0; i < line-1; i++) {
>> > >> -             if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
>> > >> -                     fprintf(symout, "\t.globl %s\n"
>> > >> -                                     "\t.data\n"
>> > >> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
>> > >> -                     fprintf(symout, "efi_guid_empty:\n");
>> > >> -
>> > >> -             uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
>> > >> --            for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
>> > >> -+            for (j = 0; j < sizeof (efi_guid_t); j++)
>> > >> -                     fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
>> > >> -
>> > >> -             fprintf(symout, "%s_end:\n", outbuf[i].symbol);
>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>> > >> deleted file mode 100644
>> > >> index f7a4d55..0000000
>> > >> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>> > >> +++ /dev/null
>> > >> @@ -1,39 +0,0 @@
>> > >> -SUMMARY = "Tools to manipulate UEFI variables"
>> > >> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>> > >> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
>> > >> -
>> > >> -LICENSE = "LGPLv2.1"
>> > >> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>> > >> -
>> > >> -DEPENDS_class-target = "popt efivar-native"
>> > >> -
>> > >> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
>> > >> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
>> > >> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>> > >> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
>> > >> -
>> > >> -S = "${WORKDIR}/git"
>> > >> -
>> > >> -do_install() {
>> > >> -    oe_runmake install DESTDIR=${D}
>> > >> -}
>> > >> -
>> > >> -do_compile_class-native() {
>> > >> -    oe_runmake -C src makeguids
>> > >> -}
>> > >> -
>> > >> -do_install_class-native() {
>> > >> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>> > >> -}
>> > >> -
>> > >> -BBCLASSEXTEND = "native"
>> > >> -
>> > >> -# See
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
>> > >> -# but it's still broken:
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
>> > >> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>> > >> new file mode 100644
>> > >> index 0000000..faffb79
>> > >> --- /dev/null
>> > >> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>> > >> @@ -0,0 +1,36 @@
>> > >> +SUMMARY = "Tools to manipulate UEFI variables"
>> > >> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>> > >> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
>> > >> +
>> > >> +LICENSE = "LGPLv2.1"
>> > >> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>> > >> +
>> > >> +DEPENDS_class-target = "popt efivar-native"
>> > >> +
>> > >> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
>> > >> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
>> > >> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>> > >> +
>> > >> +S = "${WORKDIR}/git"
>> > >> +
>> > >> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
>> > >> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
>> > >> +
>> > >> +do_compile_prepend() {
>> > >> +    sed -i -e s:-Werror::g ${S}/gcc.specs
>> > >> +}
>> > >> +
>> > >> +do_compile_class-native() {
>> > >> +    oe_runmake -C src makeguids
>> > >> +}
>> > >> +
>> > >> +do_install() {
>> > >> +    oe_runmake install DESTDIR=${D}
>> > >> +}
>> > >> +
>> > >> +do_install_class-native() {
>> > >> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>> > >> +}
>> > >> +
>> > >> +BBCLASSEXTEND = "native"
>> > >> +
>> > >> --
>> > >> 2.4.3
>> > >>
>> > >> --
>> > >> _______________________________________________
>> > >> Openembedded-devel mailing list
>> > >> Openembedded-devel@lists.openembedded.org
>> > >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> > >
>> > > --
>> > > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>> >
>> >
>> >
>> > --
>> > Koen Kooi
>> >
>> > Builds and Baselines | Release Manager
>> > Linaro.org | Open source software for ARM SoCs
>>
>> --
>> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>
>
>
> --
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com



-- 
Koen Kooi

Builds and Baselines | Release Manager
Linaro.org | Open source software for ARM SoCs


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
  2016-03-22 11:38         ` Koen Kooi
@ 2016-03-23  7:45           ` Koen Kooi
  0 siblings, 0 replies; 8+ messages in thread
From: Koen Kooi @ 2016-03-23  7:45 UTC (permalink / raw)
  To: Martin Jansa; +Cc: OpenEmbedded Devel List

On 22 March 2016 at 12:38, Koen Kooi <koen.kooi@linaro.org> wrote:
> On 5 March 2016 at 13:33, Martin Jansa <martin.jansa@gmail.com> wrote:
>> On Fri, Mar 04, 2016 at 04:09:14PM +0100, Martin Jansa wrote:
>>> On Fri, Mar 04, 2016 at 03:16:22PM +0100, Koen Kooi wrote:
>>> > On 4 March 2016 at 14:34, Martin Jansa <martin.jansa@gmail.com> wrote:
>>> > > On Fri, Mar 04, 2016 at 08:14:54AM +0100, Koen Kooi wrote:
>>> > >> Upstream removed the use of the nvme headers completely, so no more conflicts. Also drop gcc options patch, ubuntu 12.04 is too old to support in meta-oe/master.
>>> > >
>>> > > This fails to build static version, when no-static-libs.inc is used
>>> > > (e.g. default in Poky).
>>> > >
>>> > > Can you either disable static in popt or change efivar to respect
>>> > > --disable-static (if possible)?
>>> >
>>> > I've patched out the static build in v3, that should fix this.
>>>
>>> Thanks for quick updated, applied in master-next with small indentation
>>> fix.
>>
>> Well, almost there
>
> I'm looking at it this week, hopefully I'll get something done before
> heading to ELC.

I can't reproduce that error locally:

Build Configuration:
BB_VERSION        = "1.29.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Fedora-22"
TARGET_SYS        = "i586-oe-linux"
MACHINE           = "qemux86"
DISTRO            = "nodistro"
DISTRO_VERSION    = "nodistro.0"
TUNE_FEATURES     = "m32 i586"
TARGET_FPU        = ""
meta-oe
meta-filesystems
meta-initramfs
meta-webserver
meta-python
meta-networking
meta-gnome        = "HEAD:47498d15e9d68e1cc50947633aba9e2b3d29da85"
meta-aarch64
meta-ilp32
meta-bigendian
meta-linaro
meta-linaro-toolchain
meta-linaro-integration = "master:e71e6db6585f34dbab2ac4645801528614d7e274"
meta-virtualization = "HEAD:f3e598729639546303e4bf041989417efe23613d"
meta-browser      = "HEAD:a3789a4168fcd42f1cdf5b5febe2c779a9467919"
meta              = "HEAD:9c200760cbbe322ed884729eb395f389c863e1c8"

NOTE: Preparing RunQueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 1932 tasks of which 850 didn't need to
be rerun and all succeeded.

[koen@thinkpad build]$ find build/tmp-glibc/deploy/ -name "efi*ipk"
build/tmp-glibc/deploy/ipk/aarch64/efivar-dev_0.23-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efibootmgr-dbg_0.12-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efivar-doc_0.23-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efivar_0.23-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efibootmgr_0.12-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efibootmgr-dev_0.12-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/aarch64/efivar-dbg_0.23-r0_aarch64.ipk
build/tmp-glibc/deploy/ipk/i586/efivar_0.23-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efivar-doc_0.23-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efivar-dev_0.23-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efibootmgr-dev_0.12-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efivar-dbg_0.23-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efibootmgr_0.12-r0_i586.ipk
build/tmp-glibc/deploy/ipk/i586/efibootmgr-dbg_0.12-r0_i586.ipk
[koen@thinkpad build]$


>
>>
>> one build failed with:
>> | i586-oe-linux-gcc  -m32 -march=i586
>> --sysroot=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86
>> -O2 -pipe -g -feliminate-unused-debug-types
>> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
>> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git=/usr/src/efivar
>> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux=
>> -fdebug-prefix-map=/home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/qemux86=
>> -I/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/src/include/efivar/
>> -specs=/home/jenkins/oe/world/shr-core/tmp-glibc/work/i586-oe-linux/efivar/0.23-r0/git/gcc.specs
>> -L.  -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed     -shared \
>> |         -Wl,-soname,libefivar.so.0 \
>> |         -o libefivar.so dp.o dp-acpi.o dp-hw.o dp-media.o dp-message.o
>> efivarfs.o export.o guid.o guids.o guid-symbols.o lib.o vars.o -ldl
>> |
>> /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
>> --default-symver: unknown option
>> |
>> /home/jenkins/oe/world/shr-core/tmp-glibc/sysroots/x86_64-linux/usr/libexec/i586-oe-linux/gcc/i586-oe-linux/5.3.0/ld:
>> use the --help option for usage information
>> | collect2: error: ld returned 1 exit status
>> | make[1]: *** [libefivar.so] Error 1
>> | make[1]: *** Waiting for unfinished jobs....
>>
>> 2nd one failed with:
>>
>> | install -d -m 755 efivar/0.23-r0/image/usr/lib/pkgconfig/
>> | install -m 644 efivar.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
>> ;  install -m 644 efiboot.pc efivar/0.23-r0/image/usr/lib/pkgconfig/
>> ;
>> | install: cannot stat 'efivar.pc': No such file or directory
>> | install: cannot stat 'efiboot.pc': No such file or directory
>> | make[1]: *** [install] Error 1
>> | make[1]: Leaving directory `efivar/0.23-r0/git/src'
>> | make: *** [install] Error 2
>> | ERROR: oe_runmake failed
>>
>>
>>> > > 5.3.0/ld: cannot find -lpopt
>>> > > | collect2: error: ld returned 1 exit status
>>> > > | make[1]: *** [efivar-static] Error 1
>>> > > | make[1]: *** Waiting for unfinished jobs....
>>> > >
>>> > >
>>> > >>
>>> > >> Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
>>> > >> ---
>>> > >>  .../efivar/0001-efivar-fix-for-cross-compile.patch | 21 +++----
>>> > >>  ...ptions-not-supported-by-lower-version-gcc.patch | 71 ----------------------
>>> > >>  meta-oe/recipes-extended/efivar/efivar_0.21.bb     | 39 ------------
>>> > >>  meta-oe/recipes-extended/efivar/efivar_0.23.bb     | 36 +++++++++++
>>> > >>  4 files changed, 45 insertions(+), 122 deletions(-)
>>> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>>> > >>  delete mode 100644 meta-oe/recipes-extended/efivar/efivar_0.21.bb
>>> > >>  create mode 100644 meta-oe/recipes-extended/efivar/efivar_0.23.bb
>>> > >>
>>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>>> > >> index 4bd7d95..b02edd9 100644
>>> > >> --- a/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>>> > >> +++ b/meta-oe/recipes-extended/efivar/efivar/0001-efivar-fix-for-cross-compile.patch
>>> > >> @@ -12,20 +12,17 @@ Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>> > >>   1 file changed, 2 insertions(+), 2 deletions(-)
>>> > >>
>>> > >>  diff --git a/src/Makefile b/src/Makefile
>>> > >> -index 6eac858..ef4eb1d 100644
>>> > >> +index 5fc7887..1829d22 100644
>>> > >>  --- a/src/Makefile
>>> > >>  +++ b/src/Makefile
>>> > >> -@@ -65,8 +65,8 @@ makeguids.o : makeguids.c
>>> > >> - makeguids : makeguids.o fakeguid.o
>>> > >> -     $(CC) $(cflags) -o $@ $^ -ldl
>>> > >> -
>>> > >> +@@ -29,8 +29,8 @@ all : deps $(TARGETS)
>>> > >> + ./guid-symbols.c : include/efivar/efivar-guids.h
>>> > >> + ./guids.bin : include/efivar/efivar-guids.h
>>> > >> + ./names.bin : include/efivar/efivar-guids.h
>>> > >>  -include/efivar/efivar-guids.h : makeguids guids.txt
>>> > >> --    ./makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>>> > >> +-    ./makeguids guids.txt guids.bin names.bin \
>>> > >>  +include/efivar/efivar-guids.h : guids.txt
>>> > >> -+    makeguids guids.txt guids.bin names.bin guid-symbols.S $@
>>> > >> ++    makeguids guids.txt guids.bin names.bin \
>>> > >> +             guid-symbols.c include/efivar/efivar-guids.h
>>> > >>
>>> > >> - guidlist.o : guids.S include/efivar/efivar-guids.h
>>> > >> -     $(CC) $(cflags) -c -o guidlist.o guids.S
>>> > >> ---
>>> > >> -2.6.0.rc2.10.gf4d9753
>>> > >> -
>>> > >> + makeguids : CPPFLAGS+=-DEFIVAR_BUILD_ENVIRONMENT
>>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch b/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>>> > >> deleted file mode 100644
>>> > >> index 7f04b19..0000000
>>> > >> --- a/meta-oe/recipes-extended/efivar/efivar/efivar-drop-options-not-supported-by-lower-version-gcc.patch
>>> > >> +++ /dev/null
>>> > >> @@ -1,71 +0,0 @@
>>> > >> -gcc options '-Wmaybe-uninitialized' and '-std=gnu11' are not recognized by gcc
>>> > >> -whose version is lower than 4.6, such as on Ubuntu 12.04. Drop them for backward
>>> > >> -compatible.
>>> > >> -
>>> > >> -Upstream-Status: Pending
>>> > >> -
>>> > >> -Signed-off-by: Kai Kang <kai.kang@windriver.com>
>>> > >> ----
>>> > >> -diff --git a/Make.defaults b/Make.defaults
>>> > >> -index cc2baa9..118ae56 100644
>>> > >> ---- a/Make.defaults
>>> > >> -+++ b/Make.defaults
>>> > >> -@@ -10,10 +10,9 @@ CFLAGS    ?= -O2 -g
>>> > >> -
>>> > >> - ARCH = $(shell uname -m)
>>> > >> - clang_cflags =
>>> > >> --gcc_cflags = -Wmaybe-uninitialized
>>> > >> - cflags      := $(CFLAGS) \
>>> > >> -     -Werror -Wall -Wsign-compare -Wstrict-aliasing \
>>> > >> --    -std=gnu11 -fshort-wchar -fPIC \
>>> > >> -+    -fshort-wchar -fPIC \
>>> > >> -     -fvisibility=hidden \
>>> > >> -     -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
>>> > >> -     $(if $(filter $(CC),clang),$(clang_cflags),) \
>>> > >> -diff --git a/src/guid.h b/src/guid.h
>>> > >> -index 9542ee1..0817991 100644
>>> > >> ---- a/src/guid.h
>>> > >> -+++ b/src/guid.h
>>> > >> -@@ -31,7 +31,8 @@ static inline int
>>> > >> - real_isspace(char c)
>>> > >> - {
>>> > >> -     char spaces[] = " \f\n\r\t\v";
>>> > >> --    for (int i = 0; spaces[i] != '\0'; i++)
>>> > >> -+    int i;
>>> > >> -+    for (i = 0; spaces[i] != '\0'; i++)
>>> > >> -             if (c == spaces[i])
>>> > >> -                     return 1;
>>> > >> -     return 0;
>>> > >> -@@ -59,7 +60,8 @@ check_sanity(const char *text, size_t len)
>>> > >> - static inline int
>>> > >> - check_segment_sanity(const char *text, size_t len)
>>> > >> - {
>>> > >> --    for(unsigned int i = 0; i < len; i++) {
>>> > >> -+    unsigned int i;
>>> > >> -+    for(i = 0; i < len; i++) {
>>> > >> -             if (text[i] >= '0' && text[i] <= '9')
>>> > >> -                     continue;
>>> > >> -             /* "| 0x20" is tolower() without having to worry about
>>> > >> -diff --git a/src/makeguids.c b/src/makeguids.c
>>> > >> -index e9acf15..7e16cb2 100644
>>> > >> ---- a/src/makeguids.c
>>> > >> -+++ b/src/makeguids.c
>>> > >> -@@ -150,7 +150,8 @@ main(int argc, char *argv[])
>>> > >> -
>>> > >> -     fprintf(header, "#ifndef EFIVAR_GUIDS_H\n#define EFIVAR_GUIDS_H 1\n\n");
>>> > >> -
>>> > >> --    for (unsigned int i = 0; i < line-1; i++) {
>>> > >> -+    unsigned int i, j;
>>> > >> -+    for (i = 0; i < line-1; i++) {
>>> > >> -             if (!strcmp(outbuf[i].symbol, "efi_guid_zero"))
>>> > >> -                     fprintf(symout, "\t.globl %s\n"
>>> > >> -                                     "\t.data\n"
>>> > >> -@@ -176,7 +177,7 @@ main(int argc, char *argv[])
>>> > >> -                     fprintf(symout, "efi_guid_empty:\n");
>>> > >> -
>>> > >> -             uint8_t *guid_data = (uint8_t *) &outbuf[i].guid;
>>> > >> --            for (unsigned int j = 0; j < sizeof (efi_guid_t); j++)
>>> > >> -+            for (j = 0; j < sizeof (efi_guid_t); j++)
>>> > >> -                     fprintf(symout,"\t.byte 0x%02x\n", guid_data[j]);
>>> > >> -
>>> > >> -             fprintf(symout, "%s_end:\n", outbuf[i].symbol);
>>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.21.bb b/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>>> > >> deleted file mode 100644
>>> > >> index f7a4d55..0000000
>>> > >> --- a/meta-oe/recipes-extended/efivar/efivar_0.21.bb
>>> > >> +++ /dev/null
>>> > >> @@ -1,39 +0,0 @@
>>> > >> -SUMMARY = "Tools to manipulate UEFI variables"
>>> > >> -DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>>> > >> -HOMEPAGE = "https://github.com/rhinstaller/efivar"
>>> > >> -
>>> > >> -LICENSE = "LGPLv2.1"
>>> > >> -LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>>> > >> -
>>> > >> -DEPENDS_class-target = "popt efivar-native"
>>> > >> -
>>> > >> -SRCREV = "aab6c2a64d90b6e5a63661fb5bd6be8d878b0784"
>>> > >> -SRC_URI = "git://github.com/rhinstaller/efivar.git"
>>> > >> -SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>>> > >> -SRC_URI_append_class-native = " file://efivar-drop-options-not-supported-by-lower-version-gcc.patch"
>>> > >> -
>>> > >> -S = "${WORKDIR}/git"
>>> > >> -
>>> > >> -do_install() {
>>> > >> -    oe_runmake install DESTDIR=${D}
>>> > >> -}
>>> > >> -
>>> > >> -do_compile_class-native() {
>>> > >> -    oe_runmake -C src makeguids
>>> > >> -}
>>> > >> -
>>> > >> -do_install_class-native() {
>>> > >> -    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>>> > >> -}
>>> > >> -
>>> > >> -BBCLASSEXTEND = "native"
>>> > >> -
>>> > >> -# See
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116564.html
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-core/2016-February/116571.html
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105802.html
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105786.html
>>> > >> -# but it's still broken:
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105825.html
>>> > >> -# http://lists.openembedded.org/pipermail/openembedded-devel/2016-February/105830.html
>>> > >> -PNBLACKLIST[efivar] ?= "BROKEN: linux.c:27:30: fatal error: linux/nvme_ioctl.h: No such file or directory"
>>> > >> diff --git a/meta-oe/recipes-extended/efivar/efivar_0.23.bb b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>>> > >> new file mode 100644
>>> > >> index 0000000..faffb79
>>> > >> --- /dev/null
>>> > >> +++ b/meta-oe/recipes-extended/efivar/efivar_0.23.bb
>>> > >> @@ -0,0 +1,36 @@
>>> > >> +SUMMARY = "Tools to manipulate UEFI variables"
>>> > >> +DESCRIPTION = "efivar provides a simple command line interface to the UEFI variable facility"
>>> > >> +HOMEPAGE = "https://github.com/rhinstaller/efivar"
>>> > >> +
>>> > >> +LICENSE = "LGPLv2.1"
>>> > >> +LIC_FILES_CHKSUM = "file://COPYING;md5=6626bb1e20189cfa95f2c508ba286393"
>>> > >> +
>>> > >> +DEPENDS_class-target = "popt efivar-native"
>>> > >> +
>>> > >> +SRCREV = "01abee43d6d6e755f56a4135ab5aa0bfad609ce2"
>>> > >> +SRC_URI = "git://github.com/rhinstaller/efivar.git"
>>> > >> +SRC_URI_append_class-target = " file://0001-efivar-fix-for-cross-compile.patch"
>>> > >> +
>>> > >> +S = "${WORKDIR}/git"
>>> > >> +
>>> > >> +# Setting CROSS_COMPILE breaks pkgconfig, so just set AR
>>> > >> +EXTRA_OEMAKE = "AR=${TARGET_PREFIX}gcc-ar"
>>> > >> +
>>> > >> +do_compile_prepend() {
>>> > >> +    sed -i -e s:-Werror::g ${S}/gcc.specs
>>> > >> +}
>>> > >> +
>>> > >> +do_compile_class-native() {
>>> > >> +    oe_runmake -C src makeguids
>>> > >> +}
>>> > >> +
>>> > >> +do_install() {
>>> > >> +    oe_runmake install DESTDIR=${D}
>>> > >> +}
>>> > >> +
>>> > >> +do_install_class-native() {
>>> > >> +    install -D -m 0755 ${B}/src/makeguids ${D}${bindir}/makeguids
>>> > >> +}
>>> > >> +
>>> > >> +BBCLASSEXTEND = "native"
>>> > >> +
>>> > >> --
>>> > >> 2.4.3
>>> > >>
>>> > >> --
>>> > >> _______________________________________________
>>> > >> Openembedded-devel mailing list
>>> > >> Openembedded-devel@lists.openembedded.org
>>> > >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>> > >
>>> > > --
>>> > > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>>> >
>>> >
>>> >
>>> > --
>>> > Koen Kooi
>>> >
>>> > Builds and Baselines | Release Manager
>>> > Linaro.org | Open source software for ARM SoCs
>>>
>>> --
>>> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>>
>>
>>
>> --
>> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
>
>
>
> --
> Koen Kooi
>
> Builds and Baselines | Release Manager
> Linaro.org | Open source software for ARM SoCs



-- 
Koen Kooi

Builds and Baselines | Release Manager
Linaro.org | Open source software for ARM SoCs


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-03-23  7:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-04  7:14 [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Koen Kooi
2016-03-04  7:14 ` [meta-oe][PATCH v2 2/2] efibootmgr: update and unblacklist Koen Kooi
2016-03-04 13:34 ` [meta-oe][PATCH v2 1/2] efivar: update to 0.23 Martin Jansa
2016-03-04 14:16   ` Koen Kooi
2016-03-04 15:09     ` Martin Jansa
2016-03-05 12:33       ` Martin Jansa
2016-03-22 11:38         ` Koen Kooi
2016-03-23  7:45           ` Koen Kooi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.