Skip site navigation (1)Skip section navigation (2)
Date:      Sat,  4 Mar 2000 19:30:34 -0500 (EST)
From:      Will Andrews <andrews@technologist.com>
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/17194: new port: games/heretic
Message-ID:  <20000305003034.C8CD71A68@argon.blackdawn.com>

next in thread | raw e-mail | index | archive | help

>Number:         17194
>Category:       ports
>Synopsis:       new port: games/heretic
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Mar  4 16:40:01 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Will Andrews
>Release:        FreeBSD 4.0-CURRENT i386
>Organization:
none
>Environment:

FreeBSD argon.blackdawn.com 4.0-CURRENT FreeBSD 4.0-CURRENT #0: Sat Feb 12 13:20:47 EST 2000     root@argon.blackdawn.com:/usr/src/sys/compile/KRYPTON  i386

>Description:

New port for the Heretic game (v1.0).

Port accomodations:
	1) X11-libs-only build. I'm sorry, but I don't
	   have enough time before 4.0-RELEASE to make
	   Heretic compile with MesaGL (and whatever
	   other libraries it supports). My priority
	   is to get a working copy of this game in
	   the ports tree beforehand.
	2) Broken HTTP protocol at raven-games.com.
	3) Gets and installs the shareware WAD for you
	   by default. I believe the license is OK
	   with this. I have provided a knob to disable
	   the installing of this WAD (in case someone
	   has a non-shareware WAD or something).
	4) May or may not support sound. I don't know
	   since my system doesn't have sound.

Additional notes:
	1) Portlint doesn't like the conditional in
	   the DISTFILES section. This is not my
	   fault, it's the portlint script. ;-)
	2) I have no idea why portlint is complaining
	   about the WRKSRC, since I don't specify
	   one. It is generated by WRKSRC=${WRKDIR}/${DISTNAME}.
	3) I had some fun playing this game in 24-bit
	   color on my laptop with its ATI Rage Pro
	   8MB graphics card. It has relatively good
	   frame rate although it does slow down a bit
	   sometimes. It's nice that people won't be
	   forced to conform to a specific color
	   depth in order to play the game!
	4) I'm not sure the name for the port is
	   appropriate. The people at Raven Games
	   call it "GLHeretic" so perhaps the port
	   should be called "glheretic" instead.
	   However, it doesn't need GL to build,
	   and that's why I chose to call it "heretic".

This game would provide a lot of fun for many people
and should be committed (IMO) before 4.0-RELEASE.

>How-To-Repeat:

Use the shar below to import the new port to the tree.

>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	heretic
#	heretic/files
#	heretic/files/md5
#	heretic/pkg
#	heretic/pkg/COMMENT
#	heretic/pkg/DESCR
#	heretic/pkg/PLIST
#	heretic/pkg/PLIST.nowad
#	heretic/patches
#	heretic/patches/patch-aa
#	heretic/patches/patch-ab
#	heretic/patches/patch-ac
#	heretic/patches/patch-ad
#	heretic/patches/patch-ae
#	heretic/patches/patch-af
#	heretic/patches/patch-ag
#	heretic/patches/patch-ah
#	heretic/patches/patch-ai
#	heretic/Makefile
#
echo c - heretic
mkdir -p heretic > /dev/null 2>&1
echo c - heretic/files
mkdir -p heretic/files > /dev/null 2>&1
echo x - heretic/files/md5
sed 's/^X//' >heretic/files/md5 << 'END-of-heretic/files/md5'
XMD5 (glheretic-1.0.tar.gz) = 82874571b280c6907a2c781377393f6e
XMD5 (heretic_share.wad.gz) = 8aa0b891681fc04726bbeae031bddea5
END-of-heretic/files/md5
echo c - heretic/pkg
mkdir -p heretic/pkg > /dev/null 2>&1
echo x - heretic/pkg/COMMENT
sed 's/^X//' >heretic/pkg/COMMENT << 'END-of-heretic/pkg/COMMENT'
XUnix source-port of the famous Heretic game by id Software
END-of-heretic/pkg/COMMENT
echo x - heretic/pkg/DESCR
sed 's/^X//' >heretic/pkg/DESCR << 'END-of-heretic/pkg/DESCR'
XThis is the "Linux" port of the great Heretic game
Xby id Software. It is an addicting game of sorcery
Xwith blood and gore that reminds people of the old
XDoom and Wolfenstein 3D games.
X
XWWW: http://www.raven-games.com/linuxheretic/
X
X--Will <andrews@technologist.com>
END-of-heretic/pkg/DESCR
echo x - heretic/pkg/PLIST
sed 's/^X//' >heretic/pkg/PLIST << 'END-of-heretic/pkg/PLIST'
Xbin/heretic
Xshare/heretic/heretic_share.wad
X@dirrm share/heretic
END-of-heretic/pkg/PLIST
echo x - heretic/pkg/PLIST.nowad
sed 's/^X//' >heretic/pkg/PLIST.nowad << 'END-of-heretic/pkg/PLIST.nowad'
Xbin/heretic
END-of-heretic/pkg/PLIST.nowad
echo c - heretic/patches
mkdir -p heretic/patches > /dev/null 2>&1
echo x - heretic/patches/patch-aa
sed 's/^X//' >heretic/patches/patch-aa << 'END-of-heretic/patches/patch-aa'
X--- Makefile	Thu Feb  3 17:56:16 2000
X+++ Makefile.new	Sun Feb 13 04:15:18 2000
X@@ -1,24 +1,24 @@
X # Makefile for Linux Heretic/GLHeretic
X 
X # Comment the line below if you don't want to build GLHeretic.
X-WANT_OGL = yes
X+WANT_OGL ?= yes
X 
X # Comment the line below if you don't want fullscreen 
X # support under GLHeretic.
X # (Only if you have WANT_OGL !)
X-WANT_OGL_FULLSCREEN = yes
X+WANT_OGL_FULLSCREEN ?= yes
X 
X # Comment this if you don't want to build GLHeretic 
X # with highest quality options.
X # (Only if you have WANT_OGL !)
X-WANT_NICE_OGL = yes
X+WANT_NICE_OGL ?= yes
X 
X 
X # Uncomment the line below if you want to use GSI for sound.
X # (doesn't really work yet. :-()
X #WANT_GSI = yes
X 
X-CC = gcc
X+CC ?= gcc
X 
X #
X # For old SVGALIB, comment out -D__NEWVGALIB__
X@@ -26,7 +26,7 @@
X CDEFS.ipx = -DUNIX -DHAVE_USLEEP -DHAVE_MATH_H -DHAVE_VALUES_H -DLINUX_MOUSE \
X 	-DIPX_PROTOCOL -DI_GGI_HERETIC -DNEED_SHMGETEVENTBASE \
X 	-D__NEWVGALIB__ # -DIPX_DEBUG -DEXTRA_WADS
X-CDEFS.udp = -DUNIX -DHAVE_USLEEP -DHAVE_MATH_H -DHAVE_VALUES_H -DLINUX_MOUSE \
X+CDEFS.udp = -DUNIX -DHAVE_USLEEP -DHAVE_MATH_H -DLINUX_MOUSE -DHOMEDIR="\"/usr/X11R6/share/heretic\"" \
X 	-DUDP_PROTOCOL -DI_GGI_HERETIC -DNEED_SHMGETEVENTBASE \
X 	-D__NEWVGALIB__ # -DEXTRA_WADS
X 
X@@ -61,11 +61,11 @@
X endif
X 
X # Change this to change the platform
X-COPT.arch = $(COPT.x86)
X+COPT.arch = $(COPT.FreeBSD)
X 
X # If you want IPX-netcode compiled, replace $(CDEFS.udp) with $(CDEFS.ipx)
X 
X-CFLAGS = -Wall $(CDEFS.udp) $(COPT.arch) \
X+CFLAGS = $(PCFLAGS) -Wall $(CDEFS.udp) $(COPT.arch) \
X 	 -I. -I.. -I/usr/X11R6/include $(COPT.sound) $(COPT.opengl)
X 
X # Uncomment the line below if you want to use original "[" and "]" keys
X@@ -94,10 +94,10 @@
X 
X endif
X 
X-X_LDFLAGS = -L/usr/X11R6/lib
X+X_LDFLAGS = -L$(X11BASE)/lib
X 
X X11LIBS = -lXext -lX11
X-GLLIBS  = -lXmu -lXi -lm -ldl
X+GLLIBS  = -lXmu -lXi -lm -lGL -lGLU
X GGILIBS = -lggi -lm
X VGALIBS = -lvga
X SDLLIBS = -lSDL -lpthread 
X@@ -108,7 +108,7 @@
X 	p_spec.o p_switch.o p_telept.o  p_tick.o p_user.o r_bsp.o r_data.o \
X 	r_draw.o r_plane.o r_segs.o r_things.o r_main.o mn_menu.o sb_bar.o \
X 	tables.o v_video.o w_wad.o z_zone.o in_lude.o \
X-	info.o i_net.o i_system.o i_udp.o i_ipx.o i_main.o $(SOUND_OBJS)
X+	info.o i_net.o i_system.o i_udp.o i_main.o $(SOUND_OBJS)
X 
X GLOBJS = opengl/gl_effects.o opengl/gl_floorceil.o opengl/gl_fonts.o \
X 	 opengl/gl_func.o opengl/gl_init.o opengl/gl_lights.o \
X@@ -184,17 +184,17 @@
X 	$(CC) -E -M $(CFLAGS) $(X_LDFLAGS) *.c $(SOUND_REFS) \
X 	graphics/i_sdl.c > .depend                                                               
X 
X-x11:	depx11 $(OBJS) graphics/i_x11.o $(MUSSERV) $(SNDSERV)
X+x11:	depx11 $(OBJS) graphics/i_x11.o
X 	$(CC) $(CFLAGS) $(X_LDFLAGS) $(X11LIBS) $(OBJS) \
X 	graphics/i_x11.o -o xheretic
X 
X-fastx11:depx11f $(OBJS) graphics/i_x11_fast.o $(MUSSERV) $(SNDSERV)
X-	$(CC) $(CFLAGS) $(X_LDFLAGS) $(X11LIBS) $(OBJS) \
X+fastx11:depx11f $(OBJS) graphics/i_x11_fast.o
X+	$(CC) $(CFLAGS) $(X_LDFLAGS) $(GLLIBS) $(X11LIBS) $(OBJS) \
X 	graphics/i_x11_fast.o -o xaheretic
X 
X 
X glheretic:depx11ogl $(OBJS) $(GLOBJS) graphics/i_x11_ogl.o \
X-	$(MUSSERV) $(SNDSERV) sgi-libtess
X+	  sgi-libtess
X ifeq ($(WANT_OGL_FULLSCREEN),yes)
X 	$(CC) $(CFLAGS) $(X_LDFLAGS) $(X11LIBS) $(GLLIBS) \
X 	$(OBJS) $(GLOBJS) /usr/X11R6/lib/libXxf86vm.a \
X@@ -205,15 +205,15 @@
X endif
X 
X 
X-ggi:	depggi $(OBJS) graphics/i_ggi.o $(MUSSERV) $(SNDSERV)
X+ggi:	depggi $(OBJS) graphics/i_ggi.o
X 	$(CC) $(CFLAGS) $(GGILIBS) $(OBJS) \
X 	graphics/i_ggi.o -o ggiheretic
X 
X-vga:	depvga $(OBJS) graphics/i_vga.o $(MUSSERV) $(SNDSERV)
X+vga:	depvga $(OBJS) graphics/i_vga.o
X 	$(CC) $(CFLAGS) $(VGALIBS) $(OBJS) \
X 	graphics/i_vga.o -o vgaheretic
X 
X-sdl:    depsdl $(OBJS) graphics/i_sdl.o $(MUSSERV) $(SNDSERV)
X+sdl:    depsdl $(OBJS) graphics/i_sdl.o
X 	$(CC) $(CFLAGS) $(X_LDFLAGS) $(SDLLIBS) $(OBJS) \
X 	graphics/i_sdl.o -o sdlheretic
X 
END-of-heretic/patches/patch-aa
echo x - heretic/patches/patch-ab
sed 's/^X//' >heretic/patches/patch-ab << 'END-of-heretic/patches/patch-ab'
X--- doomtype.h	Fri Jan  7 15:42:41 2000
X+++ doomtype.h.new	Sun Feb 13 03:51:40 2000
X@@ -36,7 +36,7 @@
X 
X /* Predefined with some OS. */
X #ifdef HAVE_VALUES_H
X-#include <values.h>
X+#include <limits.h>
X #ifndef MININT
X #define MININT ((-(MAXINT)) - 1)
X #endif
END-of-heretic/patches/patch-ab
echo x - heretic/patches/patch-ac
sed 's/^X//' >heretic/patches/patch-ac << 'END-of-heretic/patches/patch-ac'
X--- w_wad.c	Sat Oct 23 05:02:21 1999
X+++ w_wad.c.new	Sun Feb 13 03:52:25 2000
X@@ -15,7 +15,6 @@
X #include <string.h>
X #include <unistd.h>
X #include <stdlib.h>
X-#include <malloc.h>
X #include <assert.h>
X #include <fcntl.h>
X #include <sys/stat.h>
X@@ -26,8 +25,6 @@
X 
X #define O_BINARY		0
X #endif   /* UNIX */
X-
X-#include <malloc.h>
X 
X #ifdef __GLIBC__
X #include <sys/io.h>
END-of-heretic/patches/patch-ac
echo x - heretic/patches/patch-ad
sed 's/^X//' >heretic/patches/patch-ad << 'END-of-heretic/patches/patch-ad'
X--- opengl/sgi-si/libtess/memalloc.h	Wed Jan 26 05:30:44 2000
X+++ opengl/sgi-si/libtess/memalloc.h.new	Sun Feb 13 03:54:46 2000
X@@ -42,7 +42,7 @@
X #ifndef __memalloc_simple_h_
X #define __memalloc_simple_h_
X 
X-#include <malloc.h>
X+#include <stdlib.h>
X 
X #define memRealloc	realloc
X #define memFree		free
END-of-heretic/patches/patch-ad
echo x - heretic/patches/patch-ae
sed 's/^X//' >heretic/patches/patch-ae << 'END-of-heretic/patches/patch-ae'
X--- opengl/gl_struct.h	Wed Jan 26 14:38:19 2000
X+++ opengl/gl_struct.h.new	Sun Feb 13 03:54:46 2000
X@@ -2,7 +2,7 @@
X #define __GL_STRUCT_H__
X 
X #include <stdio.h>
X-#include <malloc.h>
X+#include <stdlib.h>
X #include <string.h>
X #include <GL/gl.h>
X #include <GL/glu.h>
END-of-heretic/patches/patch-ae
echo x - heretic/patches/patch-af
sed 's/^X//' >heretic/patches/patch-af << 'END-of-heretic/patches/patch-af'
X--- sndserv/soundsrv.c	Mon Mar 22 20:06:59 1999
X+++ sndserv/soundsrv.c.new	Sun Feb 13 03:54:46 2000
X@@ -43,7 +43,7 @@
X #include <sys/ioctl.h>
X #include <unistd.h>
X #include <stdlib.h>
X-#include <malloc.h>
X+#include <stdlib.h>
X #include <sys/stat.h>
X #include <sys/time.h>
X 
END-of-heretic/patches/patch-af
echo x - heretic/patches/patch-ag
sed 's/^X//' >heretic/patches/patch-ag << 'END-of-heretic/patches/patch-ag'
X--- sndserv/wadread.c	Thu Nov 25 05:24:49 1999
X+++ sndserv/wadread.c.new	Sun Feb 13 03:54:46 2000
X@@ -39,7 +39,7 @@
X  */
X 
X 
X-#include <malloc.h>
X+#include <stdlib.h>
X #include <fcntl.h>
X #include <sys/stat.h>
X #include <stdio.h>
END-of-heretic/patches/patch-ag
echo x - heretic/patches/patch-ah
sed 's/^X//' >heretic/patches/patch-ah << 'END-of-heretic/patches/patch-ah'
X--- opengl/gl_fonts.c	Sun Jan 30 05:58:21 2000
X+++ opengl/gl_fonts.c.new	Sun Feb 13 03:54:46 2000
X@@ -1,5 +1,5 @@
X #include <stdio.h>
X-#include <malloc.h>
X+#include <stdlib.h>
X #include <string.h>
X #include <math.h>
X 
END-of-heretic/patches/patch-ah
echo x - heretic/patches/patch-ai
sed 's/^X//' >heretic/patches/patch-ai << 'END-of-heretic/patches/patch-ai'
X--- i_ipx.c	Sat Oct 23 05:02:21 1999
X+++ i_ipx.c.new	Sun Feb 13 03:59:27 2000
X@@ -20,7 +20,7 @@
X #include <netipx/ipx.h>
X #else
X #define MYSOCKLEN_T int
X-#include <linux/ipx.h>
X+#include <netipx/ipx.h>
X #endif /* __GLIBC__ */
X 
X #define IPXSETUP_COMPAT    /* be compatible with ipxsetup.exe */
END-of-heretic/patches/patch-ai
echo x - heretic/Makefile
sed 's/^X//' >heretic/Makefile << 'END-of-heretic/Makefile'
X# New ports collection makefile for:	glheretic
X# Version required:	1.0
X# Date created:		04 Feb 2000
X# Whom:			Will Andrews <andrews@technologist.com>
X#
X# $FreeBSD$
X#
X
XDISTNAME=	glheretic-1.0
XPKGNAME=	heretic-1.0
XCATEGORIES=	games
XMASTER_SITES=	http://www.raven-games.com/linuxheretic/heretic/src/ \
X		http://www.raven-games.com/linuxheretic/wad/
X.if !defined(NO_WAD)
XDISTFILES+=	heretic_share.wad.gz
XEXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
X.endif
X
XMAINTAINER=	andrews@technologist.com
X
XFETCH_BEFORE_ARGS+=	-b
XUSE_X_PREFIX=	yes
XUSE_GMAKE=	yes
XALL_TARGET=	fastx11
XMAKE_ENV=	WANT_OGL="no" WANT_OGL_FULLSCREEN="no" WANT_NICE_OGL="no"
XBINARY=		xaheretic
X.if !defined(NO_WAD)
XPLIST=		${PKGDIR}/PLIST.nowad
X.endif
X
Xdo-install:
X	@${MKDIR} ${PREFIX}/share/heretic
X	@${INSTALL_PROGRAM} ${WRKSRC}/${BINARY} ${PREFIX}/bin/heretic
X.if !defined(NO_WAD)
X	@${GZIP_CMD} ${EXTRACT_BEFORE_ARGS} ${DISTDIR}/heretic_share.wad.gz \
X		> ${PREFIX}/share/heretic/heretic_share.wad
X.endif
X
X.include <bsd.port.mk>
END-of-heretic/Makefile
exit


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


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000305003034.C8CD71A68>