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