Posted Oct 27, 2011 22:15 UTC (Thu) by nix (subscriber, #2304)
[Link]
The installation isn't that bad. The "oh heck now I have to learn it and (possibly) learn enough Python to be getting on with *and* figure out how this one-package build system works just so I can set CFLAGS and libdir appropriately for my biarch system, since they used lib and I use lib64 or vice versa or something like that"... *that* is not nice at all. In fact it was sufficient reason for me to avoid scons (and everything that used it to build completely) until recently.
(Sure, the problem goes away if it's a Python package... but if it's a Python package, why the heck aren't they using distutils, which supports prefix and destdir and everything necessary already, with zero effort needed from the packager?)
KS2011: Afternoon topics
Posted Oct 28, 2011 10:28 UTC (Fri) by Rudd-O (subscriber, #61155)
[Link]
waf supports CFLAGS and all the GNU dirs.
You don't have to learn anything new to use waf. If you know how to use configure, you know how to use waf.
KS2011: Afternoon topics
Posted Oct 28, 2011 16:50 UTC (Fri) by nix (subscriber, #2304)
[Link]
No site-config files, which means I have to figure out which of the autoconfish variables I set are actually supported by waf (not many) and pass them on the command-line instead. Yes, it's a valid approach, but it *is* something new to handle and it does need special handling by packagers / autobuilders. You cannot treat it just like autoconf.
KS2011: Afternoon topics
Posted Oct 31, 2011 9:57 UTC (Mon) by pkern (subscriber, #32883)
[Link]
Wasn't waf the insane thing that didn't want to keep any backwards compatibility to recreate its configure stuff from old sources because it's ok to stick with an old version? (And hence it got removed from Debian, for instance?) So you need to ship it with your sources?
Also wasn't it the insane thing which actually shipped a compressed tarball with Python libs in sources that use it? (The "waf" binary alongside "configure".)
I know Debian had to patch a bunch of packages because waf was stupid and the result didn't build on hppa. You couldn't just regenerate the output because you needed the right version of waf to do that, i.e. the shipped one. So that needed patching. And you couldn't just apply the same patch neither because the build system is in a compressed blob.
Oh my, please spare us of this ridiculous thing.
KS2011: Afternoon topics
Posted Oct 31, 2011 13:43 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
[Link]
Nope, situation is more complex.
Waf can produce 'wafscript' which is basically a 'configure' file. That's not a preferred form for modifications, like you wouldn't want to modify 'configure' script directly (and not 'configure.ac'). Why waf won't build on hppa - I have no idea, it's a pure Python app.
Their stance regarding system-wide installation is curious, but not a problem.