diff options
author | Fred Hebert <mononcqc@ferd.ca> | 2017-12-13 23:51:46 -0500 |
---|---|---|
committer | Fred Hebert <mononcqc@ferd.ca> | 2017-12-13 23:51:46 -0500 |
commit | 718291e5169e08ac901f1109622e76381f7a0ccd (patch) | |
tree | 0a105ee4c2c0e9df1b6e5372aea90387e1b42fc3 /bootstrap | |
parent | b7c021b3f216bdd03d286b467889d03b142f4bf3 (diff) |
Fix repeated bootstrap runs
Updating the bootstrap script in #1689 made it so symlinks that already
exist return `exist` rather than ok, in line with the regular code.
However the bootstrap module wouldn't handle this case.
This fixes the problem by ensuring that `exists` is as valid as `ok`.
Diffstat (limited to 'bootstrap')
-rwxr-xr-x | bootstrap | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -168,8 +168,9 @@ compile_file(File, Opts) -> bootstrap_rebar3() -> filelib:ensure_dir("_build/default/lib/rebar/ebin/dummy.beam"), code:add_path("_build/default/lib/rebar/ebin/"), - ok = symlink_or_copy(filename:absname("src"), - filename:absname("_build/default/lib/rebar/src")), + Res = symlink_or_copy(filename:absname("src"), + filename:absname("_build/default/lib/rebar/src")), + true = Res == ok orelse Res == exists, Sources = ["src/rebar_resource.erl" | filelib:wildcard("src/*.erl")], [compile_file(X, [{outdir, "_build/default/lib/rebar/ebin/"} ,return | additional_defines()]) || X <- Sources], @@ -648,4 +649,4 @@ join([H|T], Sep) -> chr(S, C) when is_integer(C) -> chr(S, C, 1). chr([C|_Cs], C, I) -> I; chr([_|Cs], C, I) -> chr(Cs, C, I+1); -chr([], _C, _I) -> 0.
\ No newline at end of file +chr([], _C, _I) -> 0. |