aboutsummaryrefslogtreecommitdiff
blob: 03c0dd936efee02b483fd8ee5bb31b2afb993ca3 (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
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /home/menelkir/portage/net-p2p/transmission/transmission-2.00b2.ebuild,v 1.1 2010/06/08 23:26:34 menelkir Exp $

EAPI=2
inherit autotools eutils fdo-mime gnome2-utils qt4-r2 subversion

DESCRIPTION="A Fast, Easy and Free BitTorrent client"
HOMEPAGE="http://www.transmissionbt.com/"
ESVN_REPO_URI="svn://svn.transmissionbt.com/Transmission/trunk"
ESVN_PROJECT="Transmission"
ESVN_BOOTSTRAP="TZ=UTC svn log -v \"\${ESVN_REPO_URI}\" >\"\${S}\"/ChangeLog; NOCONFIGURE=1 autogen.sh"


LICENSE="MIT GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~x86 ~x86-fbsd"
IUSE="gnome gtk libnotify sound qt4"

RDEPEND="
	sys-libs/zlib
	>=dev-libs/libevent-1.4.11
	<dev-libs/libevent-2
	>=dev-libs/openssl-0.9.4
	|| ( >=net-misc/curl-7.16.3[ssl]
		>=net-misc/curl-7.16.3[gnutls] )
	gtk? ( >=dev-libs/glib-2.15.5:2
		>=x11-libs/gtk+-2.12:2
		>=dev-libs/dbus-glib-0.70
		gnome? ( >=gnome-base/gconf-2.20.0 )
		libnotify? ( >=x11-libs/libnotify-0.4.3 )
		sound? ( >=media-libs/libcanberra-0.10 ) )
	qt4? ( x11-libs/qt-gui:4 )"
DEPEND="${RDEPEND}
	>=sys-devel/libtool-2.2.6b
	sys-devel/gettext
	>=dev-util/intltool-0.40
	dev-util/pkgconfig
	sys-apps/sed"

src_prepare() {
	sed -i \
		-e 's:-g -O0::g' \
		-e 's:-g -O3::g' \
		-e 's:-ggdb3::g' \
		configure.ac || die

	sed -i \
		-e 's:$${TRANSMISSION_TOP}/third-party/libevent/.libs/libevent.a:-levent:' \
		qt/qtr.pro || die

	eautoreconf
}

src_configure() {
	local myconf="--disable-libnotify --disable-libcanberra --disable-libgconf"

	if use gtk; then
		myconf="$(use_enable libnotify)
			$(use_enable sound libcanberra)
			$(use_enable gnome libgconf)"
	fi

	# cli and daemon doesn't have external deps
	econf \
		--disable-dependency-tracking \
		$(use_enable gtk) \
		--enable-cli \
		--enable-daemon \
		${myconf}

	if use qt4; then
		cd qt
		eqmake4 qtr.pro
	fi
}

src_compile() {
	emake || die

	if use qt4; then
		cd qt
		emake || die
	fi
}

src_install() {
	emake DESTDIR="${D}" install || die

	dodoc AUTHORS NEWS qt/README.txt
	rm -f "${D}"/usr/share/${PN}/web/LICENSE

	# these are likely outdated for 1.83
	newinitd "${FILESDIR}"/${PN}-daemon.initd.2 ${PN}-daemon || die
	newconfd "${FILESDIR}"/${PN}-daemon.confd.1 ${PN}-daemon || die

	if use qt4; then
		cd qt
		emake INSTALL_ROOT="${D}/usr" install || die
		make_desktop_entry qtr "Transmission Qt BitTorrent Client" ${PN} \
			"Network;FileTransfer;P2P;Qt"
		use gtk || doicon qt/icons/transmission.png
	fi
}

pkg_preinst() {
	gnome2_icon_savelist
}

pkg_postinst() {
	fdo-mime_desktop_database_update
	gnome2_icon_cache_update
}

pkg_postrm() {
	fdo-mime_desktop_database_update
	gnome2_icon_cache_update
}