(command.CommandList children: [ (command.ShFunction name: die body: (BraceGroup children: [ (command.Simple words: [{<echo>} {(DQ <'FATAL install error: '> ($ Id.VSub_At '$@'))}] redirects: [(redir op:<Id.Redir_GreatAnd '1>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})] do_fork: T ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] ) ) (command.ShFunction name: main body: (BraceGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [(C {<.>} {<'_build/detected-config.sh'>})] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<die>} {(DQ <'Can\'t find _build/detected-config.h. Run \'./configure\''>)}) ] spids: [65 74] ) ] ) (C {<local>} {<Id.Lit_VarLike 'exec_filename='> <oil.ovm>}) (C {<local>} {<Id.Lit_VarLike 'dest='> ($ Id.VSub_DollarName '$PREFIX') <'/bin/'> ($ Id.VSub_DollarName '$exec_filename') } ) (C {<echo>} {(DQ <'Installing to '> ($ Id.VSub_DollarName '$dest'))}) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (C {<install>} {<'_bin/'> ($ Id.VSub_DollarName '$exec_filename')} {($ Id.VSub_DollarName '$dest')} ) ] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<die>} {(DQ <'Couldn\'t install oil binary'>)})] spids: [124 136] ) ] ) (C {<cd>} {($ Id.VSub_DollarName '$PREFIX') <'/bin'>}) (command.ForEach iter_names: [link] iterable: (for_iter.Words words:[{<osh>} {<oshc>}]) body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (C {<ln>} {<-s>} {<-f>} {($ Id.VSub_DollarName '$exec_filename')} {($ Id.VSub_DollarName '$link')} ) ] negated: T ) terminator: <Id.Op_Semi _> ) ] ) action: [ (C {<die>} {(DQ <'Couldn\'t create '> ($ Id.VSub_DollarName '$link') <' symlink'>)} ) ] spids: [170 185] ) ] ) ] ) ) ] ) ) (C {<main>} {(DQ ($ Id.VSub_At '$@'))}) ] )