- diff --git i/Source/api.pri w/Source/api.pri
- index d22d43c..6b23ea4 100644
- --- i/Source/api.pri
- +++ w/Source/api.pri
- @@ -4,10 +4,24 @@
- # See 'Tools/qmake/README' for an overview of the build system
- # -------------------------------------------------------------------
- -TEMPLATE = lib
- TARGET = QtWebKit
- -DESTDIR = $${ROOT_BUILD_DIR}/lib
- +haveQt(5) {
- + # Use Qt5's module system
- + load(qt_module)
- + MODULE = webkit
- + MODULE_PRI = $$QT.webkit.module_pri
- + CONFIG += module
- + load(qt_module_config)
- +
- + message(TARGET=$$TARGET)
- + message(DESTDIR=$$DESTDIR)
- +
- + # FIXME: Copy libraries back to lib as well, since our own tools use rpath
- + # new makefile rule to QMAKE_COPY $$DESTDIR/$$QT.webkit.name* (or libs)
- +} else {
- + DESTDIR = $${ROOT_BUILD_DIR}/lib
- +}
- runSyncQt() # Generate forwarding headers for the QtWebKit API
- @@ -169,55 +183,53 @@ contains(CONFIG, texmap) {
- DEFINES += WTF_USE_TEXTURE_MAPPER=1
- }
- +plugin_backend_xlib: PKGCONFIG += x11
- # ------------- Install rules -------------
- -modulefile.files = $$QT.webkit.modulefile
- -mkspecs = $$[QMAKE_MKSPECS]
- -mkspecs = $$split(mkspecs, :)
- -modulefile.path = $$last(mkspecs)/modules
- -INSTALLS += modulefile
- -
- -# Syncqt has already run at this point, so we can use headers.pri
- -# as a basis for our install-rules
- -HEADERS_PRI = $${ROOT_BUILD_DIR}/include/$$TARGET/headers.pri
- -!include($$HEADERS_PRI): error(Failed to resolve install headers)
- -
- -headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.HEADER_CLASSES
- -!isEmpty(INSTALL_HEADERS): headers.path = $$INSTALL_HEADERS/$${TARGET}
- -else: headers.path = $$[QT_INSTALL_HEADERS]/$${TARGET}
- -INSTALLS += headers
- -
- -!isEmpty(INSTALL_LIBS): target.path = $$INSTALL_LIBS
- -else: target.path = $$[QT_INSTALL_LIBS]
- -INSTALLS += target
- -
- -unix {
- - CONFIG += create_pc create_prl
- - QMAKE_PKGCONFIG_LIBDIR = $$target.path
- - QMAKE_PKGCONFIG_INCDIR = $$headers.path
- - QMAKE_PKGCONFIG_DESTDIR = pkgconfig
- - lib_replace.match = $$re_escape($$DESTDIR)
- - lib_replace.replace = $$[QT_INSTALL_LIBS]
- - QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
- -}
- +haveQt(5) {
- + # Install rules handled by Qt's module system
- +} else {
- + # For Qt4 we have to set up install rules manually
- +
- + # Syncqt has already run at this point, so we can use headers.pri
- + # as a basis for our install-rules
- + HEADERS_PRI = $${ROOT_BUILD_DIR}/include/$${QT.webkit.name}/headers.pri
- + !include($$HEADERS_PRI): error(Failed to resolve install headers)
- +
- + headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.HEADER_CLASSES
- + !isEmpty(INSTALL_HEADERS): headers.path = $$INSTALL_HEADERS/$${TARGET}
- + else: headers.path = $$[QT_INSTALL_HEADERS]/$${TARGET}
- + INSTALLS += headers
- +
- + !isEmpty(INSTALL_LIBS): target.path = $$INSTALL_LIBS
- + else: target.path = $$[QT_INSTALL_LIBS]
- + INSTALLS += target
- +
- + unix {
- + CONFIG += create_pc create_prl
- + QMAKE_PKGCONFIG_LIBDIR = $$target.path
- + QMAKE_PKGCONFIG_INCDIR = $$headers.path
- + QMAKE_PKGCONFIG_DESTDIR = pkgconfig
- + lib_replace.match = $$re_escape($$DESTDIR)
- + lib_replace.replace = $$[QT_INSTALL_LIBS]
- + QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
- + }
- -mac {
- - !static:contains(QT_CONFIG, qt_framework) {
- - # Build QtWebKit as a framework, to match how Qt was built
- - CONFIG += lib_bundle qt_no_framework_direct_includes qt_framework
- -
- - # For debug_and_release configs, only copy headers in release
- - !debug_and_release|if(build_pass:CONFIG(release, debug|release)) {
- - FRAMEWORK_HEADERS.version = Versions
- - FRAMEWORK_HEADERS.files = $${headers.files}
- - FRAMEWORK_HEADERS.path = Headers
- - QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS
- + mac {
- + !static:contains(QT_CONFIG, qt_framework) {
- + # Build QtWebKit as a framework, to match how Qt was built
- + CONFIG += lib_bundle qt_no_framework_direct_includes qt_framework
- +
- + # For debug_and_release configs, only copy headers in release
- + !debug_and_release|if(build_pass:CONFIG(release, debug|release)) {
- + FRAMEWORK_HEADERS.version = Versions
- + FRAMEWORK_HEADERS.files = $${headers.files}
- + FRAMEWORK_HEADERS.path = Headers
- + QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS
- + }
- }
- - }
- - QMAKE_LFLAGS_SONAME = "$${QMAKE_LFLAGS_SONAME}$${DESTDIR}$${QMAKE_DIR_SEP}"
- + QMAKE_LFLAGS_SONAME = "$${QMAKE_LFLAGS_SONAME}$${DESTDIR}$${QMAKE_DIR_SEP}"
- + }
- }
- -
- -plugin_backend_xlib: PKGCONFIG += x11
- -
- diff --git i/Source/sync.profile w/Source/sync.profile
- index 6cbcef3..246b5c1 100644
- --- i/Source/sync.profile
- +++ w/Source/sync.profile
- @@ -13,6 +13,6 @@
- "script" => "#include <QtScript/QtScript>\n",
- );
- %modulepris = (
- - "QtWebKit" => "$basedir/../Tools/qmake/mkspecs/modules/qt_webkit.pri",
- + "QtWebKit" => "$basedir/../Tools/qmake/qt_webkit.pri",
- );
- @ignore_for_master_contents = ( "qwebscriptworld.h", "testwindow.h", "util.h" );
- diff --git i/Tools/qmake/mkspecs/features/default_post.prf w/Tools/qmake/mkspecs/features/default_post.prf
- index b5d879e..53357c9 100644
- --- i/Tools/qmake/mkspecs/features/default_post.prf
- +++ w/Tools/qmake/mkspecs/features/default_post.prf
- @@ -188,7 +188,7 @@ contains(TEMPLATE, lib) {
- mac: CONFIG += build_all
- # Prevent name clashes when building both debug and release
- - debug_and_release: TARGET = $$qtLibraryTarget($$TARGET)
- + !module:debug_and_release: TARGET = $$qtLibraryTarget($$TARGET)
- isEmpty(DESTDIR): DESTDIR = $$activeBuildConfig()
- diff --git i/Tools/qmake/mkspecs/features/default_pre.prf w/Tools/qmake/mkspecs/features/default_pre.prf
- index 776728d..a30e0bb 100644
- --- i/Tools/qmake/mkspecs/features/default_pre.prf
- +++ w/Tools/qmake/mkspecs/features/default_pre.prf
- @@ -95,9 +95,5 @@ haveQt(5): {
- }
- }
- -QT.webkit.modulefile = $${ROOT_WEBKIT_DIR}/Tools/qmake/mkspecs/modules/qt_webkit.pri
- -include($$QT.webkit.modulefile)
- -VERSION = $${QT.webkit.VERSION}
- -
- # Set some defaults for specific platforms
- CONFIG += include_webinspector
- diff --git i/Tools/qmake/mkspecs/modules/qt_webkit.pri w/Tools/qmake/mkspecs/modules/qt_webkit.pri
- deleted file mode 100644
- index a4cf684..0000000
- --- i/Tools/qmake/mkspecs/modules/qt_webkit.pri
- +++ /dev/null
- @@ -1,24 +0,0 @@
- -QT.webkit.VERSION = 4.10.0
- -QT.webkit.MAJOR_VERSION = 4
- -QT.webkit.MINOR_VERSION = 10
- -QT.webkit.PATCH_VERSION = 0
- -
- -QT.webkit.name = QtWebKit
- -QT.webkit.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtWebKit
- -QT.webkit.private_includes = $$QT_MODULE_INCLUDE_BASE/$$QT.webkit.name/$$QT.webkit.VERSION
- -QT.webkit.sources = $$QT_MODULE_BASE
- -QT.webkit.libs = $$QT_MODULE_LIB_BASE
- -QT.webkit.depends = core gui opengl network xmlpatterns script
- -
- -!contains(QT_CONFIG, modular)|contains(QT_ELIGIBLE_MODULES, webkit) {
- - QT_CONFIG += webkit
- -} else {
- - warning("Attempted to include $$QT.webkit.name in the build, but it was not enabled in configure.")
- -}
- -
- -# This is the old syntax for the WebKit version defines.
- -# We keep them around in case someone was using them.
- -QT_WEBKIT_VERSION = $$QT.webkit.VERSION
- -QT_WEBKIT_MAJOR_VERSION = $$QT.webkit.MAJOR_VERSION
- -QT_WEBKIT_MINOR_VERSION = $$QT.webkit.MINOR_VERSION
- -QT_WEBKIT_PATCH_VERSION = $$QT.webkit.PATCH_VERSION