Bug 76936

Summary: Tests that require PHP will fail under NRWT on a new Cygwin install for Apple's Windows port
Product: WebKit Reporter: Adam Roben (:aroben) <aroben>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: dpranke, eric, jberlin, jhoneycutt, lforschler, mark.salisbury, roger_fong, thorton, webkit-bug-importer, wsiegrist
Priority: P2 Keywords: InRadar, NRWT, PlatformOnly
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows 7   
Bug Depends on:    
Bug Blocks: 38756    
Attachments:
Description Flags
patch thorton: review+

Description Adam Roben (:aroben) 2012-01-24 13:01:19 PST
Tests that require PHP will fail under NRWT on a new Cygwin install for Apple's Windows port. This is because NRWT doesn't know how to install libphp4.dll like httpd.pm does.
Comment 1 Radar WebKit Bug Importer 2012-01-24 13:03:39 PST
<rdar://problem/10747608>
Comment 2 Dirk Pranke 2012-07-17 18:39:28 PDT
okay, with a built and (mostly sort of) working apple win machine, I've copied the file to /usr/lib/apache/libphp4.dll with the following permissions:

-rwxr-xr-x 1 dpranke Domain Users 3363586 Jul 11 16:35 libphp4.dll*

and yet run-webkit-httpd fails with :

% run-webkit-httpd
Starting httpd on <http://127.0.0.1:8000/>...
Press Ctrl+C to stop it.

Syntax error on line 237 of /cygdrive/c/src/wksvn/LayoutTests/http/conf//cygwin-httpd.conf:
Cannot load /usr/lib/apache/libphp4.dll into server: No such file or directory


Any ideas?
Comment 3 Mark Salisbury 2012-08-27 14:02:09 PDT
I just ran into this same error, but I was attempting to use the old dump render tree.  I noticed that libphp4.dll will be copied automatically by run-webkit-tests from LayoutTests/http/conf to /usr/lib/apache/libphp4.dll, but even after this is done it doesn't run.

I ran depends.exe against libphp4.dll.  There is one library that is missing: minires.

Apparently minires is now obsolete:  http://cygwin.com/cgi-bin2/package-cat.cgi?file=minires%2Fminires-1.02-1&grep=cygminires.dll

If I run the cygwin installer (cygwin-setup), and uncheck 'hide obsolete packages' I can install minires, and run http tests requiring php successfully.

In an attempt to see if I could remove this dependency, I tried building php4 from source using archived source tarballs.  I can't get php4 to build in cygwin...

Anyway, I think the solution to this problem may be installing minires automatically.  (thought it is bothering that it's considered obsolete).
Comment 4 Roger Fong 2012-08-28 18:28:14 PDT
Created attachment 161110 [details]
patch

I was also running into same problem when running http tests with old run webkit tests on Windows.
Here's a patch that simply adds the minires package to the list of required packages in the cygwin downloader.
Although the executable file download (http://www.webkit.org/building/tools.html) will need to be updated.
Comment 5 Tim Horton 2012-08-28 18:31:21 PDT
Roger says that he's tested to make sure that cygwin still grabs minires despite it being obsolete.
Comment 6 Roger Fong 2012-08-29 12:46:50 PDT
http://trac.webkit.org/changeset/126948