Add the OpenFOAM source tree
This commit is contained in:
64
wmake/scripts/addCompile
Executable file
64
wmake/scripts/addCompile
Executable file
@ -0,0 +1,64 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# addCompile
|
||||
#
|
||||
# Description
|
||||
# Cleans up the dependency list and add the compilation statement.
|
||||
#
|
||||
# Usage: wmkdep <fileName> | addCompile <fileName>
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
sourceName=${1##*/}
|
||||
objectName=${sourceName%.*}.o
|
||||
className=${sourceName%.*}.class
|
||||
sub=${1##*.}
|
||||
depName=${1%.*}.dep
|
||||
|
||||
sourceDir=${1%/*}
|
||||
|
||||
if [ "$sourceDir" = "$sourceName" ]
|
||||
then
|
||||
sourceDir=.
|
||||
fi
|
||||
|
||||
if [ "$WM_PROJECT_DIR" ]
|
||||
then
|
||||
sed -e s%$WM_PROJECT_DIR%'$(WM_PROJECT_DIR)'% > $depName
|
||||
else
|
||||
cat > $depName
|
||||
fi
|
||||
|
||||
sed -e s%".*.o.*:"%'$(OBJECTS_DIR)/'"$objectName\:"% \
|
||||
-e s%$WM_PROJECT_DIR%'$(WM_PROJECT_DIR)'% \
|
||||
>> $depName
|
||||
|
||||
echo '$(OBJECTS_DIR)/'$objectName': $(EXE_DEP)' >> $depName
|
||||
echo '$(OBJECTS_DIR)/'$objectName':' >> $depName
|
||||
echo ' @SOURCE_DIR='$sourceDir >> $depName
|
||||
echo ' SOURCE='$1' ; $('$sub'too)' >> $depName
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
133
wmake/scripts/makeDerivedFiles
Executable file
133
wmake/scripts/makeDerivedFiles
Executable file
@ -0,0 +1,133 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeDerivedFiles
|
||||
#
|
||||
# Description
|
||||
# Constructs all the file list for make given the source file list,
|
||||
# written by hand or using makeFilesAndOptions.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
[ -d "$WM_OPTIONS" ] || {
|
||||
echo "The '$WM_OPTIONS' directory does not exist, exiting" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# change to the $WM_OPTIONS directory
|
||||
cd "$WM_OPTIONS" 2>/dev/null || {
|
||||
echo "Could not change to directory '$WM_OPTIONS'" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Find and keep macro definitions in files list
|
||||
grep "=" files > filesMacros
|
||||
|
||||
# Remove all macro definitions from the files list
|
||||
grep -v "=" files > filesPlusBlank
|
||||
|
||||
# Add a newline to files to ensure the last line is followed by a newline
|
||||
echo "" >> filesPlusBlank
|
||||
|
||||
|
||||
# Remove commented lines, blank lines, and trailing blanks from files
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
sed -e '/^#/ d' \
|
||||
-e '/^[ \t]*$/ d' \
|
||||
-e 's/[ \t]*$//' \
|
||||
filesPlusBlank > files.$$
|
||||
|
||||
rm filesPlusBlank
|
||||
|
||||
|
||||
# make sourceFiles
|
||||
# ~~~~~~~~~~~~~~~~
|
||||
echo "SOURCE = " > tmpSourceFile
|
||||
cat files.$$ >> tmpSourceFile
|
||||
|
||||
sed -e 's/$/\\/' \
|
||||
-e '$s/\\//' \
|
||||
tmpSourceFile > sourceFiles
|
||||
|
||||
rm tmpSourceFile
|
||||
|
||||
|
||||
# make objectFiles
|
||||
# ~~~~~~~~~~~~~~~~
|
||||
sed -e 's%.*/%%' \
|
||||
-e 's%^%$(OBJECTS_DIR)/%' \
|
||||
-e 's%\.[a-zA-Z]*$%\.o%' \
|
||||
files.$$ > tmpObjectFiles
|
||||
|
||||
echo "OBJECTS = " > tmpObjectFiles2
|
||||
cat tmpObjectFiles >> tmpObjectFiles2
|
||||
|
||||
sed -e 's/$/\\/' \
|
||||
-e '$s/\\//' \
|
||||
tmpObjectFiles2 > objectFiles
|
||||
|
||||
rm tmpObjectFiles tmpObjectFiles2
|
||||
|
||||
|
||||
# make localObjectFiles
|
||||
# ~~~~~~~~~~~~~~~~~~~~~
|
||||
sed -e 's%.*/%%' \
|
||||
-e 's%\.[a-zA-Z]*$%\.o%' \
|
||||
files.$$ > tmpLocalObjectFiles
|
||||
|
||||
echo "LOCAL_OBJECTS = " > tmpLocalObjectFiles2
|
||||
cat tmpLocalObjectFiles >> tmpLocalObjectFiles2
|
||||
|
||||
sed -e 's/$/\\/' \
|
||||
-e '$s/\\//' \
|
||||
tmpLocalObjectFiles2 > localObjectFiles
|
||||
|
||||
rm tmpLocalObjectFiles tmpLocalObjectFiles2
|
||||
|
||||
|
||||
# make dependencyFiles
|
||||
# ~~~~~~~~~~~~~~~~~~~~
|
||||
sed 's/\.[a-zA-Z]*$/\.dep/' \
|
||||
files.$$ > tmpDependencyFiles
|
||||
|
||||
echo "DEPENDENCIES = " > tmpDependencyFiles2
|
||||
cat tmpDependencyFiles >> tmpDependencyFiles2
|
||||
|
||||
sed -e 's/$/\\/' \
|
||||
-e '$s/\\//' \
|
||||
tmpDependencyFiles2 > dependencyFiles
|
||||
|
||||
rm tmpDependencyFiles tmpDependencyFiles2
|
||||
|
||||
|
||||
# make includeDeps
|
||||
# ~~~~~~~~~~~~~~~~
|
||||
sed -e 's/\.[a-zA-Z]*$/.dep/' \
|
||||
-e 's/^/include /' \
|
||||
files.$$ > includeDeps
|
||||
|
||||
rm files.$$
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
40
wmake/scripts/makeDir
Executable file
40
wmake/scripts/makeDir
Executable file
@ -0,0 +1,40 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeDir
|
||||
#
|
||||
# Description
|
||||
# Script to make directories that do not already exist
|
||||
# Usage : makeDir <dir> [.. <dirN>]
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
for dir
|
||||
do
|
||||
[ -d "$dir" ] || mkdir -p "$dir"
|
||||
done
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
80
wmake/scripts/makeFiles
Executable file
80
wmake/scripts/makeFiles
Executable file
@ -0,0 +1,80 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeFiles
|
||||
#
|
||||
# Description
|
||||
# Scan the current directory for source files and construct Make/files
|
||||
#
|
||||
# Usage : makeFiles
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ -r Make/files ]
|
||||
then
|
||||
echo "Error: Make/files already exists - exiting"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
dirToString=$WM_DIR/platforms/$WM_ARCH$WM_COMPILER/dirToString
|
||||
|
||||
[ -d Make ] || mkdir Make
|
||||
rm -f Make/files
|
||||
|
||||
for dir in `find . -type d -print`
|
||||
do
|
||||
case "$dir" in
|
||||
. | ./Make | ./lnInclude )
|
||||
# skip special directories
|
||||
;;
|
||||
*)
|
||||
baseDir=`echo $dir | sed 's%^\./%%'`
|
||||
baseDirName=`echo $baseDir | $dirToString`
|
||||
|
||||
echo $baseDirName " = " $baseDir >> Make/files
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo >> Make/files
|
||||
|
||||
for file in `find . -name "*.[cCylLfF]" -type f -print`
|
||||
do
|
||||
fileName=`echo ${file##*/}`
|
||||
pathName=`echo ${file%/*} | sed 's%^\.%%' | sed 's%^/%%' | $dirToString`
|
||||
|
||||
if [ -n "$pathName" ]
|
||||
then
|
||||
echo '$('$pathName')/'$fileName >> Make/files
|
||||
else
|
||||
echo $fileName >> Make/files
|
||||
fi
|
||||
done
|
||||
|
||||
echo >> Make/files
|
||||
|
||||
echo 'EXE = $(FOAM_APPBIN)/'${PWD##*/} >> Make/files
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
51
wmake/scripts/makeOptions
Executable file
51
wmake/scripts/makeOptions
Executable file
@ -0,0 +1,51 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeOptions
|
||||
#
|
||||
# Description
|
||||
# Construct Make/options
|
||||
#
|
||||
# Usage : makeOptions
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
if [ -r Make/options ]
|
||||
then
|
||||
echo "Error: Make/options already exists - exiting"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -d Make ] || mkdir Make
|
||||
|
||||
rm -f Make/options
|
||||
|
||||
echo 'EXE_INC = \
|
||||
-I$(LIB_SRC)/finiteVolume/lnInclude' >> Make/options
|
||||
echo >> Make/options
|
||||
echo 'EXE_LIBS = \
|
||||
-lfiniteVolume' >> Make/options
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
41
wmake/scripts/makeTargetDir
Executable file
41
wmake/scripts/makeTargetDir
Executable file
@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ========= |
|
||||
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
# \\ / O peration |
|
||||
# \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
# \\/ 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 3 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, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Script
|
||||
# makeTargetDir
|
||||
#
|
||||
# Description
|
||||
# Makes a directory hierarchy for the given target file
|
||||
#
|
||||
# Usage: makeTargetDir <directory>
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
for target
|
||||
do
|
||||
dir=${target%/*}
|
||||
[ -d "$dir" ] || [ "$dir" = "$target" ] || mkdir -p "$dir"
|
||||
done
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
Reference in New Issue
Block a user