Skip to content

Conversation

@Phatcat
Copy link
Contributor

@Phatcat Phatcat commented May 10, 2025

Issue: Spark_generated.h and similar headers generated during compile is not waited upon by msvc even when setting the target as a dependency.

Solution: Make a post-generation target and make the modules depend upon that instead as that will force msvc to ensure the headers are actually generated before they're needed.

Windows should now successfully build the first time. This is crucial preliminary work for the windows buildrunner as it cannot fail any step unlike locally where we can just re-build (as msvc seems to generate them right after they're needed and then failing, but them now existing in the build directory so a subsequent dirty build will succeed).

Also pulled out the schema headers from where they are actually not needed, only 2 modules depend upon them; rpcgen and spark.

@Phatcat Phatcat changed the title cmake linking - the final push [msvc] cmake linking: msvc will not wait for spark_generated.h to be generated without setting post-generation target as dependency May 10, 2025
@Phatcat Phatcat changed the title [msvc] cmake linking: msvc will not wait for spark_generated.h to be generated without setting post-generation target as dependency [msvc] cmake linking: msvc will not wait for spark_generated.h to be generated without creating and setting post-generation target as dependency May 10, 2025
@Phatcat Phatcat marked this pull request as draft May 12, 2025 21:24
@Phatcat Phatcat force-pushed the cmake_msvc branch 2 times, most recently from 57f0641 to 72d31b3 Compare May 12, 2025 23:02
@Phatcat Phatcat marked this pull request as ready for review May 12, 2025 23:08
@Phatcat Phatcat marked this pull request as draft May 13, 2025 00:09
@Phatcat Phatcat force-pushed the cmake_msvc branch 4 times, most recently from dfd69d3 to 5906694 Compare May 29, 2025 04:48
… rpcgen

Make a post-generation target and make the modules depend upon that instead as that will force msvc to ensure the headers are actually generated before they're needed.
Windows should now successfully build the first time.

Also pulled out the schema headers from where they are actually not needed, only 2 modules depend upon them; rpcgen and spark.
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.

1 participant