@ -449,17 +449,29 @@ maybe_symlink_default(State, Profile, AppDir, AppInfo) ->
true - >
true - >
SymDir = filename : join ( [ rebar_dir : deps_dir ( State ) ,
SymDir = filename : join ( [ rebar_dir : deps_dir ( State ) ,
rebar_app_info : name ( AppInfo ) ] ) ,
rebar_app_info : name ( AppInfo ) ] ) ,
symlink_dep ( AppDir , SymDir ) ,
symlink_dep ( State , AppDir, SymDir ) ,
true ;
true ;
false - >
false - >
false
false
end .
end .
symlink_dep ( From , To ) - >
? INFO ( " Linking ~s to ~s " , [ From , To ] ) ,
symlink_dep ( State , From , To ) - >
filelib : ensure_dir ( To ) ,
filelib : ensure_dir ( To ) ,
rebar_file_utils : symlink_or_copy ( From , To ) .
case rebar_file_utils : symlink_or_copy ( From , To ) of
ok - >
RelativeFrom = make_relative_to_root ( State , From ) ,
RelativeTo = make_relative_to_root ( State , To ) ,
? INFO ( " Linking ~s to ~s " , [ RelativeFrom , RelativeTo ] ) ,
ok ;
exists - >
ok
end .
make_relative_to_root ( State , Path ) when is_binary ( Path ) - >
make_relative_to_root ( State , binary_to_list ( Path ) ) ;
make_relative_to_root ( State , Path ) when is_list ( Path ) - >
Root = rebar_dir : root_dir ( State ) ,
rebar_dir : make_relative_path ( Path , Root ) .
- spec parse_deps ( binary ( ) , list ( ) , rebar_state : t ( ) , list ( ) , integer ( ) ) - > { [ rebar_app_info : t ( ) ] , [ pkg_dep ( ) ] } .
- spec parse_deps ( binary ( ) , list ( ) , rebar_state : t ( ) , list ( ) , integer ( ) ) - > { [ rebar_app_info : t ( ) ] , [ pkg_dep ( ) ] } .
parse_deps ( DepsDir , Deps , State , Locks , Level ) - >
parse_deps ( DepsDir , Deps , State , Locks , Level ) - >