diff options
Diffstat (limited to 'main/irssi')
-rw-r--r-- | main/irssi/APKBUILD | 63 | ||||
-rw-r--r-- | main/irssi/irssi-0.8.15-man-fix.patch | 13 | ||||
-rw-r--r-- | main/irssi/irssi-0.8.15-no-static-unload.patch | 35 | ||||
-rw-r--r-- | main/irssi/irssi-0.8.16-format-security.patch | 22 |
4 files changed, 116 insertions, 17 deletions
diff --git a/main/irssi/APKBUILD b/main/irssi/APKBUILD index b28fef189c..5c099bb48b 100644 --- a/main/irssi/APKBUILD +++ b/main/irssi/APKBUILD @@ -1,23 +1,25 @@ # Maintainer: Kiyoshi Aman <kiyoshi.aman at gmail.com> pkgname=irssi -pkgver=0.8.15 -pkgrel=14 +pkgver=0.8.16_rc1 +_pkgver=${pkgver/_/-} +pkgrel=0 pkgdesc="A modular textUI IRC client with IPv6 support" url="http://irssi.org/" arch="all" license="GPL2+" -depends="perl" -makedepends="glib-dev openssl-dev ncurses-dev perl-dev pkgconfig" -source="http://irssi.org/files/irssi-${pkgver}.tar.bz2 - $pkgname-italics.patch - " -subpackages="$pkgname-doc $pkgname-dev $pkgname-proxy:proxy" +depends= +makedepends="glib-dev openssl-dev ncurses-dev perl-dev automake autoconf libtool" +subpackages="$pkgname-doc $pkgname-dev $pkgname-proxy $pkgname-perl" +source="http://irssi.org/files/irssi-$_pkgver.tar.bz2 + $pkgname-italics.patch + irssi-0.8.15-man-fix.patch + irssi-0.8.15-no-static-unload.patch + irssi-0.8.16-format-security.patch" -_builddir="$srcdir"/$pkgname-$pkgver +_builddir="$srcdir"/$pkgname-$_pkgver prepare() { local i cd "$_builddir" - update_config_sub || return 1 for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; @@ -27,13 +29,14 @@ prepare() { build() { cd "$_builddir" + autoreconf -i ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ - --with-perl-staticlib \ + --with-perl=module \ --with-proxy \ || return 1 make || return 1 @@ -46,6 +49,23 @@ package() { rm "$pkgdir"/usr/lib/irssi/modules/*.la } +perl() { + depends="$pkgname perl" + pkgdesc="Irssi perl support and scripts" + mkdir -p "$subpkgdir"/usr/share/irssi + mv "$pkgdir"/usr/share/irssi/scripts \ + "$subpkgdir"/usr/share/irssi/ + mkdir -p "$subpkgdir"/usr/lib/irssi/modules + mv "$pkgdir"/usr/lib/irssi/modules/libfe_perl.* \ + "$pkgdir"/usr/lib/irssi/modules/libperl_core.* \ + "$subpkgdir"/usr/lib/irssi/modules/ + mv "$pkgdir"/usr/lib/perl5 "$subpkgdir"/usr/lib/ + #need write permission when stripping + for i in TextUI/TextUI.so Irssi.so Irc/Irc.so UI/UI.so; do + chmod +w "$subpkgdir"/usr/lib/perl5/core_perl/auto/Irssi/$1 || return 1 + done +} + proxy() { depends="$pkgname" pkgdesc="Irssi module for enabling bouncer-like functionality" @@ -53,9 +73,18 @@ proxy() { mv "$pkgdir"/usr/lib/irssi/modules/libirc_proxy.* "$subpkgdir"/usr/lib/irssi/modules/ } -md5sums="1dcb3f511b88df94b0c996f36668c7da irssi-0.8.15.tar.bz2 -bb8b9f8b960837ad061a8e5b9b19824b irssi-italics.patch" -sha256sums="c12d16fb605103d7c256ddce44012dc396af57f3771e086d0387c195a052a0a6 irssi-0.8.15.tar.bz2 -3e65898551e89e99ddce83ab69a8a37209181a1e6ae09bd9412805c9bf8cffa5 irssi-italics.patch" -sha512sums="cecda925ae7c422fd95e8e94a123be8732a59a3a3c5d149b2fe16e1cac78cc516acb7a89ad79cf4ac0c412c9d4d3ea83fe5c0535ab6428e98479dc8909d0615a irssi-0.8.15.tar.bz2 -cc46ee115cbad0a1df55f4d6fff31b0dddc526c29b49108338c16baf4b632627a818b8fb0ab4b6a51cf1c0e1b5da26eaecf3ecf087bdedcc1b7a80e21d0e5c08 irssi-italics.patch" +md5sums="275c926dcbb11059f8685906df7cfe49 irssi-0.8.16-rc1.tar.bz2 +bb8b9f8b960837ad061a8e5b9b19824b irssi-italics.patch +6e776c1c5a8dd4a8d03e710ff783f919 irssi-0.8.15-man-fix.patch +96aec1545b531e2a378ae0e38ccbe6e9 irssi-0.8.15-no-static-unload.patch +88fc15df221db3f228c65d844c7a1342 irssi-0.8.16-format-security.patch" +sha256sums="64d3edcb5e00f63c7926c0f59403d5ab1dcc414a8539b860e152f3fb87d31674 irssi-0.8.16-rc1.tar.bz2 +3e65898551e89e99ddce83ab69a8a37209181a1e6ae09bd9412805c9bf8cffa5 irssi-italics.patch +3c504ba356b2e0d53a767b8194b6b31b2ee41a15c6bc27ae4c31f782f41a1411 irssi-0.8.15-man-fix.patch +ce57e741311b7335cded9da4d7f7f3f68b3b367fbe457043d0e06674c76d48d9 irssi-0.8.15-no-static-unload.patch +b2f974de02dabce6f96c18aef0e64102d0cf129d37da56f599a3fa5b84fb75b4 irssi-0.8.16-format-security.patch" +sha512sums="a172737ce1abfb020cca9b1aa62343e89831faada842915156f3327ef4c0c240ea89ea1da058449a21f34d383bb80d743ef9568264b70a582e55a4a3723fd289 irssi-0.8.16-rc1.tar.bz2 +cc46ee115cbad0a1df55f4d6fff31b0dddc526c29b49108338c16baf4b632627a818b8fb0ab4b6a51cf1c0e1b5da26eaecf3ecf087bdedcc1b7a80e21d0e5c08 irssi-italics.patch +7e081427c84df33a27d083e7c43ba34af7059e1344b0d6131c586affb9515c19adbcadb32ff5dc8a10824a59a88da46e40fd8074a856ea247c7f0a19115b8ac8 irssi-0.8.15-man-fix.patch +1dd5f2d622d825daaab29e9ef19edc44e890a7e7ba82623c0e090b7828051ec5a97faf03a5a755e966b53c891dd645076e8a50a69c2abb15998ca3b42a117479 irssi-0.8.15-no-static-unload.patch +4e3d1dd76bd118ba93010576bbbc48fef8e87a26083af2e1ffaaa488ce6b28cf4b68b9f1e19673f6c2e8c9afd8816d38ce61361aa47fb174844d61be0364110d irssi-0.8.16-format-security.patch" diff --git a/main/irssi/irssi-0.8.15-man-fix.patch b/main/irssi/irssi-0.8.15-man-fix.patch new file mode 100644 index 0000000000..30bb28e881 --- /dev/null +++ b/main/irssi/irssi-0.8.15-man-fix.patch @@ -0,0 +1,13 @@ +diff -up irssi-0.8.15/docs/irssi.1.orig irssi-0.8.15/docs/irssi.1 +--- irssi-0.8.15/docs/irssi.1.orig 2010-04-03 18:19:55.000000000 +0200 ++++ irssi-0.8.15/docs/irssi.1 2012-08-03 16:34:19.684160994 +0200 +@@ -59,9 +59,6 @@ display the version of Irssi. + .TP + .BI "\-?, \-\-help" + show a help message. +-.TP +-.BI "\-\-usage" +-display brief usage message. + .SH SEE ALSO + .B Irssi + has been supplied with a huge amount of documentation. Check /help or look diff --git a/main/irssi/irssi-0.8.15-no-static-unload.patch b/main/irssi/irssi-0.8.15-no-static-unload.patch new file mode 100644 index 0000000000..c583f1c372 --- /dev/null +++ b/main/irssi/irssi-0.8.15-no-static-unload.patch @@ -0,0 +1,35 @@ +--- irssi-0.8.15/src/fe-common/core/fe-modules.c.old 2010-04-03 18:19:24.000000000 +0200 ++++ irssi-0.8.15/src/fe-common/core/fe-modules.c 2010-10-12 14:43:52.586315553 +0200 +@@ -195,6 +195,8 @@ + MODULE_FILE_REC *file; + char *rootmodule, *submodule; + void *free_arg; ++ GSList *tmp; ++ int all_dynamic; + + g_return_if_fail(data != NULL); + +@@ -204,12 +206,19 @@ + + module = module_find(rootmodule); + if (module != NULL) { +- if (*submodule == '\0') +- module_unload(module); ++ if (*submodule == '\0') { ++ all_dynamic = 1; ++ for (tmp = module->files; tmp != NULL; tmp = tmp->next) ++ all_dynamic &= !MODULE_IS_STATIC((MODULE_FILE_REC*) tmp->data); ++ if (all_dynamic) ++ module_unload(module); ++ } + else { + file = module_file_find(module, submodule); +- if (file != NULL) +- module_file_unload(file); ++ if (file != NULL) { ++ if (!MODULE_IS_STATIC(file)) ++ module_file_unload(file); ++ } + else + module = NULL; + } diff --git a/main/irssi/irssi-0.8.16-format-security.patch b/main/irssi/irssi-0.8.16-format-security.patch new file mode 100644 index 0000000000..34fca6cce7 --- /dev/null +++ b/main/irssi/irssi-0.8.16-format-security.patch @@ -0,0 +1,22 @@ +diff --git a/src/core/network.c b/src/core/network.c +index d7c1017..5954d1f 100644 +--- a/src/core/network.c ++++ b/src/core/network.c +@@ -356,7 +356,7 @@ int net_receive(GIOChannel *handle, char *buf, int len) + + status = g_io_channel_read_chars(handle, buf, len, &ret, &err); + if (err != NULL) { +- g_warning(err->message); ++ g_warning("%s", err->message); + g_error_free(err); + } + if (status == G_IO_STATUS_ERROR || status == G_IO_STATUS_EOF) +@@ -377,7 +377,7 @@ int net_transmit(GIOChannel *handle, const char *data, int len) + + status = g_io_channel_write_chars(handle, (char *) data, len, &ret, &err); + if (err != NULL) { +- g_warning(err->message); ++ g_warning("%s", err->message); + g_error_free(err); + } + if (status == G_IO_STATUS_ERROR) |