]> Dogcows Code - chaz/yoink/blobdiff - doc/yoink_readme.7
build system enhancements
[chaz/yoink] / doc / yoink_readme.7
diff --git a/doc/yoink_readme.7 b/doc/yoink_readme.7
new file mode 100644 (file)
index 0000000..e61ddf6
--- /dev/null
@@ -0,0 +1,129 @@
+.\"
+.\" Copyright (c) 2009-2011, Charles McGarvey
+.\" All rights reserved.
+.\" 
+.\" Distributable under the terms and conditions of the 2-clause BSD
+.\" license; see the file COPYING for a complete text of the license.
+.\"
+.Dd June 14, 2011
+.Dt YOINK_README 7
+.Os
+.Sh NAME
+.Nm yoink_readme
+.Nd general information about yoink
+.Sh DESCRIPTION
+Yoink is a game created by Neil Carter for Mac OS.  You play the part of a
+flying alien heroine who must defend her home on Earth from other airborne
+alien invaders.
+.Pp
+This version of the game uses all new code and modern frameworks to bring
+this simple, fast-moving action game to a wider audience.
+.Ss INSTALLATION
+Installing Yoink is simple.  You can typically use commands such as these:
+.Pp
+.D1 cd /path/to/yoink
+.D1 ./configure
+.D1 make && make install
+.Pp
+This will install Yoink into the
+.Pa /usr/local
+directory.  To run Yoink, issue the command:
+.Pp
+.D1 /usr/local/bin/yoink
+.Pp
+or just
+.Nm yoink
+if
+.Pa /usr/local/bin
+is already in your
+.Ev PATH Ns .
+See
+.Xr yoink_install 7
+for a more detailed discussion about the build system and a list of
+required packages.
+.Ss LICENSE
+The new code is released under the 2-clause BSD license.  The old code and
+original resources are provided under the zlib/libpng License.  See the
+.Pa COPYING
+file for complete details.  The full texts of applicable licenses can be
+found in
+.Pa doc/licenses
+within the Yoink package.
+.Ss ABOUT THE CODE
+The code is a complete rewrite, containing none of the original code.  I've
+made some effort to put the more generic or reusable code into a separate
+library called libmoof.  I've also made an effort to incorporate 3rd-party
+code that happened to fit well into what I needed.  So, generally, the
+source code is separated into these three categories:
+.Bl -enum
+.It
+Yoink-specific code.  This is the code in the
+.Pa src
+directory.  These classes reside in no explicit namespace.
+.It
+Reusable code.  The code is in
+.Pa src/moof Ns ,
+and it is compiled as a convenience library.  These classes and helper
+functions reside in the moof namespace.  Since I wrote this code alongside
+the Yoink-specific stuff, there is somewhat of a blurry line between the
+two categories, unfortunately.
+.It
+Third-party code.  This is made up of free code from other projects or
+libraries, the licenses of which are also noted in the
+.Pa COPYING
+file.  This code resides in various namespaces and in various
+subdirectories of
+.Pa src Ns .
+.El
+.Ss PACKAGING
+Here are some tips to help packagers:
+.Bl -bullet
+.It
+The build scripts are written in Lua, so make sure the Lua interpreter is
+installed.  That shouldn't be a problem since Yoink depends on the Lua
+library anyway.
+.It
+The
+.Pa Makefile
+will only work well with GNU make.  On some systems, this is installed as
+.Nm gmake Ns .
+.It
+The
+.Pa configure
+script supports most of the useful options that an Autoconf-generated
+script would have, and the
+.Pa Makefile
+supports
+.Ar DESTDIR Ns .
+.El
+.Pp
+See
+.Xr yoink_install 7
+for a more detailed discussion about the build system.
+.Ss SENDING PATCHES
+I'll gladly entertain patches if you want to help out.  Just email me your
+stuff or tell me where to pull if you use git.  If you're interested in
+that, please observe the following:
+.Bl -bullet
+.It
+Stick to the coding style of the source code files you edit.  Follow the
+general style of method and variable naming, as well as white space
+formatting.  In particular, use literal tabs with an assumed tabstop of 4
+characters.  Also, try to limit line lengths to 75 characters.
+.It
+For legal reasons, don't include other peoples' code with your patch.  You
+must also agree to license your changes according to the same terms and
+conditions as the files you edit, usually the 2-clause BSD license.
+.It
+If you want your name and contact information in the
+.Pa AUTHORS
+file, please make it so in the patch you provide.
+.El
+.Sh SEE ALSO
+.Xr yoinkrc 5 Ns ,
+.Xr yoink 6
+.Sh AUTHORS
+.Bl -tag -width 2i -compact
+.It An Charles McGarvey
+.Mt chaz@dogcows.com
+.El
This page took 0.023112 seconds and 4 git commands to generate.