Commit Graph

176 Commits

Author SHA1 Message Date
1156a55669 wmake/makefiles/files: Updated comments 2020-12-11 07:51:52 +00:00
66131bcd16 wmake: Simplified using -q option on grep 2020-12-10 16:31:40 +00:00
cffe943d8d wmake/rules: Removed the now redundant CPP definitions 2020-12-10 11:12:14 +00:00
a918deda09 wmake/makefiles/files: Preserve the indentation of the source file lines in Make/files 2020-12-10 08:24:28 +00:00
848ec1cd97 wmake: Simplified and standardised the Make/files files
cpp is no longer used to pre-process Make/files files allowing standard make '#'
syntax for comments, 'ifdef', 'ifndef' conditionals etc.  This is make possible
by automatically pre-pending SOURCE += to each of the source file names in
Make/files.

The list of source files compile can be specified either as a simple list of
files in Make/files e.g.

    # Note: fileMonitor assumes inotify by default. Compile with -DFOAM_USE_STAT
    # to use stat (=timestamps) instead of inotify
    fileMonitor.C

    ifdef SunOS64
        dummyPrintStack.C
    else
        printStack.C
    endif

    LIB = $(FOAM_LIBBIN)/libOSspecific

or

or directly as the SOURCE entry which is used in the Makefile:

    SOURCE = \
        adjointOutletPressure/adjointOutletPressureFvPatchScalarField.C \
        adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.C \
        adjointShapeOptimizationFoam.C

    EXE = $(FOAM_APPBIN)/adjointShapeOptimizationFoam

In either form make syntax for comments and conditionals is supported.
2020-12-10 08:09:49 +00:00
30e6e02d29 wmake: Removed the cpp processing of the Make/options file
so that it can be included directly into the wmake Makefile to allow full
support of gmake syntax, variables, functions etc.

The Make/files file handled in the same manner as the Make/options file if it
contains the SOURCE entry otherwise it is first processed by cpp for backward
compatibility.
2020-12-09 13:35:14 +00:00
ff766fe6ac wmake: Added support for gmake directives in Make/files
The list of source files compile can now be specified either as a simple list of
files in Make/files e.g.

adjointOutletPressure/adjointOutletPressureFvPatchScalarField.C
adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.C
adjointShapeOptimizationFoam.C

EXE = $(FOAM_APPBIN)/adjointShapeOptimizationFoam

or directly as the SOURCE entry which is used in the Makefile:

SOURCE = \
    adjointOutletPressure/adjointOutletPressureFvPatchScalarField.C \
    adjointOutletVelocity/adjointOutletVelocityFvPatchVectorField.C \
    adjointShapeOptimizationFoam.C

EXE = $(FOAM_APPBIN)/adjointShapeOptimizationFoam

In both cases the Make/files is first parsed by cpp to handle #if, #ifdef
etc. directives but in the latter form gmake directives like ifeq can be also be
used to optionally select files to compile, typically using

SOURCE += anotherFile.C

statements.
2020-12-08 19:10:21 +00:00
067ab99f0f wmkdep: terminate sourcePath string explicitly
Resolves bug-report https://bugs.openfoam.org/view.php?id=3550
2020-09-18 13:55:37 +01:00
f98d878457 OpenFOAM: Rationalised naming convention for file path
pathName, pathname -> filePath
2020-09-14 11:27:05 +01:00
e603417ef7 bin/tools/foamGenerateBashCompletion: Improved robustness of bracket parsing
Also minor formatting changes
2020-07-30 16:47:29 +01:00
0257ab1459 Updated to C++14 standard
gcc version 5 and above and clang version 3.4 and above fully support the C++14
standard and the compilation rules of OpenFOAM-dev now require this support
allowing for further development and maintenance to benefit from the additional
language features provided in C++14.
2020-07-23 15:31:07 +01:00
077138942f Intel MPI configuration: Updated for versions 19 and higher
Resolves feature request https://bugs.openfoam.org/view.php?id=3519
2020-07-11 17:20:25 +01:00
ed9e420ea1 wmake: added rules for linuxArm64Gcc to compile on aarch64 (Arm-based) processors.
No code change was required to compile OpenFOAM on Arm using the Gcc compiler.
2020-06-24 16:01:49 +01:00
6268e426d7 wmake/rules/General/moc: Updated
Patch contributed by Institute of Fluid Dynamics,
Helmholtz-Zentrum Dresden - Rossendorf (HZDR)
2020-06-24 15:20:57 +01:00
7dd592ff40 boost: Corrected include path 2020-06-09 09:27:56 +01:00
83bd225910 foamyHexMesh: Updated to compile against CGAL 5.0+
CGAL and Boost are now used header-only. The minimum supported version
of CGAL is now 4.9.
2020-05-08 11:24:58 +01:00
c32d7ea592 wmkdep: Removed a file search optimisation which can generate the incorrect path
if there is more than one search directory containing the same file name.
2019-10-02 14:30:04 +01:00
e684cc1c3a wmkdep: Added the source file directory to the directory search list 2019-07-25 18:03:48 +01:00
94642ba4d9 etc/bashrc: Added better handling for symbolic links in the WM_PROJECT_DIR path
Patch contributed by Bruno Santos
2019-07-22 14:36:20 +01:00
5e7895daf0 wmake/rules/General/mplibINTELMPI64: Updated paths for recent releases of Intel MPI 2019-07-19 23:38:05 +01:00
9980357df1 wmake: use expandPath to expand $PWD to handle symlinks
Resolves patch request https://bugs.openfoam.org/view.php?id=3301
2019-07-02 11:58:04 +01:00
51a8b15afe Renamed MVAPICH2 -> MV2MPI for consistency with the MPI implementation naming convention
Resolves patch request https://bugs.openfoam.org/view.php?id=3153
2019-01-28 09:52:41 +00:00
d95d68d7be Removed support for ancient platforms IA64 and SGIN32 2018-12-21 18:35:20 +00:00
fd08eae933 Replaced mplib with mplibDummy for consistency with the dummy Pstream 2018-08-16 21:11:40 +01:00
583043b0e3 Moved -lpthread to wmake/rules/General/mplib 2018-08-16 13:30:04 +01:00
bce53f1758 Rationalising the mplib files and reinstating support for compiling without MPI 2018-08-16 12:26:16 +01:00
50f5c22c87 wmake/rules: Removed duplicate mplib.* files 2018-08-15 17:27:32 +01:00
5e8593c171 wmake/rules/linux.*Gcc: added -fuse-ld=bfd
to avoid problems on systems which use the gold linker by default.

Resolves request https://bugs.openfoam.org/view.php?id=3006
2018-07-17 23:06:45 +01:00
71a4e548df Updated git hooks to check new header format 2018-07-09 16:59:03 +01:00
bf54ab67e1 Updated OpenFOAM Foundation web-link in headers 2018-07-06 21:42:54 +01:00
89f1053f82 Code style: Fixed formatting of banners 2018-06-19 12:01:50 +01:00
ee4ed5d942 wmake: Correct issues introduced during updates for shellcheck
Patch contributed by Bruno Santos
Resolves bug-report https://bugs.openfoam.org/view.php?id=2983
2018-06-17 20:42:36 +01:00
6db30e661c wmakeLnIncludeAll: Add support for -IlnInclude
Resolves bug-report https://bugs.openfoam.org/view.php?id=2925
2018-05-11 14:40:24 +01:00
0cca225762 wmake.*: Improved robustness and portability using shellcheck 2018-05-03 21:49:07 +01:00
3c000dabec wmake, wmakeLnIncludeAll: Automated the creation of the lnInclude directories based on dependency
Now lnInclude are created as required by the presence of entries in the EXE_INC
variable in the Make/options file.  This removes the need for calling
wmakeLnInclude in various Allwmake files to ensure the existence of the
lnInclude directories prior to compilation of dependent libraries.
2018-05-03 15:59:50 +01:00
3be5e695ec wmkdep: Updated documentation 2018-05-02 09:43:59 +01:00
9ffc025b08 wmkdep: Simplified file scanning for dependencies avoiding too many open files
This change ensures only one include file is open at a time by storing the
included files on a dynamic list rather than scanning the tree and holding a
list of open buffers.  This new approach is a bit faster and avoids the "too
many open files" error on machines with low limits on the number of file
descriptors allocated to users.
2018-05-01 11:12:38 +01:00
60b81b38da wmkdep: Added path string substitution support
to avoid the need for sed'ing the output.  This improves performance by avoiding
the need for calling additional commands and generating a temporary file.
2018-04-18 21:16:25 +01:00
354a5173d9 wmkdep: Removed the unused -i<file> option and other legacy code
The -i<file> option is inconsistent with the -isystem include syntax and would
have to be changed if it were needed.
2018-04-18 12:52:10 +01:00
61f1fe8834 wmake: Improved handling of dependencies when files are removed 2018-04-17 20:38:49 +01:00
adb1a08168 CGAL: Added -DCGAL_NO_DEPRECATED_CODE
Resolves patch request https://bugs.openfoam.org/view.php?id=2869
2018-03-07 21:33:10 +00:00
c41efee594 Added support for the MVAPICH2 MPI implementation 2018-03-07 21:32:19 +00:00
1073607cb0 Corrected spelling and typo's in comments
Resolves bug report https://bugs.openfoam.org/view.php?id=2845
2018-03-05 20:14:28 +00:00
fe1fade8cb Corrected spelling in comments
Resolves bug-report https://bugs.openfoam.org/view.php?id=2844
2018-02-13 20:39:56 +00:00
69635e7ab3 Updated to avoid warnings from gcc-7.1.1 2017-07-31 13:46:42 +01:00
384f9a5cf6 CGAL: Upgraded to 4.10 2017-07-27 14:38:35 +01:00
9213944091 Bash [TAB] completion: enabled for scripts in wmake/ dir 2017-05-31 19:28:28 +01:00
853fa4d5d3 Scripts in wmake: cleaned up options and -help 2017-05-31 16:54:49 +01:00
84f63ba979 Allwmake: Provides clearer message when OpenFOAM environment is not loaded
Patch contributed by Bruno Santos
Resolves patch request https://bugs.openfoam.org/view.php?id=2424
2017-01-28 17:57:13 +00:00
63dee8f2da Updates for clang++-3.9 2017-01-18 18:12:45 +00:00