Pending further tests of --libs=
This commit is contained in:
parent
37eae54b0f
commit
3d695208c8
@ -979,7 +979,8 @@ run_dir(TargetDir, RunArgs) ->
|
|||||||
ok ->
|
ok ->
|
||||||
{ok, ProjectDir} = file:get_cwd(),
|
{ok, ProjectDir} = file:get_cwd(),
|
||||||
run_project(ProjectDir, ExecDir, RunArgs);
|
run_project(ProjectDir, ExecDir, RunArgs);
|
||||||
Error -> Error
|
Error ->
|
||||||
|
Error
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
|
||||||
@ -990,17 +991,20 @@ run_dir(TargetDir, RunArgs) ->
|
|||||||
|
|
||||||
run_project(ProjectDir, ExecDir, RunArgs) ->
|
run_project(ProjectDir, ExecDir, RunArgs) ->
|
||||||
{ok, Meta} = zx_lib:read_project_meta(),
|
{ok, Meta} = zx_lib:read_project_meta(),
|
||||||
PackageID = {_, Name, _} = maps:get(package_id, Meta),
|
|
||||||
Type = maps:get(type, Meta),
|
|
||||||
Deps = maps:get(deps, Meta),
|
|
||||||
{ok, Dir} = file:get_cwd(),
|
{ok, Dir} = file:get_cwd(),
|
||||||
true = os:putenv(Name ++ "_include", filename:join(Dir, "include")),
|
case pre_prep(Meta, RunArgs) of
|
||||||
case prepare(Deps) of
|
{Type, Deps, NewArgs} ->
|
||||||
ok ->
|
PackageID = {_, Name, _} = maps:get(package_id, Meta),
|
||||||
ok = file:set_cwd(ProjectDir),
|
true = os:putenv(Name ++ "_include", filename:join(Dir, "include")),
|
||||||
ok = zx_lib:build(),
|
case prepare(Deps) of
|
||||||
ok = file:set_cwd(ExecDir),
|
ok ->
|
||||||
execute(Type, PackageID, Meta, Dir, RunArgs);
|
ok = file:set_cwd(ProjectDir),
|
||||||
|
ok = zx_lib:build(),
|
||||||
|
ok = file:set_cwd(ExecDir),
|
||||||
|
execute(Type, PackageID, Meta, Dir, NewArgs);
|
||||||
|
Error ->
|
||||||
|
Error
|
||||||
|
end;
|
||||||
Error ->
|
Error ->
|
||||||
Error
|
Error
|
||||||
end.
|
end.
|
||||||
@ -1039,9 +1043,10 @@ dep_split([], Dep, Dir, Deps) ->
|
|||||||
pre_prep2(Meta, LocalDeps, RunArgs) ->
|
pre_prep2(Meta, LocalDeps, RunArgs) ->
|
||||||
Type = maps:get(type, Meta),
|
Type = maps:get(type, Meta),
|
||||||
Deps = maps:get(deps, Meta),
|
Deps = maps:get(deps, Meta),
|
||||||
NewDeps = pre_prep3(Deps, LocalDeps),
|
case pre_prep3(Deps, LocalDeps) of
|
||||||
{Type, NewDeps, RunArgs}.
|
{ok, NewDeps} -> {Type, NewDeps, RunArgs};
|
||||||
|
Error -> Error
|
||||||
|
end.
|
||||||
|
|
||||||
pre_prep3(Deps, [{Dep, Dir} | Rest]) ->
|
pre_prep3(Deps, [{Dep, Dir} | Rest]) ->
|
||||||
case zx_lib:package_id(Dep) of
|
case zx_lib:package_id(Dep) of
|
||||||
@ -1051,17 +1056,11 @@ pre_prep3(Deps, [{Dep, Dir} | Rest]) ->
|
|||||||
pre_prep3(Deps, []) ->
|
pre_prep3(Deps, []) ->
|
||||||
{ok, Deps}.
|
{ok, Deps}.
|
||||||
|
|
||||||
pre_prep4(Deps, {Realm, Name, _}, Dir, Rest) ->
|
pre_prep4(Deps, Dep = {Realm, Name, _}, Dir, Rest) ->
|
||||||
case file:set_cwd(Dir) of
|
case file:set_cwd(Dir) of
|
||||||
ok ->
|
ok ->
|
||||||
Scrub =
|
Scrub = fun({R, N, _}) -> not ((R == Realm) andalso (N == Name)) end,
|
||||||
fun(D = {R, N, _}, Acc) ->
|
NewDeps = lists:filter(Scrub, Deps),
|
||||||
case (R == Realm) andalso (N == Name) of
|
|
||||||
true -> Acc;
|
|
||||||
false -> [D | Acc]
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
NewDeps = Scrub(Deps, []),
|
|
||||||
true = os:putenv(Name ++ "_include", filename:join(Dir, "include")),
|
true = os:putenv(Name ++ "_include", filename:join(Dir, "include")),
|
||||||
ok = zx_lib:build(),
|
ok = zx_lib:build(),
|
||||||
pre_prep3(NewDeps, Rest);
|
pre_prep3(NewDeps, Rest);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user