aboutsummaryrefslogtreecommitdiff
path: root/games/ufoai/Makefile
diff options
context:
space:
mode:
authorGuido Falsi <madpilot@FreeBSD.org>2014-08-25 10:16:42 +0000
committerGuido Falsi <madpilot@FreeBSD.org>2014-08-25 10:16:42 +0000
commit2b8e9cf09927faefd6cda17685e666b1e3f0be09 (patch)
treea8e34f4ca66423e32bb096a0b480025f13293af6 /games/ufoai/Makefile
parenta0cb93541ff702421390fcde790ebfea5fcd7bdd (diff)
downloadports-2b8e9cf09927faefd6cda17685e666b1e3f0be09.tar.gz
ports-2b8e9cf09927faefd6cda17685e666b1e3f0be09.zip
Notes
Diffstat (limited to 'games/ufoai/Makefile')
-rw-r--r--games/ufoai/Makefile118
1 files changed, 65 insertions, 53 deletions
diff --git a/games/ufoai/Makefile b/games/ufoai/Makefile
index 9c6acc71b06f..06919ca087cc 100644
--- a/games/ufoai/Makefile
+++ b/games/ufoai/Makefile
@@ -2,32 +2,32 @@
# $FreeBSD$
PORTNAME= ufoai
-PORTVERSION= 2.4
-PORTREVISION= 3
+PORTVERSION= 2.5
CATEGORIES= games
MASTER_SITES= SF/${PORTNAME}/UFO_AI%202.x/${PORTVERSION}
DISTNAME= ${PORTNAME:S/$/-/}${PORTVERSION}-source
DIST_SUBDIR= ${PORTNAME}
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= m.tsatsenko@gmail.com
COMMENT= Strategy game featuring tactical combat
LIB_DEPENDS= libvorbis.so:${PORTSDIR}/audio/libvorbis \
libjpeg.so:${PORTSDIR}/graphics/jpeg \
libpng15.so:${PORTSDIR}/graphics/png \
libcurl.so:${PORTSDIR}/ftp/curl \
- libexecinfo.so:${PORTSDIR}/devel/libexecinfo \
libtheora.so:${PORTSDIR}/multimedia/libtheora \
libxvidcore.so:${PORTSDIR}/multimedia/xvid \
libmxml.so:${PORTSDIR}/textproc/mxml
-BUILD_DEPENDS= ${LOCALBASE}/include/mxml.h:${PORTSDIR}/textproc/mxml
+BUILD_DEPENDS= zip:${PORTSDIR}/archivers/zip
RUN_DEPENDS= ${LOCALBASE}/share/${PORTNAME}/base/default.cfg:${PORTSDIR}/games/ufoai-data
USE_GL= yes
USE_SDL= sdl image mixer ttf
-USES= gettext gmake openal:soft pkgconfig tar:bzip2
+USE_CXXSTD= c++11
+USES= compiler:c++11-lang execinfo gettext gmake openal:soft pkgconfig \
+ python:build tar:bzip2
HAS_CONFIGURE= yes
-CONFIGURE_ARGS+= --enable-release
+CONFIGURE_ARGS+= --enable-release --target-os=freebsd
CPPFLAGS+= -I${LOCALBASE}/include ${PTHREAD_CFLAGS}
LDFLAGS+= -L${LOCALBASE}/lib ${PTHREAD_LIBS} -lexecinfo
CFLAGS+= -I${LOCALBASE}/include
@@ -45,10 +45,9 @@ SERVER_DESC= Install dedicated server
UFO2MAP_DESC= Install UFO tools
UFORADIANT_DESC= Install UFO map editor
-NO_STAGE= yes
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
-.if $(PORT_OPTIONS:MSERVER)
+.if ${PORT_OPTIONS:MSERVER}
CONFIGURE_ARGS+= --enable-ufoded
UFO_FILES+= ufoded
PLIST_SUB+= UFOSERVER=""
@@ -57,7 +56,7 @@ CONFIGURE_ARGS+= --disable-ufoded
PLIST_SUB+= UFOSERVER="@comment "
.endif
-.if $(PORT_OPTIONS:MUFO2MAP)
+.if ${PORT_OPTIONS:MUFO2MAP}
CONFIGURE_ARGS+= --enable-ufo2map
UFO_FILES+= ufo2map
PLIST_SUB+= UFO2MAP=""
@@ -66,11 +65,11 @@ CONFIGURE_ARGS+= --disable-ufo2map
PLIST_SUB+= UFO2MAP="@comment "
.endif
-.if $(PORT_OPTIONS:MUFORADIANT)
+.if ${PORT_OPTIONS:MUFORADIANT}
CONFIGURE_ARGS+=--enable-uforadiant
USE_GNOME+= gtk20 glib20 gtksourceview2 libxml2
LIB_DEPENDS+= libgtkglext-x11-1.0.so:${PORTSDIR}/x11-toolkits/gtkglext
-RADIANT_FILE= uforadiant
+RADIANT_FILES= colours.xml game.xml input.xml mapdef.template menu.xml user.xml
RADIANT_DIRS= bitmaps i18n prefabs sourceviewer
PLIST_SUB+= UFORADIANT=""
.else
@@ -78,58 +77,71 @@ CONFIGURE_ARGS+=--disable-uforadiant
PLIST_SUB+= UFORADIANT="@comment "
.endif
+.if ${OSVERSION} < 1000024
+FAVORITE_COMPILER= gcc
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 900000
+BROKEN= Fails to build on 8.x
+.endif
+
post-extract:
@${MKDIR} ${WRKSRC}/base/maps ${WRKSRC}/base/models
-
-# Resolve name collision with jpeg-8 and API png
-post-patch:
- ${REINPLACE_CMD} -e 's|jpeg_mem_src|local_jpeg_mem_src|' \
- -e 's|png_set_gray_1_2_4_to_8|png_set_expand_gray_1_2_4_to_8|' \
- -e 's|png_check_sig(PngFileBuffer.buffer, 8)|!png_sig_cmp(PngFileBuffer.buffer, 0, 8)|' \
- ${WRKSRC}/src/client/renderer/r_image.c
+ ${REINPLACE_CMD} \
+ -e 's|DEFAULT_COMPILER_CC=cc|DEFAULT_COMPILER_CC=${CC}|' \
+ -e 's|DEFAULT_COMPILER_CXX=c++|DEFAULT_COMPILER_CXX=${CXX}|' \
+ ${WRKSRC}/configure
+.if ${CHOSEN_COMPILER_TYPE} == "clang"
+ ${REINPLACE_CMD} \
+ -e 's|-falign-loops=2 -falign-jumps=2 -falign-functions=2||' \
+ ${WRKSRC}/build/modes/release.mk
+.endif
post-build:
@cd ${WRKSRC} && ${MAKE_CMD} lang
-. if defined(WITH_UFORADIANT)
- @cd ${WRKSRC} && ${MAKE_CMD} uforadiant
-. endif
+.if $(PORT_OPTIONS:MUFORADIANT)
+ @cd ${WRKSRC} && ${MAKE_CMD} uforadiant
+.endif
do-install:
- @${MKDIR} ${UFO_DIR}
-. for FILE in ${UFO_FILES}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}
+.for FILE in ${UFO_FILES}
@${SED} \
-e 's|@UFODIR@|${UFO_DIR}|' \
-e 's|@APP@|${FILE}|' \
${FILESDIR}/run.sh.in > ${WRKDIR}/${FILE}
- ${INSTALL_PROGRAM} ${WRKSRC}/${FILE} ${UFO_DIR}
- ${INSTALL_SCRIPT} ${WRKDIR}/${FILE} ${PREFIX}/bin
-. endfor
-
- ${INSTALL_PROGRAM} ${WRKSRC}/base/game.so ${PREFIX}/${DATADIR}/base
-
-. if defined(WITH_UFORADIANT)
- @${MKDIR} ${UFO_DIR}/radiant
+ ${INSTALL_PROGRAM} ${WRKSRC}/${FILE} ${STAGEDIR}${UFO_DIR}
+ ${INSTALL_SCRIPT} ${WRKDIR}/${FILE} ${STAGEDIR}${PREFIX}/bin
+.endfor
+ ${MKDIR} ${STAGEDIR}${PREFIX}/${DATADIR}/base
+ ${INSTALL_PROGRAM} ${WRKSRC}/base/game.so ${STAGEDIR}${PREFIX}/${DATADIR}/base
+
+.if ${PORT_OPTIONS:MUFORADIANT}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}/radiant
@${SED} \
-e 's|@UFODIR@|${UFO_DIR}/radiant|' \
- -e 's|@APP@|${RADIANT_FILE}|' \
- ${FILESDIR}/run.sh.in > ${WRKDIR}/${RADIANT_FILE}
- ${INSTALL_PROGRAM} ${WRKSRC}/radiant/${RADIANT_FILE} ${UFO_DIR}/radiant
- ${INSTALL_SCRIPT} ${WRKDIR}/${RADIANT_FILE} ${PREFIX}/bin
-
-. for DIRE in ${RADIANT_DIRS}
- @${MKDIR} ${UFO_DIR}/radiant/${DIRE}
- @cd ${WRKSRC}/radiant/${DIRE} && \
- ${FIND} * -type d -exec ${MKDIR} "${UFO_DIR}/radiant/${DIRE}/{}" \; && \
- ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${UFO_DIR}/radiant/${DIRE}/{}" \;
-. endfor
-. endif
-
- @cd ${WRKSRC}/base/i18n && \
- ${FIND} * -type d -exec ${MKDIR} "${PREFIX}/${DATADIR}/base/i18n/{}" \; && \
- ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${PREFIX}/${DATADIR}/base/i18n/{}" \;
- ${LN} -s ${PREFIX}/${DATADIR}/base ${UFO_DIR}/base
-
-post-install:
- @${CAT} ${PKGMESSAGE}
+ -e 's|@APP@|uforadiant|' \
+ ${FILESDIR}/run.sh.in > ${WRKDIR}/uforadiant
+ ${INSTALL_PROGRAM} ${WRKSRC}/radiant/uforadiant ${STAGEDIR}${UFO_DIR}/radiant
+ ${INSTALL_SCRIPT} ${WRKDIR}/uforadiant ${STAGEDIR}${PREFIX}/bin
+
+.for FILE in ${RADIANT_FILES}
+ ${INSTALL_DATA} ${WRKSRC}/radiant/${FILE} ${STAGEDIR}${UFO_DIR}/radiant
+.endfor
+
+.for DIRE in ${RADIANT_DIRS}
+ ${MKDIR} ${STAGEDIR}${UFO_DIR}/radiant/${DIRE}
+ cd ${WRKSRC}/radiant/${DIRE} && \
+ ${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${UFO_DIR}/radiant/${DIRE}/{}" \; && \
+ ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${STAGEDIR}${UFO_DIR}/radiant/${DIRE}/{}" \;
+.endfor
+.endif
+
+ cd ${WRKSRC}/base/i18n && \
+ ${FIND} * -type d -exec ${MKDIR} "${STAGEDIR}${PREFIX}/${DATADIR}/base/i18n/{}" \; && \
+ ${FIND} * -type f -exec ${INSTALL_DATA} "{}" "${STAGEDIR}${PREFIX}/${DATADIR}/base/i18n/{}" \;
+ ${LN} -s ${PREFIX}/${DATADIR}/base ${STAGEDIR}${UFO_DIR}/base
.include <bsd.port.post.mk>