#!/bin/ksh LC_ALL=C LANG=C export LC_ALL export LANG echo_eval(){ echo "$@" eval "$@" } xcat() { while [ "$1" != "" ]; do case "$1" in *.lzma) unlzma -c "$1" ;; *.xz) xzcat "$1" ;; *.bz2) bzcat "$1" ;; *.gz) gzcat "$1" ;; *.Z) uncompress -c "$1" ;; *) cat "$1" ;; esac shift done } set_tar_dir(){ b="$1" eval "${b}_tar"=$(find . -name "${b}-*.tar*" | tail -n 1) #eval echo "\$${b}_tar" eval "${b}_dir"=$(eval xcat "\$${b}_tar" '|' tar tf - | grep -v '/\._[^/][^/]*$' | head -n 1) #eval echo "\$${b}_dir" } for b in \ dtrace \ ; do set_tar_dir "$b" && eval tar="\$${b}_tar" && eval dir="\$${b}_dir" && if [ "$tar" = "" -o "$dir" = "" ]; then echo ng; exit 1 fi [ -d "$dir" ] || echo_eval xcat "'$tar'" '|' tar xf - done && ( echo_eval cd "'$dtrace_dir'" && echo_eval mkdir -p obj sym dst && echo_eval xcodebuild install -target ctfconvert -target ctfdump -target ctfmerge ARCHS="'ppc ppc64 i386 x86_64'" SRCROOT="'$PWD'" OBJROOT="'$PWD/obj'" SYMROOT="'$PWD/sym'" DSTROOT="'$PWD/dst'" && : ) && { echo ok; exit 0; } || { echo ng; exit 1; }