Remove ObjectCreator from main cdda solution #61274
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
None
Purpose of change
@ZhilkinSerg made a comment in #60385 which made me go back and verify some assumptions I'd made when adding ccache support. I thought the only way to get rid of the separate ObjectCreator build would be to add it to the main cdda solution because Visual Studio wouldn't reuse artifacts between solutions, even for the same project. MSBuild, however, is not Visual Studio and will happily do so, as I found out earlier when playing with some changes. Removing ObjectCreator from the main solution helps in the general case because it reduces the disk space usage and overhead of the easy 'build solution' button and other ways one can accidentally trigger building ObjectCreator from VS.
Describe the solution
Remove ObjectCreator from the main cdda solution. In the msvc-full-features workflow, call msbuild twice to build first cdda & tests, and secondly ObjectCreator itself from its own solution. This works A-OK.
Describe alternatives you've considered
Testing
https://github.com/akrieger/Cataclysm-DDA/actions/runs/3124402835/jobs/5067727146 passed and did the sensible thing when pushed to my repo.
Additional context