summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2012-02-13 20:53:34 +0000
committerMike Frysinger <vapier@gentoo.org>2012-02-13 20:53:34 +0000
commita451fdad41bba78ebde36240a513b684f697fe6a (patch)
tree9e793deb8f1fa21a7d5dfd4ace048c868a304667 /eclass/unpacker.eclass
parentVersion bump. (diff)
downloadhistorical-a451fdad41bba78ebde36240a513b684f697fe6a.tar.gz
historical-a451fdad41bba78ebde36240a513b684f697fe6a.tar.bz2
historical-a451fdad41bba78ebde36240a513b684f697fe6a.zip
add auto-detection of makeself files with *.bin files #403451
Diffstat (limited to 'eclass/unpacker.eclass')
-rw-r--r--eclass/unpacker.eclass10
1 files changed, 8 insertions, 2 deletions
diff --git a/eclass/unpacker.eclass b/eclass/unpacker.eclass
index b6a1eabce93d..f9906cf12b80 100644
--- a/eclass/unpacker.eclass
+++ b/eclass/unpacker.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/unpacker.eclass,v 1.4 2012/02/05 06:30:10 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/unpacker.eclass,v 1.5 2012/02/13 20:53:34 vapier Exp $
# @ECLASS: unpacker.eclass
# @MAINTAINER:
@@ -286,6 +286,7 @@ _unpacker() {
esac
# then figure out if there are any archiving aspects
+ arch=""
case ${m} in
*.tgz|*.tbz|*.tbz2|*.txz|*.tar.*|*.tar)
arch="tar --no-same-owner -xof" ;;
@@ -293,7 +294,12 @@ _unpacker() {
arch="unpack_deb" ;;
*.run)
arch="unpack_makeself" ;;
- *) arch="" ;;
+ *.bin)
+ # Makeself archives can be annoyingly named
+ if head -c 100 "${a}" | grep -qs '#.*Makeself' ; then
+ arch="unpack_makeself"
+ fi
+ ;;
esac
# finally do the unpack