ports/91840: [MAINTAINER UPDATE] games/darkplaces: minor fixes, integrate with quake-data

Alejandro Pulver alejandro at varnet.biz
Sun Jan 15 21:30:10 UTC 2006


>Number:         91840
>Category:       ports
>Synopsis:       [MAINTAINER UPDATE] games/darkplaces: minor fixes, integrate with quake-data
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 15 21:30:08 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Alejandro Pulver
>Release:        FreeBSD 5.4-RELEASE i386
>Organization:
>Environment:


System: FreeBSD 5.4-RELEASE #0: Sat May 21 12:14:47 ART 2005
    root at ale.varnet.bsd:/usr/src/sys/i386/compile/ATHLON-ALE



>Description:


* Integrate with quake-data (pkg-message is not needed anymore).
* Fix option SERVER that wasn't working and rename to DEDICATED.
* Remove pkg-plist (only 3 files).
* Use patches instead of ${REINPLACE_CMD} lines.
* Manage targets in a better way and remove "darkplaces" symlink.
* Compilation logs of OpenGL components are disabled by default, and can be enabled with the new option "gl_compilelogs".


>How-To-Repeat:





>Fix:


--- darkplaces.diff begins here ---
diff -urN /usr/ports/games/darkplaces/Makefile darkplaces/Makefile
--- /usr/ports/games/darkplaces/Makefile	Tue Oct  4 15:43:18 2005
+++ darkplaces/Makefile	Sun Jan 15 17:49:50 2006
@@ -24,80 +24,58 @@
 ALL_TARGET=	#
 
 OPTIONS=	CLIENT "Build GLX client" on \
+		DEDICATED "Build dedicated server" on \
 		OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
-		SERVER "Build dedicated server" on \
 		SDL_CLIENT "Build SDL client" on
 
-SUB_FILES=	pkg-message
-PKGMESSAGE=	${WRKDIR}/pkg-message
+.include "${.CURDIR}/../quake-data/Makefile.include"
 
 .include <bsd.port.pre.mk>
 
 .if !defined(WITH_CLIENT) && !defined(WITH_SDL_CLIENT) && \
     !defined(WITH_DEDICATED)
-IGNORE=		You must choose at least one option of CLIENT, SDL_CLIENT and DEDICATED
+IGNORE=		"Please select at least one of CLIENT, SDL_CLIENT and DEDICATED"
 .endif
 
 .if defined(WITH_CLIENT) || defined(WITH_SDL_CLIENT)
-# Loads libraries on run-time, thus RUN_DEPENDS
-RUN_DEPENDS=	${LOCALBASE}/lib/libvorbis.so:${PORTSDIR}/audio/libvorbis \
-		${LOCALBASE}/lib/libjpeg.so:${PORTSDIR}/graphics/jpeg
+# Loads libraries on run-time, thus RUN_DEPENDS.
+RUN_DEPENDS+=	${LOCALBASE}/lib/libjpeg.so:${PORTSDIR}/graphics/jpeg \
+		${LOCALBASE}/lib/libvorbis.so:${PORTSDIR}/audio/libvorbis
 .endif
 
 .if defined(WITH_CLIENT)
 USE_GL=		yes
 ALL_TARGET+=	cl-release
+EXE_TARGETS+=	${PORTNAME}-glx
 PLIST_SUB+=	CLIENT=""
-.else
-PLIST_SUB+=	CLIENT="@comment "
+PLIST_FILES+=	bin/${PORTNAME}-glx
+.endif
+
+.if defined(WITH_DEDICATED)
+ALL_TARGET+=	sv-release
+EXE_TARGETS+=	${PORTNAME}-dedicated
+PLIST_FILES+=	bin/${PORTNAME}-dedicated
+.endif
+
+.if defined(WITH_OPTIMIZED_CFLAGS)
+MAKE_ENV+=	WITH_OPTIMIZED_CFLAGS=YES
 .endif
 
 .if defined(WITH_SDL_CLIENT)
 USE_SDL=	sdl
 ALL_TARGET+=	sdl-release
-PLIST_SUB+=	SDL_CLIENT=""
-.else
-PLIST_SUB+=	SDL_CLIENT="@comment "
-.endif
-
-.if defined(WITH_SERVER)
-ALL_TARGET+=	sv-release
-PLIST_SUB+=	SERVER=""
-.else
-PLIST_SUB+=	SERVER="@comment "
+EXE_TARGETS+=	${PORTNAME}-sdl
+PLIST_FILES+=	bin/${PORTNAME}-sdl
 .endif
 
 post-extract:
-	@${UNZIP_CMD} -a -q \
+	@${UNZIP_CMD} -aq \
 		-o ${WRKDIR}/${PORTNAME}enginesource${PORTVERSION}.zip \
 		-d ${WRKDIR}
 
-post-patch:
-	@${REINPLACE_CMD} -e 's|sdl-config|${SDL_CONFIG}|g ; \
-			s|/usr/X11R6|${X11BASE}| ; \
-			s|gcc|${CC}| ; \
-			s|\(-MD\)|${CFLAGS} \1|' \
-				${WRKSRC}/${MAKEFILE} ${WRKSRC}/makefile.inc
-	@${REINPLACE_CMD} -e 's,"\.","${DATADIR}",' ${WRKSRC}/fs.c
-.if defined(WITHOUT_OPTIMIZED_CFLAGS)
-	@${REINPLACE_CMD} -e 's|$$(OPTIM_RELEASE)||' ${WRKSRC}/makefile.inc
-.endif
-.if ${ARCH} == "alpha"
-	@${REINPLACE_CMD} -e 's|-ffast-math||' ${WRKSRC}/makefile.inc
-.endif
-
 do-install:
-	@${MKDIR} ${DATADIR}
-.for f in ${PORTNAME}-glx ${PORTNAME}-sdl ${PORTNAME}-dedicated
-	@${TEST} -f ${WRKSRC}/${f} && \
-		${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/bin
-	@${TEST} -L ${PREFIX}/bin/${PORTNAME} || \
-		${LN} -s ${PREFIX}/bin/${f} ${PREFIX}/bin/${PORTNAME}
+.for f in ${EXE_TARGETS}
+	${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/bin
 .endfor
-
-post-install:
-	@${ECHO_CMD}
-	@${CAT} ${PKGMESSAGE}
-	@${ECHO_CMD}
 
 .include <bsd.port.post.mk>
diff -urN /usr/ports/games/darkplaces/files/patch-fs.c darkplaces/files/patch-fs.c
--- /usr/ports/games/darkplaces/files/patch-fs.c	Wed Dec 31 21:00:00 1969
+++ darkplaces/files/patch-fs.c	Sun Jan 15 17:38:22 2006
@@ -0,0 +1,11 @@
+--- fs.c.orig	Tue Aug  2 23:18:34 2005
++++ fs.c	Sun Jan 15 17:38:11 2006
+@@ -933,7 +933,7 @@
+ 
+ 	fs_mempool = Mem_AllocPool("file management", 0, NULL);
+ 
+-	strcpy(fs_basedir, ".");
++	strcpy(fs_basedir, Q1DIR);
+ 	strcpy(fs_gamedir, "");
+ 
+ #ifdef MACOSX
diff -urN /usr/ports/games/darkplaces/files/patch-gl_backend.c darkplaces/files/patch-gl_backend.c
--- /usr/ports/games/darkplaces/files/patch-gl_backend.c	Wed Dec 31 21:00:00 1969
+++ darkplaces/files/patch-gl_backend.c	Sun Jan 15 17:07:21 2006
@@ -0,0 +1,46 @@
+--- gl_backend.c.orig	Fri May 20 00:24:12 2005
++++ gl_backend.c	Sun Jan 15 17:06:32 2006
+@@ -21,6 +21,8 @@
+ cvar_t gl_dither = {CVAR_SAVE, "gl_dither", "1"}; // whether or not to use dithering
+ cvar_t gl_lockarrays = {0, "gl_lockarrays", "1"};
+ 
++cvar_t gl_compilelogs = {0, "gl_compilelogs", "0"};
++
+ int gl_maxdrawrangeelementsvertices;
+ int gl_maxdrawrangeelementsindices;
+ 
+@@ -236,6 +238,7 @@
+ 	Cvar_RegisterVariable(&gl_polyblend);
+ 	Cvar_RegisterVariable(&gl_dither);
+ 	Cvar_RegisterVariable(&gl_lockarrays);
++	Cvar_RegisterVariable(&gl_compilelogs);
+ 	Cvar_RegisterVariable(&gl_paranoid);
+ 	Cvar_RegisterVariable(&gl_printcheckerror);
+ #ifdef NORENDER
+@@ -780,7 +783,7 @@
+ 		CHECKGLERROR
+ 		qglGetObjectParameterivARB(vertexshaderobject, GL_OBJECT_COMPILE_STATUS_ARB, &vertexshadercompiled);
+ 		qglGetInfoLogARB(vertexshaderobject, sizeof(compilelog), NULL, compilelog);
+-		if (compilelog[0])
++		if (gl_compilelogs.integer && compilelog[0])
+ 			Con_Printf("vertex shader compile log:\n%s\n", compilelog);
+ 		if (!vertexshadercompiled)
+ 		{
+@@ -809,7 +812,7 @@
+ 		CHECKGLERROR
+ 		qglGetObjectParameterivARB(fragmentshaderobject, GL_OBJECT_COMPILE_STATUS_ARB, &fragmentshadercompiled);
+ 		qglGetInfoLogARB(fragmentshaderobject, sizeof(compilelog), NULL, compilelog);
+-		if (compilelog[0])
++		if (gl_compilelogs.integer && compilelog[0])
+ 			Con_Printf("fragment shader compile log:\n%s\n", compilelog);
+ 		if (!fragmentshadercompiled)
+ 		{
+@@ -827,7 +830,7 @@
+ 	CHECKGLERROR
+ 	qglGetObjectParameterivARB(programobject, GL_OBJECT_LINK_STATUS_ARB, &programlinked);
+ 	qglGetInfoLogARB(programobject, sizeof(compilelog), NULL, compilelog);
+-	if (compilelog[0])
++	if (gl_compilelogs.integer && compilelog[0])
+ 	{
+ 		Con_Printf("program link log:\n%s\n", compilelog);
+ 		// software vertex shader is ok but software fragment shader is WAY
diff -urN /usr/ports/games/darkplaces/files/patch-makefile.inc darkplaces/files/patch-makefile.inc
--- /usr/ports/games/darkplaces/files/patch-makefile.inc	Wed Dec 31 21:00:00 1969
+++ darkplaces/files/patch-makefile.inc	Sun Jan 15 17:18:13 2006
@@ -0,0 +1,117 @@
+--- makefile.inc.orig	Thu Aug 18 21:30:57 2005
++++ makefile.inc	Sun Jan 15 17:16:57 2006
+@@ -1,5 +1,4 @@
+ # Choose the compiler you want to use
+-CC=gcc
+ 
+ # athlon optimizations
+ #CPUOPTIMIZATIONS=-march=athlon
+@@ -135,13 +134,19 @@
+ 
+ # Compilation
+ # CFLAGS_COMMON=-MD -Wall -Werror
+-CFLAGS_COMMON=-MD -Wall -Wsign-compare
++CFLAGS_COMMON=-DQ1DIR='\"$(Q1DIR)\"' -MD -Wall -Wsign-compare
+ CFLAGS_DEBUG=-ggdb
+ CFLAGS_PROFILE=-g -pg -ggdb
+ CFLAGS_RELEASE=
+ 
++ifeq ($(WITH_OPTIMIZED_CFLAGS),YES)
+ OPTIM_DEBUG=$(CPUOPTIMIZATIONS)
+-OPTIM_RELEASE=-O2 -fno-strict-aliasing -ffast-math -funroll-loops $(CPUOPTIMIZATIONS)
++OPTIM_RELEASE=-O2 -fno-strict-aliasing -funroll-loops $(CPUOPTIMIZATIONS)
++
++ifneq ($(shell uname -p),alpha)
++OPTIM_RELEASE+=-ffast-math
++endif
++endif
+ 
+ DO_CC=$(CC) $(CFLAGS) -c $< -o $@
+ 
+@@ -157,14 +162,14 @@
+ OBJ_GLX= builddate.c sys_linux.o vid_glx.o $(OBJ_SOUND) $(OBJ_CD) $(OBJ_COMMON)
+ 
+ LDFLAGS_UNIXCOMMON=-lm
+-#LDFLAGS_UNIXCL=-L/usr/X11R6/lib -lX11 -lXext -lXxf86dga -lXxf86vm $(LIB_SOUND)
++#LDFLAGS_UNIXCL=-L$(X11BASE)/lib -lX11 -lXext -lXxf86dga -lXxf86vm $(LIB_SOUND)
+ ifeq ($(DP_MAKE_TARGET), sunos)
+ 	LDFLAGS_UNIXCL=-R$(UNIX_X11LIBPATH) -L$(UNIX_X11LIBPATH) -lX11 -lXext -lXxf86vm $(LIB_SOUND)
+ else
+ 	LDFLAGS_UNIXCL=-L$(UNIX_X11LIBPATH) -lX11 -lXext -lXxf86dga -lXxf86vm $(LIB_SOUND)
+ endif
+ 
+-LDFLAGS_UNIXSDL=`sdl-config --libs`
++LDFLAGS_UNIXSDL=`$(SDL_CONFIG) --libs`
+ EXE_UNIXCL=darkplaces-glx
+ EXE_UNIXSV=darkplaces-dedicated
+ EXE_UNIXSDL=darkplaces-sdl
+@@ -195,7 +200,7 @@
+ # Link
+ LDFLAGS_MACOSXCL=$(LDFLAGS_UNIXCOMMON) -ldl $(LDFLAGS_UNIXCL)
+ LDFLAGS_MACOSXSV=$(LDFLAGS_UNIXCOMMON) -ldl
+-LDFLAGS_MACOSXSDL=$(LDFLAGS_UNIXCOMMON) -ldl `sdl-config --static-libs`
++LDFLAGS_MACOSXSDL=$(LDFLAGS_UNIXCOMMON) -ldl `$(SDL_CONFIG) --static-libs`
+ 
+ OBJ_AGL= builddate.c sys_linux.o vid_agl.o $(OBJ_SOUND) $(OBJ_CD) $(OBJ_COMMON)
+ 
+@@ -238,7 +243,7 @@
+ LDFLAGS_WINCOMMON=-lwinmm -lwsock32
+ LDFLAGS_WINCL=$(LDFLAGS_WINCOMMON) -mwindows -luser32 -lgdi32 -ldxguid -ldinput -lcomctl32
+ LDFLAGS_WINSV=$(LDFLAGS_WINCOMMON) -mconsole
+-LDFLAGS_WINSDL=$(LDFLAGS_WINCOMMON) `sdl-config --libs`
++LDFLAGS_WINSDL=$(LDFLAGS_WINCOMMON) `$(SDL_CONFIG) --libs`
+ EXE_WINCL=darkplaces.exe
+ EXE_WINSV=darkplaces-dedicated.exe
+ EXE_WINSDL=darkplaces-sdl.exe
+@@ -330,40 +335,40 @@
+ 	@echo "========== $(EXE) (debug) =========="
+ 	$(MAKE) $(EXE) \
+ 		DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
+-		CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_DEBUG) $(OPTIM_DEBUG)"\
+-		LDFLAGS="$(LDFLAGS_DEBUG) $(LDFLAGS_COMMON)"
++		CFLAGS+="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_DEBUG) $(OPTIM_DEBUG)"\
++		LDFLAGS+="$(LDFLAGS_DEBUG) $(LDFLAGS_COMMON)"
+ 
+ bin-profile :
+ 	@echo
+ 	@echo "========== $(EXE) (profile) =========="
+ 	$(MAKE) $(EXE) \
+ 		DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
+-		CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_PROFILE) $(OPTIM_RELEASE)"\
+-		LDFLAGS="$(LDFLAGS_PROFILE) $(LDFLAGS_COMMON)"
++		CFLAGS+="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_PROFILE) $(OPTIM_RELEASE)"\
++		LDFLAGS+="$(LDFLAGS_PROFILE) $(LDFLAGS_COMMON)"
+ 
+ bin-release :
+ 	@echo
+ 	@echo "========== $(EXE) (release) =========="
+ 	$(MAKE) $(EXE) \
+ 		DP_MAKE_TARGET=$(DP_MAKE_TARGET) DP_SOUND_API=$(DP_SOUND_API) \
+-		CFLAGS="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE) $(OPTIM_RELEASE)"\
+-		LDFLAGS="$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)"
++		CFLAGS+="$(CFLAGS_COMMON) $(CFLAGS_EXTRA) $(CFLAGS_RELEASE) $(OPTIM_RELEASE)"\
++		LDFLAGS+="$(LDFLAGS_RELEASE) $(LDFLAGS_COMMON)"
+ 	strip $(EXE)
+ 
+ vid_glx.o: vid_glx.c
+-	$(DO_CC) -I/usr/X11R6/include
++	$(DO_CC) -I$(X11BASE)/include
+ 
+ vid_sdl.o: vid_sdl.c
+-	$(DO_CC) `sdl-config --cflags`
++	$(DO_CC) `$(SDL_CONFIG) --cflags`
+ 
+ sys_sdl.o: sys_sdl.c
+-	$(DO_CC) `sdl-config --cflags`
++	$(DO_CC) `$(SDL_CONFIG) --cflags`
+ 
+ snd_sdl.o: snd_sdl.c
+-	$(DO_CC) `sdl-config --cflags`
++	$(DO_CC) `$(SDL_CONFIG) --cflags`
+ 
+ cd_sdl.o: cd_sdl.c
+-	$(DO_CC) `sdl-config --cflags`
++	$(DO_CC) `$(SDL_CONFIG) --cflags`
+ 
+ darkplaces.o: %.o : %.rc
+ 	windres -o $@ $<
diff -urN /usr/ports/games/darkplaces/files/pkg-message.in darkplaces/files/pkg-message.in
--- /usr/ports/games/darkplaces/files/pkg-message.in	Tue Oct  4 15:43:18 2005
+++ darkplaces/files/pkg-message.in	Wed Dec 31 21:00:00 1969
@@ -1,5 +0,0 @@
-*******************************************************************************
-* Before running DarkPlaces copy Quake 1 data files (id1 directory)
-* into %%DATADIR%%.
-* Filenames should be in lower case!
-*******************************************************************************
diff -urN /usr/ports/games/darkplaces/pkg-plist darkplaces/pkg-plist
--- /usr/ports/games/darkplaces/pkg-plist	Tue Oct  4 15:43:18 2005
+++ darkplaces/pkg-plist	Wed Dec 31 21:00:00 1969
@@ -1,5 +0,0 @@
-bin/darkplaces
-%%CLIENT%%bin/darkplaces-glx
-%%SDL_CLIENT%%bin/darkplaces-sdl
-%%SERVER%%bin/darkplaces-dedicated
- at unexec rmdir %D/%%DATADIR%% >/dev/null 2>&1 || echo "If you are permanently removing this port, you should remove the data files and mods left in %D/%%DATADIR%%." | fmt
--- darkplaces.diff ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list