(command.CommandList children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pkgname spids:[6]) op: Equal rhs: {(ruby-ffi)} spids: [6] ) ] spids: [6] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:_gemname spids:[9]) op: Equal rhs: {(ffi)} spids: [9] ) ] spids: [9] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pkgver spids:[12]) op: Equal rhs: {(1.9.18)} spids: [12] ) ] spids: [12] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pkgrel spids:[15]) op: Equal rhs: {(0)} spids: [15] ) ] spids: [15] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:pkgdesc spids:[18]) op: Equal rhs: {(DQ ('Ruby FFI library'))} spids: [18] ) ] spids: [18] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:url spids:[23]) op: Equal rhs: {(DQ ('https://github.com/ffi/ffi'))} spids: [23] ) ] spids: [23] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:arch spids:[28]) op: Equal rhs: {(DQ (all))} spids: [28] ) ] spids: [28] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:license spids:[33]) op: Equal rhs: {(DQ (BSD))} spids: [33] ) ] spids: [33] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:makedepends spids:[38]) op: Equal rhs: {(DQ ('libffi-dev ruby ruby-dev'))} spids: [38] ) ] spids: [38] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:install spids:[43]) op: Equal rhs: {(DQ ($ VSub_DollarName '$pkgname') (.post-install))} spids: [43] ) ] spids: [43] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:source spids:[49]) op: Equal rhs: { (DQ ($ VSub_DollarName '$pkgname') (-) ($ VSub_DollarName '$pkgver') ('.tar.gz::https://github.com/ffi/') ($ VSub_DollarName '$_gemname') (/archive/) ($ VSub_DollarName '$pkgver') (.tar.gz) ) } spids: [49] ) ] spids: [49] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:builddir spids:[61]) op: Equal rhs: { (DQ ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$_gemname') (-) ($ VSub_DollarName '$pkgver') ) } spids: [61] ) ] spids: [61] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:options spids:[70]) op: Equal rhs: {(DQ ('!check'))} spids: [70] ) ] spids: [70] ) (command.FuncDef name: build body: (command.BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_DollarName '$builddir'))}) (C {(gem)} {(build)} {($ VSub_DollarName '$_gemname') (.gemspec)}) (C {(gem)} {(install)} {(--local)} {(--install-dir)} {(dist)} {(--ignore-dependencies)} {(--no-document)} {(--verbose)} {($ VSub_DollarName '$_gemname') (-) ($ VSub_DollarName '$pkgver') (.gem)} ) ] spids: [83] ) spids: [79 82] ) (command.FuncDef name: check body: (command.BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_DollarName '$builddir'))}) (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:dev_deps spids:[173]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(gem)} {(install)} {(--explain)} {(--development)} {(--minimal-deps)} {($ VSub_DollarName '$_gemname') (-) ($ VSub_DollarName '$pkgver') (.gem)} ) (C {(head)} {(-n)} {(-1)}) (C {(sed)} {(-En)} {(SQ <'s/-([^-]+)$/:\\1/p'>)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [174 209] ) } spids: [173] ) ] spids: [171] ) (C {(gem)} {(install)} {(--instal-dir) (Lit_Other '=') (.gem)} {(--conservative)} {($ VSub_DollarName '$dev_deps')} ) (command.SimpleCommand words: [{(.gem/bin/rspec)}] more_env: [(env_pair name:GEM_PATH val:{(SQ <'dist:.gem'>)} spids:[226])] ) ] spids: [140] ) spids: [136 139] ) (command.FuncDef name: package body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:gemdir spids:[245]) op: Equal rhs: { (DQ ($ VSub_DollarName '$pkgdir') (/) (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(ruby)} {(-rubygems)} {(-e)} {(SQ <'puts Gem.default_dir'>)}) ] ) left_token: <Left_CommandSub '$('> spids: [249 259] ) ) } spids: [245] ) ] spids: [243] ) (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:carch spids:[266]) op: Equal spids: [266] ) ] spids: [264] ) (command.Case to_match: {(DQ ($ VSub_DollarName '$CARCH'))} arms: [ (case_arm pat_list: [{(x86)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:carch spids:[281]) op: Equal rhs: {(DQ (i386))} spids: [281] ) ] spids: [281] ) ] spids: [278 279 285 16777215] ) (case_arm pat_list: [{(arm) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:carch spids:[292]) op: Equal rhs: {(DQ (arm))} spids: [292] ) ] spids: [292] ) ] spids: [288 290 296 16777215] ) (case_arm pat_list: [{(ppc64le)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:carch spids:[302]) op: Equal rhs: {(DQ (powerpc64))} spids: [302] ) ] spids: [302] ) ] spids: [299 300 306 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:carch spids:[312]) op: Equal rhs: {(DQ ($ VSub_DollarName '$CARCH'))} spids: [312] ) ] spids: [312] ) ] spids: [309 310 316 16777215] ) ] spids: [269 275 319] ) (C {(cd)} {(DQ ($ VSub_DollarName '$builddir')) (/dist)}) (C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$gemdir'))}) (C {(cp)} {(-r)} {(extensions)} {(gems)} {(specifications)} {(DQ ($ VSub_DollarName '$gemdir')) (/)} ) (C {(find)} {(DQ ($ VSub_DollarName '$gemdir')) (/extensions/)} {(-name)} {(mkmf.log)} {(-delete)} ) (C {(cd)} {(DQ ($ VSub_DollarName '$gemdir')) (/gems/) ($ VSub_DollarName '$_gemname') (-) ($ VSub_DollarName '$pkgver') } ) (command.AndOr ops: [Op_DPipe] children: [ (C {(rm)} {(-r)} {(ext/)} {(gen/)} {(libtest/)} {(spec/)} {(lib/) (Lit_Other '*') (.so)} {(Rakefile)} {(Lit_Other '*') (.md)} ) (C {(true)}) ] ) (C {(find)} {(lib/ffi/platform/) (Lit_Other '*')} {(-prune)} {(KW_Bang '!')} {(-name)} {(DQ ($ VSub_DollarName '$carch') (-linux))} {(-exec)} {(rm)} {(-rf)} {(Lit_LBrace '{') (Lit_RBrace '}')} {(Lit_Other '+')} ) ] spids: [240] ) spids: [236 239] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:sha512sums spids:[444]) op: Equal rhs: { (DQ ( '49c52e5e42e436b7969c35a34b28bd7929d75372638ac5373486a1d624026c12dc682009bc101e4a2c8f1442ed6f1ba17b438cda2e02d4256622b489c4bd9945 ruby-ffi-1.9.18.tar.gz' ) ) } spids: [444] ) ] spids: [444] ) ] )