Re: [OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Khem Raj

> On May 18, 2016, at 10:38 PM, Robert Yang  wrote:
> 
> 
> 
> On 05/19/2016 01:28 PM, Khem Raj wrote:
>> 
>>> On May 18, 2016, at 8:16 PM, Gary Thomas  wrote:
>>> 
>>> On 2016-05-18 22:07, Khem Raj wrote:
 On Wed, May 18, 2016 at 2:03 AM, Robert Yang  
 wrote:
> * It doesn't build on armv4:
> {standard input}: Assembler messages:
> {standard input}:52: Error: selected processor does not support `blx 
> llint_throw_stack_overflow_error' in ARM mode
> {standard input}:126: Error: selected processor does not support `bkpt 
> #0' in ARM mode
> {standard input}:128: Error: selected processor does not support `blx r0' 
> in ARM mode
> {standard input}:134: Error: selected processor does not support `bkpt 
> #0' in ARM mode
> {standard input}:185: Error: selected processor does not support `blx 
> llint_throw_stack_overflow_error' in ARM mode
> {standard input}:256: Error: selected processor does not support `blx r4' 
> in ARM mode
> {standard input}:310: Error: selected processor does not support `movw 
> r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
> {standard input}:311: Error: selected processor does not support `movt 
> r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
> {standard input}:315: Error: selected processor does not support `movw 
> r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
> {standard input}:316: Error: selected processor does not support `movt 
> r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
> [snip]
> 
> * It can build on armv7a, but doesn't work on runtime, cause
>   displaying problems or ephiphany hang.
> 
> [YOCTO #9474]
> 
> Signed-off-by: Robert Yang 
> ---
>  meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
> b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> index bdbcbea..23ead72 100644
> --- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> +++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> @@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
>  EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
>  EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
> 
> -# ARM JIT code does not build on ARMv5/6 anymore, apparently they test 
> only on v7 onwards
> +# ARM JIT code does not build on ARMv4/5/6 anymore
>  EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
>  EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
> +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
> +
> +# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
> +# displaying problems or ephiphany hang.
> +EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "
 
 this should work fine with thumb2 e.g. so this is a little broad brush
 here to diable it across
 all armv7
>>> 
>>> Why do you think that changing the instruction set (to thumb2) would
>>> make the JIT work any better?
>> 
>> Assembler implementation for JIT has always worked better with thumb2.
>> 
>>> 
>>> If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
>>> the platform that inspired the original bug report.
>> 
>> 
>> Try adding
>> 
>> ARM_INSTRUCTION_SET_armv7a = “thumb"
>> ARM_INSTRUCTION_SET_armv7ve = “thumb"
>> 
>> in the webkitgtk recipe and see if it helps
> 
> 
> Hi,
> 
> To be clear, webkitgtk can build on armv7a, but doesn't work on
> runtime, cause displaying problems or ephiphany hang.

We are talking runtime here.


signature.asc
Description: Message signed with OpenPGP using GPGMail
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Robert Yang



On 05/19/2016 01:28 PM, Khem Raj wrote:



On May 18, 2016, at 8:16 PM, Gary Thomas  wrote:

On 2016-05-18 22:07, Khem Raj wrote:

On Wed, May 18, 2016 at 2:03 AM, Robert Yang  wrote:

* It doesn't build on armv4:
{standard input}: Assembler messages:
{standard input}:52: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:126: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:128: Error: selected processor does not support `blx r0' in 
ARM mode
{standard input}:134: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:185: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:256: Error: selected processor does not support `blx r4' in 
ARM mode
{standard input}:310: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:311: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:315: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
{standard input}:316: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
[snip]

* It can build on armv7a, but doesn't work on runtime, cause
   displaying problems or ephiphany hang.

[YOCTO #9474]

Signed-off-by: Robert Yang 
---
  meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
  1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
index bdbcbea..23ead72 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
@@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
  EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
  EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "

-# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on 
v7 onwards
+# ARM JIT code does not build on ARMv4/5/6 anymore
  EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
  EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
+
+# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
+# displaying problems or ephiphany hang.
+EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "


this should work fine with thumb2 e.g. so this is a little broad brush
here to diable it across
all armv7


Why do you think that changing the instruction set (to thumb2) would
make the JIT work any better?


Assembler implementation for JIT has always worked better with thumb2.



If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
the platform that inspired the original bug report.



Try adding

ARM_INSTRUCTION_SET_armv7a = “thumb"
ARM_INSTRUCTION_SET_armv7ve = “thumb"

in the webkitgtk recipe and see if it helps



Hi,

To be clear, webkitgtk can build on armv7a, but doesn't work on
runtime, cause displaying problems or ephiphany hang.

// Robert










  # binutils 2.25.1 has a bug on aarch64:
  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
--
2.7.4

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



--

Gary Thomas |  Consulting for the
MLB Associates  |Embedded world

--
___
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 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Khem Raj

> On May 18, 2016, at 8:16 PM, Gary Thomas  wrote:
> 
> On 2016-05-18 22:07, Khem Raj wrote:
>> On Wed, May 18, 2016 at 2:03 AM, Robert Yang  
>> wrote:
>>> * It doesn't build on armv4:
>>> {standard input}: Assembler messages:
>>> {standard input}:52: Error: selected processor does not support `blx 
>>> llint_throw_stack_overflow_error' in ARM mode
>>> {standard input}:126: Error: selected processor does not support `bkpt #0' 
>>> in ARM mode
>>> {standard input}:128: Error: selected processor does not support `blx r0' 
>>> in ARM mode
>>> {standard input}:134: Error: selected processor does not support `bkpt #0' 
>>> in ARM mode
>>> {standard input}:185: Error: selected processor does not support `blx 
>>> llint_throw_stack_overflow_error' in ARM mode
>>> {standard input}:256: Error: selected processor does not support `blx r4' 
>>> in ARM mode
>>> {standard input}:310: Error: selected processor does not support `movw 
>>> r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
>>> {standard input}:311: Error: selected processor does not support `movt 
>>> r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
>>> {standard input}:315: Error: selected processor does not support `movw 
>>> r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
>>> {standard input}:316: Error: selected processor does not support `movt 
>>> r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
>>> [snip]
>>> 
>>> * It can build on armv7a, but doesn't work on runtime, cause
>>>   displaying problems or ephiphany hang.
>>> 
>>> [YOCTO #9474]
>>> 
>>> Signed-off-by: Robert Yang 
>>> ---
>>>  meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
>>>  1 file changed, 6 insertions(+), 1 deletion(-)
>>> 
>>> diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
>>> b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>> index bdbcbea..23ead72 100644
>>> --- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>> +++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>> @@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
>>>  EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
>>>  EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
>>> 
>>> -# ARM JIT code does not build on ARMv5/6 anymore, apparently they test 
>>> only on v7 onwards
>>> +# ARM JIT code does not build on ARMv4/5/6 anymore
>>>  EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
>>>  EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
>>> +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
>>> +
>>> +# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
>>> +# displaying problems or ephiphany hang.
>>> +EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "
>> 
>> this should work fine with thumb2 e.g. so this is a little broad brush
>> here to diable it across
>> all armv7
> 
> Why do you think that changing the instruction set (to thumb2) would
> make the JIT work any better?

Assembler implementation for JIT has always worked better with thumb2.

> 
> If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
> the platform that inspired the original bug report.


Try adding

ARM_INSTRUCTION_SET_armv7a = “thumb"
ARM_INSTRUCTION_SET_armv7ve = “thumb"

in the webkitgtk recipe and see if it helps

> 
>> 
>>> 
>>>  # binutils 2.25.1 has a bug on aarch64:
>>>  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
>>> --
>>> 2.7.4
>>> 
>>> --
>>> ___
>>> Openembedded-core mailing list
>>> Openembedded-core@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> 
> 
> --
> 
> Gary Thomas |  Consulting for the
> MLB Associates  |Embedded world
> 
> --
> ___
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



signature.asc
Description: Message signed with OpenPGP using GPGMail
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Tristan Van Berkom
On Thu, 2016-05-19 at 05:16 +0200, Gary Thomas wrote:
[...]
> Why do you think that changing the instruction set (to thumb2) would
> make the JIT work any better?
> 
> If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
> the platform that inspired the original bug report.

FWIW, I ran into this issue as well the first time I tried building
webkitgtk with a compiler tuned for armv7a.

I did not try many variations but was able to build with a machine
configuration with DEFAULTTUNE set to armv7ahf-neon (hard float with
neon simd).

This link seems to also provide some more information on what
configurations can be used to build webkitgtk on arm:
    http://patchwork.openembedded.org/patch/105081/

Cheers,
    -Tristan

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


Re: [OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Gary Thomas

On 2016-05-18 22:07, Khem Raj wrote:

On Wed, May 18, 2016 at 2:03 AM, Robert Yang  wrote:

* It doesn't build on armv4:
{standard input}: Assembler messages:
{standard input}:52: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:126: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:128: Error: selected processor does not support `blx r0' in 
ARM mode
{standard input}:134: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:185: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:256: Error: selected processor does not support `blx r4' in 
ARM mode
{standard input}:310: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:311: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:315: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
{standard input}:316: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
[snip]

* It can build on armv7a, but doesn't work on runtime, cause
   displaying problems or ephiphany hang.

[YOCTO #9474]

Signed-off-by: Robert Yang 
---
  meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
  1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
index bdbcbea..23ead72 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
@@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
  EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
  EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "

-# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on 
v7 onwards
+# ARM JIT code does not build on ARMv4/5/6 anymore
  EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
  EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
+
+# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
+# displaying problems or ephiphany hang.
+EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "


this should work fine with thumb2 e.g. so this is a little broad brush
here to diable it across
all armv7


Why do you think that changing the instruction set (to thumb2) would
make the JIT work any better?

If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
the platform that inspired the original bug report.





  # binutils 2.25.1 has a bug on aarch64:
  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
--
2.7.4

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



--

Gary Thomas |  Consulting for the
MLB Associates  |Embedded world

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Robert Yang



On 05/19/2016 10:33 AM, Robert Yang wrote:


Hi Martin,

I found this patch in the bug:

http://git.openembedded.org/openembedded-core/commit/meta/lib/oe/sstatesig.py?id=336a7897e39b9e42dcfcba9e2520ea96b0c6a8d6


And this patch causes another inconsistent:

PACKAGE_CLASSES = "package_ipk"

1) After make some changes in opkg-utils-native, foo.do_package_write_ipk
will re-run, but PR doesn't bump, this is because PR is bumped in
do_package, and do_package doesn't depend on opkg-utils-native, but
do_package_write_ipk does, so do_package_write_ipk will rerun but no
PR is bumped.

2) Another more funny problem is, after make some changes in rpm-native
(PACKAGE_CLASSES = "package_ipk"), both foo.do_package and
foo.do_package_write_ipk will run and PR is bumped. This is because
do_package depends on rpm-native (for FILERDEPENDS), so do_package
re-runs and PR bumps, thus caused do_package_write_ipk re-runs.

Revert the patch will fix both 1) and 2).

For 2), the only one uses FILERDEPENDS is do_package_qa, maybe we need
move the generation of FILERDEPENDS there. This is another bug.

// Robert




Too many PR bumps and rebuildings are caused by this patch. I'm
not very sure about what this patch tries to fix, it seems that
it is trying to fix problems when 32bit and 64bit uses the same
sstate cache? Would you please provide a simple reproducer, please?

Things will become much better after revert this patch. Be less
stricter or more is a hard problem, if we still need the patch,
can we leave such a choice to the end user? We can add some vars
like DROP_NATIVE_SIG ? = "0/1". This would be good to the end user
who uses stable release like jethro or krogoth to make their
distributions, and PR Service really matters here. Even if they
switch the build between 32 and 64 builds (This is unlikely to
happen for production environment) and got problems, they still
can fix the problem by rebuilding, this is still much better than
current status: run a "smart/opkg/apt-get upgrade" on the target,
*all* of the packages are downloaded and installed again after a
CVE patch applies on native recipes like pseudo-native or rpm-native,
but in fact, nothing is changed on the target this is really a bad
experience.

// Robert

On 05/18/2016 06:15 PM, Martin Jansa wrote:

On Wed, May 18, 2016 at 05:31:09PM +0800, Robert Yang wrote:



On 05/18/2016 05:20 PM, Martin Jansa wrote:

On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:

Hi Martin,

On 05/18/2016 03:39 PM, Martin Jansa wrote:

See:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970

Just using recipe checksum wont work, because the main reason for PR bumps
is to
automatically upgrade the packages when one of the dependencies changes .so
version, which you won't detect from recipe checksum of the app which is just
using the library.


For the development branch like master, yes, that would happen. But for
the stable release like jethro and krogoth, it is unlikely that would
happen, and if if does, the user can manually bump the impacted recipe's
PR to fix the problem. The current problem is that when *all* recipes'
PR are bumped, there is no way to fix the problem.


You can still stop using PR service and start doing manual PR bumps, but


We can't stop PR service and start doing manual PR bumps since we need keep
update to date with upstream, the changes from upstream don't do the manual
PR, and I don't think that we have to if they can be done automatically.


it's quite annoying if you need to bump a lot of recipes you don't
control :).


What's your opinion about only consider RDEPENDS for PR service's checksum,
please ?


I would like to have separate handler as described in that bug, option
c).

Not only because of unnecessary EXTENDPRAUTO bumps, but also unnecessary
rebuilds.


On Wed, May 18, 2016 at 8:09 AM, Robert Yang > wrote:

  The PRServer bumps PR according to do_package's task hash, that
  causes it bumps *all* packages' PR when recipes like pseudo-native
  and rpm-native is changed. It is a very bad user experience when we
  run "smart/opkg upgrade" on running target, for example, when we apply
  a CVE patch to pseudo-native or rpm-native, or do some slight changes
  in their do_compile, "smart/opkg upgrade" will download/install *all*
  the packages since all of the packages' PR are bumped.

  Here are some rough suggestions to fix this problem, and please feel
  free to give your suggestions.
  1) Do not use do_package's task for bumping PR, the easiest way
  is simulate manually bump PR -- only bump PR when the recipe
  itself's checksum is changed.

  2) Add a new task for PRServer, redefine its task hash for bumping
  PR, for example, this task hash only considers RDEPENDS (no
  DEPENDS), and drop any native dependencies.

  I prefer the first way, and an alternative way maybe add a var so that
 

Re: [OE-core] PRServer's problem

2016-05-18 Thread Robert Yang


Hi Martin,

I found this patch in the bug:

http://git.openembedded.org/openembedded-core/commit/meta/lib/oe/sstatesig.py?id=336a7897e39b9e42dcfcba9e2520ea96b0c6a8d6

Too many PR bumps and rebuildings are caused by this patch. I'm
not very sure about what this patch tries to fix, it seems that
it is trying to fix problems when 32bit and 64bit uses the same
sstate cache? Would you please provide a simple reproducer, please?

Things will become much better after revert this patch. Be less
stricter or more is a hard problem, if we still need the patch,
can we leave such a choice to the end user? We can add some vars
like DROP_NATIVE_SIG ? = "0/1". This would be good to the end user
who uses stable release like jethro or krogoth to make their
distributions, and PR Service really matters here. Even if they
switch the build between 32 and 64 builds (This is unlikely to
happen for production environment) and got problems, they still
can fix the problem by rebuilding, this is still much better than
current status: run a "smart/opkg/apt-get upgrade" on the target,
*all* of the packages are downloaded and installed again after a
CVE patch applies on native recipes like pseudo-native or rpm-native,
but in fact, nothing is changed on the target this is really a bad
experience.

// Robert

On 05/18/2016 06:15 PM, Martin Jansa wrote:

On Wed, May 18, 2016 at 05:31:09PM +0800, Robert Yang wrote:



On 05/18/2016 05:20 PM, Martin Jansa wrote:

On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:

Hi Martin,

On 05/18/2016 03:39 PM, Martin Jansa wrote:

See:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970

Just using recipe checksum wont work, because the main reason for PR bumps is to
automatically upgrade the packages when one of the dependencies changes .so
version, which you won't detect from recipe checksum of the app which is just
using the library.


For the development branch like master, yes, that would happen. But for
the stable release like jethro and krogoth, it is unlikely that would
happen, and if if does, the user can manually bump the impacted recipe's
PR to fix the problem. The current problem is that when *all* recipes'
PR are bumped, there is no way to fix the problem.


You can still stop using PR service and start doing manual PR bumps, but


We can't stop PR service and start doing manual PR bumps since we need keep
update to date with upstream, the changes from upstream don't do the manual
PR, and I don't think that we have to if they can be done automatically.


it's quite annoying if you need to bump a lot of recipes you don't
control :).


What's your opinion about only consider RDEPENDS for PR service's checksum,
please ?


I would like to have separate handler as described in that bug, option
c).

Not only because of unnecessary EXTENDPRAUTO bumps, but also unnecessary 
rebuilds.


On Wed, May 18, 2016 at 8:09 AM, Robert Yang > wrote:

  The PRServer bumps PR according to do_package's task hash, that
  causes it bumps *all* packages' PR when recipes like pseudo-native
  and rpm-native is changed. It is a very bad user experience when we
  run "smart/opkg upgrade" on running target, for example, when we apply
  a CVE patch to pseudo-native or rpm-native, or do some slight changes
  in their do_compile, "smart/opkg upgrade" will download/install *all*
  the packages since all of the packages' PR are bumped.

  Here are some rough suggestions to fix this problem, and please feel
  free to give your suggestions.
  1) Do not use do_package's task for bumping PR, the easiest way
  is simulate manually bump PR -- only bump PR when the recipe
  itself's checksum is changed.

  2) Add a new task for PRServer, redefine its task hash for bumping
  PR, for example, this task hash only considers RDEPENDS (no
  DEPENDS), and drop any native dependencies.

  I prefer the first way, and an alternative way maybe add a var so that
  the user can configure it:
  PR_CHECKSUM = "${BB_TASKHASH}" (current way)
  Or
  PR_CHECKSUM = ""

  --
  Thanks

  Robert
  --
  ___
  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] [PATCH 7/7] rootfs.py: Unify _log_check_warn() and _log_check_error()

2016-05-18 Thread Peter Kjellerstedt
Use a common _log_check_common() function (based on the old
_log_check_warn() function) to implement the logic for both
_log_check_warn() and _log_check_error().

The main benefit of this is that now all error messages will be
reported again, not just the first one found. Additionally the output
will now look the same for both error and warning messages.

This removes the context for the error messages. However, since there
was no indication in the output that some of the lines were context,
they were more confusing than helping.

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 52 ++-
 1 file changed, 14 insertions(+), 38 deletions(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 479e4cc..f5c465f 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -40,7 +40,7 @@ class Rootfs(object):
 def _log_check(self):
 pass
 
-def _log_check_warn(self):
+def _log_check_common(self, type, match):
 # Ignore any lines containing log_check to avoid recursion, and ignore
 # lines beginning with a + since sh -x may emit code which isn't
 # actually executed, but may contain error messages
@@ -48,7 +48,7 @@ class Rootfs(object):
 if hasattr(self, 'log_check_expected_regexes'):
 excludes.extend(self.log_check_expected_regexes)
 excludes = [re.compile(x) for x in excludes]
-r = re.compile('^(warn|Warn|WARNING:)')
+r = re.compile(match)
 log_path = self.d.expand("${T}/log.do_rootfs")
 messages = []
 with open(log_path, 'r') as log:
@@ -65,45 +65,21 @@ class Rootfs(object):
 messages.append('[log_check] %s' % line)
 if messages:
 if len(messages) == 1:
-msg = 'a warning message'
+msg = '1 %s message' % type
 else:
-msg = '%d warning messages' % len(messages)
-bb.warn('[log_check] %s: found %s in the logfile:\n%s'
-% (self.d.getVar('PN', True), msg, ''.join(messages)))
-
-def _log_check_error(self):
-# Ignore any lines containing log_check to avoid recursion, and ignore
-# lines beginning with a + since sh -x may emit code which isn't
-# actually executed, but may contain error messages
-excludes = [ 'log_check', r'^\+' ]
-if hasattr(self, 'log_check_expected_regexes'):
-excludes.extend(self.log_check_expected_regexes)
-excludes = [re.compile(x) for x in excludes]
-r = re.compile(self.log_check_regex)
-log_path = self.d.expand("${T}/log.do_rootfs")
-with open(log_path, 'r') as log:
-found_error = 0
-message = "\n"
-for line in log:
-for ee in excludes:
-m = ee.search(line)
-if m:
-break
-if m:
-continue
-
-m = r.search(line)
-if m:
-found_error = 1
-bb.warn('[log_check] %s: found an error message in the 
logfile (keyword \'%s\'):\n[log_check] %s'
-   % (self.d.getVar('PN', True), m.group(), 
line))
+msg = '%d %s messages' % (len(messages), type)
+msg = '[log_check] %s: found %s in the logfile:\n%s' % \
+(self.d.getVar('PN', True), msg, ''.join(messages))
+if type == 'error':
+bb.fatal(msg)
+else:
+bb.warn(msg)
 
-if found_error >= 1 and found_error <= 5:
-message += line + '\n'
-found_error += 1
+def _log_check_warn(self):
+self._log_check_common('warning', '^(warn|Warn|WARNING:)')
 
-if found_error == 6:
-bb.fatal(message)
+def _log_check_error(self):
+self._log_check_common('error', self.log_check_regex)
 
 def _insert_feed_uris(self):
 if bb.utils.contains("IMAGE_FEATURES", "package-management",
-- 
2.1.0

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


[OE-core] [PATCH 1/7] Revert "rootfs.py: add more info to the warning message"

2016-05-18 Thread Peter Kjellerstedt
The reverted commit added a warning with the log line that triggered
the log check for error messages before the warning that states that
an error has been found in the log. However, the error line is output
by the call to bb.fatal() that follows immediately after the original
warning, which makes it redundant. Additionaly, having two warnings
contradicts the intent of commit 8dfdd329 where the log warnings were
tidied up.

This reverts commit f9cf31525fc885e1a0f65bd55654631257f87078.

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 95fd3ab..f6fb06c 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -75,7 +75,6 @@ class Rootfs(object):
 m = r.search(line)
 if m:
 found_error = 1
-bb.warn('[log_check] In line: [%s]' % line)
 bb.warn('[log_check] %s: found an error message in the 
logfile (keyword \'%s\'):\n[log_check] %s'
% (self.d.getVar('PN', True), m.group(), 
line))
 
-- 
2.1.0

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


[OE-core] [PATCH 0/7] Improvements for the rootfs log check

2016-05-18 Thread Peter Kjellerstedt
This is a set of improvements to the log check code in
meta/lib/oe/rootfs.py. It started out with me wanting to reduce the
spam I got when there were many warnings in the log, and ended up with
quite a lot of refactoring. I also activated the fix to bug 7789 along
the way...

I have only tested this with rpm builds, but I expect it to work for
deb and ipk builds as well...

//Peter

The following changes since commit 7707cf6562e6a477ea953743a2d9aba682d90949:

  sdk-manual: Fixed three broken links to sections within manual. (2016-05-17 
21:35:00 +0100)

are available in the git repository at:

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

Peter Kjellerstedt (7):
  Revert "rootfs.py: add more info to the warning message"
  rootfs.py: Remove _log_check_error() from the RpmRootfs class
  rootfs.py: Simplify the regular expression used in _log_check_warn()
  rootfs.py: Use one way to exclude lines in _log_check_error()
  rootfs.py: Exclude lines in _log_check_warn() as well
  rootfs.py: Reduce spam from _log_check_warn()
  rootfs.py: Unify _log_check_warn() and _log_check_error()

 meta/lib/oe/rootfs.py | 93 +--
 1 file changed, 31 insertions(+), 62 deletions(-)

-- 
2.1.0

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


[OE-core] [PATCH 4/7] rootfs.py: Use one way to exclude lines in _log_check_error()

2016-05-18 Thread Peter Kjellerstedt
Before there were three different ways to exclude a line from being
searched for error messages in _log_check_error(). Now there is only
one: an array of regular expressions. This should make it easy to add
more excludes if nedded.

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 25 -
 1 file changed, 12 insertions(+), 13 deletions(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index a92aa22..63ca22f 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -54,26 +54,25 @@ class Rootfs(object):
% (self.d.getVar('PN', True), m.group(), 
line))
 
 def _log_check_error(self):
+# Ignore any lines containing log_check to avoid recursion, and ignore
+# lines beginning with a + since sh -x may emit code which isn't
+# actually executed, but may contain error messages
+excludes = [ 'log_check', r'^\+' ]
+if hasattr(self, 'log_check_expected_errors_regexes'):
+excludes.extend(self.log_check_expected_errors_regexes)
+excludes = [re.compile(x) for x in excludes]
 r = re.compile(self.log_check_regex)
 log_path = self.d.expand("${T}/log.do_rootfs")
 with open(log_path, 'r') as log:
 found_error = 0
 message = "\n"
 for line in log:
-if 'log_check' in line:
-continue
-# sh -x may emit code which isn't actually executed
-if line.startswith('+'):
-continue
-
-if hasattr(self, 'log_check_expected_errors_regexes'):
-m = None
-for ee in self.log_check_expected_errors_regexes:
-m = re.search(ee, line)
-if m:
-break
+for ee in excludes:
+m = ee.search(line)
 if m:
-continue
+break
+if m:
+continue
 
 m = r.search(line)
 if m:
-- 
2.1.0

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


[OE-core] [PATCH 6/7] rootfs.py: Reduce spam from _log_check_warn()

2016-05-18 Thread Peter Kjellerstedt
For each warning found in the log, _log_check_warn() would output a
line stating that it had found a warning, then the actual warning and
finally an empty line. This is quite excessive when there are many
warnings in the log.

With this change the output is instead a line stating how many
warnings were found, followed by the warnings. This makes the output
much more compact and actually much more readable.

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 741399a..479e4cc 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -50,6 +50,7 @@ class Rootfs(object):
 excludes = [re.compile(x) for x in excludes]
 r = re.compile('^(warn|Warn|WARNING:)')
 log_path = self.d.expand("${T}/log.do_rootfs")
+messages = []
 with open(log_path, 'r') as log:
 for line in log:
 for ee in excludes:
@@ -61,8 +62,14 @@ class Rootfs(object):
 
 m = r.search(line)
 if m:
-bb.warn('[log_check] %s: found a warning message in the 
logfile (keyword \'%s\'):\n[log_check] %s'
-   % (self.d.getVar('PN', True), m.group(), 
line))
+messages.append('[log_check] %s' % line)
+if messages:
+if len(messages) == 1:
+msg = 'a warning message'
+else:
+msg = '%d warning messages' % len(messages)
+bb.warn('[log_check] %s: found %s in the logfile:\n%s'
+% (self.d.getVar('PN', True), msg, ''.join(messages)))
 
 def _log_check_error(self):
 # Ignore any lines containing log_check to avoid recursion, and ignore
-- 
2.1.0

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


[OE-core] [PATCH 3/7] rootfs.py: Simplify the regular expression used in _log_check_warn()

2016-05-18 Thread Peter Kjellerstedt
In commit 0387d095 lines with "NOTE:" in them were excluded from the
log check for warnings. However, those lines were only there in the
first place since the regular expression that is used to find warning
messages explicitly included those lines...

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 0a2753e..a92aa22 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -41,11 +41,11 @@ class Rootfs(object):
 pass
 
 def _log_check_warn(self):
-r = re.compile('^(warn|Warn|NOTE: warn|NOTE: Warn|WARNING:)')
+r = re.compile('^(warn|Warn|WARNING:)')
 log_path = self.d.expand("${T}/log.do_rootfs")
 with open(log_path, 'r') as log:
 for line in log:
-if 'log_check' in line or 'NOTE:' in line:
+if 'log_check' in line:
 continue
 
 m = r.search(line)
-- 
2.1.0

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


[OE-core] [PATCH 5/7] rootfs.py: Exclude lines in _log_check_warn() as well

2016-05-18 Thread Peter Kjellerstedt
This will make _log_check_warn() exclude the same lines as
_log_check_error() does.

Signed-off-by: Peter Kjellerstedt 
---
 meta/lib/oe/rootfs.py | 19 +++
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 63ca22f..741399a 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -41,11 +41,22 @@ class Rootfs(object):
 pass
 
 def _log_check_warn(self):
+# Ignore any lines containing log_check to avoid recursion, and ignore
+# lines beginning with a + since sh -x may emit code which isn't
+# actually executed, but may contain error messages
+excludes = [ 'log_check', r'^\+' ]
+if hasattr(self, 'log_check_expected_regexes'):
+excludes.extend(self.log_check_expected_regexes)
+excludes = [re.compile(x) for x in excludes]
 r = re.compile('^(warn|Warn|WARNING:)')
 log_path = self.d.expand("${T}/log.do_rootfs")
 with open(log_path, 'r') as log:
 for line in log:
-if 'log_check' in line:
+for ee in excludes:
+m = ee.search(line)
+if m:
+break
+if m:
 continue
 
 m = r.search(line)
@@ -58,8 +69,8 @@ class Rootfs(object):
 # lines beginning with a + since sh -x may emit code which isn't
 # actually executed, but may contain error messages
 excludes = [ 'log_check', r'^\+' ]
-if hasattr(self, 'log_check_expected_errors_regexes'):
-excludes.extend(self.log_check_expected_errors_regexes)
+if hasattr(self, 'log_check_expected_regexes'):
+excludes.extend(self.log_check_expected_regexes)
 excludes = [re.compile(x) for x in excludes]
 r = re.compile(self.log_check_regex)
 log_path = self.d.expand("${T}/log.do_rootfs")
@@ -597,7 +608,7 @@ class DpkgRootfs(DpkgOpkgRootfs):
 def __init__(self, d, manifest_dir):
 super(DpkgRootfs, self).__init__(d)
 self.log_check_regex = '^E:'
-self.log_check_expected_errors_regexes = \
+self.log_check_expected_regexes = \
 [
 "^E: Unmet dependencies."
 ]
-- 
2.1.0

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


[OE-core] [PATCH] glibc: Add missing patch hunk back

2016-05-18 Thread Richard Purdie
This hunk of patch went missing during the glibc upgrade to 2.24
and without it, uninative-tarball doesn't work properly. This adds
it back so we can spin a new version of uninative.

Signed-off-by: Richard Purdie 

diff --git 
a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
 
b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
index 23b9fcb..2e7971c 100644
--- 
a/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
+++ 
b/meta/recipes-core/glibc/glibc/0003-nativesdk-glibc-Raise-the-size-of-arrays-containing-.patch
@@ -121,6 +121,18 @@ index eb2f900..505804e 100644
  #ifndef add_system_dir
  # define add_system_dir(dir) add_dir (dir)
  #endif
+diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c
+--- a/iconv/gconv_conf.c
 b/iconv/gconv_conf.c
+@@ -36,7 +36,7 @@
+ 
+ 
+ /* This is the default path where we look for module lists.  */
+-static const char default_gconv_path[] = GCONV_PATH;
++static char default_gconv_path[4096] __attribute__ ((section 
(".gccrelocprefix"))) = GCONV_PATH;
+ 
+ /* The path elements, as determined by the __gconv_get_path function.
+All path elements end in a slash.  */
 -- 
 2.8.2
 


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


[OE-core] [PATCH 1/1] acl.inc, run-ptest: improve ptest functionality on limited rootfs

2016-05-18 Thread Peter Seebach
ACL's ptest has a handful of failure modes which can be triggered by
a restrictive or small system. First, the ptest requires that daemon
be in the bin group, which run-ptest attempts to do using gpasswd,
but gpasswd is part of shadow, and oe-core removes shadow when it
doesn't think shadow will be needed. Even if, say, a package has
RDEPENDS on it. Whoops. So we manually sed the group file. This
will probably work.

Second, the filesystem used for the test has to support ACLs,
so we create a dummy ext3 filesystem and use that.

Third, the root/permissions test relies on the assumption that
"mkdir d" produces a directory which non-root users can access,
but in a secure product which defaults to umask 077, this doesn't
work. (That fix has been separately reported to upstream acl
through their bug report form.)

(This may prevent the test from running without mkfs.ext3, but it
allows the test to run on targets where root doesn't have ACL
support. Tradeoffs, tradeoffs everywhere.)

Signed-off-by: Peter Seebach 
---
 meta/recipes-support/attr/acl.inc  |1 +
 meta/recipes-support/attr/acl/run-ptest|   67 ++--
 .../attr/acl/test-fix-directory-permissions.patch  |   24 +++
 3 files changed, 87 insertions(+), 5 deletions(-)
 create mode 100644 
meta/recipes-support/attr/acl/test-fix-directory-permissions.patch

diff --git a/meta/recipes-support/attr/acl.inc 
b/meta/recipes-support/attr/acl.inc
index 198fb4f..aebebfd 100644
--- a/meta/recipes-support/attr/acl.inc
+++ b/meta/recipes-support/attr/acl.inc
@@ -14,6 +14,7 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.src.tar.gz \
file://acl-fix-the-order-of-expected-output-of-getfacl.patch \
file://test-fix-insufficient-quoting-of.patch \
file://test-fixups-on-SELinux-machines-for-root-testcases.patch \
+   file://test-fix-directory-permissions.patch \
 "
 
 require ea-acl.inc
diff --git a/meta/recipes-support/attr/acl/run-ptest 
b/meta/recipes-support/attr/acl/run-ptest
index 3b31cc9..a56946d 100644
--- a/meta/recipes-support/attr/acl/run-ptest
+++ b/meta/recipes-support/attr/acl/run-ptest
@@ -1,7 +1,64 @@
 #!/bin/sh
+#
+#This script is used to run acl test suites
 
-gpasswd -a daemon bin
-make -C test -k tests root-tests |sed \
- -e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
- -e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
-gpasswd -d daemon bin
+#umask 077
+
+EXT3_IMAGE=ext3.img
+EXT3_MOUNT_POINT=/mnt/ext3
+
+trap 'rm -f ${EXT3_IMAGE}' EXIT
+
+dd if=/dev/zero of=${EXT3_IMAGE} bs=1M count=1
+if [ "$?" -eq 0 ]; then
+   echo "PASS: dump ext3.img"
+else
+   echo "FAIL: dump ext3.img"
+   exit 1
+fi
+
+mkfs.ext3 -F ${EXT3_IMAGE}
+if [ "$?" -eq 0 ]; then
+   echo "PASS: mkfs.ext3 -F ext3.img"
+else
+   echo "FAIL: mkfs.ext3 -F ext3.img"
+   exit 1
+fi
+
+if [ -d $EXT3_MOUNT_POINT ]; then
+   echo "mount point exist"
+else
+   mkdir -p $EXT3_MOUNT_POINT
+fi
+
+
+mount -o loop,rw,acl  ${EXT3_IMAGE} $EXT3_MOUNT_POINT
+if [ "$?" -eq 0 ]; then
+   echo "PASS: mount ext3.img"
+else
+   echo "FAIL: mount ext3.img"
+   exit 1
+fi
+
+cp -rf ./test/ $EXT3_MOUNT_POINT
+
+cd $EXT3_MOUNT_POINT/test/
+
+if sed -e 's!^bin:x:2:$!bin:x:2:daemon!' < /etc/group > gtmp
+then   if  cp /etc/group group.orig;
+   thencp gtmp /etc/group
+   make  -k tests root-tests | sed \
+   -e 's|^\[.*\] \(.*\) -- ok$|PASS: \1|' \
+   -e 's|^\[.*\] \(.*\) -- failed|FAIL: \1|'
+   cp group.orig /etc/group
+   elseecho "FAIL: couldn't save original group file."
+   exit 1
+   fi
+else   echo "FAIL: couldn't create modified group file."
+   exit 1
+fi
+
+cd -
+umount $EXT3_MOUNT_POINT
+rm -rf $EXT3_MOUNT_POINT
+rm $EXT3_IMAGE
diff --git a/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch 
b/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
new file mode 100644
index 000..cd4510c
--- /dev/null
+++ b/meta/recipes-support/attr/acl/test-fix-directory-permissions.patch
@@ -0,0 +1,24 @@
+commit c45bae84817a70fef6c2b661a07a492a0d23ae85
+Author: Peter Seebach 
+Date:   Wed May 11 15:16:06 2016 -0500
+
+Fix permissions on temporary directory
+
+The temporary directory's permissions have to allow other users to
+view the directory. A default umask of 022 is common, but not mandatory,
+and secure systems may have more restrictive defaults.
+
+Signed-off-by: Peter Seebach 
+
+diff --git a/test/root/permissions.test b/test/root/permissions.test
+index 42615f5..098b52a 100644
+--- a/test/root/permissions.test
 b/test/root/permissions.test
+@@ -16,6 +16,7 @@ Cry immediately if we are not running as root.
+ First, set up a temporary directory and create a regular file with
+ defined permissions.
+ 
++  $ umask 022
+   $ mkdir d
+   $ 

Re: [OE-core] [oe-core PATCH v8 13/13] core-image-weston: If X11 is enabled, add XWayland support

2016-05-18 Thread Otavio Salvador
On Wed, May 18, 2016 at 1:40 PM, Otavio Salvador
 wrote:
> When the distribution has X11 and Wayland backends, we enable XWayland
> support and include XTerm as a test application for the XWayland
> backend.
>
> Signed-off-by: Otavio Salvador 

As discussed on IRC, instead of XTerm - which is not included on
OE-Core - we could use Xeyes as an utility to show it is working. What
do you think? Do you want me to send a v9 changing it or do you change
it when applying it?



-- 
Otavio Salvador O.S. Systems
http://www.ossystems.com.brhttp://code.ossystems.com.br
Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[OE-core] [PATCH 0/1] improvements to acl-ptest

2016-05-18 Thread Peter Seebach
The acl tests assume that umask is 022 (or similar) by default
for some of the permissions tests. The existing run-ptest script
also assumes availability of gpasswd, which we tend to remove by
default, and that the current filesystem supports ACLs. Fix
this by adding a line to the test script for the umask, and making
run-ptest use direct sed to alter /etc/group (it really does need
to) and use a temporary filesystem. (This creates a requirement for
mkfs.ext3, which may be a problem, but it works in our usual
environment, so I figure I'll leave it that way for now?)

The following changes since commit 2fef37fab6967410aff33744c8843bcae028de56:

  gcc: Security fix CVE-2016-4490 (2016-05-17 14:42:18 +0100)

are available in the git repository at:
  git://git.yoctoproject.org/poky-contrib seebs/aclptest
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=seebs/aclptest

Peter Seebach (1):
  acl.inc, run-ptest: improve ptest functionality on limited rootfs

 meta/recipes-support/attr/acl.inc  |1 +
 meta/recipes-support/attr/acl/run-ptest|   67 ++--
 .../attr/acl/test-fix-directory-permissions.patch  |   24 +++
 3 files changed, 87 insertions(+), 5 deletions(-)
 create mode 100644 
meta/recipes-support/attr/acl/test-fix-directory-permissions.patch

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


[OE-core] State of bitbake world 2016-05-17

2016-05-18 Thread Martin Jansa
There are few new failures most likely caused by glibc upgrade.

== Number of issues - stats ==
{| class='wikitable'
!|Date   !!colspan='3'|Failed tasks 
!!colspan='6'|Failed depencencies!!|Signatures
!!colspan='12'|QA !!Comment
|-
||  ||qemuarm   ||qemux86   ||qemux86_64
||qemuarm||max||min ||qemux86||max||min ||all   ||already-stripped  
||libdir||textrel   ||build-deps||file-rdeps
||version-going-backwards   ||host-user-contaminated
||installed-vs-shipped  ||unknown-configure-option  ||symlink-to-sysroot
||invalid-pkgconfig ||pkgname   ||  
|-
||2016-05-17||6 ||7 ||7 ||25||10||10||29||10
||11||0 ||0 ||0 ||2 ||2 
||29||0 ||3 ||0 ||0 
||0 ||0 ||0 ||  
|}

http://www.openembedded.org/wiki/Bitbake_World_Status

== Failed tasks 2016-05-17 ==

INFO: jenkins-job.sh-1.8.4 Complete log available at 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.report.20160518_103410.log

=== common (6) ===
* 
/meta-openembedded/meta-networking/recipes-netkit/netkit-rsh/netkit-rsh_0.17.bb,
 do_compile
* /meta-openembedded/meta-oe/recipes-extended/collectd/collectd_5.5.0.bb, 
do_compile
* /meta-openembedded/meta-oe/recipes-extended/tcsh/tcsh_6.18.01.bb, 
do_compile
* 
/meta-openembedded/meta-oe/recipes-support/postgresql/postgresql_9.4.5.bb, 
do_configure
* 
/meta-openembedded/meta-python/recipes-devtools/python/python-cryptography_1.1.bb,
 do_compile
* /meta-webos-ports/meta-luneui/recipes-luneui/luna-next/luna-next.bb, 
do_compile

=== common-x86 (1) ===
* /meta-browser/recipes-browser/chromium/chromium_48.0.2548.0.bb, do_compile

=== qemuarm (0) ===

=== qemux86 (0) ===

=== qemux86_64 (0) ===

=== Number of failed tasks (20) ===
{| class=wikitable
|-
|| qemuarm  || 6 || 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.qemuarm.20160516_044240.log//
 || http://errors.yoctoproject.org:80/Errors/Build/16131/
|-
|| qemux86  || 7 || 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.qemux86.20160516_044131.log//
 || http://errors.yoctoproject.org:80/Errors/Build/16133/
|-
|| qemux86_64   || 7 || 
http://logs.nslu2-linux.org/buildlogs/oe/world//log.world.qemux86-64.20160517_060435.log//
 || http://errors.yoctoproject.org:80/Errors/Build/16276/
|}

=== PNBLACKLISTs (91) ===

=== QA issues (36) ===
{| class=wikitable
!| Count||Issue
|-
||0 ||already-stripped
|-
||0 ||installed-vs-shipped
|-
||0 ||invalid-pkgconfig
|-
||0 ||libdir
|-
||0 ||pkgname
|-
||0 ||symlink-to-sysroot
|-
||0 ||unknown-configure-option
|-
||0 ||version-going-backwards
|-
||29||file-rdeps
|-
||2 ||build-deps
|-
||2 ||textrel
|-
||3 ||host-user-contaminated
|}



=== Failed dependencies for qemuarm (25) ===

Complete log: 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log/
Found differences: 
WARN: samba: samba rdepends on libpam, but it isn't a build dependency?
WARN: libdrm: libdrm-tests rdepends on cunit, but it isn't a build dependency?
WARN: libdrm: libdrm-tests rdepends on libdrm-amdgpu, but it isn't a build 
dependency?
WARN: enchant: enchant rdepends on hunspell, but it isn't a build dependency?
Found errors: 
ERROR: 25 issues were found in these recipes: chkconfig-alternatives-native 
collectd enchant gtkmathview libdrm luna-next meta-world-pkgdata netkit-rsh 
netmap postgresql proxy-libintl python-cryptography samba tcsh

=== Recipes failing with maximal dependencies for qemuarm (10) ===
chkconfig-alternatives-native -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/chkconfig-alternatives-native.log
collectd -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/collectd.log
luna-next -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/luna-next.log
meta-world-pkgdata -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/meta-world-pkgdata.log
netkit-rsh -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/netkit-rsh.log
netmap -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/netmap.log
postgresql -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/postgresql.log
proxy-libintl -- 
http://logs.nslu2-linux.org/buildlogs/oe/world/log.dependencies.qemuarm.20160517_041935.log//2_max/failed/proxy-libintl.log
python-cryptography -- 

Re: [OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Khem Raj
On Wed, May 18, 2016 at 2:03 AM, Robert Yang  wrote:
> * It doesn't build on armv4:
> {standard input}: Assembler messages:
> {standard input}:52: Error: selected processor does not support `blx 
> llint_throw_stack_overflow_error' in ARM mode
> {standard input}:126: Error: selected processor does not support `bkpt #0' in 
> ARM mode
> {standard input}:128: Error: selected processor does not support `blx r0' in 
> ARM mode
> {standard input}:134: Error: selected processor does not support `bkpt #0' in 
> ARM mode
> {standard input}:185: Error: selected processor does not support `blx 
> llint_throw_stack_overflow_error' in ARM mode
> {standard input}:256: Error: selected processor does not support `blx r4' in 
> ARM mode
> {standard input}:310: Error: selected processor does not support `movw 
> r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
> {standard input}:311: Error: selected processor does not support `movt 
> r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
> {standard input}:315: Error: selected processor does not support `movw 
> r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
> {standard input}:316: Error: selected processor does not support `movt 
> r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
> [snip]
>
> * It can build on armv7a, but doesn't work on runtime, cause
>   displaying problems or ephiphany hang.
>
> [YOCTO #9474]
>
> Signed-off-by: Robert Yang 
> ---
>  meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
> b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> index bdbcbea..23ead72 100644
> --- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> +++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
> @@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
>  EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
>  EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
>
> -# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only 
> on v7 onwards
> +# ARM JIT code does not build on ARMv4/5/6 anymore
>  EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
>  EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
> +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
> +
> +# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
> +# displaying problems or ephiphany hang.
> +EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "

this should work fine with thumb2 e.g. so this is a little broad brush
here to diable it across
all armv7

>
>  # binutils 2.25.1 has a bug on aarch64:
>  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
> --
> 2.7.4
>
> --
> ___
> 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] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Burton, Ross
On 18 May 2016 at 20:39, Otavio Salvador 
wrote:

> From the previous message it seems it won't work.
>

os.path.join has the "interesting" semantics that ("/foo", "/bar") produces
"/bar", whereas oe.path.join is basically just string joining so will
produce /foo/bar.

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


[OE-core] what kernel header files does "populate-sdk" export to user space?

2016-05-18 Thread Robert P. J. Day

  note: context of running "make export-sdk" in wind river linux, but
i have narrowed it down to pretty much the same question regarding
"bitbake -c populate-sdk". i hope.

  what kernel header files are copied to the sysroot(?) when running
that command? pretty clearly, everything under include/uapi should be
copied, or there's not much point to that kernel directory.

  better yet, where is the code/script/class that does that actual
copying, so i can read it for myself? thanks muchly.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday


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


Re: [OE-core] [PATCH v3] zip: fix security issues

2016-05-18 Thread Richard Purdie
On Tue, 2016-05-17 at 14:25 -0500, Edwin Plauchu wrote:
> From: Edwin Plauchu 
> 
> This patch avoids zip recipe fails to compile with compiler flags
> which elevate common string formatting issues into an error (-Wformat
> -Wformat-security -Werror=format-security).

In future please wrap the commit log as above and also, when sending a
series of patches like this, please don't allow them all to conflict.

In this case I could edit the patches by hand to make them apply as a
series but I shouldn't need to do that, it should be a series of 3,
with each one applying on top of the previous one.

The patches are in master-next and much improved over the original
versions, thanks.

Cheers,

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


Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Otavio Salvador
On Wed, May 18, 2016 at 12:54 PM, Burton, Ross  wrote:
>
> On 18 May 2016 at 15:14, Martin Jansa  wrote:
>>
>> Use os.path.join instead of +
>
>
> I just went and edited the patch directly to do that, so no need to send it
> again.

>From the previous message it seems it won't work.



-- 
Otavio Salvador O.S. Systems
http://www.ossystems.com.brhttp://code.ossystems.com.br
Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH 1/5] useradd.bbclass: Strip trailing '; ' in cmd params

2016-05-18 Thread Khem Raj
This fix was not sufficient and there has to be extra fix done to also
consider the case
when sysroot is created during image build time. I have updated it in
pull request here

http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/pu=642c6cf0b6a0371de476513162bd0cefa9c438b3

On Tue, May 17, 2016 at 9:40 PM, Khem Raj  wrote:
> When there are more than 1 packages in a recipe requiring useradd
> services, they are concatnated and a ';' is inserted just after
> each of the users being added by the packages. A situation arises
> in cases where this is controlled by PACKAGECONFIG then we add a
> ';' separator in the USERADD_PARAM value itself for each packagecofig
> since we do not know which one will be picked, we end up in situation
> where the final string returned from get_all_cmd_params() appears to be
>
> a; ; b; c;
>
> and then the logic which uses these cmds triggers with ';' as separator
> but in this case it will fail after executing useradd 'a' because the next
> cmd it will call will be just a whitespace
>
> This is highlighted by the systemd patch to add more users as needed
> by systemd 229 components.
>
> Signed-off-by: Khem Raj 
> ---
>  meta/classes/useradd.bbclass | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass
> index ee402ac..ae27c01 100644
> --- a/meta/classes/useradd.bbclass
> +++ b/meta/classes/useradd.bbclass
> @@ -203,7 +203,7 @@ def get_all_cmd_params(d, cmd_type):
>  for pkg in useradd_packages.split():
>  param = d.getVar(param_type % pkg, True)
>  if param:
> -params.append(param)
> +params.append(param.rstrip(" ;"))
>
>  return "; ".join(params)
>
> --
> 2.8.2
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Burton, Ross
On 18 May 2016 at 16:32, Martin Jansa  wrote:

> Please ignore what I said, os.path.join won't work anyway, because
> libdir starts with slash so os.path.join would just return that part.
>

Luckily we have oe.path.join which doesn't have the os.path.join semantics,
so I changed the patch when merging into mut to use that.

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


[OE-core] [oe-core PATCH v8 05/13] weston: Remove XWayland dependencies on PACKAGECONFIG

2016-05-18 Thread Otavio Salvador
Instead of adding partial dependencies we list the PACKAGECONFIG
options that are required. Those are: X11 and Wayland.

The previous value were redudant with X11 PACKAGECONFIG option and as
it is a requirement, for XWayland, it can be removed to easy
maintenance.

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2:
- Remove PAM requirement

 meta/recipes-graphics/wayland/weston_1.10.0.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-graphics/wayland/weston_1.10.0.bb 
b/meta/recipes-graphics/wayland/weston_1.10.0.bb
index 5771249..f6f87d9 100644
--- a/meta/recipes-graphics/wayland/weston_1.10.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.10.0.bb
@@ -71,8 +71,8 @@ PACKAGECONFIG[webp] = "--enable-webp,--disable-webp,libwebp"
 PACKAGECONFIG[libunwind] = "--enable-libunwind,--disable-libunwind,libunwind"
 # Weston with systemd-login support
 PACKAGECONFIG[systemd] = 
"--enable-systemd-login,--disable-systemd-login,systemd dbus"
-# Weston with Xwayland support
-PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,libxcb 
libxcursor cairo"
+# Weston with Xwayland support (requires X11 and Wayland)
+PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland"
 # colord CMS support
 PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord"
 # Clients support
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 01/13] weston: weston-launch: Handle invalid command line options

2016-05-18 Thread Otavio Salvador
From: Tom Hochstein 

Exit the program if an unrecognized command line option is found.

Signed-off-by: Tom Hochstein 
Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7:
- Rebase on top of 1.10 v2 + fixup

Changes in v6:
- Rebase on top of 1.10

Changes in v5:
- New patch.

Changes in v4: None
Changes in v3: None
Changes in v2: None

 ...eston-launch-exit-for-unrecognized-option.patch | 33 ++
 meta/recipes-graphics/wayland/weston_1.10.0.bb |  1 +
 2 files changed, 34 insertions(+)
 create mode 100644 
meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch

diff --git 
a/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch
 
b/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch
new file mode 100644
index 000..25c8683
--- /dev/null
+++ 
b/meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch
@@ -0,0 +1,33 @@
+From e8b615250f700f7854b423aaaf0a0aeea92c05a9 Mon Sep 17 00:00:00 2001
+From: Tom Hochstein 
+Date: Sat, 7 May 2016 08:51:58 -0300
+Subject: [PATCH] weston-launch: Handle invalid command line options
+Organization: O.S. Systems Software LTDA.
+
+Exit the program if an unrecognized command line option is found.
+
+Upstream-Status: Submitted
+
+Signed-off-by; Tom Hochstein 
+Signed-off-by: Otavio Salvador 
+---
+
+ src/weston-launch.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/weston-launch.c b/src/weston-launch.c
+index b8dfb17..9987d8e 100644
+--- a/src/weston-launch.c
 b/src/weston-launch.c
+@@ -703,6 +703,8 @@ main(int argc, char *argv[])
+   case 'h':
+   help("weston-launch");
+   exit(EXIT_FAILURE);
++  default:
++  exit(EXIT_FAILURE);
+   }
+   }
+ 
+-- 
+2.8.2
+
diff --git a/meta/recipes-graphics/wayland/weston_1.10.0.bb 
b/meta/recipes-graphics/wayland/weston_1.10.0.bb
index d8c9f9f..d3e2607 100644
--- a/meta/recipes-graphics/wayland/weston_1.10.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.10.0.bb
@@ -11,6 +11,7 @@ SRC_URI = 
"https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://make-libwebp-explicitly-configurable.patch \
file://0001-make-error-portable.patch \
file://0001-configure.ac-Fix-wayland-protocols-path.patch \
+   file://make-weston-launch-exit-for-unrecognized-option.patch \
 "
 SRC_URI[md5sum] = "1cd17c54ecac6d9a3cd90bf12eaa3e20"
 SRC_URI[sha256sum] = 
"e0b2004d00d8293ddf7903ca283c1746afa9ccb5919ab50fd04397ff472aa5c1"
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 00/13] Improve Weston and Xwayland integration

2016-05-18 Thread Otavio Salvador
Up to now, to make Xwayland to work it required several manual hacks
and it was difficult to make an image which had support for it out of
box.

This patchset intends to set the base for it. It enables weston-init
to be extended to support Xwayland launch when needed.

While working on it, some improvements on weston and weston-init were
done.

Changes in v8:
- Split XWayland module in a package (Ross)
- Use ${datadir} for module path (Ross)
- Change order of patch (Ross)
- Install weston-xwayland package (Ross)

Changes in v7:
- Rebase on top of 1.10 v2 + fixup
- Rebase on top of 1.10 v2 + fixup

Changes in v6:
- Rebase on top of 1.10
- Fix typo on commit log (rborton)
- New patch.
- New patch.
- Add xterm

Changes in v5:
- New patch.

Changes in v4:
- New patch.
- New patch.
- Use --log= for weston call

Changes in v3:
- Fix log redirection
- Fix argument pass for openvt
- New patch.

Changes in v2:
- Remove PAM requirement
- Remove PAM requirement
- Drop weston-lunch use as it requires PAM
- Move weston-start module to weston package
- Stop using weston-launch

Otavio Salvador (10):
  weston: Fix SystemD service description
  weston: Add PACKAGECONFIG option for 'clients'
  weston: Enable XWayland when X11 and Wayland support are available
  weston: Remove XWayland dependencies on PACKAGECONFIG
  weston-init: Rework do_install to use install -D option
  weston-init: Rework init sequence to avoid code duplication
  weston-init: Error out if loading a nested instance
  weston-init: Add module support for the weston-start helper
  weston: Add Xwayland initialization support using weston-start
  core-image-weston: If X11 is enabled, add XWayland support

Tom Hochstein (3):
  weston: weston-launch: Handle invalid command line options
  weston: Provide a default version of weston-launch that doesn't
require PAM
  weston-init: Use weston-launch when starting weston as the first
windowing system

 meta/recipes-graphics/images/core-image-weston.bb  |   1 +
 meta/recipes-graphics/wayland/weston-init.bb   |  12 +-
 meta/recipes-graphics/wayland/weston-init/init |   9 +-
 .../wayland/weston-init/weston-start   |  72 +
 .../wayland/weston-init/weston.service |   7 +-
 ...ch-Provide-a-default-version-that-doesn-t.patch | 171 +
 ...eston-launch-exit-for-unrecognized-option.patch |  33 
 .../wayland/weston/xwayland.weston-start   |   7 +
 meta/recipes-graphics/wayland/weston_1.10.0.bb |  31 ++--
 9 files changed, 316 insertions(+), 27 deletions(-)
 create mode 100755 meta/recipes-graphics/wayland/weston-init/weston-start
 create mode 100644 
meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
 create mode 100644 
meta/recipes-graphics/wayland/weston/make-weston-launch-exit-for-unrecognized-option.patch
 create mode 100644 meta/recipes-graphics/wayland/weston/xwayland.weston-start

-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 04/13] weston: Enable XWayland when X11 and Wayland support are available

2016-05-18 Thread Otavio Salvador
When the DISTRO has X11 and Wayland support enabled, XWayland ought to
be enabled by default.

Signed-off-by: Otavio Salvador 
---

Changes in v8:
- Split XWayland module in a package (Ross)

Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2:
- Remove PAM requirement

 meta/recipes-graphics/wayland/weston_1.10.0.bb | 5 +
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-graphics/wayland/weston_1.10.0.bb 
b/meta/recipes-graphics/wayland/weston_1.10.0.bb
index 16e961d..5771249 100644
--- a/meta/recipes-graphics/wayland/weston_1.10.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.10.0.bb
@@ -38,6 +38,7 @@ EXTRA_OECONF_append_qemux86-64 = "\
"
 PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms 
fbdev wayland egl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', 
d)} \
+   ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 
'xwayland', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'launch', 
'', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 
'systemd', '', d)} \
clients"
@@ -91,11 +92,15 @@ do_install_append() {
 fi
 }
 
+PACKAGE_BEFORE_PN += "${PN}-xwayland"
 PACKAGES += "${PN}-examples"
 
 FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal 
${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode 
${libexecdir} ${libdir}/${BPN}/*.so ${datadir}"
 FILES_${PN}-examples = "${bindir}/*"
 
+FILES_${PN}-xwayland = "${libdir}/${BPN}/xwayland.so"
+RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland"
+
 RDEPENDS_${PN} += "xkeyboard-config"
 RRECOMMENDS_${PN} = "liberation-fonts"
 RRECOMMENDS_${PN}-dev += "wayland-protocols"
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 06/13] weston: Provide a default version of weston-launch that doesn't require PAM

2016-05-18 Thread Otavio Salvador
From: Tom Hochstein 

weston-launch requires PAM for starting weston as a non-root user.

Since starting weston as root is a valid use case by itself, we check
the distro for 'pam' and build weston-launch with or without
non-root-user support.

Signed-off-by: Tom Hochstein 
Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6:
- New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 ...ch-Provide-a-default-version-that-doesn-t.patch | 171 +
 meta/recipes-graphics/wayland/weston_1.10.0.bb |   9 +-
 2 files changed, 177 insertions(+), 3 deletions(-)
 create mode 100644 
meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch

diff --git 
a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
 
b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
new file mode 100644
index 000..9a401ee
--- /dev/null
+++ 
b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
@@ -0,0 +1,171 @@
+From 228349e796e9baa86f2ba8232c730c18ac41283d Mon Sep 17 00:00:00 2001
+From: Tom Hochstein 
+Date: Fri, 13 May 2016 09:31:55 -0500
+Subject: [PATCH weston] weston-launch: Provide a default version that doesn't
+ require PAM
+
+weston-launch requires PAM for starting weston as a non-root user.
+
+Since starting weston as root is a valid use case by itself, if
+PAM is not available, provide a default version of weston-launch
+without non-root-user support.
+
+Upstream-Status: Pending
+
+Signed-off-by: Tom Hochstein 
+---
+ Makefile.am |  3 ---
+ configure.ac| 12 +++-
+ src/weston-launch.c | 20 
+ 3 files changed, 27 insertions(+), 8 deletions(-)
+
+Index: weston-1.10.0/configure.ac
+===
+--- weston-1.10.0.orig/configure.ac2016-05-13 11:02:05.711817559 -0500
 weston-1.10.0/configure.ac 2016-05-13 13:30:28.0 -0500
+@@ -445,13 +445,17 @@
+ AS_IF([test "x$have_systemd_login_209" = "xyes"],
+   [AC_DEFINE([HAVE_SYSTEMD_LOGIN_209], [1], [Have systemd-login >= 209])])
+ 
++AC_ARG_WITH(pam,
++AS_HELP_STRING([--with-pam], [Use PAM]),
++[use_pam=$withval], [use_pam=yes])
+ AC_ARG_ENABLE(weston-launch, [  --enable-weston-launch],, 
enable_weston_launch=yes)
+ AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch == xyes)
+-if test x$enable_weston_launch == xyes; then
++if test x$enable_weston_launch = xyes -a x$use_pam = xyes; then
+   AC_CHECK_LIB([pam], [pam_open_session], [have_pam=yes], [have_pam=no])
+   if test x$have_pam == xno; then
+-AC_ERROR([weston-launch requires pam])
++AC_ERROR([PAM support is explicitly requested, but libpam couldn't be 
found])
+   fi
++  AC_DEFINE([HAVE_PAM], [1], [Define if PAM is available])
+   PAM_LIBS=-lpam
+   AC_SUBST(PAM_LIBS)
+ fi
+@@ -667,6 +671,7 @@
+   Enable developer documentation  ${enable_devdocs}
+ 
+   weston-launch utility   ${enable_weston_launch}
++  PAM support ${use_pam}
+   systemd-login support   ${have_systemd_login}
+   systemd notify support  ${enable_systemd_notify}
+ 
+Index: weston-1.10.0/src/weston-launch.c
+===
+--- weston-1.10.0.orig/src/weston-launch.c 2016-05-13 11:02:05.779817896 
-0500
 weston-1.10.0/src/weston-launch.c  2016-05-13 11:02:05.851818253 -0500
+@@ -51,7 +51,9 @@
+ 
+ #include 
+ #include 
++#ifdef HAVE_PAM
+ #include 
++#endif
+ 
+ #ifdef HAVE_SYSTEMD_LOGIN
+ #include 
+@@ -93,8 +95,10 @@
+ #endif
+ 
+ struct weston_launch {
++#ifdef HAVE_PAM
+   struct pam_conv pc;
+   pam_handle_t *ph;
++#endif
+   int tty;
+   int ttynr;
+   int sock[2];
+@@ -181,6 +185,7 @@
+   return false;
+ }
+ 
++#ifdef HAVE_PAM
+ static int
+ pam_conversation_fn(int msg_count,
+   const struct pam_message **messages,
+@@ -221,6 +226,7 @@
+ 
+   return 0;
+ }
++#endif
+ 
+ static int
+ setup_launcher_socket(struct weston_launch *wl)
+@@ -414,6 +420,7 @@
+   close(wl->signalfd);
+   close(wl->sock[0]);
+ 
++#ifdef HAVE_PAM
+   if (wl->new_user) {
+   err = pam_close_session(wl->ph, 0);
+   if (err)
+@@ -421,6 +428,7 @@
+   err, pam_strerror(wl->ph, err));
+   pam_end(wl->ph, err);
+   }
++#endif
+ 
+   if (ioctl(wl->tty, KDSKBMUTE, 0) &&
+   ioctl(wl->tty, KDSKBMODE, wl->kb_mode))
+@@ -600,6 +608,7 @@
+   setenv("HOME", wl->pw->pw_dir, 1);
+   setenv("SHELL", wl->pw->pw_shell, 1);
+ 
++#ifdef HAVE_PAM
+   env = pam_getenvlist(wl->ph);
+ 

[OE-core] [oe-core PATCH v8 02/13] weston: Fix SystemD service description

2016-05-18 Thread Otavio Salvador
This improves the log shown in boot. Now it shows:

  [  OK  ] Started Weston Wayland Compositor

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6:
- Fix typo on commit log (rborton)

Changes in v5: None
Changes in v4:
- New patch.

Changes in v3: None
Changes in v2: None

 meta/recipes-graphics/wayland/weston-init/weston.service | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-graphics/wayland/weston-init/weston.service 
b/meta/recipes-graphics/wayland/weston-init/weston.service
index 4f1f7ff..12aedb7 100644
--- a/meta/recipes-graphics/wayland/weston-init/weston.service
+++ b/meta/recipes-graphics/wayland/weston-init/weston.service
@@ -1,5 +1,5 @@
 [Unit]
-Description=Weston Wayland compositor startup
+Description=Weston Wayland Compositor
 RequiresMountsFor=/run
 
 [Service]
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 13/13] core-image-weston: If X11 is enabled, add XWayland support

2016-05-18 Thread Otavio Salvador
When the distribution has X11 and Wayland backends, we enable XWayland
support and include XTerm as a test application for the XWayland
backend.

Signed-off-by: Otavio Salvador 
---

Changes in v8:
- Install weston-xwayland package (Ross)

Changes in v7: None
Changes in v6:
- Add xterm

Changes in v5: None
Changes in v4: None
Changes in v3:
- New patch.

Changes in v2: None

 meta/recipes-graphics/images/core-image-weston.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-graphics/images/core-image-weston.bb 
b/meta/recipes-graphics/images/core-image-weston.bb
index 52e271d..f62f9d7 100644
--- a/meta/recipes-graphics/images/core-image-weston.bb
+++ b/meta/recipes-graphics/images/core-image-weston.bb
@@ -9,3 +9,4 @@ inherit core-image distro_features_check
 REQUIRED_DISTRO_FEATURES = "wayland"
 
 CORE_IMAGE_BASE_INSTALL += "weston weston-init weston-examples gtk+3-demo 
clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 
'weston-xwayland xterm', '', d)}"
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 12/13] weston-init: Use weston-launch when starting weston as the first windowing system

2016-05-18 Thread Otavio Salvador
From: Tom Hochstein 

When  weston is started as the first windowing system (i.e. not under X
nor under another Wayland server), it should be done with  the  command
weston-launch to set up proper privileged access to devices.

Signed-off-by: Tom Hochstein 
Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6:
- New patch.

Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 meta/recipes-graphics/wayland/weston-init/weston-start | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start 
b/meta/recipes-graphics/wayland/weston-init/weston-start
index 4aa7c66..72ba4b7 100755
--- a/meta/recipes-graphics/wayland/weston-init/weston-start
+++ b/meta/recipes-graphics/wayland/weston-init/weston-start
@@ -31,6 +31,11 @@ if [ -n "$WAYLAND_DISPLAY" ]; then
echo "ERROR: A Wayland compositor is already running, nested Weston 
instance is not supported yet."
exit 1
 fi
+if [ -n "$DISPLAY" ]; then
+   launcher="weston"
+else
+   launcher="weston-launch --"
+fi
 
 openvt_args=""
 while [ -n "$1" ]; do
@@ -64,4 +69,4 @@ if test -z "$XDG_RUNTIME_DIR"; then
 chmod 0700 $XDG_RUNTIME_DIR
 fi
 
-exec openvt $openvt_args -- weston $weston_args --log=/var/log/weston.log
+exec openvt $openvt_args -- $launcher $weston_args --log=/var/log/weston.log
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 11/13] weston: Add Xwayland initialization support using weston-start

2016-05-18 Thread Otavio Salvador
The weston-start script now supports loading modules so the Xwayland
support can be loaded optionally. Use this to load Weston accordingly.

Signed-off-by: Otavio Salvador 
---

Changes in v8:
- Change order of patch (Ross)

Changes in v7:
- Rebase on top of 1.10 v2 + fixup

Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2:
- Move weston-start module to weston package
- Stop using weston-launch

 meta/recipes-graphics/wayland/weston/xwayland.weston-start | 7 +++
 meta/recipes-graphics/wayland/weston_1.10.0.bb | 7 ++-
 2 files changed, 13 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-graphics/wayland/weston/xwayland.weston-start

diff --git a/meta/recipes-graphics/wayland/weston/xwayland.weston-start 
b/meta/recipes-graphics/wayland/weston/xwayland.weston-start
new file mode 100644
index 000..b483c97
--- /dev/null
+++ b/meta/recipes-graphics/wayland/weston/xwayland.weston-start
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+if type Xwayland  >/dev/null 2>/dev/null; then
+   mkdir -p /tmp/.X11-unix
+
+   add_weston_argument "--modules=xwayland.so"
+fi
diff --git a/meta/recipes-graphics/wayland/weston_1.10.0.bb 
b/meta/recipes-graphics/wayland/weston_1.10.0.bb
index 347f806..dae3cc9 100644
--- a/meta/recipes-graphics/wayland/weston_1.10.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.10.0.bb
@@ -11,6 +11,7 @@ SRC_URI = 
"https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://make-libwebp-explicitly-configurable.patch \
file://0001-make-error-portable.patch \
file://0001-configure.ac-Fix-wayland-protocols-path.patch \
+   file://xwayland.weston-start \
file://make-weston-launch-exit-for-unrecognized-option.patch \

file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
 "
@@ -92,7 +93,11 @@ do_install_append() {
 
install -d ${D}${datadir}/icons/hicolor/48x48/apps
install ${WORKDIR}/weston.png 
${D}${datadir}/icons/hicolor/48x48/apps
-fi
+   fi
+
+   if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', 
d)}" = "yes" ]; then
+   install -Dm 644 ${WORKDIR}/xwayland.weston-start 
${D}${datadir}/weston-start/xwayland
+   fi
 }
 
 PACKAGE_BEFORE_PN += "${PN}-xwayland"
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 10/13] weston-init: Add module support for the weston-start helper

2016-05-18 Thread Otavio Salvador
To make weston-start more flexible we now support module loading. For
such modules, following functions can be used:

 - add_weston_argument
 - add_openvt_argument

Signed-off-by: Otavio Salvador 
---

Changes in v8:
- Use ${datadir} for module path (Ross)

Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2:
- Drop weston-lunch use as it requires PAM

 meta/recipes-graphics/wayland/weston-init.bb   |  3 +++
 .../wayland/weston-init/weston-start   | 26 ++
 2 files changed, 29 insertions(+)

diff --git a/meta/recipes-graphics/wayland/weston-init.bb 
b/meta/recipes-graphics/wayland/weston-init.bb
index 3a2251e..e4e2701 100644
--- a/meta/recipes-graphics/wayland/weston-init.bb
+++ b/meta/recipes-graphics/wayland/weston-init.bb
@@ -11,7 +11,10 @@ S = "${WORKDIR}"
 do_install() {
install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
install -Dm0644 ${WORKDIR}/weston.service 
${D}${systemd_system_unitdir}/weston.service
+
+   # Install weston-start script
install -Dm755 ${WORKDIR}/weston-start ${D}${bindir}/weston-start
+   sed -i 's,@DATADIR@,${datadir},g' ${D}${bindir}/weston-start
 }
 
 inherit allarch update-rc.d distro_features_check systemd
diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start 
b/meta/recipes-graphics/wayland/weston-init/weston-start
index dc2b1ef..4aa7c66 100755
--- a/meta/recipes-graphics/wayland/weston-init/weston-start
+++ b/meta/recipes-graphics/wayland/weston-init/weston-start
@@ -9,6 +9,19 @@ usage() {
 EOF
 }
 
+## Module support
+modules_dir=@DATADIR@/weston-start
+
+# Add weston extra argument
+add_weston_argument() {
+   weston_args="$weston_args $1"
+}
+
+# Add openvt extra argument
+add_openvt_argument() {
+   openvt_args="$openvt_args $1"
+}
+
 if test $# -lt 2; then
usage
exit 1
@@ -32,6 +45,19 @@ done
 
 weston_args=$*
 
+# Load and run modules
+if [ -d "$modules_dir" ]; then
+   for m in "$modules_dir"/*; do
+   # Skip backup files
+   if [ "`echo $m | sed -e 's/\~$//'`" != "$m" ]; then
+   continue
+   fi
+
+   # process module
+   . $m
+   done
+fi
+
 if test -z "$XDG_RUNTIME_DIR"; then
 export XDG_RUNTIME_DIR=/run/user/`id -u`
 mkdir --parents $XDG_RUNTIME_DIR
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 09/13] weston-init: Error out if loading a nested instance

2016-05-18 Thread Otavio Salvador
The Weston nested instance support is not implemented. This errors out
displaying an informative error message so someone insterested on it
may look at implement this later.

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 meta/recipes-graphics/wayland/weston-init/weston-start | 5 +
 1 file changed, 5 insertions(+)

diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start 
b/meta/recipes-graphics/wayland/weston-init/weston-start
index b791fd5..dc2b1ef 100755
--- a/meta/recipes-graphics/wayland/weston-init/weston-start
+++ b/meta/recipes-graphics/wayland/weston-init/weston-start
@@ -14,6 +14,11 @@ if test $# -lt 2; then
exit 1
 fi
 
+if [ -n "$WAYLAND_DISPLAY" ]; then
+   echo "ERROR: A Wayland compositor is already running, nested Weston 
instance is not supported yet."
+   exit 1
+fi
+
 openvt_args=""
 while [ -n "$1" ]; do
openvt_args="$openvt_args $1"
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 08/13] weston-init: Rework init sequence to avoid code duplication

2016-05-18 Thread Otavio Salvador
The new 'weston-start' script redcues the code duplication for SysV
and SystemD based images.

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4:
- Use --log= for weston call

Changes in v3:
- Fix log redirection
- Fix argument pass for openvt

Changes in v2: None

 meta/recipes-graphics/wayland/weston-init.bb   |  4 ++-
 meta/recipes-graphics/wayland/weston-init/init |  9 +-
 .../wayland/weston-init/weston-start   | 36 ++
 .../wayland/weston-init/weston.service |  5 +--
 4 files changed, 41 insertions(+), 13 deletions(-)
 create mode 100755 meta/recipes-graphics/wayland/weston-init/weston-start

diff --git a/meta/recipes-graphics/wayland/weston-init.bb 
b/meta/recipes-graphics/wayland/weston-init.bb
index 4ad62cf..3a2251e 100644
--- a/meta/recipes-graphics/wayland/weston-init.bb
+++ b/meta/recipes-graphics/wayland/weston-init.bb
@@ -3,13 +3,15 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = 
"file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
 
 SRC_URI = "file://init \
-   file://weston.service"
+   file://weston.service \
+   file://weston-start"
 
 S = "${WORKDIR}"
 
 do_install() {
install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
install -Dm0644 ${WORKDIR}/weston.service 
${D}${systemd_system_unitdir}/weston.service
+   install -Dm755 ${WORKDIR}/weston-start ${D}${bindir}/weston-start
 }
 
 inherit allarch update-rc.d distro_features_check systemd
diff --git a/meta/recipes-graphics/wayland/weston-init/init 
b/meta/recipes-graphics/wayland/weston-init/init
index 2e938f4..5c925f4 100644
--- a/meta/recipes-graphics/wayland/weston-init/init
+++ b/meta/recipes-graphics/wayland/weston-init/init
@@ -31,14 +31,7 @@ case "$1" in
   start)
 . /etc/profile
 
-# This is all a nasty hack
-if test -z "$XDG_RUNTIME_DIR"; then
-export XDG_RUNTIME_DIR=/run/user/root
-mkdir --parents $XDG_RUNTIME_DIR
-chmod 0700 $XDG_RUNTIME_DIR
-fi
-
-openvt -s weston -- $OPTARGS
+weston-start -s -- $OPTARGS
   ;;
 
   stop)
diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start 
b/meta/recipes-graphics/wayland/weston-init/weston-start
new file mode 100755
index 000..b791fd5
--- /dev/null
+++ b/meta/recipes-graphics/wayland/weston-init/weston-start
@@ -0,0 +1,36 @@
+#!/bin/sh
+# Copyright (C) 2016 O.S. Systems Software LTDA.
+
+export PATH="/sbin:/usr/sbin:/bin:/usr/bin"
+
+usage() {
+cat < -- 
+EOF
+}
+
+if test $# -lt 2; then
+   usage
+   exit 1
+fi
+
+openvt_args=""
+while [ -n "$1" ]; do
+   openvt_args="$openvt_args $1"
+   shift
+
+   if [ "$1" = "--" ]; then
+   shift
+   break
+   fi
+done
+
+weston_args=$*
+
+if test -z "$XDG_RUNTIME_DIR"; then
+export XDG_RUNTIME_DIR=/run/user/`id -u`
+mkdir --parents $XDG_RUNTIME_DIR
+chmod 0700 $XDG_RUNTIME_DIR
+fi
+
+exec openvt $openvt_args -- weston $weston_args --log=/var/log/weston.log
diff --git a/meta/recipes-graphics/wayland/weston-init/weston.service 
b/meta/recipes-graphics/wayland/weston-init/weston.service
index 12aedb7..689ce41 100644
--- a/meta/recipes-graphics/wayland/weston-init/weston.service
+++ b/meta/recipes-graphics/wayland/weston-init/weston.service
@@ -5,10 +5,7 @@ RequiresMountsFor=/run
 [Service]
 User=root
 EnvironmentFile=-/etc/default/weston
-Environment="XDG_RUNTIME_DIR=/run/user/root"
-ExecStartPre=/bin/mkdir -p /run/user/root
-ExecStartPre=/bin/chmod 0700 /run/user/root
-ExecStart=/usr/bin/openvt -v -e /usr/bin/weston -- $OPTARGS
+ExecStart=/usr/bin/weston-start -v -e -- $OPTARGS
 
 [Install]
 WantedBy=multi-user.target
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 07/13] weston-init: Rework do_install to use install -D option

2016-05-18 Thread Otavio Salvador
The install -D allow for the parent directories to be created in a
single command line, reducing the code and number of fork during the
build.

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

 meta/recipes-graphics/wayland/weston-init.bb | 7 ++-
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-graphics/wayland/weston-init.bb 
b/meta/recipes-graphics/wayland/weston-init.bb
index 653541e..4ad62cf 100644
--- a/meta/recipes-graphics/wayland/weston-init.bb
+++ b/meta/recipes-graphics/wayland/weston-init.bb
@@ -8,11 +8,8 @@ SRC_URI = "file://init \
 S = "${WORKDIR}"
 
 do_install() {
-   install -d ${D}/${sysconfdir}/init.d
-   install -m755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
-
-   install -d ${D}${systemd_system_unitdir}
-   install -m0644 ${WORKDIR}/weston.service ${D}${systemd_system_unitdir}
+   install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
+   install -Dm0644 ${WORKDIR}/weston.service 
${D}${systemd_system_unitdir}/weston.service
 }
 
 inherit allarch update-rc.d distro_features_check systemd
-- 
2.8.2

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


[OE-core] [oe-core PATCH v8 03/13] weston: Add PACKAGECONFIG option for 'clients'

2016-05-18 Thread Otavio Salvador
This allow Weston to be build without the clients.

Signed-off-by: Otavio Salvador 
---

Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4:
- New patch.

Changes in v3: None
Changes in v2: None

 meta/recipes-graphics/wayland/weston_1.10.0.bb | 7 +++
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-graphics/wayland/weston_1.10.0.bb 
b/meta/recipes-graphics/wayland/weston_1.10.0.bb
index d3e2607..16e961d 100644
--- a/meta/recipes-graphics/wayland/weston_1.10.0.bb
+++ b/meta/recipes-graphics/wayland/weston_1.10.0.bb
@@ -24,9 +24,6 @@ DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg"
 DEPENDS += "wayland wayland-protocols libinput virtual/egl pango 
wayland-native"
 
 EXTRA_OECONF = "--enable-setuid-install \
---enable-simple-clients \
---enable-clients \
---enable-demo-clients-install \
 --disable-rpi-compositor \
 --disable-rdp-compositor \
 WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE} \
@@ -43,7 +40,7 @@ PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 
'wayland', 'kms fbdev
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', 
d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'launch', 
'', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 
'systemd', '', d)} \
-  "
+   clients"
 #
 # Compositor choices
 #
@@ -77,6 +74,8 @@ PACKAGECONFIG[systemd] = 
"--enable-systemd-login,--disable-systemd-login,systemd
 PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland,libxcb 
libxcursor cairo"
 # colord CMS support
 PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord"
+# Clients support
+PACKAGECONFIG[clients] = "--enable-clients --enable-simple-clients 
--enable-demo-clients-install,--disable-clients --disable-simple-clients"
 
 do_install_append() {
# Weston doesn't need the .la files to load modules, so wipe them
-- 
2.8.2

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


[OE-core] [PATCH v2 4/6] image creation: support converting masked types

2016-05-18 Thread Ed Bartosh
From: Patrick Ohly 

Conversion to vmdk/vdi/qcow2 is also useful for other base images
types, not just for .hdddirect. This can be achieved by definining
them as conversion commands and relying on the conversion chaining
to convert arbitrary base images.

For this to work when the base image gets created by a masked image
type, the additional conversion commands now get executed in a
do_image_complete prefunc.

With all of that in place it becomes possible to remove the special
purpose code for vmdk/vdi/qcow2 types from image-vm.bbclass and
several other classes. This has (intentional!) implications on the
valid IMAGE_FSTYPES and the file suffices: now
"hdddirect.vmdk/vdi/qcow2" must be used as IMAGE_FSTYPES to select the
former special-case types "vmdk/vdi/qcow2", and the image files and
links will also have the extra .hdddirect suffix.

This is intentional because it makes it makes it possible to
distinguish between virtual machine images created from .hdddirect and
those created from other base images.

The new support for virtual machine images can also be combined with
compression, thus making it possible to create image files for
publication in compressed format, for example with:
  IMAGE_FSTYPES = "hdddirect.vdi.xz"

Signed-off-by: Patrick Ohly 
Signed-off-by: Ed Bartosh 
Signed-off-by: Ed Bartosh 
---
 meta/classes/image-live.bbclass|  2 +-
 meta/classes/image-vm.bbclass  | 33 ++
 meta/classes/image.bbclass | 73 +++---
 meta/classes/image_types.bbclass   | 20 --
 meta/conf/documentation.conf   |  1 -
 .../images/build-appliance-image_14.0.0.bb |  6 +-
 6 files changed, 75 insertions(+), 60 deletions(-)

diff --git a/meta/classes/image-live.bbclass b/meta/classes/image-live.bbclass
index ea6ced2..2fbec05 100644
--- a/meta/classes/image-live.bbclass
+++ b/meta/classes/image-live.bbclass
@@ -43,7 +43,7 @@ ROOT_LIVE ?= "root=/dev/ram0"
 INITRD_IMAGE_LIVE ?= "core-image-minimal-initramfs"
 INITRD_LIVE ?= "${DEPLOY_DIR_IMAGE}/${INITRD_IMAGE_LIVE}-${MACHINE}.cpio.gz"
 
-ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.ext4"
+ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ext4"
 
 IMAGE_TYPEDEP_live = "ext4"
 IMAGE_TYPEDEP_iso = "ext4"
diff --git a/meta/classes/image-vm.bbclass b/meta/classes/image-vm.bbclass
index 2bbd9d3..fbfcf03 100644
--- a/meta/classes/image-vm.bbclass
+++ b/meta/classes/image-vm.bbclass
@@ -26,14 +26,11 @@ do_bootdirectdisk[depends] += 
"dosfstools-native:do_populate_sysroot \
${PN}:do_image_${VM_ROOTFS_TYPE} \
"
 
-IMAGE_TYPEDEP_vmdk = "${VM_ROOTFS_TYPE}"
-IMAGE_TYPEDEP_vdi = "${VM_ROOTFS_TYPE}"
-IMAGE_TYPEDEP_qcow2 = "${VM_ROOTFS_TYPE}"
+VM_ROOTFS_TYPE ?= "ext4"
 IMAGE_TYPEDEP_hdddirect = "${VM_ROOTFS_TYPE}"
-IMAGE_TYPES_MASKED += "vmdk vdi qcow2 hdddirect"
+IMAGE_TYPES_MASKED += "hdddirect"
 
-VM_ROOTFS_TYPE ?= "ext4"
-ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.${VM_ROOTFS_TYPE}"
+ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.ext4"
 
 # Used by bootloader
 LABELS_VM ?= "boot"
@@ -150,27 +147,5 @@ run_qemu_img (){
 qemu-img convert -O $type ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.hdddirect 
${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.$type
 ln -sf ${IMAGE_NAME}.$type ${DEPLOY_DIR_IMAGE}/${IMAGE_LINK_NAME}.$type
 }
-create_vmdk_image () {
-run_qemu_img vmdk
-}
-
-create_vdi_image () {
-run_qemu_img vdi
-}
-
-create_qcow2_image () {
-run_qemu_img qcow2
-}
-
-python do_vmimg() {
-if 'vmdk' in d.getVar('IMAGE_FSTYPES', True):
-bb.build.exec_func('create_vmdk_image', d)
-if 'vdi' in d.getVar('IMAGE_FSTYPES', True):
-bb.build.exec_func('create_vdi_image', d)
-if 'qcow2' in d.getVar('IMAGE_FSTYPES', True):
-bb.build.exec_func('create_qcow2_image', d)
-}
 
-addtask bootdirectdisk before do_vmimg
-addtask vmimg after do_bootdirectdisk before do_image_complete
-do_vmimg[depends] += "qemu-native:do_populate_sysroot"
+addtask bootdirectdisk before do_image_complete
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 46a4d03..a1751dc 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -127,6 +127,13 @@ do_rootfs[vardeps] += "${@rootfs_variables(d)}"
 
 do_build[depends] += "virtual/kernel:do_deploy"
 
+def image_type_active(type, d):
+'''True if any entry in IMAGE_FSTYPES is type or depends on it.'''
+for entry in d.getVar("IMAGE_FSTYPES", True).split():
+if entry == type or entry.startswith(type + "."):
+return True
+return False
+
 def build_live(d):
 if bb.utils.contains("IMAGE_FSTYPES", "live", "live", "0", d) == "0": # 
live is not set but hob might set iso or hddimg
 d.setVar('NOISO', 

[OE-core] [PATCH v2 5/6] image.bbclass: rename COMPRESS(ION) to CONVERSION

2016-05-18 Thread Ed Bartosh
From: Patrick Ohly 

With the enhanced functionality, the term "compression" is no longer
accurate, because the mechanism also gets used for conversion
operations that do not actually compress data.

It is possible to remove this naming problem in a backward-compatible
manner by including COMPRESSIONTYPES in CONVERSIONTYPES and checking for
the old COMPRESS_CMD/DEPENDS as fallbacks.

Signed-off-by: Patrick Ohly 
Signed-off-by: Ed Bartosh 
Signed-off-by: Ed Bartosh 
---
 meta/classes/image.bbclass | 10 +++--
 meta/classes/image_types.bbclass   | 67 ++
 meta/classes/image_types_uboot.bbclass | 18 -
 3 files changed, 51 insertions(+), 44 deletions(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index a1751dc..47d1c9f 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -118,7 +118,7 @@ def rootfs_variables(d):
  
'IMAGE_ROOTFS_MAXSIZE','IMAGE_NAME','IMAGE_LINK_NAME','IMAGE_MANIFEST','DEPLOY_DIR_IMAGE','RM_OLD_IMAGE','IMAGE_FSTYPES','IMAGE_INSTALL_COMPLEMENTARY','IMAGE_LINGUAS',
  
'MULTILIBRE_ALLOW_REP','MULTILIB_TEMP_ROOTFS','MULTILIB_VARIANTS','MULTILIBS','ALL_MULTILIB_PACKAGE_ARCHS','MULTILIB_GLOBAL_VARIANTS','BAD_RECOMMENDATIONS','NO_RECOMMENDATIONS',
  
'PACKAGE_ARCHS','PACKAGE_CLASSES','TARGET_VENDOR','TARGET_ARCH','TARGET_OS','OVERRIDES','BBEXTENDVARIANT','FEED_DEPLOYDIR_BASE_URI','INTERCEPT_DIR','USE_DEVFS',
- 'COMPRESSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED']
+ 'CONVERSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED']
 variables.extend(rootfs_command_variables(d))
 variables.extend(variable_depends(d))
 return " ".join(variables)
@@ -149,6 +149,7 @@ inherit ${IMAGE_TYPE_live}
 IMAGE_TYPE_vm = '${@ "image-vm" if image_type_active("hdddirect", d) else ""}'
 inherit ${IMAGE_TYPE_vm}
 
+
 python () {
 deps = " " + image_getdepends(d)
 d.appendVarFlag('do_rootfs', 'depends', deps)
@@ -304,7 +305,7 @@ python setup_debugfs () {
 
 python () {
 vardeps = set()
-# We allow COMPRESSIONTYPES to have duplicates. That avoids breaking
+# We allow CONVERSIONTYPES to have duplicates. That avoids breaking
 # derived distros when OE-core or some other layer independently adds
 # the same type. There is still only one command for each type, but
 # presumably the commands will do the same when the type is the same,
@@ -312,7 +313,7 @@ python () {
 #
 # Without de-duplication, gen_conversion_cmds() below
 # would create the same compression command multiple times.
-ctypes = set(d.getVar('COMPRESSIONTYPES', True).split())
+ctypes = set(d.getVar('CONVERSIONTYPES', True).split())
 old_overrides = d.getVar('OVERRIDES', 0)
 
 basetypes = {}
@@ -404,9 +405,10 @@ python () {
 # Create input image first.
 gen_conversion_cmds(type)
 localdata.setVar('type', type)
-cmd = "\t" + localdata.getVar("COMPRESS_CMD_" + ctype, 
True)
+cmd = "\t" + (localdata.getVar("CONVERSION_CMD_" + ctype, 
True) or localdata.getVar("COMPRESS_CMD_" + ctype, True))
 if cmd not in cmds:
 cmds.append(cmd)
+vardeps.add('CONVERSION_CMD_' + ctype)
 vardeps.add('COMPRESS_CMD_' + ctype)
 subimage = type + "." + ctype
 if subimage not in subimages:
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index 2233850..225142b 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -224,7 +224,7 @@ IMAGE_CMD_wic () {
 IMAGE_CMD_wic[vardepsexclude] = "WKS_FULL_PATH WKS_FILES"
 
 # Rebuild when the wks file or vars in WICVARS change
-USING_WIC = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic ' + ' 
'.join('wic.%s' % c for c in '${COMPRESSIONTYPES}'.split()), '1', '', d)}"
+USING_WIC = "${@bb.utils.contains_any('IMAGE_FSTYPES', 'wic ' + ' 
'.join('wic.%s' % c for c in '${CONVERSIONTYPES}'.split()), '1', '', d)}"
 do_image_wic[file-checksums] += "${@'${WKS_FULL_PATH}:%s' % 
os.path.exists('${WKS_FULL_PATH}') if '${USING_WIC}' else ''}"
 
 EXTRA_IMAGECMD = ""
@@ -289,36 +289,41 @@ IMAGE_TYPES = " \
 elf \
 wic wic.gz wic.bz2 wic.lzma \
 "
-
-COMPRESSIONTYPES = "gz bz2 lzma xz lz4 zip sum md5sum sha1sum sha224sum 
sha256sum sha384sum sha512sum bmap vmdk vdi qcow2"
-COMPRESS_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-COMPRESS_CMD_gz = "gzip -f -9 -c ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > 
${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
-COMPRESS_CMD_bz2 = "pbzip2 -f -k ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
-COMPRESS_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_THREADS} 

[OE-core] [PATCH v2 3/6] image.bbclass: additional output in create_symlinks

2016-05-18 Thread Ed Bartosh
From: Patrick Ohly 

When a symlink does not get created, it is useful for debugging to log
what would have been created and why it was skipped.

Signed-off-by: Patrick Ohly 
Signed-off-by: Ed Bartosh 
Signed-off-by: Ed Bartosh 
---
 meta/classes/image.bbclass | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 06f2211..46a4d03 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -512,9 +512,9 @@ python create_symlinks() {
 if not link_name:
 return
 for type in subimages:
-if os.path.exists(img_name + imgsuffix + type):
-dst = deploy_dir + "/" + link_name + "." + type
-src = img_name + imgsuffix + type
+dst = deploy_dir + "/" + link_name + "." + type
+src = img_name + imgsuffix + type
+if os.path.exists(src):
 bb.note("Creating symlink: %s -> %s" % (dst, src))
 if os.path.islink(dst):
 if d.getVar('RM_OLD_IMAGE', True) == "1" and \
@@ -522,6 +522,8 @@ python create_symlinks() {
 os.remove(os.path.realpath(dst))
 os.remove(dst)
 os.symlink(src, dst)
+else:
+bb.note("Skipping symlink, source does not exist: %s -> %s" % 
(dst, src))
 }
 
 MULTILIBRE_ALLOW_REP =. 
"${base_bindir}|${base_sbindir}|${bindir}|${sbindir}|${libexecdir}|${sysconfdir}|${nonarch_base_libdir}/udev|/lib/modules/[^/]*/modules.*|"
-- 
2.1.4

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


[OE-core] [PATCH v2 2/6] image.bbclass: fix dependency calculation when using conversion chaining

2016-05-18 Thread Ed Bartosh
From: Patrick Ohly 

When using conversion chaining (for example example: .dsk.vdi.xz),
the imagetypes_getdepends() did not properly detect all compression
commands (thus skipping the corresponding COMPRESS_DEPENDS) and
the base type, leading to missing dependencies of the image's do_rootfs
task.

This is not a big problem in practice because in those cases where
conversion chaining is useful (as in the example above), the missing
dependency is qemu-native, which typically gets built anyway.

imagetypes_getdepends() had hard-coded special treatment for certain
image types. This gets replaced with setting the normal IMAGE_DEPENDS
variables for these types.

[YOCTO #9076]

Signed-off-by: Patrick Ohly 
Signed-off-by: Ed Bartosh 
Signed-off-by: Ed Bartosh 
---
 meta/classes/image.bbclass   | 25 +
 meta/classes/image_types.bbclass | 60 
 2 files changed, 49 insertions(+), 36 deletions(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 0e81b4e..06f2211 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -143,7 +143,7 @@ IMAGE_TYPE_vm = '${@bb.utils.contains_any("IMAGE_FSTYPES", 
["vmdk", "vdi", "qcow
 inherit ${IMAGE_TYPE_vm}
 
 python () {
-deps = " " + imagetypes_getdepends(d)
+deps = " " + image_getdepends(d)
 d.appendVarFlag('do_rootfs', 'depends', deps)
 
 deps = ""
@@ -308,19 +308,6 @@ python () {
 ctypes = set(d.getVar('COMPRESSIONTYPES', True).split())
 old_overrides = d.getVar('OVERRIDES', 0)
 
-def _image_base_type(type):
-basetype = type
-for ctype in ctypes:
-if type.endswith("." + ctype):
-basetype = type[:-len("." + ctype)]
-break
-
-if basetype != type:
-# New base type itself might be generated by a conversion command.
-basetype = _image_base_type(basetype)
-
-return basetype
-
 basetypes = {}
 alltypes = d.getVar('IMAGE_FSTYPES', True).split()
 typedeps = {}
@@ -331,7 +318,7 @@ python () {
 alltypes.append("debugfs_" + t)
 
 def _add_type(t):
-baset = _image_base_type(t)
+baset = image_split_type(t, ctypes)[0]
 input_t = t
 if baset not in basetypes:
 basetypes[baset]= []
@@ -350,7 +337,7 @@ python () {
 if dep not in alltypes:
 alltypes.append(dep)
 _add_type(dep)
-basedep = _image_base_type(dep)
+basedep = image_split_type(dep, ctypes)[0]
 typedeps[baset].add(basedep)
 
 if baset != input_t:
@@ -420,8 +407,10 @@ python () {
 if type not in alltypes:
 
rm_tmp_images.add(localdata.expand("${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"))
 
-for bt in basetypes[t]:
-gen_conversion_cmds(bt)
+for type in basetypes[t]:
+# Probably t == bt, but better check explicitly, perhaps that'll 
change.
+bt = image_split_type(type, ctypes)[0]
+gen_conversion_cmds(bt, type)
 
 localdata.setVar('type', realt)
 if t not in alltypes:
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index ea45809..028bc53 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -9,30 +9,47 @@ IMAGE_NAME_SUFFIX ??= ".rootfs"
 # set this value to 2048 (2MiB alignment).
 IMAGE_ROOTFS_ALIGNMENT ?= "1"
 
-def imagetypes_getdepends(d):
-def adddep(depstr, deps):
-for d in (depstr or "").split():
-# Add task dependency if not already present
-if ":" not in d:
-d += ":do_populate_sysroot"
-deps.add(d)
+def image_split_type(type, allctypes):
+'''Returns (basetype, set of compression types in use).'''
+basetype = type
+compressiontypes = set()
+for ctype in allctypes:
+if type.endswith("." + ctype):
+ basetype = type[:-len("." + ctype)]
+ compressiontypes.add(ctype)
+ break
 
-fstypes = set((d.getVar('IMAGE_FSTYPES', True) or "").split())
-fstypes |= set((d.getVar('IMAGE_FSTYPES_DEBUGFS', True) or "").split())
+if basetype != type:
+# New base type itself might be generated by a conversion command.
+basetype, newctypes = image_split_type(basetype, allctypes)
+compressiontypes.update(newctypes)
 
-deps = set()
-for typestring in fstypes:
-types = typestring.split(".")
-basetype, resttypes = types[0], types[1:]
+return (basetype, compressiontypes)
 
-adddep(d.getVar('IMAGE_DEPENDS_%s' % basetype, True) , deps)
+
+def image_getdepends(d):
+def adddep(depstr, deps):
+# It is not an error if the dependency was not set,
+# simply do nothing in that case.
+for 

[OE-core] [PATCH v2 1/6] image.bbclass: support duplicate compression types

2016-05-18 Thread Ed Bartosh
From: Patrick Ohly 

When a derived distro adds a certain type, say zip, to
COMPRESSIONTYPES and later OE-core does the same, we end up with the
type being listed twice, and that would have undesired effects
(commands generated twice).

So to support such loosely coupled extension, we de-duplicated the
list of types first.

Alternatively, such a situation could also be treated as error. But that
seems unnecessary because typically commands for the same type will also
do the same thing.

Signed-off-by: Patrick Ohly 
Signed-off-by: Ed Bartosh 
Signed-off-by: Ed Bartosh 
---
 meta/classes/image.bbclass | 10 +-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 6b9f979..0e81b4e 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -297,7 +297,15 @@ python setup_debugfs () {
 
 python () {
 vardeps = set()
-ctypes = d.getVar('COMPRESSIONTYPES', True).split()
+# We allow COMPRESSIONTYPES to have duplicates. That avoids breaking
+# derived distros when OE-core or some other layer independently adds
+# the same type. There is still only one command for each type, but
+# presumably the commands will do the same when the type is the same,
+# even when added in different places.
+#
+# Without de-duplication, gen_conversion_cmds() below
+# would create the same compression command multiple times.
+ctypes = set(d.getVar('COMPRESSIONTYPES', True).split())
 old_overrides = d.getVar('OVERRIDES', 0)
 
 def _image_base_type(type):
-- 
2.1.4

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


[OE-core] [PATCH v2 0/6] image creation improvements

2016-05-18 Thread Ed Bartosh
Hi,

This patchset contains various improvements for the image creation functionality
made by Patchick Ohly during his work on bug #9076:
 - fixed dependency calculation for conversion chaining
 - converted vmdk/vdi/qcow2 image types into conversion commands
 - renamed COMPRESSION variables to CONVERSION as the term "compression"
   is no longer accurate
 - prioritized specialized image creation methods over using conversion chaining

The changes look reasonable to me. However, it would be good to hear other
people opinions as some changes are quite complex.

Changes in v2: rebased on top of master-next
   returned image_getdepends back to image_types.bbclass

The following changes since commit a037ad93640d3d6373fe1db35f64307e9fbed4e9:

  bitbake: bb.codeparser: track variable flag references (2016-05-17 23:23:32 
+0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib ed/oe-core/image-type-9076
  
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ed/oe-core/image-type-9076

Patrick Ohly (6):
  image.bbclass: support duplicate compression types
  image.bbclass: fix dependency calculation when using conversion
chaining
  image.bbclass: additional output in create_symlinks
  image creation: support converting masked types
  image.bbclass: rename COMPRESS(ION) to CONVERSION
  image.bbclass: prefer specialized image creation methods over chaining

 meta/classes/image-live.bbclass|   2 +-
 meta/classes/image-vm.bbclass  |  33 +
 meta/classes/image.bbclass | 133 ---
 meta/classes/image_types.bbclass   | 147 ++---
 meta/classes/image_types_uboot.bbclass |  18 +--
 meta/conf/documentation.conf   |   1 -
 .../images/build-appliance-image_14.0.0.bb |   6 +-
 7 files changed, 199 insertions(+), 141 deletions(-)

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


Re: [OE-core] [oe-core PATCH v7 11/13] weston-init: Add module support for the weston-start helper

2016-05-18 Thread Burton, Ross
On 17 May 2016 at 17:36, Otavio Salvador  wrote:

> +modules_dir=/usr/share/weston-start
>

Hard-coded paths in here (this, /run) - can these use symbols and get
replaced on do_install?

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


[OE-core] [PATCH v2] scripts/oe-selftest: Improve listing by reducing unneeded spacing

2016-05-18 Thread Humberto Ibarra
The --list-tests option assumes a terminal of 150 characters wide,
which is clearly wrong. The output for this command is messy and
hard to understand for lower widths. Every command should look
good in a 80 characters terminal.

Unfortunately, this can't be done at the moment. The bad naming of
testcases have made the test names incredibly long.

This patch reduces spacing between columns and shows the tests
names in a concise and understandable way. The format is even the
same one required for running a testcase. Once the testcase naming
improves, this output will look even better.

[Yocto #9534]
---
 scripts/oe-selftest | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/scripts/oe-selftest b/scripts/oe-selftest
index 5e23ef0..8cc2095 100755
--- a/scripts/oe-selftest
+++ b/scripts/oe-selftest
@@ -338,14 +338,14 @@ def list_tests():
 
 ts = get_all_tests()
 
-print '%-4s\t%-20s\t%-60s\t%-25s\t%-20s' % ('id', 'tag', 'name', 'class', 
'module')
-print '_' * 150
+print '%-4s\t%-10s\t%-50s' % ('id', 'tag', 'test')
+print '_' * 80
 for t in ts:
 if isinstance(t.tctag, (tuple, list)):
-print '%-4s\t%-20s\t%-60s\t%-25s\t%-20s' % (t.tcid, ', 
'.join(t.tctag), t.tcname, t.tcclass, t.tcmodule)
+print '%-4s\t%-10s\t%-50s' % (t.tcid, ', '.join(t.tctag), 
'.'.join([t.tcmodule, t.tcclass, t.tcname]))
 else:
-print '%-4s\t%-20s\t%-60s\t%-25s\t%-20s' % (t.tcid, t.tctag, 
t.tcname, t.tcclass, t.tcmodule)
-print '_' * 150
+print '%-4s\t%-10s\t%-50s' % (t.tcid, t.tctag, 
'.'.join([t.tcmodule, t.tcclass, t.tcname]))
+print '_' * 80
 print 'Total found:\t %s' % len(ts)
 
 
-- 
2.4.11

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


Re: [OE-core] [oe-core PATCH v7 00/13] Improve Weston and Xwayland integration

2016-05-18 Thread Burton, Ross
On 17 May 2016 at 17:36, Otavio Salvador  wrote:

>   weston: Add Xwayland initialization support using weston-start
>   weston-init: Error out if loading a nested instance
>   weston-init: Add module support for the weston-start helper
>

Ordering here is wrong :)

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


Re: [OE-core] [meta-freescale] [oe-core PATCH v7 04/13] weston: Enable XWayland when X11 and Wayland support are available

2016-05-18 Thread Otavio Salvador
On Wed, May 18, 2016 at 1:03 PM, Burton, Ross  wrote:
>
> On 17 May 2016 at 17:36, Otavio Salvador  wrote:
>>
>> When the DISTRO has X11 and Wayland support enabled, XWayland ought to
>> be enabled by default.
>
>
> Can this also split xwayland into a separate package so its still possible
> to build a core-image-weston with the x11 DISTRO_FEATURE but without pulling
> in all the X libraries?

Sure; I can work on that.

-- 
Otavio Salvador O.S. Systems
http://www.ossystems.com.brhttp://code.ossystems.com.br
Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [oe-core PATCH v7 04/13] weston: Enable XWayland when X11 and Wayland support are available

2016-05-18 Thread Burton, Ross
On 17 May 2016 at 17:36, Otavio Salvador  wrote:

> When the DISTRO has X11 and Wayland support enabled, XWayland ought to
> be enabled by default.
>

Can this also split xwayland into a separate package so its still possible
to build a core-image-weston with the x11 DISTRO_FEATURE but without
pulling in all the X libraries?

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


Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Burton, Ross
On 18 May 2016 at 15:14, Martin Jansa  wrote:

> Use os.path.join instead of +
>

I just went and edited the patch directly to do that, so no need to send it
again.

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


Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Martin Jansa
On Wed, May 18, 2016 at 05:26:16PM +0200, Herve Jourdain wrote:
> Hi Martin,
> 
> Even though the line just below uses "+"? Or shall I modify both?

Ah that's where it came from. Sorry I haven't noticed that it was
already there.

Please ignore what I said, os.path.join won't work anyway, because
libdir starts with slash so os.path.join would just return that part.

Thanks and sorry for noise

> -Original Message-
> From: Martin Jansa [mailto:martin.ja...@gmail.com] 
> Sent: mercredi 18 mai 2016 16:15
> To: Herve Jourdain 
> Cc: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages()
> when dri is disabled
> 
> On Wed, May 18, 2016 at 08:33:37PM +0800, Herve Jourdain wrote:
> > When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list
> of DRI drivers is empty, it will cause populate_package to fail, because it
> can't find - rightfully - the directory for the DRI drivers.
> > This patch checks that the directory indeed exists before trying to get a
> list of the files in it
> > 
> > Signed-off-by: Herve Jourdain 
> > ---
> >  meta/recipes-graphics/mesa/mesa.inc | 19 ++-
> >  1 file changed, 10 insertions(+), 9 deletions(-)
> > 
> > diff --git a/meta/recipes-graphics/mesa/mesa.inc
> b/meta/recipes-graphics/mesa/mesa.inc
> > index a4e5351..0e46092 100644
> > --- a/meta/recipes-graphics/mesa/mesa.inc
> > +++ b/meta/recipes-graphics/mesa/mesa.inc
> > @@ -143,15 +143,16 @@ python mesa_populate_packages() {
> >  
> >  import re
> >  dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri")
> > -dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> > -lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> > -for p in dri_pkgs:
> > -m = re.match('^(.*)_dri\.so$', p)
> > -if m:
> > -pkg_name = " ${MLPREFIX}mesa-driver-%s" %
> legitimize_package_name(m.group(1))
> > -d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> > -d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> > -d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
> > +if os.path.isdir(d.getVar('PKGD', True) + dri_drivers_root):
> 
> Use os.path.join instead of +
> 
> > +dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> > +lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> > +for p in dri_pkgs:
> > +m = re.match('^(.*)_dri\.so$', p)
> > +if m:
> > +pkg_name = " ${MLPREFIX}mesa-driver-%s" %
> legitimize_package_name(m.group(1))
> > +d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> > +d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> > +d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
> >  
> >  pipe_drivers_root = os.path.join(d.getVar('libdir', True),
> "gallium-pipe")
> >  do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$',
> 'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
> > -- 
> > 2.7.4
> > 
> > -- 
> > ___
> > 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
> 

-- 
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] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
Hi Martin,

Even though the line just below uses "+"? Or shall I modify both?

Herve

-Original Message-
From: Martin Jansa [mailto:martin.ja...@gmail.com] 
Sent: mercredi 18 mai 2016 16:15
To: Herve Jourdain 
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages()
when dri is disabled

On Wed, May 18, 2016 at 08:33:37PM +0800, Herve Jourdain wrote:
> When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list
of DRI drivers is empty, it will cause populate_package to fail, because it
can't find - rightfully - the directory for the DRI drivers.
> This patch checks that the directory indeed exists before trying to get a
list of the files in it
> 
> Signed-off-by: Herve Jourdain 
> ---
>  meta/recipes-graphics/mesa/mesa.inc | 19 ++-
>  1 file changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/meta/recipes-graphics/mesa/mesa.inc
b/meta/recipes-graphics/mesa/mesa.inc
> index a4e5351..0e46092 100644
> --- a/meta/recipes-graphics/mesa/mesa.inc
> +++ b/meta/recipes-graphics/mesa/mesa.inc
> @@ -143,15 +143,16 @@ python mesa_populate_packages() {
>  
>  import re
>  dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri")
> -dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> -lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> -for p in dri_pkgs:
> -m = re.match('^(.*)_dri\.so$', p)
> -if m:
> -pkg_name = " ${MLPREFIX}mesa-driver-%s" %
legitimize_package_name(m.group(1))
> -d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> -d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> -d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
> +if os.path.isdir(d.getVar('PKGD', True) + dri_drivers_root):

Use os.path.join instead of +

> +dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> +lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> +for p in dri_pkgs:
> +m = re.match('^(.*)_dri\.so$', p)
> +if m:
> +pkg_name = " ${MLPREFIX}mesa-driver-%s" %
legitimize_package_name(m.group(1))
> +d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> +d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> +d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
>  
>  pipe_drivers_root = os.path.join(d.getVar('libdir', True),
"gallium-pipe")
>  do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$',
'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
> -- 
> 2.7.4
> 
> -- 
> ___
> 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] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Martin Jansa
On Wed, May 18, 2016 at 08:33:37PM +0800, Herve Jourdain wrote:
> When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of 
> DRI drivers is empty, it will cause populate_package to fail, because it 
> can't find - rightfully - the directory for the DRI drivers.
> This patch checks that the directory indeed exists before trying to get a 
> list of the files in it
> 
> Signed-off-by: Herve Jourdain 
> ---
>  meta/recipes-graphics/mesa/mesa.inc | 19 ++-
>  1 file changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/meta/recipes-graphics/mesa/mesa.inc 
> b/meta/recipes-graphics/mesa/mesa.inc
> index a4e5351..0e46092 100644
> --- a/meta/recipes-graphics/mesa/mesa.inc
> +++ b/meta/recipes-graphics/mesa/mesa.inc
> @@ -143,15 +143,16 @@ python mesa_populate_packages() {
>  
>  import re
>  dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri")
> -dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> -lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> -for p in dri_pkgs:
> -m = re.match('^(.*)_dri\.so$', p)
> -if m:
> -pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
> legitimize_package_name(m.group(1))
> -d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> -d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> -d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
> +if os.path.isdir(d.getVar('PKGD', True) + dri_drivers_root):

Use os.path.join instead of +

> +dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
> +lib_name = d.expand("${MLPREFIX}mesa-megadriver")
> +for p in dri_pkgs:
> +m = re.match('^(.*)_dri\.so$', p)
> +if m:
> +pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
> legitimize_package_name(m.group(1))
> +d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
> +d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
> +d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
>  
>  pipe_drivers_root = os.path.join(d.getVar('libdir', True), 
> "gallium-pipe")
>  do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$', 
> 'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
> -- 
> 2.7.4
> 
> -- 
> ___
> 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


[OE-core] [wic][PATCH 2/4] wic: implement --bmap option

2016-05-18 Thread Ed Bartosh
This option enables generation of .bmap file for the
result image using native bmaptool.

[YOCTO #9413]

Signed-off-by: Ed Bartosh 
---
 scripts/lib/wic/creator.py  |  1 +
 scripts/lib/wic/engine.py   | 11 ---
 scripts/lib/wic/imager/direct.py| 23 +++
 scripts/lib/wic/plugins/imager/direct_plugin.py |  3 ++-
 scripts/wic |  3 ++-
 5 files changed, 28 insertions(+), 13 deletions(-)

diff --git a/scripts/lib/wic/creator.py b/scripts/lib/wic/creator.py
index d4972e8..8f7d150 100644
--- a/scripts/lib/wic/creator.py
+++ b/scripts/lib/wic/creator.py
@@ -69,6 +69,7 @@ class Creator():
 optparser.add_option('', '--tmpfs', action='store_true', 
dest='enabletmpfs',
  help='Setup tmpdir as tmpfs to accelerate, 
experimental'
   ' feature, use it if you have more than 4G 
memory')
+optparser.add_option('', '--bmap', action='store_true', help='generate 
.bmap')
 return optparser
 
 def postoptparse(self, options):
diff --git a/scripts/lib/wic/engine.py b/scripts/lib/wic/engine.py
index 5d35c46..5b10463 100644
--- a/scripts/lib/wic/engine.py
+++ b/scripts/lib/wic/engine.py
@@ -145,7 +145,7 @@ def list_source_plugins():
 
 def wic_create(wks_file, rootfs_dir, bootimg_dir, kernel_dir,
native_sysroot, scripts_path, image_output_dir,
-   compressor, debug):
+   compressor, bmap, debug):
 """Create image
 
 wks_file - user-defined OE kickstart file
@@ -156,6 +156,7 @@ def wic_create(wks_file, rootfs_dir, bootimg_dir, 
kernel_dir,
 scripts_path - absolute path to /scripts dir
 image_output_dir - dirname to create for image
 compressor - compressor utility to compress the image
+bmap - enable generation of .bmap
 
 Normally, the values for the build artifacts values are determined
 by 'wic -e' from the output of the 'bitbake -e' command given an
@@ -186,8 +187,12 @@ def wic_create(wks_file, rootfs_dir, bootimg_dir, 
kernel_dir,
 
 crobj = creator.Creator()
 
-crobj.main(["direct", native_sysroot, kernel_dir, bootimg_dir, rootfs_dir,
-wks_file, image_output_dir, oe_builddir, compressor or ""])
+cmdline = ["direct", native_sysroot, kernel_dir, bootimg_dir, rootfs_dir,
+wks_file, image_output_dir, oe_builddir, compressor or ""]
+if bmap:
+cmdline.append('--bmap')
+
+crobj.main(cmdline)
 
 print("\nThe image(s) were created using OE kickstart file:\n  %s" % 
wks_file)
 
diff --git a/scripts/lib/wic/imager/direct.py b/scripts/lib/wic/imager/direct.py
index 5a3b655..ffde232 100644
--- a/scripts/lib/wic/imager/direct.py
+++ b/scripts/lib/wic/imager/direct.py
@@ -33,7 +33,7 @@ from wic.utils.partitionedfs import Image
 from wic.utils.errors import CreatorError, ImageError
 from wic.imager.baseimager import BaseImageCreator
 from wic.plugin import pluginmgr
-from wic.utils.oe.misc import exec_cmd
+from wic.utils.oe.misc import exec_cmd, exec_native_cmd
 
 disk_methods = {
 "do_install_disk":None,
@@ -71,7 +71,8 @@ class DirectImageCreator(BaseImageCreator):
 """
 
 def __init__(self, oe_builddir, image_output_dir, rootfs_dir, bootimg_dir,
- kernel_dir, native_sysroot, compressor, creatoropts=None):
+ kernel_dir, native_sysroot, compressor, creatoropts=None,
+ bmap=False):
 """
 Initialize a DirectImageCreator instance.
 
@@ -93,6 +94,7 @@ class DirectImageCreator(BaseImageCreator):
 self.kernel_dir = kernel_dir
 self.native_sysroot = native_sysroot
 self.compressor = compressor
+self.bmap = bmap
 
 def __get_part_num(self, num, parts):
 """calculate the real partition number, accounting for partitions not
@@ -333,12 +335,17 @@ class DirectImageCreator(BaseImageCreator):
 self.bootimg_dir,
 self.kernel_dir,
 self.native_sysroot)
-# Compress the image
-if self.compressor:
-for disk_name, disk in self.__image.disks.items():
-full_path = self._full_path(self.__imgdir, disk_name, "direct")
-msger.debug("Compressing disk %s with %s" % \
-(disk_name, self.compressor))
+
+for disk_name, disk in self.__image.disks.items():
+full_path = self._full_path(self.__imgdir, disk_name, "direct")
+# Generate .bmap
+if self.bmap:
+msger.debug("Generating bmap file for %s" % disk_name)
+exec_native_cmd("bmaptool create %s -o %s.bmap" % (full_path, 
full_path),
+self.native_sysroot)
+# Compress the image

[OE-core] [wic][PATCH 1/4] wic: add bmaptool to the list of utilities

2016-05-18 Thread Ed Bartosh
Added bmaptool -> bmap-tools pair to the dictionary
executable -> recipe as bmaptool is going to be used by wic
to generate .bmap file.

[YOCTO #9413]

Signed-off-by: Ed Bartosh 
---
 scripts/lib/wic/utils/oe/misc.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/scripts/lib/wic/utils/oe/misc.py b/scripts/lib/wic/utils/oe/misc.py
index 0854dfb..fe188c9 100644
--- a/scripts/lib/wic/utils/oe/misc.py
+++ b/scripts/lib/wic/utils/oe/misc.py
@@ -34,7 +34,8 @@ from wic import msger
 from wic.utils import runner
 
 # executable -> recipe pairs for exec_native_cmd
-NATIVE_RECIPES = {"mcopy": "mtools",
+NATIVE_RECIPES = {"bmaptool": "bmap-tools",
+  "mcopy": "mtools",
   "mkdosfs": "dosfstools",
   "mkfs.btrfs": "btrfs-tools",
   "mkfs.ext2": "e2fsprogs",
-- 
2.1.4

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Sergey 'Jin' Bostandzhyan
Hi,

just wanted to say that we are facing the same issue with PRServer and
live updates, looking forward to a possible solution.

Kind regards,
Sergey

On Wed, May 18, 2016 at 05:31:09PM +0800, Robert Yang wrote:
> 
> 
> On 05/18/2016 05:20 PM, Martin Jansa wrote:
> >On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:
> >>Hi Martin,
> >>
> >>On 05/18/2016 03:39 PM, Martin Jansa wrote:
> >>>See:
> >>>https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970
> >>>
> >>>Just using recipe checksum wont work, because the main reason for PR bumps 
> >>>is to
> >>>automatically upgrade the packages when one of the dependencies changes .so
> >>>version, which you won't detect from recipe checksum of the app which is 
> >>>just
> >>>using the library.
> >>
> >>For the development branch like master, yes, that would happen. But for
> >>the stable release like jethro and krogoth, it is unlikely that would
> >>happen, and if if does, the user can manually bump the impacted recipe's
> >>PR to fix the problem. The current problem is that when *all* recipes'
> >>PR are bumped, there is no way to fix the problem.
> >
> >You can still stop using PR service and start doing manual PR bumps, but
> 
> We can't stop PR service and start doing manual PR bumps since we need keep
> update to date with upstream, the changes from upstream don't do the manual
> PR, and I don't think that we have to if they can be done automatically.
> 
> >it's quite annoying if you need to bump a lot of recipes you don't
> >control :).
> 
> What's your opinion about only consider RDEPENDS for PR service's checksum,
> please ?
> 
> // Robert
> 
> >
> >>>On Wed, May 18, 2016 at 8:09 AM, Robert Yang  >>>> wrote:
> >>>
> >>> The PRServer bumps PR according to do_package's task hash, that
> >>> causes it bumps *all* packages' PR when recipes like pseudo-native
> >>> and rpm-native is changed. It is a very bad user experience when we
> >>> run "smart/opkg upgrade" on running target, for example, when we apply
> >>> a CVE patch to pseudo-native or rpm-native, or do some slight changes
> >>> in their do_compile, "smart/opkg upgrade" will download/install *all*
> >>> the packages since all of the packages' PR are bumped.
> >>>
> >>> Here are some rough suggestions to fix this problem, and please feel
> >>> free to give your suggestions.
> >>> 1) Do not use do_package's task for bumping PR, the easiest way
> >>> is simulate manually bump PR -- only bump PR when the recipe
> >>> itself's checksum is changed.
> >>>
> >>> 2) Add a new task for PRServer, redefine its task hash for bumping
> >>> PR, for example, this task hash only considers RDEPENDS (no
> >>> DEPENDS), and drop any native dependencies.
> >>>
> >>> I prefer the first way, and an alternative way maybe add a var so that
> >>> the user can configure it:
> >>> PR_CHECKSUM = "${BB_TASKHASH}" (current way)
> >>> Or
> >>> PR_CHECKSUM = ""
> >>>
> >>> --
> >>> Thanks
> >>>
> >>> Robert
> >>> --
> >>> ___
> >>> 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


[OE-core] [wic][PATCH 4/4] oe-selftest: wic: add test_bmap test case

2016-05-18 Thread Ed Bartosh
Tested generation of .bmap file using wic --bmap command
line option.

Signed-off-by: Ed Bartosh 
---
 meta/lib/oeqa/selftest/wic.py | 8 
 1 file changed, 8 insertions(+)

diff --git a/meta/lib/oeqa/selftest/wic.py b/meta/lib/oeqa/selftest/wic.py
index a569fbf..895c6d6 100644
--- a/meta/lib/oeqa/selftest/wic.py
+++ b/meta/lib/oeqa/selftest/wic.py
@@ -276,3 +276,11 @@ class Wic(oeSelfTest):
 status, output = qemu.run_serial(command)
 self.assertEqual(1, status, 'Failed to run command "%s": %s' % 
(command, output))
 self.assertEqual(output, '/dev/root /\r\n/dev/vda3 /mnt')
+
+def test_bmap(self):
+"""Test generation of .bmap file"""
+image = "directdisk"
+status = runCmd("wic create %s -e core-image-minimal --bmap" % 
image).status
+self.assertEqual(0, status)
+self.assertEqual(1, len(glob(self.resultdir + "%s-*direct" % image)))
+self.assertEqual(1, len(glob(self.resultdir + "%s-*direct.bmap" % 
image)))
-- 
2.1.4

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


[OE-core] [wic][PATCH 3/4] wic: add help for --bmap commandline option

2016-05-18 Thread Ed Bartosh
Included description of -m/--bmap option to the help page
produced by 'wic help create'.

[YOCTO #9413]

Signed-off-by: Ed Bartosh 
---
 scripts/lib/wic/help.py | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/scripts/lib/wic/help.py b/scripts/lib/wic/help.py
index 7dcc717..6395596 100644
--- a/scripts/lib/wic/help.py
+++ b/scripts/lib/wic/help.py
@@ -152,7 +152,7 @@ SYNOPSIS
 [-e | --image-name] [-s, --skip-build-check] [-D, --debug]
 [-r, --rootfs-dir] [-b, --bootimg-dir]
 [-k, --kernel-dir] [-n, --native-sysroot] [-f, --build-rootfs]
-[-c, --compress-with]
+[-c, --compress-with] [-m, --bmap]
 
 DESCRIPTION
 This command creates an OpenEmbedded image based on the 'OE
@@ -221,6 +221,9 @@ DESCRIPTION
 
 The -c option is used to specify compressor utility to compress
 an image. gzip, bzip2 and xz compressors are supported.
+
+The -m option is used to produce .bmap file for the image. This file
+can be used to flash image using bmaptool utility.
 """
 
 wic_list_usage = """
-- 
2.1.4

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


[OE-core] [mesa][PATCH v2 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of DRI 
drivers is empty, it will cause populate_package to fail, because it can't find 
- rightfully - the directory for the DRI drivers.
This patch checks that the directory indeed exists before trying to get a list 
of the files in it

Signed-off-by: Herve Jourdain 
---
 meta/recipes-graphics/mesa/mesa.inc | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/meta/recipes-graphics/mesa/mesa.inc 
b/meta/recipes-graphics/mesa/mesa.inc
index a4e5351..0e46092 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -143,15 +143,16 @@ python mesa_populate_packages() {
 
 import re
 dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri")
-dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
-lib_name = d.expand("${MLPREFIX}mesa-megadriver")
-for p in dri_pkgs:
-m = re.match('^(.*)_dri\.so$', p)
-if m:
-pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
legitimize_package_name(m.group(1))
-d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
-d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
-d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
+if os.path.isdir(d.getVar('PKGD', True) + dri_drivers_root):
+dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
+lib_name = d.expand("${MLPREFIX}mesa-megadriver")
+for p in dri_pkgs:
+m = re.match('^(.*)_dri\.so$', p)
+if m:
+pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
legitimize_package_name(m.group(1))
+d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
+d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
+d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
 
 pipe_drivers_root = os.path.join(d.getVar('libdir', True), "gallium-pipe")
 do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$', 
'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
-- 
2.7.4

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


[OE-core] [mesa][PATCH v2 0/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of DRI 
drivers is empty, it will cause populate_package to fail, because it can't find 
- rightfully - the directory for the DRI drivers.
This patch checks that the directory indeed exists before trying to get a list 
of the files in it

Herve Jourdain (1):
  Fix mesa_populate_packages() when dri is disabled

 meta/recipes-graphics/mesa/mesa.inc | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

-- 
2.7.4

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


[OE-core] [PATCH 2/2][master][krogoth][jethro] openssh: Backport fix for CVE-2015-8325

2016-05-18 Thread Jussi Kukkonen
PAM environment vars must be ignored when UseLogin=yes

Signed-off-by: Jussi Kukkonen 
---
 .../openssh/openssh/CVE-2015-8325.patch| 39 ++
 meta/recipes-connectivity/openssh/openssh_7.2p2.bb |  1 +
 2 files changed, 40 insertions(+)
 create mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2015-8325.patch

diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2015-8325.patch 
b/meta/recipes-connectivity/openssh/openssh/CVE-2015-8325.patch
new file mode 100644
index 000..2263897
--- /dev/null
+++ b/meta/recipes-connectivity/openssh/openssh/CVE-2015-8325.patch
@@ -0,0 +1,39 @@
+From 85bdcd7c92fe7ff133bbc4e10a65c91810f88755 Mon Sep 17 00:00:00 2001
+From: Damien Miller 
+Date: Wed, 13 Apr 2016 10:39:57 +1000
+Subject: ignore PAM environment vars when UseLogin=yes
+
+If PAM is configured to read user-specified environment variables
+and UseLogin=yes in sshd_config, then a hostile local user may
+attack /bin/login via LD_PRELOAD or similar environment variables
+set via PAM.
+
+CVE-2015-8325, found by Shayan Sadigh, via Colin Watson
+
+
+
+https://anongit.mindrot.org/openssh.git/commit/session.c?id=85bdcd7c92fe7ff133bbc4e10a65c91810f88755
+
+CVE: CVE-2015-8325
+Upstream-Status: Backport
+Signed-off-by: Jussi Kukkonen 
+---
+ session.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/session.c b/session.c
+index 4859245..4653b09 100644
+--- a/session.c
 b/session.c
+@@ -1322,7 +1322,7 @@ do_setup_env(Session *s, const char *shell)
+* Pull in any environment variables that may have
+* been set by PAM.
+*/
+-  if (options.use_pam) {
++  if (options.use_pam && !options.use_login) {
+   char **p;
+ 
+   p = fetch_pam_child_environment();
+-- 
+cgit v0.11.2
+
diff --git a/meta/recipes-connectivity/openssh/openssh_7.2p2.bb 
b/meta/recipes-connectivity/openssh/openssh_7.2p2.bb
index 173f80a..7e04716 100644
--- a/meta/recipes-connectivity/openssh/openssh_7.2p2.bb
+++ b/meta/recipes-connectivity/openssh/openssh_7.2p2.bb
@@ -21,6 +21,7 @@ SRC_URI = 
"http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar
file://volatiles.99_sshd \
file://add-test-support-for-busybox.patch \
file://run-ptest \
+   file://CVE-2015-8325.patch \
"
 
 PAM_SRC_URI = "file://sshd"
-- 
2.1.4

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


[OE-core] [PATCH 1/2] openssh: Upgrade 7.1p2 -> 7.2p2

2016-05-18 Thread Jussi Kukkonen
Remove patches that are in the release.

Signed-off-by: Jussi Kukkonen 
---
 .../openssh/openssh/CVE-2016-1907_2.patch  |  65 
 .../openssh/openssh/CVE-2016-1907_3.patch  | 329 -
 .../openssh/CVE-2016-1907_upstream_commit.patch|  33 ---
 .../openssh/openssh/CVE-2016-3115.patch|  84 --
 .../openssh/{openssh_7.1p2.bb => openssh_7.2p2.bb} |   8 +-
 5 files changed, 2 insertions(+), 517 deletions(-)
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_2.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_3.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_upstream_commit.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-3115.patch
 rename meta/recipes-connectivity/openssh/{openssh_7.1p2.bb => 
openssh_7.2p2.bb} (95%)

diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_2.patch 
b/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_2.patch
deleted file mode 100644
index 9fac69c..000
--- a/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_2.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From f98a09cacff7baad8748c9aa217afd155a4d493f Mon Sep 17 00:00:00 2001
-From: "m...@openbsd.org" 
-Date: Tue, 20 Oct 2015 03:36:35 +
-Subject: [PATCH] upstream commit
-
-Replace a function-local allocation with stack memory.
-
-ok djm@
-
-Upstream-ID: c09fbbab637053a2ab9f33ca142b4e20a4c5a17e
-Upstream-Status: Backport
-CVE: CVE-2016-1907
-
-[YOCTO #8935]
-
-Signed-off-by: Armin Kuster 
-

- clientloop.c | 9 ++---
- 1 file changed, 2 insertions(+), 7 deletions(-)
-
-diff --git a/clientloop.c b/clientloop.c
-index 87ceb3d..1e05cba 100644
 a/clientloop.c
-+++ b/clientloop.c
-@@ -1,4 +1,4 @@
--/* $OpenBSD: clientloop.c,v 1.275 2015/07/10 06:21:53 markus Exp $ */
-+/* $OpenBSD: clientloop.c,v 1.276 2015/10/20 03:36:35 mmcc Exp $ */
- /*
-  * Author: Tatu Ylonen 
-  * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland
-@@ -311,11 +311,10 @@ client_x11_get_proto(const char *display, const char 
*xauth_path,
-   static char proto[512], data[512];
-   FILE *f;
-   int got_data = 0, generated = 0, do_unlink = 0, i;
--  char *xauthdir, *xauthfile;
-+  char xauthdir[PATH_MAX] = "", xauthfile[PATH_MAX] = "";
-   struct stat st;
-   u_int now, x11_timeout_real;
- 
--  xauthdir = xauthfile = NULL;
-   *_proto = proto;
-   *_data = data;
-   proto[0] = data[0] = '\0';
-@@ -343,8 +342,6 @@ client_x11_get_proto(const char *display, const char 
*xauth_path,
-   display = xdisplay;
-   }
-   if (trusted == 0) {
--  xauthdir = xmalloc(PATH_MAX);
--  xauthfile = xmalloc(PATH_MAX);
-   mktemp_proto(xauthdir, PATH_MAX);
-   /*
-* The authentication cookie should briefly outlive
-@@ -407,8 +404,6 @@ client_x11_get_proto(const char *display, const char 
*xauth_path,
-   unlink(xauthfile);
-   rmdir(xauthdir);
-   }
--  free(xauthdir);
--  free(xauthfile);
- 
-   /*
-* If we didn't get authentication data, just make up some
--- 
-1.9.1
-
diff --git a/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_3.patch 
b/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_3.patch
deleted file mode 100644
index 3dfc51a..000
--- a/meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_3.patch
+++ /dev/null
@@ -1,329 +0,0 @@
-From ed4ce82dbfa8a3a3c8ea6fa0db113c71e234416c Mon Sep 17 00:00:00 2001
-From: "d...@openbsd.org" 
-Date: Wed, 13 Jan 2016 23:04:47 +
-Subject: [PATCH] upstream commit
-
-eliminate fallback from untrusted X11 forwarding to trusted
- forwarding when the X server disables the SECURITY extension; Reported by
- Thomas Hoger; ok deraadt@
-
-Upstream-ID: f76195bd2064615a63ef9674a0e4096b0713f938
-Upstream-Status: Backport
-CVE: CVE-2016-1907
-
-[YOCTO #8935]
-
-Signed-off-by: Armin Kuster 
-

- clientloop.c | 114 ---
- clientloop.h |   4 +--
- mux.c|  22 ++--
- ssh.c|  23 +---
- 4 files changed, 93 insertions(+), 70 deletions(-)
-
-Index: openssh-7.1p2/clientloop.c
-===
 openssh-7.1p2.orig/clientloop.c
-+++ openssh-7.1p2/clientloop.c
-@@ -1,4 +1,4 @@
--/* $OpenBSD: clientloop.c,v 1.276 2015/10/20 03:36:35 mmcc Exp $ */
-+/* $OpenBSD: clientloop.c,v 1.279 2016/01/13 23:04:47 djm Exp $ */
- /*
-  * Author: Tatu Ylonen 
-  * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland
-@@ -288,6 +288,9 @@ client_x11_display_valid(const char *dis
- {
-   size_t i, dlen;
- 
-+  if 

[OE-core] [PATCH 0/2] openssh upgrade and CVE fix

2016-05-18 Thread Jussi Kukkonen
The CVE fix should apply for at least Krogoth and Jethro as well.

The following changes since commit 7707cf6562e6a477ea953743a2d9aba682d90949:

  sdk-manual: Fixed three broken links to sections within manual. (2016-05-17 
21:35:00 +0100)

are available in the git repository at:

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

Jussi Kukkonen (2):
  openssh: Upgrade 7.1p2 -> 7.2p2
  openssh: Backport fix for CVE-2015-8325

 .../openssh/openssh/CVE-2015-8325.patch|  39 +++
 .../openssh/openssh/CVE-2016-1907_2.patch  |  65 
 .../openssh/openssh/CVE-2016-1907_3.patch  | 329 -
 .../openssh/CVE-2016-1907_upstream_commit.patch|  33 ---
 .../openssh/openssh/CVE-2016-3115.patch|  84 --
 .../openssh/{openssh_7.1p2.bb => openssh_7.2p2.bb} |   9 +-
 6 files changed, 42 insertions(+), 517 deletions(-)
 create mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2015-8325.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_2.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_3.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-1907_upstream_commit.patch
 delete mode 100644 
meta/recipes-connectivity/openssh/openssh/CVE-2016-3115.patch
 rename meta/recipes-connectivity/openssh/{openssh_7.1p2.bb => 
openssh_7.2p2.bb} (95%)

-- 
2.1.4

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


Re: [OE-core] [mesa][PATCH 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
Hi Ross,

 

Yep, you’re right, sorry for that. V2 coming in a few.

 

Herve

 

From: Burton, Ross [mailto:ross.bur...@intel.com] 
Sent: mercredi 18 mai 2016 13:28
To: Herve Jourdain 
Cc: OE-core 
Subject: Re: [OE-core] [mesa][PATCH 1/1] Fix mesa_populate_packages() when dri 
is disabled

 

 

On 18 May 2016 at 10:45, Herve Jourdain  > wrote:

+if os.path.isdir(dri_drivers_root):


You're checking files on the host here as dri_driver_root is ${libdir}/dri and 
you failed to append PKGD (see the os.listdir call).

 

Ross

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


Re: [OE-core] [mesa][PATCH 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Burton, Ross
On 18 May 2016 at 10:45, Herve Jourdain  wrote:

> +if os.path.isdir(dri_drivers_root):
>

You're checking files on the host here as dri_driver_root is ${libdir}/dri
and you failed to append PKGD (see the os.listdir call).

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Martin Jansa
On Wed, May 18, 2016 at 05:31:09PM +0800, Robert Yang wrote:
> 
> 
> On 05/18/2016 05:20 PM, Martin Jansa wrote:
> > On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:
> >> Hi Martin,
> >>
> >> On 05/18/2016 03:39 PM, Martin Jansa wrote:
> >>> See:
> >>> https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970
> >>>
> >>> Just using recipe checksum wont work, because the main reason for PR 
> >>> bumps is to
> >>> automatically upgrade the packages when one of the dependencies changes 
> >>> .so
> >>> version, which you won't detect from recipe checksum of the app which is 
> >>> just
> >>> using the library.
> >>
> >> For the development branch like master, yes, that would happen. But for
> >> the stable release like jethro and krogoth, it is unlikely that would
> >> happen, and if if does, the user can manually bump the impacted recipe's
> >> PR to fix the problem. The current problem is that when *all* recipes'
> >> PR are bumped, there is no way to fix the problem.
> >
> > You can still stop using PR service and start doing manual PR bumps, but
> 
> We can't stop PR service and start doing manual PR bumps since we need keep
> update to date with upstream, the changes from upstream don't do the manual
> PR, and I don't think that we have to if they can be done automatically.
> 
> > it's quite annoying if you need to bump a lot of recipes you don't
> > control :).
> 
> What's your opinion about only consider RDEPENDS for PR service's checksum,
> please ?

I would like to have separate handler as described in that bug, option
c).

Not only because of unnecessary EXTENDPRAUTO bumps, but also unnecessary 
rebuilds.

> >>> On Wed, May 18, 2016 at 8:09 AM, Robert Yang  >>> > wrote:
> >>>
> >>>  The PRServer bumps PR according to do_package's task hash, that
> >>>  causes it bumps *all* packages' PR when recipes like pseudo-native
> >>>  and rpm-native is changed. It is a very bad user experience when we
> >>>  run "smart/opkg upgrade" on running target, for example, when we 
> >>> apply
> >>>  a CVE patch to pseudo-native or rpm-native, or do some slight changes
> >>>  in their do_compile, "smart/opkg upgrade" will download/install *all*
> >>>  the packages since all of the packages' PR are bumped.
> >>>
> >>>  Here are some rough suggestions to fix this problem, and please feel
> >>>  free to give your suggestions.
> >>>  1) Do not use do_package's task for bumping PR, the easiest way
> >>>  is simulate manually bump PR -- only bump PR when the recipe
> >>>  itself's checksum is changed.
> >>>
> >>>  2) Add a new task for PRServer, redefine its task hash for bumping
> >>>  PR, for example, this task hash only considers RDEPENDS (no
> >>>  DEPENDS), and drop any native dependencies.
> >>>
> >>>  I prefer the first way, and an alternative way maybe add a var so 
> >>> that
> >>>  the user can configure it:
> >>>  PR_CHECKSUM = "${BB_TASKHASH}" (current way)
> >>>  Or
> >>>  PR_CHECKSUM = ""
> >>>
> >>>  --
> >>>  Thanks
> >>>
> >>>  Robert
> >>>  --
> >>>  ___
> >>>  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


[OE-core] [mesa][PATCH 1/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of DRI 
drivers is empty, it will cause populate_package to fail, because it can't find 
- rightfully - the directory for the DRI drivers.
This patch checks that the directory indeed exists before trying to get a list 
of the files in it

Signed-off-by: Herve Jourdain 
---
 meta/recipes-graphics/mesa/mesa.inc | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/meta/recipes-graphics/mesa/mesa.inc 
b/meta/recipes-graphics/mesa/mesa.inc
index a4e5351..0e46092 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -143,15 +143,16 @@ python mesa_populate_packages() {
 
 import re
 dri_drivers_root = os.path.join(d.getVar('libdir', True), "dri")
-dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
-lib_name = d.expand("${MLPREFIX}mesa-megadriver")
-for p in dri_pkgs:
-m = re.match('^(.*)_dri\.so$', p)
-if m:
-pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
legitimize_package_name(m.group(1))
-d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
-d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
-d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
+if os.path.isdir(dri_drivers_root):
+dri_pkgs = os.listdir(d.getVar('PKGD', True) + dri_drivers_root)
+lib_name = d.expand("${MLPREFIX}mesa-megadriver")
+for p in dri_pkgs:
+m = re.match('^(.*)_dri\.so$', p)
+if m:
+pkg_name = " ${MLPREFIX}mesa-driver-%s" % 
legitimize_package_name(m.group(1))
+d.appendVar("RPROVIDES_%s" % lib_name, pkg_name)
+d.appendVar("RCONFLICTS_%s" % lib_name, pkg_name)
+d.appendVar("RREPLACES_%s" % lib_name, pkg_name)
 
 pipe_drivers_root = os.path.join(d.getVar('libdir', True), "gallium-pipe")
 do_split_packages(d, pipe_drivers_root, '^pipe_(.*)\.so$', 
'mesa-driver-pipe-%s', 'Mesa %s pipe driver', extra_depends='')
-- 
2.7.4

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


[OE-core] [PATCH] useradd: use bindir_native for pseudo PATH

2016-05-18 Thread Martin Jansa
* useradd/userdel functions will fail for recipes which override their target 
prefix
  (e.g. to /opt/foo), because it will try to use pseudo from 
native-sysroot/opt/foo/bin/pseudo

Signed-off-by: Martin Jansa 
---
 meta/classes/useradd.bbclass | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass
index ee402ac..8283bf3 100644
--- a/meta/classes/useradd.bbclass
+++ b/meta/classes/useradd.bbclass
@@ -103,7 +103,7 @@ useradd_sysroot () {
# Pseudo may (do_install) or may not (do_populate_sysroot_setscene) be 
running 
# at this point so we're explicit about the environment so pseudo can 
load if 
# not already present.
-   export PSEUDO="${FAKEROOTENV} 
PSEUDO_LOCALSTATEDIR=${STAGING_DIR_TARGET}${localstatedir}/pseudo 
${STAGING_DIR_NATIVE}${bindir}/pseudo"
+   export PSEUDO="${FAKEROOTENV} 
PSEUDO_LOCALSTATEDIR=${STAGING_DIR_TARGET}${localstatedir}/pseudo 
${STAGING_DIR_NATIVE}${bindir_native}/pseudo"
 
# Explicitly set $D since it isn't set to anything
# before do_install
@@ -130,7 +130,7 @@ useradd_sysroot_sstate () {
 userdel_sysroot_sstate () {
 if test "x${STAGING_DIR_TARGET}" != "x"; then
 if [ "${BB_CURRENTTASK}" = "configure" -o "${BB_CURRENTTASK}" = "clean" ]; 
then
-export PSEUDO="${FAKEROOTENV} 
PSEUDO_LOCALSTATEDIR=${STAGING_DIR_TARGET}${localstatedir}/pseudo 
${STAGING_DIR_NATIVE}${bindir}/pseudo"
+export PSEUDO="${FAKEROOTENV} 
PSEUDO_LOCALSTATEDIR=${STAGING_DIR_TARGET}${localstatedir}/pseudo 
${STAGING_DIR_NATIVE}${bindir_native}/pseudo"
 OPT="--root ${STAGING_DIR_TARGET}"
 
 # Remove groups and users defined for package
-- 
2.8.2

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


[OE-core] [mesa][PATCH 0/1] Fix mesa_populate_packages() when dri is disabled

2016-05-18 Thread Herve Jourdain
When compiling mesa, if dri is disabled in PACKAGECONFIG, or if the list of DRI 
drivers is empty, it will cause populate_package to fail, because it can't find 
- rightfully - the directory for the DRI drivers.
This patch checks that the directory indeed exists before trying to get a list 
of the files in it

Herve Jourdain (1):
  Fix mesa_populate_packages() when dri is disabled

 meta/recipes-graphics/mesa/mesa.inc | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

-- 
2.7.4

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Robert Yang



On 05/18/2016 05:20 PM, Martin Jansa wrote:

On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:

Hi Martin,

On 05/18/2016 03:39 PM, Martin Jansa wrote:

See:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970

Just using recipe checksum wont work, because the main reason for PR bumps is to
automatically upgrade the packages when one of the dependencies changes .so
version, which you won't detect from recipe checksum of the app which is just
using the library.


For the development branch like master, yes, that would happen. But for
the stable release like jethro and krogoth, it is unlikely that would
happen, and if if does, the user can manually bump the impacted recipe's
PR to fix the problem. The current problem is that when *all* recipes'
PR are bumped, there is no way to fix the problem.


You can still stop using PR service and start doing manual PR bumps, but


We can't stop PR service and start doing manual PR bumps since we need keep
update to date with upstream, the changes from upstream don't do the manual
PR, and I don't think that we have to if they can be done automatically.


it's quite annoying if you need to bump a lot of recipes you don't
control :).


What's your opinion about only consider RDEPENDS for PR service's checksum,
please ?

// Robert




On Wed, May 18, 2016 at 8:09 AM, Robert Yang > wrote:

 The PRServer bumps PR according to do_package's task hash, that
 causes it bumps *all* packages' PR when recipes like pseudo-native
 and rpm-native is changed. It is a very bad user experience when we
 run "smart/opkg upgrade" on running target, for example, when we apply
 a CVE patch to pseudo-native or rpm-native, or do some slight changes
 in their do_compile, "smart/opkg upgrade" will download/install *all*
 the packages since all of the packages' PR are bumped.

 Here are some rough suggestions to fix this problem, and please feel
 free to give your suggestions.
 1) Do not use do_package's task for bumping PR, the easiest way
 is simulate manually bump PR -- only bump PR when the recipe
 itself's checksum is changed.

 2) Add a new task for PRServer, redefine its task hash for bumping
 PR, for example, this task hash only considers RDEPENDS (no
 DEPENDS), and drop any native dependencies.

 I prefer the first way, and an alternative way maybe add a var so that
 the user can configure it:
 PR_CHECKSUM = "${BB_TASKHASH}" (current way)
 Or
 PR_CHECKSUM = ""

 --
 Thanks

 Robert
 --
 ___
 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] PRServer's problem

2016-05-18 Thread Martin Jansa
On Wed, May 18, 2016 at 04:03:58PM +0800, Robert Yang wrote:
> Hi Martin,
> 
> On 05/18/2016 03:39 PM, Martin Jansa wrote:
> > See:
> > https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970
> >
> > Just using recipe checksum wont work, because the main reason for PR bumps 
> > is to
> > automatically upgrade the packages when one of the dependencies changes .so
> > version, which you won't detect from recipe checksum of the app which is 
> > just
> > using the library.
> 
> For the development branch like master, yes, that would happen. But for
> the stable release like jethro and krogoth, it is unlikely that would
> happen, and if if does, the user can manually bump the impacted recipe's
> PR to fix the problem. The current problem is that when *all* recipes'
> PR are bumped, there is no way to fix the problem.

You can still stop using PR service and start doing manual PR bumps, but
it's quite annoying if you need to bump a lot of recipes you don't
control :).

> > On Wed, May 18, 2016 at 8:09 AM, Robert Yang  > > wrote:
> >
> > The PRServer bumps PR according to do_package's task hash, that
> > causes it bumps *all* packages' PR when recipes like pseudo-native
> > and rpm-native is changed. It is a very bad user experience when we
> > run "smart/opkg upgrade" on running target, for example, when we apply
> > a CVE patch to pseudo-native or rpm-native, or do some slight changes
> > in their do_compile, "smart/opkg upgrade" will download/install *all*
> > the packages since all of the packages' PR are bumped.
> >
> > Here are some rough suggestions to fix this problem, and please feel
> > free to give your suggestions.
> > 1) Do not use do_package's task for bumping PR, the easiest way
> > is simulate manually bump PR -- only bump PR when the recipe
> > itself's checksum is changed.
> >
> > 2) Add a new task for PRServer, redefine its task hash for bumping
> > PR, for example, this task hash only considers RDEPENDS (no
> > DEPENDS), and drop any native dependencies.
> >
> > I prefer the first way, and an alternative way maybe add a var so that
> > the user can configure it:
> > PR_CHECKSUM = "${BB_TASKHASH}" (current way)
> > Or
> > PR_CHECKSUM = ""
> >
> > --
> > Thanks
> >
> > Robert
> > --
> > ___
> > 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


[OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Robert Yang
* It doesn't build on armv4:
{standard input}: Assembler messages:
{standard input}:52: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:126: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:128: Error: selected processor does not support `blx r0' in 
ARM mode
{standard input}:134: Error: selected processor does not support `bkpt #0' in 
ARM mode
{standard input}:185: Error: selected processor does not support `blx 
llint_throw_stack_overflow_error' in ARM mode
{standard input}:256: Error: selected processor does not support `blx r4' in 
ARM mode
{standard input}:310: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:311: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
{standard input}:315: Error: selected processor does not support `movw 
r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
{standard input}:316: Error: selected processor does not support `movt 
r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
[snip]

* It can build on armv7a, but doesn't work on runtime, cause
  displaying problems or ephiphany hang.

[YOCTO #9474]

Signed-off-by: Robert Yang 
---
 meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb 
b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
index bdbcbea..23ead72 100644
--- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
+++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
@@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
 EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
 EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
 
-# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on 
v7 onwards
+# ARM JIT code does not build on ARMv4/5/6 anymore
 EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
 EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
+EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
+
+# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
+# displaying problems or ephiphany hang.
+EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "
 
 # binutils 2.25.1 has a bug on aarch64:
 # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
-- 
2.7.4

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


[OE-core] [PATCH 0/1 V2] webkitgtk: turn off JIT on armv4 and armv7a

2016-05-18 Thread Robert Yang
* V2
  Rebase and resend.

// Robert

The following changes since commit 84b11bce72296d04a0e6bc9f18669284017c3704:

  pkgconfig: Update AM_GLIB_GNU_GETTEXT macro (2016-05-17 17:26:05 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib rbt/webkitgtk
  
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/webkitgtk

Robert Yang (1):
  webkitgtk: turn off JIT on armv4 and armv7a

 meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

-- 
2.7.4

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Robert Yang

Hi Joshua,

Thanks, I read packagefeed-stability.bbclass just now. If
we can change PRserver's checksum to consider RDEPENDS only
(or make it optional) I will run a testing on that script.

// Robert

On 05/18/2016 03:34 PM, Joshua G Lock wrote:

Hi Robert,

On Wed, 2016-05-18 at 14:09 +0800, Robert Yang wrote:

The PRServer bumps PR according to do_package's task hash, that
causes it bumps *all* packages' PR when recipes like pseudo-native
and rpm-native is changed. It is a very bad user experience when we
run "smart/opkg upgrade" on running target, for example, when we
apply
a CVE patch to pseudo-native or rpm-native, or do some slight changes
in their do_compile, "smart/opkg upgrade" will download/install *all*
the packages since all of the packages' PR are bumped.


Paul began working to address the package feed churn issue some time
back using the tool build-compare from the openSUSE project.

You can find links to various trees and a summary of the progress so
far in this bugzilla entry:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=8318

It still needs some more work; most notably I'd like to see some tests
that validates the functionality.

Regards,

Joshua


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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Robert Yang

Hi Martin,

On 05/18/2016 03:39 PM, Martin Jansa wrote:

See:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970

Just using recipe checksum wont work, because the main reason for PR bumps is to
automatically upgrade the packages when one of the dependencies changes .so
version, which you won't detect from recipe checksum of the app which is just
using the library.


For the development branch like master, yes, that would happen. But for
the stable release like jethro and krogoth, it is unlikely that would
happen, and if if does, the user can manually bump the impacted recipe's
PR to fix the problem. The current problem is that when *all* recipes'
PR are bumped, there is no way to fix the problem.

// Robert



On Wed, May 18, 2016 at 8:09 AM, Robert Yang > wrote:

The PRServer bumps PR according to do_package's task hash, that
causes it bumps *all* packages' PR when recipes like pseudo-native
and rpm-native is changed. It is a very bad user experience when we
run "smart/opkg upgrade" on running target, for example, when we apply
a CVE patch to pseudo-native or rpm-native, or do some slight changes
in their do_compile, "smart/opkg upgrade" will download/install *all*
the packages since all of the packages' PR are bumped.

Here are some rough suggestions to fix this problem, and please feel
free to give your suggestions.
1) Do not use do_package's task for bumping PR, the easiest way
is simulate manually bump PR -- only bump PR when the recipe
itself's checksum is changed.

2) Add a new task for PRServer, redefine its task hash for bumping
PR, for example, this task hash only considers RDEPENDS (no
DEPENDS), and drop any native dependencies.

I prefer the first way, and an alternative way maybe add a var so that
the user can configure it:
PR_CHECKSUM = "${BB_TASKHASH}" (current way)
Or
PR_CHECKSUM = ""

--
Thanks

Robert
--
___
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] [Krogoth][PATCH v2] gcc-4.9: fix build with gcc 6

2016-05-18 Thread Ioan-Adrian Ratiu
Building gcc-cross 4.9.3 with gcc 6 fails with the following error:

error: 'const char* libc_name_p(const char*, unsigned int)' redeclared inline 
with 'gnu_inline' attribute

This is a backport of the upstream fix.

Signed-off-by: Ioan-Adrian Ratiu 
---
 meta/recipes-devtools/gcc/gcc-4.9.inc  |   1 +
 .../gcc/gcc-4.9/0076-Fix-build-with-gcc-6.patch| 151 +
 2 files changed, 152 insertions(+)
 create mode 100644 
meta/recipes-devtools/gcc/gcc-4.9/0076-Fix-build-with-gcc-6.patch

diff --git a/meta/recipes-devtools/gcc/gcc-4.9.inc 
b/meta/recipes-devtools/gcc/gcc-4.9.inc
index 208e092..0cd9826 100644
--- a/meta/recipes-devtools/gcc/gcc-4.9.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.9.inc
@@ -91,6 +91,7 @@ SRC_URI = "\
 file://0073-Reuse-fdebug-prefix-map-to-replace-ffile-prefix-map.patch \
 file://0074-fdebug-prefix-map-support-to-remap-relative-path.patch \
 file://0075-libgcc-use-ldflags.patch \
+file://0076-Fix-build-with-gcc-6.patch \
 "
 SRC_URI[md5sum] = "6f831b4d251872736e8e9cc09746f327"
 SRC_URI[sha256sum] = 
"2332b2a5a321b57508b9031354a8503af6fdfb868b8c1748d33028d100a8b67e"
diff --git a/meta/recipes-devtools/gcc/gcc-4.9/0076-Fix-build-with-gcc-6.patch 
b/meta/recipes-devtools/gcc/gcc-4.9/0076-Fix-build-with-gcc-6.patch
new file mode 100644
index 000..f865d4f
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.9/0076-Fix-build-with-gcc-6.patch
@@ -0,0 +1,151 @@
+From efdf2b53b907c96ad3f00275588eb311335d0c91 Mon Sep 17 00:00:00 2001
+From: Ioan-Adrian Ratiu 
+Date: Thu, 12 May 2016 15:24:25 +0300
+Subject: [PATCH] Fix build with gcc 6
+
+* Make-lang.in: Invoke gperf with -L C++.
+* cfns.gperf: Remove prototypes for hash and libc_name_p
+inlines.
+* cfns.h: Regenerated.
+* except.c (nothrow_libfn_p): Adjust.
+
+svn rev: r233572
+
+Upstream-status: Backport [gcc 4.9]
+
+Signed-off-by: Ioan-Adrian Ratiu 
+---
+ gcc/cp/Make-lang.in |  2 +-
+ gcc/cp/cfns.gperf   | 10 ++
+ gcc/cp/cfns.h   | 41 ++---
+ gcc/cp/except.c |  3 ++-
+ 4 files changed, 19 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index bd1c1d7..a0ea0d4 100644
+--- a/gcc/cp/Make-lang.in
 b/gcc/cp/Make-lang.in
+@@ -111,7 +111,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+-  gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++  gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+   $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+ 
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 05ca753..d9b16b8 100644
+--- a/gcc/cp/cfns.gperf
 b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2014 Free Software Foundation, Inc.
+ 
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3.  If not see
+ .  */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index c845ddf..65801d1 100644
+--- a/gcc/cp/cfns.h
 b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C 
cfns.gperf  */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ 
--output-file cfns.h cfns.gperf  */
+ 
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+   && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. 
Please report a bug to ."
+ #endif
+ 
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+ 
+ /* Copyright (C) 2000-2014 Free Software Foundation, Inc.
+ 
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3.  If not see
+ .  */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+ 
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++  static inline unsigned int hash (const char *str, unsigned int len);

[OE-core] [PATCH 7/7] buildtools-tarball: add nativesdk-locale-base-en-us

2016-05-18 Thread Robert Yang
It is required by python3's bitbake.

Signed-off-by: Robert Yang 
---
 meta/recipes-core/meta/buildtools-tarball.bb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/recipes-core/meta/buildtools-tarball.bb 
b/meta/recipes-core/meta/buildtools-tarball.bb
index f45e781..34df531 100644
--- a/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-tarball.bb
@@ -23,6 +23,7 @@ TOOLCHAIN_HOST_TASK ?= "\
 nativesdk-wget \
 nativesdk-ca-certificates \
 nativesdk-texinfo \
+nativesdk-locale-base-en-us \
 "
 
 SDK_PACKAGE_ARCHS += "buildtools-dummy-${SDKPKGSUFFIX}"
-- 
2.8.0

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


[OE-core] [PATCH 6/7] buildtools-tarball: replace nativesdk-python with nativesdk-python3

2016-05-18 Thread Robert Yang
Signed-off-by: Robert Yang 
---
 meta/recipes-core/meta/buildtools-tarball.bb | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-core/meta/buildtools-tarball.bb 
b/meta/recipes-core/meta/buildtools-tarball.bb
index dd28b96..f45e781 100644
--- a/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-tarball.bb
@@ -1,4 +1,4 @@
-DESCRIPTION = "SDK type target for building a standalone tarball containing 
python, chrpath, make, git and tar. The \
+DESCRIPTION = "SDK type target for building a standalone tarball containing 
python3, chrpath, make, git and tar. The \
tarball can be used to run bitbake builds on systems which 
don't meet the usual version requirements."
 SUMMARY = "Standalone tarball for running builds on systems with inadequate 
software"
 LICENSE = "MIT"
@@ -8,10 +8,10 @@ LIC_FILES_CHKSUM = 
"file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d
 TOOLCHAIN_TARGET_TASK ?= ""
 
 TOOLCHAIN_HOST_TASK ?= "\
-nativesdk-python-core \
-nativesdk-python-modules \
-nativesdk-python-misc \
-nativesdk-python-git \
+nativesdk-python3-core \
+nativesdk-python3-modules \
+nativesdk-python3-misc \
+nativesdk-python3-git \
 nativesdk-ncurses-terminfo-base \
 nativesdk-chrpath \
 nativesdk-tar \
-- 
2.8.0

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


[OE-core] [PATCH 1/7] python3-smmap: add it for python3-gitdb

2016-05-18 Thread Robert Yang
Need add python3-git to buildtools-tarball for the py3 build, and the
dependencies chain is:

python3-git -> python3-gitdb -> python3-smmap

Signed-off-by: Robert Yang 
---
 meta/recipes-devtools/python/python-smmap.inc   | 19 +++
 meta/recipes-devtools/python/python-smmap_0.9.0.bb  | 20 +---
 meta/recipes-devtools/python/python3-smmap_0.9.0.bb |  5 +
 3 files changed, 25 insertions(+), 19 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-smmap.inc
 create mode 100644 meta/recipes-devtools/python/python3-smmap_0.9.0.bb

diff --git a/meta/recipes-devtools/python/python-smmap.inc 
b/meta/recipes-devtools/python/python-smmap.inc
new file mode 100644
index 000..5b2ac74
--- /dev/null
+++ b/meta/recipes-devtools/python/python-smmap.inc
@@ -0,0 +1,19 @@
+SUMMARY = "Python implementation of a sliding window memory map manager"
+DESCRIPTION = "A pure Python implementation of a sliding memory map to \
+help unifying memory mapped access on 32 and 64 bit systems and to help \
+managing resources more efficiently."
+HOMEPAGE = "http://github.com/gitpython-developers/GitPython;
+SECTION = "devel/python"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = 
"file://PKG-INFO;beginline=8;endline=8;md5=e910b35b0ef4e1f665b9a75d6afb7709"
+
+SRC_URI = "http://pypi.python.org/packages/source/s/smmap/smmap-${PV}.tar.gz;
+SRC_URI[md5sum] = "d7932d5ace206bf4ae15198cf36fb6ab"
+SRC_URI[sha256sum] = 
"0e2b62b497bd5f0afebc002eda4d90df9d209c30ef257e8673c90a6b5c119d62"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/smmap/;
+UPSTREAM_CHECK_REGEX = "/smmap/(?P(\d+[\.\-_]*)+)"
+
+S = "${WORKDIR}/smmap-${PV}"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python-smmap_0.9.0.bb 
b/meta/recipes-devtools/python/python-smmap_0.9.0.bb
index 5f9cf45..c118dd8 100644
--- a/meta/recipes-devtools/python/python-smmap_0.9.0.bb
+++ b/meta/recipes-devtools/python/python-smmap_0.9.0.bb
@@ -1,23 +1,5 @@
-SUMMARY = "Python implementation of a sliding window memory map manager"
-DESCRIPTION = "A pure Python implementation of a sliding memory map to \
-help unifying memory mapped access on 32 and 64 bit systems and to help \
-managing resources more efficiently."
-HOMEPAGE = "http://github.com/gitpython-developers/GitPython;
-SECTION = "devel/python"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = 
"file://PKG-INFO;beginline=8;endline=8;md5=e910b35b0ef4e1f665b9a75d6afb7709"
-
-SRC_URI = "http://pypi.python.org/packages/source/s/smmap/smmap-${PV}.tar.gz;
-SRC_URI[md5sum] = "d7932d5ace206bf4ae15198cf36fb6ab"
-SRC_URI[sha256sum] = 
"0e2b62b497bd5f0afebc002eda4d90df9d209c30ef257e8673c90a6b5c119d62"
-
-UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/smmap/;
-UPSTREAM_CHECK_REGEX = "/smmap/(?P(\d+[\.\-_]*)+)"
-
-S = "${WORKDIR}/smmap-${PV}"
+require python-smmap.inc
 
 inherit setuptools
 
 RDEPENDS_${PN} += "python-codecs python-mmap python-lang"
-
-BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python3-smmap_0.9.0.bb 
b/meta/recipes-devtools/python/python3-smmap_0.9.0.bb
new file mode 100644
index 000..9f8a26d
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-smmap_0.9.0.bb
@@ -0,0 +1,5 @@
+require python-smmap.inc
+
+inherit setuptools3
+
+RDEPENDS_${PN} += "python3-codecs python3-mmap python3-lang"
-- 
2.8.0

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


[OE-core] [PATCH 5/7] buildtools-tarball: remove nativesdk-python-pexpect

2016-05-18 Thread Robert Yang
It was added for testing, and not needed any more after:
4a8a74c62836a20610daf029d4cec0b3087758b2
Author: Robert Yang 
Date:   Mon Mar 21 02:25:50 2016 -0700

gpg_sign.py: get rid of pexpect

So remove it.

Signed-off-by: Robert Yang 
---
 meta/recipes-core/meta/buildtools-tarball.bb | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/recipes-core/meta/buildtools-tarball.bb 
b/meta/recipes-core/meta/buildtools-tarball.bb
index e9578ca..dd28b96 100644
--- a/meta/recipes-core/meta/buildtools-tarball.bb
+++ b/meta/recipes-core/meta/buildtools-tarball.bb
@@ -12,7 +12,6 @@ TOOLCHAIN_HOST_TASK ?= "\
 nativesdk-python-modules \
 nativesdk-python-misc \
 nativesdk-python-git \
-nativesdk-python-pexpect \
 nativesdk-ncurses-terminfo-base \
 nativesdk-chrpath \
 nativesdk-tar \
-- 
2.8.0

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


[OE-core] [PATCH 3/7] python3-gitdb: add it for python3-git

2016-05-18 Thread Robert Yang
Need add python3-git to buildtools-tarball for the py3 build, and the
dependencies chain is:

python3-git -> python3-gitdb

Signed-off-by: Robert Yang 
---
 meta/recipes-devtools/python/python-gitdb.inc   | 16 
 meta/recipes-devtools/python/python-gitdb_0.6.4.bb  | 18 ++
 meta/recipes-devtools/python/python3-gitdb_0.6.4.bb |  7 +++
 3 files changed, 25 insertions(+), 16 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-gitdb.inc
 create mode 100644 meta/recipes-devtools/python/python3-gitdb_0.6.4.bb

diff --git a/meta/recipes-devtools/python/python-gitdb.inc 
b/meta/recipes-devtools/python/python-gitdb.inc
new file mode 100644
index 000..6467bd2
--- /dev/null
+++ b/meta/recipes-devtools/python/python-gitdb.inc
@@ -0,0 +1,16 @@
+SUMMARY = "A pure-Python git object database"
+HOMEPAGE = "http://github.com/gitpython-developers/gitdb;
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=59e5ecb13339a936eedf83282eaf4528"
+
+SRC_URI = "https://pypi.python.org/packages/source/g/gitdb/gitdb-${PV}.tar.gz;
+
+SRC_URI[md5sum] = "44e4366b8bdfd306b075c3a52c96ae1a"
+SRC_URI[sha256sum] = 
"a3ebbc27be035a2e874ed904df516e35f4a29a778a764385de09de9e0f139658"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/gitdb/;
+
+S = "${WORKDIR}/gitdb-${PV}"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python-gitdb_0.6.4.bb 
b/meta/recipes-devtools/python/python-gitdb_0.6.4.bb
index c82df1e..1777395 100644
--- a/meta/recipes-devtools/python/python-gitdb_0.6.4.bb
+++ b/meta/recipes-devtools/python/python-gitdb_0.6.4.bb
@@ -1,21 +1,7 @@
-SUMMARY = "A pure-Python git object database"
-HOMEPAGE = "http://github.com/gitpython-developers/gitdb;
-SECTION = "devel/python"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=59e5ecb13339a936eedf83282eaf4528"
-DEPENDS = "python-async python-smmap"
-
-SRC_URI = "https://pypi.python.org/packages/source/g/gitdb/gitdb-${PV}.tar.gz;
-
-SRC_URI[md5sum] = "44e4366b8bdfd306b075c3a52c96ae1a"
-SRC_URI[sha256sum] = 
"a3ebbc27be035a2e874ed904df516e35f4a29a778a764385de09de9e0f139658"
+require python-gitdb.inc
 
-UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/gitdb/;
-
-S = "${WORKDIR}/gitdb-${PV}"
+DEPENDS = "python-async python-smmap"
 
 inherit distutils
 
 RDEPENDS_${PN} += "python-smmap python-async python-mmap python-lang 
python-zlib python-io python-shell"
-
-BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb 
b/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb
new file mode 100644
index 000..9927658
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb
@@ -0,0 +1,7 @@
+require python-gitdb.inc
+
+DEPENDS = "python3-async python3-smmap"
+
+inherit distutils3
+
+RDEPENDS_${PN} += "python3-smmap python3-async python3-mmap python3-lang 
python3-io python3-shell"
-- 
2.8.0

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


[OE-core] [PATCH 4/7] python3-git: add it for buildtools-tarball

2016-05-18 Thread Robert Yang
Need add python3-git to buildtools-tarball for the py3 build.

Signed-off-by: Robert Yang 
---
 meta/recipes-devtools/python/python-git.inc   | 21 +
 meta/recipes-devtools/python/python-git_1.0.2.bb  | 22 ++
 meta/recipes-devtools/python/python3-git_1.0.2.bb |  7 +++
 3 files changed, 30 insertions(+), 20 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-git.inc
 create mode 100644 meta/recipes-devtools/python/python3-git_1.0.2.bb

diff --git a/meta/recipes-devtools/python/python-git.inc 
b/meta/recipes-devtools/python/python-git.inc
new file mode 100644
index 000..72632b7
--- /dev/null
+++ b/meta/recipes-devtools/python/python-git.inc
@@ -0,0 +1,21 @@
+SUMMARY = "Python library used to interact with Git repositories"
+DESCRIPTION = "GitPython provides object model read and write access to \
+a git repository. Access repository information conveniently, alter the \
+index directly, handle remotes, or go down to low-level object database \
+access with big-files support."
+HOMEPAGE = "http://github.com/gitpython-developers/GitPython;
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183"
+
+SRC_URI = 
"http://pypi.python.org/packages/source/G/GitPython/GitPython-${PV}.tar.gz;
+
+SRC_URI[md5sum] = "d92d96a8da0fc77cf141d3e16084e094"
+SRC_URI[sha256sum] = 
"85de72556781480a38897a77de5b458ae3838b0fd589593679a1b5f34d181d84"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/GitPython/;
+UPSTREAM_CHECK_REGEX = "/GitPython/(?P(\d+[\.\-_]*)+)"
+
+S = "${WORKDIR}/GitPython-${PV}"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python-git_1.0.2.bb 
b/meta/recipes-devtools/python/python-git_1.0.2.bb
index f00f805..5ca7713 100644
--- a/meta/recipes-devtools/python/python-git_1.0.2.bb
+++ b/meta/recipes-devtools/python/python-git_1.0.2.bb
@@ -1,26 +1,8 @@
-SUMMARY = "Python library used to interact with Git repositories"
-DESCRIPTION = "GitPython provides object model read and write access to \
-a git repository. Access repository information conveniently, alter the \
-index directly, handle remotes, or go down to low-level object database \
-access with big-files support."
-HOMEPAGE = "http://github.com/gitpython-developers/GitPython;
-SECTION = "devel/python"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183"
-DEPENDS = "python-gitdb"
-
-SRC_URI = 
"http://pypi.python.org/packages/source/G/GitPython/GitPython-${PV}.tar.gz;
-
-SRC_URI[md5sum] = "d92d96a8da0fc77cf141d3e16084e094"
-SRC_URI[sha256sum] = 
"85de72556781480a38897a77de5b458ae3838b0fd589593679a1b5f34d181d84"
+require python-git.inc
 
-UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/GitPython/;
-UPSTREAM_CHECK_REGEX = "/GitPython/(?P(\d+[\.\-_]*)+)"
-
-S = "${WORKDIR}/GitPython-${PV}"
+DEPENDS = "python-gitdb"
 
 inherit setuptools
 
 RDEPENDS_${PN} += "python-gitdb python-lang python-io python-shell python-math 
python-re python-subprocess python-stringold python-unixadmin"
 
-BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python3-git_1.0.2.bb 
b/meta/recipes-devtools/python/python3-git_1.0.2.bb
new file mode 100644
index 000..6620444
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-git_1.0.2.bb
@@ -0,0 +1,7 @@
+require python-git.inc
+
+DEPENDS = "python3-gitdb"
+
+inherit setuptools3
+
+RDEPENDS_${PN} += "python3-gitdb python3-lang python3-io python3-shell 
python3-math python3-re python3-subprocess python3-stringold python3-unixadmin"
-- 
2.8.0

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


[OE-core] [PATCH 2/7] python3-async: add it for python3-gitdb

2016-05-18 Thread Robert Yang
Need add python3-git to buildtools-tarball for the py3 build, and the
dependencies chain is:

python3-git -> python3-gitdb -> python3-async

Signed-off-by: Robert Yang 
---
 meta/recipes-devtools/python/python-async.inc   | 15 +++
 meta/recipes-devtools/python/python-async_0.6.2.bb  | 16 +---
 meta/recipes-devtools/python/python3-async_0.6.2.bb |  6 ++
 3 files changed, 22 insertions(+), 15 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-async.inc
 create mode 100644 meta/recipes-devtools/python/python3-async_0.6.2.bb

diff --git a/meta/recipes-devtools/python/python-async.inc 
b/meta/recipes-devtools/python/python-async.inc
new file mode 100644
index 000..d80606a
--- /dev/null
+++ b/meta/recipes-devtools/python/python-async.inc
@@ -0,0 +1,15 @@
+SUMMARY = "Python framework to process interdependent tasks in a pool of 
workers"
+HOMEPAGE = "http://github.com/gitpython-developers/async;
+SECTION = "devel/python"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = 
"file://PKG-INFO;beginline=8;endline=8;md5=88df8e78b9edfd744953862179f2d14e"
+
+SRC_URI = "http://pypi.python.org/packages/source/a/async/async-${PV}.tar.gz;
+SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b"
+SRC_URI[sha256sum] = 
"ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/async/;
+
+S = "${WORKDIR}/async-${PV}"
+
+BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python-async_0.6.2.bb 
b/meta/recipes-devtools/python/python-async_0.6.2.bb
index ad0a617..d855e42 100644
--- a/meta/recipes-devtools/python/python-async_0.6.2.bb
+++ b/meta/recipes-devtools/python/python-async_0.6.2.bb
@@ -1,19 +1,5 @@
-SUMMARY = "Python framework to process interdependent tasks in a pool of 
workers"
-HOMEPAGE = "http://github.com/gitpython-developers/async;
-SECTION = "devel/python"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = 
"file://PKG-INFO;beginline=8;endline=8;md5=88df8e78b9edfd744953862179f2d14e"
-
-SRC_URI = "http://pypi.python.org/packages/source/a/async/async-${PV}.tar.gz;
-SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b"
-SRC_URI[sha256sum] = 
"ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051"
-
-UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/async/;
-
-S = "${WORKDIR}/async-${PV}"
+require python-async.inc
 
 inherit setuptools
 
 RDEPENDS_${PN} += "python-threading python-lang"
-
-BBCLASSEXTEND = "nativesdk"
diff --git a/meta/recipes-devtools/python/python3-async_0.6.2.bb 
b/meta/recipes-devtools/python/python3-async_0.6.2.bb
new file mode 100644
index 000..54a30f5
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-async_0.6.2.bb
@@ -0,0 +1,6 @@
+require python-async.inc
+
+inherit setuptools3
+
+RDEPENDS_${PN} += "python3-threading python3-lang"
+
-- 
2.8.0

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


[OE-core] [PATCH 0/7][python3] buildtools-tarball: replace python with python3

2016-05-18 Thread Robert Yang
The following changes since commit 84b11bce72296d04a0e6bc9f18669284017c3704:

  pkgconfig: Update AM_GLIB_GNU_GETTEXT macro (2016-05-17 17:26:05 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib rbt/btpy3
  
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/btpy3

Robert Yang (7):
  python3-smmap: add it for python3-gitdb
  python3-async: add it for python3-gitdb
  python3-gitdb: add it for python3-git
  python3-git: add it for buildtools-tarball
  buildtools-tarball: remove nativesdk-python-pexpect
  buildtools-tarball: replace nativesdk-python with nativesdk-python3
  buildtools-tarball: add nativesdk-locale-base-en-us

 meta/recipes-core/meta/buildtools-tarball.bb   | 12 ++--
 meta/recipes-devtools/python/python-async.inc  | 15 +++
 meta/recipes-devtools/python/python-async_0.6.2.bb | 16 +---
 meta/recipes-devtools/python/python-git.inc| 21 +
 meta/recipes-devtools/python/python-git_1.0.2.bb   | 22 ++
 meta/recipes-devtools/python/python-gitdb.inc  | 16 
 meta/recipes-devtools/python/python-gitdb_0.6.4.bb | 18 ++
 meta/recipes-devtools/python/python-smmap.inc  | 19 +++
 meta/recipes-devtools/python/python-smmap_0.9.0.bb | 20 +---
 .../recipes-devtools/python/python3-async_0.6.2.bb |  6 ++
 meta/recipes-devtools/python/python3-git_1.0.2.bb  |  7 +++
 .../recipes-devtools/python/python3-gitdb_0.6.4.bb |  7 +++
 .../recipes-devtools/python/python3-smmap_0.9.0.bb |  5 +
 13 files changed, 108 insertions(+), 76 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python-async.inc
 create mode 100644 meta/recipes-devtools/python/python-git.inc
 create mode 100644 meta/recipes-devtools/python/python-gitdb.inc
 create mode 100644 meta/recipes-devtools/python/python-smmap.inc
 create mode 100644 meta/recipes-devtools/python/python3-async_0.6.2.bb
 create mode 100644 meta/recipes-devtools/python/python3-git_1.0.2.bb
 create mode 100644 meta/recipes-devtools/python/python3-gitdb_0.6.4.bb
 create mode 100644 meta/recipes-devtools/python/python3-smmap_0.9.0.bb

-- 
2.8.0

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


Re: [OE-core] PRServer's problem

2016-05-18 Thread Martin Jansa
See:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=5970

Just using recipe checksum wont work, because the main reason for PR bumps
is to automatically upgrade the packages when one of the dependencies
changes .so version, which you won't detect from recipe checksum of the app
which is just using the library.

On Wed, May 18, 2016 at 8:09 AM, Robert Yang 
wrote:

> The PRServer bumps PR according to do_package's task hash, that
> causes it bumps *all* packages' PR when recipes like pseudo-native
> and rpm-native is changed. It is a very bad user experience when we
> run "smart/opkg upgrade" on running target, for example, when we apply
> a CVE patch to pseudo-native or rpm-native, or do some slight changes
> in their do_compile, "smart/opkg upgrade" will download/install *all*
> the packages since all of the packages' PR are bumped.
>
> Here are some rough suggestions to fix this problem, and please feel
> free to give your suggestions.
> 1) Do not use do_package's task for bumping PR, the easiest way
>is simulate manually bump PR -- only bump PR when the recipe
>itself's checksum is changed.
>
> 2) Add a new task for PRServer, redefine its task hash for bumping
>PR, for example, this task hash only considers RDEPENDS (no
>DEPENDS), and drop any native dependencies.
>
> I prefer the first way, and an alternative way maybe add a var so that
> the user can configure it:
> PR_CHECKSUM = "${BB_TASKHASH}" (current way)
> Or
> PR_CHECKSUM = ""
>
> --
> Thanks
>
> Robert
> --
> ___
> 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] PRServer's problem

2016-05-18 Thread Joshua G Lock
Hi Robert,

On Wed, 2016-05-18 at 14:09 +0800, Robert Yang wrote:
> The PRServer bumps PR according to do_package's task hash, that
> causes it bumps *all* packages' PR when recipes like pseudo-native
> and rpm-native is changed. It is a very bad user experience when we
> run "smart/opkg upgrade" on running target, for example, when we
> apply
> a CVE patch to pseudo-native or rpm-native, or do some slight changes
> in their do_compile, "smart/opkg upgrade" will download/install *all*
> the packages since all of the packages' PR are bumped.

Paul began working to address the package feed churn issue some time
back using the tool build-compare from the openSUSE project.

You can find links to various trees and a summary of the progress so
far in this bugzilla entry:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=8318

It still needs some more work; most notably I'd like to see some tests
that validates the functionality.

Regards,

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


Re: [OE-core] [PATCH 13/13] weston: Upgrade 1.9.0 -> 1.10.0

2016-05-18 Thread Jussi Kukkonen
On 17 May 2016 at 23:24, Richard Purdie
 wrote:
> On Tue, 2016-05-17 at 11:00 -0300, Otavio Salvador wrote:
>> On Tue, May 17, 2016 at 5:38 AM, Burton, Ross 
>> wrote:
>> >
>> > On 17 May 2016 at 08:31, Jussi Kukkonen 
>> > wrote:
>> > >
>> > > There's not much to work on as far as I can tell: 1.11 should be
>> > > a
>> > > simple upgrade with trivial patch changes.
>> > > As I said, I'm totally fine with waiting a couple of weeks until
>> > > 1.11.
>> > > On the other hand I haven't seen any reasons to start packaging a
>> > > pre-release -- why this one if we normally don't do it?
>> >
>> >
>> > Agreed, if we want an upgrade now then 1.10 is good, otherwise wait
>> > for
>> > 1.11.  There's no urgent need for a prerelease is there?
>>
>> So please do 1.10 now, as the XWayland rework was done basing on that
>> ... we can handle 1.11 upgrade once it happens.
>
> I fixed up the selftest failure the original patch as proposed caused
> and have merged that. Anything further can be based on that...

Thanks RP.

Explanation for anyone coming to this thread wondering why the weston
recipe does what it does:
* wayland-protocols is allarch because it's just xml files
* weston needs to add WAYLAND_PROTOCOLS_SYSROOT_DIR=${STAGING_DIR}/${MACHINE}
  to EXTRA_OECONF to find the xml files as PKGCONFIG_SYSROOT_DIR would
point to the wrong
  place when weston is multilib -- allarch files are in machine
sysroot, not multilib sysroot
* this leads test_sstate_sametune_samesigs test to fail, which RP
silenced by adding
  EXTRA_OECONF[vardepsexclude] = "MACHINE"

Simples!

Any other wayland compositor recipe will have to do similar things.

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


[OE-core] PRServer's problem

2016-05-18 Thread Robert Yang

The PRServer bumps PR according to do_package's task hash, that
causes it bumps *all* packages' PR when recipes like pseudo-native
and rpm-native is changed. It is a very bad user experience when we
run "smart/opkg upgrade" on running target, for example, when we apply
a CVE patch to pseudo-native or rpm-native, or do some slight changes
in their do_compile, "smart/opkg upgrade" will download/install *all*
the packages since all of the packages' PR are bumped.

Here are some rough suggestions to fix this problem, and please feel
free to give your suggestions.
1) Do not use do_package's task for bumping PR, the easiest way
   is simulate manually bump PR -- only bump PR when the recipe
   itself's checksum is changed.

2) Add a new task for PRServer, redefine its task hash for bumping
   PR, for example, this task hash only considers RDEPENDS (no
   DEPENDS), and drop any native dependencies.

I prefer the first way, and an alternative way maybe add a var so that
the user can configure it:
PR_CHECKSUM = "${BB_TASKHASH}" (current way)
Or
PR_CHECKSUM = ""

--
Thanks

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