Changeset View
Changeset View
Standalone View
Standalone View
www/qt5-webkit/Makefile
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= webkit | PORTNAME= webkit | ||||
DISTVERSION= ${QT5_VERSION} | PORTVERSION= 5.212.0.20170607 | ||||
rakuco: I always forget the version numbering rules for ports; as long as you've checked the handbook… | |||||
Not Done Inline ActionsBy magic this gets turned into qt5-webkit-5.212.0.a2 -- which should be accepted ^^ tcberner: By magic this gets turned into `qt5-webkit-5.212.0.a2` -- which should be accepted ^^ | |||||
Not Done Inline ActionsThis is exactly what DISTVERSION is for. Go read 5.2.2. Versions, DISTVERSION or PORTVERSION. mat: This is exactly what DISTVERSION is for. Go read [[ https://www.freebsd. | |||||
PORTREVISION= 1 | DISTVERSIONSUFFIX= -${GH_TAGNAME} | ||||
CATEGORIES= www | CATEGORIES= www | ||||
MASTER_SITE_SUBDIR= community_releases/${QT5_VERSION:R}/${QT5_VERSION}/ | MASTER_SITES= LOCAL/tcberner/${PORTNAME}-${PORTVERSION} | ||||
PKGNAMEPREFIX= qt5- | PKGNAMEPREFIX= qt5- | ||||
MAINTAINER= kde@FreeBSD.org | MAINTAINER= kde@FreeBSD.org | ||||
COMMENT= Qt WebKit implementation | COMMENT= QtWebKit with a more modern WebKit code base | ||||
LICENSE= GPLv2 | |||||
Not Done Inline ActionsWebKit's actually a mixture of LGPL, BSD and other licenses. I'd either specify all the zillion licenses here or not set LICENSE at all. rakuco: WebKit's actually a mixture of LGPL, BSD and other licenses. I'd either specify all the zillion… | |||||
LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ | 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 \ | libicui18n.so:devel/icu \ | ||||
libleveldb.so:databases/leveldb \ | libpng16.so:graphics/png \ | ||||
libpng.so:graphics/png \ | |||||
libwebp.so:graphics/webp | libwebp.so:graphics/webp | ||||
BUILD_DEPENDS= ${LOCALBASE}/bin/flex:textproc/flex | |||||
DISTINFO_FILE= ${MASTERDIR}/distinfo | USES= bison cmake:outsource gperf jpeg pathfix perl5 pkgconfig \ | ||||
python:build sqlite:3 tar:xz | |||||
BROKEN_sparc64= cannot build: uses i386 assembler | USE_GNOME= glib20 libxml2 libxslt | ||||
USE_GSTREAMER1= core | |||||
USE_GL= gl | USE_QT5= core gui location network opengl printsupport \ | ||||
USE_GNOME= libxml2 libxslt | qml quick sensors testlib webchannel widgets \ | ||||
USE_PERL5= build | buildtools_build qmake_build | ||||
USE_QT5= core gui network opengl printsupport qml quick sql \ | |||||
widgets buildtools_build | |||||
QT_DIST= ${PORTNAME} | |||||
USE_RUBY= yes | USE_RUBY= yes | ||||
RUBY_NO_RUN_DEPENDS= yes | |||||
USE_XORG= x11 xcomposite xrender | USE_XORG= x11 xcomposite xrender | ||||
USES= bison gperf jpeg perl5 pkgconfig python:build qmake:outsource \ | |||||
sqlite | |||||
# Use flex(1) from ports. | |||||
MAKE_ENV= PATH="${LOCALBASE}/bin:${PATH}" | |||||
# "all" builds many more targets. The default one is called "first" in | |||||
# QtWebKit, and is invoked by default when make is called without arguments. | |||||
ALL_TARGET= first | |||||
USE_LDCONFIG= ${PREFIX}/${QT_LIBDIR_REL} | |||||
QT_DEFINES= ACCESSIBILITY | RUBY_NO_RUN_DEPENDS= yes | ||||
QT_CONFIG= accessibility accessibility-atspi-bridge | |||||
OPTIONS_DEFINE= GSTREAMER | CMAKE_ARGS= -DPORT:STRING="Qt" \ | ||||
OPTIONS_DEFAULT=GSTREAMER | -DKDE_INSTALL_INCLUDEDIR:PATH="${QT_INCDIR_REL}" \ | ||||
-DKDE_INSTALL_LIBDIR:PATH="${QT_LIBDIR_REL}" \ | |||||
-DENABLE_OPENGL:BOOL=TRUE \ | |||||
-DUSE_QT_MULTIMEDIA:BOOL=FALSE | |||||
GSTREAMER_USE= GNOME=glib20 GSTREAMER1=yes | # 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 | |||||
.include <bsd.port.pre.mk> | PLIST_SUB= FULLVER="${PORTVERSION:R}" | ||||
# Base ld(1) segfaults on PowerPC (inherited from Qt 4): | # The git tag to fetch | ||||
# http://bugs.freebsd.org/173042 | GH_TAGNAME= 5681c65 | ||||
.if ${ARCH} == "powerpc" | |||||
BUILD_DEPENDS+= ${LOCALBASE}/bin/ld:devel/binutils | |||||
.endif | |||||
post-patch: | .include <bsd.port.mk> | ||||
${REINPLACE_CMD} -e 's,python,${PYTHON_VERSION},g' \ | |||||
-e 's,$$$${PYTHON},${PYTHON_VERSION},g' \ | |||||
${WRKSRC}/Source/WebCore/DerivedSources.make \ | |||||
${WRKSRC}/Source/WebCore/DerivedSources.pri \ | |||||
${WRKSRC}/Source/WebKit2/DerivedSources.make \ | |||||
${WRKSRC}/Source/WebKit2/DerivedSources.pri \ | |||||
${WRKSRC}/Source/JavaScriptCore/DerivedSources.make \ | |||||
${WRKSRC}/Source/JavaScriptCore/DerivedSources.pri \ | |||||
${WRKSRC}/Tools/qmake/mkspecs/features/configure.prf | |||||
pre-configure: | # The git repository contains subdirectories with tests and websites that take | ||||
@${REINPLACE_CMD} -Ee 's|linux-?\*|unix|g' \ | # up a lot of space. Therefore manually create a tarball using the target | ||||
${WRKSRC}/Source/JavaScriptCore/DerivedSources.pri \ | # create-src-archive below. | ||||
${WRKSRC}/Source/JavaScriptCore/JavaScriptCore.pri \ | .PHONY: create-src-archive | ||||
${WRKSRC}/Source/JavaScriptCore/Target.pri \ | ARCHIVE_DIR= ${DISTDIR}/${DISTNAME} | ||||
${WRKSRC}/Source/WebCore/WebCore.pri \ | ORIGINAL_DIR= ${DISTDIR}/webkit-${GH_TAGNAME} | ||||
${WRKSRC}/Tools/qmake/mkspecs/features/features.prf | DONOTEXTRACT= JSTests LayoutTests ManualTests PerformanceTests Websites | ||||
.if ! ${PORT_OPTIONS:MGSTREAMER} | create-src-archive: | ||||
@${REINPLACE_CMD} -e 's|packagesExist.*gstreamer.*|false {|' \ | fetch https://codeload.github.com/annulen/webkit/tar.gz/${GH_TAGNAME}?dummy=/ -o ${ORIGINAL_DIR}.tar.gz | ||||
${WRKSRC}/Tools/qmake/mkspecs/features/features.prf | tar -xf ${ORIGINAL_DIR}.tar.gz ${DONOTEXTRACT:S,^,--exclude ,} --directory ${DISTDIR} | ||||
.endif | ${MV} ${ORIGINAL_DIR} ${ARCHIVE_DIR} | ||||
${TAR} -cf - -C ${ARCHIVE_DIR:H} ${ARCHIVE_DIR:T} | ${XZ_CMD} > ${ARCHIVE_DIR}.tar.xz | |||||
.include <bsd.port.post.mk> | ${MAKE} makesum |
I always forget the version numbering rules for ports; as long as you've checked the handbook and this format is OK I'm fine with it :-)