dhewg
5d8d3b726e
Include cstddef for ptrdiff_t in platform.h
2011-12-19 20:33:09 +01:00
dhewg
90a53d0977
Move idlib typedefs to platform.h
2011-12-19 20:33:03 +01:00
dhewg
cf57db42e9
Move common includes from precompiled.h to platform.h
2011-12-19 20:31:32 +01:00
dhewg
96ef0754e2
Split platform specific code from precompiled.h
...
New header sys/platform.h.
2011-12-19 20:31:28 +01:00
dhewg
73008b0691
Only compile idlib once
...
Build one static idlib and link the binaries against it.
2011-12-19 20:20:57 +01:00
dhewg
dbf3b43140
Move the virtual abstract idGame to framework/Game.h
...
This is game independent and code outside of game/ and d3xp/
doesn't need to know about anything game specific.
2011-12-19 20:19:14 +01:00
dhewg
8e34d86f8a
Get rid of ID_ALLOW_D3XP
...
There're no second class citizens.
2011-12-19 20:17:46 +01:00
dhewg
e5ec63ce06
Move the game include directory to the build system
...
Don't include based on a preprocessor symbol, let the build
system make the correct decision.
2011-12-19 20:05:20 +01:00
dhewg
8ca99602aa
TypeInfoGen is standalone, don't compile/link it
...
Neither the core or the game libraries need it.
2011-12-16 16:37:58 +01:00
dhewg
6017d8d7a1
Mark unused variable in a non-debug build as such
...
Forgot this one in be40e9d6
2011-12-16 16:01:52 +01:00
dhewg
d0e5555f72
Fix -Wuninitialized warnings in release builds
...
may be used uninitialized in this function
2011-12-16 16:00:28 +01:00
dhewg
506569529a
Fix compilation of demo binaries
...
invalid conversion from ‘const char*’ to ‘char*’
There are no demo pk4 files available compatible to this 1.3.1
codebase. Add a note about it.
2011-12-16 00:07:16 +01:00
dhewg
bc3b1c0883
Partly restore behaviour from c17b80e9
...
The subtraction was inverted, but change back the behaviour too:
Hardcode offsets and check via asserts() in Debug builds.
2011-12-15 18:52:34 +01:00
dhewg
b3999a264c
Overwrite CMake default C[XX]FLAGS
...
CMake sets default flags for the standard build types.
We want to replace them, not merge them.
Reported by azalyn.
2011-12-15 17:51:56 +01:00
dhewg
76939c6de7
Delete redundant files
2011-12-15 17:51:36 +01:00
dhewg
044f745e0c
Disable sound backend entry in the option menu
...
"Reverse channels", woooo
2011-12-14 19:04:19 +01:00
dhewg
b62b033b88
Get rid of all idAudioHardware implementations
2011-12-14 18:37:03 +01:00
dhewg
18f9793732
Get rid of the intenal useOpenAL
...
Useless now, there is only OpenAL.
2011-12-14 18:24:06 +01:00
dhewg
93e5345fbc
Don't use any idAudioHardware implementations
...
OpenAL for everyone.
2011-12-14 18:24:06 +01:00
dhewg
4e26e1ac6f
Don't use idAudioHardware to get the speaker count
...
Use the CVar s_numberOfSpeakers for that, its already stored
in there.
Add the same (!= 2 && !=6) check as in the audio backends since
the mixer is limited to these 2 values.
2011-12-14 18:24:05 +01:00
dhewg
66141935f5
Use OpenAL per default
...
Deprecate s_libOpenAL and s_useOpenAL for compability and don't
access them anymore.
2011-12-14 18:24:05 +01:00
dhewg
9df3383b61
Remove Sys_LoadOpenAL() and Sys_FreeOpenAL()
...
This is not required anymore, all binaries on all platforms
either link against OpenAL or use the stub.
2011-12-14 18:23:49 +01:00
dhewg
dfdb6b6d4a
Remove the unused win32 exception handler
...
Especially don't send crash reports from this tree to id ;)
2011-12-14 18:20:31 +01:00
dhewg
1dad3d711f
cmake: Get rid of "-m32" check
...
This doesn't work. Always add -m32 when X86 was set.
2011-12-14 18:20:31 +01:00
dhewg
b2ccf9240c
Fix Wwrite-strings warnings in sys/win32
...
deprecated conversion from string constant to ‘char*’
2011-12-14 18:20:31 +01:00
dhewg
3e25cc751a
Always link the win32 binary against OpenAL
...
Just as with OSX and Linux.
2011-12-14 18:20:31 +01:00
dhewg
b6bcd0a9cb
Fix compilation for MinGW
...
Just a few minor hiccups.
2011-12-14 18:20:30 +01:00
dhewg
661e8f453b
Stub out win32 CPU functions for MinGW
...
Most of these use MSVC style asm.
Binaries compiled with MinGW will not use any SIMD code for now.
2011-12-14 18:20:30 +01:00
dhewg
ed349d71cc
Fix Sys_QueMouseEvents for MinGW
...
DIMOFS_[X|Y|Z] can't be used in a switch statement.
2011-12-14 18:20:30 +01:00
dhewg
216c83b130
Undef strcasecmp before redefining it
2011-12-14 18:20:30 +01:00
dhewg
b8dc464dc7
Replace one unnecessary afxwin.h
...
No MFC required in win_taskkeyhook.cpp.
2011-12-14 18:20:30 +01:00
dhewg
f54752c209
Case corrections for includes on case sensitive fs'
2011-12-14 18:20:29 +01:00
dhewg
88d2dc6f33
Only use MSVC style asm with MSVC
2011-12-14 18:20:29 +01:00
dhewg
5c3a28e027
Basic infrastructure to build with MinGW
...
Add WIN32 support to CMake (core and games, no dedicated for now).
Only use MFC when it is available.
2011-12-14 18:19:38 +01:00
dhewg
36c5b05f1f
Remove the unused and ugly HackChkStk()
2011-12-14 02:40:55 +01:00
dhewg
5052f42c9e
Add a CMake build system
...
Tested on FreeBSD, Linux, and a ghetto rigged OSX i686 cross
compiler.
Find[OGG|Vorbis|VorbisFile].cmake borrowed from osgAudio
2011-12-14 02:40:49 +01:00
dhewg
41a1122a82
Remove the unused and useless CallStack code
...
This was never enabled and only implemented for Windows.
2011-12-14 02:39:42 +01:00
dhewg
758a954c0d
Fix -Wdynamic-class-memaccess warning
...
destination for this 'memset' call is a pointer to dynamic class
'idRenderLightLocal'; vtable pointer will be overwritten
The constructor already initializes everything to zero, get rid
of this dangerous memset().
2011-12-13 19:26:16 +01:00
dhewg
09ea2ca819
Fix -Wsizeof-pointer-memaccess warnings
...
argument to 'sizeof' in 'memset' call is the same expression as the
destination; did you mean to dereference it?
2011-12-13 19:26:16 +01:00
dhewg
10e9ef2a52
Fix -Wdelete-non-virtual-dtor warnings
...
delete called on 'idSIMDProcessor' that is abstract but has
non-virtual destructor
2011-12-13 19:26:16 +01:00
dhewg
a3cd1cf54b
Get rid of all #pragma mark
...
Fixes error: stray '\245' in program
2011-12-13 19:26:16 +01:00
dhewg
f81d32918f
Implement Sys_GetProcessorId for x86 and x86_64
...
Detect CPU features at runtime via cpuid - code borrowed from
libavutil.
Availability of cpuid is not checked since pentium3 supports it
and that was the minimum requirement anyway.
Only features enabled at compile time will be available.
Forced MMX/SSE/SSE2/SSE3 and it passed all tests via:
./doom3.x86_64 +disconnect +set s_noSound 1 +testSIMD
2011-12-13 19:26:16 +01:00
dhewg
18762483e6
Change return type of [Sys_]GetProcessorId to int
...
Fixes compile error: invalid conversion from 'int' to 'cpuid_t'
2011-12-13 18:57:30 +01:00
dhewg
8023bc5d56
Always compile all SIMD code
...
Protect all SIMD implementations with the according defines and
let the compiler decide if it supports the intructions.
Linux will still use Simd_Generic because CPU feature runtime
detection is missing.
2011-12-13 18:56:38 +01:00
dhewg
c17b80e950
Fix SIMD pointer casts/offsets for x86_64
...
Get the idDrawVert member offsets directly instead of hardcoding
them and checking them via assert() at runtime.
Fixes compile error:
cast from pointer to smaller type 'int' loses information
2011-12-13 17:26:33 +01:00
dhewg
f751d7e1b8
Protect __m128i intrinsic with __SSE2__
2011-12-13 16:26:38 +01:00
dhewg
798de99dfb
Only include ppc_intrinsics.h when required
2011-12-13 16:26:38 +01:00
dhewg
c15e761bae
Get rid of frustum code specialized for gcc
...
The functions are exactly the same ;)
Maybe splitted into two files because of an ICE on some ancient
gcc?
2011-12-13 16:26:16 +01:00
dhewg
4c38aaae78
Get rid of dmap code specialized for gcc
...
According to the file this existed because of a gcc 3.5.5
optimization bug, which we do not care anymore about.
2011-12-13 16:25:08 +01:00
dhewg
f6fa194044
Don't load EAX sound effects when EAX is disabled
2011-12-11 18:28:18 +01:00