summaryrefslogtreecommitdiff
path: root/net-im/bitlbee
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-05-14 11:09:11 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-05-14 11:09:11 +0100
commitdeba8115d2c2af26df42966b91ef04ff4dd79cde (patch)
tree9a48f42594e1a9e6b2020d5535a784314434d7a7 /net-im/bitlbee
parent38423c67c8a23f6a1bc42038193182e2da3116eb (diff)
gentoo resync : 14.05.2020
Diffstat (limited to 'net-im/bitlbee')
-rw-r--r--net-im/bitlbee/Manifest10
-rw-r--r--net-im/bitlbee/bitlbee-3.5.1.ebuild30
-rw-r--r--net-im/bitlbee/bitlbee-3.6-r1.ebuild (renamed from net-im/bitlbee/bitlbee-3.6.ebuild)37
-rw-r--r--net-im/bitlbee/bitlbee-9999.ebuild35
-rw-r--r--net-im/bitlbee/files/bitlbee-3.5-libcheck.patch645
-rw-r--r--net-im/bitlbee/files/bitlbee-3.5-libevent.patch71
-rw-r--r--net-im/bitlbee/metadata.xml9
7 files changed, 776 insertions, 61 deletions
diff --git a/net-im/bitlbee/Manifest b/net-im/bitlbee/Manifest
index c54fdd1c9a98..14561e9b9784 100644
--- a/net-im/bitlbee/Manifest
+++ b/net-im/bitlbee/Manifest
@@ -1,3 +1,5 @@
+AUX bitlbee-3.5-libcheck.patch 17203 BLAKE2B 14cb1ba02178e89ed098518a8fb48b6f3124c197422acf3332c1fe579fb34ffd63e2fc377a6eea93cbe14a91129d22884eae7760fb6e8090afa8245c9f958f2a SHA512 25ea4be83cce5d2ccc1a5e6655e468678a26b570a3efb7b19429ee379987efce54d32864508ed36644bbcf351cc1b5e4b750a2824b7a0b7e7df711262bbf5e2c
+AUX bitlbee-3.5-libevent.patch 1942 BLAKE2B a6233d97f17d2695efe13a6bd395ba77e72e7c5c3177ae8aaf3223ac3f0979b9650cefcbb000d5e4ccc9ecb8fdab97173ad59022453c5b13c8486fb095b4ff14 SHA512 b8937c542eda36aa5dcdd3213513f6dd5a928166f1017ef370a78765dbc511552072fe46d8322dea27ee716126fd859245e6c2fa713f6b255fb6e7a4ce2c1328
AUX bitlbee-3.5-systemd-user.patch 188 BLAKE2B 9cdb3713aaf213b741a8dbef0a790a35458b955515bb720987471c519848ec6b9a232fe136ca554a3fe1eb0c184d96b8774cee4a41c0cd3d822a33598ac50e79 SHA512 1775b5dce7bdd4fbe52a46e361d8a9b0127be2dc32a3e8b438fca8fce9139903feb91c968847f002e099553eb8d4a110914cfb19121ae79a3f6c9eb100846edd
AUX bitlbee-3.5-verbose-build.patch 5790 BLAKE2B d5ad371938cb7b8a2f9e0925633602ebc6a9a774dc0dfae6ba30350597840c4472411a1eced122b9f33afc3d36b221b8d9176c0d39e375bcbb100a7ae211dcde SHA512 0bb4d1e4d954ca4812f1968a3c83ae6d7ea1d812066e963b00471aa516b1ac0ca041c8574bfb4a1e91236b2e1ad3c9edf3041b7467a84bf22cc120b4e7e69faa
AUX bitlbee.confd-r1 291 BLAKE2B bf576c629a6554127a8ae54a54d9ac03cc68accdf226376620727f0f77eab60610ad096b084e7b1568366376b8c7aacd180f2dbd276369af4389c8cd4791cbb1 SHA512 e5dcb6bdfd382b28011c5fc93273d45bfd9af0c652e4f8db1c0d11615b38c5dbb7042d9b33fa5bdce844593e85a5776f2b19f75e9a67a2c46dc88b90f260e11e
@@ -6,7 +8,7 @@ AUX bitlbee.initd-r1 675 BLAKE2B fb9c803301bb73b1bb6a92d059ca85fbee119849cd27d92
AUX bitlbee.initd-r2 244 BLAKE2B 1f4900c9bcad2469ad97e4a4c34e58124e4e3634bbcb8d3c6d30b16ab343995870cfa27a33cfaff04df59fc52f888368d173966a2d5306b2adae98c72c28a305 SHA512 c965f8bbd2b3d13a6c66455a3cc503a94ea0c8000a0e41e283ce1828ee59105d162552979343e8ebb6513fd15bf44a4274b0558928ae0e89b424773cdb8b7b97
DIST bitlbee-3.5.1.tar.gz 680351 BLAKE2B 952a12975d4f95020a5b577603aea791fca754006dc96af3c500d3885b6f2c50cabe51ab698625acb717524a729ef03d18a29aa25bd4815bae2f18fa6298aeea SHA512 4eb3b0d3a92910c8dd789cd23338cc6296bf40212c5244fcb27a88ede10e86424ea59c78e719841863701a7fdd8c61819f2775f7b58833e287d9110e49d036f3
DIST bitlbee-3.6.tar.gz 534961 BLAKE2B 007681a384fcb2c0736b901dfdc213ba0829ca006ad3204aca1bc4520a3874760867df6165a9218a9deeabb13bc06f118c9e2f804a97e671a348734f6cb7e963 SHA512 ccbf0f23e228de2de147241f36f59744b2256cba958e2fabfba0cfa60935e55bbb7d7e20fffa54da9a345e55ffa9ca82cb62e9b99dc738ba35c6e268c6561a8d
-EBUILD bitlbee-3.5.1.ebuild 3905 BLAKE2B 71381fb2a582c6731362220b919d7866744c898a6b84e748d914d44e8fd523235b74bf66a0f239cf59e2a07b6059687258e8c94baa7d966571c510c700f51a22 SHA512 02c28935d45810448ed53d3b891a6558a1768e96c49e702283a202d1bab58ca9e0dcda7711efc14d0dd9b335283cad691f33fbf43a194c953626486443711e00
-EBUILD bitlbee-3.6.ebuild 3359 BLAKE2B b1e4245e437b361d430bae8b82f12d59ad04316b7ff3ff75658f351af8131df4b4b5e0b0e8f63e012530b45145a3a6b818a8c1f0a2561594dfaadc8fbe1535ed SHA512 49a5d4f2b1d8c9b52424e3d6e4b8af9f719ccc2ff4116ab7040b7adda40d88cc82968bf97f3b4d56ebaa1dd5added10b977ab284fefad0fd8f24813b54822997
-EBUILD bitlbee-9999.ebuild 3359 BLAKE2B b1e4245e437b361d430bae8b82f12d59ad04316b7ff3ff75658f351af8131df4b4b5e0b0e8f63e012530b45145a3a6b818a8c1f0a2561594dfaadc8fbe1535ed SHA512 49a5d4f2b1d8c9b52424e3d6e4b8af9f719ccc2ff4116ab7040b7adda40d88cc82968bf97f3b4d56ebaa1dd5added10b977ab284fefad0fd8f24813b54822997
-MISC metadata.xml 943 BLAKE2B 8179e8e43b5f536b475f2a38f2b661d5f018d8c5380b38f2fab7789859144550f559fd35ffa13663022fc2438d61e4557a21401496244de9477b49d97bbf1d6d SHA512 f46b782777e076ca783dff0e4c9ba7494339711063f878c02fdc9fb1ad3a1f9bfb051b08c0242edd1845946b7dfcd64aea129d2e0966d1a011db35e4cb6dc4bd
+EBUILD bitlbee-3.5.1.ebuild 3716 BLAKE2B f465235f3dd0d458a491812e1a8c7804ec640a6341950f8608c75e1275770efc464d22d15f3529de0d1c93d4d1a1ffee7d33960b5a3a265913aca36a34605495 SHA512 4f7eeaa54b88178ca786e1f6114aa01efabd7eb86b47775a0da04890b7892d06e9747c6e1ea70dde7876a63afc75939947f24fb0ad0ad4d3b9ca4669dc993a70
+EBUILD bitlbee-3.6-r1.ebuild 3337 BLAKE2B 72097da010251cf1f7c389b11eb8342b91d7b6e05da5139b09d8fa998a1515d4e0cd0d41a1a33ba4a4d628670cacb89481d22d3851fb2efe0d4a42e72ccb3515 SHA512 8f00c53c65bb2832e2df1322b0de6739a0b31de48be53e0b91b53e6df178c42e697d12521b50bf029b519a2b8a1382a7937b08af2883028245a215ec7b905d18
+EBUILD bitlbee-9999.ebuild 3257 BLAKE2B 9761b738113d5eb9761954e48982eb718a122c7bf908ee108e90d7c910a84fc4fb4a31fd40411262bb28aa93f4fa18dde1dd86b155df9829e7d197a2a24daa98 SHA512 19ef30fd8a7a96ab527eb9c42e8649ebdfa2ea50d4b5bcd5fed06a4186e3c8a64fffcf827ccf1b126d9e77d9a15bd44214eddc2216fe3041992c222d7075bf86
+MISC metadata.xml 1138 BLAKE2B ec881562587832981f817dc9601f094e987ee3e1a5d92f310f4bac1fbdac70b434e8c5d06b59be149e5c955e4027865c6bf72de1903b584d638440f51c7cca0c SHA512 01da5fed1649b6d59837e8dd89ee65c1f9bc3763303a66c0959f0b5d14941f38fc1dcfb3bf22d5041d7a4d99f2e9b8a38983154f3f5d7e0c7a7308ad8a3a3f95
diff --git a/net-im/bitlbee/bitlbee-3.5.1.ebuild b/net-im/bitlbee/bitlbee-3.5.1.ebuild
index 3ce9cca1ef23..5bae1f674e26 100644
--- a/net-im/bitlbee/bitlbee-3.5.1.ebuild
+++ b/net-im/bitlbee/bitlbee-3.5.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-inherit user systemd toolchain-funcs
+inherit systemd toolchain-funcs
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/bitlbee/bitlbee.git"
@@ -30,6 +30,8 @@ REQUIRED_USE="
"
COMMON_DEPEND="
+ acct-group/bitlbee
+ acct-user/bitlbee
>=dev-libs/glib-2.16
purple? ( net-im/pidgin )
libevent? ( dev-libs/libevent:= )
@@ -52,20 +54,12 @@ RDEPEND="${COMMON_DEPEND}
virtual/logger
xinetd? ( sys-apps/xinetd )"
-pkg_setup() {
- enewgroup bitlbee
- enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
-}
-
-src_prepare() {
- if [[ ${PV} != "9999" ]]; then
- eapply \
- "${FILESDIR}"/${PN}-3.5-systemd-user.patch \
- "${FILESDIR}"/${PN}-3.5-verbose-build.patch
- fi
-
- eapply_user
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5-systemd-user.patch
+ "${FILESDIR}"/${PN}-3.5-verbose-build.patch
+ "${FILESDIR}"/${PN}-3.5-libcheck.patch
+ "${FILESDIR}"/${PN}-3.5-libevent.patch
+)
src_configure() {
local myconf
@@ -153,10 +147,6 @@ src_install() {
}
pkg_postinst() {
- chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
- [[ -d "${ROOT}"/var/run/bitlbee ]] &&
- chown -R bitlbee:bitlbee "${ROOT}"/var/run/bitlbee
-
if [[ -z ${REPLACING_VERSIONS} ]]; then
einfo
elog "The bitlbee init script will now attempt to stop all processes owned by the"
diff --git a/net-im/bitlbee/bitlbee-3.6.ebuild b/net-im/bitlbee/bitlbee-3.6-r1.ebuild
index 9df170295b6b..28e2ef6bf5e2 100644
--- a/net-im/bitlbee/bitlbee-3.6.ebuild
+++ b/net-im/bitlbee/bitlbee-3.6-r1.ebuild
@@ -1,9 +1,11 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit user systemd toolchain-funcs
+PYTHON_COMPAT=( python3_{6..8} )
+
+inherit python-any-r1 systemd toolchain-funcs
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/bitlbee/bitlbee.git"
@@ -30,7 +32,9 @@ REQUIRED_USE="
"
COMMON_DEPEND="
- >=dev-libs/glib-2.16
+ acct-group/bitlbee
+ acct-user/bitlbee
+ dev-libs/glib:2
purple? ( net-im/pidgin )
libevent? ( dev-libs/libevent:= )
otr? ( >=net-libs/libotr-4 )
@@ -44,22 +48,23 @@ COMMON_DEPEND="
)
"
DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
selinux? ( sec-policy/selinux-bitlbee )
- test? ( dev-libs/check )"
+ test? ( dev-libs/check )
+"
RDEPEND="${COMMON_DEPEND}
- xinetd? ( sys-apps/xinetd )"
+ xinetd? ( sys-apps/xinetd )
+"
-pkg_setup() {
- enewgroup bitlbee
- enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
-}
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig
+"
-src_prepare() {
- [[ ${PV} != "9999" ]] && eapply "${FILESDIR}"/${PN}-3.5-systemd-user.patch
- eapply_user
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5-systemd-user.patch
+ "${FILESDIR}"/${PN}-3.5-libcheck.patch
+ "${FILESDIR}"/${PN}-3.5-libevent.patch
+)
src_configure() {
local myconf
@@ -145,7 +150,3 @@ src_install() {
exeinto /usr/share/bitlbee
doexe utils/{convert_purple.py,bitlbee-ctl.pl}
}
-
-pkg_postinst() {
- chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
-}
diff --git a/net-im/bitlbee/bitlbee-9999.ebuild b/net-im/bitlbee/bitlbee-9999.ebuild
index 9df170295b6b..b76660b5f28b 100644
--- a/net-im/bitlbee/bitlbee-9999.ebuild
+++ b/net-im/bitlbee/bitlbee-9999.ebuild
@@ -1,9 +1,11 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit user systemd toolchain-funcs
+PYTHON_COMPAT=( python3_{6..8} )
+
+inherit python-any-r1 systemd toolchain-funcs
if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://github.com/bitlbee/bitlbee.git"
@@ -30,7 +32,9 @@ REQUIRED_USE="
"
COMMON_DEPEND="
- >=dev-libs/glib-2.16
+ acct-group/bitlbee
+ acct-user/bitlbee
+ dev-libs/glib:2
purple? ( net-im/pidgin )
libevent? ( dev-libs/libevent:= )
otr? ( >=net-libs/libotr-4 )
@@ -44,22 +48,21 @@ COMMON_DEPEND="
)
"
DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
selinux? ( sec-policy/selinux-bitlbee )
- test? ( dev-libs/check )"
+ test? ( dev-libs/check )
+"
RDEPEND="${COMMON_DEPEND}
- xinetd? ( sys-apps/xinetd )"
+ xinetd? ( sys-apps/xinetd )
+"
-pkg_setup() {
- enewgroup bitlbee
- enewuser bitlbee -1 -1 /var/lib/bitlbee bitlbee
-}
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig
+"
-src_prepare() {
- [[ ${PV} != "9999" ]] && eapply "${FILESDIR}"/${PN}-3.5-systemd-user.patch
- eapply_user
-}
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5-systemd-user.patch
+)
src_configure() {
local myconf
@@ -145,7 +148,3 @@ src_install() {
exeinto /usr/share/bitlbee
doexe utils/{convert_purple.py,bitlbee-ctl.pl}
}
-
-pkg_postinst() {
- chown -R bitlbee:bitlbee "${ROOT}"/var/lib/bitlbee
-}
diff --git a/net-im/bitlbee/files/bitlbee-3.5-libcheck.patch b/net-im/bitlbee/files/bitlbee-3.5-libcheck.patch
new file mode 100644
index 000000000000..474789e5e1c9
--- /dev/null
+++ b/net-im/bitlbee/files/bitlbee-3.5-libcheck.patch
@@ -0,0 +1,645 @@
+diff --git a/tests/check_arc.c b/tests/check_arc.c
+index 9fcd4b25..c7e1dfef 100644
+--- a/tests/check_arc.c
++++ b/tests/check_arc.c
+@@ -17,7 +17,7 @@ char *clear_tests[] =
+ NULL
+ };
+
+-static void check_codec(int l)
++START_TEST(check_codec)
+ {
+ int i;
+
+@@ -37,6 +37,7 @@ static void check_codec(int l)
+ g_free(decrypted);
+ }
+ }
++END_TEST
+
+ struct {
+ unsigned char crypted[30];
+@@ -72,7 +73,7 @@ struct {
+ { "", 0, NULL }
+ };
+
+-static void check_decod(int l)
++START_TEST(check_decod)
+ {
+ int i;
+
+@@ -92,6 +93,7 @@ static void check_decod(int l)
+ g_free(decrypted);
+ }
+ }
++END_TEST
+
+ Suite *arc_suite(void)
+ {
+diff --git a/tests/check_help.c b/tests/check_help.c
+index 92d7c28f..ccf136a4 100644
+--- a/tests/check_help.c
++++ b/tests/check_help.c
+@@ -7,20 +7,24 @@
+ #include "help.h"
+
+ START_TEST(test_help_initfree)
+-help_t * h, *r;
+-r = help_init(&h, "/dev/null");
+-fail_if(r == NULL);
+-fail_if(r != h);
++{
++ help_t * h, *r;
++ r = help_init(&h, "/dev/null");
++ fail_if(r == NULL);
++ fail_if(r != h);
+
+-help_free(&h);
+-fail_if(h != NULL);
++ help_free(&h);
++ fail_if(h != NULL);
++}
+ END_TEST
+
+ START_TEST(test_help_nonexistent)
+-help_t * h, *r;
+-r = help_init(&h, "/dev/null");
+-fail_unless(help_get(&h, "nonexistent") == NULL);
+-fail_if(r == NULL);
++{
++ help_t * h, *r;
++ r = help_init(&h, "/dev/null");
++ fail_unless(help_get(&h, "nonexistent") == NULL);
++ fail_if(r == NULL);
++}
+ END_TEST
+
+ Suite *help_suite(void)
+diff --git a/tests/check_irc.c b/tests/check_irc.c
+index 5c940729..e2054106 100644
+--- a/tests/check_irc.c
++++ b/tests/check_irc.c
+@@ -8,49 +8,53 @@
+ #include "testsuite.h"
+
+ START_TEST(test_connect)
+-GIOChannel * ch1, *ch2;
+-irc_t *irc;
+-char *raw;
+-fail_unless(g_io_channel_pair(&ch1, &ch2));
++{
++ GIOChannel * ch1, *ch2;
++ irc_t *irc;
++ char *raw;
++ fail_unless(g_io_channel_pair(&ch1, &ch2));
+
+-irc = irc_new(g_io_channel_unix_get_fd(ch1));
++ irc = irc_new(g_io_channel_unix_get_fd(ch1));
+
+-irc_free(irc);
++ irc_free(irc);
+
+-fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
++ fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
+
+-fail_if(strcmp(raw, "") != 0);
++ fail_if(strcmp(raw, "") != 0);
+
+-g_free(raw);
++ g_free(raw);
++}
+ END_TEST
+
+ START_TEST(test_login)
+-GIOChannel * ch1, *ch2;
+-irc_t *irc;
+-char *raw;
+-fail_unless(g_io_channel_pair(&ch1, &ch2));
++{
++ GIOChannel * ch1, *ch2;
++ irc_t *irc;
++ char *raw;
++ fail_unless(g_io_channel_pair(&ch1, &ch2));
+
+-g_io_channel_set_flags(ch1, G_IO_FLAG_NONBLOCK, NULL);
+-g_io_channel_set_flags(ch2, G_IO_FLAG_NONBLOCK, NULL);
++ g_io_channel_set_flags(ch1, G_IO_FLAG_NONBLOCK, NULL);
++ g_io_channel_set_flags(ch2, G_IO_FLAG_NONBLOCK, NULL);
+
+-irc = irc_new(g_io_channel_unix_get_fd(ch1));
++ irc = irc_new(g_io_channel_unix_get_fd(ch1));
+
+-fail_unless(g_io_channel_write_chars(ch2, "NICK bla\r\r\n"
+- "USER a a a a\n", -1, NULL, NULL) == G_IO_STATUS_NORMAL);
+-fail_unless(g_io_channel_flush(ch2, NULL) == G_IO_STATUS_NORMAL);
++ fail_unless(g_io_channel_write_chars(ch2, "NICK bla\r\r\n"
++ "USER a a a a\n", -1, NULL, NULL) == G_IO_STATUS_NORMAL);
++ fail_unless(g_io_channel_flush(ch2, NULL) == G_IO_STATUS_NORMAL);
+
+-g_main_iteration(FALSE);
+-irc_free(irc);
++ g_main_iteration(FALSE);
++ irc_free(irc);
+
+-fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
++ fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
+
+-fail_unless(strstr(raw, "001") != NULL);
+-fail_unless(strstr(raw, "002") != NULL);
+-fail_unless(strstr(raw, "003") != NULL);
+-fail_unless(strstr(raw, "004") != NULL);
+-fail_unless(strstr(raw, "005") != NULL);
++ fail_unless(strstr(raw, "001") != NULL);
++ fail_unless(strstr(raw, "002") != NULL);
++ fail_unless(strstr(raw, "003") != NULL);
++ fail_unless(strstr(raw, "004") != NULL);
++ fail_unless(strstr(raw, "005") != NULL);
+
+-g_free(raw);
++ g_free(raw);
++}
+ END_TEST
+
+ Suite *irc_suite(void)
+diff --git a/tests/check_jabber_sasl.c b/tests/check_jabber_sasl.c
+index e7ea8a75..b6c34bb8 100644
+--- a/tests/check_jabber_sasl.c
++++ b/tests/check_jabber_sasl.c
+@@ -77,7 +77,7 @@ struct {
+ { NULL, NULL, NULL }
+ };
+
+-static void check_get_part(int l)
++START_TEST(check_get_part)
+ {
+ int i;
+
+@@ -103,6 +103,7 @@ static void check_get_part(int l)
+ g_free(res);
+ }
+ }
++END_TEST
+
+ Suite *jabber_sasl_suite(void)
+ {
+diff --git a/tests/check_jabber_util.c b/tests/check_jabber_util.c
+index e4d4533a..411f58b1 100644
+--- a/tests/check_jabber_util.c
++++ b/tests/check_jabber_util.c
+@@ -8,7 +8,7 @@
+
+ static struct im_connection *ic;
+
+-static void check_buddy_add(int l)
++START_TEST(check_buddy_add)
+ {
+ struct jabber_buddy *budw1, *budw2, *budw3, *budn, *bud;
+
+@@ -93,8 +93,9 @@ static void check_buddy_add(int l)
+ fail_unless(jabber_buddy_remove(ic, "bugtest@google.com/B"));
+ fail_unless(jabber_buddy_remove(ic, "bugtest@google.com/C"));
+ }
++END_TEST
+
+-static void check_compareJID(int l)
++START_TEST(check_compareJID)
+ {
+ fail_unless(jabber_compare_jid("bugtest@google.com/B", "bugtest@google.com/A"));
+ fail_if(jabber_compare_jid("bugtest1@google.com/B", "bugtest@google.com/A"));
+@@ -105,8 +106,9 @@ static void check_compareJID(int l)
+ fail_if(jabber_compare_jid(NULL, ""));
+ fail_if(jabber_compare_jid("", NULL));
+ }
++END_TEST
+
+-static void check_hipchat_slug(int l)
++START_TEST(check_hipchat_slug)
+ {
+ int i;
+
+@@ -124,6 +126,7 @@ static void check_hipchat_slug(int l)
+ g_free(new);
+ }
+ }
++END_TEST
+
+ Suite *jabber_util_suite(void)
+ {
+diff --git a/tests/check_md5.c b/tests/check_md5.c
+index a68df687..5ca52a5b 100644
+--- a/tests/check_md5.c
++++ b/tests/check_md5.c
+@@ -29,7 +29,7 @@ struct md5_test {
+ { NULL },
+ };
+
+-static void check_sums(int l)
++START_TEST(check_sums)
+ {
+ int i;
+
+@@ -45,6 +45,7 @@ static void check_sums(int l)
+ fail_if(memcmp(tests[i].expected, sum, 16) != 0, "%s failed", tests[i].str);
+ }
+ }
++END_TEST
+
+ Suite *md5_suite(void)
+ {
+diff --git a/tests/check_set.c b/tests/check_set.c
+index 6f8b39b5..cf9429e6 100644
+--- a/tests/check_set.c
++++ b/tests/check_set.c
+@@ -7,97 +7,123 @@
+ #include "testsuite.h"
+
+ START_TEST(test_set_add)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(t->data == data);
+-fail_unless(strcmp(t->def, "default") == 0);
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "default", NULL, data);
++ fail_unless(s == t);
++ fail_unless(t->data == data);
++ fail_unless(strcmp(t->def, "default") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_add_existing)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-t = set_add(&s, "name", "newdefault", NULL, data);
+-fail_unless(s == t);
+-fail_unless(strcmp(t->def, "newdefault") == 0);
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "default", NULL, data);
++ t = set_add(&s, "name", "newdefault", NULL, data);
++ fail_unless(s == t);
++ fail_unless(strcmp(t->def, "newdefault") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_find_unknown)
+-set_t * s = NULL;
+-fail_unless(set_find(&s, "foo") == NULL);
++{
++ set_t * s = NULL;
++ fail_unless(set_find(&s, "foo") == NULL);
++}
+ END_TEST
+
+ START_TEST(test_set_find)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_find(&s, "name") == t);
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "default", NULL, data);
++ fail_unless(s == t);
++ fail_unless(set_find(&s, "name") == t);
++}
+ END_TEST
+
+ START_TEST(test_set_get_str_default)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "default", NULL, data);
+-fail_unless(s == t);
+-fail_unless(strcmp(set_getstr(&s, "name"), "default") == 0);
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "default", NULL, data);
++ fail_unless(s == t);
++ fail_unless(strcmp(set_getstr(&s, "name"), "default") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_get_bool_default)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "true", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_getbool(&s, "name"));
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "true", NULL, data);
++ fail_unless(s == t);
++ fail_unless(set_getbool(&s, "name"));
++}
+ END_TEST
+
+ START_TEST(test_set_get_bool_integer)
+-void *data = "data";
+-set_t *s = NULL, *t;
+-t = set_add(&s, "name", "3", NULL, data);
+-fail_unless(s == t);
+-fail_unless(set_getbool(&s, "name") == 3);
++{
++ void *data = "data";
++ set_t *s = NULL, *t;
++ t = set_add(&s, "name", "3", NULL, data);
++ fail_unless(s == t);
++ fail_unless(set_getbool(&s, "name") == 3);
++}
+ END_TEST
+
+ START_TEST(test_set_get_bool_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getbool(&s, "name") == 0);
++{
++ set_t * s = NULL;
++ fail_unless(set_getbool(&s, "name") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_get_str_value)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "default", NULL, data);
+-set_setstr(&s, "name", "foo");
+-fail_unless(strcmp(set_getstr(&s, "name"), "foo") == 0);
++{
++ void *data = "data";
++ set_t *s = NULL;
++ set_add(&s, "name", "default", NULL, data);
++ set_setstr(&s, "name", "foo");
++ fail_unless(strcmp(set_getstr(&s, "name"), "foo") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_get_str_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getstr(&s, "name") == NULL);
++{
++ set_t * s = NULL;
++ fail_unless(set_getstr(&s, "name") == NULL);
++}
+ END_TEST
+
+ START_TEST(test_setint)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "10", NULL, data);
+-set_setint(&s, "name", 3);
+-fail_unless(set_getint(&s, "name") == 3);
++{
++ void *data = "data";
++ set_t *s = NULL;
++ set_add(&s, "name", "10", NULL, data);
++ set_setint(&s, "name", 3);
++ fail_unless(set_getint(&s, "name") == 3);
++}
+ END_TEST
+
+ START_TEST(test_setstr)
+-void *data = "data";
+-set_t *s = NULL;
+-set_add(&s, "name", "foo", NULL, data);
+-set_setstr(&s, "name", "bloe");
+-fail_unless(strcmp(set_getstr(&s, "name"), "bloe") == 0);
++{
++ void *data = "data";
++ set_t *s = NULL;
++ set_add(&s, "name", "foo", NULL, data);
++ set_setstr(&s, "name", "bloe");
++ fail_unless(strcmp(set_getstr(&s, "name"), "bloe") == 0);
++}
+ END_TEST
+
+ START_TEST(test_set_get_int_unknown)
+-set_t * s = NULL;
+-fail_unless(set_getint(&s, "foo") == 0);
++{
++ set_t * s = NULL;
++ fail_unless(set_getint(&s, "foo") == 0);
++}
+ END_TEST
+
+ Suite *set_suite(void)
+diff --git a/tests/check_util.c b/tests/check_util.c
+index 44a223ae..2d79417e 100644
+--- a/tests/check_util.c
++++ b/tests/check_util.c
+@@ -8,7 +8,8 @@
+ #include "misc.h"
+ #include "url.h"
+
+-START_TEST(test_strip_linefeed){
++START_TEST(test_strip_linefeed)
++{
+ int i;
+ const char *get[] = { "Test", "Test\r", "Test\rX\r", NULL };
+ const char *expected[] = { "Test", "Test", "TestX", NULL };
+@@ -43,63 +44,73 @@ START_TEST(test_strip_newlines)
+ END_TEST
+
+ START_TEST(test_set_url_http)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "http://host/"));
+-fail_unless(!strcmp(url.host, "host"));
+-fail_unless(!strcmp(url.file, "/"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTP);
+-fail_unless(url.port == 80);
++{
++ url_t url;
++
++ fail_if(0 == url_set(&url, "http://host/"));
++ fail_unless(!strcmp(url.host, "host"));
++ fail_unless(!strcmp(url.file, "/"));
++ fail_unless(!strcmp(url.user, ""));
++ fail_unless(!strcmp(url.pass, ""));
++ fail_unless(url.proto == PROTO_HTTP);
++ fail_unless(url.port == 80);
++}
+ END_TEST
+
+ START_TEST(test_set_url_https)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "https://ahost/AimeeMann"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/AimeeMann"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTPS);
+-fail_unless(url.port == 443);
++{
++ url_t url;
++
++ fail_if(0 == url_set(&url, "https://ahost/AimeeMann"));
++ fail_unless(!strcmp(url.host, "ahost"));
++ fail_unless(!strcmp(url.file, "/AimeeMann"));
++ fail_unless(!strcmp(url.user, ""));
++ fail_unless(!strcmp(url.pass, ""));
++ fail_unless(url.proto == PROTO_HTTPS);
++ fail_unless(url.port == 443);
++}
+ END_TEST
+
+ START_TEST(test_set_url_port)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "https://ahost:200/Lost/In/Space"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/Lost/In/Space"));
+-fail_unless(!strcmp(url.user, ""));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_HTTPS);
+-fail_unless(url.port == 200);
++{
++ url_t url;
++
++ fail_if(0 == url_set(&url, "https://ahost:200/Lost/In/Space"));
++ fail_unless(!strcmp(url.host, "ahost"));
++ fail_unless(!strcmp(url.file, "/Lost/In/Space"));
++ fail_unless(!strcmp(url.user, ""));
++ fail_unless(!strcmp(url.pass, ""));
++ fail_unless(url.proto == PROTO_HTTPS);
++ fail_unless(url.port == 200);
++}
+ END_TEST
+
+ START_TEST(test_set_url_username)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "socks4://user@ahost/Space"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/Space"));
+-fail_unless(!strcmp(url.user, "user"));
+-fail_unless(!strcmp(url.pass, ""));
+-fail_unless(url.proto == PROTO_SOCKS4);
+-fail_unless(url.port == 1080);
++{
++ url_t url;
++
++ fail_if(0 == url_set(&url, "socks4://user@ahost/Space"));
++ fail_unless(!strcmp(url.host, "ahost"));
++ fail_unless(!strcmp(url.file, "/Space"));
++ fail_unless(!strcmp(url.user, "user"));
++ fail_unless(!strcmp(url.pass, ""));
++ fail_unless(url.proto == PROTO_SOCKS4);
++ fail_unless(url.port == 1080);
++}
+ END_TEST
+
+ START_TEST(test_set_url_username_pwd)
+-url_t url;
+-
+-fail_if(0 == url_set(&url, "socks5://user:pass@ahost/"));
+-fail_unless(!strcmp(url.host, "ahost"));
+-fail_unless(!strcmp(url.file, "/"));
+-fail_unless(!strcmp(url.user, "user"));
+-fail_unless(!strcmp(url.pass, "pass"));
+-fail_unless(url.proto == PROTO_SOCKS5);
+-fail_unless(url.port == 1080);
++{
++ url_t url;
++
++ fail_if(0 == url_set(&url, "socks5://user:pass@ahost/"));
++ fail_unless(!strcmp(url.host, "ahost"));
++ fail_unless(!strcmp(url.file, "/"));
++ fail_unless(!strcmp(url.user, "user"));
++ fail_unless(!strcmp(url.pass, "pass"));
++ fail_unless(url.proto == PROTO_SOCKS5);
++ fail_unless(url.port == 1080);
++}
+ END_TEST
+
+ struct {
+@@ -148,26 +159,30 @@ struct {
+ };
+
+ START_TEST(test_word_wrap)
+-int i;
++{
++ int i;
+
+-for (i = 0; word_wrap_tests[i].orig && *word_wrap_tests[i].orig; i++) {
+- char *wrapped = word_wrap(word_wrap_tests[i].orig, word_wrap_tests[i].line_len);
++ for (i = 0; word_wrap_tests[i].orig && *word_wrap_tests[i].orig; i++) {
++ char *wrapped = word_wrap(word_wrap_tests[i].orig, word_wrap_tests[i].line_len);
+
+- fail_unless(strcmp(word_wrap_tests[i].wrapped, wrapped) == 0,
+- "%s (line_len = %d) should wrap to `%s', not to `%s'",
+- word_wrap_tests[i].orig, word_wrap_tests[i].line_len,
+- word_wrap_tests[i].wrapped, wrapped);
++ fail_unless(strcmp(word_wrap_tests[i].wrapped, wrapped) == 0,
++ "%s (line_len = %d) should wrap to `%s', not to `%s'",
++ word_wrap_tests[i].orig, word_wrap_tests[i].line_len,
++ word_wrap_tests[i].wrapped, wrapped);
+
+- g_free(wrapped);
++ g_free(wrapped);
++ }
+ }
+ END_TEST
+
+ START_TEST(test_http_encode)
+-char s[80];
++{
++ char s[80];
+
+-strcpy(s, "ee\xc3" "\xab" "ee!!...");
+-http_encode(s);
+-fail_unless(strcmp(s, "ee%C3%ABee%21%21...") == 0);
++ strcpy(s, "ee\xc3" "\xab" "ee!!...");
++ http_encode(s);
++ fail_unless(strcmp(s, "ee%C3%ABee%21%21...") == 0);
++}
+ END_TEST
+
+ struct {
+@@ -198,19 +213,21 @@ struct {
+ };
+
+ START_TEST(test_split_command_parts)
+-int i;
+-for (i = 0; split_tests[i].command; i++) {
+- char *cmd = g_strdup(split_tests[i].command);
+- char **split = split_command_parts(cmd, split_tests[i].limit);
+- char **expected = split_tests[i].expected;
+-
+- int j;
+- for (j = 0; split[j] && expected[j]; j++) {
+- fail_unless(strcmp(split[j], expected[j]) == 0,
+- "(%d) split_command_parts broken: split(\"%s\")[%d] -> %s (expected: %s)",
+- i, split_tests[i].command, j, split[j], expected[j]);
+- }
+- g_free(cmd);
++{
++ int i;
++ for (i = 0; split_tests[i].command; i++) {
++ char *cmd = g_strdup(split_tests[i].command);
++ char **split = split_command_parts(cmd, split_tests[i].limit);
++ char **expected = split_tests[i].expected;
++
++ int j;
++ for (j = 0; split[j] && expected[j]; j++) {
++ fail_unless(strcmp(split[j], expected[j]) == 0,
++ "(%d) split_command_parts broken: split(\"%s\")[%d] -> %s (expected: %s)",
++ i, split_tests[i].command, j, split[j], expected[j]);
++ }
++ g_free(cmd);
++ }
+ }
+ END_TEST
+
+--
+2.26.2
+
diff --git a/net-im/bitlbee/files/bitlbee-3.5-libevent.patch b/net-im/bitlbee/files/bitlbee-3.5-libevent.patch
new file mode 100644
index 000000000000..5ceea2fc576a
--- /dev/null
+++ b/net-im/bitlbee/files/bitlbee-3.5-libevent.patch
@@ -0,0 +1,71 @@
+diff --git a/lib/events.h b/lib/events.h
+index 1b5b41b7..b4b6110e 100644
+--- a/lib/events.h
++++ b/lib/events.h
+@@ -69,6 +69,8 @@ G_MODULE_EXPORT void b_main_init();
+ G_MODULE_EXPORT void b_main_run();
+ G_MODULE_EXPORT void b_main_quit();
+
++G_MODULE_EXPORT void b_main_iteration();
++
+
+ /* Add event handlers (for I/O or a timeout). The event handler will be called
+ every time the event "happens", until your event handler returns FALSE (or
+diff --git a/lib/events_glib.c b/lib/events_glib.c
+index dca704e1..da73f3ae 100644
+--- a/lib/events_glib.c
++++ b/lib/events_glib.c
+@@ -64,6 +64,12 @@ void b_main_quit()
+ g_main_quit(loop);
+ }
+
++void b_main_iteration()
++{
++ g_main_iteration(FALSE);
++ event_debug("b_main_iteration()\n");
++}
++
+ static gboolean gaim_io_invoke(GIOChannel *source, GIOCondition condition, gpointer data)
+ {
+ GaimIOClosure *closure = data;
+diff --git a/lib/events_libevent.c b/lib/events_libevent.c
+index 854af010..05391afa 100644
+--- a/lib/events_libevent.c
++++ b/lib/events_libevent.c
+@@ -113,6 +113,12 @@ void b_main_quit()
+ b_main_restart();
+ }
+
++void b_main_iteration()
++{
++ event_base_loop(leh, EVLOOP_NONBLOCK);
++ event_debug("b_main_iteration()\n");
++}
++
+ static void b_event_passthrough(int fd, short event, void *data)
+ {
+ struct b_event_data *b_ev = data;
+diff --git a/tests/check_irc.c b/tests/check_irc.c
+index e2054106..db3137f3 100644
+--- a/tests/check_irc.c
++++ b/tests/check_irc.c
+@@ -5,6 +5,7 @@
+ #include <string.h>
+ #include <stdio.h>
+ #include "irc.h"
++#include "events.h"
+ #include "testsuite.h"
+
+ START_TEST(test_connect)
+@@ -42,7 +43,7 @@ START_TEST(test_login)
+ "USER a a a a\n", -1, NULL, NULL) == G_IO_STATUS_NORMAL);
+ fail_unless(g_io_channel_flush(ch2, NULL) == G_IO_STATUS_NORMAL);
+
+- g_main_iteration(FALSE);
++ b_main_iteration();
+ irc_free(irc);
+
+ fail_unless(g_io_channel_read_to_end(ch2, &raw, NULL, NULL) == G_IO_STATUS_NORMAL);
+--
+2.26.2
+
diff --git a/net-im/bitlbee/metadata.xml b/net-im/bitlbee/metadata.xml
index 9cb8be28fedd..6ecb78d56885 100644
--- a/net-im/bitlbee/metadata.xml
+++ b/net-im/bitlbee/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!--maintainer-needed-->
+ <maintainer type="person">
+ <email>arkamar@atlas.cz</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="libevent">Use libevent for event handling</flag>
<flag name="msn">Enable MSN Messenger IM protocol support.</flag>