diff options
| author | Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> | 2015-09-10 15:46:38 +0200 |
|---|---|---|
| committer | Jean-Sébastien Pédron <jean-sebastien.pedron@dumbbell.fr> | 2015-10-20 11:10:48 +0200 |
| commit | 008e65f958c925090ce0559a94482283ed098f5b (patch) | |
| tree | 39b60f79046433d0a2a67ebaf0e177c266c7cff6 /generate_deps | |
| parent | b31818b598767f7c8b0109c58a37a6d626ca4abf (diff) | |
| download | rabbitmq-server-git-008e65f958c925090ce0559a94482283ed098f5b.tar.gz | |
Remove unused scripts & Makefiles
Diffstat (limited to 'generate_deps')
| -rw-r--r-- | generate_deps | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/generate_deps b/generate_deps deleted file mode 100644 index ddfca816b4..0000000000 --- a/generate_deps +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/env escript -%% -*- erlang -*- --mode(compile). - -%% We expect the list of Erlang source and header files to arrive on -%% stdin, with the entries colon-separated. -main([TargetFile, EbinDir]) -> - ErlsAndHrls = [ string:strip(S,left) || - S <- string:tokens(io:get_line(""), ":\n")], - ErlFiles = [F || F <- ErlsAndHrls, lists:suffix(".erl", F)], - Modules = sets:from_list( - [list_to_atom(filename:basename(FileName, ".erl")) || - FileName <- ErlFiles]), - HrlFiles = [F || F <- ErlsAndHrls, lists:suffix(".hrl", F)], - IncludeDirs = lists:usort([filename:dirname(Path) || Path <- HrlFiles]), - Headers = sets:from_list(HrlFiles), - Deps = lists:foldl( - fun (Path, Deps1) -> - dict:store(Path, detect_deps(IncludeDirs, EbinDir, - Modules, Headers, Path), - Deps1) - end, dict:new(), ErlFiles), - {ok, Hdl} = file:open(TargetFile, [write, delayed_write]), - dict:fold( - fun (_Path, [], ok) -> - ok; - (Path, Dep, ok) -> - Module = filename:basename(Path, ".erl"), - ok = file:write(Hdl, [EbinDir, "/", Module, ".beam: ", - Path]), - ok = sets:fold(fun (E, ok) -> file:write(Hdl, [" ", E]) end, - ok, Dep), - file:write(Hdl, ["\n"]) - end, ok, Deps), - ok = file:write(Hdl, [TargetFile, ": ", escript:script_name(), "\n"]), - ok = file:sync(Hdl), - ok = file:close(Hdl). - -detect_deps(IncludeDirs, EbinDir, Modules, Headers, Path) -> - {ok, Forms} = epp:parse_file(Path, IncludeDirs, [{use_specs, true}]), - lists:foldl( - fun ({attribute, _LineNumber, Attribute, Behaviour}, Deps) - when Attribute =:= behaviour orelse Attribute =:= behavior -> - case sets:is_element(Behaviour, Modules) of - true -> sets:add_element( - [EbinDir, "/", atom_to_list(Behaviour), ".beam"], - Deps); - false -> Deps - end; - ({attribute, _LineNumber, file, {FileName, _LineNumber1}}, Deps) -> - case sets:is_element(FileName, Headers) of - true -> sets:add_element(FileName, Deps); - false -> Deps - end; - (_Form, Deps) -> - Deps - end, sets:new(), Forms). |
