Editing seems OK if we use GYP or CMake.
You can generate both Xcode and Ninja files against same source tree.
Debugging won't work though, at least for GYP-generated projects.
Its Ninja and Xcode builds have different directly structure.

If Xcode can attach gdb/llldb to an out-of-project executable for
debugging, it might work.
The dwarf debug metadata points the same source code after all.
But I have no idea whether it is possible.

--
morrita


On Tue, Feb 5, 2013 at 5:25 AM, Dirk Pranke <dpra...@chromium.org> wrote:

> The short answer is, you can't.
>
> The fastest path is probably to get a working set of gyp files for the
> apple mac wk2. I'm going to start working on this just to see how far
> of we are (Adam's work from a year or two ago had JSC and WebCore
> building, but wasn't too functional beyond that; even so, it's
> probably a good starting point).
>
> -- Dirk
>
> On Sun, Feb 3, 2013 at 1:22 PM, Dean Jackson <d...@apple.com> wrote:
> > OK, this sounds fantastic. And I've noticed how much faster Chromium
> > incrementally builds using ninja when I've done that.
> >
> > So, ignoring the discussion of a single build system for a moment, how
> > can I, as a developer using the OS X + WK2 port, living mostly
> > in Xcode for editing and debugging, use ninja? I need the idiot's
> > guide :)
> >
> > (Note: I am an idiot, but not so much an idiot to realise that the
> > answer involves lots of work and probably updating some old GYP
> > files that you and Adam were testing with, etc etc. I'm just selfishly
> > thinking that cutting even 30s off each incremental rebuild would make
> > me so much happier that I'd be willing to put up with other
> > inconveniences.)
> >
> > Dean
> >
> > On 03/02/2013, at 4:54 PM, Eric Seidel <e...@webkit.org> wrote:
> >
> >> +1
> >>
> >> Ninja is beyond-words amazing.  http://martine.github.com/ninja/  For
> >> better or worse, it is not designed to use human-editable build files,
> >> but rather to be used by a meta build system, like GYP or CMake.  So
> >> using ninja is really an orthogonal discussion to the "single build
> >> system" discussion for WebKit. :)
> >>
> >> Were the WebKit project to convert to using a single meta-build
> >> system, ninja would become an option many users might choose.  I'm
> >> told most Chromium hackers have GYP set to output ninja files these
> >> days, with the exception of some folks who still want the MSVC build
> >> environment. For WebKit ports already using CMake, they should
> >> definitely try ninja today!
> >>
> >>
> >> Anyway, my wish was not about arguing for a specific build solution.
> >> I'm instead noting that for the project to continue to move quickly,
> >> we need to stop needing to edit 8 build systems for every file
> >> move/addition.  Whether that's GYP or CMake or something else, I don't
> >> really care.  Adam and I tried GYP-for-WebKIt a while back.  But any
> >> of these solutions will require buy-in from Apple, as they will have
> >> to do the largest amount of work converting to use something other
> >> than XCode.
> >>
> >>
> >> On Sat, Feb 2, 2013 at 8:20 PM, Nico Weber <tha...@chromium.org> wrote:
> >>> On Sat, Feb 2, 2013 at 4:58 PM, Adam Barth <aba...@webkit.org> wrote:
> >>>> Ninja has extremely fast incremental builds and can be generated by
> >>>> GYP.  Here are some stats from a year ago:
> >>>>
> >>>> https://plus.google.com/101038813433650812235/posts/irc26fhRtPC
> >>>>
> >>>> Ninja has gotten even faster since then.  If you're interested in
> >>>> trying it out, you can play around with incremental builds of the
> >>>> Chromium port on Mac or Linux.
> >>>
> >>> You can also look at the build output from the chromium bots.
> >>>
> >>> Empty build in 1s:
> >>>
> http://build.webkit.org/builders/Chromium%20Linux%20Release/builds/66807/steps/compile-webkit/logs/stdio
> >>> Build with a few files changed in 15s:
> >>>
> http://build.webkit.org/builders/Chromium%20Linux%20Release/builds/66800/steps/compile-webkit/logs/stdio
> >>>
> >>> …and this is on fairly slow bots. On my SSD-equipped laptop, I can do
> >>> incremental rebuilds of all of chrome after touching one (cpp or mm)
> >>> file in 2-6s.
> >>>
> >
> > _______________________________________________
> > webkit-dev mailing list
> > webkit-dev@lists.webkit.org
> > https://lists.webkit.org/mailman/listinfo/webkit-dev
> _______________________________________________
> webkit-dev mailing list
> webkit-dev@lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
>
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to