Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 20th, 2012  |  syntax: None  |  size: 7.20 KB  |  hits: 9  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. diff --git i/Source/api.pri w/Source/api.pri
  2. index d22d43c..6b23ea4 100644
  3. --- i/Source/api.pri
  4. +++ w/Source/api.pri
  5. @@ -4,10 +4,24 @@
  6.  # See 'Tools/qmake/README' for an overview of the build system
  7.  # -------------------------------------------------------------------
  8.  
  9. -TEMPLATE = lib
  10.  TARGET = QtWebKit
  11.  
  12. -DESTDIR = $${ROOT_BUILD_DIR}/lib
  13. +haveQt(5) {
  14. +    # Use Qt5's module system
  15. +    load(qt_module)
  16. +    MODULE = webkit
  17. +    MODULE_PRI = $$QT.webkit.module_pri
  18. +    CONFIG += module
  19. +    load(qt_module_config)
  20. +
  21. +    message(TARGET=$$TARGET)
  22. +    message(DESTDIR=$$DESTDIR)
  23. +
  24. +    # FIXME: Copy libraries back to lib as well, since our own tools use rpath
  25. +    # new makefile rule to QMAKE_COPY $$DESTDIR/$$QT.webkit.name* (or libs)
  26. +} else {
  27. +    DESTDIR = $${ROOT_BUILD_DIR}/lib
  28. +}
  29.  
  30.  runSyncQt() # Generate forwarding headers for the QtWebKit API
  31.  
  32. @@ -169,55 +183,53 @@ contains(CONFIG, texmap) {
  33.      DEFINES += WTF_USE_TEXTURE_MAPPER=1
  34.  }
  35.  
  36. +plugin_backend_xlib: PKGCONFIG += x11
  37.  
  38.  # ------------- Install rules -------------
  39.  
  40. -modulefile.files = $$QT.webkit.modulefile
  41. -mkspecs = $$[QMAKE_MKSPECS]
  42. -mkspecs = $$split(mkspecs, :)
  43. -modulefile.path = $$last(mkspecs)/modules
  44. -INSTALLS += modulefile
  45. -
  46. -# Syncqt has already run at this point, so we can use headers.pri
  47. -# as a basis for our install-rules
  48. -HEADERS_PRI = $${ROOT_BUILD_DIR}/include/$$TARGET/headers.pri
  49. -!include($$HEADERS_PRI): error(Failed to resolve install headers)
  50. -
  51. -headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.HEADER_CLASSES
  52. -!isEmpty(INSTALL_HEADERS): headers.path = $$INSTALL_HEADERS/$${TARGET}
  53. -else: headers.path = $$[QT_INSTALL_HEADERS]/$${TARGET}
  54. -INSTALLS += headers
  55. -
  56. -!isEmpty(INSTALL_LIBS): target.path = $$INSTALL_LIBS
  57. -else: target.path = $$[QT_INSTALL_LIBS]
  58. -INSTALLS += target
  59. -
  60. -unix {
  61. -    CONFIG += create_pc create_prl
  62. -    QMAKE_PKGCONFIG_LIBDIR = $$target.path
  63. -    QMAKE_PKGCONFIG_INCDIR = $$headers.path
  64. -    QMAKE_PKGCONFIG_DESTDIR = pkgconfig
  65. -    lib_replace.match = $$re_escape($$DESTDIR)
  66. -    lib_replace.replace = $$[QT_INSTALL_LIBS]
  67. -    QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
  68. -}
  69. +haveQt(5) {
  70. +    # Install rules handled by Qt's module system
  71. +} else {
  72. +    # For Qt4 we have to set up install rules manually
  73. +
  74. +    # Syncqt has already run at this point, so we can use headers.pri
  75. +    # as a basis for our install-rules
  76. +    HEADERS_PRI = $${ROOT_BUILD_DIR}/include/$${QT.webkit.name}/headers.pri
  77. +    !include($$HEADERS_PRI): error(Failed to resolve install headers)
  78. +
  79. +    headers.files = $$SYNCQT.HEADER_FILES $$SYNCQT.HEADER_CLASSES
  80. +    !isEmpty(INSTALL_HEADERS): headers.path = $$INSTALL_HEADERS/$${TARGET}
  81. +    else: headers.path = $$[QT_INSTALL_HEADERS]/$${TARGET}
  82. +    INSTALLS += headers
  83. +
  84. +    !isEmpty(INSTALL_LIBS): target.path = $$INSTALL_LIBS
  85. +    else: target.path = $$[QT_INSTALL_LIBS]
  86. +    INSTALLS += target
  87. +
  88. +    unix {
  89. +        CONFIG += create_pc create_prl
  90. +        QMAKE_PKGCONFIG_LIBDIR = $$target.path
  91. +        QMAKE_PKGCONFIG_INCDIR = $$headers.path
  92. +        QMAKE_PKGCONFIG_DESTDIR = pkgconfig
  93. +        lib_replace.match = $$re_escape($$DESTDIR)
  94. +        lib_replace.replace = $$[QT_INSTALL_LIBS]
  95. +        QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
  96. +    }
  97.  
  98. -mac {
  99. -    !static:contains(QT_CONFIG, qt_framework) {
  100. -        # Build QtWebKit as a framework, to match how Qt was built
  101. -        CONFIG += lib_bundle qt_no_framework_direct_includes qt_framework
  102. -
  103. -        # For debug_and_release configs, only copy headers in release
  104. -        !debug_and_release|if(build_pass:CONFIG(release, debug|release)) {
  105. -            FRAMEWORK_HEADERS.version = Versions
  106. -            FRAMEWORK_HEADERS.files = $${headers.files}
  107. -            FRAMEWORK_HEADERS.path = Headers
  108. -            QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS
  109. +    mac {
  110. +        !static:contains(QT_CONFIG, qt_framework) {
  111. +            # Build QtWebKit as a framework, to match how Qt was built
  112. +            CONFIG += lib_bundle qt_no_framework_direct_includes qt_framework
  113. +
  114. +            # For debug_and_release configs, only copy headers in release
  115. +            !debug_and_release|if(build_pass:CONFIG(release, debug|release)) {
  116. +                FRAMEWORK_HEADERS.version = Versions
  117. +                FRAMEWORK_HEADERS.files = $${headers.files}
  118. +                FRAMEWORK_HEADERS.path = Headers
  119. +                QMAKE_BUNDLE_DATA += FRAMEWORK_HEADERS
  120. +            }
  121.          }
  122. -    }
  123.  
  124. -    QMAKE_LFLAGS_SONAME = "$${QMAKE_LFLAGS_SONAME}$${DESTDIR}$${QMAKE_DIR_SEP}"
  125. +        QMAKE_LFLAGS_SONAME = "$${QMAKE_LFLAGS_SONAME}$${DESTDIR}$${QMAKE_DIR_SEP}"
  126. +    }
  127.  }
  128. -
  129. -plugin_backend_xlib: PKGCONFIG += x11
  130. -
  131. diff --git i/Source/sync.profile w/Source/sync.profile
  132. index 6cbcef3..246b5c1 100644
  133. --- i/Source/sync.profile
  134. +++ w/Source/sync.profile
  135. @@ -13,6 +13,6 @@
  136.      "script" => "#include <QtScript/QtScript>\n",
  137.  );
  138.  %modulepris = (
  139. -    "QtWebKit" => "$basedir/../Tools/qmake/mkspecs/modules/qt_webkit.pri",
  140. +    "QtWebKit" => "$basedir/../Tools/qmake/qt_webkit.pri",
  141.  );
  142.  @ignore_for_master_contents = ( "qwebscriptworld.h", "testwindow.h", "util.h" );
  143. diff --git i/Tools/qmake/mkspecs/features/default_post.prf w/Tools/qmake/mkspecs/features/default_post.prf
  144. index b5d879e..53357c9 100644
  145. --- i/Tools/qmake/mkspecs/features/default_post.prf
  146. +++ w/Tools/qmake/mkspecs/features/default_post.prf
  147. @@ -188,7 +188,7 @@ contains(TEMPLATE, lib) {
  148.      mac: CONFIG += build_all
  149.  
  150.      # Prevent name clashes when building both debug and release
  151. -    debug_and_release: TARGET = $$qtLibraryTarget($$TARGET)
  152. +    !module:debug_and_release: TARGET = $$qtLibraryTarget($$TARGET)
  153.  
  154.      isEmpty(DESTDIR): DESTDIR = $$activeBuildConfig()
  155.  
  156. diff --git i/Tools/qmake/mkspecs/features/default_pre.prf w/Tools/qmake/mkspecs/features/default_pre.prf
  157. index 776728d..a30e0bb 100644
  158. --- i/Tools/qmake/mkspecs/features/default_pre.prf
  159. +++ w/Tools/qmake/mkspecs/features/default_pre.prf
  160. @@ -95,9 +95,5 @@ haveQt(5): {
  161.      }
  162.  }
  163.  
  164. -QT.webkit.modulefile = $${ROOT_WEBKIT_DIR}/Tools/qmake/mkspecs/modules/qt_webkit.pri
  165. -include($$QT.webkit.modulefile)
  166. -VERSION = $${QT.webkit.VERSION}
  167. -
  168.  # Set some defaults for specific platforms
  169.  CONFIG += include_webinspector
  170. diff --git i/Tools/qmake/mkspecs/modules/qt_webkit.pri w/Tools/qmake/mkspecs/modules/qt_webkit.pri
  171. deleted file mode 100644
  172. index a4cf684..0000000
  173. --- i/Tools/qmake/mkspecs/modules/qt_webkit.pri
  174. +++ /dev/null
  175. @@ -1,24 +0,0 @@
  176. -QT.webkit.VERSION = 4.10.0
  177. -QT.webkit.MAJOR_VERSION = 4
  178. -QT.webkit.MINOR_VERSION = 10
  179. -QT.webkit.PATCH_VERSION = 0
  180. -
  181. -QT.webkit.name = QtWebKit
  182. -QT.webkit.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtWebKit
  183. -QT.webkit.private_includes = $$QT_MODULE_INCLUDE_BASE/$$QT.webkit.name/$$QT.webkit.VERSION
  184. -QT.webkit.sources = $$QT_MODULE_BASE
  185. -QT.webkit.libs = $$QT_MODULE_LIB_BASE
  186. -QT.webkit.depends = core gui opengl network xmlpatterns script
  187. -
  188. -!contains(QT_CONFIG, modular)|contains(QT_ELIGIBLE_MODULES, webkit) {
  189. -    QT_CONFIG += webkit
  190. -} else {
  191. -    warning("Attempted to include $$QT.webkit.name in the build, but it was not enabled in configure.")
  192. -}
  193. -
  194. -# This is the old syntax for the WebKit version defines.
  195. -# We keep them around in case someone was using them.
  196. -QT_WEBKIT_VERSION = $$QT.webkit.VERSION
  197. -QT_WEBKIT_MAJOR_VERSION = $$QT.webkit.MAJOR_VERSION
  198. -QT_WEBKIT_MINOR_VERSION = $$QT.webkit.MINOR_VERSION
  199. -QT_WEBKIT_PATCH_VERSION = $$QT.webkit.PATCH_VERSION