widgetsapi.pri 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. # -------------------------------------------------------------------
  2. # Target file for the QtWebKitWidgets dynamic library
  3. #
  4. # See 'Tools/qmake/README' for an overview of the build system
  5. # -------------------------------------------------------------------
  6. # Use Qt5's module system
  7. load(qt_build_config)
  8. TEMPLATE = lib
  9. TARGET = QtWebKitWidgets
  10. # This is relied upon by our export macros and seems not to be properly
  11. # defined by the logic in qt_module.prf as it should
  12. DEFINES += QT_BUILD_WEBKITWIDGETS_LIB
  13. WEBKIT_DESTDIR = $${ROOT_BUILD_DIR}/lib
  14. SOURCE_DIR = $${ROOT_WEBKIT_DIR}/Source/WebKit
  15. INCLUDEPATH += \
  16. $$SOURCE_DIR/qt/Api \
  17. $$SOURCE_DIR/qt/WidgetApi \
  18. $$SOURCE_DIR/qt/WebCoreSupport \
  19. $$SOURCE_DIR/qt/WidgetSupport \
  20. $$ROOT_WEBKIT_DIR/Source/WTF/wtf/qt
  21. have?(qtsensors):if(enable?(DEVICE_ORIENTATION)|enable?(ORIENTATION_EVENTS)): QT += sensors
  22. have?(qtlocation):enable?(GEOLOCATION): QT += location
  23. use?(QT_MULTIMEDIA): QT *= multimediawidgets
  24. contains(CONFIG, texmap): DEFINES += WTF_USE_TEXTURE_MAPPER=1
  25. use?(PLUGIN_BACKEND_XLIB): PKGCONFIG += x11
  26. QT += network widgets widgets-private
  27. have?(QTQUICK): QT += quick
  28. have?(QTPRINTSUPPORT): QT += printsupport
  29. use?(TEXTURE_MAPPER_GL)|enable?(WEBGL) {
  30. QT *= opengl
  31. }
  32. QT += webkit
  33. use?(3D_GRAPHICS): WEBKIT += ANGLE
  34. WEBKIT += javascriptcore wtf webcore
  35. MODULE = webkitwidgets
  36. # We want the QtWebKit API forwarding includes to live in the root build dir.
  37. MODULE_BASE_DIR = $$_PRO_FILE_PWD_
  38. MODULE_BASE_OUTDIR = $$ROOT_BUILD_DIR
  39. # This is the canonical list of dependencies for the public API of
  40. # the QtWebKitWidgets library, and will end up in the library's prl file.
  41. QT_API_DEPENDS = core gui widgets network webkit
  42. # ---------------- Custom developer-build handling -------------------
  43. #
  44. # The assumption for Qt developer builds is that the module file
  45. # will be put into qtbase/mkspecs/modules, and the libraries into
  46. # qtbase/lib, with rpath/install_name set to the Qt lib dir.
  47. #
  48. # For WebKit we don't want that behavior for the libraries, as we want
  49. # them to be self-contained in the WebKit build dir.
  50. #
  51. !production_build: CONFIG += force_independent
  52. BASE_TARGET = $$TARGET
  53. load(qt_module)
  54. # Make sure the install_name of the QtWebKit library point to webkit
  55. force_independent:macx {
  56. # We do our own absolute path so that we can trick qmake into
  57. # using the webkit build path instead of the Qt install path.
  58. CONFIG -= absolute_library_soname
  59. QMAKE_LFLAGS_SONAME = $$QMAKE_LFLAGS_SONAME$$WEBKIT_DESTDIR/
  60. !debug_and_release|build_pass {
  61. # We also have to make sure the install_name is correct when
  62. # the library is installed.
  63. change_install_name.depends = install_target
  64. # The install rules generated by qmake for frameworks are busted in
  65. # that both the debug and the release makefile copy QtWebKit.framework
  66. # into the install dir, so whatever changes we did to the release library
  67. # will get overwritten when the debug library is installed. We work around
  68. # that by running install_name on both, for both configs.
  69. change_install_name.commands = framework_dir=\$\$(dirname $(TARGETD)); \
  70. for file in \$\$(ls $$[QT_INSTALL_LIBS]/\$\$framework_dir/$$BASE_TARGET*); do \
  71. install_name_tool -id \$\$file \$\$file; \
  72. done
  73. default_install_target.target = install
  74. default_install_target.depends += change_install_name
  75. QMAKE_EXTRA_TARGETS += change_install_name default_install_target
  76. }
  77. }
  78. SOURCES += \
  79. $$PWD/WebKit/qt/WidgetApi/qgraphicswebview.cpp \
  80. $$PWD/WebKit/qt/WidgetApi/qwebframe.cpp \
  81. $$PWD/WebKit/qt/WidgetApi/qwebpage.cpp \
  82. $$PWD/WebKit/qt/WidgetApi/qwebview.cpp \
  83. $$PWD/WebKit/qt/WidgetApi/qwebinspector.cpp \
  84. $$PWD/WebKit/qt/WidgetSupport/QtFallbackWebPopup.cpp \
  85. $$PWD/WebKit/qt/WidgetSupport/QtWebComboBox.cpp \
  86. $$PWD/WebKit/qt/WidgetSupport/QWebUndoCommand.cpp \
  87. $$PWD/WebKit/qt/WidgetSupport/DefaultFullScreenVideoHandler.cpp \
  88. $$PWD/WebKit/qt/WidgetSupport/InitWebKitQt.cpp \
  89. $$PWD/WebKit/qt/WidgetSupport/InspectorClientWebPage.cpp \
  90. $$PWD/WebKit/qt/WidgetSupport/PageClientQt.cpp \
  91. $$PWD/WebKit/qt/WidgetSupport/QStyleFacadeImp.cpp \
  92. $$PWD/WebKit/qt/WidgetSupport/QGraphicsWidgetPluginImpl.cpp \
  93. $$PWD/WebKit/qt/WidgetSupport/QWidgetPluginImpl.cpp
  94. HEADERS += \
  95. $$PWD/WebKit/qt/WidgetApi/qgraphicswebview.h \
  96. $$PWD/WebKit/qt/WidgetApi/qwebframe.h \
  97. $$PWD/WebKit/qt/WidgetApi/qwebframe_p.h \
  98. $$PWD/WebKit/qt/WidgetApi/qwebpage.h \
  99. $$PWD/WebKit/qt/WidgetApi/qwebpage_p.h \
  100. $$PWD/WebKit/qt/WidgetApi/qwebview.h \
  101. $$PWD/WebKit/qt/WidgetApi/qwebinspector.h \
  102. $$PWD/WebKit/qt/WidgetApi/qwebinspector_p.h \
  103. $$PWD/WebKit/qt/Api/qwebkitplatformplugin.h \
  104. $$PWD/WebKit/qt/WidgetSupport/InitWebKitQt.h \
  105. $$PWD/WebKit/qt/WidgetSupport/InspectorClientWebPage.h \
  106. $$PWD/WebKit/qt/WidgetSupport/DefaultFullScreenVideoHandler.h \
  107. $$PWD/WebKit/qt/WidgetSupport/QtFallbackWebPopup.h \
  108. $$PWD/WebKit/qt/WidgetSupport/QtWebComboBox.h \
  109. $$PWD/WebKit/qt/WidgetSupport/QWebUndoCommand.h \
  110. $$PWD/WebKit/qt/WidgetSupport/PageClientQt.h \
  111. $$PWD/WebKit/qt/WidgetSupport/QGraphicsWidgetPluginImpl.h \
  112. $$PWD/WebKit/qt/WidgetSupport/QStyleFacadeImp.h \
  113. $$PWD/WebKit/qt/WidgetSupport/QWidgetPluginImpl.h \
  114. contains(QT_CONFIG, accessibility) {
  115. SOURCES += $$PWD/WebKit/qt/WidgetApi/qwebviewaccessible.cpp
  116. HEADERS += $$PWD/WebKit/qt/WidgetApi/qwebviewaccessible_p.h
  117. }
  118. INCLUDEPATH += \
  119. $$PWD/qt/Api \
  120. $$PWD/qt/WebCoreSupport
  121. enable?(VIDEO) {
  122. !use?(GSTREAMER):use?(QT_MULTIMEDIA) {
  123. HEADERS += $$PWD/WebKit/qt/WidgetSupport/FullScreenVideoWidget.h
  124. SOURCES += $$PWD/WebKit/qt/WidgetSupport/FullScreenVideoWidget.cpp
  125. }
  126. }