summaryrefslogtreecommitdiff
blob: bd6bc2c9de9ffbc75c54289d36cea2e668f3ef14 (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-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-client/midori/midori-0.5.10.ebuild,v 1.3 2015/07/01 08:08:17 zlogene Exp $

EAPI=5

PYTHON_COMPAT=( python2_7 )
PYTHON_REQ_USE='threads(+)'

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 +jit +webkit2 zeitgeist"

RDEPEND="
	>=app-crypt/gcr-3
	>=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
	x11-libs/libXScrnSaver
	deprecated? (
		>=net-libs/webkit-gtk-1.8.1:2[jit=]
		>=x11-libs/gtk+-2.24:2
		)
	!deprecated? (
		x11-libs/gtk+:3
		webkit2? ( >=net-libs/webkit-gtk-1.11.91:3[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 )
"

S=${WORKDIR}

pkg_setup() {
	python-any-r1_pkg_setup
}

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

src_prepare() {
	epatch "${FILESDIR}/${P}-fix-webkit2-build-breakage.patch"
	vala_src_prepare
	sed -i -e '/install/s:COPYING:HACKING TODO TRANSLATE:' CMakeLists.txt || die
}

src_configure() {
	strip-linguas -i po

	local mycmakeargs=(
		-DCMAKE_INSTALL_DOCDIR=/usr/share/doc/${PF}
		$(cmake-utils_use_use doc APIDOCS)
		$(cmake-utils_use_use introspection GIR)
		$(cmake-utils_use_use granite)
		$(cmake-utils_use_use zeitgeist)
		-DVALA_EXECUTABLE="${VALAC}"
		)

	if use deprecated; then
		mycmakeargs+=(
			-DUSE_GTK3=OFF
			-DHALF_BRO_INCOM_WEBKIT2=OFF
			)
	else
		mycmakeargs+=(
			-DUSE_GTK3=ON
			$(cmake-utils_use webkit2 HALF_BRO_INCOM_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
}