diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-05-01 07:27:31 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-05-01 07:27:31 +0000 |
commit | 0f56988f661f4843e3d4fcf3b129500cfe30eaef (patch) | |
tree | 352c09d273c95a50ecc2eeef3ee9b1785c7f0b27 | |
parent | 4ec97ae4f9bcc83a7ecc3a82a7df8917fae6c501 (diff) | |
download | portage-0f56988f661f4843e3d4fcf3b129500cfe30eaef.tar.gz portage-0f56988f661f4843e3d4fcf3b129500cfe30eaef.tar.bz2 portage-0f56988f661f4843e3d4fcf3b129500cfe30eaef.zip |
Detect an old version of tarsync and use bzip2 compression in that case.
(trunk r10056)
svn path=/main/branches/2.1.2/; revision=10057
-rwxr-xr-x | bin/emerge-webrsync | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/bin/emerge-webrsync b/bin/emerge-webrsync index fbb2cd509..a428a4059 100755 --- a/bin/emerge-webrsync +++ b/bin/emerge-webrsync @@ -173,8 +173,7 @@ sync_local() { vecho "Syncing local tree ..." - # tarsync-0.2.1 doesn't seem to support lzma compression. - if [ "${file##*.}" != "lzma" ] && type -P tarsync > /dev/null; then + if type -P tarsync > /dev/null ; then if ! tarsync $(vvecho -v) -s 1 -o portage -g portage -e /distfiles -e /packages -e /local "${file}" "${PORTDIR}"; then eecho "tarsync failed; tarball is corrupt? (${file})" return 1 @@ -221,7 +220,14 @@ do_snapshot() { local mirror local compressions="" - type -P lzcat > /dev/null && compressions="${compressions} lzma" + # lzma is not supported in <=app-arch/tarsync-0.2.1, so use + # bz2 format if we have an old version of tarsync. + if type -P tarsync > /dev/null && \ + portageq has_version / '<=app-arch/tarsync-0.2.1' ; then + true + else + type -P lzcat > /dev/null && compressions="${compressions} lzma" + fi type -P bzcat > /dev/null && compressions="${compressions} bz2" type -P zcat > /dev/null && compressions="${compressions} gz" if [[ -z ${compressions} ]] ; then |