From 375e968bd1411477b9f0bcd78a6be5c0bd76aa53 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@Germany> Date: Thu, 16 Jul 2009 09:56:54 +0200 Subject: [PATCH] fixup foamPack* scripts - handle ThirdParty-VERSION properly - handle wmake/utilbin/ location - should the wmake/rules/* really be packed with a binary distribution? I think this is just left over from before. --- .gitignore | 4 --- bin/foamPack | 7 +++-- bin/foamPackBin | 56 +++++++++++++++++++---------------- bin/foamPackBinAll | 6 ++-- bin/foamPackDoxygen | 20 ++++++------- bin/foamPackGeneral | 12 ++++---- bin/foamPackSource | 39 +++++++++++++----------- bin/foamPackThirdPartyBin | 37 +++++++++++++---------- bin/foamPackThirdPartyGeneral | 15 +++++----- 9 files changed, 105 insertions(+), 91 deletions(-) diff --git a/.gitignore b/.gitignore index a95cd603baf..b124c8d8870 100644 --- a/.gitignore +++ b/.gitignore @@ -41,10 +41,6 @@ SunOS*Gcc*/ # reinstate wmake/rules that might look like build folders !wmake/rules/*/ -# but do continue to ignore the derived wmake files -wmake/rules/*/dirToString -wmake/rules/*/wmkdep - # doxygen generated documentation doc/[Dd]oxygen/html doc/[Dd]oxygen/latex diff --git a/bin/foamPack b/bin/foamPack index 5f42ebbb2b1..3f35f5b57df 100755 --- a/bin/foamPack +++ b/bin/foamPack @@ -86,9 +86,10 @@ find -H $packDir \ -a ! -name "log[0-9]*" \ -a ! -name "so_locations" \ | sed \ - -e "\@$packDir/.git/@d" \ -e "\@$packDir/lib/@d" \ - -e '\@applications/bin/@d' \ + -e '\@/\.git/@d' \ + -e '\@applications/bin/@d' \ + -e '\@wmake/utilbin/@d' \ -e '\@/t/@d' \ -e '\@Make[.A-Za-z]*/[^/]*/@d' \ -e '\@doc/[Dd]oxygen/html@d' \ @@ -100,7 +101,7 @@ find -H $packDir \ tar czpf $packFile --files-from $tmpFile -if [ $? = 0 ] +if [ $? -eq 0 ] then echo "Finished packing and compressing $packDir into file $packFile" else diff --git a/bin/foamPackBin b/bin/foamPackBin index 00ef0c5af3d..5a60b405a9d 100755 --- a/bin/foamPackBin +++ b/bin/foamPackBin @@ -33,14 +33,17 @@ if [ $# -eq 0 ] then - echo "Error: architecture type expected, exiting" - echo - echo "Usage : ${0##*/} <arch> [outputDir]" - echo - exit 1 + echo "Error: architecture type expected, exiting" + echo + echo "Usage : ${0##*/} <arch> [outputDir]" + echo + exit 1 fi arch=$1 +# base arch (w/o precision, optimization, etc) +baseArch=$(echo "$arch" | sed -e 's@[DS]P.*$@@') + timeStamp=$(date +%Y-%m-%d) packDir=$WM_PROJECT-$WM_PROJECT_VERSION packFile=${packDir}.${arch}_${timeStamp}.gtgz @@ -48,49 +51,50 @@ packFile=${packDir}.${arch}_${timeStamp}.gtgz # add optional output directory if [ -d "$2" ] then - packFile="$2/$packFile" + packFile="$2/$packFile" fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # check for essential directories for dir in $packDir $packDir/lib/$arch $packDir/applications/bin/$arch do - if [ ! -d $dir ] - then - echo "Error: directory $dir does not exist" - exit 1 - fi + if [ ! -d $dir ] + then + echo "Error: directory $dir does not exist" + exit 1 + fi done # get list of directories dirList=$( - for dir in \ - $packDir/lib/$arch \ - $packDir/applications/bin/$arch \ - $packDir/wmake/rules \ - ; - do - [ -d $dir ] && echo $dir - done + for dir in \ + $packDir/lib/$arch \ + $packDir/applications/bin/$arch \ + $packDir/wmake/rules \ + $packDir/wmake/utilbin/$baseArch \ + ; + do + [ -d $dir ] && echo $dir + done ) echo -echo "Packing $arch port of $packDir into $packFile" +echo "Packing $arch ($baseArch) port of $packDir into $packFile" echo tar czpf $packFile $dirList -if [ $? = 0 ] +if [ $? -eq 0 ] then - echo "Finished packing and compressing file $packFile" + echo "Finished packing and compressing file $packFile" else - echo "Error: failure packing $packFile" - rm -f $packFile 2>/dev/null + echo "Error: failure packing $packFile" + rm -f $packFile 2>/dev/null fi #------------------------------------------------------------------------------ diff --git a/bin/foamPackBinAll b/bin/foamPackBinAll index 01555787cbb..57673e98036 100755 --- a/bin/foamPackBinAll +++ b/bin/foamPackBinAll @@ -34,14 +34,14 @@ packDir=$WM_PROJECT-$WM_PROJECT_VERSION if [ ! -d $packDir ] then - echo "Error: directory $packDir does not exist" - exit 1 + echo "Error: directory $packDir does not exist" + exit 1 fi # obtain arch types from lib/ for bin in $packDir/lib/* do - foamPackBin ${bin##*/} $@ + foamPackBin ${bin##*/} $@ done #------------------------------------------------------------------------------ diff --git a/bin/foamPackDoxygen b/bin/foamPackDoxygen index efdcdacc09f..4503470846a 100755 --- a/bin/foamPackDoxygen +++ b/bin/foamPackDoxygen @@ -41,7 +41,7 @@ Usage: ${0##*/} [-prefix DIR] [-o outputDir] Packs and compresses the OpenFOAM doxygen html for release USAGE - exit 1 + exit 1 } unset prefix outputDir @@ -87,16 +87,16 @@ fi # if [ -d "$outputDir" ] then - packFile="$outputDir/$packDir$packTag" + packFile="$outputDir/$packDir$packTag" else - packFile="$packDir$packTag" + packFile="$packDir$packTag" fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # Pack and compress the packFile using GNU tar @@ -107,16 +107,16 @@ echo if [ -n "$prefix" ] then - tar czpf $packFile --transform="s@^@$prefix/@" doc/Doxygen/html + tar czpf $packFile --transform="s@^@$prefix/@" doc/Doxygen/html else - tar czpf $packFile $packDir/doc/Doxygen/html + tar czpf $packFile $packDir/doc/Doxygen/html fi -if [ $? = 0 ] +if [ $? -eq 0 ] then - echo "Finished packing doxygen html into file $packFile" + echo "Finished packing doxygen html into file $packFile" else - echo "Error: failure packing doxygen html file $packFile" + echo "Error: failure packing doxygen html file $packFile" fi #------------------------------------------------------------------------------ diff --git a/bin/foamPackGeneral b/bin/foamPackGeneral index 3da41972265..e55d834bce3 100755 --- a/bin/foamPackGeneral +++ b/bin/foamPackGeneral @@ -37,20 +37,20 @@ packFile=${packDir}.General_${timeStamp}.gtgz if [ ! -d $packDir ] then - echo "Error: directory $packDir does not exist" - exit 1 + echo "Error: directory $packDir does not exist" + exit 1 fi # add optional output directory if [ -d "$1" ] then - packFile="$1/$packFile" + packFile="$1/$packFile" fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # Create time stamp file @@ -62,7 +62,7 @@ echo $timeStamp 2>/dev/null > $packDir/.timeStamp # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo -echo "Packing $packDir into $packFile" +echo "Packing $packDir source files into $packFile" echo foamPackSource $packDir $packFile diff --git a/bin/foamPackSource b/bin/foamPackSource index c4d0fc7eb47..b5e34c8a040 100755 --- a/bin/foamPackSource +++ b/bin/foamPackSource @@ -35,12 +35,12 @@ tmpFile=${TMPDIR:-/tmp}/foamPackFiles.$$ if [ $# -ne 2 ] then - echo "Usage : ${0##*/} directory tarFile" - echo "" - echo "Packs all .C and .H files and Make/options and Make/files into" - echo "<tarFile>" - echo "" - exit 1 + echo "Usage : ${0##*/} directory tarFile" + echo "" + echo "Packs all .C and .H files and Make/options and Make/files into" + echo "<tarFile>" + echo "" + exit 1 fi # canonical form (no double and no trailing dashes) @@ -49,14 +49,14 @@ packFile=$2 if [ ! -d $packDir ] then - echo "Error: directory $packDir does not exist" - exit 1 + echo "Error: directory $packDir does not exist" + exit 1 fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # Clean up on termination and on Ctrl-C @@ -78,24 +78,29 @@ find -H $packDir \ -a ! -name "log[0-9]*" \ -a ! -name "libccmio*" \ | sed \ - -e "\@$packDir/.git/@d" \ - -e "\@/.tags/@d" \ -e "\@$packDir/lib/@d" \ - -e "\@libccmio.*/@d" \ + -e '\@/\.git/@d' \ + -e '\@/\.tags/@d' \ -e '\@applications/bin/@d' \ + -e '\@wmake/utilbin/@d' \ -e '\@/t/@d' \ -e '\@/Make[.A-Za-z]*/[^/]*/@d'\ -e '\@/platforms/@d' \ + -e '\@libccmio.*/@d' \ > $tmpFile + +# provide some feedback +wc $tmpFile | awk '{print "Packing",$1,"files - this could take some time ..."}' + tar czpf $packFile --files-from $tmpFile -if [ $? = 0 ] +if [ $? -eq 0 ] then - echo "Finished packing and compressing $packDir into file $packFile" + echo "Finished packing and compressing $packDir into file $packFile" else - echo "Error: failure packing $packDir into file $packFile" - rm -f $packFile 2>/dev/null + echo "Error: failure packing $packDir into file $packFile" + rm -f $packFile 2>/dev/null fi #------------------------------------------------------------------------------ diff --git a/bin/foamPackThirdPartyBin b/bin/foamPackThirdPartyBin index 1e128db1daf..b9363f68740 100755 --- a/bin/foamPackThirdPartyBin +++ b/bin/foamPackThirdPartyBin @@ -31,36 +31,43 @@ # #------------------------------------------------------------------------------ -if [ $# = 0 ] +if [ $# -eq 0 ] then - echo "Error: archOptions type expected, exiting" - echo - echo "Usage : ${0##*/} <archOptions> [outputDir]" - echo - exit 1 + echo "Error: archOptions type expected, exiting" + echo + echo "Usage : ${0##*/} <archOptions> [outputDir]" + echo + exit 1 fi archOptions=$1 arch=${archOptions%%G*} # TODO: works for Gcc only -arch3264=$(echo "$arch" | sed 's@64@-64@') +arch3264=$(echo "$arch" | sed -e 's@64@-64@') echo "archOptions=$archOptions" echo "arch=$arch" echo "arch3264=$arch3264" timeStamp=$(date +%Y-%m-%d) -packDir=ThirdParty +packDir=${WM_THIRD_PARTY_DIR:-ThirdParty} +packDir=${packDir##*/} packFile=${packDir}.${archOptions}_${timeStamp}.gtgz +if [ ! -d $packDir ] +then + echo "Error: directory $packDir does not exist" + exit 1 +fi + # add optional output directory if [ -d "$2" ] then - packFile="$2/$packFile" + packFile="$2/$packFile" fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # get list of directories @@ -71,12 +78,12 @@ echo tar czpf $packFile $dirList -if [ $? = 0 ] +if [ $? -eq 0 ] then - echo "Finished packing and compressing file $packFile" + echo "Finished packing and compressing file $packFile" else - echo "Error: failure packing $packFile" - rm -f $packFile 2>/dev/null + echo "Error: failure packing $packFile" + rm -f $packFile 2>/dev/null fi #------------------------------------------------------------------------------ diff --git a/bin/foamPackThirdPartyGeneral b/bin/foamPackThirdPartyGeneral index 845b2bfa474..a690f7f4481 100755 --- a/bin/foamPackThirdPartyGeneral +++ b/bin/foamPackThirdPartyGeneral @@ -32,25 +32,26 @@ #------------------------------------------------------------------------------ timeStamp=$(date +%Y-%m-%d) -packDir=ThirdParty +packDir=${WM_THIRD_PARTY_DIR:-ThirdParty} +packDir=${packDir##*/} packFile=${packDir}.General_${timeStamp}.gtgz if [ ! -d $packDir ] then - echo "Error: directory $packDir does not exist" - exit 1 + echo "Error: directory $packDir does not exist" + exit 1 fi # add optional output directory if [ -d "$1" ] then - packFile="$1/$packFile" + packFile="$1/$packFile" fi if [ -f $packFile ] then - echo "Error: $packFile already exists" - exit 1 + echo "Error: $packFile already exists" + exit 1 fi # Create time stamp file @@ -62,7 +63,7 @@ echo $timeStamp 2>/dev/null > $packDir/.timeStamp # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo -echo "Packing $packDir into $packFile" +echo "Packing $packDir source files into $packFile" echo foamPackSource $packDir $packFile -- GitLab