Commit graph

57 commits

Author SHA1 Message Date
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
Ozkan Sezer
03b7ef9f05 switch from libmikmod to libxmp for tracker music. 2022-05-14 10:37:10 +03:00
Ozkan Sezer
b0767dbc90 add back snd_modplug (disabled, for future ref.), update project files. 2022-03-29 17:04:02 +03:00
Ozkan Sezer
6cf4bbc198 reverted the previous NO_WINSDKVER_H patch - not needed after latest SDL 2021-11-06 12:00:00 +03:00
Ozkan Sezer
2492689d9e define NO_WINSDKVER_H for windows SDL2 builds
SDL_config_windows.h from development version of SDL added inclusion of
winsdkver.h which may not be available in old SDKs.  we have no use for
the functionality provided by it, therefore disable it.
2021-11-05 10:51:10 +03: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
Ozkan Sezer
96b07d712d mingw makefiles: -lm is not needed. 2021-07-09 14:56:00 +03: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
5af28b2121 windows: use target-specfic flags for gcc too (-m32/-m64). hmph..
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1299 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-18 14:01:55 +00:00
Ozkan Sezer
f22eed7f57 use specific target flags with windres (pe-i386/pe-x86-64 for w32/w64),
just in case the compiler toolchain is a multilib one.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1298 af15c1b1-3010-417e-b628-4374ebc0bcbd
2016-04-17 19:10:01 +00:00
Ozkan Sezer
fe95edf20f fix windows linkage after r1200
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1201 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-04-14 18:15:09 +00:00
Ozkan Sezer
de4c27b793 change windows makefiles so that they aren't for cross-building by default;
keep the cross-build stuff only in the scripts. update the explanations in
windows and darwin makefiles.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1183 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-03-02 22:04:26 +00:00
Eric Wasylishen
b737b8a29f Update makefiles to use local SDL/SDL2 copies. Add sdl[2]-config. Patch from szo.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1180 af15c1b1-3010-417e-b628-4374ebc0bcbd
2015-03-02 21:43:04 +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
Ozkan Sezer
b752f34d7a add mikmod to xcode project file. enable several extra codecs for osx and windows builds.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@919 af15c1b1-3010-417e-b628-4374ebc0bcbd
2014-06-21 15:50:09 +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
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
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
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
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
Ozkan Sezer
766c2a7f2f updated windows makefiles and visual studio project files after streaming
music changes.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@376 af15c1b1-3010-417e-b628-4374ebc0bcbd
2011-01-05 21:27:37 +00:00
Ozkan Sezer
1883fdd469 makefile comment tweaks
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@321 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-09-01 06:10:21 +00:00
Ozkan Sezer
88f32bdabf Makefile.w32, Makefile.w64: made them a little bit more flexible by adding
CROSS_COMPILE and TARGET variables.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@280 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-08-17 19:30:35 +00:00
Ozkan Sezer
d098087606 Reorganize files for platform-specific code:
* sys_sdl_win.c: Copied from sys_sdl.c. Windows-only. Remove unix code.
(Sys_Init): New procedure. Call AllocConsole() and get input and output
handles for dedicated servers.
(Sys_ConsoleInput): Add a windows version.
(Sys_Error): Adjust for the allocated console and use windows api.
Adjust message output. Remove the console timeout, doesn't work somehow.
Just display the console for 3 seconds and then exit. Rely on SDL that
it redirects/logs the stdout/stderr to files.
* sys_sdl_unix.c: Rename from sys_sdl.c. Unix-only. Remove windows code.
(Sys_Init): New procedure.
(Sys_Error): Remove Windows-oriented dedicated server specific code.
Adjust message output.
* sys_sdl.c: Delete.
* sys.h (Sys_Init): Add prototype.
* main_sdl.c (main): Call Sys_Init().
* pl_linux.c (PL_ErrorDialog): Remove terminal printing which Sys_Error
already does.
* pl_osx.m (PL_ErrorDialog): Update from uhexen2.
* pl_win.c: Make icon handle static. whitespace and formatting tidy-up.
* Makefile, Makefile.darwin, Makefile.w32, Makefile.w64: Adjust for the
sys_sdl.c name change to sys_sdl_unix.c and sys_sdl_win.c.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@223 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-22 11:01:24 +00:00
Ozkan Sezer
92481933c5 * Makefile, Makefile.darwin, Makefile.w32, Makefile.w64: Build changes:
The SDL_net driver is now disabled by default and platform-specific network
drivers will be used. To compile for SDL_net, a command like "make SDLNET=1"
must be used, in which case a new preprocessor macro _USE_SDLNET will be
defined in the CFLAGS. For windows targets when not using SDL_net, WINSOCK2
is added as another option: A command line like "make WINSOCK2=1" will enable
WinSock2 api and a new preprocessor macro _USE_WINSOCK2 will be defined in
the CFLAGS. Or, a command line like "make WINSOCK2=0" will disable WinSock2
api and the old WinSock 1.1 api will be used instead. For Win64, WinSock2 is
enabled by default. For Win32, WinSock 1.1 is the default api.
* net_bsd.c, net_dgrm.c, net_loop.c, net_main.c, net_sdl.c, net_sdlnet.c,
net_udp.c, net_win.c, net_wins.c, net_wipx.c: Use the newly added net_sys.h
header. The sys_socket_t type is not in use, yet.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@215 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-21 11:10:38 +00:00
Ozkan Sezer
9940a1ef02 Some more tidy-up and minor fixing in net stuff. Largely trivial. Also
added winquake.h.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@196 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-20 10:03:05 +00:00
Ozkan Sezer
ff422a8af3 Makefiles: Removed an obsoleted comment. Added objects for platform-specific
network drivers in commented out form.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@193 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-06-19 20:15:21 +00:00
Ozkan Sezer
8c2b5e909c Makefiles: tweaked+tidied the objects (based on uhexen2 makefile.)
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@143 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-04-24 15:55:02 +00:00
Ozkan Sezer
eafcf39b85 renamed main.c to main_sdl.c.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@142 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-04-24 15:21:59 +00:00
Ozkan Sezer
986fd86c79 Makefiles: do not rely on /bin/true. define do_strip as a macro for debug and
non-debug cases and use it, instead. (adapted from tyrquake makefile.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@141 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-04-24 14:50:18 +00:00