aboutsummaryrefslogtreecommitdiff
path: root/www/webkit2-gtk3/Makefile
blob: edaeb49cccac9f1e7cd43e5c6e3790c4f1176c95 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Created by: Michael Johnson <ahze@FreeBSD.org>
# $FreeBSD$

PORTNAME=	webkit
PORTVERSION=	2.6.6
CATEGORIES=	www
MASTER_SITES=	http://webkitgtk.org/releases/
PKGNAMESUFFIX=	2-gtk3
DISTNAME=	${PORTNAME}gtk-${PORTVERSION}

MAINTAINER=	gnome@FreeBSD.org
COMMENT=	Opensource browser engine using the GTK+ 3 toolkit

BUILD_DEPENDS=	geoclue>=0:${PORTSDIR}/net/geoclue
LIB_DEPENDS=	libenchant.so:${PORTSDIR}/textproc/enchant \
		libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig \
		libfreetype.so:${PORTSDIR}/print/freetype2 \
		libjpeg.so:${PORTSDIR}/graphics/jpeg \
		libwebp.so:${PORTSDIR}/graphics/webp \
		libpng.so:${PORTSDIR}/graphics/png \
		libsecret-1.so:${PORTSDIR}/security/libsecret \
		libharfbuzz.so:${PORTSDIR}/print/harfbuzz \
		libsoup-2.4.so:${PORTSDIR}/devel/libsoup
#add		libicu
RUN_DEPENDS=	geoclue>=0:${PORTSDIR}/net/geoclue 

PORTSCOUT=	^${PORTVERSION:R:S|.|\.|}\.*$$

USE_GSTREAMER1=	yes
USE_XORG=	x11 xext ice
# when it USES=cmake safe
USES=		bison compiler:c++11-lib gettext gmake gperf perl5 \
		pkgconfig python:2 tar:xz
USE_RUBY=	yes
RUBY_NO_RUN_DEPENDS=yes
USE_GNOME=	cairo gtk20 gtk30 introspection:build \
		libxml2 libxslt:build
USE_GL=		gl egl
USE_SQLITE=	3
USE_PERL5=	build
USE_LDCONFIG=	yes
CPPFLAGS+=	-I${LOCALBASE}/include
LDFLAGS+=	-L${LOCALBASE}/lib

BUILD_DEPENDS+=	cmake:${PORTSDIR}/devel/cmake
#USES=cmake is not used because it triggers:
#Linking CXX executable ../../../bin/jsc
#../../../lib/libjavascriptcoregtk-4.0.so.18.0.8: undefined reference to `JSC::JSCell::inherits(JSC::ClassInfo const*) const'
#../../../lib/libjavascriptcoregtk-4.0.so.18.0.8: undefined reference to `JSC::JSCell::structure() const'
#c++: error: linker command failed with exit code 1 (use -v to see invocation)
#Source/JavaScriptCore/shell/CMakeFiles/jsc.dir/build.make:94: recipe for target 'bin/jsc' failed
# there is something in CMAKE_ENV that cause this ... but what.

CMAKE_ARGS+=	-DPORT=GTK
CMAKE_ENV+=	XDG_CACHE_HOME=${WRKDIR} \
		CPPFLAGS="${CPPFLAGS}" \
		LDFLAGS="${LDFLAGS}" \
		CC="${CC}" CXX="${CXX}" CPP="${CPP}"

#CMAKE_ARGS+=	-DCMAKE_VERBOSE_MAKEFILE=1
#MAKE_ARGS+=	V=1 VERBOSE=1

BROWSER_PLUGINS_DIR?=	${LOCALBASE}/lib/browser_plugins/symlinks/webkit-gtk3
#_BROWSER_PLUGINS_DIR=	${BROWSER_PLUGINS_DIR:S|^/|"|:S|/|", "|g}",

OPTIONS_DEFINE=	DEBUG FULLDEBUG
DEBUG_DESC=	Just enable debug symbols
FULLDEBUG_DESC=	Enable asserts and other debug support

FULLDEBUG_CONFIGURE_ENABLE=	debug
DEBUG_CONFIGURE_ON=	--enable-debug-symbols=yes
DEBUG_CONFIGURE_OFF=	--disable-debug-symbols

.include <bsd.port.options.mk>

.if ${OSVERSION} < 900000
IGNORE=		Not supported on 8.x due to c++ madness
.endif

.if ${ARCH} == powerpc64
CFLAGS+=	-mminimal-toc
.endif

.if ${OSVERSION} < 1000033
BUILD_DEPENDS+=	flex>=0:${PORTSDIR}/textproc/flex
CONFIGURE_ENV+=	FLEX_PATH="${LOCALBASE}/bin/flex"
.endif

post-patch:
	@${REINPLACE_CMD} -e 's|%%BROWSER_PLUGINS_DIR%%|${BROWSER_PLUGINS_DIR}|' \
		${WRKSRC}/Source/WebCore/plugins/PluginDatabase.cpp

do-configure:
	@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CFLAGS="${CFLAGS}" \
		${CMAKE_ENV} cmake -DPORT=GTK ${CMAKE_ARGS}

post-install:
	${MV} ${STAGEDIR}${PREFIX}/bin/jsc \
		${STAGEDIR}/${PREFIX}/bin/jsc-4
	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*
	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/webkit2gtk-4.0/injected-bundle/*.so
	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/jsc-4
	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/webkit2gtk-4.0/WebKit*

.include <bsd.port.mk>