Bug 40326 - GtkLauncher fails to build: Undefined references to RenderMathMLRoot, RenderMathMLSquareRoot, determineHotSpot
Summary: GtkLauncher fails to build: Undefined references to RenderMathMLRoot, RenderM...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-06-08 13:04 PDT by Clemmitt Sigler
Modified: 2010-06-13 00:54 PDT (History)
2 users (show)

See Also:


Attachments
Patch to fix WebKitGtk build; missing three dependencies. (1.71 KB, patch)
2010-06-08 13:05 PDT, Clemmitt Sigler
no flags Details | Formatted Diff | Diff
Patch to fix WebKitGtk build; missing two dependencies. (1.37 KB, patch)
2010-06-09 04:46 PDT, Clemmitt Sigler
no flags Details | Formatted Diff | Diff
Patch to fix WebKitGtk build; missing two dependencies. (1.31 KB, patch)
2010-06-11 18:47 PDT, Clemmitt Sigler
krit: review+
commit-queue: commit-queue-
Details | Formatted Diff | Diff
Patch to fix WebKitGtk build; missing two dependencies. (1.32 KB, patch)
2010-06-12 07:08 PDT, Clemmitt Sigler
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Clemmitt Sigler 2010-06-08 13:04:05 PDT
Hi,

I'm trying to build WebKit/GTK on generic Linux (a Gentoo Linux installation), x86_64 platform.  Have succeeded at this many times before, but this is my first attempt in a long time and I ran into unfamiliar problems.

When linking Programs/GtkLauncher, I get these errors:

./.libs/libwebkit-1.0.so: undefined reference to `WebCore::openFile(WebCore::String const&, WebCore::FileOpenMode)'
./.libs/libwebkit-1.0.so: undefined reference to `WebCore::RenderMathMLRoot::RenderMathMLRoot(WebCore::Node*)'
./.libs/libwebkit-1.0.so: undefined reference to `WebCore::readFromFile(int, char*, int)'
./.libs/libwebkit-1.0.so: undefined reference to `WebCore::seekFile(int, long long, WebCore::FileSeekOrigin)'
./.libs/libwebkit-1.0.so: undefined reference to `WebCore::RenderMathMLSquareRoot::RenderMathMLSquareRoot(WebCore::Node*)'
./.libs/libwebkit-1.0.so: undefined reference to `WebCore::determineHotSpot(WebCore::Image*, WebCore::IntPoint const&)'

I understand the source of the RenderMathMLRoot, RenderMathMLSquareRoot and determineHotSpot problems, and will attach a patch for devs to review/approve next.

I'll also open another couple of bugs to describe the problem with WebCore::openFile, WebCore::readFromFile, and WebCore::seekFile, and remaining outdated style()->color() calls which are no longer valid (color accessors made private by rev. 59956).  The file access problem seems to be related to WebCore/platform/gtk/FileSystemGtk.cpp.  These three methods aren't defined in this file as they are in, e.g., WebCore/platform/posix/FileSystemPOSIX.cpp.  Of course, when I tried including the posix module in the build, there were namespace collisions.  It seems the fix may be to add these missing methods to WebCore/platform/gtk/FileSystemGtk.cpp???

A patch for WebCore/GNUmakefile.am follows.  HTH.

Clemmitt
Comment 1 Clemmitt Sigler 2010-06-08 13:05:58 PDT
Created attachment 58174 [details]
Patch to fix WebKitGtk build; missing three dependencies.

Patch to fix problem as I've described in this bug report.  HTH.
Comment 2 Martin Robinson 2010-06-08 16:58:24 PDT
Thanks for submitting this patch. Cursor.cpp has already been added to the sources list. Nice call on the MathML sources, but make sure they added in alphabetical order.
Comment 3 Clemmitt Sigler 2010-06-09 04:45:10 PDT
(In reply to comment #2)
> Thanks for submitting this patch. Cursor.cpp has already been added
> to the sources list. Nice call on the MathML sources, but make sure
> they added in alphabetical order.

Thanks, Martin.  Updating patch to apply to current Rev. 60887.  Attaching next.

Any chance you or someone working on Gtk could look at bug 40328 -- not sure how to attack that one besides adding methods openFile, readFromFile, seekFile to WebCore/platform/gtk/FileSystemGtk.cpp, and I'm not deft enough at GTK programming to do this correctly, I'm afraid.

Also, bug 40327 is bothersome, involving now-private RenderStyle color accessors, and caused by crufty leftover code, e.g., 'style()->color()', in a number of modules in the tree.

It seems to me that none of these problems is getting triggered by BuildBot auto-compile-tests, FWIW.  TIA.

Clemmitt
Comment 4 Clemmitt Sigler 2010-06-09 04:46:44 PDT
Created attachment 58235 [details]
Patch to fix WebKitGtk build; missing two dependencies.

Updated patch to add RenderMathMLRoot and RenderMathMLSquareRoot to Gtk build.
Comment 5 Clemmitt Sigler 2010-06-09 06:56:18 PDT
(In reply to comment #3)
<snip>
> It seems to me that none of these problems is getting triggered
> by BuildBot auto-compile-tests, FWIW.

Well, it should've been obvious to me why I'm finding build problems others haven't been seeing.  This is how I configure the GTK build:

./configure --enable-svg --enable-filters --enable-jit --enable-3D-transforms --enable-shared-workers --enable-web-sockets --enable-mathml --enable-xhtmlmp --enable-blob-slice --enable-file-reader --enable-file-writer --enable-image-resizer

IOW, I turn on everything except the stuff generally intended for a browser running on mobile equipment.

Clemmitt
Comment 6 Clemmitt Sigler 2010-06-11 18:47:05 PDT
Created attachment 58537 [details]
Patch to fix WebKitGtk build; missing two dependencies.

Updated patch to add RenderMathMLRoot and RenderMathMLSquareRoot to Gtk build.
Comment 7 Dirk Schulze 2010-06-11 23:11:27 PDT
Comment on attachment 58537 [details]
Patch to fix WebKitGtk build; missing two dependencies.

r=me
Comment 8 WebKit Commit Bot 2010-06-12 04:27:39 PDT
Comment on attachment 58537 [details]
Patch to fix WebKitGtk build; missing two dependencies.

Rejecting patch 58537 from commit-queue.

Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--reviewer', u'Dirk Schulze', u'--force']" exit_code: 2
Parsed 2 diffs from patch file(s).
patching file WebCore/ChangeLog
patch: **** unexpected end of file in patch
patching file WebCore/GNUmakefile.am

Full output: http://webkit-commit-queue.appspot.com/results/3246329
Comment 9 Clemmitt Sigler 2010-06-12 07:06:09 PDT
(In reply to comment #8)
> (From update of attachment 58537 [details])
> Rejecting patch 58537 from commit-queue.
> 
> Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--reviewer', u'Dirk Schulze', u'--force']" exit_code: 2
> Parsed 2 diffs from patch file(s).
> patching file WebCore/ChangeLog
> patch: **** unexpected end of file in patch
> patching file WebCore/GNUmakefile.am
> 
> Full output: http://webkit-commit-queue.appspot.com/results/3246329

I apologize, it's my fault!  It's been a long time since I prepared a patch, and I messed up with the ChangeLog entry.  I'll attach a new patch which is correct.

Dirk (or Martin), could you please review once more?  Thanks for your patience.

Clemmitt
Comment 10 Clemmitt Sigler 2010-06-12 07:08:40 PDT
Created attachment 58551 [details]
Patch to fix WebKitGtk build; missing two dependencies.

Updated patch to add RenderMathMLRoot and RenderMathMLSquareRoot to Gtk build.
Comment 11 Eric Seidel (no email) 2010-06-12 19:03:51 PDT
Comment on attachment 58551 [details]
Patch to fix WebKitGtk build; missing two dependencies.

OK.
Comment 12 WebKit Commit Bot 2010-06-13 00:54:31 PDT
Comment on attachment 58551 [details]
Patch to fix WebKitGtk build; missing two dependencies.

Clearing flags on attachment: 58551

Committed r61085: <http://trac.webkit.org/changeset/61085>
Comment 13 WebKit Commit Bot 2010-06-13 00:54:36 PDT
All reviewed patches have been landed.  Closing bug.