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

Dllbuild #52

Merged
merged 14 commits into from
Mar 5, 2024
Merged

Dllbuild #52

merged 14 commits into from
Mar 5, 2024

Conversation

roblabla
Copy link
Member

This adds a new kind of build, the dllbuild. This generates a DLL that can be injected into the original game and replace the implemented functions with our own.

It comes with several caveats that need to be documented before merging.

@wearrrrr
Copy link
Contributor

Overall looks very good to me :D

@roblabla roblabla force-pushed the dllbuild branch 2 times, most recently from b98a96f to 33c89e0 Compare January 1, 2024 18:16
@roblabla roblabla force-pushed the dllbuild branch 8 times, most recently from af6c6ce to 0e122dc Compare February 17, 2024 22:29
roblabla added 14 commits March 5, 2024 23:22
For the upcoming DLL build feature, we will need to export all of the
functions we reimplement. We could do this in two ways: We could either
manually add __dllexport to every single function, or we could do it
automatically by generating a def file from the object files that is
passed to the link.

We'll go with this route because god is maintaining a bunch of dllexport
unsexy.
If a function is both implemented.csv and stubbed.csv, it will now stub
it in generate_detours, but will avoid generating a stub (as that would
create a duplicate symbol linker error). This can be useful to debug
broken functions.
@roblabla roblabla merged commit 0ab9e55 into happyhavoc:master Mar 5, 2024
5 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.

2 participants