Bug 153876 - Fix the clean build on the WinCairo buildbot
Summary: Fix the clean build on the WinCairo buildbot
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P1 Blocker
Assignee: Alex Christensen
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-04 10:48 PST by Csaba Osztrogonác
Modified: 2016-04-04 07:45 PDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Csaba Osztrogonác 2016-02-04 10:48:27 PST
https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/53601

Checking Last-Modified date of WinCairoRequirements.zip...
Couldn't check Last-Modified date of new WinCairoRequirements.zip.
Response was: 404.
Please ensure that Perl can use LWP::Simple to connect to HTTPS urls, and that https://dl.dropboxusercontent.com/u/100779108/WinCairoRequirements.zip is reachable.
You may have to run $ cpan LWP::Protocol::https
Unable to check Last-Modified date and no version of WinCairoRequirements to fall back to.
Died at Tools/Scripts/update-webkit-wincairo-libs line 41.
Died at ./Tools/Scripts/build-webkit line 218.
Comment 1 Csaba Osztrogonác 2016-02-07 00:51:45 PST
Still valid bug -https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/53695
Comment 2 Csaba Osztrogonác 2016-02-12 06:04:06 PST
still valid: https://build.webkit.org/builders/WinCairo%2064-Bit%20Release/builds/53854
Comment 3 Jeremy Zerfas 2016-03-16 19:57:28 PDT
I've been working on improving the update-webkit-dependency script (see bug 155576) and can help you out a bit with this.

The error message that you posted is misleading because the message the script displays doesn't properly explain what it was trying to do. When the dependency file is on Dropbox, the script will also try downloading a separate *.headers that is supposed to contain a Last-Modified header that it can use to determine whether the dependency is up to date or not. In this case it's really trying to download https://dl.dropboxusercontent.com/u/100779108/WinCairoRequirements.headers but that file doesn't appear to exist. One of the improvements I made in the script will allow it to figure out if the dependency is up to date without needing to use that separate *.headers file.

There is also another problem though that I would like to point out and need someone else to fix. The update-webkit-dependency script expects there to be a WinCairoRequirements folder at the root of the zip file which then contains the other bin, include, & lib folders but currently those bin, include, & lib folders are all at the root of the zip file instead. You can compare that zip file to the one at https://dl.dropboxusercontent.com/u/39598926/WinCairoRequirements.zip which is where the file used to be stored until the location was changed in revision 188308. I'm hoping one of you could get in touch with someone who has write access to that Dropbox file and correct this.

For now you can follow the suggestions in https://lists.webkit.org/pipermail/webkit-help/2015-November/003987.html if you need to get this working right away. Just remember to revert the change to update-webkit-wincairo-libs later. Also note that if you do manually extract the zip file into the WebKitLibraries/win folder, you'll notice that several of the files already exist there and for those it is OK to replace them with the files from the zip file.
Comment 4 Alex Christensen 2016-03-17 10:33:22 PDT
Thanks for looking into this.  I don't think the WinCairoRequirements.zip had a WinCairoRequirements folder at the root of the zip, but I could be wrong.  I have access to the dropbox account linked to by our script, so I would be the one to do any updates needed for WinCairoRequirements.zip.
Comment 5 Jeremy Zerfas 2016-03-17 15:39:20 PDT
(In reply to comment #4)
> I don't think the WinCairoRequirements.zip had a WinCairoRequirements folder > at the root of the zip, but I could be wrong.

The current zip file at https://dl.dropboxusercontent.com/u/100779108/WinCairoRequirements.zip DOES NOT have a WinCairoRequirements folder at its root however the previous zip file at https://dl.dropboxusercontent.com/u/39598926/WinCairoRequirements.zip DOES have a WinCairoRequirements folder at its root. Similarly the current zip file at https://developer.apple.com/opensource/internet/WebKitAuxiliaryLibrary.zip DOES have a WebKitAuxiliaryLibrary folder at its root.

If you want to compare the previous and current WinCairoRequirements.zip files and you are doing this on OS X, it might be a good idea to do this by running "unzip -l <PATH_TO_ZIP_FILE>" from the command line instead of extracting the zip files from the Finder. I'm not entirely certain of how the extracting process works when done from the Finder but it looks like if a zip file has multiple folders/files at its root, they get extracted into a new folder that has the same base name of the zip file. If the zip file has a single folder at its root, then it just extracts that folder without putting it into a new folder. When extracting the two WinCairoRequirements.zip files from the Finder, you can't tell that one has the WinCairoRequirements folder at its root and the other doesn't. The listing from unzip -l clearly shows that one has the WinCairoRequirements folder at its root and the other doesn't.
Comment 6 Alex Christensen 2016-03-17 16:18:17 PDT
You are right.  I have fixed this on dropbox.
Comment 7 Jeremy Zerfas 2016-03-24 18:58:24 PDT
Csaba, my patch that I mentioned from bug 155576 has been committed in r198638 and that should now allow the script to successfully download and install the WinCairoRequirements.zip file. That should fix that error you are having. Could you check to see if that fixes your problem and close this bug if you don't have any further problems?
Comment 8 Csaba Osztrogonác 2016-04-04 07:45:02 PDT
I haven't seen this issue on the WinCairo buildbot since that patch. Thanks.