> On Aug 8, 2017, at 5:50 PM, Sumit Bhardwaj <bhardw...@gmail.com> wrote:
> John,
> If the plan is to dump autotools, should we ask also devs to make sure that
> they can build using cmake? I have had problems in the past and therefore,
> I have stuck with autotools so far.
> What are the things we want to confirm in the cmake toolchain?
> cmake
> cmake install
> cmake check
> Anything else?

No. cmake <args> srcdir && make && make check && make install or (quite a bit 
faster) cmake -G Ninja <args> srcdir && ninja check && ninja install.

You generally need to at least specify a -DCMAKE_INSTALL_PREFIX unless you want 
GnuCash installed in /usr/local which back in the day was a reasonable thing to 
do but isn't really anymore. Because of normal linker behavior and GnuCash's 
overuse of loadable modules you also need to uninstall before building, 
especially when changing branches. The incantation for that in cmake is xargs 
rm < install_manifest.txt.

Geert and I use the cmake+ninja build system most of the time and the Windows 
automated build has been using it for just over a year. I think that it's well 
tested. There's a known problem that the dependency graph doesn't capture 
everything especially for some of the scheme modules so allowing too much 
parallelism (setting -j too high on a many-core machine) will try to build some 
things before their dependencies are done. That's not a blocker to dropping 
autotools. The only loose end at present is that there are still a few rough 
edges in the dist target that need to be cleaned up.

John Ralls

gnucash-devel mailing list

Reply via email to