Commit graph

65 commits

Author SHA1 Message Date
Shpoike
1b911ae1f8 Merge tag 'quakespasm-0.94.6' into qss 2022-07-15 14:56:57 +01:00
Shpoike
7a97911ff4 Merge tag 'quakespasm-0.94.5' into qss 2022-07-15 14:11:03 +01:00
Ozkan Sezer
09216eb65f Makefiles: added basic dependency tracking, and tidied-up a bit. 2022-06-28 03:02:56 +03:00
Ozkan Sezer
02b953e993 use C11 _Generic macros for q_min, q_max and CLAMP, if available.
.. if not, then use GCC expression macros for them, if available.
2022-06-12 14:32:28 +03:00
Shpoike
26f0bc4682 Merge remote-tracking branch 'sf/master' into qss
(cl_startdemos stripped in favour of QSS's existing cl_demoreel cvar. osx project files ignored.)
2022-04-27 22:32:40 +01:00
Ozkan Sezer
b0767dbc90 add back snd_modplug (disabled, for future ref.), update project files. 2022-03-29 17:04:02 +03:00
Shpoike
bad54d50cf Merge remote-tracking branch 'sf/master' into qss 2021-09-11 04:49:40 +01:00
Ozkan Sezer
86b0065d0b miscellaneous makefile updates 2021-09-04 23:56:50 +03:00
Ozkan Sezer
3af9ad4e04 2021 rerelease support: read the localization file from QuakeEX.kpf
uses a customized and highly stripped down miniz version. also move
localization file reads to SDL_RWops, and update the documentation.
2021-09-01 14:00:00 +03:00
Shpoike
7ba6c4474b Merge Quakespasm's post-fork changes into QSS (rebased to make them compatible) 2021-08-31 06:43:13 +01:00
Shpoike
3ac910c32d Try to make use of win32/posix LFS for larger pk3s. Use a couple of other unsigned types for larger bsps too, now that we're supposedly able to exceed the 2gb limit on file sizes. 2021-08-31 04:59:13 +01:00
Shpoike
b1f93c7f3d Add md4 support to digest_hex (will be needed to validate csqc) 2021-08-31 04:59:12 +01:00
Shpoike
d595a3d9cd The voice chat feature requires audio capture. Audio capture requires sdl2. So lets force that. 2021-08-31 04:59:11 +01:00
Spike
1e6a12b923 Some compile fixes. 2021-08-31 04:59:11 +01:00
Spike
fe63ebc870 Windows... Messed up access modes. 2021-08-31 04:59:11 +01:00
Spike
d76ca606bf All changes present in QSS-R7, plus
md3 support
quoth/etc bug fix
strzone bug fix
png/jpg replacement wall textures
rewrote mdl rendering to always use arrays, relaxing vertex+tri limits.
removed static ents limit
fixed ambient_level not working at high framerates.
2021-08-31 04:59:11 +01:00
Helmut Grohne
a7503e2be2 Make pkg-config substitutable
This helps with cross-compilation. When cross-compiling, the environment
variable PKG_CONFIG is typically set to a version of pkg-config that is
configured to look in appropriate locations for the cross architecture.

For example, a build for 64-bit ARM might use:

    make \
        CC=aarch64-linux-gnu-gcc \
        STRIP=aarch64-linux-gnu-strip \
        PKG_CONFIG=aarch64-linux-gnu-pkg-config \
        release

On a Debian system, this would look in
/usr/lib/aarch64-linux-gnu/pkgconfig for details of 64-bit ARM Opus
libraries.

Bug-Debian: https://bugs.debian.org/900217
2020-12-22 12:17:31 +00:00
Ozkan Sezer
ffe43cf024 snd_mp3.c: moved mp3 tag stuff into a separate module snd_mp3tag.c
so that it can be used in snd_mpg123.c, too, if needed.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1658 af15c1b1-3010-417e-b628-4374ebc0bcbd
2019-12-12 11:37:32 +00:00
Ozkan Sezer
9bf21b932f Makefiles: replace '$^' with '$<' in build rules. add dependency list for image.o.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1469 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-08-09 12:10:13 +00:00
Ozkan Sezer
d1f391b383 remove all libmodplug code
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1435 af15c1b1-3010-417e-b628-4374ebc0bcbd
2017-07-27 12:50:17 +00:00
Ozkan Sezer
5025e9e457 added tracker music support using libxmp >= v4.2.0 (off by default.)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1364 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-12-07 09:24:49 +00:00
Ozkan Sezer
d99ea684d2 remove SDL_net support which had been unsupported for some time
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1041 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-09-20 20:37:35 +00:00
Sander van Dijk
34f2f6f1ca Makefile[.*]: SDL2 build support. 'make USE_SDL2=1' to enable.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1019 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-09-11 18:47:07 +00:00
Ozkan Sezer
4b01a03387 applied the user directories support patch, disabled by default. 'make DO_USERDIRS=1' to enable it.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1013 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-09-10 07:28:28 +00:00
Steven
75cc453f1a 'cd next', 'cd prev' commands. 'cd play' plays track 1.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@950 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-08-04 00:08:22 +00:00
Ozkan Sezer
d941ee83db revert r903 and the old conback hack commits. change the engine
to load id1/quakespasm.pak for content customizations.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@904 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-04-27 08:28:16 +00:00
Ozkan Sezer
ffa3bf4413 Merge several FS_* and snd_codec* layer updates from uhexen2 tree:
tidy-ups in FS* stdio replacement functions. add new FS_filelength.
snd codec layer updates: changed codec_open() to operate only on a
stream pointer and moved all file open/close stuff to snd_codec.c.
codec_open now only returns true or false upon success or failure
instead of a stream pointer. added new snd_codec.c toplevel helper
S_CodecForwardStream(), which allows one codec to hand over its
stream from its codec_open() to another codec. Support for tracker
(mod) music, including support for Unreal umx containers. (might
be useful if we ever make a Nehahra version of the engine some day.
edit the makefiles to enable when compiling.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@867 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-09-25 11:01:12 +00:00
Ozkan Sezer
7f41bfa64a added flac music support.
it is not enabled by default, edit the Makefile for USE_CODEC_FLAC,
or add USE_CODEC_FLAC=1 to your make command line arguments. Xcode
project file still needs updating for this.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@857 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-07-21 14:02:06 +00:00
Ozkan Sezer
21258e595c merged the opus codec support patch
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@856 af15c1b1-3010-417e-b628-4374ebc0bcbd
2013-07-18 07:03:11 +00:00
Ozkan Sezer
f8f0cecb4a added -Werror to compiler option checking so I don't have to edit
the Makefile whenever I want to use clang.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@776 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-10-25 11:15:15 +00:00
Ozkan Sezer
12b0d75c05 minor Makefile correction
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@712 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-09-05 16:24:57 +00:00
Ozkan Sezer
5b2916b89d makefile update
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@711 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-09-05 09:03:41 +00:00
Ozkan Sezer
6ca3fc377b - Makefile.darwin: -mmacosx-version-min also needs to be among
the linker flags for x86_64 builds. adjusted accordingly.
- build_cross_osx.sh, build_cross_win32.sh, build_cross_win64.sh:
  added the cross-compile scripts I have been using.
- Makefiles,other: added LDFLAGS variables for future use.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@704 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-09-03 21:21:04 +00:00
Ozkan Sezer
c8e8eab69b oslibs, codecs: minor libmad update
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@701 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-09-02 14:00:34 +00:00
Sander van Dijk
efda62fd3a Makefile, Makefile.darwin: Remove the not-so-useful "install" target.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@681 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-05-30 17:29:34 +00:00
Ozkan Sezer
fd2bafc1b1 Makefiles: defined new variable LINKER. for linkage we no longer use $(CC),
but $(LINKER)

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@679 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-05-30 09:47:45 +00:00
Ozkan Sezer
c06d6fa200 fix linkage for solaris: needs -lsocket -lnsl -lresolv for network
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@678 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-05-30 09:28:34 +00:00
Ozkan Sezer
cf406e06d0 minor Makefile tidying
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@642 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-03-09 10:11:09 +00:00
Steven
b42522932a 'make install' directory needs trailing slash in order to fail (desired) if directory doesn't exist.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@640 af15c1b1-3010-417e-b628-4374ebc0bcbd
2012-03-08 07:17:49 +00:00
Ozkan Sezer
1ff7413631 added strlcat.c and strlcpy.c to build.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@559 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-27 11:11:24 +00:00
Ozkan Sezer
b9d2d0aea1 Makefiles update: Passing the libraries to the linker before passing the
object list is a bad idea.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@556 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-27 10:10:51 +00:00
Ozkan Sezer
6c4ad9c240 backport from uhexen2: read video variables early so that a vid_restart
isn't necessary after init. thanks to Sander van Dijk.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@531 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-12-20 09:22:19 +00:00
Ozkan Sezer
f43a0622f6 updated makefiles.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@483 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-08-27 07:11:36 +00:00
Ozkan Sezer
3fd7356571 fixed vorbisfile link order for static linkage if one chooses to do so.
deleted unused vorbisenc.h header.

git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@472 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-07-21 09:03:35 +00:00
Ozkan Sezer
78c95e1b91 minor documentation updates, final touches for 0.85.4.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@430 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-03-27 14:00:31 +00:00
Steven
fd0fe9aa89 Trivial doco updates
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@429 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-03-05 10:20:00 +00:00
Ozkan Sezer
9f7430e8d5 * snd_mpg123.c: added new codec for mp3 playback using libmpg123 as
an alternative to the existing one using libmad. requires at least
  mpg123-1.12.0, i.e. api version 25.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@414 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-02-14 20:02:52 +00:00
Ozkan Sezer
11270d5b2c changed makefiles to use 1/0 instead of yes/no for the codec options.
made quakespasm custom conback embedding optional, still defaulting to 1.
the code requires USE_QS_CONBACK preprocessor definition.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@392 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-01-12 09:32:22 +00:00
Steven
64e52ea80c Doco update
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@383 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-01-10 03:09:09 +00:00
Ozkan Sezer
cbb7eb0428 Backported external music files support using decoder libraries and the
new raw samples interface from Hammer of Thyrion (uhexen2) :
- bgmusic.c, bgmusic.h: New BGM interface for background music handling.
  Handles streaming music as raw sound samples.
- bgmnull.c: BGM source for cases where the engine is configured for no
  sound.
- cl_main.c: Include bgmusic.h. Call BGM_Stop() and CDAudio_Stop() in
  CL_Disconnect().
- cd_sdl.c: Moved bgmvolume boundary checking to bgmusic.c upon value
  changes.
- gl_vidnt.c, gl_vidsdl.c, cl_parse.c: Include bgmusic.h. Add BGM_Pause()
  and BGM_Resume() calls along with CDAudio_ counterparts.
- cl_parse.c: Replace CDAudio_Play() call by the new BGM_PlayCDtrack()
  which first tries CDAudio_Play() and then streaming music if it fails.
- host.c: Include bgmusic.h. Call BGM_Update() just before S_Update()
  in Host_Frame(). In Host_Init(), call BGM_Init() after other audio init
  calls. In Host_Shutdown(), call BGM_Shutdown() before all other audio
  shutdown calls.
- snd_dma.c: Include snd_codec.h and bgmusic.h. Call S_CodecInit() from
  S_Init(). Call S_CodecShutdown() from S_Shutdown().
- snd_codec.c, snd_codec.h: New public codec interface for streaming
  music as raw samples. Adapted from quake2 and ioquake3 with changes.
  Individual codecs are responsible for handling any necessary byte swap
  operations.
- snd_codeci.h: New header for snd_codec internals.
- snd_wave.c, snd_wave.h: Codec for WAV format streaming music. Adapted
  from ioquake3 with changes.
- snd_vorbis.c, snd_vorbis.h: Codec for Ogg/Vorbis format streaming music.
- snd_mp3.c, snd_mp3.h: Codec for MP3 format streaming music using libmad.
  Adapted from the SoX project with changes.
- Makefile: Adjusted for the new sources. Added switches USE_CODEC_WAVE,
  USE_CODEC_MP3, USE_CODEC_VORBIS for enabling and disabling individual
  codecs.
- Windows makefiles and project files as well as other CodeBlocks project
  files will be updated shortly.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@374 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-01-05 19:50:43 +00:00