(List (FunctionDef fix_rpath [] (If (Com {[LIT_OTHER "["]} {[LIT_CHARS -w]} {[DQ [VarSub 1]]} {[LIT_OTHER "]"]}) (If (Com {[LIT_CHARS chrpath]} {[LIT_CHARS -l]} {[VarSub 1]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "fix_rpaths.sh: fixing "][VarSub 1]]}) (Com {[LIT_CHARS chrpath]} {[LIT_CHARS -r]} {[ComSub (Pipeline (Com {[LIT_CHARS chrpath]} {[VarSub 1]}) (Com {[LIT_CHARS cut]} {[LIT_CHARS -d]} {[DQ [LIT_CHARS " "]]} {[LIT_CHARS -f]} {[LIT_CHARS 2]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS s/XORIGIN/] [\ LIT_ESCAPED_CHAR "\\$"] [LIT_CHARS ORIGIN/g]}) (Com {[LIT_CHARS sed]} {[LIT_CHARS s/RPATH] [LIT_OTHER "="] [LIT_CHARS //g]}) )]} {[VarSub 1]}) ) ) (ElseTrue) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "fix_rpaths.sh: skipping non-writable file "][VarSub 1]]}) ) ) (For i [{[ComSub (Pipeline (Com {[LIT_CHARS find]} {[VarSub 1]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -P]} {[DQ [\ LIT_ESCAPED_CHAR "\\."][LIT_CHARS "so(."][\ LIT_ESCAPED_CHAR "\\d"][LIT_CHARS "+)*"][LIT_OTHER "$"]]}) )]}]) (Com {[LIT_CHARS fix_rpath]} {[VarSub i]}) ) )