Merge branch 'master' of ssh://git.code.sf.net/p/foam-extend/foam-extend-3.2
[foam-extend-3.2.git] / wmake / wmakeCheckPwd
blob8c809953a0b7c32981f724e20f627e84f302cbe4
1 #!/bin/sh
2 #------------------------------------------------------------------------------
3 # ========= |
4 # \\ / F ield | foam-extend: Open Source CFD
5 # \\ / O peration | Version: 3.2
6 # \\ / A nd | Web: http://www.foam-extend.org
7 # \\/ M anipulation | For copyright notice see file Copyright
8 #------------------------------------------------------------------------------
9 # License
10 # This file is part of foam-extend.
12 # foam-extend is free software: you can redistribute it and/or modify it
13 # under the terms of the GNU General Public License as published by the
14 # Free Software Foundation, either version 3 of the License, or (at your
15 # option) any later version.
17 # foam-extend is distributed in the hope that it will be useful, but
18 # WITHOUT ANY WARRANTY; without even the implied warranty of
19 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 # General Public License for more details.
22 # You should have received a copy of the GNU General Public License
23 # along with foam-extend. 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 #------------------------------------------------------------------------------