<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>