(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_pkgname) op: assign_op.Equal rhs: {<llvm>} spids: [12] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgver) op: assign_op.Equal rhs: {<3.7.1>} spids: [15] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_majorver) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name pkgver> suffix_op: (suffix_op.Unary tok: <Id.VOp1_Percent '%'> arg_word: {<.> <Id.Lit_Other '*'>} ) ) } spids: [18] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgname) op: assign_op.Equal rhs: {($ Id.VSub_DollarName '$_pkgname') ($ Id.VSub_DollarName '$_majorver')} spids: [26] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgrel) op: assign_op.Equal rhs: {<6>} spids: [30] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgdesc) op: assign_op.Equal rhs: { (DQ <'Low Level Virtual Machine compiler system (version '> ($ Id.VSub_DollarName '$_majorver') <')'> ) } spids: [33] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:arch) op: assign_op.Equal rhs: {(DQ <all>)} spids: [40] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:url) op: assign_op.Equal rhs: {(DQ <'http://llvm.org/'>)} spids: [45] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:license) op: assign_op.Equal rhs: {(DQ <UOI-NCSA>)} spids: [50] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:depends_dev) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pkgname') <'='> ($ Id.VSub_DollarName '$pkgver') <-r> ($ Id.VSub_DollarName '$pkgrel') ) } spids: [55] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:makedepends) op: assign_op.Equal rhs: {(DQ <'binutils-dev chrpath cmake file libffi-dev paxmark python2 zlib-dev'>)} spids: [64] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:subpackages) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$pkgname') <'-static '> ($ Id.VSub_DollarName '$pkgname') <'-libs '> ($ Id.VSub_DollarName '$pkgname') <-dev> ) } spids: [69] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:source) op: assign_op.Equal rhs: { (DQ <'http://llvm.org/releases/'> ($ Id.VSub_DollarName '$pkgver') <'/llvm-'> ($ Id.VSub_DollarName '$pkgver') <'.src.tar.xz\n'> <'\tllvm-0001-Add-Musl-MuslEABI-and-Musl-EABIHF-triples.patch\n'> <'\tllvm-0002-Fix-build-with-musl-libc.patch\n'> <'\tllvm-0003-Fix-DynamicLibrary-to-build-with-musl-libc.patch\n'> <'\tllvm-d18644-systemz-atomic-fence.patch\n'> <'\tllvm-nm-workaround.patch\n'> <'\tconfig.guess.patch\n'> <'\tcmake-fix-libLLVM-name.patch\n'> <'\t'> ) } spids: [79] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:builddir) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$srcdir') <'/'> ($ Id.VSub_DollarName '$_pkgname') <-> ($ Id.VSub_DollarName '$pkgver') <.src> ) } spids: [96] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$CARCH'))} arms: [ (case_arm pat_list: [{<arm> <Id.Lit_Star '*'>}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:options) op: assign_op.Equal rhs: {(DQ <'!check'>)} spids: [126] ) ] ) ] spids: [122 124 130 -1] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:_prefix) op: assign_op.Equal rhs: {(DQ <'usr/lib/llvm'> ($ Id.VSub_DollarName '$_majorver'))} spids: [189] ) ] ) (command.ShFunction name: prepare body: (BraceGroup children: [ (C {<default_prepare>}) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))}) (C {<update_config_sub>}) (C {<rm>} {<'test/tools/llvm-objdump/macho-compact-unwind-x86_64.test'>} {<'test/tools/llvm-objdump/macho-compact-unwind-i386.test'>} {<'test/Transforms/GlobalOpt/alias-used.ll'>} ) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$builddir')) <'/build'>}) ] ) ) (command.ShFunction name: build body: (BraceGroup children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir')) <'/build'>}) (C {<local>} {<Id.Lit_VarLike 'ffi_include_dir='> (DQ (command_sub left_token: <Id.Left_DollarParen '$('> child: (command.Pipeline children: [ (C {<pkg-config>} {<--cflags-only-I>} {<libffi>}) (C {<sed>} {(SQ <'s|^-I||g'>)}) ] negated: F ) ) ) } ) (C {<cmake>} {<-G>} {(DQ <'Unix Makefiles'>)} {<-Wno-dev>} {<-DCMAKE_BUILD_TYPE> <Id.Lit_Equals '='> <Release>} {<-DCMAKE_INSTALL_PREFIX> <Id.Lit_Equals '='> <'/'> ($ Id.VSub_DollarName '$_prefix')} {<-DCMAKE_VERBOSE_MAKEFILE> <Id.Lit_Equals '='> <NO>} {<-DFFI_INCLUDE_DIR> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$ffi_include_dir'))} {<-DLLVM_BINUTILS_INCDIR> <Id.Lit_Equals '='> <'/usr/include'>} {<-DLLVM_BUILD_DOCS> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_BUILD_EXAMPLES> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_BUILD_EXTERNAL_COMPILER_RT> <Id.Lit_Equals '='> <ON>} {<-DLLVM_BUILD_LLVM_DYLIB> <Id.Lit_Equals '='> <ON>} {<-DLLVM_BUILD_TESTS> <Id.Lit_Equals '='> <ON>} {<-DLLVM_DEFAULT_TARGET_TRIPLE> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$CBUILD'))} {<-DLLVM_DYLIB_EXPORT_ALL> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_ASSERTIONS> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_ENABLE_CXX1Y> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_FFI> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_LIBCXX> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_ENABLE_PIC> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_RTTI> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_SPHINX> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_ENABLE_TERMINFO> <Id.Lit_Equals '='> <ON>} {<-DLLVM_ENABLE_ZLIB> <Id.Lit_Equals '='> <ON>} {<-DLLVM_HOST_TRIPLE> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$CHOST'))} {<-DLLVM_INCLUDE_EXAMPLES> <Id.Lit_Equals '='> <OFF>} {<-DLLVM_TARGETS_TO_BUILD> <Id.Lit_Equals '='> (SQ <'X86;ARM;AArch64;PowerPC;SystemZ;AMDGPU;NVPTX;Mips;BPF'>) } {(DQ ($ Id.VSub_DollarName '$builddir'))} ) (C {<make>} {<llvm-tblgen>}) (C {<make>}) (C {<paxmark>} {<m>} {<'bin/llvm-rtdyld'>} {<'bin/lli'>} {<'bin/lli-child-target'>} {<'unittests/ExecutionEngine/MCJIT/MCJITTests'>} {<'unittests/Support/SupportTests'>} ) ] ) ) (command.ShFunction name: check body: (BraceGroup children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir')) <'/build'>}) (C {<make>} {<check-llvm>}) ] ) ) (command.ShFunction name: package body: (BraceGroup children: [ (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir')) <'/build'>}) (C {<make>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))} {<install>}) (C {<install>} {<-D>} {<-m>} {<755>} {<'bin/FileCheck'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/bin/FileCheck'> } ) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix')}) (command.Pipeline children: [ (C {<file>} {<'lib/'> <Id.Lit_Star '*'> <.so>} {<'bin/'> <Id.Lit_Star '*'>}) (C {<awk>} {<-F> <Id.Lit_Colon ':'>} {(SQ <'$2~/ELF/{print $1}'>)}) (C {<xargs>} {<-r>} {<chrpath>} {<-d>}) ] negated: F ) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin'>}) (C {<local>} {<name>} {<path>}) (command.ForEach iter_name: path iter_words: [{<'bin/'> <Id.Lit_Star '*'>}] do_arg_iter: F body: (command.DoGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:name) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name path> suffix_op: (suffix_op.Unary tok: <Id.VOp1_DPound '##'> arg_word: {<Id.Lit_Other '*'> <Id.Lit_Slash '/'>} ) ) } spids: [655] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$name'))} arms: [ (case_arm pat_list: [{<FileCheck>} {<obj2yaml>} {<yaml2obj>}] action: [(command.ControlFlow token:<Id.ControlFlow_Continue continue>)] spids: [673 682 685 -1] ) ] ) (C {<ln>} {<-s>} {<'../lib/llvm'> ($ Id.VSub_DollarName '$_majorver') <'/bin/'> ($ Id.VSub_DollarName '$name') } {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/'> ($ Id.VSub_DollarName '$name') <-> ($ Id.VSub_DollarName '$_majorver') } ) ] ) ) (C {<_mv>} {<'include/'> <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/include/'> ($ Id.VSub_DollarName '$pkgname') <'/'> } ) (C {<rmdir>} {<include>}) (C {<ln>} {<-s>} {<'../../include/'> ($ Id.VSub_DollarName '$pkgname')} {<include>}) (C {<_mv>} {<'share/llvm/cmake/'> <Id.Lit_Star '*'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/lib/cmake/'> ($ Id.VSub_DollarName '$pkgname') <'/'> } ) (C {<rmdir>} {<'share/llvm/cmake'>}) (C {<ln>} {<-s>} {<'../../../cmake/'> ($ Id.VSub_DollarName '$pkgname')} {<'share/llvm/cmake'>} ) (C {<ln>} {<-s>} {<libLTO-> ($ Id.VSub_DollarName '$_majorver') <.so>} {<'lib/libLTO.so'>}) ] ) ) (command.ShFunction name: static body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgdesc) op: assign_op.Equal rhs: {(DQ <'LLVM '> ($ Id.VSub_DollarName '$_majorver') <' static libraries'>)} spids: [807] ) ] ) (C {<_mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/lib/'> <Id.Lit_Star '*'> <.a> } {(DQ ($ Id.VSub_DollarName '$subpkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/lib/'>} ) ] ) ) (command.ShFunction name: libs body: (BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:pkgdesc) op: assign_op.Equal rhs: {(DQ <'LLVM '> ($ Id.VSub_DollarName '$_majorver') <' runtime library'>)} spids: [844] ) ] ) (C {<local>} {<Id.Lit_VarLike 'soname='> (DQ <libLLVM-> ($ Id.VSub_DollarName '$_majorver') <.so>)} ) (C {<local>} {<Id.Lit_VarLike 'soname2='> (DQ <libLLVM-> ($ Id.VSub_DollarName '$pkgver') <.so>)} ) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$subpkgdir'))}) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$subpkgdir'))}) (C {<_mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/lib/'> ($ Id.VSub_DollarName '$soname') } {<'usr/lib/'>} ) (C {<ln>} {<-s>} {($ Id.VSub_DollarName '$soname')} {<'usr/lib/'> ($ Id.VSub_DollarName '$soname2')} ) (C {<mkdir>} {<-p>} {($ Id.VSub_DollarName '$_prefix') <'/lib'>}) (C {<ln>} {<-s>} {<'../../'> ($ Id.VSub_DollarName '$soname')} {($ Id.VSub_DollarName '$_prefix') <'/lib/'> ($ Id.VSub_DollarName '$soname')} ) (C {<ln>} {<-s>} {<'../../'> ($ Id.VSub_DollarName '$soname')} {($ Id.VSub_DollarName '$_prefix') <'/lib/'> ($ Id.VSub_DollarName '$soname2')} ) ] ) ) (command.ShFunction name: dev body: (BraceGroup children: [ (C {<default_dev>}) (C {<cd>} {(DQ ($ Id.VSub_DollarName '$subpkgdir'))}) (C {<_mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/lib'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/share'>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/include'> } {($ Id.VSub_DollarName '$_prefix') <'/'>} ) (C {<_mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/bin/FileCheck'> } {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/'> ($ Id.VSub_DollarName '$_prefix') <'/bin/llvm-config'>} {($ Id.VSub_DollarName '$_prefix') <'/bin/'>} ) (C {<_mv>} {(DQ ($ Id.VSub_DollarName '$pkgdir')) <'/usr/bin/llvm-config-'> <Id.Lit_Star '*'>} {<'usr/bin/'>} ) ] ) ) (command.ShFunction name: _mv body: (BraceGroup children: [ (command.Sentence child:(C {<local>} {<dest>}) terminator:<Id.Op_Semi _>) (command.ForEach iter_name: dest do_arg_iter: T body: (command.DoGroup children: [(command.Sentence child:(C {<true>}) terminator:<Id.Op_Semi _>)] ) ) (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$dest'))}) (C {<mv>} {($ Id.VSub_At '$@')}) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:sha512sums) op: assign_op.Equal rhs: { (DQ < 'ac521debc02f6deba96ef975d6a546b0c5c77299c1dbf5e1b87a7974ff5e7fd715bd7e384b92d9adf572ce47130bdbf6d3c648eb0d7f72f16f976292e4909e90 llvm-3.7.1.src.tar.xz\n' > < '7a74abc15d8abb4ef4884469544168bfefb6859166f041c7d766157d77b20ea5b6bb06ffc0dd4f6965eab95294102f060d7a969e778ec933d2859c4900ec7380 llvm-0001-Add-Musl-MuslEABI-and-Musl-EABIHF-triples.patch\n' > < 'f84cd65d7042e89826ba6e8d48c4c302bf4980da369d7f19a55f217e51c00ca8ed178d453df3a3cee76598a7cecb94aed0775a6d24fe73266f82749913fc3e71 llvm-0002-Fix-build-with-musl-libc.patch\n' > < '19bfb9282455d39d07dbb2b1293b03a45c57d522fbb9c5e58dac034200669628b97e7a90cd4ff5d52d9bb79acfccbef653d8a1140a7f0589ecd6f9b7c4ba0eb6 llvm-0003-Fix-DynamicLibrary-to-build-with-musl-libc.patch\n' > < '303ef099e8e21f9bc5f88ba1b30870e8127bea4948fc66b1858cc014cbde7bd917dc0bee1a511ef2adb6a9f40a3e3c3ae3fcada6ad3ee339807ac893c882d7ae llvm-d18644-systemz-atomic-fence.patch\n' > < '11db6f3c5d697bc536c7d053530f7a5572756185e16399c32c31306861b58046ca9bc14b8d8097758c00a8c1a7026cbfb75636c0e697e59c53dda5848f93b006 llvm-nm-workaround.patch\n' > < 'caf1c9466e8163f8844bd40095d1c3ce26c9e96dcb639f64833baca65a81708d39496e8c8ea65c7f11476d752265080998f1873b79cbc92b23349258e4dfa3ab config.guess.patch\n' > < '52287dd37f62e0b51c487abe62a22440d3e9df2cb6144af45ba9ddc42848495fad533bf6b13f08e1b454ee653be9b8a14e02cf81f430a7d2c9be030889ef7f72 cmake-fix-libLLVM-name.patch' > ) } spids: [1094] ) ] ) ] )