-
Notifications
You must be signed in to change notification settings - Fork 92
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
OS X Packaging (Q2Pro.app) #106
base: master
Are you sure you want to change the base?
Conversation
src/baseq2/g_cmds.c
Outdated
@@ -355,7 +355,7 @@ void Cmd_Noclip_f(edict_t *ent) | |||
msg = "noclip ON\n"; | |||
} | |||
|
|||
gi.cprintf(ent, PRINT_HIGH, msg); | |||
gi.cprintf(ent, PRINT_HIGH, "%s", msg); | |||
} | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix compiler warnings about print format attribute.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please don't fix spurious warnings like this one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, boss.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sarcasm? I'd recommend splitting the series into "fix clang warnings" and "implement OSX .app
packaging".
You know, the garbled textures on the mesh models might be due to it attempting to load the high-res texture for the Generations Arena model onto the stock .md2 mesh. I have What's the preferred way to add 3rd party pak files to override stock content? |
The menus aren't showing up most likely because you're missing the q2pro.menu file baseq2. I've noticed you just don't get any menus when that's missing. |
…so, set sane defaults for basedir and libdir.
rsync -rzhP $(DIST) $(HTTP_TARGET) | ||
|
||
clean: | ||
rm -rf $(TARGET)/* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is based on the packaging I've created for Quake II, Quetoo, GtkRadiant, etc.. It uses dylibbundler
to find, copy and fix dynamically linked dependencies.
if prompt(messages.textures, 'y') == 'y': | ||
rsync(config.textures) | ||
|
||
print messages.end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the game data installation script I developed for my AprQ2 fork. Users can run this to optionally install the 3.20 point release, the game demo, CTF, high res textures, Generations Arena models, etc.. It's like Q2Starter for Apple and Linux.
A compiled OS X application bundle from this branch can be found here: http://quetoo.org/files/Q2Pro.dmg To keep the file size down, I did not include any game data resources. So to test this, you'll need a "populated" |
Thanks for the easy app setup. I was able to make mine Snow Leopard compatible with this .config for q2pro:
And of course, one little tweak to Info.plist:
|
Only with Also I see that the pull request doesn't use |
@sthalik Good call, I thought there was some problem with OpenAL and Snow Leopard because I was having linking errors... it turns out I had somehow gotten an old 32-bit version in my /Library/Frameworks, but the one in /System/Library/Frameworks works okay (and MacPorts openal-soft works great). So I got rid of the bad framework and added this to my
The I didn't realize this pull request was from 2016; you can probably drop everything except the |
@Raptor007 openal is LGPL 2 so you may even link it statically without caring. But for dylibs I recommend using |
@sthalik It looks like |
Hah! I had forgotten that I ever opened this PR. I still use a similar packaging strategy (Makefile + I do recommend using Of course, Apple just announced that they're killing OpenGL support, so.. this is all moot ;) |
Not really. Just wait for a GL -> Metal layer like people use for Vulkan already. |
Strip quotes from ‘if’ command arguments.
This PR fixes some Clang compilation warnings, and gets OpenAL workable on OS X.
Here's the
.config
I'm compiling with:A few things I've noticed: