diff options
| author | Matthew Sackman <matthew@rabbitmq.com> | 2011-05-27 13:47:43 +0100 |
|---|---|---|
| committer | Matthew Sackman <matthew@rabbitmq.com> | 2011-05-27 13:47:43 +0100 |
| commit | 9050e3a145a7f9b6b27534a53cf6f685fe7bdbba (patch) | |
| tree | fd64f0891d9ae382e23c33a1cedccc9f42b6c4ec /generate_app | |
| parent | 4c3b56b7be499d5ad3570c56c6fca6048a8cfdeb (diff) | |
| parent | 566c81566ace2a275d52cf9c6ffd310fe0158c92 (diff) | |
| download | rabbitmq-server-git-9050e3a145a7f9b6b27534a53cf6f685fe7bdbba.tar.gz | |
Merging bug24079 to default
Diffstat (limited to 'generate_app')
| -rw-r--r-- | generate_app | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/generate_app b/generate_app index 576b485e1e..fb0eb1ea62 100644 --- a/generate_app +++ b/generate_app @@ -1,12 +1,16 @@ #!/usr/bin/env escript %% -*- erlang -*- -main([BeamDir, TargetFile]) -> - Modules = [list_to_atom(filename:basename(F, ".beam")) || - F <- filelib:wildcard("*.beam", BeamDir)], - {ok, {application, Application, Properties}} = io:read(''), - NewProperties = lists:keyreplace(modules, 1, Properties, - {modules, Modules}), +main([InFile, OutFile | SrcDirs]) -> + Modules = [list_to_atom(filename:basename(F, ".erl")) || + SrcDir <- SrcDirs, + F <- filelib:wildcard("*.erl", SrcDir)], + {ok, [{application, Application, Properties}]} = file:consult(InFile), + NewProperties = + case proplists:get_value(modules, Properties) of + [] -> lists:keyreplace(modules, 1, Properties, {modules, Modules}); + _ -> Properties + end, file:write_file( - TargetFile, + OutFile, io_lib:format("~p.~n", [{application, Application, NewProperties}])). |
