Bug 14986 - XCode projects for WebKit, WebCore, and JavaScriptGlue don't build.
Summary: XCode projects for WebKit, WebCore, and JavaScriptGlue don't build.
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit API (show other bugs)
Version: 523.x (Safari 3)
Hardware: Mac OS X 10.4
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-16 10:38 PDT by Chris Perkins
Modified: 2007-08-16 20:18 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Perkins 2007-08-16 10:38:41 PDT
one of the shell scripts fails looking for DOM.h and several other .h files, many of which do not seem to exist anywhere.
Comment 1 mitz 2007-08-16 11:51:56 PDT
Did you set the build products directory in Xcode preferences? Are there spaces in the build products path or in the path to the source directory?
Comment 2 Chris Perkins 2007-08-16 13:47:03 PDT
>>> Did you set the build products directory in Xcode preferences? 

It is set the way it came: "build", which XCode seems to interpret as $(PROJECT_DIR)/build
Is it supposed to be some other value?


>> Are there spaces in the build products path or in the path to the source directory?

No.



Here is the error:
make:*** No rule to make target 'Users/cperkins/Desktop/WebKit/WebKit/build/Production/WebKit.framework/Versions/A/Header/DOM.h' needed by 'all'. Stop. 



This is a simple bug to reproduce: checkout the latest WebKit using the directions on the webkit.org website.  Open the XCode project in the WebKit directory. Click 'Build'. 
Comment 3 mitz 2007-08-16 14:13:28 PDT
(In reply to comment #2)
>'Users/cperkins/Desktop/WebKit/WebKit/build/Production/WebKit.framework/Versions/A/Header/DOM.h'

Looks like you're trying to build the Production configuration. I think Debug and Release are the only ones you can build. You also must set the build products directory in Xcode preferences to the the Debug or Release subdirectory of the WebKitBuild directory at the top level of the source tree.
Comment 4 Chris Perkins 2007-08-16 15:11:17 PDT
>>I think Debug and Release are the only ones you can build. 

They don't build either, I've tried them all. Same error every time (the path in the error will have /Debug/ instead of /Production/, obviously).


>>You also must set the build products directory in Xcode preferences to the the Debug or Release subdirectory of the WebKitBuild directory at the top level of the source tree.

The XCode project has the path of "build" set there. I tried changing it to $(PROJECT_DIR)/build      but still no luck.  Do you mean something different than this?   If some special path is needed here, why isn't it in the project already or at least documented? 



Have you tried checking out the source, (or downloading  a nightly), opening the WebKit XCode project, select 'Debug' or 'Release' and then building?  Try it.  

Comment 5 Matt Lilek 2007-08-16 15:27:36 PDT
(In reply to comment #4)
> >>I think Debug and Release are the only ones you can build. 
> 
> They don't build either, I've tried them all. Same error every time (the path
> in the error will have /Debug/ instead of /Production/, obviously).
> 
> 
> >>You also must set the build products directory in Xcode preferences to the the Debug or Release subdirectory of the WebKitBuild directory at the top level of the source tree.
> 
> The XCode project has the path of "build" set there. I tried changing it to
> $(PROJECT_DIR)/build      but still no luck.  Do you mean something different
> than this?   If some special path is needed here, why isn't it in the project
> already or at least documented? 
> 
> 
> 
> Have you tried checking out the source, (or downloading  a nightly), opening
> the WebKit XCode project, select 'Debug' or 'Release' and then building?  Try
> it.  
> 

The projects are not supposed to build in the XCode gui right out of the box.  Try the first half of the instructions on this page to get it working <http://webkit.org/building/debug.html>.
Comment 6 Mark Rowe (bdash) 2007-08-16 20:18:40 PDT
As mentioned by Mitz and Matt, you need to ensure that all the projects share a common build directory.  You can do this by doing "Get Info" on each project in Xcode and setting the custom build location to the same path, or you can set this globally in the Build pane of your Xcode preferences.

The build-webkit script takes care of this for you.  Depending on what you are doing, the easiest approach may be to simply use build-webkit for building the projects and then configure one project as per <http://webkit.org/building/debug.html> to facilitate debugging via Xcode.  Alternatively, the tweaks mentioned above should allow you to build from within Xcode.