Bug 32992

Summary: [Qt] fix DRT link failures on --no-svg builds when only making changes to DRT
Product: WebKit Reporter: Robert Hogan <robert>
Component: WebKit QtAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, hausmann, laszlo.gombos, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Other   
OS: OS X 10.5   
Attachments:
Description Flags
Patch
eric: review-
Update Patch per Eric's comments none

Description Robert Hogan 2009-12-28 13:25:18 PST
If you're working from a --minimal or --no-svg build and make changes to the DRT, then recompile, the build will fail.

This is because the current behavior at build time is to assume that the previous Qt build supported SVG and consequently delete libQtWebKit.so. Unfortunately, just deleting libQtWebKit.so will not cause the library to re-link. Instead the build will see libQtWebKit.so.4 and co., pass over the linking phase, and attempt to link the DRT with libQtWebKit.so absent. This results in a link failure on the DRT.

Since re-linking libQtWebKit can take up to ten minutes and should be avoided in cases where not actually required, I suggest removing the assumption that the previous Qt build supported SVG, and amend the symbol detection to look for a symbol name that is not present in SVG builds. Currently webkitdirs.pm looks for 'SVGElement' but even non-SVG builds contain the symbol 'isSVGElement'.
Comment 1 Robert Hogan 2009-12-28 13:30:11 PST
Created attachment 45572 [details]
Patch
Comment 2 WebKit Review Bot 2009-12-28 13:32:10 PST
style-queue ran check-webkit-style on attachment 45572 [details] without any errors.
Comment 3 Eric Seidel (no email) 2009-12-29 00:04:50 PST
Comment on attachment 45572 [details]
Patch

OK.  But SVGSetElement is possibly a bad choice as it would be disabled by SVG_ANIMATION being off.  SVGDefsElement might be a better choice.

You should also add a comment next to the libraryContainsSymbol call explaining why you look for SVGDefsElement instead of SVG or SVGElement, etc.
Comment 4 Robert Hogan 2009-12-29 04:47:54 PST
Created attachment 45593 [details]
Update Patch per Eric's comments
Comment 5 WebKit Review Bot 2009-12-29 04:52:50 PST
style-queue ran check-webkit-style on attachment 45593 [details] without any errors.
Comment 6 WebKit Commit Bot 2010-01-05 14:45:08 PST
Comment on attachment 45593 [details]
Update Patch per Eric's comments

Clearing flags on attachment: 45593

Committed r52825: <http://trac.webkit.org/changeset/52825>
Comment 7 WebKit Commit Bot 2010-01-05 14:45:20 PST
All reviewed patches have been landed.  Closing bug.