mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-06-18 15:28:10 +00:00
scripts/functions: commonalise tar options in CT_EXtract
This shortens command lines, so it's good! :-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
This commit is contained in:
@ -703,6 +703,7 @@ CT_Extract() {
|
|||||||
local nochdir="$1"
|
local nochdir="$1"
|
||||||
local basename
|
local basename
|
||||||
local ext
|
local ext
|
||||||
|
local -a tar_opts
|
||||||
|
|
||||||
if [ "${nochdir}" = "nochdir" ]; then
|
if [ "${nochdir}" = "nochdir" ]; then
|
||||||
shift
|
shift
|
||||||
@ -740,10 +741,13 @@ CT_Extract() {
|
|||||||
|
|
||||||
CT_DoLog EXTRA "Extracting '${basename}'"
|
CT_DoLog EXTRA "Extracting '${basename}'"
|
||||||
CT_DoExecLog FILE mkdir -p "${basename}"
|
CT_DoExecLog FILE mkdir -p "${basename}"
|
||||||
|
tar_opts=( "--strip-components=1" )
|
||||||
|
tar_opts+=( "-C" "${basename}" )
|
||||||
|
tar_opts+=( "-xv" )
|
||||||
case "${ext}" in
|
case "${ext}" in
|
||||||
.tar.bz2) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvjf "${full_file}";;
|
.tar.bz2) CT_DoExecLog FILE tar "${tar_opts[@]}" -j "${full_file}";;
|
||||||
.tar.gz|.tgz) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvzf "${full_file}";;
|
.tar.gz|.tgz) CT_DoExecLog FILE tar "${tar_opts[@]}" -z "${full_file}";;
|
||||||
.tar) CT_DoExecLog FILE tar --strip-components=1 -C "${basename}" -xvf "${full_file}";;
|
.tar) CT_DoExecLog FILE tar "${tar_opts[@]}" "${full_file}";;
|
||||||
/.git) CT_ExtractGit "${basename}" "${@}";;
|
/.git) CT_ExtractGit "${basename}" "${@}";;
|
||||||
*) CT_DoLog WARN "Don't know how to handle '${basename}${ext}': unknown extension"
|
*) CT_DoLog WARN "Don't know how to handle '${basename}${ext}': unknown extension"
|
||||||
return 1
|
return 1
|
||||||
|
Reference in New Issue
Block a user