From owner-freebsd-ports Sat Apr 21 11:20:21 2001 Delivered-To: freebsd-ports@hub.freebsd.org Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id EE6BD37B423 for ; Sat, 21 Apr 2001 11:20:04 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f3LIK4264577; Sat, 21 Apr 2001 11:20:04 -0700 (PDT) (envelope-from gnats) Received: from moe.sfrn.dnai.com (moe.sfrn.dnai.com [208.59.199.25]) by hub.freebsd.org (Postfix) with ESMTP id CDB9037B422 for ; Sat, 21 Apr 2001 11:17:55 -0700 (PDT) (envelope-from ace@fathermojo.dyndns.org) Received: from fathermojo.dyndns.org (207-172-166-221.s221.tnt1.sfrn.ca.dialup.rcn.com [207.172.166.221]) by moe.sfrn.dnai.com (8.11.2/8.11.2) with ESMTP id f3LIHmw73741 for ; Sat, 21 Apr 2001 11:17:48 -0700 (PDT) Received: by fathermojo.dyndns.org (Postfix, from userid 1000) id 1FB92589B; Sat, 21 Apr 2001 11:16:42 -0700 (PDT) Message-Id: <20010421181642.1FB92589B@fathermojo.dyndns.org> Date: Sat, 21 Apr 2001 11:16:42 -0700 (PDT) From: Adam@fathermojo.dyndns.org, Kranzel@fathermojo.dyndns.org (adam@alameda.edu) Reply-To: adam@alameda.edu To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.113 Subject: ports/26754: New port: Slash'Em (tty interface) Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 26754 >Category: ports >Synopsis: New port: Slash'Em (tty interface) >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sat Apr 21 11:20:01 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Adam Kranzel >Release: FreeBSD 5.0-CURRENT i386 >Organization: >Environment: System: FreeBSD fathermojo.dyndns.org 5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sat Apr 21 04:41:18 PDT 2001 root@fathermojo.dyndns.org:/home/obj/usr/src/sys/FATHERMOJO i386 >Description: Slash'Em (super-lotsa-added-stuff-hack, extended magic), is a roguelike game derived from NetHack. It is under active development, and has quite a few new features, including more levels, more types of monsters, and lots more equipment. This port supports only the tty interface, but X11 (athena), QT, and GTK (currently broken due to GTK 1.2.10 not allowing SUID) interfaces are also supported, and ports for those will be sent in as soon as I finish them. The perl in the makefile (for changing a line in a pre-generated file), is from Stijn Hoop (stijn@win.tue.nl), and this port was originally based on the NetHack port. This is my first port, so if I have made any mistakes please let me know. thanks -Adam >How-To-Repeat: n/a >Fix: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # slashem-tty # slashem-tty/files # slashem-tty/files/patch-unixconf.h # slashem-tty/files/patch-makefile.src # slashem-tty/files/patch-makefile.doc # slashem-tty/files/patch-makefile.utl # slashem-tty/files/patch-tshirt # slashem-tty/files/sample.slashemrc # slashem-tty/files/patch-config.h # slashem-tty/files/patch-system.h # slashem-tty/files/patch-makefile.top # slashem-tty/distinfo # slashem-tty/pkg-message # slashem-tty/Makefile # slashem-tty/pkg-descr # slashem-tty/pkg-plist # slashem-tty/pkg-comment # echo c - slashem-tty mkdir -p slashem-tty > /dev/null 2>&1 echo c - slashem-tty/files mkdir -p slashem-tty/files > /dev/null 2>&1 echo x - slashem-tty/files/patch-unixconf.h sed 's/^X//' >slashem-tty/files/patch-unixconf.h << 'END-of-slashem-tty/files/patch-unixconf.h' X--- include/unixconf.h.good Wed Nov 22 23:42:39 2000 X+++ include/unixconf.h Wed Nov 22 23:43:42 2000 X@@ -206,7 +206,7 @@ X * A stat system call is done on the mailbox every MAILCKFREQ moves. X */ X X-#define MAIL /* Deliver mail during the game */ X+/* #define MAIL */ /* Deliver mail during the game */ X X /* The Andrew Message System does mail a little differently from normal X * UNIX. Mail is deposited in the user's own directory in ~/Mailbox END-of-slashem-tty/files/patch-unixconf.h echo x - slashem-tty/files/patch-makefile.src sed 's/^X//' >slashem-tty/files/patch-makefile.src << 'END-of-slashem-tty/files/patch-makefile.src' X--- sys/unix/Makefile.src.good Thu Nov 23 00:24:58 2000 X+++ sys/unix/Makefile.src Thu Nov 23 00:26:13 2000 X@@ -144,8 +144,8 @@ X # flags for debugging: X # CFLAGS = -g -I../include X X-CFLAGS = -O -I../include X-LFLAGS = X+CFLAGS += -O -I../include -I${PREFIX}/include X+LFLAGS = -L${PREFIX}/lib X X # QT windowing system X # SuSE 6.1 X@@ -322,7 +322,7 @@ X LIBS = X X # make NetHack X-GAME = slashem X+GAME = slashem-tty X # GAME = slashem.prg X X # if you defined RANDOM in unixconf.h/tosconf.h since your system did not come END-of-slashem-tty/files/patch-makefile.src echo x - slashem-tty/files/patch-makefile.doc sed 's/^X//' >slashem-tty/files/patch-makefile.doc << 'END-of-slashem-tty/files/patch-makefile.doc' X--- sys/unix/Makefile.doc.good Thu Nov 23 01:01:16 2000 X+++ sys/unix/Makefile.doc Thu Nov 23 01:04:09 2000 X@@ -52,10 +52,10 @@ X # Guidebook.dvi: Guidebook.mn X # tbl tmac.n Guidebook.mn | groff -Wall -Tdvi > Guidebook.dvi X X-GAME = slashem X+GAME = slashem-tty X #GAME = nethack X-MANDIR = /games/slash/doc X-MANEXT = 1n X+MANDIR = ${PREFIX}/man/man X+MANEXT = 6 X X # manual installation for most BSD-style systems X GAMEMANCREATE = cp $(GAME).6 X@@ -72,11 +72,11 @@ X # DLBMANCREATE = groff -Wall -mtty-char -Tascii -man dlb.6 > X X manpages: X- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT) X- -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT) X- -$(DGNMANCREATE) $(MANDIR)/dgn_comp.$(MANEXT) X- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT) X- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT) X+ -$(GAMEMANCREATE) $(MANDIR)${MANEXT}/$(GAME).$(MANEXT) X+ -$(LEVMANCREATE) $(MANDIR)${MANEXT}/lev_comp.$(MANEXT) X+ -$(DGNMANCREATE) $(MANDIR)${MANEXT}/dgn_comp.$(MANEXT) X+ -$(RCVRMANCREATE) $(MANDIR)${MANEXT}/recover.$(MANEXT) X+ -$(DLBMANCREATE) $(MANDIR)${MANEXT}/dlb.$(MANEXT) X X # manual creation for distribution X DISTRIB = Guidebook.txt $(GAME).txt lev_comp.txt dgn_comp.txt recover.txt dlb.txt END-of-slashem-tty/files/patch-makefile.doc echo x - slashem-tty/files/patch-makefile.utl sed 's/^X//' >slashem-tty/files/patch-makefile.utl << 'END-of-slashem-tty/files/patch-makefile.utl' X--- sys/unix/Makefile.utl.good Thu Nov 23 13:55:38 2000 X+++ sys/unix/Makefile.utl Thu Nov 23 13:56:54 2000 X@@ -89,8 +89,8 @@ X # flags for debugging: X # CFLAGS = -g -I../include X X-CFLAGS = -O -I../include X-LFLAGS = X+CFLAGS += -O -I../include -I${PREFIX}/include X+LFLAGS = -L${PREFIX}/lib X X LIBS = X END-of-slashem-tty/files/patch-makefile.utl echo x - slashem-tty/files/patch-tshirt sed 's/^X//' >slashem-tty/files/patch-tshirt << 'END-of-slashem-tty/files/patch-tshirt' X--- src/read.c.orig Sat Jul 22 18:04:06 2000 X+++ src/read.c Thu Jan 25 18:46:03 2001 X@@ -62,6 +62,24 @@ X return(1); X #ifdef TOURIST X } else if (scroll->otyp == T_SHIRT) { X+ static const char *shirt_msgs[] = { X+ "I explored the Dungeons of Doom and all I got was this lousy T-shirt!", X+ "Is that Mjollnir in your pocket or are you just happy to see me?", X+ "It's not the size of your sword, it's how #enhance'd you are with it.", X+ "Madame Elvira's House O' Succubi Lifetime Customer", X+ "Madame Elvira's House O' Succubi Employee of the Month", X+ "Ludios Vault Guards Do It In Small, Dark Rooms", X+ "Yendor Military Soldiers Do It In Large Groups", X+ "I survived Yendor Military Boot Camp", X+ "Ludios Accounting School Intra-Mural Lacrosse Team", X+ "Oracle(TM) Fountains 10th Annual Wet T-Shirt Contest", X+ "Hey, black dragon! Disintegrate THIS!", X+ "I'm With Stupid -->", X+ "Don't blame me, I voted for Izchak!", X+ "Don't Panic", // HHGTTG X+ "Furinkan High School Athletic Dept.", // Ranma 1/2 X+ "Hel-LOOO, Nurse!", // Animaniacs" X+ }; X char buf[BUFSZ]; X int erosion; X X@@ -72,13 +90,7 @@ X u.uconduct.literate++; X if(flags.verbose) X pline("It reads:"); X- Sprintf(buf, "I explored the Dungeons of Doom, %s.", X- Hallucination ? X- (scroll == uarmu ? X- /* (force these two to have identical length) */ X- "and never did any laundry..." : X- "and couldn't find my way out") : X- "but all I got was this lousy T-shirt"); X+ strcpy(buf, shirt_msgs[scroll->o_id % SIZE(shirt_msgs)]); X erosion = greatest_erosion(scroll); X if (erosion) X wipeout_text(buf, END-of-slashem-tty/files/patch-tshirt echo x - slashem-tty/files/sample.slashemrc sed 's/^X//' >slashem-tty/files/sample.slashemrc << 'END-of-slashem-tty/files/sample.slashemrc' X# Sample .slashemrc file X# X X# Window systems X# Options are tty, x11. qt, gtk X# but not all of these are necessarily compiled in XOPTIONS=windowtype:tty X X# names for pets XOPTIONS=catname:Fuzzy XOPTIONS=dogname:Rover XOPTIONS=horsename:Trigger X X# Autopickup options X# Autopickup all the things you would pick up anyway X# In order: money, potions, spellbooks, rings, amulets, X# scrolls, and wands XOPTIONS=autopickup XOPTIONS=pickup_types:$!+="?/ X X# Favorite fruit XOPTIONS=fruit:Strawberry X X# Turn on numberpad movement X# Be sure to turn on numlock or this won't work XOPTIONS=number_pad X X# Show experience on the status line XOPTIONS=showexp X X# Fix inventory letters X# If you aquire an item, drop it, then pick it up again X# it will retain the same inventory letter X# Sort your pack contents by type when viewing your inventory XOPTIONS=fixinv XOPTIONS=sortpack X X# Makes pets more visible X# Don't allow attacking your pet XOPTIONS=hilite_pet XOPTIONS=safe_pet X X# verbose messages in the game XOPTIONS=verbose X X# Ask for confirmation before attacking peaceful creatures XOPTIONS=confirm END-of-slashem-tty/files/sample.slashemrc echo x - slashem-tty/files/patch-config.h sed 's/^X//' >slashem-tty/files/patch-config.h << 'END-of-slashem-tty/files/patch-config.h' X--- include/config.h.good Wed Nov 22 23:18:52 2000 X+++ include/config.h Wed Nov 22 23:29:22 2000 X@@ -176,12 +176,12 @@ X X #ifdef UNIX X /* path and file name extension for compression program */ X-# define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */ X-# define COMPRESS_EXTENSION ".Z" /* compress's extension */ X+/* # define COMPRESS "/usr/bin/compress" */ /* Lempel-Ziv compression */ X+/* # define COMPRESS_EXTENSION ".Z" */ /* compress's extension */ X X /* An example of one alternative you might want to use: */ X-/* # define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */ X-/* # define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */ X+# define COMPRESS "/usr/bin/gzip" /* FSF gzip compression */ X+# define COMPRESS_EXTENSION ".gz" /* normal gzip extension */ X X /* # define COMPRESS "/usr/bin/bzip2" *//* bzip2 compression */ X /* # define COMPRESS_EXTENSION ".bz2" *//* bzip2 extension */ X@@ -195,7 +195,7 @@ X * a tar-like file, thus making a neater installation. See *conf.h X * for detailed configuration. X */ X-/* #define DLB */ /* not supported on all platforms */ X+#define DLB /* not supported on all platforms */ X X /* X * Defining INSURANCE slows down level changes, but allows games that X@@ -214,7 +214,7 @@ X * otherwise it will be the current directory. X */ X # ifndef HACKDIR X-# define HACKDIR "." /* nethack directory */ X+# define HACKDIR "/usr/local/share/slashem-tty" /* nethack directory */ X # endif X X /* END-of-slashem-tty/files/patch-config.h echo x - slashem-tty/files/patch-system.h sed 's/^X//' >slashem-tty/files/patch-system.h << 'END-of-slashem-tty/files/patch-system.h' X--- include/system.h.good Wed Nov 22 23:38:44 2000 X+++ include/system.h Wed Nov 22 23:41:03 2000 X@@ -522,7 +522,7 @@ X E time_t FDECL(time, (time_t *)); X # endif X # else X-E long FDECL(time, (time_t *)); X+E time_t FDECL(time, (time_t *)); X # endif /* ULTRIX */ X X #ifdef VMS END-of-slashem-tty/files/patch-system.h echo x - slashem-tty/files/patch-makefile.top sed 's/^X//' >slashem-tty/files/patch-makefile.top << 'END-of-slashem-tty/files/patch-makefile.top' X--- sys/unix/Makefile.top.good Wed Nov 22 23:48:33 2000 X+++ sys/unix/Makefile.top Wed Nov 22 23:54:33 2000 X@@ -14,18 +14,17 @@ X # MAKE = make X X # make NetHack X-PREFIX = /usr X-GAME = slashem X+GAME = slashem-tty X # GAME = slashem.prg X GAMEUID = games X-GAMEGRP = bin X+GAMEGRP = games X X # Permissions - some places use setgid instead of setuid, for instance X # See also the option "SECURE" in include/config.h X-GAMEPERM = 04755 X-FILEPERM = 0644 X+GAMEPERM = 02755 X+FILEPERM = 0664 X EXEPERM = 0755 X-DIRPERM = 0755 X+DIRPERM = 0775 X X # GAMEDIR also appears in config.h as "HACKDIR". X # VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else GAMEDIR X@@ -38,7 +37,7 @@ X # These must agree with the definitions in unixconf.h X X # Defs. for non file areas support. X-GAMEDIR = $(PREFIX)/local/slashemdir X+GAMEDIR = $(PREFIX)/share/${GAME} X VARDIR = $(GAMEDIR) X FILE_AREA_VAR = $(VARDIR) X FILE_AREA_SAVE = $(VARDIR)/save X@@ -47,7 +46,7 @@ X FILE_AREA_DOC = $(GAMEDIR) X FILE_AREA_BONES = $(FILE_AREA_VAR) X FILE_AREA_LEVL = $(FILE_AREA_VAR) X-SHELLDIR = $(PREFIX)/local/bin X+SHELLDIR = $(PREFIX)/bin X X # Defs. compatible with Linux's FSSTND 1.2 X # FILE_AREA_VAR = /var/lib/games/slashem X@@ -239,7 +238,7 @@ X -e '$$s/.*/nodlb/p' < dat/options` ; \ X $(MAKE) dofiles-$${target-nodlb} X cp src/$(GAME) $(FILE_AREA_UNSHARE) X- cp license doc/Guidebook.txt $(FILE_AREA_DOC) X+ cp license $(FILE_AREA_DOC) X # cp win/Qt/KDE/kslashem.kdelnk $(KDEDIR)/share/applnk/Games X -rm -f $(SHELLDIR)/$(GAME) X sed -e 's;/usr/games/lib/nethackdir;$(FILE_AREA_UNSHARE);' \ END-of-slashem-tty/files/patch-makefile.top echo x - slashem-tty/distinfo sed 's/^X//' >slashem-tty/distinfo << 'END-of-slashem-tty/distinfo' XMD5 (se006e4f3.tar.gz) = bd1e73ba9db3fc4cbb84fa193cb8c3e7 END-of-slashem-tty/distinfo echo x - slashem-tty/pkg-message sed 's/^X//' >slashem-tty/pkg-message << 'END-of-slashem-tty/pkg-message' X==================================================== XA sample .slashemrc file has been copied to X${PREFIX}/share/doc/slashem-tty as sample.slashemrc. XCopy it to your home directory as .slashemrc and Xedit it to taste. XThe options for it are described in X${PREFIX}/share/doc/slashem-tty/Guidebook.txt. X==================================================== END-of-slashem-tty/pkg-message echo x - slashem-tty/Makefile sed 's/^X//' >slashem-tty/Makefile << 'END-of-slashem-tty/Makefile' X# New ports collection makefile for: Slash'Em (tty interface) X# Date created: 15th April 2001 X# Whom: Adam Kranzel (adam@alameda.edu) X# X# $FreeBSD$ X# X XPORTNAME= slashem XPORTVERSION= 0.0.6E.4F.3 XCATEGORIES= games XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} XMASTER_SITE_SUBDIR= slashem XPKGNAMESUFFIX= -tty XDISTNAME= se006e4f3 X XMAINTAINER= adam@alameda.edu X XUSE_GMAKE= yes XMAN6= dgn_comp.6 dlb.6 lev_comp.6 slashem-tty.6 recover.6 X XWRKSRC= ${WRKDIR}/slashem-0.0.6E4F3 X Xpre-configure: X @cd ${WRKSRC}/sys/unix; ${SH} setup.sh X Xpost-patch: X ${PERL} -pi -e "s@/usr/local@${PREFIX}@g" ${WRKSRC}/include/config.h X Xpost-install: X @cd ${WRKSRC}/doc; ${CHMOD} 644 *.6 X @cp ${WRKSRC}/doc/slashem.6 ${WRKSRC}/doc/slashem${PKGNAMESUFFIX}.6 X @cd ${WRKSRC}/doc; PREFIX=${PREFIX} ${MAKE} manpages X.if !defined(NOPORTDOCS) X ${MKDIR} ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} X ${CP} ${WRKSRC}/doc/Guidebook.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX} X ${CP} ${WRKSRC}/slamfaq.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX} X ${CP} ${FILESDIR}/sample.slashemrc ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX} X.endif X ${CAT} pkg-message X X.include END-of-slashem-tty/Makefile echo x - slashem-tty/pkg-descr sed 's/^X//' >slashem-tty/pkg-descr << 'END-of-slashem-tty/pkg-descr' XThis is Slash'Em (super lotsa added stuff hack - extended magic), Xthe only actively maintained variant of NetHack (based on NetHack v 3.3.1). XA good old-fashioned dungeon-crawl with big nasties in the way, treasure Xgalore, and immortality if you succeed. X XWWW: http://slashem.sourceforge.net X X- Adam X adam@alameda.edu END-of-slashem-tty/pkg-descr echo x - slashem-tty/pkg-plist sed 's/^X//' >slashem-tty/pkg-plist << 'END-of-slashem-tty/pkg-plist' Xbin/slashem-tty Xshare/slashem-tty/slashem-tty X@exec mkdir %D/share/slashem-tty/save X@exec chmod -R 775 %D/share/slashem-tty X@exec chmod 2755 %D/share/slashem-tty/save X@exec chown games.games %D/share/slashem-tty/save X@unexec rm -rf %D/share/slashem-tty/save X@exec chmod -R 775 %D/share/doc/slashem-tty Xshare/doc/slashem-tty/Guidebook.txt Xshare/doc/slashem-tty/slamfaq.txt Xshare/doc/slashem-tty/sample.slashemrc Xshare/slashem-tty/license Xshare/slashem-tty/nhshare Xshare/slashem-tty/nhushare X@mode 664 Xshare/slashem-tty/logfile Xshare/slashem-tty/record Xshare/slashem-tty/perm X@dirrm share/slashem-tty X@dirrm share/doc/slashem-tty END-of-slashem-tty/pkg-plist echo x - slashem-tty/pkg-comment sed 's/^X//' >slashem-tty/pkg-comment << 'END-of-slashem-tty/pkg-comment' XA dungeon explorin', slashin', hackin' game END-of-slashem-tty/pkg-comment exit >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message