qt5webkit.mk 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. ################################################################################
  2. #
  3. # qt5webkit
  4. #
  5. ################################################################################
  6. # no 5.9.2 package available, fall back to 5.9.1 version
  7. ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
  8. QT5WEBKIT_VERSION = 5.9.1
  9. QT5WEBKIT_SITE = https://download.qt.io/official_releases/qt/5.9/5.9.1/submodules
  10. else
  11. QT5WEBKIT_VERSION = $(QT5_VERSION)
  12. QT5WEBKIT_SITE = https://download.qt.io/community_releases/5.6/$(QT5_VERSION)
  13. endif
  14. QT5WEBKIT_SOURCE = qtwebkit-opensource-src-$(QT5WEBKIT_VERSION).tar.xz
  15. QT5WEBKIT_DEPENDENCIES = \
  16. host-bison host-flex host-gperf host-python host-ruby \
  17. qt5base sqlite
  18. QT5WEBKIT_INSTALL_STAGING = YES
  19. QT5WEBKIT_LICENSE_FILES = Source/WebCore/LICENSE-LGPL-2 Source/WebCore/LICENSE-LGPL-2.1
  20. QT5WEBKIT_LICENSE = LGPL-2.1+, BSD-3-Clause, BSD-2-Clause
  21. # Source files contain references to LGPL_EXCEPTION.txt but it is not included
  22. # in the archive.
  23. QT5WEBKIT_LICENSE_FILES += LICENSE.LGPLv21
  24. ifeq ($(BR2_PACKAGE_QT5BASE_XCB),y)
  25. QT5WEBKIT_DEPENDENCIES += xlib_libXext xlib_libXrender
  26. endif
  27. ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y)
  28. QT5WEBKIT_DEPENDENCIES += qt5declarative
  29. endif
  30. # QtWebkit's build system uses python, but only supports python2. We work
  31. # around this by forcing python2 early in the PATH, via a python->python2
  32. # symlink.
  33. QT5WEBKIT_ENV = PATH=$(@D)/host-bin:$(BR_PATH)
  34. define QT5WEBKIT_PYTHON2_SYMLINK
  35. mkdir -p $(@D)/host-bin
  36. ln -sf $(HOST_DIR)/bin/python2 $(@D)/host-bin/python
  37. endef
  38. QT5WEBKIT_PRE_CONFIGURE_HOOKS += QT5WEBKIT_PYTHON2_SYMLINK
  39. # The mesa's EGL/eglplatform.h header includes X11 headers unless the flag
  40. # MESA_EGL_NO_X11_HEADERS is defined. Tell to not include X11 headers if
  41. # the libxcb is not selected.
  42. ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL)x$(BR2_PACKAGE_LIBXCB),yx)
  43. QT5WEBKIT_QMAKEFLAGS += QMAKE_CXXFLAGS+=-DMESA_EGL_NO_X11_HEADERS
  44. endif
  45. define QT5WEBKIT_CONFIGURE_CMDS
  46. (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/bin/qmake $(QT5WEBKIT_QMAKEFLAGS))
  47. endef
  48. define QT5WEBKIT_BUILD_CMDS
  49. $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(MAKE) -C $(@D)
  50. endef
  51. define QT5WEBKIT_INSTALL_STAGING_CMDS
  52. $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(MAKE) -C $(@D) install
  53. $(QT5_LA_PRL_FILES_FIXUP)
  54. endef
  55. ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK),y)
  56. define QT5WEBKIT_INSTALL_TARGET_QMLS
  57. cp -dpfr $(STAGING_DIR)/usr/qml/QtWebKit $(TARGET_DIR)/usr/qml/
  58. endef
  59. endif
  60. define QT5WEBKIT_INSTALL_TARGET_CMDS
  61. cp -dpf $(STAGING_DIR)/usr/lib/libQt5WebKit*.so.* $(TARGET_DIR)/usr/lib
  62. cp -dpf $(@D)/bin/* $(TARGET_DIR)/usr/bin/
  63. $(QT5WEBKIT_INSTALL_TARGET_QMLS)
  64. endef
  65. $(eval $(generic-package))