summaryrefslogtreecommitdiff
blob: 14c908407fea220fb3d9bb13f540e88ab039ff67 (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
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-im/gaim/gaim-0.75-r11.ebuild,v 1.2 2004/03/26 14:33:36 rizzo Exp $

inherit flag-o-matic eutils gcc
use debug && inherit debug

IUSE="nls perl spell nas cjk debug crypt gnome"

DESCRIPTION="GTK Instant Messenger client"
HOMEPAGE="http://gaim.sourceforge.net/"
SRC_URI="mirror://sourceforge/gaim/${P}.tar.bz2"

SLOT="0"
LICENSE="GPL-2"
KEYWORDS="~x86 ~sparc ~amd64 ~ppc ~alpha ~ia64 ~mips"

DEPEND=">=x11-libs/gtk+-2.0
	>=dev-libs/glib-2.0
	nas? ( >=media-libs/nas-1.4.1-r1 )
	sys-devel/gettext
	media-libs/libao
	>=sys-apps/sed-4.0.0
	>=media-libs/audiofile-0.2.0
	perl? ( >=dev-lang/perl-5.6.1 )
	spell? ( >=app-text/gtkspell-2.0.2 )
	|| ( dev-libs/nss net-www/mozilla )
	gnome? ( >=gnome-base/libgnome-2.4.0 )"
PDEPEND="crypt? ( net-im/gaim-encryption )"

pkg_setup() {
	ewarn
	ewarn "If you experience problems with gaim, file them as bugs with"
	ewarn "Gentoo's bugzilla, http://bugs.gentoo.org.  DO NOT report them"
	ewarn "as bugs with gaim's sourceforge tracker, and by all means DO NOT"
	ewarn "seek help in #gaim."
	ewarn
	ewarn "Be sure to include a backtrace for any seg faults, see"
	ewarn "http://gaim.sourceforge.net/gdb.php for details on backtraces."
	ewarn
	for TICKER in 1 2 3 4 5; do
		# Double beep here.
		echo -ne "\a" ; sleep 0.1 &>/dev/null ; sleep 0,1 &>/dev/null
		echo -ne "\a" ; sleep 1
	done
	sleep 8
}

src_unpack() {
	unpack ${P}.tar.bz2 || die
	cd ${S}
	epatch ${FILESDIR}/gaim-0.75-static-prpls.patch
	epatch ${FILESDIR}/gaim-0.76cvs-signals-varargs.diff
	epatch ${FILESDIR}/gaim-0.76cvs-yahoo-login-fix.diff
	epatch ${FILESDIR}/gaim-0.75-yahoo-security.diff
	epatch ${FILESDIR}/gaim-0.76cvs-yahoo-misc-fixes-1.diff

	# put in gentoo branding
	sed "s/GAIM_VERSION/${PV}/; s/GENTOO_EBUILD_VERSION/${PV}-gentoo-${PR%r0}/" \
		${FILESDIR}/gaim-gentoo-branding.patch \
		> ${WORKDIR}/gaim-gentoo-branding.patch
	epatch ${WORKDIR}/gaim-gentoo-branding.patch

	use cjk && epatch ${FILESDIR}/gaim-0.74_cjk_gtkconv.patch
	use gnome && epatch ${FILESDIR}/gaim-0.74-gnome-url-handler.patch
}

src_compile() {
	einfo "Replacing -Os CFLAG with -O2"
	replace-flags -Os -O2

	# -msse2 doesn't play nice on gcc 3.2
	[ "`gcc-version`" == "3.2" ] && filter-flags -msse2

	local myconf
	use perl || myconf="${myconf} --disable-perl"
	use spell || myconf="${myconf} --disable-gtkspell"
	use nls  || myconf="${myconf} --disable-nls"
	use nas && myconf="${myconf} --enable-nas" || myconf="${myconf} --disable-nas"

	NSS_LIB=/usr/lib
	NSS_INC=/usr/include
	has_version dev-libs/nss && {
		# Only need to specify this if no pkgconfig from mozilla
		myconf="${myconf} --with-nspr-includes=${NSS_INC}/nspr"
		myconf="${myconf} --with-nss-includes=${NSS_INC}/nss"
		myconf="${myconf} --with-nspr-libs=${NSS_LIB}"
		myconf="${myconf} --with-nss-libs=${NSS_LIB}"
	}

	econf ${myconf} || die "Configuration failed"

	emake || MAKEOPTS="${MAKEOPTS} -j1" emake || die "Make failed"
	sed -i -e 's:mkinstalldirs =.*:mkinstalldirs = \$\(MKINSTALLDIRS\):' po/Makefile
}

src_install() {
	make install DESTDIR=${D} || die "Install failed"
	dodoc ABOUT-NLS AUTHORS COPYING HACKING INSTALL NEWS PROGRAMMING_NOTES README ChangeLog VERSION

	# Copy header files for gaim plugin use
	dodir /usr/include/gaim/src
	cp config.h ${D}/usr/include/gaim/
	cd ${S}/src
	tar cf - *.h | (cd ${D}/usr/include/gaim/src ; tar xvf -)
	assert "Failed to install header files to /usr/include/gaim"
}

pkg_postinst() {
	if [ `use cjk` ]; then
		ewarn
		ewarn "You have chosen (by selecting 'USE=cjk') to compile with"
		ewarn "a patch for CJK support.  Please be aware that this patch"
		ewarn "causes problems with skkinput.  kinput2 works fine.  Details"
		ewarn "can be found at http://bugs.gentoo.org/show_bug.cgi?id=24657#c23"
		ewarn
	fi

	ewarn
	ewarn "If you experience problems with gaim, file them as bugs with"
	ewarn "Gentoo's bugzilla, http://bugs.gentoo.org.  DO NOT report them"
	ewarn "as bugs with gaim's sourceforge tracker, and by all means DO NOT"
	ewarn "seek help in #gaim."
	ewarn
	ewarn "Be sure to include a backtrace for any seg faults, see"
	ewarn "http://gaim.sourceforge.net/gdb.php for details on backtraces."
	ewarn
	for TICKER in 1 2 3 4 5; do
		# Double beep here.
		echo -ne "\a" ; sleep 0.1 &>/dev/null ; sleep 0,1 &>/dev/null
		echo -ne "\a" ; sleep 1
	done
	sleep 8
}