#!/bin/sh
#------------------------------------------------------------------------------
# ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration |
# \\ / A nd | Copyright (C) 2017-2018 OpenCFD Ltd.
# \\/ M anipulation |
#-------------------------------------------------------------------------------
# License
# This file is part of OpenFOAM, licensed under GNU General Public License
# .
#
# Script
# wcleanBuild, wcleanPlatform
#
# Usage
# wcleanBuild [.. ]
#
# Description
# Deletes the specified 'build/' object files directories from the
# project top-level 'build/' directory $WM_PROJECT_DIR.
#
# special platforms
# - 'all' removes all platforms.
# - 'compiler' corresponds to $WM_ARCH$WM_COMPILER.
# - 'current' corresponds to $WM_OPTIONS.
#
# You must be in the project or the third-party top-level directory
# to run this script.
#
# When called as wcleanPlatform, the target directory changes to
# 'platforms/ and the 'all' target also cleans up lnInclude dirs and
# tutorials
#
#------------------------------------------------------------------------------
Script="${0##*/}"
targetDir=build # Safe default - override based on script name
case "$Script" in
(*[Pp]latform*)
targetDir=platforms
;;
esac
usage() {
local extraText
if [ "$targetDir" = platforms ]
then
extraText=", lnInclude and clean tutorials"
fi
exec 1>&2
while [ "$#" -ge 1 ]; do echo "$1"; shift; done
cat< [.. ]
options:
-a, -all Same as 'all'
-curr, -current Use \$WM_OPTIONS ($WM_OPTIONS)
-comp, -compiler Use \$WM_ARCH\$WM_COMPILER* ($WM_ARCH$WM_COMPILER)
-compiler=NAME Use \$WM_ARCH* ($WM_ARCH*)
-h, -help Print the usage
Deletes the specified $targetDir/ object file directories from the project
top-level $targetDir/ directory $WM_PROJECT_DIR.
special platforms:
all Remove all platforms$extraText
compiler $WM_ARCH$WM_COMPILER (ie, \$WM_ARCH\$WM_COMPILER)
current $WM_OPTIONS (ie, \$WM_OPTIONS)
You must be in the project or the third-party top-level directory
to run this script.
USAGE
exit 1
}
# Find -help anywhere
for i
do
case "$i" in (-h | -help*) usage ;; esac
done
#------------------------------------------------------------------------------
# Run from OPENFOAM or THIRDPARTY top-level directory only
wmakeCheckPwd -q "$WM_PROJECT_DIR" 2>/dev/null || \
wmakeCheckPwd -q "$WM_THIRD_PARTY_DIR" 2>/dev/null || \
{
cat<