#!/bin/sh #------------------------------------------------------------------------------ # ========= | # \\ / F ield | foam-extend: Open Source CFD # \\ / O peration | Version: 4.1 # \\ / A nd | Web: http://www.foam-extend.org # \\/ M anipulation | For copyright notice see file Copyright #------------------------------------------------------------------------------ # License # This file is part of foam-extend. # # foam-extend 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 3 of the License, or (at your # option) any later version. # # foam-extend 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 foam-extend. If not, see . # # Script # wcleanAllButLibBinLnInclude # # Description # search all the directories below the current for the object file # directories of all machines and *.dep files, and delete them. # This scripts is the same as wcleanAll, except that it leaves # the lib, applications/bin, and lnInclude directories untouched. # The purpose is to minimize an installation, while keeping it fully # operational and keeping the possibility to compile user code. # #------------------------------------------------------------------------------ if [ "$1" = "-h" -o "$1" = "-help" ] then echo "Usage: ${0##*/}" echo echo " Remove all object files and *.dep files" echo " Leaves lib, applications/bin and lnInclude untouched" exit 1 fi [ -d bin -a -d src ] || { echo "${0##*/}: not in the project top level directory" exit 1 } #Removed, compared to wcleanAll: #for dir in lib applications/bin #do # echo "Removing $dir/" # [ -d $dir ] && rm -rf $dir/* #done echo "Removing *.dep files" find . -name '*.dep' -exec rm {} \; echo "Cleaning Make subdirectories" find `find . -depth \( -name "Make.[A-Za-z]*" -o -name Make \) -type d -print` -depth \( -type d ! -name "*Make.[A-Za-z]*" ! -name "*Make" \( ! -path '*.svn*' \) \) -exec rm -rf {} \; #Removed, compared to wcleanAll: #echo "Removing lnInclude and intermediate directories" #find . -depth -type d \( -name lnInclude -o -name ii_files -o -name Templates.DB \) -exec rm -rf {} \; echo "Removing misc files" find . \( -name exe -o -name log -o -name so_locations \) -exec rm {} \; ( cd tutorials && ./Allclean ) #------------------------------------------------------------------------------