mirror of
https://github.com/UberGames/lilium-voyager.git
synced 2024-11-10 14:41:42 +00:00
* Compile time and runtime checks for SDL >= 1.2.7
* Modified versioning to play nice with the reverted Makefile change
This commit is contained in:
parent
d5e9f1216e
commit
e56a151a97
4 changed files with 58 additions and 15 deletions
37
Makefile
37
Makefile
|
@ -1,12 +1,5 @@
|
|||
#
|
||||
# Quake3 Unix Makefile
|
||||
#
|
||||
# Nov '98 by Zoid <zoid@idsoftware.com>
|
||||
#
|
||||
# Loki Hacking by Bernd Kreimeier
|
||||
# and a little more by Ryan C. Gordon.
|
||||
# and a little more by Rafael Barrero
|
||||
# and a little more by the ioq3 cr3w
|
||||
# ioq3 Makefile
|
||||
#
|
||||
# GNU Make required
|
||||
#
|
||||
|
@ -144,8 +137,8 @@ SDLHDIR=$(MOUNT_DIR)/SDL12
|
|||
LIBSDIR=$(MOUNT_DIR)/libs
|
||||
|
||||
# extract version info
|
||||
VERSION=$(shell grep "\#define Q3_VERSION" $(CMDIR)/q_shared.h | \
|
||||
sed -e 's/.*".* \([^ ]*\)"/\1/')
|
||||
VERSION=$(shell grep "\#define *PRODUCT_VERSION" $(CMDIR)/q_shared.h | \
|
||||
sed -e 's/[^"]*"\(.*\)"/\1/')
|
||||
|
||||
USE_SVN=
|
||||
ifeq ($(wildcard .svn),.svn)
|
||||
|
@ -800,7 +793,7 @@ release:
|
|||
|
||||
# Create the build directories and tools, print out
|
||||
# an informational message, then start building
|
||||
targets: makedirs tools
|
||||
targets: makedirs tools libversioncheck
|
||||
@echo ""
|
||||
@echo "Building ioquake3 in $(B):"
|
||||
@echo " PLATFORM: $(PLATFORM)"
|
||||
|
@ -869,6 +862,28 @@ $(Q)$(Q3LCC) -DMISSIONPACK -o $@ $<
|
|||
endef
|
||||
|
||||
|
||||
#############################################################################
|
||||
# LIBRARY VERSION CHECKS
|
||||
#############################################################################
|
||||
|
||||
MINSDL_MAJOR = 1
|
||||
MINSDL_MINOR = 2
|
||||
MINSDL_PATCH = 7
|
||||
|
||||
BASE_CFLAGS += -DMINSDL_MAJOR=$(MINSDL_MAJOR) \
|
||||
-DMINSDL_MINOR=$(MINSDL_MINOR) \
|
||||
-DMINSDL_PATCH=$(MINSDL_PATCH)
|
||||
|
||||
libversioncheck:
|
||||
@echo "#include \"SDL_version.h\"\n" \
|
||||
"#if SDL_VERSION_ATLEAST(" \
|
||||
"$(MINSDL_MAJOR),$(MINSDL_MINOR),$(MINSDL_PATCH)" \
|
||||
")\nMINSDL_PASSED\n#endif" | \
|
||||
$(CC) $(BASE_CFLAGS) -E - | grep -q MINSDL_PASSED || \
|
||||
( echo "SDL version $(MINSDL_MAJOR).$(MINSDL_MINOR).$(MINSDL_PATCH)" \
|
||||
"or greater required" && exit 1 )
|
||||
|
||||
|
||||
#############################################################################
|
||||
# CLIENT/SERVER
|
||||
#############################################################################
|
||||
|
|
|
@ -26,11 +26,13 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
// q_shared.h -- included first by ALL program modules.
|
||||
// A user mod should never modify this file
|
||||
|
||||
#define Q3_VERSION_BASE "ioq3 1.35"
|
||||
#define PRODUCT_NAME "ioq3"
|
||||
#define PRODUCT_VERSION "1.35"
|
||||
|
||||
#ifdef SVN_VERSION
|
||||
# define Q3_VERSION Q3_VERSION_BASE "_SVN" SVN_VERSION
|
||||
# define Q3_VERSION PRODUCT_NAME " " SVN_VERSION
|
||||
#else
|
||||
# define Q3_VERSION Q3_VERSION_BASE
|
||||
# define Q3_VERSION PRODUCT_NAME " " PRODUCT_VERSION
|
||||
#endif
|
||||
|
||||
#define CLIENT_WINDOW_TITLE "ioquake3"
|
||||
|
|
|
@ -22,6 +22,13 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
|
||||
#include "SDL.h"
|
||||
|
||||
#if !SDL_VERSION_ATLEAST(1, 2, 10)
|
||||
#define SDL_GL_ACCELERATED_VISUAL 15
|
||||
#define SDL_GL_SWAP_CONTROL 16
|
||||
#elif MINSDL_PATCH >= 10
|
||||
#error Code block no longer necessary, please remove
|
||||
#endif
|
||||
|
||||
#ifdef SMP
|
||||
#include "SDL_thread.h"
|
||||
#endif
|
||||
|
|
|
@ -35,6 +35,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
|
||||
#ifndef DEDICATED
|
||||
#include "SDL.h"
|
||||
#include "SDL_cpuinfo.h"
|
||||
#endif
|
||||
|
||||
#include "sys_local.h"
|
||||
|
@ -604,6 +605,24 @@ int main( int argc, char **argv )
|
|||
int i;
|
||||
char commandLine[ MAX_STRING_CHARS ] = { 0 };
|
||||
|
||||
#ifndef DEDICATED
|
||||
const SDL_version *ver = SDL_Linked_Version( );
|
||||
|
||||
#define STRING(s) #s
|
||||
#define XSTRING(s) STRING(s)
|
||||
#define MINSDL_VERSION \
|
||||
XSTRING(MINSDL_MAJOR) "." \
|
||||
XSTRING(MINSDL_MINOR) "." \
|
||||
XSTRING(MINSDL_PATCH)
|
||||
|
||||
if( SDL_VERSIONNUM( ver->major, ver->minor, ver->patch ) <
|
||||
SDL_VERSIONNUM( MINSDL_MAJOR, MINSDL_MINOR, MINSDL_PATCH ) )
|
||||
{
|
||||
Sys_Print( "SDL version " MINSDL_VERSION " or greater required\n" );
|
||||
Sys_Exit( 1 );
|
||||
}
|
||||
#endif
|
||||
|
||||
Sys_ParseArgs( argc, argv );
|
||||
Sys_SetBinaryPath( Sys_Dirname( argv[ 0 ] ) );
|
||||
Sys_SetDefaultInstallPath( DEFAULT_BASEDIR );
|
||||
|
|
Loading…
Reference in a new issue