(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_flavor) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name FLAVOR> suffix_op: (suffix_op.Unary tok:<Id.VTest_ColonHyphen ':-'> arg_word:{<hardened>}) ) } spids: [7] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_kpkg) op: assign_op.Equal rhs: {<linux-> ($ Id.VSub_DollarName '$_flavor')} spids: [14] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_kver) op: assign_op.Equal rhs: {<4.9.54>} spids: [18] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_kpkgrel) op: assign_op.Equal rhs: {<0>} spids: [21] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_ver) op: assign_op.Equal rhs: {<5.1.26>} spids: [28] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_mypkgrel) op: assign_op.Equal rhs: {<0>} spids: [31] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_name) op: assign_op.Equal rhs: {<virtualbox-guest-modules>} spids: [34] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_kpkgver) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$_kver') <-r> ($ Id.VSub_DollarName '$_kpkgrel'))} spids: [38] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_abi_release) op: assign_op.Equal rhs: {(${ Id.VSub_Name _kver) <-> (${ Id.VSub_Name _kpkgrel) <-> (${ Id.VSub_Name _flavor)} spids: [45] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_abi_release_virthardened) op: assign_op.Equal rhs: {(${ Id.VSub_Name _kver) <-> (${ Id.VSub_Name _kpkgrel) <-virthardened>} spids: [58] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgname) op: assign_op.Equal rhs: {(${ Id.VSub_Name _name) <-> (${ Id.VSub_Name _flavor)} spids: [69] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgver) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$_kver')} spids: [78] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgrel) op: assign_op.Equal rhs: { (word_part.ArithSub anode: (arith_expr.Binary op_id: Id.Arith_Plus left: {($ Id.VSub_DollarName '$_kpkgrel')} right: {($ Id.VSub_DollarName '$_mypkgrel')} ) ) } spids: [81] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgdesc) op: assign_op.Equal rhs: { (DQ <'VirtualBox Additions guest kernel modules for '> ($ Id.VSub_DollarName '$_flavor')) } spids: [91] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arch) op: assign_op.Equal rhs: {(SQ <'x86 x86_64'>)} spids: [97] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:url) op: assign_op.Equal rhs: {(SQ <'http://virtualbox.org'>)} spids: [102] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:license) op: assign_op.Equal rhs: {(DQ <'GPL custom'>)} spids: [107] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:makedepends) op: assign_op.Equal rhs: { (DQ <'linux-hardened-dev='> ($ Id.VSub_DollarName '$_kpkgver') <' linux-virthardened-dev='> ($ Id.VSub_DollarName '$_kpkgver') <' sed coreutils'> ) } spids: [112] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:subpackages) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$_name') <'-virthardened:_virthardened'>)} spids: [121] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:source) op: assign_op.Equal rhs: { (DQ <'http://download.virtualbox.org/virtualbox/'> ($ Id.VSub_DollarName '$_ver') <'/VirtualBox-'> ($ Id.VSub_DollarName '$_ver') <'.tar.bz2\n'> <'\tvboxguest-log-use-c99.patch\n'> <'\tconst-struct-kernel_param.patch\n'> <'\t'> ) } spids: [127] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:provides) op: assign_op.Equal rhs: { (DQ (${ Id.VSub_Name _name) <'-grsec='> (${ Id.VSub_Name pkgver) <-r> (${ Id.VSub_Name pkgrel) ) } spids: [139] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:builddir) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/VirtualBox-'> ($ Id.VSub_DollarName '$_ver')} spids: [154] ) ] ) (command.ShFunction name: prepare body: (BraceGroup children: [ (C {<local>} {<i>}) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Subshell child: (command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_kapkbuild) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_DollarName '$startdir')) <'/../../main/linux-'> (${ Id.VSub_Name _flavor) <'/APKBUILD'> } spids: [182] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<-f>} {($ Id.VSub_DollarName '$_kapkbuild')} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<.>} {($ Id.VSub_DollarName '$_kapkbuild')}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$_name') <-> ($ Id.VSub_DollarName '$_flavor') } spids: [212] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$_kver'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$pkgver'))} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<die>} { (DQ <'please update _kver to '> ($ Id.VSub_DollarName '$pkgver') ) } ) ] spids: [218 236] ) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$_kpkgrel'))} {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ ($ Id.VSub_DollarName '$pkgrel'))} {<Id.Lit_RBracket ']'>} ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<die>} { (DQ <'please update _kpkgrel to '> ($ Id.VSub_DollarName '$pkgrel') ) } ) ] spids: [250 268] ) ] ) ] spids: [193 204] ) ] ) ] ) ) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<default_prepare>}) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(DQ ($ Id.VSub_DollarName '$builddir')) <'/src/VBox/Additions/linux/export_modules'> } {(DQ ($ Id.VSub_DollarName '$srcdir') <'/vbox-kmod-'> ($ Id.VSub_DollarName '$_ver') <.tar.gz>)} ) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) (command.ForEach iter_name: i iter_words: [ {($ Id.VSub_DollarName '$_abi_release')} {($ Id.VSub_DollarName '$_abi_release_virthardened')} ] do_arg_iter: F body: (command.DoGroup children: [ (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$i'))} ) (C {<tar>} {<-C>} {(DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$i'))} {<-zxf>} {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/vbox-kmod-'> ($ Id.VSub_DollarName '$_ver') <.tar.gz> } ) ] ) ) ] ) ) (command.ShFunction name: build body: (BraceGroup children: [ (C {<local>} {<i>}) (command.ForEach iter_name: i iter_words: [ {($ Id.VSub_DollarName '$_abi_release')} {($ Id.VSub_DollarName '$_abi_release_virthardened')} ] do_arg_iter: F body: (command.DoGroup children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$i'))}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {<make>} {<Id.Lit_VarLike 'KERN_DIR='> <'/lib/modules/'> (${ Id.VSub_Name i) <'/build'> } ) (command.ControlFlow token: <Id.ControlFlow_Return return> arg_word: {<1>} ) ] ) ] ) ) ] ) ) (command.ShFunction name: package body: (BraceGroup children: [ (C {<local>} {<i>} {<Id.Lit_VarLike 'module='>}) (command.ForEach iter_name: i iter_words: [ {($ Id.VSub_DollarName '$_abi_release')} {($ Id.VSub_DollarName '$_abi_release_virthardened')} ] do_arg_iter: F body: (command.DoGroup children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$i'))}) (command.ForEach iter_name: module iter_words: [{<Id.Lit_Star '*'> <.ko>}] do_arg_iter: F body: (command.DoGroup children: [ (C {<install>} {<-v>} {<-D>} {<-m644>} {(${ Id.VSub_Name module)} { (DQ ($ Id.VSub_DollarName '$pkgdir') <'/lib/modules/'> ($ Id.VSub_DollarName '$i') <'/misc/'> (${ Id.VSub_Name module) ) } ) ] ) ) ] ) ) ] ) ) (command.ShFunction name: _virthardened body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgdesc) op: assign_op.Equal rhs: {(DQ <'VirtualBox Additions kernel modules for virthardened'>)} spids: [535] ) ] ) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/lib/modules/'>}) (C {<rm>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/lib/modules/'> ($ Id.VSub_DollarName '$_abi_release_virthardened') <'/misc/vboxvideo.ko'> } ) (C {<mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/lib/modules/'> ($ Id.VSub_DollarName '$_abi_release_virthardened') } {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/lib/modules/'>} ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sha512sums) op: assign_op.Equal rhs: { (DQ < '680e9646a51a0a5923b3ded10007ee1c1e2a41c6d8a961d2b2540db6578bed2847154f4cac87e3cfe1118a62595b47c7df99da854f6c340e173b9eb8cacf2add VirtualBox-5.1.26.tar.bz2\n' > < 'bd934e9ed3d2324ef66e2539d2f3f6fab35a8858d670bba817b9cabfe66e85fe13a8594b35f4a8e639841f72fb0b8d12af38518ba25638da5ef338b259ab600b vboxguest-log-use-c99.patch\n' > < 'd069876f93e431833800c1d26ea77ae1dec40c840bb549cf519ceea93ee1ca89bcb262a13b00001503d19e596965d74a71a7f49be232ea892a82114d3ea4337c const-struct-kernel_param.patch' > ) } spids: [583] ) ] ) ] )