diff options
Diffstat (limited to 'games/bastet')
-rw-r--r-- | games/bastet/Makefile | 29 | ||||
-rw-r--r-- | games/bastet/files/patch-BastetBlockChooser.hpp | 47 |
2 files changed, 66 insertions, 10 deletions
diff --git a/games/bastet/Makefile b/games/bastet/Makefile index b3009c5209b2..3dda3566c6ae 100644 --- a/games/bastet/Makefile +++ b/games/bastet/Makefile @@ -9,36 +9,45 @@ MASTER_SITES= http://fph.altervista.org/prog/files/ EXTRACT_SUFX= .tgz MAINTAINER= ports@FreeBSD.org -COMMENT= An ncurses Tetris clone which is harder than every other Tetris +COMMENT= Ncurses Tetris clone which is harder than every other Tetris LICENSE= GPLv3 # (or later) LIB_DEPENDS= libboost_program_options.so:${PORTSDIR}/devel/boost-libs -USES= ncurses -USE_GMAKE= yes +USES= gmake ncurses CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib -MAN6= bastet.6 -PLIST_FILES= bin/bastet +PLIST_FILES= bin/bastet man/man6/bastet.6.gz -NO_STAGE= yes .include <bsd.port.pre.mk> -.if ${ARCH} != "i386" +.if ${OSVERSION} < 1000024 +.if exists(/usr/bin/clang) +CC= clang +CXX= clang++ +CPP= clang-cpp +.else +.if ${ARCH} == "i386" +CXXFLAGS+= -fexceptions +.else USE_GCC= yes .endif +.endif +.endif post-patch: @${REINPLACE_CMD} -e \ 's|^CXXFLAGS+=-D|CXXFLAGS+=$$(CPPFLAGS) -D| ; \ - s|$$(CXX) -MM|$$(CXX) $$(CPPFLAGS) -MM| ; \ + s|$$(CXX) -MM|$$(CXX) $$(CXXFLAGS) -MM| ; \ s| -ggdb | |' ${WRKSRC}/Makefile do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/bastet ${PREFIX}/bin - ${INSTALL_MAN} ${WRKSRC}/bastet.6 ${MAN6PREFIX}/man/man6 + (cd ${WRKSRC} && ${INSTALL_PROGRAM} bastet \ + ${STAGEDIR}${PREFIX}/bin) + (cd ${WRKSRC} && ${INSTALL_MAN} bastet.6 \ + ${STAGEDIR}${MAN6PREFIX}/man/man6) .include <bsd.port.post.mk> diff --git a/games/bastet/files/patch-BastetBlockChooser.hpp b/games/bastet/files/patch-BastetBlockChooser.hpp new file mode 100644 index 000000000000..720591fcb9a7 --- /dev/null +++ b/games/bastet/files/patch-BastetBlockChooser.hpp @@ -0,0 +1,47 @@ +--- BastetBlockChooser.hpp.orig 2009-03-21 06:49:31.000000000 +0900 ++++ BastetBlockChooser.hpp 2013-11-29 22:35:48.000000000 +0900 +@@ -23,19 +23,32 @@ + + #include "Well.hpp" + ++#if !defined(_LIBCPP_VERSION) + #include <tr1/unordered_set> ++#else ++#include <unordered_set> ++#endif + #include <set> + #include <boost/functional/hash.hpp> + ++#if !defined(_LIBCPP_VERSION) + //boilerplate to use boost::hash as std::tr1::hash + namespace std{namespace tr1{ ++#else ++//boilerplate to use boost::hash as std::hash ++namespace std{ ++#endif + template<> struct hash<Bastet::BlockPosition>{ + size_t operator()(const Bastet::BlockPosition &fb) const{ + static boost::hash<Bastet::BlockPosition> h; + return h(fb); + } + }; ++#if !defined(_LIBCPP_VERSION) + }} ++#else ++ } ++#endif + + namespace Bastet{ + +@@ -83,7 +96,11 @@ + public: + Searcher(BlockType b, const Well *well, Vertex v, WellVisitor *visitor); + private: ++#if !defined(_LIBCPP_VERSION) + std::tr1::unordered_set<Vertex> _visited; ++#else ++ std::unordered_set<Vertex> _visited; ++#endif + //std::set<Vertex> _visited; ^^ the above is more efficient, we need to do many inserts + BlockType _block; + const Well *_well; |