Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-2.0.x
[OpenFOAM-2.0.x.git] / bin / foamPackThirdParty
blob75378723942d0562b7e4b2ed2193aa66ec1bf0ef
1 #!/bin/sh
2 #------------------------------------------------------------------------------
3 # ========= |
4 # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 # \\ / O peration |
6 # \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
7 # \\/ M anipulation |
8 #------------------------------------------------------------------------------
9 # License
10 # This file is part of OpenFOAM.
12 # OpenFOAM is free software: you can redistribute it and/or modify it
13 # under the terms of the GNU General Public License as published by
14 # the Free Software Foundation, either version 3 of the License, or
15 # (at your option) any later version.
17 # OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
18 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
20 # for more details.
22 # You should have received a copy of the GNU General Public License
23 # along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25 # Script
26 # foamPackThirdParty [OPTION]
28 # Description
29 # Pack and compress the OpenFOAM ThirdParty directory for release
31 #------------------------------------------------------------------------------
32 packDir=ThirdParty-$WM_PROJECT_VERSION
33 toolsDir="${0%/*}/tools" # this script is located in the tools/ parent dir
35 usage() {
36 exec 1>&2
37 while [ "$#" -gt 0 ]; do echo "$1"; shift; done
38 cat <<USAGE
39 Usage: ${0##*/} [OPTION]
40 options:
41 -o <dir> specify alternative output directory
43 * Pack and compress ThirdParty directory for release
45 USAGE
46 exit 1
49 unset prefix outputDir nogit
50 # parse options
51 while [ "$#" -gt 0 ]
53 case "$1" in
54 -h | -help)
55 usage
57 -nogit)
58 nogit=true
59 shift
61 -o | -output)
62 [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
63 outputDir=${2%%/}
64 shift 2
66 -*)
67 usage "unknown option: '$*'"
70 break
72 esac
73 done
75 # check for essential directories
76 [ -d $packDir ] || {
77 echo "Error: directory $packDir does not exist" 1>&2
78 exit 1
82 #------------------------------------------------------------------------------
83 timeStamp=$(date +%Y-%m-%d)
84 packExt=tgz
85 packBase=${packDir}_${timeStamp}
87 # add optional output directory
88 [ -d "$outputDir" ] && packBase="$outputDir/$packBase"
89 packFile=$packBase.$packExt
91 # avoid overwriting old pack file
92 if [ -f $packFile ]
93 then
94 echo "Error: $packFile already exists"
95 exit 1
99 #------------------------------------------------------------------------------
101 # add time-stamp file before packing
102 echo $timeStamp 2>/dev/null > $packDir/.timeStamp
103 echo "pack manually" 1>&2
104 foamPackSource $packDir $packFile
106 #------------------------------------------------------------------------------