[Webkit-unassigned] [Bug 27619] Switch wx to using waf for builds

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Aug 9 17:10:51 PDT 2009


https://bugs.webkit.org/show_bug.cgi?id=27619





--- Comment #30 from Kevin Ollivier <kevino at theolliviers.com>  2009-08-09 17:10:49 PDT ---
(In reply to comment #29)
> (From update of attachment 34326 [details])
> > +    # we don't support SVG yet.
> > +    ($svgSupport, $svgAnimationSupport, $svgAsImageSupport, $svgDOMObjCBindingsSupport) = (0, 0, 0, 0);
> > +    ($svgFontsSupport, $svgForeignObjectSupport, $svgUseSupport) = (0, 0, 0);
> > +}
> 
> You should take a look at how the Qt project modifies the default values of
> these build options.  Overriding them in this manner will result in their
> default values in 'build-webkit --help' being inconsistent with the values that
> are actually used.

Okay, I'll give that approach a shot for my next revision.

> >  # Don't report the "WebKit is now built" message after a clean operation.
> > Index: WebKitTools/Scripts/run-launcher
> > ===================================================================
> > --- WebKitTools/Scripts/run-launcher	(revision 46910)
> > +++ WebKitTools/Scripts/run-launcher	(working copy)
> > @@ -42,7 +42,9 @@
> >  my @args = @ARGV;
> >  
> >  # Check to see that all the frameworks are built.
> > -checkFrameworks();
> > +if (!isWx()) {
> > +    checkFrameworks();
> > +}
> 
> We should fix the implementation of checkFrameworks rather than if'ing the call
> site.

Okay, will do.

> > +    # get / update waf if needed
> > +    my $waf = "$sourceDir/WebKitTools/wx/waf";
> > +    my $wafURL = 'http://wxwebkit.wxcommunity.com/downloads/deps/waf';
> > +    if (!-f $waf) {
> > +        my $result = system "curl -o $waf $wafURL";
> > +        chmod 0755, $waf;
> > +    }
> 
> Is it really necessary to attempt to check if this tool needs updated every
> time a project is built?  This seems like something we'd typically have
> update-webkit do.  Either way it should have some more error handling and fewer
> redundant variables.

I can put it somewhere else, but I don't want it in update-webkit because the
user won't have waf on initial checkout, and I don't think it would occur to
them to run update-webkit after a clean checkout. I could put it in somewhere
like update-webkit-auxiliary-libs, but IMHO, if the user needs the latest
version of something each time they build, it's better to just run the check to
make sure they've got the latest version of the deps before building rather
than requiring the user to repeatedly run an extra manual step. I suppose it
adds a second or so to the build, but OTOH the build won't end up failing due
to outdated deps because the user forgot to run a step. 

I'm certainly open to alternate ideas of how to handle this, but I would like
the behavior to be automatic. I could just make a downloadOrUpdateWaf()
function and call it from build-webkit directly as an alternative to running it
each time a project is built.

> > +    print "Building $project\n";
> > +
> > +    my $wafCommand = $waf;
> > +    if (isCygwin()) {
> > +        $wafCommand = `cygpath --windows "$wafCommand"`;
> > +        chomp($wafCommand);
> > +    }
> > +    if ($shouldClean) {
> > +        return system $wafCommand, "clean";
> > +    }
> > +    
> > +    my $result = system $wafCommand, 'configure', 'build', 'install', @options;
> > +    
> > +    return $result;
> 
> The temporary $result variable here isn't needed.

Oops, thanks, in previous revisions I was checking the result for debugging and
forgot to remove that code.

> There are no major issues, but it does need revision.  Marking as r-.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list