From 578f59a9f93750662c6c42f6a7223bac75de6018 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 8 May 2015 14:55:57 -0400 Subject: add a wrapper for ssh-keygen --- Build/NullSoftInstaller.hs | 5 ++++- standalone/windows/ssh-keygen.cmd | 31 +++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 standalone/windows/ssh-keygen.cmd diff --git a/Build/NullSoftInstaller.hs b/Build/NullSoftInstaller.hs index 41cf360a2..7bb16f3f7 100644 --- a/Build/NullSoftInstaller.hs +++ b/Build/NullSoftInstaller.hs @@ -199,4 +199,7 @@ findCygLibs p = filter iscyg . mapMaybe parse . lines <$> readProcess "ldd" [p] iscyg f = "cyg" `isPrefixOf` f || "lib" `isPrefixOf` f wrappers :: [FilePath] -wrappers = ["standalone\\windows\\ssh.cmd"] +wrappers = + [ "standalone\\windows\\ssh.cmd" + , "standalone\\windows\\ssh-keygen.cmd" + ] diff --git a/standalone/windows/ssh-keygen.cmd b/standalone/windows/ssh-keygen.cmd new file mode 100644 index 000000000..c4ec3cdb4 --- /dev/null +++ b/standalone/windows/ssh-keygen.cmd @@ -0,0 +1,31 @@ +@rem Do not use "echo off" to not affect any child calls. + +@rem Enable extensions, the `verify other 2>nul` is a trick from the setlocal help +@verify other 2>nul +@setlocal enableDelayedExpansion +@if errorlevel 1 ( + @echo Unable to enable delayed expansion. Immediate expansion will be used. + @goto fallback +) + +@rem Get the absolute path to the parent directory, which is assumed to be the +@rem Git installation root. +@for /F "delims=" %%I in ("%~dp0..") do @set git_install_root=%%~fI +@set PATH=!git_install_root!\bin;!git_install_root!\mingw\bin;!PATH! + +ssh-keygen %* +@goto end + +:fallback +@rem The above script again with immediate expansion, in case delayed expansion +@rem is unavailable. +@for /F "delims=" %%I in ("%~dp0..") do @set git_install_root=%%~fI +@set PATH=%git_install_root%\bin;%git_install_root%\mingw\bin;%PATH% + +@if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH% +@if not exist "%HOME%" @set HOME=%USERPROFILE% + +ssh-keygen %* + +:end +@rem End of script -- cgit v1.2.3