aboutsummaryrefslogtreecommitdiff
path: root/trunk/lib/common.sh
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/lib/common.sh')
-rw-r--r--trunk/lib/common.sh139
1 files changed, 71 insertions, 68 deletions
diff --git a/trunk/lib/common.sh b/trunk/lib/common.sh
index e34ce8e..8f78468 100644
--- a/trunk/lib/common.sh
+++ b/trunk/lib/common.sh
@@ -510,31 +510,25 @@ function svn_check {
# check if a file is under svn
# usage: svn_check <file>
- local cwd folder retval
-
- cwd="`pwd`"
folder="`dirname $1`"
file="`basename $1`"
if [ -d "$folder/.svn" ]; then
- cd $folder
+ (
+ cd $folder
- if [ "`svn status $file | awk '{ print $1 }'`" == "?" ]; then
- retval="1"
- else
- retval="0"
- fi
+ if [ "`svn status $file | awk '{ print $1 }'`" == "?" ]; then
+ return 1
+ else
+ return 0
+ fi
+ )
else
-
- retval="1"
-
+ return 1
fi
- cd $cwd
- return $retval
-
}
function build_repo {
@@ -613,10 +607,7 @@ function svn_copy {
cp $orig/$file $dest
if [ -d "`dirname $dest`/.svn" ]; then
chown_svn $dest && chgrp_svn $dest
- cwd="`pwd`"
- cd `dirname $dest`
- svn_add `basename $dest`
- cd $cwd
+ ( cd `dirname $dest` && svn_add `basename $dest` )
fi
}
@@ -799,15 +790,18 @@ function gen_patches_filelist {
if [ ! -z "$1" ] && [ -d "$1" ]; then
- cwd="`pwd`"
- cd $1
+ folder="$1"
+
+ (
- find . -type f -name '*.tgz' -follow -print | sort | tr '\n' '\0' | \
- xargs -0r ls -ldL --time-style=long-iso > FILE_LIST
+ cd $folder
- svn_add FILE_LIST
+ find . -type f -name '*.tgz' -follow -print | sort | tr '\n' '\0' | \
+ xargs -0r ls -ldL --time-style=long-iso > FILE_LIST
- cd $cwd
+ svn_add FILE_LIST
+
+ )
if [ "$1" == "." ]; then
echo "Created new FILE_LIST"
@@ -826,17 +820,20 @@ function gen_packages_txt {
if [ ! -z "$1" ] && [ -d "$1" ]; then
- cwd="`pwd`"
- cd $1
+ folder="$1"
+
+ (
+
+ cd $folder
- echo '' > PACKAGES.TXT
- find . -type f -name '*.meta' -exec cat {} \; >> PACKAGES.TXT
- cat PACKAGES.TXT | gzip -9 -c - > PACKAGES.TXT.gz
+ echo '' > PACKAGES.TXT
+ find . -type f -name '*.meta' -exec cat {} \; >> PACKAGES.TXT
+ cat PACKAGES.TXT | gzip -9 -c - > PACKAGES.TXT.gz
- svn_add PACKAGES.TXT
- svn_add PACKAGES.TXT.gz
+ svn_add PACKAGES.TXT
+ svn_add PACKAGES.TXT.gz
- cd $cwd
+ )
if [ "$1" == "." ]; then
echo "Created new PACKAGES.TXT and PACKAGES.TXT.gz"
@@ -855,18 +852,21 @@ function gen_md5_checksums {
if [ -d "$1" ]; then
- cwd="`pwd`"
- cd $1
+ folder="$1"
- echo 'MD5 digest for files in this directory.' > CHECKSUMS.md5
- echo '' >> CHECKSUMS.md5
- find . -type f -name '*.tgz' -exec md5sum {} \; >> CHECKSUMS.md5
- cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz
+ (
- svn_add CHECKSUMS.md5
- svn_add CHECKSUMS.md5.gz
+ cd $folder
- cd $cwd
+ echo 'MD5 digest for files in this directory.' > CHECKSUMS.md5
+ echo '' >> CHECKSUMS.md5
+ find . -type f -name '*.tgz' -exec md5sum {} \; >> CHECKSUMS.md5
+ cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz
+
+ svn_add CHECKSUMS.md5
+ svn_add CHECKSUMS.md5.gz
+
+ )
if [ "$1" == "." ]; then
echo "Created new CHECKSUMS.md5 and CHECKSUMS.md5.gz"
@@ -890,26 +890,27 @@ function update_md5_checksum {
folder="$1"
fi
- cwd="`pwd`"
- cd $folder
+ (
- if [ ! -f CHECKSUMS.md5 ]; then
- gen_md5_checksums .
- else
- # remove the old entry and add a new one
- sed -i "/ \.*\/*$(regexp_slash $file)$/d" CHECKSUMS.md5
- file="`echo $file | sed -e 's/\.*\/*//'`" # remove additional ./
- md5sum ./$file >> CHECKSUMS.md5
- fi
+ cd $folder
+
+ if [ ! -f CHECKSUMS.md5 ]; then
+ gen_md5_checksums .
+ else
+ # remove the old entry and add a new one
+ sed -i "/ \.*\/*$(regexp_slash $file)$/d" CHECKSUMS.md5
+ file="`echo $file | sed -e 's/\.*\/*//'`" # remove additional ./
+ md5sum ./$file >> CHECKSUMS.md5
+ fi
- cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz
+ cat CHECKSUMS.md5 | gzip -9 -c - > CHECKSUMS.md5.gz
- echo "Updated CHECKSUMS.md5"
+ echo "Updated CHECKSUMS.md5"
- svn_add CHECKSUMS.md5
- svn_add CHECKSUMS.md5.gz
+ svn_add CHECKSUMS.md5
+ svn_add CHECKSUMS.md5.gz
- cd $cwd
+ )
}
@@ -920,19 +921,21 @@ function gen_meta {
if [ ! -f $1 ]; then
return 1
+ else
+ file="$1"
fi
- if [ "`echo $1|grep -E '(.*{1,})\-(.*[\.\-].*[\.\-].*).tgz[ ]{0,}$'`" == "" ]; then
+ if [ "`echo $file | grep -E '(.*{1,})\-(.*[\.\-].*[\.\-].*).tgz[ ]{0,}$'`" == "" ]; then
return
fi
- NAME=$(echo $1 | sed -re "s/(.*\/)(.*.tgz)$/\2/")
- LOCATION=$(echo $1 | sed -re "s/(.*)\/(.*.tgz)$/\1/")
- SIZE=$( expr `gunzip -l $1 | tail -n 1 | awk '{print $1}'` / 1024 )
- USIZE=$( expr `gunzip -l $1 | tail -n 1 | awk '{print $2}'` / 1024 )
- REQUIRED=$(tar xzfO $1 install/slack-required 2>/dev/null | grep -v -e "^#" | xargs -r -iZ echo -n "Z," | sed -e "s/,$//")
- CONFLICTS=$(tar xzfO $1 install/slack-conflicts 2>/dev/null | grep -v -e "^#" | xargs -r -iZ echo -n "Z," | sed -e "s/,$//")
- SUGGESTS=$(tar xzfO $1 install/slack-suggests 2>/dev/null | grep -v -e "^#" | xargs -r )
+ NAME=$(echo $file | sed -re "s/(.*\/)(.*.tgz)$/\2/")
+ LOCATION=$(echo $file | sed -re "s/(.*)\/(.*.tgz)$/\1/")
+ SIZE=$( expr `gunzip -l $file | tail -n 1 | awk '{ print $1 }'` / 1024 )
+ USIZE=$( expr `gunzip -l $file | tail -n 1 | awk '{ print $2 }'` / 1024 )
+ REQUIRED=$(tar xzfO $file install/slack-required 2>/dev/null | grep -v -e "^#" | xargs -r -iZ echo -n "Z," | sed -e "s/,$//")
+ CONFLICTS=$(tar xzfO $file install/slack-conflicts 2>/dev/null | grep -v -e "^#" | xargs -r -iZ echo -n "Z," | sed -e "s/,$//")
+ SUGGESTS=$(tar xzfO $file install/slack-suggests 2>/dev/null | grep -v -e "^#" | xargs -r )
METAFILE=${NAME%tgz}meta
echo "PACKAGE NAME: $NAME" > $LOCATION/$METAFILE
@@ -949,12 +952,12 @@ function gen_meta {
echo "PACKAGE SUGGESTS: $SUGGESTS" >> $LOCATION/$METAFILE
echo "PACKAGE DESCRIPTION:" >> $LOCATION/$METAFILE
- tar xzfO $1 install/slack-desc | grep -E '\w+\:' | grep -v '^#' >> $LOCATION/$METAFILE
+ tar xzfO $file install/slack-desc | grep -E '\w+\:' | grep -v '^#' >> $LOCATION/$METAFILE
echo "" >> $LOCATION/$METAFILE
- echo "Created metafile for `basename $1`"
+ echo "Created metafile for `basename $file`"
- ( cd `dirname $1` && svn_add `basename $1 .tgz`.meta )
+ ( cd `dirname $file` && svn_add `basename $file .tgz`.meta )
}