[SDL] CMake gurus...

Terry Welsh mogumbo at gmail.com
Sat Mar 23 21:41:16 PDT 2013


As a non-cmake-guru, I see the value of what Ryan is saying. There
have been times where I have poked around in cmake-gui doing
trial-and-error to try and get a usable VS project created. So that
seems like a nice-to-have layer to put on top of any robust solution.

As I see it, the underlying problem is that every platform has
different build requirements. Cmake is still the most pleasant
solution to that problem that I have used. Creating a script that can
create projects/build scripts for all platforms sounds like it lies
somewhere between making something like Cmake specialized for SDL and
remaking Cmake. Either way, it sounds daunting and maybe redundant.
--
Terry Welsh
www.reallyslick.com


>> Ideally we would use something make-ish that was generic enough to act
>> as both a build system, AND a configure system, but I don't recall any
>> logic languages being standard installs anywhere.
>
> Ideally we want Windows people to find a Visual Studio project that
> matches their version of Visual Studio, double-click it, and build the
> library.
>
> Right now we're maintaining several .vcproj files for different
> versions, and almost universally, some subset of them fails to get
> updated when we change a project setting of add/remove files. Tests are
> missing from many of them, etc.
>
> XCode is slightly better about this, but still suffers from the fact
> that it's not necessarily our primary way to build SDL (even on Mac, I'm
> using the configure script, for example), so it isn't well-maintained
> either.
>
> If not CMake, something that allows us to do what CMake does is really
> really interesting: we maintain one text file, it spits out projects for
> lots of tools. But we really don't want the Windows/Mac experience to be
> like this:
>
> - Download SDL sources.
> - There's no Visual Studio project?!
> - Read the readme, find out I'm supposed to use CMakeLists.txt (which is
> the worst naming choice ever, btw).
> - Download CMake.
> - Install CMake.
> - Run CMake-gui.
> - Maybe understand I was supposed to point it at the SDL root directory.
> - Maybe understand I should set the output directory somewhere outside
> of the source tree.
> - Maybe understand that the poorly-built dropdown list actually scrolls,
> and my compiler is, in fact, supported.
> - Click configure (maybe twice).
> - Generate project files.
> - Launch Visual Studio with the project files.
> - Compile.
>
> What I'd _rather_ they do is this:
>
> - Download SDL sources.
> - Double-click the correct .sln file in the "VisualStudio" directory,
> which we generated with CMake when packaging up the sources.
> - Compile.
>



More information about the SDL mailing list