Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Aug 2006 17:21:09 -0300
From:      "Alejandro Pulver" <alepulver@FreeBSD.org>
To:        "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org>
Subject:   ports/101279: [UPDATE] games/jfduke3d: update to version 20051009, add sound/joystick support
Message-ID:  <1154550069.12930@phobos.mars.bsd>
Resent-Message-ID: <200608022030.k72KUFXo090659@freefall.freebsd.org>

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

>Number:         101279
>Category:       ports
>Synopsis:       [UPDATE] games/jfduke3d: update to version 20051009, add sound/joystick support
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Aug 02 20:30:15 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Alejandro Pulver
>Release:        FreeBSD 6.1-RELEASE-p1 i386
>Organization:
>Environment:


System: FreeBSD 6.1-RELEASE-p1 #3: Mon Jun 19 14:49:35 ART 2006
    root@phobos.mars.bsd:/usr/obj/usr/src/sys/ATHLON-PHOBOS



>Description:


- Update to version 20051009.
- Add patch for sound and joystick support taken from icculus.org/duke3d.
- Integrate with games/duke3d-data.
- Remove wrapper scripts (use programs' search path routines).
- Remove CONFLICTS with nonexistent (removed) port games/duke3d.
- Move notes in files/pkg-message.in to pkg-descr.


>How-To-Repeat:





>Fix:


--- jfduke3d.diff begins here ---
Index: jfduke3d/Makefile
===================================================================
RCS file: /home/pcvs/ports/games/jfduke3d/Makefile,v
retrieving revision 1.8
diff -u -r1.8 Makefile
--- jfduke3d/Makefile	7 May 2006 23:45:21 -0000	1.8
+++ jfduke3d/Makefile	2 Aug 2006 20:16:33 -0000
@@ -5,7 +5,7 @@
 # $FreeBSD: ports/games/jfduke3d/Makefile,v 1.8 2006/05/07 23:45:21 edwin Exp $
 
 PORTNAME=	jfduke3d
-PORTVERSION=	20050531
+PORTVERSION=	20051009
 CATEGORIES=	games
 MASTER_SITES=	ftp://dialup.edgefiles.com/edgenetwork.org/jonof/buildport/ \
 		ftp://ftp1.edgefiles.com/edgenetwork.org/jonof/buildport/ \
@@ -14,60 +14,48 @@
 DISTFILES=	${PORTNAME}_src_${PORTVERSION}.zip \
 		jfbuild_src_${PORTVERSION}.zip
 
+PATCH_SITES=	http://www.mephisto.ma.cx/mephisto/patches/
+PATCHFILES=	${PORTNAME}_src_${PORTVERSION}.patch \
+		jfbuild_src_${PORTVERSION}.patch
+
 MAINTAINER=	arundel@h3c.de
 COMMENT=	Jonathon Fowler's Duke Nukem 3D Port
 
 BUILD_DEPENDS=	nasm:${PORTSDIR}/devel/nasm
 
 USE_ZIP=	yes
+USE_GCC=	3.2+
 USE_GMAKE=	yes
-USE_SDL=	sdl
+USE_GL=		yes
 USE_GNOME=	gtk20
-CONFLICTS=	duke3d-200[0-9]*
-
+USE_SDL=	mixer sdl
 WRKSRC=		${WRKDIR}/${PORTNAME}_src_${PORTVERSION}
+PATCH_WRKSRC=	${WRKDIR}
 
-PROG_FILES=	${WRKSRC}/duke3d ${WRKSRC}/build
-DATA_FILES=	${WRKSRC}/build.cfg
-SCRIPT_FILES=	${WRKDIR}/fix.sh ${WRKDIR}/duke3d.sh ${WRKDIR}/build.sh
-PORTDOCS=	ChangeLog readme.txt releasenotes.html duke3d.def.sample GNU.TXT
-
-SUB_FILES=	pkg-message
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} != "i386"
-BROKEN=		"Does not build on !i386 (hardcodes i386-specific compiler flags)"
-.endif
-
-pre-build:
-		@${REINPLACE_CMD} -e 's|EROOT=../build/|EROOT=../jfbuild_src_${PORTVERSION}/|g' \
-			${WRKSRC}/Makefile
-
-pre-install:
-		@${SED} -e 's|%%DUKEDIR%%|${DATADIR}|g' ${FILESDIR}/fix.sh > \
-			${WRKDIR}/fix.sh
-		@${SED} -e 's|%%DUKEDIR%%|${DATADIR}|g' ${FILESDIR}/wrapper.sh > \
-			${WRKDIR}/duke3d.sh
-		@${SED} -e 's|%%DUKEDIR%%|${DATADIR}|g' ${FILESDIR}/build-wrapper.sh > \
-			${WRKDIR}/build.sh
+post-patch:
+	@${REINPLACE_CMD} -Ee \
+		's|^(EROOT=)../build/|\1../jfbuild_src_${PORTVERSION}/|; \
+		 s|^(CC=).*|\1${CC}|; \
+		 s|^(CFLAGS=).*|\1${CFLAGS}|; \
+		 s|^(NASMFLAGS=).*|\1 -s -f elf|; \
+		 s|/usr/X11R6|${X11BASE}|; \
+		 s|sdl-config|${SDL_CONFIG}|' \
+		${WRKSRC}/Makefile \
+		${WRKDIR}/jfbuild_src_${PORTVERSION}/Makefile \
+		${WRKDIR}/jfbuild_src_${PORTVERSION}/Makefile.shared
+	@${REINPLACE_CMD} -e 's|/usr/share/games/jfduke3d|${DN3DDIR}|' \
+		${WRKSRC}/source/game.c ${WRKSRC}/source/astub.c
 
 do-install:
-		${INSTALL} -d ${DATADIR}
-		${INSTALL_PROGRAM} ${PROG_FILES} ${DATADIR}
-		${INSTALL_DATA} ${DATA_FILES} ${DATADIR}
-		${INSTALL_SCRIPT} ${SCRIPT_FILES} ${DATADIR}
-		${LN} -fs ${DATADIR}/duke3d.sh ${PREFIX}/bin/duke3d
-		${LN} -fs ${DATADIR}/build.sh ${PREFIX}/bin/duke3d-build
-
-post-install:
-.ifndef(NOPORTDOCS)
-		${INSTALL} -d ${DOCSDIR}
-
-.for file in ${PORTDOCS}
-		${INSTALL_MAN} ${WRKSRC}/${file} ${DOCSDIR}
+	${INSTALL_PROGRAM} ${WRKSRC}/duke3d ${PREFIX}/bin/${PORTNAME}
+	${INSTALL_PROGRAM} ${WRKSRC}/build ${PREFIX}/bin/${PORTNAME}-build
+.if !defined(NOPORTDOCS)
+.for f in ChangeLog readme.txt releasenotes.html duke3d.def.sample
+	${MKDIR} ${DOCSDIR}
+	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
 .endfor
 .endif
-		${CAT} ${PKGMESSAGE}
 
-.include <bsd.port.post.mk>
+.include "${.CURDIR}/../duke3d-data/Makefile.include"
+
+.include <bsd.port.mk>
Index: jfduke3d/distinfo
===================================================================
RCS file: /home/pcvs/ports/games/jfduke3d/distinfo,v
retrieving revision 1.2
diff -u -r1.2 distinfo
--- jfduke3d/distinfo	22 Jan 2006 11:18:17 -0000	1.2
+++ jfduke3d/distinfo	2 Aug 2006 20:16:33 -0000
@@ -1,6 +1,12 @@
-MD5 (jfduke3d_src_20050531.zip) = 0a56a99da81c8358aa43a869cfac4f81
-SHA256 (jfduke3d_src_20050531.zip) = e740afd3a2cc5b7a3f55a6b61bc5c2cfb1319e44c99cbf7ffb491e02d202a2eb
-SIZE (jfduke3d_src_20050531.zip) = 612758
-MD5 (jfbuild_src_20050531.zip) = 100c74de1bbbea5d661feb4665df2eb0
-SHA256 (jfbuild_src_20050531.zip) = f601b0f01de0b0d2f0bb927ebe6b48816ba847f9f36d6a841a36e980c8803666
-SIZE (jfbuild_src_20050531.zip) = 542176
+MD5 (jfduke3d_src_20051009.zip) = b67bdcb3dda1a18b6802e26c6588bf11
+SHA256 (jfduke3d_src_20051009.zip) = 910a1616ee5f3b83d1a0ff25ff463112f82fc68e55cb76922ccbdff82c0bb140
+SIZE (jfduke3d_src_20051009.zip) = 686915
+MD5 (jfbuild_src_20051009.zip) = 44a943c0050bfd46ce1e6af24c951898
+SHA256 (jfbuild_src_20051009.zip) = 4bab5eb5171b6480c529f2076411f83038bd19861e3a9c8ede95c4c026bd746e
+SIZE (jfbuild_src_20051009.zip) = 610745
+MD5 (jfduke3d_src_20051009.patch) = 7575e8f78b1cb9c39645f2d49915e738
+SHA256 (jfduke3d_src_20051009.patch) = 0abf81415c32259dffa659bbb49e4b4c41513005b34deae87921bdd05b25bdb3
+SIZE (jfduke3d_src_20051009.patch) = 117574
+MD5 (jfbuild_src_20051009.patch) = b5db75643dd9034749f0a8766354c03b
+SHA256 (jfbuild_src_20051009.patch) = b8c2b53b768c419e2f552c79237af42c9055d6d2ff3d59963ad9f97c674e18d3
+SIZE (jfbuild_src_20051009.patch) = 3788
Index: jfduke3d/pkg-descr
===================================================================
RCS file: /home/pcvs/ports/games/jfduke3d/pkg-descr,v
retrieving revision 1.2
diff -u -r1.2 pkg-descr
--- jfduke3d/pkg-descr	30 Oct 2005 20:04:44 -0000	1.2
+++ jfduke3d/pkg-descr	2 Aug 2006 20:16:33 -0000
@@ -1,10 +1,24 @@
-JonoF's Duke Nukem 3D Port
+JonoF's Duke Nukem 3D Port with icculus.org/duke3d patches for sound and
+joystick support.
 
-This is the Duke Nukem 3D Port written by Jonathan Fowler. Like any
-other Duke Nukem 3D Port it is a hack of the original Duke Nukem 3D
-source code (v1.5 CD Version) which was made publicly avilable by
-3D Realms (the developer of Duke Nukem 3D) on the 1st of April 2003.
+This is the Duke Nukem 3D Port written by Jonathan Fowler. Like any other Duke
+Nukem 3D Port it is a hack of the original Duke Nukem 3D source code (v1.5 CD
+Version) which was made publicly avilable by 3D Realms (the developer of Duke
+Nukem 3D) on the 1st of April 2003.
 
-WWW:  http://jonof.edgenetwork.org/index.php?p=jfduke3d
+The following Duke Nukem 3D versions are supported:
+* Duke3D Shareware
+* Duke3D 1.3d
+* Duke3D 1.4/5 Atomic
 
-arundel@h3c.de
+Be sure to read the release notes in this distribution. There's important
+information about using the new features in this release.
+
+Additions to the retail version features of Duke Nukem 3D can be found on the
+3D Realms forum. These patches/hacks feature high/low resolution textures,
+MD2/MD3 models, Blood and Gore hacks, map hacks, etc. The 3D Realms Forum can
+be accessed through this URL:
+
+http://forums.3drealms.com/
+
+WWW: http://jonof.edgenetwork.org/index.php?p=jfduke3d
Index: jfduke3d/pkg-plist
===================================================================
RCS file: /home/pcvs/ports/games/jfduke3d/pkg-plist,v
retrieving revision 1.2
diff -u -r1.2 pkg-plist
--- jfduke3d/pkg-plist	22 Jan 2006 02:11:05 -0000	1.2
+++ jfduke3d/pkg-plist	2 Aug 2006 20:16:33 -0000
@@ -1,9 +1,7 @@
-%%DATADIR%%/duke3d
-%%DATADIR%%/build
-%%DATADIR%%/fix.sh
-%%DATADIR%%/duke3d.sh
-%%DATADIR%%/build.sh
-%%DATADIR%%/build.cfg
-bin/duke3d
-bin/duke3d-build
-@dirrmtry share/jfduke3d
+bin/jfduke3d
+bin/jfduke3d-build
+%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
+%%PORTDOCS%%%%DOCSDIR%%/duke3d.def.sample
+%%PORTDOCS%%%%DOCSDIR%%/readme.txt
+%%PORTDOCS%%%%DOCSDIR%%/releasenotes.html
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
Index: jfduke3d/files/build-wrapper.sh
===================================================================
RCS file: jfduke3d/files/build-wrapper.sh
diff -N jfduke3d/files/build-wrapper.sh
--- jfduke3d/files/build-wrapper.sh	16 Sep 2005 13:28:51 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,6 +0,0 @@
-#!/bin/sh
-# Needed to make symlinks/shortcuts work.
-# Wrap build (editor) binary
-cd %%DUKEDIR%%
-./build $*
-exit $?
Index: jfduke3d/files/fix.sh
===================================================================
RCS file: jfduke3d/files/fix.sh
diff -N jfduke3d/files/fix.sh
--- jfduke3d/files/fix.sh	16 Sep 2005 13:28:51 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,17 +0,0 @@
-#!/bin/sh
-cd %%DUKEDIR%%
-
-if [ ! -d %%DUKEDIR%% ] || [ ! -w %%DUKEDIR%% ]
-then
-	echo You do not have permission to write to %%DUKEDIR%%.
-	exit
-fi
-
-if [ ! -f DUKE3D.GRP ]
-then
-	echo DUKE3D.GRP is missing
-	exit
-fi
-
-echo Renamed DUKE3D.GRP to duke3d.grp
-mv -f ./DUKE3D.GRP ./duke3d.grp
Index: jfduke3d/files/patch-Makefile
===================================================================
RCS file: jfduke3d/files/patch-Makefile
diff -N jfduke3d/files/patch-Makefile
--- jfduke3d/files/patch-Makefile	16 Sep 2005 13:28:51 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
---- Makefile.orig	Fri Aug 26 20:17:49 2005
-+++ Makefile	Fri Aug 26 20:18:07 2005
-@@ -88,7 +88,7 @@
- endif
- 
- ifeq ($(RENDERTYPE),SDL)
--	override CFLAGS+= $(subst -Dmain=SDL_main,,$(shell sdl-config --cflags))
-+	override CFLAGS+= $(subst -Dmain=SDL_main,,$(shell sdl11-config --cflags))
- 	AUDIOLIBOBJ=$(AUDIOLIB_MUSIC_STUB) $(AUDIOLIB_FX_STUB)
- 	GAMEOBJS+= $(OBJ)game_icon.$o
- 	EDITOROBJS+= $(OBJ)build_icon.$o
Index: jfduke3d/files/patch-jfbuild_src_20050531-Makefile
===================================================================
RCS file: jfduke3d/files/patch-jfbuild_src_20050531-Makefile
diff -N jfduke3d/files/patch-jfbuild_src_20050531-Makefile
--- jfduke3d/files/patch-jfbuild_src_20050531-Makefile	30 Oct 2005 20:04:44 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
---- ../jfbuild_src_20050531/Makefile.orig	Thu Oct 27 17:32:56 2005
-+++ ../jfbuild_src_20050531/Makefile	Thu Oct 27 17:35:56 2005
-@@ -93,7 +93,7 @@
- endif
- ifeq ($(PLATFORM),BSD)
- 	ASFLAGS+= -f elf
--	override CFLAGS+= -I/usr/X11R6/include
-+	override CFLAGS+= -I$(PREFIX)/include
- endif
- ifeq ($(PLATFORM),WINDOWS)
- 	override CFLAGS+= -DUNDERSCORES -I$(DXROOT)/include -I$(FMODROOT)/inc
Index: jfduke3d/files/patch-jfbuild_src_20050531-Makefile.shared
===================================================================
RCS file: jfduke3d/files/patch-jfbuild_src_20050531-Makefile.shared
diff -N jfduke3d/files/patch-jfbuild_src_20050531-Makefile.shared
--- jfduke3d/files/patch-jfbuild_src_20050531-Makefile.shared	30 Oct 2005 20:04:44 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
---- ../jfbuild_src_20050531/Makefile.shared.orig	Sun Sep  4 15:03:56 2005
-+++ ../jfbuild_src_20050531/Makefile.shared	Sun Sep  4 15:04:04 2005
-@@ -10,7 +10,7 @@
- GLLIBBSD=-lopengl32
- GLLIBLIN=-lGL
- 
--SDLCONFIG=sdl-config
-+SDLCONFIG=sdl11-config
- #SDLCONFIG=/usr/local/bin/sdl11-config
- 
- # detect the platform
Index: jfduke3d/files/pkg-message.in
===================================================================
RCS file: jfduke3d/files/pkg-message.in
diff -N jfduke3d/files/pkg-message.in
--- jfduke3d/files/pkg-message.in	16 Sep 2005 13:28:51 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,45 +0,0 @@
------------------------------------------------------------------
-JonoF's Duke Nukem 3D Port has been successfully installed.
-
-You still need the original Duke Nukem 3D data file. Please copy DUKE3D.GRP to
-the %%DATADIR%% directory and run the fix.sh script inside that directory.
-
-The JonoF Duke Nukem 3D Port supports the following Duke Nukem 3D versions:
-
-* Duke3D Shareware
-* Duke3D 1.3d
-* Duke3D 1.4/5 Atomic
-
-NOTE: Be sure to read the release notes in this distribution. There's important
-information about using the new features in this release.
-
-The release notes can be found in %%DOCSDIR%%.
-
-If you have any problems with running this port please contact the maintainer
-of this port and NOT Jonathan Fowler.
-
-The following features are not usable at the moment:
-
-* Sound doesn't work
-* No joystick support
-* GL mode doesn't work
-
-NOTE: You can find patches which enable sound and add joystick support here:
-
-http://jonof.edgenetwork.org/forum/viewtopic.php?p=3245
-
-I was not able to compile the port with these patches. If you manage to do so
-and the binary runs under FreeBSD with sound/jostick support enabled, please
-drop me a note telling me how you did it. I'd really like to add those patches
-to the port, because especially the lack of sound reduces the gameplay-fun a
-lot.
-
-NOTE: Additions to the retail version features of Duke Nukem 3D can be found on
-the 3D Realms forum. These patches/hacks feature high/low resolution textures,
-MD2/MD3 models, Blood and Gore hacks, map hacks, etc. The 3D Realms Forum can
-be accessed through this URL:
-
-http://forums.3drealms.com/
-
-Thx.
------------------------------------------------------------------
Index: jfduke3d/files/wrapper.sh
===================================================================
RCS file: jfduke3d/files/wrapper.sh
diff -N jfduke3d/files/wrapper.sh
--- jfduke3d/files/wrapper.sh	16 Sep 2005 13:28:51 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,6 +0,0 @@
-#!/bin/sh
-# Needed to make symlinks/shortcuts work.
-# Wrap duke3d binary
-cd %%DUKEDIR%%
-./duke3d $*
-exit $?
--- jfduke3d.diff ends here ---



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



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