First, let me warm the tone of this thread a bit with an earnest
salute to Adam for trying to solve the problem by actually doing
_something_, rather than talking about it, as we've done for years
now. My own contributions to the matter are small and insignificant in
comparison.

To recall, we do have a real and present problem. Adding files to the
all the build systems (and _always_ missing at least one) sucks balls.
Needing to use XCode to add new files to WebKit is silly. On the other
hand, we have an otherwise well-established and rather smooth workflow
and we don't want to give that up, either.

With the gyp conversion at this stage, we now have a possible solution
to this problem. Given that there aren't any other viable alternatives
in the present, please consider the most productive way of
contributing: filing well-formulated bugs, blocking bug 55018
(https://bugs.webkit.org/showdependencytree.cgi?id=55018&hide_resolved=1).
We can then discuss these specific problems and adjust the shape of
the solution accordingly.

:DG<

On Thu, Mar 24, 2011 at 1:30 AM, Maciej Stachowiak <[email protected]> wrote:
>
> On Mar 24, 2011, at 12:28 AM, Adam Barth wrote:
>
>> On Wed, Mar 23, 2011 at 8:46 PM, Maciej Stachowiak <[email protected]> wrote:
>>> On Mar 23, 2011, at 3:33 AM, Adam Barth wrote:
>>>> From my perspective, approach (2) is more desirable than checking in
>>>> generated project files because approach (2) encapsulates
>>>> Apple-internal build process to Apple folks, more specifically to the
>>>> Apple folks who interact with the Apple-internal build system.
>>>> Checking in generated project files, on the other hand, imposes a
>>>> maintenance burden on all WebKit contributors.
>>>
>>> I believe Apple submissions generally happen with greater frequency than 
>>> the rate at which new files are added to the project. Furthermore: When 
>>> files are added to the project, the patch submitted must already run the 
>>> tool to regenerate projects, and is already going to submit a patch, so the 
>>> maintenance burden of the Xcode projects being checked in is low. But 
>>> having to regenerate project files and then check them in on a branch adds 
>>> extra steps, doing things that are not done in the normal course of 
>>> development, and therefore may have bitrotted.
>>
>> Thanks, that's helpful information.  Looking at
>> <http://trac.webkit.org/log/trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj>,
>> it looks like files are added to the project on the order of once a
>> day.
>
> I slightly underestimated how often files are added to the project (no wonder 
> our build has gotten so slow!), but the rate is similar.
>
> (Side note: it looks like 382 files have been added to the WebCore build over 
> the past year, a ~25% growth rate - if this rate continues, we are in big 
> trouble.)
>
>>
>>> I don't think you are going to get Apple folks enthusiastic about switching 
>>> to a build system that creates significantly more work for us, on the basis 
>>> that it saves everyone else a small amount of work. For that matter, 
>>> slowing down the pace of Apple engineers' development would be a bad thing 
>>> for the project overall, not just for Apple.
>>
>> I certainly have no desire to slow down the pace of development for
>> anyone.  My overarching goal here is to increase developer
>> productivity for everyone by removing the need to learn and correctly
>> modify N build systems just to add, remove, or move a file.
>>
>> From this discussion, it sounds like folks are generally comfortable
>> with replacing the existing xcodeproj files with ones generated by
>> GYP.  Before taking that step, I'm going to spend some more time
>> polishing the GYP-generated xcodeproj files, hopefully addressing some
>> of Mark's concerns.  (I'm also told there are some scheduling issues,
>> which I'm happy to accomodate.)
>>
>> I'm slightly skeptical that checking in generated files will scale as
>> we unify more of the build systems, but we can cross that bridge when
>> we come to it.
>
> Other ports probably do not have so many strange requirements driven by an 
> external build system, so I'm not sure it will be as necessary. That being 
> said the average WebKit developer updates or builds much more often than he 
> or she changes a project file, so it may be the right tradeoff to save people 
> the most total time.
>
> Regards,
> Maciej
>
> _______________________________________________
> webkit-dev mailing list
> [email protected]
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to