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
changes for MacOS
Some checks failed
fsfw/fsfw/pipeline/head There was a failure building this commit
afcbc8be0a
more macos changes
Some checks failed
fsfw/fsfw/pipeline/head There was a failure building this commit
7d61e67d20
it compiles and runs
Some checks failed
fsfw/fsfw/pipeline/head There was a failure building this commit
fsfw/fsfw/pipeline/pr-development There was a failure building this commit
28015c4735
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
removed flag which does not exist
All checks were successful
fsfw/fsfw/pipeline/pr-development This commit looks good
77450eb4b7
muellerr added 6 commits 2022-05-02 09:35:37 +02:00
hotfix for new ETL dependency
All checks were successful
fsfw/fsfw/pipeline/head This commit looks good
fsfw/fsfw/pipeline/pr-development This commit looks good
64f0166b64
some more var replacements
All checks were successful
fsfw/fsfw/pipeline/pr-development This commit looks good
17e609c3a5
bump ETL revision
All checks were successful
fsfw/fsfw/pipeline/pr-development This commit looks good
b00d83cb1a
clean usage of FetchContent_MakeAvailable
All checks were successful
fsfw/fsfw/pipeline/pr-development This commit looks good
6aa72892ed
Merge remote-tracking branch 'origin/mueller/hotfix-etl' into mueller/mac-os
Some checks are pending
fsfw/fsfw/pipeline/pr-development Build queued...
fea301bcc9
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
Merge branch 'development' into mueller/mac-os
All checks were successful
fsfw/fsfw/pipeline/pr-development This commit looks good
cddf16f941
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.