summaryrefslogtreecommitdiff
path: root/deps/mochiweb/scripts/new_mochiweb.erl
diff options
context:
space:
mode:
Diffstat (limited to 'deps/mochiweb/scripts/new_mochiweb.erl')
-rwxr-xr-xdeps/mochiweb/scripts/new_mochiweb.erl37
1 files changed, 37 insertions, 0 deletions
diff --git a/deps/mochiweb/scripts/new_mochiweb.erl b/deps/mochiweb/scripts/new_mochiweb.erl
new file mode 100755
index 00000000..ed1147a7
--- /dev/null
+++ b/deps/mochiweb/scripts/new_mochiweb.erl
@@ -0,0 +1,37 @@
+#!/usr/bin/env escript
+%% -*- mode: erlang -*-
+-export([main/1]).
+
+%% External API
+
+main([Name]) ->
+ main([Name, "."]);
+main([Name, Dest]) ->
+ ensure(),
+ DestDir = filename:absname(Dest),
+ case code:which(mochiweb_skel) of
+ non_existing ->
+ io:format("mochiweb not compiled, running make~n"),
+ os:cmd("(cd \"" ++ filename:dirname(escript:script_name())
+ ++ "/..\"; make)"),
+ ensure(),
+ code:rehash();
+ _ ->
+ ok
+ end,
+ ok = mochiweb_skel:skelcopy(DestDir, Name);
+main(_) ->
+ usage().
+
+%% Internal API
+
+ensure() ->
+ code:add_patha(filename:join(filename:dirname(escript:script_name()),
+ "../ebin")).
+
+usage() ->
+ io:format("usage: ~s name [destdir]~n",
+ [filename:basename(escript:script_name())]),
+ halt(1).
+
+