tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: geos failure on smartos



* On 2022-06-21 at 11:16 BST, Greg Troxel wrote:

[btw it would be nice to know who is doing the mnx.io bulk builds, as it
is a name new to me]

It's me, we're in the process of moving on from Joyent who are no longer involved in SmartOS or pkgsrc, so you'll see reports from both while I migrate all of the builds over.

https://twitter.com/jperkin/status/1529794494681456640

In bulk of smartos/x86_64:
 https://us-central.manta.mnx.io/pkgsrc/public/reports/upstream-trunk/20220620.2256/meta/report.html

geos fails to build:
 https://us-central.manta.mnx.io/pkgsrc/public/reports/upstream-trunk/20220620.2256/geos-3.10.3/build.log

It seems the compiler/headers are objecting to "sqrt(5)", because it
can't choose among long double, double, and float.  This works
everywhere else I've built geos, and it obviously works for the geos
development team.

Is it
 - an error in C++ to pass an int to sqrt?
 - is the smartos toolchain wrongly objecting?
 - other toolchains are wrong to allow this?
 - (d) none of the above?

It's not an error, but I didn't yet have time to dig into why other OS don't warn about it. The fix I've applied in other places is to add an explicit

  using std::sqrt;

or similar to the file in question so the compiler knows to use the C++ implementation.

Now that I'm returning to working full-time on pkgsrc I'll have capacity to dig into things like this properly again so we can come up with a better fix that will avoid having to patch.

Cheers,

--
Jonathan Perkin  -  Joyent, Inc.  -  www.joyent.com


Home | Main Index | Thread Index | Old Index