Gdk build fixes using the Qt build's qmake tool from Holger Freyther, reviewed by...
authorhausmann <hausmann@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 3 May 2007 22:04:27 +0000 (22:04 +0000)
committerhausmann <hausmann@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 3 May 2007 22:04:27 +0000 (22:04 +0000)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@21235 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 files changed:
ChangeLog
JavaScriptCore/ChangeLog
JavaScriptCore/JavaScriptCore.pri
JavaScriptCore/bindings/testbindings.pro
JavaScriptCore/kjs/testkjs.pro
JavaScriptCore/pcre/pcre.pri
WebCore/ChangeLog
WebCore/WebCore.pro
WebKit.pri
WebKit.pro
WebKitTools/ChangeLog
WebKitTools/GdkLauncher/GdkLauncher.pro [new file with mode: 0644]
WebKitTools/GdkLauncher/main.cpp
WebKitTools/Scripts/build-webkit
WebKitTools/Scripts/webkitdirs.pm

index 9168dac..de1b8be 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2007-05-03  Holger Freyther <freyther@kde.org>
+
+        Reviewed by Zack, landed by Simon.
+        This is bugzilla bug 13499.
+
+        * WebKit.pri: Place Qt into a scope, start sharing qmake with the Gdk
+        port
+        * WebKit.pro: Place Qt into a scope, start sharing qmake with the Gdk
+        port
+
 2007-04-27  Holger Freyther <freyther@kde.org>
 
         Reviewed by Maciej.
index dbe78f0..0099563 100644 (file)
@@ -1,3 +1,13 @@
+2007-05-03  Holger Freyther <freyther@kde.org>
+
+        Reviewed by Zack, landed by Simon.
+        This is bugzilla bug 13499.
+
+        * JavaScriptCore.pri: Place Qt into the qt-port scope
+        * bindings/testbindings.pro: Place Qt into the qt-port scope
+        * kjs/testkjs.pro: Place Qt into the qt-port scope
+        * pcre/pcre.pri: Place Qt into the qt-port scope
+
 2007-05-02  David Harrison  <harrison@apple.com>
 
         Reviewed by Antti.
index 670f9d1..3df6931 100644 (file)
@@ -2,9 +2,10 @@
 VPATH += $$PWD
 
 INCLUDEPATH += tmp
-INCLUDEPATH += $$PWD $$PWD/kjs $$PWD/bindings $$PWD/bindings/c $$PWD/bindings/qt $$PWD/wtf
+INCLUDEPATH += $$PWD $$PWD/kjs $$PWD/bindings $$PWD/bindings/c $$PWD/wtf
 DEFINES -= KJS_IDENTIFIER_HIDE_GLOBALS 
-DEFINES += BUILDING_QT__
+qt-port:INCLUDEPATH += $$PWD/bindings/qt
+qt-port:DEFINES += BUILDING_QT__
 
 include(pcre/pcre.pri)
 
@@ -38,9 +39,6 @@ SOURCES += \
     bindings/c/c_instance.cpp \
     bindings/c/c_runtime.cpp \
     bindings/c/c_utility.cpp \
-    bindings/qt/qt_class.cpp \
-    bindings/qt/qt_instance.cpp \
-    bindings/qt/qt_runtime.cpp \
     kjs/DateMath.cpp \
     kjs/JSWrapperObject.cpp \
     kjs/PropertyNameArray.cpp \
@@ -82,6 +80,11 @@ SOURCES += \
     kjs/ustring.cpp \
     kjs/value.cpp
 
+qt-port:SOURCES += \
+    bindings/qt/qt_class.cpp \
+    bindings/qt/qt_instance.cpp \
+    bindings/qt/qt_runtime.cpp
+
 
 # GENERATOR 1-A: LUT creator
 lut.output = tmp/${QMAKE_FILE_BASE}.lut.h
index 135d0ab..e6e0b9d 100644 (file)
@@ -1,7 +1,8 @@
 QT -= gui
 
 include(../../WebKit.pri)
-INCLUDEPATH += .. ../kjs . bindings/qt
+INCLUDEPATH += .. ../kjs .
+qt-port:INCLUDEPATH += bindings/qt
 
 SOURCES += testqtbindings.cpp
 
index d441dd1..59081c1 100644 (file)
@@ -4,9 +4,9 @@ DESTDIR = ..
 SOURCES = testkjs.cpp
 QT -= gui
 DEFINES -= KJS_IDENTIFIER_HIDE_GLOBALS 
-DEFINES += BUILDING_QT__
 INCLUDEPATH += $$PWD/.. $$PWD $$PWD/../bindings $$PWD/../bindings/c $$PWD/../wtf
-LIBS += -L$$OUTPUT_DIR/lib -lWebKitQt
+qt-port:DEFINES += BUILDING_QT__
+qt-port:LIBS += -L$$OUTPUT_DIR/lib -lWebKitQt
 QMAKE_RPATHDIR += $$OUTPUT_DIR/lib
 
 isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD/../..
index 5d5dc56..323c6b5 100644 (file)
@@ -1,6 +1,6 @@
 # Perl Compatible Regular Expressions - Qt4 build info
 VPATH += $$PWD
-INCLUDEPATH += $$PWD
+INCLUDEPATH += $$PWD $$OUTPUT_DIR/JavaScriptCore/kjs/tmp
 
 SOURCES += \
     pcre_get.c \
@@ -26,7 +26,9 @@ CTGENFILE += \
 
 # GENERATOR: "chartables.c": compile and execute the chartables generator (and add it to sources)
 ctgen.output = tmp/chartables.c
-ctgen.commands = gcc ${QMAKE_FILE_NAME} -DBUILDING_QT__ -I$$PWD/../wtf -o tmp/${QMAKE_FILE_BASE} && ./tmp/${QMAKE_FILE_BASE} ${QMAKE_FILE_OUT}
+ctgen.commands = gcc ${QMAKE_FILE_NAME} -I$$PWD/../wtf -o tmp/${QMAKE_FILE_BASE} && ./tmp/${QMAKE_FILE_BASE} ${QMAKE_FILE_OUT}
+qt-port:ctgen.commands = gcc ${QMAKE_FILE_NAME} -DBUILDING_QT__ -I$$PWD/../wtf -o tmp/${QMAKE_FILE_BASE} && ./tmp/${QMAKE_FILE_BASE} ${QMAKE_FILE_OUT}
+gdk-port:ctgen.commands = gcc ${QMAKE_FILE_NAME} -DBUILDING_GDK__ -DBUILDING_CAIRO__ -I$$PWD/../wtf -o tmp/${QMAKE_FILE_BASE} && ./tmp/${QMAKE_FILE_BASE} ${QMAKE_FILE_OUT}
 ctgen.input = CTGENFILE
 ctgen.CONFIG += target_predeps no_link
 ctgen.variable_out = GENERATED_SOURCES
index 090ecba..e512a99 100644 (file)
@@ -1,3 +1,10 @@
+2007-05-03  Holger Freyther <freyther@kde.org>
+
+        Reviewed by Zack, landed by Simon.
+        This is bugzilla bug 13499.
+
+        * WebCore.pro: Place the Qt port into the qt-port scope, add the Gdk port
+
 2007-05-03  Adele Peterson  <adele@apple.com>
 
         Use BUILDING_ON_TIGER.
index 43e00e4..dd27e2e 100644 (file)
@@ -1,11 +1,14 @@
-# WebCore - Qt4 build info
+# WebCore - qmake build info
+include($$PWD/../WebKit.pri)
+qt-port:LIBS -= -lWebKitQt
+gdk-port:LIBS -= -lWebKitGdk
 
 TEMPLATE = lib
-TARGET = WebKitQt
+qt-port:TARGET = WebKitQt
+gdk-port:TARGET = WebKitGdk
 OBJECTS_DIR = tmp
-INCLUDEPATH += tmp
+INCLUDEPATH += tmp $$OUTPUT_DIR/WebCore/tmp
 
-isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD/..
 DESTDIR = $$OUTPUT_DIR/lib
 
 include($$OUTPUT_DIR/config.pri)
@@ -14,18 +17,12 @@ CONFIG -= warn_on
 QMAKE_CXXFLAGS += -Wreturn-type
 #QMAKE_CXXFLAGS += -Wall -Wno-undef -Wno-unused-parameter
 
-contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
+qt-port:contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
 unix:contains(QT_CONFIG, reduce_relocations):CONFIG += bsymbolic_functions
 
 linux-*: DEFINES += HAVE_STDINT_H
 freebsd-*: DEFINES += HAVE_PTHREAD_NP_H
 
-DEFINES += USE_SYSTEM_MALLOC
-
-CONFIG(release) {
-    DEFINES += NDEBUG
-}
-
 # PRE-BUILD: make the required config.h file
 #config_h.target = config.h
 #config_h.commands = cp config.h.qmake config.h
@@ -39,9 +36,11 @@ DEFINES += BUILD_WEBKIT
 DEFINES += ENABLE_XPATH=1
 DEFINES += ENABLE_XSLT=1
 #DEFINES += ENABLE_XBL=1
-DEFINES += ENABLE_SVG=1
+qt-port:DEFINES += ENABLE_SVG=1
 
-DEFINES += WTF_CHANGES=1 BUILDING_QT__=1
+DEFINES += WTF_CHANGES=1
+gdk-port:PKGCONFIG += libcurl
+gdk-port:LIBS += $$system(icu-config --ldflags)
 
 include($$PWD/../JavaScriptCore/JavaScriptCore.pri)
 
@@ -53,26 +52,38 @@ macx {
     INCLUDEPATH += /usr/include/libxml2
     LIBS += -L/opt/local/lib -lxml2 -lxslt
 }
+qt-port:INCLUDEPATH += \
+                $$[QT_INSTALL_PREFIX]/src/3rdparty/sqlite/ \
+                $$PWD/platform/qt \
+                $$PWD/platform/network/qt \
+                $$PWD/platform/graphics/qt \
+                $$PWD/platform/graphics/svg/qt \
+                $$PWD/loader/qt \
+                $$PWD/page/qt \
+                $$PWD/../WebKitQt/WebCoreSupport \
+                $$PWD/../WebKitQt/Api
+
+gdk-port:INCLUDEPATH += \
+    $$PWD/platform/image-decoders/bmp \
+    $$PWD/platform/image-decoders/gif \
+    $$PWD/platform/image-decoders/ico \
+    $$PWD/platform/image-decoders/jpeg \
+    $$PWD/platform/image-decoders/png \
+    $$PWD/platform/image-decoders/xbm
 
 INCLUDEPATH +=  $$PWD \
-                $$[QT_INSTALL_PREFIX]/src/3rdparty/sqlite/ \
                 $$PWD/ForwardingHeaders \
                 $$PWD/../JavaScriptCore/kjs \
                 $$PWD/../JavaScriptCore/bindings \
                 $$PWD/platform \
-                $$PWD/platform/qt \
                 $$PWD/platform/network \
-                $$PWD/platform/network/qt \
                 $$PWD/platform/graphics \
-                $$PWD/platform/graphics/qt \
                 $$PWD/platform/graphics/svg \
-                $$PWD/platform/graphics/svg/qt \
                 $$PWD/platform/graphics/svg/filters \
-                $$PWD/loader $$PWD/loader/icon $$PWD/loader/qt \
+                $$PWD/loader $$PWD/loader/icon \
                 $$PWD/css \
                 $$PWD/dom \
                 $$PWD/page \
-                $$PWD/page/qt \
                 $$PWD/bridge \
                 $$PWD/editing \
                 $$PWD/rendering \
@@ -82,15 +93,13 @@ INCLUDEPATH +=  $$PWD \
                 $$PWD/bindings/js \
                 $$PWD/ksvg2 $$PWD/ksvg2/css $$PWD/ksvg2/svg $$PWD/ksvg2/misc $$PWD/ksvg2/events \
                 $$PWD/platform/image-decoders \
-                $$PWD/../WebKitQt/WebCoreSupport \
-                $$PWD/../WebKitQt/Api
+                $$PWD/../WebKitQt/WebCoreSupport
 QT += network
 LIBS += -lsqlite3
 
 
 FEATURE_DEFINES_JAVASCRIPT = LANGUAGE_JAVASCRIPT
 
-
 TOKENIZER = $$PWD/css/tokenizer.flex
 
 CSSBISON = $$PWD/css/CSSGrammar.y
@@ -113,7 +122,8 @@ SVGCSSVALUES = $$PWD/ksvg2/css/CSSValueKeywords.in
 
 STYLESHEETS_EMBED = $$PWD/css/html4.css
 
-MANUALMOC += \
+MANUALMOC =
+qt-port:MANUALMOC += \
     $$PWD/platform/network/qt/ResourceHandleManagerQt.h \
     $$PWD/platform/qt/QWebPopup.h \
     $$PWD/platform/qt/SharedTimerQt.h \
@@ -372,7 +382,6 @@ SOURCES += \
     editing/MergeIdenticalElementsCommand.cpp \
     editing/ModifySelectionListLevel.cpp \
     editing/MoveSelectionCommand.cpp \
-    editing/qt/EditorQt.cpp \
     editing/RemoveCSSPropertyCommand.cpp \
     editing/RemoveNodeAttributeCommand.cpp \
     editing/RemoveNodeCommand.cpp \
@@ -394,7 +403,6 @@ SOURCES += \
     history/CachedPage.cpp \
     history/HistoryItem.cpp \
     history/HistoryItemTimer.cpp \
-    history/qt/CachedPageQt.cpp \
     html/CanvasGradient.cpp \
     html/CanvasPattern.cpp \
     html/CanvasRenderingContext2D.cpp \
@@ -503,7 +511,6 @@ SOURCES += \
     loader/NetscapePlugInStreamLoader.cpp \
     loader/PluginDocument.cpp \
     loader/ProgressTracker.cpp \
-    loader/qt/DocumentLoaderQt.cpp \
     loader/Request.cpp \
     loader/ResourceLoader.cpp \
     loader/SubresourceLoader.cpp \
@@ -520,9 +527,6 @@ SOURCES += \
     page/FrameView.cpp \
     page/MouseEventWithHitTestResults.cpp \
     page/Page.cpp \
-    page/qt/DragControllerQt.cpp \
-    page/qt/EventHandlerQt.cpp \
-    page/qt/FrameQt.cpp \
     page/Settings.cpp \
     platform/Arena.cpp \
     platform/ArrayImpl.cpp \
@@ -560,20 +564,6 @@ SOURCES += \
     platform/graphics/Path.cpp \
     platform/graphics/PathTraversalState.cpp \
     platform/graphics/Pen.cpp \
-    platform/graphics/qt/AffineTransformQt.cpp \
-    platform/graphics/qt/ColorQt.cpp \
-    platform/graphics/qt/FloatPointQt.cpp \
-    platform/graphics/qt/FloatRectQt.cpp \
-    platform/graphics/qt/GraphicsContextQt.cpp \
-    platform/graphics/qt/IconQt.cpp \
-    platform/graphics/qt/ImageBufferQt.cpp \
-    platform/graphics/qt/ImageDecoderQt.cpp \
-    platform/graphics/qt/ImageQt.cpp \
-    platform/graphics/qt/ImageSourceQt.cpp \
-    platform/graphics/qt/IntPointQt.cpp \
-    platform/graphics/qt/IntRectQt.cpp \
-    platform/graphics/qt/IntSizeQt.cpp \
-    platform/graphics/qt/PathQt.cpp \
     platform/KURL.cpp \
     platform/Logging.cpp \
     platform/MimeTypeRegistry.cpp \
@@ -582,45 +572,9 @@ SOURCES += \
     platform/network/FormData.cpp \
     platform/network/HTTPParsers.cpp \
     platform/network/ProtectionSpace.cpp \
-    platform/network/qt/ResourceHandleManagerQt.cpp \
-    platform/network/qt/ResourceHandleQt.cpp \
     platform/network/ResourceHandle.cpp \
     platform/network/ResourceRequest.cpp \
     platform/network/ResourceResponse.cpp \
-    platform/qt/ClipboardQt.cpp \
-    platform/qt/ContextMenuItemQt.cpp \
-    platform/qt/ContextMenuQt.cpp \
-    platform/qt/CookieJarQt.cpp \
-    platform/qt/CursorQt.cpp \
-    platform/qt/DragDataQt.cpp \
-    platform/qt/DragImageQt.cpp \
-    platform/qt/FileChooserQt.cpp \
-    platform/qt/FontCacheQt.cpp \
-    platform/qt/FontDataQt.cpp \
-    platform/qt/FontPlatformDataQt.cpp \
-    platform/qt/FontQt.cpp \
-    platform/qt/GlyphPageTreeNodeQt.cpp \
-    platform/qt/MimeTypeRegistryQt.cpp \
-    platform/qt/PasteboardQt.cpp \
-    platform/qt/PlatformKeyboardEventQt.cpp \
-    platform/qt/PlatformMouseEventQt.cpp \
-    platform/qt/PlatformScrollBarQt.cpp \
-    platform/qt/PopupMenuQt.cpp \
-    platform/qt/QWebPopup.cpp \
-    platform/qt/RenderThemeQt.cpp \
-    platform/qt/ScreenQt.cpp \
-    platform/qt/ScrollViewQt.cpp \
-    platform/qt/SearchPopupMenuQt.cpp \
-    platform/qt/SharedTimerQt.cpp \
-    platform/qt/SoundQt.cpp \
-    platform/qt/StringQt.cpp \
-    platform/qt/SystemTimeQt.cpp \
-    platform/qt/TemporaryLinkStubs.cpp \
-    platform/qt/TextBoundaries.cpp \
-    platform/qt/TextBreakIteratorQt.cpp \
-    platform/qt/TextCodecQt.cpp \
-    platform/qt/WheelEventQt.cpp \
-    platform/qt/WidgetQt.cpp \
     platform/RegularExpression.cpp \
     platform/ScrollBar.cpp \
 #    platform/SearchPopupMenu.cpp \
@@ -713,7 +667,65 @@ SOURCES += \
     xml/XPathVariableReference.cpp \
     xml/XSLImportRule.cpp \
     xml/XSLStyleSheet.cpp \
-    xml/XSLTProcessor.cpp \
+    xml/XSLTProcessor.cpp
+
+qt-port:SOURCES += \
+    page/qt/DragControllerQt.cpp \
+    page/qt/EventHandlerQt.cpp \
+    page/qt/FrameQt.cpp \
+    loader/qt/DocumentLoaderQt.cpp \
+    platform/graphics/qt/AffineTransformQt.cpp \
+    platform/graphics/qt/ColorQt.cpp \
+    platform/graphics/qt/FloatPointQt.cpp \
+    platform/graphics/qt/FloatRectQt.cpp \
+    platform/graphics/qt/GraphicsContextQt.cpp \
+    platform/graphics/qt/IconQt.cpp \
+    platform/graphics/qt/ImageBufferQt.cpp \
+    platform/graphics/qt/ImageDecoderQt.cpp \
+    platform/graphics/qt/ImageQt.cpp \
+    platform/graphics/qt/ImageSourceQt.cpp \
+    platform/graphics/qt/IntPointQt.cpp \
+    platform/graphics/qt/IntRectQt.cpp \
+    platform/graphics/qt/IntSizeQt.cpp \
+    platform/graphics/qt/PathQt.cpp \
+    platform/network/qt/ResourceHandleManagerQt.cpp \
+    platform/network/qt/ResourceHandleQt.cpp \
+    editing/qt/EditorQt.cpp \
+    history/qt/CachedPageQt.cpp \
+    platform/qt/ClipboardQt.cpp \
+    platform/qt/ContextMenuItemQt.cpp \
+    platform/qt/ContextMenuQt.cpp \
+    platform/qt/CookieJarQt.cpp \
+    platform/qt/CursorQt.cpp \
+    platform/qt/DragDataQt.cpp \
+    platform/qt/DragImageQt.cpp \
+    platform/qt/FileChooserQt.cpp \
+    platform/qt/FontCacheQt.cpp \
+    platform/qt/FontDataQt.cpp \
+    platform/qt/FontPlatformDataQt.cpp \
+    platform/qt/FontQt.cpp \
+    platform/qt/GlyphPageTreeNodeQt.cpp \
+    platform/qt/MimeTypeRegistryQt.cpp \
+    platform/qt/PasteboardQt.cpp \
+    platform/qt/PlatformKeyboardEventQt.cpp \
+    platform/qt/PlatformMouseEventQt.cpp \
+    platform/qt/PlatformScrollBarQt.cpp \
+    platform/qt/PopupMenuQt.cpp \
+    platform/qt/QWebPopup.cpp \
+    platform/qt/RenderThemeQt.cpp \
+    platform/qt/ScreenQt.cpp \
+    platform/qt/ScrollViewQt.cpp \
+    platform/qt/SearchPopupMenuQt.cpp \
+    platform/qt/SharedTimerQt.cpp \
+    platform/qt/SoundQt.cpp \
+    platform/qt/StringQt.cpp \
+    platform/qt/SystemTimeQt.cpp \
+    platform/qt/TemporaryLinkStubs.cpp \
+    platform/qt/TextBoundaries.cpp \
+    platform/qt/TextBreakIteratorQt.cpp \
+    platform/qt/TextCodecQt.cpp \
+    platform/qt/WheelEventQt.cpp \
+    platform/qt/WidgetQt.cpp \
     ../WebKitQt/WebCoreSupport/ChromeClientQt.cpp \
     ../WebKitQt/WebCoreSupport/ContextMenuClientQt.cpp \
     ../WebKitQt/WebCoreSupport/DragClientQt.cpp \
@@ -725,6 +737,100 @@ SOURCES += \
     ../WebKitQt/Api/qwebpage.cpp \
     ../WebKitQt/Api/qwebpagehistory.cpp
 
+gdk-port:SOURCES += \
+        platform/TextCodecICU.cpp \
+        platform/TextBreakIteratorICU.cpp \
+        page/gdk/EventHandlerGdk.cpp \
+        page/gdk/ContextMenuClientGdk.cpp \
+        page/gdk/DragControllerGdk.cpp \
+        loader/gdk/DocumentLoaderGdk.cpp \
+        loader/gdk/FrameLoaderClientGdk.cpp \
+        platform/gdk/CookieJarGdk.cpp \
+        platform/gdk/CursorGdk.cpp \
+        platform/gdk/DragDataGdk.cpp \
+        platform/gdk/DragImageGdk.cpp \
+        platform/gdk/EditorClientGdk.cpp \
+        platform/gdk/FontCacheGdk.cpp \
+        platform/gdk/FontDataGdk.cpp \
+        platform/gdk/FontGdk.cpp \
+        platform/gdk/FontPlatformDataGdk.cpp \
+        platform/gdk/FrameGdk.cpp \
+        platform/gdk/GlyphPageTreeNodeGdk.cpp \
+        platform/gdk/KeyEventGdk.cpp \
+        platform/gdk/MimeTypeRegistryGdk.cpp \
+        platform/gdk/MouseEventGdk.cpp \
+        platform/gdk/PopupMenuGdk.cpp \
+        platform/gdk/RenderThemeGdk.cpp \
+        platform/gdk/ScrollViewGdk.cpp \
+        platform/gdk/ScreenGdk.cpp \
+        platform/gdk/SharedTimerLinux.cpp \
+        platform/gdk/SystemTimeLinux.cpp \
+        platform/gdk/TemporaryLinkStubs.cpp \
+        platform/gdk/WheelEventGdk.cpp \
+        platform/gdk/WidgetGdk.cpp \
+        platform/graphics/gdk/ImageGdk.cpp \
+        platform/network/gdk/ResourceHandleCurl.cpp \
+        platform/network/gdk/ResourceHandleManager.cpp \
+        platform/graphics/cairo/AffineTransformCairo.cpp \
+        platform/graphics/cairo/GraphicsContextCairo.cpp \
+        platform/graphics/cairo/ImageCairo.cpp \
+        platform/graphics/cairo/ImageSourceCairo.cpp \
+        platform/graphics/cairo/PathCairo.cpp \
+        platform/image-decoders/gif/GIFImageDecoder.cpp \
+        platform/image-decoders/gif/GIFImageReader.cpp  \
+        platform/image-decoders/png/PNGImageDecoder.cpp \
+        platform/image-decoders/png/png.c \
+        platform/image-decoders/png/pngerror.c \
+        platform/image-decoders/png/pnggccrd.c \
+        platform/image-decoders/png/pngget.c \
+        platform/image-decoders/png/pngmem.c \
+        platform/image-decoders/png/pngpread.c \
+        platform/image-decoders/png/pngread.c \
+        platform/image-decoders/png/pngrio.c \
+        platform/image-decoders/png/pngrtran.c \
+        platform/image-decoders/png/pngrutil.c \
+        platform/image-decoders/png/pngset.c \
+        platform/image-decoders/png/pngtrans.c \
+        platform/image-decoders/png/pngvcrd.c \
+        platform/image-decoders/png/pngwio.c \
+        platform/image-decoders/png/pngwrite.c \
+        platform/image-decoders/png/pngwtran.c \
+        platform/image-decoders/png/pngwutil.c \
+        platform/image-decoders/jpeg/JPEGImageDecoder.cpp \
+        platform/image-decoders/jpeg/jcomapi.c \
+        platform/image-decoders/jpeg/jdapimin.c \
+        platform/image-decoders/jpeg/jdapistd.c \
+        platform/image-decoders/jpeg/jdatadst.c \
+        platform/image-decoders/jpeg/jdatasrc.c \
+        platform/image-decoders/jpeg/jdcoefct.c \
+        platform/image-decoders/jpeg/jdcolor.c \
+        platform/image-decoders/jpeg/jddctmgr.c \
+        platform/image-decoders/jpeg/jdhuff.c \
+        platform/image-decoders/jpeg/jdinput.c \
+        platform/image-decoders/jpeg/jdmainct.c \
+        platform/image-decoders/jpeg/jdmarker.c \
+        platform/image-decoders/jpeg/jdmaster.c \
+        platform/image-decoders/jpeg/jdmerge.c \
+        platform/image-decoders/jpeg/jdphuff.c \
+        platform/image-decoders/jpeg/jdpostct.c \
+        platform/image-decoders/jpeg/jdsample.c \
+        platform/image-decoders/jpeg/jerror.c \
+        platform/image-decoders/jpeg/jfdctflt.c \
+        platform/image-decoders/jpeg/jfdctfst.c \
+        platform/image-decoders/jpeg/jfdctint.c \
+        platform/image-decoders/jpeg/jidctflt.c \
+        platform/image-decoders/jpeg/jidctfst.c \
+        platform/image-decoders/jpeg/jidctint.c \
+        platform/image-decoders/jpeg/jmemmgr.c \
+        platform/image-decoders/jpeg/jmemnobs.c \
+        platform/image-decoders/jpeg/jquant1.c \
+        platform/image-decoders/jpeg/jquant2.c \
+        platform/image-decoders/jpeg/jutils.c \
+        platform/image-decoders/bmp/BMPImageDecoder.cpp \
+        platform/image-decoders/ico/ICOImageDecoder.cpp \
+        platform/image-decoders/xbm/XBMImageDecoder.cpp
+
 contains(DEFINES, ENABLE_XPATH=1) {
     FEATURE_DEFINES_JAVASCRIPT += ENABLE_XPATH
 
@@ -1024,16 +1130,6 @@ contains(DEFINES, ENABLE_SVG=1) {
         platform/graphics/svg/filters/SVGFETurbulence.cpp \
         platform/graphics/svg/filters/SVGFilterEffect.cpp \
         platform/graphics/svg/filters/SVGLightSource.cpp \
-        platform/graphics/svg/qt/RenderPathQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp \
-        platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp \
-        platform/graphics/svg/qt/SVGResourceClipperQt.cpp \
-        platform/graphics/svg/qt/SVGResourceFilterQt.cpp \
-        platform/graphics/svg/qt/SVGResourceMaskerQt.cpp \
         platform/graphics/svg/SVGImage.cpp \
         platform/graphics/svg/SVGPaintServer.cpp \
         platform/graphics/svg/SVGPaintServerGradient.cpp \
@@ -1061,6 +1157,18 @@ contains(DEFINES, ENABLE_SVG=1) {
         rendering/SVGInlineTextBox.cpp \
         rendering/SVGRootInlineBox.cpp
 
+qt-port:SOURCES += \
+        platform/graphics/svg/qt/RenderPathQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp \
+        platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp \
+        platform/graphics/svg/qt/SVGResourceClipperQt.cpp \
+        platform/graphics/svg/qt/SVGResourceFilterQt.cpp \
+        platform/graphics/svg/qt/SVGResourceMaskerQt.cpp
+
         # GENERATOR 5-C:
         svgnames_a.output = tmp/SVGNames.cpp
         svgnames_a.commands = perl $$PWD/ksvg2/scripts/make_names.pl --tags $$PWD/ksvg2/svg/svgtags.in --attrs $$PWD/ksvg2/svg/svgattrs.in --namespace SVG --cppNamespace WebCore --namespaceURI 'http://www.w3.org/2000/svg' --factory --attrsNullNamespace --output tmp
index 42dba45..f027b06 100644 (file)
@@ -1,12 +1,52 @@
 # Include file to make it easy to include WebKit into Qt projects
 
-INCLUDEPATH += $$PWD/WebKitQt/Api 
-
-DEFINES += BUILDING_QT__=1
 
 isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD/WebKitBuild/Release
 
-LIBS += -L$$OUTPUT_DIR/lib -lWebKitQt
+!gdk-port:CONFIG += qt-port
+qt-port:DEFINES += BUILDING_QT__=1
+qt-port:LIBS += -L$$OUTPUT_DIR/lib -lWebKitQt
+gdk-port:CONFIG += link_pkgconfig
+gdk-port:PKGCONFIG += cairo gdk-2.0 gtk+-2.0
+gdk-port:DEFINES += BUILDING_GDK__=1 BUILDING_CAIRO__
+gdk-port:LIBS += -L$$OUTPUT_DIR/lib -lWebKitGdk
+
+DEFINES += USE_SYSTEM_MALLOC
+CONFIG(release) {
+    DEFINES += NDEBUG
+}
+
+BASE_DIR = $$PWD
+qt-port:INCLUDEPATH += \
+    $$PWD/WebKitQt/Api
+gdk-port:INCLUDEPATH += \
+    $$BASE_DIR/WebCore/platform/gdk \
+    $$BASE_DIR/WebCore/platform/network/gdk \
+    $$BASE_DIR/WebCore/platform/graphics/cairo \
+    $$BASE_DIR/WebCore/loader/gdk \
+    $$BASE_DIR/WebCore/page/gdk
+INCLUDEPATH += \
+    $$BASE_DIR/JavaScriptCore/ \
+    $$BASE_DIR/JavaScriptCore/kjs \
+    $$BASE_DIR/JavaScriptCore/bindings \
+    $$BASE_DIR/JavaScriptCore/bindings/c \
+    $$BASE_DIR/JavaScriptCore/wtf \
+    $$BASE_DIR/WebCore \
+    $$BASE_DIR/WebCore/ForwardingHeaders \
+    $$BASE_DIR/WebCore/platform \
+    $$BASE_DIR/WebCore/platform/network \
+    $$BASE_DIR/WebCore/platform/graphics \
+    $$BASE_DIR/WebCore/loader \
+    $$BASE_DIR/WebCore/page \
+    $$BASE_DIR/WebCore/css \
+    $$BASE_DIR/WebCore/dom \
+    $$BASE_DIR/WebCore/bridge \
+    $$BASE_DIR/WebCore/editing \
+    $$BASE_DIR/WebCore/rendering \
+    $$BASE_DIR/WebCore/history \
+    $$BASE_DIR/WebCore/xml \
+    $$BASE_DIR/WebCore/html
+
 
 macx {
        INCLUDEPATH += /opt/local/include /opt/local/include/libxml2
index 605cccc..45c35a3 100644 (file)
@@ -1,7 +1,12 @@
 TEMPLATE = subdirs
 CONFIG += ordered
+!gdk-port:CONFIG += qt-port
 SUBDIRS = \
-        WebCore \
+        WebCore
+
+qt-port:SUBDIRS += \
         WebKitQt/QtLauncher \
         WebKitTools/DumpRenderTree/DumpRenderTree.qtproj/DumpRenderTree.pro \
         JavaScriptCore/kjs/testkjs.pro
+gdk-port:SUBDIRS += \
+        WebKitTools/GdkLauncher
index a667099..b66d833 100644 (file)
@@ -1,3 +1,13 @@
+2007-05-03  Holger Freyther <freyther@kde.org>
+
+        Reviewed by Zack, landed by Simon.
+        This is bugzilla bug 13499.
+
+        * GdkLauncher/GdkLauncher.pro: Build the GdkLauncher using qmake
+        * GdkLauncher/main.cpp: We don't have a config.h with the qmake build
+        * Scripts/build-webkit: Add --gdk for the Gdk port
+        * Scripts/webkitdirs.pm: Add helper methods for the Gdk port
+
 2007-05-03  Geoffrey Garen  <ggaren@apple.com>
 
         Build fix: Add AllInOneFile.o to the ignore list, since it includes files
diff --git a/WebKitTools/GdkLauncher/GdkLauncher.pro b/WebKitTools/GdkLauncher/GdkLauncher.pro
new file mode 100644 (file)
index 0000000..5ccc962
--- /dev/null
@@ -0,0 +1,9 @@
+TEMPLATE = app
+SOURCES += main.cpp
+
+BASE_DIR = $$PWD/../..
+
+include(../../WebKit.pri)
+
+
+QMAKE_RPATHDIR += $$OUTPUT_DIR/lib
index a27b79f..ef532e1 100644 (file)
@@ -1,4 +1,7 @@
+#ifdef HAVE_CONFIG_H
 #include "config.h"
+#endif
+#include "Platform.h"
 #include "ChromeClientGdk.h"
 #include "ContextMenuClientGdk.h"
 #include "Document.h"
index 41c90b1..2e4b3e9 100755 (executable)
@@ -100,7 +100,14 @@ removeLibraryDependingOnSVG("WebCore", $svgSupport);
 for my $dir (@projects) {
     chdir $dir or die;
     my $result = 0;
-    if (isQt()) {
+    if (isGdk()) {
+        if ($dir ne "WebKit") {
+            chdir ".." or die;
+            next;
+        }
+
+        $result = buildQMakeGdkProject($dir, $colorSupport);
+    } elsif (isQt()) {
         if ($dir ne "WebKit") {
             chdir ".." or die;
             next;
index dae542e..088fca5 100644 (file)
@@ -274,7 +274,7 @@ sub builtDylibPathForName
 {
     my $framework = shift;
     determineConfigurationProductDir();
-    if (isQt()) {
+    if (isQt() or isGdk()) {
         return "$configurationProductDir/$framework";
     }
     if (isOSX()) {
@@ -308,10 +308,14 @@ sub hasSVGSupport
 
     my $path = shift;
 
-    if ((isQt()) and ($path =~ /WebCore/)) {
+    if (isQt() and $path =~ /WebCore/) {
         $path .= "/../lib/libWebKitQt.so";
     }
 
+    if (isGdk() and $path =~ /WebCore/) {
+        $path .= "/../lib/libWebKitGdk.so";
+    }
+
     open NM, "-|", "nm", $path or die;
     my $hasSVGSupport = 0;
     while (<NM>) {
@@ -350,6 +354,17 @@ sub isQt()
     return defined($ENV{'QTDIR'})
 }
 
+sub isGdk()
+{
+    for my $i (0 .. $#ARGV) {
+        my $opt = $ARGV[$i];
+        if ($opt =~ /^--gdk$/i ) {
+            return 1;
+        }
+    }
+    return 0;
+}
+
 sub isCygwin()
 {
     return ($^O eq "cygwin");
@@ -447,6 +462,7 @@ sub buildQMakeProject($$)
 
     my @buildArgs = ("-r");
     push @buildArgs, "OUTPUT_DIR=" . baseProductDir() . "/$config";
+    push @buildArgs, "CONFIG+=qt-port";
     push @buildArgs, sourceDir() . "/WebKit.pro";
 
     print "Calling 'qmake @buildArgs' in " . baseProductDir() . "/$config ...\n\n";
@@ -471,4 +487,44 @@ sub buildQMakeProject($$)
     return $result;
 }
 
+sub buildQMakeGdkProject($$)
+{
+    my ($project, $colorize) = @_;
+
+    if ($project ne "WebKit") {
+        die "The Gdk portbuilds JavaScriptCore/WebCore/WebKitQt in one shot! Only call it for 'WebKit'.\n";
+    }
+
+    my $config = configuration();
+    my $prefix = $ENV{"WebKitInstallationPrefix"};
+
+    my @buildArgs = ("-r");
+    push @buildArgs, "OUTPUT_DIR=" . baseProductDir() . "/$config";
+    push @buildArgs, "CONFIG-=qt";
+    push @buildArgs, "CONFIG+=gdk-port";
+    push @buildArgs, sourceDir() . "/WebKit.pro";
+
+    print "Calling 'qmake @buildArgs' in " . baseProductDir() . "/$config ...\n\n";
+    print "Installation directory: $prefix\n" if(defined($prefix));
+
+    system "mkdir -p " . baseProductDir() . "/$config";
+    chdir baseProductDir() . "/$config" or die "Failed to cd into " . baseProductDir() . "/$config \n";
+
+    my $result = system "qmake-qt4", @buildArgs;
+    $result =  system "qmake", @buildArgs if ($result ne 0);
+    if ($result ne 0) {
+       die "Failed to setup build environment using qmake!\n";
+    }
+
+    my $clean = $ENV{"WEBKIT_FULLBUILD"};
+
+    if (defined $clean) {
+      system "make clean";
+    }
+
+    $result = system "make";
+    chdir ".." or die;
+    return $result;
+}
+
 1;