atanisoft / ESP32CommandStation

An ESP32 based DCC Command Station with integrated OpenLCB (LCC) --- NOTE: this project is not under active development.
https://atanisoft.github.io/ESP32CommandStation/
GNU General Public License v3.0
90 stars 34 forks source link

CMake and VisualGDB support #22

Closed WolfgangGitHub closed 5 years ago

WolfgangGitHub commented 5 years ago

Not sure if this is of interest - this pull request includes a cmake build system and a visual studio project file for building with visual studio + visualgdb plugin. See the README.md within the 'cmake' subdirectory. Just thought to share what I am using.

atanisoft commented 5 years ago

I'll review this further after v1.3.0 has been released, the option of cmake is a good one and will help move from Arduino API to lower level IDF API easier (some code already moved that direction).

One change that is planned for after v1.3.0 is to move away from compile time configuration to a dynamic system via the web interface and a softap. So some of this may become redundant over time.

There are some merge conflicts being reported by GitHub, can you take a look and resolve them?

WolfgangGitHub commented 5 years ago

I think the only TODO left is moving the VisualStudio project and the root cmake CMakeLists.txt file into the project root. Am I missing anything else? I will need a few days to try that.

atanisoft commented 5 years ago

Am I missing anything else? I will need a few days to try that.

I think you got all but one small one which can be done anytime. I'm planning on a release likely this coming weekend for v1.3.0 and then we can look at merging this down to development as part of post-v1.3.0 "cleanup" work (I'll add a note to the todo.md as I'm using that currently for tracking what is going into the releases.

atanisoft commented 5 years ago

@WolfgangGitHub I'm going to close this for now, there are a number of changes in the source tree that are going to cause major conflicts. If you can checkout a new copy/branch from development and pull in the necessary cmake dependencies (there are only three dependent libs and arduino-esp32 now, will be moving to include the dependent libs to lib tree soon)

It would be good to leverage the IDF cmake templates if we can.