Bug 189971

Summary: build-webkit should set the build configuration
Product: WebKit Reporter: Koby <koby.b>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: ap, dbates, ddkilzer, jbedard, krollin, lforschler
Priority: P2    
Version: Other   
Hardware: Mac   
OS: macOS 10.13   
Bug Depends on:    
Bug Blocks: 189947    

Koby
Reported 2018-09-25 13:12:36 PDT
Hi, I'm trying to submit patches to WebKit, and according to https://webkit.org/contributing-code/ I should run run-webkit-tests and make sure all tests pass. But, after building a "clean" webkit (with "Tools/Scripts/build-webkit --debug"), without any modifications, run-webkit-tests fails with the following error: "make: *** No rule to make target `JSUIScriptController.h', needed by `all'. Stop.". My Environment: macOS 10.13.6 with Xcode 10.0 (running on macincloud.com) Steps to reproduce: 1. Download WebKit's source code from https://github.com/WebKit/webkit (used "Download ZIP"). 2. Open the terminal at webkit's source root dir. 3. Build webkit: perl Tools/Scripts/build-webkit --debug 4. Run: ./Tools/Scripts/run-webkit-tests Thanks, Koby
Attachments
Alexey Proskuryakov
Comment 1 2018-09-26 14:57:39 PDT
I could reproduce this. This is because run-webkit-tests defaults to --release, so there is a mismatch between what was built and what is being tested. Having more complete output in the bug would have made this easier to diagnose. That said, those flags are supposed to be saved in a Configuration file in the build directory, and I don't see it there after running both. That seems like a bad regression.
Jonathan Bedard
Comment 2 2018-09-27 08:30:36 PDT
This is definitely a regression, I'll try and fix it. I suspect most of our developers haven't noticed this because they have both release and debug builds, which is actually even scarier than this case because run-webkit-tests would be silently using the wrong binary. Koby, in the mean time, pass --debug to run-webkit-tests and you will force it to use the debug build.
Koby
Comment 3 2018-09-27 12:53:11 PDT
Thanks! I'll try it.
Jonathan Bedard
Comment 4 2018-10-04 14:21:46 PDT
It seems like the bug is actually in build-webkit. When using 'make', the the configuration file is correctly set up.
Jonathan Bedard
Comment 5 2018-10-04 16:00:36 PDT
As far as I can tell, this isn't a regression. Looking through change logs, it seems that build-webkit has not historically set the build configuration. There is one notable argument against setting the build configuration in build-webkit, run-webkit-tests calls build-webkit, so we would need to change run-webkit-tests such that it no longer explicitly sent the configuration to build-webkit if the user did not specify the configuration.
Note You need to log in before you can comment on or make changes to this bug.