[1/2] mpv: fetch waf in do_fetch

Submitted by Ross Burton on Oct. 8, 2020, 4:18 p.m. | Patch ID: 177059

Details

Message ID 20201008161850.3097336-1-ross.burton@arm.com
State Master Next
Commit 5af46f89fcef5c436786ed81978de60f26abe054
Headers show

Commit Message

Ross Burton Oct. 8, 2020, 4:18 p.m.
The mpv git repository doesn't include a copy of waf, instead there is a
bootstrap script to fetch it.

This recipe calls the bootstrap script in a do_patch postfunc, but
downloading should be done in do_fetch. Instead of calling
./bootstrap.sh simply add waf to the SRC_URI so that Bitbake can use the
mirrors/proxies/caching/checksum functionality.

This is both better code and also works in buildtools environments
where urllib2 can't make secure connections without configuration.

[ YOCTO #14073 ]

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

Patch hide | download patch | download mbox

diff --git a/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
index e5f1096b6..5273fc040 100644
--- a/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
+++ b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
@@ -18,7 +18,9 @@  LICENSE_FLAGS = "commercial"
 SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
 SRC_URI = " \
     git://github.com/mpv-player/mpv;name=mpv \
+    https://waf.io/waf-2.0.20;name=waf;subdir=git \
 "
+SRC_URI[waf.sha256sum] = "bf971e98edc2414968a262c6aa6b88541a26c3cd248689c89f4c57370955ee7f"
 
 S = "${WORKDIR}/git"
 
@@ -101,14 +103,10 @@  EXTRA_OECONF = " \
     ${PACKAGECONFIG_CONFARGS} \
 "
 
-do_patch[postfuncs] += "get_waf"
-
-get_waf() {
-    cd ${S}
-    ./bootstrap.py
-    sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/waf
-    cd -
+link_waf() {
+    ln -s waf-2.0.20 ${S}/waf
 }
+do_unpack[postfuncs] += "link_waf"
 
 FILES_${PN} += " \
     ${datadir}/icons \

Comments

Ross Burton Oct. 8, 2020, 4:26 p.m.
Note that this and the related glmark2 patch both depend on a change I
just submitted to oe-core[1].

Ross
[1] https://patchwork.openembedded.org/patch/177061/

On Thu, 8 Oct 2020 at 17:18, Ross Burton via lists.openembedded.org
<ross=burtonini.com@lists.openembedded.org> wrote:
>
> The mpv git repository doesn't include a copy of waf, instead there is a
> bootstrap script to fetch it.
>
> This recipe calls the bootstrap script in a do_patch postfunc, but
> downloading should be done in do_fetch. Instead of calling
> ./bootstrap.sh simply add waf to the SRC_URI so that Bitbake can use the
> mirrors/proxies/caching/checksum functionality.
>
> This is both better code and also works in buildtools environments
> where urllib2 can't make secure connections without configuration.
>
> [ YOCTO #14073 ]
>
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
>  meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb | 12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
> index e5f1096b6..5273fc040 100644
> --- a/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
> +++ b/meta-oe/recipes-multimedia/mplayer/mpv_0.32.0.bb
> @@ -18,7 +18,9 @@ LICENSE_FLAGS = "commercial"
>  SRCREV_mpv = "70b991749df389bcc0a4e145b5687233a03b4ed7"
>  SRC_URI = " \
>      git://github.com/mpv-player/mpv;name=mpv \
> +    https://waf.io/waf-2.0.20;name=waf;subdir=git \
>  "
> +SRC_URI[waf.sha256sum] = "bf971e98edc2414968a262c6aa6b88541a26c3cd248689c89f4c57370955ee7f"
>
>  S = "${WORKDIR}/git"
>
> @@ -101,14 +103,10 @@ EXTRA_OECONF = " \
>      ${PACKAGECONFIG_CONFARGS} \
>  "
>
> -do_patch[postfuncs] += "get_waf"
> -
> -get_waf() {
> -    cd ${S}
> -    ./bootstrap.py
> -    sed -i -e 's|/usr/bin/env python|/usr/bin/env python3|g' ${S}/waf
> -    cd -
> +link_waf() {
> +    ln -s waf-2.0.20 ${S}/waf
>  }
> +do_unpack[postfuncs] += "link_waf"
>
>  FILES_${PN} += " \
>      ${datadir}/icons \
> --
> 2.25.1
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#87414): https://lists.openembedded.org/g/openembedded-devel/message/87414
Mute This Topic: https://lists.openembedded.org/mt/77386846/3617530
Group Owner: openembedded-devel+owner@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [oe-patchwork@oe-patch.openembedded.org]
-=-=-=-=-=-=-=-=-=-=-=-