On Tue, Jul 17, 2012 at 11:39 PM, Bill Hoffman <bill.hoff...@kitware.com> wrote: > On 7/17/2012 1:43 PM, Peter Kümmel wrote: >> >> On 17.07.2012 19:32, Bill Hoffman wrote: >>> >>> On 7/17/2012 1:21 PM, Peter Kümmel wrote: >>>> >>>> >>>> OK, maybe it is simpler to add a the functions to >>>> cmNinjaTargetGenerator which >>>> >>>> forwards the call to the Local/Global classes. >>> >>> Lets just add the friend stuff for now so we can get the dashboard >>> building again. >> >> >> You could not add "friend class >> cmNinjaTargetGenerator::MacOSXContentGeneratorType" >> because cmNinjaTargetGenerator is forward declared, and including >> cmNinjaTargetGenerator.h >> doesn't help because it includes cmLocalNinjaGenerator.h again. >> >> Maybe making MacOSXContentGeneratorType global helps. >> ' > > > There is also a warning here: > > C:/Users/hoffman/Work/My Builds/cmake/Source/cmNinjaTargetGenerator.cxx(60) > : warning C4355: 'this' : used in base member initializer list > > Making the helper class global should fix the problem. What about a letter > envelope type of thing. Move the whole MacOSXContentGeneratorType into the > .cxx file. Then forward declare the pointer to it in the > cmNinjaTargetGenerator class. > > class cmMacOSXContentGeneratorType; > class cmNinjaTargetGenerator > { > ... > cmMacOSXContentGeneratorType* MacOSXContentGenerator; > > > Then create it with new in the constructor. This would get rid of the above > warning as well. I would like to clean this up before the nightly > dashboards get going so we don't have a bunch of red tomorrow. >
Bill, You can find two patches in the following branch which should fix these compilation issues. I have tested them with clang and gcc on Mac OS X. https://github.com/polrop/CMake/commits/ninja/fix_build https://github.com/polrop/CMake/commit/5497caf3e0e14430a222e92f190d8d9ea4ee6e8a https://github.com/polrop/CMake/commit/ae24daf591b12d8c23fa481f93a13270c9a0c00f Note that this branch has been created from next so you better cherry picked these two patches than merge them back to next. Cheers, Nico -- 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://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers