<div dir="ltr">Look at how lager does it.<div><br></div><div><br></div><div>Something like:</div><div><br></div><div><div>guess_application(Dirname, Attr) when Dirname /= undefined -></div><div>    case find_app_file(Dirname) of</div><div>        no_idea -></div><div>            %% try it based on source file directory (app.src most likely)</div><div>            guess_application(undefined, Attr);</div><div>        _ -></div><div>            no_idea</div><div>    end;</div><div>guess_application(undefined, {attribute, _, file, {Filename, _}}) -></div><div>    Dir = filename:dirname(Filename),</div><div>    find_app_file(Dir);</div><div>guess_application(_, _) -></div><div>    no_idea.</div><div><br></div><div>find_app_file(Dir) -></div><div>    case filelib:wildcard(Dir++"/*.{app,app.src}") of</div><div>        [] -></div></div><div><br></div></div>