added linux support and fixed a few bugs in sdktools

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%40962
This commit is contained in:
David Anderson 2007-06-16 18:33:21 +00:00
parent 0b9447d986
commit 212407d9f6
3 changed files with 14 additions and 17 deletions

View File

@ -9,12 +9,13 @@ SOURCEMM = ../../../../sourcemm
### EDIT BELOW FOR OTHER PROJECTS ### ### EDIT BELOW FOR OTHER PROJECTS ###
##################################### #####################################
PROJECT = sample PROJECT = sdktools.ext
#Uncomment for SourceMM-enabled extensions #Uncomment for SourceMM-enabled extensions
#LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so #LINK_HL2 = $(HL2LIB)/tier1_i486.a vstdlib_i486.so tier0_i486.so
OBJECTS = sdk/smsdk_ext.cpp extension.cpp OBJECTS = sdk/smsdk_ext.cpp extension.cpp vdecoder.cpp vcallbuilder.cpp \
vcaller.cpp vnatives.cpp
############################################## ##############################################
### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ### ### CONFIGURE ANY OTHER FLAGS/OPTIONS HERE ###
@ -36,7 +37,7 @@ INCLUDE = -I. -I.. -Isdk -I$(HL2PUB) -I$(HL2PUB)/dlls -I$(HL2PUB)/engine -I$(HL2
-I$(HL2PUB)/vstdlib -I$(HL2SDK)/tier1 -I$(SMM_TRUNK) -I$(SMM_TRUNK)/sourcehook -I$(SMM_TRUNK)/sourcemm \ -I$(HL2PUB)/vstdlib -I$(HL2SDK)/tier1 -I$(SMM_TRUNK) -I$(SMM_TRUNK)/sourcehook -I$(SMM_TRUNK)/sourcemm \
-I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions \ -I$(SMSDK)/public -I$(SMSDK)/public/sourcepawn -I$(SMSDK)/public/extensions \
CFLAGS = -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -fPIC -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H CFLAGS = -D_LINUX -DNDEBUG -Dstricmp=strcasecmp -D_stricmp=strcasecmp -D_strnicmp=strncasecmp -Dstrnicmp=strncasecmp -D_snprintf=snprintf -D_vsnprintf=vsnprintf -D_alloca=alloca -Dstrcmpi=strcasecmp -Wall -Werror -Wno-switch -Wno-unused -fPIC -msse -DSOURCEMOD_BUILD -DHAVE_STDINT_H
CPPFLAGS = -Wno-non-virtual-dtor -fno-exceptions -fno-rtti CPPFLAGS = -Wno-non-virtual-dtor -fno-exceptions -fno-rtti
################################################ ################################################

View File

@ -83,9 +83,9 @@ static cell_t PrepSDKCall_SetSignature(IPluginContext *pContext, const cell_t *p
void *addrInBase = NULL; void *addrInBase = NULL;
if (params[1] == SDKLibrary_Server) if (params[1] == SDKLibrary_Server)
{ {
addrInBase = g_SMAPI->serverFactory(false); addrInBase = (void *)g_SMAPI->serverFactory(false);
} else if (params[1] == SDKLibrary_Engine) { } else if (params[1] == SDKLibrary_Engine) {
addrInBase = g_SMAPI->engineFactory(false); addrInBase = (void *)g_SMAPI->engineFactory(false);
} }
if (addrInBase == NULL) if (addrInBase == NULL)
{ {

View File

@ -145,9 +145,9 @@ DataStatus EncodeValveParam(IPluginContext *pContext,
cell_t *addr; cell_t *addr;
pContext->LocalToPhysAddr(param, &addr); pContext->LocalToPhysAddr(param, &addr);
addr[0] = v->x; addr[0] = sp_ftoc(v->x);
addr[1] = v->y; addr[1] = sp_ftoc(v->y);
addr[2] = v->z; addr[2] = sp_ftoc(v->z);
return Data_Okay; return Data_Okay;
} }
@ -165,9 +165,9 @@ DataStatus EncodeValveParam(IPluginContext *pContext,
cell_t *addr; cell_t *addr;
pContext->LocalToPhysAddr(param, &addr); pContext->LocalToPhysAddr(param, &addr);
addr[0] = q->x; addr[0] = sp_ftoc(q->x);
addr[1] = q->y; addr[1] = sp_ftoc(q->y);
addr[2] = q->z; addr[2] = sp_ftoc(q->z);
return Data_Okay; return Data_Okay;
} }
@ -380,7 +380,7 @@ DataStatus DecodeValveParam(IPluginContext *pContext,
pContext->ThrowNativeError("Entity index %d is not a valid client", param); pContext->ThrowNativeError("Entity index %d is not a valid client", param);
return Data_Fail; return Data_Fail;
} }
CBaseEntity *pEntity; CBaseEntity *pEntity = NULL;
if (pEdict) if (pEdict)
{ {
IServerUnknown *pUnknown = pEdict->GetUnknown(); IServerUnknown *pUnknown = pEdict->GetUnknown();
@ -395,8 +395,6 @@ DataStatus DecodeValveParam(IPluginContext *pContext,
pContext->ThrowNativeError("Entity %d is not a CBaseEntity"); pContext->ThrowNativeError("Entity %d is not a CBaseEntity");
return Data_Fail; return Data_Fail;
} }
} else {
pEdict = NULL;
} }
CBaseEntity **ebuf = (CBaseEntity **)buffer; CBaseEntity **ebuf = (CBaseEntity **)buffer;
@ -450,7 +448,7 @@ DataStatus DecodeValveParam(IPluginContext *pContext,
return Data_Fail; return Data_Fail;
} }
} }
CBaseEntity *pEntity; CBaseEntity *pEntity = NULL;
if (pEdict) if (pEdict)
{ {
IServerUnknown *pUnknown = pEdict->GetUnknown(); IServerUnknown *pUnknown = pEdict->GetUnknown();
@ -465,8 +463,6 @@ DataStatus DecodeValveParam(IPluginContext *pContext,
pContext->ThrowNativeError("Entity %d is not a CBaseEntity"); pContext->ThrowNativeError("Entity %d is not a CBaseEntity");
return Data_Fail; return Data_Fail;
} }
} else {
pEdict = NULL;
} }
CBaseEntity **ebuf = (CBaseEntity **)buffer; CBaseEntity **ebuf = (CBaseEntity **)buffer;