From: Martin Jansa <martin.jansa@gmail.com>
To: Koen Kooi <koen.kooi@linaro.org>
Cc: OpenEmbedded Devel List <openembedded-devel@lists.openembedded.org>
Subject: Re: [meta-oe][PATCH v2 1/2] efivar: update to 0.23
Date: Sat, 5 Mar 2016 13:33:04 +0100 [thread overview]
Message-ID: <20160305123304.GA2560@jama> (raw)
In-Reply-To: <20160304150914.GF2557@jama>
[-- 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 --]
next prev parent reply other threads:[~2016-03-05 12:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
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 [this message]
2016-03-22 11:38 ` Koen Kooi
2016-03-23 7:45 ` Koen Kooi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160305123304.GA2560@jama \
--to=martin.jansa@gmail.com \
--cc=koen.kooi@linaro.org \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox