diff options
author | Matt Campbell <matthew.campbell@asolutions.com> | 2011-12-21 23:27:42 -0600 |
---|---|---|
committer | Tuncer Ayaz <tuncer.ayaz@gmail.com> | 2011-12-25 16:46:13 +0100 |
commit | 8c01734e98c3eedfd299884e1553ca315e55bda4 (patch) | |
tree | 89dd12234c2da1b055a37b0021317e5c97e9e2ac /bootstrap | |
parent | e4c427be2142a08e5f287050116837ae70d502f8 (diff) |
bootstrap: generate windows scripts
Diffstat (limited to 'bootstrap')
-rwxr-xr-x | bootstrap | 21 |
1 files changed, 20 insertions, 1 deletions
@@ -79,11 +79,15 @@ main(Args) -> halt(1) end, - %% Finally, update executable perms for our script + %% Finally, update executable perms for our script on *nix, + %% or write out script files on win32. case os:type() of {unix,_} -> [] = os:cmd("chmod u+x rebar"), ok; + {win32,_} -> + write_windows_scripts(), + ok; _ -> ok end, @@ -126,3 +130,18 @@ vcs_info([{Id, Dir, Cmd} | Rest]) -> false -> vcs_info(Rest) end. + +write_windows_scripts() -> + PowershellScript= + "$basedir = Split-Path -Parent $MyInvocation.MyCommand.Path\r\n" + "$rebar = Join-Path $basedir \"rebar\"\r\n" + "escript.exe $rebar $args\r\n", + CmdScript= + "@echo off\r\n" + "setlocal\r\n" + "set rebarscript=%~f0\r\n" + "escript.exe \"%rebarscript:.bat=%i\" %*\r\n", + file:write_file("rebar.cmd", CmdScript), + UTF16BE = {utf16, big}, + file:write_file("rebar.ps1", [unicode:encoding_to_bom(UTF16BE), + unicode:characters_to_binary(PowershellScript, utf8, UTF16BE)]). |