#!/bin/bash # # gen_kselftest_tar # Generate kselftest tarball # Author: Shuah Khan # Copyright (C) 2015 Samsung Electronics Co., Ltd. # This software may be freely redistributed under the terms of the GNU # General Public License (GPLv2). # main proc main { if test "$Argc" -eq 0 { echo "$0: Generating default compression gzip" global copts := '"cvzf'" global ext := '".tar.gz'" } else { matchstr $1 { tar { global copts := '"cvf'" global ext := '".tar'" } targz { global copts := '"cvzf'" global ext := '".tar.gz'" } tarbz2 { global copts := '"cvjf'" global ext := '".tar.bz2'" } tarxz { global copts := '"cvJf'" global ext := '".tar.xz'" } * { echo "Unknown tarball format $1" exit 1 } } } global install_dir := './kselftest' # Run install using INSTALL_KSFT_PATH override to generate install # directory ./kselftest_install.sh tar $copts kselftest$(ext) $install_dir echo "Kselftest archive kselftest$(ext) created!" # clean up install directory rm -rf kselftest } main @Argv (CommandList children: [ (FuncDef name: main body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ ($ VSub_Pound "$#"))} {(-eq)} {(0)} {(Lit_Other "]")}) terminator: ) ] action: [ (C {(echo)} {(DQ ($ VSub_Number "$0") (": Generating default compression gzip"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:copts) op: Equal rhs: {(DQ (cvzf))} spids: [62] ) ] spids: [62] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ext) op: Equal rhs: {(DQ (.tar.gz))} spids: [68] ) ] spids: [68] ) ] spids: [-1 51] ) ] else_action: [ (Case to_match: {(DQ ($ VSub_Number "$1"))} arms: [ (case_arm pat_list: [{(tar)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:copts) op: Equal rhs: {(DQ (cvf))} spids: [90] ) ] spids: [90] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ext) op: Equal rhs: {(DQ (.tar))} spids: [96] ) ] spids: [96] ) ] spids: [86 87 102 -1] ) (case_arm pat_list: [{(targz)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:copts) op: Equal rhs: {(DQ (cvzf))} spids: [109] ) ] spids: [109] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ext) op: Equal rhs: {(DQ (.tar.gz))} spids: [115] ) ] spids: [115] ) ] spids: [105 106 121 -1] ) (case_arm pat_list: [{(tarbz2)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:copts) op: Equal rhs: {(DQ (cvjf))} spids: [128] ) ] spids: [128] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ext) op: Equal rhs: {(DQ (.tar.bz2))} spids: [134] ) ] spids: [134] ) ] spids: [124 125 140 -1] ) (case_arm pat_list: [{(tarxz)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:copts) op: Equal rhs: {(DQ (cvJf))} spids: [147] ) ] spids: [147] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ext) op: Equal rhs: {(DQ (.tar.xz))} spids: [153] ) ] spids: [153] ) ] spids: [143 144 159 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (C {(echo)} {(DQ ("Unknown tarball format ") ($ VSub_Number "$1"))}) (C {(exit)} {(1)}) ] spids: [162 163 179 -1] ) ] spids: [77 83 182] ) ] spids: [74 185] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:install_dir) op: Equal rhs: {(./kselftest)} spids: [189] ) ] spids: [189] ) (C {(./kselftest_install.sh)}) (C {(tar)} {($ VSub_Name "$copts")} {(kselftest) (${ VSub_Name ext)} {($ VSub_Name "$install_dir")} ) (C {(echo)} {(DQ ("Kselftest archive kselftest") (${ VSub_Name ext) (" created!"))}) (C {(rm)} {(-rf)} {(kselftest)}) ] spids: [33] ) spids: [29 32] ) (C {(main)} {(DQ ($ VSub_At "$@"))}) ] )