On Fri, Mar 25, 2011 at 10:59 AM, Maciej Stachowiak <m...@apple.com> wrote: > > In addition to your comments, I also find the gyp syntax somewhat unpleasant. > In particular, in .gypi lists of files to compile, ever entry is > double-quoted, comma-separated, line-separated, and then grouped in multiple > levels of braces. This is noisier than any of our current formats except the > XML-based ones. It seems like a newline-separated list, possibly indented, > should be sufficient. > > For .gyp files themselves, I admit I don't have a clear understanding of what > they are actually doing, so it's hard for me to say if the syntax they use is > good or not. > > I think in general the trick of making the files essentially Python code is > (presumably) handy for Python experts but not easy to read for anyone else.
It's just python directory literals, which is virtually identical to json. Nico > > But I am assuming syntax-level things can be fixed once we have things > working for more ports, and doesn't necessarily need to be a showstopper to > initial adoption. Perhaps after successfully deploying gyp for one additional > port, the right next steps are to make sure the experience is smooth and > enjoyable for WebKit hackers, before propagating it further. > > Regards, > Maciej > > On Mar 24, 2011, at 9:49 PM, Brent Fulgham wrote: > >> Hi Dimitri, >> >> <LONG screed follows...> >> >> On Mar 24, 2011, at 9:24 AM, Dimitri Glazkov wrote: >> >>> \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. >> >> While I applaud the idea of a unified build system, my own experience trying >> to get gyp working has been a uniformly frustrating experience. >> >> Imagine for a moment that rather than being a Chromium developer, long >> schooled in the use of gyp and the various build components needed to >> support it, you are a lowly external developer who just wishes to build >> WebKit. Out of curiosity, I took a stab at playing with gyp again this >> evening: >> >> 1. The top Google hit for "gyp build system" takes me to an exhaustive >> specification of the gyp input file syntax format. If I click on the >> "Project Home" link, I find no information on downloading or installing the >> system. Presumably I can download the source and somehow generate the tool. >> >> 2. If I go to the User Documentation page >> (http://code.google.com/p/gyp/wiki/GypUserDocumentation), I am instructed on >> how to draft my own gyp files to build things. But why would I care when I >> can't even try the software out on an existing project, like WebKit? >> >> Once I download the gyp sources and 'build' them using the included >> "setup.py", it's not clear what to do with them: >> >> link:Source brent$ gyp . >> Traceback (most recent call last): >> File "/usr/local/bin/gyp", line 18, in <module> >> sys.exit(gyp.main(sys.argv[1:])) >> File "/Library/Python/2.6/site-packages/gyp/__init__.py", line 374, in main >> '--depth as a workaround.' >> Exception: Could not automatically locate src directory. This is a >> temporary Chromium feature that will be removed. Use --depth as a >> workaround. >> link:Source brent$ gyp ./gyp >> Traceback (most recent call last): >> File "/usr/local/bin/gyp", line 18, in <module> >> sys.exit(gyp.main(sys.argv[1:])) >> File "/Library/Python/2.6/site-packages/gyp/__init__.py", line 374, in main >> '--depth as a workaround.' >> Exception: Could not automatically locate src directory. This is a >> temporary Chromium feature that will be removed. Use --depth as a >> workaround. >> link:Source brent$ gyp help >> Traceback (most recent call last): >> File "/usr/local/bin/gyp", line 18, in <module> >> sys.exit(gyp.main(sys.argv[1:])) >> File "/Library/Python/2.6/site-packages/gyp/__init__.py", line 374, in main >> '--depth as a workaround.' >> Exception: Could not automatically locate src directory. This is a >> temporary Chromium feature that will be removed. Use --depth as a >> workaround. >> link:Source brent$ >> >> I kind of hate gyp! >> >> Compare that to the native Xcode projects, CMake files, or normal GNU >> Makefiles. These other solutions almost always JUST WORK, because if you >> can build any software on your machine, you must have used one of these >> options. >> >> I don't use gyp for anything, I don't have it installed, and its not clear >> how to go about using it. >> >> Please don't further raise the barrier of entry to new WebKit developers by >> adding yet another obscure build requirement to the system. :-( >> >> Thanks, >> >> -Brent >> >> >> >> > > _______________________________________________ > webkit-dev mailing list > webkit-dev@lists.webkit.org > http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev > _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev