1PORTNAME= oolite 2PORTVERSION= 1.88 3PORTREVISION= 3 4CATEGORIES= games gnustep 5MASTER_SITES= https://github.com/OoliteProject/oolite/releases/download/1.88/ 6DISTNAME= ${PORTNAME}-source-${PORTVERSION} 7DIST_SUBDIR= oolite 8 9MAINTAINER= ports@MidnightBSD.org 10COMMENT= Trade and combat space simulator, clone of Elite 11WWW= http://www.oolite.org 12 13LICENSE= CC-BY-NC-SA-3.0 gpl2 zlib 14LICENSE_COMB= multi 15LICENSE_FILE_CC-BY-NC-SA-3.0= ${WRKSRC}/Doc/LICENSE.TXT 16 17BUILD_DEPENDS= zip:archivers/zip \ 18 ${LOCALBASE}/bin/unzip:archivers/unzip 19LIB_DEPENDS= libespeak-ng.so:audio/espeak-ng \ 20 libnspr4.so:devel/nspr \ 21 libvorbisfile.so:audio/libvorbis \ 22 libpng.so:graphics/png \ 23 libminizip.so:archivers/minizip 24 25USES= gl gnustep openal:al perl5 python:3.5+,build sdl \ 26 tar:bzip2 xorg 27USE_CXXSTD= gnu++98 28USE_GL= gl glu 29USE_SDL= sdl 30USE_XORG= x11 31USE_GNUSTEP= base build 32 33ADDITIONAL_CPPFLAGS+= -Wno-error=incompatible-function-pointer-types 34 35MAKE_ENV= ac_cv_path_PYTHON=${PYTHON_CMD} 36# Redefine DO_MAKE_BUILD, because current gnustep in USES overrides MAKEFILE 37# without possibility to change it, as it was done in the previous implementation 38DO_MAKE_BUILD= ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} Makefile ${_MAKE_JOBS} ${MAKE_ARGS:C,^${DESTDIRNAME}=.*,,g} 39ALL_TARGET= release-deployment 40USE_PERL5= build 41 42GNUSTEP_LOCAL_APPS= ${GNUSTEP_LOCAL_ROOT}/Applications 43 44SUB_FILES= oolite 45SUB_LIST= GNUSTEP_SYSTEM_TOOLS="${GNUSTEP_SYSTEM_TOOLS}" 46 47WRKSRC= ${WRKDIR}/${DISTNAME} 48RELEASEDIR= ${WRKSRC}/oolite.app 49DATADIR= ${GNUSTEP_LOCAL_APPS}/oolite.app 50PORTDATA= Resources 51PORTDOCS= *.pdf CHANGELOG.TXT contributors.txt 52 53PLIST_FILES+= bin/oolite ${DATADIR}/oolite \ 54 share/applications/oolite.desktop \ 55 share/pixmaps/oolite-icon.png 56 57OPTIONS_DEFINE= DOCS 58 59BROKEN_aarch64= fails to configure: error: These compiler flags are invalid: -O 60BROKEN_armv6= fails to compile: your compiler does not follow the C++ specification for temporary object destruction order 61BROKEN_armv7= fails to compile: your compiler does not follow the C++ specification for temporary object destruction order 62BROKEN_i386= fails to compile: ../methodjit/MethodJIT.cpp:318:5: error: expected '(' after 'asm' 63 64post-patch: .SILENT 65 ${REINPLACE_CMD} -e 's/GNUSTEP_USER_ROOT/GNUSTEP_LOCAL_ROOT/ ; \ 66 s/sdl-config/$${SDL_CONFIG}/ ; \ 67 s|-lstdc++|`$${SDL_CONFIG} --libs` &| ; \ 68 s|:src/Core/MiniZip|| ; \ 69 s|-Isrc/Core/MiniZip|-I$${LOCALBASE}/include/minizip| ; \ 70 s|-lz|-lminizip| ; \ 71 /ioapi.c/d ; /unzip.c/d ; \ 72 s|/usr/X11R6|$${LOCALBASE}|' \ 73 ${WRKSRC}/GNUmakefile 74# Change value of the SAVEDIR define 75 ${REINPLACE_CMD} -e 's|oolite-saves|\.oolite-saves|' \ 76 ${WRKSRC}/src/Core/NSFileManagerOOExtensions.h 77 ${CP} ${PORTSDIR}/Templates/config.guess ${WRKSRC}/deps/mozilla/js/src/build/autoconf 78 ${CP} ${PORTSDIR}/Templates/config.sub ${WRKSRC}/deps/mozilla/js/src/build/autoconf 79 80do-install: 81 (cd ${RELEASEDIR} && ${COPYTREE_SHARE} "${PORTDATA}" ${DATADIR}) 82 ${INSTALL_SCRIPT} ${WRKDIR}/oolite ${PREFIX}/bin 83 ${INSTALL_PROGRAM} ${RELEASEDIR}/oolite ${DATADIR} 84 ${INSTALL_DATA} ${WRKSRC}/installers/FreeDesktop/oolite.desktop \ 85 ${PREFIX}/share/applications 86 ${INSTALL_DATA} ${WRKSRC}/installers/FreeDesktop/oolite-icon.png \ 87 ${PREFIX}/share/pixmaps 88 (cd ${WRKSRC}/Doc && ${COPYTREE_SHARE} "${PORTDOCS}" ${DOCSDIR}) 89 90.include <bsd.port.mk> 91