Merge branch 'master' of github.com:OpenFOAM/OpenFOAM-2.0.x
[OpenFOAM-2.0.x.git] / wmake / wcleanMachine
blob92d5072bc1bc5572bd69cb1a429946fb015ac9d3
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 # wcleanMachine
28 # Description
29 # Searches the directories below the current directory for the object
30 # file directories of the specified machine type(s) and deletes them
32 # Usage: wcleanMachine <machineType> [ .. <machineTypeN> ]
34 #------------------------------------------------------------------------------
35 usage() {
36 exec 1>&2
37 while [ "$#" -ge 1 ]; do echo "$1"; shift; done
38 cat<<USAGE
39 usage: ${0##*/} machineType [... machineTypeN]
41 Searches the directories below the current directory for the object file
42 directories of the specified machine type(s) and deletes them
44 Note:
45 can also use '-current' for the current value of \$WM_OPTIONS
47 USAGE
48 exit 1
52 # needs some machine types ... or provide immediate help
53 if [ "$#" -lt 1 -o "$1" = "-h" -o "$1" = "-help" ]
54 then
55 usage
58 [ -d bin -a -d src ] || usage "not in the project top level directory"
60 for machType
62 if [ "$machType" = "-current" ]
63 then
64 machType="$WM_OPTIONS"
65 echo "Using current = $machType"
66 [ -n "$machType" ] || continue
69 echo "Cleaning machine type: $machType"
71 find . -depth \( -name Make -o -name "Make.[A-Za-z]*" \) -type d -print | \
72 xargs -i find '{}' -mindepth 1 -maxdepth 1 \
73 \( -type d -name "*$machType" -o -name "*$machType$WM_MPLIB" \) -print |
74 xargs rm -rf
76 rm -rf platforms/$machType
78 done
80 #------------------------------------------------------------------------------