[CMake] Visual Studio build question

David.Karr at L-3COM.COM David.Karr at L-3COM.COM
Mon Jan 12 16:45:51 EST 2009


> The issue I'm seeing, is that if libprovides library project fails
> to build, VS decides to try and build the libuses library anyway,
> and then complains that libprovides isn't there.
>
> Is this the intended behavior of VS, or did I perhaps set something
> up wrong in my CMakeLists.txt?

This feature was added to VS a few years ago.  I first noticed it when I
started building code in VS .NET 2003 (version 7.1).  In VS 6.0, the
build stopped after the first failure.

This is actually a good feature if you want to go do something else
rather than watch your project being compiled.  The compiler did useful
work on the libuses library, because it build all the OBJ files
correctly.  It just couldn't link them.  When you come back and find the
build failed, and you fix the error in libprovides, you can then finish
the build relatively quickly, because the compiler and linker have
already done almost all the work that they needed to do after building
libprovides.  All they have to do really is link the libraries or
executables that depended on libprovides.  Depending on your project, VS
may in fact have correctly compiled AND linked a whole bunch of
libraries after libprovides.

On the other hand, if you want to sit and watch the compiler, you can
always stop the build after you see errors start to occur.  So I hardly
see a downside to this feature.

But of course this is really a VS feature, NOT a CMake feature after
all.

David



More information about the CMake mailing list