# Contributor: Carlo Landmeter # Maintainer: Jakub Jirutka global pkgname := 'lua-lpeg' global _pkgname := 'lpeg' global pkgver := '1.0.1' global pkgrel := '3' global pkgdesc := '"Pattern-matching library for Lua'" global url := '"http://www.inf.puc-rio.br/~roberto/lpeg'" global arch := '"all'" global license := '"MIT'" global depends := ''"" global makedepends := ''"" global subpackages := ""$pkgname-dev"" global source := ""http://www.inf.puc-rio.br/~roberto/lpeg/$_pkgname-$pkgver.tar.gz test-fix-setlocale.patch build-static-lib.patch"" global builddir := ""$srcdir/$_pkgname-$pkgver"" # luajit is not available for selected arches matchstr $CARCH { s390x { global _luajit := ''""} * { global checkdepends := '"luajit'," _luajit := '"jit'"} } global _luaversions := '"5.1 5.2 5.3'" for _v in [$_luaversions] { global makedepends := ""$makedepends lua$_v-dev"" global subpackages := ""$subpackages lua$_v-$_pkgname:_package"" } proc prepare { default_prepare || return 1 cd $builddir sed -i -e 's/^CFLAGS =/CFLAGS +=/' \ -e 's/^COPT =/# COPT =/' \ makefile || return 1 var lver = ''; for lver in [$_luaversions] { cp -r $builddir "$builddir-$lver" || return 1 } } proc build { var lver = ''; for lver in [$_luaversions] { msg "Building for Lua $lver..." make -C "$builddir-$lver" LUADIR=/usr/include/lua$lver || return 1 } } proc check { var lver = ''; for lver in [$_luaversions $_luajit] { msg "Testing on lua$lver" cd "$builddir-$(lver/jit/5.1)" lua$lver test.lua } } proc package { mkdir -p $pkgdir } proc dev { default_dev mkdir -p $subpkgdir var lver = ''; for lver in [$_luaversions] { install -Dm644 "$builddir-$lver"/lpeg.a \ "$subpkgdir"/usr/lib/lua/$lver/lpeg.a || return 1 } } proc _package { var lver = $(subpkgname:3:3) global pkgdesc := ""Pattern-matching library for Lua $lver"" global depends := ""lua$lver"" global install_if := ""lua$lver $pkgname=$pkgver-r$pkgrel"" var rockdir = ""$subpkgdir/usr/lib/luarocks/rocks-$lver/$_pkgname/$pkgver-1"" cd "$builddir-$lver" install -Dm755 lpeg.so \ "$subpkgdir"/usr/lib/lua/$lver/lpeg.so || return 1 install -Dm644 re.lua \ "$subpkgdir"/usr/share/lua/$lver/re.lua || return 1 mkdir -p $rockdir echo 'rock_manifest = {}' > "$rockdir"/rock_manifest } global sha512sums := '"7b43fbee7eff443000986684bc56bba6d2796a31cf860740746c70e155bdea1b62a46b93f97e2747e3ef0f63e965148778ac2985d0f2d83e1e37ec4ebbabf4aa lpeg-1.0.1.tar.gz 49ce012e6c2f6e07b3aae4f52630f3b4aa43f936f76dbfb2b8e33208fb05aec54e2e6c815215d606ee0dfc860b07917a042c77cdc0ea5b6b14a8028fa0e724f8 test-fix-setlocale.patch 3022a101639822f6d5ea38578a9efd29e22dba7433c770d0ebf6e7a35053ead26dae10a737a804061ea32daed8770812d9f9ca444acc1b0ea7329280223ae1fb build-static-lib.patch'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-lpeg)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(lpeg)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.0.1)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(3)} spids:[15])] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Pattern-matching library for Lua"))} spids: [18] ) ] spids: [18] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://www.inf.puc-rio.br/~roberto/lpeg"))} spids: [23] ) ] spids: [23] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[28])] spids: [28] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[33])] spids: [33] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[38])] spids: [38] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ )} spids:[42])] spids: [42] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname") (-dev))} spids: [46] ) ] spids: [46] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("http://www.inf.puc-rio.br/~roberto/lpeg/") ($ VSub_Name "$_pkgname") (-) ($ VSub_Name "$pkgver") (".tar.gz\n") ("\ttest-fix-setlocale.patch\n") ("\tbuild-static-lib.patch") ) } spids: [52] ) ] spids: [52] ) (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: [63] ) ] spids: [63] ) (Case to_match: {(DQ ($ VSub_Name "$CARCH"))} arms: [ (case_arm pat_list: [{(s390x)}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:_luajit) op:Equal rhs:{(DQ )} spids:[88])] spids: [88] ) ] spids: [85 86 91 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:checkdepends) op: Equal rhs: {(DQ (luajit))} spids: [97] ) (assign_pair lhs: (LhsName name:_luajit) op: Equal rhs: {(DQ (jit))} spids: [102] ) ] spids: [97] ) ] spids: [94 95 106 -1] ) ] spids: [76 82 108] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_luaversions) op: Equal rhs: {(DQ ("5.1 5.2 5.3"))} spids: [111] ) ] spids: [111] ) (ForEach iter_name: _v iter_words: [{($ VSub_Name "$_luaversions")}] do_arg_iter: False body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: {(DQ ($ VSub_Name "$makedepends") (" lua") ($ VSub_Name "$_v") (-dev))} spids: [128] ) ] spids: [128] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$subpackages") (" lua") ($ VSub_Name "$_v") (-) ($ VSub_Name "$_pkgname") (":_package") ) } spids: [137] ) ] spids: [137] ) ] spids: [125 147] ) spids: [121 123] ) (FuncDef name: prepare body: (BraceGroup children: [ (AndOr children: [ (C {(default_prepare)}) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (AndOr children: [ (C {(sed)} {(-i)} {(-e)} {(SQ <"s/^CFLAGS =/CFLAGS +=/">)} {(-e)} {(SQ <"s/^COPT =/# COPT =/">)} {(makefile)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[207])] spids: [205] ) terminator: ) (ForEach iter_name: lver iter_words: [{($ VSub_Name "$_luaversions")}] do_arg_iter: False body: (DoGroup children: [ (AndOr children: [ (C {(cp)} {(-r)} {(DQ ($ VSub_Name "$builddir"))} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))} ) (ControlFlow token: arg_word: {(1)} ) ] op_id: Op_DPipe ) ] spids: [219 243] ) spids: [215 217] ) ] spids: [154] ) spids: [150 153] ) (FuncDef name: build body: (BraceGroup children: [ (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[257])] spids: [255] ) terminator: ) (ForEach iter_name: lver iter_words: [{($ VSub_Name "$_luaversions")}] do_arg_iter: False body: (DoGroup children: [ (C {(msg)} {(DQ ("Building for Lua ") ($ VSub_Name "$lver") (...))}) (AndOr children: [ (C {(make)} {(-C)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))} {(Lit_VarLike "LUADIR=") (/usr/include/lua) ($ VSub_Name "$lver")} ) (ControlFlow token: arg_word: {(1)} ) ] op_id: Op_DPipe ) ] spids: [269 302] ) spids: [265 267] ) ] spids: [252] ) spids: [248 251] ) (FuncDef name: check body: (BraceGroup children: [ (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[316])] spids: [314] ) terminator: ) (ForEach iter_name: lver iter_words: [{($ VSub_Name "$_luaversions")} {($ VSub_Name "$_luajit")}] do_arg_iter: False body: (DoGroup children: [ (C {(msg)} {(DQ ("Testing on lua") ($ VSub_Name "$lver"))}) (C {(cd)} { (DQ ($ VSub_Name "$builddir") (-) (BracedVarSub token: suffix_op: (PatSub pat: {(jit)} replace: {(5.1)} do_all: False do_prefix: False do_suffix: False ) spids: [347 353] ) ) } ) (C {(lua) ($ VSub_Name "$lver")} {(test.lua)}) ] spids: [330 363] ) spids: [324 328] ) ] spids: [311] ) spids: [307 310] ) (FuncDef name: package body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[372]) spids: [368 371] ) (FuncDef name: dev body: (BraceGroup children: [ (C {(default_dev)}) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))}) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[408])] spids: [406] ) terminator: ) (ForEach iter_name: lver iter_words: [{($ VSub_Name "$_luaversions")}] do_arg_iter: False body: (DoGroup children: [ (AndOr children: [ (C {(install)} {(-Dm644)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver")) (/lpeg.a)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/lua/) ($ VSub_Name "$lver") (/lpeg.a)} ) (ControlFlow token: arg_word: {(1)} ) ] op_id: Op_DPipe ) ] spids: [420 450] ) spids: [416 418] ) ] spids: [390] ) spids: [386 389] ) (FuncDef name: _package body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:lver) op: Equal rhs: { (DQ (BracedVarSub token: suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 3)}) length: (ArithWord w:{(Lit_Digits 3)}) ) spids: [466 472] ) ) } spids: [464] ) ] spids: [462] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Pattern-matching library for Lua ") ($ VSub_Name "$lver"))} spids: [476] ) ] spids: [476] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ (lua) ($ VSub_Name "$lver"))} spids: [483] ) ] spids: [483] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_if) op: Equal rhs: { (DQ (lua) ($ VSub_Name "$lver") (" ") ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") ) } spids: [490] ) ] spids: [490] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:rockdir) op: Equal rhs: { (DQ ($ VSub_Name "$subpkgdir") (/usr/lib/luarocks/rocks-) ($ VSub_Name "$lver") (/) ($ VSub_Name "$_pkgname") (/) ($ VSub_Name "$pkgver") (-1) ) } spids: [505] ) ] spids: [503] ) (C {(cd)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))}) (AndOr children: [ (C {(install)} {(-Dm755)} {(lpeg.so)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/lua/) ($ VSub_Name "$lver") (/lpeg.so)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (AndOr children: [ (C {(install)} {(-Dm644)} {(re.lua)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/) ($ VSub_Name "$lver") (/re.lua)} ) (ControlFlow token: arg_word:{(1)}) ] op_id: Op_DPipe ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$rockdir"))}) (SimpleCommand words: [{(echo)} {(SQ <"rock_manifest = {}">)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ ($ VSub_Name "$rockdir")) (/rock_manifest)} spids: [589] ) ] ) ] spids: [459] ) spids: [455 458] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "7b43fbee7eff443000986684bc56bba6d2796a31cf860740746c70e155bdea1b62a46b93f97e2747e3ef0f63e965148778ac2985d0f2d83e1e37ec4ebbabf4aa lpeg-1.0.1.tar.gz\n" ) ( "49ce012e6c2f6e07b3aae4f52630f3b4aa43f936f76dbfb2b8e33208fb05aec54e2e6c815215d606ee0dfc860b07917a042c77cdc0ea5b6b14a8028fa0e724f8 test-fix-setlocale.patch\n" ) ( "3022a101639822f6d5ea38578a9efd29e22dba7433c770d0ebf6e7a35053ead26dae10a737a804061ea32daed8770812d9f9ca444acc1b0ea7329280223ae1fb build-static-lib.patch" ) ) } spids: [599] ) ] spids: [599] ) ] )