waf confusion

Hal Murray hmurray at megapathdsl.net
Sun Sep 15 21:22:54 UTC 2019

wscript and friends have various things like:
    if ctx.env.DEST_OS in ["freebsd", "openbsd"]:
        ctx.env.PLATFORM_INCLUDES = ["/usr/local/include"]

I think the PLATFORM_ part is leftover from an old old version of waf.

ctx.env.PLATFORM_INCLUDES works because our code has things like:
            ctx.bldnode.parent.abspath(), "../include",
            "%s/host/ntpd/" % ctx.bldnode.parent.abspath(), "."
        ] + ctx.env.PLATFORM_INCLUDES,

I think we should remove all the PLATFORM_ stuff in that area and remove all 
the ctx.env.PLATFORM_INCLUDES from all the includes.

I'll make the edits, but I'm not confident that I won't break something.  I 
have tested it with NetBSD which is how I got this far.


I'm not having much luck with the waf documentation.  Where is the section 
that explains what ctx.env.INCLUDES does?  How about others like LIBPATH, 

Another chunk of documentation I'm looking for is how libraries work.  
ntpd/wscript says:
        use="libntpd_obj ntp M parse RT CAP SECCOMP PTHREAD NTPD "
            "SSL CRYPTO DNS_SD %s SOCKET NSL SCF" % use_refclock,
I'd like to understand that area.


PS: We dropped support for OpenBSD a long time ago.  Should we leave things 
like that around as a reminder, or clean them up to reduce clutter?

These are my opinions.  I hate spam.

More information about the devel mailing list