From: Michael Tremer Date: Wed, 22 Oct 2008 11:55:34 +0000 (+0200) Subject: Added the new "extractor". X-Git-Tag: v3.0-alpha1~512 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=da0250ec95bcbcc3b0fb75c832f3e551a69319f7;p=ipfire-3.x.git Added the new "extractor". --- diff --git a/lfs/Config b/lfs/Config index 6483da5a8..765dc20fe 100644 --- a/lfs/Config +++ b/lfs/Config @@ -69,6 +69,8 @@ DIR_SOURCE = $(DIR_SRC)/src VPATH = $(DIR_DL):$(DIR_PATCHES) +EXTRACTOR = bash $(DIR_SOURCE)/scripts/extractor + HOST_GCC=ccache /usr/bin/gcc KGCC=$(HOST_GCC) diff --git a/src/scripts/extractor b/src/scripts/extractor new file mode 100644 index 000000000..009dffc1f --- /dev/null +++ b/src/scripts/extractor @@ -0,0 +1,40 @@ +#!/bin/bash +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007, 2008 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +FILE=$1 +GLOBAL_OPTIONS=xf + +# Matches tar.gz and tgz +if grep -q gz$ <<<$FILE; then + OPTIONS="z$GLOBAL_OPTIONS" + +# Matches tar.bz2, tz2 and tbz2 +elif grep -q z2$ <<<$FILE; then + OPTIONS="j$GLOBAL_OPTIONS" + +# Matches tar.lzma and tlz +elif grep -q lzma$ <<<$FILE || grep -q lz$ <<<$FILE; then + OPTIONS="--lzma -$GLOBAL_OPTIONS" + +fi + +echo "Extracting $(basename $FILE)..." +exec tar $OPTIONS $FILE