(command.CommandList children: [ (C {(cd)} { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(dirname)} {(DQ ($ VSub_Number '$0'))})]) left_token: <Left_Backtick '`'> spids: [25 31] ) (/../..) } ) (C {(set)} {(-e)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:bits spids:[41]) op: Equal rhs: {($ VSub_Number '$1')} spids: [41] ) ] spids: [41] ) (command.Case to_match: {($ VSub_DollarName '$bits')} arms: [ (case_arm pat_list: [{(32)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:host spids:[56]) op: Equal rhs: {(i686-w64-mingw32)} spids: [56] ) ] spids: [56] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:exc spids:[60]) op: Equal rhs: {(sjlj)} spids: [60] ) ] spids: [60] ) ] spids: [52 53 64 16777215] ) (case_arm pat_list: [{(64)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:host spids:[71]) op: Equal rhs: {(x86_64-w64-mingw32)} spids: [71] ) ] spids: [71] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:exc spids:[75]) op: Equal rhs: {(seh)} spids: [75] ) ] spids: [75] ) ] spids: [67 68 79 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.SimpleCommand words: [ {(echo)} { (SQ < 'error: run script either as `./get_toolchain.sh 32` or `./get_toolchain.sh 64`' > ) } ] redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})] ) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [82 83 101 16777215] ) ] spids: [45 49 103] ) (C {(echo)} { (DQ ('Downloading ') ($ VSub_DollarName '$host') (' toolchain, check ') ($ VSub_DollarName '$PWD') ('/get_toolchain.log for full output') ) } ) (command.SimpleCommand words: [ {(contrib/windows/winrpm.sh)} {(http) (Lit_Other ':') (//download.opensuse.org/repositories/windows) (Lit_Other ':') (/mingw) (Lit_Other ':') (/win) ($ VSub_DollarName '$bits') (/openSUSE_Leap_42.2) } { (DQ (mingw) ($ VSub_DollarName '$bits') ('-gcc mingw') ($ VSub_DollarName '$bits') ('-gcc-c++ mingw') ($ VSub_DollarName '$bits') ('-gcc-fortran ') (' mingw') ($ VSub_DollarName '$bits') ('-libssp0 mingw') ($ VSub_DollarName '$bits') ('-libstdc++6 mingw') ($ VSub_DollarName '$bits') (-libgfortran3) ) } ] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(get_toolchain.log)})] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mingwdir spids:[152]) op: Equal rhs: {(usr/) ($ VSub_DollarName '$host') (/sys-root/mingw)} spids: [152] ) ] spids: [152] ) (C {(chmod)} {(Lit_Other '+') (x)} {($ VSub_DollarName '$mingwdir') (/bin/) (Lit_Other '*')} {($ VSub_DollarName '$mingwdir') (/) ($ VSub_DollarName '$host') (/bin/) (Lit_Other '*')} {($ VSub_DollarName '$mingwdir') (/libexec/gcc/) ($ VSub_DollarName '$host') (/) (Lit_Other '*') (/) (Lit_Other '*') } ) (C {(mkdir)} {(-p)} {(usr/bin)}) (command.ForEach iter_name: i iter_words: [ {(gcc_s_) ($ VSub_DollarName '$exc') (-1)} {(ssp-0)} {(stdc) (Lit_Other '+') (Lit_Other '+') (-6)} {(gfortran-3)} {(quadmath-0)} ] do_arg_iter: F body: (command.DoGroup children: [ (C {(cp)} {($ VSub_DollarName '$mingwdir') (/bin/lib) ($ VSub_DollarName '$i') (.dll)} {(usr/bin)} ) ] spids: [208 220] ) spids: [191 206] ) (C {($ VSub_DollarName '$mingwdir') (/bin/g) (Lit_Other '+') (Lit_Other '+')} {(--version)}) (C {(cp)} {($ VSub_DollarName '$mingwdir') (/) ($ VSub_DollarName '$host') (/bin/) (Lit_Other '*')} {($ VSub_DollarName '$mingwdir') (/bin)} ) (command.Case to_match: { (word_part.CommandSubPart command_list: (command.CommandList children:[(C {(uname)})]) left_token: <Left_CommandSub '$('> spids: [245 247] ) } arms: [ (case_arm pat_list: [{(CYGWIN) (Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mklink spids:[257]) op: Equal rhs: {(DQ ('cmd /C mklink /J'))} spids: [257] ) ] spids: [257] ) (command.ForEach iter_name: i iter_words: [{(gcc)} {(g) (Lit_Other '+') (Lit_Other '+')} {(gfortran)}] do_arg_iter: F body: (command.DoGroup children: [ (C {(mv)} {($ VSub_DollarName '$mingwdir') (/bin/) ($ VSub_DollarName '$i') (.exe)} {($ VSub_DollarName '$mingwdir') (/bin/) ($ VSub_DollarName '$host') (-) ($ VSub_DollarName '$i') (.exe) } ) ] spids: [282 300] ) spids: [272 280] ) ] spids: [252 254 303 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:mklink spids:[310]) op: Equal rhs: {(DQ ('cmd //C mklink //J'))} spids: [310] ) ] spids: [310] ) ] spids: [306 307 316 16777215] ) ] spids: [243 249 318] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.Pipeline children: [ (C {(Lit_Other '[')} {(-e)} {($ VSub_DollarName '$mingwdir') (/) ($ VSub_DollarName '$host') (/include)} {(Lit_Other ']')} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {($ VSub_DollarName '$mklink')} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(cygpath)} {(-w)} {($ VSub_DollarName '$mingwdir') (/) ($ VSub_DollarName '$host') (/include)} ) ] ) left_token: <Left_CommandSub '$('> spids: [341 350] ) } { (word_part.CommandSubPart command_list: (command.CommandList children: [(C {(cygpath)} {(-w)} {($ VSub_DollarName '$mingwdir') (/include)})] ) left_token: <Left_CommandSub '$('> spids: [352 359] ) } ) ] spids: [16777215 336] ) ] spids: [16777215 361] ) (C {(echo)} { (DQ ('Toolchain successfully downloaded to ') ($ VSub_DollarName '$PWD') (/) ($ VSub_DollarName '$mingwdir') ) } ) (C {(echo)} { (DQ ('Add toolchain to your path by running ') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ('export PATH=') ($ VSub_DollarName '$PWD') (/) ($ VSub_DollarName '$mingwdir') ('/bin:') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (PATH) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\`'>) ) } ) ] )