Use CMake?
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Use CMake?
I'm interested what developers thing about porting to CMake, was it taken into account?
It's used by more and more projects now...
In case if someone would create patch would it be considered to merge?
It's used by more and more projects now...
In case if someone would create patch would it be considered to merge?
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
-
stiv
- Warzone 2100 Team Member

- Posts: 876
- Joined: 18 Jul 2008, 04:41
- Location: 45N 86W
Re: Use CMake?
It would be a lot of work and at the end of the day, you could build warzone - just like now.
By 'patch', do you mean cmake working for all our supported platforms or cmake working for your system? The answer to the first is possibly. The answer to the second is probably not.
By 'patch', do you mean cmake working for all our supported platforms or cmake working for your system? The answer to the first is possibly. The answer to the second is probably not.
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Re: Use CMake?
I'm not sure if a lot, I've never ported any application to use it but I'm using it to create new.stiv wrote:It would be a lot of work and at the end of the day, you could build warzone - just like now.
The biggest task is probably to add files for finding some of libraries used by Warzone.
CMake is cross platform so it should work on all platforms (but I can currently test it only on Linux).stiv wrote:By 'patch', do you mean cmake working for all our supported platforms or cmake working for your system? The answer to the first is possibly. The answer to the second is probably not.
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
-
cybersphinx
- Inactive

- Posts: 1695
- Joined: 01 Sep 2006, 19:17
Re: Use CMake?
Or maybe not even that, reportedly cmake is bad with cross-compiling.stiv wrote:It would be a lot of work and at the end of the day, you could build warzone - just like now.
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Re: Use CMake?
Someone tested it? There is article about this:cybersphinx wrote:Or maybe not even that, reportedly cmake is bad with cross-compiling.stiv wrote:It would be a lot of work and at the end of the day, you could build warzone - just like now.
http://www.cmake.org/Wiki/CMake_Cross_Compiling
Anyway, I would like to try, at least to learn something, it would be also good way to learn something about game internals, so it could be useful when I'll finally start work on map editor.
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
-
Per
- Warzone 2100 Team Member

- Posts: 3780
- Joined: 03 Aug 2006, 19:39
Re: Use CMake?
You should talk to Safety0ff, he is already looking into it, and has at least my early port as a starting point already.
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Re: Use CMake?
OK, but first I'll try myself from scratch, just for fun, and if will not work, then I'll ask.Per wrote:You should talk to Safety0ff, he is already looking into it, and has at least my early port as a starting point already.
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
-
stiv
- Warzone 2100 Team Member

- Posts: 876
- Joined: 18 Jul 2008, 04:41
- Location: 45N 86W
Re: Use CMake?
Sorry I wasn't clear. I did not mean cmake running on all our platforms. I meant having the configuration to build WZ with cmake on all our platforms. And by platforms, I mean Linux, Windows, OSX, *BSD, Solaris, OS/2 and VAX11/785. (ok, just kidding about the last few. except for OS/2 which Buginator loves)Emdek wrote:CMake is cross platform so it should work on all platforms (but I can currently test it only on Linux).
Another important and often overlooked requirement for adopting a new features or build systems into a project is having someone to maintain them. Otherwise the shiny newness falls into disrepair and eventually gets dropped.
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Re: Use CMake?
As far as I know CMake is much simpler, and now autotools are fading away in most cases.stiv wrote:Another important and often overlooked requirement for adopting a new features or build systems into a project is having someone to maintain them. Otherwise the shiny newness falls into disrepair and eventually gets dropped.
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
-
Per
- Warzone 2100 Team Member

- Posts: 3780
- Joined: 03 Aug 2006, 19:39
Re: Use CMake?
The main reason for changing build system must be that we can use it to make things simpler for us. That is, we do not have to maintain so many different build systems any more. If the Mac/MSVC/raw-makefile people are not willing to use CMake to create their builds, then I think CMake has little value. A lot of work has gone into the existing system, and it works, so we will not change without a good reason to do so.
-
Buginator
- Professional

- Posts: 3285
- Joined: 04 Nov 2007, 02:20
Re: Use CMake?
Ahh yes, where would I be without OS/2?stiv wrote: Sorry I wasn't clear. I did not mean cmake running on all our platforms. I meant having the configuration to build WZ with cmake on all our platforms. And by platforms, I mean Linux, Windows, OSX, *BSD, Solaris, OS/2 and VAX11/785. (ok, just kidding about the last few. except for OS/2 which Buginator loves)
Another important and often overlooked requirement for adopting a new features or build systems into a project is having someone to maintain them. Otherwise the shiny newness falls into disrepair and eventually gets dropped.
I have to agree, while CMake may be nice, until someone actually makes a working project file that we can test, and see how easy it is to update, we won't really know if we should switch or not.
and it ends here.
-
Emdek
- Regular

- Posts: 1329
- Joined: 24 Jan 2010, 13:14
- Location: Poland
Re: Use CMake?
Sure, working build system is my target.Buginator wrote:I have to agree, while CMake may be nice, until someone actually makes a working project file that we can test, and see how easy it is to update, we won't really know if we should switch or not.
Nadszedł już czas, najwyższy czas, nienawiść zniszczyć w sobie.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.
The time has come, the high time, to destroy hatred in oneself.
Beware! Mad Qt Evangelist.