On Wed, 2018-01-31 at 18:07 +0100, Martin Jansa wrote:
What about the recipes which don't have ${S}/waf at all (and might inherit waf from possibly wrong reasons), like all those waf-samba recipes mentioned before?

Ya, sorry I should have clarified: This should fix it for recipes that only include waf.bbclass (e.g. jack and my local waf recipes that were also getting the same error). I still think that perhaps waf-samba.bbclass probably shouldn't be inheriting from waf.bbclass if the intent is that those projects doesn't actually have ${S}/waf.... but to be fair I haven't looked closely at the recipes that inherit waf-samba.bbclass.


On Wed, Jan 31, 2018 at 6:04 PM, Joshua Watt <jpewhacker@gmail.com> wrote:
Sorry, I wasn't sure if I should make my patch in-reply-to this thread....


Thanks,
Joshua Watt

On Wed, 2018-01-31 at 00:39 +0100, Martin Jansa wrote:
+Stefan

On Wed, Jan 31, 2018 at 12:38 AM, Martin Jansa <martin.jansa@gmail.com> wrote:
Thanks Andreas,

jack is the only one which inherits waf directly not through waf-samba.

More surprisingly it also has ${S}/waf it seems:

So the WARNING: shown for jack probably had different reason than the rest of them and that is:

jack/1.9.12-r0 $ jack/1.9.12-r0/git/waf --version
Error: run waf-light from a folder containing waflib

it doesn't like running waf from outside ${S} and waf_preconfigure is executed from ${TOPDIR} before do_configure switches to ${S}

I don't know how common this situation is, if all waf scripts are like that, this one (after "cd ../jack/1.9.12-r0/git") says:
waf 1.8.17 (cd7579a727d1b390bf9cbf111c1b20e811370bc0)

so I'll leave that to original author to figure it out, I don't use waf anywhere, so I cannot properly test the use case he was trying to fix.

Regards,



On Tue, Jan 30, 2018 at 11:41 PM, Andreas Müller <schnitzeltony@gmail.com> wrote:


On Tuesday, January 30, 2018, Martin Jansa <martin.jansa@gmail.com> wrote:
+Andreas who added waf inherit in jack in:
commit 0f8f1973e229a0799098bc2334416fec8c608b50
Author: Andreas Müller <schnitzeltony@googlemail.com>
Date:   Sat Oct 8 12:03:32 2016 +0200

    jack: swap to jack2
As far as I can see is jack2 configured with waf. Don't remember why I chose waf-samba. Because I am on business trip I cannot take care before next week.

Andreas

+Bian who added waf samba in:
commit 962e346df99696a10657a2ea7b2166dfaf290289
Author: Bian Naimeng <biannm@cn.fujitsu.com>
Date:   Tue Jun 16 14:18:25 2015 +0900

    waf-samba: add new class
    
    waf-samba is a build system used by samba related software

+Joe and Joe and who maintains samba and related recipes + meta-networking


On Tue, Jan 30, 2018 at 1:03 PM, Burton, Ross <ross.burton@intel.com> wrote:
Why would they do that?  Shouldn't it be a fatal bug if waf isn't found?

On 30 January 2018 at 08:30, Martin Jansa <martin.jansa@gmail.com> wrote:
* there are some recipes like jack and other which inherit waf-samba
which inherits waf, but they don't use waf for configure, strange isn't
it?

* fixes:
WARNING: libldb-1.1.29-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.
WARNING: samba-4.6.7-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.
WARNING: libtalloc-2.1.9-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir
support.
WARNING: jack-1.9.10+gitAUTOINC+2d1d323505-r0 do_configure: Unable to execute waf --version, exit code 1. Assuming waf version without bindir/libdir support.
WARNING: libtevent-0.9.31-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.
WARNING: libtdb-1.3.14-r0 do_configure: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 meta/classes/waf.bbclass | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/meta/classes/waf.bbclass b/meta/classes/waf.bbclass
index c3e744e5de..eec4d9496d 100644
--- a/meta/classes/waf.bbclass
+++ b/meta/classes/waf.bbclass
@@ -29,6 +29,9 @@ python waf_preconfigure() {
     from distutils.version import StrictVersion
     srcsubdir = d.getVar('S')
     wafbin = os.path.join(srcsubdir, 'waf')
+    if not os.path.isfile(wafbin):
+        bb.note("%s doesn't exist, cannot check whether it supports --bindir/--libdir" % wafbin)
+        return
     status, result = oe.utils.getstatusoutput(wafbin + " --version")
     if status != 0:
         bb.warn("Unable to execute waf --version, exit code %d. Assuming waf version without bindir/libdir support." % status)
--
2.15.1

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