summaryrefslogtreecommitdiff
blob: 06e3f763ac11b428a91bba178405764fb7970041 (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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-im/licq/licq-1.2.4-r2.ebuild,v 1.5 2003/02/07 20:47:56 seemant Exp $

IUSE="ssl socks5 qt kde gtk ncurses"

use kde && inherit kde-base
use kde && need-kde 3.0

DESCRIPTION="ICQ Client with v8 support" 
HOMEPAGE="http://www.licq.org"
LICENSE="GPL-2"

DEPEND="${DEPEND}
	ssl? ( >=dev-libs/openssl-0.9.6 )
	qt?  ( >=x11-libs/qt-3.0.0 )
	gtk? ( =x11-libs/gtk+-1.2* )
	ncurses? ( >=sys-libs/ncurses-5.3 )"

SRC_URI="http://download.sourceforge.net/licq/${P}.tar.bz2"
SLOT="2"
KEYWORDS="x86"

src_unpack() {
	unpack ${A}
	
	if [ -z "`use qt`" ]
	then
		if [ -z "`use gtk`" ]
		then
			ebegin "Setting console plugin as default..."
			cp ${S}/src/licq.conf.h ${T}
			sed "s:Plugin1 = qt-gui:Plugin1 = console:" \
				${T}/licq.conf.h > ${S}/src/licq.conf.h
			eend $?
		else
			ebegin "Setting GTK plugin as default..."
			cp ${S}/src/licq.conf.h ${T}
			sed "s:Plugin1 = qt-gui:Plugin1 = gtk-gui:" \
				${T}/licq.conf.h > ${S}/src/licq.conf.h
			eend $?
		fi
	fi
}

src_compile() {

	local first_conf
	use ssl		|| first_conf="${first_conf} --disable-openssl"
	use socks5	&& first_conf="${first_conf} --enable-socks5"

	econf ${first_conf} || die
	emake || die

	
	# Create the various plug-ins

	# First, the Qt plug-in
	if [ "`use qt`" ] 
	then
		# A hack to build against the latest QT:
		local v
		for v in /usr/qt/[0-9]
		do
			[ -d "${v}" ] && export QTDIR="${v}"
		done
		use kde && kde_src_compile myconf
		use kde && second_conf="${second_conf} ${myconf} --with-kde"

		# note! watch the --prefix=/usr placement;
		# licq itself installs into /usr, but the
		# optional kde/qt interface (to which second_conf belogns)
		# installs its files in $KDE3DIR/{lib,share}/licq

		cd ${S}/plugins/qt-gui
		einfo "Compiling Qt GUI plug-in"
		econf ${second_conf} || die
		emake || die
	fi

	# Now Jon's GTK plug-in
	if [ "`use gtk`" ]
	then
		cd ${S}/plugins/jons-gtk-gui
		einfo "Compiling GTK GUI plug-in"
		econf || die
		emake || die
	fi

	# Now the console plug-in
	if [ "`use ncurses `" ]
	then
	    cd ${S}/plugins/console
	    einfo "Compiling the Console plug-in"
	    econf || die
	    emake || die
	fi

	# The Auto-Responder plug-in
	cd ${S}/plugins/auto-reply
	einfo "Compiling the Auto-Reply plug-in"
	econf || die
	emake || die

	# The Remote Management Service
	cd ${S}/plugins/rms
	einfo "Compiling Remote Management Services plug-in"
	econf || die
	emake || die
}

src_install() {

	cd ${S}
	make DESTDIR=${D} install || die

	dodoc ChangeLog INSTALL README*

	# Install the plug-ins
	if [ "`use qt`" ] 
	then
		cd ${S}/plugins/qt-gui
		make DESTDIR=${D} install || die	
		docinto plugins/qt-gui
		dodoc README*
		
		# fix bug #12436, see my comment there
		if [ "`use kde`" ]; then
			cd $D/usr/lib/licq
			ln -s licq_kde-gui.la licq_qt-gui.la
			ln -s licq_kde-gui.so licq_qt-gui.so
		fi
	fi

	if [ "`use gtk`" ]
	then
		cd ${S}/plugins/jons-gtk-gui
		make DESTDIR=${D} install || die
		docinto plugins/jons-gtk-gui
		dodoc TODO
	fi

	if [ "`use ncurses`" ]
	then
	    cd ${S}/plugins/console
	    make DESTDIR=${D} install || die
	    docinto plugins/console
	    dodoc README
	fi


	cd ${S}/plugins/auto-reply
	make DESTDIR=${D} install || die
	docinto plugins/auto-reply
	dodoc README licq_autoreply.conf

	cd ${S}/plugins/rms
	make DESTDIR=${D} install || die
	docinto plugins/rms
	dodoc README licq_rms.conf
}