The refresher is linked statically into the client, no more 'ref_gl.so'.

This commit is contained in:
Alejandro Ricoveri 2013-04-26 16:40:04 -04:30 committed by Yamagi Burmeister
parent 55d6a601c9
commit a7f02a5b0e
5 changed files with 41 additions and 32 deletions

View file

@ -234,7 +234,8 @@ endif
# ----------
# Builds everything
all: client server refresher game
#all: client server refresher game
all: client server game
# ----------
@ -671,14 +672,14 @@ OPENGL_OBJS_ = \
src/refresh/files/sp2.o \
src/refresh/files/tga.o \
src/refresh/files/jpeg.o \
src/refresh/files/wal.o \
src/refresh/files/wal.o# \
src/common/shared/shared.o
ifeq ($(OSTYPE), Windows)
OPENGL_OBJS_ += \
src/backends/windows/shared/mem.o
else
OPENGL_OBJS_ += \
#else
#OPENGL_OBJS_ += \
src/backends/unix/shared/hunk.o
endif
@ -714,9 +715,9 @@ release/quake2.exe : $(CLIENT_OBJS) icon
@echo "===> LD $@"
${Q}$(CC) build/icon/icon.res $(CLIENT_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
else
release/quake2 : $(CLIENT_OBJS)
release/quake2 : $(CLIENT_OBJS) $(OPENGL_OBJS)
@echo "===> LD $@"
${Q}$(CC) $(CLIENT_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
${Q}$(CC) $(CLIENT_OBJS) $(OPENGL_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
endif
# release/q2ded
@ -731,19 +732,19 @@ release/q2ded : $(SERVER_OBJS)
endif
# release/ref_gl.so
ifeq ($(OSTYPE), Windows)
release/ref_gl.dll : $(OPENGL_OBJS)
@echo "===> LD $@"
${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
else ifeq ($(OSTYPE), Darwin)
release/ref_gl.so : $(OPENGL_OBJS)
@echo "===> LD $@"
${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
else
release/ref_gl.so : $(OPENGL_OBJS)
@echo "===> LD $@"
${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(X11LDFLAGS) -o $@
endif
#ifeq ($(OSTYPE), Windows)
#release/ref_gl.dll : $(OPENGL_OBJS)
# @echo "===> LD $@"
# ${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
#else ifeq ($(OSTYPE), Darwin)
#release/ref_gl.so : $(OPENGL_OBJS)
# @echo "===> LD $@"
# ${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(SDLLDFLAGS) -o $@
#else
#release/ref_gl.so : $(OPENGL_OBJS)
# @echo "===> LD $@"
# ${Q}$(CC) $(OPENGL_OBJS) $(LDFLAGS) $(X11LDFLAGS) -o $@
#endif
# release/baseq2/game.so
ifeq ($(OSTYPE), Windows)

View file

@ -187,7 +187,7 @@ VID_FreeReflib(void)
IN_BackendShutdown_fp();
}
Sys_FreeLibrary(reflib_library);
//Sys_FreeLibrary(reflib_library);
}
IN_KeyboardInit_fp = NULL;
@ -207,7 +207,7 @@ qboolean
VID_LoadRefresh(char *name)
{
refimport_t ri;
R_GetRefAPI_t GetRefAPI;
//R_GetRefAPI_t GetRefAPI;
char fn[MAX_OSPATH];
char *path;
@ -235,12 +235,12 @@ VID_LoadRefresh(char *name)
path = Cvar_Get("basedir", ".", CVAR_NOSET)->string;
snprintf(fn, MAX_OSPATH, "%s/%s", path, name);
Sys_LoadLibrary(fn, NULL, &reflib_library);
/*Sys_LoadLibrary(fn, NULL, &reflib_library);
if (reflib_library == 0)
{
return false;
}
}*/
ri.Cmd_AddCommand = Cmd_AddCommand;
@ -264,18 +264,20 @@ VID_LoadRefresh(char *name)
ri.Vid_MenuInit = VID_MenuInit;
ri.Vid_NewWindow = VID_NewWindow;
if ((GetRefAPI = (void *)Sys_GetProcAddress(reflib_library, "R_GetRefAPI")) == 0)
/*if ((GetRefAPI = (void *)Sys_GetProcAddress(reflib_library, "R_GetRefAPI")) == 0)
{
Com_Error(ERR_FATAL, "Sys_GetProcAddress failed on %s", name);
}
}*/
re = GetRefAPI(ri);
if (re.api_version != API_VERSION)
//re = GetRefAPI(ri);
re = R_GetRefAPI(ri);
// This is never going to happen
/*if (re.api_version != API_VERSION)
{
VID_FreeReflib();
Com_Error(ERR_FATAL, "%s has incompatible api_version", name);
}
}*/
/* Init IN (Mouse) */
in_state.IN_CenterView_fp = IN_CenterView;

View file

@ -250,7 +250,8 @@ CL_PrepRefresh(void)
/* register models, pics, and skins */
Com_Printf("Map: %s\r", mapname);
SCR_UpdateScreen();
re.BeginRegistration(mapname);
//re.BeginRegistration(mapname);
R_BeginRegistration (mapname);
Com_Printf(" \r");
/* precache status bar pics */

View file

@ -213,4 +213,9 @@ typedef struct {
/* this is the only function actually exported at the linker level */
typedef refexport_t (*R_GetRefAPI_t)(refimport_t);
/* */
refexport_t R_GetRefAPI(refimport_t rimp);
void R_BeginRegistration(char *map);
#endif

View file

@ -1630,7 +1630,7 @@ R_GetRefAPI(refimport_t rimp)
* this is only here so the functions
* in shared source files can link
*/
void
/*void
Sys_Error(char *error, ...)
{
va_list argptr;
@ -1654,5 +1654,5 @@ Com_Printf(char *fmt, ...)
va_end(argptr);
ri.Con_Printf(PRINT_ALL, "%s", text);
}
}*/