+ # 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 applications folder.
+ if [ -d "$HOME/apps" ]; then
+ # general search for normal project folders in apps.
+ REPOSITORY_LIST+="$(find "$HOME/apps" -maxdepth 2 -mindepth 2 -iname ".git" -type d -exec dirname {} ';') "
+ REPOSITORY_LIST+="$(find "$HOME/apps" -maxdepth 2 -mindepth 2 -iname ".svn" -type d -exec dirname {} ';') "
+
+ # special search for site avenger directories; they have avenger5 as second level.
+ REPOSITORY_LIST+="$(find "$HOME/apps" -maxdepth 2 -mindepth 2 -iname "avenger5" -type d) "
+ fi
+
+ # the archive list is a set of directories that are major repositories of
+ # data which can be synched to backup drives.
+ define_yeti_variable MAJOR_ARCHIVE_SOURCES=
+ # the source collections list is a set of directories that indicate they
+ # harbor a lot of source code underneath.
+ define_yeti_variable SOURCECODE_HIERARCHY_LIST=
+
+ # initializes the feisty meow build variables, if possible.
+ function initialize_build_variables()
+ {
+ local found_build_vars=nope
+ # 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=true
+ fi
+ # now augment the environment if we found our build variables.
+ if [ $found_build_vars == true ]; 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.
+#old: 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"
+ define_yeti_variable PATH="$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/testkit/shunit"
+
+ ##############
+
+ define_yeti_variable CORE_VARIABLES_LOADED=true
+
+ if [ ! -z "$DEBUG_FEISTY_MEOW" ]; then echo variables initialization ends....; fi