Re: [OE-core] [PATCH] mesa: Upgrade 19.1.1 -> 19.1.6
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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