[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [fluid-dev] FluidSynth 1.1.2 release planning
From: |
Pedro Lopez-Cabanillas |
Subject: |
Re: [fluid-dev] FluidSynth 1.1.2 release planning |
Date: |
Fri, 16 Jul 2010 17:29:46 +0200 |
User-agent: |
KMail/1.9.6 (enterprise 20070904.708012) |
On Friday, July 16, 2010, Elimar Green wrote:
> It would be nice to have the MSVC projects working. I have struggled
> in the past to keep this going, despite the fact I don't personally
> use it. Fixing it could be deferred to a later release though.
I think that I've explained this before, but let me clarify this issue one
more time.
There is a directory in the SVN, named "winbuild" containing these hand made
project files:
* fluidsynth.sln, a VS2008 solution and its MSVC projects (*.vcproj)
* fluidsynth.dsw, a VC6.0 workspace and its MSVC projects (*.dsp)
After the last directory reorganisation and new sources were added, these hand
made projects are broken. Is that a problem for Windows users using MSVC
compilers? No! because there is a new CMake based build system which works in
Windows, has nice GUI front-ends, and can create MSVC projects/solutions. The
same build system can be used to generate a set of Makefiles for MinGW, and
it generates Makefiles for Linux, too!
Looking to CMake from another point of view: it doesn't replace Visual Studio,
or make or nmake. It replaces the auto-tools (automake, autoconf, auto*...)
generating the required build files (projects/solutions or Makefiles,
basically). And the question is if you prefer to write Makefiles by hand, or
use a tool to generate them. Do you prefer to maintain MSVC project files by
hand, or use CMake to automatically generate them?
Generating MSVC projects by CMake is better than tweaking hand made ones for
each release, and for each build type. One reason is that MSVC projects
usually have directory and library names, depending on the options you want
to build. CMake picks the header directories and libraries, including the
names into the projects. For instance, you may want to enable/disable Jack
for Windows, or libsndfile, or PortAudio. Using cmake-gui (the graphic user
interface of CMake) you just click the offered checkboxes, and then generate
the MSVC project/solutions. Currently CMake can generate this projects:
http://www.cmake.org/cmake/help/cmake-2-8-docs.html#section_Generators
* Borland Makefiles
* MSYS Makefiles
* MinGW Makefiles
* NMake Makefiles
* Unix Makefiles
* Visual Studio 6
* Visual Studio 7
* Visual Studio 7 .NET 2003
* Visual Studio 8 2005
* Visual Studio 8 2005 Win64
* Visual Studio 9 2008
* Visual Studio 9 2008 Win64
* Visual Studio 10
* Visual Studio 10 Win64
* Watcom WMake
* CodeBlocks - MinGW Makefiles
* CodeBlocks - Unix Makefiles
* Eclipse CDT4 - MinGW Makefiles
* Eclipse CDT4 - NMake Makefiles
* Eclipse CDT4 - Unix Makefiles
Attached is a screenshot of cmake-gui configuring FluidSynth for Visual Studio
9 2008. You need to tell the program where is the source code and where you
want the build directory. The program will prompt you which generator to run,
you fill some options, and press two buttons:
* Configure: checks the libraries corresponding to your selections. You can
press this button several times after changing options, until you get your
best configuration results.
* Generate: once the configuration is successful and you are satisfied, it
creates the project files.
I don't know if this is enough to motivate you to try it and stop the rants.
Anyway, I'm not going to maintain the MSVC hand made project files but if
somebody wants to do so, I don't mind.
Regards,
Pedro
cmake_fluid.png
Description: PNG image
Re: [fluid-dev] FluidSynth 1.1.2 release planning, David Henningsson, 2010/07/31
Re: [fluid-dev] FluidSynth 1.1.2 release planning, David Henningsson, 2010/07/17