diff --git a/bin/foamCheckSourceDeps b/bin/foamCheckSourceDeps new file mode 100755 index 0000000000000000000000000000000000000000..5653f050d162fe41f2ffab142176f7f57501df12 --- /dev/null +++ b/bin/foamCheckSourceDeps @@ -0,0 +1,70 @@ +#!/bin/sh +#------------------------------------------------------------------------------ +# ========= | +# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox +# \\ / O peration | +# \\ / A nd | Copyright (C) 1991-2008 OpenCFD Ltd. +# \\/ M anipulation | +#------------------------------------------------------------------------------- +# License +# This file is part of OpenFOAM. +# +# OpenFOAM is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenFOAM; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# +# Script +# foamCheckSourceDeps +# +# Description +# Usage: foamCheckSourceDeps [dir1 .. dirN] +# +# Search for *.dep files that are without a corresponding .C or .L file. +# These could indicate a directory that has been moved. +# - print questionable directory and dep file +#------------------------------------------------------------------------------ +if [ "$1" = "-h" -o "$1" = "-help" ] +then + cat <<USAGE 1>&2 +Usage: ${0##*/} [dir1 .. dirN] + + Search for .dep files that are without a corresponding .C or .L file. + This could indicate a directory that has been moved. + - print questionable directory and file +USAGE + exit 1 +fi + +if [ "$#" -eq 0 ] +then + set -- . +fi + +for checkDir +do + if [ -d $checkDir ] + then + find $checkDir -name '*.dep' -print | while read depFile; + do + Cfile=$(echo $depFile | sed -e 's/\.dep$/.C/') + # also check flex files + Lfile=$(echo $depFile | sed -e 's/\.C$/.L/') + if [ ! -f $Cfile -a ! -f $Lfile ] + then + echo "$(dirname $Cfile) ${depFile##*/}" + fi + done + fi +done + +# -----------------------------------------------------------------------------