Commit Graph

53 Commits

Author SHA1 Message Date
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
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
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
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
63dee8f2da Updates for clang++-3.9 2017-01-18 18:12:45 +00:00
0568f8b42d wmake: Removed redundant QUIET_OP 2016-11-14 08:39:55 +00:00
cebac21893 wmake: Moved wmkdep messages into rules/General/transform makefile 2016-11-14 08:32:30 +00:00
32990e2898 wmake: Declare all makefiles to be specifically GNU make files 2016-11-13 15:18:09 +00:00
2b3f1d6a41 wmake: Simplified QUIET_MESSAGE function 2016-11-13 11:19:29 +00:00
b6d061cac8 wmake/rules/General/yacc: Added QUIET_MESSAGE 2016-11-13 10:23:53 +00:00
a0094dee38 wmake: Update '-s' option to print the files processed without the rules
Based on patch contributed by Alexey Matveichev
Resolves feature request http://bugs.openfoam.org/view.php?id=2328
2016-11-12 22:01:44 +00:00
a8e62ec9db wmake/rules/General/transform: added filter for third-party paths
Resolves bug-report http://bugs.openfoam.org/view.php?id=2283
2016-10-09 15:14:19 +01:00
f7fb15fa39 icpc rules: removed another unimportant warning 2016-10-04 08:10:28 +01:00
cf3d45016a wmake/rules/linux64.*KNL: Improved optimization option for Intel MIC (Knights Landing) processor
Patch contributed by Paul Edwards, Intel.
2016-08-22 16:27:46 +01:00
7c8c4d73da wmake/rules/linux.*Icc: Removed a new unhelpful warning message 2016-08-11 16:25:53 +01:00
618753c5b4 C++11: Update compilation rules to specify C++11 support and conformance
The change from C++0x to C++11 allows all of C++11 functionality to be
used in OpenFOAM, in particular constructor delegation which avoids code
duplication or constructor helper functions.  However, this also means a
change to the minimum gcc version supported which is now 4.7 rather than
4.5.

Note that gcc-4.7 does not support the entire C++11 standard but does
support all of the functionality currently needed for further OpenFOAM
development.  The minimum gcc-version which supports the entire C++11
standard is 4.8 which is now the recommended minimum gcc version.
2016-08-05 16:28:19 +01:00
4f6117e973 wmake/rules/linux.*Icc: Updated for icpc (ICC) 16.0.3 20160415 2016-07-28 13:47:44 +01:00
f29bc66073 wmake/rules/General: Add support for WM_SCHEDULER to the compilation of lex, yacc and moc files 2016-07-03 22:21:02 +01:00
35e6c03eab foamyMesh: Simplify support for system CGAL installation 2016-06-21 19:47:46 +01:00
95b0f41c0f wmake/rules/General/CGAL: lib -> lib64 on 64bit OSs
Patch contributed by Bruno Santos
Resolves patch request http://bugs.openfoam.org/view.php?id=2114
2016-06-09 14:34:26 +01:00
6316230df7 wmake/rules/linux64GccKNL: Optimized compilation options for the Knights Landing MIC processor 2016-06-04 10:13:22 +01:00
b68873d570 wmake/rules/linux64KNLIcc: Optimized compilation options the for Knights Landing MIC processor
Patch contributed by Paul Edwards, Intel
2016-06-03 15:29:14 +01:00
5510c7e62a wmake/rules/linux.*Icc: Remove -xHost option which causes surfaceFeatureExtract to fail for some cases 2016-04-25 22:29:22 +01:00
fec34404a8 wmake/rules/linux64Clang/c++Opt: Removed temporary line 2016-04-03 14:46:45 +01:00
3ae3d04bb3 wmake/rules/linux64Icc: avoid uninteresting warning messages and change to -O3 2016-04-01 14:53:43 +01:00
d138d0b949 wmake: Add support for compiler type default rules
which may be optionally overridden by version-specific rules.

For example the default rules for gcc on GNU/Linux x86_64 are in the
wmake/rules/linux64Gcc directory.  If there is a need to change any of
the rules for a specific version of gcc, e.g. gcc-4.8.4 the directory
wmake/rules/linux64Gcc48 may be created into which any of the language
files may be provided containing the rules to override the defaults.
2016-01-24 14:10:07 +00:00
fba6cd961a wmake/rules: Add -std=c++0x to formally enable support for of C++11 features
The c++0x is used rather than c++11 to support gcc-4.5.?
2016-01-10 19:17:31 +00:00
f7d3901cbf CGAL: Upgrade to 4.7 2015-10-23 17:25:59 +01:00
82855f6aca Renamed file
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1846
2015-09-13 21:21:51 +01:00
2ead55ceb9 wmake/rules/linuxPPC64leGcc/linuxPPC64leGcc: Updated link options
Patch provided by Bruno Santos
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1846
2015-09-12 23:32:11 +01:00
36ae54f803 Resolve various unimportant warning messages from Gcc, Clang and Icpc 2015-07-19 11:31:49 +01:00
8641e77bb7 Updated warning suppression for CGAL 2015-07-17 23:10:10 +01:00
155527d528 Suppress compiler warnings from CGAL 2015-07-17 21:38:25 +01:00
d0b7597873 Icpc 15: -no-prec-div optimization causes snappyHexMesh to fail -- removed 2015-07-17 19:34:19 +01:00
80bf93b496 wmake rules for icpc: suppress warnings from CGAL 2015-07-17 18:27:30 +01:00
e6e7820ae5 Upgrade Intel C++ compiler to icpc (ICC) 15.0.3 20150407
This resolves a whole range of issues and work-arounds with earlier
releases.  This version of icpc is more or less compatible with the
latest gcc and clang compilers and only required one hack to avoid
warnings from PackedBoolList.H.
2015-07-17 16:50:40 +01:00
77bf182edc Resolved issues with virtual function inheritance and warning from clang
Also removed __GNUC__ conditional compilation statements which are no
longer needed.
2015-07-17 12:11:37 +01:00
986a4f9611 Added support for the PPC64le architecture
Resolves feature request http://www.openfoam.org/mantisbt/view.php?id=1759
2015-06-23 11:26:18 +01:00
6281619fb9 Upgraded gcc from 5.0.0 to 5.1.0 2015-05-18 22:35:48 +01:00
372dc26c8d int32: Add IO operators for long on 32bit OS
On 32bit OSs long is not unambiguously int32_t (or int64_t) causing
problems for IO operator resolution.  This problem is avoided by
explicitly defining the following operators:
2015-05-16 15:29:34 +01:00
339c1e2a3d MPI configuration: Added support for SYSTEMMPI
Provided by Bruno Santos
Also some general cleaning and update of comment.
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1167
2015-03-08 21:04:38 +00:00
d2fbdcb9a9 Added support for gcc-5.0.0
Tested with snapshot gcc-5-20150215.tar.bz2
2015-02-23 08:44:18 +00:00
2c25b8db52 Add support for reading and updating the debug switches of templated
classes in the DebugSwitches sub-dictionary of system/controlDict
2015-02-04 22:08:27 +00:00
53a0e4a2f3 Icc support: added floating-point exception trapping and accurate maths
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1432
2015-01-28 09:18:47 +00:00
2a614865ff Added and verified support for 64bit labels
To compile with 64bit labels set

WM_LABEL_SIZE=64

in ~/OpenFOAM/dev/prefs.sh

source ~/.bashrc

then Allwmake in OpenFOAM-dev.

This will build into for example OpenFOAM-dev/platforms/linux64ClangDPInt64Opt

If WM_LABEL_SIZE is unset or set to 32:

WM_LABEL_SIZE=32

the build would be placed into OpenFOAM-dev/platforms/linux64ClangDPInt32Opt

Thus both 32bit and 64bit label builds can coexist without problem.
2014-12-31 19:02:52 +00:00
3d30a05a92 Renamed -frounded-math option 2014-12-16 08:37:25 +00:00