Index: Mk/bsd.qt.mk =================================================================== --- Mk/bsd.qt.mk +++ Mk/bsd.qt.mk @@ -18,6 +18,11 @@ # * Common UNIX Printing System (CUPS); # * Network Audio System (NAS); # * GTK+-based Qt theme (QGTKSTYLE). +# QT5_USE_WEBKIT_FORK - Instead of using the WebKit released by the Qt Community, +# use a fork (www/qt5-webkit-$QT5_USE_WEBKIT_FORK}). +# Possible values: +# annulen: https://github.com/annulen/webkit + .if !defined(_POSTMKINCLUDED) && !defined(Qt_Pre_Include) @@ -560,7 +565,11 @@ websockets_PORT= www/${_QT_RELNAME}-websockets websockets_LIB= libQt${_QT_LIBVER}WebSockets.so +. if ${_QT_VERSION:M4*} || ! defined (QT5_USE_WEBKIT_FORK) webkit_PORT= www/webkit-${_QT_RELNAME} +. else +webkit_PORT= www/${_QT_RELNAME}-webkit-${QT5_USE_WEBKIT_FORK} +. endif webkit_LIB= libQt${_QT_LIBVER}WebKit.so widgets_PORT= x11-toolkits/${_QT_RELNAME}-widgets Index: www/qt5-webkit-annulen/Makefile =================================================================== --- /dev/null +++ www/qt5-webkit-annulen/Makefile @@ -0,0 +1,63 @@ +# Created by: tcberner +# $FreeBSD$ + +PORTNAME= webkit-annulen +PORTVERSION= 5.602.2 +DISTVERSIONSUFFIX= -${GH_TAGNAME} +CATEGORIES= www +MASTER_SITES= LOCAL/tcberner/${PORTNAME}-${PORTVERSION} +PKGNAMEPREFIX= qt5- + +MAINTAINER= kde@FreeBSD.org +COMMENT= QtWebKit with a more modern WebKit code base + +LICENSE= GPLv2 + +LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ + libgstapp-1.0.so:multimedia/gstreamer1-plugins \ + libgstbase-1.0.so:multimedia/gstreamer1 \ + libhyphen.so:textproc/hyphen \ + libicui18n.so:devel/icu \ + libpng16.so:graphics/png \ + libwebp.so:graphics/webp + +USES= bison cmake:outsource desktop-file-utils gperf jpeg \ + pathfix perl5 pkgconfig python:build sqlite:3 tar:xz +USE_GNOME= glib20 libxml2 libxslt +USE_GSTREAMER1= core +USE_QT5= buildtools_build core gui location network \ + printsupport qmake_build sql opengl sensors testlib \ + widgets +USE_RUBY= yes +USE_XORG= x11 xcomposite xrender + +RUBY_NO_RUN_DEPENDS= yes + +CMAKE_ARGS= -DPORT:STRING="Qt" \ + -DKDE_INSTALL_INCLUDEDIR:STRING="${QT_INCDIR}" +# Add -DNDEBUG to CXXFLAGS which in turn gets sucked into +# CMAKE_CXX_FLAGS_RELEASE where we actually want to have it. +# [for the ASSERT in Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp ] +CXXFLAGS+= -DNDEBUG + +CONFLICTS_INSTALL= qt5-webkit-5.* +PLIST_SUB= FULLVER="${PORTVERSION}" + +# The git tag to fetch +GH_TAGNAME= db25c2b + +.include + +# The git repository contains subdirectories with tests and websites that take +# up a lot of space. Therefore manually create a tarball using the target +# create-src-archive below. +.PHONY: create-src-archive +ARCHIVE_DIR= ${DISTDIR}/${DISTNAME} +ORIGINAL_DIR= ${DISTDIR}/webkit-${GH_TAGNAME} +DONOTEXTRACT= JSTests LayoutTests ManualTests PerformanceTests Websites +create-src-archive: + fetch https://codeload.github.com/annulen/webkit/tar.gz/${GH_TAGNAME}?dummy=/ -o ${ORIGINAL_DIR}.tar.gz + tar -xf ${ORIGINAL_DIR}.tar.gz ${DONOTEXTRACT:S,^,--exclude ,} --directory ${DISTDIR} + ${MV} ${ORIGINAL_DIR} ${ARCHIVE_DIR} + ${TAR} -cf - -C ${ARCHIVE_DIR:H} ${ARCHIVE_DIR:T} | ${XZ_CMD} > ${ARCHIVE_DIR}.tar.xz + ${MAKE} makesum Index: www/qt5-webkit-annulen/distinfo =================================================================== --- /dev/null +++ www/qt5-webkit-annulen/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1483733205 +SHA256 (webkit-annulen-5.602.2-db25c2b.tar.xz) = d9570a379ee54da92dcfe15344965231cf734415b8be1b8814b8bed9a0b44feb +SIZE (webkit-annulen-5.602.2-db25c2b.tar.xz) = 44638416 Index: www/qt5-webkit-annulen/files/patch-Source_cmake_ECMGeneratePkgConfigFile.cmake =================================================================== --- /dev/null +++ www/qt5-webkit-annulen/files/patch-Source_cmake_ECMGeneratePkgConfigFile.cmake @@ -0,0 +1,13 @@ +Fixup pkgconfig file location. + +--- Source/cmake/ECMGeneratePkgConfigFile.cmake.orig 2017-01-04 19:30:13 UTC ++++ Source/cmake/ECMGeneratePkgConfigFile.cmake +@@ -156,7 +156,7 @@ Requires: ${PKGCONFIG_TARGET_DEPS} + ) + + if(EGPF_INSTALL) +- set(ECM_PKGCONFIG_INSTALL_DIR "${EGPF_LIB_INSTALL_DIR}/pkgconfig" CACHE PATH "The directory where pkgconfig will be installed to.") ++ set(ECM_PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/libdata/pkgconfig" CACHE PATH "The directory where pkgconfig will be installed to.") + install(FILES ${PKGCONFIG_FILENAME} DESTINATION ${ECM_PKGCONFIG_INSTALL_DIR}) + endif() + endfunction() Index: www/qt5-webkit-annulen/pkg-descr =================================================================== --- /dev/null +++ www/qt5-webkit-annulen/pkg-descr @@ -0,0 +1,4 @@ +Qt WebKit is the port of WebKit on top of Qt. +This is a project aiming to upgrade QtWebKit to modern WebKit code base. + +WWW: https://github.com/annulen/webkit Index: www/qt5-webkit-annulen/pkg-plist =================================================================== --- /dev/null +++ www/qt5-webkit-annulen/pkg-plist @@ -0,0 +1,77 @@ +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qhttpheader_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebdatabase_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebelement_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebhistory_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebplugindatabase_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebscriptworld_p.h +%%QT_INCDIR%%/QtWebKit/%%FULLVER%%/QtWebKit/private/qwebsecurityorigin_p.h +%%QT_INCDIR%%/QtWebKit/QWebDatabase +%%QT_INCDIR%%/QtWebKit/QWebElement +%%QT_INCDIR%%/QtWebKit/QWebElementCollection +%%QT_INCDIR%%/QtWebKit/QWebFullScreenRequest +%%QT_INCDIR%%/QtWebKit/QWebFullScreenVideoHandler +%%QT_INCDIR%%/QtWebKit/QWebHapticFeedbackPlayer +%%QT_INCDIR%%/QtWebKit/QWebHistory +%%QT_INCDIR%%/QtWebKit/QWebHistoryInterface +%%QT_INCDIR%%/QtWebKit/QWebHistoryItem +%%QT_INCDIR%%/QtWebKit/QWebKitPlatformPlugin +%%QT_INCDIR%%/QtWebKit/QWebNotificationData +%%QT_INCDIR%%/QtWebKit/QWebNotificationPresenter +%%QT_INCDIR%%/QtWebKit/QWebPluginFactory +%%QT_INCDIR%%/QtWebKit/QWebSecurityOrigin +%%QT_INCDIR%%/QtWebKit/QWebSelectData +%%QT_INCDIR%%/QtWebKit/QWebSelectMethod +%%QT_INCDIR%%/QtWebKit/QWebSettings +%%QT_INCDIR%%/QtWebKit/QWebSpellChecker +%%QT_INCDIR%%/QtWebKit/QWebTouchModifier +%%QT_INCDIR%%/QtWebKit/QtWebKit +%%QT_INCDIR%%/QtWebKit/QtWebKitDepends +%%QT_INCDIR%%/QtWebKit/QtWebKitVersion +%%QT_INCDIR%%/QtWebKit/qtwebkitversion.h +%%QT_INCDIR%%/QtWebKit/qwebdatabase.h +%%QT_INCDIR%%/QtWebKit/qwebelement.h +%%QT_INCDIR%%/QtWebKit/qwebfullscreenrequest.h +%%QT_INCDIR%%/QtWebKit/qwebhistory.h +%%QT_INCDIR%%/QtWebKit/qwebhistoryinterface.h +%%QT_INCDIR%%/QtWebKit/qwebkitglobal.h +%%QT_INCDIR%%/QtWebKit/qwebkitplatformplugin.h +%%QT_INCDIR%%/QtWebKit/qwebpluginfactory.h +%%QT_INCDIR%%/QtWebKit/qwebsecurityorigin.h +%%QT_INCDIR%%/QtWebKit/qwebsettings.h +%%QT_INCDIR%%/QtWebKitWidgets/%%FULLVER%%/QtWebKitWidgets/private/qwebframe_p.h +%%QT_INCDIR%%/QtWebKitWidgets/%%FULLVER%%/QtWebKitWidgets/private/qwebinspector_p.h +%%QT_INCDIR%%/QtWebKitWidgets/%%FULLVER%%/QtWebKitWidgets/private/qwebpage_p.h +%%QT_INCDIR%%/QtWebKitWidgets/%%FULLVER%%/QtWebKitWidgets/private/qwebviewaccessible_p.h +%%QT_INCDIR%%/QtWebKitWidgets/QGraphicsWebView +%%QT_INCDIR%%/QtWebKitWidgets/QWebFrame +%%QT_INCDIR%%/QtWebKitWidgets/QWebHitTestResult +%%QT_INCDIR%%/QtWebKitWidgets/QWebInspector +%%QT_INCDIR%%/QtWebKitWidgets/QWebPage +%%QT_INCDIR%%/QtWebKitWidgets/QWebView +%%QT_INCDIR%%/QtWebKitWidgets/QtWebKitWidgets +%%QT_INCDIR%%/QtWebKitWidgets/QtWebKitWidgetsDepends +%%QT_INCDIR%%/QtWebKitWidgets/QtWebKitWidgetsVersion +%%QT_INCDIR%%/QtWebKitWidgets/qgraphicswebview.h +%%QT_INCDIR%%/QtWebKitWidgets/qtwebkitwidgetsversion.h +%%QT_INCDIR%%/QtWebKitWidgets/qwebframe.h +%%QT_INCDIR%%/QtWebKitWidgets/qwebinspector.h +%%QT_INCDIR%%/QtWebKitWidgets/qwebpage.h +%%QT_INCDIR%%/QtWebKitWidgets/qwebview.h +lib/cmake/Qt5WebKit/Qt5WebKitConfig.cmake +lib/cmake/Qt5WebKit/Qt5WebKitConfigVersion.cmake +lib/cmake/Qt5WebKit/WebKitTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/Qt5WebKit/WebKitTargets.cmake +lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsConfig.cmake +lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsConfigVersion.cmake +lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/Qt5WebKitWidgets/Qt5WebKitWidgetsTargets.cmake +lib/libQt5WebKit.so +lib/libQt5WebKit.so.5 +lib/libQt5WebKit.so.%%FULLVER%% +lib/libQt5WebKitWidgets.so +lib/libQt5WebKitWidgets.so.5 +lib/libQt5WebKitWidgets.so.%%FULLVER%% +libdata/pkgconfig/Qt5WebKit.pc +libdata/pkgconfig/Qt5WebKitWidgets.pc +%%QT_MKSPECDIR%%/modules/qt_lib_webkit.pri +%%QT_MKSPECDIR%%/modules/qt_lib_webkitwidgets.pri Index: www/webkit-qt5/Makefile =================================================================== --- www/webkit-qt5/Makefile +++ www/webkit-qt5/Makefile @@ -47,6 +47,8 @@ GSTREAMER_USE= GNOME=glib20 GSTREAMER1=yes +CONFLICTS_INSTALL= qt5-webkit-[a-z]* + .include # Base ld(1) segfaults on PowerPC (inherited from Qt 4):