+++ /dev/null
-
-====
-
-Quick Start for the Feisty Meow Codebase:
-
- Getting the Codebase:
-
- Retrieve a clone of the feisty meow codebase.
-
- git clone git://feistymeow.org:feisty_meow
-
- The rest of these notes assume that you stored the codebase in:
- ~/feisty_meow (aka $HOME/feisty_meow).
-
- Building the Codebase:
-
- Run the following command to build the Feisty Meow libraries and
- applications.
- Note that you may need to install some dependencies first (see below
- for dependency installation instructions).
-
- bash ~/feisty_meow/scripts/generator/produce_feisty_meow.sh
-
- All the applications can be found in $FEISTY_MEOW_BINARIES
- after the build is complete.
-
- Cleaning the Codebase:
-
- This command cleans out all the generated files:
-
- bash ~/feisty_meow/scripts/generator/whack_build.sh clean
-
- Loading the Feisty Meow scripting environment:
-
- Set up the feisty_meow scripts the first time; this is only needed once,
- unless you want to regenerate the scripts from the latest version.
-
- bash ~/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
-
- Load the script environment into the current shell.
-
- source ~/feisty_meow/scripts/core/launch_feisty_meow.sh
-
- Loading the feisty meow script environment with the above command allows
- you to build specific projects in feisty meow by changing into the
- project's directory and running 'make'.
-
- Some example start-up files for loading feisty meow can be found in
- ~/feisty_meow/feisty_inits.
-
-====
-
-Feisty Meow Dependencies:
-
-The feisty meow scripts depend on these scripting languages and tools:
- bash
- perl
- Text::Diff
- File::Which
- python
- gnumake
-
-The feisty meow libraries and applications depend on these tools (see below
-for installation steps):
- Gnu C++
- RTMP streams
- Curl
- Open SSL
-
-====
-
-How to install the most frequently needed compiler and library dependencies:
-
- Ubuntu / Debian:
- sudo apt-get install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
-
- Centos / Redhat / Fedora:
- sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
-
- Cygwin + Windows:
- This is documented in ~/feisty_meow/doc/cygwin_install_list.txt
-
-====
-
-How to install the Feisty Meow script dependencies:
-
- cpan install Text::Diff File::Which
-
- These perl modules are required for a few of the feisty meow scripts to
- work properly. The differ utility and the feisty meow customization system
- will be affected without these modules installed.
-
-====
-
-More information is available at the official site http://feistymeow.org
-
-====
-
-This is the "feisty meow® concerns" codebase top folder.
-
-This software is licensed *per* *file* using either the GNU General Public
-License (GNU GPL) version 3 *or* the Apache Software License version 2.0.
-If a file does not have a license statement attached and it is part of the
-feisty meow® codebase (rather than attributed to some other author), then the
-default license is the GNU GPL.
-
-For information on building the source code, see the file "building.txt".
+==============
+Quick Start Guide for the Feisty Meow Codebase
-####
+(Commands that you should enter into your terminal are prefixed with "=>" and
+conditional portions are prefixed with a '|' character.)
-Feisty Meow Concerns Ltd. is a small software shop that concentrates on
-building high quality, portable, open source projects in a variety of
-languages (primarily bash, perl, C++, Java, and python). Here are some
-highlights of our main products:
+==============
+How to get the feisty meow codebase
- Bookmark Processing Tools - can take a mozilla bookmark file or arbitrary
- web page and extract all the links out of it, building a csv database of
- web links. Using that database, a variety of output formats are
- provided, including one that outputs a mozilla bookmark file again.
- The most useful feature is probably the marks checker that operates on
- our csv format and that locates all unreachable links in the file and
- separates them out.
+| On Microsoft Windows, install the Cygwin tools as documented here:
+| ~/feisty_meow/doc/cygwin_install_list.txt
- CROMP protocol - supports transmission of objects across the network and
- provides a platform independent method for RPC and other types of
- communication.
+Retrieve a clone of the feisty meow code:
+=> git clone git://feistymeow.org/feisty_meow
- Octopus design pattern - the underpinning of the CROMP protocol. An octopus
- has an arbitrary number of tentacles (no, not just eight) which are each
- responsible for consuming a different type of object (or datum).
+The remainder of these notes assume that the code is stored in
+~/feisty_meow (aka $HOME/feisty_meow).
- Fast Templates and Portable Abstractions - the class libraries of Feisty Meow
- provide numerous different data structures and programming language
- abstractions (like threads and state machines). There are also some
- fairly ancient templates (in use since late 80s) which in many cases
- perform faster than their STL analogues.
+==============
+How to load the feisty meow script environment
- CLAM System - Feisty Meow is the home site of the CLAM makefile system. The
- CLAM system is a flexible and extensible method for building C++ and
- C# files using makefiles.
+Set up the feisty_meow scripts; this is only needed once, when you first get
+the codebase. It can also regenerate the scripts using the latest version.
+=> bash ~/feisty_meow/scripts/core/reconfigure_feisty_meow.sh
-####
+Load the script environment into the current shell.
+=> source ~/feisty_meow/scripts/core/launch_feisty_meow.sh
-Historical note:
-Feisty Meow® Concerns codebase comprises some but probably not all of several projects that
-have come before. These include the Twain.COM library scripts, the Yeti / YetiCode library
-scripts, the HOOPLE 1 and HOOPLE 2 C++ Codebases, the Fred Huffhines open source LSL scripts,
-the CLAM build system, and a variety of other efforts.
+With the feisty meow script environment loaded, several aliases are now
+available for building the codebase and they are used in the sections below.
-####
+Closing the current shell will lose the feisty meow environment. Loading the
+environment can be made automatic by adding the 'source' line above to the
+shell's startup file. Example startup files are available in:
+~/feisty_meow/feisty_inits
-Directories and files of interest here...
+==============
+How to install the feisty meow script dependencies
-scripts/
- Stores the script files that we use a lot. These are usually written in interpreted
- languages, such as bash and perl. These were the core of the YetiCode scripts library.
+These perl modules are required by some of the scripts (e.g. the differ
+utility and the feisty meow customization system).
+=> cpan install Text::Diff File::Which
-nucleus/
- Source for the basic modules of the Feisty Meow® codebase. This includes generic
- data structures, useful utilities, and the like. This hierarchy, plus octopi and graphiq,
- formed the major parts of hoople1 and hoople2.
+==============
+How to install the build dependencies for feisty meow
-huffware/
- The library of LSL scripts for osgrid and Second Life written by the avatar named Fred
- Huffhines. Fred Huffhines is a regular contributor and a well-loved member of our
- development team. He also happens to be a fictional sock-puppet for adventuring around
- the grids, but a lot of code has been written in his name. We are going to release the
- full corpus of the Huffhines work over time.
+| Ubuntu / Debian:
+| => sudo apt-get install build-essential librtmp-dev libcurl4-gnutls-dev libssl-dev
-octopi/
- Octopus design pattern and CROMP protocol reference implementations. Assorted applications
- based on these.
+| Centos / Redhat / Fedora:
+| => sudo yum install gcc gcc-c++ openssl-devel.x86_64 curl-devel
-database/
- Some files considered critical to the operations of Feisty Meow Concerns Ltd. This includes
- the database of fortunes used by the Nechung Oracle Program.
+| Microsoft Windows:
+| Download and install the Cygwin environment first from cygwin.com, which is
+| documented in ~/feisty_meow/doc/cygwin_install_list.txt
-doc/
- Assorted documentation files for Feisty Meow and a code-scanning documentation generator
- based on doxygen.
+==============
+How to build the feisty meow codebase
-examples/
- Some files that show how to get work done with Feisty Meow or that show how to do certain
- tasks in different scripting / programming languages.
+Run the following command to build the feisty meow libraries and applications.
+=> bash ~/feisty_meow/scripts/generator/produce_feisty_meow.sh
-kona/
- Our burgeoning Java libraries. Not much to see here yet, but there is some code piling
- up for these that we will try to release soon.
+After the build is complete, the feisty meow applications can be found in
+$FEISTY_MEOW_BINARIES (environment variable).
+=> ls $FEISTY_MEOW_BINARIES
-osgi/
- Some example bundles for Java OSGi. These may eventually fill out with real material,
- but currently they are just tracking the investigation we did into creating bundles and
- running using them.
+==============
+How to clean up the files generated by the build
-production/
- Machinery for getting releases out the door, including the generated files such as binaries
- and build system tools.
+This command cleans out all the generated files:
+=> bash ~/feisty_meow/scripts/generator/whack_build.sh clean
-graphiq/
- GUI tools and components, somewhat busted or just absent right now.
+==============
+What are the feisty meow dependencies?
-webby/
- Source code specifically for web programming and building sites. Mainly a few javascript
- files we keep around.
+The feisty meow scripts depend on these scripting languages and tools:
+ bash
+ perl (including Text::Diff and File::Which)
+ python
+ gnumake
-####
-
-Notable Prerequisites for Using the Feisty Meow® codebase:
-
- Software required to compile under Linux:
- Gnu C++
- A few free source libraries (see "building.txt" for more information).
-
- Software required to compiler under MS-windows:
- The free Microsoft compiler should build the codebase but it is untested.
- The full version of MS Visual Studio 2010 (version 10) is supported.
- --but this has fallen into disrepair.
- Gnu C++ should compile the codebase but it is also untested recently.
-
-####
+The feisty meow libraries and applications depend on these tools:
+ Gnu C++
+ RTMP streams (?still? not sure.)
+ Curl
+ Open SSL
+==============
More information is available at the official site http://feistymeow.org
-####
-
--- /dev/null
+
+This is the "feisty meow® concerns" codebase top folder.
+
+This software is licensed *per* *file* using either the GNU General Public
+License (GNU GPL) version 3 *or* the Apache Software License version 2.0.
+If a file does not have a license statement attached and it is part of the
+feisty meow® codebase (rather than attributed to some other author), then the
+default license is the GNU GPL.
+
+For information on building the source code, see the file "building.txt".
+
+####
+
+Feisty Meow Concerns Ltd. is a small software shop that concentrates on
+building high quality, portable, open source projects in a variety of
+languages (primarily bash, perl, C++, Java, and python). Here are some
+highlights of our main products:
+
+ Bookmark Processing Tools - can take a mozilla bookmark file or arbitrary
+ web page and extract all the links out of it, building a csv database of
+ web links. Using that database, a variety of output formats are
+ provided, including one that outputs a mozilla bookmark file again.
+ The most useful feature is probably the marks checker that operates on
+ our csv format and that locates all unreachable links in the file and
+ separates them out.
+
+ CROMP protocol - supports transmission of objects across the network and
+ provides a platform independent method for RPC and other types of
+ communication.
+
+ Octopus design pattern - the underpinning of the CROMP protocol. An octopus
+ has an arbitrary number of tentacles (no, not just eight) which are each
+ responsible for consuming a different type of object (or datum).
+
+ Fast Templates and Portable Abstractions - the class libraries of Feisty Meow
+ provide numerous different data structures and programming language
+ abstractions (like threads and state machines). There are also some
+ fairly ancient templates (in use since late 80s) which in many cases
+ perform faster than their STL analogues.
+
+ CLAM System - Feisty Meow is the home site of the CLAM makefile system. The
+ CLAM system is a flexible and extensible method for building C++ and
+ C# files using makefiles.
+
+####
+
+Historical note:
+Feisty Meow® Concerns codebase comprises some but probably not all of several projects that
+have come before. These include the Twain.COM library scripts, the Yeti / YetiCode library
+scripts, the HOOPLE 1 and HOOPLE 2 C++ Codebases, the Fred Huffhines open source LSL scripts,
+the CLAM build system, and a variety of other efforts.
+
+####
+
+Directories and files of interest here...
+
+scripts/
+ Stores the script files that we use a lot. These are usually written in interpreted
+ languages, such as bash and perl. These were the core of the YetiCode scripts library.
+
+nucleus/
+ Source for the basic modules of the Feisty Meow® codebase. This includes generic
+ data structures, useful utilities, and the like. This hierarchy, plus octopi and graphiq,
+ formed the major parts of hoople1 and hoople2.
+
+huffware/
+ The library of LSL scripts for osgrid and Second Life written by the avatar named Fred
+ Huffhines. Fred Huffhines is a regular contributor and a well-loved member of our
+ development team. He also happens to be a fictional sock-puppet for adventuring around
+ the grids, but a lot of code has been written in his name. We are going to release the
+ full corpus of the Huffhines work over time.
+
+octopi/
+ Octopus design pattern and CROMP protocol reference implementations. Assorted applications
+ based on these.
+
+database/
+ Some files considered critical to the operations of Feisty Meow Concerns Ltd. This includes
+ the database of fortunes used by the Nechung Oracle Program.
+
+doc/
+ Assorted documentation files for Feisty Meow and a code-scanning documentation generator
+ based on doxygen.
+
+examples/
+ Some files that show how to get work done with Feisty Meow or that show how to do certain
+ tasks in different scripting / programming languages.
+
+kona/
+ Our burgeoning Java libraries. Not much to see here yet, but there is some code piling
+ up for these that we will try to release soon.
+
+osgi/
+ Some example bundles for Java OSGi. These may eventually fill out with real material,
+ but currently they are just tracking the investigation we did into creating bundles and
+ running using them.
+
+production/
+ Machinery for getting releases out the door, including the generated files such as binaries
+ and build system tools.
+
+graphiq/
+ GUI tools and components, somewhat busted or just absent right now.
+
+webby/
+ Source code specifically for web programming and building sites. Mainly a few javascript
+ files we keep around.
+
+####
+
+Notable Prerequisites for Using the Feisty Meow® codebase:
+
+ Software required to compile under Linux:
+ Gnu C++
+ A few free source libraries (see "building.txt" for more information).
+
+ Software required to compiler under MS-windows:
+ The free Microsoft compiler should build the codebase but it is untested.
+ The full version of MS Visual Studio 2010 (version 10) is supported.
+ --but this has fallen into disrepair.
+ Gnu C++ should compile the codebase but it is also untested recently.
+
+####
+
+More information is available at the official site http://feistymeow.org
+
+####
+