Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-12 Thread Fabio Berton
Hi Ross!

On Wed, Sep 11, 2019 at 9:35 AM Ross Burton  wrote:
>
> On 10/09/2019 11:39, Alexander Kanavin wrote:
> > Yes, if STAGING_LIBDIR is set, via this patch:
> > http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
> >
> > (don't shoot the pianist, it was working like this pre-rewrite as well).
>
> See I knew that but had blocked it out because it's so horrible.
>
> One day we need to sit down with upstream Python and figure out how to
> handle cross-compilation properly.
>
> I finally managed to make my own builds fail (had to turn off Python in
> libxml2) and beat at it to build without a target Python.  Fabio: can
> you try building Mesa with these two patches:

Worked removing python3 from DEPENDS and adding these two patches.

Fabio
>
> http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=5f3559d8bb61212e0f9a6543f2dce2bdf77c48b5
> http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=4f8995aaa2ec557a0603ddc664d929317b0c0b6e
>
> Cheers,
> Ross
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-11 Thread Ross Burton

On 11/09/2019 16:27, Alexander Kanavin wrote:
I have to say, the latter patch is rather ugly. It would be better to 
split python3native class into two: python3native (just for running 
scripts, does not depend on target python3), and python3target (for 
actually obtaining information about the target configuration, does need 
target python3). Until then, I'd just pull in target python, for 
simplicity's sake (also there's one or two recipes where the same meson 
problem happens).


Oh yes, the patch isn't pretty.

I was wondering how many recipes actually need the ability to run 
nativepython getting information about target python.  Splitting the 
class, or having a toggle, was an idea I had too.


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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-11 Thread Alexander Kanavin
On Wed, 11 Sep 2019 at 14:35, Ross Burton  wrote:

>
> See I knew that but had blocked it out because it's so horrible.
>
> One day we need to sit down with upstream Python and figure out how to
> handle cross-compilation properly.
>
> I finally managed to make my own builds fail (had to turn off Python in
> libxml2) and beat at it to build without a target Python.  Fabio: can
> you try building Mesa with these two patches:
>
>
> http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=5f3559d8bb61212e0f9a6543f2dce2bdf77c48b5
>
> http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=4f8995aaa2ec557a0603ddc664d929317b0c0b6e
>

I have to say, the latter patch is rather ugly. It would be better to split
python3native class into two: python3native (just for running scripts, does
not depend on target python3), and python3target (for actually obtaining
information about the target configuration, does need target python3).
Until then, I'd just pull in target python, for simplicity's sake (also
there's one or two recipes where the same meson problem happens).

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-11 Thread Ross Burton

On 10/09/2019 11:39, Alexander Kanavin wrote:

Yes, if STAGING_LIBDIR is set, via this patch:
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch

(don't shoot the pianist, it was working like this pre-rewrite as well).


See I knew that but had blocked it out because it's so horrible.

One day we need to sit down with upstream Python and figure out how to 
handle cross-compilation properly.


I finally managed to make my own builds fail (had to turn off Python in 
libxml2) and beat at it to build without a target Python.  Fabio: can 
you try building Mesa with these two patches:


http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=5f3559d8bb61212e0f9a6543f2dce2bdf77c48b5
http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=ross/mut=4f8995aaa2ec557a0603ddc664d929317b0c0b6e

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-10 Thread Fabio Berton
Because I was a little confused about find_installation() function,
but your comment above clarifies.

Thanks!

On Tue, Sep 10, 2019 at 11:24 AM Alexander Kanavin
 wrote:
>
> The best way is like in your latest patch - inherit python3native and DEPENDS 
> = "python3". No need for further tweaks, why did you try them?
>
> Alex
>
> On Tue, 10 Sep 2019 at 15:59, Fabio Berton  
> wrote:
>>
>> Adding python3-native doesn't work.
>>
>> Hmm... it seems that adding "export STAGING_LIBDIR =
>> "${STAGING_LIBDIR_NATIVE}"" and removing python3 from DEPENDS worked.
>>
>> Alexander, I don't know what is the best way to do this, maybe you can
>> help here.
>>
>> Thanks!
>>
>> On Tue, Sep 10, 2019 at 7:40 AM Alexander Kanavin
>>  wrote:
>> >
>> > On Tue, 10 Sep 2019 at 11:50, Ross Burton  wrote:
>> >>
>> >> On 09/09/2019 19:41, Alexander Kanavin wrote:
>> >> > and find_installation() method of meson does not merely look for the
>> >> > native python binary, it runs the binary with a meson-supplied python
>> >> > script designed to obtain all sorts of information, including
>> >> > target-specific things that we patch native python to report. If the
>> >> > target python installation is not present in sysroot, the script will
>> >> > fail, and meson will declare that 'there is no valid installation of
>> >> > python on your system'.
>> >>
>> >> So the python3-native pokes around the target python3 to get the right
>> >> values?
>> >
>> >
>> > Yes, if STAGING_LIBDIR is set, via this patch:
>> > http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
>> >
>> > (don't shoot the pianist, it was working like this pre-rewrite as well).
>> >
>> > Alex
>> > --
>> > ___
>> > 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] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-10 Thread Alexander Kanavin
The best way is like in your latest patch - inherit python3native and
DEPENDS = "python3". No need for further tweaks, why did you try them?

Alex

On Tue, 10 Sep 2019 at 15:59, Fabio Berton 
wrote:

> Adding python3-native doesn't work.
>
> Hmm... it seems that adding "export STAGING_LIBDIR =
> "${STAGING_LIBDIR_NATIVE}"" and removing python3 from DEPENDS worked.
>
> Alexander, I don't know what is the best way to do this, maybe you can
> help here.
>
> Thanks!
>
> On Tue, Sep 10, 2019 at 7:40 AM Alexander Kanavin
>  wrote:
> >
> > On Tue, 10 Sep 2019 at 11:50, Ross Burton  wrote:
> >>
> >> On 09/09/2019 19:41, Alexander Kanavin wrote:
> >> > and find_installation() method of meson does not merely look for the
> >> > native python binary, it runs the binary with a meson-supplied python
> >> > script designed to obtain all sorts of information, including
> >> > target-specific things that we patch native python to report. If the
> >> > target python installation is not present in sysroot, the script will
> >> > fail, and meson will declare that 'there is no valid installation of
> >> > python on your system'.
> >>
> >> So the python3-native pokes around the target python3 to get the right
> >> values?
> >
> >
> > Yes, if STAGING_LIBDIR is set, via this patch:
> >
> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
> >
> > (don't shoot the pianist, it was working like this pre-rewrite as well).
> >
> > Alex
> > --
> > ___
> > 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] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-10 Thread Fabio Berton
Adding python3-native doesn't work.

Hmm... it seems that adding "export STAGING_LIBDIR =
"${STAGING_LIBDIR_NATIVE}"" and removing python3 from DEPENDS worked.

Alexander, I don't know what is the best way to do this, maybe you can
help here.

Thanks!

On Tue, Sep 10, 2019 at 7:40 AM Alexander Kanavin
 wrote:
>
> On Tue, 10 Sep 2019 at 11:50, Ross Burton  wrote:
>>
>> On 09/09/2019 19:41, Alexander Kanavin wrote:
>> > and find_installation() method of meson does not merely look for the
>> > native python binary, it runs the binary with a meson-supplied python
>> > script designed to obtain all sorts of information, including
>> > target-specific things that we patch native python to report. If the
>> > target python installation is not present in sysroot, the script will
>> > fail, and meson will declare that 'there is no valid installation of
>> > python on your system'.
>>
>> So the python3-native pokes around the target python3 to get the right
>> values?
>
>
> Yes, if STAGING_LIBDIR is set, via this patch:
> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
>
> (don't shoot the pianist, it was working like this pre-rewrite as well).
>
> Alex
> --
> ___
> 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] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-10 Thread Alexander Kanavin
On Tue, 10 Sep 2019 at 11:50, Ross Burton  wrote:

> On 09/09/2019 19:41, Alexander Kanavin wrote:
> > and find_installation() method of meson does not merely look for the
> > native python binary, it runs the binary with a meson-supplied python
> > script designed to obtain all sorts of information, including
> > target-specific things that we patch native python to report. If the
> > target python installation is not present in sysroot, the script will
> > fail, and meson will declare that 'there is no valid installation of
> > python on your system'.
>
> So the python3-native pokes around the target python3 to get the right
> values?
>

Yes, if STAGING_LIBDIR is set, via this patch:
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/python/python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch

(don't shoot the pianist, it was working like this pre-rewrite as well).

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-10 Thread Ross Burton

On 09/09/2019 19:41, Alexander Kanavin wrote:
and find_installation() method of meson does not merely look for the 
native python binary, it runs the binary with a meson-supplied python 
script designed to obtain all sorts of information, including 
target-specific things that we patch native python to report. If the 
target python installation is not present in sysroot, the script will 
fail, and meson will declare that 'there is no valid installation of 
python on your system'.


So the python3-native pokes around the target python3 to get the right 
values?


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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-09 Thread Alexander Kanavin
On Mon, 9 Sep 2019 at 18:49, Ross Burton  wrote:

> > As I had previously suggested... can you try adding 'python3' to DEPENDS
> > of mesa, and see if that helps please? I think that would allow avoiding
> > this patch altogether.
>
> So why does Meson need *target* Python to be present when building Mesa?
>

Because mesa does this:

prog_python = import('python').find_installation('python3')

and find_installation() method of meson does not merely look for the native
python binary, it runs the binary with a meson-supplied python script
designed to obtain all sorts of information, including target-specific
things that we patch native python to report. If the target python
installation is not present in sysroot, the script will fail, and meson
will declare that 'there is no valid installation of python on your system'.

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-09 Thread Ross Burton

On 06/09/2019 20:07, Alexander Kanavin wrote:
As I had previously suggested... can you try adding 'python3' to DEPENDS 
of mesa, and see if that helps please? I think that would allow avoiding 
this patch altogether.


So why does Meson need *target* Python to be present when building Mesa?

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-09 Thread Alexander Kanavin
Thanks, now it's future-proof :)

Alex

On Mon, 9 Sep 2019 at 16:54, Fabio Berton 
wrote:

> Hi Alexander!
>
> I sent a v2 with python3 in depends and dropped the patch.
>
> Thanks!
>
> On Fri, Sep 6, 2019 at 5:33 PM Alexander Kanavin 
> wrote:
> >
> > On Fri, 6 Sep 2019 at 22:12, Otavio Salvador <
> otavio.salva...@ossystems.com.br> wrote:
> >>
> >> > As I had previously suggested... can you try adding 'python3' to
> DEPENDS of mesa, and see if that helps please? I think that would allow
> avoiding this patch altogether.
> >>
> >> Why a new build dependency if this works just fine?
> >
> >
> > 1. Less patches is always better than more patches, especially if they
> are non-upstreamable.
> >
> > 2. The patch reverts to something that meson has deprecated and will
> likely remove in the future.
> >
> https://github.com/mesonbuild/meson/blob/master/docs/markdown/Python-3-module.md
> >
> > 3. Meson's currently supported way of detecting python does in fact rely
> on python's target configuration being available, as it picks up settings
> from it. I had fixed a similar issue elsewhere recently.
> >
> > Alex
> >
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-09 Thread Fabio Berton
Hi Alexander!

I sent a v2 with python3 in depends and dropped the patch.

Thanks!

On Fri, Sep 6, 2019 at 5:33 PM Alexander Kanavin  wrote:
>
> On Fri, 6 Sep 2019 at 22:12, Otavio Salvador 
>  wrote:
>>
>> > As I had previously suggested... can you try adding 'python3' to DEPENDS 
>> > of mesa, and see if that helps please? I think that would allow avoiding 
>> > this patch altogether.
>>
>> Why a new build dependency if this works just fine?
>
>
> 1. Less patches is always better than more patches, especially if they are 
> non-upstreamable.
>
> 2. The patch reverts to something that meson has deprecated and will likely 
> remove in the future.
> https://github.com/mesonbuild/meson/blob/master/docs/markdown/Python-3-module.md
>
> 3. Meson's currently supported way of detecting python does in fact rely on 
> python's target configuration being available, as it picks up settings from 
> it. I had fixed a similar issue elsewhere recently.
>
> Alex
>
-- 
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-06 Thread Alexander Kanavin
On Fri, 6 Sep 2019 at 22:12, Otavio Salvador <
otavio.salva...@ossystems.com.br> wrote:

> > As I had previously suggested... can you try adding 'python3' to DEPENDS
> of mesa, and see if that helps please? I think that would allow avoiding
> this patch altogether.
>
> Why a new build dependency if this works just fine?
>

1. Less patches is always better than more patches, especially if they are
non-upstreamable.

2. The patch reverts to something that meson has deprecated and will likely
remove in the future.
https://github.com/mesonbuild/meson/blob/master/docs/markdown/Python-3-module.md

3. Meson's currently supported way of detecting python does in fact rely on
python's target configuration being available, as it picks up settings from
it. I had fixed a similar issue elsewhere recently.

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


Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-06 Thread Otavio Salvador
Hello Alexander,

On Fri, Sep 6, 2019 at 4:08 PM Alexander Kanavin  wrote:
> On Fri, 6 Sep 2019 at 20:47, Fabio Berton  
> wrote:
>> +Subject: [PATCH] Revert "meson: Improve detection of Python when using Meson
>> + >=0.50."
>> +Organization: O.S. Systems Software LTDA.
>> +
>> +This reverts commit cb3072488cd327155206e92d1ad8eb72a23ab04e.
>> +
>> +Upstream-Status: Inappropriate [embedded specific]
>> +
>> +This change need to be fix upstream. As a workaround revert this
>> +commit to prevent blocking update mesa recipe.
>> +
>> +Without this we get this error:
>> +
>> +/---
>> +|meson.build:765:2: ERROR: 
>> +|['../build/tmp/work/cortexa9hf-neon-imx-oel-linux-gnueabi/
>> +|mesa/2_19.1.6-r0/recipe-sysroot-native/usr/bin/python3-native/python3']>
>> +|is not a valid python or it is missing setuptools
>> +\---
>
> As I had previously suggested... can you try adding 'python3' to DEPENDS of 
> mesa, and see if that helps please? I think that would allow avoiding this 
> patch altogether.

Why a new build dependency if this works just fine?

-- 
Otavio Salvador O.S. Systems
http://www.ossystems.com.brhttp://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854  Mobile: +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] mesa: Upgrade 19.1.1 -> 19.1.6

2019-09-06 Thread Alexander Kanavin
On Fri, 6 Sep 2019 at 20:47, Fabio Berton 
wrote:

> +Subject: [PATCH] Revert "meson: Improve detection of Python when using
> Meson
> + >=0.50."
> +Organization: O.S. Systems Software LTDA.
> +
> +This reverts commit cb3072488cd327155206e92d1ad8eb72a23ab04e.
> +
> +Upstream-Status: Inappropriate [embedded specific]
> +
> +This change need to be fix upstream. As a workaround revert this
> +commit to prevent blocking update mesa recipe.
> +
> +Without this we get this error:
> +
> +/---
> +|meson.build:765:2: ERROR: 
> +|['../build/tmp/work/cortexa9hf-neon-imx-oel-linux-gnueabi/
> +|mesa/2_19.1.6-r0/recipe-sysroot-native/usr/bin/python3-native/python3']>
> +|is not a valid python or it is missing setuptools
> +\---
>

As I had previously suggested... can you try adding 'python3' to DEPENDS of
mesa, and see if that helps please? I think that would allow avoiding this
patch altogether.

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