Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F132599739
D9048.id23735.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
10 KB
Referenced Files
None
Subscribers
None
D9048.id23735.diff
View Options
Index: CHANGES
===================================================================
--- CHANGES
+++ CHANGES
@@ -10,6 +10,18 @@
All ports committers are allowed to commit to this file.
+201701xx:
+AUTHOR: tcberner@FreeBSD.org
+
+ It is now possible to switch between the community releases of Qt5 WebKit
+ and a fork [1] with newer WebKit base via the variable QT5_USE_WEBKIT_FORK.
+ By defining
+ QT5_USE_WEBKIT_FORK= annulen
+ all ports depending on USE_QT5=webkit will then depend on
+ www/qt5-webkit-annulen instead.
+
+ [1] https://github.com/annulen/webkit
+
20161218:
AUTHOR: tcberner@FreeBSD.org
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/Makefile
===================================================================
--- www/Makefile
+++ www/Makefile
@@ -1861,6 +1861,7 @@
SUBDIR += qdecoder
SUBDIR += qooxdoo
SUBDIR += qt5-webchannel
+ SUBDIR += qt5-webkit-annulen
SUBDIR += qt5-websockets
SUBDIR += quickie
SUBDIR += qupzilla-qt4
Index: www/qt5-webkit-annulen/Makefile
===================================================================
--- /dev/null
+++ www/qt5-webkit-annulen/Makefile
@@ -0,0 +1,68 @@
+# 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
+
+# Forcefully disable the gold linker as it leads to
+# /usr/lib/libgcc_s.so: error: undefined reference to 'mprotect'
+# [...]
+CMAKE_ARGS+= -DUSE_LD_GOLD:BOOL=FALSE
+
+CONFLICTS_INSTALL= qt5-webkit-5.*
+PLIST_SUB= FULLVER="${PORTVERSION}"
+
+# The git tag to fetch
+GH_TAGNAME= db25c2b
+
+.include <bsd.port.mk>
+
+# 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_WebKit_PlatformQt.cmake
===================================================================
--- /dev/null
+++ www/qt5-webkit-annulen/files/patch-Source_WebKit_PlatformQt.cmake
@@ -0,0 +1,20 @@
+Fix the generation of the pkgconfig files.
+
+--- Source/WebKit/PlatformQt.cmake.orig 2017-01-06 22:03:05 UTC
++++ Source/WebKit/PlatformQt.cmake
+@@ -434,6 +434,7 @@ ecm_generate_pkgconfig_file(
+ BASE_NAME Qt5WebKit
+ DEPS "${WEBKIT_PKGCONGIG_DEPS}"
+ FILENAME_VAR WebKit_PKGCONFIG_FILENAME
++ INCLUDE_INSTALL_DIR "${KDE_INSTALL_INCLUDEDIR}/QtWebKit"
+ INSTALL
+ )
+
+@@ -599,6 +600,7 @@ ecm_generate_pkgconfig_file(
+ BASE_NAME Qt5WebKitWidgets
+ DEPS "${WEBKITWIDGETS_PKGCONFIG_DEPS}"
+ FILENAME_VAR WebKitWidgets_PKGCONFIG_FILENAME
++ INCLUDE_INSTALL_DIR "${KDE_INSTALL_INCLUDEDIR}/QtWebKitWidgets"
+ INSTALL
+ )
+
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 <bsd.port.pre.mk>
# Base ld(1) segfaults on PowerPC (inherited from Qt 4):
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Oct 19, 7:43 AM (3 h, 20 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
23916441
Default Alt Text
D9048.id23735.diff (10 KB)
Attached To
Mode
D9048: Update www/qt5-webkit to 5.212
Attached
Detach File
Event Timeline
Log In to Comment