aboutsummaryrefslogtreecommitdiffstats
path: root/games/xonotic
diff options
context:
space:
mode:
authordanfe <danfe@FreeBSD.org>2009-08-11 06:27:16 +0800
committerdanfe <danfe@FreeBSD.org>2009-08-11 06:27:16 +0800
commitc65cc7962bd53a8b706669338bf36fc7f6218a5d (patch)
tree121dc6f45ae3eaae67976048b138436df19cdf4c /games/xonotic
parentb53c50598b63c82167047b7608ffdb74967d64fa (diff)
downloadfreebsd-ports-gnome-c65cc7962bd53a8b706669338bf36fc7f6218a5d.tar.gz
freebsd-ports-gnome-c65cc7962bd53a8b706669338bf36fc7f6218a5d.tar.zst
freebsd-ports-gnome-c65cc7962bd53a8b706669338bf36fc7f6218a5d.zip
- Belatedly update to version 2.5.1
- Remove superfluous home-rolled `do-build' target - Link to dependent libraries instead of loading them at run-time - Install server-related files and scripts (can be useful for admin)
Diffstat (limited to 'games/xonotic')
-rw-r--r--games/xonotic/Makefile49
-rw-r--r--games/xonotic/distinfo6
-rw-r--r--games/xonotic/files/patch-libjpeg7-fix58
-rw-r--r--games/xonotic/pkg-plist20
4 files changed, 106 insertions, 27 deletions
diff --git a/games/xonotic/Makefile b/games/xonotic/Makefile
index 8002759e13b3..3e2139e89a02 100644
--- a/games/xonotic/Makefile
+++ b/games/xonotic/Makefile
@@ -6,8 +6,7 @@
#
PORTNAME= nexuiz
-PORTVERSION= 2.4.2
-PORTREVISION= 3
+PORTVERSION= 2.5.1
CATEGORIES= games
MASTER_SITES= SF
DISTNAME= ${PORTNAME}-${PORTVERSION:S/.//g}
@@ -16,13 +15,14 @@ DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= danfe@FreeBSD.org
COMMENT= A fast-paced, chaotic, and intense multiplayer first person shooter
-NO_PACKAGE= Package will be 468MB, set FORCE_PACKAGE if you really want to build it
+NO_PACKAGE= Package will be 724MB, set FORCE_PACKAGE if you really want to build it
USE_ZIP= yes
WRKSRC= ${WRKDIR}/Nexuiz/sources/darkplaces
MAKEFILE= BSDmakefile
MAKE_ARGS= DP_FS_BASEDIR="${DATADIR}" CC="${CC}" \
+ DP_PRELOAD_DEPENDENCIES=yes \
OPTIM_RELEASE="${CFLAGS} -fno-strict-aliasing -funroll-loops"
ALL_TARGET= #
@@ -33,6 +33,10 @@ OPTIONS= CLIENT "Build GLX client" on \
.include <bsd.port.pre.mk>
+.if !(defined(WITH_CLIENT) || defined(WITH_SDL_CLIENT) || defined(WITH_SERVER))
+IGNORE= requires at least one of [SDL_]CLIENT or SERVER options
+.endif
+
.if !defined(WITHOUT_MAPPACK)
DISTFILES+= nexmappack_r2${EXTRACT_SUFX}
PLIST_SUB+= MAPPACK=""
@@ -40,12 +44,12 @@ PLIST_SUB+= MAPPACK=""
PLIST_SUB+= MAPPACK="@comment "
.endif
-.if !(defined(WITHOUT_CLIENT) && defined(WITHOUT_SDL_CLIENT))
-# Loads libraries at run-time, thus RUN_DEPENDS
-RUN_DEPENDS= ${LOCALBASE}/lib/libvorbis.so:${PORTSDIR}/audio/libvorbis \
- ${LOCALBASE}/lib/libjpeg.so:${PORTSDIR}/graphics/jpeg \
- ${LOCALBASE}/lib/libpng.so:${PORTSDIR}/graphics/png \
- ${LOCALBASE}/lib/libcurl.so:${PORTSDIR}/ftp/curl
+LIB_DEPENDS= curl.5:${PORTSDIR}/ftp/curl
+.if defined(WITH_CLIENT) || defined(WITH_SDL_CLIENT)
+LIB_DEPENDS+= modplug.0:${PORTSDIR}/audio/libmodplug \
+ jpeg.10:${PORTSDIR}/graphics/jpeg \
+ png.5:${PORTSDIR}/graphics/png \
+ theora.0:${PORTSDIR}/multimedia/libtheora
.endif
.if !defined(WITHOUT_CLIENT)
@@ -73,30 +77,29 @@ PLIST_SUB+= SERVER="@comment "
.endif
post-extract:
- @${EXTRACT_CMD} ${WRKDIR}/Nexuiz/sources/enginesource20080511.zip \
+ @${EXTRACT_CMD} ${WRKDIR}/Nexuiz/sources/enginesource20090501.zip \
-d ${WRKDIR}/Nexuiz/sources
post-patch:
- @${REINPLACE_CMD} -e 's,/usr/X11R6,${LOCALBASE},' ${WRKSRC}/${MAKEFILE} \
- ${WRKSRC}/makefile.inc
-# Make Nexuiz' lhnetaddress structure really compatible with FreeBSD's
-# sockaddr_in, and fix value for LHNETADDRESSTYPE_INET6_FAMILY
- @${REINPLACE_CMD} -e 's,10,28, ; \
- s,short family,char sin_len; unsigned char family,' \
- ${WRKSRC}/lhnet.h
-
-do-build:
- @(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} \
- ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET})
+ @${REINPLACE_CMD} -e 's,/usr/X11R6,${LOCALBASE},' \
+ ${WRKSRC}/${MAKEFILE} ${WRKSRC}/makefile.inc
+ @${REINPLACE_CMD} -e '/LDFLAGS_BSDSV/s,$$,-L${LOCALBASE}/lib,' \
+ ${WRKSRC}/makefile.inc
do-install:
- ${SH} -c '${FIND} ${WRKSRC} -name "darkplaces-*[^vp]" | \
+ ${SH} -c '${FIND} ${WRKSRC} -name "darkplaces-*[^vpj]" | \
while read f ; do ${INSTALL_PROGRAM} $${f} \
${PREFIX}/bin/${PORTNAME}-$${f##*-} ; done'
- @${MKDIR} ${DATADIR}/data
+ @${MKDIR} ${DATADIR}/data ${DATADIR}/havoc
${INSTALL_DATA} ${WRKDIR}/Nexuiz/data/*.pk3 ${DATADIR}/data
+ ${INSTALL_DATA} ${WRKDIR}/Nexuiz/havoc/*.pk3 ${DATADIR}/havoc
.if !defined(WITHOUT_MAPPACK)
${INSTALL_DATA} ${WRKDIR}/data/*.pk3 ${DATADIR}/data
.endif
+.if !defined(WITHOUT_SERVER)
+ cd ${WRKDIR}/Nexuiz && ${COPYTREE_SHARE} server ${DATADIR}
+ ${FIND} ${DATADIR}/server -type f -name \*.sh -o -name \*.pl | \
+ ${XARGS} ${CHMOD} +x
+.endif
.include <bsd.port.post.mk>
diff --git a/games/xonotic/distinfo b/games/xonotic/distinfo
index f24d0812db42..8bee193e1e7a 100644
--- a/games/xonotic/distinfo
+++ b/games/xonotic/distinfo
@@ -1,6 +1,6 @@
-MD5 (nexuiz-242.zip) = 2ea51368774ca603fd56faebfeac74d7
-SHA256 (nexuiz-242.zip) = ec31db254fd94508f63a5651beff73ce5c9e187e9c91f35f7616f33f082ae52b
-SIZE (nexuiz-242.zip) = 393779967
+MD5 (nexuiz-251.zip) = 8e945f71a922f1f87ab406bafadde93f
+SHA256 (nexuiz-251.zip) = d33193b5e9ecdb0619c0dde23f0aa7ae740da25a025efbd90e90ea04e61cf756
+SIZE (nexuiz-251.zip) = 691491576
MD5 (nexmappack_r2.zip) = e881e78e02e5e97c7c453192aab58f7d
SHA256 (nexmappack_r2.zip) = 15088c7632e0b4f487c789fba4296f44ef5a5d83b51adcb9e603e289e5b8241e
SIZE (nexmappack_r2.zip) = 113533483
diff --git a/games/xonotic/files/patch-libjpeg7-fix b/games/xonotic/files/patch-libjpeg7-fix
new file mode 100644
index 000000000000..c4e734926f0f
--- /dev/null
+++ b/games/xonotic/files/patch-libjpeg7-fix
@@ -0,0 +1,58 @@
+--- jpeg.c.orig
++++ jpeg.c
+@@ -46,7 +46,7 @@ typedef unsigned char jboolean;
+ typedef int jboolean;
+ #endif
+
+-#define JPEG_LIB_VERSION 62 // Version 6b
++#define JPEG_LIB_VERSION 70 // Version 7
+
+ typedef void *j_common_ptr;
+ typedef struct jpeg_compress_struct *j_compress_ptr;
+@@ -161,12 +161,13 @@ typedef struct {
+ * Values of 1,2,4,8 are likely to be supported. Note that different
+ * components may receive different IDCT scalings.
+ */
+- int DCT_scaled_size;
++ int DCT_h_scaled_size;
++ int DCT_v_scaled_size;
+ /* The downsampled dimensions are the component's actual, unpadded number
+- * of samples at the main buffer (preprocessing/compression interface), thus
+- * downsampled_width = ceil(image_width * Hi/Hmax)
+- * and similarly for height. For decompression, IDCT scaling is included, so
+- * downsampled_width = ceil(image_width * Hi/Hmax * DCT_scaled_size/DCTSIZE)
++ * of samples at the main buffer (preprocessing/compression interface);
++ * DCT scaling is included, so
++ * downsampled_width = ceil(image_width * Hi/Hmax * DCT_h_scaled_size/DCTSIZE)
++ * and similarly for height.
+ */
+ JDIMENSION downsampled_width; /* actual width in samples */
+ JDIMENSION downsampled_height; /* actual height in samples */
+@@ -268,7 +269,8 @@ struct jpeg_decompress_struct
+ void *marker_list;
+ int max_h_samp_factor;
+ int max_v_samp_factor;
+- int min_DCT_scaled_size;
++ int min_DCT_h_scaled_size; /* smallest DCT_h_scaled_size of any component */
++ int min_DCT_v_scaled_size; /* smallest DCT_v_scaled_size of any component */
+ JDIMENSION total_iMCU_rows;
+ void *sample_range_limit;
+ int comps_in_scan;
+@@ -344,6 +346,8 @@ struct jpeg_compress_struct
+ jboolean progressive_mode;
+ int max_h_samp_factor;
+ int max_v_samp_factor;
++ int min_DCT_h_scaled_size; /* smallest DCT_h_scaled_size of any component */
++ int min_DCT_v_scaled_size; /* smallest DCT_v_scaled_size of any component */
+ JDIMENSION total_iMCU_rows;
+ int comps_in_scan;
+ jpeg_component_info *cur_comp_info[MAX_COMPS_IN_SCAN];
+@@ -473,7 +477,7 @@ qboolean JPEG_OpenLibrary (void)
+ #elif defined(MACOSX)
+ "libjpeg.62.dylib",
+ #else
+- "libjpeg.so.62",
++ "libjpeg.so.10",
+ "libjpeg.so",
+ #endif
+ NULL
diff --git a/games/xonotic/pkg-plist b/games/xonotic/pkg-plist
index 6862eb817889..1391969e06e7 100644
--- a/games/xonotic/pkg-plist
+++ b/games/xonotic/pkg-plist
@@ -2,7 +2,9 @@
%%SDL_CLIENT%%bin/nexuiz-sdl
%%SERVER%%bin/nexuiz-dedicated
%%DATADIR%%/data/common-spog.pk3
-%%DATADIR%%/data/data20080511.pk3
+%%DATADIR%%/data/data20090501.pk3
+%%DATADIR%%/havoc/data20090501havoc.pk3
+@dirrm %%DATADIR%%/havoc
%%MAPPACK%%%%DATADIR%%/data/79drdm5_beta2_nex.pk3
%%MAPPACK%%%%DATADIR%%/data/79drgc2_nex.pk3
%%MAPPACK%%%%DATADIR%%/data/CMP1-dm6_nex.pk3
@@ -40,5 +42,21 @@
%%MAPPACK%%%%DATADIR%%/data/storm3dm3_nex.pk3
%%MAPPACK%%%%DATADIR%%/data/straledm5_nex.pk3
%%MAPPACK%%%%DATADIR%%/data/zpdm01_nex.pk3
+%%SERVER%%%%DATADIR%%/server/rcon2irc/rbiserver.pl
+%%SERVER%%%%DATADIR%%/server/rcon2irc/rcon2irc-example.conf
+%%SERVER%%%%DATADIR%%/server/rcon2irc/rcon2irc.pl
+%%SERVER%%%%DATADIR%%/server/rcon2irc/rcon2irc.txt
+%%SERVER%%@dirrm %%DATADIR%%/server/rcon2irc
+%%SERVER%%%%DATADIR%%/server/help.cfg
+%%SERVER%%%%DATADIR%%/server/rcon.pl
+%%SERVER%%%%DATADIR%%/server/readme.txt
+%%SERVER%%%%DATADIR%%/server/server.cfg
+%%SERVER%%%%DATADIR%%/server/server_havoc_linux.sh
+%%SERVER%%%%DATADIR%%/server/server_havoc_mac.sh
+%%SERVER%%%%DATADIR%%/server/server_havoc_windows.bat
+%%SERVER%%%%DATADIR%%/server/server_linux.sh
+%%SERVER%%%%DATADIR%%/server/server_mac.sh
+%%SERVER%%%%DATADIR%%/server/server_windows.bat
+%%SERVER%%@dirrm %%DATADIR%%/server
@dirrm %%DATADIR%%/data
@dirrm %%DATADIR%%