Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build using Ninja on Windows and Linux Desktop #1071

Merged
merged 10 commits into from
Jul 2, 2024

Conversation

maxxboehme
Copy link
Collaborator

@maxxboehme maxxboehme commented Jul 1, 2024

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?

  • 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

@maxxboehme maxxboehme changed the title Build on Windows using Ninja Build using Ninja Jul 2, 2024
@maxxboehme maxxboehme marked this pull request as ready for review July 2, 2024 05:04
@maxxboehme maxxboehme changed the title Build using Ninja Build using Ninja on Windows and Linux Desktop Jul 2, 2024
@reckenro
Copy link
Collaborator

reckenro commented Jul 2, 2024

This one's good to go whenever you're ready since Alex is out.

@maxxboehme maxxboehme merged commit c69d59a into ni:main Jul 2, 2024
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants