Re: [cmake-developers] Ninja passes all tests on OS X
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
Re: [cmake-developers] Ninja passes all tests on OS X
On 18.07.2012 11:58, Nicolas Desprès wrote: On Tue, Jul 17, 2012 at 11:39 PM, Bill Hoffmanbill.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 I'm busy on this too. But I've removed the friend by making some functions public. Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 18.07.2012 11:58, Nicolas Desprès wrote: On Tue, Jul 17, 2012 at 11:39 PM, Bill Hoffmanbill.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 Thanks for the Cannot pass a reference to an anonymous object commit I already wondered if it will work on all compilers. Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Wed, Jul 18, 2012 at 12:10 PM, Peter Kümmel syntheti...@gmx.net wrote: On 18.07.2012 11:58, Nicolas Desprès wrote: On Tue, Jul 17, 2012 at 11:39 PM, Bill Hoffmanbill.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 I'm busy on this too. But I've removed the friend by making some functions public. Ok. So I let you fix these errors too: http://open.cdash.org/viewBuildError.php?buildid=2449176 Good luck, 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 7/17/2012 8:10 AM, Peter Kümmel wrote: On 17.07.2012 13:45, David Cole wrote: Peter, can you rebase this on current 'master', push this to our stage as a branch, and merge it to 'next'...? Done. Let's see what happens on CDash. Looks ok, but is not building on Borland: http://open.cdash.org/viewBuildError.php?buildid=2447645 -Bill -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 17.07.2012 15:39, Nicolas Desprès wrote: On Tue, Jul 17, 2012 at 3:29 PM, Bill Hoffmanbill.hoff...@kitware.com wrote: On 7/17/2012 8:10 AM, Peter Kümmel wrote: On 17.07.2012 13:45, David Cole wrote: Peter, can you rebase this on current 'master', push this to our stage as a branch, and merge it to 'next'...? Done. Let's see what happens on CDash. Looks ok, but is not building on Borland: http://open.cdash.org/viewBuildError.php?buildid=2447645 Looks like cmNinjaTargetGenerator::MacOSXContentGeneratorType should be mark as friend of cmLocalNinjaGenerator and cmGlobalNinjaGenerator. Apparently Borland does not forward friendness to innerclass. Cheers, Nico Isn't it possible to avoid friend? 'friend' is not your friend Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Tue, Jul 17, 2012 at 7:01 PM, Peter Kümmel syntheti...@gmx.net wrote: On 17.07.2012 15:39, Nicolas Desprès wrote: On Tue, Jul 17, 2012 at 3:29 PM, Bill Hoffmanbill.hoff...@kitware.com wrote: On 7/17/2012 8:10 AM, Peter Kümmel wrote: On 17.07.2012 13:45, David Cole wrote: Peter, can you rebase this on current 'master', push this to our stage as a branch, and merge it to 'next'...? Done. Let's see what happens on CDash. Looks ok, but is not building on Borland: http://open.cdash.org/viewBuildError.php?buildid=2447645 Looks like cmNinjaTargetGenerator::MacOSXContentGeneratorType should be mark as friend of cmLocalNinjaGenerator and cmGlobalNinjaGenerator. Apparently Borland does not forward friendness to innerclass. Cheers, Nico Isn't it possible to avoid friend? 'friend' is not your friend I don't like the friend keyword either but I try to follow the current architecture of CMake. In cmLocalUnixMakefileGenerator you can see that: friend class cmMakefileTargetGenerator; friend class cmMakefileExecutableTargetGenerator; friend class cmMakefileLibraryTargetGenerator; friend class cmMakefileUtilityTargetGenerator; friend class cmGlobalUnixMakefileGenerator3; So it does in cmLocalNinjaGenerator. I have an alternate approach to factor this code without using a function object but it is much more complicated. See https://github.com/polrop/CMake/commit/525ec73fa765b7ee55cd89799ba81410da0dab34 -- Nicolas Desprès -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 17.07.2012 19:11, Nicolas Desprès wrote: I don't like the friend keyword either but I try to follow the current architecture of CMake. Yes, I know. In cmLocalUnixMakefileGenerator you can see that: friend class cmMakefileTargetGenerator; friend class cmMakefileExecutableTargetGenerator; friend class cmMakefileLibraryTargetGenerator; friend class cmMakefileUtilityTargetGenerator; friend class cmGlobalUnixMakefileGenerator3; So it does in cmLocalNinjaGenerator. I have an alternate approach to factor this code without using a function object but it is much more complicated. See https://github.com/polrop/CMake/commit/525ec73fa765b7ee55cd89799ba81410da0dab34 OK, maybe it is simpler to add a the functions to cmNinjaTargetGenerator which forwards the call to the Local/Global classes. Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Tue, Jul 17, 2012 at 7:21 PM, Peter Kümmel syntheti...@gmx.net wrote: On 17.07.2012 19:11, Nicolas Desprès wrote: I don't like the friend keyword either but I try to follow the current architecture of CMake. Yes, I know. In cmLocalUnixMakefileGenerator you can see that: friend class cmMakefileTargetGenerator; friend class cmMakefileExecutableTargetGenerator; friend class cmMakefileLibraryTargetGenerator; friend class cmMakefileUtilityTargetGenerator; friend class cmGlobalUnixMakefileGenerator3; So it does in cmLocalNinjaGenerator. I have an alternate approach to factor this code without using a function object but it is much more complicated. See https://github.com/polrop/CMake/commit/525ec73fa765b7ee55cd89799ba81410da0dab34 OK, maybe it is simpler to add a the functions to cmNinjaTargetGenerator which forwards the call to the Local/Global classes. I tried that first but this imply the use of function pointer which is not appropriated with non-static member functions. That's why I have used a function object. -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
Re: [cmake-developers] Ninja passes all tests on OS X
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. Thanks. -- Bill Hoffman Kitware, Inc. 28 Corporate Drive Clifton Park, NY 12065 bill.hoff...@kitware.com http://www.kitware.com 518 881-4905 (Direct) 518 371-3971 x105 Fax (518) 371-4573 -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
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. Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
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. Thanks. -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 07.07.2012 20:54, Nicolas Desprès wrote: I have pushed the re-factor patch. Let me know what do you think. I have tested on Linux and MacOSX with the Makefile and Ninja generator and both work fine. I've tested it here and BundleTest still fails. It doesn't install the Resource files. Looking at your patch I assume you've overseen // write rules for Mac OS X Application Bundle content. void WriteMacOSXContentRules(std::vectorcmSourceFile* const sources); void WriteMacOSXContentRules(cmSourceFile source, const char* pkgloc); in class cmMakefileTargetGenerator. Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Fri, Jul 6, 2012 at 9:56 PM, Bill Hoffman bill.hoff...@kitware.com wrote: On 7/6/2012 12:45 PM, Nicolas Desprčs wrote: Both work. Generally I use helper class with language not supporting multiple inheritance but if you prefer not to use it that's not a problem. I'll do the patch. Thanks for answering. Great, thanks for doing the work. Lets go with the helper class, should be pretty easy to implement. Thanks again. I have pushed the re-factor patch. Let me know what do you think. I have tested on Linux and MacOSX with the Makefile and Ninja generator and both work fine. Only one thing left that the ninja generator won't do correctly. It won't build fortran 90 code with modules. I posted to the ninja list, but no one seems interested in helping to solve the problem... :( I'm afraid there is not so many people interested in Fortran 90 support :(. I think the problem would be the same in C++ if we had to use CMake's own dependency parser instead of -M options. In this case, my first try would be to generate the build.ninja once the dependency scan has been done. When the dependencies change the build.ninja would have to be rewritten. 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 07.07.2012, at 20:54, Nicolas Desprès wrote: I have pushed the re-factor patch. Let me know what do you think. I have tested on Linux and MacOSX with the Makefile and Ninja generator and both work fine. Which OS version and Tools do you have installed? I merged in your patch and have still Problems? see http://open.cdash.org/viewTest.php?onlyfailedbuildid=2421596 Claus -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Sat, Jul 7, 2012 at 9:02 PM, Claus Klein claus.kl...@arcormail.de wrote: On 07.07.2012, at 20:54, Nicolas Desprès wrote: I have pushed the re-factor patch. Let me know what do you think. I have tested on Linux and MacOSX with the Makefile and Ninja generator and both work fine. Which OS version and Tools do you have installed? Mac OS X 10.7.4 Apple clang version 3.1 (tags/Apple/clang-318.0.45) (based on LLVM 3.1svn) Target: x86_64-apple-darwin11.4.0 Thread model: posix I merged in your patch and have still Problems? see http://open.cdash.org/viewTest.php?onlyfailedbuildid=2421596 FAILED: /opt/local/bin/gcc -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk -MMD -MT CMakeFiles/bar.dir/bar.c.o -MF CMakeFiles/bar.dir/bar.c.o.d -o CMakeFiles/bar.dir/bar.c.o -c /Users/clausklein/Downloads/cmake/Tests/Architecture/bar.c gcc: error: unrecognized option '-arch' Looks like you have a problem with your setup. 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
Re: [cmake-developers] Ninja passes all tests on OS X
I forgot to say that most of the code is duplicated from the Makefile generator. I have left some todo but this code will need to be factored sooner or later. On Fri, Jul 6, 2012 at 12:54 PM, Nicolas Desprès nicolas.desp...@gmail.com wrote: Hi, I finally found the time to fix the Ninja generator on OS X. Mainly I have fixed ExportImport and Qt4Deploy. I based my work on jkp's work (https://github.com/jkp/CMake/commits/jkp/ninja-generator). Although there are other patches in this branch, I just included commits fixing tests. We could later add more tests if required. I also had a minor issue with CMake.Install because my Qt4, installed with Homebrew, did not have write access. You can find my patches here: https://github.com/polrop/CMake/commits/ninja-fix-macosx. I have tested my work on Linux too but not on Windows. I don't think my patch will break Windows, but we never know so I did not enable Ninja on MacOSX yet. I prefer to wait for a green dashboard. Cheers, Nico -- Nicolas Desprès -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
We should re-factor it sooner (not later). This is great, thank you very much! But we should definitely re-factor it before merging it to 'master' Thx, David On Fri, Jul 6, 2012 at 7:05 AM, Nicolas Desprès nicolas.desp...@gmail.com wrote: I forgot to say that most of the code is duplicated from the Makefile generator. I have left some todo but this code will need to be factored sooner or later. On Fri, Jul 6, 2012 at 12:54 PM, Nicolas Desprès nicolas.desp...@gmail.com wrote: Hi, I finally found the time to fix the Ninja generator on OS X. Mainly I have fixed ExportImport and Qt4Deploy. I based my work on jkp's work (https://github.com/jkp/CMake/commits/jkp/ninja-generator). Although there are other patches in this branch, I just included commits fixing tests. We could later add more tests if required. I also had a minor issue with CMake.Install because my Qt4, installed with Homebrew, did not have write access. You can find my patches here: https://github.com/polrop/CMake/commits/ninja-fix-macosx. I have tested my work on Linux too but not on Windows. I don't think my patch will break Windows, but we never know so I did not enable Ninja on MacOSX yet. I prefer to wait for a green dashboard. Cheers, Nico -- Nicolas Desprès -- 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 -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 06.07.2012 12:54, Nicolas Desprès wrote: Hi, I finally found the time to fix the Ninja generator on OS X. Mainly I have fixed ExportImport and Qt4Deploy. I based my work on jkp's work (https://github.com/jkp/CMake/commits/jkp/ninja-generator). Although there are other patches in this branch, I just included commits fixing tests. We could later add more tests if required. I also had a minor issue with CMake.Install because my Qt4, installed with Homebrew, did not have write access. You can find my patches here: https://github.com/polrop/CMake/commits/ninja-fix-macosx. I have tested my work on Linux too but not on Windows. I don't think my patch will break Windows, but we never know so I did not enable Ninja on MacOSX yet. I prefer to wait for a green dashboard. Great! I've rebased you branch on next and tested it on Windows, looks good so far! Peter -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
I agree. Any idea how you would like to re-factor it? I am thinking about using multiple inheritance by introducing a cmOSXBundleGenerator class with CreateFramework and CreateAppBundle. WDYT? Cheers, Nico On Fri, Jul 6, 2012 at 1:13 PM, David Cole david.c...@kitware.com wrote: We should re-factor it sooner (not later). This is great, thank you very much! But we should definitely re-factor it before merging it to 'master' Thx, David On Fri, Jul 6, 2012 at 7:05 AM, Nicolas Desprès nicolas.desp...@gmail.com wrote: I forgot to say that most of the code is duplicated from the Makefile generator. I have left some todo but this code will need to be factored sooner or later. On Fri, Jul 6, 2012 at 12:54 PM, Nicolas Desprès nicolas.desp...@gmail.com wrote: Hi, I finally found the time to fix the Ninja generator on OS X. Mainly I have fixed ExportImport and Qt4Deploy. I based my work on jkp's work (https://github.com/jkp/CMake/commits/jkp/ninja-generator). Although there are other patches in this branch, I just included commits fixing tests. We could later add more tests if required. I also had a minor issue with CMake.Install because my Qt4, installed with Homebrew, did not have write access. You can find my patches here: https://github.com/polrop/CMake/commits/ninja-fix-macosx. I have tested my work on Linux too but not on Windows. I don't think my patch will break Windows, but we never know so I did not enable Ninja on MacOSX yet. I prefer to wait for a green dashboard. Cheers, Nico -- Nicolas Desprès -- 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 -- Nicolas Desprès -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Fri, Jul 6, 2012 at 1:29 PM, Peter Kümmel syntheti...@gmx.net wrote: On 06.07.2012 12:54, Nicolas Desprès wrote: Hi, I finally found the time to fix the Ninja generator on OS X. Mainly I have fixed ExportImport and Qt4Deploy. I based my work on jkp's work (https://github.com/jkp/CMake/commits/jkp/ninja-generator). Although there are other patches in this branch, I just included commits fixing tests. We could later add more tests if required. I also had a minor issue with CMake.Install because my Qt4, installed with Homebrew, did not have write access. You can find my patches here: https://github.com/polrop/CMake/commits/ninja-fix-macosx. I have tested my work on Linux too but not on Windows. I don't think my patch will break Windows, but we never know so I did not enable Ninja on MacOSX yet. I prefer to wait for a green dashboard. Great! I've rebased you branch on next and tested it on Windows, looks good so far! Thanks Peter. Happy to read that. 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 7/6/2012 7:33 AM, Nicolas Desprès wrote: I agree. Any idea how you would like to re-factor it? I am thinking about using multiple inheritance by introducing a cmOSXBundleGenerator class with CreateFramework and CreateAppBundle. WDYT? Cheers, Nico Thanks, this is great. I am not a big fan of multiple inheritance. What about a helper class? cmOSXBundleCreator with the two methods and a pointer to the target and the makefile. -Bill -- 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
Re: [cmake-developers] Ninja passes all tests on OS X
On Fri, Jul 6, 2012 at 3:52 PM, Bill Hoffman bill.hoff...@kitware.com wrote: On 7/6/2012 7:33 AM, Nicolas Desprès wrote: I agree. Any idea how you would like to re-factor it? I am thinking about using multiple inheritance by introducing a cmOSXBundleGenerator class with CreateFramework and CreateAppBundle. WDYT? Cheers, Nico Thanks, this is great. I am not a big fan of multiple inheritance. What about a helper class? cmOSXBundleCreator with the two methods and a pointer to the target and the makefile. Both work. Generally I use helper class with language not supporting multiple inheritance but if you prefer not to use it that's not a problem. I'll do the patch. Thanks for answering. 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
Re: [cmake-developers] Ninja passes all tests on OS X
On 7/6/2012 12:45 PM, Nicolas Desprès wrote: Both work. Generally I use helper class with language not supporting multiple inheritance but if you prefer not to use it that's not a problem. I'll do the patch. Thanks for answering. Great, thanks for doing the work. Lets go with the helper class, should be pretty easy to implement. Thanks again. Only one thing left that the ninja generator won't do correctly. It won't build fortran 90 code with modules. I posted to the ninja list, but no one seems interested in helping to solve the problem... :( -Bill -- 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