1.1 --- a/scripts/functions Sun Aug 14 16:07:03 2011 +0200
1.2 +++ b/scripts/functions Sun Aug 14 17:28:35 2011 +0200
1.3 @@ -703,6 +703,7 @@
1.4 local nochdir="$1"
1.5 local basename
1.6 local ext
1.7 + local -a tar_opts
1.8
1.9 if [ "${nochdir}" = "nochdir" ]; then
1.10 shift
1.11 @@ -740,10 +741,13 @@
1.12
1.13 CT_DoLog EXTRA "Extracting '${basename}'"
1.14 CT_DoExecLog FILE mkdir -p "${basename}"
1.15 + tar_opts=( "--strip-components=1" )
1.16 + tar_opts+=( "-C" "${basename}" )
1.17 + tar_opts+=( "-xv" )
1.18 case "${ext}" in
1.19 - .tar.bz2) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvjf "${full_file}";;
1.20 - .tar.gz|.tgz) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvzf "${full_file}";;
1.21 - .tar) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvf "${full_file}";;
1.22 + .tar.bz2) CT_DoExecLog FILE tar "${tar_opts[@]}" -j "${full_file}";;
1.23 + .tar.gz|.tgz) CT_DoExecLog FILE tar "${tar_opts[@]}" -z "${full_file}";;
1.24 + .tar) CT_DoExecLog FILE tar "${tar_opts[@]}" "${full_file}";;
1.25 /.git) CT_ExtractGit "${basename}" "${@}";;
1.26 *) CT_DoLog WARN "Don't know how to handle '${basename}${ext}': unknown extension"
1.27 return 1