pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Add thedarkmod.



Module Name:	pkgsrc-wip
Committed By:	nia <nia%NetBSD.org@localhost>
Pushed By:	nee
Date:		Mon Apr 15 20:30:21 2019 +0100
Changeset:	23e73581f2c677ca770e6118a6a97f33dbb132fe

Modified Files:
	Makefile
Added Files:
	thedarkmod/Makefile
	thedarkmod/PLIST
	thedarkmod/TODO
	thedarkmod/distinfo
	thedarkmod/patches/patch-SConstruct
	thedarkmod/patches/patch-TypeInfo_main.cpp
	thedarkmod/patches/patch-game_anim_Anim__Blend.cpp
	thedarkmod/patches/patch-idlib_bv_Frustum.cpp
	thedarkmod/patches/patch-idlib_math_Simd.cpp
	thedarkmod/patches/patch-idlib_math_Simd.h
	thedarkmod/patches/patch-idlib_math_Simd__AVX.h
	thedarkmod/patches/patch-idlib_math_Simd__AVX2.h
	thedarkmod/patches/patch-renderer_qgl.h
	thedarkmod/patches/patch-sys_gllog_gl__extensions.cpp.m4
	thedarkmod/patches/patch-sys_linux_main.cpp
	thedarkmod/patches/patch-sys_osx_DOOMController.mm
	thedarkmod/patches/patch-sys_scons_SConscript.darkmod
	thedarkmod/patches/patch-sys_sys__local.cpp
	thedarkmod/patches/patch-sys_sys__local.h
	thedarkmod/patches/patch-sys_sys__public.h

Log Message:
Add thedarkmod.

The Dark Mod is free and open-source software first-person stealth
video game, inspired by the Thief series by Looking Glass Studios.
The game provides the basic framework and tools – engine, assets,
models, an editor – for more than 100 fan-made missions, including
several multi-mission campaigns.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=23e73581f2c677ca770e6118a6a97f33dbb132fe

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                                           |  1 +
 thedarkmod/Makefile                                | 55 ++++++++++++++++
 thedarkmod/PLIST                                   |  0
 thedarkmod/TODO                                    |  6 ++
 thedarkmod/distinfo                                | 22 +++++++
 thedarkmod/patches/patch-SConstruct                | 28 ++++++++
 thedarkmod/patches/patch-TypeInfo_main.cpp         | 13 ++++
 thedarkmod/patches/patch-game_anim_Anim__Blend.cpp | 16 +++++
 thedarkmod/patches/patch-idlib_bv_Frustum.cpp      | 13 ++++
 thedarkmod/patches/patch-idlib_math_Simd.cpp       | 31 +++++++++
 thedarkmod/patches/patch-idlib_math_Simd.h         | 13 ++++
 thedarkmod/patches/patch-idlib_math_Simd__AVX.h    | 24 +++++++
 thedarkmod/patches/patch-idlib_math_Simd__AVX2.h   | 18 ++++++
 thedarkmod/patches/patch-renderer_qgl.h            | 45 +++++++++++++
 .../patches/patch-sys_gllog_gl__extensions.cpp.m4  | 21 ++++++
 thedarkmod/patches/patch-sys_linux_main.cpp        | 13 ++++
 thedarkmod/patches/patch-sys_osx_DOOMController.mm | 15 +++++
 .../patches/patch-sys_scons_SConscript.darkmod     | 43 +++++++++++++
 thedarkmod/patches/patch-sys_sys__local.cpp        | 29 +++++++++
 thedarkmod/patches/patch-sys_sys__local.h          | 13 ++++
 thedarkmod/patches/patch-sys_sys__public.h         | 75 ++++++++++++++++++++++
 21 files changed, 494 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index db07eb4b8d..36ab737b46 100644
--- a/Makefile
+++ b/Makefile
@@ -4627,6 +4627,7 @@ SUBDIR+=	thabit-ttf
 SUBDIR+=	thawab
 SUBDIR+=	thcrut
 SUBDIR+=	theama
+SUBDIR+=	thedarkmod
 SUBDIR+=	thepeg
 SUBDIR+=	threadingbuildingblocks
 SUBDIR+=	thrift
diff --git a/thedarkmod/Makefile b/thedarkmod/Makefile
new file mode 100644
index 0000000000..b7163582fb
--- /dev/null
+++ b/thedarkmod/Makefile
@@ -0,0 +1,55 @@
+# $NetBSD$
+
+PKGNAME=	thedarkmod-2.07
+DISTNAME=	thedarkmod.${PKGVERSION_NOREV}.src
+CATEGORIES=	games
+MASTER_SITES=	http://www.thedarkmod.com/sources/
+EXTRACT_SUFX=	.7z
+
+MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=	http://www.thedarkmod.com/main/
+COMMENT=	First-person stealth video game inspired by the Thief series
+LICENSE=	gnu-gpl-v3
+
+WRKSRC=		${WRKDIR}
+
+USE_LANGUAGES=	c c++
+
+GCC_REQD+=	8.0
+PYTHON_VERSIONS_ACCEPTED=	27
+
+CXXFLAGS+=	-Wfatal-errors
+
+.include "../../mk/bsd.prefs.mk"
+
+CXXFLAGS+=	-DUSE_FILE32API
+
+SCONS_ARGS+=	${_MAKE_JOBS}
+
+.if ${MACHINE_ARCH} == "x86_64"
+SCONS_ARGS+=	TARGET_ARCH="x64"
+.elif ${MACHINE_ARCH} == "i386"
+SCONS_ARGS+=	TARGET_ARCH="x86"
+.endif
+
+do-build:
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${SCONSBIN} ${SCONS_ARGS} \
+	CC=${CC:Q} CXX=${CXX:Q} CFLAGS=${CFLAGS:Q} CXXFLAGS=${CXXFLAGS:Q} \
+	LINKFLAGS=${LDFLAGS:Q} CPPPATH=${INCL_PATH:Q} VERBOSE=1 BUILD="release"
+
+do-install:
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${SCONSBIN} ${SCONS_ARGS} \
+	CC=${CC:Q} CXX=${CXX:Q} CFLAGS=${CFLAGS:Q} CXXFLAGS=${CXXFLAGS:Q} \
+	LINKFLAGS=${LDFLAGS:Q} CPPPATH=${INCL_PATH:Q} \
+	--prefix=${DESTDIR}${PREFIX} install
+
+.include "../../audio/openal-soft/buildlink3.mk"
+.include "../../devel/scons/buildlink3.mk"
+.include "../../graphics/MesaLib/buildlink3.mk"
+.include "../../multimedia/ffmpeg4/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+.include "../../x11/libX11/buildlink3.mk"
+.include "../../x11/libXext/buildlink3.mk"
+.include "../../x11/libXxf86vm/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/thedarkmod/PLIST b/thedarkmod/PLIST
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/thedarkmod/TODO b/thedarkmod/TODO
new file mode 100644
index 0000000000..46d321aef0
--- /dev/null
+++ b/thedarkmod/TODO
@@ -0,0 +1,6 @@
+do-install.
+Include the data files from the mirrors. (http://mirrors.thedarkmod.com/)
+	Not versioned. Probably get installed to ~/thedarkmod, fetch them with a script.
+		Or mirror them for pkgsrc.
+	Change to this directory in a shell script before launching the executable.
+Document the patches.
diff --git a/thedarkmod/distinfo b/thedarkmod/distinfo
new file mode 100644
index 0000000000..13077c2600
--- /dev/null
+++ b/thedarkmod/distinfo
@@ -0,0 +1,22 @@
+$NetBSD$
+
+SHA1 (thedarkmod.2.07.src.7z) = e615af9e67990ed48cee98eb218d389d4b095b4c
+RMD160 (thedarkmod.2.07.src.7z) = 94ded62dcb4a5b0e0b9bcc24e40131ecd4c58b19
+SHA512 (thedarkmod.2.07.src.7z) = e76aba85722af0e496b604a20fb9f33a44867f0179187d018a6f4dcde5a28987913ead473e86aa0810d2b37c198bfaba48c9f5ccc895af0dfc5863baf15e6db4
+Size (thedarkmod.2.07.src.7z) = 52411631 bytes
+SHA1 (patch-SConstruct) = 26e4aef4b00a2bb4f989323952b637ed71ead301
+SHA1 (patch-TypeInfo_main.cpp) = ad58a4917b961c48858af61f25c8565dcb50d54f
+SHA1 (patch-game_anim_Anim__Blend.cpp) = 326457af38817439b623dd20679be67779aca3d4
+SHA1 (patch-idlib_bv_Frustum.cpp) = 29ab03477c8689820d0c0543f3a00956557b1c5b
+SHA1 (patch-idlib_math_Simd.cpp) = 54553c575f2f0bcdbb7ab9e6be42adbc874c8333
+SHA1 (patch-idlib_math_Simd.h) = a93f686511f8b10c63a5fd29bbebaf3a901e91da
+SHA1 (patch-idlib_math_Simd__AVX.h) = 8a9347d797a3a53e47b4df4ef721873e01b23da3
+SHA1 (patch-idlib_math_Simd__AVX2.h) = e88cb5d26d53a13f04ab817ae9cc1480555d75bd
+SHA1 (patch-renderer_qgl.h) = 4ec1b4b233046987874a8f366830fd5cfc2c564f
+SHA1 (patch-sys_gllog_gl__extensions.cpp.m4) = eeb4961c611e86b8e7ebbe333667ff9e561c4cad
+SHA1 (patch-sys_linux_main.cpp) = 2f15b1c3b635fc5f32fccbbc7f6ba39da17d8327
+SHA1 (patch-sys_osx_DOOMController.mm) = 492c6555fb0550e6eb41617176574b8c616ff48d
+SHA1 (patch-sys_scons_SConscript.darkmod) = 076e5663f2b16b88892b49d10ec11278d9be98f5
+SHA1 (patch-sys_sys__local.cpp) = 265e7f1c8c42d33264272ff079778355da89184b
+SHA1 (patch-sys_sys__local.h) = 20eb3286e84c1be82fc67d51c3ef79612c3d119e
+SHA1 (patch-sys_sys__public.h) = 5549b99eb433a543d5f086e2ae9432ba3f08d714
diff --git a/thedarkmod/patches/patch-SConstruct b/thedarkmod/patches/patch-SConstruct
new file mode 100644
index 0000000000..b0028ed615
--- /dev/null
+++ b/thedarkmod/patches/patch-SConstruct
@@ -0,0 +1,28 @@
+$NetBSD$
+
+--- SConstruct.orig	2019-02-02 17:51:46.000000000 +0000
++++ SConstruct
+@@ -12,7 +12,8 @@ import scons_utils
+ conf_filename='site.conf'
+ # choose configuration variables which should be saved between runs
+ # ( we handle all those as strings )
+-serialized=['CC', 'CXX', 'JOBS', 'BUILD', 'GL_HARDLINK',
++serialized=['CC', 'CXX', 'CFLAGS', 'CXXFLAGS', 'LINKFLAGS',
++	'JOBS', 'BUILD', 'GL_HARDLINK',
+ 	'DEBUG_MEMORY', 'LIBC_MALLOC', 'ID_MCHECK', 'NOCURL',
+ 	'BUILD_ROOT', 'BASEFLAGS', 'SILENT', 'NO_GCH', 'OPENMP',
+ 	'TARGET_ARCH' ]
+@@ -214,11 +215,11 @@ LINK = CXX
+ # BASE + GAME + OPT for game
+ # _noopt versions of the environements are built without the OPT
+ 
+-BASECPPFLAGS = [ ]
++BASECPPFLAGS = [ CFLAGS.split(" "), CXXFLAGS.split(" ") ]
+ CORECPPPATH = [ ]
+ CORELIBPATH = [ ]
+ CORECPPFLAGS = [ ]
+-BASELINKFLAGS = [ ]
++BASELINKFLAGS = [ LINKFLAGS.split(" ") ]
+ CORELINKFLAGS = [ ]
+ 
+ # for release build, further optimisations that may not work on all files
diff --git a/thedarkmod/patches/patch-TypeInfo_main.cpp b/thedarkmod/patches/patch-TypeInfo_main.cpp
new file mode 100644
index 0000000000..a5fabcab12
--- /dev/null
+++ b/thedarkmod/patches/patch-TypeInfo_main.cpp
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- TypeInfo/main.cpp.orig	2019-02-02 17:51:39.000000000 +0000
++++ TypeInfo/main.cpp
+@@ -221,7 +221,7 @@ void			idSysLocal::DebugVPrintf( const c
+ 
+ double			idSysLocal::GetClockTicks( void ) { return 0.0; }
+ double			idSysLocal::ClockTicksPerSecond( void ) { return 1.0; }
+-cpuid_t			idSysLocal::GetProcessorId( void ) { return (cpuid_t)0; }
++id_cpuid_t		idSysLocal::GetProcessorId( void ) { return (cpuid_t)0; }
+ const char *	idSysLocal::GetProcessorString( void ) { return ""; }
+ void			idSysLocal::FPU_SetFTZ( bool enable ) {}
+ void			idSysLocal::FPU_SetDAZ( bool enable ) {}
diff --git a/thedarkmod/patches/patch-game_anim_Anim__Blend.cpp b/thedarkmod/patches/patch-game_anim_Anim__Blend.cpp
new file mode 100644
index 0000000000..1a4da7d6b6
--- /dev/null
+++ b/thedarkmod/patches/patch-game_anim_Anim__Blend.cpp
@@ -0,0 +1,16 @@
+$NetBSD$
+
+--- game/anim/Anim_Blend.cpp.orig	2019-02-02 17:51:30.000000000 +0000
++++ game/anim/Anim_Blend.cpp
+@@ -3666,11 +3666,7 @@ bool idDeclModelDef::Parse( const char *
+ 			}
+ 
+ 			for( i = ANIMCHANNEL_ALL + 1; i < ANIM_NumAnimChannels; i++ ) {
+-#if MACOS_X || __linux__
+ 				if ( !strcasecmp( channelNames[ i ], token2.c_str() ) )
+-#else
+-				if ( !stricmp( channelNames[ i ], token2.c_str() ) )
+-#endif
+ 				{
+ 					break;
+ 				}
diff --git a/thedarkmod/patches/patch-idlib_bv_Frustum.cpp b/thedarkmod/patches/patch-idlib_bv_Frustum.cpp
new file mode 100644
index 0000000000..57c0146578
--- /dev/null
+++ b/thedarkmod/patches/patch-idlib_bv_Frustum.cpp
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- idlib/bv/Frustum.cpp.orig	2019-02-02 17:51:35.000000000 +0000
++++ idlib/bv/Frustum.cpp
+@@ -2033,7 +2033,7 @@ bool idFrustum::ProjectionBounds( const 
+ 	return ProjectionBounds( idBox( bounds, vec3_origin, mat3_identity ), projectionBounds );
+ }
+ 
+-#if !defined(__linux__) && !defined(MACOS_X)
++#if !defined(unix) && !defined(__unix__) && !defined(__unix)
+ 
+ /*
+ ============
diff --git a/thedarkmod/patches/patch-idlib_math_Simd.cpp b/thedarkmod/patches/patch-idlib_math_Simd.cpp
new file mode 100644
index 0000000000..091b0d4ed0
--- /dev/null
+++ b/thedarkmod/patches/patch-idlib_math_Simd.cpp
@@ -0,0 +1,31 @@
+$NetBSD$
+
+--- idlib/math/Simd.cpp.orig	2019-02-02 17:51:35.000000000 +0000
++++ idlib/math/Simd.cpp
+@@ -56,7 +56,7 @@ idSIMD::InitProcessor
+ void idSIMD::InitProcessor( const char *module, bool forceGeneric ) {
+ 	idSIMDProcessor *newProcessor;
+ 
+-	cpuid_t cpuid = idLib::sys->GetProcessorId();
++	id_cpuid_t cpuid = idLib::sys->GetProcessorId();
+ 
+ 	/*
+ 	* Tels: Bug #2413: Under Linux, cpuid_t is 0, so use inline assembly to get
+@@ -103,7 +103,7 @@ void idSIMD::InitProcessor( const char *
+ 	}
+ 
+ 	//idLib::common->Printf( "cpuid result is %i (c = %i d = %i)\n", result, c, d);
+-	cpuid = ( cpuid_t )result;
++	cpuid = ( id_cpuid_t )result;
+ #endif
+ 
+ 	// Print what we found to console
+@@ -3986,7 +3986,7 @@ void idSIMD::Test_f( const idCmdArgs &ar
+ 	p_generic = generic;
+ 
+ 	if ( idStr::Length( args.Argv( 1 ) ) != 0 ) {
+-		cpuid_t cpuid = idLib::sys->GetProcessorId();
++		id_cpuid_t cpuid = idLib::sys->GetProcessorId();
+ 		idStr argString = args.Args();
+ 
+ 		argString.Remove( ' ' );
diff --git a/thedarkmod/patches/patch-idlib_math_Simd.h b/thedarkmod/patches/patch-idlib_math_Simd.h
new file mode 100644
index 0000000000..485f427604
--- /dev/null
+++ b/thedarkmod/patches/patch-idlib_math_Simd.h
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- idlib/math/Simd.h.orig	2019-02-02 17:51:35.000000000 +0000
++++ idlib/math/Simd.h
+@@ -91,7 +91,7 @@ class idSIMDProcessor {
+ public:
+ 									idSIMDProcessor( void ) { cpuid = CPUID_NONE; }
+ 
+-	cpuid_t							cpuid;
++	id_cpuid_t							cpuid;
+ 
+ 	virtual const char * VPCALL		GetName( void ) const = 0;
+ 
diff --git a/thedarkmod/patches/patch-idlib_math_Simd__AVX.h b/thedarkmod/patches/patch-idlib_math_Simd__AVX.h
new file mode 100644
index 0000000000..412a161b29
--- /dev/null
+++ b/thedarkmod/patches/patch-idlib_math_Simd__AVX.h
@@ -0,0 +1,24 @@
+$NetBSD$
+
+--- idlib/math/Simd_AVX.h.orig	2019-02-02 17:51:35.000000000 +0000
++++ idlib/math/Simd_AVX.h
+@@ -23,17 +23,11 @@
+ ===============================================================================
+ */
+ 
+-#ifdef __linux__
+ #define ALLOW_AVX __attribute__ ((__target__ ("avx")))
+-#else
+-#define ALLOW_AVX
+-#endif
+-
+-
+ 
+ class idSIMD_AVX : public idSIMD_SSE3 {
+ public:
+ 	virtual const char * VPCALL GetName( void ) const;
+ 	virtual void VPCALL CullByFrustum( idDrawVert *verts, const int numVerts, const idPlane frustum[6], byte *pointCull, float epsilon ) ALLOW_AVX;
+ 	virtual void VPCALL CullByFrustum2( idDrawVert *verts, const int numVerts, const idPlane frustum[6], unsigned short *pointCull, float epsilon ) ALLOW_AVX;
+-};
+\ No newline at end of file
++};
diff --git a/thedarkmod/patches/patch-idlib_math_Simd__AVX2.h b/thedarkmod/patches/patch-idlib_math_Simd__AVX2.h
new file mode 100644
index 0000000000..7eb1a1de93
--- /dev/null
+++ b/thedarkmod/patches/patch-idlib_math_Simd__AVX2.h
@@ -0,0 +1,18 @@
+$NetBSD$
+
+--- idlib/math/Simd_AVX2.h.orig	2019-02-02 17:51:35.000000000 +0000
++++ idlib/math/Simd_AVX2.h
+@@ -23,13 +23,7 @@
+ ===============================================================================
+ */
+ 
+-#ifdef __linux__
+ #define ALLOW_AVX2 __attribute__ ((__target__ ("avx2")))  __attribute__ ((__target__ ("fma")))
+-#else
+-#define ALLOW_AVX2
+-#endif
+-
+-
+ 
+ class idSIMD_AVX2 : public idSIMD_AVX {
+ public:
diff --git a/thedarkmod/patches/patch-renderer_qgl.h b/thedarkmod/patches/patch-renderer_qgl.h
new file mode 100644
index 0000000000..70f477e339
--- /dev/null
+++ b/thedarkmod/patches/patch-renderer_qgl.h
@@ -0,0 +1,45 @@
+$NetBSD$
+
+Use GL/gl.h on !linux...
+
+--- renderer/qgl.h.orig	2019-02-02 17:51:32.000000000 +0000
++++ renderer/qgl.h
+@@ -29,19 +29,13 @@
+ #define GL_GLEXT_LEGACY
+ #include <OpenGL/gl.h>
+ 
+-#elif defined( __linux__ )
+-
++#else
+ // using our local glext.h
+ // http://oss.sgi.com/projects/ogl-sample/ABI/
+ #define GL_GLEXT_LEGACY
+ #define GLX_GLXEXT_LEGACY
+ #include <GL/gl.h>
+ #include <GL/glx.h>
+-
+-#else
+-
+-#include <gl.h>
+-
+ #endif
+ 
+ #ifndef APIENTRY
+@@ -507,8 +501,6 @@ extern BOOL ( WINAPI * qwglSwapLayerBuff
+ 
+ #endif	// _WIN32
+ 
+-#if defined( __linux__ )
+-
+ //GLX Functions
+ extern XVisualInfo * (*qglXChooseVisual)( Display *dpy, int screen, int *attribList );
+ extern GLXContext (*qglXCreateContext)( Display *dpy, XVisualInfo *vis, GLXContext shareList, Bool direct );
+@@ -523,8 +515,6 @@ extern GLExtension_t (*qglXGetProcAddres
+ 	#include "../sys/linux/qgl_enforce.h"
+ #endif
+ 
+-#endif // __linux__
+-
+ #endif	// hardlinlk vs dlopen
+ 
+ #endif
diff --git a/thedarkmod/patches/patch-sys_gllog_gl__extensions.cpp.m4 b/thedarkmod/patches/patch-sys_gllog_gl__extensions.cpp.m4
new file mode 100644
index 0000000000..0d2d8972b5
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_gllog_gl__extensions.cpp.m4
@@ -0,0 +1,21 @@
+$NetBSD$
+
+--- sys/gllog/gl_extensions.cpp.m4.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/gllog/gl_extensions.cpp.m4
+@@ -46,16 +46,12 @@ GLExtension_t GLimp_ExtensionPointer( co
+ 	}
+ 	#endif
+ 	GLExtension_t ret;
+-	#if defined(__linux__)    
+ 	// for some reason glXGetProcAddressARB doesn't work on RH9?
+ 	ret = qglXGetProcAddressARB((const GLubyte *) name);
+ 	if ( !ret ) {
+ 		common->Printf("glXGetProcAddressARB failed: \"%s\"\n", name);
+ 		return StubFunction;
+ 	}
+-	#else
+-    #error Need OS define
+-	#endif
+ 	return ret;
+ #endif
+ }
diff --git a/thedarkmod/patches/patch-sys_linux_main.cpp b/thedarkmod/patches/patch-sys_linux_main.cpp
new file mode 100644
index 0000000000..d1cb8129b3
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_linux_main.cpp
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- sys/linux/main.cpp.orig	2019-02-02 17:51:37.000000000 +0000
++++ sys/linux/main.cpp
+@@ -246,7 +246,7 @@ void Sys_Shutdown( void ) {
+ Sys_GetProcessorId
+ ===============
+ */
+-cpuid_t Sys_GetProcessorId( void ) {
++id_cpuid_t Sys_GetProcessorId( void ) {
+ 	return CPUID_GENERIC;
+ }
+ 
diff --git a/thedarkmod/patches/patch-sys_osx_DOOMController.mm b/thedarkmod/patches/patch-sys_osx_DOOMController.mm
new file mode 100644
index 0000000000..a974d8c523
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_osx_DOOMController.mm
@@ -0,0 +1,15 @@
+$NetBSD$
+
+--- sys/osx/DOOMController.mm.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/osx/DOOMController.mm
+@@ -459,8 +459,8 @@ void Sys_Shutdown( void ) {
+ Sys_GetProcessorId
+ ===============
+ */
+-cpuid_t Sys_GetProcessorId( void ) {
+-	cpuid_t cpuid = CPUID_GENERIC;
++id_cpuid_t Sys_GetProcessorId( void ) {
++	id_cpuid_t cpuid = CPUID_GENERIC;
+ #if defined(__ppc__)
+ 	cpuid |= CPUID_ALTIVEC;
+ #elif defined(__i386__)
diff --git a/thedarkmod/patches/patch-sys_scons_SConscript.darkmod b/thedarkmod/patches/patch-sys_scons_SConscript.darkmod
new file mode 100644
index 0000000000..25427a1960
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_scons_SConscript.darkmod
@@ -0,0 +1,43 @@
+$NetBSD$
+
+--- sys/scons/SConscript.darkmod.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/scons/SConscript.darkmod
+@@ -47,32 +47,24 @@ local_env = g_env_game.Clone()
+ # greebo: Add all custom-built libraries
+ if (TARGET_ARCH == 'x86'):
+ 	local_env.Append(LIBS = [
+-		File('#/linux/libcurl/libcurl.a'),
+ 		File('#/linux/polarssl/libpolarssl.a'),
+-		File('#/linux/ffmpeg/libavformat.a'),
+-		File('#/linux/ffmpeg/libavcodec.a'),
+-		File('#/linux/ffmpeg/libavutil.a'),
+-		File('#/linux/ffmpeg/libswscale.a'),
+-		File('#/linux/ffmpeg/libswresample.a')
+ 	])
+ if (TARGET_ARCH == 'x64'):
+ 	local_env.Append(LIBS = [
+-		File('#/linux/libcurl/lib64/libcurl.a'),
+ 		File('#/linux/polarssl/lib64/libpolarssl.a'),
+-		File('#/linux/ffmpeg/lib64/libavformat.a'),
+-		File('#/linux/ffmpeg/lib64/libavcodec.a'),
+-		File('#/linux/ffmpeg/lib64/libavutil.a'),
+-		File('#/linux/ffmpeg/lib64/libswscale.a'),
+-		File('#/linux/ffmpeg/lib64/libswresample.a')
+ 	])
+ 
+ # Add all standard libraries (taken from system)
+ local_env.Append( LIBS = [ 'X11', 'Xext', 'Xxf86vm' ] ) # 'Xxf86dga', 
+ #local_env.Append( LIBPATH = [ '/usr/X11R6/lib' ] )
+-local_env.Append( LIBPATH = [ '/usr/lib/i386-linux-gnu' ] )
++local_env.Append( LIBS = [ 'curl' ] )
+ local_env.Append( LIBS = [ 'openal' ] )
+-local_env.Append( LIBS = [ 'dl' ] )
+ local_env.Append( LIBS = [ 'pthread' ] )
++local_env.Append( LIBS = [ 'avformat' ] )
++local_env.Append( LIBS = [ 'avcodec' ] )
++local_env.Append( LIBS = [ 'avutil' ] )
++local_env.Append( LIBS = [ 'swscale' ] )
++local_env.Append( LIBS = [ 'swresample' ] )
+ local_env.Append( LIBS = [ 'stdc++fs' ] )
+ 
+ thedarkmod = local_env.Program( target = 'thedarkmod', source = source_list )
diff --git a/thedarkmod/patches/patch-sys_sys__local.cpp b/thedarkmod/patches/patch-sys_sys__local.cpp
new file mode 100644
index 0000000000..4a7a991137
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_sys__local.cpp
@@ -0,0 +1,29 @@
+$NetBSD$
+
+--- sys/sys_local.cpp.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/sys_local.cpp
+@@ -44,7 +44,7 @@ double idSysLocal::ClockTicksPerSecond( 
+ 	return Sys_ClockTicksPerSecond();
+ }
+ 
+-cpuid_t idSysLocal::GetProcessorId( void ) {
++id_cpuid_t idSysLocal::GetProcessorId( void ) {
+ 	return Sys_GetProcessorId();
+ }
+ 
+@@ -84,13 +84,11 @@ void idSysLocal::DLL_GetFileName( const 
+ #ifdef _WIN32
+     // e.g. gamex64.dll
+     idStr::snPrintf(dllName, maxLength, "%s%s.dll", baseName, CPUSTRING);
+-#elif defined( __linux__ )
+-    // e.g. gamex64.so
+-    idStr::snPrintf(dllName, maxLength, "%s%s.so", baseName, CPUSTRING);
+ #elif defined( MACOS_X )
+ 	idStr::snPrintf( dllName, maxLength, "%s" ".dylib", baseName );
+ #else
+-#error OS define is required
++    // e.g. gamex64.so
++    idStr::snPrintf(dllName, maxLength, "%s%s.so", baseName, CPUSTRING);
+ #endif
+ }
+ 
diff --git a/thedarkmod/patches/patch-sys_sys__local.h b/thedarkmod/patches/patch-sys_sys__local.h
new file mode 100644
index 0000000000..cbd8e1076a
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_sys__local.h
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- sys/sys_local.h.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/sys_local.h
+@@ -31,7 +31,7 @@ public:
+ 
+ 	virtual double			GetClockTicks( void );
+ 	virtual double			ClockTicksPerSecond( void );
+-	virtual cpuid_t			GetProcessorId( void );
++	virtual id_cpuid_t		GetProcessorId( void );
+ 	virtual const char *	GetProcessorString( void );
+ 	virtual void			FPU_SetFTZ( bool enable );
+ 	virtual void			FPU_SetDAZ( bool enable );
diff --git a/thedarkmod/patches/patch-sys_sys__public.h b/thedarkmod/patches/patch-sys_sys__public.h
new file mode 100644
index 0000000000..70ef4142e3
--- /dev/null
+++ b/thedarkmod/patches/patch-sys_sys__public.h
@@ -0,0 +1,75 @@
+$NetBSD$
+
+--- sys/sys_public.h.orig	2019-02-02 17:51:38.000000000 +0000
++++ sys/sys_public.h
+@@ -16,6 +16,9 @@
+ #ifndef __SYS_PUBLIC__
+ #define __SYS_PUBLIC__
+ 
++#include <stdarg.h>
++#include <stdlib.h>
++
+ /*
+ ===============================================================================
+ 
+@@ -137,21 +140,18 @@
+ #endif
+ 
+ 
+-// Linux
+-#ifdef __linux__
+-
+ #define BUILD_OS_ID					2
+ 
+ #ifdef __i386__
+-	#define	BUILD_STRING				"linux-x86"
++	#define	BUILD_STRING				"unix-x86"
+ 	#define CPUSTRING					"x86"
+ 	#define CPU_EASYARGS				1
+ #elif defined(__x86_64__)
+-	#define	BUILD_STRING				"linux-x86_64"
++	#define	BUILD_STRING				"unix-x86_64"
+ 	#define CPUSTRING					"x64"
+ 	#define CPU_EASYARGS				0
+ #elif defined(__ppc__)
+-	#define	BUILD_STRING				"linux-ppc"
++	#define	BUILD_STRING				"unix-ppc"
+ 	#define CPUSTRING					"ppc"
+ 	#define CPU_EASYARGS				0
+ #endif
+@@ -177,8 +177,6 @@
+ 
+ #define THREAD_RETURN_TYPE				void *
+ 
+-#endif
+-
+ #if !defined(ID_LITTLE_ENDIAN) && !defined(ID_BIG_ENDIAN)
+ 	#if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__)
+ 		#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+@@ -225,7 +223,7 @@ typedef enum {
+ //	CPUID_CMOV							= 0x02000,	// Conditional Move (CMOV) and fast floating point comparison (FCOMI) instructions
+ 	CPUID_FTZ							= 0x04000,	// Flush-To-Zero mode (denormal results are flushed to zero)
+ 	CPUID_DAZ							= 0x08000	// Denormals-Are-Zero mode (denormal source operands are set to zero)
+-} cpuid_t;
++} id_cpuid_t;
+ 
+ typedef enum {
+ 	FPU_ROUNDING_TO_NEAREST				= 0,
+@@ -316,7 +314,7 @@ double			Sys_ClockTicksPerSecond( void )
+ uint64_t Sys_GetTimeMicroseconds( void );
+ 
+ // returns a selection of the CPUID_* flags
+-cpuid_t			Sys_GetProcessorId( void );
++id_cpuid_t	Sys_GetProcessorId( void );
+ const char *	Sys_GetProcessorString( void );
+ 
+ // sets the FPU precision to double
+@@ -570,7 +568,7 @@ public:
+ 
+ 	virtual double			GetClockTicks( void ) = 0;
+ 	virtual double			ClockTicksPerSecond( void ) = 0;
+-	virtual cpuid_t			GetProcessorId( void ) = 0;
++	virtual id_cpuid_t		GetProcessorId( void ) = 0;
+ 	virtual const char *	GetProcessorString( void ) = 0;
+ 	virtual void			FPU_SetFTZ( bool enable ) = 0;
+ 	virtual void			FPU_SetDAZ( bool enable ) = 0;


Home | Main Index | Thread Index | Old Index