libsodium mess

Eric S. Raymond esr at thyrsus.com
Thu Jan 19 23:56:29 UTC 2017


Hal Murray <hmurray at megapathdsl.net>:
> 
> >>     if ctx.env.PLATFORM_TARGET in ["freebsd", "osx", "openbsd"]:
> >>         ctx.env.PLATFORM_INCLUDES = ["/usr/local/include"]
> >>         ctx.env.PLATFORM_LIBPATH = ["/usr/local/lib"] 
> >> That looks like it should work on FreeBSD, but it doesn't.  I looked in 
> >> config.log.  It's not there. 
> 
> > I think it should.  There's probably some glitch in the way ctx.env.PLATFORM_
> > TARGET is being computed.  You're better positioned to test that than I am. 
> 
> No, I added a print in the above code and it went off.
> 
> Where should I look next?

Well, first, look for this code in wafhelpers/check_sodium.py:

def check_sodium(ctx):
    ctx.check_cc(header_name="sodium.h", includes=ctx.env.PLATFORM_INCLUDES, mandatory=True,
                 errmsg="No\nFatal Error: Your system is missing libsodium")
    ctx.check_cc(lib="sodium", comment="Sodium crypto library", mandatory=True)

The part that might be missing if you lost an update somewhere is
"includes=ctx.env.PLATFORM_INCLUDES". That needs to be there for
sodium.h to be found if it's not under /include or /include/sys.

You might want to check the value of PLATFORM_INCLUDES at that point - I suppose
it's just possible the check is being called before it gets set properly.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>


More information about the devel mailing list