Re: autotools gives autopain
- From: Samuel Abels <newsgroups debain org>
- To: BJörn Lindqvist <bjourne gmail com>
- Cc: desktop-devel-list gnome org
- Subject: Re: autotools gives autopain
- Date: Sat, 17 Dec 2005 20:18:50 +0100
On Fr, 2005-12-16 at 17:23 +0100, BJörn Lindqvist wrote:
> 3. KDE has already migrated to scons.
Note that KDE uses bksys, which is a framework that is based on Scons.
"bksys aims at replacing completely autotools for common projects, so
this goes way beyond SCons' main goals."
http://dot.kde.org/1126452494/
I have also used Scons in some smaller projects, and while I believe
that it has potential, using Scons alone without additional libraries
can currently also give you headaches. For example, two difficulties
that I encountered:
- There is a lack of good default functions, even for basic
functionality. For example, there is no integrated way to generate C
header files (like config.h). (At least there wasn't when I last tried
it a couple of months ago.)
- Due to the lack of convenience libraries and the fact that one file
can not be contained in multiple targets at once, it is hard to
integrate unit tests into the build process.
However, Scons is flexible enough so that you can work around those
issues by creating you own functions, and in many cases the resulting
SConstruct file will probably still be simpler than an equivalent
configure.am + Makefile.
Nonetheless, without a powerful framework around it there will IMO be
little immediate gain in the switch. It does put GNOME in a position
from which it can improve the build system more easily though. This is
probably also the reason why KDE created bksys (but I have not looked
into it and have not spoken to the developer to back this up).
My personal opinion is that the switch will help in the long run despite
the weaknesses of Scons, as it opens the door to move forward.
-Samuel
--
------------------------------------------------------
| Samuel Abels | http://www.debain.org |
| spam2 ad debain dod org | knipknap ad jabber dod org |
------------------------------------------------------
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]