Bug 61951 - [GTK] autogen.sh is run twice for each buld on the bots
Summary: [GTK] autogen.sh is run twice for each buld on the bots
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P3 Normal
Assignee: Martin Robinson
Keywords: Gtk
Depends on:
Reported: 2011-06-02 12:08 PDT by Martin Robinson
Modified: 2011-06-02 16:32 PDT (History)
3 users (show)

See Also:

Patch (3.83 KB, patch)
2011-06-02 12:23 PDT, Martin Robinson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Robinson 2011-06-02 12:08:46 PDT
When  build-jsc and build-webkit are run sequentially, code in webkitdirs.pm detects the arguments to autogen.sh changing. This is a false positive though, since the autogen.sh arguments for build-jsc and build-webkit are always different. For JavaScriptCore using build-webkit, the arguments should never change, so we can avoid looking at the previous arguments altogether.
Comment 1 Martin Robinson 2011-06-02 12:23:33 PDT
Created attachment 95785 [details]
Comment 2 Gustavo Noronha (kov) 2011-06-02 13:28:15 PDT
Comment on attachment 95785 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=95785&action=review

This change seems OK to me, except for the fact that in the edge case of no GNUmakefile and a file with old arguments being still around it will run autogen twice. I'll say r=me since it seems reasonably easy to fix it with the suggestion I made.

> Tools/Scripts/webkitdirs.pm:1526
> +    # If GNUmakefile exists, don't run autogen.sh unless its arguments
> +    # have changed. The makefile should be smart enough to track autotools
> +    # dependencies and re-run autogen.sh when build files change.
> +    if (!(-e "GNUmakefile")) {
> +        runAutogenForAutotoolsProject($dir, $prefix, $sourceDir, @buildArgs);
> +    }
> +    my $autogenArgumentsFile = "previous-autogen-arguments-for-$project.txt";
> +    if ($project eq "WebKit" and autogenArgumentsHaveChanged($autogenArgumentsFile, @buildArgs)) {

Hmm. Won't this cause autogen to be run twice if there is no GNUmakefile and a file with arguments that are different from the current ones? Why not add the !(-e "GNUmakefile") check to the same if that checks for project and arguments having changed with an or?
Comment 3 Martin Robinson 2011-06-02 14:50:40 PDT
Committed r87957: <http://trac.webkit.org/changeset/87957>