ports/152697: [PATCH] games/assaultcube: Update from 1.0.2 to 1.1.0.4
Sender Ghost
lightside at safebox.ru
Tue Nov 30 06:50:11 UTC 2010
>Number: 152697
>Category: ports
>Synopsis: [PATCH] games/assaultcube: Update from 1.0.2 to 1.1.0.4
>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: Tue Nov 30 06:50:10 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Sender Ghost
>Release: FreeBSD 8.1-RELEASE amd64
>Organization:
>Environment:
>Description:
Patch to update games/assaultcube port from 1.0.2 to 1.1.0.4 version.
The pkg-plist dynamically generated for specified (PORTDATA) directories and installed binary files.
Look following link for changes:
http://assault.cubers.net/docs/history.html
>How-To-Repeat:
>Fix:
Use attached diff from /usr/ports/games directory and delete assaultcube/pkg-plist file.
Patch attached with submission follows:
diff -ruN assaultcube.orig/Makefile assaultcube/Makefile
--- assaultcube.orig/Makefile 2010-03-28 13:34:35.000000000 +0700
+++ assaultcube/Makefile 2010-11-30 07:46:01.000000000 +0600
@@ -6,11 +6,11 @@
#
PORTNAME= assaultcube
-PORTVERSION= 1.0.2
-PORTREVISION= 5
+PORTVERSION= 1.1.0.4
CATEGORIES= games
-MASTER_SITES= SF/actiongame/AssaultCube/1.0
-DISTNAME= AssaultCube_v${PORTVERSION}
+MASTER_SITES= SF/actiongame/AssaultCube%20Version%20${PORTVERSION}
+DISTFILES= AssaultCube_v${PORTVERSION}_source${EXTRACT_SUFX} \
+ AssaultCube_v${PORTVERSION}${EXTRACT_SUFX}
MAINTAINER= ports at FreeBSD.org
COMMENT= Total conversion of the FPS game called Cube
@@ -20,39 +20,46 @@
USE_GMAKE= yes
GNU_CONFIGURE= yes
ALL_TARGET= libenet
+WRKSRC= ${WRKDIR}/${PORTVERSION}
+CONFIGURE_ARGS= --enable-shared=no --enable-static=yes
CONFIGURE_WRKSRC= ${WRKSRC}/source/enet
BUILD_WRKSRC= ${WRKSRC}/source/src
+MAKE_JOBS_SAFE= yes
+
+PORTDATA= config demos packages
+PORTDOCS= *
CFLAGS+= -DFREEBSD
OPTIONS= CLIENT "Build client" on \
DEDICATED "Build dedicated server" on \
+ MASTER "Build master server" off \
OPTIMIZED_CFLAGS "Enable compilation optimizations" on
.include <bsd.port.pre.mk>
-.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED)
-IGNORE= needs at least one executable (CLIENT and DEDICATED)
+.if defined(WITHOUT_CLIENT) && defined(WITHOUT_DEDICATED) && defined(WITHOUT_MASTER)
+IGNORE= needs at least one executable (CLIENT, DEDICATED or MASTER)
.endif
.if !defined(WITHOUT_CLIENT)
USE_GL= yes
USE_SDL= image mixer sdl
ALL_TARGET+= client
-PLIST_SUB+= CLIENT=""
SUB_FILES+= ${PORTNAME}_client
ACUBE_BIN+= client
-.else
-PLIST_SUB+= CLIENT="@comment "
.endif
.if !defined(WITHOUT_DEDICATED)
ALL_TARGET+= server
-PLIST_SUB+= DEDICATED=""
SUB_FILES+= ${PORTNAME}_server
ACUBE_BIN+= server
-.else
-PLIST_SUB+= DEDICATED="@comment "
+.endif
+
+.if !defined(WITHOUT_MASTER)
+ALL_TARGET+= master
+SUB_FILES+= ${PORTNAME}_master
+ACUBE_BIN+= master
.endif
.if defined(WITHOUT_OPTIMIZED_CFLAGS)
@@ -63,21 +70,21 @@
do-install:
.for f in ${ACUBE_BIN}
${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME}_${f} ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/ac_${f} ${PREFIX}/libexec/${PORTNAME}_${f}
.endfor
-.for f in ${ACUBE_BIN}
- ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/ac_${f} \
- ${PREFIX}/libexec/${PORTNAME}_${f}
-.endfor
+.if !defined(NOPORTDATA)
${MKDIR} ${DATADIR}
- cd ${WRKSRC} && ${CP} -r bot config packages ${DATADIR}
- @${FIND} ${DATADIR} -type d -print0 | ${XARGS} -0 ${CHMOD} ${BINMODE}
- @${FIND} ${DATADIR} -type f -print0 | ${XARGS} -0 ${CHMOD} ${SHAREMODE}
+ cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDATA}" ${DATADIR}
+.endif
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
- ${CP} -R ${WRKSRC}/docs/* ${DOCSDIR}
- ${INSTALL_DATA} ${WRKSRC}/README.html ${DOCSDIR}
- @${FIND} ${DOCSDIR} -type d -print0 | ${XARGS} -0 ${CHMOD} ${BINMODE}
- @${FIND} ${DOCSDIR} -type f -print0 | ${XARGS} -0 ${CHMOD} ${SHAREMODE}
+ cd ${WRKSRC}/docs && ${COPYTREE_SHARE} . ${DOCSDIR}
.endif
+post-install:
+.for f in ${ACUBE_BIN}
+ @${ECHO_CMD} bin/${PORTNAME}_${f} >> ${TMPPLIST}
+ @${ECHO_CMD} libexec/${PORTNAME}_${f} >> ${TMPPLIST}
+.endfor
+
.include <bsd.port.post.mk>
diff -ruN assaultcube.orig/distinfo assaultcube/distinfo
--- assaultcube.orig/distinfo 2009-02-11 03:31:06.000000000 +0600
+++ assaultcube/distinfo 2010-11-30 09:48:28.000000000 +0600
@@ -1,3 +1,4 @@
-MD5 (AssaultCube_v1.0.2.tar.bz2) = e083182699e65c240d8c7fa051644e6f
-SHA256 (AssaultCube_v1.0.2.tar.bz2) = d4de1b1154c8aceccc0e961b751d01fd506f359472a648b88c639f99eb18c795
-SIZE (AssaultCube_v1.0.2.tar.bz2) = 42673504
+SHA256 (AssaultCube_v1.1.0.4.tar.bz2) = fea2056aa7262617b96b06ea0b85422bcec54d88cd88689c2c73ade3bd0ba029
+SIZE (AssaultCube_v1.1.0.4.tar.bz2) = 47051151
+SHA256 (AssaultCube_v1.1.0.4_source.tar.bz2) = 045925610c54b2764a79286aeb1942df2cc5ce52b710c26b447eea69fa6b1129
+SIZE (AssaultCube_v1.1.0.4_source.tar.bz2) = 2560572
diff -ruN assaultcube.orig/files/assaultcube_client.in assaultcube/files/assaultcube_client.in
--- assaultcube.orig/files/assaultcube_client.in 2007-10-21 09:00:57.000000000 +0700
+++ assaultcube/files/assaultcube_client.in 2010-11-30 08:01:39.000000000 +0600
@@ -6,6 +6,7 @@
# are copied, and write permission for the user is added to them.
APPNAME="assaultcube"
+CUBE_OPTIONS="--home=~/.${APPNAME} --init"
if [ -d ~/.$APPNAME ]
then
@@ -21,4 +22,4 @@
fi
cd ~/.$APPNAME || exit 1
-exec %%PREFIX%%/libexec/${APPNAME}_client "$@"
+exec %%PREFIX%%/libexec/${APPNAME}_client ${CUBE_OPTIONS} "$@"
diff -ruN assaultcube.orig/files/assaultcube_master.in assaultcube/files/assaultcube_master.in
--- assaultcube.orig/files/assaultcube_master.in 1970-01-01 06:00:00.000000000 +0600
+++ assaultcube/files/assaultcube_master.in 2010-11-30 08:02:15.000000000 +0600
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+# The executable needs to be run from its data directory, and needs to store
+# configuration in it. We therefore mirror the data directory hierarchy in
+# ~/.XXX, and create symlinks to the data files, but the configuration files
+# are copied, and write permission for the user is added to them.
+
+APPNAME="assaultcube"
+CUBE_OPTIONS=
+
+if [ -d ~/.$APPNAME ]
+then
+ echo "Using existing ~/.$APPNAME directory."
+else
+ echo "Creating ~/.$APPNAME directory."
+ cd %%DATADIR%% || exit 1
+ find * -type d -exec mkdir -p ~/.$APPNAME/{} \;
+ find * -type f -name "*.cfg" \
+ -exec cp %%DATADIR%%/{} ~/.$APPNAME/{} \; \
+ -exec chmod u+w ~/.$APPNAME/{} \; 2>/dev/null
+ find * -type f -exec ln -s %%DATADIR%%/{} ~/.$APPNAME/{} \; 2>/dev/null
+fi
+
+cd ~/.$APPNAME || exit 1
+exec %%PREFIX%%/libexec/${APPNAME}_master ${CUBE_OPTIONS} "$@"
diff -ruN assaultcube.orig/files/assaultcube_server.in assaultcube/files/assaultcube_server.in
--- assaultcube.orig/files/assaultcube_server.in 2007-10-21 09:00:57.000000000 +0700
+++ assaultcube/files/assaultcube_server.in 2010-11-30 08:02:48.000000000 +0600
@@ -6,6 +6,7 @@
# are copied, and write permission for the user is added to them.
APPNAME="assaultcube"
+CUBE_OPTIONS=
if [ -d ~/.$APPNAME ]
then
@@ -21,4 +22,4 @@
fi
cd ~/.$APPNAME || exit 1
-exec %%PREFIX%%/libexec/${APPNAME}_server "$@"
+exec %%PREFIX%%/libexec/${APPNAME}_server ${CUBE_OPTIONS} "$@"
diff -ruN assaultcube.orig/files/patch-source_src_Makefile assaultcube/files/patch-source_src_Makefile
--- assaultcube.orig/files/patch-source_src_Makefile 1970-01-01 06:00:00.000000000 +0600
+++ assaultcube/files/patch-source_src_Makefile 2010-11-30 09:35:05.000000000 +0600
@@ -0,0 +1,36 @@
+--- source/src/Makefile.orig 2010-11-15 00:46:24.000000000 +0600
++++ source/src/Makefile 2010-11-30 07:29:06.000000000 +0600
+@@ -1,9 +1,8 @@
+ //CXX=g++-gcc-4.2.3
+-CXXFLAGS= -O3 -fomit-frame-pointer
+ override CXXFLAGS+= -Wall -fsigned-char
+
+ PLATFORM= $(shell uname -s)
+-PLATFORM_PREFIX=native
++PLATFORM_PREFIX= FreeBSD
+
+ INCLUDES= -I. -Ibot -I../enet/include
+
+@@ -24,9 +23,9 @@
+ else
+ USRLIB=$(shell if [ -e /usr/lib64 ]; then echo "/usr/lib64"; else echo "/usr/lib"; fi)
+ override CXXFLAGS+= -rdynamic
+-CLIENT_INCLUDES= $(INCLUDES) -I/usr/include `sdl-config --cflags` -idirafter ../include
++CLIENT_INCLUDES= $(INCLUDES) `${SDL_CONFIG} --cflags` -I${LOCALBASE}/include -idirafter ../include
+ # -lSDL_ttf
+-CLIENT_LIBS= -L../enet/.libs -lenet -L$(USRLIB) `sdl-config --libs` -lSDL_image -lz -lGL -lopenal -lvorbisfile
++CLIENT_LIBS= -L../enet/.libs -lenet `${SDL_CONFIG} --libs` -L${LOCALBASE}/lib -lSDL_image -lz -lGL -lopenal -lvorbisfile -lintl
+ endif
+
+ CLIENT_OBJS= \
+@@ -92,8 +91,8 @@
+ SERVER_INCLUDES= -DSTANDALONE $(INCLUDES) -I../include
+ SERVER_LIBS= -L../lib -lzdll -lenet -llibintl -lws2_32 -lwinmm
+ else
+-SERVER_INCLUDES= -DSTANDALONE $(INCLUDES)
+-SERVER_LIBS= -L../enet/.libs -lenet -lz
++SERVER_INCLUDES= -DSTANDALONE $(INCLUDES) -I${LOCALBASE}/include
++SERVER_LIBS= -L../enet/.libs -lenet -lz -L${LOCALBASE}/lib
+ endif
+
+ SERVER_OBJS= \
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list