- Revision
- 100746
- Author
- hausm...@webkit.org
- Date
- 2011-11-18 03:41:10 -0800 (Fri, 18 Nov 2011)
Log Message
[Qt] WTR and InjectedBundle should not link statically against JSC/WTF https://bugs.webkit.org/show_bug.cgi?id=72697
Reviewed by Kenneth Rohde Christiansen.
.:
* Source/api.pri: On Linux, use a GNU LD version script to manage the
symbol exports, which includes the public WK1/WK2 API as well as a bunch
of private WTF symbols needed for WTR and the Injected Bundle.
* Source/qtwebkit-export.map: Added.
Tools:
* Tools.pro: Make WTR linux only for the moment.
* WebKitTestRunner/InjectedBundle/Target.pri: Remove static jsc/wtf linkage.
* WebKitTestRunner/Target.pri: Ditto.
* qmake/mkspecs/features/default_post.prf: Don't build the main webkit sources
with ELF visibility on Linux. Instead we're temporarily using an LD version script.
Modified Paths
Added Paths
Diff
Modified: trunk/ChangeLog (100745 => 100746)
--- trunk/ChangeLog 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/ChangeLog 2011-11-18 11:41:10 UTC (rev 100746)
@@ -1,3 +1,15 @@
+2011-11-18 Simon Hausmann <simon.hausm...@nokia.com>
+
+ [Qt] WTR and InjectedBundle should not link statically against JSC/WTF
+ https://bugs.webkit.org/show_bug.cgi?id=72697
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * Source/api.pri: On Linux, use a GNU LD version script to manage the
+ symbol exports, which includes the public WK1/WK2 API as well as a bunch
+ of private WTF symbols needed for WTR and the Injected Bundle.
+ * Source/qtwebkit-export.map: Added.
+
2011-11-17 Raphael Kubo da Costa <k...@profusion.mobi>
[EFL] Clean up the use of DATA_DIR in the buildsystem
Modified: trunk/Source/api.pri (100745 => 100746)
--- trunk/Source/api.pri 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Source/api.pri 2011-11-18 11:41:10 UTC (rev 100746)
@@ -218,3 +218,5 @@
CONFIG *= link_pkgconfig
PKGCONFIG += x11
}
+
+linux-g++*: QMAKE_LFLAGS += -Wl,--version-script=$$PWD/qtwebkit-export.map
Added: trunk/Source/qtwebkit-export.map (0 => 100746)
--- trunk/Source/qtwebkit-export.map (rev 0)
+++ trunk/Source/qtwebkit-export.map 2011-11-18 11:41:10 UTC (rev 100746)
@@ -0,0 +1,118 @@
+qwk_1.0 {
+ global:
+ WK*;
+ JSValueToObject;
+ JSObjectGetProperty;
+ JSValueIsObjectOfClass;
+ JSObjectSetProperty;
+ JSValueMakeString;
+ JSValueIsObject;
+ JSStringCreateWithUTF8CString;
+ JSValueToNumber;
+ JSStringRelease;
+ JSValueToStringCopy;
+ JSStringRetain;
+ JSClassRetain;
+ JSObjectGetPrivate;
+ JSObjectMake;
+ JSValueMakeBoolean;
+ JSClassCreate;
+ JSValueMakeNull;
+ JSValueToBoolean;
+ JSValueMakeNumber;
+ JSObjectCallAsFunction;
+ JSValueMakeUndefined;
+ JSClassRelease;
+ JSStringIsEqualToUTF8CString;
+ JSStringGetUTF8CString;
+ JSContextGetGlobalObject;
+ kJSClassDefinitionEmpty;
+ JSValueIsNumber;
+ JSObjectGetPropertyAtIndex;
+ JSValueIsString;
+ JSStringGetLength;
+ JSStringGetCharactersPtr;
+ JSStringCreateWithCharacters;
+ JSValueUnprotect;
+ JSValueProtect;
+ JSEvaluateScript;
+ _WKContextSetAdditionalPluginsDirectory;
+ WTFReportBacktrace;
+ extern "C++" {
+ # WebKit 1 API
+ *QGraphicsWebView;
+ non-virtual?thunk?to?QGraphicsWebView*;
+ QGraphicsWebView::*;
+ *QWebDatabase;
+ non-virtual?thunk?to?QWebDatabase*;
+ QWebDatabase::*;
+ *QWebElement;
+ non-virtual?thunk?to?QWebElement*;
+ QWebElement::*;
+ *QWebElementCollection;
+ non-virtual?thunk?to?QWebElementCollection*;
+ QWebElementCollection::*;
+ *QWebHitTestResult;
+ non-virtual?thunk?to?QWebHitTestResult*;
+ QWebHitTestResult::*;
+ *QWebFrame;
+ non-virtual?thunk?to?QWebFrame*;
+ QWebFrame::*;
+ *QWebPage;
+ non-virtual?thunk?to?QWebPage*;
+ QWebPage::*;
+ *QWebView;
+ non-virtual?thunk?to?QWebView*;
+ QWebView::*;
+ *QWebSettings;
+ non-virtual?thunk?to?QWebSettings*;
+ QWebSettings::*;
+ *QWebInspector;
+ non-virtual?thunk?to?QWebInspector*;
+ QWebInspector::*;
+ *DumpRenderTreeSupportQt;
+ non-virtual?thunk?to?DumpRenderTreeSupportQt*;
+ DumpRenderTreeSupportQt::*;
+ *QWebPluginFactory;
+ non-virtual?thunk?to?QWebPluginFactory*;
+ QWebPluginFactory::*;
+ *QWebHistory;
+ non-virtual?thunk?to?QWebHistory*;
+ QWebHistory::*;
+ *QWebHistoryItem;
+ non-virtual?thunk?to?QWebHistoryItem*;
+ QWebHistoryItem::*;
+ *QWebSecurityOrigin;
+ non-virtual?thunk?to?QWebSecurityOrigin*;
+ QWebSecurityOrigin::*;
+ *QWebHistoryInterface;
+ non-virtual?thunk?to?QWebHistoryInterface*;
+ QWebHistoryInterface::*;
+ qWebKit*Version*;
+ "operator<<(QDataStream&, QWebHistory const&)";
+ "operator>>(QDataStream&, QWebHistory&)";
+
+ # WebKit 2 Helpers
+ WebKit::WebProcessMainQt*;
+ WTF::fastMalloc*;
+ WTF::fastFree*;
+ WTF::fastZeroedMalloc*;
+
+ # WebKit 2 API
+ *QQuickWebView;
+ non-virtual?thunk?to?QQuickWebView*;
+ QQuickWebView::*;
+ *QQuickWebViewPrivate;
+ non-virtual?thunk?to?QQuickWebViewPrivate*;
+ QQuickWebViewPrivate::*;
+ *QQuickWebViewPrivateExtension;
+ non-virtual?thunk?to?QQuickWebViewPrivateExtension*;
+ QQuickWebViewPrivateExtension::*;
+
+ # WebKit 2 C API mangled in C++
+ WKStringCopyQString*;
+ WKStringCreateWithQString*;
+ WKImageCreateQImage*;
+ };
+ local: *;
+};
Modified: trunk/Tools/ChangeLog (100745 => 100746)
--- trunk/Tools/ChangeLog 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Tools/ChangeLog 2011-11-18 11:41:10 UTC (rev 100746)
@@ -1,3 +1,16 @@
+2011-11-18 Simon Hausmann <simon.hausm...@nokia.com>
+
+ [Qt] WTR and InjectedBundle should not link statically against JSC/WTF
+ https://bugs.webkit.org/show_bug.cgi?id=72697
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ * Tools.pro: Make WTR linux only for the moment.
+ * WebKitTestRunner/InjectedBundle/Target.pri: Remove static jsc/wtf linkage.
+ * WebKitTestRunner/Target.pri: Ditto.
+ * qmake/mkspecs/features/default_post.prf: Don't build the main webkit sources
+ with ELF visibility on Linux. Instead we're temporarily using an LD version script.
+
2011-11-18 Kenneth Rohde Christiansen <kenn...@webkit.org>
[Qt] Change default size of the MiniBrowser
Modified: trunk/Tools/Tools.pro (100745 => 100746)
--- trunk/Tools/Tools.pro 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Tools/Tools.pro 2011-11-18 11:41:10 UTC (rev 100746)
@@ -15,7 +15,7 @@
!no_webkit2 {
SUBDIRS += MiniBrowser/qt/MiniBrowser.pro
- SUBDIRS += WebKitTestRunner/WebKitTestRunner.pro
+ linux-g++*: SUBDIRS += WebKitTestRunner/WebKitTestRunner.pro
}
!win32:contains(DEFINES, ENABLE_NETSCAPE_PLUGIN_API=1) {
Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Target.pri (100745 => 100746)
--- trunk/Tools/WebKitTestRunner/InjectedBundle/Target.pri 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Target.pri 2011-11-18 11:41:10 UTC (rev 100746)
@@ -53,9 +53,10 @@
QT += declarative widgets
load(features)
+load(_javascript_core)
load(webcore)
-CONFIG += plugin _javascript_core qtwebkit
+CONFIG += plugin qtwebkit
INCLUDEPATH += \
$$PWD/.. \
Modified: trunk/Tools/WebKitTestRunner/Target.pri (100745 => 100746)
--- trunk/Tools/WebKitTestRunner/Target.pri 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Tools/WebKitTestRunner/Target.pri 2011-11-18 11:41:10 UTC (rev 100746)
@@ -28,9 +28,10 @@
QT = core gui widgets network declarative testlib
load(features)
+load(_javascript_core)
load(webkit2)
-CONFIG += _javascript_core qtwebkit
+CONFIG += qtwebkit
!embedded: PKGCONFIG += fontconfig
Modified: trunk/Tools/qmake/mkspecs/features/default_post.prf (100745 => 100746)
--- trunk/Tools/qmake/mkspecs/features/default_post.prf 2011-11-18 11:35:49 UTC (rev 100745)
+++ trunk/Tools/qmake/mkspecs/features/default_post.prf 2011-11-18 11:41:10 UTC (rev 100746)
@@ -131,7 +131,7 @@
win32-msvc*|win32-icc: INCLUDEPATH += $$ROOT_WEBKIT_DIR/Source/_javascript_Core/os-win32
!plugin {
- contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
+ !linux-g++*:contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
unix:contains(QT_CONFIG, reduce_relocations):CONFIG += bsymbolic_functions
}
}