-
-
Notifications
You must be signed in to change notification settings - Fork 589
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
[Bindings] Build profile now strips methods and skip files #1675
Conversation
83210b2
to
2d9f151
Compare
Tried with my project which only has
Which I think was needed by error macros, which need to use the print function, which uses After that, the project compiled successfully. This is what got compiled (I only deleted the
So that could fix #1674. However I later noticed that if I run SCons again, it keeps compiling the same files again, even if I haven't changed any file. Shouldn't it compile only what changed? Is something breaking that detection? |
I had a CMake solution working with build profiles prior to this, and now I get link errors. I need to investigate but Christmas is denying me the time. I'm hoping to investigate why, but it will take me a week at least. |
Turns out I had a moment, I can get it to compile by adding all the failed link classes to the json file. |
Figured out what I needed to change, I didnt initially notice that the function signature for Though I do receive a bunch of warnings from VS about files that are not created. I dont get such warnings from Ninja.
This is of course because the generation logic has changed, and skips generating files for some predicates. From what it looks like from git history, the print_file_list function was created to support binding generation from CMake such that it wont re-attempt generation if the files exist already. As files listed are not generated, it will trigger a re-gen every time, altering timestamps and causing an unnecessary re-build. This might be the case in scons too, because I get a re-build everytime, where prior profile code would not. |
This allows removing dependencies that are not explicitly unused by the gdextension being built.
2d9f151
to
d2943a7
Compare
Ah, indeed, I missed a change in |
We had a script to check the file list in CI ( We should re-add it, and probably the the build profile too with it. |
Done as a separate commit. |
Confirmed with these changes I do not have to modify the build_profile.json, and I no longer get the warnings. Depending on the order of merge, I will update my CMake profile branch. |
Superseded by #1680 |
This allows removing dependencies that are not explicitly unused by the gdextension being built.