Re: [OE-core] [PATCH] Perl: Use CC version not $Config(gccversion)

2015-10-24 Thread Jeremy Puhlman
On Oct 24, 2015 5:15 AM, "Jens Rehsack"  wrote:
>
>
> > Am 23.10.2015 um 19:18 schrieb Jeremy Puhlman :
> >
> > Get version data from querying $CC rather then
> > $Config(gccversion) which comes from running version of
> > perl. Since perl-native is not likely compiled by gcc
> > 5 at this point, it will never trigger the required
> > fixes for gcc 5.
> >
> > [YOCTO #8367]
> >
> > Signed-off-by: Jeremy Puhlman 
> > ---
> > .../perl/perl/perl-errno-generation-gcc5.patch | 23
++
> > meta/recipes-devtools/perl/perl_5.22.0.bb  |  1 +
> > 2 files changed, 24 insertions(+)
> > create mode 100644
meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> >
> > diff --git
a/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> > new file mode 100644
> > index 000..efbc55d
> > --- /dev/null
> > +++ b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> > @@ -0,0 +1,23 @@
> > +Upstream-Status:Inappropriate [embedded specific]
>
> Did you ask p5-porters?
>
> I strongly suggest to open an RT for 2 reasons:
>
> 1) Let the people know that I'm not the only one encountering problems
with the way they deal situation

Yeah we have been having fun cross compiling perl since 2000, lots of fun.

> 2) Those tickets enlighten over time.
>
> Cross-compiling is not restricted to embedded.
>
> The patch self looks more than sane and I'm happy to support it when
reported (so tell me the ticket number or put me on CC when creating the
ticket).

Is there a specific mailing list?
> > +The upstream code assumes that the compiler version used to compiler
miniperl/perl-native
> > +is the same as the one being used to build the perl binary. Since most
people are not running
> > +systems with gcc 5, it is unlikely that it will work on any supported
host. Switch out gccversion
> > +for the version extracted from $CC --version.
> > +
> > +--- perl-5.22.0/ext/Errno/Errno_pm.PL2015-10-19
18:01:20.622143786 -0400
> >  perl-5.22.0-fixed/ext/Errno/Errno_pm.PL  2015-10-19
17:50:35.662137367 -0400
> > +@@ -224,9 +224,12 @@
> > +
> > + {   # BeOS (support now removed) did not enter this block
> > + # invoke CPP and read the output
> > ++my $compiler = $ENV{'CC'};
> > ++my $compiler_out = `$compiler --version`;
> > ++my @compiler_version = split / /,$compiler_out;
> > +
> > + my $inhibit_linemarkers = '';
> > +-if ($Config{gccversion} =~ /\A(\d+)\./ and $1 >= 5) {
> > ++if (@compiler_version[2] =~ /\A(\d+)\./ and $1 >= 5) {
> > + # GCC 5.0 interleaves expanded macros with line numbers
breaking
> > + # each line into multiple lines. RT#123784
> > + $inhibit_linemarkers = ' -P';
> > diff --git a/meta/recipes-devtools/perl/perl_5.22.0.bb
b/meta/recipes-devtools/perl/perl_5.22.0.bb
> > index 3ce7849..66e074d 100644
> > --- a/meta/recipes-devtools/perl/perl_5.22.0.bb
> > +++ b/meta/recipes-devtools/perl/perl_5.22.0.bb
> > @@ -62,6 +62,7 @@ SRC_URI += " \
> > file://ext-ODBM_File-hints-linux.pl-link-libgdbm_compat.patch \
> >
 file://ext-ODBM_File-t-odbm.t-fix-the-path-of-dbmt_common.p.patch \
> > file://perl-PathTools-don-t-filter-out-blib-from-INC.patch \
> > +file://perl-errno-generation-gcc5.patch \
> > "
> >
> > # Fix test case issues
> > --
> > 2.6.2
>
> Cheers
> --
> Jens Rehsack - rehs...@gmail.com
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] How to handle mesa customization in BSP layers

2015-10-24 Thread Trevor Woerner
On 10/20/15 05:37, Koen Kooi wrote:
>> Op 20 okt. 2015, om 11:32 heeft Nicolas Dechesne 
>>  het volgende geschreven:
>>
>>
>> The issue is that mesa is arch specific, not machine specific. So if
>> you start mixing machines from the same arch, we are getting
>> unexpected/wrong rebuilds.
> In this specific case I think we should enable freedreno for armv7/armv8 in 
> OE-core, but the problem remains for other recipes like this.

Are you suggesting that every armv7 device should have their mesa tuned
for freedreno and freedreno added to their filesystem? That seems quite
overly-broad!

On the surface[1] it would seem as though the decisions as to how one
builds mesa and which graphics solution to install is more similar to
the decision as to which DEFAULTTUNE to use, rather than which
architecture is involved?







[1] which is my way of saying "I don't have the experience of actually
having done this, unlike you people" ;-)
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH] toasterconf.json: Set default distro to nodistro

2015-10-24 Thread Khem Raj
This makes it self-sufficient with OE-Core
Generate ext4 instead of ext3, most of Qemu
targets in oe-core now use ext4

Signed-off-by: Khem Raj 
---
 meta/conf/toasterconf.json | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/conf/toasterconf.json b/meta/conf/toasterconf.json
index c8e42ef..1ee6d29 100644
--- a/meta/conf/toasterconf.json
+++ b/meta/conf/toasterconf.json
@@ -1,8 +1,8 @@
 {
 "config": {
 "MACHINE"  : "qemux86",
-"DISTRO"   : "poky",
-"IMAGE_FSTYPES": "ext3 jffs2 tar.bz2",
+"DISTRO"   : "nodistro",
+"IMAGE_FSTYPES": "ext4 jffs2 tar.bz2",
 "IMAGE_INSTALL_append": "",
 "PACKAGE_CLASSES": "package_rpm",
 "SDKMACHINE"   : "x86_64"
-- 
2.6.2

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


Re: [OE-core] [PATCH] Perl: Use CC version not $Config(gccversion)

2015-10-24 Thread Jens Rehsack

> Am 23.10.2015 um 19:18 schrieb Jeremy Puhlman :
> 
> Get version data from querying $CC rather then
> $Config(gccversion) which comes from running version of
> perl. Since perl-native is not likely compiled by gcc
> 5 at this point, it will never trigger the required
> fixes for gcc 5.
> 
> [YOCTO #8367]
> 
> Signed-off-by: Jeremy Puhlman 
> ---
> .../perl/perl/perl-errno-generation-gcc5.patch | 23 ++
> meta/recipes-devtools/perl/perl_5.22.0.bb  |  1 +
> 2 files changed, 24 insertions(+)
> create mode 100644 
> meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> 
> diff --git a/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch 
> b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> new file mode 100644
> index 000..efbc55d
> --- /dev/null
> +++ b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch
> @@ -0,0 +1,23 @@
> +Upstream-Status:Inappropriate [embedded specific]

Did you ask p5-porters?

I strongly suggest to open an RT for 2 reasons:

1) Let the people know that I'm not the only one encountering problems with the 
way they deal situations
2) Those tickets enlighten over time.

Cross-compiling is not restricted to embedded.

The patch self looks more than sane and I'm happy to support it when reported 
(so tell me the ticket number or put me on CC when creating the ticket).

> +The upstream code assumes that the compiler version used to compiler 
> miniperl/perl-native
> +is the same as the one being used to build the perl binary. Since most 
> people are not running
> +systems with gcc 5, it is unlikely that it will work on any supported host. 
> Switch out gccversion
> +for the version extracted from $CC --version.
> +
> +--- perl-5.22.0/ext/Errno/Errno_pm.PL2015-10-19 18:01:20.622143786 
> -0400
>  perl-5.22.0-fixed/ext/Errno/Errno_pm.PL  2015-10-19 17:50:35.662137367 
> -0400
> +@@ -224,9 +224,12 @@
> + 
> + {   # BeOS (support now removed) did not enter this block
> + # invoke CPP and read the output
> ++my $compiler = $ENV{'CC'};
> ++my $compiler_out = `$compiler --version`;
> ++my @compiler_version = split / /,$compiler_out; 
> + 
> + my $inhibit_linemarkers = '';
> +-if ($Config{gccversion} =~ /\A(\d+)\./ and $1 >= 5) {
> ++if (@compiler_version[2] =~ /\A(\d+)\./ and $1 >= 5) {
> + # GCC 5.0 interleaves expanded macros with line numbers breaking
> + # each line into multiple lines. RT#123784
> + $inhibit_linemarkers = ' -P';
> diff --git a/meta/recipes-devtools/perl/perl_5.22.0.bb 
> b/meta/recipes-devtools/perl/perl_5.22.0.bb
> index 3ce7849..66e074d 100644
> --- a/meta/recipes-devtools/perl/perl_5.22.0.bb
> +++ b/meta/recipes-devtools/perl/perl_5.22.0.bb
> @@ -62,6 +62,7 @@ SRC_URI += " \
> file://ext-ODBM_File-hints-linux.pl-link-libgdbm_compat.patch \
> file://ext-ODBM_File-t-odbm.t-fix-the-path-of-dbmt_common.p.patch \
> file://perl-PathTools-don-t-filter-out-blib-from-INC.patch \
> +file://perl-errno-generation-gcc5.patch \
> "
> 
> # Fix test case issues
> -- 
> 2.6.2

Cheers
-- 
Jens Rehsack - rehs...@gmail.com

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


Re: [OE-core] [PATCH 1/1] useradd-staticids.bbclass: Do not require trailing colons

2015-10-24 Thread Peter Kjellerstedt
I changed it to:

def list_extend(iterable, length, obj = None):
"""Ensure that iterable is the specified length by extending with obj
and return it as a list"""
return list(itertools.islice(itertools.chain(iterable, 
itertools.repeat(obj)), length))

because I got

Exception: TypeError: 'itertools.islice' object has no attribute '__getitem__'

otherwise.

New patch coming up.

//Peter

From: kerg...@gmail.com [mailto:kerg...@gmail.com] On Behalf Of Christopher 
Larson
Sent: 23 October 2015 17:53
To: Burton, Ross
Cc: Peter Kjellerstedt; OE-core
Subject: Re: [OE-core] [PATCH 1/1] useradd-staticids.bbclass: Do not require 
trailing colons


On Fri, Oct 23, 2015 at 8:20 AM, Burton, Ross 
> wrote:
On 23 October 2015 at 11:38, Peter Kjellerstedt 
> wrote:
-field = line.rstrip().split(":")
+# Make sure there always are at least seven elements in
+# the field list. This allows for leaving out trailing
+# colons in the passwd file.
+line = line.rstrip() + "::"
+field = line.split(":")

It's a stylist thing but I prefer padding the field list instead of 
manipulating the input string. Something like

  field = line.strip().split(":")
  field += [''] * (7 - len(field))

Agreed, but I think this is cleaner:

def iter_extend(iterable, length, obj=None):
"""Ensure that iterable is the specified length by extending with obj"""
return itertools.islice(itertools.chain(iterable, itertools.repeat(obj)), 
length)

fields = iter_extend(line.rstrip().split(":"), 7)
--
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] State of bitbake world, Failed tasks 2015-10-22

2015-10-24 Thread Martin Jansa
It's starting to look good for jethro branch, I've removed some pending changes 
from master-next (luajit, llvm upgrade, aalib), luajit (sysdig) fix was sent 
already so this will probably go in with next batch, then I'll create jethro 
branch.

= Tested changes (not included in master yet) - bitbake ==
0bae8ca world-image: add extra target

== Tested changes (not included in master yet) - openembedded-core ==
1f28971 Revert "mesa: upgrade llvm to 3.5"
a40dd51 mesa: upgrade llvm to 3.5
c10965d feature-arm-vfp.inc: add -mfpu=vfpv4 when vfpv4 is in TUNE_FEATURES
259e9df feature-arm-vfp.inc: respect vfpv4 when setting -mfloat-abi and 
ARMPKGSFX_EABI
47b5867 arch-armv7ve: add tune include for armv7ve and use it from cortexa7 and 
cortexa15
f8876b9 tune-*: use mcpu instead of mtune for ARM tunes
fd14bb2 cortexa{7,15,17}: add VFPv4 tunes
905e1b1 directfb: add fPIC to CFLAGS
fc3c23d guile, mailx, gcc, opensp, gstreamer1.0-libav, libunwind: disable thumb 
where it fails for qemuarm
4559a15 icu: force arm mode
1913829 DO-NOT-MERGE: distutils3.bbclass: Don't use MACHINE variable
a2ef192 libsdl: Add support for libsdl-native
6c18c30 WIP: Add KERNEL_EXTRA_ARGS?
87dac72 sstate-sysroot-cruft: Add /usr/src/kernel/.* to whitelist
4809e15 report-error: Allow to upload reports automatically
ddf192c qemux86copy
d173002 Revert "qemux86: Add identical qemux86copy variant for tests"
2afab92 qemux86: Add identical qemux86copy variant for tests

== Tested changes (not included in master yet) - meta-openembedded ==
fa23369 Revert "aalib: add new recipe"
db18321 Revert "luajit: Upgrade to 2.1 beta1"
deabeb9 Revert "llvm: update 3.5.2 to have a sane ARM JIT for OpenJDK-8"
6bb686f luajit: Upgrade to 2.1 beta1
b1142bc lmsensors: remove unused service file
c007327 libsrtp: add new recipe
d880a0f libdvdnav: add new recipe
1e4c987 vo-amrwbenc: add new recipe
ca399c3 vo-aacenc: add new recipe
422d360 opencore-amr: add new recipe
1a858e7 gst-plugins-ugly: Fix opencore AMR plugin support
1b77fa1 aalib: add new recipe
a68da43 drbd: fix permission bits of drbd.service
4c44c01 lmsensors-config: add configuration file sensord
eaa6df0 iperf3 :upgrade to 3.1
72b7758 wireshark: update package to 1.12.8
7130dbb lldpad: depends on readline
b5ecfed dracut: RDEPEND on util-linux
4cbf3c2 xerces-c: enable a native variant with BBCLASSEXTEND
282ae4e ntp: fix rpath QA issue
3c8557e webmin: remove perl-module-sdbm from RDEPENDS
bcad788 phpmyadmin: 4.4.9 -> 4.5.0.2
3a92b42 openldap: 2.4.41 -> 2.4.42
52fdf83 nftables: update nftables userland tools from 0.4 to 0.5
5dc26b5 libnftnl: update from 1.0.3 to 1.0.5
cc81278 nginx: update to 1.9.5
75e9b27 nginx: fix broken proxy_pass feature
e544584 llvm: update 3.5.2 to have a sane ARM JIT for OpenJDK-8
51f390a network-manager-applet: drop dependency on blacklisted gnome-keyring
1587496 lirc: use weak assignment in PACKAGECONFIG like other recipes
fb3d914 webmin: fix QA host-user-contaminated
35e7f80 debootstrap: cleanup the recipe
1cd7ab9 vpnc, arptables, lirc, debootstrap, log4cpp, python-ldap: drop unused 
variable PRIORITY
f3cfab1 rygel: Add recipe
4d8fb61 media-service-upnp: Update to 0.5.0
46f0902 gupnp-dlna: Update to 0.9.4, support gstreamer
6f1aeba mkvtoolnix: fix Boost build, update to 8.4.0, allow Qt5 GUI
e3a6337 vorbis-tools: fix CVE-2015-6749
0ba07a2 vim: do not autoenable the mouse
d602ab6 efibootmgr: 0.6.0 -> 0.12
c6c5168 efivar: 0.7 -> 0.21
aac734f vim: Upgrade to v7.4.769
af2bc9e drbd-utils: fix multilib problem
93da01d poppler: Support building against QT4-embedded
891687b netmap-modules: fix compilation failure
bde8fdf libnetfilter: Avoid using VLAs
f6adc51 net-snmp: Fix build with gcc5
c999ca6 meta-networking: recipes-connectivity: add relayd recipe
7c22c2b tsocks: Add tsocks to meta-network/recipes-protocols
df58eab squid: disable atomic operations for powerpc/mips
2e7f8db lldpd: Add recipe
d727d1c xl2tpd: 1.3.0 -> 1.3.6
a9871d9 inetutils: fix rcp to work with large file

== Tested changes (not included in master yet) - meta-qt5 ==
f83bbac qt5: upgrade to latest revision in 5.5 branch (5.5.1+)
8d2f3f5 Revert "qt5-native: extend the list of directories to relocate with 
OE_QMAKE_PATH_*"
8e349f9 qt5-native: extend the list of directories to relocate with 
OE_QMAKE_PATH_*

== Tested changes (not included in master yet) - meta-browser ==

== Tested changes (not included in master yet) - meta-webos-ports ==

== Tested changes (not included in master yet) - meta-smartphone ==

== Number of issues - stats ==
{| class='wikitable'
!|Date   !!colspan='3'|Failed tasks 
!!colspan='12'|QA !!Comment
|-
||  ||qemuarm   ||qemux86   ||qemux86_64
||already-stripped  ||libdir||textrel   ||build-deps
||file-rdeps||version-going-backwards   ||host-user-contaminated
||installed-vs-shipped  ||unknown-configure-option  ||symlink-to-sysroot
||invalid-pkgconfig ||pkgname   ||  
|-
||2015-10-22||3 ||3   

[OE-core] [PATCHv2 0/1] Fix for useradd-staticids.bbclass

2015-10-24 Thread Peter Kjellerstedt
This change corrects useradd-staticids.bbclass to allow user and group
files without trailing colons. Previously one had to write:

foo::123

in the group file to define the static UID for a user or one would
receive a Python exception. With this change applied one can instead
write:

foo::123

The change is of course backwards compatible so the old format is
still valid.

//Peter

The following changes since commit 505a82673ac2487df5ea343a6422c2fc47018831:

  build-appliance-image: Update to jethro head revision (2015-10-21 23:13:11 
+0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib pkj/useradd_skip_colons
  
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pkj/useradd_skip_colons

Peter Kjellerstedt (1):
  useradd-staticids.bbclass: Do not require trailing colons

 meta/classes/useradd-staticids.bbclass | 16 ++--
 1 file changed, 14 insertions(+), 2 deletions(-)

-- 
2.1.0

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


[OE-core] [PATCHv2 1/1] useradd-staticids.bbclass: Do not require trailing colons

2015-10-24 Thread Peter Kjellerstedt
Before, the users and groups specified in the passwd file and the
groups file had to have trailing colons to make sure there were enough
elements in the definitions, or bitbake would throw a Python
exception.  After this change one can omit the trailing colons, which
especially simplifies passwd files used only to specify static UIDs.

Signed-off-by: Peter Kjellerstedt 
---
 meta/classes/useradd-staticids.bbclass | 16 ++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/meta/classes/useradd-staticids.bbclass 
b/meta/classes/useradd-staticids.bbclass
index 421a70a..924d6ea 100644
--- a/meta/classes/useradd-staticids.bbclass
+++ b/meta/classes/useradd-staticids.bbclass
@@ -2,6 +2,7 @@
 # we need a function to reformat the params based on a static file
 def update_useradd_static_config(d):
 import argparse
+import itertools
 import re
 
 class myArgumentParser( argparse.ArgumentParser ):
@@ -16,6 +17,11 @@ def update_useradd_static_config(d):
 def error(self, message):
 raise bb.build.FuncFailed(message)
 
+def list_extend(iterable, length, obj = None):
+"""Ensure that iterable is the specified length by extending with obj
+and return it as a list"""
+return list(itertools.islice(itertools.chain(iterable, 
itertools.repeat(obj)), length))
+
 # We parse and rewrite the useradd components
 def rewrite_useradd(params):
 # The following comes from --help on useradd from shadow
@@ -84,7 +90,10 @@ def update_useradd_static_config(d):
 for line in f:
 if line.startswith('#'):
 continue
-field = line.rstrip().split(":")
+# Make sure there always are at least seven elements in
+# the field list. This allows for leaving out trailing
+# colons in the passwd file.
+field = list_extend(line.rstrip().split(":"), 7)
 if field[0] == uaargs.LOGIN:
 if uaargs.uid and field[2] and (uaargs.uid != 
field[2]):
 bb.warn("%s: Changing username %s's uid from 
(%s) to (%s), verify configuration files!" % (d.getVar('PN', True), 
uaargs.LOGIN, uaargs.uid, field[2]))
@@ -220,7 +229,10 @@ def update_useradd_static_config(d):
 for line in f:
 if line.startswith('#'):
 continue
-field = line.rstrip().split(":")
+# Make sure there always are at least four elements in
+# the field list. This allows for leaving out trailing
+# colons in the group file.
+field = list_extend(line.rstrip().split(":"), 4)
 if field[0] == gaargs.GROUP and field[2]:
 if gaargs.gid and (gaargs.gid != field[2]):
 bb.warn("%s: Changing groupname %s's gid from 
(%s) to (%s), verify configuration files!" % (d.getVar('PN', True), 
gaargs.GROUP, gaargs.gid, field[2]))
-- 
2.1.0

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