Commit Graph
155 Commits
Author SHA1 Message Date
Tim Angus 3b6eff505b Add SDL to update script 2025-07-24 20:27:28 +01:00
Tim Angus 0992c149b5 Move library versions to lib-versions.sh 2025-07-24 20:26:53 +01:00
Tim Angus 8cd71ff797 Add macOS SDL build script 2025-07-24 20:25:36 +01:00
Tim Angus 1a256983ad Update OpenAL (headers) 2025-07-24 12:23:43 +01:00
Tim Angus cc4ddc6098 Match literal . 2025-07-24 11:18:02 +01:00
Tim Angus fd0d65c439 Remove more dead 3rd party code 2025-07-22 20:32:11 +01:00
Tim Angus 1cbba07fc3 Add abstract frontend to HTTP support and stop using curl on Windows 2025-07-22 14:57:01 +01:00
Tim Angus dfa0e23395 Update curl 2025-07-22 14:57:01 +01:00
Tim Angus 279f4e5239 Be slightly more targetted in cleaning up jpeg source 2025-07-20 22:14:04 +01:00
Tim Angus 7095006414 Update libjpeg 2025-07-14 17:42:14 +01:00
Tim Angus 7af17542d2 Update zlib 2025-07-14 13:17:17 +01:00
Tim Angus ae143a4912 Add a script for updating 3rd party libraries 2025-07-13 22:57:32 +01:00
Zack Middleton b1e6ef1425 Improve AppStream metainfo 2023-08-19 16:40:44 -04:00
rawr51919 d907e4781e Merge branch 'ioquake:main' into master 2023-08-12 14:34:54 -03:00
Jack Slater e5c688b342 Update org.ioquake3.ioquake3.metainfo.xml
fixed the case of the filename and removed the hotlinked screenshots of original quake 3.
2023-08-07 08:02:39 -07:00
AsciiWolf 5327a21d5f Add AppStream metadata 2023-08-07 15:04:07 +01:00
Zack Middleton 2bca424fce nsis: Only uninstall protocol handler for this installation 2023-07-06 05:03:36 -04:00
Zack Middleton a119e67fb8 nsis: Fix CustomUrlArguments for protocol handler 2023-07-06 05:03:36 -04:00
Zack Middleton 221465f3b4 nsis: Add better descriptions for OpenAL and libcurl 2023-07-06 05:03:36 -04:00
Zack Middleton 5362af3858 nsis: Display ioquake3 version
Display version in the installer and add/remove software.
2023-07-06 05:03:36 -04:00
Zack Middleton 9738176849 nsis: Require installing SDL
It's required to run and unlikely to be installed system wide.
2023-07-06 05:03:36 -04:00
Zack Middleton efd55cab9d nsis: Remove Speex library
The game doesn't support it anymore.
2023-07-06 05:03:36 -04:00
Stefan Sundin 31c6d2f9d5 Add protocol handler support
This lets the user click a link in a web browser to very easily join a Quake 3 multiplayer game. As browser-based matchmaking websites become more popular, this makes it a lot more convenient and simple to play Quake 3 with others.

The links have the following URI format: quake3://connect/example.com:27950. The format has been designed to be flexible to allow more types of links in the future and avoiding having to make a breaking change. At the moment, "connect" is the only supported command.
2023-04-19 13:48:26 +01:00
Jack Slater b7abe57d3b some old URL and doc updates
The installer building docs should probably go somewhere else but they don't need to be in the README
2022-02-08 00:19:05 -10:00
Tom Kidd de055995d0 Merge pull request #482 from tomkidd/vs2019
Upgrade to build and run from VS2019
2021-10-22 16:38:11 -05:00
Tom Kidd 3d06d07516 Addressed PR suggestions 2021-10-22 10:00:20 -05:00
Tom Kidd 5c5a599929 UB2 now signs and notarizes, upgraded to SDL 2.0.16
Also works on Apple Silicon. Specific signing values are in a non-committed file, and the ub2 script only notarizes if a "notarize" flag is passed in on the command line.

NOTE: the SDL dylib currently only has x86_64 and arm64, will need extra work to graft those back in and keep the Notary service happy.
2021-09-18 18:40:12 -05:00
Tom Kidd a1b1c7d5eb Added arm64 to the post-build symlinking step 2021-07-06 17:30:27 -05:00
Tom Kidd eef3a40ed6 Restored original opus sse files, excluded from Xcode
Also added line break in script for consistency, thanks @zturtleman
2021-07-06 17:30:27 -05:00
Tom Kidd 52a43ae1c4 Upgrades to Xcode project and Apple Silicon support
- Reorganized Xcode project
- Added missionpack support to Xcode project
- Incorporated changes from MaddTheSane for Apple Silicon support https://github.com/maddthesane/ioq3
- Built SDL 2.0.14 for Apple Siicon, added to existing SDL dylib
- Built SDLMain for Apple Silicon, added to existing libSDL2main.a
2021-07-06 17:30:27 -05:00
Tom Kidd d82a1cb7b3 Upgrade to build and run from VS2019
- New msvc142 directory (keeping with naming after version of C compiler)
- Added SDL2.lib/SDL2main.lib back in (compiled from SDL 2.0.8 source from libsdl.org)
- Post build step to copy SDL2.dll to debug directory
2021-01-25 21:59:55 -06:00
Tom Kidd a03cb319a2 Figured out method of referencing GLSL generated C files outside of code directory 2020-02-10 17:20:17 -06:00
Tom Kidd a545f81403 Further tweaks to Xcode project
Now works as well as possible in Xcode 11
2019-10-29 00:14:26 -05:00
Tom Kidd b340827153 Updated to latest recommended build settings, increased deployment target to 10.7
One of the settings (CLANG_ENABLE_OBJC_WEAK) doesn't like 10.6 anymore apparently.
2019-10-28 22:30:56 -05:00
Tom Kidd c2025d94c5 Several updates to xcode project files for Xcode 11
A few more things to go
2019-10-26 22:14:14 -05:00
Colton G. Rushton 0549613351 Added .gitignore to msvc folder 2019-08-28 01:13:18 -03:00
Colton G. Rushton 2d3b8b5c27 Added .gitignore to msvc11 folder 2019-08-28 01:13:18 -03:00
Colton G. Rushton 22722f2108 Add .gitignore to msvc10 folder 2019-08-28 01:13:18 -03:00
Colton G. Rushton afb102a8b6 Updated .gitgnore to latest GitHub template 2019-08-28 01:13:18 -03:00
kungfooman b0d2b141e7 Add .gitignore for misc/msvc12 2018-12-14 10:00:58 +00:00
Zack Middleton 1b1d0c55f6 Fix Linux uninstaller redirecting stderr to stdout in preuninstall.sh
Last commit accidently made stderr redirect to stdout tty instead of
/dev/null.

Reported by @illwieckz.
2018-06-03 16:23:46 -05:00
Zack Middleton 466952b320 Fix Linux uninstaller requiring Bash
Linux loki-setup uninstaller is failing on distros that have /bin/sh
linked to Dash instead of Bash. Use standard shell method for
redirecting stdout and stderr instead of a Bash specific method.
2018-06-03 15:47:39 -05:00
Zack Middleton 8611eb421d Rename (already updated) opus-1.1.4 to opus-1.2.1 2018-03-16 13:29:19 -05:00
Zack Middleton cb24c59567 Update opus from 1.1.4 to 1.2.1 2018-03-16 13:29:19 -05:00
Zack Middleton ad10e6610c Changes to systemd q3a.service
Use an absolute path as required by systemd. Distro packages will need
to change it. (Reported by @andreyv and @zeroxfourc.)
Link to server documentation on the wiki instead of maintaining a subset
in the service file.
2018-02-04 07:51:17 -06:00
Zack Middleton acce0e5452 Fix building msvc12 project
* Don't try to embed manifest (it causes build to fail because it's
  specified in win_resource.rc).
* Fix curl include path.
* Compile sys_autoupdater.c.
* Make quake3 debug link to msvcrtd.lib instead of msvcrt.lib to fix
  unresolved external symbol __imp___CrtDbgReportW.
* Fix q3_ui dll output directory.
* Fix opus path filter.
* Use UseOfMfc false and CharacterSet NotSet.
* Fix header paths and remove non-existent files.
2018-01-30 07:40:09 -06:00
Matt Palmer 14cb72f912 Improvements to the linux build script
In no particular order:

* Use `set -e`, because it prevents accidents, and means we can avoid
  lengthy &&-joined command chains.
* Override defaults by setting env vars; this means people don't have to
  edit the script to change things.
* Use an unpredictable and safely-created tmpdir for building; ain't nobody
  wants to cleanup from a tmpdir race condition attack.
* Test for the presence of `git` and `make` *before* asking questions, and
  only prompt the user about them if they're missing.  No need to bother
  people with unnecessary reading.
* Automatically clean up the build directory after use.
* Tidy up some indenting that had come asunder.
2017-11-21 23:07:54 -06:00
Zack Middleton c2ce1c2f51 Make client for Windows x86_64 use OpenAL64.dll by default
ioquake3.x86_64.exe can't load x86 OpenAL32.dll. Using separate
library names allows shipping OpenAL for both architectures.

Though since the dll name is saved in the config file, using both
clients on the same computer will cause one client arch to always
try to load the wrong OpenAL dll and then fallback to the correct
default OpenAL dll. I guess it could be fixed by using separate
cvar names for s_alDriver.
2017-09-04 20:34:55 -05:00
Zack Middleton 00a5339b27 Update arch in misc/setup for ioq3 changing from i386 to x86 2017-08-07 05:52:13 -05:00
Zack Middleton 67dace6c20 Escape quotes for sv_dlURL in shell so it doesn't become "http:"
q3ded +set sv_dlURL "http://example.org"

The shell removes the quotes but makes the content be a single argument
for progam args. Quake 3 concatenates all the program args and splits
lines at + or newlines. Then Quake 3 parses them using a tokenizer
that skips unquoted C comments beginning with //. This results in
the cvar being set to "http:".

Escape the quotes so they are passed to the program and the tokenizer
knows not to skip C comments.

    q3ded +set sv_dlURL \"http://example.org\"
2017-07-20 23:24:52 -05:00