summaryrefslogtreecommitdiff
blob: d311ad3445829742b69dca3b395dd83e13867cfa (plain)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=6

PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='threads(+)'
VALA_MIN_API_VERSION="0.30"

unset _live_inherits

if [[ ${PV} == *9999* ]]; then
	EGIT_REPO_URI="git://git.xfce.org/apps/${PN}"
	_live_inherits=git-2
else
	KEYWORDS="~amd64 ~arm ~mips ~x86 ~x86-fbsd"
	SRC_URI="http://www.${PN}-browser.org/downloads/${PN}_${PV}_all_.tar.bz2"
fi

inherit eutils fdo-mime gnome2-utils pax-utils python-any-r1 cmake-utils vala ${_live_inherits}

DESCRIPTION="A lightweight web browser based on WebKitGTK+"
HOMEPAGE="http://www.midori-browser.org/"

LICENSE="LGPL-2.1 MIT"
SLOT="0"
IUSE="deprecated doc granite introspection xscreensaver +jit +webkit2 zeitgeist"

RDEPEND="
	>=app-crypt/gcr-3[gtk]
	>=dev-db/sqlite-3.6.19:3
	>=dev-libs/glib-2.32.3
	dev-libs/libxml2
	>=net-libs/libsoup-2.38:2.4
	>=net-libs/libsoup-gnome-2.38:2.4
	>=x11-libs/libnotify-0.7
	xscreensaver? ( x11-libs/libXScrnSaver )
	deprecated? (
		>=net-libs/webkit-gtk-1.8.1:2[jit=]
		>=x11-libs/gtk+-2.24:2
		)
	!deprecated? (
		>=x11-libs/gtk+-3.10.0:3
		webkit2? ( >=net-libs/webkit-gtk-2.3.91:4[jit=] )
		!webkit2? ( >=net-libs/webkit-gtk-1.8.1:3[jit=] )
		)
	granite? ( >=dev-libs/granite-0.2 )
	introspection? ( dev-libs/gobject-introspection:= )
	zeitgeist? ( >=dev-libs/libzeitgeist-0.3.14 )
"
DEPEND="${RDEPEND}
	${PYTHON_DEPS}
	$(vala_depend)
	dev-util/intltool
	gnome-base/librsvg
	sys-devel/gettext
	doc? ( dev-util/gtk-doc )
"
REQUIRED_USE="
	granite? ( !deprecated )
	introspection? ( deprecated )
	webkit2? ( !deprecated )
"

pkg_setup() {
	python-any-r1_pkg_setup
}

src_unpack() {
	if [[ ${PV} == *9999* ]]; then
		git-2_src_unpack
	else
		default
	fi
}

src_prepare() {
	vala_src_prepare
	sed -i -e '/^install/s:COPYING:HACKING TODO TRANSLATE:' CMakeLists.txt || die
	eapply_user
}

src_configure() {
	strip-linguas -i po

	local mycmakeargs=(
		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
		-DUSE_APIDOCS="$(usex doc)"
		-DUSE_GIR="$(usex introspection)"
		-DUSE_GRANITE="$(usex granite)"
		-DUSE_ZEITGEIST="$(usex zeitgeist)"
		-DUSE_XSCREENSAVER="$(usex xscreensaver)"
		-DVALA_EXECUTABLE="${VALAC}"
		)

	if use deprecated; then
		mycmakeargs+=(
			-DUSE_GTK3=OFF
			-DHALF_BRO_INCOM_WEBKIT2=OFF
			)
	else
		mycmakeargs+=(
			-DUSE_GTK3=ON
			-DHALF_BRO_INCOM_WEBKIT2="$(usex webkit2)"
			)
	fi

	cmake-utils_src_configure
}

src_install() {
	cmake-utils_src_install

	local jit_is_enabled
	if use deprecated; then
		has_version 'net-libs/webkit-gtk:2[jit]' && jit_is_enabled=yes
	else
		has_version 'net-libs/webkit-gtk:3[jit]' && jit_is_enabled=yes
	fi
	[[ ${jit_is_enabled} == yes ]] && pax-mark -m "${ED}"/usr/bin/${PN} #480290
}

pkg_preinst() {
	gnome2_icon_savelist
}

pkg_postinst() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}

pkg_postrm() {
	fdo-mime_desktop_database_update
	fdo-mime_mime_database_update
	gnome2_icon_cache_update
}