diff --git a/games/Makefile b/games/Makefile index 065babe2c7fa..af565d0f0816 100644 --- a/games/Makefile +++ b/games/Makefile @@ -1,1144 +1,1146 @@ COMMENT = Games and related software SUBDIR += 0ad SUBDIR += 0verkill SUBDIR += 2048 SUBDIR += 2048-qt SUBDIR += 3dc SUBDIR += 3dpong SUBDIR += 3omns SUBDIR += 54321 SUBDIR += 7kaa SUBDIR += 90secondportraits SUBDIR += CaribbeanStud SUBDIR += DDNet SUBDIR += HeroesOfMightAndMagic SUBDIR += KnightCap SUBDIR += NBlood SUBDIR += OpenDiablo2 SUBDIR += OpenLara SUBDIR += OpenTomb SUBDIR += abbayedesmorts SUBDIR += abe SUBDIR += abstreet SUBDIR += abuse_sdl SUBDIR += ace-of-penguins SUBDIR += acm SUBDIR += adonthell SUBDIR += adonthell-wastesedge SUBDIR += aestats SUBDIR += affenspiel SUBDIR += afternoonstalker SUBDIR += agame SUBDIR += ags SUBDIR += aisleriot SUBDIR += aklabeth SUBDIR += alephone SUBDIR += alephone-data SUBDIR += alephone-scenarios SUBDIR += alex4 SUBDIR += alienarena SUBDIR += alienarena-data SUBDIR += alienblaster SUBDIR += alienwave SUBDIR += allacrost SUBDIR += amoebax SUBDIR += an SUBDIR += angband SUBDIR += anki SUBDIR += antipolix SUBDIR += aop SUBDIR += apoolGL SUBDIR += apricots SUBDIR += aquaria SUBDIR += armagetronad SUBDIR += arx-libertatis SUBDIR += ascii-invaders SUBDIR += asciiquarium SUBDIR += assaultcube SUBDIR += asteroids3d SUBDIR += astromenace SUBDIR += asylum SUBDIR += atanks SUBDIR += atomix SUBDIR += atr3d SUBDIR += atris SUBDIR += atris-sounds SUBDIR += auralquiz SUBDIR += automuteus SUBDIR += avanor SUBDIR += avoision SUBDIR += avp SUBDIR += awale SUBDIR += awele SUBDIR += ballerburg SUBDIR += banihstypos SUBDIR += barony SUBDIR += barrage SUBDIR += bass SUBDIR += bastet SUBDIR += battalion SUBDIR += battletanks SUBDIR += belooted SUBDIR += beret SUBDIR += billardgl SUBDIR += biloba SUBDIR += biniax2 SUBDIR += biorythm SUBDIR += bitefusion SUBDIR += black-box SUBDIR += black-hole-solver SUBDIR += blackjackclient SUBDIR += blackshadeselite SUBDIR += blinken SUBDIR += blinkensisters SUBDIR += blobby SUBDIR += blobwars SUBDIR += block SUBDIR += blockattack SUBDIR += blockout SUBDIR += blockrage SUBDIR += blokish SUBDIR += bloodfrontier SUBDIR += bluemoon SUBDIR += bomber SUBDIR += bomberclone SUBDIR += bombherman SUBDIR += bomns SUBDIR += bovo SUBDIR += braincurses SUBDIR += brainparty SUBDIR += brainworkshop SUBDIR += brickout SUBDIR += brickshooter SUBDIR += brikx SUBDIR += briquolo SUBDIR += brumbrumrally SUBDIR += brutalchess SUBDIR += bs SUBDIR += bsdgames SUBDIR += bsdtris SUBDIR += bsp SUBDIR += bstone SUBDIR += bugsquish SUBDIR += bugsx SUBDIR += bumprace SUBDIR += burgerspace SUBDIR += burrtools SUBDIR += bzflag SUBDIR += bzflag-server SUBDIR += cake SUBDIR += caph SUBDIR += cardpics SUBDIR += cataclysm-dda SUBDIR += cataclysm-dda-tiles SUBDIR += catesc SUBDIR += cave9 SUBDIR += cdogs-sdl SUBDIR += cgoban SUBDIR += chapping SUBDIR += chessx SUBDIR += chocolate-doom SUBDIR += chroma SUBDIR += chromium-bsu SUBDIR += circuslinux SUBDIR += cockatrice SUBDIR += coffeebreak SUBDIR += colobot SUBDIR += colorcode SUBDIR += columns SUBDIR += concentration SUBDIR += connectagram SUBDIR += connectfive SUBDIR += construo SUBDIR += coronapoker SUBDIR += corsix-th SUBDIR += cosmosmash SUBDIR += cowsay SUBDIR += crack-attack SUBDIR += craft SUBDIR += crafty SUBDIR += crashtest SUBDIR += cretan-hubris SUBDIR += crimson SUBDIR += crispy-doom SUBDIR += criticalmass SUBDIR += critterding SUBDIR += crossfire-client SUBDIR += crrcsim SUBDIR += cryptoslam SUBDIR += csmash SUBDIR += ctris SUBDIR += cube SUBDIR += cultivation SUBDIR += cursive SUBDIR += cutemaze SUBDIR += cuyo SUBDIR += d2x SUBDIR += dMagnetic SUBDIR += dangen SUBDIR += darkplaces SUBDIR += defendguin SUBDIR += devilutionX SUBDIR += dhewm3 SUBDIR += diaspora SUBDIR += digger-vgl SUBDIR += divide-and-succeed SUBDIR += dmjava SUBDIR += dobutsu SUBDIR += dodgindiamond2 SUBDIR += domination SUBDIR += dontspace SUBDIR += doom SUBDIR += doom-data SUBDIR += doom-freedoom SUBDIR += doom-hacx SUBDIR += doom-hr SUBDIR += doom-hr2 SUBDIR += doom-wolfendoom SUBDIR += doomlegacy SUBDIR += doomsday SUBDIR += dose-response SUBDIR += dreamchess SUBDIR += duel SUBDIR += dunelegacy SUBDIR += dungeon SUBDIR += dungeoncrawl SUBDIR += dustrac SUBDIR += dxx-rebirth SUBDIR += easyrpg-player SUBDIR += eboard SUBDIR += ecwolf SUBDIR += edge SUBDIR += editss SUBDIR += eduke32 SUBDIR += egl SUBDIR += egoboo SUBDIR += eif SUBDIR += eights SUBDIR += einstein SUBDIR += el SUBDIR += el-data SUBDIR += emptyepsilon SUBDIR += endgame-singularity SUBDIR += endgame-singularity-music SUBDIR += endless-sky SUBDIR += endless-sky-high-dpi SUBDIR += enigma SUBDIR += ensemblist SUBDIR += entombed SUBDIR += enygma SUBDIR += epiphany-game SUBDIR += etracer SUBDIR += euchre SUBDIR += eureka SUBDIR += evilfinder SUBDIR += evq3 SUBDIR += excido SUBDIR += exhaust SUBDIR += exhaust-doc SUBDIR += exhaust-ma SUBDIR += exult SUBDIR += ezquake SUBDIR += f1spirit-remake SUBDIR += fairymax SUBDIR += falconseye SUBDIR += fargoal SUBDIR += fbg2 SUBDIR += fheroes2 SUBDIR += fightorperish SUBDIR += fillets-ng SUBDIR += filters SUBDIR += fishsupper SUBDIR += five-or-more SUBDIR += fkiss SUBDIR += flare-engine SUBDIR += flare-game SUBDIR += flightgear SUBDIR += flightgear-aircraft SUBDIR += flightgear-data SUBDIR += flightgear-mb339-pan SUBDIR += flightgear-terragear SUBDIR += flobopuyo SUBDIR += flyhard SUBDIR += flying SUBDIR += fmars SUBDIR += foobillard SUBDIR += formido SUBDIR += fortunate SUBDIR += fotaq SUBDIR += four-in-a-row SUBDIR += freeblocks SUBDIR += freecell-solver SUBDIR += freeciv SUBDIR += freeciv-nox11 SUBDIR += freecol SUBDIR += freedink SUBDIR += freedink-data SUBDIR += freedink-dfarc SUBDIR += freedink-engine SUBDIR += freedoko SUBDIR += freedroid SUBDIR += freedroidrpg SUBDIR += freeminer SUBDIR += freeminer-default SUBDIR += freeorion SUBDIR += freesweep SUBDIR += freesynd SUBDIR += freetennis SUBDIR += fretsonfire SUBDIR += fretsonfire-data SUBDIR += frikqcc SUBDIR += frogatto SUBDIR += frotz SUBDIR += frozen-bubble SUBDIR += fs2open SUBDIR += funnyboat SUBDIR += galaxis SUBDIR += galaxyhack SUBDIR += garden-of-coloured-lights SUBDIR += gbrainy SUBDIR += gcompris-qt SUBDIR += gemdropx SUBDIR += genact SUBDIR += gigalomania SUBDIR += gillo SUBDIR += gl-117 SUBDIR += glaxium SUBDIR += glbsp SUBDIR += glest SUBDIR += glest-data SUBDIR += glightoff SUBDIR += glmaze SUBDIR += glsfcave SUBDIR += gltron SUBDIR += gmastermind SUBDIR += gmines SUBDIR += gnome-2048 SUBDIR += gnome-chess SUBDIR += gnome-games SUBDIR += gnome-klotski SUBDIR += gnome-mahjongg SUBDIR += gnome-mines SUBDIR += gnome-nibbles SUBDIR += gnome-robots SUBDIR += gnome-sudoku SUBDIR += gnome-taquin SUBDIR += gnome-tetravex SUBDIR += gnubg SUBDIR += gnubik SUBDIR += gnuchess SUBDIR += gnudoku SUBDIR += gnugo SUBDIR += gnujump SUBDIR += gnurobbo SUBDIR += gnurobots SUBDIR += gnushogi SUBDIR += gnustep-ladder SUBDIR += gnustep-sudoku SUBDIR += gogrepo SUBDIR += gogui SUBDIR += golddig SUBDIR += golly SUBDIR += gomoku SUBDIR += goonies SUBDIR += gottet SUBDIR += gracer SUBDIR += granatier SUBDIR += greed SUBDIR += griels-quest SUBDIR += grubik SUBDIR += gshisen SUBDIR += gti SUBDIR += gtkatlantic SUBDIR += gtkballs SUBDIR += gtkevemon SUBDIR += gtkradiant SUBDIR += gtypist SUBDIR += gunfudeadlands SUBDIR += gzdoom SUBDIR += hangman SUBDIR += hedgewars SUBDIR += hedgewars-server SUBDIR += help_hannahs_horse SUBDIR += heretic SUBDIR += heroes SUBDIR += hex-a-hop SUBDIR += hexalate SUBDIR += hexxagon SUBDIR += highmoon SUBDIR += hinversi SUBDIR += hitori SUBDIR += hllib SUBDIR += holotz-castle SUBDIR += homura SUBDIR += hoverboard-sdl SUBDIR += hs-scroll SUBDIR += hypatia_engine SUBDIR += hyperrogue SUBDIR += iagno SUBDIR += icbm3d SUBDIR += icebreaker SUBDIR += iceicepenguin SUBDIR += impossible_mission_puzzle SUBDIR += inform7 SUBDIR += instead SUBDIR += interlogic SUBDIR += ioquake3 SUBDIR += ioquake3-server SUBDIR += iortcw SUBDIR += iqpuzzle SUBDIR += irrlamb SUBDIR += ishido SUBDIR += ivan SUBDIR += jaggedalliance2 SUBDIR += java-games-suite SUBDIR += jchessboard SUBDIR += jfk SUBDIR += jfsw SUBDIR += jigsaw SUBDIR += jigzo SUBDIR += jin SUBDIR += jinput SUBDIR += joequake SUBDIR += jtans SUBDIR += julius SUBDIR += jumpnbump SUBDIR += jutils SUBDIR += jvgs SUBDIR += jzip SUBDIR += kanagram SUBDIR += kapman SUBDIR += kartofel SUBDIR += katomic SUBDIR += kblackbox SUBDIR += kblocks SUBDIR += kbounce SUBDIR += kbreakout SUBDIR += kdegames SUBDIR += kdiamond SUBDIR += keeperrl SUBDIR += kevedit SUBDIR += kfourinline SUBDIR += kgoldrunner SUBDIR += khangman SUBDIR += kigo SUBDIR += killbots SUBDIR += kiriki SUBDIR += kjumpingcube SUBDIR += klavaro SUBDIR += klickety SUBDIR += klines SUBDIR += klondike SUBDIR += kmahjongg SUBDIR += kmines SUBDIR += knavalbattle SUBDIR += knetwalk SUBDIR += knights SUBDIR += kobodeluxe SUBDIR += kodi-addon-game.libretro SUBDIR += kodi-addon-game.libretro.beetle-psx SUBDIR += kodi-addon-game.libretro.genplus SUBDIR += kodi-addon-game.libretro.pcsx-rearmed SUBDIR += kodi-addon-game.libretro.picodrive SUBDIR += kolf SUBDIR += kollision SUBDIR += konquest SUBDIR += kpat SUBDIR += krank SUBDIR += kreversi SUBDIR += kshisen SUBDIR += ksirk SUBDIR += ksnakeduel SUBDIR += kspaceduel SUBDIR += ksquares SUBDIR += ksudoku SUBDIR += ktuberling SUBDIR += kubrick SUBDIR += kuklomenos SUBDIR += ladder SUBDIR += lander SUBDIR += lapispuzzle SUBDIR += lbreakout SUBDIR += lbreakout2 SUBDIR += ldmud SUBDIR += leela-zero SUBDIR += legend-of-edgar SUBDIR += legesmotus SUBDIR += lexter SUBDIR += lgeneral SUBDIR += libgnome-games-support SUBDIR += libkdegames SUBDIR += libkmahjongg SUBDIR += liblcf SUBDIR += libmaitretarot SUBDIR += libmt_client SUBDIR += libretro SUBDIR += libretro-2048 SUBDIR += libretro-beetle_bsnes SUBDIR += libretro-beetle_gba SUBDIR += libretro-beetle_lynx SUBDIR += libretro-beetle_ngp SUBDIR += libretro-beetle_pce SUBDIR += libretro-beetle_pce_fast SUBDIR += libretro-beetle_pcfx SUBDIR += libretro-beetle_psx SUBDIR += libretro-beetle_supergrafx SUBDIR += libretro-beetle_vb SUBDIR += libretro-beetle_wswan SUBDIR += libretro-bluemsx SUBDIR += libretro-cap32 SUBDIR += libretro-core-info SUBDIR += libretro-desmume2015 SUBDIR += libretro-dosbox SUBDIR += libretro-emux SUBDIR += libretro-fbalpha SUBDIR += libretro-fbneo SUBDIR += libretro-fceumm SUBDIR += libretro-fmsx SUBDIR += libretro-fuse SUBDIR += libretro-gambatte SUBDIR += libretro-genesis_plus_gx SUBDIR += libretro-gpsp SUBDIR += libretro-gw SUBDIR += libretro-handy SUBDIR += libretro-hatari SUBDIR += libretro-mame2000 SUBDIR += libretro-mame2003 SUBDIR += libretro-mame2003_plus SUBDIR += libretro-mgba SUBDIR += libretro-mu SUBDIR += libretro-nestopia SUBDIR += libretro-nxengine SUBDIR += libretro-o2em SUBDIR += libretro-opera SUBDIR += libretro-paralleln64 SUBDIR += libretro-pcsx_rearmed SUBDIR += libretro-picodrive SUBDIR += libretro-play SUBDIR += libretro-prboom SUBDIR += libretro-prosystem SUBDIR += libretro-px68k SUBDIR += libretro-quicknes SUBDIR += libretro-scummvm SUBDIR += libretro-shaders-glsl SUBDIR += libretro-shaders-slang SUBDIR += libretro-snes9x SUBDIR += libretro-snes9x2005 SUBDIR += libretro-snes9x2010 SUBDIR += libretro-stella2014 SUBDIR += libretro-tgbdual SUBDIR += libretro-tyrquake SUBDIR += libretro-uae SUBDIR += libretro-vbanext SUBDIR += libretro-vecx SUBDIR += libretro-virtualjaguar SUBDIR += libretro-xrick SUBDIR += libretro-yabause SUBDIR += libshhcards SUBDIR += libtmcg SUBDIR += lightsoff SUBDIR += lincity SUBDIR += lincity-ng SUBDIR += linux-doom3 SUBDIR += linux-doom3-demo SUBDIR += linux-dwarffortress SUBDIR += linux-enemyterritory SUBDIR += linux-enemyterritory-jaymod SUBDIR += linux-enemyterritory-shrub SUBDIR += linux-enemyterritory-tce SUBDIR += linux-etqw-demo-server SUBDIR += linux-etqw-server SUBDIR += linux-nerogame SUBDIR += linux-nwnclient SUBDIR += linux-quake3 SUBDIR += linux-quake3-demo SUBDIR += linux-quake4 SUBDIR += linux-quake4-demo SUBDIR += linux-ssamtfe SUBDIR += linux-ssamtse SUBDIR += linux-steam-utils SUBDIR += linux-unigine-heaven SUBDIR += linux-unigine-valley SUBDIR += linux-unrealgold SUBDIR += linux-ut SUBDIR += linux-ut2003-demo SUBDIR += linux-virtual-jay-peak SUBDIR += linwarrior SUBDIR += lizzie SUBDIR += lm-solve SUBDIR += lmarbles SUBDIR += lmpc SUBDIR += lolcat SUBDIR += lordsawar SUBDIR += lpairs SUBDIR += lskat SUBDIR += ltris SUBDIR += lugaru SUBDIR += luola SUBDIR += lwjgl SUBDIR += macopix SUBDIR += madbomber SUBDIR += maelstrom SUBDIR += magiccube4d SUBDIR += magicmaze SUBDIR += mahjong SUBDIR += maitretarot SUBDIR += manaplus SUBDIR += mancala SUBDIR += mangband SUBDIR += marblemarcher SUBDIR += mari0 SUBDIR += masterserver SUBDIR += maxr SUBDIR += meandmyshadow SUBDIR += megaglest SUBDIR += megaglest-data SUBDIR += megamario SUBDIR += memonix SUBDIR += meqcc SUBDIR += meritous SUBDIR += mindfocus SUBDIR += minecraft-client SUBDIR += minecraft-server SUBDIR += minerbold SUBDIR += minetest SUBDIR += minetest_game SUBDIR += minetestmapper SUBDIR += minilens SUBDIR += mirrormagic SUBDIR += miscom SUBDIR += mkhexgrid SUBDIR += moagg SUBDIR += monsterz SUBDIR += moon-buggy SUBDIR += moonlander SUBDIR += moonlight-embedded SUBDIR += moria SUBDIR += motogt SUBDIR += mrboom SUBDIR += mt_dolphin_ia SUBDIR += mt_gtk_client SUBDIR += mtaserver SUBDIR += multimc SUBDIR += mvdsv SUBDIR += nInvaders SUBDIR += naev SUBDIR += naev-data SUBDIR += narcissu2 SUBDIR += nazghul SUBDIR += nbsdgames SUBDIR += nehquake SUBDIR += neo-cowsay SUBDIR += nethack32 SUBDIR += nethack33 SUBDIR += nethack33-nox11 SUBDIR += nethack34 SUBDIR += nethack34-nox11 SUBDIR += nethack36 SUBDIR += nethack36-nox11 SUBDIR += netherearth SUBDIR += netradiant SUBDIR += netrek-BRMH-bin SUBDIR += netrek-client-cow SUBDIR += nettoe SUBDIR += netwalk SUBDIR += neverball SUBDIR += newvox SUBDIR += nextgo SUBDIR += nexuiz SUBDIR += nighthawk SUBDIR += nimuh SUBDIR += ninix-aya SUBDIR += njam SUBDIR += nlarn SUBDIR += nonsense SUBDIR += npush SUBDIR += nsnake SUBDIR += nuclearchess SUBDIR += numptyphysics SUBDIR += numptyphysics-npcomplete SUBDIR += nwndata SUBDIR += nxengine SUBDIR += odamex SUBDIR += oldrunner SUBDIR += omega SUBDIR += oneko-sakura SUBDIR += onscripter SUBDIR += onscripter-1byte SUBDIR += oolite SUBDIR += oonsoo SUBDIR += open-adventure SUBDIR += openage SUBDIR += openarena SUBDIR += openarena-data SUBDIR += openarena-oax SUBDIR += openarena-server SUBDIR += openbor SUBDIR += openbor3482 SUBDIR += openbor3711 SUBDIR += openbor3979 SUBDIR += openbor4432 SUBDIR += openbubbles SUBDIR += openbve SUBDIR += opencity SUBDIR += openclaw SUBDIR += openclonk SUBDIR += opendungeons SUBDIR += openfodder SUBDIR += opengfx SUBDIR += openglad SUBDIR += openjazz SUBDIR += openjk SUBDIR += openlierox SUBDIR += openmortal SUBDIR += openmsx SUBDIR += openmw SUBDIR += openomf SUBDIR += openra SUBDIR += openrct2 SUBDIR += opensfx SUBDIR += opensonic SUBDIR += openspades SUBDIR += openssn SUBDIR += opensurge SUBDIR += openttd SUBDIR += opentyrian SUBDIR += openxcom SUBDIR += openyahtzee SUBDIR += orbital_eunuchs_sniper SUBDIR += orthorobot SUBDIR += osgg SUBDIR += p5-Acme-GuessNumber SUBDIR += p5-Algorithm-Pair-Best2 SUBDIR += p5-Algorithm-Pair-Swiss SUBDIR += p5-Baseball-Sabermetrics SUBDIR += p5-Games-Alak SUBDIR += p5-Games-AlphaBeta SUBDIR += p5-Games-Bingo SUBDIR += p5-Games-Bingo-Bot SUBDIR += p5-Games-Bingo-Print SUBDIR += p5-Games-Dice SUBDIR += p5-Games-GuessWord SUBDIR += p5-Games-Tournament-RoundRobin SUBDIR += pachi SUBDIR += pacmanarena SUBDIR += palapeli SUBDIR += palomino SUBDIR += pangzero SUBDIR += passage SUBDIR += patapizza-tetris SUBDIR += pathological SUBDIR += pcgen SUBDIR += pear-Games_Chess SUBDIR += peg-e SUBDIR += pengpong SUBDIR += penguin-command SUBDIR += pengupop SUBDIR += pentobi SUBDIR += phalanx SUBDIR += phlipple SUBDIR += picmi SUBDIR += pinball SUBDIR += pingus SUBDIR += pink-pony SUBDIR += pioneer SUBDIR += pioneers SUBDIR += pipenightdreams SUBDIR += pipepanic SUBDIR += pipewalker SUBDIR += pmars SUBDIR += pmars-sdl SUBDIR += poker-eval SUBDIR += pokerth SUBDIR += polyglot SUBDIR += pongix SUBDIR += ponscripter-sekai SUBDIR += popstar SUBDIR += pouetchess SUBDIR += powder SUBDIR += powder-toy SUBDIR += powermanga SUBDIR += powwow SUBDIR += prboom SUBDIR += prboom-plus SUBDIR += primateplunge SUBDIR += puckman SUBDIR += pushover SUBDIR += pvpgn SUBDIR += py-cbeams SUBDIR += py-fife SUBDIR += py-mnemosyne SUBDIR += py-pychess SUBDIR += py-pysol-cards SUBDIR += py-sgflib SUBDIR += py-sgfsummary SUBDIR += pysolfc SUBDIR += pyspacewar SUBDIR += q2p SUBDIR += q2pro SUBDIR += q3cellshading SUBDIR += qcc SUBDIR += qccx SUBDIR += qnetwalk SUBDIR += qonk SUBDIR += qqwing SUBDIR += qstat SUBDIR += quadra SUBDIR += quadrapassel SUBDIR += quake-data SUBDIR += quake-dpmod SUBDIR += quake-source SUBDIR += quake2-3zb2 SUBDIR += quake2-ctf SUBDIR += quake2-data SUBDIR += quake2-extras SUBDIR += quake2-lights SUBDIR += quake2-matrix SUBDIR += quake2-psychomod SUBDIR += quake2-relay SUBDIR += quake2-rogue SUBDIR += quake2-source SUBDIR += quake2-xatrix SUBDIR += quake2lnx SUBDIR += quake2max SUBDIR += quake3 SUBDIR += quake3-data SUBDIR += quake3-excessive SUBDIR += quake3-osp SUBDIR += quake3-ut SUBDIR += quake3-wfa SUBDIR += quakeforge SUBDIR += quantumminigolf SUBDIR += quaqut SUBDIR += qudos SUBDIR += quetoo SUBDIR += quit SUBDIR += qwdtools SUBDIR += r1q2 SUBDIR += railroad-rampage SUBDIR += rawgl SUBDIR += re3 SUBDIR += redeclipse SUBDIR += redeclipse-data SUBDIR += redorblack SUBDIR += regoth SUBDIR += reminiscence SUBDIR += renpy SUBDIR += rescue SUBDIR += residualvm SUBDIR += retroarch SUBDIR += retroarch-assets SUBDIR += rezerwar SUBDIR += rfksay SUBDIR += ri-li SUBDIR += rlvm SUBDIR += rnd_jue SUBDIR += robocode SUBDIR += robocode-naval SUBDIR += robotfindskitten SUBDIR += rockdodger SUBDIR += rocksndiamonds SUBDIR += rocksndiamonds-data SUBDIR += rottdc SUBDIR += rubix SUBDIR += rubygem-fortune_gem SUBDIR += rubygem-lolcat SUBDIR += rubygem-vimgolf SUBDIR += sampsvr SUBDIR += sarien SUBDIR += sauerbraten SUBDIR += scare SUBDIR += scid SUBDIR += scorched3d SUBDIR += scourge SUBDIR += scourge-data SUBDIR += scramble SUBDIR += scummvm SUBDIR += scummvm-tools SUBDIR += sdb SUBDIR += sdl-ball SUBDIR += sdl_jewels SUBDIR += sdl_lopan SUBDIR += sdl_scavenger SUBDIR += sdlpop SUBDIR += sdlroids SUBDIR += sdlsand SUBDIR += sea-defender SUBDIR += seabattle SUBDIR += searchandrescue SUBDIR += searchandrescue-data SUBDIR += senken SUBDIR += sets SUBDIR += sex SUBDIR += sgt-puzzles SUBDIR += shaaft SUBDIR += shockolate SUBDIR += shootingstar SUBDIR += simplevaders SUBDIR += simsu SUBDIR += simutrans SUBDIR += simutrans-pak128 SUBDIR += simutrans-pak128.german SUBDIR += simutrans-pak64 SUBDIR += sjeng SUBDIR += ski SUBDIR += sl SUBDIR += slade SUBDIR += slashem-tty SUBDIR += slump SUBDIR += sokoban SUBDIR += sol SUBDIR += solarconquest SUBDIR += solarus SUBDIR += solarus-quest-editor SUBDIR += sopwith SUBDIR += spacejunk SUBDIR += spacezero SUBDIR += speak SUBDIR += species SUBDIR += spellcast SUBDIR += spicetrade SUBDIR += spider SUBDIR += spring SUBDIR += springlobby SUBDIR += starfighter SUBDIR += starlanes SUBDIR += steelstorm SUBDIR += stendhal SUBDIR += stockfish SUBDIR += stonesoup SUBDIR += stormbaancoureur SUBDIR += stransball2 SUBDIR += stratagus SUBDIR += stuntrally SUBDIR += sudsol SUBDIR += super_methane_brothers SUBDIR += supertux SUBDIR += supertux2 SUBDIR += supertuxkart SUBDIR += swell-foop SUBDIR += sxsame SUBDIR += tads SUBDIR += taipan SUBDIR += taisei SUBDIR += tali SUBDIR += tanglet SUBDIR += tanks-of-freedom SUBDIR += tbclock SUBDIR += tecnoballz SUBDIR += teeworlds SUBDIR += tenebrae SUBDIR += tesseract SUBDIR += tesseract-data SUBDIR += tetrinet SUBDIR += tetrinet-x SUBDIR += tetzle SUBDIR += textmaze SUBDIR += thegrind SUBDIR += tileworld SUBDIR += tkmoo SUBDIR += tomatoes SUBDIR += tome4 SUBDIR += tome4-beta SUBDIR += tomenet SUBDIR += tong SUBDIR += toppler SUBDIR += torcs SUBDIR += tornado SUBDIR += torrent SUBDIR += toycars SUBDIR += trackballs SUBDIR += tractorgen SUBDIR += traingame SUBDIR += tremulous SUBDIR += trenchbroom SUBDIR += trigger-rally SUBDIR += trimines SUBDIR += triplane SUBDIR += trojka SUBDIR += trophy SUBDIR += tsito SUBDIR += tt SUBDIR += ttt SUBDIR += tty-solitaire SUBDIR += tux-aqfh SUBDIR += tuxkart SUBDIR += tuxmath SUBDIR += tuxpaint SUBDIR += tuxpaint-config SUBDIR += tuxpaint-fonts SUBDIR += tuxpaint-stamps SUBDIR += tuxracer SUBDIR += tuxtype SUBDIR += twind SUBDIR += tycho SUBDIR += typespeed SUBDIR += tyrian-data SUBDIR += ufoai SUBDIR += ufoai-data SUBDIR += uhexen SUBDIR += uhexen2 SUBDIR += uhexen2-extras SUBDIR += ultimatestunts SUBDIR += umark SUBDIR += unknown-horizons SUBDIR += unnethack SUBDIR += untahris SUBDIR += uqm SUBDIR += urbanterror-data SUBDIR += valyriatear SUBDIR += vamos SUBDIR += vavoom SUBDIR += vavoom-extras SUBDIR += vectoroids SUBDIR += veloren SUBDIR += violetland SUBDIR += viruskiller SUBDIR += vitetris SUBDIR += vkquake SUBDIR += vms-empire SUBDIR += voadi SUBDIR += volleyball SUBDIR += vor SUBDIR += vultures-eye SUBDIR += vvvvvv SUBDIR += wanderer SUBDIR += wargus SUBDIR += warmux SUBDIR += warzone2100 SUBDIR += weebsay SUBDIR += wesnoth SUBDIR += whichwayisup SUBDIR += widelands SUBDIR += wizznic SUBDIR += wmpuzzle SUBDIR += wmqstat SUBDIR += wmtictactoe SUBDIR += wolfpack SUBDIR += wop SUBDIR += wordplay SUBDIR += wordwarvi SUBDIR += worldofpadman SUBDIR += wtf SUBDIR += wxlauncher SUBDIR += wyrmgus SUBDIR += wyrmsun SUBDIR += xasteroids SUBDIR += xataxx SUBDIR += xbat SUBDIR += xbill SUBDIR += xbl SUBDIR += xblackjack SUBDIR += xblast SUBDIR += xblood SUBDIR += xboard SUBDIR += xboard-devel SUBDIR += xboing SUBDIR += xbomb SUBDIR += xbubble SUBDIR += xchadance SUBDIR += xcheckers SUBDIR += xchomp SUBDIR += xconq SUBDIR += xcowsay SUBDIR += xcubes SUBDIR += xdeblock SUBDIR += xdemineur SUBDIR += xdesktopwaves SUBDIR += xdigger SUBDIR += xdino SUBDIR += xemeraldia SUBDIR += xeyesplus SUBDIR += xfireworks SUBDIR += xfrisk SUBDIR += xgalaga SUBDIR += xgalaga++ SUBDIR += xgalaga-sdl SUBDIR += xglk SUBDIR += xhexagons SUBDIR += xhime SUBDIR += xinfocom SUBDIR += xinvaders SUBDIR += xinvaders3d SUBDIR += xisola SUBDIR += xjewel SUBDIR += xjig SUBDIR += xjump SUBDIR += xjumpx SUBDIR += xkoules SUBDIR += xlaby SUBDIR += xlennart SUBDIR += xlife SUBDIR += xlogical SUBDIR += xmahjongg SUBDIR += xmastermind SUBDIR += xmball SUBDIR += xmemory SUBDIR += xmille SUBDIR += xmine SUBDIR += xminehunter SUBDIR += xmines SUBDIR += xmlink SUBDIR += xmoto SUBDIR += xmris SUBDIR += xmulti SUBDIR += xneko + SUBDIR += xnethack + SUBDIR += xnethack-nox11 SUBDIR += xoct SUBDIR += xoids SUBDIR += xoj SUBDIR += xonotic SUBDIR += xorgramana SUBDIR += xosmulti SUBDIR += xpanex SUBDIR += xpat2 SUBDIR += xpilot SUBDIR += xpilot-ng-server SUBDIR += xpipeman SUBDIR += xpired SUBDIR += xpuzzletama SUBDIR += xpyraminx SUBDIR += xqf SUBDIR += xrally SUBDIR += xray_re-tools SUBDIR += xrick SUBDIR += xrisk SUBDIR += xroach SUBDIR += xrobots SUBDIR += xrot SUBDIR += xrubik SUBDIR += xsc SUBDIR += xscavenger SUBDIR += xscrabble SUBDIR += xshisen SUBDIR += xshogi SUBDIR += xskat SUBDIR += xskewb SUBDIR += xsokoban SUBDIR += xsoldier SUBDIR += xspacewarp SUBDIR += xspringies SUBDIR += xteddy SUBDIR += xtet42 SUBDIR += xtgyoretsu SUBDIR += xtic SUBDIR += xtriangles SUBDIR += xtrojka SUBDIR += xtron SUBDIR += xtruco SUBDIR += xtux SUBDIR += xvier SUBDIR += xworm SUBDIR += xye SUBDIR += xzip SUBDIR += yadex SUBDIR += yahtzee SUBDIR += zangband SUBDIR += zatacka SUBDIR += zaz SUBDIR += zdoom SUBDIR += zhlt SUBDIR += zoom SUBDIR += ztrack .include diff --git a/games/xnethack-nox11/Makefile b/games/xnethack-nox11/Makefile new file mode 100644 index 000000000000..e8199d9acbd6 --- /dev/null +++ b/games/xnethack-nox11/Makefile @@ -0,0 +1,9 @@ +# Created by: Jeremy Chadwick + +MASTERDIR= ${.CURDIR}/../xnethack + +MAINTAINER= fuz@fuz.su + +PKGNAMESUFFIX= -nox11 + +.include "${MASTERDIR}/Makefile" diff --git a/games/xnethack/Makefile b/games/xnethack/Makefile new file mode 100644 index 000000000000..6147cdf98c8f --- /dev/null +++ b/games/xnethack/Makefile @@ -0,0 +1,105 @@ +# Created by: asami + +PORTNAME= xNetHack +DISTVERSIONPREFIX= xnh +DISTVERSION= 6.1 +CATEGORIES= games + +MAINTAINER= fuz@fuz.su +COMMENT= Experimental features and improvements applied to NetHack 3.7-dev + +LICENSE= nethack +LICENSE_NAME= NETHACK GENERAL PUBLIC LICENSE +LICENSE_FILE= ${WRKSRC}/dat/license +LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept + +USES= alias compiler:c11 gmake ncurses tar:tgz lua +USE_GITHUB= yes + +GH_ACCOUNT= copperwater +GH_PROJECT= xNetHack + +MAKE_ENV= GRAPHICS="${GRAPHICS}" +PLIST_SUB= HACKNAME="${HACKNAME}" \ + HACKEXT="${HACKEXT}" +TRUEPORTNAME= xnethack + +# Configure these variables as you want them to be. +HACKEXT?= +HACKNAME?= ${TRUEPORTNAME}${HACKEXT} +HACKDIR?= share/${HACKNAME} +HACKLINK= ${TRUEPORTNAME} + +DATADIR= ${PREFIX}/${HACKDIR} +DOCSDIR= ${PREFIX}/share/doc/${HACKNAME} +PKGDEINSTALL= ${WRKDIR}/pkg-deinstall + +.if !defined(PKGNAMESUFFIX) +USES+= xorg +USE_XORG= xaw xpm xmu xext xt x11 sm ice +CFLAGS+= -DX11_GRAPHICS -DUSE_TILES +GRAPHICS= X11_GRAPHICS +.else +.if ${PKGNAMESUFFIX} == "-nox11" +GRAPHICS= # none +.endif +.endif +CFLAGS+= -DNOMAIL -DCURSES_GRAPHICS + +OPTIONS_DEFINE= DOCS + +.include + +.if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK} +PLIST_SUB+= HACKLINK="" +.else +PLIST_SUB+= HACKLINK="@comment " +.endif + +post-patch: +.for f in include/config.h sys/unix/Makefile.doc sys/unix/Makefile.src sys/unix/Makefile.top + @${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \ + -e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \ + -e 's|%%HACKEXT%%|${HACKEXT}|g' \ + ${WRKSRC}/${f} +.endfor +.for f in dlb.6 nethack.6 recover.6 + @${REINPLACE_CMD} -e 's|%%HACKNAME%%|${HACKNAME}|g' \ + -e 's|%%HACKDIR%%|${PREFIX}/${HACKDIR}|g' \ + -e 's|%%HACKEXT%%|${HACKEXT}|g' \ + ${WRKSRC}/doc/${f} +.endfor +.if defined(WITHOUT_SHELL) + @${REINPLACE_CMD} -e 's|#define SHELL|/* #define SHELL|' ${WRKSRC}/include/unixconf.h +.endif +.if defined(WITH_MAIL) + @${REINPLACE_CMD} -e 's|/\* #define MAIL \*/|#define MAIL|' ${WRKSRC}/include/unixconf.h +.endif + +do-configure: + @cd ${WRKSRC}/sys/unix; ${SH} setup.sh + +pre-install: + @${CAT} ${FILESDIR}/pkg-deinstall.in | ${SED} \ + -e 's|%%HACKDIR%%|${HACKDIR}|g' > ${PKGDEINSTALL} + +post-install: +.if !exists(${PREFIX}/bin/${HACKLINK}) && ${HACKNAME} != ${HACKLINK} + @${LN} -s -f ${PREFIX}/bin/${HACKNAME} ${STAGEDIR}${PREFIX}/bin/${HACKLINK} +.endif + @cd ${WRKSRC}/doc; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_ARGS} manpages + @${MKDIR} ${STAGEDIR}${DATADIR}/save + @${CP} ${WRKSRC}/sys/unix/sysconf ${STAGEDIR}/${DATADIR}/sysconf + # Make sysconf a sample to prevent it being removed if altered + @${CP} ${STAGEDIR}/${DATADIR}/sysconf ${STAGEDIR}/${DATADIR}/sysconf.sample + # Make "sample" files from records to prevent them being removed + # if they have been altered + @${CP} ${STAGEDIR}/${DATADIR}/logfile ${STAGEDIR}/${DATADIR}/logfile.sample + @${CP} ${STAGEDIR}/${DATADIR}/record ${STAGEDIR}/${DATADIR}/record.sample + @${CP} ${STAGEDIR}/${DATADIR}/xlogfile ${STAGEDIR}/${DATADIR}/xlogfile.sample +.if ${PORT_OPTIONS:MDOCS} + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/Guidebook.txt ${STAGEDIR}${DOCSDIR} +.endif + +.include diff --git a/games/xnethack/distinfo b/games/xnethack/distinfo new file mode 100644 index 000000000000..b414821b5fcf --- /dev/null +++ b/games/xnethack/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1620650405 +SHA256 (copperwater-xNetHack-xnh6.1_GH0.tar.gz) = 48cdb14a0b30cd439e04ccc3daa21d4db8b2abe9090dd7dcb2fdfa839a9572d8 +SIZE (copperwater-xNetHack-xnh6.1_GH0.tar.gz) = 5850953 diff --git a/games/xnethack/files/patch-doc_dlb.6 b/games/xnethack/files/patch-doc_dlb.6 new file mode 100644 index 000000000000..942fb1fdf506 --- /dev/null +++ b/games/xnethack/files/patch-doc_dlb.6 @@ -0,0 +1,11 @@ +--- doc/dlb.6.orig 2021-03-22 22:28:14 UTC ++++ doc/dlb.6 +@@ -96,7 +96,7 @@ List the contents of the archive 'foo': + Kenneth Lorber + .SH "SEE ALSO" + .PP +-nethack(6), tar(1) ++xnethack%%HACKEXT%%(6), tar(1) + .SH BUGS + .PP + Not a good tar emulation; - does not mean stdin or stdout. diff --git a/games/xnethack/files/patch-doc_nethack.6 b/games/xnethack/files/patch-doc_nethack.6 new file mode 100644 index 000000000000..6040c8d826c9 --- /dev/null +++ b/games/xnethack/files/patch-doc_nethack.6 @@ -0,0 +1,38 @@ +--- doc/nethack.6.orig 2021-03-22 22:28:14 UTC ++++ doc/nethack.6 +@@ -17,7 +17,7 @@ nethack \- Exploring The Mazes of Menace + .SH SYNOPSIS + .na + .hy 0 +-.B nethack ++.B xnethack + [ + .B \-d + .I directory +@@ -219,7 +219,7 @@ option, which must be the first argument if it appears + supplies a directory which is to serve as the playground. + It overrides the value from NETHACKDIR, HACKDIR, + or the directory specified by the game administrator during compilation +-(usually /usr/games/lib/nethackdir). ++(usually %%HACKDIR%%). + This option is usually only useful to the game administrator. + The playground must contain several auxiliary files such as help files, + the list of top scorers, and a subdirectory +@@ -265,7 +265,7 @@ name is '.xnethackrc' in the user's home directory. + + .br + All other files are in the playground directory, +-normally /usr/games/lib/nethackdir. ++normally %%HACKDIR%%. + If DLB was defined during the compile, the data files and special levels + will be inside a larger file, normally nhdat, instead of being separate + files. +@@ -392,7 +392,7 @@ SHOPTYPE and SPLEVTYPE can be used in debugging (wizar + DEBUGFILES can be used if the program was built with 'DEBUG' enabled. + .SH "SEE ALSO" + .PP +-recover(6) ++recover%%HACKEXT%%(6) + .SH BUGS + .PP + Probably infinite. diff --git a/games/xnethack/files/patch-doc_recover.6 b/games/xnethack/files/patch-doc_recover.6 new file mode 100644 index 000000000000..2ee7bb286566 --- /dev/null +++ b/games/xnethack/files/patch-doc_recover.6 @@ -0,0 +1,20 @@ +--- doc/recover.6.orig 2021-03-22 22:28:14 UTC ++++ doc/recover.6 +@@ -43,7 +43,7 @@ option, which must be the first argument if it appears + supplies a directory which is the NetHack playground. + It overrides the value from NETHACKDIR, HACKDIR, or the directory + specified by the game administrator during compilation +-(usually /usr/games/lib/nethackdir). ++(usually %%HACKDIR%%). + .PP + ^?ALLDOCS + For recovery to be possible, +@@ -130,7 +130,7 @@ but even a compression-using + .I nethack + will find them in the uncompressed form. + .SH "SEE ALSO" +-nethack(6) ++xnethack%%HACKEXT%%(6) + .SH BUGS + .PP + .I recover diff --git a/games/xnethack/files/patch-include-config.h b/games/xnethack/files/patch-include-config.h new file mode 100644 index 000000000000..09e486a83591 --- /dev/null +++ b/games/xnethack/files/patch-include-config.h @@ -0,0 +1,36 @@ +--- include/config.h.orig 2021-03-22 22:28:14 UTC ++++ include/config.h +@@ -294,11 +294,11 @@ + + #if defined(UNIX) && !defined(ZLIB_COMP) && !defined(COMPRESS) + /* path and file name extension for compression program */ +-#define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */ +-#define COMPRESS_EXTENSION ".Z" /* compress's extension */ ++/* #define COMPRESS "/usr/bin/compress" */ /* Lempel-Ziv compression */ ++/* #define COMPRESS_EXTENSION ".Z" */ /* compress's extension */ + /* An example of one alternative you might want to use: */ +-/* #define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */ +-/* #define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */ ++#define COMPRESS "/usr/bin/gzip" /* FSF gzip compression */ ++#define COMPRESS_EXTENSION ".gz" /* normal gzip extension */ + #endif + + #ifndef COMPRESS +@@ -383,7 +383,7 @@ + * otherwise it will be the current directory. + */ + #ifndef HACKDIR +-#define HACKDIR "/usr/games/lib/xnethackdir" ++#define HACKDIR "%%HACKDIR%%" + #endif + + /* +@@ -646,7 +646,7 @@ typedef unsigned char uchar; + #ifdef DUMPLOG + + #ifndef DUMPLOG_FILE +-#define DUMPLOG_FILE "/tmp/xnethack.%n.%d.log" ++#define DUMPLOG_FILE "/tmp/xnethack.%v.%u.%n.%D.log" + /* DUMPLOG_FILE allows following placeholders: + %% literal '%' + %v version (eg. "3.6.3-0") diff --git a/games/xnethack/files/patch-include-system.h b/games/xnethack/files/patch-include-system.h new file mode 100644 index 000000000000..1b10bc127749 --- /dev/null +++ b/games/xnethack/files/patch-include-system.h @@ -0,0 +1,13 @@ +--- include/system.h.orig 2021-03-22 22:28:14 UTC ++++ include/system.h +@@ -82,7 +82,9 @@ typedef long off_t; + #if !defined(__SC__) && !defined(LINUX) + E long random(void); + #endif +-#if (!defined(SUNOS4) && !defined(bsdi) && !defined(__FreeBSD__)) \ ++# if defined(__FreeBSD__) ++#include /* srandom() differs between versions of FreeBSD. */ ++#elif (!defined(SUNOS4) && !defined(bsdi) && !defined(__FreeBSD__)) \ + || defined(RANDOM) + E void srandom(unsigned int); + #else diff --git a/games/xnethack/files/patch-include-unixconf.h b/games/xnethack/files/patch-include-unixconf.h new file mode 100644 index 000000000000..790f7ccdbedd --- /dev/null +++ b/games/xnethack/files/patch-include-unixconf.h @@ -0,0 +1,27 @@ +--- include/unixconf.h.orig 2021-03-22 22:28:14 UTC ++++ include/unixconf.h +@@ -20,13 +20,13 @@ + */ + + /* define exactly one of the following four choices */ +-/* #define BSD 1 */ /* define for 4.n/Free/Open/Net BSD */ ++#define BSD 1 /* define for 4.n/Free/Open/Net BSD */ + /* also for relatives like SunOS 4.x, DG/UX, and */ + /* older versions of Linux */ + /* #define ULTRIX */ /* define for Ultrix v3.0 or higher (but not lower) */ + /* Use BSD for < v3.0 */ + /* "ULTRIX" not to be confused with "ultrix" */ +-#define SYSV /* define for System V, Solaris 2.x, newer versions */ ++/* #define SYSV */ /* define for System V, Solaris 2.x, newer versions */ + /* of Linux */ + /* #define HPUX */ /* Hewlett-Packard's Unix, version 6.5 or higher */ + /* use SYSV for < v6.5 */ +@@ -315,7 +315,7 @@ + #endif + + #if defined(BSD) || defined(ULTRIX) +-#if !defined(DGUX) && !defined(SUNOS4) ++#if !defined(DGUX) && !defined(SUNOS4) && !defined(__FreeBSD__) + #define memcpy(d, s, n) bcopy(s, d, n) + #define memcmp(s1, s2, n) bcmp(s2, s1, n) + #endif diff --git a/games/xnethack/files/patch-src-files.c b/games/xnethack/files/patch-src-files.c new file mode 100644 index 000000000000..1b6b782cbaa3 --- /dev/null +++ b/games/xnethack/files/patch-src-files.c @@ -0,0 +1,10 @@ +--- src/files.c.orig 2021-03-22 22:28:14 UTC ++++ src/files.c +@@ -51,6 +51,7 @@ const + + #if defined(UNIX) && defined(SELECTSAVED) + #include ++#include + #include + #include + #endif diff --git a/games/xnethack/files/patch-sys-unix-Makefile.doc b/games/xnethack/files/patch-sys-unix-Makefile.doc new file mode 100644 index 000000000000..fecd35c0dda4 --- /dev/null +++ b/games/xnethack/files/patch-sys-unix-Makefile.doc @@ -0,0 +1,39 @@ +--- sys/unix/Makefile.doc.orig 2021-03-22 22:28:14 UTC ++++ sys/unix/Makefile.doc +@@ -66,15 +66,15 @@ Guidebook.dvi: Guidebook.tex + latex Guidebook.tex + + +-GAME = nethack +-MANDIR = /usr/man/man6 ++GAME = xnethack%%HACKEXT%% ++MANDIR = ${PREFIX}/man/man6 + MANEXT = 6 + + # manual installation for most BSD-style systems +-GAMEMANCREATE = cat nethack.6 | $(NHGREP) > +-RCVRMANCREATE = cat recover.6 | $(NHGREP) > +-DLBMANCREATE = cat dlb.6 | $(NHGREP) > +-MDMANCREATE = cat makedefs.6 | $(NHGREP) > ++GAMEMANCREATE = cat nethack.6 | $(NHGREP) > nethack.6.out ; ${BSD_INSTALL_MAN} nethack.6.out ++RCVRMANCREATE = cat recover.6 | $(NHGREP) > recover.6.out ; ${BSD_INSTALL_MAN} recover.6.out ++DLBMANCREATE = cat dlb.6 | $(NHGREP) > dlb.6.out ; ${BSD_INSTALL_MAN} dlb.6.out ++MDMANCREATE = cat makedefs.6 | $(NHGREP) > makedefs.6.out ; ${BSD_INSTALL_MAN} makedefs.6.out + # manual installation for most SYSV-style systems + # GAMEMANCREATE = cat nethack.6 | $(NHGREP) | nroff -man - > + # RCVRMANCREATE = cat recover.6 | $(NHGREP) | nroff -man - > +@@ -82,10 +82,10 @@ MDMANCREATE = cat makedefs.6 | $(NHGREP) > + # MDMANCREATE = cat makedefs.6 | $(NHGREP) | nroff -man - > + + manpages: +- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT) +- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT) +- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT) +- -$(MDMANCREATE) $(MANDIR)/makedefs.$(MANEXT) ++ -$(GAMEMANCREATE) ${DESTDIR}$(MANDIR)/$(GAME)%%HACKEXT%%.$(MANEXT) ++ -$(RCVRMANCREATE) ${DESTDIR}$(MANDIR)/recover%%HACKEXT%%.$(MANEXT) ++ -$(DLBMANCREATE) ${DESTDIR}$(MANDIR)/dlb%%HACKEXT%%.$(MANEXT) ++ -$(MDMANCREATE) ${DESTDIR}$(MANDIR)/makedefs%%HACKEXT%%.$(MANEXT) + + # manual creation for distribution + DISTRIB = Guidebook.txt nethack.txt recover.txt \ diff --git a/games/xnethack/files/patch-sys-unix-Makefile.src b/games/xnethack/files/patch-sys-unix-Makefile.src new file mode 100644 index 000000000000..bcf8a95aaf6f --- /dev/null +++ b/games/xnethack/files/patch-sys-unix-Makefile.src @@ -0,0 +1,154 @@ +--- sys/unix/Makefile.src.orig 2021-03-22 22:28:14 UTC ++++ sys/unix/Makefile.src +@@ -169,9 +169,17 @@ SYSOBJ = $(TARGETPFX)ioctl.o $(TARGETPFX)unixmain.o $( + + # flags for debugging: + # CFLAGS = -g -I../include ++CFLAGS += -I../include -I${LUA_INCDIR} ++ifeq ("$(GRAPHICS)","X11_GRAPHICS") ++CFLAGS += -DX11_GRAPHICS -I${LOCALBASE}/include ++endif ++ifeq ("$(GRAPHICS)","QT_GRAPHICS") ++CFLAGS += -DQT_GRAPHICS ++endif + + #CFLAGS = -O -I../include +-#LFLAGS = ++LFLAGS += -L${LUA_LIBDIR} ++LINK = $(CC) + + # The Qt and Be window systems are written in C++, while the rest of + # NetHack is standard C. If using Qt, uncomment the LINK line here to get +@@ -297,6 +305,29 @@ WINBEOBJ = + # Curses - Karl Garrison, Tangles + #WINSRC = $(WINCURSESSRC) + #WINOBJ = $(WINCURSESOBJ) ++ ++WINSRC = $(WINTTYSRC) $(WINCURSESSRC) ++ifeq ("$(GRAPHICS)","X11_GRAPHICS") ++WINSRC += $(WINX11SRC) ++endif ++ifeq ("$(GRAPHICS)","QT_GRAPHICS") ++WINSRC += $(WINQTSRC) ++endif ++ifeq ("$(GRAPHICS)","GNOME_GRAPHICS") ++WINSRC += $(WINGNOMESRC) ++endif ++ ++WINOBJ = $(WINTTYOBJ) $(WINCURSESOBJ) ++ifeq ("$(GRAPHICS)","X11_GRAPHICS") ++WINOBJ += $(WINX11OBJ) ++endif ++ifeq ("$(GRAPHICS)","QT_GRAPHICS") ++WINOBJ += $(WINQTOBJ) ++endif ++ifeq ("$(GRAPHICS)","GNOME_GRAPHICS") ++WINOBJ += $(WINGNOMEOBJ) ++endif ++ + # + # on some systems the termcap library is in -ltermcap or -lcurses + # on 386 Xenix, the -ltermlib tputs() seems not to work; use -lcurses instead +@@ -313,6 +344,7 @@ WINBEOBJ = + # WINTTYLIB = -lcurses16 + # WINTTYLIB = -lncurses + #WINTTYLIB = -ltermlib ++WINTTYLIB = -lncurses -L${LOCALBASE}/lib + # + # libraries for X11 + # If USE_XPM is defined in config.h, you will also need -lXpm here. +@@ -320,10 +352,13 @@ WINBEOBJ = + # WINX11LIB = -lXaw -lXmu -lXt -lX11 + # WINX11LIB = -lXaw -lXmu -lXext -lXt -lXpm -lX11 -lm + # WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0 ++WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -L${LOCALBASE}/lib + # + # + # libraries for Qt 3 +-WINQT3LIB = -L$(QTDIR)/lib -lqt ++#WINQTLIB = -L$(QTDIR)/lib -lqt ++WINQT3LIB = ${QTCFGLIBS} ${LIBQT} ++WINQTLIB = ${QTCFGLIBS} ${LIBQT} + # + # libraries for Qt 4 + WINQT4LIB = `pkg-config QtGui --libs` +@@ -339,7 +374,7 @@ WINBELIB = -lbe + # + # libraries for curses port + # link with ncurses +-WINCURSESLIB = -lncurses ++WINCURSESLIB = -lncurses -L${LOCALBASE}/lib + # link with pdcurses for SDL, installed in a separate directory + #WINCURSESLIB = -L/usr/local/lib/pdcurses -lpdcurses -lSDL + # same as above, for XCurses +@@ -349,6 +384,18 @@ WINCURSESLIB = -lncurses + # + # For Curses + #WINLIB = $(WINCURSESLIB) ++ ++WINLIB = $(WINTTYLIB) ++ifeq ("$(GRAPHICS)","X11_GRAPHICS") ++WINLIB += $(WINX11LIB) ++endif ++ifeq ("$(GRAPHICS)","QT_GRAPHICS") ++WINLIB += $(WINQTLIB) ++endif ++ifeq ("$(GRAPHICS)","GNOME_GRAPHICS") ++WINLIB += $(WINGNOMELIB) ++endif ++ + # + # some platforms need to build the support libraries + # BUILDMORE = $(TARGETPFX)pdcurses.a +@@ -384,7 +431,7 @@ WINCURSESLIB = -lncurses + # LIBS = + + # make NetHack +-GAME = xnethack ++GAME = xnethack%%HACKEXT%% + # GAME = nethack.prg + GAMEBIN = $(GAME) + +@@ -412,7 +459,7 @@ GITINFO=1 + # (rather than just in suffix default rule), such as is implemented by + # gnu make and others which have picked up its extensions; + # allowed values are 0, 1, and empty (which behaves like 0) +-QUIETCC=1 ++QUIETCC=0 + + # ---------------------------------------- + # +@@ -465,7 +512,8 @@ PACKAGE=@true + MAKEDEFS = ../util/makedefs + + # -lm required by lua +-LUALIB = ../lib/lua/liblua.a -lm ++#LUALIB = ../lib/lua/liblua.a -lm ++LUALIB = -llua-${LUA_VER} -lm + + # timestamp files to reduce `make' overhead and shorten .o dependency lists + CONFIG_H = ../src/config.h-t +@@ -654,7 +702,7 @@ DUMB.Setup: ../include/extern.h + cp ../include/extern.DUMB ../include/extern.h + @touch DUMB.Setup + +-../lib/lua/liblua.a ../include/nhlua.h: ++../include/nhlua.h: + @( cd .. ; $(MAKE) lua_support ) + + # dependencies for makedefs and its outputs, which the util +@@ -673,11 +721,11 @@ objects.o: + + # Qt 3 windowport meta-object-compiler output + qt3_kde0.moc: ../win/Qt3/qt3_kde0.h +- $(QTDIR)/bin/moc -o qt3kde0.moc ../win/Qt3/qt3_kde0.h ++ ${MOC} -o qt3kde0.moc ../win/Qt3/qt3_kde0.h + qt3_win.moc: ../win/Qt3/qt3_win.h +- $(QTDIR)/bin/moc -o qt3win.moc ../win/Qt3/qt3_win.h ++ ${MOC} -o qt3win.moc ../win/Qt3/qt3_win.h + qt3tableview.moc: ../win/Qt3/qt3tableview.h +- $(QTDIR)/bin/moc -o qt3tableview.moc ../win/Qt/qt3tableview.h ++ ${MOC} -o qt3tableview.moc ../win/Qt/qt3tableview.h + + # Qt 4 windowport meta-object-compiler output + qt_kde0.moc : ../win/Qt/qt_kde0.h diff --git a/games/xnethack/files/patch-sys-unix-Makefile.top b/games/xnethack/files/patch-sys-unix-Makefile.top new file mode 100644 index 000000000000..44a4ffef3d57 --- /dev/null +++ b/games/xnethack/files/patch-sys-unix-Makefile.top @@ -0,0 +1,175 @@ +--- sys/unix/Makefile.top.orig 2021-03-22 22:28:14 UTC ++++ sys/unix/Makefile.top +@@ -20,18 +20,18 @@ NHSROOT=. + + # make NetHack + #PREFIX = /usr +-GAME = xnethack ++GAME = xnethack%%HACKEXT%% + # GAME = nethack.prg + #GAMEUID = games +-#GAMEGRP = bin ++GAMEGRP = games + + # Permissions - some places use setgid instead of setuid, for instance + # See also the option "SECURE" in include/config.h +-#GAMEPERM = 04755 +-FILEPERM = 0644 ++GAMEPERM = 02755 ++FILEPERM = 0664 + # VARFILEPERM = 0644 + EXEPERM = 0755 +-DIRPERM = 0755 ++DIRPERM = 0775 + # VARDIRPERM = 0755 + + # VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else HACKDIR +@@ -41,14 +41,15 @@ DIRPERM = 0755 + # therefore there should not be anything in HACKDIR that you want to keep + # (if there is, you'll have to do the installation by hand or modify the + # instructions) +-#HACKDIR = $(PREFIX)/games/lib/$(GAME)dir +-#VARDIR = $(HACKDIR) ++HACKDIR = %%HACKDIR%% ++VARDIR = $(HACKDIR) ++INSTDIR = $(HACKDIR) + # Where nethack.sh in installed. If this is not defined, the wrapper is not used. +-#SHELLDIR = $(PREFIX)/games ++SHELLDIR = ${PREFIX}/bin + + # per discussion in Install.X11 and Install.Qt + #VARDATND = + # VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm +-# VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm rip.xpm ++VARDATND = x11tiles NetHack.ad pet_mark.xbm pilemark.xbm + # for Atari/Gem + # VARDATND = nh16.img title.img GEM_RSC.RSC rip.img +@@ -75,7 +76,7 @@ VARDAT = $(VARDATD) $(VARDATND) + #CHGRP = chgrp + + # Lua version +-LUA_VERSION = 5.4.2 ++LUA_VERSION = ${LUA_VER} + + # + # end of configuration +@@ -108,7 +109,7 @@ all: $(ALLDEP) + $(GAME): lua_support + ( cd src ; $(MAKE) $(GAME) ) + +-lua_support: $(TOPLUALIB) include/nhlua.h ++lua_support: include/nhlua.h + @true + lib/lua-$(LUA_VERSION)/src/liblua.a: lib/lua-$(LUA_VERSION)/src/lua.h + ( cd lib/lua-$(LUA_VERSION)/src \ +@@ -116,13 +117,11 @@ lib/lua-$(LUA_VERSION)/src/liblua.a: lib/lua-$(LUA_VER + lib/lua/liblua.a: lib/lua-$(LUA_VERSION)/src/liblua.a + @( if [ ! -d lib/lua ] ; then mkdir -p lib/lua ; fi ) + cp lib/lua-$(LUA_VERSION)/src/liblua.a $@ +-include/nhlua.h: $(TOPLUALIB) ++include/nhlua.h: + echo '/* nhlua.h - generated by top Makefile */' > $@ +- @echo '#include "../lib/lua-$(LUA_VERSION)/src/lua.h"' >> $@ +- @sed -e '/(lua_error)/!d' -e '/(lua_error)/s/;/ NORETURN;/1' \ +- < lib/lua-$(LUA_VERSION)/src/lua.h >> $@ +- @echo '#include "../lib/lua-$(LUA_VERSION)/src/lualib.h"' >> $@ +- @echo '#include "../lib/lua-$(LUA_VERSION)/src/lauxlib.h"' >> $@ ++ @echo '#include ' >> $@ ++ @echo '#include ' >> $@ ++ @echo '#include ' >> $@ + @echo '/*nhlua.h*/' >> $@ + + # Note: many of the dependencies below are here to allow parallel make +@@ -234,39 +233,22 @@ dofiles: + -e '}' \ + -e '$$s/.*/nodlb/p' < dat/options` ; \ + $(MAKE) dofiles-$${target-nodlb} +- cp src/$(GAME) $(INSTDIR) +- cp util/recover $(INSTDIR) +- -if test -n '$(SHELLDIR)'; then rm -f $(SHELLDIR)/$(GAME); fi ++ cp src/$(GAME) ${DESTDIR}$(INSTDIR)/$(GAME) ++ cp util/recover ${DESTDIR}$(INSTDIR) ++ -if test -n '${DESTDIR}$(SHELLDIR)'; then rm -f ${DESTDIR}$(SHELLDIR)/$(GAME); fi + if test -n '$(SHELLDIR)'; then \ + sed -e 's;/usr/games/lib/nethackdir;$(HACKDIR);' \ + -e 's;HACKDIR/nethack;HACKDIR/$(GAME);' \ + < sys/unix/nethack.sh \ +- > $(SHELLDIR)/$(GAME) ; fi +-# set up their permissions +- -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) $(GAME) recover ; \ +- $(CHGRP) $(GAMEGRP) $(GAME) recover ) +- chmod $(GAMEPERM) $(INSTDIR)/$(GAME) +- chmod $(EXEPERM) $(INSTDIR)/recover +- -if test -n '$(SHELLDIR)'; then \ +- $(CHOWN) $(GAMEUID) $(SHELLDIR)/$(GAME); fi +- if test -n '$(SHELLDIR)'; then \ +- $(CHGRP) $(GAMEGRP) $(SHELLDIR)/$(GAME); \ +- chmod $(EXEPERM) $(SHELLDIR)/$(GAME); fi ++ > ${DESTDIR}$(SHELLDIR)/$(GAME) ; fi + + dofiles-dlb: check-dlb +- ( cd dat ; cp nhdat $(DATNODLB) $(INSTDIR) ) +-# set up their permissions +- -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) nhdat $(DATNODLB) ; \ +- $(CHGRP) $(GAMEGRP) nhdat $(DATNODLB) ; \ +- chmod $(FILEPERM) nhdat $(DATNODLB) ) ++ ( cd dat ; cp nhdat $(DATNODLB) ${DESTDIR}$(INSTDIR) ) + + dofiles-nodlb: + # copy over the game files +- ( cd dat ; cp $(DAT) $(INSTDIR) ) +-# set up their permissions +- -( cd $(INSTDIR) ; $(CHOWN) $(GAMEUID) $(DAT) ; \ +- $(CHGRP) $(GAMEGRP) $(DAT) ; \ +- chmod $(FILEPERM) $(DAT) ) ++ ( cd dat ; cp $(DAT) ${DESTDIR}$(INSTDIR) ) ++ + # + # This is not part of the dependency build hierarchy. + # It requires an explicit "make fetch-Lua". +@@ -283,13 +265,9 @@ fetch-Lua: + update: $(GAME) recover $(VARDAT) spec_levs + # (don't yank the old version out from under people who're playing it) + -mv $(INSTDIR)/$(GAME) $(INSTDIR)/$(GAME).old +- -mv $(INSTDIR)/nhdat $(INSTDIR)/nhdat.old ++ -mv ${DESTDIR}$(INSTDIR)/nhdat ${DESTDIR}$(INSTDIR)/nhdat.old + # set up new versions of the game files + ( $(MAKE) dofiles ) +-# touch time-sensitive files +- -touch -c $(VARDIR)/bones* $(VARDIR)/?lock* $(VARDIR)/wizard* +- -touch -c $(VARDIR)/save/* $(VARDIR)/whereis/* +- touch $(VARDIR)/perm $(VARDIR)/record + # and a reminder + @echo You may also want to install the man pages via the doc Makefile. + +@@ -300,25 +278,16 @@ install: rootcheck $(GAME) recover $(VARDAT) spec_levs + true; $(PREINSTALL) + # set up the directories + # not all mkdirs have -p; those that don't will create a -p directory +- -if test -n '$(SHELLDIR)'; then \ +- mkdir -p $(SHELLDIR); fi +- rm -rf $(INSTDIR) $(VARDIR) +- -mkdir -p $(INSTDIR) $(VARDIR) $(VARDIR)/save $(VARDIR)/whereis ++ -if test -n '${DESTDIR}$(SHELLDIR)'; then \ ++ mkdir -p ${DESTDIR}$(SHELLDIR); fi ++ rm -rf ${DESTDIR}$(INSTDIR) ${DESTDIR}$(VARDIR) ++ -mkdir -p ${DESTDIR}$(INSTDIR) ${DESTDIR}$(VARDIR) ${DESTDIR}$(VARDIR)/save ${DESTDIR}$(VARDIR)/whereis + if test -d ./-p; then rmdir ./-p; fi +- -$(CHOWN) $(GAMEUID) $(INSTDIR) $(VARDIR) $(VARDIR)/save $(VARDIR)/whereis +- $(CHGRP) $(GAMEGRP) $(INSTDIR) $(VARDIR) $(VARDIR)/save $(VARDIR)/whereis + # order counts here: +- chmod $(DIRPERM) $(INSTDIR) +- chmod $(VARDIRPERM) $(VARDIR) $(VARDIR)/save $(VARDIR)/whereis + # set up the game files + ( $(MAKE) dofiles ) + # set up some additional files +- touch $(VARDIR)/perm $(VARDIR)/record $(VARDIR)/logfile \ +- $(VARDIR)/xlogfile $(VARDIR)/livelog +- -( cd $(VARDIR) ; \ +- $(CHOWN) $(GAMEUID) perm record logfile xlogfile livelog ; \ +- $(CHGRP) $(GAMEGRP) perm record logfile xlogfile livelog ; \ +- chmod $(VARFILEPERM) perm record logfile xlogfile livelog ) ++ touch ${DESTDIR}$(VARDIR)/perm ${DESTDIR}$(VARDIR)/record ${DESTDIR}$(VARDIR)/logfile ${DESTDIR}$(VARDIR)/xlogfile + true; $(POSTINSTALL) + # and a reminder + @echo You may also want to reinstall the man pages via the doc Makefile. diff --git a/games/xnethack/files/patch-sys-unix-Makefile.utl b/games/xnethack/files/patch-sys-unix-Makefile.utl new file mode 100644 index 000000000000..10fd6bc5aa42 --- /dev/null +++ b/games/xnethack/files/patch-sys-unix-Makefile.utl @@ -0,0 +1,33 @@ +--- sys/unix/Makefile.utl.orig 2021-03-22 22:28:14 UTC ++++ sys/unix/Makefile.utl +@@ -93,18 +93,25 @@ NHSROOT=.. + # flags for debugging: + # CFLAGS = -g -I../include + +-#CFLAGS = -O -I../include +-#LFLAGS = ++CFLAGS += -I../include -I${LUA_INCDIR} ++ifeq ("$(GRAPHICS)","X11_GRAPHICS") ++CFLAGS += -DX11_GRAPHICS ++endif ++ifeq ("$(GRAPHICS)","QT_GRAPHICS") ++CFLAGS += -DQT_GRAPHICS ++endif ++ifeq ("$(GRAPHICS)","GNOME_GRAPHICS") ++CFLAGS += -DGNOME_GRAPHICS ++endif + +-# -lm required by lua +-LFLAGS += -lm ++LFLAGS = -L${LUA_LIBDIR} + + # we specify C preprocessor flags via CFLAGS; files built with default rules + # might include $(CPPFLAGS) which could get a value from user's environment; + # we avoid that by forcing it empty rather than by overriding default rules + CPPFLAGS = + +-LIBS = ++LIBS = -llua-${LUA_VER} -lm + + OBJDIR = ../src + diff --git a/games/xnethack/files/patch-sys-unix-sysconf b/games/xnethack/files/patch-sys-unix-sysconf new file mode 100644 index 000000000000..4629279cc86d --- /dev/null +++ b/games/xnethack/files/patch-sys-unix-sysconf @@ -0,0 +1,11 @@ +--- sys/unix/sysconf.orig 2021-03-22 22:28:14 UTC ++++ sys/unix/sysconf +@@ -136,7 +136,7 @@ LLC_TURNS=3000 + # %D current time, YYYYMMDDhhmmss format + # %n player name + # %N first character of player name +-DUMPLOGFILE=/tmp/xnethack.%n.%d.log ++DUMPLOGFILE=/tmp/nethack.%v.%u.%n.%D.log + + # End of game HTML dump. + # Only available if NetHack was compiled with DUMPHTML diff --git a/games/xnethack/files/patch-util-makedefs.c b/games/xnethack/files/patch-util-makedefs.c new file mode 100644 index 000000000000..13d38f3bfba0 --- /dev/null +++ b/games/xnethack/files/patch-util-makedefs.c @@ -0,0 +1,71 @@ +--- util/makedefs.c.orig 2021-03-22 22:28:14 UTC ++++ util/makedefs.c +@@ -116,6 +116,7 @@ static struct version_info version; + #define MAXFNAMELEN 600 + + static char filename[MAXFNAMELEN]; ++static char tempfilename[MAXFNAMELEN]; + + #ifdef FILE_PREFIX + /* if defined, a first argument not starting with - is +@@ -229,6 +230,12 @@ main(int argc, char *argv[]) + return 1; + } + ++ if (snprintf(tempfilename, sizeof(tempfilename), "%s.%d", "grep.tmp", getpid()) >= sizeof(tempfilename)) { ++ Fprintf(stderr, "Cannot create temporary filename."); ++ (void) fflush(stderr); ++ return 1; ++ } ++ + #ifdef FILE_PREFIX + if (argc >= 2 && argv[1][0] != '-') { + file_prefix = argv[1]; +@@ -964,12 +971,12 @@ do_rnd_access_file(const char* fname, const char* defl + more likely to be picked than normal but it's nothing to worry about */ + (void) fputs(xcrypt(deflt_content), ofp); + +- tfp = getfp(DATA_TEMPLATE, "grep.tmp", WRTMODE, FLG_TEMPFILE); ++ tfp = getfp(DATA_TEMPLATE, tempfilename, WRTMODE, FLG_TEMPFILE); + grep0(ifp, tfp, FLG_TEMPFILE); + #ifndef HAS_NO_MKSTEMP + ifp = tfp; + #else +- ifp = getfp(DATA_TEMPLATE, "grep.tmp", RDTMODE, 0); ++ ifp = getfp(DATA_TEMPLATE, tempfilename, RDTMODE, 0); + #endif + while ((line = fgetline(ifp)) != 0) { + if (line[0] != '#' && line[0] != '\n') +@@ -980,7 +987,7 @@ do_rnd_access_file(const char* fname, const char* defl + Fclose(ofp); + + #ifdef HAS_NO_MKSTEMP +- delete_file(DATA_TEMPLATE, "grep.tmp"); ++ delete_file(DATA_TEMPLATE, templfilename); + #endif + return; + } +@@ -1758,12 +1765,12 @@ do_dungeon(void) + } + Fprintf(ofp, "%s", Dont_Edit_Data); + +- tfp = getfp(DATA_TEMPLATE, "grep.tmp", WRTMODE, FLG_TEMPFILE); ++ tfp = getfp(DATA_TEMPLATE, tempfilename, WRTMODE, FLG_TEMPFILE); + grep0(ifp, tfp, FLG_TEMPFILE); + #ifndef HAS_NO_MKSTEMP + ifp = tfp; + #else +- ifp = getfp(DATA_TEMPLATE, "grep.tmp", RDTMODE, 0); ++ ifp = getfp(DATA_TEMPLATE, tempfilename, RDTMODE, 0); + #endif + while ((line = fgetline(ifp)) != 0) { + SpinCursor(3); +@@ -1779,7 +1786,7 @@ do_dungeon(void) + Fclose(ofp); + + #ifdef HAS_NO_MKSTEMP +- delete_file(DATA_TEMPLATE, "grep.tmp"); ++ delete_file(DATA_TEMPLATE, tempfilename); + #endif + return; + } diff --git a/games/xnethack/files/patch-win-tty-termcap.c b/games/xnethack/files/patch-win-tty-termcap.c new file mode 100644 index 000000000000..9338a9c87743 --- /dev/null +++ b/games/xnethack/files/patch-win-tty-termcap.c @@ -0,0 +1,13 @@ +--- win/tty/termcap.c.orig 2021-03-22 22:28:14 UTC ++++ win/tty/termcap.c +@@ -185,10 +185,6 @@ tty_startup(int *wid, int *hgt) + error("Terminal must backspace."); + #else + if (!(BC = Tgetstr("bc"))) { /* termcap also uses bc/bs */ +-#ifndef MINIMAL_TERM +- if (!tgetflag("bs")) +- error("Terminal must backspace."); +-#endif + BC = tbufptr; + tbufptr += 2; + *BC = '\b'; diff --git a/games/xnethack/files/patch-win_Qt_qt__win.cpp b/games/xnethack/files/patch-win_Qt_qt__win.cpp new file mode 100644 index 000000000000..1837d29fc918 --- /dev/null +++ b/games/xnethack/files/patch-win_Qt_qt__win.cpp @@ -0,0 +1,14 @@ +--- win/Qt/qt_win.cpp.orig 2021-03-22 22:28:14 UTC ++++ win/Qt/qt_win.cpp +@@ -57,6 +57,11 @@ extern "C" { + #endif + #include "qt_post.h" + ++#ifdef Invisible ++/* Invisible was added to an enum in Qt 3.2, #defined in youprop.h */ ++#undef Invisible ++#endif ++ + // Many of these headers are not needed here. It's a holdover + // from when most of the Qt code was in one big file. + #include "qt_win.h" diff --git a/games/xnethack/files/pkg-deinstall.in b/games/xnethack/files/pkg-deinstall.in new file mode 100644 index 000000000000..04e356acdf02 --- /dev/null +++ b/games/xnethack/files/pkg-deinstall.in @@ -0,0 +1,14 @@ +#!/bin/sh + +if [ "${2}" = "POST-DEINSTALL" ]; then + if [ -d "${PKG_PREFIX}/%%HACKDIR%%" ]; then + echo + echo "The ${1} save files have not been removed." + echo + echo "If you are deleting ${1} permanently then you can " + echo "remove the save files with the command:" + echo + echo " rm -rf ${PKG_PREFIX}/%%HACKDIR%%" + echo + fi +fi diff --git a/games/xnethack/pkg-descr b/games/xnethack/pkg-descr new file mode 100644 index 000000000000..83815936b4ca --- /dev/null +++ b/games/xnethack/pkg-descr @@ -0,0 +1,19 @@ +xNetHack is a fork of the dungeon exploration game NetHack. It is a +distant descendent of Rogue and Hack, and a direct descendant of the +development version of NetHack 3.7. + +The main goals of xNetHack are to take vanilla NetHack and: + + - Fix gameplay balance issues. + - Remove tedious and frustrating parts of the game. + - Make uninteresting parts of the game more interesting. + - Experiment with new ideas from the community. + +In general, the game design takes a conservative approach to changing +the gameplay compared to other variants, with focus on deepening +elements of the game rather than broadening them. For example, this +philosophy would prefer to differentiate monsters in a class that all +tend to play the same way, instead of adding new monsters to that class. + + +WWW: https://nethackwiki.com/wiki/XNetHack diff --git a/games/xnethack/pkg-plist b/games/xnethack/pkg-plist new file mode 100644 index 000000000000..5733415fcb2e --- /dev/null +++ b/games/xnethack/pkg-plist @@ -0,0 +1,180 @@ +%%HACKLINK%%bin/xnethack +@mode 555 +bin/%%HACKNAME%% +@owner games +@group games +@mode 02755 +%%DATADIR%%/%%HACKNAME%% +@mode +%%DATADIR%%/Arc-fila.lua +%%DATADIR%%/Arc-filb.lua +%%DATADIR%%/Arc-goal.lua +%%DATADIR%%/Arc-loca.lua +%%DATADIR%%/Arc-strt.lua +%%DATADIR%%/Bar-fila.lua +%%DATADIR%%/Bar-filb.lua +%%DATADIR%%/Bar-goal.lua +%%DATADIR%%/Bar-loca.lua +%%DATADIR%%/Bar-strt.lua +%%DATADIR%%/Cav-fila.lua +%%DATADIR%%/Cav-filb.lua +%%DATADIR%%/Cav-goal.lua +%%DATADIR%%/Cav-loca.lua +%%DATADIR%%/Cav-strt.lua +%%DATADIR%%/Hea-fila.lua +%%DATADIR%%/Hea-filb.lua +%%DATADIR%%/Hea-goal.lua +%%DATADIR%%/Hea-loca.lua +%%DATADIR%%/Hea-strt.lua +%%DATADIR%%/Kni-fila.lua +%%DATADIR%%/Kni-filb.lua +%%DATADIR%%/Kni-goal.lua +%%DATADIR%%/Kni-loca.lua +%%DATADIR%%/Kni-strt.lua +%%DATADIR%%/Mon-fila.lua +%%DATADIR%%/Mon-filb.lua +%%DATADIR%%/Mon-goal.lua +%%DATADIR%%/Mon-loca.lua +%%DATADIR%%/Mon-strt.lua +%%DATADIR%%/NHdump.css +%%DATADIR%%/NetHack.ad +%%DATADIR%%/Pri-fila.lua +%%DATADIR%%/Pri-filb.lua +%%DATADIR%%/Pri-goal.lua +%%DATADIR%%/Pri-loca.lua +%%DATADIR%%/Pri-strt.lua +%%DATADIR%%/Ran-fila.lua +%%DATADIR%%/Ran-filb.lua +%%DATADIR%%/Ran-goal.lua +%%DATADIR%%/Ran-loca.lua +%%DATADIR%%/Ran-strt.lua +%%DATADIR%%/Rog-fila.lua +%%DATADIR%%/Rog-filb.lua +%%DATADIR%%/Rog-goal.lua +%%DATADIR%%/Rog-loca.lua +%%DATADIR%%/Rog-strt.lua +%%DATADIR%%/Sam-fila.lua +%%DATADIR%%/Sam-filb.lua +%%DATADIR%%/Sam-goal.lua +%%DATADIR%%/Sam-loca.lua +%%DATADIR%%/Sam-strt.lua +%%DATADIR%%/Tou-fila.lua +%%DATADIR%%/Tou-filb.lua +%%DATADIR%%/Tou-goal.lua +%%DATADIR%%/Tou-loca.lua +%%DATADIR%%/Tou-strt.lua +%%DATADIR%%/Val-fila.lua +%%DATADIR%%/Val-filb.lua +%%DATADIR%%/Val-goal.lua +%%DATADIR%%/Val-loca.lua +%%DATADIR%%/Val-strt.lua +%%DATADIR%%/Wiz-fila.lua +%%DATADIR%%/Wiz-filb.lua +%%DATADIR%%/Wiz-goal.lua +%%DATADIR%%/Wiz-loca.lua +%%DATADIR%%/Wiz-strt.lua +%%DATADIR%%/air.lua +%%DATADIR%%/asmodeus.lua +%%DATADIR%%/astral.lua +%%DATADIR%%/baalz.lua +%%DATADIR%%/bigrm-1.lua +%%DATADIR%%/bigrm-10.lua +%%DATADIR%%/bigrm-11.lua +%%DATADIR%%/bigrm-2.lua +%%DATADIR%%/bigrm-3.lua +%%DATADIR%%/bigrm-4.lua +%%DATADIR%%/bigrm-5.lua +%%DATADIR%%/bigrm-6.lua +%%DATADIR%%/bigrm-7.lua +%%DATADIR%%/bigrm-8.lua +%%DATADIR%%/bigrm-9.lua +%%DATADIR%%/bogusmon +%%DATADIR%%/castle.lua +%%DATADIR%%/cmdhelp +%%DATADIR%%/data +%%DATADIR%%/dungeon.lua +%%DATADIR%%/earth.lua +%%DATADIR%%/engrave +%%DATADIR%%/epitaph +%%DATADIR%%/fakewiz1.lua +%%DATADIR%%/fakewiz2.lua +%%DATADIR%%/fire.lua +%%DATADIR%%/help +%%DATADIR%%/hh +%%DATADIR%%/history +%%DATADIR%%/juiblex.lua +%%DATADIR%%/keyhelp +%%DATADIR%%/knox.lua +%%DATADIR%%/license +@sample(games,games,664) %%DATADIR%%/logfile.sample +%%DATADIR%%/medusa-1.lua +%%DATADIR%%/medusa-2.lua +%%DATADIR%%/medusa-3.lua +%%DATADIR%%/medusa-4.lua +%%DATADIR%%/minefill.lua +%%DATADIR%%/minend-1.lua +%%DATADIR%%/minend-2.lua +%%DATADIR%%/minend-3.lua +%%DATADIR%%/minend-4.lua +%%DATADIR%%/minetn-1.lua +%%DATADIR%%/minetn-2.lua +%%DATADIR%%/minetn-3.lua +%%DATADIR%%/minetn-4.lua +%%DATADIR%%/minetn-5.lua +%%DATADIR%%/minetn-6.lua +%%DATADIR%%/minetn-7.lua +%%DATADIR%%/minetn-8.lua +%%DATADIR%%/nhlib.lua +%%DATADIR%%/opthelp +%%DATADIR%%/options +%%DATADIR%%/oracle-1.lua +%%DATADIR%%/oracle-2.lua +%%DATADIR%%/oracle-3.lua +%%DATADIR%%/oracles +%%DATADIR%%/orcus.lua +@mode 664 +%%DATADIR%%/perm +@mode +%%DATADIR%%/pet_mark.xbm +%%DATADIR%%/pilemark.xbm +%%DATADIR%%/quest.lua +@sample(games,games,664) %%DATADIR%%/record.sample +@mode 02755 +%%DATADIR%%/recover +@mode +%%DATADIR%%/rumors +%%DATADIR%%/sanctum.lua +%%DATADIR%%/shirts +%%DATADIR%%/soko1-1.lua +%%DATADIR%%/soko1-2.lua +%%DATADIR%%/soko2-1.lua +%%DATADIR%%/soko2-2.lua +%%DATADIR%%/soko3-1.lua +%%DATADIR%%/soko3-2.lua +%%DATADIR%%/soko4-1.lua +%%DATADIR%%/soko4-2.lua +%%DATADIR%%/symbols +@sample(games,games,) %%DATADIR%%/sysconf.sample +%%DATADIR%%/themerms.lua +%%DATADIR%%/tower1.lua +%%DATADIR%%/tower2.lua +%%DATADIR%%/tower3.lua +%%DATADIR%%/tribute +%%DATADIR%%/valley.lua +%%DATADIR%%/water.lua +%%DATADIR%%/wizard1.lua +%%DATADIR%%/wizard2.lua +%%DATADIR%%/wizard3.lua +%%DATADIR%%/wizhelp +%%DATADIR%%/x11tiles +@sample(games,games,664) %%DATADIR%%/xlogfile.sample +@owner +@group +man/man6/dlb.6.gz +man/man6/makedefs.6.gz +man/man6/recover.6.gz +man/man6/%%HACKNAME%%.6.gz +%%PORTDOCS%%%%DOCSDIR%%/Guidebook.txt +@dir(games,games,0775) %%DATADIR%%/save +@dir(games,games,0775) %%DATADIR%%/whereis +@dir(games,games,0775) %%DATADIR%%