+YOINK_README(7) Miscellaneous Information Manual YOINK_README(7)
-Yoink - The alien-smashing action game
---------------------------------------
+NAME
+ yoink_readme -- general information about yoink
-Contents:
+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.
-I. Users
- a) General information
- b) Requirements
- c) License
-II. Developers
- a) Notes regarding the code
- b) Porting
-III. Packagers
- a) The build system
- b) Targeting Win32
+ This version of the game uses all new code and modern frameworks to bring
+ this simple, fast-moving action game to a wider audience.
+ INSTALLATION
+ Installing Yoink is simple. You can typically use commands such as
+ these:
-I. Users
---------
+ cd /path/to/yoink
+ ./configure
+ make && make install
-a) General information
+ This will install Yoink into the /usr/local directory. To run Yoink,
+ issue the command:
-Yoink is a game originally developed 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.
+ /usr/local/bin/yoink
-This version of the game uses all new code and modern frameworks to bring
-this simple, fast-moving action game to a wider audience.
+ or just yoink if /usr/local/bin is already in your PATH. See
+ yoink_install(7) for a more detailed discussion about the build system
+ and a list of required packages.
-b) Requirements
+ 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 file COPYING for complete details. Other parts are distributed under
+ different licenses. See yoink_license(7) for the full texts of the
+ relevant licenses.
-boost headers
-libvorbis
-Lua
-OpenAL
-OpenGL
-SDL
-SDL_image (with libpng support)
+ 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:
-c) License
+ 1. Yoink-specific code. This is the code in the src directory. These
+ classes reside in no explicit namespace.
-The new code is released under the BSD-2 license. The old code and
-original resources are provided under the zlib/libpng License. See COPYING
-for complete details. The full texts of applicable licenses can be found
-in doc/licenses/.
+ 2. Reusable code. The code is in src/moof, 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.
+ 3. Third-party code. This is made up of free code from other projects
+ or libraries, the licenses of which are also noted in the COPYING
+ file. This code resides in various namespaces and in various
+ subdirectories of src.
-II. Developer
--------------
+ PACKAGING
+ Here are some tips to help packagers:
-a) Notes regarding the code
+ o 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.
-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 Moof. 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:
+ o The Makefile will only work well with GNU make. On some systems,
+ this is installed as gmake.
-1. Yoink-specific code.
+ o The configure script supports most of the useful options that an
+ Autoconf-generated script would have, and the Makefile supports
+ DESTDIR.
-This is the code directly in src/. These classes reside in no namespace.
+ See yoink_install(7) for a more detailed discussion about the build
+ system.
-2. Reusable code.
+ 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:
-Currently, the code is in src/Moof/, and it is compiled as a convenience
-library. These classes and other helper functions reside in the Mf
-namespace. Since I wrote this code alongside the Yoink-specific stuff,
-there is somewhat of a blurry line between the two categories.
+ o 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 8 characters. Also, try to limit line lengths to 78
+ characters.
-3. 3rd-party code.
+ o 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.
-This is made up of free code from other projects or libraries (aside from
-the explicit dependencies above), the licenses of which are also in the
-COPYING file. This code resides in various namespaces and in various
-subdirectories.
+ o If you want your name and contact information in the AUTHORS file,
+ please make it so in the patch you provide.
-b) Porting
+SEE ALSO
+ yoinkrc(5), yoink(6)
-Portability is a goal of this project. To this end, Yoink is written in
-standard C++ and takes advantage of cross-platform libraries. If code
-changes are required to cleanly build Yoink on your platform, please send
-back patches.
-
-
-III. Packagers
---------------
-
-a) The build system
-
-You can probably tell that the build system of this package is built from
-autoconf and automake. It should be fairly sane. If you find any
-problems, especially any bugs which complicate packaging on certain
-systems, please send back patches.
-
-b) Targeting Win32
-
-If you have a working mingw32 toolchain with all the dependencies, you can
-build a win32 binary using a command such as this:
-
-./configure --host=mingw32 --prefix=/usr/mingw32/usr
-
-where mingw32 is the correct name of your toolchain. You can get all the
-non-standard dependencies from the git repository at win32/win32-libs.zip.
-Just unzip the contents of that archive into your toolchain. If everything
-goes smoothly, you should have a yoink.exe appropriate for the win32
-platform. You can then build a complete installer using "make package" if
-you have nsis installed.
+AUTHORS
+ Charles McGarvey chaz@dogcows.com
+NetBSD 5.1.0_PATCH June 14, 2011 NetBSD 5.1.0_PATCH