[OE-core] [OE-Core][RFC 2/2] qemuarm64: Add graphics support

2019-02-27 Thread Jon Mason
Add the necessary parts to qemuarm64.conf for graphics to be shown in
the SDL window, and USB so that it is possible to interact with it.

Signed-off-by: Jon Mason 
---
 meta/conf/machine/qemuarm64.conf | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/meta/conf/machine/qemuarm64.conf b/meta/conf/machine/qemuarm64.conf
index 8d4a482fec..e8362260b9 100644
--- a/meta/conf/machine/qemuarm64.conf
+++ b/meta/conf/machine/qemuarm64.conf
@@ -16,7 +16,9 @@ QB_MACHINE = "-machine virt"
 QB_CPU = "-cpu cortex-a57"
 # We need both ttyAMA0 and tty1 to allow for this to work in the stdio mode or 
the normal mode
 QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 console=tty1"
-QB_OPT_APPEND = "-show-cursor -monitor null"
+# For graphics to work we need to define the VGA device as well as the 
necessary USB devices
+QB_OPT_APPEND = "-show-cursor -device VGA"
+QB_OPT_APPEND += "-device qemu-xhci -device usb-tablet -device usb-kbd"
 # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
 QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device 
virtio-rng-pci,rng=rng0"
 # Virtio Networking support
@@ -27,3 +29,5 @@ QB_ROOTFS_OPT = "-drive 
id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio
 # Virtio serial console
 QB_SERIAL_OPT = "-device virtio-serial-device -chardev vc,id=virtcon -device 
virtconsole,chardev=virtcon"
 QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev 
socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device 
virtconsole,chardev=virtcon"
+
+PREFERRED_VERSION_linux-yocto ?= "4.19%"
-- 
2.17.2

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [OE-Core][RFC 0/2] qemuarm64: cleanup and Add graphics support

2019-02-27 Thread Jon Mason


This series is dependent on the yocto-kernel-cache RFC series similarly
named.  See
https://lists.yoctoproject.org/pipermail/linux-yocto/2019-February/007580.html

This series cleans up the hvc0 respawning issue, by removing the
reference in meta/conf/machine/qemuarm64.conf.  So virtio console will
not work, but I don't think it was properly working before.  A bug
should be opened to track this and correct it when a solution is found.

Also, graphics support is added by using the QEMU VGA device, which
emulates a Bochs VGA PCI adapter.  Virtio would be a superior
implementation (in theory), but I was unable to get it working fully.  A
bug should be opened to track this and switch to using virtio when the
issue(s) can be resolved.

Finally, when starting the graphics, a kernel warning is issued.  It
is not fatal and graphics work despite the warning.  However, this might
be unacceptable.  For the record, it is:

[   18.370702] [ cut here ]
[   18.382099] WARNING: CPU: 0 PID: 446 at drivers/gpu/drm/ttm/ttm_bo_vm.c:303 
ttm_bo_vm_open+0x3c/0x4c
[   18.383267] Modules linked in:
[   18.383789] CPU: 0 PID: 446 Comm: Xorg Not tainted 4.19.19-yocto-standard #1
[   18.383964] Hardware name: Generic DT based system
[   18.384508] [] (unwind_backtrace) from [] 
(show_stack+0x20/0x24)
[   18.384719] [] (show_stack) from [] 
(dump_stack+0x84/0xa4)
[   18.384904] [] (dump_stack) from [] (__warn+0xe8/0x104)
[   18.385114] [] (__warn) from [] 
(warn_slowpath_null+0x4c/0x58)
[   18.385300] [] (warn_slowpath_null) from [] 
(ttm_bo_vm_open+0x3c/0x4c)
[   18.385499] [] (ttm_bo_vm_open) from [] 
(copy_process.part.3+0x13c4/0x17f0)
[   18.385703] [] (copy_process.part.3) from [] 
(_do_fork+0xc8/0x414)
[   18.385907] [] (_do_fork) from [] (sys_clone+0x30/0x38)
[   18.386108] [] (sys_clone) from [] 
(ret_fast_syscall+0x0/0x4c)
[   18.386308] Exception stack(0xde279fa8 to 0xde279ff0)
[   18.386477] 9fa0:   b6ef7078 b6f03000 01200011  
 
[   18.386672] 9fc0: b6ef7078 b6f03000 b6ef74d0 0078  b6ef7010 
0051b03d be9bc9fc
[   18.386857] 9fe0: 0078 be9ba8a8 b6ad564d b6a7ac46
[   18.387096] ---[ end trace e8a5e15e3b7db8a9 ]---


Given these number of issues, I wanted to post this as a request for
comment to see if this is acceptable to the community.  If it is
acceptable, I will open the bugs mentioned above.

I have made similar modifications to qemuarma15, and can resubmit them
if the solution above is acceptable.  However, I thought using qemuarm64
was a cleaner way to show what was done and start the dialog.

Thanks,
Jon


Jon Mason (2):
  qemuarm64: fix hvc0 error and cleanup
  qemuarm64: Add graphics support

 meta/conf/machine/qemuarm64.conf | 19 +--
 1 file changed, 13 insertions(+), 6 deletions(-)

-- 
2.17.2

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [OE-Core][RFC 1/2] qemuarm64: fix hvc0 error and cleanup

2019-02-27 Thread Jon Mason
The following error is being frequently posted
INIT: Id "hvc0" respawning too fast: disabled for 5 minutes

Remove the references to hvc0 to work around this error.  Also, add some
comments to describe what is going on.

Signed-off-by: Jon Mason 
---
 meta/conf/machine/qemuarm64.conf | 13 -
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/meta/conf/machine/qemuarm64.conf b/meta/conf/machine/qemuarm64.conf
index ee19385eaf..8d4a482fec 100644
--- a/meta/conf/machine/qemuarm64.conf
+++ b/meta/conf/machine/qemuarm64.conf
@@ -7,20 +7,23 @@ require conf/machine/include/qemu.inc
 
 KERNEL_IMAGETYPE = "Image"
 
-SERIAL_CONSOLES ?= "38400;ttyAMA0 38400;hvc0"
+SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;tty1"
 
 # For runqemu
 QB_SYSTEM_NAME = "qemu-system-aarch64"
 QB_MEM = "-m 512"
 QB_MACHINE = "-machine virt"
 QB_CPU = "-cpu cortex-a57"
-QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0,38400"
-# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
+# We need both ttyAMA0 and tty1 to allow for this to work in the stdio mode or 
the normal mode
+QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 console=tty1"
 QB_OPT_APPEND = "-show-cursor -monitor null"
 # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
 QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device 
virtio-rng-pci,rng=rng0"
+# Virtio Networking support
 QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
 QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
+# Virtio block device
 QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device 
virtio-blk-device,drive=disk0"
-QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device 
virtconsole,chardev=virtcon"
-QB_TCPSERIAL_OPT = " -device virtio-serial-device -chardev 
socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device 
virtconsole,chardev=virtcon"
+# Virtio serial console
+QB_SERIAL_OPT = "-device virtio-serial-device -chardev vc,id=virtcon -device 
virtconsole,chardev=virtcon"
+QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev 
socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device 
virtconsole,chardev=virtcon"
-- 
2.17.2

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] resulttool/regression: Ensure regressoin results are sorted

2019-02-27 Thread Yeoh Ee Peng
Sorted regression results to provide friendly viewing of report.

Signed-off-by: Yeoh Ee Peng 
---
 scripts/lib/resulttool/regression.py | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/scripts/lib/resulttool/regression.py 
b/scripts/lib/resulttool/regression.py
index ff77332..bdf531d 100644
--- a/scripts/lib/resulttool/regression.py
+++ b/scripts/lib/resulttool/regression.py
@@ -35,7 +35,7 @@ def compare_result(logger, base_name, target_name, 
base_result, target_result):
 logger.error('Failed to retrieved base test case status: %s' % 
k)
 if result:
 resultstring = "Regression: %s\n%s\n" % (base_name, 
target_name)
-for k in result:
+for k in sorted(result):
 resultstring += '%s: %s -> %s\n' % (k, result[k]['base'], 
result[k]['target'])
 else:
 resultstring = "Match: %s\n   %s" % (base_name, target_name)
@@ -82,9 +82,9 @@ def regression_common(args, logger, base_results, 
target_results):
 regressions.append(resstr)
 else:
 notfound.append("%s not found in target" % a)
-print("\n".join(matches))
-print("\n".join(regressions))
-print("\n".join(notfound))
+print("\n".join(sorted(matches)))
+print("\n".join(sorted(regressions)))
+print("\n".join(sorted(notfound)))
 
 return 0
 
-- 
2.7.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] libdazzle: add check for GTK3DISTROFEATURES

2019-02-27 Thread Yu, Mingli

Ping.

Thanks,

On 2019年02月26日 10:50, mingli...@windriver.com wrote:

From: Mingli Yu 

When do world buid, there comes below error:
| ERROR: Nothing PROVIDES 'gtk+3' (but 
/build/layers/oe-core/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb DEPENDS 
on or otherwise requires it)
| gtk+3 was skipped: one of 'x11 wayland' needs to be in DISTRO_FEATURES

Add the check for GTK3DISTROFEATURES to make
the world build work even without GTK3DISTROFEATURES.

Signed-off-by: Mingli Yu 
---
  meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb 
b/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb
index 5441c10..3779b15 100644
--- a/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb
+++ b/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb
@@ -3,7 +3,7 @@ LICENSE = "GPLv3+"
  LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"

  GNOMEBASEBUILDCLASS = "meson"
-inherit gnomebase upstream-version-is-even vala gobject-introspection
+inherit gnomebase upstream-version-is-even vala distro_features_check 
gobject-introspection

  DEPENDS = "glib-2.0-native glib-2.0 gtk+3"

@@ -14,5 +14,7 @@ SRC_URI[archive.sha256sum] = 
"78770eae9fa15ac5acb9c733d29459330b2540affbf7293311
  GI_ENABLE_FLAG = "-Dwith_introspection=true"
  GI_DISABLE_FLAG = "-Dwith_introspection=false"

+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+
  EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 
'True', '${GI_ENABLE_FLAG}', \
 
'${GI_DISABLE_FLAG}', d)} "


--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] openssl10: Fix mutliple include assumptions for bn.h in opensslconf.h

2019-02-27 Thread Khem Raj
On Mon, Feb 25, 2019 at 7:19 PM Denys Dmytriyenko  wrote:
>
> Khem, Richard,
>
> Sorry for belated reply. I haven't had time for master yet, but since this
> just got backported to thud, I'm seeing a similar breakage.
>
> First of all, BN_LLONG not being defined does seem to be "fixed" by this
> patch, but I'm not entirely sure why it now checks for OPENSSL_SYS_UEFI - this
> seems to be a new define in OpenSSL 1.1, and doesn't even exist in OpenSSL 1.0
> Is it a pure luck that it works now? Any hidden meaning I missded?
>

We don't have to, but then we might have uefi to compile so thats why its
there.

> And it also breaks exactly the same for DES_LONG due to a similar construct:

yeah the header nesting is a nightmare in openssl 1.0, it is a bit better
in 1.1, a lot of these recursions are fixed. but backporting then completely
to 1.0 is not an option, so we have to do tweaks that sustains the build.

>
>
> #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
> /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
>  * %20 speed up (longs are 8 bytes, int's are 4). */
> #ifndef DES_LONG
> #define DES_LONG unsigned int
> #endif
> #endif
>
>
> I was going to fix it similarly as BN_LLONG, but since I don't understand how
> it was supposed to be fixed, I'm not sure how to fix DES_LONG not being
> defined. Any ideas?
>
> Thanks.
>
> --
> Denys
>
>
> On Wed, Feb 06, 2019 at 10:25:26PM -0800, Khem Raj wrote:
> > After adding #pragma once to wrapper header ( opensslconf.h ) this
> > latent issue got to bite us, where it expect bn.h to be including
> > openssl.h to define BN_* defines, which is fragile. This patch removes
> > the contraints for nested includes for bn.h
> >
> > Signed-off-by: Khem Raj 
> > ---
> >  .../0001-Fix-BN_LLONG-breakage.patch  | 33 +++
> >  .../openssl/openssl10_1.0.2q.bb   |  1 +
> >  2 files changed, 34 insertions(+)
> >  create mode 100644 
> > meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> >
> > diff --git 
> > a/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> >  
> > b/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> > new file mode 100644
> > index 00..13d39c918c
> > --- /dev/null
> > +++ 
> > b/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> > @@ -0,0 +1,33 @@
> > +From 247b3188cde5f3347091cd54271127386d3aece0 Mon Sep 17 00:00:00 2001
> > +From: Khem Raj 
> > +Date: Wed, 6 Feb 2019 22:10:33 -0800
> > +Subject: [PATCH] Fix BN_LLONG breakage
> > +
> > +opensslconf.h is un-defining BN_LLONG only when included from bn.h which
> > +is not robust at all, especially when include guards are used and
> > +multiple inclusions of a given header is not allowed. so lets take out
> > +the nesting constraint and add OPENSSL_SYS_UEFI constraint instead
> > +
> > +Upstream-Status: Inappropriate [ fixed differently with OpenSSL 1.1+ ]
> > +
> > +Signed-off-by: Khem Raj 
> > +---
> > + crypto/opensslconf.h.in | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in
> > +index 7a1c85d..a10c10f 100644
> > +--- a/crypto/opensslconf.h.in
> >  b/crypto/opensslconf.h.in
> > +@@ -56,7 +56,7 @@
> > + #endif
> > + #endif
> > +
> > +-#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
> > ++#if !defined(OPENSSL_SYS_UEFI) && !defined(CONFIG_HEADER_BN_H)
> > + #define CONFIG_HEADER_BN_H
> > + #undef BN_LLONG
> > +
> > +--
> > +2.20.1
> > +
> > diff --git a/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb 
> > b/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > index 809634f6c0..88aefdea4f 100644
> > --- a/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > +++ b/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > @@ -40,6 +40,7 @@ SRC_URI = 
> > "http://www.openssl.org/source/openssl-${PV}.tar.gz \
> > file://0001-Fix-build-with-clang-using-external-assembler.patch 
> > \
> > file://0001-openssl-force-soft-link-to-avoid-rare-race.patch \
> > file://0001-allow-manpages-to-be-disabled.patch \
> > +   file://0001-Fix-BN_LLONG-breakage.patch \
> > "
> >
> >  SRC_URI_append_class-target = " \
> > --
> > 2.20.1
> >
> > --
> > ___
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] glibc-locale: Rewrite do_install using install utility instead of cp

2019-02-27 Thread ChenQi

Just to provide some feedback.
Even with this patch, this annoying QA issue is still there.
WARNING: glibc-locale-2.29-r0 do_package_qa: QA Issue: glibc-locale: 
/glibc-binary-localedata-wo-sn/usr/lib/locale/wo_SN/LC_CTYPE is owned by 
uid 1001, which is the same as the user running bitbake. This may be due 
to host contamination [host-user-contaminated]


Best Regards,
Chen Qi

On 02/07/2019 08:35 AM, Khem Raj wrote:

This has been a constant source of trouble for build failures due to 
host-user-contaminated QA
errors of sort

ERROR: QA Issue: glibc-locale: 
/glibc-binary-localedata-ca-es+valencia/usr/lib/locale/ca_ES@valencia/LC_MONETARY
 is owned by uid 3004, which is the same as the user running bitbake. This may 
be due to host contamination [host-user-contaminated]

So far we have tried to mould cp command into not carrying the build
user permissions into install area but it is never entirely fixed since
the issue keeps popping up in various scenes

This patch replaces use of cp with install utility and specifies install
mode for files explcitly

Signed-off-by: Khem Raj 
---
  meta/recipes-core/glibc/glibc-locale.inc | 44 ++--
  1 file changed, 25 insertions(+), 19 deletions(-)

diff --git a/meta/recipes-core/glibc/glibc-locale.inc 
b/meta/recipes-core/glibc/glibc-locale.inc
index 6384f9cbf1..9b256a5108 100644
--- a/meta/recipes-core/glibc/glibc-locale.inc
+++ b/meta/recipes-core/glibc/glibc-locale.inc
@@ -72,27 +72,33 @@ FILES_localedef = "${bindir}/localedef"
  LOCALETREESRC = "${COMPONENTS_DIR}/${PACKAGE_ARCH}/glibc-stash-locale"
  
  do_install () {

-   mkdir -p ${D}${bindir} ${D}${datadir}
-   if [ -n "$(ls ${LOCALETREESRC}/${bindir})" ]; then
-   cp -R --no-dereference --preserve=mode,links 
${LOCALETREESRC}/${bindir}/* ${D}${bindir}
-   fi
-   if [ -n "$(ls ${LOCALETREESRC}/${localedir})" ]; then
-   mkdir -p ${D}${localedir}
-   cp -R --no-dereference --preserve=mode,links 
${LOCALETREESRC}/${localedir}/* ${D}${localedir}
-   fi
+install -d ${D}${bindir}
+find "${LOCALETREESRC}/${bindir}" -maxdepth 1 -type f \
+-exec install -m 0755 -t "${D}${bindir}" {} \;
+
+for d in . $(find "${LOCALETREESRC}/${localedir}" -type d -printf '%P 
') ; do
+install -d "${D}${localedir}/$d"
+find "${LOCALETREESRC}/${localedir}/$d" -maxdepth 1 -type f \
+-exec install -m 0644 -t "${D}${localedir}/$d" {} \;
+done
if [ ${@d.getVar('PACKAGE_NO_GCONV')} -eq 0 ]; then
-   mkdir -p ${D}${libdir}
-   if [ -e ${LOCALETREESRC}/${libdir}/gconv ]; then
-   cp -R --no-dereference --preserve=mode,links 
${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
-   fi
-   if [ -e ${LOCALETREESRC}/${datadir}/i18n ]; then
-   cp -R --no-dereference --preserve=mode,links 
${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
-   fi
-   fi
-   if [ -e ${LOCALETREESRC}/${datadir}/locale ]; then
-   cp -R --no-dereference --preserve=mode,links 
${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+for d in . $(find "${LOCALETREESRC}/${libdir}/gconv" -type d 
-printf '%P ') ; do
+install -d "${D}${libdir}/gconv/$d"
+find "${LOCALETREESRC}/${libdir}/gconv/$d" -maxdepth 1 
-type f \
+-exec install -m 0755 -t "${D}${libdir}/gconv/$d" {} \;
+done
+for d in . $(find "${LOCALETREESRC}/${datadir}/i18n" -type d 
-printf '%P ') ; do
+install -d "${D}${datadir}/i18n/$d"
+find "${LOCALETREESRC}/${datadir}/i18n/$d" -maxdepth 1 
-type f \
+-exec install -m 0644 -t "${D}${datadir}/i18n/$d" {} \;
+done
fi
-   cp -R --no-dereference --preserve=mode,links ${LOCALETREESRC}/SUPPORTED 
${WORKDIR}
+for d in . $(find "${LOCALETREESRC}/${datadir}/locale" -type d -printf 
'%P ') ; do
+install -d "${D}${datadir}/locale/$d"
+find "${LOCALETREESRC}/${datadir}/locale/$d" -maxdepth 1 -type 
f \
+-exec install -m 0644 -t "${D}${datadir}/locale/$d" {} \;
+done
+   install -m 0644 ${LOCALETREESRC}/SUPPORTED ${WORKDIR}/SUPPORTED
  }
  
  inherit libc-package



--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] openssl10: Fix mutliple include assumptions for bn.h in opensslconf.h

2019-02-27 Thread Denys Dmytriyenko
Ping. Any comments here? Thanks!


On Mon, Feb 25, 2019 at 10:19:51PM -0500, Denys Dmytriyenko wrote:
> Khem, Richard,
> 
> Sorry for belated reply. I haven't had time for master yet, but since this 
> just got backported to thud, I'm seeing a similar breakage.
> 
> First of all, BN_LLONG not being defined does seem to be "fixed" by this 
> patch, but I'm not entirely sure why it now checks for OPENSSL_SYS_UEFI - 
> this 
> seems to be a new define in OpenSSL 1.1, and doesn't even exist in OpenSSL 1.0
> Is it a pure luck that it works now? Any hidden meaning I missded?
> 
> And it also breaks exactly the same for DES_LONG due to a similar construct:
> 
> 
> #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG)
> /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a
>  * %20 speed up (longs are 8 bytes, int's are 4). */
> #ifndef DES_LONG
> #define DES_LONG unsigned int
> #endif
> #endif
> 
> 
> I was going to fix it similarly as BN_LLONG, but since I don't understand how 
> it was supposed to be fixed, I'm not sure how to fix DES_LONG not being 
> defined. Any ideas?
> 
> Thanks.
> 
> -- 
> Denys
> 
> 
> On Wed, Feb 06, 2019 at 10:25:26PM -0800, Khem Raj wrote:
> > After adding #pragma once to wrapper header ( opensslconf.h ) this
> > latent issue got to bite us, where it expect bn.h to be including
> > openssl.h to define BN_* defines, which is fragile. This patch removes
> > the contraints for nested includes for bn.h
> > 
> > Signed-off-by: Khem Raj 
> > ---
> >  .../0001-Fix-BN_LLONG-breakage.patch  | 33 +++
> >  .../openssl/openssl10_1.0.2q.bb   |  1 +
> >  2 files changed, 34 insertions(+)
> >  create mode 100644 
> > meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> > 
> > diff --git 
> > a/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> >  
> > b/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> > new file mode 100644
> > index 00..13d39c918c
> > --- /dev/null
> > +++ 
> > b/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch
> > @@ -0,0 +1,33 @@
> > +From 247b3188cde5f3347091cd54271127386d3aece0 Mon Sep 17 00:00:00 2001
> > +From: Khem Raj 
> > +Date: Wed, 6 Feb 2019 22:10:33 -0800
> > +Subject: [PATCH] Fix BN_LLONG breakage
> > +
> > +opensslconf.h is un-defining BN_LLONG only when included from bn.h which
> > +is not robust at all, especially when include guards are used and
> > +multiple inclusions of a given header is not allowed. so lets take out
> > +the nesting constraint and add OPENSSL_SYS_UEFI constraint instead
> > +
> > +Upstream-Status: Inappropriate [ fixed differently with OpenSSL 1.1+ ]
> > +
> > +Signed-off-by: Khem Raj 
> > +---
> > + crypto/opensslconf.h.in | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in
> > +index 7a1c85d..a10c10f 100644
> > +--- a/crypto/opensslconf.h.in
> >  b/crypto/opensslconf.h.in
> > +@@ -56,7 +56,7 @@
> > + #endif
> > + #endif
> > + 
> > +-#if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H)
> > ++#if !defined(OPENSSL_SYS_UEFI) && !defined(CONFIG_HEADER_BN_H)
> > + #define CONFIG_HEADER_BN_H
> > + #undef BN_LLONG
> > + 
> > +-- 
> > +2.20.1
> > +
> > diff --git a/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb 
> > b/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > index 809634f6c0..88aefdea4f 100644
> > --- a/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > +++ b/meta/recipes-connectivity/openssl/openssl10_1.0.2q.bb
> > @@ -40,6 +40,7 @@ SRC_URI = 
> > "http://www.openssl.org/source/openssl-${PV}.tar.gz \
> > file://0001-Fix-build-with-clang-using-external-assembler.patch 
> > \
> > file://0001-openssl-force-soft-link-to-avoid-rare-race.patch \
> > file://0001-allow-manpages-to-be-disabled.patch \
> > +   file://0001-Fix-BN_LLONG-breakage.patch \
> > "
> >  
> >  SRC_URI_append_class-target = " \
> > -- 
> > 2.20.1
> > 
> > -- 
> > ___
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> -- 
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Khem Raj
On Wed, Feb 27, 2019 at 4:46 PM Andre McCurdy  wrote:
>
> On Wed, Feb 27, 2019 at 4:31 PM Khem Raj  wrote:
> >
> > On Wed, Feb 27, 2019 at 2:32 PM Martin Jansa  wrote:
> > >
> > > On Wed, Feb 27, 2019 at 02:01:06PM -0800, Andre McCurdy wrote:
> > > > On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
> > > > >
> > > > > Since compiler does not optimize away a lot of stuff we end up with
> > > > > Werrors e.g.
> > > > >
> > > > > ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> > > > > ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> > > > > uninitialized in this function [-Werror=maybe-uninitialized]
> > > > >   114 |+ (k * ln2_lo + c))) - f);
> > > > >   |  ^~~~
> > > > >
> > > > > which otherwise wont happen, so lets build with warnings-as-errors
> > > > > disabled in debug mode
> > > > >
> > > > > given we disable werror, now we don't have to restrict user to compile
> > > > > without -O0
> > > >
> > > > Did you actually test with -O0? Even if it builds, there may be issues
> > > > at runtime:
> > > >
> > > >   
> > > > https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
> > >
> > > Agreed, last time I've tried it still didn't work in runtime with -O0.
> > >
> >
> > intention is not to state that it should be working with -O0, but let
> > glibc complain that it can not be compiled with out optimization which
> > it does nicely.
>
> Doesn't glibc complain about -O0 regardless of --disable-werror?
>

No, it gets stuck in warnings being treated as errors and that can
misguide the user.

> If so then I don't see any advantage in specifically passing
> --disable-werror in the -O0 case.
>
> > > If this is the only place where it now fails, can we please work around
> >
> > No, this is just a representative, there are several such warnings in
> > tests especially, so disabling werror is only sane here.
> >
> > > it like in:
> > > https://sourceware.org/git/?p=glibc.git;a=commit;h=27c5e756a2a8495d77480a103081a86c1ca9a1e8
> > > https://sourceware.org/git/?p=glibc.git;a=commit;h=4a06ceea33ecc220bbfe264d8f1e74de2f04e90d
> > > and pending:
> > > https://patches-gcc.linaro.org/patch/13529/
> > >
> > > > >  meta/recipes-core/glibc/glibc.inc | 9 -
> > > > >  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
> > > > >  2 files changed, 1 insertion(+), 9 deletions(-)
> > > > >
> > > > > diff --git a/meta/recipes-core/glibc/glibc.inc 
> > > > > b/meta/recipes-core/glibc/glibc.inc
> > > > > index 67af396133..a382a22b73 100644
> > > > > --- a/meta/recipes-core/glibc/glibc.inc
> > > > > +++ b/meta/recipes-core/glibc/glibc.inc
> > > > > @@ -2,15 +2,6 @@ require glibc-common.inc
> > > > >  require glibc-ld.inc
> > > > >  require glibc-testing.inc
> > > > >
> > > > > -python () {
> > > > > -opt_effective = "-O"
> > > > > -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> > > > > -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> > > > > -opt_effective = opt
> > > > > -if opt_effective == "-O0":
> > > > > -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> > > > > (d.getVar('PN'), opt_effective))
> > > > > -}
> > > > > -
> > > > >  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial 
> > > > > linux-libc-headers"
> > > > >
> > > > >  PROVIDES = "virtual/libc"
> > > > > diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> > > > > b/meta/recipes-core/glibc/glibc_2.29.bb
> > > > > index bd8aa6d503..9b6fab066b 100644
> > > > > --- a/meta/recipes-core/glibc/glibc_2.29.bb
> > > > > +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> > > > > @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
> > > > >  --disable-crypt \
> > > > >  --with-default-link \
> > > > >  --enable-nscd \
> > > > > +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', 
> > > > > '-O0 -Og', '--disable-werror', '', d)} \
> > > > >  ${GLIBCPIE} \
> > > > >  ${GLIBC_EXTRA_OECONF}"
> > > > >
> > > > > --
> > > > > 2.21.0
> > > > >
> > > > > --
> > > > > ___
> > > > > Openembedded-core mailing list
> > > > > Openembedded-core@lists.openembedded.org
> > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> > > > --
> > > > ___
> > > > Openembedded-core mailing list
> > > > Openembedded-core@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> > >
> > > --
> > > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Andre McCurdy
On Wed, Feb 27, 2019 at 4:31 PM Khem Raj  wrote:
>
> On Wed, Feb 27, 2019 at 2:32 PM Martin Jansa  wrote:
> >
> > On Wed, Feb 27, 2019 at 02:01:06PM -0800, Andre McCurdy wrote:
> > > On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
> > > >
> > > > Since compiler does not optimize away a lot of stuff we end up with
> > > > Werrors e.g.
> > > >
> > > > ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> > > > ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> > > > uninitialized in this function [-Werror=maybe-uninitialized]
> > > >   114 |+ (k * ln2_lo + c))) - f);
> > > >   |  ^~~~
> > > >
> > > > which otherwise wont happen, so lets build with warnings-as-errors
> > > > disabled in debug mode
> > > >
> > > > given we disable werror, now we don't have to restrict user to compile
> > > > without -O0
> > >
> > > Did you actually test with -O0? Even if it builds, there may be issues
> > > at runtime:
> > >
> > >   
> > > https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
> >
> > Agreed, last time I've tried it still didn't work in runtime with -O0.
> >
>
> intention is not to state that it should be working with -O0, but let
> glibc complain that it can not be compiled with out optimization which
> it does nicely.

Doesn't glibc complain about -O0 regardless of --disable-werror?

If so then I don't see any advantage in specifically passing
--disable-werror in the -O0 case.

> > If this is the only place where it now fails, can we please work around
>
> No, this is just a representative, there are several such warnings in
> tests especially, so disabling werror is only sane here.
>
> > it like in:
> > https://sourceware.org/git/?p=glibc.git;a=commit;h=27c5e756a2a8495d77480a103081a86c1ca9a1e8
> > https://sourceware.org/git/?p=glibc.git;a=commit;h=4a06ceea33ecc220bbfe264d8f1e74de2f04e90d
> > and pending:
> > https://patches-gcc.linaro.org/patch/13529/
> >
> > > >  meta/recipes-core/glibc/glibc.inc | 9 -
> > > >  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
> > > >  2 files changed, 1 insertion(+), 9 deletions(-)
> > > >
> > > > diff --git a/meta/recipes-core/glibc/glibc.inc 
> > > > b/meta/recipes-core/glibc/glibc.inc
> > > > index 67af396133..a382a22b73 100644
> > > > --- a/meta/recipes-core/glibc/glibc.inc
> > > > +++ b/meta/recipes-core/glibc/glibc.inc
> > > > @@ -2,15 +2,6 @@ require glibc-common.inc
> > > >  require glibc-ld.inc
> > > >  require glibc-testing.inc
> > > >
> > > > -python () {
> > > > -opt_effective = "-O"
> > > > -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> > > > -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> > > > -opt_effective = opt
> > > > -if opt_effective == "-O0":
> > > > -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> > > > (d.getVar('PN'), opt_effective))
> > > > -}
> > > > -
> > > >  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial 
> > > > linux-libc-headers"
> > > >
> > > >  PROVIDES = "virtual/libc"
> > > > diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> > > > b/meta/recipes-core/glibc/glibc_2.29.bb
> > > > index bd8aa6d503..9b6fab066b 100644
> > > > --- a/meta/recipes-core/glibc/glibc_2.29.bb
> > > > +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> > > > @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
> > > >  --disable-crypt \
> > > >  --with-default-link \
> > > >  --enable-nscd \
> > > > +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 
> > > > -Og', '--disable-werror', '', d)} \
> > > >  ${GLIBCPIE} \
> > > >  ${GLIBC_EXTRA_OECONF}"
> > > >
> > > > --
> > > > 2.21.0
> > > >
> > > > --
> > > > ___
> > > > Openembedded-core mailing list
> > > > Openembedded-core@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> > > --
> > > ___
> > > Openembedded-core mailing list
> > > Openembedded-core@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >
> > --
> > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH V2] glibc: Move common bits to glibc-common.inc

2019-02-27 Thread Khem Raj
We have been duplicating few variables in glibc recipes which could
actually be defined once, therefore move them to glibc-common.inc which is
included by all glibc family of recipes

Signed-off-by: Khem Raj 
---
v2: Correct typo gcc-common.inc -> glibc-common.inc in commit msg

 meta/recipes-core/glibc/glibc-collateral.inc | 18 +++---
 meta/recipes-core/glibc/glibc-common.inc | 14 ++
 meta/recipes-core/glibc/glibc.inc|  8 
 meta/recipes-core/glibc/glibc_2.29.bb|  5 -
 4 files changed, 17 insertions(+), 28 deletions(-)

diff --git a/meta/recipes-core/glibc/glibc-collateral.inc 
b/meta/recipes-core/glibc/glibc-collateral.inc
index 3379270566..52880791a7 100644
--- a/meta/recipes-core/glibc/glibc-collateral.inc
+++ b/meta/recipes-core/glibc/glibc-collateral.inc
@@ -1,15 +1,7 @@
-INHIBIT_DEFAULT_DEPS = "1"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM ?= 
"file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
- 
file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780"
-HOMEPAGE = "http://www.gnu.org/software/libc/index.html;
+require glibc-common.inc
 
-# This needs to match with glibc.inc, otherwise glibc-scripts and glibc-locale
-# will fail to find main glibc, for details see
-# 
http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+LIC_FILES_CHKSUM = 
"file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
+ 
file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780"
 
 deltask do_fetch
 deltask do_unpack
@@ -18,7 +10,3 @@ do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 
 do_install[depends] += "virtual/${MLPREFIX}libc:do_stash_locale"
-
-COMPATIBLE_HOST_libc-musl_class-target = "null"
-
-PV = "2.29"
diff --git a/meta/recipes-core/glibc/glibc-common.inc 
b/meta/recipes-core/glibc/glibc-common.inc
index b05e162f88..cded384592 100644
--- a/meta/recipes-core/glibc/glibc-common.inc
+++ b/meta/recipes-core/glibc/glibc-common.inc
@@ -7,4 +7,18 @@ LIC_FILES_CHKSUM ?= 
"file://LICENSES;md5=07a394b26e0902b9ffdec03765209770 \
   file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
   file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
   file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff "
+
 CVE_PRODUCT = "glibc"
+
+INHIBIT_DEFAULT_DEPS = "1"
+
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv6 = "arm"
+#
+# We will skip parsing glibc when target system C library selection is not 
glibc
+# this helps in easing out parsing for non-glibc system libraries
+#
+COMPATIBLE_HOST_libc-musl_class-target = "null"
+
+PV = "2.29"
diff --git a/meta/recipes-core/glibc/glibc.inc 
b/meta/recipes-core/glibc/glibc.inc
index a382a22b73..252fd56c13 100644
--- a/meta/recipes-core/glibc/glibc.inc
+++ b/meta/recipes-core/glibc/glibc.inc
@@ -25,14 +25,6 @@ CACHED_CONFIGUREVARS_append_mipsarch = " 
libc_cv_ld_gnu_indirect_function=no"
 
 GLIBC_EXTRA_OECONF ?= ""
 GLIBC_EXTRA_OECONF_class-nativesdk = ""
-INHIBIT_DEFAULT_DEPS = "1"
-
-# This needs to match with glibc-collateral.inc, otherwise glibc-scripts and 
glibc-locale
-# will fail to find main glibc, for details see
-# 
http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
 
 # glibc uses PARALLELMFLAGS variable to pass parallel build info so transfer
 # PARALLEL_MAKE into PARALLELMFLAGS and empty out PARALLEL_MAKE
diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
b/meta/recipes-core/glibc/glibc_2.29.bb
index 9b6fab066b..4577350eae 100644
--- a/meta/recipes-core/glibc/glibc_2.29.bb
+++ b/meta/recipes-core/glibc/glibc_2.29.bb
@@ -69,11 +69,6 @@ BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
 TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}"
 
 GLIBC_BROKEN_LOCALES = ""
-#
-# We will skip parsing glibc when target system C library selection is not 
glibc
-# this helps in easing out parsing for non-glibc system libraries
-#
-COMPATIBLE_HOST_libc-musl_class-target = "null"
 
 GLIBCPIE ??= ""
 
-- 
2.21.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Khem Raj
On Wed, Feb 27, 2019 at 2:32 PM Martin Jansa  wrote:
>
> On Wed, Feb 27, 2019 at 02:01:06PM -0800, Andre McCurdy wrote:
> > On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
> > >
> > > Since compiler does not optimize away a lot of stuff we end up with
> > > Werrors e.g.
> > >
> > > ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> > > ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> > > uninitialized in this function [-Werror=maybe-uninitialized]
> > >   114 |+ (k * ln2_lo + c))) - f);
> > >   |  ^~~~
> > >
> > > which otherwise wont happen, so lets build with warnings-as-errors
> > > disabled in debug mode
> > >
> > > given we disable werror, now we don't have to restrict user to compile
> > > without -O0
> >
> > Did you actually test with -O0? Even if it builds, there may be issues
> > at runtime:
> >
> >   
> > https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
>
> Agreed, last time I've tried it still didn't work in runtime with -O0.
>

intention is not to state that it should be working with -O0, but let
glibc complain that it can not be compiled with out optimization which
it does nicely.

> If this is the only place where it now fails, can we please work around

No, this is just a representative, there are several such warnings in
tests especially, so disabling werror is only sane here.

> it like in:
> https://sourceware.org/git/?p=glibc.git;a=commit;h=27c5e756a2a8495d77480a103081a86c1ca9a1e8
> https://sourceware.org/git/?p=glibc.git;a=commit;h=4a06ceea33ecc220bbfe264d8f1e74de2f04e90d
> and pending:
> https://patches-gcc.linaro.org/patch/13529/
>
> > >  meta/recipes-core/glibc/glibc.inc | 9 -
> > >  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
> > >  2 files changed, 1 insertion(+), 9 deletions(-)
> > >
> > > diff --git a/meta/recipes-core/glibc/glibc.inc 
> > > b/meta/recipes-core/glibc/glibc.inc
> > > index 67af396133..a382a22b73 100644
> > > --- a/meta/recipes-core/glibc/glibc.inc
> > > +++ b/meta/recipes-core/glibc/glibc.inc
> > > @@ -2,15 +2,6 @@ require glibc-common.inc
> > >  require glibc-ld.inc
> > >  require glibc-testing.inc
> > >
> > > -python () {
> > > -opt_effective = "-O"
> > > -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> > > -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> > > -opt_effective = opt
> > > -if opt_effective == "-O0":
> > > -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> > > (d.getVar('PN'), opt_effective))
> > > -}
> > > -
> > >  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
> > >
> > >  PROVIDES = "virtual/libc"
> > > diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> > > b/meta/recipes-core/glibc/glibc_2.29.bb
> > > index bd8aa6d503..9b6fab066b 100644
> > > --- a/meta/recipes-core/glibc/glibc_2.29.bb
> > > +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> > > @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
> > >  --disable-crypt \
> > >  --with-default-link \
> > >  --enable-nscd \
> > > +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 
> > > -Og', '--disable-werror', '', d)} \
> > >  ${GLIBCPIE} \
> > >  ${GLIBC_EXTRA_OECONF}"
> > >
> > > --
> > > 2.21.0
> > >
> > > --
> > > ___
> > > Openembedded-core mailing list
> > > Openembedded-core@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> > --
> > ___
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
> --
> Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Khem Raj
On Wed, Feb 27, 2019 at 2:01 PM Andre McCurdy  wrote:
>
> On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
> >
> > Since compiler does not optimize away a lot of stuff we end up with
> > Werrors e.g.
> >
> > ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> > ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> > uninitialized in this function [-Werror=maybe-uninitialized]
> >   114 |+ (k * ln2_lo + c))) - f);
> >   |  ^~~~
> >
> > which otherwise wont happen, so lets build with warnings-as-errors
> > disabled in debug mode
> >
> > given we disable werror, now we don't have to restrict user to compile
> > without -O0
>
> Did you actually test with -O0? Even if it builds, there may be issues
> at runtime:

Yes I did, and it does not build with -O0 and glibc build system gives


in file included from :
./../include/libc-symbols.h:75:3: error: #error "glibc cannot be
compiled without optimization"
   75 | # error "glibc cannot be compiled without optimization"
  |   ^
In file included from :
./../include/libc-symbols.h:75:3: error: #error "glibc cannot be
compiled without optimization"
   75 | # error "glibc cannot be compiled without optimization"
  |   ^
In file included from :
./../include/libc-symbols.h:75:3: error: #error "glibc cannot be
compiled without optimization"
   75 | # error "glibc cannot be compiled without optimization"
  |   ^


this is user friendly message, that we can rely on, there is no need
to have code in metadata to detect it.

>
>   
> https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F
>
> > Signed-off-by: Khem Raj 
> > ---
> >  meta/recipes-core/glibc/glibc.inc | 9 -
> >  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
> >  2 files changed, 1 insertion(+), 9 deletions(-)
> >
> > diff --git a/meta/recipes-core/glibc/glibc.inc 
> > b/meta/recipes-core/glibc/glibc.inc
> > index 67af396133..a382a22b73 100644
> > --- a/meta/recipes-core/glibc/glibc.inc
> > +++ b/meta/recipes-core/glibc/glibc.inc
> > @@ -2,15 +2,6 @@ require glibc-common.inc
> >  require glibc-ld.inc
> >  require glibc-testing.inc
> >
> > -python () {
> > -opt_effective = "-O"
> > -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> > -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> > -opt_effective = opt
> > -if opt_effective == "-O0":
> > -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> > (d.getVar('PN'), opt_effective))
> > -}
> > -
> >  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
> >
> >  PROVIDES = "virtual/libc"
> > diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> > b/meta/recipes-core/glibc/glibc_2.29.bb
> > index bd8aa6d503..9b6fab066b 100644
> > --- a/meta/recipes-core/glibc/glibc_2.29.bb
> > +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> > @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
> >  --disable-crypt \
> >  --with-default-link \
> >  --enable-nscd \
> > +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 
> > -Og', '--disable-werror', '', d)} \
> >  ${GLIBCPIE} \
> >  ${GLIBC_EXTRA_OECONF}"
> >
> > --
> > 2.21.0
> >
> > --
> > ___
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] glibc: Move common bits to gcc-common.inc

2019-02-27 Thread Khem Raj
On Wed, Feb 27, 2019 at 1:48 PM Richard Purdie <
richard.pur...@linuxfoundation.org> wrote:

> On Wed, 2019-02-27 at 13:29 -0800, Khem Raj wrote:
> > We have been duplicating few variables in glibc recipes which could
> > actually be defined once, therefore move them to gcc-common.inc which
>
> gcc-common.inc for glibc? :)
>
>
Hey thankfully it’s just in comments

> Cheers,
>
> Richard
>
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Martin Jansa
On Wed, Feb 27, 2019 at 02:01:06PM -0800, Andre McCurdy wrote:
> On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
> >
> > Since compiler does not optimize away a lot of stuff we end up with
> > Werrors e.g.
> >
> > ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> > ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> > uninitialized in this function [-Werror=maybe-uninitialized]
> >   114 |+ (k * ln2_lo + c))) - f);
> >   |  ^~~~
> >
> > which otherwise wont happen, so lets build with warnings-as-errors
> > disabled in debug mode
> >
> > given we disable werror, now we don't have to restrict user to compile
> > without -O0
> 
> Did you actually test with -O0? Even if it builds, there may be issues
> at runtime:
> 
>   
> https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F

Agreed, last time I've tried it still didn't work in runtime with -O0.

If this is the only place where it now fails, can we please work around
it like in:
https://sourceware.org/git/?p=glibc.git;a=commit;h=27c5e756a2a8495d77480a103081a86c1ca9a1e8
https://sourceware.org/git/?p=glibc.git;a=commit;h=4a06ceea33ecc220bbfe264d8f1e74de2f04e90d
and pending:
https://patches-gcc.linaro.org/patch/13529/

> >  meta/recipes-core/glibc/glibc.inc | 9 -
> >  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
> >  2 files changed, 1 insertion(+), 9 deletions(-)
> >
> > diff --git a/meta/recipes-core/glibc/glibc.inc 
> > b/meta/recipes-core/glibc/glibc.inc
> > index 67af396133..a382a22b73 100644
> > --- a/meta/recipes-core/glibc/glibc.inc
> > +++ b/meta/recipes-core/glibc/glibc.inc
> > @@ -2,15 +2,6 @@ require glibc-common.inc
> >  require glibc-ld.inc
> >  require glibc-testing.inc
> >
> > -python () {
> > -opt_effective = "-O"
> > -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> > -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> > -opt_effective = opt
> > -if opt_effective == "-O0":
> > -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> > (d.getVar('PN'), opt_effective))
> > -}
> > -
> >  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
> >
> >  PROVIDES = "virtual/libc"
> > diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> > b/meta/recipes-core/glibc/glibc_2.29.bb
> > index bd8aa6d503..9b6fab066b 100644
> > --- a/meta/recipes-core/glibc/glibc_2.29.bb
> > +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> > @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
> >  --disable-crypt \
> >  --with-default-link \
> >  --enable-nscd \
> > +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 
> > -Og', '--disable-werror', '', d)} \
> >  ${GLIBCPIE} \
> >  ${GLIBC_EXTRA_OECONF}"
> >
> > --
> > 2.21.0
> >
> > --
> > ___
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> -- 
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core

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


signature.asc
Description: Digital signature
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] GO runtime crashes

2019-02-27 Thread Damien Riegel
On Wed, 27 Feb 2019 at 12:10, Vincent Prince
 wrote:
>
> Hello everyone,
>
> I'm trying to add node_exporter from Prometheus project to an Intel x86-64 
> machine.
> I made the following recipe:
>
> https://github.com/nefethael/meta-random/blob/master/recipes-connectivity/prometheus/go-nodeexporter_0.18.0.bb
>
> node_exporter is crashing with multiple different runtime errors, so I raised 
> an issue on github:
> https://github.com/prometheus/node_exporter/issues/1244

I've faced the same kind of issue with a custom application of ours.
The fix was to add the following line to the recipe:
GO_LINKSHARED = ""

Let me know if that helps.

Cheers,
Damien
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Andre McCurdy
On Wed, Feb 27, 2019 at 12:51 PM Khem Raj  wrote:
>
> Since compiler does not optimize away a lot of stuff we end up with
> Werrors e.g.
>
> ./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
> ../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
> uninitialized in this function [-Werror=maybe-uninitialized]
>   114 |+ (k * ln2_lo + c))) - f);
>   |  ^~~~
>
> which otherwise wont happen, so lets build with warnings-as-errors
> disabled in debug mode
>
> given we disable werror, now we don't have to restrict user to compile
> without -O0

Did you actually test with -O0? Even if it builds, there may be issues
at runtime:

  
https://sourceware.org/glibc/wiki/FAQ#Why_do_I_get:.60.23error_.22glibc_cannot_be_compiled_without_optimization.22.27.2C_when_trying_to_compile_GNU_libc_with_GNU_CC.3F

> Signed-off-by: Khem Raj 
> ---
>  meta/recipes-core/glibc/glibc.inc | 9 -
>  meta/recipes-core/glibc/glibc_2.29.bb | 1 +
>  2 files changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/meta/recipes-core/glibc/glibc.inc 
> b/meta/recipes-core/glibc/glibc.inc
> index 67af396133..a382a22b73 100644
> --- a/meta/recipes-core/glibc/glibc.inc
> +++ b/meta/recipes-core/glibc/glibc.inc
> @@ -2,15 +2,6 @@ require glibc-common.inc
>  require glibc-ld.inc
>  require glibc-testing.inc
>
> -python () {
> -opt_effective = "-O"
> -for opt in d.getVar('SELECTED_OPTIMIZATION').split():
> -if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
> -opt_effective = opt
> -if opt_effective == "-O0":
> -bb.fatal("%s can't be built with %s, try -O1 instead" % 
> (d.getVar('PN'), opt_effective))
> -}
> -
>  DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
>
>  PROVIDES = "virtual/libc"
> diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
> b/meta/recipes-core/glibc/glibc_2.29.bb
> index bd8aa6d503..9b6fab066b 100644
> --- a/meta/recipes-core/glibc/glibc_2.29.bb
> +++ b/meta/recipes-core/glibc/glibc_2.29.bb
> @@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
>  --disable-crypt \
>  --with-default-link \
>  --enable-nscd \
> +${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 -Og', 
> '--disable-werror', '', d)} \
>  ${GLIBCPIE} \
>  ${GLIBC_EXTRA_OECONF}"
>
> --
> 2.21.0
>
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] glibc: Move common bits to gcc-common.inc

2019-02-27 Thread Richard Purdie
On Wed, 2019-02-27 at 13:29 -0800, Khem Raj wrote:
> We have been duplicating few variables in glibc recipes which could
> actually be defined once, therefore move them to gcc-common.inc which

gcc-common.inc for glibc? :)

Cheers,

Richard

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] glibc: Move common bits to gcc-common.inc

2019-02-27 Thread Khem Raj
We have been duplicating few variables in glibc recipes which could
actually be defined once, therefore move them to gcc-common.inc which is
included by all glibc family of recipes

Signed-off-by: Khem Raj 
---
 meta/recipes-core/glibc/glibc-collateral.inc | 18 +++---
 meta/recipes-core/glibc/glibc-common.inc | 14 ++
 meta/recipes-core/glibc/glibc.inc|  8 
 meta/recipes-core/glibc/glibc_2.29.bb|  5 -
 4 files changed, 17 insertions(+), 28 deletions(-)

diff --git a/meta/recipes-core/glibc/glibc-collateral.inc 
b/meta/recipes-core/glibc/glibc-collateral.inc
index 3379270566..52880791a7 100644
--- a/meta/recipes-core/glibc/glibc-collateral.inc
+++ b/meta/recipes-core/glibc/glibc-collateral.inc
@@ -1,15 +1,7 @@
-INHIBIT_DEFAULT_DEPS = "1"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM ?= 
"file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
- 
file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780"
-HOMEPAGE = "http://www.gnu.org/software/libc/index.html;
+require glibc-common.inc
 
-# This needs to match with glibc.inc, otherwise glibc-scripts and glibc-locale
-# will fail to find main glibc, for details see
-# 
http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
+LIC_FILES_CHKSUM = 
"file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6 \
+ 
file://${COMMON_LICENSE_DIR}/LGPL-2.1;md5=1a6d268fd218675ffea8be556788b780"
 
 deltask do_fetch
 deltask do_unpack
@@ -18,7 +10,3 @@ do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 
 do_install[depends] += "virtual/${MLPREFIX}libc:do_stash_locale"
-
-COMPATIBLE_HOST_libc-musl_class-target = "null"
-
-PV = "2.29"
diff --git a/meta/recipes-core/glibc/glibc-common.inc 
b/meta/recipes-core/glibc/glibc-common.inc
index b05e162f88..cded384592 100644
--- a/meta/recipes-core/glibc/glibc-common.inc
+++ b/meta/recipes-core/glibc/glibc-common.inc
@@ -7,4 +7,18 @@ LIC_FILES_CHKSUM ?= 
"file://LICENSES;md5=07a394b26e0902b9ffdec03765209770 \
   file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
   file://posix/rxspencer/COPYRIGHT;md5=dc5485bb394a13b2332ec1c785f5d83a \
   file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff "
+
 CVE_PRODUCT = "glibc"
+
+INHIBIT_DEFAULT_DEPS = "1"
+
+ARM_INSTRUCTION_SET_armv4 = "arm"
+ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET_armv6 = "arm"
+#
+# We will skip parsing glibc when target system C library selection is not 
glibc
+# this helps in easing out parsing for non-glibc system libraries
+#
+COMPATIBLE_HOST_libc-musl_class-target = "null"
+
+PV = "2.29"
diff --git a/meta/recipes-core/glibc/glibc.inc 
b/meta/recipes-core/glibc/glibc.inc
index a382a22b73..252fd56c13 100644
--- a/meta/recipes-core/glibc/glibc.inc
+++ b/meta/recipes-core/glibc/glibc.inc
@@ -25,14 +25,6 @@ CACHED_CONFIGUREVARS_append_mipsarch = " 
libc_cv_ld_gnu_indirect_function=no"
 
 GLIBC_EXTRA_OECONF ?= ""
 GLIBC_EXTRA_OECONF_class-nativesdk = ""
-INHIBIT_DEFAULT_DEPS = "1"
-
-# This needs to match with glibc-collateral.inc, otherwise glibc-scripts and 
glibc-locale
-# will fail to find main glibc, for details see
-# 
http://lists.openembedded.org/pipermail/openembedded-core/2015-January/100679.html
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-ARM_INSTRUCTION_SET_armv6 = "arm"
 
 # glibc uses PARALLELMFLAGS variable to pass parallel build info so transfer
 # PARALLEL_MAKE into PARALLELMFLAGS and empty out PARALLEL_MAKE
diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
b/meta/recipes-core/glibc/glibc_2.29.bb
index 9b6fab066b..4577350eae 100644
--- a/meta/recipes-core/glibc/glibc_2.29.bb
+++ b/meta/recipes-core/glibc/glibc_2.29.bb
@@ -69,11 +69,6 @@ BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
 TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${includedir}"
 
 GLIBC_BROKEN_LOCALES = ""
-#
-# We will skip parsing glibc when target system C library selection is not 
glibc
-# this helps in easing out parsing for non-glibc system libraries
-#
-COMPATIBLE_HOST_libc-musl_class-target = "null"
 
 GLIBCPIE ??= ""
 
-- 
2.21.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/2] glibc: Disable Werror when building with debug options

2019-02-27 Thread Khem Raj
Since compiler does not optimize away a lot of stuff we end up with
Werrors e.g.

./sysdeps/ieee754/flt-32/s_log1pf.c: In function '__log1pf':
../sysdeps/ieee754/flt-32/s_log1pf.c:114:22: error: 'c' may be used 
uninitialized in this function [-Werror=maybe-uninitialized]
  114 |+ (k * ln2_lo + c))) - f);
  |  ^~~~

which otherwise wont happen, so lets build with warnings-as-errors
disabled in debug mode

given we disable werror, now we don't have to restrict user to compile
without -O0

Signed-off-by: Khem Raj 
---
 meta/recipes-core/glibc/glibc.inc | 9 -
 meta/recipes-core/glibc/glibc_2.29.bb | 1 +
 2 files changed, 1 insertion(+), 9 deletions(-)

diff --git a/meta/recipes-core/glibc/glibc.inc 
b/meta/recipes-core/glibc/glibc.inc
index 67af396133..a382a22b73 100644
--- a/meta/recipes-core/glibc/glibc.inc
+++ b/meta/recipes-core/glibc/glibc.inc
@@ -2,15 +2,6 @@ require glibc-common.inc
 require glibc-ld.inc
 require glibc-testing.inc
 
-python () {
-opt_effective = "-O"
-for opt in d.getVar('SELECTED_OPTIMIZATION').split():
-if opt in ("-O0", "-O", "-O1", "-O2", "-O3", "-Os"):
-opt_effective = opt
-if opt_effective == "-O0":
-bb.fatal("%s can't be built with %s, try -O1 instead" % 
(d.getVar('PN'), opt_effective))
-}
-
 DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial linux-libc-headers"
 
 PROVIDES = "virtual/libc"
diff --git a/meta/recipes-core/glibc/glibc_2.29.bb 
b/meta/recipes-core/glibc/glibc_2.29.bb
index bd8aa6d503..9b6fab066b 100644
--- a/meta/recipes-core/glibc/glibc_2.29.bb
+++ b/meta/recipes-core/glibc/glibc_2.29.bb
@@ -90,6 +90,7 @@ EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
 --disable-crypt \
 --with-default-link \
 --enable-nscd \
+${@bb.utils.contains_any('SELECTED_OPTIMIZATION', '-O0 -Og', 
'--disable-werror', '', d)} \
 ${GLIBCPIE} \
 ${GLIBC_EXTRA_OECONF}"
 
-- 
2.21.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH V2 1/2] bitbake.conf: Use -Og in DEBUG_OPTIMIZATION

2019-02-27 Thread Khem Raj
-Og is for optimized debugging experience.
this makes this consistent across different compilers especially gcc and
clang, -O in clang is equal to -O2 where as in gcc its similar to -O1
so it was not giving consistent debugging experience across compilers

Signed-off-by: Khem Raj 
---
v2: Change documentation to reflect the change and also build host flags

 meta/conf/bitbake.conf   | 4 ++--
 meta/conf/documentation.conf | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 1c5369ec98..85aab98462 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -610,10 +610,10 @@ DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types 
${DEBUG_PREFIX_MAP}"
 
 # Disabled until the option works properly -feliminate-dwarf2-dups
 FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}"
-DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
+DEBUG_OPTIMIZATION = "-Og -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
 SELECTED_OPTIMIZATION = "${@d.getVar(oe.utils.vartrue('DEBUG_BUILD', 
'DEBUG_OPTIMIZATION', 'FULL_OPTIMIZATION', d))}"
 SELECTED_OPTIMIZATION[vardeps] += "FULL_OPTIMIZATION DEBUG_OPTIMIZATION 
DEBUG_BUILD"
-BUILD_OPTIMIZATION = "${@oe.utils.vartrue('DEBUG_BUILD', '-O -g 
-feliminate-unused-debug-types -fno-omit-frame-pointer', '-O2', d)} -pipe"
+BUILD_OPTIMIZATION = "${@oe.utils.vartrue('DEBUG_BUILD', '-Og -g 
-feliminate-unused-debug-types -fno-omit-frame-pointer', '-O2', d)} -pipe"
 BUILD_OPTIMIZATION[vardeps] += "DEBUG_BUILD"
 
 ##
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index 4d2a707563..c2c96ecf1e 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -125,7 +125,7 @@ D[doc] = "The destination directory."
 DATE[doc] = "The date the build was started using YMD format."
 DATETIME[doc] = "The date and time the build was started."
 DEBUG_BUILD[doc] = "Specifies to build packages with debugging information. 
This influences the value of the SELECTED_OPTIMIZATION variable."
-DEBUG_OPTIMIZATION[doc] = "The options to pass in TARGET_CFLAGS and CFLAGS 
when compiling a system for debugging. This variable defaults to '-O 
-fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe'."
+DEBUG_OPTIMIZATION[doc] = "The options to pass in TARGET_CFLAGS and CFLAGS 
when compiling a system for debugging. This variable defaults to '-Og 
-fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe'."
 DEFAULT_PREFERENCE[doc] = "Specifies a weak bias for recipe selection 
priority."
 DEPENDS[doc] = "Lists a recipe's build-time dependencies (i.e. other recipe 
files)."
 DEPLOY_DIR[doc] = "Points to the general area that the OpenEmbedded build 
system uses to place images, packages, SDKs and other output files that are 
ready to be used outside of the build system."
-- 
2.21.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] Information about non-traditional uses of the Yocto Project and OpenEmbedded

2019-02-27 Thread Scott Rifenbark
Sounds like good potential for a section or chapter in the user docs.

Scott

On Wed, Feb 27, 2019 at 12:01 PM Philip Balister 
wrote:

> During the last OpenEmbedded developer meeting, it became clear that
> people are using the Yocto project/OpenEmbedded in spaces outside what
> we think of as traditional embedded. Lieu Ta is working on a
> presentation for the Linux Foundation Leadership Summit and we would
> like to collect as many "unusual" applications are possible from
> companies we can publicly acknowledge. Unusual is edge, containers,
> desktop, etc. Or even really interesting embedded applications :)
>
> Please drop me an email (off list is fine) with enough info for us to
> add you to a slide and acknowledge your work.
>
> Thanks,
>
> Philip
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] Information about non-traditional uses of the Yocto Project and OpenEmbedded

2019-02-27 Thread Philip Balister
During the last OpenEmbedded developer meeting, it became clear that
people are using the Yocto project/OpenEmbedded in spaces outside what
we think of as traditional embedded. Lieu Ta is working on a
presentation for the Linux Foundation Leadership Summit and we would
like to collect as many "unusual" applications are possible from
companies we can publicly acknowledge. Unusual is edge, containers,
desktop, etc. Or even really interesting embedded applications :)

Please drop me an email (off list is fine) with enough info for us to
add you to a slide and acknowledge your work.

Thanks,

Philip
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] bitbake.conf: Use -Og in DEBUG_OPTIMIZATION

2019-02-27 Thread Khem Raj
On Tue, Feb 26, 2019 at 11:19 PM Adrian Bunk  wrote:
>
> On Tue, Feb 26, 2019 at 11:04:20PM -0800, Khem Raj wrote:
> > -Og is for optimized debugging experience.
> > this makes this consistent across different compilers especially gcc and
> > clang, -O in clang is equal to -O2 where as in gcc its similar to -O1
> > so it was not giving consistent debugging experience across compilers
> >
> > Signed-off-by: Khem Raj 
> > ---
> >  meta/conf/bitbake.conf | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
> > index 1c5369ec98..758e89f126 100644
> > --- a/meta/conf/bitbake.conf
> > +++ b/meta/conf/bitbake.conf
> > @@ -610,7 +610,7 @@ DEBUG_FLAGS ?= "-g -feliminate-unused-debug-types 
> > ${DEBUG_PREFIX_MAP}"
> >
> >  # Disabled until the option works properly -feliminate-dwarf2-dups
> >  FULL_OPTIMIZATION = "-O2 -pipe ${DEBUG_FLAGS}"
> > -DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
> > +DEBUG_OPTIMIZATION = "-Og -fno-omit-frame-pointer ${DEBUG_FLAGS} -pipe"
> >  SELECTED_OPTIMIZATION = "${@d.getVar(oe.utils.vartrue('DEBUG_BUILD', 
> > 'DEBUG_OPTIMIZATION', 'FULL_OPTIMIZATION', d))}"
> >  SELECTED_OPTIMIZATION[vardeps] += "FULL_OPTIMIZATION DEBUG_OPTIMIZATION 
> > DEBUG_BUILD"
> >  BUILD_OPTIMIZATION = "${@oe.utils.vartrue('DEBUG_BUILD', '-O -g 
> > -feliminate-unused-debug-types -fno-omit-frame-pointer', '-O2', d)} -pipe"
> >^^
>
> Another place that might have to be updated.

I did not do this intentionally, since we do not control gcc on build
host, but rethinking it a bit I think it might be doable, if all hosts
we support use gcc 4.8 or newer
for gcc, which I see is the case of  centos7 uses gcc 4.8, so thats
the oldest supported distro we list.

>
> And the ref/dev-maunuals also need updating (they document -O as default).

yes, thats taken care of locally for next rev

>
> cu
> Adrian
>
> --
>
>"Is there not promise of rain?" Ling Tan asked suddenly out
> of the darkness. There had been need of rain for many days.
>"Only a promise," Lao Er said.
>Pearl S. Buck - Dragon Seed
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/2] libpcre: enable JIT

2019-02-27 Thread Ross Burton
PCRE has an optional JIT for performance.

Add a PACKAGECONFIG for this, enabled by default.

Also add a patch so that auto-detection of JIT availablity, which is required to
enable the JIT by default, works with out-of-tree builds.

Signed-off-by: Ross Burton 
---
 .../libpcre/libpcre/out-of-tree.patch  | 26 ++
 meta/recipes-support/libpcre/libpcre_8.43.bb   |  4 +++-
 2 files changed, 29 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-support/libpcre/libpcre/out-of-tree.patch

diff --git a/meta/recipes-support/libpcre/libpcre/out-of-tree.patch 
b/meta/recipes-support/libpcre/libpcre/out-of-tree.patch
new file mode 100644
index 000..687dcc034da
--- /dev/null
+++ b/meta/recipes-support/libpcre/libpcre/out-of-tree.patch
@@ -0,0 +1,26 @@
+In out-of-tree builds the #include fails because $srcdir isn't in the include 
path.  Set CPPFLAGS so that it is.
+
+Upstream-Status: Submitted [https://bugs.exim.org/show_bug.cgi?id=2379]
+Signed-off-by: Ross Burton 
+
+Index: configure.ac
+===
+--- a/configure.ac (revision 1749)
 b/configure.ac (working copy)
+@@ -159,6 +159,8 @@
+ 
+ if test "$enable_jit" = "auto"; then
+   AC_LANG(C)
++  SAVE_CPPFLAGS=$CPPFLAGS
++  CPPFLAGS=-I$srcdir
+   AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
+   #define SLJIT_CONFIG_AUTO 1
+   #include "sljit/sljitConfigInternal.h"
+@@ -165,6 +167,7 @@
+   #if (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED)
+   #error unsupported
+   #endif]])], enable_jit=yes, enable_jit=no)
++  CPPFLAGS=$SAVE_CPPFLAGS
+ fi
+ 
+ # Handle --disable-pcregrep-jit (enabled by default)
diff --git a/meta/recipes-support/libpcre/libpcre_8.43.bb 
b/meta/recipes-support/libpcre/libpcre_8.43.bb
index e28615a8ba7..08314efb9e4 100644
--- a/meta/recipes-support/libpcre/libpcre_8.43.bb
+++ b/meta/recipes-support/libpcre/libpcre_8.43.bb
@@ -9,6 +9,7 @@ LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENCE;md5=91bee59d1b327eb1599b4c673e2fb3d1"
 SRC_URI = "https://ftp.pcre.org/pub/pcre/pcre-${PV}.tar.bz2 \
file://fix-pcre-name-collision.patch \
+   file://out-of-tree.patch \
file://run-ptest \
file://Makefile \
 "
@@ -23,13 +24,14 @@ S = "${WORKDIR}/pcre-${PV}"
 PROVIDES += "pcre"
 DEPENDS += "bzip2 zlib"
 
-PACKAGECONFIG ??= "pcre8 unicode-properties"
+PACKAGECONFIG ??= "pcre8 unicode-properties jit"
 
 PACKAGECONFIG[pcre8] = "--enable-pcre8,--disable-pcre8"
 PACKAGECONFIG[pcre16] = "--enable-pcre16,--disable-pcre16"
 PACKAGECONFIG[pcre32] = "--enable-pcre32,--disable-pcre32"
 PACKAGECONFIG[pcretest-readline] = 
"--enable-pcretest-libreadline,--disable-pcretest-libreadline,readline,"
 PACKAGECONFIG[unicode-properties] = 
"--enable-unicode-properties,--disable-unicode-properties"
+PACKAGECONFIG[jit] = "--enable-jit=auto,--disable-jit"
 
 BINCONFIG = "${bindir}/pcre-config"
 
-- 
2.11.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/2] libpcre: recipe cleanup

2019-02-27 Thread Ross Burton
The following options are the defaults, so remove them:
--enable-newline-is-lf
--with-match-size=2
--with-match-limit=1000

We don't appear to need to pass -D_REENTRANT anymore (added with no explanation
to oe-classic in 2006).

Explicitly adding -lstdc++ doesn't appear to be required anymore (added for
PowerPC in 2008).

This recipe has always rebuilt the character tables but back in PCRE 4.4 (first
added to OE) a copy of the tables wasn't distributed with the tarball so this
was required.  Since 2007 the tarball includes the tables for ASCII and
regeneration is only required if we wish to use EBCDIC, which we do not. Drop
the patch adding CC_FOR_BUILD support and remove --enable-rebuild-chartables

Signed-off-by: Ross Burton 
---
 .../libpcre/libpcre/pcre-cross.patch   | 48 --
 meta/recipes-support/libpcre/libpcre_8.43.bb   | 17 +---
 2 files changed, 1 insertion(+), 64 deletions(-)
 delete mode 100644 meta/recipes-support/libpcre/libpcre/pcre-cross.patch

diff --git a/meta/recipes-support/libpcre/libpcre/pcre-cross.patch 
b/meta/recipes-support/libpcre/libpcre/pcre-cross.patch
deleted file mode 100644
index 83880f70983..000
--- a/meta/recipes-support/libpcre/libpcre/pcre-cross.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Upstream-Status: Pending
-
 pcre-8.32.orig/Makefile.am
-+++ pcre-8.32/Makefile.am
-@@ -197,8 +197,18 @@ bin_SCRIPTS = pcre-config
- 
-+CC_FOR_BUILD = @CC_FOR_BUILD@
-+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
-+CCLD_FOR_BUILD = @CCLD_FOR_BUILD@
-+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
-+
- if WITH_REBUILD_CHARTABLES
- 
- noinst_PROGRAMS += dftables
- dftables_SOURCES = dftables.c
-+dftables_LINK = $(CCLD_FOR_BUILD) -o $@
-+dftables_LDFLAGS = $(LDFLAGS_FOR_BUILD)
-+
-+dftables.o: $(srcdir)/dftables.c
-+  $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) -o $@ $(srcdir)/dftables.c
- 
- pcre_chartables.c: dftables$(EXEEXT)
-   ./dftables$(EXEEXT) $@
 pcre-8.32.orig/configure.ac
-+++ pcre-8.32/configure.ac
-@@ -72,6 +72,22 @@ then
-   fi
- fi
- 
-+if test x"$cross_compiling" = xyes; then
-+CC_FOR_BUILD="${CC_FOR_BUILD-gcc}"
-+CCLD_FOR_BUILD="${CCLD_FOR_BUILD-gcc}"
-+CFLAGS_FOR_BUILD="${CFLAGS_FOR_BUILD}"
-+LDFLAGS_FOR_BUILD="${LDFLAGS_FOR_BUILD}"
-+else
-+CC_FOR_BUILD="${CC_FOR_BUILD-\$(CC)}"
-+CCLD_FOR_BUILD="${CCLD_FOR_BUILD-\$(CCLD)}"
-+CFLAGS_FOR_BUILD="${CFLAGS_FOR_BUILD-\$(CFLAGS)}"
-+LDFLAGS_FOR_BUILD="${LDFLAGS_FOR_BUILD-\$(LDFLAGS)}"
-+fi
-+AC_ARG_VAR(CC_FOR_BUILD, [build system C compiler])
-+AC_ARG_VAR(CCLD_FOR_BUILD, [build system C linker frontend])
-+AC_ARG_VAR(CFLAGS_FOR_BUILD, [build system C compiler arguments])
-+AC_ARG_VAR(LDFLAGS_FOR_BUILD, [build system C linker frontend arguments])
-+
- # AC_PROG_CXX will return "g++" even if no c++ compiler is installed.
- # Check for that case, and just disable c++ code if g++ doesn't run.
- AC_LANG_PUSH(C++)
diff --git a/meta/recipes-support/libpcre/libpcre_8.43.bb 
b/meta/recipes-support/libpcre/libpcre_8.43.bb
index d54b3941976..e28615a8ba7 100644
--- a/meta/recipes-support/libpcre/libpcre_8.43.bb
+++ b/meta/recipes-support/libpcre/libpcre_8.43.bb
@@ -8,7 +8,6 @@ SECTION = "devel"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENCE;md5=91bee59d1b327eb1599b4c673e2fb3d1"
 SRC_URI = "https://ftp.pcre.org/pub/pcre/pcre-${PV}.tar.bz2 \
-   file://pcre-cross.patch \
file://fix-pcre-name-collision.patch \
file://run-ptest \
file://Makefile \
@@ -36,21 +35,7 @@ BINCONFIG = "${bindir}/pcre-config"
 
 inherit autotools binconfig-disabled ptest
 
-EXTRA_OECONF = "\
---enable-newline-is-lf \
---enable-rebuild-chartables \
---enable-utf \
---with-link-size=2 \
---with-match-limit=1000 \
-"
-
-# Set LINK_SIZE in BUILD_CFLAGS given that the autotools bbclass use it to
-# set CFLAGS_FOR_BUILD, required for the libpcre build.
-BUILD_CFLAGS =+ "-DLINK_SIZE=2 -I${B}"
-CFLAGS += "-D_REENTRANT"
-CXXFLAGS_append_powerpc = " -lstdc++"
-
-export CCLD_FOR_BUILD ="${BUILD_CCLD}"
+EXTRA_OECONF = "--enable-utf"
 
 PACKAGES =+ "libpcrecpp libpcreposix pcregrep pcregrep-doc pcretest 
pcretest-doc"
 
-- 
2.11.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH V2] gcc: Update to 8.3 latest on 8.x release

2019-02-27 Thread Khem Raj
Signed-off-by: Khem Raj 
---
v2: Add checksums and fix version

 meta/recipes-devtools/gcc/gcc-8.2.inc | 115 -
 ...bgcc-Add-knob-to-use-ldbl-128-on-ppc.patch | 465 --
 .../gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch   |  44 --
 meta/recipes-devtools/gcc/gcc-8.3.inc | 111 +
 ...0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch |  14 +-
 .../0002-gcc-poison-system-directories.patch} |  39 +-
 ...gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch} |  10 +-
 .../0004-64-bit-multilib-hack.patch}  |   6 +-
 .../0005-optional-libstdc.patch}  |  18 +-
 ...cc-disable-MASK_RELAX_PIC_CALLS-bit.patch} |  10 +-
 .../0007-COLLECT_GCC_OPTIONS.patch}   |   6 +-
 ...s.h-in-B-instead-of-S-and-t-oe-in-B.patch} |  10 +-
 .../0009-fortran-cross-compile-hack.patch}|   6 +-
 .../0010-cpp-honor-sysroot.patch} |   6 +-
 .../0011-MIPS64-Default-to-N64-ABI.patch} |  10 +-
 ...MIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch} |  28 +-
 ...cc-Fix-argument-list-too-long-error.patch} |   6 +-
 .../0014-Disable-sdt.patch}   |  16 +-
 .../0015-libtool.patch}   |   6 +-
 ...-fix-v4bx-to-linker-to-support-EABI.patch} |   6 +-
 ...config-files-from-B-instead-of-usin.patch} |  10 +-
 ...r-from-.la-which-usually-points-to-.patch} |   6 +-
 .../0019-export-CPP.patch}|   8 +-
 ...LIB_OSDIRNAMES-and-other-multilib-o.patch} |   6 +-
 ...-target-gcc-headers-can-be-included.patch} |  42 +-
 ...ld-with-disable-dependency-tracking.patch} |   6 +-
 ...-directory-during-relink-if-inst_pr.patch} |   6 +-
 ...R-replacement-instead-of-hardcoding.patch} |  11 +-
 ...5-aarch64-Add-support-for-musl-ldso.patch} |  10 +-
 ...fix-libcc1-s-install-path-and-rpath.patch} |   6 +-
 ...e-sysroot-support-for-nativesdk-gcc.patch} |   6 +-
 ...root-gcc-version-specific-dirs-with.patch} |   6 +-
 ...us-_FOR_BUILD-and-related-variables.patch} |  16 +-
 ...30-nios2-Define-MUSL_DYNAMIC_LINKER.patch} |  10 +-
 ...-to-link-commandline-for-musl-targe.patch} |  10 +-
 ...bgcc-Add-knob-to-use-ldbl-128-on-ppc.patch | 125 +
 ...sing-LDFLAGS-not-just-SHLIB_LDFLAGS.patch} |   6 +-
 ...s-for-__cpu_indicator_init-instead-.patch} |  19 +-
 .../0035-sync-gcc-stddef.h-with-musl.patch}   |  10 +-
 ...fault-in-precompiled-header-generat.patch} |   6 +-
 .../0037-Fix-for-testsuite-failure.patch} |   6 +-
 ...e-introduce-spe-commandline-options.patch} |   6 +-
 .../0039-riscv-Disable-multilib-for-OE.patch} |   6 +-
 ...powerpc64-Add-support-for-musl-ldso.patch} |  12 +-
 ...adian_8.2.bb => gcc-cross-canadian_8.3.bb} |   0
 .../{gcc-cross_8.2.bb => gcc-cross_8.3.bb}|   0
 ...cc-crosssdk_8.2.bb => gcc-crosssdk_8.3.bb} |   0
 ...{gcc-runtime_8.2.bb => gcc-runtime_8.3.bb} |   0
 ...anitizers_8.2.bb => gcc-sanitizers_8.3.bb} |   0
 .../{gcc-source_8.2.bb => gcc-source_8.3.bb}  |   0
 .../gcc/{gcc_8.2.bb => gcc_8.3.bb}|   0
 ...c-initial_8.2.bb => libgcc-initial_8.3.bb} |   0
 .../gcc/{libgcc_8.2.bb => libgcc_8.3.bb}  |   0
 ...{libgfortran_8.2.bb => libgfortran_8.3.bb} |   0
 54 files changed, 464 insertions(+), 823 deletions(-)
 delete mode 100644 meta/recipes-devtools/gcc/gcc-8.2.inc
 delete mode 100644 
meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch
 delete mode 100644 
meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-8.3.inc
 rename meta/recipes-devtools/gcc/{gcc-8.2 => 
gcc-8.3}/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch (79%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0003-gcc-poison-system-directories.patch => 
gcc-8.3/0002-gcc-poison-system-directories.patch} (85%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
 => gcc-8.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch} (93%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0006-64-bit-multilib-hack.patch => 
gcc-8.3/0004-64-bit-multilib-hack.patch} (97%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0007-optional-libstdc.patch => 
gcc-8.3/0005-optional-libstdc.patch} (92%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
 => gcc-8.3/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch} (89%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch => 
gcc-8.3/0007-COLLECT_GCC_OPTIONS.patch} (89%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
 => gcc-8.3/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch} (93%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0011-fortran-cross-compile-hack.patch => 
gcc-8.3/0009-fortran-cross-compile-hack.patch} (91%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0012-cpp-honor-sysroot.patch => 
gcc-8.3/0010-cpp-honor-sysroot.patch} (94%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch 
=> gcc-8.3/0011-MIPS64-Default-to-N64-ABI.patch} (85%)
 rename 

[OE-core] [PATCH] gcc: Update to 8.3 latest on 8.x release

2019-02-27 Thread Khem Raj
Signed-off-by: Khem Raj 
---
 meta/recipes-devtools/gcc/gcc-8.2.inc | 115 -
 ...bgcc-Add-knob-to-use-ldbl-128-on-ppc.patch | 465 --
 .../gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch   |  44 --
 meta/recipes-devtools/gcc/gcc-8.3.inc | 109 
 ...0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch |  14 +-
 .../0002-gcc-poison-system-directories.patch} |  39 +-
 ...gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch} |  10 +-
 .../0004-64-bit-multilib-hack.patch}  |   6 +-
 .../0005-optional-libstdc.patch}  |  18 +-
 ...cc-disable-MASK_RELAX_PIC_CALLS-bit.patch} |  10 +-
 .../0007-COLLECT_GCC_OPTIONS.patch}   |   6 +-
 ...s.h-in-B-instead-of-S-and-t-oe-in-B.patch} |  10 +-
 .../0009-fortran-cross-compile-hack.patch}|   6 +-
 .../0010-cpp-honor-sysroot.patch} |   6 +-
 .../0011-MIPS64-Default-to-N64-ABI.patch} |  10 +-
 ...MIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch} |  28 +-
 ...cc-Fix-argument-list-too-long-error.patch} |   6 +-
 .../0014-Disable-sdt.patch}   |  16 +-
 .../0015-libtool.patch}   |   6 +-
 ...-fix-v4bx-to-linker-to-support-EABI.patch} |   6 +-
 ...config-files-from-B-instead-of-usin.patch} |  10 +-
 ...r-from-.la-which-usually-points-to-.patch} |   6 +-
 .../0019-export-CPP.patch}|   8 +-
 ...LIB_OSDIRNAMES-and-other-multilib-o.patch} |   6 +-
 ...-target-gcc-headers-can-be-included.patch} |  42 +-
 ...ld-with-disable-dependency-tracking.patch} |   6 +-
 ...-directory-during-relink-if-inst_pr.patch} |   6 +-
 ...R-replacement-instead-of-hardcoding.patch} |  11 +-
 ...5-aarch64-Add-support-for-musl-ldso.patch} |  10 +-
 ...fix-libcc1-s-install-path-and-rpath.patch} |   6 +-
 ...e-sysroot-support-for-nativesdk-gcc.patch} |   6 +-
 ...root-gcc-version-specific-dirs-with.patch} |   6 +-
 ...us-_FOR_BUILD-and-related-variables.patch} |  16 +-
 ...30-nios2-Define-MUSL_DYNAMIC_LINKER.patch} |  10 +-
 ...-to-link-commandline-for-musl-targe.patch} |  10 +-
 ...bgcc-Add-knob-to-use-ldbl-128-on-ppc.patch | 125 +
 ...sing-LDFLAGS-not-just-SHLIB_LDFLAGS.patch} |   6 +-
 ...s-for-__cpu_indicator_init-instead-.patch} |  19 +-
 .../0035-sync-gcc-stddef.h-with-musl.patch}   |  10 +-
 ...fault-in-precompiled-header-generat.patch} |   6 +-
 .../0037-Fix-for-testsuite-failure.patch} |   6 +-
 ...e-introduce-spe-commandline-options.patch} |   6 +-
 .../0039-riscv-Disable-multilib-for-OE.patch} |   6 +-
 ...powerpc64-Add-support-for-musl-ldso.patch} |  12 +-
 ...adian_8.2.bb => gcc-cross-canadian_8.3.bb} |   0
 .../{gcc-cross_8.2.bb => gcc-cross_8.3.bb}|   0
 ...cc-crosssdk_8.2.bb => gcc-crosssdk_8.3.bb} |   0
 ...{gcc-runtime_8.2.bb => gcc-runtime_8.3.bb} |   0
 ...anitizers_8.2.bb => gcc-sanitizers_8.3.bb} |   0
 .../{gcc-source_8.2.bb => gcc-source_8.3.bb}  |   0
 .../gcc/{gcc_8.2.bb => gcc_8.3.bb}|   0
 ...c-initial_8.2.bb => libgcc-initial_8.3.bb} |   0
 .../gcc/{libgcc_8.2.bb => libgcc_8.3.bb}  |   0
 ...{libgfortran_8.2.bb => libgfortran_8.3.bb} |   0
 54 files changed, 462 insertions(+), 823 deletions(-)
 delete mode 100644 meta/recipes-devtools/gcc/gcc-8.2.inc
 delete mode 100644 
meta/recipes-devtools/gcc/gcc-8.2/0034-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch
 delete mode 100644 
meta/recipes-devtools/gcc/gcc-8.2/0041-ARC-fix-spec-gen.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-8.3.inc
 rename meta/recipes-devtools/gcc/{gcc-8.2 => 
gcc-8.3}/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch (79%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0003-gcc-poison-system-directories.patch => 
gcc-8.3/0002-gcc-poison-system-directories.patch} (85%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0005-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
 => gcc-8.3/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch} (93%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0006-64-bit-multilib-hack.patch => 
gcc-8.3/0004-64-bit-multilib-hack.patch} (97%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0007-optional-libstdc.patch => 
gcc-8.3/0005-optional-libstdc.patch} (92%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0008-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch
 => gcc-8.3/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch} (89%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0009-COLLECT_GCC_OPTIONS.patch => 
gcc-8.3/0007-COLLECT_GCC_OPTIONS.patch} (89%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0010-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
 => gcc-8.3/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch} (93%)
 rename 
meta/recipes-devtools/gcc/{gcc-8.2/0011-fortran-cross-compile-hack.patch => 
gcc-8.3/0009-fortran-cross-compile-hack.patch} (91%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0012-cpp-honor-sysroot.patch => 
gcc-8.3/0010-cpp-honor-sysroot.patch} (94%)
 rename meta/recipes-devtools/gcc/{gcc-8.2/0013-MIPS64-Default-to-N64-ABI.patch 
=> gcc-8.3/0011-MIPS64-Default-to-N64-ABI.patch} (85%)
 rename 

[OE-core] [PATCH 5/5] resulttool/report: Ensure ptest results are sorted

2019-02-27 Thread Richard Purdie
Signed-off-by: Richard Purdie 
---
 scripts/lib/resulttool/template/test_report_full_text.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/lib/resulttool/template/test_report_full_text.txt 
b/scripts/lib/resulttool/template/test_report_full_text.txt
index 5081594cf27..590f35c7dd8 100644
--- a/scripts/lib/resulttool/template/test_report_full_text.txt
+++ b/scripts/lib/resulttool/template/test_report_full_text.txt
@@ -16,7 +16,7 @@ PTest Result Summary
 
--
 {{ 'Recipe'.ljust(maxlen['ptest']) }} | {{ 'Passed'.ljust(maxlen['passed']) }} 
| {{ 'Failed'.ljust(maxlen['failed']) }} | {{ 
'Skipped'.ljust(maxlen['skipped']) }} | {{ 'Time(s)'.ljust(10) }}
 
--
-{% for ptest in ptests %}
+{% for ptest in ptests |sort %}
 {{ ptest.ljust(maxlen['ptest']) }} | {{ 
(ptests[ptest]['passed']|string).ljust(maxlen['passed']) }} | {{ 
(ptests[ptest]['failed']|string).ljust(maxlen['failed']) }} | {{ 
(ptests[ptest]['skipped']|string).ljust(maxlen['skipped']) }} | {{ 
(ptests[ptest]['duration']|string) }}
 {% endfor %}
 
--
-- 
2.20.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 4/5] resulttool/report: Ensure test suites with no results show up on the report

2019-02-27 Thread Richard Purdie
ptest suites with no results don't show up on the reports even though we have
a duration for them. Fix this so the fact they report no tests is visible.

Signed-off-by: Richard Purdie 
---
 scripts/lib/resulttool/report.py | 13 -
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/scripts/lib/resulttool/report.py b/scripts/lib/resulttool/report.py
index 5ffe262f89b..ff1b32c7706 100644
--- a/scripts/lib/resulttool/report.py
+++ b/scripts/lib/resulttool/report.py
@@ -30,6 +30,14 @@ class ResultsTextReport(object):
 
 def handle_ptest_result(self, k, status, result):
 if k == 'ptestresult.sections':
+# Ensure tests without any test results still show up on the report
+for suite in result['ptestresult.sections']:
+if suite not in self.ptests:
+self.ptests[suite] = {'passed': 0, 'failed': 0, 'skipped': 
0, 'duration' : '-', 'failed_testcases': []}
+if 'duration' in result['ptestresult.sections'][suite]:
+self.ptests[suite]['duration'] = 
result['ptestresult.sections'][suite]['duration']
+if 'timeout' in result['ptestresult.sections'][suite]:
+self.ptests[suite]['duration'] += " T"
 return
 try:
 _, suite, test = k.split(".", 2)
@@ -48,11 +56,6 @@ class ResultsTextReport(object):
 for tk in self.result_types:
 if status in self.result_types[tk]:
 self.ptests[suite][tk] += 1
-if 'ptestresult.sections' in result and suite in 
result['ptestresult.sections']:
-if 'duration' in result['ptestresult.sections'][suite]:
-self.ptests[suite]['duration'] = 
result['ptestresult.sections'][suite]['duration']
-if 'timeout' in result['ptestresult.sections'][suite]:
-self.ptests[suite]['duration'] += " T"
 
 def get_aggregated_test_result(self, logger, testresult):
 test_count_report = {'passed': 0, 'failed': 0, 'skipped': 0, 
'failed_testcases': []}
-- 
2.20.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 3/5] resulttool/report: Handle missing metadata sections more cleanly

2019-02-27 Thread Richard Purdie
Currently some older results files cause the code to give tracebacks.
Handle these missing sections more cleanly.

Signed-off-by: Richard Purdie 
---
 scripts/lib/resulttool/report.py | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/scripts/lib/resulttool/report.py b/scripts/lib/resulttool/report.py
index 2f5ea308e21..5ffe262f89b 100644
--- a/scripts/lib/resulttool/report.py
+++ b/scripts/lib/resulttool/report.py
@@ -31,9 +31,12 @@ class ResultsTextReport(object):
 def handle_ptest_result(self, k, status, result):
 if k == 'ptestresult.sections':
 return
-_, suite, test = k.split(".", 2)
+try:
+_, suite, test = k.split(".", 2)
+except ValueError:
+return
 # Handle 'glib-2.0'
-if suite not in result['ptestresult.sections']:
+if 'ptestresult.sections' in result and suite not in 
result['ptestresult.sections']:
 try:
 _, suite, suite1, test = k.split(".", 3)
 if suite + "." + suite1 in result['ptestresult.sections']:
@@ -45,7 +48,7 @@ class ResultsTextReport(object):
 for tk in self.result_types:
 if status in self.result_types[tk]:
 self.ptests[suite][tk] += 1
-if suite in result['ptestresult.sections']:
+if 'ptestresult.sections' in result and suite in 
result['ptestresult.sections']:
 if 'duration' in result['ptestresult.sections'][suite]:
 self.ptests[suite]['duration'] = 
result['ptestresult.sections'][suite]['duration']
 if 'timeout' in result['ptestresult.sections'][suite]:
-- 
2.20.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/5] resulttool/store: Handle results files for multiple revisions

2019-02-27 Thread Richard Purdie
Currently we cant store results if the results files span multiple
different build revisons. Remove this limitation by iterating.

Signed-off-by: Richard Purdie 
---
 scripts/lib/resulttool/store.py | 39 +++--
 1 file changed, 23 insertions(+), 16 deletions(-)

diff --git a/scripts/lib/resulttool/store.py b/scripts/lib/resulttool/store.py
index 6744fb3c05d..43e57b913c6 100644
--- a/scripts/lib/resulttool/store.py
+++ b/scripts/lib/resulttool/store.py
@@ -29,7 +29,7 @@ def store(args, logger):
 try:
 results = {}
 logger.info('Reading files from %s' % args.source)
-for root, dirs, files in os.walk(args.source):
+for root, dirs,  files in os.walk(args.source):
 for name in files:
 f = os.path.join(root, name)
 if name == "testresults.json":
@@ -38,7 +38,8 @@ def store(args, logger):
 dst = f.replace(args.source, tempdir + "/")
 os.makedirs(os.path.dirname(dst), exist_ok=True)
 shutil.copyfile(f, dst)
-resultutils.save_resultsdata(results, tempdir)
+
+revisions = {}
 
 if not results and not args.all:
 if args.allow_empty:
@@ -47,26 +48,32 @@ def store(args, logger):
 logger.error("No results found to store")
 return 1
 
-keywords = {'branch': None, 'commit': None, 'commit_count': None}
-
 # Find the branch/commit/commit_count and ensure they all match
 for suite in results:
 for result in results[suite]:
 config = 
results[suite][result]['configuration']['LAYERS']['meta']
-for k in keywords:
-if keywords[k] is None:
-keywords[k] = config.get(k)
-if config.get(k) != keywords[k]:
-logger.error("Mismatched source commit/branch/count: 
%s vs %s" % (config.get(k), keywords[k]))
-return 1
+revision = (config['commit'], config['branch'], 
str(config['commit_count']))
+if revision not in revisions:
+revisions[revision] = {}
+if suite not in revisions[revision]:
+revisions[revision][suite] = {}
+revisions[revision][suite] = results[suite][result]
+
+logger.info("Found %d revisions to store" % len(revisions))
+
+for r in revisions:
+results = revisions[r]
+keywords = {'commit': r[0], 'branch': r[1], "commit_count": r[2]}
+subprocess.check_call(["find", tempdir, "!", "-path", "./.git/*", 
"-delete"])
+resultutils.save_resultsdata(results, tempdir)
 
-logger.info('Storing test result into git repository %s' % 
args.git_dir)
+logger.info('Storing test result into git repository %s' % 
args.git_dir)
 
-gitarchive.gitarchive(tempdir, args.git_dir, False, False,
-  "Results of {branch}:{commit}", "branch: 
{branch}\ncommit: {commit}", "{branch}",
-  False, 
"{branch}/{commit_count}-g{commit}/{tag_number}",
-  'Test run #{tag_number} of {branch}:{commit}', 
'',
-  [], [], False, keywords, logger)
+gitarchive.gitarchive(tempdir, args.git_dir, False, False,
+  "Results of {branch}:{commit}", "branch: 
{branch}\ncommit: {commit}", "{branch}",
+  False, 
"{branch}/{commit_count}-g{commit}/{tag_number}",
+  'Test run #{tag_number} of 
{branch}:{commit}', '',
+  [], [], False, keywords, logger)
 
 finally:
 subprocess.check_call(["rm", "-rf",  tempdir])
-- 
2.20.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/5] openssl: Fix ptest test output translation

2019-02-27 Thread Richard Purdie
openssl-ptest was recording now results, despite most tests passing. Fix
so that the successes/skips/failures are reported correctly.

Signed-off-by: Richard Purdie 
---
 meta/recipes-connectivity/openssl/openssl/run-ptest | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-connectivity/openssl/openssl/run-ptest 
b/meta/recipes-connectivity/openssl/openssl/run-ptest
index 0a620dea74a..3fb22471f8c 100644
--- a/meta/recipes-connectivity/openssl/openssl/run-ptest
+++ b/meta/recipes-connectivity/openssl/openssl/run-ptest
@@ -9,4 +9,4 @@ export TOP=.
 # OPENSSL_ENGINES is relative from the test binaries
 export OPENSSL_ENGINES=../engines
 
-perl ./test/run_tests.pl $*
+perl ./test/run_tests.pl $* | perl -0pe 's#(.*) \.*.ok#PASS: \1#g; s#(.*) 
\.*.skipped: (.*)#SKIP: \1 (\2)#g; s#(.*) \.*.\nDubious#FAIL: \1#;'
-- 
2.20.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/3] python3: depend on qemu-native, not qemu-helper-native

2019-02-27 Thread Alexander Kanavin
qemu-helper-native would erroneously pull in the qemu system
parts, where we only want usermode parts for pgo.

Signed-off-by: Alexander Kanavin 
---
 meta/recipes-devtools/python/python3_3.7.2.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/python/python3_3.7.2.bb 
b/meta/recipes-devtools/python/python3_3.7.2.bb
index 4a1cbae8670..9626ee546b2 100644
--- a/meta/recipes-devtools/python/python3_3.7.2.bb
+++ b/meta/recipes-devtools/python/python3_3.7.2.bb
@@ -72,7 +72,7 @@ PACKAGECONFIG_class-native ??= "readline"
 PACKAGECONFIG_class-nativesdk ??= "readline"
 PACKAGECONFIG[readline] = ",,readline"
 # Use profile guided optimisation by running PyBench inside qemu-user
-PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-helper-native"
+PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native"
 PACKAGECONFIG[tk] = ",,tk"
 
 CPPFLAGS_append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
-- 
2.17.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 3/3] local.conf.sample: adjust the qemu configuration to refer to qemu-system-native

2019-02-27 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin 
---
 meta-poky/conf/local.conf.sample | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-poky/conf/local.conf.sample b/meta-poky/conf/local.conf.sample
index 267108d6850..9068e567dcd 100644
--- a/meta-poky/conf/local.conf.sample
+++ b/meta-poky/conf/local.conf.sample
@@ -241,7 +241,7 @@ BB_DISKMON_DIRS ??= "\
 # seen. The two lines below enable the SDL backend too. By default 
libsdl2-native will
 # be built, if you want to use your host's libSDL instead of the minimal 
libsdl built
 # by libsdl2-native then uncomment the ASSUME_PROVIDED line below.
-PACKAGECONFIG_append_pn-qemu-native = " sdl"
+PACKAGECONFIG_append_pn-qemu-system-native = " sdl"
 PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
 #ASSUME_PROVIDED += "libsdl2-native"
 
-- 
2.17.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/3] qemu: split the native version into usermode and system parts

2019-02-27 Thread Alexander Kanavin
The rationale is to streamline the overall build.

The system parts are only needed to run target images, and so can be
built towards the end of the build process. At the same time, the
system parts may need gtk+-native and mesa-native which add significantly
to the build time.

On the other hand, the usermode parts have almost no dependencies
and can be built quickly. They are needed at recipes build time to
run target binaries, and so are required quite early in the typical
build process.

Signed-off-by: Alexander Kanavin 
---
 meta/conf/distro/include/no-static-libs.inc   |  1 +
 .../qemu/qemu-helper-native_1.0.bb|  4 +-
 meta/recipes-devtools/qemu/qemu-native.inc| 17 
 .../qemu/qemu-native_3.1.0.bb |  9 ++
 .../qemu/qemu-system-native_3.1.0.bb  | 23 +
 meta/recipes-devtools/qemu/qemu-targets.inc   |  6 ++
 meta/recipes-devtools/qemu/qemu.inc   | 97 ---
 meta/recipes-devtools/qemu/qemu_3.1.0.bb  | 68 +++--
 8 files changed, 134 insertions(+), 91 deletions(-)
 create mode 100644 meta/recipes-devtools/qemu/qemu-native.inc
 create mode 100644 meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
 create mode 100644 meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb

diff --git a/meta/conf/distro/include/no-static-libs.inc 
b/meta/conf/distro/include/no-static-libs.inc
index cdc53916d07..712d858dc0d 100644
--- a/meta/conf/distro/include/no-static-libs.inc
+++ b/meta/conf/distro/include/no-static-libs.inc
@@ -4,6 +4,7 @@ DISABLE_STATIC ?= " --disable-static"
 DISABLE_STATIC_pn-qemu = ""
 DISABLE_STATIC_pn-qemu-native = ""
 DISABLE_STATIC_pn-nativesdk-qemu = ""
+DISABLE_STATIC_pn-qemu-system-native = ""
 # pciutils fails build
 DISABLE_STATIC_pn-pciutils = ""
 # libcap aborts on unrecognised option
diff --git a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb 
b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
index d86b1551762..d9d9da0fade 100644
--- a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
@@ -1,6 +1,6 @@
 SUMMARY = "Helper utilities needed by the runqemu script"
 LICENSE = "GPLv2"
-RDEPENDS_${PN} = "qemu-native"
+RDEPENDS_${PN} = "qemu-system-native"
 PR = "r1"
 
 LIC_FILES_CHKSUM = 
"file://${WORKDIR}/tunctl.c;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999"
@@ -20,5 +20,5 @@ do_install() {
install tunctl ${D}${bindir}/
 }
 
-DEPENDS += "qemu-native"
+DEPENDS += "qemu-system-native"
 addtask addto_recipe_sysroot after do_populate_sysroot before do_build
diff --git a/meta/recipes-devtools/qemu/qemu-native.inc 
b/meta/recipes-devtools/qemu/qemu-native.inc
new file mode 100644
index 000..4373ad9e63a
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-native.inc
@@ -0,0 +1,17 @@
+inherit native
+
+require qemu.inc
+
+SRC_URI_append = " \
+file://0012-fix-libcap-header-issue-on-some-distro.patch \
+
file://0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
+"
+EXTRA_OECONF_append = " --python=python2.7"
+
+EXTRA_OEMAKE_append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' 
LDFLAGS='${LDFLAGS}'"
+
+LDFLAGS_append = " -fuse-ld=bfd"
+
+do_install_append() {
+ ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
+}
diff --git a/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb 
b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
new file mode 100644
index 000..c8acff8e196
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
@@ -0,0 +1,9 @@
+BPN = "qemu"
+
+DEPENDS = "glib-2.0-native zlib-native"
+
+require qemu-native.inc
+
+EXTRA_OECONF_append = " --target-list=${@get_qemu_usermode_target_list(d)} 
--disable-tools --disable-blobs --disable-guest-agent"
+
+PACKAGECONFIG ??= ""
diff --git a/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb 
b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
new file mode 100644
index 000..5bf528bec12
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
@@ -0,0 +1,23 @@
+BPN = "qemu"
+
+require qemu-native.inc
+
+# As some of the files installed by qemu-native and qemu-system-native 
+# are the same, we depend on qemu-native to get the full installation set
+# and avoid file clashes
+DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native"
+
+EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
+
+PACKAGECONFIG ??= "fdt alsa kvm"
+
+# Handle distros such as CentOS 5 32-bit that do not have kvm support
+PACKAGECONFIG_remove = "${@'kvm' if not 
os.path.exists('/usr/include/linux/kvm.h') else ''}"
+
+do_install_append() {
+install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
+
+# The following is also installed by qemu-native
+rm -f ${D}${datadir}/qemu/trace-events-all
+rm -rf ${D}${datadir}/qemu/keymaps
+}
diff --git a/meta/recipes-devtools/qemu/qemu-targets.inc 
b/meta/recipes-devtools/qemu/qemu-targets.inc
index 

[OE-core] GO runtime crashes

2019-02-27 Thread Vincent Prince
Hello everyone,

I'm trying to add node_exporter from Prometheus project to an Intel x86-64
machine.
I made the following recipe:

https://github.com/nefethael/meta-random/blob/master/recipes-connectivity/prometheus/go-nodeexporter_0.18.0.bb

node_exporter is crashing with multiple different runtime errors, so I
raised an issue on github:
https://github.com/prometheus/node_exporter/issues/1244

I just tested node_exporter binary without cross-compiling it with Yocto
and it does not crash. So now I'm stuck with it and nobody seems to
complain about golang on ML, so if there are some GO experts here to help
me on that,

Thanks,
Vincent
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 1/3] qemu: split the native version into usermode and system parts

2019-02-27 Thread Khem Raj
On Wed, Feb 27, 2019 at 5:50 AM Alexander Kanavin
 wrote:
>
> The rationale is to streamline the overall build.
>
> The system parts are only needed to run target images, and so can be
> built towards the end of the build process. At the same time, the
> system parts need gtk+-native and mesa-native which add significantly
> to the build time.
>
> On the other hand, the usermode parts have almost no dependencies
> and can be built quickly. They are needed at recipes build time to
> run target binaries, and so are required quite early in the typical
> build process.
>

this is really good patch for non-qemu machines.

> Signed-off-by: Alexander Kanavin 
> ---
>  meta/conf/distro/include/no-static-libs.inc   |  1 +
>  .../qemu/qemu-helper-native_1.0.bb|  4 +-
>  meta/recipes-devtools/qemu/qemu-native.inc| 17 
>  .../qemu/qemu-native_3.1.0.bb |  9 ++
>  .../qemu/qemu-system-native_3.1.0.bb  | 23 +
>  meta/recipes-devtools/qemu/qemu-targets.inc   |  6 ++
>  meta/recipes-devtools/qemu/qemu.inc   | 97 ---
>  meta/recipes-devtools/qemu/qemu_3.1.0.bb  | 68 +++--
>  8 files changed, 134 insertions(+), 91 deletions(-)
>  create mode 100644 meta/recipes-devtools/qemu/qemu-native.inc
>  create mode 100644 meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
>  create mode 100644 meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
>
> diff --git a/meta/conf/distro/include/no-static-libs.inc 
> b/meta/conf/distro/include/no-static-libs.inc
> index cdc53916d07..712d858dc0d 100644
> --- a/meta/conf/distro/include/no-static-libs.inc
> +++ b/meta/conf/distro/include/no-static-libs.inc
> @@ -4,6 +4,7 @@ DISABLE_STATIC ?= " --disable-static"
>  DISABLE_STATIC_pn-qemu = ""
>  DISABLE_STATIC_pn-qemu-native = ""
>  DISABLE_STATIC_pn-nativesdk-qemu = ""
> +DISABLE_STATIC_pn-qemu-system-native = ""
>  # pciutils fails build
>  DISABLE_STATIC_pn-pciutils = ""
>  # libcap aborts on unrecognised option
> diff --git a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb 
> b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
> index d86b1551762..d9d9da0fade 100644
> --- a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
> @@ -1,6 +1,6 @@
>  SUMMARY = "Helper utilities needed by the runqemu script"
>  LICENSE = "GPLv2"
> -RDEPENDS_${PN} = "qemu-native"
> +RDEPENDS_${PN} = "qemu-system-native"
>  PR = "r1"
>
>  LIC_FILES_CHKSUM = 
> "file://${WORKDIR}/tunctl.c;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999"
> @@ -20,5 +20,5 @@ do_install() {
> install tunctl ${D}${bindir}/
>  }
>
> -DEPENDS += "qemu-native"
> +DEPENDS += "qemu-system-native"
>  addtask addto_recipe_sysroot after do_populate_sysroot before do_build
> diff --git a/meta/recipes-devtools/qemu/qemu-native.inc 
> b/meta/recipes-devtools/qemu/qemu-native.inc
> new file mode 100644
> index 000..4373ad9e63a
> --- /dev/null
> +++ b/meta/recipes-devtools/qemu/qemu-native.inc
> @@ -0,0 +1,17 @@
> +inherit native
> +
> +require qemu.inc
> +
> +SRC_URI_append = " \
> +file://0012-fix-libcap-header-issue-on-some-distro.patch \
> +
> file://0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
> +"
> +EXTRA_OECONF_append = " --python=python2.7"
> +
> +EXTRA_OEMAKE_append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' 
> LDFLAGS='${LDFLAGS}'"
> +
> +LDFLAGS_append = " -fuse-ld=bfd"
> +
> +do_install_append() {
> + ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', 
> d)}
> +}
> diff --git a/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb 
> b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
> new file mode 100644
> index 000..c8acff8e196
> --- /dev/null
> +++ b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
> @@ -0,0 +1,9 @@
> +BPN = "qemu"
> +
> +DEPENDS = "glib-2.0-native zlib-native"
> +
> +require qemu-native.inc
> +
> +EXTRA_OECONF_append = " --target-list=${@get_qemu_usermode_target_list(d)} 
> --disable-tools --disable-blobs --disable-guest-agent"
> +
> +PACKAGECONFIG ??= ""
> diff --git a/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb 
> b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
> new file mode 100644
> index 000..95369d7f6a2
> --- /dev/null
> +++ b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
> @@ -0,0 +1,23 @@
> +BPN = "qemu"
> +
> +require qemu-native.inc
> +
> +# As some of the files installed by qemu-native and qemu-system-native
> +# are the same, we depend on qemu-native to get the full installation set
> +# and avoid file clashes
> +DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native"
> +
> +EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
> +
> +PACKAGECONFIG ??= "fdt alsa kvm virglrenderer glx"
> +
> +# Handle distros such as CentOS 5 32-bit that do not have kvm support
> +PACKAGECONFIG_remove = "${@'kvm' if not 
> 

[OE-core] [v2][PATCH] glibc: fix multilib file install conflicts

2019-02-27 Thread C.r. Guo
From: Chunrong Guo 

Leaving bits/procfs-id.h,bits/procfs.h,bits/shmlba.h out of being multilibbed 
introduced a problem in building the SDK for arm64:
Error: Transaction check error:
file /usr/include/bits/procfs-id.h conflicts between attempted installs of 
lib64-libc6-dev-2.29-r0.aarch64 and libc6-dev-2.29-r0.armv7ahf_neon
file /usr/include/bits/procfs.h conflicts between attempted installs of 
lib64-libc6-dev-2.29-r0.aarch64 and libc6-dev-2.29-r0.armv7ahf_neon
file /usr/include/bits/shmlba.h conflicts between attempted installs of 
lib64-libc6-dev-2.29-r0.aarch64 and libc6-dev-2.29-r0.armv7ahf_neon

Signed-off-by: Chunrong Guo 
---
 meta/recipes-core/glibc/glibc-package.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-core/glibc/glibc-package.inc 
b/meta/recipes-core/glibc/glibc-package.inc
index b925961..be7fe24 100644
--- a/meta/recipes-core/glibc/glibc-package.inc
+++ b/meta/recipes-core/glibc/glibc-package.inc
@@ -149,6 +149,7 @@ do_install_armmultilib () {
oe_multilib_header bits/local_lim.h bits/mman.h bits/msq.h 
bits/pthreadtypes.h bits/pthreadtypes-arch.h  bits/sem.h  bits/semaphore.h 
bits/setjmp.h
oe_multilib_header bits/shm.h bits/sigstack.h bits/stat.h bits/statfs.h 
bits/typesizes.h
 
+oe_multilib_header bits/procfs-id.h bits/procfs.h bits/shmlba.h
oe_multilib_header fpu_control.h gnu/lib-names.h gnu/stubs.h ieee754.h
 
oe_multilib_header sys/elf.h sys/procfs.h sys/ptrace.h sys/ucontext.h 
sys/user.h
-- 
2.7.4

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] openssl: drop Python 2.x dependency in -ptest

2019-02-27 Thread Alexander Kanavin
It is only needed by 95-test_external_pyca_data which is
actually skipped on the target.

[YOCTO #13204]

Signed-off-by: Alexander Kanavin 
---
 meta/recipes-connectivity/openssl/openssl_1.1.1a.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-connectivity/openssl/openssl_1.1.1a.bb 
b/meta/recipes-connectivity/openssl/openssl_1.1.1a.bb
index 9f6e26bcf53..02fd66910ea 100644
--- a/meta/recipes-connectivity/openssl/openssl_1.1.1a.bb
+++ b/meta/recipes-connectivity/openssl/openssl_1.1.1a.bb
@@ -198,7 +198,7 @@ CONFFILES_openssl-conf = "${sysconfdir}/ssl/openssl.cnf"
 
 RRECOMMENDS_libcrypto += "openssl-conf"
 RDEPENDS_${PN}-misc = "perl"
-RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash python"
+RDEPENDS_${PN}-ptest += "openssl-bin perl perl-modules bash"
 
 RPROVIDES_openssl-conf = "openssl10-conf"
 RREPLACES_openssl-conf = "openssl10-conf"
-- 
2.17.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 2/3] python3: depend on qemu-native, not qemu-helper-native

2019-02-27 Thread Alexander Kanavin
qemu-helper-native would erroneously pull in the qemu system
parts, where we only want usermode parts for pgo.

Signed-off-by: Alexander Kanavin 
---
 meta/recipes-devtools/python/python3_3.7.2.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-devtools/python/python3_3.7.2.bb 
b/meta/recipes-devtools/python/python3_3.7.2.bb
index 4a1cbae8670..9626ee546b2 100644
--- a/meta/recipes-devtools/python/python3_3.7.2.bb
+++ b/meta/recipes-devtools/python/python3_3.7.2.bb
@@ -72,7 +72,7 @@ PACKAGECONFIG_class-native ??= "readline"
 PACKAGECONFIG_class-nativesdk ??= "readline"
 PACKAGECONFIG[readline] = ",,readline"
 # Use profile guided optimisation by running PyBench inside qemu-user
-PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-helper-native"
+PACKAGECONFIG[pgo] = "--enable-optimizations,,qemu-native"
 PACKAGECONFIG[tk] = ",,tk"
 
 CPPFLAGS_append = " -I${STAGING_INCDIR}/ncursesw -I${STAGING_INCDIR}/uuid"
-- 
2.17.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 1/3] qemu: split the native version into usermode and system parts

2019-02-27 Thread Alexander Kanavin
The rationale is to streamline the overall build.

The system parts are only needed to run target images, and so can be
built towards the end of the build process. At the same time, the
system parts need gtk+-native and mesa-native which add significantly
to the build time.

On the other hand, the usermode parts have almost no dependencies
and can be built quickly. They are needed at recipes build time to
run target binaries, and so are required quite early in the typical
build process.

Signed-off-by: Alexander Kanavin 
---
 meta/conf/distro/include/no-static-libs.inc   |  1 +
 .../qemu/qemu-helper-native_1.0.bb|  4 +-
 meta/recipes-devtools/qemu/qemu-native.inc| 17 
 .../qemu/qemu-native_3.1.0.bb |  9 ++
 .../qemu/qemu-system-native_3.1.0.bb  | 23 +
 meta/recipes-devtools/qemu/qemu-targets.inc   |  6 ++
 meta/recipes-devtools/qemu/qemu.inc   | 97 ---
 meta/recipes-devtools/qemu/qemu_3.1.0.bb  | 68 +++--
 8 files changed, 134 insertions(+), 91 deletions(-)
 create mode 100644 meta/recipes-devtools/qemu/qemu-native.inc
 create mode 100644 meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
 create mode 100644 meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb

diff --git a/meta/conf/distro/include/no-static-libs.inc 
b/meta/conf/distro/include/no-static-libs.inc
index cdc53916d07..712d858dc0d 100644
--- a/meta/conf/distro/include/no-static-libs.inc
+++ b/meta/conf/distro/include/no-static-libs.inc
@@ -4,6 +4,7 @@ DISABLE_STATIC ?= " --disable-static"
 DISABLE_STATIC_pn-qemu = ""
 DISABLE_STATIC_pn-qemu-native = ""
 DISABLE_STATIC_pn-nativesdk-qemu = ""
+DISABLE_STATIC_pn-qemu-system-native = ""
 # pciutils fails build
 DISABLE_STATIC_pn-pciutils = ""
 # libcap aborts on unrecognised option
diff --git a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb 
b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
index d86b1551762..d9d9da0fade 100644
--- a/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
@@ -1,6 +1,6 @@
 SUMMARY = "Helper utilities needed by the runqemu script"
 LICENSE = "GPLv2"
-RDEPENDS_${PN} = "qemu-native"
+RDEPENDS_${PN} = "qemu-system-native"
 PR = "r1"
 
 LIC_FILES_CHKSUM = 
"file://${WORKDIR}/tunctl.c;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999"
@@ -20,5 +20,5 @@ do_install() {
install tunctl ${D}${bindir}/
 }
 
-DEPENDS += "qemu-native"
+DEPENDS += "qemu-system-native"
 addtask addto_recipe_sysroot after do_populate_sysroot before do_build
diff --git a/meta/recipes-devtools/qemu/qemu-native.inc 
b/meta/recipes-devtools/qemu/qemu-native.inc
new file mode 100644
index 000..4373ad9e63a
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-native.inc
@@ -0,0 +1,17 @@
+inherit native
+
+require qemu.inc
+
+SRC_URI_append = " \
+file://0012-fix-libcap-header-issue-on-some-distro.patch \
+
file://0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch \
+"
+EXTRA_OECONF_append = " --python=python2.7"
+
+EXTRA_OEMAKE_append = " LD='${LD}' AR='${AR}' OBJCOPY='${OBJCOPY}' 
LDFLAGS='${LDFLAGS}'"
+
+LDFLAGS_append = " -fuse-ld=bfd"
+
+do_install_append() {
+ ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
+}
diff --git a/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb 
b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
new file mode 100644
index 000..c8acff8e196
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb
@@ -0,0 +1,9 @@
+BPN = "qemu"
+
+DEPENDS = "glib-2.0-native zlib-native"
+
+require qemu-native.inc
+
+EXTRA_OECONF_append = " --target-list=${@get_qemu_usermode_target_list(d)} 
--disable-tools --disable-blobs --disable-guest-agent"
+
+PACKAGECONFIG ??= ""
diff --git a/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb 
b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
new file mode 100644
index 000..95369d7f6a2
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb
@@ -0,0 +1,23 @@
+BPN = "qemu"
+
+require qemu-native.inc
+
+# As some of the files installed by qemu-native and qemu-system-native 
+# are the same, we depend on qemu-native to get the full installation set
+# and avoid file clashes
+DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native"
+
+EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
+
+PACKAGECONFIG ??= "fdt alsa kvm virglrenderer glx"
+
+# Handle distros such as CentOS 5 32-bit that do not have kvm support
+PACKAGECONFIG_remove = "${@'kvm' if not 
os.path.exists('/usr/include/linux/kvm.h') else ''}"
+
+do_install_append() {
+install -Dm 0755 ${WORKDIR}/powerpc_rom.bin ${D}${datadir}/qemu
+
+# The following is also installed by qemu-native
+rm -f ${D}${datadir}/qemu/trace-events-all
+rm -rf ${D}${datadir}/qemu/keymaps
+}
diff --git a/meta/recipes-devtools/qemu/qemu-targets.inc 

[OE-core] [PATCH 3/3] local.conf.sample: adjust the qemu configuration to refer to qemu-system-native

2019-02-27 Thread Alexander Kanavin
Signed-off-by: Alexander Kanavin 
---
 meta-poky/conf/local.conf.sample | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-poky/conf/local.conf.sample b/meta-poky/conf/local.conf.sample
index 98ff5c23256..eee65b5875a 100644
--- a/meta-poky/conf/local.conf.sample
+++ b/meta-poky/conf/local.conf.sample
@@ -239,7 +239,7 @@ BB_DISKMON_DIRS ??= "\
 #
 # By default qemu will build with a builtin VNC server where graphical output 
can be
 # seen. The two lines below enable the Gtk UI frontend.
-PACKAGECONFIG_append_pn-qemu-native = " gtk+"
+PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"
 PACKAGECONFIG_append_pn-nativesdk-qemu = " gtk+"
 
 # CONF_VERSION is increased each time build/conf/ changes incompatibly and is 
used to
-- 
2.17.1

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] util-linux: fix multilib qa issue

2019-02-27 Thread kai.kang
From: Kai Kang 

Update RCONFLICTS and RREPLACES for util-linux to fix 'multilib' qa issue:

| ERROR: lib32-util-linux-2.32.1-r0 do_package: QA Issue: lib32-util-linux
  package lib32-util-linux-blkid - suspicious values 'e2fsprogs-blkid' in
  RREPLACES [multilib]
| ERROR: lib32-util-linux-2.32.1-r0 do_package: QA Issue: lib32-util-linux
  package lib32-util-linux-blkid - suspicious values 'e2fsprogs-blkid' in
  RCONFLICTS [multilib]

Signed-off-by: Kai Kang 
---
 meta/recipes-core/util-linux/util-linux.inc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/util-linux/util-linux.inc 
b/meta/recipes-core/util-linux/util-linux.inc
index e30e6331fd..cce684f280 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -133,8 +133,8 @@ FILES_${PN}-pylibmount = 
"${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.so \
   ${PYTHON_SITEPACKAGES_DIR}/libmount/__pycache__/*"
 
 # Util-linux' blkid replaces the e2fsprogs one
-RCONFLICTS_${PN}-blkid = "e2fsprogs-blkid"
-RREPLACES_${PN}-blkid = "e2fsprogs-blkid"
+RCONFLICTS_${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
+RREPLACES_${PN}-blkid = "${MLPREFIX}e2fsprogs-blkid"
 
 RRECOMMENDS_${PN}_class-native = ""
 RRECOMMENDS_${PN}_class-nativesdk = ""
-- 
2.20.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH v2] devtool: deploy-target: support "unsafe" symlinks

2019-02-27 Thread Richard Purdie
On Wed, 2019-02-27 at 09:10 +, Olaf Mandel wrote:
> The bosybox version of tar in sumo considers symlink targets that
> start
> with / or with ../ to be unsafe and refuses to unpack them unless the
> EXTRACT_UNSAFE_SYMLINKS environment variable is set to 1.
> 
> As even many core packages legitimately contain such links (e.g.
> coreutils-locale-*, dropbear, eudev, initscripts, kmod, ...), add the
> environment variable to the remote script.
> ---
>  scripts/lib/devtool/deploy.py | 5 +
>  1 file changed, 5 insertions(+)

I'm tempted to suggest we backport changes to busybox in sumo to
address this...

Cheers,

Richard

> 

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH v2] devtool: deploy-target: support "unsafe" symlinks

2019-02-27 Thread Olaf Mandel
The bosybox version of tar in sumo considers symlink targets that start
with / or with ../ to be unsafe and refuses to unpack them unless the
EXTRACT_UNSAFE_SYMLINKS environment variable is set to 1.

As even many core packages legitimately contain such links (e.g.
coreutils-locale-*, dropbear, eudev, initscripts, kmod, ...), add the
environment variable to the remote script.
---
 scripts/lib/devtool/deploy.py | 5 +
 1 file changed, 5 insertions(+)

diff --git a/scripts/lib/devtool/deploy.py b/scripts/lib/devtool/deploy.py
index f345f31b7b..dc9b34e0ee 100644
--- a/scripts/lib/devtool/deploy.py
+++ b/scripts/lib/devtool/deploy.py
@@ -114,6 +114,11 @@ def _prepare_remote_script(deploy, verbose=False, 
dryrun=False, undeployall=Fals
 lines.append('rm $3')
 lines.append('mkdir -p `dirname $manifest`')
 lines.append('mkdir -p $2')
+# Busybox tar v1.28.x (plus v1.27.2 with the CVE-2011-5325 patch)
+# requires this env variable. The first release without this issue
+# is thud.
+# FIXME Remove once sumo goes out of support
+lines.append('export EXTRACT_UNSAFE_SYMLINKS=1')
 if verbose:
 lines.append('tar xv -C $2 -f - | tee $manifest')
 else:
-- 
2.11.0

-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core