Really use local copy first in case it does not have the same extension as the downloadable tarball.

This commit is contained in:
Yann E. MORIN"
2007-05-18 15:54:42 +00:00
parent 4f4aa3cfb5
commit a5a431f851

View File

@ -299,15 +299,16 @@ CT_GetFile() {
# File not yet downloaded, try to get it # File not yet downloaded, try to get it
got_it=0 got_it=0
# We'd rather have a bzip2'ed tarball, then gzipped, and finally plain tar. # We'd rather have a bzip2'ed tarball, then gzipped, and finally plain tar.
for ext in .tar.bz2 .tar.gz .tgz .tar; do
if [ ${got_it} -ne 1 ]; then
# Try local copy first, if it exists # Try local copy first, if it exists
for ext in .tar.bz2 .tar.gz .tgz .tar; do
if [ -r "${CT_LOCAL_TARBALLS_DIR}/${file}${ext}" -a \ if [ -r "${CT_LOCAL_TARBALLS_DIR}/${file}${ext}" -a \
"${CT_FORCE_DOWNLOAD}" != "y" ]; then "${CT_FORCE_DOWNLOAD}" != "y" ]; then
cp -v "${CT_LOCAL_TARBALLS_DIR}/${file}${ext}" "${file}${ext}" |CT_DoLog DEBUG cp -v "${CT_LOCAL_TARBALLS_DIR}/${file}${ext}" "${file}${ext}" |CT_DoLog DEBUG
got_it=1 return 0
break 1 fi
else done
# Try to download it
for ext in .tar.bz2 .tar.gz .tgz .tar; do
# Try all urls in turn # Try all urls in turn
for url in "$@"; do for url in "$@"; do
case "${url}" in case "${url}" in
@ -315,14 +316,12 @@ CT_GetFile() {
CT_DoGetFile "${url}/${file}${ext}" CT_DoGetFile "${url}/${file}${ext}"
;; ;;
esac esac
[ -f "${file}${ext}" ] && got_it=1 && break 2 || true [ -f "${file}${ext}" ] && return 0 || true
done done
fi
fi
done done
CT_Popd CT_Popd
CT_TestAndAbort "Could not download \"${file}\", and not present in \"${CT_LOCAL_TARBALLS_DIR}\"" ${got_it} -eq 0 CT_Abort "Could not download \"${file}\", and not present in \"${CT_LOCAL_TARBALLS_DIR}\""
} }
# Extract a tarball and patch the resulting sources if necessary. # Extract a tarball and patch the resulting sources if necessary.