Boost logo

Boost :

From: Douglas Gregor (doug.gregor_at_[hidden])
Date: 2007-05-11 08:36:42


On May 11, 2007, at 12:53 AM, Gennadiy Rozental wrote:
>> Then we do the Windows port, and a few minor improvements to the
>> CMakeList
>> file
>> to find dependencies and the whole shebang is building cross-platform
>> under
>> Visual Studio. Then we try out KDevelop, and a simple `cmake -G
>> KDevelop3`
>> provides us with project files with zero additional effort. We
>> now have
>
> I did not get it from above statement
>
> Did Cmake build your project or just created "project file"?

*Sigh*. This is basic CMake knowledge, and it's been said at least 10
times in this thread. CMake is a makefile generator. It generates
makefiles/project files/solutions/whatever for your native build
environment.

Once you've configured CMake for a particular compiler/platform,
you'll rarely need to directly run it again. Just run your normal
build tool ("make", or "nmake", or hit F7, or whatever) and your
project will build. If what's been said about the CMake model does
not make sense to you, please go download it and try building a small
project with it; you'll get much better insight than we can give you
through e-mail.

>> CMake documentation is confusing. CMake has been a moving
>> (improving)
>> target
>> during the past couple years. As a result, there seems to be a
>> lot of
>> conflicting documentation floating around.
>
> Hmm. We REALLY don't want to get into another "Build system as moving
> target" situation. Again.

The CMake developers have put a lot of effort into maintaining
backward compatibility. So, while the "best way" do to a particular
thing changes as CMake evolves, the "old way" still continues to
work. Remember, the opposite of a moving target is a stagnant target.
We want the ongoing maintenance and improvements that CMake brings.

        - Doug


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk