open-simulation-platform / libcosim

OSP C++ co-simulation library
https://open-simulation-platform.github.io/libcosim
Mozilla Public License 2.0
61 stars 10 forks source link

Autogenerate thrift service classes, clean up CMakeLists and update some packages #589

Closed kyllingstad closed 4 years ago

kyllingstad commented 4 years ago

This PR became a mish-mash of different things that we did during yesterday's mob session. It started as an attempt to update some packages, and ended with us removing the generated Thrift files from source control and replacing them with the service definition.

After the mob session, I've just reorganised src/CMakeLists.txt a bit so it's easier to follow.

This fixes #414 and #563.

kyllingstad commented 4 years ago

320 lines added, 17,092 lines removed

😁

kyllingstad commented 4 years ago

The CMake builds are failing because the OS provides an older version of MS-GSL where final_action is still called final_act. What to do? Revert to the old version in Conan again too?

markaren commented 4 years ago

Looks good. Will check it out once the build goes green.

ljamt commented 4 years ago

Looks good. Will check it out once the build goes green.

The conan builds are green and ready for testing. The CMake pipeline needs a fix related to ms-gsl

The CMake builds are failing because the OS provides an older version of MS-GSL where final_action is still called final_act. What to do? Revert to the old version in Conan again too?

Reverting to old version in Conan should work, but I'm really not sure whats the best solution here.

hplatou commented 4 years ago

The CMake builds are failing because the OS provides an older version of MS-GSL where final_action is still called final_act. What to do? Revert to the old version in Conan again too?

I guess we have to make a decision of what to support. On Ubuntu 18.04 and prior versions, MS-GSL is only available in a pre 1.0 version (using final_act). Ubuntu 20.04 has version 2.1.0. My suggestion it to go with the 2.1.0 and require that to be manually installed on earlier releases.