+ # initializes the feisty meow build variables, if possible.
+ function initialize_build_variables()
+ {
+ found_build_vars=0
+ # we need to know the feisty meow directory, or we bail.
+ if [ -z "$FEISTY_MEOW_APEX" ]; then return; fi
+ # pick from our expected generator folder, but make sure it's there...
+ buildvars="$FEISTY_MEOW_SCRIPTS/generator/build_variables.sh"
+ if [ -f "$buildvars" ]; then
+ # yep, that one looks good, so pull in the build defs.
+ source "$buildvars" "$buildvars"
+ found_build_vars=1
+ fi
+ # now augment the environment if we found our build variables.
+ if [ $found_build_vars == 1 ]; then
+ # the binary directory contains our collection of handy programs.
+ define_yeti_variable FEISTY_MEOW_BINARIES=$TARGETS_STORE
+ # add binaries created within build to the path.
+ define_yeti_variable PATH="$(dos_to_unix_path $FEISTY_MEOW_BINARIES):$PATH"
+ # Shared libraries are located via this variable.
+ define_yeti_variable LD_LIBRARY_PATH="$(dos_to_unix_path $LD_LIBRARY_PATH):$(dos_to_unix_path $FEISTY_MEOW_BINARIES)"
+ fi
+ }
+
+ ##############
+
+ # windoze specific patching up missing things.
+
+ if [ "$OS" == "Windows_NT" ]; then
+ define_yeti_variable HOSTNAME=$(echo $HOSTNAME | tr A-Z a-z)
+ fi
+
+ ##############
+
+ # load in the build environment.
+ initialize_build_variables
+
+ ##############
+
+ # add to the PATH variables used for locating applications. this step is taken after any
+ # potential overrides from the user.
+ define_yeti_variable PATH="$(dos_to_unix_path $FEISTY_MEOW_LOADING_DOCK):$PATH:$(find /usr/local/games -maxdepth 1 -type d -exec echo -n {}: ';' 2>/dev/null)/sbin"
+
+ ##############
+
+ # set the SHUNIT_PATH so our shunit tests can find the codebase.
+ define_yeti_variable SHUNIT_PATH="$FEISTY_MEOW_SCRIPTS/shunit"
+
+ ##############