On Mar 6, 2012, at 2:41 PM, Andreas Pakulat wrote:

> On 06.03.12 18:47:05, Peter Collingbourne wrote:
>> On Tue, Mar 06, 2012 at 07:09:03PM +0100, Andreas Pakulat wrote:
>>> On 06.03.12 17:10:41, Peter Collingbourne wrote:
>>>> On Tue, Mar 06, 2012 at 10:41:19AM -0500, David Cole wrote:
>>>>> 2 things I'd like to see before we merge:
>>>>> 
>>>>> (1) test failures corrected on the Mac Nightly Expected dashboards
>>>>> submitting using the ninja generator
>>>>> (2) reliable dashboard submissions (even if not all tests pass) from a
>>>>> Windows machine using the ninja generator
>>>>> 
>>>>> We *could*, if popular demand is high enough, merge it in anyway and
>>>>> call it "experimental" to start with, or we could get it right all the
>>>>> way before we merge to 'master' and put it out in an official CMake
>>>>> release.
>>>> 
>>>> +1 on merging soon.  The generator will be disabled on Windows by
>>>> default so there is no risk of Windows users accidentally trying to
>>>> use it.  Most of the test failures on the Mac relate to Mac specific
>>>> targets (frameworks/bundles/apps) which I think most portable
>>>> applications can survive without
>>> 
>>> You have any evidence for that? Usually cross-platform doesn't mean
>>> "ignore the platform conventions", but simply abstract away from that.
>>> In that sense I'd expect cross-platform apps to have something like
>>> 
>>> add_executable(foo WIN32 MACOSX_BUNDLE ${SRCS})
>>> 
>>> since cmake will simply ignore the windows/macosx specific flags on
>>> platforms that they don't apply on.
>>> 
>>> For a CMake release I'd say that the generator should fully work on all
>>> platforms it is enabled on. If there are things that are not supported
>>> on a platform, disable it there.
>> 
>> Obviously things won't work perfectly (if at all) for things like GUI
>> applications or bundles.  But there are a number of command line tools
>> (such as LLVM/Clang) which do not use any of the OS X packaging stuff.
> 
> As Bill said, allowing more-or-less only commandline apps leaves out
> lots of things. Also I don't think llvm/clang is a good reference here
> since it has few if any external dependencies which may come as
> frameworks eventually. By excluding frameworks and app bundles you're
> basically limiting the generator on that platform to at most 1/3 of the
> currently available projects that build on it - probably much less.
> 
> Personally I wouldn't accept this from a stable release of a
> cross-platform buildtool.
> 
> Andreas

As an OS X developer using Qt to develop GUIs ninja would leave me out in the 
cold. And more over if I had not been keeping on on this thread then I may have 
actually tried Ninja, blew time trying to figure out why my GUI apps are not 
building and then possibly finally finding out that Ninja does not support .app 
and .framework outputs. I would limit ninja to the build platforms that do not 
have these issues which would mainly be the *nix platforms.

___________________________________________________________
Mike Jackson                    Principal Software Engineer
BlueQuartz Software                            Dayton, Ohio
[email protected]              www.bluequartz.net

--

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

Reply via email to