Merge branch 'upstream/OpenFOAM-1.7.x' into upstream/OpenFOAM
[freefoam.git] / wmake / wmakeCheckPwd
blob1cd075ee3aee65b14e4fd2e936d491237bc2ebb7
1 #!/bin/sh
2 #---------------------------------*- sh -*-------------------------------------
3 # ========= |
4 # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
5 # \\ / O peration |
6 # \\ / A nd | Copyright (C) 1991-2010 OpenCFD Ltd.
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 # wmakeCheckPwd
28 # Description
29 # Check that the current working directory is equal to a particular
30 # target directory, resolving the absolute path as required
32 #-------------------------------------------------------------------------------
33 unset quietOpt
35 usage() {
36 [ "$quietOpt" = true ] && exit 1
37 exec 1>&2
38 while [ "$#" -ge 1 ]; do echo "$1"; shift; done
39 cat<<USAGE
41 usage: ${0##*/} [OPTION] dirName
43 options:
44 -q | -quiet suppress all normal output
46 Check that the current working directory is equal to a particular
47 target directory, resolving the absolute path as required
49 Exit status 0 when the directories are identical
50 Exit status 1 on error
52 USAGE
53 exit 1
57 # parse options
58 while [ "$#" -gt 0 ]
60 case "$1" in
61 -h | -help)
62 usage
64 -q | -quiet)
65 quietOpt=true
66 shift
68 -*)
69 usage "unknown option: '$*'"
72 break
74 esac
75 done
78 [ "$#" -eq 1 ] || usage
79 dirName="$1"
82 # trivial checks first
83 [ "$PWD" = "$dirName" ] && exit 0
85 [ -d "$dirName" ] || {
86 [ "$quietOpt" = true ] || echo "Error: Directory does not exist $dirName"
87 exit 1
91 # use /bin/pwd to get the absolute path (could be linked)
92 thisDir=$(/bin/pwd)
93 target=$(cd $dirName 2>/dev/null && /bin/pwd)
95 # okay
96 [ "$thisDir" = "$target" ] && exit 0
98 # some other error
99 [ "$quietOpt" = true ] || echo "Error: Current directory is not $dirName"
100 exit 1
102 #------------------------------------------------------------------------------