LWN.net Logo

The Road to KDE 4: CMake, a New Build System for KDE (KDE.News)

The Road to KDE 4: CMake, a New Build System for KDE (KDE.News)

Posted Mar 7, 2007 11:33 UTC (Wed) by sylware (guest, #35259)
In reply to: The Road to KDE 4: CMake, a New Build System for KDE (KDE.News) by aleXXX
Parent article: The Road to KDE 4: CMake, a New Build System for KDE (KDE.News)

>> Need a C++ compiler, fine for KDE/QT since it's C++, it's a nono
>> for C apps.

> You need a C++ compiler to compile CMake. Then you can perfectly build C,
> C++ and Fortran apps with it.

"nono for C apps" means it's wrong, not impossible. What developers want is to reduce in size and complexity the software stack in order to be more maintainable. That's common sense for developers, especially in the "libre" software world. To be dependent on a highly complex C++ compiler for the build system for C apps is ways overboard.

>> Complexity? Having a look at the code, they seems to be in the
>> same "brain damaged" league as the autotools.

> I don't know what you mean with this.

I said that the difficulty/complexity of CMake in regards of the autotools is not that far away (too close maybe)...

>> BSD license... erk! Won't ever contribute: "I give code, you give
>> code", where is my dear GPL/LGPL license.

> Not that much different from XFree, png, jpeg and others I think.

We do not live in a perfect world, and because other projects are badly licensed does not grant you to bad licensed your software too. But bringing a new /recent build system with a BSD license... God! It's way above my tolerance limit.

>> Cross compilation for apps or plumbering for creating cross compilation
>> toolchains... nil... or well hidden.

> Cross compiling is currently not built-in, but is an often requested
> feature, so it might be on the TODO already (patches are also accepted).
> Simple cross-compiling for other (simple) OSs (e.g. eCos) is no problem,
> complex cross-compiling e.g. for Linux may be already doable with some
> tweaking.

Are you jocking? A brand new build system that does not deal with cross-compilation at its core??? Do you know that "normal"(build=host=target) compilation is a special case for cross(canadian) compilation? Maybe you are ignoring, you know, the little fact that all the "libre" software community if pushing hard its software stack on embedded systems where cross compilation is mandatory? That's a colossal core design mistake, so colossal that it could be mistaken with sabotage.

>> Command line use ways worse than autotools.

> You don't have to use the -DSOME_VARIABLE=some_value syntax, you can use
> ccmake (ncurses based) or CMakeSetup (on Windows instead), which offer a
> GUI to adjust all available values. But a nice GUI for Linux would be
> nice.

I talk command line and you speak ncurses/windows GUI? Are you making a fool of me?

Well, cmake will want me to kill myself HARDER than the autotools.

>> Still waiting for a new GPL/LGPL C build systems in UNIX philosophy (cf >> wikipedia about it)... Hu? Should write it? Sorry have other projects... >> back to the autotools in the mean time.

>> But cmake has understood very well something and we are a lot to agree: >> we need a more maintainable build system.

Please, trash your current cmake and redo it using C, with a GPL/LGPL license and this time without forgetting core functionalities right at the start.


(Log in to post comments)

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds