[CMake] complete rebuild

Anders Backman andersb at cs.umu.se
Wed Dec 29 07:26:28 EST 2010


Ok, Im already using the nightly build (from Tuesday I believe), as I
discovered a bug in CMake yesterday.
I will bug M$ too :-)

/A

On Wed, Dec 29, 2010 at 1:03 PM, David Cole <david.cole at kitware.com> wrote:

> For Visual Studio generators, CMake does *NO* depedency analysis. It
> generates solution and project files such that Visual Studio can do
> all the dependency analysis and decide what to re-build when files
> change.
>
> My advice to you would be:
> - use only CMake 2.8.3 or newer (a nightly development build of CMake)
> with Visual Studio 10 -- CMake 2.8.2 and earlier had significant bugs
> related to VS10 that have since been resolved...
> - using a newer CMake, isolate the problem to a minimally reproducible
> case and then report a bug in the bug tracker about it including the
> steps to reproduce the problem
>
> Reply here again and point us to the bug.
>
>
> HTH,
> David
>
>
> On Wed, Dec 29, 2010 at 4:07 AM, Anders Backman <andersb at cs.umu.se> wrote:
> > Hi all.
> > I have a problem where I have a project of C++ headers and source files
> > which are built into a .lib .dll.
> > Now this works just fine with CMake 2.8.x and VisualStudio 2008.
> > I press F7 everything builds. I press F7 again, it is all built, nothing
> to
> > be done.
> > But now when I move over to vs2010, I get into problems where no matter
> how
> > I build the project, it constantly want to rebuild everything.
> > I have tried both 'msbuild project.sln' from the command line, as well as
> > build (F7) inside of VisualStudio  as well as using Incredibuild. The
> result
> > is the same. If I press F7, it builds everything as it was not built
> before.
> > I did some googling on the issue, and some suggest that there is a file
> in
> > the project (header) which does not exist on disk, causing the problem.
> > We do file(glob) on all files, so a file which is not found, should not
> be
> > part of the project.
> > Right now, it seems to be hard to reduce the problem. When I start from
> the
> > full project, 107 files, it want to rebuild everything.
> > When I reduce the problem, I can get down to one single file, still it
> wants
> > to build it. Its a c file, and there is nothing special about it. I even
> > managed to reduce that down to one function, no includes. still the same
> > problem.
> > If I copy the relevant files (a few cmakelists.txt and the directory
> > structure, including the two files (.h .c) it builds as it should again.
> > I tried to run cmake and generate vs2008 files, that works. Open them in
> > vs2010, build, then that works (with the two files only).
> >
> > So anyway, before I put you all to sleep, as far as I know, there are two
> > dependency parsers involved here:
> > - CMake runs through source files and generates dependencies, right?
> > - THen visual studio does the same (generating the External dependencies
> > folder in the project). Now there is SOMETHING wrong in either one, or
> both
> > or none related to VS2010.
> > Does someone have any hints on how to debug this problem? I have spent
> > substantial time, and I cant seem to get anywhere.
> > I cant reduce it to something I can post on the list, as it just
> magically
> > works when I want to rip it out.
> > At one point, I had 3 cmakelists, each with about 3 lines. 2 source files
> > (.h .c), I did clean on CMakeCache.txt between each cmake . run, loaded
> the
> > project build and got the error. Fairly simple scene. But as soon as I
> try
> > to move that to another dir, it fails.
> > Thankful for any advice on the matter.
> >
> > --
> >
> >
> > _______________________________________________
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Please keep messages on-topic and check the CMake FAQ at:
> > http://www.cmake.org/Wiki/CMake_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.cmake.org/mailman/listinfo/cmake
> >
>



--
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20101229/f3e6b18d/attachment.htm>


More information about the CMake mailing list