+ # iterate across our sub-directories and find the perl scripts.
+ # this currently only looks one level down.
+ for i in $FEISTY_MEOW_SCRIPTS/*; do
+ if [ -d "$i" ]; then
+ # check if there is a perl file present; add the folder to PERLLIB if so.
+ ls $i/*.pl &>/dev/null
+ if [ $? -eq 0 ]; then
+ PERLLIB+=":$(dos_to_unix_path $i)"
+ fi
+ fi
+ done
+ define_yeti_variable PERL5LIB=$PERLLIB
+ #echo PERLLIB is now $PERLLIB
+
+ ##############
+
+ # set this so nechung can find its data.
+ define_yeti_variable NECHUNG=$FEISTY_MEOW_APEX/infobase/fortunes.dat
+
+## # establish a pipe for less to see our beloved syntax highlighting.
+## define_yeti_variable LESSOPEN="| source-highlight -f esc -o STDOUT -i %s"
+
+ # the base checkout list is just to update feisty_meow. additional folder
+ # names can be added in your customized scripts. the space at the end of
+ # this variable is important and allows users to extend the list like:
+ # define_yeti_variable REPOSITORY_DIR+="muppets configs"
+ # see the customize/fred folder for a live example.
+ define_yeti_variable REPOSITORY_LIST="$FEISTY_MEOW_APEX "
+
+ # add in any active projects to the repository list.
+ if [ -d "$HOME/active" ]; then
+ REPOSITORY_LIST+="$(find "$HOME/active" -maxdepth 1 -mindepth 1 -type d) "
+ fi
+ # add in any site avenger applications that are in the apps folder.
+ if [ -d "$HOME/apps" ]; then
+ # first, simple projects.
+ REPOSITORY_LIST+="$(find "$HOME/apps" -iname "avenger5" -type d) "
+ # then, site avenger specific projects.
+ REPOSITORY_LIST+="$(find "$HOME/apps" -maxdepth 2 -mindepth 2 -iname "avenger5" -type d) "
+ fi
+
+ # the archive collections list is a set of directories that are major
+ # repositories of data which can be synched to backup drives.
+ define_yeti_variable ARCHIVE_COLLECTIONS_LIST=
+
+ # 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"
+
+ ##############
+
+ define_yeti_variable CORE_VARIABLES_LOADED=true
+
+ if [ ! -z "$DEBUG_FEISTY_MEOW" ]; then echo variables initialization ends....; fi