These apps are external to the feisty meow build...
-production/msys hierarchy:
- This is copied directly from the msys project of MingW.
- It has had zip.exe, unzip.exe and short_path.exe added to it:
+production/win32_help hierarchy:
+ unzip.exe & zip.exe:
+ The zip and unzip tools are from the info-zip project. They are somewhat
+ antiquated but still work great on the various 32-bit windows platforms.
+ These utilities are self-identified as: "Zip 2.3 (November 29th 1999)"
+ To get a more recent version of the zip utilities or build them yourself,
+ they can be found at the site: http://www.info-zip.org/
- unzip.exe & zip.exe:
- The zip and unzip tools are from the info-zip project. They are somewhat
- antiquated but still work great on the various 32-bit windows platforms.
- These utilities are self-identified as: "Zip 2.3 (November 29th 1999)"
- To get a more recent version of the zip utilities or build them yourself,
- they can be found at the site: http://www.info-zip.org/
-
- short_path.exe:
- This tool is built by the code bootstrapping process (that is, by
- scripts/generator/bootstrap_build.sh), but unfortunately it is
- desperately needed for windows builds to work nicely with clam and
- bash. If you don't have it, and your visual studio installation path
- has spaces in it, then you may have trouble bootstrapping. You can
- manually change your VC root variable to a short path version, as
- reported by dir /x). This tool can be replaced by any newer working
- version created by a bootstrap build.
+ short_path.exe:
+ This tool is built by the code bootstrapping process (that is, by
+ scripts/generator/bootstrap_build.sh), but unfortunately it is
+ desperately needed for windows builds to work nicely with clam and
+ bash. If you don't have it, and your visual studio installation path
+ has spaces in it, then you may have trouble bootstrapping. You can
+ manually change your VC root variable to a short path version, as
+ reported by dir /x). This tool can be replaced by any newer working
+ version created by a bootstrap build.
+ zap_process.exe
+ A win32 tool that kills any process containing the name provided.
win32 in the
MingW MSYS
package (http://www.mingw.org/).</big></li>
- <li><big>The MSYS tools are actually included in the source safe
-archive for
-hoople. The version provided by hoople is recommended
-because a
-couple of missing tools have been added back in.</big></li>
- <li><big>They can also be downloaded the mingw web site: <a
- href="msys_bins.tar.gz">MSYS
-package: msys_bins.tar.gz</a></big></li>
- <li><big>Note that you will need to add the
-binaries
-directory from MSYS
-to
-your path. The PATH variable can be accessed under MS-NT type
-OSes through the
-"control panel | system | advanced | environment variables" menu
-trail. If you plan to use msys outside of clam, then ensure that
-the MSYS bin (l:/msys/bin) directory is prior
-to the
+ <li><big>Note that you will need to add the binaries directory from MSYS to
+your path. The PATH variable can be accessed under MS-NT type OSes through the
+"control panel | system | advanced | environment variables" menu trail. If you
+plan to use msys outside of clam, then ensure that
+the MSYS bin directory is prior to the
windows system directory in your path; this causes the Unix "find"
-command to be used instead of the NT version.</big></li>
+command to be used instead of the Windows version.</big></li>
<li><big>Alternatively, a similar set of GNU utilities is
available
-in the <a href="http://cygwin.com/">Cygwin
-package</a>, although these tools are no longer recommended and are, in
+in the <a href="http://cygwin.com/">Cygwin package</a>, although these tools are no longer recommended and are, in
fact, actively deprecated.</big></li>
<small> </small><big> </big><small> </small>
<ol>
# against the file with absolute path, so to exclude all test directories
# for example use the pattern */test/*
-EXCLUDE_PATTERNS = "*/3rdparty/*" "*/clam_bin/*" "*/bin/*" "*/binaries/*" "*/install/*" "*/logs/*" "*/msys/*" "*/objects/*" "*/packages/*" "*/waste/*"
+EXCLUDE_PATTERNS = "*/3rdparty/*" "*/clam_bin/*" "*/bin/*" "*/binaries/*" "*/install/*" "*/logs/*" "*/objects/*" "*/packages/*" "*/waste/*"
# The EXAMPLE_PATH tag can be used to specify one or more files or
# directories that contain example code fragments that are included (see
+++ /dev/null
-; bundler manifest for the AutoTest Tool kit.
-; author: Chris Koeritz
-
-[toc]
-set_target=t
-set_temp=t ; may be removed if we get everything working?
-set_tmp=t
-set_logdir=t
-; msys and unix tool support goes in first.
-msys_bin=t
-msys_etc=t
-echo=t
-pwd=t
-unzip=t
-zip=t
-ini_edit=t
-invis=t
-mdate=t
-sleep_ms=t
-winvis=t
-zap_process=t
-await_app=t
-bytedump=t
-check_addr=t
-fdate=t
-gui_message=t
-merge_inis=t
-query_text=t
-run_as_service=t
-service_controller=t
-show_versions=t
-dcomperm=t
-reg=t
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-; variables used during installation.
-
-[set_target]
-variable=TARGET=c:/autotesting_tools
-
-[set_temp]
-variable=TEMP=$TARGET/tmp
-
-[set_tmp]
-variable=TMP=$TARGET/tmp
-
-[set_logdir]
-variable=LOGDIR=$TARGET/logs
-
-; main payload of installer.
-
-[msys_etc]
-source=$FEISTY_MEOW_DIR/build/msys/etc/*
-target=$TARGET/etc
-
-[msys_bin]
-source=$FEISTY_MEOW_DIR/build/msys/bin/*
-target=$TARGET/bin
-
-[echo]
-source=$FEISTY_MEOW_DIR/binaries/echo$EXE_END
-target=$TARGET/echo$EXE_END
-
-[pwd]
-source=$FEISTY_MEOW_DIR/binaries/pwd$EXE_END
-target=$TARGET/pwd$EXE_END
-
-[await_app]
-source=$FEISTY_MEOW_DIR/binaries/await_app_exit$EXE_END
-target=$TARGET/await_app_exit$EXE_END
-
-[bytedump]
-source=$FEISTY_MEOW_DIR/binaries/bytedump$EXE_END
-target=$TARGET/bytedump$EXE_END
-
-[check_addr]
-source=$FEISTY_MEOW_DIR/binaries/check_address$EXE_END
-target=$TARGET/check_address$EXE_END
-
-[fdate]
-source=$FEISTY_MEOW_DIR/binaries/fdate$EXE_END
-target=$TARGET/fdate$EXE_END
-
-[gui_message]
-source=$FEISTY_MEOW_DIR/binaries/gui_message$EXE_END
-target=$TARGET/gui_message$EXE_END
-
-[ini_edit]
-source=$FEISTY_MEOW_DIR/binaries/ini_edit$EXE_END
-target=$TARGET/ini_edit$EXE_END
-
-[invis]
-source=$FEISTY_MEOW_DIR/binaries/invisilaunch$EXE_END
-target=$TARGET/invisilaunch$EXE_END
-
-[mdate]
-source=$FEISTY_MEOW_DIR/binaries/mdate$EXE_END
-target=$TARGET/mdate$EXE_END
-
-[merge_inis]
-source=$FEISTY_MEOW_DIR/binaries/merge_inis$EXE_END
-target=$TARGET/merge_inis$EXE_END
-
-[query_text]
-source=$FEISTY_MEOW_DIR/binaries/query_text$EXE_END
-target=$TARGET/query_text$EXE_END
-
-[run_as_service]
-source=$FEISTY_MEOW_DIR/binaries/run_as_service$EXE_END
-target=$TARGET/run_as_service$EXE_END
-
-[service_controller]
-source=$FEISTY_MEOW_DIR/binaries/service_controller$EXE_END
-target=$TARGET/service_controller$EXE_END
-
-[sleep_ms]
-source=$FEISTY_MEOW_DIR/binaries/sleep_ms$EXE_END
-target=$TARGET/sleep_ms$EXE_END
-
-[show_versions]
-source=$FEISTY_MEOW_DIR/binaries/show_versions$EXE_END
-target=$TARGET/show_versions$EXE_END
-
-[unzip]
-source=$FEISTY_MEOW_DIR/build/msys/bin/unzip.exe
-target=$TARGET/unzip.exe
-
-[winvis]
-source=$FEISTY_MEOW_DIR/binaries/winvisilaunch$EXE_END
-target=$TARGET/winvisilaunch$EXE_END
-
-[zap_process]
-source=$FEISTY_MEOW_DIR/binaries/zap_process$EXE_END
-target=$TARGET/zap_process$EXE_END
-
-[zip]
-source=$FEISTY_MEOW_DIR/build/msys/bin/zip.exe
-target=$TARGET/zip.exe
-
-[dcomperm]
-source=$FEISTY_MEOW_DIR/binaries/dcomperm$EXE_END
-target=$TARGET/dcomperm$EXE_END
-
-[reg]
-source=$FEISTY_MEOW_DIR/packages/support/microsoft/apps/reg.exe
-target=$TARGET/reg.exe
-
+++ /dev/null
-#!/bin/bash
-
-# Creates a bundle of tools for testing to improve our capabilities in
-# scripting.
-
-INSTDIR=$FEISTY_MEOW_DIR/install/Tests
-if [ ! -d "$INSTDIR" ]; then mkdir -p "$INSTDIR"; fi
-TOOL_PACK=$INSTDIR/autotesting_tools.exe
-rm -f "$TOOL_PACK"
-
-$FEISTY_MEOW_DIR/binaries/bundle_creator -o "$TOOL_PACK" -m ./autotesting_manifest.txt
-if [ "$?" != "0" ]; then
- echo Failure during creation of autotest package.
- exit 23
-fi
-
+++ /dev/null
-include variables.def
-
-PROJECT = autotesting_tools
-FIRST_TARGETS = build_tools
-CLEANUPS = autotesting_Tools.exe
-
-include rules.def
-
-build_tools:
- $(HIDESH)create_autotesting_bundle.sh
-
+++ /dev/null
-[Common]
-LogPath=$TMP/logs
-
FIRST_TARGETS = build_bundle
CLEANUPS = $(FEISTY_MEOW_DIR)/install/example_bundle$(EXE_END)
export UNIX_BIN = /bin
-ifeq "$(OP_SYSTEM)" "WIN32"
- export UNIX_BIN = $(BUILDING_HIERARCHY)/msys/bin
-endif
+#hmmm: is UNIX_BIN used anywhere?
include cpp/rules.def
local($base) = @_;
$date_tool = "date";
- if ($OS =~ /win/i) {
- # just hope that this is running under msys in our build bin.
- $date_tool = "$PRODUCTION_DIR/msys/bin/date";
- }
+# if ($OS =~ /win/i) {
+# # just hope that this is running under msys in our build bin.
+# $date_tool = "$PRODUCTION_DIR/msys/bin/date";
+# }
local($date_part) = `$date_tool +%Y-%m-%d-%H%M`;
while ($date_part =~ /[\r\n]$/) { chop $date_part; }
push(@missing_log, $base);
}
+print "snarfer function assumes msys canonicalization is appropriate--not cygwin compat.\n";
local($outcome) = 0xff & system $tar_tool,
"-rf", &msys_canonicalize($target_file), @excludes,
"--files-from=" . &msys_canonicalize($temp_file);
if ($i =~ /^\.\//) {
$i = substr $i, 2, length($i) - 2;
}
+print "snarf_file_list function assumes msys canonicalization is appropriate--not cygwin compat.\n";
local($outcome) = 0xff & system $tar_tool,
#"--directory=" . "$root",
@extra_flags, "-rf", &msys_canonicalize($target_file), @excludes, $i;
#print "remove_from_backup: pref=$prefix, num=$number, patt=$pattern,\n";
local($target_file) = &snarf_name($prefix, $number);
+print "remove_from_backup function assumes msys canonicalization is appropriate--not cygwin compat.\n";
open(TARPROC, "$tar_tool --delete -f " . &msys_canonicalize($target_file)
. " \"$pattern\" 2>$null_log |");
<TARPROC>;
local($currdir) = cwd();
chdir($TMP);
+print "backup_number function assumes msys canonicalization is appropriate--not cygwin compat.\n";
local($outcome) = 0xff & system $tar_tool, "-cf",
&msys_canonicalize($target_file), &msys_canonicalize($number_file);
if ($outcome) { die("failure to archive"); }
$filename = "../" . $filename;
}
+print "restore_archive function assumes msys canonicalization is appropriate--not cygwin compat.\n";
local($outcome) = 0xff & system $tar_tool, "-xzf",
&msys_canonicalize($filename);
if ($outcome) { die("failure to undo archive"); }
# find command. on dosdows, the find command is utter garbage and we need
# to make sure we don't accidentally run that inferior one.
export FIND = find
-#ifeq "$(OP_SYSTEM)" "WIN32"
-# export FIND = $(FEISTY_MEOW_DIR)/msys/bin/find
-#endif
# "PARAMETER_FILE" is the location of our version stamps (if defined) and
# also contains any extra flags passed to the compilation.
export BINDIR=$FEISTY_MEOW_DIR/production/binaries
# add binaries created within build to the path.
- export PATH="$(dos_to_msys_path $BUILD_TOP/build/bin):$PATH"
+# export PATH="$(dos_to_msys_path $BUILD_TOP/build/bin):$PATH"
+ export PATH="$BUILD_TOP/build/bin:$PATH"
# Shared libraries are located via this variable.
- export LD_LIBRARY_PATH="$(dos_to_msys_path $LD_LIBRARY_PATH):$(dos_to_msys_path $BINDIR)"
+# export LD_LIBRARY_PATH="$(dos_to_msys_path $LD_LIBRARY_PATH):$(dos_to_msys_path $BINDIR)"
+ export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$BINDIR"
fi
}
# set the path for locating applications. this is done after any
# potential overrides from the user.
-export PATH="$(dos_to_msys_path $BINDIR):$(dos_to_msys_path $FEISTY_MEOW_GENERATED):$PATH:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/lib:/usr/games:/usr/bin:."
+#export PATH="$(dos_to_msys_path $BINDIR):$(dos_to_msys_path $FEISTY_MEOW_GENERATED):$PATH:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/lib:/usr/games:/usr/bin:."
+export PATH="$BINDIR:$FEISTY_MEOW_GENERATED:$PATH:/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/lib:/usr/games:/usr/bin:."
##############
#
# (1) the script should be run with a full path, so that it can decide where
# it lives with minimal fuss.
-# (2) on windows, the msys bin directory should already be in the path so that
-# tools like dirname are already available.
+# (2) on windows, the unix tools bin directory should already be in the path
+# so that tools like dirname are already available. use msys or cygwin
+# at your discretion and your own risk.
# make sure we know how to find our bash bins.
export PATH=/bin:$PATH
# Please send any updates to: fred@gruntose.com
##############
-# prerequisites for this script:
-#
-# (1) the script should be run with a full path, so that it can decide where
-# it lives with minimal fuss.
-# (2) on windows, the msys bin directory should already be in the path so that
-# tools like dirname are already available.
-
# here is where we compute the locations for the build's pieces, based on
# where this script is located. we currently assume that the build scripts
# like this one are at the same height in the hierarchy as the clam scripts
# helpful build function zone.
source $FEISTY_MEOW_SCRIPTS/core/functions.sh
- # load msys_to_dos_path and dos_to_msys_path.
-
-#### switches from a /X/path form to an X:/ form.
-###function msys_to_dos_path() {
-### # we always remove dos slashes in favor of forward slashes.
-### echo "$1" | sed -e 's/\\/\//g' | sed -e 's/\/\([a-zA-Z]\)\/\(.*\)/\1:\/\2/'
-###}
-
-#### switches from an X:/ form to an /X/path form.
-###function dos_to_msys_path() {
-### # we always remove dos slashes in favor of forward slashes.
-### echo "$1" | sed -e 's/\\/\//g' | sed -e 's/\([a-zA-Z]\):\/\(.*\)/\/\1\/\2/'
-###}
##############
echo "[OS is \"$OPERATING_SYSTEM\"]"
fi
-#hmmm: all this stuff is highly questionable value now.
-#### we create the variable FEISTY_MEOW_DIR, but we keep the dos form of
-#### the path, because otherwise lots of bad things happens when passing the
-#### folders around to visual studio commands that don't allow a space after them.
-###if [ -d "$BUILDING_HIERARCHY/source" ]; then
-### # old style repository is same height as building hierarchy.
-### export FEISTY_MEOW_DIR="$BUILDING_HIERARCHY"
-###else
-### # new style repository is a level above the build hierarchy.
-### export FEISTY_MEOW_DIR="$(echo "$BUILDING_HIERARCHY" | sed -e 's/\(.*\)\/[^\/]*/\1/')"
-###fi
-###
-###if [ "$OPERATING_SYSTEM" = "WIN32" ]; then
-### # make sure repository dir looks right on windoze.
-### export FEISTY_MEOW_DIR="$(msys_to_dos_path "$FEISTY_MEOW_DIR")"
-###fi
-
if [ ! -z "$SHELL_DEBUG" ]; then
echo "[FEISTY_MEOW_DIR is $FEISTY_MEOW_DIR]"
fi