Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 May 1998 11:21:47 +0400 (MSD)
From:      Andrey Zakhvatov <andy@icc.surw.chel.su>
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/6631: New port: KnightCap-3.5
Message-ID:  <199805140721.LAA19716@icc.surw.chel.su>

next in thread | raw e-mail | index | archive | help

>Number:         6631
>Category:       ports
>Synopsis:       New port: KnightCap-3.5
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu May 14 00:20:01 PDT 1998
>Last-Modified:
>Originator:     Andrey Zakhvatov
>Organization:
South Ural Railway ICC
>Release:        FreeBSD 2.2.2-RELEASE i386
>Environment:

>Description:

   This is a port of KnightCap - a chess program.
The principal differences between KnightCap and other chess programs
are:

 - KnightCap has an optional fully rendered 3D interface, giving a feel much
   more like an "over the board" game.

 - KnightCap was developed to run on a parallel distributed memory
   machine, although it also runs on normal unix boxes.

 - KnightCap does not have an opening book---instead it keeps a file
   (brain.dat) of losing moves and inserts them in the hash table at the
   start of each search. At present it has about 1500 entries, and
   this makes it a pretty competitive opening player. 

 - KnightCap learns the parameters of its evaluation function as it
   plays. The most dramatic example of how this helps is an experiment
   we conducted on FICS in which KnightCap learnt from a 1650 player
   to a 2100 player in just 300 games. See
   http://keating.anu.edu.au/~jon/papers/knigtcap.ps.gz for more info on
   its learning algorithm.


# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	KnightCap-3.5
#	KnightCap-3.5/Makefile
#	KnightCap-3.5/files
#	KnightCap-3.5/files/md5
#	KnightCap-3.5/patches
#	KnightCap-3.5/patches/patch-ab
#	KnightCap-3.5/patches/patch-aa
#	KnightCap-3.5/pkg
#	KnightCap-3.5/pkg/PLIST
#	KnightCap-3.5/pkg/COMMENT
#	KnightCap-3.5/pkg/DESCR
#
echo c - KnightCap-3.5
mkdir -p KnightCap-3.5 > /dev/null 2>&1
echo x - KnightCap-3.5/Makefile
sed 's/^X//' >KnightCap-3.5/Makefile << 'END-of-KnightCap-3.5/Makefile'
X# New ports collection makefile for:	KnightCap
X# Version required:			3.5
X# Date created:				10 May 1998
X# Whom:					Andrey Zakhvatov
X#
X# $Id$
X#
X
XDISTNAME=	KnightCap-3.5
XCATEGORIES=	games x11
XMASTER_SITES=	ftp://samba.anu.edu.au/pub/KnightCap/
X
XMAINTAINER=	andy@icc.surw.chel.su
X
XLIB_DEPENDS=	MesaGL\\.13\\.:${PORTSDIR}/graphics/Mesa \
X		MesaGLU\\.13\\.:${PORTSDIR}/graphics/Mesa \
X		glut\\.3\\.:${PORTSDIR}/graphics/Mesa
X
XALL_TARGET=	KnightCap
XUSE_X11=	yes
XWRKSRC=		${WRKDIR}/Export
X
Xdo-install:
X	@ ${INSTALL_PROGRAM} ${WRKSRC}/KnightCap ${PREFIX}/bin
X.if !defined(NOPORTDOCS)
X	@ ${MKDIR} ${PREFIX}/share/doc/KnightCap
X	@ ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/KnightCap
X.endif
X
X.include <bsd.port.mk>
END-of-KnightCap-3.5/Makefile
echo c - KnightCap-3.5/files
mkdir -p KnightCap-3.5/files > /dev/null 2>&1
echo x - KnightCap-3.5/files/md5
sed 's/^X//' >KnightCap-3.5/files/md5 << 'END-of-KnightCap-3.5/files/md5'
XMD5 (KnightCap-3.5.tar.gz) = 4c188f4a8e0e153ca7d6e84257cb1ae1
END-of-KnightCap-3.5/files/md5
echo c - KnightCap-3.5/patches
mkdir -p KnightCap-3.5/patches > /dev/null 2>&1
echo x - KnightCap-3.5/patches/patch-ab
sed 's/^X//' >KnightCap-3.5/patches/patch-ab << 'END-of-KnightCap-3.5/patches/patch-ab'
X--- knightcap.c	Wed Mar 11 21:51:58 1998
X+++ /home/andy/tmp/wrk/knightcap.c	Sun May 10 09:54:22 1998
X@@ -934,7 +934,11 @@
X 	reset_board();
X 	init_movements();
X 
X+#ifdef __FreeBSD__
X+	signal(SIGCHLD, SIG_IGN);
X+#else
X 	signal(SIGCLD, SIG_IGN);
X+#endif
X 
X 	pid1 = getpid();
X 
END-of-KnightCap-3.5/patches/patch-ab
echo x - KnightCap-3.5/patches/patch-aa
sed 's/^X//' >KnightCap-3.5/patches/patch-aa << 'END-of-KnightCap-3.5/patches/patch-aa'
X--- Makefile	Wed Mar 11 21:51:57 1998
X+++ /home/andy/tmp/wrk/Makefile	Sun May 10 09:54:13 1998
X@@ -2,11 +2,11 @@
X 
X # what C compiler? It better be Ansi-C. Use gcc if you have it.
X # you may find that KnightCap is very slow if you don't use gcc
X-CC = gcc
X+#CC = gcc
X 
X # What compiler switches do you want? These ones work well with gcc
X #OPT = -O2 -fshort-enums -Wall
X-OPT = -g -fshort-enums -Wall
X+OPT = -O2 -fshort-enums -Wall -DPI=M_PI
X 
X # If you don't have gcc then perhaps try this instead. You only need
X # the null definition for inline if your C compiler doesn't know about
X@@ -21,13 +21,10 @@
X # display (or you don't have OpenGL and Glut libraries)
X # If you do have these libs then make sure the first three
X # lines point at the right places
X-MESA = /usr/local/Mesa-2.1
X-GLUT = /usr/local/Mesa-2.1/glut-3.2
X-X11 = /usr/X11R6
X-GLUT_LIBS = -L$(GLUT)/lib/glut -lglut
X-MESA_LIBS = -L$(MESA)/lib -lMesaGLU -lMesaGL -lm
X-XLIBS = -L$(X11)/lib -lXmu -lXt -lXext -lX11 -lXi
X-DISPLAYFLAGS = -I$(MESA)/include -I$(GLUT) -DRENDERED_DISPLAY=1
X+GLUT_LIBS = -L$(X11BASE)/lib -lglut
X+MESA_LIBS = -L$(X11BASE)/lib -lMesaGLU -lMesaGL -lm
X+XLIBS = -L$(X11BASE)/lib -lXmu -lXt -lXext -lX11 -lXi
X+DISPLAYFLAGS = -I$(X11BASE)/include -DRENDERED_DISPLAY=1
X 
X # comment out the following line if you don't want KnightCap's
X # evaluation function learning turned on. 
END-of-KnightCap-3.5/patches/patch-aa
echo c - KnightCap-3.5/pkg
mkdir -p KnightCap-3.5/pkg > /dev/null 2>&1
echo x - KnightCap-3.5/pkg/PLIST
sed 's/^X//' >KnightCap-3.5/pkg/PLIST << 'END-of-KnightCap-3.5/pkg/PLIST'
Xbin/KnightCap
Xshare/doc/KnightCap/README
X@dirrm share/doc/KnightCap
END-of-KnightCap-3.5/pkg/PLIST
echo x - KnightCap-3.5/pkg/COMMENT
sed 's/^X//' >KnightCap-3.5/pkg/COMMENT << 'END-of-KnightCap-3.5/pkg/COMMENT'
XChess program with 3D interface for X Window System.
END-of-KnightCap-3.5/pkg/COMMENT
echo x - KnightCap-3.5/pkg/DESCR
sed 's/^X//' >KnightCap-3.5/pkg/DESCR << 'END-of-KnightCap-3.5/pkg/DESCR'
XKnightCap is a chess program.
X
XThe principal differences between KnightCap and other chess programs
Xare:
X
X - KnightCap has an optional fully rendered 3D interface, giving a feel much
X   more like an "over the board" game.
X
X - KnightCap was developed to run on a parallel distributed memory
X   machine, although it also runs on normal unix boxes.
X
X - KnightCap does not have an opening book---instead it keeps a file
X   (brain.dat) of losing moves and inserts them in the hash table at the
X   start of each search. At present it has about 1500 entries, and
X   this makes it a pretty competitive opening player. 
X
X - KnightCap learns the parameters of its evaluation function as it
X   plays. The most dramatic example of how this helps is an experiment
X   we conducted on FICS in which KnightCap learnt from a 1650 player
X   to a 2100 player in just 300 games. See
X   http://keating.anu.edu.au/~jon/papers/knigtcap.ps.gz for more info on
X   its learning algorithm.
END-of-KnightCap-3.5/pkg/DESCR
exit


>How-To-Repeat:

>Fix:

   Please, check and commit this port.

>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199805140721.LAA19716>