# Maintainer: Natanael Copa global pkgname := 'irssi' global pkgver := '1.0.4' global pkgrel := '0' global pkgdesc := '"A modular textUI IRC client with IPv6 support'" global url := '"http://irssi.org/'" global arch := '"all'" global license := '"GPL2+'" global makedepends := '"glib-dev libressl-dev ncurses-dev perl-dev automake autoconf libtool'" global subpackages := ""$pkgname-doc $pkgname-dev $pkgname-proxy $pkgname-perl"" global source := ""https://github.com/irssi/irssi/releases/download/$pkgver/irssi-$pkgver.tar.xz"" global builddir := ""$srcdir"/$pkgname-$pkgver" # secfixes: # 1.0.3-r0: # - CVE-2017-9468 # - CVE-2017-9469 # 1.0.4.-r0: # - CVE-2017-10965 # - CVE-2017-10966 proc build { cd $builddir ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --with-perl=module \ --with-perl-lib=vendor \ --with-proxy make } proc package { cd $builddir make DESTDIR="$pkgdir" install find $pkgdir -name perllocal.pod -delete } proc perl { global depends := ""$pkgname perl"" global 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] { chmod +w "$subpkgdir"/usr/lib/perl5/vendor_perl/auto/Irssi/$1 } } proc proxy { global depends := $pkgname global pkgdesc := '"Irssi module for enabling bouncer-like functionality'" mkdir -p "$subpkgdir"/usr/lib/irssi/modules mv "$pkgdir"/usr/lib/irssi/modules/libirc_proxy.* "$subpkgdir"/usr/lib/irssi/modules/ } global sha512sums := '"8025c3b90275e5c0b910c08efcac80f56da4400662cd4a9f09cc6035ce23840fe6ed0ac5297b9631a5b28bd798b4ebca2bb5550f9e0e01aefc7a69e9f787195d irssi-1.0.4.tar.xz'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(irssi)} spids:[3])] spids: [3] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.0.4)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("A modular textUI IRC client with IPv6 support"))} spids: [12] ) ] spids: [12] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://irssi.org/"))} spids: [17] ) ] spids: [17] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[22])] spids: [22] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ ("GPL2+"))} spids:[27])] spids: [27] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: {(DQ ("glib-dev libressl-dev ncurses-dev perl-dev automake autoconf libtool"))} spids: [32] ) ] spids: [32] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-doc ") ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") ("-proxy ") ($ VSub_Name "$pkgname") (-perl) ) } spids: [37] ) ] spids: [37] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("https://github.com/irssi/irssi/releases/download/") ($ VSub_Name "$pkgver") (/irssi-) ($ VSub_Name "$pkgver") (.tar.xz) ) } spids: [49] ) ] spids: [49] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver")} spids: [58] ) ] spids: [58] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(./configure)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--sysconfdir) (Lit_Other "=") (/etc)} {(--mandir) (Lit_Other "=") (/usr/share/man)} {(--with-perl) (Lit_Other "=") (module)} {(--with-perl-lib) (Lit_Other "=") (vendor)} {(--with-proxy)} ) (C {(make)}) ] spids: [94] ) spids: [90 93] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)}) (C {(find)} {(DQ ($ VSub_Name "$pkgdir"))} {(-name)} {(perllocal.pod)} {(-delete)}) ] spids: [162] ) spids: [158 161] ) (FuncDef name: perl body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (" perl"))} spids: [204] ) ] spids: [204] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Irssi perl support and scripts"))} spids: [211] ) ] spids: [211] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/irssi)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/irssi/scripts)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/irssi/)} ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/irssi/modules)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/irssi/modules/libfe_perl.) (Lit_Other "*")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/irssi/modules/libperl_core.) (Lit_Other "*")} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/irssi/modules/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/perl5)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/)} ) (ForEach iter_name: i iter_words: [{(TextUI/TextUI.so)} {(Irssi.so)} {(Irc/Irc.so)} {(UI/UI.so)}] do_arg_iter: False body: (DoGroup children: [ (C {(chmod)} {(Lit_Other "+") (w)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/perl5/vendor_perl/auto/Irssi/) ($ VSub_Number "$1") } ) ] spids: [308 323] ) spids: [298 306] ) ] spids: [201] ) spids: [197 200] ) (FuncDef name: proxy body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname"))} spids: [335] ) ] spids: [335] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Irssi module for enabling bouncer-like functionality"))} spids: [341] ) ] spids: [341] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/irssi/modules)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/irssi/modules/libirc_proxy.) (Lit_Other "*")} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/irssi/modules/)} ) ] spids: [332] ) spids: [328 331] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "8025c3b90275e5c0b910c08efcac80f56da4400662cd4a9f09cc6035ce23840fe6ed0ac5297b9631a5b28bd798b4ebca2bb5550f9e0e01aefc7a69e9f787195d irssi-1.0.4.tar.xz" ) ) } spids: [373] ) ] spids: [373] ) ] )