Re: [oe] [meta-oe][PATCH] hiredis: Add recipe
On Mon, Jun 12, 2017 at 8:36 PM, Marian Pritsakwrote: > Hiredis is a C client library for Redis database. > Hiredis does not use autotools, but plane Makefile instead, > so few changes had to be made, including removing hard coded > compiler, setting INSTALL to 'cp -r' to to avoid host user > comtamination QA issue, and setting PREFIX to ${prefix} instead of > default /usr/local. > > Signed-off-by: Marian Pritsak > --- > .../0001-Makefile-remove-hardcoding-of-CC.patch| 32 > ++ > meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb | 21 ++ > 2 files changed, 53 insertions(+) > create mode 100644 meta-oe/recipes-extended/hiredis/files/0001-Makefile- > remove-hardcoding-of-CC.patch > create mode 100644 meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb > > diff --git > a/meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch > b/meta-oe/recipes-extended/hiredis/files/0001-Makefile- > remove-hardcoding-of-CC.patch > new file mode 100644 > index 000..fef2bc7 > --- /dev/null > +++ b/meta-oe/recipes-extended/hiredis/files/0001-Makefile- > remove-hardcoding-of-CC.patch > @@ -0,0 +1,32 @@ > +From d13b918a3ff8b0ebfd1e7b18b198b4b45841d720 Mon Sep 17 00:00:00 2001 > +From: Andrea Galbusera > +Date: Fri, 31 Jul 2015 16:42:08 +0200 > +Subject: [PATCH] Makefile: remove hardcoding of CC > + > +* upgrade previous patch to avoid wiping CFLAGS. This fixes build on arm > +platforms which previously caused and issue due to -fPIC being lost > + > +Signed-off-by: Andrea Galbusera > +--- > + Makefile | 5 - > + 1 file changed, 5 deletions(-) > + > +diff --git a/Makefile b/Makefile > +index 8b0f0c2..66a4317 100644 > +--- a/Makefile > b/Makefile > +@@ -34,11 +34,6 @@ define REDIS_TEST_CONFIG > + endef > + export REDIS_TEST_CONFIG > + > +-# Fallback to gcc when $CC is not in $PATH. > +-CC:=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || > echo gcc') > +-OPTIMIZATION?=-O3 > +-WARNINGS=-Wall -W -Wstrict-prototypes -Wwrite-strings > +-DEBUG?= -g -ggdb > + REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG) $(ARCH) > + REAL_LDFLAGS=$(LDFLAGS) $(ARCH) > + > +-- > +1.9.1 > + > diff --git a/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb > b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb > new file mode 100644 > index 000..96b86f9 > --- /dev/null > +++ b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb > @@ -0,0 +1,21 @@ > +DESCRIPTION = "Minimalistic C client library for Redis" > +HOMEPAGE = "http://github.com/redis/hiredis; > +LICENSE = "BSD-3-Clause" > +SECTION = "libs" > +DEPENDS = "redis" > + > +LIC_FILES_CHKSUM = "file://COPYING;md5=d84d659a35c666d23233e54503aaea51" > +SRC_URI = "git://github.com/redis/hiredis;protocol=git;rev= > f58dd249d6ed47a7e835463c3b04722972281dbb \ > + file://0001-Makefile-remove-hardcoding-of-CC.patch" > + > +S = "${WORKDIR}/git" > + > +inherit autotools-brokensep pkgconfig > + > +# By default INSTALL variable in Makefile is equal to 'cp -a', which > preserves > +# ownership and causes host-user-contamination QA issue. > +# And PREFIX defaults to /usr/local. > +do_install_prepend() { > + export PREFIX=${prefix} > + export INSTALL='cp -r' > +} > -- > 2.7.4 > > -- > ___ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > A recipe for hiredis is already available from at least two other meta layers as per [1], one of which does provide the same version as yours. Don't know what the policy is here, but to me it seems worth a try talking to those layers' maintainers and see if they agree to move the recipe to meta-oe (at least meta-intel-iot-middleware is already listing meta-oe as a dependency): it would help reducing the maintenance effort in the future. [1] https://layers.openembedded.org/layerindex/branch/master/recipes/?q=hiredis -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-qt5] qtwebkit 5.8 build issues?
On Mon, Jun 12, 2017 at 03:04:24PM -0400, Denys Dmytriyenko wrote: > On Wed, Apr 12, 2017 at 05:53:21PM -0700, Andre McCurdy wrote: > > On Wed, Apr 12, 2017 at 5:11 PM, Andreas Oberritter > >wrote: > > > On Wed, 12 Apr 2017 16:38:58 -0700 > > > Andre McCurdy wrote: > > > > > >> On Wed, Apr 12, 2017 at 3:45 PM, Andreas Oberritter > > >> wrote: > > >> > On Wed, 29 Mar 2017 19:06:14 -0400 > > >> > Denys Dmytriyenko wrote: > > >> > > > >> >> On Sun, Mar 26, 2017 at 04:30:53PM -0400, Denys Dmytriyenko wrote: > > >> >> > Hi, > > >> >> > > > >> >> > I've been having the following build issues lately with qtwebkit > > >> >> > 5.8 from > > >> >> > master: > > >> >> > > > >> >> > | make[2]: Entering directory > > >> >> > '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' > > >> >> > | rm -f libQt5WebKit.so.5.8.0 libQt5WebKit.so libQt5WebKit.so.5 > > >> >> > libQt5WebKit.so.5.8 > > >> >> > | linking ../lib/libQt5WebKit.so.5.8.0 > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `__bss_start' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `__bss_start' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `_edata' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `_edata' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `_end' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > > >> >> > multiple definition of `_end' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > > >> >> > multiple definition of `__bss_start' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > > >> >> > multiple definition of `_edata' > > >> >> > | > > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > > >> >> > multiple definition of `_end' > > >> >> > | collect2: error: ld returned 1 exit status > > >> >> > | Makefile.api:92: recipe for target '../lib/libQt5WebKit.so.5.8.0' > > >> >> > failed > > >> >> > | make[2]: *** [../lib/libQt5WebKit.so.5.8.0] Error 1 > > >> >> > | make[2]: Leaving directory > > >> >> > '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' > > >> >> > | Makefile.QtWebKit:44: recipe for target > > >> >> > 'sub-api-pri-make_first-ordered' failed > > >> >> > | make[1]: *** [sub-api-pri-make_first-ordered] Error 2 > > >> >> > > > >> >> > I believe I was able to build 5.8/master before, so I'm suspecting > > >> >> > recent > > >> >> > binutils upgrade... But I can be wrong. Would really appreciate > > >> >> > some help > > >> >> > here. Thanks. > > >> >> > > >> >> Anyone else see this? > > >> >> > > >> > > > >> > I do. Have you been able to solve it in the meantime? > > >> > > >> Do you both have gold enabled? > > >> > > >> > > >> https://bugs.launchpad.net/ubuntu/+source/qtwebkit-opensource-src/+bug/1653529 > > > > > > I don't use the ld-is-gold flag, but gold gets built nevertheless. It's > > > just not > > > the default linker. I guess qtwebkit forces its use. So the question > > > becomes whether > > > I should set ld-is-gold or teach qtwebkit not to use gold, in order not > > > to mix both > > > linkers. > > > > Assuming qtwebkit has a configure option to explicitly enable/disable > > gold, I'd say add a PACKAGECONFIG option. > > > > In the short term keep the PACKAGECONFIG option disabled and in the > > longer term (once qtwebkit builds successfully with gold enabled) set > > the PACKAGECONFIG option based on the testing the distro feature. > > Has there been any progress on this? Is anybody looking at adding this > PACKAGECONFIG flag? Ok, patch is submitted. I don't believe there's a need for PACKAGECONFIG.
[oe] [meta-qt5][PATCH] qtbase: respect "ld-is-gold" DISTRO_FEATURES
From: Denys DmytriyenkoIf not set explicitly, some modules like QtWebKit and QtQuick1 can fail: | make[2]: Entering directory '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' | rm -f libQt5WebKit.so.5.8.0 libQt5WebKit.so libQt5WebKit.so.5 libQt5WebKit.so.5.8 | linking ../lib/libQt5WebKit.so.5.8.0 | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `__bss_start' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `__bss_start' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `_edata' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `_edata' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `_end' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): multiple definition of `_end' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): multiple definition of `__bss_start' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): multiple definition of `_edata' | /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): multiple definition of `_end' | collect2: error: ld returned 1 exit status | Makefile.api:92: recipe for target '../lib/libQt5WebKit.so.5.8.0' failed | make[2]: *** [../lib/libQt5WebKit.so.5.8.0] Error 1 | make[2]: Leaving directory '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' | Makefile.QtWebKit:44: recipe for target 'sub-api-pri-make_first-ordered' failed | make[1]: *** [sub-api-pri-make_first-ordered] Error 2 Signed-off-by: Denys Dmytriyenko --- recipes-qt/qt5/qtbase_git.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb index 27d0de1..5cfbcfa 100644 --- a/recipes-qt/qt5/qtbase_git.bb +++ b/recipes-qt/qt5/qtbase_git.bb @@ -126,6 +126,7 @@ PACKAGECONFIG[libinput] = "-libinput,-no-libinput,libinput" PACKAGECONFIG[journald] = "-journald,-no-journald,systemd" QT_CONFIG_FLAGS += " \ +${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-use-gold-linker', '-no-use-gold-linker', d)} \ -shared \ -silent \ -no-pch \ -- 2.7.4 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-qt5] qtwebkit 5.8 build issues?
On Wed, Apr 12, 2017 at 05:53:21PM -0700, Andre McCurdy wrote: > On Wed, Apr 12, 2017 at 5:11 PM, Andreas Oberritter >wrote: > > On Wed, 12 Apr 2017 16:38:58 -0700 > > Andre McCurdy wrote: > > > >> On Wed, Apr 12, 2017 at 3:45 PM, Andreas Oberritter > >> wrote: > >> > On Wed, 29 Mar 2017 19:06:14 -0400 > >> > Denys Dmytriyenko wrote: > >> > > >> >> On Sun, Mar 26, 2017 at 04:30:53PM -0400, Denys Dmytriyenko wrote: > >> >> > Hi, > >> >> > > >> >> > I've been having the following build issues lately with qtwebkit 5.8 > >> >> > from > >> >> > master: > >> >> > > >> >> > | make[2]: Entering directory > >> >> > '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' > >> >> > | rm -f libQt5WebKit.so.5.8.0 libQt5WebKit.so libQt5WebKit.so.5 > >> >> > libQt5WebKit.so.5.8 > >> >> > | linking ../lib/libQt5WebKit.so.5.8.0 > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `__bss_start' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `__bss_start' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `_edata' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `_edata' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `_end' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Core.so:(*IND*+0x0): > >> >> > multiple definition of `_end' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > >> >> > multiple definition of `__bss_start' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > >> >> > multiple definition of `_edata' > >> >> > | > >> >> > /OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/recipe-sysroot/usr/lib/libQt5Gui.so:(*IND*+0x0): > >> >> > multiple definition of `_end' > >> >> > | collect2: error: ld returned 1 exit status > >> >> > | Makefile.api:92: recipe for target '../lib/libQt5WebKit.so.5.8.0' > >> >> > failed > >> >> > | make[2]: *** [../lib/libQt5WebKit.so.5.8.0] Error 1 > >> >> > | make[2]: Leaving directory > >> >> > '/OE/master/build/tmp/work/armv7ahf-neon-oe-linux-gnueabi/qtwebkit/5.8.0+gitAUTOINC+74ac5b0f34-r0/build/Source' > >> >> > | Makefile.QtWebKit:44: recipe for target > >> >> > 'sub-api-pri-make_first-ordered' failed > >> >> > | make[1]: *** [sub-api-pri-make_first-ordered] Error 2 > >> >> > > >> >> > I believe I was able to build 5.8/master before, so I'm suspecting > >> >> > recent > >> >> > binutils upgrade... But I can be wrong. Would really appreciate some > >> >> > help > >> >> > here. Thanks. > >> >> > >> >> Anyone else see this? > >> >> > >> > > >> > I do. Have you been able to solve it in the meantime? > >> > >> Do you both have gold enabled? > >> > >> > >> https://bugs.launchpad.net/ubuntu/+source/qtwebkit-opensource-src/+bug/1653529 > > > > I don't use the ld-is-gold flag, but gold gets built nevertheless. It's > > just not > > the default linker. I guess qtwebkit forces its use. So the question > > becomes whether > > I should set ld-is-gold or teach qtwebkit not to use gold, in order not to > > mix both > > linkers. > > Assuming qtwebkit has a configure option to explicitly enable/disable > gold, I'd say add a PACKAGECONFIG option. > > In the short term keep the PACKAGECONFIG option disabled and in the > longer term (once qtwebkit builds successfully with gold enabled) set > the PACKAGECONFIG option based on the testing the distro feature. Has there been any progress on this? Is anybody looking at adding this PACKAGECONFIG flag? -- Denys -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
[oe] [meta-multimedia][PATCH] libdc1394: Add X11 and opengl deps if distro has them in policy
Signed-off-by: Khem Raj--- meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb b/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb index 8318385b6..8a9e9a1d7 100755 --- a/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb +++ b/meta-multimedia/recipes-multimedia/libdc1394/libdc1394_git.bb @@ -5,7 +5,10 @@ LICENSE = "LGPL-2.0" LIC_FILES_CHKSUM = "file://COPYING;md5=c848e78d9a4a5cc69906178e4d6fbd64" # libsdl to provide sdl.m4 with AM_PATH_SDL -DEPENDS += "libusb1 libraw1394 libsdl" +DEPENDS += "libusb1 libraw1394 libsdl \ +${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxv virtual/libx11', '', d)} \ +${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)} \ +" PV = "2.2.5+gitr${SRCPV}" -- 2.13.1 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-oe] [PATCH] dos2unix: add recipe
FWIW, Mentor layer has a tofrodos recipe that does the same... Maybe Chris can submit that one here? :) -- Denys On Mon, Jun 12, 2017 at 08:53:55PM +0200, Martin Jansa wrote: > Please pass LDFLAGS to resolve following QA warning: > > ERROR: QA Issue: No GNU_HASH in the elf binary: > dos2unix/7.3.4-r0/packages-split/dos2unix/usr/bin/dos2unix' > No GNU_HASH in the elf binary: > 'dos2unix/7.3.4-r0/packages-split/dos2unix/usr/bin/unix2dos' [ldflags] > > On Sun, Jun 11, 2017 at 2:54 PM,wrote: > > > From: Ming Liu > > > > The Dos2unix package includes utilities dos2unix and unix2dos to > > convert plain text files in DOS or Mac format to Unix format and > > vice versa. > > > > Signed-off-by: Ming Liu > > --- > > meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb | 34 > > ++ > > 1 file changed, 34 insertions(+) > > create mode 100644 meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > > > > diff --git a/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > > b/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > > new file mode 100644 > > index 000..f3d5173 > > --- /dev/null > > +++ b/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > > @@ -0,0 +1,34 @@ > > +SUMMARY = "Convert text file line endings between CRLF and LF" > > +DESCRIPTION = "The Dos2unix package includes utilities dos2unix and \ > > +unix2dos to convert plain text files in DOS or Mac format to Unix \ > > +format and vice versa." > > +HOMEPAGE = "http://waterlan.home.xs4all.nl/dos2unix.html; > > +SECTION = "support" > > + > > +LICENSE = "BSD-2-Clause" > > +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=1b78fca784db24f4a40e30b300787f > > 3f" > > + > > +SRC_URI = "git://git.code.sf.net/p/dos2unix/dos2unix" > > + > > +# Release 7.3.4 > > +SRCREV = "8381ba4e1c4cd5ce98ebd9c24726d51cb203cde0" > > + > > +S = "${WORKDIR}/git/dos2unix" > > + > > +inherit gettext perlnative > > + > > +# The dos2unix NLS relies on po4a-native, while po4a recipe is > > +# provided by meta-perl layer, so make it optional here, you > > +# need have meta-perl in bblayers.conf before enabling nls in > > +# PACKAGECONFIG. > > +PACKAGECONFIG ??= "" > > +PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native" > > + > > +EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS}" > > +EXTRA_OEMAKE_class-native = "ENABLE_NLS=" > > + > > +do_install () { > > +oe_runmake DESTDIR="${D}${base_prefix}" install > > +} > > + > > +BBCLASSEXTEND = "native nativesdk" > > -- > > 2.7.4 > > > > -- > > ___ > > Openembedded-devel mailing list > > Openembedded-devel@lists.openembedded.org > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > > > -- > ___ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-oe] [PATCH] dos2unix: add recipe
Please pass LDFLAGS to resolve following QA warning: ERROR: QA Issue: No GNU_HASH in the elf binary: dos2unix/7.3.4-r0/packages-split/dos2unix/usr/bin/dos2unix' No GNU_HASH in the elf binary: 'dos2unix/7.3.4-r0/packages-split/dos2unix/usr/bin/unix2dos' [ldflags] On Sun, Jun 11, 2017 at 2:54 PM,wrote: > From: Ming Liu > > The Dos2unix package includes utilities dos2unix and unix2dos to > convert plain text files in DOS or Mac format to Unix format and > vice versa. > > Signed-off-by: Ming Liu > --- > meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb | 34 > ++ > 1 file changed, 34 insertions(+) > create mode 100644 meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > > diff --git a/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > b/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > new file mode 100644 > index 000..f3d5173 > --- /dev/null > +++ b/meta-oe/recipes-support/dos2unix/dos2unix_7.3.4.bb > @@ -0,0 +1,34 @@ > +SUMMARY = "Convert text file line endings between CRLF and LF" > +DESCRIPTION = "The Dos2unix package includes utilities dos2unix and \ > +unix2dos to convert plain text files in DOS or Mac format to Unix \ > +format and vice versa." > +HOMEPAGE = "http://waterlan.home.xs4all.nl/dos2unix.html; > +SECTION = "support" > + > +LICENSE = "BSD-2-Clause" > +LIC_FILES_CHKSUM = "file://COPYING.txt;md5=1b78fca784db24f4a40e30b300787f > 3f" > + > +SRC_URI = "git://git.code.sf.net/p/dos2unix/dos2unix" > + > +# Release 7.3.4 > +SRCREV = "8381ba4e1c4cd5ce98ebd9c24726d51cb203cde0" > + > +S = "${WORKDIR}/git/dos2unix" > + > +inherit gettext perlnative > + > +# The dos2unix NLS relies on po4a-native, while po4a recipe is > +# provided by meta-perl layer, so make it optional here, you > +# need have meta-perl in bblayers.conf before enabling nls in > +# PACKAGECONFIG. > +PACKAGECONFIG ??= "" > +PACKAGECONFIG[nls] = "ENABLE_NLS=1,ENABLE_NLS=,po4a-native" > + > +EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS}" > +EXTRA_OEMAKE_class-native = "ENABLE_NLS=" > + > +do_install () { > +oe_runmake DESTDIR="${D}${base_prefix}" install > +} > + > +BBCLASSEXTEND = "native nativesdk" > -- > 2.7.4 > > -- > ___ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-devel > -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH 1/3] meson: update Meson devtool to 0.40.1)
On Mon, Jun 12, 2017 at 11:23 AM, Peter Kjellerstedtwrote: > This looks great, except for one thing. What about external toolchains? > > We use Poky's compiler when building for ARM, but when building for > MIPS we need to use our own, which is based on gcc 4.7.2 and not > likely to be updated. With the suggested changes to security_flags.inc > we will no longer be able to build with hardening enabled for MIPS... > > Regarding your changes: > * Wouldn't it be better to define GCCPIE as: > GCCPIE ??= "" > in meta/recipes-devtools/gcc/gcc-configure-common.inc and as: > GCCPIE ?= "--enable-default-pie" > in meta/conf/distro/include/security_flags.inc? That way it is easy > to disable PIE by setting GCCPIE = "" in local.conf even if other > hardenings are enabled by including security_flags.inc. that seems a fine idea, I will make this change locally. > * It is probably a bad idea to change the definition of > SECURITY_NO_PIE_CFLAGS to: > SECURITY_NO_PIE_CFLAGS ?= "${SECURITY_CFLAGS}" > since it is most likely used to define SECURITY_CFLAGS in other > existing layers via the typical: > SECURITY_CFLAGS_pn-foo = "${SECURITY_NO_PIE_CFLAGS}" > and you will then end up with a circular definition... > > For backwards compatibility it might be an idea to do the following > in security_flags.inc: > > GCCPIE ?= "--enable-default-pie" > > # SECURITY_PIE_CFLAGS is used to maintain backwards compatibility for > # the definitions of SECURITY_CFLAGS and SECURITY_NO_PIE_CFLAGS after > # the introduction of GCCPIE. > SECURITY_PIE_CFLAGS ?= "${@'' if '${GCCPIE}' else '-pie -fpie'}" > SECURITY_CFLAGS ?= "-fstack-protector-strong ${SECURITY_PIE_CFLAGS} > ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" > SECURITY_NO_PIE_CFLAGS ?= "-fstack-protector-strong ${lcl_maybe_fortify} > ${SECURITY_STRINGFORMAT}" > > That way the SECURITY_CFLAGS and SECURITY_NO_PIE_CFLAGS variables > would keep their old values unless GCCPIE is set to something, which > it is by default. seems good yes, I will have run into this error once I plug in meta-oe but was still building oe-core world. > > Enabling hardening but without PIE would then become: > > GCCPIE = "" > SECURITY_PIE_CFLAGS = "" > agreed. > //Peter > >> -Original Message- >> From: Khem Raj [mailto:raj.k...@gmail.com] >> Sent: den 12 juni 2017 16:47 >> To: Patrick Ohly >> Cc: Peter Kjellerstedt ; openembedded- >> de...@lists.openembedded.org >> Subject: Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH >> 1/3] meson: update Meson devtool to 0.40.1) >> >> Patrick >> >> I have a patchset that is redoing the PIE hardening with using some >> help from gcc configuration itself. with this patch almost all of the >> NOPIE entries in secuity.inc are fixed and we get gcc to take care of >> -pie passing to compiler and linker when needed >> >> This patches are done after gcc7 recipes so I will propose them after >> gcc7 but if you are interested here is the branch >> >> Top 6 patches are what you want from >> http://git.openembedded.org/openembedded-core-contrib/log/?h=kraj/master >> >> >> On Mon, Jun 12, 2017 at 12:04 AM, Patrick Ohly >> wrote: >> > On Fri, 2017-06-09 at 19:32 +0200, Patrick Ohly wrote: >> >> On Fri, 2017-06-09 at 16:34 +0200, Patrick Ohly wrote: >> >> > On Fri, 2017-06-09 at 13:24 +, Khem Raj wrote: >> >> > > >> >> > > On Fri, Jun 9, 2017 at 1:43 AM Patrick Ohly >> >> >> > > wrote: >> >> > > >> >> > > On Wed, 2017-06-07 at 21:44 +, Peter Kjellerstedt >> wrote: >> >> > > > My guess is that the problem stems from the fact that >> >> > > security_flags.inc >> >> > > > adds -pie (which is a linker flag) to SECURITY_CFLAGS >> rather >> >> > > than >> >> > > > SECURITY_LDFLAGS... >> >> > > >> >> > > I think I've seen that cause problems elsewhere when the >> >> > > CFLAGS came >> >> > > after -shared, because then the compiler ended up trying >> to >> >> > > produce a >> >> > > pie executable instead of a shared library. >> >> > > >> >> > > Perhaps we should finally address that in >> security_flags.inc >> >> > > instead of >> >> > > working around it? >> >> > > >> >> > > >> >> > > This patch is removing -pie from compiler and linker flags which >> does >> >> > > not result in intended behavior for executable when linked they >> will >> >> > > not be using -pie >> >> > >> >> > The patch had some syntax errors (fixed version below), but it had >> the >> >> > code which adds -pie to TARGET_LDFLAGS when it is in >> SECURITY_CFLAGS, so >> >> > conceptually the flag shouldn't get lost entirely. >> >> > >> >> > Are you saying that one cannot rely on TARGET_LDFLAGS being used >> during >> >> > linking? >> >> > >> >> > I've tested with m4, and it seems to work okay: >> >> > >> >> > $ grep -w
[oe] [meta-oe][PATCH] hiredis: Add recipe
Hiredis is a C client library for Redis database. Hiredis does not use autotools, but plane Makefile instead, so few changes had to be made, including removing hard coded compiler, setting INSTALL to 'cp -r' to to avoid host user comtamination QA issue, and setting PREFIX to ${prefix} instead of default /usr/local. Signed-off-by: Marian Pritsak--- .../0001-Makefile-remove-hardcoding-of-CC.patch| 32 ++ meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb | 21 ++ 2 files changed, 53 insertions(+) create mode 100644 meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch create mode 100644 meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb diff --git a/meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch b/meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch new file mode 100644 index 000..fef2bc7 --- /dev/null +++ b/meta-oe/recipes-extended/hiredis/files/0001-Makefile-remove-hardcoding-of-CC.patch @@ -0,0 +1,32 @@ +From d13b918a3ff8b0ebfd1e7b18b198b4b45841d720 Mon Sep 17 00:00:00 2001 +From: Andrea Galbusera +Date: Fri, 31 Jul 2015 16:42:08 +0200 +Subject: [PATCH] Makefile: remove hardcoding of CC + +* upgrade previous patch to avoid wiping CFLAGS. This fixes build on arm +platforms which previously caused and issue due to -fPIC being lost + +Signed-off-by: Andrea Galbusera +--- + Makefile | 5 - + 1 file changed, 5 deletions(-) + +diff --git a/Makefile b/Makefile +index 8b0f0c2..66a4317 100644 +--- a/Makefile b/Makefile +@@ -34,11 +34,6 @@ define REDIS_TEST_CONFIG + endef + export REDIS_TEST_CONFIG + +-# Fallback to gcc when $CC is not in $PATH. +-CC:=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || echo gcc') +-OPTIMIZATION?=-O3 +-WARNINGS=-Wall -W -Wstrict-prototypes -Wwrite-strings +-DEBUG?= -g -ggdb + REAL_CFLAGS=$(OPTIMIZATION) -fPIC $(CFLAGS) $(WARNINGS) $(DEBUG) $(ARCH) + REAL_LDFLAGS=$(LDFLAGS) $(ARCH) + +-- +1.9.1 + diff --git a/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb new file mode 100644 index 000..96b86f9 --- /dev/null +++ b/meta-oe/recipes-extended/hiredis/hiredis_0.13.1.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "Minimalistic C client library for Redis" +HOMEPAGE = "http://github.com/redis/hiredis; +LICENSE = "BSD-3-Clause" +SECTION = "libs" +DEPENDS = "redis" + +LIC_FILES_CHKSUM = "file://COPYING;md5=d84d659a35c666d23233e54503aaea51" +SRC_URI = "git://github.com/redis/hiredis;protocol=git;rev=f58dd249d6ed47a7e835463c3b04722972281dbb \ + file://0001-Makefile-remove-hardcoding-of-CC.patch" + +S = "${WORKDIR}/git" + +inherit autotools-brokensep pkgconfig + +# By default INSTALL variable in Makefile is equal to 'cp -a', which preserves +# ownership and causes host-user-contamination QA issue. +# And PREFIX defaults to /usr/local. +do_install_prepend() { + export PREFIX=${prefix} + export INSTALL='cp -r' +} -- 2.7.4 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH 1/3] meson: update Meson devtool to 0.40.1)
This looks great, except for one thing. What about external toolchains? We use Poky's compiler when building for ARM, but when building for MIPS we need to use our own, which is based on gcc 4.7.2 and not likely to be updated. With the suggested changes to security_flags.inc we will no longer be able to build with hardening enabled for MIPS... Regarding your changes: * Wouldn't it be better to define GCCPIE as: GCCPIE ??= "" in meta/recipes-devtools/gcc/gcc-configure-common.inc and as: GCCPIE ?= "--enable-default-pie" in meta/conf/distro/include/security_flags.inc? That way it is easy to disable PIE by setting GCCPIE = "" in local.conf even if other hardenings are enabled by including security_flags.inc. * It is probably a bad idea to change the definition of SECURITY_NO_PIE_CFLAGS to: SECURITY_NO_PIE_CFLAGS ?= "${SECURITY_CFLAGS}" since it is most likely used to define SECURITY_CFLAGS in other existing layers via the typical: SECURITY_CFLAGS_pn-foo = "${SECURITY_NO_PIE_CFLAGS}" and you will then end up with a circular definition... For backwards compatibility it might be an idea to do the following in security_flags.inc: GCCPIE ?= "--enable-default-pie" # SECURITY_PIE_CFLAGS is used to maintain backwards compatibility for # the definitions of SECURITY_CFLAGS and SECURITY_NO_PIE_CFLAGS after # the introduction of GCCPIE. SECURITY_PIE_CFLAGS ?= "${@'' if '${GCCPIE}' else '-pie -fpie'}" SECURITY_CFLAGS ?= "-fstack-protector-strong ${SECURITY_PIE_CFLAGS} ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" SECURITY_NO_PIE_CFLAGS ?= "-fstack-protector-strong ${lcl_maybe_fortify} ${SECURITY_STRINGFORMAT}" That way the SECURITY_CFLAGS and SECURITY_NO_PIE_CFLAGS variables would keep their old values unless GCCPIE is set to something, which it is by default. Enabling hardening but without PIE would then become: GCCPIE = "" SECURITY_PIE_CFLAGS = "" //Peter > -Original Message- > From: Khem Raj [mailto:raj.k...@gmail.com] > Sent: den 12 juni 2017 16:47 > To: Patrick Ohly> Cc: Peter Kjellerstedt ; openembedded- > de...@lists.openembedded.org > Subject: Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH > 1/3] meson: update Meson devtool to 0.40.1) > > Patrick > > I have a patchset that is redoing the PIE hardening with using some > help from gcc configuration itself. with this patch almost all of the > NOPIE entries in secuity.inc are fixed and we get gcc to take care of > -pie passing to compiler and linker when needed > > This patches are done after gcc7 recipes so I will propose them after > gcc7 but if you are interested here is the branch > > Top 6 patches are what you want from > http://git.openembedded.org/openembedded-core-contrib/log/?h=kraj/master > > > On Mon, Jun 12, 2017 at 12:04 AM, Patrick Ohly > wrote: > > On Fri, 2017-06-09 at 19:32 +0200, Patrick Ohly wrote: > >> On Fri, 2017-06-09 at 16:34 +0200, Patrick Ohly wrote: > >> > On Fri, 2017-06-09 at 13:24 +, Khem Raj wrote: > >> > > > >> > > On Fri, Jun 9, 2017 at 1:43 AM Patrick Ohly > > >> > > wrote: > >> > > > >> > > On Wed, 2017-06-07 at 21:44 +, Peter Kjellerstedt > wrote: > >> > > > My guess is that the problem stems from the fact that > >> > > security_flags.inc > >> > > > adds -pie (which is a linker flag) to SECURITY_CFLAGS > rather > >> > > than > >> > > > SECURITY_LDFLAGS... > >> > > > >> > > I think I've seen that cause problems elsewhere when the > >> > > CFLAGS came > >> > > after -shared, because then the compiler ended up trying > to > >> > > produce a > >> > > pie executable instead of a shared library. > >> > > > >> > > Perhaps we should finally address that in > security_flags.inc > >> > > instead of > >> > > working around it? > >> > > > >> > > > >> > > This patch is removing -pie from compiler and linker flags which > does > >> > > not result in intended behavior for executable when linked they > will > >> > > not be using -pie > >> > > >> > The patch had some syntax errors (fixed version below), but it had > the > >> > code which adds -pie to TARGET_LDFLAGS when it is in > SECURITY_CFLAGS, so > >> > conceptually the flag shouldn't get lost entirely. > >> > > >> > Are you saying that one cannot rely on TARGET_LDFLAGS being used > during > >> > linking? > >> > > >> > I've tested with m4, and it seems to work okay: > >> > > >> > $ grep -w -e -pie tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18- > r0/temp/log.do_compile > >> > x86_64-refkit-linux-gcc -m64 -march=corei7 -mtune=corei7 - > mfpmath=sse -msse4.2 --sysroot=/fast/build/refkit/intel-corei7-64/tmp- > glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot -O2 - > pipe -g -feliminate-unused-debug-types -fdebug-prefix- >
Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH 1/3] meson: update Meson devtool to 0.40.1)
Patrick I have a patchset that is redoing the PIE hardening with using some help from gcc configuration itself. with this patch almost all of the NOPIE entries in secuity.inc are fixed and we get gcc to take care of -pie passing to compiler and linker when needed This patches are done after gcc7 recipes so I will propose them after gcc7 but if you are interested here is the branch Top 6 patches are what you want from http://git.openembedded.org/openembedded-core-contrib/log/?h=kraj/master On Mon, Jun 12, 2017 at 12:04 AM, Patrick Ohlywrote: > On Fri, 2017-06-09 at 19:32 +0200, Patrick Ohly wrote: >> On Fri, 2017-06-09 at 16:34 +0200, Patrick Ohly wrote: >> > On Fri, 2017-06-09 at 13:24 +, Khem Raj wrote: >> > > >> > > On Fri, Jun 9, 2017 at 1:43 AM Patrick Ohly >> > > wrote: >> > > >> > > On Wed, 2017-06-07 at 21:44 +, Peter Kjellerstedt wrote: >> > > > My guess is that the problem stems from the fact that >> > > security_flags.inc >> > > > adds -pie (which is a linker flag) to SECURITY_CFLAGS rather >> > > than >> > > > SECURITY_LDFLAGS... >> > > >> > > I think I've seen that cause problems elsewhere when the >> > > CFLAGS came >> > > after -shared, because then the compiler ended up trying to >> > > produce a >> > > pie executable instead of a shared library. >> > > >> > > Perhaps we should finally address that in security_flags.inc >> > > instead of >> > > working around it? >> > > >> > > >> > > This patch is removing -pie from compiler and linker flags which does >> > > not result in intended behavior for executable when linked they will >> > > not be using -pie >> > >> > The patch had some syntax errors (fixed version below), but it had the >> > code which adds -pie to TARGET_LDFLAGS when it is in SECURITY_CFLAGS, so >> > conceptually the flag shouldn't get lost entirely. >> > >> > Are you saying that one cannot rely on TARGET_LDFLAGS being used during >> > linking? >> > >> > I've tested with m4, and it seems to work okay: >> > >> > $ grep -w -e -pie >> > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/temp/log.do_compile >> > x86_64-refkit-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse >> > -msse4.2 >> > --sysroot=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot >> >-O2 -pipe -g -feliminate-unused-debug-types >> > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0=/usr/src/debug/m4/1.4.18-r0 >> > >> > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot-native= >> > >> > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot= >> > -fstack-protector-strong -fpie -D_FORTIFY_SOURCE=2 -Wformat >> > -Wformat-security -Werror=format-security -Wl,-O1 -Wl,--hash-style=gnu >> > -Wl,--as-needed -pie -fstack-protector-strong -Wl,-z,relro,-z,now -o m4 >> > m4.o builtin.o debug.o eval.o format.o freeze.o input.o macro.o output.o >> > path.o symtab.o ../lib/libm4.a >> > >> > $ file >> > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/packages-split/m4/usr/bin/m4 >> > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/packages-split/m4/usr/bin/m4: >> > ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically >> > linked, interpreter /lib/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, >> > BuildID[sha1]=f10d0a26299dcb8c5bd0f1c82ed492aea2d8f0ac, stripped >> > >> > I assume "ELF 64-bit LSB shared object" instead of "ELF 64-bit LSB >> > executable" means "pie executable"? >> >> While I don't think my patch caused -pie to get lost, unfortunately I >> now know that it still doesn't go into the right place in all cases. For >> example, ncurses puts LDFLAGS after -shared, thus triggering the "main >> undefined" error. >> >> The TOOLCHAIN_OPTIONS that Khem mentioned get appended directly after >> the command, so that seems like a better place for -pie than LDFLAGS. >> It's still a bit odd to pass a linker flag to all compiler invocations, >> including those that do not link, but it might be a pragmatic solution >> that is better than what we have now. >> >> However, my patch below now causes /usr/lib/libstdc++.a-gdb.py to be >> built for gcc-runtime, which triggers an error: >> >> ERROR: gcc-runtime-6.3.0-r0 do_package: QA Issue: gcc-runtime: >> Files/directories were installed but not shipped in any package: >> /usr/lib/libstdc++.a-gdb.py > > That's just a minor follow-up error. The real problem is that libstdc > ++.so.6.0.22 was not getting built anymore. The expect .py file then is > libstdc++.so.6.0.22-gdb.py. > > I'm still unsure about the root cause. Something seems to have gone > wrong when building the toolchain, because gcc-runtime doesn't even have > -pie in
[oe] [meta-oe][PATCHv2 2/2] debsums: New recipe
A tool for verification of installed package files against MD5 checksums debsums can verify the integrity of installed package files against MD5 checksums installed by the package, or generated from a .deb archive. Signed-off-by: Tom Rini--- Changes in v2: - Run oe-stylize.py over, check results and update. Reword the -cron SUMMARY and DESCRIPTION. --- meta-oe/recipes-support/debsums/debsums_2.2.2.bb | 52 1 file changed, 52 insertions(+) create mode 100644 meta-oe/recipes-support/debsums/debsums_2.2.2.bb diff --git a/meta-oe/recipes-support/debsums/debsums_2.2.2.bb b/meta-oe/recipes-support/debsums/debsums_2.2.2.bb new file mode 100644 index ..41ebf87b2d98 --- /dev/null +++ b/meta-oe/recipes-support/debsums/debsums_2.2.2.bb @@ -0,0 +1,52 @@ +SUMMARY = "Miscellaneous utilities specific to Debian" +SUMMARY_${PN}-cron = "Cron scripts to control automatic debsum checking" +DESCRIPTION = "A tool for verification of installed package files against \ +MD5 checksums debsums can verify the integrity of installed package files \ +against MD5 checksums installed by the package, or generated from a .deb \ +archive." +DESCRIPTION_${PN}-cron = "Cron scripts to control automatic system integrity \ +checking via debsums." +SECTION = "base" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://debian/copyright;md5=770d751553e6559e9eaefd2e11ccf7e9" + +SRC_URI = "http://snapshot.debian.org/archive/debian/20170530T212108Z/pool/main/d/debsums/debsums_2.2.2.tar.xz; +SRC_URI[md5sum] = "82b0710855a7e5212d4358163a269e79" +SRC_URI[sha256sum] = "aa61896f93a6bbfe0161c21dcd67529ae8e1ec8c3ccf244523c52c4ad8253d97" + +# the package is taken from snapshots.debian.org; that source is static and goes stale +# so we check the latest upstream from a directory that does get updated +UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/d/${BPN}/" + +do_install() { +install -d ${D}/${sysconfdir}/cron.daily ${D}/${sysconfdir}/cron.weekly +install -d ${D}/${sysconfdir}/cron.monthly ${D}${sbindir} ${D}${bindir} +install -d ${D}${mandir}/man1 ${D}${mandir}/man8 +install -m 0755 debsums ${D}${bindir}/ +install -m 0755 rdebsums ${D}${bindir}/ +install -m 0755 debsums_init ${D}${sbindir} +install -m 0644 man/debsums.1 ${D}${mandir}/man1/ +install -m 0644 man/rdebsums.1 ${D}${mandir}/man1/ +install -m 0644 man/debsums_init.8 ${D}${mandir}/man8/ +install -m 0644 debian/cron.daily \ +${D}/${sysconfdir}/cron.daily/debsums +install -m 0644 debian/cron.weekly \ +${D}/${sysconfdir}/cron.weekly/debsums +install -m 0644 debian/cron.monthly \ +${D}/${sysconfdir}/cron.monthly/debsums +# Must exist, defaults to empty. +touch ${D}/${sysconfdir}/debsums-ignore +} + +PACKAGES =+ "${PN}-cron" + +RDEPENDS_${PN} = "dpkg dpkg-perl libfile-fnmatch-perl perl \ + perl-module-constant perl-module-digest-md5 \ + perl-module-errno perl-module-fcntl \ + perl-module-file-basename perl-module-file-copy \ + perl-module-file-find perl-module-file-glob \ + perl-module-file-path perl-module-file-spec \ + perl-module-file-temp perl-module-getopt-long \ + perl-module-posix" + +FILES_${PN}-cron = "${sysconfdir}/cron.*" -- 1.9.1 -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel
Re: [oe] [meta-qt5][PATCH v4] Upgrade to Qt 5.9.0
On Fri, Jun 09, 2017 at 09:34:09AM +0300, Samuli Piippo wrote: > * adapt QtWebEngine recipe to use GN instead of GYP > * add QtRemoteObjects and QtWebView as a new Qt modules > * update available QtBase configure arguments > * remove obsolete patches > * patch all .pc files to remove build paths > * include generated QML cache files in packages > * the patch "configure paths for target qmake properly" could not > be applied anymore and support must be done differently > > * QtWebEngine now requires gcc-multilib to be installed on the host > system, because the host tools are built to the same bitness as > the target (arm -> x86, aarch64 -> x86-64) Two more QA issues detected in last build: count: 2issue: host-user-contaminated qt5-creator: /qt5-creator/usr/lib/qt5/qtcreator/plugins/libIos.so is owned by uid 3004, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated] qtlocation-5.9.0+gitAUTOINC+888d351cb0_d45c177e8a: qtlocation: /qtlocation-dev/usr/lib/cmake/Qt5Location/Qt5Location_GeoServiceProviderFactoryEsri.cmake is owned by uid 3004, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated] http://lists.openembedded.org/pipermail/openembedded-core/2017-June/137923.html > > Signed-off-by: Samuli Piippo> --- > classes/qmake5_base.bbclass| 6 +- > recipes-qt/qt5/nativesdk-qtbase_git.bb | 7 +- > .../qt5/qt3d/0001-Allow-a-tools-only-build.patch | 16 +++- > recipes-qt/qt5/qt3d_git.bb | 2 +- > recipes-qt/qt5/qt5-git.inc | 4 +- > recipes-qt/qt5/qt5.inc | 10 +- > recipes-qt/qt5/qtbase-native_git.bb| 9 +- > ...ake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch} | 8 +- > ...le-Fix-pkgconfig-and-libtool-replacements.patch | 106 > - > ...ump-path-length-from-256-to-512-character.patch | 41 > ...configure-paths-for-target-qmake-properly.patch | 75 --- > recipes-qt/qt5/qtbase_git.bb | 13 +-- > recipes-qt/qt5/qtcanvas3d_git.bb | 2 +- > recipes-qt/qt5/qtcharts_git.bb | 2 +- > recipes-qt/qt5/qtconnectivity_git.bb | 6 +- > recipes-qt/qt5/qtdatavis3d_git.bb | 2 +- > .../qtdeclarative/0002-Fix-memory-leak-in-V4.patch | 44 - > ...leak-in-QQuickWindowPrivate-deliverTouchA.patch | 84 > recipes-qt/qt5/qtdeclarative_git.bb| 8 +- > recipes-qt/qt5/qtenginio_git.bb| 5 - > recipes-qt/qt5/qtgamepad_git.bb| 2 +- > recipes-qt/qt5/qtgraphicaleffects_git.bb | 2 +- > recipes-qt/qt5/qtimageformats_git.bb | 2 +- > .../0001-Make-mapbox-gl-build-configurable.patch | 27 ++ > recipes-qt/qt5/qtlocation_git.bb | 13 ++- > recipes-qt/qt5/qtmultimedia_git.bb | 6 +- > recipes-qt/qt5/qtnetworkauth_git.bb| 3 +- > recipes-qt/qt5/qtquick1_git.bb | 2 +- > recipes-qt/qt5/qtquickcontrols2_git.bb | 6 +- > recipes-qt/qt5/qtquickcontrols_git.bb | 7 +- > .../0001-Allow-a-tools-only-build.patch| 37 +++ > recipes-qt/qt5/qtremoteobjects_git.bb | 27 ++ > recipes-qt/qt5/qtscript_git.bb | 2 +- > recipes-qt/qt5/qtscxml_git.bb | 2 +- > recipes-qt/qt5/qtsensors_git.bb| 2 +- > recipes-qt/qt5/qtserialbus_git.bb | 2 +- > recipes-qt/qt5/qtserialport_git.bb | 2 +- > recipes-qt/qt5/qtsvg_git.bb| 2 +- > ...t-help-fix-linking-of-dependent-libraries.patch | 29 -- > recipes-qt/qt5/qttools_git.bb | 8 +- > recipes-qt/qt5/qttranslations_git.bb | 2 +- > recipes-qt/qt5/qtvirtualkeyboard_git.bb| 2 +- > recipes-qt/qt5/qtwayland_git.bb| 6 +- > recipes-qt/qt5/qtwebchannel_git.bb | 2 +- > .../0001-Force-host-toolchain-configuration.patch | 69 ++ > ...se.gypi-include-atomicops_internals_x86_g.patch | 24 - > ...um-workaround-for-too-long-.rps-file-name.patch | 42 > ...rf-Don-t-match-QMAKE_EXT_CPP-or-QMAKE_EXT.patch | 27 -- > ...rf-Make-sure-we-only-use-the-file-name-to.patch | 26 - > ...s.prf-allow-build-for-linux-oe-g-platform.patch | 30 -- > ...quickwebengineview_p_p.h-add-include-QCol.patch | 23 - > ...-dependency-to-QCoreApplication-translate.patch | 23 - > recipes-qt/qt5/qtwebengine_git.bb | 54 +-- > recipes-qt/qt5/qtwebkit-examples_git.bb| 2 +- > .../qtwebkit/0002-Remove-TEXTREL-tag-in-x86.patch | 76 --- >
[oe] State of bitbake world, Failed tasks 2017-06-08
http://www.openembedded.org/wiki/Bitbake_World_Status == Number of issues - stats == {| class='wikitable' !|Date !!colspan='3'|Failed tasks !!|Signatures !!colspan='14'|QA !!Comment |- || ||qemuarm ||qemux86 ||qemux86_64||all ||already-stripped ||libdir||textrel ||build-deps ||file-rdeps||version-going-backwards ||host-user-contaminated ||installed-vs-shipped ||unknown-configure-option ||symlink-to-sysroot ||invalid-pkgconfig ||pkgname ||ldflags ||compile-host-path || |- ||2017-06-08||3 ||5 ||4 ||0 ||0 ||0 ||0 ||0 ||0 ||0 ||2 ||0 ||0 ||0 ||0 ||0 ||0 ||0 || |} == Failed tasks 2017-06-08 == INFO: jenkins-job.sh-1.8.21 Complete log available at http://logs.nslu2-linux.org/buildlogs/oe/world/rocko/log.report.20170611_205435.log === common (2) === * meta-openembedded/meta-oe/recipes-devtools/librcf/librcf_2.2.0.0.bb:do_patch * meta-openembedded/meta-oe/recipes-devtools/meson/meson_0.40.1.bb:do_patch === common-x86 (2) === * meta-openembedded/meta-oe/recipes-support/espeak/espeak_1.48.04.bb:do_compile * meta-qt5/recipes-qt/qt5/qtwebengine_git.bb:do_compile === qemuarm (1) === * openembedded-core/meta/recipes-support/libunwind/libunwind_1.2.bb:do_compile === qemux86 (1) === * meta-openembedded/meta-oe/recipes-test/fwts/fwts_git.bb:do_compile === qemux86_64 (0) === === Number of failed tasks (12) === {| class=wikitable |- || qemuarm || 3 || http://logs.nslu2-linux.org/buildlogs/oe/world/rocko/log.world.qemuarm.20170608_030912.log/ || http://errors.yoctoproject.org/Errors/Build/38783/ |- || qemux86 || 5 || http://logs.nslu2-linux.org/buildlogs/oe/world/rocko/log.world.qemux86.20170608_030911.log/ || http://errors.yoctoproject.org/Errors/Build/38784/ |- || qemux86_64 || 4 || http://logs.nslu2-linux.org/buildlogs/oe/world/rocko/log.world.qemux86-64.20170608_054431.log/ || http://errors.yoctoproject.org/Errors/Build/38792/ |} === PNBLACKLISTs (15) === === QA issues (2) === {| class=wikitable !| Count||Issue |- ||0 ||already-stripped |- ||0 ||build-deps |- ||0 ||compile-host-path |- ||0 ||file-rdeps |- ||0 ||installed-vs-shipped |- ||0 ||invalid-pkgconfig |- ||0 ||ldflags |- ||0 ||libdir |- ||0 ||pkgname |- ||0 ||symlink-to-sysroot |- ||0 ||textrel |- ||0 ||unknown-configure-option |- ||0 ||version-going-backwards |- ||2 ||host-user-contaminated |} === Incorrect PACKAGE_ARCH or sstate signatures (0) === Complete log: http://logs.nslu2-linux.org/buildlogs/oe/world/rocko/log.signatures.20170608_052310.log/ * ERROR: Nothing PROVIDES 'qtwebengine' (but /home/jenkins/oe/world/shr-core/meta-qt5/recipes-qt/qt5/qtwebview_git.bb DEPENDS on or otherwise requires it) * ERROR: qtwebengine was skipped: incompatible with machine qemuarm (not in COMPATIBLE_MACHINE) * ERROR: Required build target 'meta-world-pkgdata' has no buildable providers. PNBLACKLISTs: openembedded-core/: meta-browser: recipes-browser/chromium/cef3_280796.bb:PNBLACKLIST[cef3] ?= "BROKEN: fails to build with gcc-6" meta-openembedded: meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.17.bb:PNBLACKLIST[lksctp-tools] ?= "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', "BROKEN: fails to link against sctp_connectx symbol", '', d)}" meta-oe/recipes-connectivity/bluez/bluez-hcidump_2.5.bb:PNBLACKLIST[bluez-hcidump] ?= "${@bb.utils.contains('DISTRO_FEATURES', 'bluez5', 'bluez5 conflicts with bluez4 and bluez5 is selected in DISTRO_FEATURES', '', d)}" meta-oe/recipes-connectivity/bluez/bluez4_4.101.bb:PNBLACKLIST[bluez4] ?= "${@bb.utils.contains('DISTRO_FEATURES', 'bluez5', 'bluez5 conflicts with bluez4 and bluez5 is selected in DISTRO_FEATURES', '', d)}" meta-oe/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb:PNBLACKLIST[gst-plugin-bluetooth] ?= "${@bb.utils.contains('DISTRO_FEATURES', 'bluez5', 'bluez5 conflicts with bluez4 and bluez5 is selected in DISTRO_FEATURES', '', d)}" meta-oe/recipes-core/dbus/libdbus-c++_0.9.0.bb:PNBLACKLIST[libdbus-c++] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130644/ - the recipe will be removed on 2017-09-01 unless the issue is fixed" meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb:PNBLACKLIST[libsexy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130607/ - the recipe will be removed on 2017-09-01 unless the issue is fixed" meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb:PNBLACKLIST[xf86-video-geode] ?= "BROKEN, fails to build - the recipe will be removed on 2017-09-01 unless the issue is fixed"
Re: [oe] -pie in SECURITY_CFLAGS (was: Re: [meta-oe][PATCH 1/3] meson: update Meson devtool to 0.40.1)
On Fri, 2017-06-09 at 19:32 +0200, Patrick Ohly wrote: > On Fri, 2017-06-09 at 16:34 +0200, Patrick Ohly wrote: > > On Fri, 2017-06-09 at 13:24 +, Khem Raj wrote: > > > > > > On Fri, Jun 9, 2017 at 1:43 AM Patrick Ohly> > > wrote: > > > > > > On Wed, 2017-06-07 at 21:44 +, Peter Kjellerstedt wrote: > > > > My guess is that the problem stems from the fact that > > > security_flags.inc > > > > adds -pie (which is a linker flag) to SECURITY_CFLAGS rather > > > than > > > > SECURITY_LDFLAGS... > > > > > > I think I've seen that cause problems elsewhere when the > > > CFLAGS came > > > after -shared, because then the compiler ended up trying to > > > produce a > > > pie executable instead of a shared library. > > > > > > Perhaps we should finally address that in security_flags.inc > > > instead of > > > working around it? > > > > > > > > > This patch is removing -pie from compiler and linker flags which does > > > not result in intended behavior for executable when linked they will > > > not be using -pie > > > > The patch had some syntax errors (fixed version below), but it had the > > code which adds -pie to TARGET_LDFLAGS when it is in SECURITY_CFLAGS, so > > conceptually the flag shouldn't get lost entirely. > > > > Are you saying that one cannot rely on TARGET_LDFLAGS being used during > > linking? > > > > I've tested with m4, and it seems to work okay: > > > > $ grep -w -e -pie > > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/temp/log.do_compile > > x86_64-refkit-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse > > -msse4.2 > > --sysroot=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot > >-O2 -pipe -g -feliminate-unused-debug-types > > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0=/usr/src/debug/m4/1.4.18-r0 > > > > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot-native= > > > > -fdebug-prefix-map=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/recipe-sysroot= > > -fstack-protector-strong -fpie -D_FORTIFY_SOURCE=2 -Wformat > > -Wformat-security -Werror=format-security -Wl,-O1 -Wl,--hash-style=gnu > > -Wl,--as-needed -pie -fstack-protector-strong -Wl,-z,relro,-z,now -o m4 > > m4.o builtin.o debug.o eval.o format.o freeze.o input.o macro.o output.o > > path.o symtab.o ../lib/libm4.a > > > > $ file > > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/packages-split/m4/usr/bin/m4 > > > > tmp-glibc/work/corei7-64-refkit-linux/m4/1.4.18-r0/packages-split/m4/usr/bin/m4: > > ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically > > linked, interpreter /lib/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, > > BuildID[sha1]=f10d0a26299dcb8c5bd0f1c82ed492aea2d8f0ac, stripped > > > > I assume "ELF 64-bit LSB shared object" instead of "ELF 64-bit LSB > > executable" means "pie executable"? > > While I don't think my patch caused -pie to get lost, unfortunately I > now know that it still doesn't go into the right place in all cases. For > example, ncurses puts LDFLAGS after -shared, thus triggering the "main > undefined" error. > > The TOOLCHAIN_OPTIONS that Khem mentioned get appended directly after > the command, so that seems like a better place for -pie than LDFLAGS. > It's still a bit odd to pass a linker flag to all compiler invocations, > including those that do not link, but it might be a pragmatic solution > that is better than what we have now. > > However, my patch below now causes /usr/lib/libstdc++.a-gdb.py to be > built for gcc-runtime, which triggers an error: > > ERROR: gcc-runtime-6.3.0-r0 do_package: QA Issue: gcc-runtime: > Files/directories were installed but not shipped in any package: > /usr/lib/libstdc++.a-gdb.py That's just a minor follow-up error. The real problem is that libstdc ++.so.6.0.22 was not getting built anymore. The expect .py file then is libstdc++.so.6.0.22-gdb.py. I'm still unsure about the root cause. Something seems to have gone wrong when building the toolchain, because gcc-runtime doesn't even have -pie in the compiler flags. From log.do_configure: checking whether the x86_64-refkit-linux-gcc -m64 -march=corei7 -mtune=corei7 -mfpmath=sse -msse4.2 --sysroot=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/gcc-runtime/6.3.0-r0/recipe-sysroot -Wl,-z,relro,-z,now linker (x86_64-refkit-linux-ld --sysroot=/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/gcc-runtime/6.3.0-r0/recipe-sysroot -Wl,-z,relro,-z,now -m elf_x86_64) supports shared libraries... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... unsupported
Re: [oe] [meta-oe][PATCH] hiredis: Add recipe
Op 11-06-17 om 22:36 schreef Marian Pritsak: > Hiredis is a C client library for Redis database. > Hiredis does not use autotools, but plane Makefile instead, > so few changes had to be made, including removing hard coded > compiler, setting INSTALL to 'cp -r' to to avoid host user > comtamination QA issue, and setting PREFIX to /usr instead of > default /usr/local. > > Signed-off-by: Marian Pritsak[..[ > +# By default INSTALL variable in Makefile is equal to 'cp -a', which > preserves > +# ownership and causes host-user-contamination QA issue. > +# And PREFIX defaults to /usr/local. > +do_install_prepend() { > + export PREFIX=/usr > + export INSTALL='cp -r' > +} Don't hardcode '/usr', but use '${prefix}' -- ___ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel