diff options
-rw-r--r-- | math/xlife/DESCR | 22 | ||||
-rw-r--r-- | math/xlife/Makefile | 32 | ||||
-rw-r--r-- | math/xlife/PLIST | 235 | ||||
-rw-r--r-- | math/xlife/distinfo | 6 | ||||
-rw-r--r-- | math/xlife/patches/patch-aa | 39 | ||||
-rw-r--r-- | math/xlife/patches/patch-ab | 16 |
6 files changed, 350 insertions, 0 deletions
diff --git a/math/xlife/DESCR b/math/xlife/DESCR new file mode 100644 index 00000000000..8de50b6ccf4 --- /dev/null +++ b/math/xlife/DESCR @@ -0,0 +1,22 @@ +Apparently first published in Martin Gardner's column in Scientific +American magazine in the early 1970's, John Horton Conway's "Game of +Life" launched great interest in the nascent field of cellular automata. +The model (for it's not really a "game") manifests surprisingly complex +behavior with only a few simple rules. Many of the technical papers, +articles, and books inspired by the simulation are only now finding +their way onto the World Wide Web. + +Many of the folks who were captivated by the original article would +have done their explorations with pencil and paper. Now with "xlife", +whether you hope to gain profound insight into the nature of life, +the universe, and everything, or whether you just enjoy watching the +"puffer trains" crash into each other, you can explore the simulation +easily, on your workstation. The program supports a nearly infinite +playfield, and allows you to zoom in and zoom out, speed up and slow +down, so you can see all the action. Moreover, it can save and load +patterns, and the package even includes a couple of programs to convert +between popular formats. + +A sample of significant and interesting starting patterns is included, +and a few minutes spent with a search engine will likely turn up lots +and lots more. diff --git a/math/xlife/Makefile b/math/xlife/Makefile new file mode 100644 index 00000000000..6f460a1600e --- /dev/null +++ b/math/xlife/Makefile @@ -0,0 +1,32 @@ +# $NetBSD: Makefile,v 1.1.1.1 2001/12/31 21:32:56 fredb Exp $ +# + +DISTNAME= xlife-5.0 +CATEGORIES= math games +MASTER_SITES= http://www.tuxedo.org/~esr/ + +MAINTAINER= fredb@netbsd.org +HOMEPAGE= http://www.tuxedo.org/~esr/software.html +COMMENT= John Horton Conway's "Game of Life" + +USE_IMAKE= yes +WRKSRC= ${WRKDIR} + +INSTALL_TARGET= install + +pre-build: + ${TOUCH} ${WRKSRC}/collect.man ${WRKSRC}/lifesearchdumb.man + +post-install: +.for m in lifeconv lifesearch xlife + ${INSTALL_MAN} ${WRKSRC}/${m}.man ${PREFIX}/man/man1/${m}.1 + ${INSTALL_MAN} ${WRKSRC}/${m}.0 ${PREFIX}/man/cat1/ +.endfor +.for d in codd life misc wireworld + ${INSTALL_DATA_DIR} ${PREFIX}/share/xlife/${d} + cd ${WRKSRC}/${d}; for l in *.l; do \ + ${INSTALL_DATA} $${l} ${PREFIX}/share/xlife/${d}; \ + done +.endfor + +.include "../../mk/bsd.pkg.mk" diff --git a/math/xlife/PLIST b/math/xlife/PLIST new file mode 100644 index 00000000000..160c3f5337d --- /dev/null +++ b/math/xlife/PLIST @@ -0,0 +1,235 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2001/12/31 21:32:56 fredb Exp $ +bin/collect +bin/lifeconv +bin/lifesearch +bin/lifesearchdumb +bin/xlife +man/cat1/lifeconv.0 +man/cat1/lifesearch.0 +man/cat1/xlife.0 +man/man1/lifeconv.1 +man/man1/lifesearch.1 +man/man1/xlife.1 +share/xlife/codd/echodisc.l +share/xlife/codd/emitter.l +share/xlife/codd/oneway.l +share/xlife/codd/subgate.l +share/xlife/codd/trans456.l +share/xlife/codd/trans7.l +share/xlife/codd/turnoff.l +share/xlife/codd/twolock.l +share/xlife/codd/unicross.l +share/xlife/life/12gliders.l +share/xlife/life/2_ak47.l +share/xlife/life/MWSSpuffer.l +share/xlife/life/acorn.l +share/xlife/life/ak47.l +share/xlife/life/alu.l +share/xlife/life/background1.l +share/xlife/life/baker.l +share/xlife/life/barberpole.l +share/xlife/life/bazz.l +share/xlife/life/beaconmaker.l +share/xlife/life/benchmark.l +share/xlife/life/bheptomino.l +share/xlife/life/bigglider.l +share/xlife/life/billiards.l +share/xlife/life/blinkerpuffer.l +share/xlife/life/blinkership.l +share/xlife/life/blinkership2.l +share/xlife/life/blinkership3.l +share/xlife/life/blockdistance.l +share/xlife/life/blockpusher.l +share/xlife/life/blockpusher2.l +share/xlife/life/blockpusher3.l +share/xlife/life/blockpusher4.l +share/xlife/life/boatcap.l +share/xlife/life/boatmaker.l +share/xlife/life/breeder.l +share/xlife/life/breederpuffer.l +share/xlife/life/breederrake.l +share/xlife/life/bunnies.l +share/xlife/life/centinal.l +share/xlife/life/cheshirecat.l +share/xlife/life/citiesindust.l +share/xlife/life/clappinghands.l +share/xlife/life/clock.l +share/xlife/life/cmu.l +share/xlife/life/cmu2.l +share/xlife/life/cmu3.l +share/xlife/life/collapsecap.l +share/xlife/life/counter.l +share/xlife/life/cow.l +share/xlife/life/cross.l +share/xlife/life/delayloop.l +share/xlife/life/diagfuse.l +share/xlife/life/eaters3.l +share/xlife/life/ex.l +share/xlife/life/expo_grow.l +share/xlife/life/f.l +share/xlife/life/f2.l +share/xlife/life/f3.l +share/xlife/life/fencepost.l +share/xlife/life/figure8.l +share/xlife/life/fisheater.l +share/xlife/life/flasher.l +share/xlife/life/flywheel.l +share/xlife/life/fusebranch.l +share/xlife/life/fusecorner.l +share/xlife/life/fusehinge.l +share/xlife/life/futility.l +share/xlife/life/gardenofeden.l +share/xlife/life/gear.l +share/xlife/life/gen.l +share/xlife/life/glider.l +share/xlife/life/gliderarmyof256.l +share/xlife/life/gliderbackcap.l +share/xlife/life/gliderforecap.l +share/xlife/life/glidergen1.l +share/xlife/life/glidergen2.l +share/xlife/life/glidergen3.l +share/xlife/life/glidergen4.l +share/xlife/life/glidergen5.l +share/xlife/life/glidergen6.l +share/xlife/life/glidergen7.l +share/xlife/life/gliderglidergun.l +share/xlife/life/glidergun.l +share/xlife/life/glidergun2.l +share/xlife/life/glidermesscap.l +share/xlife/life/glidermirror.l +share/xlife/life/gliders1_2.l +share/xlife/life/gliders2_2.l +share/xlife/life/gliders4_4.l +share/xlife/life/glidersidecap.l +share/xlife/life/glidersparcap.l +share/xlife/life/glidertofish.l +share/xlife/life/gourmet.l +share/xlife/life/greymatter1.l +share/xlife/life/gunandeater.l +share/xlife/life/harvester.l +share/xlife/life/horizfuse.l +share/xlife/life/hustler.l +share/xlife/life/j.l +share/xlife/life/kickback.l +share/xlife/life/lambdabomb.l +share/xlife/life/largefish.l +share/xlife/life/line.l +share/xlife/life/longfuse.l +share/xlife/life/longfuse2.l +share/xlife/life/longsnake.l +share/xlife/life/mediumfish.l +share/xlife/life/mediumfishgun.l +share/xlife/life/mediumfishgun2.l +share/xlife/life/mirage.l +share/xlife/life/morejunk.l +share/xlife/life/oscilators.l +share/xlife/life/oscillator1.l +share/xlife/life/oscillator2.l +share/xlife/life/oscillator3.l +share/xlife/life/oscillator6.l +share/xlife/life/oscillator7.l +share/xlife/life/p100.l +share/xlife/life/p120glider.l +share/xlife/life/p24.l +share/xlife/life/p26.l +share/xlife/life/p270.l +share/xlife/life/p28.l +share/xlife/life/p29.l +share/xlife/life/p32.l +share/xlife/life/p32gun.l +share/xlife/life/p47.l +share/xlife/life/p54.l +share/xlife/life/p54shuttle.l +share/xlife/life/p55.l +share/xlife/life/p66.l +share/xlife/life/p72.l +share/xlife/life/p8.l +share/xlife/life/p94.l +share/xlife/life/pentadecathlon.l +share/xlife/life/piecollection.l +share/xlife/life/pifuse.l +share/xlife/life/piston.l +share/xlife/life/piston2.l +share/xlife/life/puffer128.l +share/xlife/life/puffertrain.l +share/xlife/life/pufthinner.l +share/xlife/life/puftoss.l +share/xlife/life/pulsar18-22-20.l +share/xlife/life/pulsar48-56-72.l +share/xlife/life/pulsarpuffer.l +share/xlife/life/pulse.l +share/xlife/life/pulse1.l +share/xlife/life/pulse2.l +share/xlife/life/pump.l +share/xlife/life/r.l +share/xlife/life/rabbit.l +share/xlife/life/rake.l +share/xlife/life/rake2.l +share/xlife/life/rake3.l +share/xlife/life/rake4.l +share/xlife/life/rake5.l +share/xlife/life/rake6.l +share/xlife/life/rake7.l +share/xlife/life/rakecollision.l +share/xlife/life/rakep120b.l +share/xlife/life/rakep120f.l +share/xlife/life/rakep20b.l +share/xlife/life/rakep20f.l +share/xlife/life/rakep24b.l +share/xlife/life/rakep24f.l +share/xlife/life/rakep960b.l +share/xlife/life/rakeshipgun.l +share/xlife/life/randomgun.l +share/xlife/life/recirc.l +share/xlife/life/relay.l +share/xlife/life/round.l +share/xlife/life/rpentomino.l +share/xlife/life/schooloffish.l +share/xlife/life/sglider.l +share/xlife/life/shiningflower.l +share/xlife/life/shuttle.l +share/xlife/life/shuttletrail.l +share/xlife/life/sixgliders.l +share/xlife/life/skyline.l +share/xlife/life/slowship.l +share/xlife/life/slowship2.l +share/xlife/life/slowship3.l +share/xlife/life/smallfish.l +share/xlife/life/smallfishgun.l +share/xlife/life/somejunk.l +share/xlife/life/spark.l +share/xlife/life/spark2.l +share/xlife/life/sparkfuse.l +share/xlife/life/sparktopifuse.l +share/xlife/life/squareblinker.l +share/xlife/life/squarecap.l +share/xlife/life/squaredance.l +share/xlife/life/ss.l +share/xlife/life/ssmgun.l +share/xlife/life/ssmpufp20b.l +share/xlife/life/stargaterepeater.l +share/xlife/life/still.l +share/xlife/life/sun.l +share/xlife/life/sun1.l +share/xlife/life/switchengine.l +share/xlife/life/test.l +share/xlife/life/testtube.l +share/xlife/life/testtubebaby.l +share/xlife/life/thin_rake.l +share/xlife/life/thinblocks.l +share/xlife/life/thunderbird.l +share/xlife/life/thunderbirdfuse.l +share/xlife/life/turbine8.l +share/xlife/life/washerwoman.l +share/xlife/life/wave1.l +share/xlife/life/wideship.l +share/xlife/misc/lloyd.l +share/xlife/wireworld/diode.l +share/xlife/wireworld/flipflop.l +share/xlife/wireworld/or.l +share/xlife/wireworld/test.l +@dirrm share/xlife/codd +@dirrm share/xlife/life +@dirrm share/xlife/misc +@dirrm share/xlife/wireworld +@unexec rmdir %D/share/xlife || true diff --git a/math/xlife/distinfo b/math/xlife/distinfo new file mode 100644 index 00000000000..cfe44078cf0 --- /dev/null +++ b/math/xlife/distinfo @@ -0,0 +1,6 @@ +$NetBSD: distinfo,v 1.1.1.1 2001/12/31 21:32:56 fredb Exp $ + +SHA1 (xlife-5.0.tar.gz) = 168edb2c8bdeb1689fea82c56db76e85aeeed43e +Size (xlife-5.0.tar.gz) = 214220 bytes +SHA1 (patch-aa) = 32eb1bf5067b6d7c81995c14eaca81e206e3ea73 +SHA1 (patch-ab) = 891c098845652ad9f172b3693cdf416685e9a960 diff --git a/math/xlife/patches/patch-aa b/math/xlife/patches/patch-aa new file mode 100644 index 00000000000..254d421620c --- /dev/null +++ b/math/xlife/patches/patch-aa @@ -0,0 +1,39 @@ +$NetBSD: patch-aa,v 1.1.1.1 2001/12/31 21:32:56 fredb Exp $ + +--- Imakefile.orig Thu May 25 07:49:40 1995 ++++ Imakefile +@@ -4,8 +4,9 @@ + + PROGRAMS = xlife lifeconv collect lifesearch lifesearchdumb + +-XLIFEPATSDIR = /usr/local/lib/xlife/ ++XLIFEPATSDIR = ProjectRoot/share/xlife/ + CCOPTIONS=-DLIFEDIR=\"$(XLIFEPATSDIR)\" ++CURSES_LIB=-lcurses -ltermcap + + SRCS1 = \ + cell.c\ +@@ -85,8 +86,8 @@ + ComplexProgramTarget_1(xlife, $(XLIB),) + ComplexProgramTarget_2(lifeconv,,) + ComplexProgramTarget_3(collect,,) +-#ComplexProgramTarget_4(lifesearch,,) +-#ComplexProgramTarget_5(lifesearchdumb,,) ++ComplexProgramTarget_4(lifesearch, $(CURSES_LIB),) ++ComplexProgramTarget_5(lifesearchdumb, $(CURSES_LIB),) + + install.patterns: + @case '${MFLAGS}' in *[i]*) set +e;; esac; \ +@@ -99,12 +100,6 @@ + # 9x16 font. This is a useful property --- try to preserve it. + help.h: help.text + sed <help.text -e '/\\[^n]/s//\\&/g' -e '/.*/s//"&",/' >help.h +- +-# This should be generated! +-lifesearchdumb: search.o interact.o dumbtty.o +- $(CC) $(CFLAGS) -o lifesearchdumb search.o interact.o dumbtty.o +-lifesearch: search.o interact.o cursestty.o +- $(CC) $(CFLAGS) -o lifesearch search.o interact.o cursestty.o -L/usr/local/lib -lcurses -ltermcap + + TAGS: $(SRCS) + etags $(SRCS) diff --git a/math/xlife/patches/patch-ab b/math/xlife/patches/patch-ab new file mode 100644 index 00000000000..4fe300ede36 --- /dev/null +++ b/math/xlife/patches/patch-ab @@ -0,0 +1,16 @@ +$NetBSD: patch-ab,v 1.1.1.1 2001/12/31 21:32:56 fredb Exp $ + +--- data.h.orig Mon Jun 17 15:06:51 1996 ++++ data.h +@@ -84,9 +84,8 @@ + GLOBAL void setcolor(int val, unsigned long x, unsigned long y); + + /* UNIX interface */ +-extern int sys_nerr, errno; +-extern char *sys_errlist[]; +-#define SYSERR sys_errlist[(errno > sys_nerr? 0 : errno)] ++#include <errno.h> ++#define SYSERR strerror(errno) + + /* X I/O state information */ + GLOBAL Display *disp; |