Skip to content

Commit c051cf1

Browse files
authored
Changes for Release 1.2.9 (Merge PR GeoscienceAustralia#302)
## Overview This release includes substantial changes designed to (1) improve run-time efficiency and stability, (2) simplify code complexity, (3) improve platform independent compilation, (4) permit the optional selection of Intel MKL or OpenBLAS for DynAdjust linear algebra operations, (5) improve automated testing, and (6) auto-build statically-linked and dynamically-linked binaries for Linux, Mac and Windows with either Intel MKL or OpenBLAS. No functional changes have been made, except for minor enhancements and fixes to defects. ### 1. Run-time efficiency and stability ### - Improve CMake configuration files (throughout) and C++ compiler flags to optimise run-time speeds - Strengthen scheduling, execution of, and messaging between multiple threads ### 2. Simplify code complexity ### - Refactor large source code files into smaller files, separating logical components - Refactor code to enable multiple solver algorithms ### 3. Platform independent compilation ### - Significant improvements to enable compilation on multiple platforms - The source code project is now completely handled by CMake, removing all dependency upon Microsoft Visual Studio solution and project files. This eliminates maintenance complexity and duplication of effort. ### 4. Optional selection of Intel MKL or OpenBLAS ### - Automatic identification of installed libraries - Permit selection of preferred linear algebra library (Intel MKL or OpenBLAS) ### 5. Automated testing ### - New GitHub workflows to test the full suite of functionality in all configurations - Improved CMake testing - New CTests ### 6. Auto-building of binaries ### - New GitHub workflows to auto-build binaries for all configurations - Statically-linked and dynamically-linked binaries - Support for Linux, Mac and Windows - Support for building either Intel MKL or OpenBLAS. ### Minor enhancements and fixes - Fix handling of file epoch for static datums - Handle Y clusters with ellipsoid height (for Y Clusters in LLH format) - Improve debug output and printing of computed LLH values - Improve LICENSE and README - General tidy up of header includes (and there's more work to do)
2 parents 0a9c811 + d890f6d commit c051cf1

File tree

303 files changed

+42057
-35327
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

303 files changed

+42057
-35327
lines changed

.clang-format

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
BasedOnStyle: Google
2+
Language: Cpp
3+
IndentWidth: 4
4+
TabWidth: 4
5+
ColumnLimit: 120
6+
UseTab: Never
7+
PointerAlignment: Left
8+
SortIncludes: true
9+
ReflowComments: true
10+
IndentCaseLabels: false
11+
SpaceBeforeParens: ControlStatements
12+
SpaceBeforeCtorInitializerColon: false
13+
BraceWrapping:
14+
AfterClass: false
15+
AfterControlStatement: false
16+
AfterEnum: false
17+
AfterFunction: false
18+
AfterNamespace: false
19+
AfterStruct: false
20+
AfterUnion: false
21+
IndentBraces: false
22+
BeforeElse: false
23+
BeforeCatch: false
24+
#IndentPPDirectives: BeforeHash
25+
AlignAfterOpenBracket: Align
26+
AllowAllParametersOfDeclarationOnNextLine: false
27+
AllowShortBlocksOnASingleLine: true
28+
AllowShortCaseLabelsOnASingleLine: true
29+
AllowShortFunctionsOnASingleLine: All
30+
PenaltyExcessCharacter: 100
31+
PenaltyReturnTypeOnItsOwnLine: 1

0 commit comments

Comments
 (0)