GlkChess - Build notes ---------------------- GlkChess consists of a single Inform source file, glkboard.inf, that includes mscp.inf, and 96 PNG images used to build the GUI. To build on a Linux system, use "make all", and let the Makefile take care of the build -- glkchess.blb is the full game file. For the additional benefit of Linux users, there is a copy of the Glulx inform compiler (6.21), a cheapglulxe interpreter, and a full Xglk glulxe, in the Tools subdirectory. This directory also contains a copy of Evin Robertson's blorbtar Perl script. To speed up building, there is a PNG image cache file, pngcache.zip, which the build makes, then uses. Once built, it's "sticky"; it's job is to avoid having to build all of the GlkChess PNG files from their "source" GIF format. Use "make maintainer-clean" to dispense with this cache, and build everything from the ground up. Since non-Linux users will probably be unable to build the pngcache.zip, it's included in the source distribution. To build without the benefit of Linux make, here's what to do: o Copy Engine/mscp.inf to ./mscp.h, if not there already. o Compile glkboard.inf into glkboard.ulx. o Unzip pngcache.zip. If your interpreter finds external PICnn images, you may be able to simply run glkboard.ulx at this point. If not, then you'll need to build a Blorb file to house everything. This means o Copy glkboard.ulx to STORY0. o Use a suitable Blorb "tool" to package STORY0 and the files PIC1 to PIC96, in order, into glkchess.blb. The Engine subdirectory contains the Inform MSCP chess playing engine. It has a semi-separate existence, and can be used on its own, in a way similar to an Inform library contribution, outside of GlkChess. The Pieces, Buttons, Labels, and Misc subdirectories contain the various GUI graphics sources, and Linux Makefiles that make heavy use of Jef Poskanzer's PNM tools, and friends, to create PNG files, saving a lot of repetative use of Gimp. Tools contains assorted helpful build and test tools, to make the source more self-contained. It's possible to localize GlkChess by simply creating new PNG images for those that contain words (typically Buttons, Labels, and Misc). Similarly, you can create new images for the pieces if you wish. If you do, it's best to stick to the current image sizes - 32x32 pixels for each piece image. -- Simon Baldwin 10th Sept 2003