... | ... | @@ -78,6 +78,40 @@ Windows 64bit binaries can be generated on 64bit Linux by |
|
|
|
|
|
## ![>](/icons/settings.svg) Tuning
|
|
|
|
|
|
### Different configurations
|
|
|
<a name="different-configs"></a>
|
|
|
|
|
|
Sometimes it is useful to switch between entire sets of configuration
|
|
|
preferences without re-editing the files each time. This is the
|
|
|
purpose of the `FOAM_CONFIG_ETC` variable. It specifies an absolute
|
|
|
path, or a path relative to the project directory where various
|
|
|
configuration files can be found. These are selected in preference to
|
|
|
the normal shipped configuration files.
|
|
|
|
|
|
This allows swapping in a set of different preferences without
|
|
|
modifying the regular settings.
|
|
|
See [cross-compilation](/building/cross-compile-mingw) for an example
|
|
|
of its use.
|
|
|
|
|
|
|
|
|
### Processor-specific handling
|
|
|
<a name="processor-specific-handling"></a>
|
|
|
|
|
|
Processor-specific builds are typically handled by creating a new
|
|
|
compilation option. For example, to create Broadwell-specific options:
|
|
|
```
|
|
|
$ cd wmake/rules/linux64Gcc
|
|
|
$ cp c++Opt c++OptBdw
|
|
|
```
|
|
|
edit this file and then use WM_COMPILE_OPTION=OptBdw in the `prefs.sh`
|
|
|
before re-sourcing the OpenFOAM environment.
|
|
|
|
|
|
Since OpenFOAM is purely C++ code, there is no need to apply special
|
|
|
processor-specific optimizations for C code (the regular `-O2`
|
|
|
optimization is fine) since these components only appear as part of the
|
|
|
wmake build toolchain itself.
|
|
|
|
|
|
|
|
|
### Different compiler versions
|
|
|
<a name="different-compiler-versions"></a>
|
|
|
|
... | ... | @@ -159,25 +193,9 @@ example: |
|
|
For older versions, `which $(wmake -show-cxx)` instead.
|
|
|
|
|
|
|
|
|
### Different configurations
|
|
|
<a name="different-configs"></a>
|
|
|
|
|
|
Sometimes it is useful to switch between entire sets of configuration
|
|
|
preferences without re-editing the files each time. This is the
|
|
|
purpose of the `FOAM_CONFIG_ETC` variable. It specifies an absolute
|
|
|
path, or a path relative to the project directory where various
|
|
|
configuration files can be found. These are selected in preference to
|
|
|
the normal shipped configuration files.
|
|
|
|
|
|
This allows swapping in a set of different preferences without
|
|
|
modifying the regular settings.
|
|
|
See [cross-compilation](/building/cross-compile-mingw) for an example
|
|
|
of its use.
|
|
|
|
|
|
|
|
|
--------
|
|
|
|
|
|
Copyright (C) 2020 OpenCFD Ltd.
|
|
|
Copyright (C) 2020-2021 OpenCFD Ltd.
|
|
|
|
|
|
[all-repos]: https://develop.openfoam.com/Development/
|
|
|
|
... | ... | |