(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CLANG_REVISION) op:Equal rhs:{(241602)} spids:[26])] spids: [26] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CLANG_SUB_REVISION) op:Equal rhs:{(3)} spids:[33])] spids: [33] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PACKAGE_VERSION) op: Equal rhs: {(DQ (${ VSub_Name CLANG_REVISION) (-) (${ VSub_Name CLANG_SUB_REVISION))} spids: [37] ) ] spids: [37] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:THIS_DIR) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children:[(C {(dirname)} {(DQ (${ VSub_Number 0))})]) left_token: <Left_CommandSub "$("> spids: [51 59] ) ) } spids: [49] ) ] spids: [49] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_DIR) op: Equal rhs: {(DQ (${ VSub_Name THIS_DIR) (/../../../third_party/llvm))} spids: [62] ) ] spids: [62] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_BUILD_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) ("/../llvm-build/Release+Asserts"))} spids: [70] ) ] spids: [70] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPILER_RT_BUILD_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/../llvm-build/compiler-rt))} spids: [78] ) ] spids: [78] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_BOOTSTRAP_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/../llvm-bootstrap))} spids: [86] ) ] spids: [86] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_BOOTSTRAP_INSTALL_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/../llvm-bootstrap-install))} spids: [94] ) ] spids: [94] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CLANG_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/tools/clang))} spids: [102] ) ] spids: [102] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPILER_RT_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/compiler-rt))} spids: [110] ) ] spids: [110] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIBCXX_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/projects/libcxx))} spids: [118] ) ] spids: [118] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIBCXXABI_DIR) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/projects/libcxxabi))} spids: [126] ) ] spids: [126] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ANDROID_NDK_DIR) op: Equal rhs: {(DQ (${ VSub_Name THIS_DIR) (/../../../third_party/android_tools/ndk))} spids: [134] ) ] spids: [134] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:STAMP_FILE) op: Equal rhs: {(DQ (${ VSub_Name LLVM_DIR) (/../llvm-build/cr_build_revision))} spids: [142] ) ] spids: [142] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CHROMIUM_TOOLS_DIR) op: Equal rhs: {(DQ (${ VSub_Name THIS_DIR) (/..))} spids: [150] ) ] spids: [150] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BINUTILS_DIR) op: Equal rhs: {(DQ (${ VSub_Name THIS_DIR) (/../../../third_party/binutils))} spids: [158] ) ] spids: [158] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_CHROMIUM_TOOLS_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name CHROMIUM_TOOLS_DIR))} spids: [167] ) ] spids: [167] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_LIBCXX_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name LIBCXX_DIR))} spids: [178] ) ] spids: [178] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_LIBCXXABI_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name LIBCXXABI_DIR))} spids: [189] ) ] spids: [189] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_LLVM_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name LLVM_DIR))} spids: [200] ) ] spids: [200] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_LLVM_BUILD_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name LLVM_BUILD_DIR))} spids: [211] ) ] spids: [211] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_COMPILER_RT_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name COMPILER_RT_DIR))} spids: [222] ) ] spids: [222] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_BINUTILS_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name BINUTILS_DIR))} spids: [233] ) ] spids: [233] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_REPO_URL) op: Equal rhs: { (BracedVarSub token: <VSub_Name LLVM_URL> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {("https:") (Lit_Slash /) (Lit_Slash /) (llvm.org) (Lit_Slash /) (svn) (Lit_Slash /) (llvm-project) } ) spids: [249 260] ) } spids: [248] ) ] spids: [248] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_URL) op: Equal rhs: {(https) (Lit_Other ":") (//commondatastorage.googleapis.com/chromium-browser-clang)} spids: [263] ) ] spids: [263] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name "$GYP_DEFINES"))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:GYP_DEFINES) op:Equal rhs:{(SQ )} spids:[285])] spids: [285] ) ] spids: [-1 282] ) ] spids: [-1 287] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name "$GYP_GENERATORS"))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:GYP_GENERATORS) op: Equal rhs: {(SQ )} spids: [305] ) ] spids: [305] ) ] spids: [-1 302] ) ] spids: [-1 307] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_Name "$LLVM_DOWNLOAD_GOLD_PLUGIN"))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_DOWNLOAD_GOLD_PLUGIN) op: Equal rhs: {(SQ )} spids: [325] ) ] spids: [325] ) ] spids: [-1 322] ) ] spids: [-1 327] ) (C {(set)} {(-eu)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name LLVM_FORCE_HEAD_REVISION> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [346 351] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CLANG_REVISION) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(svn)} {(info)} {(DQ ($ VSub_Name "$LLVM_REPO_URL"))}) (C {(grep)} {(SQ <"Revision:">)}) (C {(awk)} {(SQ <"{ printf $2; }">)}) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [368 394] ) } spids: [367] ) ] spids: [367] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PACKAGE_VERSION) op: Equal rhs: {(DQ (${ VSub_Name CLANG_REVISION) (-0))} spids: [397] ) ] spids: [397] ) ] spids: [-1 356] ) ] spids: [-1 405] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:OS) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children:[(C {(uname)} {(-s)})]) left_token: <Left_CommandSub "$("> spids: [410 414] ) ) } spids: [408] ) ] spids: [408] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:if_needed) op:Equal rhs:{(SQ )} spids:[421])] spids: [421] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:force_local_build) op:Equal rhs:{(SQ )} spids:[423])] spids: [423] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:run_tests) op:Equal rhs:{(SQ )} spids:[425])] spids: [425] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:bootstrap) op:Equal rhs:{(SQ )} spids:[427])] spids: [427] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:with_android) op:Equal rhs:{(yes)} spids:[429])] spids: [429] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:chrome_tools) op: Equal rhs: {(DQ ("plugins;blink_gc_plugin"))} spids: [432] ) ] spids: [432] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:gcc_toolchain) op:Equal rhs:{(SQ )} spids:[437])] spids: [437] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:with_patches) op:Equal rhs:{(yes)} spids:[439])] spids: [439] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Darwin))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:with_android) op:Equal rhs:{(SQ )} spids:[465])] spids: [465] ) ] spids: [-1 462] ) ] spids: [-1 467] ) (While cond: [ (Sentence child: (DBracket expr:(BoolBinary op_id:Redir_Great left:{($ VSub_Pound "$#")} right:{(0)})) terminator: <Op_Semi ";"> ) ] body: (DoGroup children: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(--bootstrap)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:bootstrap) op: Equal rhs: {(yes)} spids: [497] ) ] spids: [497] ) ] spids: [493 494 501 -1] ) (case_arm pat_list: [{(--if-needed)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:if_needed) op: Equal rhs: {(yes)} spids: [508] ) ] spids: [508] ) ] spids: [504 505 512 -1] ) (case_arm pat_list: [{(--force-local-build)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:force_local_build) op: Equal rhs: {(yes)} spids: [519] ) ] spids: [519] ) ] spids: [515 516 523 -1] ) (case_arm pat_list: [{(--print-revision)}] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name LLVM_FORCE_HEAD_REVISION> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [536 541] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Pipeline children: [ (C {(svn)} {(info)} {(DQ ($ VSub_Name "$LLVM_DIR"))}) (C {(grep)} {(SQ <"Revision:">)}) (C {(awk)} {(SQ <"{ printf $2; }">)}) ] negated: False ) ] spids: [-1 546] ) ] else_action: [(C {(echo)} {($ VSub_Name "$PACKAGE_VERSION")})] spids: [574 582] ) (C {(exit)} {(0)}) ] spids: [526 527 590 -1] ) (case_arm pat_list: [{(--run-tests)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:run_tests) op: Equal rhs: {(yes)} spids: [597] ) ] spids: [597] ) ] spids: [593 594 601 -1] ) (case_arm pat_list: [{(--without-android)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:with_android) op: Equal rhs: {(SQ )} spids: [608] ) ] spids: [608] ) ] spids: [604 605 611 -1] ) (case_arm pat_list: [{(--without-patches)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:with_patches) op: Equal rhs: {(SQ )} spids: [618] ) ] spids: [618] ) ] spids: [614 615 621 -1] ) (case_arm pat_list: [{(--with-chrome-tools)}] action: [ (C {(shift)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Pound "$#")} right: {(0)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("--with-chrome-tools requires an argument."))}) (C {(exit)} {(1)}) ] spids: [-1 644] ) ] spids: [-1 659] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:chrome_tools) op: Equal rhs: {($ VSub_Number "$1")} spids: [662] ) ] spids: [662] ) ] spids: [624 625 666 -1] ) (case_arm pat_list: [{(--gcc-toolchain)}] action: [ (C {(shift)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Pound "$#")} right: {(0)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("--gcc-toolchain requires an argument."))}) (C {(exit)} {(1)}) ] spids: [-1 689] ) ] spids: [-1 704] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_x child: {(DQ ($ VSub_Number "$1") (/bin/gcc))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:gcc_toolchain) op: Equal rhs: {($ VSub_Number "$1")} spids: [724] ) ] spids: [724] ) ] spids: [-1 721] ) ] else_action: [ (C {(echo)} {(DQ ("Invalid --gcc-toolchain: '") ($ VSub_Number "$1") ("'."))}) (C {(echo)} { (DQ ("'") ($ VSub_Number "$1") ("/bin/gcc' does not appear to be valid.")) } ) (C {(exit)} {(1)}) ] spids: [728 754] ) ] spids: [669 670 757 -1] ) (case_arm pat_list: [{(--help)}] action: [ (C {(echo)} { (DQ ("usage: ") ($ VSub_Number "$0") (" [--force-local-build] [--if-needed] [--run-tests] ") ) } ) (C {(echo)} {(DQ ("--bootstrap: First build clang with CC, then with itself."))}) (C {(echo)} {(DQ ("--force-local-build: Don't try to download prebuilt binaries."))}) (C {(echo)} {(DQ ("--if-needed: Download clang only if the script thinks it is needed."))} ) (C {(echo)} {(DQ ("--run-tests: Run tests after building. Only for local builds."))}) (C {(echo)} {(DQ ("--print-revision: Print current clang revision and exit."))}) (C {(echo)} {(DQ ("--without-android: Don't build ASan Android runtime library."))}) (C {(echo)} {(DQ ("--with-chrome-tools: Select which chrome tools to build."))} {(DQ ("Defaults to plugins;blink_gc_plugin."))} ) (C {(echo)} {(DQ (" Example: --with-chrome-tools plugins;empty-string"))}) (C {(echo)} {(DQ ("--gcc-toolchain: Set the prefix for which GCC version should"))}) (C {(echo)} {(DQ (" be used for building. For example, to use gcc in"))}) (C {(echo)} {(DQ (" /opt/foo/bin/gcc, use '--gcc-toolchain '/opt/foo"))}) (C {(echo)} {(DQ ("--without-patches: Don't apply local patches."))}) (C {(echo)}) (C {(exit)} {(1)}) ] spids: [761 762 872 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (C {(echo)} {(DQ ("Unknown argument: '") ($ VSub_Number "$1") ("'."))}) (C {(echo)} {(DQ ("Use --help for help."))}) (C {(exit)} {(1)}) ] spids: [875 876 900 -1] ) ] spids: [486 490 903] ) (C {(shift)}) ] spids: [483 908] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name LLVM_FORCE_HEAD_REVISION> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [917 922] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:force_local_build) op: Equal rhs: {(yes)} spids: [930] ) ] spids: [930] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:with_patches) op:Equal rhs:{(SQ )} spids:[939])] spids: [939] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_EqualTilde left: {(DQ ($ VSub_Name "$GYP_DEFINES"))} right: {(.) (Lit_Other "*") (Lit_VarLike "OS=") (android.) (Lit_Other "*")} ) ) ] negated: True ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:with_android) op: Equal rhs: {(SQ )} spids: [971] ) ] spids: [971] ) ] spids: [-1 964] ) ] spids: [-1 974] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LLVM_BUILD_TOOLS_DIR) op: Equal rhs: {(DQ (${ VSub_Name ABS_LLVM_DIR) (/../llvm-build-tools))} spids: [978] ) ] spids: [978] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Linux))} ) ) (DBracket expr: (BoolUnary op_id: BoolUnary_z child: {(DQ (${ VSub_Name gcc_toolchain))} ) ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: Redir_Less left: { (CommandSubPart command_list: (CommandList children: [(C {(gcc)} {(-dumpversion)})] ) left_token: <Left_CommandSub "$("> spids: [1028 1032] ) } right: {(DQ (4.7.0))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalNot child: (BoolUnary op_id: BoolUnary_e child: { (DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR) (/gcc482) ) } ) ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Downloading pre-built GCC 4.8.2..."))}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR))}) (Pipeline children: [ (C {(curl)} {(--fail)} {(-L)} {(DQ (${ VSub_Name CDS_URL) (/tools/gcc482.tgz))} ) (C {(tar)} {(zxf)} {(-)} {(-C)} {(DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR))} ) ] negated: False ) (C {(echo)} {(Done)}) ] spids: [-1 1068] ) ] spids: [-1 1126] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:gcc_toolchain) op: Equal rhs: {(DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR) (/gcc482))} spids: [1129] ) ] spids: [1129] ) ] spids: [-1 1043] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:gcc_toolchain) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(dirname)} { (CommandSubPart command_list: (CommandList children: [ (C {(dirname)} { (CommandSubPart command_list: (CommandList children: [(C {(which)} {(gcc)})] ) left_token: <Left_CommandSub "$("> spids: [1153 1157] ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [1150 1158] ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [1147 1159] ) ) } spids: [1145] ) ] spids: [1145] ) ] spids: [1138 1163] ) ] spids: [-1 1021] ) ] spids: [-1 1166] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalOr left: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Linux))} ) right: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Darwin))} ) ) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: Redir_Less left: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(cmake)} {(--version)}) (C {(grep)} {(-Eo)} {(SQ <"[0-9.]+">)}) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [1210 1224] ) } right: {(DQ (3.0))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalNot child: (BoolUnary op_id: BoolUnary_e child: { (DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR) (/cmake310) ) } ) ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Downloading pre-built CMake 3.10..."))}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR))}) (Pipeline children: [ (C {(curl)} {(--fail)} {(-L)} { (DQ (${ VSub_Name CDS_URL) (/tools/cmake310_) (${ VSub_Name OS) (.tgz) ) } ) (C {(tar)} {(zxf)} {(-)} {(-C)} {(DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR))} ) ] negated: False ) (C {(echo)} {(Done)}) ] spids: [-1 1260] ) ] spids: [-1 1322] ) (C {(export)} {(Lit_VarLike "PATH=") (DQ (${ VSub_Name LLVM_BUILD_TOOLS_DIR) ("/cmake310/bin:") (${ VSub_Name PATH) ) } ) ] spids: [-1 1235] ) ] spids: [-1 1339] ) ] spids: [-1 1203] ) ] spids: [-1 1342] ) (C {(echo)} {(DQ ("LLVM_FORCE_HEAD_REVISION was set; using r") (${ VSub_Name CLANG_REVISION))} ) ] spids: [-1 927] ) ] spids: [-1 1355] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ ($ VSub_Name "$if_needed"))}) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Darwin))} ) ) terminator: <Op_Semi ";"> ) ] action: [(C {(true)})] spids: [-1 1393] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Linux))} ) ) terminator: <Op_Semi ";"> ) ] action: [(C {(true)})] spids: [1403 1422] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_EqualTilde left: {(DQ ($ VSub_Name "$GYP_DEFINES"))} right: {(.) (Lit_Other "*") ("(") (clang) ("|") (tsan) ("|") (asan) ("|") (lsan) ("|") (msan) (")") (Lit_Other "=") (1.) (Lit_Other "*") } ) ) terminator: <Op_Semi ";"> ) ] action: [(C {(true)})] spids: [1432 1462] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_d child:{(DQ (${ VSub_Name LLVM_BUILD_DIR))}) ) terminator: <Op_Semi ";"> ) ] action: [(C {(true)})] spids: [1472 1487] ) ] else_action: [(C {(exit)} {(0)})] spids: [1501 1513] ) ] spids: [-1 1371] ) ] spids: [-1 1515] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr:(BoolUnary op_id:BoolUnary_f child:{(DQ (${ VSub_Name STAMP_FILE))})) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PREVIOUSLY_BUILT_REVISON) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(cat)} {(DQ (${ VSub_Name STAMP_FILE))})] ) left_token: <Left_CommandSub "$("> spids: [1541 1549] ) } spids: [1540] ) ] spids: [1540] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (DBracket expr: (BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_Name "$force_local_build"))} ) ) (DBracket expr: (BoolBinary op_id: BoolBinary_GlobEqual left: {(DQ (${ VSub_Name PREVIOUSLY_BUILT_REVISON))} right: {(DQ (${ VSub_Name PACKAGE_VERSION))} ) ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Clang already at ") (${ VSub_Name PACKAGE_VERSION))}) (C {(exit)} {(0)}) ] spids: [-1 1589] ) ] spids: [-1 1607] ) ] spids: [-1 1537] ) ] spids: [-1 1609] ) (C {(rm)} {(-f)} {(DQ (${ VSub_Name STAMP_FILE))}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name "$force_local_build"))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_FILE) op: Equal rhs: {(DQ (clang-) (${ VSub_Name PACKAGE_VERSION) (.tgz))} spids: [1650] ) ] spids: [1650] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_OUT_DIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(mktemp)} {(-d)} {(-t)} {(clang_download.XXXXXX)})] ) left_token: <Left_CommandSub "$("> spids: [1661 1669] ) } spids: [1660] ) ] spids: [1660] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_OUTPUT) op: Equal rhs: {(DQ (${ VSub_Name CDS_OUT_DIR) (/) (${ VSub_Name CDS_FILE))} spids: [1672] ) ] spids: [1672] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Linux))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_FULL_URL) op: Equal rhs: {(DQ (${ VSub_Name CDS_URL) (/Linux_x64/) (${ VSub_Name CDS_FILE))} spids: [1706] ) ] spids: [1706] ) ] spids: [-1 1703] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CDS_FULL_URL) op: Equal rhs: {(DQ (${ VSub_Name CDS_URL) (/Mac/) (${ VSub_Name CDS_FILE))} spids: [1740] ) ] spids: [1740] ) ] spids: [1718 1737] ) ] spids: [-1 1752] ) (C {(echo)} {(Trying)} {(to)} {(download)} {(prebuilt)} {(clang)}) (If arms: [ (if_arm cond: [ (Sentence child: (SimpleCommand words: [{(which)} {(curl)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(/dev/null)} spids: [1774] ) ] ) terminator: <Op_Semi ";"> ) ] action: [ (AndOr children: [ (C {(curl)} {(-L)} {(--fail)} {(DQ (${ VSub_Name CDS_FULL_URL))} {(-o)} {(DQ (${ VSub_Name CDS_OUTPUT))} ) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name CDS_OUT_DIR))}) ] op_id: Op_DPipe ) ] spids: [-1 1779] ) (if_arm cond: [ (Sentence child: (SimpleCommand words: [{(which)} {(wget)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(/dev/null)} spids: [1823] ) ] ) terminator: <Op_Semi ";"> ) ] action: [ (AndOr children: [ (C {(wget)} {(DQ (${ VSub_Name CDS_FULL_URL))} {(-O)} {(DQ (${ VSub_Name CDS_OUTPUT))} ) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name CDS_OUT_DIR))}) ] op_id: Op_DPipe ) ] spids: [1817 1828] ) ] else_action: [ (C {(echo)} {(DQ ("Neither curl nor wget found. Please install one of these."))}) (C {(exit)} {(1)}) ] spids: [1860 1875] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(-f)} {(DQ (${ VSub_Name CDS_OUTPUT))} {(Lit_Other "]")}) terminator: <Op_Semi ";"> ) ] action: [ (C {(rm)} {(-rf)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))}) (C {(tar)} {(-xzf)} {(DQ (${ VSub_Name CDS_OUTPUT))} {(-C)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))} ) (C {(echo)} {(clang)} {(DQ (${ VSub_Name PACKAGE_VERSION))} {(unpacked)}) (SimpleCommand words: [{(echo)} {(DQ (${ VSub_Name PACKAGE_VERSION))}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ (${ VSub_Name STAMP_FILE))} spids: [1958] ) ] ) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name CDS_OUT_DIR))}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: {(DQ (${ VSub_Name LLVM_DOWNLOAD_GOLD_PLUGIN))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(${ VSub_Name THIS_DIR) (/../../../build/download_gold_plugin.py)}) ] spids: [-1 2001] ) ] spids: [-1 2010] ) (C {(exit)} {(0)}) ] spids: [-1 1893] ) ] else_action: [ (C {(echo)} {(Did)} {(not)} {(find)} {(prebuilt)} {(clang)} {(DQ (${ VSub_Name PACKAGE_VERSION)) (Lit_Comma ",")} {(building)} ) ] spids: [2018 2043] ) ] spids: [-1 1639] ) ] spids: [-1 2045] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name with_android))}) ) (Pipeline children: [ (DBracket expr: (BoolUnary op_id: BoolUnary_d child: {(DQ (${ VSub_Name ANDROID_NDK_DIR))} ) ) ] negated: True ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Android NDK not found at ") (${ VSub_Name ANDROID_NDK_DIR))}) (C {(echo)} {(DQ ("The Android NDK is needed to build a Clang whose -fsanitize=address"))}) (C {(echo)} {(DQ ("works on Android. See "))}) (C {(echo)} {(DQ ("http://code.google.com/p/chromium/wiki/AndroidBuildInstructions for how"))} ) (C {(echo)} {(DQ ("to install the NDK, or pass --without-android."))}) (C {(exit)} {(1)}) ] spids: [-1 2079] ) ] spids: [-1 2124] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (SimpleCommand words: [{(which)} {(cmake)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[2138])] ) ] negated: True ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("CMake needed to build clang; please install"))}) (C {(exit)} {(1)}) ] spids: [-1 2143] ) ] spids: [-1 2157] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (SimpleCommand words: [{(which)} {(ninja)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[2167])] ) ] negated: True ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("ninja needed to build clang, please install"))}) (C {(exit)} {(1)}) ] spids: [-1 2172] ) ] spids: [-1 2186] ) (C {(echo)} {(Reverting)} {(previously)} {(patched)} {(files)}) (ForEach iter_name: i iter_words: [ {(DQ (${ VSub_Name CLANG_DIR) (/test/Index/crash-recovery-modules.m))} {(DQ (${ VSub_Name CLANG_DIR) (/unittests/libclang/LibclangTest.cpp))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/lib/asan/asan_rtl.cc))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/test/asan/TestCases/Linux/new_array_cookie_test.cc))} {(DQ (${ VSub_Name LLVM_DIR) (/test/DebugInfo/gmlt.ll))} {(DQ (${ VSub_Name LLVM_DIR) (/lib/CodeGen/SpillPlacement.cpp))} {(DQ (${ VSub_Name LLVM_DIR) (/lib/CodeGen/SpillPlacement.h))} {(DQ (${ VSub_Name LLVM_DIR) (/lib/Transforms/Instrumentation/MemorySanitizer.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/test/Driver/env.c))} {(DQ (${ VSub_Name CLANG_DIR) (/lib/Frontend/InitPreprocessor.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/test/Frontend/exceptions.c))} {(DQ (${ VSub_Name CLANG_DIR) (/test/Preprocessor/predefined-exceptions.m))} {(DQ (${ VSub_Name LLVM_DIR) (/test/Bindings/Go/go.test))} {(DQ (${ VSub_Name CLANG_DIR) (/lib/Parse/ParseExpr.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/lib/Parse/ParseTemplate.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/lib/Sema/SemaDeclCXX.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/lib/Sema/SemaExprCXX.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/test/SemaCXX/default2.cpp))} {(DQ (${ VSub_Name CLANG_DIR) (/test/SemaCXX/typo-correction-delayed.cpp))} { (DQ (${ VSub_Name COMPILER_RT_DIR) (/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc) ) } {(DQ (${ VSub_Name COMPILER_RT_DIR) (/test/tsan/signal_segv_handler.cc))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/lib/sanitizer_common/sanitizer_coverage_libcdep.cc))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/cmake/config-ix.cmake))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/CMakeLists.txt))} {(DQ (${ VSub_Name COMPILER_RT_DIR) (/lib/ubsan/ubsan_platform.h))} ] do_arg_iter: False body: (DoGroup children: [ (Sentence child: (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_e child:{(DQ (${ VSub_Name i))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(rm)} {(-f)} {(DQ (${ VSub_Name i))}) (C {(svn)} {(revert)} {(DQ (${ VSub_Name i))}) ] spids: [-1 2452] ) ] spids: [-1 2480] ) terminator: <Op_Semi ";"> ) ] spids: [2434 2483] ) spids: [2204 2432] ) (C {(echo)} {(Remove)} {(the)} {(Clang)} {(tools)} {(shim)} {(dir)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CHROME_TOOLS_SHIM_DIR) op: Equal rhs: {(${ VSub_Name ABS_LLVM_DIR) (/tools/chrometools)} spids: [2500] ) ] spids: [2500] ) (C {(rm)} {(-rfv)} {(${ VSub_Name CHROME_TOOLS_SHIM_DIR)}) (C {(echo)} {(Getting)} {(LLVM)} {(r) (DQ (${ VSub_Name CLANG_REVISION))} {(KW_In in)} {(DQ (${ VSub_Name LLVM_DIR))} ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(svn)} {(co)} {(--force)} { (DQ (${ VSub_Name LLVM_REPO_URL) ("/llvm/trunk@") (${ VSub_Name CLANG_REVISION)) } {(DQ (${ VSub_Name LLVM_DIR))} ) ] negated: True ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(Checkout)} {(failed) (Lit_Comma ",")} {(retrying)}) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name LLVM_DIR))}) (C {(svn)} {(co)} {(--force)} {(DQ (${ VSub_Name LLVM_REPO_URL) ("/llvm/trunk@") (${ VSub_Name CLANG_REVISION))} {(DQ (${ VSub_Name LLVM_DIR))} ) ] spids: [-1 2565] ) ] spids: [-1 2611] ) (C {(echo)} {(Getting)} {(clang)} {(r) (DQ (${ VSub_Name CLANG_REVISION))} {(KW_In in)} {(DQ (${ VSub_Name CLANG_DIR))} ) (C {(svn)} {(co)} {(--force)} {(DQ (${ VSub_Name LLVM_REPO_URL) ("/cfe/trunk@") (${ VSub_Name CLANG_REVISION))} {(DQ (${ VSub_Name CLANG_DIR))} ) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name LLVM_DIR) (/projects/compiler-rt))}) (C {(echo)} {(Getting)} {(compiler-rt)} {(r) (DQ (${ VSub_Name CLANG_REVISION))} {(KW_In in)} {(DQ (${ VSub_Name COMPILER_RT_DIR))} ) (C {(svn)} {(co)} {(--force)} {(DQ (${ VSub_Name LLVM_REPO_URL) ("/compiler-rt/trunk@") (${ VSub_Name CLANG_REVISION))} {(DQ (${ VSub_Name COMPILER_RT_DIR))} ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(Getting)} {(libc) (Lit_Other "+") (Lit_Other "+")} {(r) (DQ (${ VSub_Name CLANG_REVISION))} {(KW_In in)} {(DQ (${ VSub_Name LIBCXX_DIR))} ) (C {(svn)} {(co)} {(--force)} {(DQ (${ VSub_Name LLVM_REPO_URL) ("/libcxx/trunk@") (${ VSub_Name CLANG_REVISION))} {(DQ (${ VSub_Name LIBCXX_DIR))} ) ] spids: [-1 2747] ) ] spids: [-1 2798] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(Getting)} {(libc) (Lit_Other "+") (Lit_Other "+") (abi)} {(r) (DQ (${ VSub_Name CLANG_REVISION))} {(KW_In in)} {(DQ (${ VSub_Name LIBCXXABI_DIR))} ) (C {(svn)} {(co)} {(--force)} {(DQ (${ VSub_Name LLVM_REPO_URL) ("/libcxxabi/trunk@") (${ VSub_Name CLANG_REVISION))} {(DQ (${ VSub_Name LIBCXXABI_DIR))} ) ] spids: [-1 2826] ) ] spids: [-1 2878] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ ($ VSub_Name "$with_patches"))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(pushd)} {(DQ (${ VSub_Name CLANG_DIR))}) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {("--- test/Index/crash-recovery-modules.m\t(revision 202554)\n") ("+++ test/Index/crash-recovery-modules.m\t(working copy)\n") ("@@ -12,6 +12,8 @@\n") (" \n") (" // REQUIRES: crash-recovery\n") (" // REQUIRES: shell\n") ("+// XFAIL: *\n") ("+// (PR11974)\n") (" \n") (" @import Crash;\n") } do_expansion: False here_end: EOF was_filled: True spids: [2913] ) ] ) (C {(patch)} {(-p0)}) ] negated: False ) (C {(popd)}) (C {(pushd)} {(DQ (${ VSub_Name CLANG_DIR))}) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {("--- unittests/libclang/LibclangTest.cpp (revision 215949)\n") ("+++ unittests/libclang/LibclangTest.cpp (working copy)\n") ("@@ -431,7 +431,7 @@\n") (" EXPECT_EQ(0U, clang_getNumDiagnostics(ClangTU));\n") (" }\n") ("\n") ("-TEST_F(LibclangReparseTest, ReparseWithModule) {\n") ("+TEST_F(LibclangReparseTest, DISABLED_ReparseWithModule) {\n") ( " const char *HeaderTop = \"#ifndef H\\n#define H\\nstruct Foo { int bar;\";\n" ) (" const char *HeaderBottom = \"\\n};\\n#endif\\n\";\n") ( " const char *MFile = \"#include \\\"HeaderFile.h\\\"\\nint main() {\"\n" ) } do_expansion: False here_end: EOF was_filled: True spids: [2938] ) ] ) (C {(patch)} {(-p0)}) ] negated: False ) (C {(popd)}) (C {(pushd)} {(DQ (${ VSub_Name LLVM_DIR))}) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {("--- test/Bindings/Go/go.test (revision 223109)\n") ("+++ test/Bindings/Go/go.test (working copy)\n") ("@@ -1,3 +1,3 @@\n") ("-; RUN: llvm-go test llvm.org/llvm/bindings/go/llvm\n") ("+; RUN: true\n") (" \n") (" ; REQUIRES: shell\n") } do_expansion: False here_end: EOF was_filled: True spids: [2971] ) ] ) (C {(patch)} {(-p0)}) ] negated: False ) (C {(popd)}) (C {(pushd)} {(DQ (${ VSub_Name COMPILER_RT_DIR))}) (Pipeline children: [ (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {("Index: CMakeLists.txt\n") ("===================================================================\n") ("--- CMakeLists.txt\t(revision 241602)\n") ("+++ CMakeLists.txt\t(working copy)\n") ("@@ -305,6 +305,7 @@\n") (" list(APPEND SANITIZER_COMMON_SUPPORTED_OS iossim)\n") (" endif()\n") (" endif()\n") ("+ set(SANITIZER_MIN_OSX_VERSION \"10.7\")\n") (" if(SANITIZER_MIN_OSX_VERSION VERSION_LESS \"10.7\")\n") ( " message(FATAL_ERROR \"Too old OS X version: ${SANITIZER_MIN_OSX_VERSION}\")\n" ) (" endif()\n") } do_expansion: False here_end: EOF was_filled: True spids: [3008] ) ] ) (C {(patch)} {(-p0)}) ] negated: False ) (C {(popd)}) ] spids: [-1 2894] ) ] spids: [-1 3025] ) (C {(set)} {(-x)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CC) op: Equal rhs: { (BracedVarSub token: <VSub_Name CC> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(cc)}) spids: [3040 3044] ) } spids: [3039] ) ] spids: [3039] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXX) op: Equal rhs: { (BracedVarSub token: <VSub_Name CXX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("c++")}) spids: [3047 3051] ) } spids: [3046] ) ] spids: [3046] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name gcc_toolchain))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CC) op: Equal rhs: {(DQ ($ VSub_Name "$gcc_toolchain") (/bin/gcc))} spids: [3076] ) ] spids: [3076] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXX) op: Equal rhs: {(DQ ($ VSub_Name "$gcc_toolchain") ("/bin/g++"))} spids: [3083] ) ] spids: [3083] ) (C {(export)} {(Lit_VarLike "LD_LIBRARY_PATH=") (DQ (CommandSubPart command_list: (CommandList children: [ (C {(dirname)} { (CommandSubPart command_list: (CommandList children: [ (C {(${ VSub_Name CXX)} {(-print-file-name) (Lit_Other "=") (libstdc) (Lit_Other "+") (Lit_Other "+") (.so.6) } ) ] ) left_token: <Left_CommandSub "$("> spids: [3105 3116] ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [3102 3117] ) ) } ) ] spids: [-1 3069] ) ] spids: [-1 3120] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CFLAGS) op:Equal rhs:{(DQ )} spids:[3123])] spids: [3123] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:CXXFLAGS) op:Equal rhs:{(DQ )} spids:[3127])] spids: [3127] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:LDFLAGS) op:Equal rhs:{(DQ )} spids:[3131])] spids: [3131] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:deployment_target) op:Equal rhs:{(DQ )} spids:[3157])] spids: [3157] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CFLAGS) op: Equal rhs: { (DQ ("-isysroot ") (CommandSubPart command_list: (CommandList children:[(C {(xcrun)} {(--show-sdk-path)})]) left_token: <Left_CommandSub "$("> spids: [3195 3199] ) ) } spids: [3192] ) ] spids: [3192] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXXFLAGS) op: Equal rhs: { (DQ ("-stdlib=libc++ -nostdinc++ -I") (${ VSub_Name ABS_LIBCXX_DIR) ("/include ") (${ VSub_Name CFLAGS) ) } spids: [3203] ) ] spids: [3203] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name bootstrap))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:deployment_target) op: Equal rhs: {(10.6)} spids: [3235] ) ] spids: [3235] ) ] spids: [-1 3232] ) ] spids: [-1 3239] ) ] spids: [-1 3181] ) ] spids: [-1 3241] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr:(BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name bootstrap))})) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_INSTALL_DIR) op: Equal rhs: {(DQ (${ VSub_Name PWD) (/) (${ VSub_Name LLVM_BOOTSTRAP_INSTALL_DIR))} spids: [3265] ) ] spids: [3265] ) (C {(echo)} {(DQ ("Building bootstrap compiler"))}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name LLVM_BOOTSTRAP_DIR))}) (C {(pushd)} {(DQ (${ VSub_Name LLVM_BOOTSTRAP_DIR))}) (C {(cmake)} {(-GNinja)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DLLVM_ENABLE_ASSERTIONS) (Lit_Other "=") (ON)} {(-DLLVM_TARGETS_TO_BUILD) (Lit_Other "=") (host)} {(-DLLVM_ENABLE_THREADS) (Lit_Other "=") (OFF)} {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (DQ (${ VSub_Name ABS_INSTALL_DIR))} {(-DCMAKE_C_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CC))} {(-DCMAKE_CXX_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CXX))} {(-DCMAKE_C_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name CFLAGS))} {(-DCMAKE_CXX_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name CXXFLAGS))} {(../llvm)} ) (C {(ninja)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name run_tests))}) ) terminator: <Op_Semi ";"> ) ] action: [(C {(ninja)} {(check-all)})] spids: [-1 3407] ) ] spids: [-1 3415] ) (C {(ninja)} {(install)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name gcc_toolchain))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(cp)} {(-v)} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(${ VSub_Name CXX)} {(-print-file-name) (Lit_Other "=") (libstdc) (Lit_Other "+") (Lit_Other "+") (.so.6) } ) ] ) left_token: <Left_CommandSub "$("> spids: [3455 3466] ) ) } {(DQ (${ VSub_Name ABS_INSTALL_DIR) (/lib/))} ) ] spids: [-1 3439] ) ] spids: [-1 3479] ) (C {(popd)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CC) op: Equal rhs: {(DQ (${ VSub_Name ABS_INSTALL_DIR) (/bin/clang))} spids: [3486] ) ] spids: [3486] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXX) op: Equal rhs: {(DQ (${ VSub_Name ABS_INSTALL_DIR) ("/bin/clang++"))} spids: [3495] ) ] spids: [3495] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name gcc_toolchain))}) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CFLAGS) op: Equal rhs: {(DQ ("--gcc-toolchain=") (${ VSub_Name gcc_toolchain))} spids: [3531] ) ] spids: [3531] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXXFLAGS) op: Equal rhs: {(DQ ("--gcc-toolchain=") (${ VSub_Name gcc_toolchain))} spids: [3540] ) ] spids: [3540] ) ] spids: [-1 3520] ) ] spids: [-1 3549] ) (C {(echo)} {(DQ ("Building final compiler"))}) ] spids: [-1 3262] ) ] spids: [-1 3559] ) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))}) (C {(pushd)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (C {(rm)} {(-rf)} {(libcxxbuild)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LIBCXXFLAGS) op: Equal rhs: {(DQ ("-O3 -std=c++11 -fstrict-aliasing"))} spids: [3622] ) ] spids: [3622] ) (C {(mkdir)} {(-p)} {(libcxxbuild/libcxx)}) (C {(pushd)} {(libcxxbuild/libcxx)}) (C { (BracedVarSub token: <VSub_Name CXX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("c++")}) spids: [3649 3653] ) } {(-c)} {(${ VSub_Name CXXFLAGS)} {(${ VSub_Name LIBCXXFLAGS)} {(DQ (${ VSub_Name ABS_LIBCXX_DIR)) (/src/) (Lit_Other "*") (.cpp)} ) (C {(popd)}) (C {(mkdir)} {(-p)} {(libcxxbuild/libcxxabi)}) (C {(pushd)} {(libcxxbuild/libcxxabi)}) (C { (BracedVarSub token: <VSub_Name CXX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("c++")}) spids: [3691 3695] ) } {(-c)} {(${ VSub_Name CXXFLAGS)} {(${ VSub_Name LIBCXXFLAGS)} {(DQ (${ VSub_Name ABS_LIBCXXABI_DIR)) (/src/) (Lit_Other "*") (.cpp)} {(-I) (DQ (${ VSub_Name ABS_LIBCXXABI_DIR) (/include))} ) (C {(popd)}) (C {(pushd)} {(libcxxbuild)}) (C { (BracedVarSub token: <VSub_Name CC> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(cc)}) spids: [3734 3738] ) } {(libcxx/) (Lit_Other "*") (.o)} {(libcxxabi/) (Lit_Other "*") (.o)} {(-o)} {(libc) (Lit_Other "+") (Lit_Other "+") (.1.dylib)} {(-dynamiclib)} {(-nodefaultlibs)} {(-current_version)} {(1)} {(-compatibility_version)} {(1)} {(-lSystem)} {(-install_name)} {(Lit_Other "@") (executable_path/libc) (Lit_Other "+") (Lit_Other "+") (.dylib)} {(-Wl) (Lit_Comma ",") (-unexported_symbols_list) (Lit_Comma ",") (${ VSub_Name ABS_LIBCXX_DIR) (/lib/libc) (Lit_Other "+") (Lit_Other "+") (unexp.exp) } {(-Wl) (Lit_Comma ",") (-force_symbols_not_weak_list) (Lit_Comma ",") (${ VSub_Name ABS_LIBCXX_DIR) (/lib/notweak.exp) } {(-Wl) (Lit_Comma ",") (-force_symbols_weak_list) (Lit_Comma ",") (${ VSub_Name ABS_LIBCXX_DIR) (/lib/weak.exp) } ) (C {(ln)} {(-sf)} {(libc) (Lit_Other "+") (Lit_Other "+") (.1.dylib)} {(libc) (Lit_Other "+") (Lit_Other "+") (.dylib)} ) (C {(popd)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:LDFLAGS) op: PlusEqual rhs: {(DQ ("-stdlib=libc++ -L") (${ VSub_Name PWD) (/libcxxbuild))} spids: [3836] ) ] spids: [3836] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name bootstrap))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(rm)} {(-rf)} {(DQ (${ VSub_Name ABS_LIBCXX_DIR))}) (C {(rm)} {(-rf)} {(DQ (${ VSub_Name ABS_LIBCXXABI_DIR))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXXFLAGS) op: Equal rhs: { (DQ ("-stdlib=libc++ -nostdinc++ -I") (${ VSub_Name ABS_INSTALL_DIR) ("/include/c++/v1 ") (${ VSub_Name CFLAGS) ) } spids: [3903] ) ] spids: [3903] ) ] spids: [-1 3862] ) ] spids: [-1 3916] ) ] spids: [-1 3612] ) ] spids: [-1 3918] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:BINUTILS_INCDIR) op:Equal rhs:{(DQ )} spids:[3924])] spids: [3924] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Linux))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BINUTILS_INCDIR) op: Equal rhs: {(DQ (${ VSub_Name ABS_BINUTILS_DIR) (/Linux_x64/Release/include))} spids: [3950] ) ] spids: [3950] ) ] spids: [-1 3947] ) ] spids: [-1 3958] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name LLVM_FORCE_HEAD_REVISION> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(SQ )}) spids: [3974 3979] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CFLAGS) op: Equal rhs: {(DQ (${ VSub_Name CFLAGS) (" -DLLVM_FORCE_HEAD_REVISION"))} spids: [3987] ) ] spids: [3987] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CXXFLAGS) op: Equal rhs: {(DQ (${ VSub_Name CXXFLAGS) (" -DLLVM_FORCE_HEAD_REVISION"))} spids: [3996] ) ] spids: [3996] ) ] spids: [-1 3984] ) ] spids: [-1 4004] ) (C {(mkdir)} {(-v)} {(${ VSub_Name CHROME_TOOLS_SHIM_DIR)}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(${ VSub_Name CHROME_TOOLS_SHIM_DIR) (/CMakeLists.txt)} spids: [4035] ) (HereDoc op_id: Redir_DLess fd: -1 body: { (DQ ( "# Since tools/clang isn't actually a subdirectory, use the two argument version\n" ) ("# to specify where build artifacts go. CMake doesn't allow reusing the same\n") ( "# binary dir for multiple source dirs, so the build artifacts have to go into a\n" ) ("# subdirectory...\n") ("add_subdirectory(") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{CHROMIUM_TOOLS_SRC} ") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{CMAKE_CURRENT_BINARY_DIR}/a)\n") ) } do_expansion: True here_end: EOF was_filled: True spids: [4042] ) ] ) (C {(rm)} {(-fv)} {(CMakeCache.txt)}) (SimpleCommand words: [ {(cmake)} {(-GNinja)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DLLVM_ENABLE_ASSERTIONS) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_THREADS) (Lit_Other "=") (OFF)} {(-DLLVM_BINUTILS_INCDIR) (Lit_Other "=") (DQ (${ VSub_Name BINUTILS_INCDIR))} {(-DCMAKE_C_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CC))} {(-DCMAKE_CXX_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CXX))} {(-DCMAKE_C_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name CFLAGS))} {(-DCMAKE_CXX_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name CXXFLAGS))} {(-DCMAKE_EXE_LINKER_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name LDFLAGS))} {(-DCMAKE_SHARED_LINKER_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name LDFLAGS))} {(-DCMAKE_MODULE_LINKER_FLAGS) (Lit_Other "=") (DQ (${ VSub_Name LDFLAGS))} {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (DQ (${ VSub_Name ABS_LLVM_BUILD_DIR))} {(-DCHROMIUM_TOOLS_SRC) (Lit_Other "=") (DQ (${ VSub_Name ABS_CHROMIUM_TOOLS_DIR))} {(-DCHROMIUM_TOOLS) (Lit_Other "=") (DQ (${ VSub_Name chrome_tools))} {(DQ (${ VSub_Name ABS_LLVM_DIR))} ] more_env: [ (env_pair name: MACOSX_DEPLOYMENT_TARGET val: {(${ VSub_Name deployment_target)} spids: [4061] ) ] ) (C {(env)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name gcc_toolchain))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(mkdir)} {(-p)} {(lib)}) (C {(cp)} {(-v)} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(${ VSub_Name CXX)} {(${ VSub_Name CXXFLAGS)} {(-print-file-name) (Lit_Other "=") (libstdc) (Lit_Other "+") (Lit_Other "+") (.so.6) } ) ] ) left_token: <Left_CommandSub "$("> spids: [4243 4258] ) ) } {(lib/)} ) ] spids: [-1 4224] ) ] spids: [-1 4263] ) (C {(ninja)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name chrome_tools))}) ) terminator: <Op_Semi ";"> ) ] action: [(C {(ninja)} {(cr-install)})] spids: [-1 4286] ) ] spids: [-1 4293] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:STRIP_FLAGS) op:Equal rhs:{(SQ )} spids:[4296])] spids: [4296] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ (${ VSub_Name OS))} {(Lit_Other "=")} {(DQ (Darwin))} {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:STRIP_FLAGS) op:Equal rhs:{(-x)} spids:[4324])] spids: [4324] ) (C {(cp)} {(libcxxbuild/libc) (Lit_Other "+") (Lit_Other "+") (.1.dylib)} {(bin/)}) ] spids: [-1 4317] ) ] spids: [-1 4338] ) (C {(strip)} {(${ VSub_Name STRIP_FLAGS)} {(bin/clang)}) (C {(popd)}) (C {(mkdir)} {(-p)} {(DQ (${ VSub_Name COMPILER_RT_BUILD_DIR))}) (C {(pushd)} {(DQ (${ VSub_Name COMPILER_RT_BUILD_DIR))}) (C {(rm)} {(-fv)} {(CMakeCache.txt)}) (SimpleCommand words: [ {(cmake)} {(-GNinja)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DLLVM_ENABLE_ASSERTIONS) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_THREADS) (Lit_Other "=") (OFF)} {(-DCMAKE_C_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CC))} {(-DCMAKE_CXX_COMPILER) (Lit_Other "=") (DQ (${ VSub_Name CXX))} {(-DLLVM_CONFIG_PATH) (Lit_Other "=") (DQ (${ VSub_Name ABS_LLVM_BUILD_DIR) (/bin/llvm-config)) } {(DQ (${ VSub_Name ABS_COMPILER_RT_DIR))} ] more_env: [ (env_pair name: MACOSX_DEPLOYMENT_TARGET val: {(${ VSub_Name deployment_target)} spids: [4379] ) ] ) (C {(ninja)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CLANG_VERSION) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(DQ (${ VSub_Name ABS_LLVM_BUILD_DIR) (/bin/clang))} {(--version)}) (C {(sed)} {(-ne)} {(SQ <"s/clang version \\([0-9]\\.[0-9]\\.[0-9]\\).*/\\1/p">)} ) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [4456 4477] ) } spids: [4455] ) ] spids: [4455] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ABS_LLVM_CLANG_LIB_DIR) op: Equal rhs: {(DQ (${ VSub_Name ABS_LLVM_BUILD_DIR) (/lib/clang/) (${ VSub_Name CLANG_VERSION))} spids: [4479] ) ] spids: [4479] ) (Pipeline children: [ (C {(tar)} {(-c)} {(Lit_Other "*") (blacklist.txt)}) (C {(tar)} {(-C)} {(${ VSub_Name ABS_LLVM_CLANG_LIB_DIR)} {(-xv)}) ] negated: False ) (Pipeline children: [ (C {(tar)} {(-c)} {(include/sanitizer)}) (C {(tar)} {(-C)} {(${ VSub_Name ABS_LLVM_CLANG_LIB_DIR)} {(-xv)}) ] negated: False ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobEqual left: {(DQ (${ VSub_Name OS))} right: {(DQ (Darwin))} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Pipeline children: [ (C {(tar)} {(-c)} {(lib/darwin)}) (C {(tar)} {(-C)} {(${ VSub_Name ABS_LLVM_CLANG_LIB_DIR)} {(-xv)}) ] negated: False ) ] spids: [-1 4546] ) ] else_action: [ (Pipeline children: [ (C {(tar)} {(-c)} {(lib/linux)}) (C {(tar)} {(-C)} {(${ VSub_Name ABS_LLVM_CLANG_LIB_DIR)} {(-xv)}) ] negated: False ) ] spids: [4567 4588] ) (C {(popd)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ (${ VSub_Name with_android))}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(${ VSub_Name ANDROID_NDK_DIR) (/build/tools/make-standalone-toolchain.sh)} {(--platform) (Lit_Other "=") (android-19)} {(--install-dir) (Lit_Other "=") (DQ (${ VSub_Name LLVM_BUILD_DIR) (/android-toolchain))} {(--system) (Lit_Other "=") (linux-x86_64)} {(--stl) (Lit_Other "=") (stlport)} {(--toolchain) (Lit_Other "=") (arm-linux-androideabi-4.9)} ) (C {(rm)} {(-v)} {(DQ (${ VSub_Name LLVM_BUILD_DIR)) (/android-toolchain/include/c) (Lit_Other "+") (Lit_Other "+") (/) (Lit_Other "*") (/unwind.h) } ) (C {(mkdir)} {(-p)} {(${ VSub_Name LLVM_BUILD_DIR) (/android)}) (C {(pushd)} {(${ VSub_Name LLVM_BUILD_DIR) (/android)}) (C {(rm)} {(-fv)} {(CMakeCache.txt)}) (SimpleCommand words: [ {(cmake)} {(-GNinja)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DLLVM_ENABLE_ASSERTIONS) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_THREADS) (Lit_Other "=") (OFF)} {(-DCMAKE_C_COMPILER) (Lit_Other "=") (${ VSub_Name PWD) (/../bin/clang)} {(-DCMAKE_CXX_COMPILER) (Lit_Other "=") (${ VSub_Name PWD) (/../bin/clang) (Lit_Other "+") (Lit_Other "+") } {(-DLLVM_CONFIG_PATH) (Lit_Other "=") (${ VSub_Name PWD) (/../bin/llvm-config)} {(-DCMAKE_C_FLAGS) (Lit_Other "=") (DQ ("--target=arm-linux-androideabi --sysroot=") (${ VSub_Name PWD) ("/../android-toolchain/sysroot -B") (${ VSub_Name PWD) (/../android-toolchain) ) } {(-DCMAKE_CXX_FLAGS) (Lit_Other "=") (DQ ("--target=arm-linux-androideabi --sysroot=") (${ VSub_Name PWD) ("/../android-toolchain/sysroot -B") (${ VSub_Name PWD) (/../android-toolchain) ) } {(-DANDROID) (Lit_Other "=") (1)} {(DQ (${ VSub_Name ABS_COMPILER_RT_DIR))} ] more_env: [ (env_pair name: MACOSX_DEPLOYMENT_TARGET val: {(${ VSub_Name deployment_target)} spids: [4713] ) ] ) (C {(ninja)} {(libclang_rt.asan-arm-android.so)}) (C {(cp)} { (DQ (CommandSubPart command_list: (CommandList children: [(C {(find)} {(-name)} {(libclang_rt.asan-arm-android.so)})] ) left_token: <Left_CommandSub "$("> spids: [4829 4835] ) ) } {(DQ (${ VSub_Name ABS_LLVM_CLANG_LIB_DIR) (/lib/linux/))} ) (C {(popd)}) ] spids: [-1 4609] ) ] spids: [-1 4848] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalOr left: (BoolUnary op_id:BoolUnary_n child:{(DQ ($ VSub_Name "$run_tests"))}) right: (BoolUnary op_id: BoolUnary_n child: { (DQ (BracedVarSub token: <VSub_Name LLVM_FORCE_HEAD_REVISION> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{("''")}) spids: [4866 4870] ) ) } ) ) ) terminator: <Op_Semi ";"> ) ] action: [(C {(ninja)} {(-C)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))} {(cr-check-all)})] spids: [-1 4876] ) ] spids: [-1 4895] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_n child:{(DQ ($ VSub_Name "$run_tests"))}) ) terminator: <Op_Semi ";"> ) ] action: [(C {(ninja)} {(-C)} {(DQ (${ VSub_Name LLVM_BUILD_DIR))} {(check-all)})] spids: [-1 4910] ) ] spids: [-1 4929] ) (SimpleCommand words: [{(echo)} {(DQ (${ VSub_Name PACKAGE_VERSION))}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(DQ (${ VSub_Name STAMP_FILE))} spids: [4943] ) ] ) ] )