I'm mainly wondering whether I should put any more time into the autotools
build system. For example, issue 25 (compiling language files) is something
that I think should be fixed for 0.2. But adding support for it in automake
(without using gettextize, which seems bloated) is non-trivial work. It
would be worth doing if 0.2 will be still compiled with automake, but not if
we're going to switch to CMake.
On the other hand, there is also some way to go before CMake is ready for a
release:
- Issue 69 makes the client unusable on Linux (platform not detected).
- There is no "make install".
- We have no way to create a source tarball (automake creates a "make dist"
target by default, CMake doesn't).
- Not tested enough on Windows and Mac.
Opinions?
(Please reply to this message directly, don't answer through IRC; the
mailing list exists for a reason!)
--
Nicolas
(I read mailing lists through Gmane. Please don't Cc me on replies; it makes
me get one message on my newsreader and another on email.)
> - There is no "make install".
Is this really a problem? I usually don't use "make install" at all.
Either I let the package manager install things or if I really compile
from source than because I want to do somthing with the source. Running
"make install" isn't really usefull for debugging and things like this.
> - We have no way to create a source tarball (automake creates a "make dist"
> target by default, CMake doesn't).
Do we really need a build-script for this?
> - Not tested enough on Windows and Mac.
Windows is no problem, there are still the visual studio project files.
I have no problem with calling cmake support for 0.2 on windows as
experimental.
Remember the core client is already hardcoding the data directory path to
$PREFIX/var/synecdoche. In the future there may be more reasons why it needs
to be installed. For example, I think the translation files after compiling
will not be in the correct directory structure to be loaded by the manager,
"make install" will copy them into the right places and only then the
manager will be able to load them.
End-users building from source definitely need "make install".
Also, we need "make install" to create a Linux distro package. The way
binary package building works is it runs "make; make install DESTDIR=foo;"
and then tarballs the contents of the 'foo' directory.
>> - We have no way to create a source tarball (automake creates a "make
>> dist" target by default, CMake doesn't).
> Do we really need a build-script for this?
There should be as few manual steps as possible in turning a SVN checkout
into a ready-to-release package. Less manual steps = less possible errors.