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 |
} |