View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000940 | Spring engine | General | public | 2008-05-19 07:38 | 2008-05-25 15:04 |
| Reporter | sombriks | Assigned To | Auswaschbar | ||
| Priority | normal | Severity | feature | Reproducibility | N/A |
| Status | resolved | Resolution | fixed | ||
| Fixed in Version | 0.76b1+svn | ||||
| Summary | 0000940: add CMake as another build option | ||||
| Description | Scons is an unusual build system and even doing a good work its hits me in the brain every time that i try to understand the overall build process. Long time ago one said something about move to CMake, and these days i've read some papers about that build option... and it seems good to work! it's able to generate from a single CMakeLists.txt a good buildscript and also solve dependencies using a good subset of ready to use macros (the .cmake files) while create your own macros are a easy task. If any other are inclined to try something on this way, please tell me, i would like some explanations about build process in order to try to write some .cmake files and enable some sugar in order to create CMakeLists.txt using FIND_PACKAGE macros. | ||||
| Additional Information | some links, to support my wish, ;) http://www.google.com.br/search?q=cmake+tutorial&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a http://www.cmake.org/Wiki/CMake_HowToFindInstalledSoftware a more critic link showing what cmake can and what cmake can't do: http://www.remlab.net/op/cmake.shtml | ||||
| Tags | No tags attached. | ||||
| Attached Files | |||||
| Checked infolog.txt for Errors | |||||
|
|
I wrote a cmake script which can compile spring. Here are some features: - it only needs the /rts/ subdirectory, so you don't need to checkout whole trunk - it supports out-of-source builds, so you can use one source tree to compile with different settings (debug, release, USE_MMGR etc.) - its tested on linux-native, linux-mingw, and windows-mingw - only 150 lines of code (with comments) I will upload it here later edit: here it is, please try it and post the results |
|
|
No cross-compilation There is no documented support for cross-compilation. This is scheduled for a future release. this basically means a no-go... unless it can be worked around. |
|
|
CMake 2.6 was released before a week or so. Cross compilation works, and the generated executable works fine with wine. |
|
|
I have halfway working cmake files too (also with some Find*, rts/lib stuff compilable separately, and maybe somewhat more, don't exactly remember.) Doesn't sync yet with release though I think, didn't add much compile flags yet. |
|
|
:) don't forget guys that no one there are talking about wipe out other build system support, since CMake is just simpler in some cases but lacks some useful options. there are some .cmake modules, which can be used directly or as base for another module in order to simplify the dependencies tracking process. Also the cmake wiki (http://www.cmake.org/Wiki/Main_Page) have nice tutorials, seems to be the best resource about CMake. i'm working so much now (not even to play Spring i have time, :/) but that weekend i will try to compile the rts using some cmake features. |
|
|
I added what I have, some differences I noticed already while skimming through Auswaschbar's version are: - I started big with making Find* stuff too; not sure that was a really good idea after all. - it's not working with current trunk, probably because of the file list in it (I didn't use that AUX_ thing) - I've way too much code :-) For the rest it also only needs /rts/, supports out of source builds and IIRC I tested it on linux-native and linux-mingw, but not windows-mingw yet (probably doesn't work on it) |
|
|
Cmake-files were added in 5940. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2008-05-19 07:38 | sombriks | New Issue | |
| 2008-05-19 10:48 | Auswaschbar | Note Added: 0002293 | |
| 2008-05-19 12:10 | Auswaschbar | File Added: build_with_cmake.patch | |
| 2008-05-19 12:11 | Auswaschbar | Note Edited: 0002293 | |
| 2008-05-19 12:12 | Auswaschbar | Note Edited: 0002293 | |
| 2008-05-19 20:26 | imbaczek | Note Added: 0002294 | |
| 2008-05-19 21:33 | Auswaschbar | Note Added: 0002295 | |
| 2008-05-20 22:20 | tvo | Note Added: 0002301 | |
| 2008-05-21 00:29 | sombriks | Note Added: 0002302 | |
| 2008-05-24 22:40 | tvo | File Added: build_with_cmake_tobi.patch | |
| 2008-05-24 22:47 | tvo | Note Added: 0002311 | |
| 2008-05-25 15:04 | Auswaschbar | Status | new => resolved |
| 2008-05-25 15:04 | Auswaschbar | Fixed in Version | => 0.76b1+svn |
| 2008-05-25 15:04 | Auswaschbar | Resolution | open => fixed |
| 2008-05-25 15:04 | Auswaschbar | Assigned To | => Auswaschbar |
| 2008-05-25 15:04 | Auswaschbar | Note Added: 0002312 |