Update the build step to use the ninja build system for both Windows and Linux. Also simplifies the build steps and removes things that were not being used.
Also a side note is that on Windows using ninja provides better developer efficiency as it appears to track dependencies better and reduces the amount of things being rebuilt after a first full build unlike Visual Studio which I have experience rebuilding much of the project over repeatedly even though there were no changes to those files. This doesn't help with the build but might help with developers wanting to build grpc-device this way.
Why should this Pull Request be merged?
Build times are reduced using ninja
Windows Average build times
Before Change: 1 hr 30 min
After Change: 50 min (about a 45% build time reduction)
Linux Average build times
Before Change: 1 hr
After Change: 50 min (about a 17% build time reduction)
The steps have been simplified to just cmake command calls making it easier to understand.
Removed things like CMAKE_VERSION which didn't appear to be doing anything as the build before were using the version that was provided by the github provided runner images.
What testing has been done?
PR Build
Windows still specifies using MSVC 19.40.33811.0 for the CC and CXX compilers
Linux still specifies using GNU 9.4.0 for the CC and CXX compilers
What does this Pull Request accomplish?
Update the build step to use the ninja build system for both Windows and Linux. Also simplifies the build steps and removes things that were not being used.
Also a side note is that on Windows using ninja provides better developer efficiency as it appears to track dependencies better and reduces the amount of things being rebuilt after a first full build unlike Visual Studio which I have experience rebuilding much of the project over repeatedly even though there were no changes to those files. This doesn't help with the build but might help with developers wanting to build grpc-device this way.
Why should this Pull Request be merged?
What testing has been done?