File: generate_app

package info (click to toggle)
rabbitmq-server 3.3.5-1.1
  • links: PTS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 12,004 kB
  • sloc: erlang: 78,203; python: 3,187; xml: 2,843; makefile: 903; sh: 831; java: 660; perl: 64; ruby: 63
file content (16 lines) | stat: -rw-r--r-- 622 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/env escript
%% -*- erlang -*-

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(
      OutFile,
      io_lib:format("~p.~n", [{application, Application, NewProperties}])).