diff --git a/games/bsdgames/Makefile b/games/bsdgames/Makefile index 23835721a76c..ca2de37b741e 100644 --- a/games/bsdgames/Makefile +++ b/games/bsdgames/Makefile @@ -1,93 +1,94 @@ # Created by: Mark Murray # $FreeBSD$ PORTNAME= bsdgames PORTVERSION= 4.0.5 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= games MASTER_SITES= ${MASTER_SITE_LOCAL} MASTER_SITE_SUBDIR= adamw MAINTAINER= adamw@FreeBSD.org COMMENT= Traditional BSD games taken from DragonFly BSD LICENSE= BSD3CLAUSE CONFLICTS= hangman-[0-9]* USES= uidfix tar:xz MAKE_ENV+= NO_WERROR=1 MAKE_ARGS= BINGRP=${BINGRP} # contain /usr/share/games SHAREPATH_FILES=atc/atc.6 \ atc/pathnames.h \ cribbage/cribbage.6 \ cribbage/pathnames.h \ fish/pathnames.h \ larn/pathnames.h \ quiz/datfiles/index \ quiz/pathnames.h \ quiz/quiz.6 \ wump/pathnames.h # contain /usr/games/* GAMESPATH_FILES=backgammon/backgammon/backgammon.6 \ backgammon/common_source/init.c \ canfield/canfield/canfield.6 \ cribbage/cribbage.6 \ hunt/hunt/hunt.6 \ hunt/huntd/huntd.6 \ phantasia/pathnames.h \ wargames/wargames.sh # These keep score in /var/games SGID_BINARIES= atc battlestar canfield/canfield cribbage hack phantasia \ robots sail snake/snake post-patch: @${REINPLACE_CMD} -e "s/NOMAN/NO_MAN/" \ ${WRKSRC}/backgammon/teachgammon/Makefile \ ${WRKSRC}/canfield/cfscores/Makefile \ ${WRKSRC}/snake/snscore/Makefile \ ${WRKSRC}/fortune/unstr/Makefile \ ${WRKSRC}/primes/Makefile @for f in ${SHAREPATH_FILES}; do \ ${REINPLACE_CMD} -e 's|/usr/share/games|${PREFIX}/share/games|g' \ ${WRKSRC}/$${f}; \ done @for f in ${GAMESPATH_FILES}; do \ ${REINPLACE_CMD} -e 's|/usr/games|${PREFIX}/bin|g' \ ${WRKSRC}/$${f}; \ done @for f in ${SGID_BINARIES}; do \ ${REINPLACE_CMD} -e 's/HIDEGAME/SGIDGAME/' \ ${WRKSRC}/$${f}/Makefile; \ done pre-install: .for d in atc larn quiz.db @${MKDIR} ${STAGEDIR}${PREFIX}/share/games/$d .endfor .for d in atc battlestar hackdir/save larn phantasia @${MKDIR} ${STAGEDIR}/var/games/$d .endfor post-install: # avoid conflict with games/bs and shells/fish .for prog in bs fish ${MV} ${STAGEDIR}${PREFIX}/bin/${prog} ${STAGEDIR}${PREFIX}/bin/${prog}-game ${MV} ${STAGEDIR}${MAN6PREFIX}/man/man6/${prog}.6.gz ${STAGEDIR}${MAN6PREFIX}/man/man6/${prog}-game.6.gz .endfor @${TOUCH} ${STAGEDIR}/var/games/atc_score @${FIND} ${STAGEDIR}/var/games -type f -exec ${MV} {} {}.sample \; dist: fetch -o- https://github.com/DragonFlyBSD/DragonFlyBSD/archive/v${PORTVERSION}.zip | \ unzip - DragonFlyBSD-${PORTVERSION}/games/\* mv DragonFlyBSD-${PORTVERSION}/games bsdgames-${PORTVERSION} tar -cvf bsdgames-${PORTVERSION}.tar bsdgames-${PORTVERSION} xz -v bsdgames-${PORTVERSION}.tar .include diff --git a/games/bsdgames/files/patch-68420e59f12cf9c9fc14db0c493426150dd9ed95 b/games/bsdgames/files/patch-68420e59f12cf9c9fc14db0c493426150dd9ed95 new file mode 100644 index 000000000000..e1059691311b --- /dev/null +++ b/games/bsdgames/files/patch-68420e59f12cf9c9fc14db0c493426150dd9ed95 @@ -0,0 +1,23 @@ +From 68420e59f12cf9c9fc14db0c493426150dd9ed95 Mon Sep 17 00:00:00 2001 +From: Sascha Wildner +Date: Thu, 8 Jan 2015 10:17:46 +0100 +Subject: [PATCH 1/1] Fix some typos in messages/manpages. + +--- + games/canfield/canfield/canfield.c | 2 +- + share/man/man4/km.4 | 8 ++++---- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git canfield/canfield/canfield.c canfield/canfield/canfield.c +index de63fc1..ec6de9d 100644 +--- canfield/canfield/canfield.c ++++ canfield/canfield/canfield.c +@@ -1543,7 +1543,7 @@ movecard(void) + } + + const char *const basicinstructions[] = { +- "Here are brief instuctions to the game of Canfield:\n\n", ++ "Here are brief instructions to the game of Canfield:\n\n", + " If you have never played solitaire before, it is recom-\n", + "mended that you consult a solitaire instruction book. In\n", + "Canfield, tableau cards may be built on each other downward\n", diff --git a/games/bsdgames/files/patch-890b6f4a25a31acb7bb5b8c16193dc5d404b0805 b/games/bsdgames/files/patch-890b6f4a25a31acb7bb5b8c16193dc5d404b0805 new file mode 100644 index 000000000000..1a3c69dc3516 --- /dev/null +++ b/games/bsdgames/files/patch-890b6f4a25a31acb7bb5b8c16193dc5d404b0805 @@ -0,0 +1,98 @@ +From 890b6f4a25a31acb7bb5b8c16193dc5d404b0805 Mon Sep 17 00:00:00 2001 +From: John Marino +Date: Wed, 11 Feb 2015 09:03:31 +0100 +Subject: [PATCH 1/1] games: Fix real bugs on three games (found by gcc 5.0) + +I had NO_GAMES set so I missed these bugs yesterday. Adventure, Fortune, +and Mille all had bugs in them (the latter had two). + +Now gcc-5.0 can build the entire world and kernel. +I still need to verify that a gcc-5.0 built world and kernel is bootable +and works though. +--- + games/adventure/init.c | 2 +- + games/fortune/fortune/fortune.c | 2 +- + games/mille/move.c | 11 ++++++----- + 3 files changed, 8 insertions(+), 7 deletions(-) + +diff --git adventure/init.c adventure/init.c +index 122b90d..beb3631 100644 +--- adventure/init.c ++++ adventure/init.c +@@ -81,7 +81,7 @@ linkdata(void) + int i, j; + + /* array linkages */ +- for (i = 1; i <= LOCSIZ; i++) ++ for (i = 1; i < LOCSIZ; i++) + if (ltext[i].seekadr != 0 && travel[i] != 0) + if ((travel[i]->tverb) == 1) + cond[i] = 2; +diff --git fortune/fortune/fortune.c fortune/fortune/fortune.c +index 175ab53..9606aa0 100644 +--- fortune/fortune/fortune.c ++++ fortune/fortune/fortune.c +@@ -97,7 +97,7 @@ bool All_forts = false; /* any fortune allowed */ + bool Equal_probs= false; /* scatter un-allocted prob equally */ + bool Match = false; /* dump fortunes matching a pattern */ + #ifdef DEBUG +-bool Debug = false; /* print debug messages */ ++int Debug = 0; /* print debug messages */ + #endif + + char *Fortbuf = NULL; /* fortune buffer for -m */ +diff --git mille/move.c mille/move.c +index 7581cc0..8a0da41 100644 +--- mille/move.c ++++ mille/move.c +@@ -140,7 +140,7 @@ acc: + for (i = 1; i < HAND_SZ; i++) + if (pp->hand[i] == C_INIT) { + for (j = 0; pp->hand[j] == C_INIT; j++) +- if (j >= HAND_SZ) { ++ if (j == HAND_SZ - 1) { + j = 0; + break; + } +@@ -193,6 +193,7 @@ playcard(PLAY *pp) + { + int v; + CARD card; ++ bool blockNext; + + /* + * check and see if player has picked +@@ -212,7 +213,7 @@ mustpick: + if (Debug) + fprintf(outf, "PLAYCARD: Card = %s\n", C_name[card]); + #endif +- Next = FALSE; ++ blockNext = FALSE; + switch (card) { + case C_200: + if (pp->nummiles[C_200] == 2) +@@ -322,18 +323,18 @@ protected: + if (!pp->can_go && isrepair(pp->battle)) + pp->can_go = TRUE; + } +- Next = -1; ++ blockNext = TRUE; + break; + + case C_INIT: + error("no card there"); +- Next = -1; ++ blockNext = TRUE; + break; + } + if (pp == &Player[PLAYER]) + account(card); + pp->hand[Card_no] = C_INIT; +- Next = (Next == -1 ? FALSE : TRUE); ++ Next = !blockNext; + return TRUE; + } + +-- +1.9.3 +