Merge commit 'd3b269b7c6ffa0cd68845adfecdfb849316dba71' into nextRelease
[foam-extend-3.2.git] / wmake / wmakeLnIncludeAll
blobd27bce3d8cfa46da2a6a47cde8f5371a17777b58
1 #!/bin/sh
2 #------------------------------------------------------------------------------
3 # ========= |
4 # \\ / F ield | foam-extend: Open Source CFD
5 # \\ / O peration |
6 # \\ / A nd | For copyright notice see file Copyright
7 # \\/ M anipulation |
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 # wmakeLnIncludeAll
28 # Description
29 # Find directories with a 'Make/files' that contains a 'LIB =' directive
30 # and execute 'wmakeLnInclude -f' for each one
32 #------------------------------------------------------------------------------
33 usage() {
34 while [ "$#" -ge 1 ]; do echo "$1"; shift; done
35 cat<<USAGE
37 usage: ${0##*/} [dir1 .. dirN]
39 Find directories with a 'Make/files' that contains a 'LIB =' directive
40 and execute 'wmakeLnInclude -f' for each one
42 USAGE
43 exit 1
46 #------------------------------------------------------------------------------
47 findName=lnInclude
49 # simple parse options
50 while [ "$#" -gt 0 ]
52 case "$1" in
53 -h | -help) # provide immediate help
54 usage
56 -*)
57 usage "unknown option: '$*'"
60 break
62 esac
63 done
66 # default to searching from pwd
67 [ "$#" -gt 0 ] || set -- .
69 for checkDir
71 if [ -d $checkDir ]
72 then
73 echo "searching: $checkDir for 'Make' directories"
74 echo "---------"
75 else
76 echo "skipping non-dir: $checkDir"
77 echo "----------------"
78 continue
81 find $checkDir -depth -type d -name Make -print | while read makeDir
83 topDir=${makeDir%/Make} # trim /Make from the end
84 if [ -d "$topDir" ]
85 then
86 if grep -e '^ *LIB *=' "$makeDir/files" >/dev/null 2>&1
87 then
88 wmakeLnInclude -f $topDir
89 elif [ -d "$topDir/lnInclude" ]
90 then
91 echo "removing spurious $topDir/lnInclude"
92 rm -rf "$topDir/lnInclude"
95 done
96 done
98 #------------------------------------------------------------------------------