Fixes to allow compilation on MacOS #611

Merged
gaisser merged 6 commits from mueller/mac-os into development 2022-05-02 15:22:20 +02:00
Owner

This PR allows compilation of the FSFW with the Host OSAL on the MacOS or on any other Darwin based OS.

Some interesting points

  • Compilation was done with AppleClang version 13.0.0 (LLVM). It has a very useful warning flag on by default: -Winconsistent-missing-override. Some or most GCC warning flags will probably work for clang as well so it might be worth looking into useful additional warning flags for LLVM like it was done for GCC
  • The HAL linux folder could be renamed unix or split up into a linux and a unix folder, where unix contains the files like the termios abstraction and linux contains files which only work on linux systems (e.g. SPI library)
  • Same could be done for the OSAL folder. There are some components which compile but there are also some components like the MQ abstraction which don't work on MacOS (only can use SystemV message queues)
  • clang-tidy is a very useful linter tool which detected a lot of form improvements for the FSFW code
This PR allows compilation of the FSFW with the Host OSAL on the MacOS or on any other Darwin based OS. Some interesting points - Compilation was done with `AppleClang` version 13.0.0 (LLVM). It has a very useful warning flag on by default: `-Winconsistent-missing-override`. Some or most GCC warning flags will probably work for `clang` as well so it might be worth looking into useful additional warning flags for LLVM like it was done for GCC - The HAL `linux` folder could be renamed `unix` or split up into a `linux` and a `unix` folder, where `unix` contains the files like the termios abstraction and `linux` contains files which only work on linux systems (e.g. SPI library) - Same could be done for the OSAL folder. There are some components which compile but there are also some components like the MQ abstraction which don't work on MacOS (only can use SystemV message queues) - `clang-tidy` is a very useful linter tool which detected a lot of form improvements for the FSFW code
muellerr added 3 commits 2022-05-01 20:43:13 +02:00
fsfw/fsfw/pipeline/head There was a failure building this commit Details
afcbc8be0a
changes for MacOS
fsfw/fsfw/pipeline/head There was a failure building this commit Details
7d61e67d20
more macos changes
fsfw/fsfw/pipeline/head There was a failure building this commit Details
fsfw/fsfw/pipeline/pr-development There was a failure building this commit Details
28015c4735
it compiles and runs
Author
Owner

-Winconsistent-missing-override actually does not exist for GCC..

I wonder if there is an equivalent flag

`-Winconsistent-missing-override` actually does not exist for GCC.. I wonder if there is an equivalent flag
muellerr added 1 commit 2022-05-02 09:10:14 +02:00
fsfw/fsfw/pipeline/pr-development This commit looks good Details
77450eb4b7
removed flag which does not exist
muellerr added 6 commits 2022-05-02 09:35:37 +02:00
fsfw/fsfw/pipeline/head This commit looks good Details
fsfw/fsfw/pipeline/pr-development This commit looks good Details
64f0166b64
hotfix for new ETL dependency
fsfw/fsfw/pipeline/pr-development This commit looks good Details
17e609c3a5
some more var replacements
fsfw/fsfw/pipeline/pr-development This commit looks good Details
b00d83cb1a
bump ETL revision
fsfw/fsfw/pipeline/pr-development This commit looks good Details
6aa72892ed
clean usage of FetchContent_MakeAvailable
muellerr added a new dependency 2022-05-02 09:36:00 +02:00
muellerr removed a dependency 2022-05-02 09:36:19 +02:00
muellerr added a new dependency 2022-05-02 09:36:44 +02:00
muellerr added 1 commit 2022-05-02 15:15:59 +02:00
fsfw/fsfw/pipeline/pr-development This commit looks good Details
cddf16f941
Merge branch 'development' into mueller/mac-os
gaisser approved these changes 2022-05-02 15:21:47 +02:00
gaisser left a comment
Owner

LGTM

LGTM
gaisser added the
cosmetics
label 2022-05-02 15:21:55 +02:00
gaisser added this to the v5.0.0 milestone 2022-05-02 15:21:59 +02:00
gaisser merged commit c295539c79 into development 2022-05-02 15:22:20 +02:00
gaisser deleted branch mueller/mac-os 2022-05-02 15:22:24 +02:00
gaisser added the
bug
label 2022-05-02 15:22:52 +02:00
Sign in to join this conversation.
No description provided.