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
Merge request reports
Activity
changed milestone to %7.1.0
added ci label
assigned to @ctraizet
added 1 commit
- 00fce6b9 - BUG: add path to OpenGL headers in macos ci scripts
added 1 commit
- f5d78e77 - CI: set debug 1 in prepare superbuild (test)
added 1 commit
- 8d87113b - Revert "CI: set debug 1 in prepare superbuild (test)"
added 1 commit
- 71233da4 - CI: test prepare build with .ssh/config set on maki
added 1 commit
- cc2845b7 - Revert "CI: test prepare build with .ssh/config set on maki"
added 1 commit
- c6c31f0e - CI: remove DiapOTB from CI (doesn't compile because of openMP)
added 1 commit
- 0e0add6c - COMP: GLEW_LIBRARY is not necessarily set by find_package(GLEW) (e.g. in config mode)
added 1 commit
- e6413d0c - BUG: do not check if the attribute is in __swig_setmethods__ if it does not exists (fix for swig 4)
added 1 commit
- 7598a7c9 - BUG: do not check if the attribute is in __swig_getmethods__ if it does not exists (fix for swig 4)
added 32 commits
-
7598a7c9...6aca6c3e - 27 commits from branch
orfeotoolbox:develop
- 883df604 - BUG: use baseline of size 50x50 because size 100x100 causes overflow problems...
- 0574196e - ENH: remove unused baselines
- 785f1d48 - PERF: apply compression on new baselines (gdal_translate -co COMPRESS=lzw)
- 0af284d9 - Merge remote-tracking branch 'origin' into ci_mojave
- 442fc569 - Merge remote-tracking branch 'origin/short_overflow_in_tests' into ci_mojave
Toggle commit list-
7598a7c9...6aca6c3e - 27 commits from branch
added 15 commits
-
35e245e5 - 1 commit from branch
orfeotoolbox:develop
- 75ed6308 - ENH: seet CURL_CA_PATH to none for macOS, to avoid an error in cmake configure...
- 09e7a177 - BUG: added patch for qt compilation on macos, see https://wiki.qt.io/Qt_5.9.5_Known_Issues
- e7e6d4f5 - BUG: add path to OpenGL headers in macos ci scripts
- 7ea4a46d - CI: set debug 1 in prepare superbuild (test)
- 4330c8a1 - Revert "CI: set debug 1 in prepare superbuild (test)"
- 51478f81 - CI: test prepare build with .ssh/config set on maki
- 888ff952 - Revert "CI: test prepare build with .ssh/config set on maki"
- ab305227 - CI: remove DiapOTB from CI (doesn't compile because of openMP)
- 96a5f7ec - COMP: GLEW_LIBRARY is not necessarily set by find_package(GLEW) (e.g. in config mode)
- 849c1499 - Revert "COMP: GLEW_LIBRARY is not necessarily set by find_package(GLEW) (e.g. in config mode)"
- fe47f066 - BUG: glew-config.cmake import GLEW::GLEW taget but does not necessarily set GLEW_LIBRARY
- cef570b0 - BUG: do not check if the attribute is in __swig_setmethods__ if it does not exists (fix for swig 4)
- 82169c06 - BUG: do not check if the attribute is in __swig_getmethods__ if it does not exists (fix for swig 4)
- 038e8a48 - CI: add diapotb to the list of remote modules tested in CI (see merge request 671)
Toggle commit list-
35e245e5 - 1 commit from branch
added 16 commits
-
038e8a48...543b4a90 - 2 commits from branch
orfeotoolbox:develop
- de01b1bb - ENH: seet CURL_CA_PATH to none for macOS, to avoid an error in cmake configure...
- e1c7d737 - BUG: added patch for qt compilation on macos, see https://wiki.qt.io/Qt_5.9.5_Known_Issues
- cd04a263 - BUG: add path to OpenGL headers in macos ci scripts
- 70ccd1af - CI: set debug 1 in prepare superbuild (test)
- 9424c82a - Revert "CI: set debug 1 in prepare superbuild (test)"
- 92cdae12 - CI: test prepare build with .ssh/config set on maki
- 28872c03 - Revert "CI: test prepare build with .ssh/config set on maki"
- 0355a07b - CI: remove DiapOTB from CI (doesn't compile because of openMP)
- 3da0cd4d - COMP: GLEW_LIBRARY is not necessarily set by find_package(GLEW) (e.g. in config mode)
- 759b845c - Revert "COMP: GLEW_LIBRARY is not necessarily set by find_package(GLEW) (e.g. in config mode)"
- ca038be5 - BUG: glew-config.cmake import GLEW::GLEW taget but does not necessarily set GLEW_LIBRARY
- b7fd6efb - BUG: do not check if the attribute is in __swig_setmethods__ if it does not exists (fix for swig 4)
- ad73d57d - BUG: do not check if the attribute is in __swig_getmethods__ if it does not exists (fix for swig 4)
- 7a8e18ce - CI: add diapotb to the list of remote modules tested in CI (see merge request 671)
Toggle commit list-
038e8a48...543b4a90 - 2 commits from branch
mentioned in commit 47fab288
mentioned in merge request !674 (merged)