X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Fgenerator%2Fwrapdoze.sh;h=ab0a9998ddd1a8b443d0137b16f0a61bf8d1a017;hb=42fc4d3fd60ae9e1791c52a507c220eec8f39fb9;hp=d7432835e403dedaf5ea505f3aa490ca6f1c67c2;hpb=3c83f778aaea475cc3c68d0bab7b63e8427ced1b;p=feisty_meow.git diff --git a/scripts/generator/wrapdoze.sh b/scripts/generator/wrapdoze.sh index d7432835..ab0a9998 100755 --- a/scripts/generator/wrapdoze.sh +++ b/scripts/generator/wrapdoze.sh @@ -2,15 +2,44 @@ source $FEISTY_MEOW_SCRIPTS/core/functions.sh +#hmmm: make this support multiple vars as parameters. +# replaces a specific environment variable with a dos approved equivalent. +function dossify_environment_variable() +{ + local var="$1"; shift + + old_value="${!var}" + if [[ ! "$old_value" =~ \/cygdrive\/ ]]; then +#echo didnt have a cygdrive in it: $old_value + return 0 +#hmmm: want this to continue in multi parm version. + fi + + # replace single back-slashes with double ones. + local new_value="$(unix_to_dos_path "${old_value}")" + + # remove any quote characters in the value. + new_value="${new_value//\"/}" + +# echo "new value: $var = $new_value" + eval "export $var=\"$new_value\"" +} + +# for a windows build, this will replace any forward slashes +# and other cygwin notation with the appropriate dos style paths. function dossify_and_run_commands() { - # we only mess with the command line on windows... if [ "$OS" != "Windows_NT" ]; then # for non windows, just run the commands straight up. - $* + eval "${@}" return $? fi + # force all slashes to be dossy. +# export SERIOUS_SLASH_TREATMENT=true + + dossify_environment_variable INCLUDE + declare -a darc_commands=() for i in "$@"; do @@ -32,13 +61,13 @@ function dossify_and_run_commands() real_commands+=($(echo $i | sed -e 's/\\/\\\\/g')) done -#temp! - echo commands are now: - for i in "${real_commands[@]}"; do - echo -n "$i " - done - echo -#end temp + if [ ! -z "$SHELL_DEBUG" ]; then + echo commands are now: + for i in "${real_commands[@]}"; do + echo -n "$i " + done + echo + fi # now actually run the chewed command. cmd /c "${real_commands[@]}"