Gentoo Archives: gentoo-commits

From: "Michal Gorny (mgorny)" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in net-im/ekg2: metadata.xml ChangeLog ekg2-9999.ebuild
Date: Fri, 08 Oct 2010 14:02:57
Message-Id: 20101008135308.B210A20051@flycatcher.gentoo.org
1 mgorny 10/10/08 13:53:08
2
3 Added: metadata.xml ChangeLog ekg2-9999.ebuild
4 Log:
5 Re-introduce EKG2 in gx86, as per bug #187330. The live ebuild goes first, I'll drop in a snapshot too soon.
6
7 (Portage version: 2.2_rc91_p1/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.6 net-im/ekg2/metadata.xml
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/metadata.xml?rev=1.6&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/metadata.xml?rev=1.6&content-type=text/plain
14 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/metadata.xml?r1=1.5&r2=1.6
15
16
17
18
19 1.31 net-im/ekg2/ChangeLog
20
21 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/ChangeLog?rev=1.31&view=markup
22 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/ChangeLog?rev=1.31&content-type=text/plain
23 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/ChangeLog?r1=1.30&r2=1.31
24
25
26
27
28 1.1 net-im/ekg2/ekg2-9999.ebuild
29
30 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/ekg2-9999.ebuild?rev=1.1&view=markup
31 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/net-im/ekg2/ekg2-9999.ebuild?rev=1.1&content-type=text/plain
32
33 Index: ekg2-9999.ebuild
34 ===================================================================
35 # Copyright 1999-2010 Gentoo Foundation
36 # Distributed under the terms of the GNU General Public License v2
37 # $Header: /var/cvsroot/gentoo-x86/net-im/ekg2/ekg2-9999.ebuild,v 1.1 2010/10/08 13:53:08 mgorny Exp $
38
39 EAPI=2
40 ESVN_REPO_URI="http://toxygen.net/svn/ekg2/trunk"
41
42 inherit multilib perl-module scons-utils subversion toolchain-funcs
43
44 DESCRIPTION="Text-based, multi-protocol instant messenger"
45 HOMEPAGE="http://www.ekg2.org"
46 SRC_URI=""
47
48 LICENSE="GPL-2"
49 SLOT="0"
50 KEYWORDS=""
51 IUSE="dbus extra gadu gif gnutls gpg gpm gsm gtk icq idn inotify irc
52 jabber jogger jpeg mail minimal ncurses nls nntp oracle oss pcap
53 perl python readline remote rss ruby sim sms spell
54 sqlite sqlite3 srv ssl static unicode web xosd zlib"
55
56 # -- non-obvious plugin mappings --
57 # extra -> autoresponder, polchat, rivchat, rot13, xmsg
58 # !minimal -> ioctld, logs, rc
59 # any sound -> pcm
60 # web -> httprc_xajax
61
62 RDEPEND="
63 dbus? ( sys-apps/dbus )
64 gpg? ( app-crypt/gpgme )
65 gsm? ( media-sound/gsm )
66 gtk? ( x11-libs/gtk+:2 )
67 idn? ( net-dns/libidn )
68 nls? ( virtual/libintl )
69 oracle? ( dev-db/oracle-instantclient-basic )
70 pcap? ( net-libs/libpcap )
71 perl? ( dev-lang/perl )
72 python? ( dev-lang/python )
73 readline? ( sys-libs/readline )
74 rss? ( dev-libs/expat )
75 ruby? ( dev-lang/ruby )
76 sim? ( dev-libs/openssl )
77 xosd? ( x11-libs/xosd )
78 gadu? ( net-libs/libgadu
79 gif? ( media-libs/giflib )
80 jpeg? ( media-libs/jpeg ) )
81 irc? ( ssl? ( dev-libs/openssl ) )
82 jabber? ( dev-libs/expat
83 gnutls? ( net-libs/gnutls )
84 !gnutls? ( ssl? ( dev-libs/openssl ) )
85 zlib? ( sys-libs/zlib ) )
86 !minimal? (
87 zlib? ( sys-libs/zlib ) )
88 ncurses? ( sys-libs/ncurses[unicode?]
89 gpm? ( sys-libs/gpm )
90 spell? ( app-text/aspell ) )
91 sqlite3? ( dev-db/sqlite:3 )
92 !sqlite3? ( sqlite? ( dev-db/sqlite:0 ) )"
93
94 DEPEND="${RDEPEND}
95 nls? ( sys-devel/gettext )"
96
97 pkg_setup() {
98 if ! use gtk && ! use ncurses && ! use readline && ! use remote && ! use web; then
99 ewarn 'ekg2 is being compiled without any frontend, you should consider'
100 ewarn 'enabling at least one of following USEflags:'
101 ewarn ' gtk, ncurses, readline, remote, web.'
102 fi
103 }
104
105 use_plug() {
106 use ${1} && echo -n ,${2:-${1}}
107 }
108
109 # Build comma-separated plugin list based on USE
110 # We can put the same plugin few times if it's referenced by more than one flag
111
112 build_plugin_list() {
113 echo '@none' \
114 $(use_plug dbus) \
115 $(use_plug extra autoresponder,polchat,rivchat,rot13,xmsg) \
116 $(use_plug gadu gg) \
117 $(use_plug gpg) \
118 $(use_plug gsm) \
119 $(use_plug gtk) \
120 $(use_plug icq) \
121 $(use_plug irc) \
122 $(use_plug jabber jabber) \
123 $(use_plug jogger jogger) \
124 $(use_plug mail) \
125 $(use_plug !minimal ioctld,logs,rc) \
126 $(use_plug ncurses) \
127 $(use_plug nntp feed) \
128 $(use_plug oracle logsoracle) \
129 $(use_plug oss oss,pcm) \
130 $(use_plug pcap sniff) \
131 $(use_plug perl) \
132 $(use_plug python) \
133 $(use_plug readline) \
134 $(use_plug remote) \
135 $(use_plug rss feed) \
136 $(use_plug ruby) \
137 $(use_plug sim) \
138 $(use_plug sms) \
139 $(use_plug sqlite logsqlite) \
140 $(use_plug sqlite3 logsqlite) \
141 $(use_plug web httprc_xajax) \
142 $(use_plug xosd) \
143 | tr -d '[[:space:]]'
144 }
145
146 # create DEPS list for plugin
147 # + means dep forced (fail if unavailable, prioritize over other one-of)
148 # - means dep disabled (don't even check for it)
149 # use:opt maps USEflag to specified opt
150 # usea|useb|usec makes one-of opt
151
152 make_deps() {
153 local spls spll flag fopt out
154
155 echo -n " ${1}_DEPS="
156 shift
157
158 # loop over different opts
159 while [[ -n ${1} ]]; do
160 spls=${1}
161 out=
162 # loop over one-of opts
163 while true; do
164 # get next one-of, make sure spls gets empty if last
165 spll=${spls%%|*}
166 spls=${spls:$(( ${#spll} + 1 ))}
167 # parse use:opt, if no :opt specified fopt=flag
168 flag=${spll%:*}
169 fopt=${spll#*:}
170
171 # if one of one-of opt matches, we output only it
172 # else we need to output all of them disabled
173 use ${flag} && out=+ || out=${out}-
174 out=${out}${fopt}
175
176 # got more one-of opts? parse them only if this didn't match
177 if [[ -n ${spls} ]] && ! use ${flag}; then
178 out=${out},
179 continue
180 fi
181
182 echo -n ${out}
183 shift
184 [[ -n ${1} ]] && echo -n ,
185 break
186 done
187 done
188 }
189
190 # create all DEPS lists
191
192 build_addopts_list() {
193 use extra && make_deps XMSG inotify
194 use gadu && make_deps GG gif jpeg
195 use irc && make_deps IRC 'ssl:openssl'
196 use jabber && make_deps JABBER zlib 'gnutls|ssl:openssl'
197 use mail && make_deps MAIL inotify
198 use !minimal && make_deps LOGS zlib
199 use ncurses && make_deps NCURSES gpm spell:aspell
200 use rss || use nntp && make_deps FEED rss:expat
201 use sqlite3 || use sqlite && make_deps LOGSQLITE 'sqlite3|sqlite'
202 }
203
204 # SCons doesn't build perl modules, perl-module.eclass does it better
205
206 foreach_perl_module() {
207 if use perl; then
208 local d
209 for d in "${S}"/plugins/perl/*/; do
210 cd "${d}" || die
211 ${1}
212
213 # workaround perl-module.eclass
214 unset SRC_PREP
215 done
216 fi
217 }
218
219 src_configure() {
220 # HARDDEPS -> build should fail if some dep is unsatisfied
221 # DISTNOTES -> are displayed with /version, helpful for upstream bug reports
222
223 tc-export CC
224 escons PLUGINS=$(build_plugin_list) $(build_addopts_list) \
225 HARDDEPS=1 SKIPCHECKS=1 RELPLUGINS=0 \
226 $(use_scons unicode UNICODE) $(use_scons nls NLS) \
227 $(use_scons static STATIC) $(use_scons idn IDN) \
228 $(use_scons srv RESOLV) \
229 PREFIX=/usr LIBDIR="\$EPREFIX/$(get_libdir)" \
230 DOCDIR="\$DATAROOTDIR/doc/${PF}" \
231 DISTNOTES="Gentoo ebuild ${PVR}, USE='${USE}'" \
232 ${MAKEOPTS} conf || die "escons conf failed"
233
234 foreach_perl_module perl-module_src_configure
235 }
236
237 src_compile() {
238 # SKIPCONF -> no need to reconfigure
239
240 escons SKIPCONF=1 ${MAKEOPTS} || die
241
242 foreach_perl_module perl-module_src_compile
243 }
244
245 src_test() {
246 foreach_perl_module perl-module_src_test
247 }
248
249 src_install() {
250 escons DESTDIR="${D}" ${MAKEOPTS} install || die
251
252 foreach_perl_module perl-module_src_install
253
254 # XXX: replace it when an alternative is available
255 prepalldocs
256 }