[GNC-dev] swig as permanent build requirement

Derek Atkins derek at ihtfp.com
Thu May 16 11:08:25 EDT 2019


Geert Janssens <geert.gnucash at kobaltwit.be> writes:

> For starters despite our advice several people still prefer to build in 
> source. It appears this notion of a separate build directory is not ingrained 
> deeply into the development ecosystem.

*I* like to build in source!

Or, more technically, I use lndir to create a symlink tree build dir and
then build from there.  So *technically* srcdir = .

> Secondly it introduces a different build behavior between building in-source 
> or out-of-tree. The former would run swig once and then never again while the 
> latter (ideally) runs swig whenever needed. That's a support nightmare.

This isn't good.  We should have the same build behavior in- and out-of-tree

> Note the primary reason we currently propose to build in a separate directory 
> is to make it easier to start afresh. Just drop the build directory and you're 
> good to go. Adding behavioral differences that are not really needed is 
> another level which I would prefer to avoid.

Agreed.

>> Versioning of releases shouldn't change either: We want the release to be
>> gnucash-3.6 and a post-release Github tarball to build
>> gnucash-3.6-whatever.
>
[snip]
> can't tell the exact source revision. We could even print out a set of 
> commands to run in the source directory to convert it into a git work tree 
> (git init/git remote add/...). Something like that. I think this may be more 
> encouraging to newcomers: they did manage to complete a build, they have 
> gnucash running. And while running it for the first time they get advice on 
> how to proceed to a more supported building method.

Another alternative is just print "GITHUB RELEASE XXX" and grab XXX from
the top-level directory name?

> Regards,
>
> Geert

-derek
-- 
       Derek Atkins                 617-623-3745
       derek at ihtfp.com             www.ihtfp.com
       Computer and Internet Security Consultant


More information about the gnucash-devel mailing list