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

CMake/Docker Support #1

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

Spirrwell
Copy link

@Spirrwell Spirrwell commented Dec 25, 2023

This is CMake support that I brought over from my source-sdk-2013-cmake fork here: https://github.com/Spirrwell/source-sdk-2013-cmake

This is slightly more polished. There's also support for VSCode's devcontainer stuff. So, you should be able to open SP or MP in VSCode in the devcontainer and just build for Linux. I know this is a VS2022 repo, but it'll probably be useful to someone. I haven't tried the VS WSL integration for building, so maybe it would be useful for that.

I haven't touched VPC, or changed the project creation scripts. I wasn't sure whether I should try to add a CMakePresets.json or not. But, the general usage is:

mkdir build
cd build
cmake .. -A Win32 -DBUILD_GROUP=everything -DBUILD_GAME=episodic

I believe the only code changes are in ai_behavior_lead.cpp and SP's memoverride.cpp. I would get build errors related to these undefs in ai_behavior_lead.cpp. I assume it has to do with precompiled header differences. I haven't tested the VPC build because I don't feel like hunting down the necessary registry edits to get VPC to generate, lol.

Let me know if there's anything else you want.

EDIT: As an added note, I don't believe this has all the MSVC warnings disabled that would be disabled in VPC. Dunno if you'd want to change this or not.

@ozxybox
Copy link
Member

ozxybox commented Jan 2, 2024

Sorry I didn’t see this sooner! I must’ve missed the email somehow!

This is some fantastic work! I do want to make sure this particular repo is simplistic just so that newcomers can fork it and move on, but would you be interested in having a repo on this org for this work? It perfectly fits the goal of this org!

At some point I need to make one big repo for all of the work on this org :P

@Spirrwell
Copy link
Author

Spirrwell commented Jan 2, 2024

Sure, I could shove my CMake support onto its own repo here if you want and close this pull request.

EDIT: Oh, and I also wanted to do CMake scripts for the other repos here. If I were to make my own repo, not sure how you'd want me to go about that.

@ozxybox
Copy link
Member

ozxybox commented Jan 2, 2024

I've invited you to the org so that you can make repos and whatnot. It might be nice to have the cmake scripts for those other repos on branches? Not totally sure. I want to make sure most people can just copy paste without too many extra files. I greatly prefer using cmake though...
Also I'll make a group chat with JJ

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