-module(proj_nif). -on_load(init/0). -export([convert_crs_to_crs/4]). -define(APPNAME, proj_nif). -define(LIBNAME, proj_nif). %% Types %%==================================================================== %% API functions %%==================================================================== convert_crs_to_crs(_, _, _, _) -> nif_not_loaded. %%==================================================================== %% Internal functions %%==================================================================== init() -> SoName = case code:priv_dir(?APPNAME) of {error, bad_name} -> case filelib:is_dir(filename:join(["..", priv])) of true -> filename:join(["..", priv, ?LIBNAME]); _ -> filename:join([priv, ?LIBNAME]) end; Dir -> filename:join(Dir, ?LIBNAME) end, erlang:load_nif(SoName, 0).