[csw-devel] SF.net SVN: gar:[2940] csw/mgar/pkg

dmichelsen at users.sourceforge.net dmichelsen at users.sourceforge.net
Fri Jan 30 14:45:08 CET 2009


Revision: 2940
          http://gar.svn.sourceforge.net/gar/?rev=2940&view=rev
Author:   dmichelsen
Date:     2009-01-30 13:45:07 +0000 (Fri, 30 Jan 2009)

Log Message:
-----------
spider: Initial commit of legacy build description

Added Paths:
-----------
    csw/mgar/pkg/spider/
    csw/mgar/pkg/spider/branches/
    csw/mgar/pkg/spider/tags/
    csw/mgar/pkg/spider/trunk/
    csw/mgar/pkg/spider/trunk/Makefile
    csw/mgar/pkg/spider/trunk/files/
    csw/mgar/pkg/spider/trunk/files/CSWpackage.gspec
    csw/mgar/pkg/spider/trunk/legacy/
    csw/mgar/pkg/spider/trunk/legacy/BUILD.NOTES
    csw/mgar/pkg/spider/trunk/legacy/README
    csw/mgar/pkg/spider/trunk/legacy/copyright
    csw/mgar/pkg/spider/trunk/legacy/depend
    csw/mgar/pkg/spider/trunk/legacy/pkginfo
    csw/mgar/pkg/spider/trunk/legacy/prototype
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/CJSA.install
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Imakefile
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/MANIFEST
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile.sunpro
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/PATCH.zoo
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/README
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/SPIDERv1r1p1a.zoo
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/assert.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/copyright.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/defs.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.controls
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.examples
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.intro
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.misc
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.rules
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.summary
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/events.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/face.bm
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/gfx.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/globals.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/main.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/movelog.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/patchlevel.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/rank.bm
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/spider.bm
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/spider.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/spider.info
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/spider.man
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/suit.bm
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/util.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/version.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/windows.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xaw_stubs.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xaw_ui.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xaw_ui.h
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xv_stubs.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xv_ui.c
    csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/xv_ui.h
    csw/mgar/pkg/spider/trunk/legacy/src/
    csw/mgar/pkg/spider/trunk/legacy/src/Makefile
    csw/mgar/pkg/spider/trunk/legacy/src/spider-1.1.1.tar.gz


Property changes on: csw/mgar/pkg/spider/trunk
___________________________________________________________________
Added: svn:ignore
   + cookies
download
work


Added: svn:externals
   + gar https://gar.svn.sf.net/svnroot/gar/csw/mgar/gar/v2


Added: csw/mgar/pkg/spider/trunk/Makefile
===================================================================
--- csw/mgar/pkg/spider/trunk/Makefile	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/Makefile	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,23 @@
+GARNAME = package
+GARVERSION = 1.0
+CATEGORIES = category
+
+DESCRIPTION = Brief description
+define BLURB
+  Long description
+endef
+
+MASTER_SITES = 
+DISTFILES  = $(GARNAME)-$(GARVERSION).tar.gz
+DISTFILES += $(call admfiles,CSWpackage,)
+
+# We define upstream file regex so we can be notifed of new upstream software release
+UFILES_REGEX = -(\d+(?:\.\d+)*).tar.gz
+
+# If the url used to check for software update is different of MASTER_SITES, then 
+# uncomment the next line. Otherwise it is set by default to the value of MASTER_SITES
+# UPSTREAM_MASTER_SITES = 
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+include gar/category.mk

Added: csw/mgar/pkg/spider/trunk/files/CSWpackage.gspec
===================================================================
--- csw/mgar/pkg/spider/trunk/files/CSWpackage.gspec	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/files/CSWpackage.gspec	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,4 @@
+%var            bitname package
+%var            pkgname CSWpackage
+%include        url file://%{PKGLIB}/csw_dyndepend.gspec
+%copyright      url file://%{WORKSRC}/LICENSE

Added: csw/mgar/pkg/spider/trunk/legacy/BUILD.NOTES
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/BUILD.NOTES	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/BUILD.NOTES	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,32 @@
+###############################################################################
+# FILE:		BUILD.NOTES
+#
+# DESCRIPTION:	Build notes for the SPIDER package.  These are notes concerning
+#		the compiling and testing of this package.
+#
+#		Use the detailed instructions in the README file for package
+#		creation.
+#
+# PACKAGE:      CSWspider
+#
+# CUR VER:	Spider Version 1.1.1,REV=2006.11.18
+#
+# REVISION:     11-18-06
+###############################################################################
+
+-------------------------------------------------------------------------------
+HISTORY:
+-------------------------------------------------------------------------------
+Date:		Version:		Notes:
+-------------------------------------------------------------------------------
+10-23-04	1.1.1			Initial package build
+11-18-06	1.1.1,REV=2006.11.18	New release with 150 perfect games
+-------------------------------------------------------------------------------
+
+-------------------------------------------------------------------------------
+SPARC & INTEL:
+-------------------------------------------------------------------------------
+
+make:
+
+    * Numerous non-fatal warning messages are issues  [too many to list]

Added: csw/mgar/pkg/spider/trunk/legacy/README
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/README	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/README	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,162 @@
+###############################################################################
+# FILE:		README
+#
+# DESCRIPTION:	Instructions for creating the SPIDER package.  Refer to the
+#		BUILD.NOTES file for specific information about the actual
+#		build and testing of the current version.
+#
+# PACKAGE:      CSWspider
+#
+# REVISION:     11-18-06
+#
+# NOTES:	* Primary source code is located at:
+#		    - ftp://ftp.uu.net/usenet/comp.sources.x/volume7/spider
+#		* Patch #2 is located at:
+#		    - ftp://ftp.uu.net/usenet/comp.sources.x/volume10/spider
+###############################################################################
+
+-------------------------------------------------------------------------------
+01: Switch to the correct build machine
+-------------------------------------------------------------------------------
+
+	SPARC:
+	  or
+	INTEL:
+
+-------------------------------------------------------------------------------
+02: Update the pkginfo file
+-------------------------------------------------------------------------------
+
+	cd ${HOME}/pkgs/spider
+	vi pkginfo
+	    [edit the version info: must include REV= portion if applicable]
+	    [edit the ARCH line for either a 'sparc' or 'i386' build]
+
+-------------------------------------------------------------------------------
+03: Unpack and/or download the software and game files
+-------------------------------------------------------------------------------
+	cd src
+	make unpack
+
+-------------------------------------------------------------------------------
+04: Update the copyright file   (only needs to be done once per release)
+-------------------------------------------------------------------------------
+
+	cd spider*[0-9]
+	cp copyright.h ${HOME}/pkgs/spider/copyright
+
+-------------------------------------------------------------------------------
+05: Set the proper build environment
+-------------------------------------------------------------------------------
+
+	SPARC:	    export CC='cc -xarch=v8 -xstrconst -xildoff'
+	  or
+	INTEL:	    export CC='cc -xtarget=pentium -xstrconst -xildoff' 
+
+-------------------------------------------------------------------------------
+06: Compile the software
+-------------------------------------------------------------------------------
+
+	xmkmf
+	make clean
+	make
+
+-------------------------------------------------------------------------------
+07: Install executable in a staging directory
+-------------------------------------------------------------------------------
+
+	rm -rf cswstage
+	stagepkg INSTALL_ROOT=$PWD/cswstage install-csw
+
+-------------------------------------------------------------------------------
+08: Update the prototype file    (2nd build can use existing prototype file)
+-------------------------------------------------------------------------------
+
+	cd cswstage
+	grep '^[df]' prototype | grep -v 'root bin'
+	    [check 'f'iles & 'd'irs have owner/group 'root bin']
+	vi prototype
+	    [if necessary ...]
+	    	[change all owners/groups to 'root bin']
+		[change file permissions from 0444 to 0644]
+		[change file permissions from 0555 to 0755]
+	    [add following 'i' line as third line in file]
+	    	i depend
+
+-------------------------------------------------------------------------------
+09: Check changes in prototype from previous release and update file
+-------------------------------------------------------------------------------
+
+	diff ${HOME}/pkgs/spider/prototype prototype | less -+e
+	    [if any odd differences, investigate and fix]
+
+	cp prototype ${HOME}/pkgs/spider
+
+-------------------------------------------------------------------------------
+10: Create the package spider-*-SunOS5.8-{sparc,386i}-CSW.pkg.gz
+-------------------------------------------------------------------------------
+
+	cd ${HOME}/pkgs/spider
+	createpkg -r ${HOME}/pkgs/spider/src/spider*[0-9]/cswstage
+
+	  [The package name should follow this format:]
+
+	  <name>-<version>[,REV=YYYY.MM.DD]-<OSname><OSrel>-<arch>-CSW.pkg.gz
+
+-------------------------------------------------------------------------------
+11: Examine list of libraries used to see if any new CSW dependencies exist
+-------------------------------------------------------------------------------
+
+    If a new library is found, check package dependency:
+
+	pkgchk -l -p /opt/csw/lib/lib<...>
+   
+    Add entry to the depend file:
+
+        P	CSW<pkg>
+
+    Now repeat from step 09 and recreate the package
+
+-------------------------------------------------------------------------------
+12: Rebuild again on other build platform
+-------------------------------------------------------------------------------
+
+     Start over and rebuild the Solaris-x86 version
+
+-------------------------------------------------------------------------------
+13: Clean up
+-------------------------------------------------------------------------------
+
+    cd ${HOME}/pkgs/spider/src/spider*[0-9]
+    rm -rf cswstage
+    make clean
+
+-------------------------------------------------------------------------------
+14: Archive source code
+-------------------------------------------------------------------------------
+
+    cd ..
+    make pack
+    make clean
+
+-------------------------------------------------------------------------------
+15: Copy the new package to the installation area
+-------------------------------------------------------------------------------
+
+    cd pkgs/spider
+    cp spider-*.pkg.gz  /export/medusa/newpkgs
+
+-------------------------------------------------------------------------------
+16: Copy the source code tarball to the holding area
+-------------------------------------------------------------------------------
+
+    cd src
+    cp  spider-*.gz  /export/medusa/src
+
+-------------------------------------------------------------------------------
+17: Notify package administrator
+-------------------------------------------------------------------------------
+
+    * Email phil at bolthole.com (Philip Brown) describing the update
+
+-----------------------------------------------------------------------------

Added: csw/mgar/pkg/spider/trunk/legacy/copyright
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/copyright	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/copyright	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,108 @@
+/*
+ * Copyright 1990 Heather Rose and Sun Microsystems, Inc.
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that copyright
+ * notice and this permission notice appear in supporting documentation, and
+ * that the names of Donald Woods and Sun Microsystems not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  Heather Rose and Sun Microsystems not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  Heather Rose and Sun Microsystems make
+ * no representations about the suitability of this software for any purpose.
+ * It is provided "as is" without express or implied warranty.
+ *
+ * THE ABOVE-NAMED DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO EVENT
+ * SHALL HEATHER ROSE OR SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+ * OF THIS SOFTWARE.
+ *
+ * Author:
+ *		Heather Rose
+ *		hrose at sun.com
+ *
+ *		Sun Microsystems, Inc.
+ *		2550 Garcia Avenue
+ *		Mountain View, CA  94043
+ */
+
+/*
+ * Copyright 1990 David Lemke and Network Computing Devices
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Network Computing Devices not be 
+ * used in advertising or publicity pertaining to distribution of the 
+ * software without specific, written prior permission.  Network Computing 
+ * Devices makes no representations about the suitability of this software 
+ * for any purpose.  It is provided "as is" without express or implied 
+ * warranty.
+ *
+ * NETWORK COMPUTING DEVICES DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS 
+ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
+ * IN NO EVENT SHALL NETWORK COMPUTING DEVICES BE LIABLE FOR ANY SPECIAL,
+ * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 
+ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE 
+ * OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Author:  	
+ *		Dave Lemke
+ *		lemke at ncd.com
+ *
+ *		Network Computing Devices, Inc
+ *		350 North Bernardo Ave
+ *		Mountain View, CA 94043
+ *
+ *	@(#)copyright.h	2.2	90/04/27
+ *
+ */
+
+/*
+% Copyright (c) 1989, Donald R. Woods and Sun Microsystems, Inc.
+%
+% Permission to use, copy, modify, distribute, and sell this software and its
+% documentation for any purpose is hereby granted without fee, provided that
+% the above copyright notice appear in all copies and that both that copyright
+% notice and this permission notice appear in supporting documentation, and
+% that the names of Donald Woods and Sun Microsystems not be used in
+% advertising or publicity pertaining to distribution of the software without
+% specific, written prior permission.  Donald Woods and Sun Microsystems make
+% no representations about the suitability of this software for any purpose.
+% It is provided "as is" without express or implied warranty.
+%
+% THE ABOVE-NAMED DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+% INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO EVENT
+% SHALL DONALD WOODS OR SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+% CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+% DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+% TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+% OF THIS SOFTWARE.
+%
+% History: Spider is a solitaire card game that can be found in various books
+% of same; the rules are presumed to be in the public domain.  The author's
+% first computer implementation was on the Stanford Artificial Intelligence Lab
+% system (SAIL).  It was later ported to the Xerox Development Environment.
+% The card images are loosely based on scanned-in images but were largely
+% redrawn by the author with help from Larry Rosenberg.
+%
+% This program is written entirely in NeWS and runs on OPEN WINDOWS 1.0.
+% It could be made to run much faster if parts of it were written in C, using
+% NeWS mainly for its display and input capabilities, but that is left as an
+% exercise for the reader.  Spider may also run with little or no modification
+% on subsequent releases of OPEN WINDOWS, but no guarantee is made on this
+% point (nor any other; see above!).  To run Spider, feed this file to 'psh'.
+%
+% Author:	Don Woods
+%		woods at sun.com
+%
+%		Sun Microsystems, Inc.
+%		2550 Garcia Avenue
+%		Mountain View, CA  94043
+*/

Added: csw/mgar/pkg/spider/trunk/legacy/depend
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/depend	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/depend	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1 @@
+P	CSWcommon

Added: csw/mgar/pkg/spider/trunk/legacy/pkginfo
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/pkginfo	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/pkginfo	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,9 @@
+PKG=CSWspider
+NAME=spider - Solitaire Card Game
+VERSION=1.1.1,REV=2006.11.18
+ARCH=i386
+CATEGORY=application
+CSW_CATEGORY="fun, user"
+VENDOR=ftp://ftp.uu.net/usenet/comp.sources.x/ - packaged for CSW by C. Jeffery Small
+HOTLINE=http://www.blastwave.org/bugtrack/
+EMAIL=jeff at blastwave.org

Added: csw/mgar/pkg/spider/trunk/legacy/prototype
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/prototype	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/prototype	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,169 @@
+i pkginfo
+i copyright
+i depend
+d none /opt/csw/share 0755 root bin
+d none /opt/csw/share/man 0755 root bin
+d none /opt/csw/share/man/man6 0755 root bin
+f none /opt/csw/share/man/man6/spider.6 0644 root bin
+d none /opt/csw/share/spider 0755 root bin
+d none /opt/csw/share/spider/help 0755 root bin
+f none /opt/csw/share/spider/help/doc.controls 0644 root bin
+f none /opt/csw/share/spider/help/doc.examples 0644 root bin
+f none /opt/csw/share/spider/help/doc.intro 0644 root bin
+f none /opt/csw/share/spider/help/doc.misc 0644 root bin
+f none /opt/csw/share/spider/help/doc.rules 0644 root bin
+f none /opt/csw/share/spider/help/doc.summary 0644 root bin
+d none /opt/csw/share/spider/games 0755 root bin
+f none /opt/csw/share/spider/games/README 0644 root bin
+f none /opt/csw/share/spider/games/1000.001 0644 root bin
+f none /opt/csw/share/spider/games/1000.002 0644 root bin
+f none /opt/csw/share/spider/games/1000.003 0644 root bin
+f none /opt/csw/share/spider/games/1000.004 0644 root bin
+f none /opt/csw/share/spider/games/1000.005 0644 root bin
+f none /opt/csw/share/spider/games/1000.006 0644 root bin
+f none /opt/csw/share/spider/games/1000.007 0644 root bin
+f none /opt/csw/share/spider/games/1000.008 0644 root bin
+f none /opt/csw/share/spider/games/1000.009 0644 root bin
+f none /opt/csw/share/spider/games/1000.010 0644 root bin
+f none /opt/csw/share/spider/games/1000.011 0644 root bin
+f none /opt/csw/share/spider/games/1000.012 0644 root bin
+f none /opt/csw/share/spider/games/1000.013 0644 root bin
+f none /opt/csw/share/spider/games/1000.014 0644 root bin
+f none /opt/csw/share/spider/games/1000.015 0644 root bin
+f none /opt/csw/share/spider/games/1000.016 0644 root bin
+f none /opt/csw/share/spider/games/1000.017 0644 root bin
+f none /opt/csw/share/spider/games/1000.018 0644 root bin
+f none /opt/csw/share/spider/games/1000.019 0644 root bin
+f none /opt/csw/share/spider/games/1000.020 0644 root bin
+f none /opt/csw/share/spider/games/1000.021 0644 root bin
+f none /opt/csw/share/spider/games/1000.022 0644 root bin
+f none /opt/csw/share/spider/games/1000.023 0644 root bin
+f none /opt/csw/share/spider/games/1000.024 0644 root bin
+f none /opt/csw/share/spider/games/1000.025 0644 root bin
+f none /opt/csw/share/spider/games/1000.026 0644 root bin
+f none /opt/csw/share/spider/games/1000.027 0644 root bin
+f none /opt/csw/share/spider/games/1000.028 0644 root bin
+f none /opt/csw/share/spider/games/1000.029 0644 root bin
+f none /opt/csw/share/spider/games/1000.030 0644 root bin
+f none /opt/csw/share/spider/games/1000.031 0644 root bin
+f none /opt/csw/share/spider/games/1000.032 0644 root bin
+f none /opt/csw/share/spider/games/1000.033 0644 root bin
+f none /opt/csw/share/spider/games/1000.034 0644 root bin
+f none /opt/csw/share/spider/games/1000.035 0644 root bin
+f none /opt/csw/share/spider/games/1000.036 0644 root bin
+f none /opt/csw/share/spider/games/1000.037 0644 root bin
+f none /opt/csw/share/spider/games/1000.038 0644 root bin
+f none /opt/csw/share/spider/games/1000.039 0644 root bin
+f none /opt/csw/share/spider/games/1000.040 0644 root bin
+f none /opt/csw/share/spider/games/1000.041 0644 root bin
+f none /opt/csw/share/spider/games/1000.042 0644 root bin
+f none /opt/csw/share/spider/games/1000.043 0644 root bin
+f none /opt/csw/share/spider/games/1000.044 0644 root bin
+f none /opt/csw/share/spider/games/1000.045 0644 root bin
+f none /opt/csw/share/spider/games/1000.046 0644 root bin
+f none /opt/csw/share/spider/games/1000.047 0644 root bin
+f none /opt/csw/share/spider/games/1000.048 0644 root bin
+f none /opt/csw/share/spider/games/1000.049 0644 root bin
+f none /opt/csw/share/spider/games/1000.050 0644 root bin
+f none /opt/csw/share/spider/games/1000.051 0644 root bin
+f none /opt/csw/share/spider/games/1000.052 0644 root bin
+f none /opt/csw/share/spider/games/1000.053 0644 root bin
+f none /opt/csw/share/spider/games/1000.054 0644 root bin
+f none /opt/csw/share/spider/games/1000.055 0644 root bin
+f none /opt/csw/share/spider/games/1000.056 0644 root bin
+f none /opt/csw/share/spider/games/1000.057 0644 root bin
+f none /opt/csw/share/spider/games/1000.058 0644 root bin
+f none /opt/csw/share/spider/games/1000.059 0644 root bin
+f none /opt/csw/share/spider/games/1000.060 0644 root bin
+f none /opt/csw/share/spider/games/1000.061 0644 root bin
+f none /opt/csw/share/spider/games/1000.062 0644 root bin
+f none /opt/csw/share/spider/games/1000.063 0644 root bin
+f none /opt/csw/share/spider/games/1000.064 0644 root bin
+f none /opt/csw/share/spider/games/1000.065 0644 root bin
+f none /opt/csw/share/spider/games/1000.066 0644 root bin
+f none /opt/csw/share/spider/games/1000.067 0644 root bin
+f none /opt/csw/share/spider/games/1000.068 0644 root bin
+f none /opt/csw/share/spider/games/1000.069 0644 root bin
+f none /opt/csw/share/spider/games/1000.070 0644 root bin
+f none /opt/csw/share/spider/games/1000.071 0644 root bin
+f none /opt/csw/share/spider/games/1000.072 0644 root bin
+f none /opt/csw/share/spider/games/1000.073 0644 root bin
+f none /opt/csw/share/spider/games/1000.074 0644 root bin
+f none /opt/csw/share/spider/games/1000.075 0644 root bin
+f none /opt/csw/share/spider/games/1000.076 0644 root bin
+f none /opt/csw/share/spider/games/1000.077 0644 root bin
+f none /opt/csw/share/spider/games/1000.078 0644 root bin
+f none /opt/csw/share/spider/games/1000.079 0644 root bin
+f none /opt/csw/share/spider/games/1000.080 0644 root bin
+f none /opt/csw/share/spider/games/1000.081 0644 root bin
+f none /opt/csw/share/spider/games/1000.082 0644 root bin
+f none /opt/csw/share/spider/games/1000.083 0644 root bin
+f none /opt/csw/share/spider/games/1000.084 0644 root bin
+f none /opt/csw/share/spider/games/1000.085 0644 root bin
+f none /opt/csw/share/spider/games/1000.086 0644 root bin
+f none /opt/csw/share/spider/games/1000.087 0644 root bin
+f none /opt/csw/share/spider/games/1000.088 0644 root bin
+f none /opt/csw/share/spider/games/1000.089 0644 root bin
+f none /opt/csw/share/spider/games/1000.090 0644 root bin
+f none /opt/csw/share/spider/games/1000.091 0644 root bin
+f none /opt/csw/share/spider/games/1000.092 0644 root bin
+f none /opt/csw/share/spider/games/1000.093 0644 root bin
+f none /opt/csw/share/spider/games/1000.094 0644 root bin
+f none /opt/csw/share/spider/games/1000.095 0644 root bin
+f none /opt/csw/share/spider/games/1000.096 0644 root bin
+f none /opt/csw/share/spider/games/1000.097 0644 root bin
+f none /opt/csw/share/spider/games/1000.098 0644 root bin
+f none /opt/csw/share/spider/games/1000.099 0644 root bin
+f none /opt/csw/share/spider/games/1000.100 0644 root bin
+f none /opt/csw/share/spider/games/1000.101 0644 root bin
+f none /opt/csw/share/spider/games/1000.102 0644 root bin
+f none /opt/csw/share/spider/games/1000.103 0644 root bin
+f none /opt/csw/share/spider/games/1000.104 0644 root bin
+f none /opt/csw/share/spider/games/1000.105 0644 root bin
+f none /opt/csw/share/spider/games/1000.106 0644 root bin
+f none /opt/csw/share/spider/games/1000.107 0644 root bin
+f none /opt/csw/share/spider/games/1000.108 0644 root bin
+f none /opt/csw/share/spider/games/1000.109 0644 root bin
+f none /opt/csw/share/spider/games/1000.110 0644 root bin
+f none /opt/csw/share/spider/games/1000.111 0644 root bin
+f none /opt/csw/share/spider/games/1000.112 0644 root bin
+f none /opt/csw/share/spider/games/1000.113 0644 root bin
+f none /opt/csw/share/spider/games/1000.114 0644 root bin
+f none /opt/csw/share/spider/games/1000.115 0644 root bin
+f none /opt/csw/share/spider/games/1000.116 0644 root bin
+f none /opt/csw/share/spider/games/1000.117 0644 root bin
+f none /opt/csw/share/spider/games/1000.118 0644 root bin
+f none /opt/csw/share/spider/games/1000.119 0644 root bin
+f none /opt/csw/share/spider/games/1000.120 0644 root bin
+f none /opt/csw/share/spider/games/1000.121 0644 root bin
+f none /opt/csw/share/spider/games/1000.122 0644 root bin
+f none /opt/csw/share/spider/games/1000.123 0644 root bin
+f none /opt/csw/share/spider/games/1000.124 0644 root bin
+f none /opt/csw/share/spider/games/1000.125 0644 root bin
+f none /opt/csw/share/spider/games/1000.126 0644 root bin
+f none /opt/csw/share/spider/games/1000.127 0644 root bin
+f none /opt/csw/share/spider/games/1000.128 0644 root bin
+f none /opt/csw/share/spider/games/1000.129 0644 root bin
+f none /opt/csw/share/spider/games/1000.130 0644 root bin
+f none /opt/csw/share/spider/games/1000.131 0644 root bin
+f none /opt/csw/share/spider/games/1000.132 0644 root bin
+f none /opt/csw/share/spider/games/1000.133 0644 root bin
+f none /opt/csw/share/spider/games/1000.134 0644 root bin
+f none /opt/csw/share/spider/games/1000.135 0644 root bin
+f none /opt/csw/share/spider/games/1000.136 0644 root bin
+f none /opt/csw/share/spider/games/1000.137 0644 root bin
+f none /opt/csw/share/spider/games/1000.138 0644 root bin
+f none /opt/csw/share/spider/games/1000.139 0644 root bin
+f none /opt/csw/share/spider/games/1000.140 0644 root bin
+f none /opt/csw/share/spider/games/1000.141 0644 root bin
+f none /opt/csw/share/spider/games/1000.142 0644 root bin
+f none /opt/csw/share/spider/games/1000.143 0644 root bin
+f none /opt/csw/share/spider/games/1000.144 0644 root bin
+f none /opt/csw/share/spider/games/1000.145 0644 root bin
+f none /opt/csw/share/spider/games/1000.146 0644 root bin
+f none /opt/csw/share/spider/games/1000.147 0644 root bin
+f none /opt/csw/share/spider/games/1000.148 0644 root bin
+f none /opt/csw/share/spider/games/1000.149 0644 root bin
+f none /opt/csw/share/spider/games/1000.150 0644 root bin
+d none /opt/csw/bin 0755 root bin
+f none /opt/csw/bin/spider 0755 root bin

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/CJSA.install
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/CJSA.install	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/CJSA.install	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,6 @@
+set -x
+make install
+make install.man
+make install.doc
+chown -R games.games /usr/local/Games/bin/spider
+chown -R games.games /usr/local/Games/lib/spider


Property changes on: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/CJSA.install
___________________________________________________________________
Added: svn:executable
   + *

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Imakefile
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Imakefile	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Imakefile	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,320 @@
+/**/# Run imake -DUseInstalled -I/usr/lib/X11/config to make a Makefile.
+/**/# This is an R4 style Imakefile, so will need the R4 config files to
+/**/# to make a Makefile.  It also assume that X11 is installed in /usr/lib.
+
+        SHAR = shar -a
+        COMPRESS = compress
+        BTOA = btoa
+        SPLIT = split
+        CAT = cat
+/***** Note: probably want to define this to be something else *****/
+        HELPDIR = /usr/local/Games/lib/spider
+
+/***** Note:  Used to over-ride some declarations in the default Imakefile
+              configurations.  If you want to use some of these things, then
+              set OverrideDefs to YES below and change the corresponding
+              definitions to what you would like them to be below.  Delete
+              or comment out those you do not wish to use  *****/
+#ifndef OverrideDefs
+#define OverrideDefs YES
+#endif
+
+#if OverrideDefs
+
+# ifdef ManSuffix
+#  undef ManSuffix
+#  define ManSuffix 6
+# else
+#  define ManSuffix 6
+# endif
+        MANSUFFIX = ManSuffix
+        MANDIR = /usr/local/Games/man/man$(MANSUFFIX)
+        BINDIR = /usr/local/Games/bin
+        MKDIRHIER = /usr/openwin/bin/mkdirhier
+
+#endif /* OverrideDefs */
+
+/***** Note:  if your OS or libc does not have usleep defined, set this
+              to YES.  (SunOS is one that does have usleep in libc) *****/
+#ifndef NeedsLocalUsleep
+#define NeedsLocalUsleep NO
+#endif
+
+/***** Note:  if your OS or libc does not have strdup defined, set this
+              to YES.  (SunOS is one that does have strdup in libc) *****/
+#ifndef NeedsLocalStrdup
+#define NeedsLocalStrdup NO
+#endif
+
+/***** Note:  only need XViewHasOlgx when using XView 2.0 or greater *****/
+#ifndef XViewNeedsOlgx
+#define XViewNeedsOlgx YES
+#endif
+
+/***** Note:  cannot have CompileXlibOnly, CompileXView, and CompileXAW 
+              all be true.  Need to pick one *****/
+#ifndef CompileXlibOnly
+#define CompileXlibOnly NO
+#endif
+
+#ifndef CompileXView
+#define CompileXView NO
+#endif
+
+#ifndef CompileXAW
+#define CompileXAW YES
+#endif
+
+#if CompileXlibOnly
+# if CompileXView
+#  undef CompileXView
+# endif
+# if CompileXAW
+#  undef CompileXAW
+# endif
+#elif CompileXView
+# if CompileXAW
+#  undef CompileXAW
+# endif
+#endif
+
+/***** Note:  cannot have both Round Cards and Small Cards be true *****/
+#ifndef RoundCards
+#define RoundCards YES
+#endif
+
+#ifndef SmallCards
+#define SmallCards NO
+#endif
+
+#if SmallCards
+# if RoundCards
+#  undef RoundCards
+# endif
+#endif
+
+#if CompileXView
+/**/# If these are not defined in the site.def file, define them now.
+/**/# set up compile time dependencies for XView clients.
+        # XVTOP = $(XVIEWHOME)
+        XVTOP = $(OPENWINHOME)
+        XVLIBSRC = $(XVTOP)/lib
+# if UseInstalled
+        DEPXVIEWLIB =
+        DEPOLGXLIB =
+# else
+        DEPXVIEWLIB = $(XVLIBSRC)/libxview.a
+#  if XViewNeedsOlgx
+        DEPOLGXLIB = $(XVLIBSRC)/libolgx.a
+#  else
+        DEPOLGXLIB =
+#  endif
+# endif
+        XVIEWLIB = -L$(XVLIBSRC) -lxview
+# if XViewNeedsOlgx
+        OLGXLIB = -L$(XVLIBSRC) -lolgx
+# else
+        OLGXLIB =
+# endif
+#endif /* CompileXView */
+
+        KL_DIST = main.c
+#if CompileXlibOnly
+# if RoundCards
+        DEPLIBS = $(DEPXMULIB) $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XMULIB) $(XLIB)
+# else
+        DEPLIBS = $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XLIB)
+# endif
+        TKOBJS = main.o
+ 
+        TKSRCS = main.c
+ 
+        TKHEADERS = 
+ 
+        TKBITMAPS = 
+ 
+        TKDOCS = 
+
+        TKDEFINES = -DKITLESS
+ 
+        TKINCLUDES = 
+
+        TARGET = spider
+#endif /* CompileXlibOnly */
+
+        XVIEW_DIST = xv_ui.c xv_stubs.c xv_ui.h spider.info
+#if CompileXView
+# if RoundCards
+        DEPLIBS = $(DEPXVIEWLIB) $(DEPOLGXLIB) $(DEPXMULIB) $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XVIEWLIB) $(OLGXLIB) $(XMULIB) $(XLIB)
+# else
+        DEPLIBS = $(DEPXVIEWLIB) $(DEPOLGXLIB) $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XVIEWLIB) $(OLGXLIB) $(XLIB)
+# endif
+        TKOBJS = xv_ui.o xv_stubs.o 
+
+        TKSRCS = xv_ui.c xv_stubs.c
+
+        TKHEADERS = xv_ui.h
+
+        TKBITMAPS = 
+
+        TKDOCS = spider.info 
+
+        TKDEFINES = -DXVIEW
+
+        TKINCLUDES = -I$(XVTOP)/include 
+
+        TARGET = spider
+#endif /* CompileXView */
+
+        XAW_DIST = xaw_ui.c xaw_stubs.c xaw_ui.h
+#if CompileXAW
+        DEPLIBS = $(DEPXAWLIB) $(DEPXTOOLLIB) $(DEPXMULIB) $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XAWLIB) $(XTOOLLIB) $(XMULIB) $(XLIB)
+
+        TKOBJS = xaw_ui.o xaw_stubs.o
+
+        TKSRCS = xaw_ui.c xaw_stubs.c
+
+        TKHEADERS = xaw_ui.h
+
+        TKBITMAPS = 
+
+        TKDOCS =
+
+        TKDEFINES = -DXAW 
+
+        TKINCLUDES = 
+
+        TARGET = spider
+#endif /* CompileXAW */
+
+BASE_OBJS = gfx.o spider.o events.o windows.o movelog.o util.o version.o
+OBJS = $(BASE_OBJS) $(TKOBJS)
+
+BASE_SRCS = gfx.c spider.c events.c windows.c movelog.c util.c version.c
+SRCS =  $(BASE_SRCS) $(TKSRCS)
+
+BASE_HEADERS = globals.h defs.h assert.h
+HEADERS = $(BASE_HEADERS) $(TKHEADERS)
+
+BASE_BITMAPS = rank.bm suit.bm face.bm spider.bm cards.bm.aa cards.bm.ab
+BITMAPS = $(BASE_BITMAPS) $(TKBITMAPS)
+
+BASE_DOCS = doc.intro doc.rules doc.controls doc.examples doc.misc doc.summary 
+DOCS =        $(BASE_DOCS) $(TKDOCS)
+
+MISC = Imakefile Makefile.sunpro README spider.man
+
+ALL_SRCS = $(MISC) $(BASE_SRCS) $(BASE_HEADERS) $(BASE_BITMAPS) $(BASE_DOCS) \
+        $(XVIEW_DIST) $(XAW_DIST) $(KL_DIST)
+
+#if NeedsLocalUsleep
+# if NeedsLocalStrdup
+UTILDEFS = -DLOCAL_USLEEP -DLOCAL_STRDUP
+# else
+UTILDEFS = -DLOCAL_USLEEP
+# endif
+#else
+# if NeedsLocalStrdup
+UTILDEFS = -DLOCAL_STRDUP
+# else
+UTILDEFS = 
+# endif
+#endif
+
+#if SmallCards
+DEFINES = $(TKDEFINES) -DSMALL_CARDS -DHELPDIR="\"$(HELPDIR)\"" $(UTILDEFS)
+#else 
+# if RoundCards
+DEFINES = $(TKDEFINES) -DROUND_CARDS -DHELPDIR="\"$(HELPDIR)\"" $(UTILDEFS)
+# else
+DEFINES = $(TKDEFINES) -DHELPDIR="\"$(HELPDIR)\"" $(UTILDEFS)
+# endif
+#endif
+
+INCLUDES = -I. $(TKINCLUDES)
+
+CPPFLAGS = 
+
+all:: $(TARGET)
+
+#if SmallCards
+all:: 
+	- at if [ ! -f cards.bm ]; then cat cards.bm.aa cards.bm.ab > cards.bm; fi
+#endif
+#if OverrideDefs
+MakeDirectories(install,$(BINDIR))
+MakeDirectories(install.man, $(MANDIR))
+#endif
+
+ComplexProgramTarget($(TARGET))
+
+#ifdef SparcArchitecture
+/**/# SunOS4.0.3 sparc optimizer slimes this file
+util.o:	util.c
+	$(CC) $(CPPFLAGS) $(DEFINES) $(INCLUDES) -c util.c
+#endif
+
+version.o:	version.c
+	$(CC) -DDATE="\"`date`\"" -c version.c 
+
+MakeDirectories(install.doc,$(HELPDIR))
+InstallMultipleDest(install.doc,$(DOCS),$(HELPDIR))
+	
+World::  
+	@echo ""
+	@echo "Begin build of the $(TARGET) application for the"
+#if CompileXView
+	@echo "XView toolkit version."
+#else
+# if CompileXlibOnly
+	@echo "Xlib only, no toolkit version."
+# else
+#  if CompileXAW
+	@echo "Athena Widget toolkit version."
+#  endif
+# endif
+#endif
+#if SmallCards
+	@echo "Using cards with small bitmaps for a low resolution display."
+#else 
+# if RoundCards
+	@echo "Using cards with normal bitmaps and optional rounded edges."
+# else
+	@echo "Using cards with normal bitmaps."
+# endif
+#endif
+	@echo ""
+	@date
+	@echo ""
+	$(MAKE) $(MFLAGS) clean
+	$(MAKE) $(MFLAGS) depend
+	$(MAKE) $(MFLAGS)
+	@echo ""
+	@date
+	@echo ""
+	@echo "Begin installation... "
+	$(MAKE) $(MFLAGS) -k install
+	$(MAKE) $(MFLAGS) -k install.doc
+	$(MAKE) $(MFLAGS) -k install.man
+	@echo ""
+	@date
+	@echo ""
+	@echo "Installation complete...now type 'make clean'"
+
+clean::
+	$(RM) spider.shar spider.a spider.a.a?a cards.bm
+
+shar::
+	$(SHAR) $(ALL_SRCS) > spider.shar
+
+dist::	shar
+	$(RM) spider.shar.Z
+	$(COMPRESS) spider.shar
+	$(CAT) spider.shar.Z | $(BTOA) > spider.a
+	$(SPLIT) spider.a spider.a.
+

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/MANIFEST
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/MANIFEST	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/MANIFEST	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,38 @@
+   File Name		Archive #	Description
+-----------------------------------------------------------
+ Imakefile                  1	
+ MANIFEST                   1	This shipping list
+ Makefile.sunpro            1	
+ README                     1	
+ assert.h                   1	
+ cards.bm.aa                9	
+ cards.bm.ab                7	
+ copyright.h                2	
+ defs.h                     2	
+ doc.controls               2	
+ doc.examples               8	
+ doc.intro                  1	
+ doc.misc                   1	
+ doc.rules                  1	
+ doc.summary                1	
+ events.c                   2	
+ face.bm                    6	
+ gfx.c                      5	
+ globals.h                  1	
+ main.c                     1	
+ movelog.c                  3	
+ rank.bm                    1	
+ spider.bm                  1	
+ spider.c                   4	
+ spider.info                2	
+ spider.man                 1	
+ suit.bm                    1	
+ util.c                     1	
+ version.c                  1	
+ windows.c                  1	
+ xaw_stubs.c                2	
+ xaw_ui.c                   3	
+ xaw_ui.h                   1	
+ xv_stubs.c                 4	
+ xv_ui.c                    3	
+ xv_ui.h                    1	

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,751 @@
+# Makefile generated by imake - do not edit!
+# $XConsortium: imake.c,v 1.89 94/08/12 00:45:51 gildea Exp $
+
+# -----------------------------------------------------------------------
+# Makefile generated from "Imake.tmpl" and <Imakefile>
+# $XConsortium: Imake.tmpl,v 1.219 94/05/13 15:58:31 matt Exp $
+# $SunSoft: @(#)Imake.tmpl	1.1 01/13/97 16:16:22 $
+#
+
+# **************************************************************************
+# NOTE:
+#
+# If the user does not define DESTDIR and/or BINDIR in the local Imakefile,
+# 'make install' will install the resultant binaries in /usr/openwin/bin.
+# This usually fails because of lack of write permission in that directory
+# for non-root users.
+#
+# The reason is that the default definition of ProjectRoot is /usr/openwin.
+# This value determines all other definitions, e.g. the binary, library and
+# manual page directories, etc.  The destination directory, DESTDIR, is not
+# defined and BINDIR is defined as $(ProjectRoot)/bin in Project.tmpl.
+#
+# Care must be taken when changing ProjectRoot.  It affects the inclusion
+# path of 'imake' in finding the *.cf, *.def, *.tmpl and *.rules files,
+# which are in /usr/openwin/lib/X11/config/, and the default inclusion path
+# of X11 header files and libraries. Therefore, if ProjectRoot is changed
+# not only these configuration files need to be copied to a proper location,
+# defined by IRULESRC, so 'make Makefile' can work properly, the header file
+# inclusion path, /usr/openwin/include, and the library search path,
+# /usr/openwin/lib, also need to be defined properly either in the local
+# Imakefile or one of the configuration files to avoid compilation errors
+# for programs that use X11 header files or libraries.
+#
+# Please refer to Project.tmpl, Imake.tmpl, site.def, etc. in
+# /usr/openwin/lib/X11/config/ for details.
+# **************************************************************************
+
+.SUFFIXES: .i
+
+# $XConsortium: Imake.cf,v 1.12 94/03/29 15:42:08 gildea Exp $
+# $SunSoft: @(#)Imake.cf	1.1 01/13/97 16:16:21 $
+
+# -----------------------------------------------------------------------
+# site-specific configuration parameters that need to come before
+# the platform-specific parameters - edit site.def to change
+
+# site:  $XConsortium: site.sample,v 1.11 94/06/03 19:50:12 matt Exp $
+# site:  $SunSoft: @(#)site.def	1.1 01/13/97 16:16:27$
+
+# -----------------------------------------------------------------------
+# platform-specific configuration parameters - edit sun.cf to change
+
+# platform:  $XConsortium: sun.cf,v 1.133 94/07/08 12:23:12 gildea Exp $
+# platform:  $SunSoft: @(#)sun.cf	1.11 05/04/01 13:49:33 $
+
+# operating system:  SunOS 5.9
+
+# SUNSOFT SUNSOFT_LOADABLE
+
+# $XConsortium: svr4.cf,v 1.6 94/04/08 18:56:33 rws Exp $
+# $SunSoft: @(#)svr4.cf	1.1 01/13/97 16:16:29 $
+
+# $XConsortium: sv4Lib.rules,v 1.14 94/04/09 12:00:10 rws Exp $
+# $SunSoft: @(#)sv4Lib.rules	1.1 01/13/97 16:16:28 $
+
+# SUNSOFT SUNSOFT_LOADABLE
+
+	TROFFTOPS = /usr/lib/lp/postscript/dpost | /usr/lib/lp/postscript/postreverse -r
+
+# -----------------------------------------------------------------------
+# site-specific configuration parameters that go after
+# the platform-specific parameters - edit site.def to change
+
+# site:  $XConsortium: site.sample,v 1.11 94/06/03 19:50:12 matt Exp $
+# site:  $SunSoft: @(#)site.def	1.1 01/13/97 16:16:27$
+
+INSTALLFLAGS  = -o bin -g bin -m 0644
+
+USRINCLUDEDIR = /usr/local/C/include
+USRINCDIR     = /usr/local/C/include
+
+APPDEFDIR     = /usr/local/X11/lib/app-defaults
+APPDEFDIR1    = /usr/openwin/lib/app-defaults
+APPDEFDIR2    = /usr/dt/app-defaults/C
+
+# -----------------------------------------------------------------------
+# Imake rules for building libraries, programs, scripts, and data files
+# rules:  $XConsortium: Imake.rules,v 1.193 94/04/10 17:39:55 rws Exp $
+# rules:  $SunSoft: @(#)Imake.rules	1.1 01/13/97 16:16:21 $
+
+# SUNSOFT SUNSOFT_LOADABLE
+
+          PATHSEP = /
+            SHELL = /bin/sh
+
+              TOP = .
+      CURRENT_DIR = .
+
+            IMAKE = imake
+           DEPEND = makedepend
+        MKDIRHIER = mkdirhier
+        CONFIGSRC = $(TOP)/config
+         IMAKESRC = $(CONFIGSRC)/imake
+        DEPENDSRC = $(CONFIGSRC)/makedepend
+           IXXSRC = $(UNSUPPORTEDSRC)/programs/ixx
+              IXX = ixx
+         IXXFLAGS = -s BaseObject -m TypeObj -r RequestObj -p Xf
+      IXXINCLUDES = -i '<X11/Fresco/enter-scope.h>'
+
+          INCROOT = /usr/openwin/include
+        USRLIBDIR = /usr/local/C/lib
+         SHLIBDIR = /usr/local/C/lib
+       LINTLIBDIR = $(USRLIBDIR)
+          MANPATH = /usr/local/X11/man
+    MANSOURCEPATH = /usr/local/X11/man/man
+           MANDIR = $(MANSOURCEPATH)1
+        LIBMANDIR = $(MANSOURCEPATH)3
+       FILEMANDIR = $(MANSOURCEPATH)$(FILEMANSUFFIX)
+
+               AR = /usr/ccs/bin/ar cq
+  BOOTSTRAPCFLAGS = -DSVR4
+               CC = gcc -fpcc-struct-return
+               AS = /usr/ccs/bin/as
+
+         COMPRESS = compress
+              CPP = /usr/ccs/lib/cpp $(STD_CPP_DEFINES)
+    PREPROCESSCMD = gcc -fpcc-struct-return -E $(STD_CPP_DEFINES)
+          INSTALL = /usr/local/bin/install
+     INSTALLFLAGS = -c
+               LD = /usr/ccs/bin/ld
+              LEX = /usr/ccs/bin/lex
+           LEXLIB = -ll
+             YACC = /usr/ccs/bin/yacc
+           CCYACC = /usr/ccs/bin/yacc
+             LINT = lint
+      LINTLIBFLAG = -y -o
+         LINTOPTS = -b -h -Xc
+               LN = ln -s
+             MAKE = /usr/ccs/bin/make
+               MV = mv
+               CP = cp
+
+               RM = rm -f
+        MANSUFFIX = 1
+     LIBMANSUFFIX = 3
+    FILEMANSUFFIX = 4
+            TROFF = troff -t -Tpost
+         MSMACROS = -ms
+              TBL = tbl
+              EQN = eqn
+
+            DVIPS = dvips
+            LATEX = latex
+
+     STD_INCLUDES = -I/usr/local/C/include -I/usr/sfw/include -I/opt/csw/include -I/opt/sfw/include
+  STD_CPP_DEFINES = -Dsun -Dsparc -DSVR4 -DSYSV
+      STD_DEFINES = -Dsun -Dsparc -DSVR4 -DSYSV
+ EXTRA_LOAD_FLAGS = -L/usr/local/C/lib -R/usr/local/C/lib -L/usr/sfw/lib -R/usr/sfw/lib -L/opt/csw/lib -R/opt/csw/lib -L/opt/sfw/lib -R/opt/sfw/lib
+  EXTRA_LDOPTIONS =
+  EXTRA_LIBRARIES = -lsocket -lnsl
+             TAGS = ctags
+
+    SHAREDCODEDEF =
+         SHLIBDEF =
+
+     SHLIBLDFLAGS = -G -z text -M mapfile
+
+         PICFLAGS = -fpic
+
+      CXXPICFLAGS = -K PIC
+
+    PROTO_DEFINES =
+
+     INSTPGMFLAGS = -s -o bin -g bin -m 0755
+
+     INSTBINFLAGS = -s -o bin -g bin -m 0755
+     INSTUIDFLAGS = -o bin -g bin -m 04755
+     INSTLIBFLAGS = -o bin -g bin -m 0644
+     INSTINCFLAGS = -o bin -g bin -m 0644
+     INSTMANFLAGS = -o bin -g bin -m 0644
+     INSTDATFLAGS = -o bin -g bin -m 0644
+    INSTKMEMFLAGS = -o bin -g kmem -m 02755
+
+      PROJECTROOT = /usr/openwin
+
+     TOP_INCLUDES = -I$(INCROOT)
+
+      CDEBUGFLAGS = -O
+        CCOPTIONS =
+
+      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES)
+       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES)
+           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(ALLDEFINES)
+        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
+         LDPRELIB = -L$(USRLIBDIR)
+        LDPOSTLIB =
+        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)  $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIB)
+     CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIB)
+
+           LDLIBS = $(LDPOSTLIB) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
+
+       CCENVSETUP = LD_RUN_PATH=$(USRLIBDIR)
+           CCLINK = $(CCENVSETUP) $(CC)
+
+      CXXENVSETUP = LD_RUN_PATH=$(USRLIBDIR)
+          CXXLINK = $(CXXENVSETUP) $(CXX)
+
+     LDSTRIPFLAGS = -x
+   LDCOMBINEFLAGS = -r
+      DEPENDFLAGS =
+
+        MACROFILE = sun.cf
+           RM_CMD = $(RM)
+
+    IMAKE_DEFINES =
+
+         IRULESRC = $(CONFIGDIR)
+        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)
+
+     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/Project.tmpl \
+			$(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) \
+			 $(EXTRA_ICONFIGFILES)
+
+# -----------------------------------------------------------------------
+# X Window System Build Parameters and Rules
+# $XConsortium: Project.tmpl,v 1.242 94/04/13 14:58:40 rws Exp $
+# $SunSoft: @(#)Project.tmpl	1.6 05/30/02 19:12:02 $
+
+# SUNSOFT SUNSOFT_LOADABLE
+
+# -----------------------------------------------------------------------
+# X Window System make variables; these need to be coordinated with rules
+
+           BINDIR = /usr/local/X11/bin
+     BUILDINCROOT = $(TOP)
+      BUILDINCDIR = $(BUILDINCROOT)/X11
+      BUILDINCTOP = ..
+      BUILDLIBDIR = $(TOP)/usrlib
+      BUILDLIBTOP = ..
+           INCDIR = $(INCROOT)/X11
+           ADMDIR = /usr/adm
+           LIBDIR = /usr/local/X11/lib
+
+          FONTDIR = $(LIBDIR)/fonts
+         XINITDIR = $(LIBDIR)/xinit
+           XDMDIR = $(LIBDIR)/xdm
+           TWMDIR = $(LIBDIR)/twm
+           NLSDIR = $(LIBDIR)/nls
+       XLOCALEDIR = $(PROJECTROOT)/lib/locale
+        PEXAPIDIR = $(LIBDIR)/PEX
+      XAPPLOADDIR = $(LIBDIR)/app-defaults
+       FONTCFLAGS = -t
+
+     INSTAPPFLAGS = $(INSTDATFLAGS)
+
+              RGB = rgb
+            FONTC = bdftopcf
+        MKFONTDIR = mkfontdir
+
+       DOCUTILSRC = $(TOP)/doc/util
+       XDOCMACROS = $(DOCUTILSRC)/macros.t
+       XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
+       PROGRAMSRC = $(TOP)/programs
+           LIBSRC = $(TOP)/lib
+          FONTSRC = $(TOP)/fonts
+       INCLUDESRC = $(TOP)/X11
+        SERVERSRC = $(TOP)/programs/Xserver
+       CONTRIBSRC = $(TOP)/../contrib
+   UNSUPPORTEDSRC = $(TOP)/unsupported
+           DOCSRC = $(TOP)/doc
+           RGBSRC = $(TOP)/programs/rgb
+      BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
+     MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
+    FONTSERVERSRC = $(PROGRAMSRC)/xfs
+       FONTINCSRC = $(TOP)/include/fonts
+        EXTINCSRC = $(TOP)/include/extensions
+     TRANSCOMMSRC = $(LIBSRC)/xtrans
+   TRANS_INCLUDES = -I$(TRANSCOMMSRC)
+
+# $XConsortium: sunLib.tmpl,v 1.37 95/05/23 14:31:40 matt Exp $
+# SunSoft: @(#)sunLib.tmpl	1.4 05/30/02 17:00:20
+
+# $XConsortium: sv4Lib.tmpl,v 1.19 93/12/03 10:48:36 kaleb Exp $
+# $SunSoft: @(#)sv4Lib.tmpl	1.1 01/13/97 16:16:29 $
+
+XMULIBONLY = -lXmu -lm
+XMULIB = -lXmu -lm
+
+       SERVERLIB = /usr/openwin/server/lib
+
+	SERVERMODULES = /usr/openwin/server/modules
+
+	SERVERETC = /usr/openwin/server/etc
+
+SHLIBLDFLAGS = -G -z text -M mapfile
+PICFLAGS = -fpic
+MAPFILE = mapfile
+
+          XLIBSRC = $(LIBSRC)/X11
+
+SOXLIBREV = 4
+DEPXONLYLIB =
+XONLYLIB =  -lX11
+
+LINTXONLY = $(LINTLIBDIR)/llib-lX11.ln
+
+         XLIBONLY = $(XONLYLIB)
+
+      XEXTLIBSRC = $(LIBSRC)/Xext
+
+SOXEXTREV = 0
+DEPEXTENSIONLIB =
+EXTENSIONLIB =  -lXext
+
+LINTEXTENSION = $(LINTLIBDIR)/llib-lXext.ln
+
+LINTEXTENSIONLIB = $(LINTEXTENSION)
+          DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
+             XLIB = $(EXTENSIONLIB) $(XONLYLIB)
+         LINTXLIB = $(LINTXONLYLIB)
+
+         XAUTHSRC = $(LIBSRC)/Xau
+
+DEPXAUTHLIB = $(USRLIBDIR)/libXau.a
+XAUTHLIB =  -lXau
+
+LINTXAUTH = $(LINTLIBDIR)/llib-lXau.ln
+
+      XDMCPLIBSRC = $(LIBSRC)/Xdmcp
+
+DEPXDMCPLIB = $(USRLIBDIR)/libXdmcp.a
+XDMCPLIB =  -lXdmcp
+
+LINTXDMCP = $(LINTLIBDIR)/llib-lXdmcp.ln
+
+           XMUSRC = $(LIBSRC)/Xmu
+
+SOXMUREV = 4
+DEPXMULIB =
+XMULIB =  -lXmu
+
+LINTXMU = $(LINTLIBDIR)/llib-lXmu.ln
+
+XMULIB =  -lXmu -lm
+
+          XCONFIGSRC = $(LIBSRC)/Xconfig
+
+SOXCONFIGREV = 0
+DEPXCONFIGLIB =
+XCONFIGLIB =  -lXconfig
+
+LINTXCONFIG = $(LINTLIBDIR)/llib-lXconfig.ln
+
+          DGASRC = $(LIBSRC)/dga
+
+SODGAREV = 1
+DEPDGASRCLIB =
+DGASRCLIB =  -ldga
+
+LINTDGASRC = $(LINTLIBDIR)/llib-ldga.ln
+
+          MISRC = $(SERVERSRC)/mi
+
+SOMIREV = 1
+DEPMILIB =
+MILIB =  -lmi
+
+LINTMI = $(LINTLIBDIR)/llib-lmi.ln
+
+          MFBSRC = $(SERVERSRC)/mfb
+
+SOMFBREV = 1
+DEPMFBLIB =
+MFBLIB =  -lmfb
+
+LINTMFB = $(LINTLIBDIR)/llib-lmfb.ln
+
+          CFBSRC = $(SERVERSRC)/cfb
+
+SOCFBREV = 1
+DEPCFBLIB =
+CFBLIB =  -lcfb
+
+LINTCFB = $(LINTLIBDIR)/llib-lcfb.ln
+
+       OLDXLIBSRC = $(LIBSRC)/oldX
+
+SOOLDXREV = 6
+DEPOLDXLIB =
+OLDXLIB =  -loldX
+
+LINTOLDX = $(LINTLIBDIR)/llib-loldX.ln
+
+       TOOLKITSRC = $(LIBSRC)/Xt
+
+SOXTREV = 4
+DEPXTOOLONLYLIB =
+XTOOLONLYLIB =  -lXt
+
+LINTXTOOLONLY = $(LINTLIBDIR)/llib-lXt.ln
+
+      DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
+         XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
+     LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
+
+       AWIDGETSRC = $(LIBSRC)/Xaw
+
+SOXAWREV = 5
+DEPXAWLIB =
+XAWLIB =  -lXaw
+
+LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln
+
+       XTFSRC = $(TOP)/workInProgress/Xtf
+
+SOXTFREV = 0.7
+DEPXTFLIB =
+XTFLIB =  -lXtf
+
+LINTXTF = $(LINTLIBDIR)/llib-lXtf.ln
+
+       FRESCOSRC = $(TOP)/workInProgress/Fresco
+
+SOFRESCOREV = 0.7
+DEPFRESCOLIB =
+FRESCOLIB =  -lFresco
+
+LINTFRESCO = $(LINTLIBDIR)/llib-lFresco.ln
+
+         XILIBSRC = $(LIBSRC)/Xi
+
+SOXINPUTREV = 5
+DEPXILIB =
+XILIB =  -lXi
+
+LINTXI = $(LINTLIBDIR)/llib-lXi.ln
+
+      XTESTLIBSRC = $(LIBSRC)/Xtst
+
+SOXTESTREV = 1
+DEPXTESTLIB =
+XTESTLIB =  -lXtst
+
+LINTXTEST = $(LINTLIBDIR)/llib-lXtst.ln
+
+        PEXLIBSRC = $(LIBSRC)/PEX5
+
+SOPEXREV = 6
+DEPPEXLIB =
+PEXLIB =  -lPEX5
+
+LINTPEX = $(LINTLIBDIR)/llib-lPEX5.ln
+
+SODPSREV = 5
+SOSERVERDPSREV = 5
+
+        DPSLIBSRC = $(LIBSRC)/DPS
+
+SODPSREV = 5
+DEPDPSLIB =
+DPSLIB =  -lDPS
+
+LINTDPS = $(LINTLIBDIR)/llib-lDPS.ln
+
+        XIELIBSRC = $(LIBSRC)/XIE
+
+SOXIEREV = 6
+DEPXIELIB =
+XIELIB =  -lXIE
+
+LINTXIE = $(LINTLIBDIR)/llib-lXIE.ln
+
+      PHIGSLIBSRC = $(LIBSRC)/PHIGS
+
+DEPPHIGSLIB = $(USRLIBDIR)/libphigs.a
+PHIGSLIB =  -lphigs
+
+LINTPHIGS = $(LINTLIBDIR)/llib-lphigs.ln
+
+DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
+XBSDLIB =  -lXbsd
+
+LINTXBSD = $(LINTLIBDIR)/llib-lXbsd.ln
+
+           ICESRC = $(LIBSRC)/ICE
+
+SOICEREV = 6
+DEPICELIB =
+ICELIB =  -lICE
+
+LINTICE = $(LINTLIBDIR)/llib-lICE.ln
+
+            SMSRC = $(LIBSRC)/SM
+
+SOSMREV = 6
+DEPSMLIB =
+SMLIB =  -lSM
+
+LINTSM = $(LINTLIBDIR)/llib-lSM.ln
+
+         FSLIBSRC = $(LIBSRC)/FS
+
+SOFSREV = 5
+DEPFSLIB =
+FSLIB =  -lFS
+
+LINTFS = $(LINTLIBDIR)/llib-lFS.ln
+
+         FONTLIBSRC = $(LIBSRC)/font
+
+DEPFONTLIB = $(USRLIBDIR)/libfont.a
+FONTLIB =  -lfont
+
+LINTFONT = $(LINTLIBDIR)/llib-lfont.ln
+
+    XRENDERLIBSRC = $(LIBSRC)/Xrender
+
+SOXRENDERREV = 1
+DEPXRENDERLIB =
+XRENDERLIB =  -lXrender
+
+LINTXRENDER = $(LINTLIBDIR)/llib-lXrender.ln
+
+XRENDERLIB = -L/usr/openwin/sfw/lib -R/usr/openwin/lib:/usr/openwin/sfw/lib -lXrender
+
+          DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
+
+         DEPLIBS1 = $(DEPLIBS)
+         DEPLIBS2 = $(DEPLIBS)
+         DEPLIBS3 = $(DEPLIBS)
+
+        CONFIGDIR = $(LIBDIR)/config
+
+# -----------------------------------------------------------------------
+# start of Imakefile
+
+# Run imake -DUseInstalled -I/usr/lib/X11/config to make a Makefile.
+# This is an R4 style Imakefile, so will need the R4 config files to
+# to make a Makefile.  It also assume that X11 is installed in /usr/lib.
+
+        SHAR = shar -a
+        COMPRESS = compress
+        BTOA = btoa
+        SPLIT = split
+        CAT = cat
+
+        HELPDIR = /usr/local/Games/lib/spider
+
+        MANSUFFIX = 6
+        MANDIR = /usr/local/Games/man/man$(MANSUFFIX)
+        BINDIR = /usr/local/Games/bin
+        MKDIRHIER = /usr/openwin/bin/mkdirhier
+
+        KL_DIST = main.c
+
+        XVIEW_DIST = xv_ui.c xv_stubs.c xv_ui.h spider.info
+
+        XAW_DIST = xaw_ui.c xaw_stubs.c xaw_ui.h
+
+        DEPLIBS = $(DEPXAWLIB) $(DEPXTOOLLIB) $(DEPXMULIB) $(DEPXLIB)
+        LOCAL_LIBRARIES = $(XAWLIB) $(XTOOLLIB) $(XMULIB) $(XLIB)
+
+        TKOBJS = xaw_ui.o xaw_stubs.o
+
+        TKSRCS = xaw_ui.c xaw_stubs.c
+
+        TKHEADERS = xaw_ui.h
+
+        TKBITMAPS =
+
+        TKDOCS =
+
+        TKDEFINES = -DXAW
+
+        TKINCLUDES =
+
+        TARGET = spider
+
+BASE_OBJS = gfx.o spider.o events.o windows.o movelog.o util.o version.o
+OBJS = $(BASE_OBJS) $(TKOBJS)
+
+BASE_SRCS = gfx.c spider.c events.c windows.c movelog.c util.c version.c
+SRCS =  $(BASE_SRCS) $(TKSRCS)
+
+BASE_HEADERS = globals.h defs.h assert.h
+HEADERS = $(BASE_HEADERS) $(TKHEADERS)
+
+BASE_BITMAPS = rank.bm suit.bm face.bm spider.bm cards.bm.aa cards.bm.ab
+BITMAPS = $(BASE_BITMAPS) $(TKBITMAPS)
+
+BASE_DOCS = doc.intro doc.rules doc.controls doc.examples doc.misc doc.summary
+DOCS =        $(BASE_DOCS) $(TKDOCS)
+
+MISC = Imakefile Makefile.sunpro README spider.man
+
+ALL_SRCS = $(MISC) $(BASE_SRCS) $(BASE_HEADERS) $(BASE_BITMAPS) $(BASE_DOCS) \
+        $(XVIEW_DIST) $(XAW_DIST) $(KL_DIST)
+
+UTILDEFS =
+
+DEFINES = $(TKDEFINES) -DROUND_CARDS -DHELPDIR="\"$(HELPDIR)\"" $(UTILDEFS)
+
+INCLUDES = -I. $(TKINCLUDES)
+
+CPPFLAGS =
+
+all:: $(TARGET)
+
+install::
+	@case '${MFLAGS}' in *[i]*) set +e;; esac;
+	@for i in $(BINDIR); do if [ -d $(DESTDIR)$$i ]; then \
+	set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \
+	done
+
+install.man::
+	@case '${MFLAGS}' in *[i]*) set +e;; esac;
+	@for i in  $(MANDIR); do if [ -d $(DESTDIR)$$i ]; then \
+	set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \
+	done
+
+ PROGRAM = $(TARGET)
+
+all:: $(TARGET)
+
+$(TARGET): $(OBJS) $(DEPLIBS)
+	$(RM) $@
+	$(CCLINK) -o $@ $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
+
+install:: $(TARGET)
+	@if [ -d $(DESTDIR)$(BINDIR) ]; then set +x; \
+	else (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); fi
+	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  $(TARGET) $(DESTDIR)$(BINDIR)/$(TARGET)
+
+install.man:: $(TARGET).man
+	@if [ -d $(DESTDIR)$(MANDIR) ]; then set +x; \
+	else (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); fi
+	instman -$(MANSUFFIX) -M $(MANDIR) -N $(TARGET) $(TARGET).man
+
+depend::
+	$(DEPEND) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)
+
+lint:
+	$(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
+lint1:
+	$(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)
+
+clean::
+	$(RM) $(TARGET)
+
+# SunOS4.0.3 sparc optimizer slimes this file
+util.o:	util.c
+	$(CC) $(CPPFLAGS) $(DEFINES) $(INCLUDES) -c util.c
+
+version.o:	version.c
+	$(CC) -DDATE="\"`date`\"" -c version.c
+
+install.doc::
+	@case '${MFLAGS}' in *[i]*) set +e;; esac;
+	@for i in $(HELPDIR); do if [ -d $(DESTDIR)$$i ]; then \
+	set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i); fi \
+	done
+
+install.doc:: $(DOCS)
+	@if [ -d $(DESTDIR)$(HELPDIR) ]; then set +x; \
+	else (set -x; $(MKDIRHIER) $(DESTDIR)$(HELPDIR)); fi
+	@case '${MFLAGS}' in *[i]*) set +e;; esac; \
+	for i in $(DOCS); do \
+	(set -x; $(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) $$i $(DESTDIR)$(HELPDIR)); \
+	done
+
+World::
+	@echo ""
+	@echo "Begin build of the $(TARGET) application for the"
+
+	@echo "Athena Widget toolkit version."
+
+	@echo "Using cards with normal bitmaps and optional rounded edges."
+
+	@echo ""
+	@date
+	@echo ""
+	$(MAKE) $(MFLAGS) clean
+	$(MAKE) $(MFLAGS) depend
+	$(MAKE) $(MFLAGS)
+	@echo ""
+	@date
+	@echo ""
+	@echo "Begin installation... "
+	$(MAKE) $(MFLAGS) -k install
+	$(MAKE) $(MFLAGS) -k install.doc
+	$(MAKE) $(MFLAGS) -k install.man
+	@echo ""
+	@date
+	@echo ""
+	@echo "Installation complete...now type 'make clean'"
+
+clean::
+	$(RM) spider.shar spider.a spider.a.a?a cards.bm
+
+shar::
+	$(SHAR) $(ALL_SRCS) > spider.shar
+
+dist::	shar
+	$(RM) spider.shar.Z
+	$(COMPRESS) spider.shar
+	$(CAT) spider.shar.Z | $(BTOA) > spider.a
+	$(SPLIT) spider.a spider.a.
+
+# -----------------------------------------------------------------------
+# common rules for all Makefiles - do not edit
+
+.c.i:
+	$(RM) $@
+	$(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@
+
+emptyrule::
+
+clean::
+	$(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut   "#"*
+
+Makefile::
+	- at if [ -f Makefile ]; then set -x; \
+	$(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
+	else exit 0; fi
+	$(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
+
+tags::
+	$(TAGS) -w *.[ch]
+	$(TAGS) -xw *.[ch] > TAGS
+
+man_keywords::
+	catman -M $(DESTDIR)$(MANPATH) -w
+
+# ----------------------------------------------------------------------
+# empty rules for directories that do not have SUBDIRS - do not edit
+
+install::
+	@echo "install in $(CURRENT_DIR) done"
+
+install.man::
+	@echo "install.man in $(CURRENT_DIR) done"
+
+Makefiles::
+
+includes::
+
+depend::
+
+# -----------------------------------------------------------------------
+# dependencies generated by makedepend
+

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile.sunpro
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile.sunpro	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/Makefile.sunpro	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,166 @@
+#/*
+# *	Spider
+# *
+# *	(c) Copyright 1989, Donald R. Woods and Sun Microsystems, Inc.
+# *	(c) Copyright 1990, David Lemke and Network Computing Devices Inc.
+# *
+# *	See copyright.h for the terms of the copyright.
+# *
+# *	@(#)Makefile	2.1	90/04/27
+# *
+# */
+#
+# SunPro make Makefile for Spider
+#
+CFLAGS = -O 
+# define ROUND_CARDS to make them round.  this slows things down a bit,
+# but does make them prettier.
+CPPFLAGS = -DROUND_CARDS
+# if SMALL_CARDS is defined *don't* define ROUND_CARDS.
+#CPPFLAGS = -DSMALL_CARDS
+
+# round cards require Xmu.
+#LIBS = -lX11
+LIBS = -lXmu -lX11
+
+# set HELPDIR to be the place where the help files will be installed
+#HELPDIR = .
+HELPDIR = /u6/lemke/games/lib/spider
+# set BINDIR to be the place where the executables will be installed
+BINDIR = .
+
+CPPFLAGS +=  -DHELPDIR="\"$(HELPDIR)\""
+
+.KEEP_STATE:
+
+OBJS =	main.o gfx.o spider.o events.o windows.o movelog.o util.o version.o
+
+SRCS = main.c gfx.c spider.c events.c windows.c movelog.c util.c version.c
+
+HEADERS = globals.h defs.h assert.h copyright.h
+
+XVIEW_OBJS =	gfx.o spider.o events.o movelog.o util.o windows.o \
+	xv_ui.o xv_stubs.o version.o
+
+XVIEW_SRCS =	gfx.c spider.c events.c movelog.c util.c windows.c \
+	xv_ui.c xv_stubs.c version.c
+
+XVIEW_HEADERS = ${HEADERS} xv_ui.h
+
+XVIEW_DIST = xv_ui.c xv_stubs.c xv_ui.h
+
+XAW_OBJS = gfx.o spider.o events.o movelog.o util.o windows.o \
+	xaw_ui.o xaw_stubs.o version.o
+
+XAW_SRCS = gfx.c spider.c events.c movelog.c util.c windows.c \
+	xaw_ui.c xaw_stubs.c version.c
+
+XAW_HEADERS = ${HEADERS} xaw_ui.h
+
+XAW_DIST = xaw_ui.c xaw_ui.h xaw_stubs.c
+
+BITMAPS = rank.bm suit.bm face.bm spider.bm cards.bm.aa cards.bm.ab
+
+DOCS =	doc.intro doc.rules doc.controls doc.examples doc.misc spider.man \
+	spider.info doc.summary
+
+KL_BIN = spider
+XAW_BIN = spider
+XVIEW_BIN = spider
+
+# for make all, these need to be moved
+all:= KL_BIN = spider.kl
+all:= XAW_BIN = spider.xaw
+all:= XVIEW_BIN = spider.xview
+
+debug:=	CFLAGS = -g
+debug:= CPPFLAGS += -DDEBUG
+debug:=	LDFLAGS = -Bstatic
+debug:= MALLOC = /usr/lib/debug/malloc.o
+
+kl_spider:= CPPFLAGS += -DKITLESS
+
+xv_spider:= OBJS = $(XVIEW_OBJS)
+xv_spider:= SRCS = $(XVIEW_SRCS)
+#
+# NOTE: XVIEW 1.1 requires libolgx.  1.0.1, R4, and 1.0 don't.
+#
+xv_spider:= LIBS = -L$(OPENWINHOME)/usr/lib -lxview -lolgx -lX11
+xv_spider:= CPPFLAGS += -I$(OPENWINHOME)/include -DXVIEW
+
+xaw_spider:= OBJS = $(XAW_OBJS)
+xaw_spider:= SRCS = $(XAW_SRCS)
+xaw_spider:= LIBS = -lXaw -lXmu -lXt -lXext -lX11
+xaw_spider:= CPPFLAGS += -DXAW
+
+
+all:	xaw_spider
+debug:	xaw_spider
+
+xv_spider:	obj
+	mv obj $(XVIEW_BIN)
+
+xaw_spider:	obj
+	mv obj $(XAW_BIN)
+
+kl_spider:	obj
+	mv obj $(KL_BIN)
+
+
+obj:	$$(OBJS)
+	cc -o $@ $(LDFLAGS) $(OBJS) $(MALLOC) $(LIBS)
+
+.c.o:
+	cc $(CPPFLAGS) $(CFLAGS) -c $<
+
+# SunOS4.0.3 sparc optimizer slimes this file
+util.o:	util.c
+	cc $(CPPFLAGS) -c $<
+#	cc -g $(CPPFLAGS) -c $<
+
+gfx.o:	cards.bm
+	cc $(CPPFLAGS) $(CFLAGS) -c $<
+
+version.o:	FRC
+	cc -c -DDATE="\"`date`\"" $<
+
+cards.bm:	cards.bm.aa cards.bm.ab
+	cat cards.bm.aa cards.bm.ab > $@
+
+install:	all
+	mkdir $(HELPDIR)
+	cp $(DOCS) $(HELPDIR)
+	mkdir $(BINDIR)
+	mv $(BINDIR)/$(KL_BIN) $(BINDIR)/$(KL_BIN)-
+	mv $(BINDIR)/$(XAW_BIN) $(BINDIR)/$(XAW_BIN)-
+	mv $(BINDIR)/$(XVIEW_BIN) $(BINDIR)/$(XVIEW_BIN)-
+	cp $(KL_BIN) $(XAW_BIN) $(XVIEW_BIN) $(BINDIR)
+
+
+lint:
+	lint -abchxz $(SRCS)
+
+clean:
+	rm -f core *.o cards.bm.a? spider *~ ,* Part* spider.shar* spider.a spider.a.a?
+
+tags:	$$(SRCS) $$(HEADERS) $$(XAW_DIST) $$(XVIEW_DIST)
+	ctags $(SRCS) $(HEADERS) $(XAW_DIST) $(XVIEW_DIST)
+
+kit:
+	split -675 cards.bm cards.bm.
+	makekit -m README Makefile.sunpro Imakefile $(DOCS) $(SRCS) \
+		$(HEADERS) $(XVIEW_DIST) $(XAW_DIST) $(BITMAPS)
+
+shar:
+	split -675 cards.bm cards.bm.
+	shar README Makefile.sunpro Imakefile $(DOCS) $(SRCS) $(HEADERS) \
+		$(XVIEW_DIST) $(XAW_DIST) $(BITMAPS) > spider.shar
+
+dist:	shar
+	rm -f spider.shar.Z
+	compress spider.shar
+	cat spider.shar.Z | btoa > spider.a
+	split spider.a spider.a.
+
+FRC::
+

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/PATCH.zoo
===================================================================
(Binary files differ)


Property changes on: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/PATCH.zoo
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/README
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/README	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/README	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,99 @@
+Patch level 1:
+	fixed bug, some problems with Imakefile.
+	fixed bug, can no longer see turned-over cards with middle mouse.
+	fixed bug, "f" will use the text field then selection for information.
+	added, patch_level variable to version.c file.
+
+Patch level 2:
+	added advice for choosing a move.
+	added "squish" feature for packing contiguous cards of same suit.
+	added looking in common places in XView for help files if not found.
+	bumped version number to 1.1 from 1.0.1.
+
+Spider is a challenging double decked solitaire game.  Unlike most
+soilitaire games, skill is just as important as luck.
+
+The X11 version of spider is based on the NeWS version by Don Woods,
+and uses the same save file format and card images.
+
+The game has three interfaces:  raw Xlib, Athena widget and XView.  The
+Athena interface was built with the R4 toolkit, and may not work with
+earlier versions.  The XView interface requires XView 1.0.1, which was
+shipped on the R4 tape.
+
+Installation:
+
+1. Decide which interfaces you wish to build, and set up the Imakefile
+	appropriately.
+
+2. Set the HELPDIR directory for 'make install' to
+	work correctly, and the help files to be found.
+
+3a. If you plan to run on a small display (less than ~900 pixels wide),
+	define SMALL_CARDS.  These aren't as pretty, but its a lot
+	better than having to move the window while playing.  (if your
+	display is less than ~500 pixels, you're SOL unless you want
+	to make some smaller cards.)
+
+3b. If you have a wider display, define ROUND_CARDS if you want it to look 
+	prettier, at the cost of a considerable amount of performance
+	(although its still quite playable on a reasonable server).
+
+4. Type 'xmkmf' to build the Makefile, and type 'make'.
+
+If you are compiling multiple versions, be sure to do a "make clean"
+before doing a "make" of the next version.  This will avoid mixing
+modules which have been compiled with different flags.
+
+Spider has been tested on the following:
+
+Hosts:
+	Sun 3 & 4 running 4.0.x, 4.1.x
+	Solbourne 5 running 4.0x
+	Decstation 3100 Ultrix 3.1
+	Decstation 3100 running OSF/1
+	Textronix 4319 running UTek 4.1
+
+    partially:
+	DG AViiON 5100 running DG/UX 4.20
+	(kitless only, and no usleep() since it doesn't have setitimer(2))
+
+Displays:
+	NCD 16, 19, 17c
+	Sun 3 & 4 running MIT X11R4
+	Sun 3 & 4 running X11/NeWS
+	Decstation 3100, running UWS 2.2
+	Decstation 3100, running MIT X11R4
+	Textronix 4319, running MIT X11R4
+
+Please send any bugs or comments to:
+
+Dave Lemke
+lemke at ncd.com
+uunet!lupine!lemke
+
+I'd especially like to see new interfaces to it, particularly
+non-Xt based toolkits like InterViews, OI or Andrew.
+
+Note on XView version:
+
+The supplied XView code will compile with either XView 1.0.1 (which is
+included on the X11R4 distribution) or XView 2.0 (which will be released
+later this summer).
+
+Before running the XView version of the tool, set the environment variable
+HELPDIR to the location of the spider.info file so spot help will work.
+For XView 2.0, HELPDIR becomes HELPPATH which works similarly to MANPATH.
+
+The XView version also has two extra command line args:  -name and
+-resource_file.  These allow you to have instances of the Spider tool
+which resources apply to and allow one to use a different resource
+file than the default.  The default resource file for the XView version
+is $HOME/.Xdefaults.  The spider.info file has more information on 
+resources when you prompt it for spot help.
+
+Please send any bugs or comments about the XView front end to:
+
+Heather Rose
+hrose at sun.com
+sun!hrose

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/SPIDERv1r1p1a.zoo
===================================================================
(Binary files differ)


Property changes on: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/SPIDERv1r1p1a.zoo
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/assert.h
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/assert.h	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/assert.h	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,17 @@
+/*
+ *	Spider
+ *
+ *	(c) Copyright 1989,  Donald R. Woods and Sun Microsystems, Inc.
+ *	(c) Copyright 1990, David Lemke and Network Computing Devices Inc.
+ *
+ *	See copyright.h for the terms of the copyright.
+ *
+ *	@(#)assert.h	2.1	90/04/25
+ *
+ */
+
+#ifdef DEBUG
+#define assert(ex)	{if (!(ex)){(void)fprintf(stderr,"Assertion \"ex\" failed: file \"%s\", line %d\n", __FILE__, __LINE__);abort();}}
+#else
+#define assert(ex)
+#endif

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/copyright.h
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/copyright.h	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/copyright.h	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,108 @@
+/*
+ * Copyright 1990 Heather Rose and Sun Microsystems, Inc.
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that copyright
+ * notice and this permission notice appear in supporting documentation, and
+ * that the names of Donald Woods and Sun Microsystems not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  Heather Rose and Sun Microsystems not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  Heather Rose and Sun Microsystems make
+ * no representations about the suitability of this software for any purpose.
+ * It is provided "as is" without express or implied warranty.
+ *
+ * THE ABOVE-NAMED DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO EVENT
+ * SHALL HEATHER ROSE OR SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+ * OF THIS SOFTWARE.
+ *
+ * Author:
+ *		Heather Rose
+ *		hrose at sun.com
+ *
+ *		Sun Microsystems, Inc.
+ *		2550 Garcia Avenue
+ *		Mountain View, CA  94043
+ */
+
+/*
+ * Copyright 1990 David Lemke and Network Computing Devices
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Network Computing Devices not be 
+ * used in advertising or publicity pertaining to distribution of the 
+ * software without specific, written prior permission.  Network Computing 
+ * Devices makes no representations about the suitability of this software 
+ * for any purpose.  It is provided "as is" without express or implied 
+ * warranty.
+ *
+ * NETWORK COMPUTING DEVICES DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS 
+ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS,
+ * IN NO EVENT SHALL NETWORK COMPUTING DEVICES BE LIABLE FOR ANY SPECIAL,
+ * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE 
+ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE 
+ * OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ * Author:  	
+ *		Dave Lemke
+ *		lemke at ncd.com
+ *
+ *		Network Computing Devices, Inc
+ *		350 North Bernardo Ave
+ *		Mountain View, CA 94043
+ *
+ *	@(#)copyright.h	2.2	90/04/27
+ *
+ */
+
+/*
+% Copyright (c) 1989, Donald R. Woods and Sun Microsystems, Inc.
+%
+% Permission to use, copy, modify, distribute, and sell this software and its
+% documentation for any purpose is hereby granted without fee, provided that
+% the above copyright notice appear in all copies and that both that copyright
+% notice and this permission notice appear in supporting documentation, and
+% that the names of Donald Woods and Sun Microsystems not be used in
+% advertising or publicity pertaining to distribution of the software without
+% specific, written prior permission.  Donald Woods and Sun Microsystems make
+% no representations about the suitability of this software for any purpose.
+% It is provided "as is" without express or implied warranty.
+%
+% THE ABOVE-NAMED DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+% INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO EVENT
+% SHALL DONALD WOODS OR SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+% CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+% DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+% TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
+% OF THIS SOFTWARE.
+%
+% History: Spider is a solitaire card game that can be found in various books
+% of same; the rules are presumed to be in the public domain.  The author's
+% first computer implementation was on the Stanford Artificial Intelligence Lab
+% system (SAIL).  It was later ported to the Xerox Development Environment.
+% The card images are loosely based on scanned-in images but were largely
+% redrawn by the author with help from Larry Rosenberg.
+%
+% This program is written entirely in NeWS and runs on OPEN WINDOWS 1.0.
+% It could be made to run much faster if parts of it were written in C, using
+% NeWS mainly for its display and input capabilities, but that is left as an
+% exercise for the reader.  Spider may also run with little or no modification
+% on subsequent releases of OPEN WINDOWS, but no guarantee is made on this
+% point (nor any other; see above!).  To run Spider, feed this file to 'psh'.
+%
+% Author:	Don Woods
+%		woods at sun.com
+%
+%		Sun Microsystems, Inc.
+%		2550 Garcia Avenue
+%		Mountain View, CA  94043
+*/

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/defs.h
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/defs.h	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/defs.h	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,241 @@
+/*
+ *	Spider
+ *
+ *	(c) Copyright 1989, Donald R. Woods and Sun Microsystems, Inc.
+ *	(c) Copyright 1990, David Lemke and Network Computing Devices Inc.
+ *
+ *	See copyright.h for the terms of the copyright.
+ *
+ *	@(#)defs.h	2.2	90/04/30
+ *
+ */
+
+/*
+ * std includes and types
+ */
+#include	<X11/Xlib.h>
+#include	<X11/Xutil.h>
+#include	<X11/Xos.h>
+#include	<stdio.h>
+#include	"assert.h"
+#include	"copyright.h"
+
+#ifdef DEBUG
+/*
+ * so i don't have to keep looking up my constants
+ */
+typedef enum	{Spade, Heart, Diamond, Club}	Suit;
+
+typedef enum	{Ace, Deuce, Three, Four, Five, Six, Seven,
+		 Eight, Nine, Ten, Jack, Queen, King}	Rank;
+
+typedef enum	{Faceup, Facedown, Joker}	Type;
+
+#else DEBUG
+
+typedef	char	Suit;
+typedef	char	Rank;
+typedef	char	Type;
+
+#define	Spade	0
+#define	Heart	1
+#define	Diamond	2
+#define	Club	3
+
+#define	Ace	0
+#define	Deuce	1
+#define	Three	2
+#define	Four	3
+#define	Five	4
+#define	Six	5
+#define	Seven	6
+#define	Eight	7
+#define	Nine	8
+#define	Ten	9
+#define	Jack	10
+#define	Queen	11
+#define	King	12
+
+#define	Faceup		0
+#define	Facedown	1
+#define	Joker		2
+
+#endif DEBUG
+
+#define	NUM_DECKS	2
+#define	NUM_PILES	8
+#define	NUM_STACKS	10
+#define	NUM_RANKS	13
+#define	NUM_SUITS	4
+#define	CARDS_PER_DECK	(NUM_RANKS * NUM_SUITS)
+#define	NUM_CARDS	(NUM_DECKS * CARDS_PER_DECK)
+
+/* diff locations for a cardlist */
+#define	DECK	0
+
+#define	PILE_1	1
+#define	PILE_2	2
+#define	PILE_3	3
+#define	PILE_4	4
+#define	PILE_5	5
+#define	PILE_6	6
+#define	PILE_7	7
+#define	PILE_8	8
+
+/* convert a pile value to an array index */
+#define	PILE_INDEX(i)	((i) - 1)
+
+#define	STACK_1		11
+#define	STACK_2		12
+#define	STACK_3		13
+#define	STACK_4		14
+#define	STACK_5		15
+#define	STACK_6		16
+#define	STACK_7		17
+#define	STACK_8		18
+#define	STACK_9		19
+#define	STACK_10	20
+
+/* convert a stack value to an array index */
+#define	STACK_INDEX(i)	((i) - 11)
+
+#define	LOC_BEFORE	1
+#define	LOC_AFTER	2
+#define	LOC_END		3
+#define	LOC_START	4
+
+typedef	struct	_CardStruct	{
+	struct _CardStruct	*prev;
+	struct _CardStruct	*next;
+	struct	_CardList	*list;
+	int	x,y;		/* location */
+	Suit	suit;
+	Rank	rank;
+	Type	type;
+	int	draw_count;
+}	CardStruct, *CardPtr;
+
+#define	CARDNULL	((CardPtr) 0)
+
+typedef struct _CardList	{
+	CardPtr	cards;
+	int	place;
+	int	card_delta;	/* pixels between cards in stack */
+	int	x, y;
+}	CardListStruct,	*CardList;
+
+#define	CARDLISTNULL	((CardList) 0)
+
+#ifndef SMALL_CARDS
+#define	CARD_DELTA	30	
+#else
+#define	CARD_DELTA	20
+#endif	/* !SMALL_CARDS */
+
+
+#define	IS_PILE(list)	(((list) != CARDLISTNULL) && (list)->place < STACK_1)
+
+/* gfx defs */
+
+/* card info*/
+#ifndef SMALL_CARDS
+#define	CARD_HEIGHT	123
+#define	CARD_WIDTH	79
+
+#define	FACECARD_WIDTH	47
+#define	FACECARD_HEIGHT	92
+
+#define	RANK_WIDTH	9
+#define	RANK_HEIGHT	14
+
+#define	RANK_LOC_X	4
+#define	RANK_LOC_Y	7
+
+#define	SMALL_LOC_X	4
+#define	SMALL_LOC_Y	(RANK_HEIGHT + RANK_LOC_Y + 3)
+
+#define	MID_CARD_X	(CARD_WIDTH/2)
+#define	MID_CARD_Y	(CARD_HEIGHT/2)
+
+#define	CARD_COL1_X	(3 * CARD_WIDTH/10)
+#define	CARD_COL2_X	(CARD_WIDTH/2)
+#define	CARD_COL3_X	(7 * CARD_WIDTH/10)
+
+/* 5 diff rows for the two main columns */
+/* 1 and 5 are top and bottom, 3 is the middle */
+/* 2 & 4 are for the 10 & 9 */
+#define	CARD_ROW1_Y	(CARD_HEIGHT/5)
+#define	CARD_ROW2_Y	(2 * CARD_HEIGHT/5)
+#define	CARD_ROW3_Y	(CARD_HEIGHT/2)
+#define	CARD_ROW4_Y	(CARD_HEIGHT - 2 * CARD_HEIGHT/5)
+#define	CARD_ROW5_Y	(CARD_HEIGHT - CARD_HEIGHT/5)
+
+/* between 1 & 3, 3 & 5 */
+#define	CARD_SEVEN_Y	(7 * CARD_HEIGHT/20)
+#define	CARD_EIGHT_Y	(CARD_HEIGHT - 7 * CARD_HEIGHT/20)
+
+/* between rows 1 & 2, 4 & 5 */
+#define	CARD_TEN_Y1	(3 * CARD_HEIGHT/10)
+#define	CARD_TEN_Y2	(CARD_HEIGHT - 3 * CARD_HEIGHT/10)
+
+/* card positioning */
+#define	CARD_INSET_X	10
+#define	CARD_INSET_Y	(CARD_HEIGHT/8)
+
+#define	STACK_WIDTH	(CARD_WIDTH + 10)
+#define	STACK_LOC_X(i)	((STACK_INDEX(i) * STACK_WIDTH) + CARD_INSET_X)
+#define	STACK_LOC_Y	(CARD_HEIGHT + 3 * CARD_INSET_Y)
+
+#define	PILE_WIDTH	STACK_WIDTH
+#define	PILE_INSET_X	(STACK_WIDTH + CARD_INSET_X + CARD_WIDTH)
+#define	PILE_LOC_X(i)	((PILE_INDEX(i) * PILE_WIDTH) + PILE_INSET_X)
+#define	PILE_LOC_Y	(CARD_INSET_Y)
+
+#define	DECK_X		CARD_INSET_X
+#define	DECK_Y		CARD_INSET_Y
+
+#define	TABLE_X		10
+#define	TABLE_Y		10
+
+#define	TABLE_WIDTH	(STACK_WIDTH * NUM_STACKS + 2 * CARD_INSET_X)
+#define	TABLE_HEIGHT	(STACK_LOC_Y + 2 * CARD_HEIGHT)
+#define	TABLE_BW	2
+
+/* pip info */
+#define	PIP_WIDTH	10
+#define	PIP_HEIGHT	10
+
+#else	/* SMALL_CARDS */
+
+#define	CARD_HEIGHT	60
+#define	CARD_WIDTH	40
+
+/* card positioning */
+#define	CARD_INSET_X	10
+#define	CARD_INSET_Y	(CARD_HEIGHT/8)
+
+#define	STACK_WIDTH	(CARD_WIDTH + 10)
+#define	STACK_LOC_X(i)	((STACK_INDEX(i) * STACK_WIDTH) + CARD_INSET_X)
+#define	STACK_LOC_Y	(CARD_HEIGHT + 4 * CARD_INSET_Y)
+
+#define	PILE_WIDTH	STACK_WIDTH
+#define	PILE_INSET_X	(STACK_WIDTH + CARD_INSET_X + CARD_WIDTH)
+#define	PILE_LOC_X(i)	((PILE_INDEX(i) * PILE_WIDTH) + PILE_INSET_X)
+#define	PILE_LOC_Y	(CARD_INSET_Y)
+
+#define	DECK_X		CARD_INSET_X
+#define	DECK_Y		CARD_INSET_Y
+
+#define	TABLE_X		10
+#define	TABLE_Y		10
+
+#define	TABLE_WIDTH	(STACK_WIDTH * NUM_STACKS + 2 * CARD_INSET_X)
+#define	TABLE_HEIGHT	(STACK_LOC_Y + 2 * CARD_HEIGHT)
+#define	TABLE_BW	2
+
+#endif /* !SMALL_CARDS */
+
+#ifdef KITLESS
+#define	MESSAGE_FONT	"fixed"
+#define	MESSAGE_X	10
+#endif /* KITLESS */

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.controls
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.controls	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.controls	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,117 @@
+		  III.   T H E   S P I D E R   P R O G R A M
+
+The stack of cards in the upper left of the Spider window represents
+the undealt cards (initially the full deck; later the "Hand").  The
+eight outlines to the right mark where the eight suits will go as you
+remove them from the tableau.  The rest of the window is initially
+empty until you start a game.
+
+To start a game, press the [New Game] button or click either the left
+mouse button over the undealt cards.  Playing the game is handled
+entirely within the main window; the control panel provides a few
+ancillary functions, described later.  First, the main window:
+
+If you press the left mouse button anywhere within or below a column of
+cards, it says you want to move as many cards as possible from that
+column.  If you then move the mouse to another column and let up on the
+button, the program moves as many cards as it can from the first column
+to the second.  (If there is no such legal move, the program says so.)
+Note that, unless the destination column is empty (i.e., a "space"),
+there is at most one choice for the number of cards to move.
+
+If you instead use the second mouse button to select within a column,
+it says you want to move the card you're pointing at plus any cards
+covering it.  If these cards cannot be moved as a unit (i.e., they are
+not a sequence within a suit), the program says so.  Again, if you move
+the mouse to another column and release the button, the program moves
+as the selected cards to the destination.  The only time you need to
+use this method (instead of using left) is if you're moving cards into
+a space AND you wish to move fewer than the maximum permitted.
+
+If you click the left button over a single column, the program tries to
+move the specified cards to "the obvious place" by trying the following
+choices, in order: (1) remove them if they form a completed suit, else
+(2) move them onto a card of the same suit, else (3) move them onto a
+card of a different suit, else (4) move them into a space.  If it can't
+do any of these, it complains.
+
+You can also remove a completed suit by selecting all 13 cards (using
+the left button), moving the mouse into the region of outlines above
+the tableau, and releasing the button.
+
+To deal a new round, click any button on the facedown stack in the
+upper left.  The window footer shows you how many more deals remain.
+Remember that all spaces must be filled before you can deal a new
+round.
+
+If you click with any mouse button in the outline region where the
+removed suits go, the program will tell you which suits (if any) have
+enough cards face-up to form a complete sequence of thirteen.
+
+The game also has a control panel for performing some less frequent
+operations.  Many of these also have keyboard accelerators:
+
+[New Game], N or n:	Throws away the current game and start a new one.
+
+[Backup: One Move], U or u: Undo the last move.  If you undo a move
+that revealed a previously unknown card, the program will chastise you.
+
+[Backup: Start Over], A or a: Play the same hand again.  This will
+restart the game with the initial deck, discarding what you've already
+done.
+
+[Backup: Replay], R or r:	Show all the moves made so far.  This can take
+a while, so any key or button press will abort it.
+
+[Expand], E or e: Expand column.  This prompts the user to select a
+column, which is then displayed in textual form.  This is useful when
+the window cannot be made larger and the columns are very large.
+
+[Locate], F or f:  tries to find a specified card or cards among the
+face-up cards in the tableau.  First specify the name of the card to
+look for by putting the rank and suit in the Name item.  (The ranks are
+A, 2, 3, ..., 10, J, Q, or K; you can also use T for 10.  Suits are C,
+D, H, and S.  Lower-case is permitted.)  If you omit the suit, [Locate]
+will look for all cards of the specific rank that are not already
+covered by a card of the next lower rank.  (Such cards are called
+"unused", "free", or "available".)  For example, if you want to move a
+9 out of some pile, you need either a space or a free 10 onto which to
+move it, so you could use [Locate] to find all free 10s.
+
+[Score], S or s:	Shows the current score.
+
+[File] is a stack; the default is [Save in File], which writes a file
+containing the current state of the game, including the original deck and all
+the moves made so far.  The name of the file is taken from the Name item.
+The file also includes a human-readable text representation of the current
+tableau, similar to those that appear in the examples below.
+
+[File: Resume from File] reads a file created by the [File: Save in File]
+command.  The name of the file is taken from the Name item.  It can also read
+various partial files; in particular, if all but the first line of the file
+has been deleted, it will restore the most recent position and, if possible,
+the original deck (in case you want to Start Over), but it will not be able
+to Back Up over the moves.
+
+[File: Resume from Selection] restores a position represented by the current
+text selection.  This is useful for loading positions from section IV, below.
+
+The window also understands these additional keyboard commands:
+
+D or d: Deals a new round.
+
+L or l: Loads a saved game from the current PRIMARY selection.  If the
+selection is a file name, it will be loaded from that file.  Otherwise
+it will attempt to load the selection as position.  This is useful for
+loading positions from the examples in section IV.
+
+W or w: Saves the current position in the filename contained in the
+PRIMARY selection.
+
+?: Gives a move suggestion.  This isn't necessarily the best move, but
+may be helpful for beginners.
+
+#: Displays some game statatistics.
+
+Q: Quit.
+

Added: csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.examples
===================================================================
--- csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.examples	                        (rev 0)
+++ csw/mgar/pkg/spider/trunk/legacy/spider1.1.1/doc.examples	2009-01-30 13:45:07 UTC (rev 2940)
@@ -0,0 +1,980 @@
+	     IV.   E X A M P L E S   A N D   C O N U N D R U M S
+
+In all the examples below, the tableau will be given here in the text as best
+as can be done within the limits of the character set.  For those who want to
+see the positions more graphically via the program, each example also starts
+with a line of apparent garbage that, if selected, can be read using the
+[File: Resume from Selection] command to display the position.  (The line is
+quite long and may wrap around onto more than one line when you display it;
+you have to select it all to restore the position.)
+
+Some of these examples are extremely complex.  Novice players may wish to
+step through just the first example, to get an idea of how to play, and save
+the other examples for later.  The final example is a deck that is especially
+easy to win with (unless you're trying to win with all eight suits still in
+the tableau), so you might try that one to boost your confidence if you're
+having a lot of trouble getting anywhere.
+
+===========================================================================
+
+J6m\ZM^3>gU82j]`LGMFl8o0WeDimHa;d^1QcHGKQdQAZ6l;oK/QmbbBhNhiMiWe=FOH<jJ]T^1URFDdGj^_7TRgK7lFY52 at aDCd1==>D >Kg74/^ YoT[/6 HCcF/P \MNXm/Q EK25/k 9^0M/c KF0 at W/N \JHY/: 9GLR/L \W8hH/2.
+
+Here, to start you off, is an example of the beginning of a game.  We'll step
+through it and look at the rationale behind the recommended moves.  Here's
+the initial tableau:
+
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	10d	 As	 --	 3h	 9s	 --	 Jh	 Qh	 --
+ 6d			 4s			 3c			 7c
+
+The two primary rules of thumb to bear in mind throughout the game, and
+particularly at the start, are (1) try to get a space, and (2) keep your
+options open.  The first rule should be fairly clear; the second leads to a
+few common strategic decisions.  First, given the choice, make a "natural"
+move instead of an "unnatural" one, where a natural move is one that brings
+together two cards of the same suit.  This keeps our options open by allowing
+us to move the newly combined cards as a unit should we turn up an
+appropriate card.  Second, given the choice, move a card (or pile) that has
+more than one place it can go.  This keeps our options open by allowing us to
+move it to the other place if for some reason we want to dig into the pile
+sitting in the first location.  Third, work from the top down.  Thus we move
+a 9 onto a 10 before moving an 8 onto the 9 (unless the latter move is
+natural while the former is not), since once we move an unnatural 8 onto the
+9 we won't be able to move the 9.  Now, with these ideas in mind, let's look
+at the play of the above tableau.
+
+Our highest-ranking move is Jack onto Queen, and it's also our only natural
+move, so it wins for sure.  We move the Jh from column 8 to column 9, and in
+this particular game we chance to turn up a 6s in column 8.  Now we have no
+natural moves.  We could try for the space by moving the 6s to column 10, but
+that move isn't going to go away, so instead we go from the top down by
+moving the 10d from 2 to 9.  This time we turn up a 4c.  No hesitation about
+this one!  We move the 3c from 7 to 2.  (Note that we still have the 4s onto
+which we can, eventually, move the 3h, so we're not giving up our option of
+digging into pile 5.  But even if we didn't have the other 4, making the
+natural move would be the better play.)  In column 7 the card turned up is a
+2c, which we promptly move to column 2, turning up a 10h.  The tableau is
+now:
+
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 4c	 --	 --	 --	 --	10h	 6s	 --	 --
+ --	 3c	 As	 --	 3h	 9s			 Qh	 --
+ 6d	 2c		 4s					 Jh	 7c
+								10d
+
+Having once again run out of natural moves, we revert to working from the top
+down, and move the 9s from 6 to 9.  This also follows the rule of moving a
+pile that has more than one place to go; if we find ourselves interested in
+digging through column 9 we can move the 9s to column 7 instead.  But for
+now, since column 7 looks like a more likely place to dig, we'll bury column
+9 a bit more.  In column 6 we turn up a Kc.  Since we have no place to move
+the 10d from column 9, we are unable to get pile 9 moved onto the newly
+revealed King.  Them's the breaks.
+
+Continuing from the top down, we decide it's time to move a 6 onto the 7c.
+Which 6 should we move?  Neither is natural, but the one in column 8 looks
+like a better one to move since we're only 3 cards away from getting a space
+in that column.  So we move the 6s from 8 to 10 and turn up a 6c.  We're
+getting low on things to do now; we can move the 3h or the As.  Going by the
+top-down rule, we move the 3h from 5 to 4, turning up a 2h, which we move
+onto the 3h (now in column 4).  This time we turn up a 9d:
+
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 --	 --	 --	 --	 --	 --
+ --	 --	 --	 --	 9d	 --	 --	 6c	 --	 --
+ --	 4c	 --	 --		 Kc	10h		 --	 --
+ --	 3c	 As	 --					 Qh	 --
+ 6d	 2c		 4s					 Jh	 7c
+ 			 3h					10d	 6s
+ 			 2h					 9s
+
+We could now move the 9d from 5 to 7, but instead we choose to move the As
+from column 3, since there are two places to put it.  Column 4 is already
+unnatural, so we'll move it there.  The card turned up is the other As.  We
+could move this Ace onto the other deuce, but this would lose us our option
+of moving the first Ace there should we want to dig into column 4, so we'll
+let the top-down rule take precedence and move the 9d.  But let's not be
+hasty!  Instead of moving the 9d from 5 to 7, we'll move the 9s from 9 to 7
+and then move the 9d from 5 to 9; this puts the 9d with a 10d, which it can't
+hurt to do.  This time we turn up a Qh.  Since we're so close to a space now,
+we keep going by moving the Qh from 5 to 6, turning up a 10d:
+
+ --	 --	 --	 --	10d	 --	 --	 --	 --	 --
+ --	 --	 --	 --		 --	 --	 --	 --	 --
+ --	 --	 --	 --		 --	 --	 6c	 --	 --
+ --	 4c	 As	 --		 Kc	10h		 --	 --
+ --	 3c		 --		 Qh	 9s		 Qh	 --
+ 6d	 2c		 4s					 Jh	 7c
+			 3h					10d	 6s
+			 2h					 9d
+			 As
+
+Only one move left to try: we move the As from 3 to 2, turning up a 7h.  Once
+again, we shuffle things around a bit so keep as many piles natural as
+possible; we move the 6s from 10 to 3 and the 6c from 8 to 10, turning up a
+5d.  We move the 5d from 8 to 1 (natural) and turn up a 3s:
+
+ --	 --	 --	 --	10d	 --	 --	 3s	 --	 --
+ --	 --	 --	 --		 --	 --		 --	 --
+ --	 --	 7h	 --		 --	 --		 --	 --
+ --	 4c	 6s	 --		 Kc	10h		 --	 --
+ --	 3c		 --		 Qh	 9s		 Qh	 --
+ 6d	 2c		 4s					 Jh	 7c
+ 5d	 As		 3h					10d	 6c
+			 2h					 9d
+			 As
+
+We have no more moves (aside from useless maneuvers such as moving the 9d
+from 9 to 5), so it's now time to deal a new round.  We never did get a
+space, but we got two piles down to a single card each, so we are quite
+likely to get a space soon after the new deal.  This game is going somewhat
+better than average and will very likely be won with proper play.  If you
+actually do get a space in the first round, you're doing particularly well.
+
+===========================================================================
+
+1;]mcD96:2o6j1J7Fj>N/\j?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?P O  DLV/7V[ N=^cfil 8_/R<3d9NC4I^SDY?F\bfKl16[ k;]>Hhn ak\k/Z\2O[<@FkLPWZ[;>CdINS 9A C L75/1;\aFJo.
+
+Now, for your first "Spider problem", here is a relatively simple position.
+In the tableau shown below, what should you do?  First off, what are your
+options?  On what should you base your choice?  (After the tableau is the
+"solution", so don't read further until you're ready!)
+
+10h	(sp)	 --	 Ad	 --	 Qc	 --	 3s	 Qh	 --
+		 --	 7d	 --	 Jh	 --	 2s		 --
+		 --	 6d	 Kh	10d	 --			 --
+		 8s	 5d	 Qc	 6c	 --			 7d
+		 7s	 Qs	 Jc	 4c	 Qd			 6d
+		 6s	 Js	10c	 3d	 Jd			 5d
+			10d	 9c	 2d	10h			 4d
+				 8c		 Js			 3d
+				 7c		10s			 2c
+				 6c		 9s			 As
+				 5c		 8h
+				 4c		 7h
+				 3c		 6h
+				 2c		 5h
+				 Ac		 4s
+				 Qd		 3h
+				10c		10s
+				 9c		 8c
+				 8s		 7h
+				 7s		 6h
+				 6s		 5h
+				 5s		 4h
+				 4s		 3h
+				 3s		 2h
+				 2s		 Ah
+
+Solution:
+
+First, the options.  There's no way to get through column 5 or 7 to turn up a
+new card.  (This should be pretty obvious; we'll save detailed analyses of
+this sort of thing for cases where it's not as clear.)  Nor does it do us any
+good to dig into column 4 or 6.  We don't have any complete suits showing, so
+there's no way we can try to put one together.  That leaves three fairly
+simple options: (1) we could move the 8-6s from column 3 into the space,
+turning up a new card, (2) we could dig through column 10 (moving the Ace
+onto a deuce, the 2c into the space, 5-3d onto the 6s in column 3, 2c out of
+the space and back onto the 5-3d, and finally the 7-6d into the space) and
+turn up a new card there, or (3) we could fill in the space and deal a new
+round.
+
+It's usually a good idea to turn up more cards when possible rather than bury
+everything under a new deal, so we'll discount the third option.  That leaves
+us with the choice of which column to dig through, 3 or 10.  The two are
+equally close to becoming new spaces (three face-down cards each), so that's
+not a consideration here.  Let's consider what the face-down card might be
+that will be revealed.  If it's a Jack, 4, or King, we can get back the space
+(which we'll have lost in the process of getting to the new card).  If it's a
+9 or 8, we MIGHT get the space back right away; it depends on whether we
+moved the 8 (from column 3) or the 7 (from column 10) into the space.
+Looking at the tableau, we see there are five 8's visible, but only three
+9's.  Thus it's more likely we'll turn up a 9, so we should go for column 3.
+(Sorry for all this gory detail, but this is after all intended as an
+introductory example.)
+
+So it looks like the best thing to do is move the 8-6s from column 3 into the
+space.  But wait!  Suppose the card turned up isn't a Jack, 4, King, or 9,
+and furthermore isn't an Ace or 5 (which we would be able to move elsewhere
+immediately)?  Is there anything we can do ahead of time to hedge our bets?
+Yes!  We can move the spade Ace from column 10 to column 5, then use the
+space to swap the deuces in columns 6 and 10 (move one deuce into the space,
+move the other deuce to the other column, and move the first deuce out of the
+space).  Now column 10 contains just the 7 through deuce of diamonds, and if
+we chance to turn up an 8 in column 3 we can move the 7-2d onto it.  Note
+that we have to do this BEFORE we move the 8-6s into the space, since we need
+the space to swap the deuces.  In fact, in the game where this particular
+tableau arose, the card turned up in column 3 was the diamond 8.  The
+preparations made in column 10 eventually produced not one but TWO spaces!
+(Play it out using the program and see for yourself.)
+
+===========================================================================
+
+?jT\Ne61gU/3`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?P LF^Q/lLQ7[]`8Qe^_ B\^</D:[l6^cO  K/jc\D= <\e G`j/T;j_Qf9maEBo P/5Ql ^:[/eQWeU[>CO9M at 4I] Q=Lh/C;aS2o D0/b6;[MEXM.
+
+Turn up another face-down card WITHOUT dealing more cards or "using up" the
+space.  (You may, of course, use the space, so long as you are sure you can
+get it back no matter what the card turned up turns out to be.)  Note that
+there are enough clubs and hearts showing to form complete sets of those
+suits.  Here's the tableau (again, the solution follows the tableau):
+
+ --	 --	(sp)	 --	 Qh	 --	 --	 --	 --	 --
+ --	 --		 Ks	 Jh	 --	 Jc	 --	 --	 --
+ --	 --		 2s	 7h	 --	 8h	 --	 --	 Kh
+ --	 --		 As		 As	 7h	 Kc	 --	 Qc
+ Jc	 Kd		 9h		 9h		 Qc	 Kc	 Jh
+10h	 9d		 8d		 8s		 Jd	 7s	 Js
+ 9c	 8d				 7c		 5s	 6s	 3d
+ 8s	 7d				 6c		 4h	 Qh	 2c
+ 7d	 3h				 5c		 3c	 Js	 Ad
+ 6h	 2h				 4h		 2c	 8c	 8h
+ 5d	 Ah				 3s		 Ac
+ 3d	 2d				 2s		10s
+ 2d					 5c		 9s
+ Ah					 6d		 8c
+ 9s					 5h		 7s
+10c							 6s
+							 5s
+							 4c
+
+Solution:
+
+First, we ascertain that we can't get a second space.  The only place where
+we might be able to do so is column 5, and to move the Q-Jh we need to find a
+King that doesn't already have a Queen on it.  (We'll call this a "free
+King", for short.)  There are three free Kings, but the one in column 9 is
+useless since we need another free King to get to it, and those in columns 2
+and 4 are inaccessible since there are no free 3's.  Hence, whatever we do,
+we have to do it using only the one space.
+
+Next, can we remove a complete set of clubs or hearts?  Well, hearts are out,
+because the only Kh showing is in column 10, and the only 10h is in column 1,
+and getting to each of them requires that we move a 3 onto a free 4.  Since
+there's only one free 4 (in column 8), we lose.  How about clubs?  They don't
+work out, either, but the proof is trickier.  The only 9c is in column 1 and
+getting to it will require our sole free 4.  Thus we can't use the Qc in
+column 10, and must instead use the Qc from column 8.  To reach it we need a
+free 6; we have exactly one free 6, namely in column 9.  We CAN get to this
+6, without losing the space, by a fairly convoluted sequence of moves.  You
+may want to figure out how it can be done before reading on. . . .  Ready?
+Okay, proceed as follows: 7h from 5 to 10, 10c from 1 to 5, 8c from 9 to 1,
+Js from 9 to 3 (into the space), 10c from 5 to 3, Jh from 5 to 9, 10c from 3
+to 9, Js from 3 to 5, 10c from 9 to 5, Q-Jh from 9 to 3, 7-6s from 9 to 4,
+and finally Q-Jh from 3 to 9, getting the space back.
+
+Having determined that we can, if desired, obtain a free 6, let's get back to
+the question of the clubs.  The only 7c is in column 6, and getting to it
+requires a free 6.  But we need the free 6 to get to the Qc as well.  So we
+again lose.  We are thus reduced to uncovering a card without removing any
+suits and without getting any more spaces.  Which column is it to be?  It
+obviously can't be a column containing a King, since (given that we can't
+remove any completed suits) the only place a King can go is into the space.
+And it can't be column 1 or 7, since that would require a free Queen, and
+there isn't any.  So it must be column 6.  We can get through that column by
+first digging through to the free 6 as described earlier, and then playing:
+5h from 6 to 4, 6d from 6 to 10, 5c from 6 to 10, 3-2s from 6 to 3, 4h from 6
+to 4, 3-2s from 3 to 4, 7-5c from 6 to 1.  The tableau now looks like this:
+
+ --	 --	(sp)	 --	 Qh	 --	 --	 --	 --	 --
+ --	 --		 Ks	 Js	 --	 Jc	 --	 --	 --
+ --	 --		 2s	10c	 --	 8h	 --	 --	 Kh
+ --	 --		 As		 As	 7h	 Kc	 --	 Qc
+ Jc	 Kd		 9h		 9h		 Qc	 Kc	 Jh
+10h	 9d		 8d		 8s		 Jd	 Qh	 Js
+ 9c	 8d		 7s				 5s	 Jh	 3d
+ 8s	 7d		 6s				 4h		 2c
+ 7d	 3h		 5h				 3c		 Ad
+ 6h	 2h		 4h				 2c		 8h
+ 5d	 Ah		 3s				 Ac		 7h
+ 3d	 2d		 2s				10s		 6d
+ 2d							 9s		 5c
+ Ah							 8c
+ 9s							 7s
+ 8c							 6s
+ 7c							 5s
+ 6c							 4c
+ 5c
+
+Once again, it's time to make contingency plans.  If we just move the 9h-8s
+onto the 10c and the As onto the 2s, we could be in trouble if we turn up a
+King.  The lone space won't be sufficient for us to be able to move the stuff
+out of column 5 onto the King.  So we undo some of what we did in the course
+of getting the free 6: Jh from 9 to 3, 10c from 5 to 3, Js from 5 to 9, 10c
+from 3 to 9, Jh from 3 to 5.  While we're at it, it can't hurt to move the 4c
+from 8 to 1, and in a moment we'll match the 8s with a 9s, too.  We now
+proceed: 8s from 6 to 3, 9h from 6 to 9, 8-5c from 1 to 9, 8s from 3 to 1,
+and finally As from 6 to 4.  (Once again, preparation pays off; in the game
+where this took place, the card turned up was indeed a King.)
+
+===========================================================================
+
+?jT\Ne61gU/3`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?Pe:O`5J_0EZo at Uj?P LF^Q/lLR4Y^cDjm3 XCkS/QENCCAV`O 3 ]:na6K<1F[LAV =Dil1W9>CgJN b P 4:[/eQW8\afKl16  @J/8\QA7o279 C.
+
+Again, complete sets of clubs and hearts are available.  Without dealing any
+more cards or turning up any face-down cards, remove a set of clubs AND a set
+of hearts (not necessarily in that order).  Can you remove them in the other
+order?
+
+ --	 --	 8c	 Ks	 Kh	 5c	 Kc	 --	(sp)	 --
+ --	 --		 Qh	 Qh			 --		 --
+ --	 --		 Jc	 Jh			 --		 Kh
+ --	 --		10c	10c			 Kc		 Qc
+ Jc	 Kd		 9c	 9h			 Qc		 Jh
+10h	 9d		 8c	 8d			 Jd		 Js
+ 9s	 8d		 7c	 7d			10h		 3d
+ 8s	 7d		 6c	 6d			 9h		 2c
+ 7s	 3h		 5c	 5d			 8h		 Ad
+ 6s	 2h		 4c	 4h			 7h		 8h
+ 5s	 Ah		 3c	 3d			 6h		 7h
+ 4s	 2d		 2c	 2d			 5h
+ 3c	 Ah		 Ac				 4h
+ 2s							 3h
+ As
+
+Solution:
+
+The clubs look like the better bet, since the Jack through Ace are already
+assembled and there's a King-Queen in column 8.  Let's see what can be done.
+Since there are no free 9's or 6's, we have to remove the first completed
+suit without the benefit of any additional spaces.  Since we are also short
+on free 4's, this means we can't use the Qc in column 10.  That seems okay;
+the one in column 8 looks easier to get to anyhow.  All we have to do is move

@@ Diff output truncated at 100000 characters. @@

This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the devel mailing list