On 25/07/13 09:54, Dirkjan Ochtman wrote:
On Thu, Jul 25, 2013 at 9:43 AM, Martin Sustrik<sustrik@xxxxxxxxxx> wrote:A.) The furthest we can possibly go is maintaining MSVC solution files as we did with ZeroMQ. The problem here is twofold. First, MSVC solutions are managed via GUI :( Second, every version of MSVC has different solution file format, so we would have to maintain multiple versions of the solution files. B.) If that seems excessive we can provide a way to *generate* MSVC solution files. That way the Windows developer can learn just the generation part of the toolchain and continue with MSVC IDE as normal. C.) We can be even less forthcoming and drop MSVC support entirely. In such case Windows nanomsg developers would have to learn MinGW toolchain. The upside would be maintaining just a single build system. Thoughts anyone?Seems to me that both A and C suck. So I think I'm with Luca in saying that it probably makes sense to have both CMake and autotools build systems and keep them in sync by hand (given the premise that this shouldn't be too hard). Maintaining two build systems sucks, but it sucks less than the alternatives.
That's my feeling as well. If anyone feels in a different way, please do say so now.That being said, if we are going to pursue option B, we can use autotools as a primary build system and use cmake just as a generator of MSVC solution files. That in turn would make it possible to remove most of the stuff from cmake scripts (no need for feature checking etc.) and even merge the whole cmake build system into a single CMakeLists.txt file. That should make maintaing the second build system as painless as possible.
Martin