test MacOS mojave on CI
Summary
Patches and fixes for otb compilation on MacOS Mojave
On my fork (ctraizet/otb), leod (macOS ElCapitan) is disabled, and maki (macos Mojave) is enabled, so CI is testing this MR on Mojave!
Rationale
OTB is currently tested on MacOS ElCapitan, which is a (relatively) old version of MacOS. We now have a computer running Mac Mojave available for the CI !
However this requires some modifications in the library, in particular because of the more recent version of xcode.
Implementation Details
-
CURL : set
CURL_CA_PATH
to none : this variable is only used if we enable openSSL, which is not the case on MacOS (we use DarwinSSL, the native ssl of macos instead). If a CA path is found (CURL_CA_PATH
is set to auto by default), cmake configuration will throw an error. -
QT5 : we need to apply this patch, See QT wiki :
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
@@ -824,7 +824,7 @@ void QCoreTextFontEngine::getUnscaledGlyph(glyph_t glyph, QPainterPath *path, gl
QFixed QCoreTextFontEngine::emSquareSize() const
{
- return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
+ return QFixed(int(CTFontGetUnitsPerEm(ctfont)));
}
-
Set the OpenGL include dir manually in CI for MacOS, as it is not at the standard location (
/System/Library
) with the deprecation of OpenGL in Mojave. we can find the headers in xcode XDKs -
Adds compatibility for swig 4.0 (removal of
__swig_setmethods__
and__swig_getmethods__
)
Copyright
The copyright owner is CNES and has signed the ORFEO ToolBox Contributor License Agreement.
Check before merging:
- All discussions are resolved
- At least 2
👍 votes from core developers, no👎 vote. - The feature branch is (reasonably) up-to-date with the base branch
- Dashboard is green
- Copyright owner has signed the ORFEO ToolBox Contributor License Agreement
- Optionally, run
git diff develop... -U0 --no-color | clang-format-diff.py -p1 -i
on latest changes and commit