Skip to content

Commit eb39268

Browse files
authored
Avoid downloading MinGW artifact if "JULIA_CC" is set (#67)
1 parent 150d184 commit eb39268

File tree

1 file changed

+28
-27
lines changed

1 file changed

+28
-27
lines changed

src/linking.jl

Lines changed: 28 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -21,41 +21,42 @@ end
2121
function get_compiler_cmd(; cplusplus::Bool=false)
2222
cc = get(ENV, "JULIA_CC", nothing)
2323
path = nothing
24-
@static if Sys.iswindows()
25-
path = joinpath(LazyArtifacts.artifact"mingw-w64",
26-
"extracted_files",
27-
(Int==Int64 ? "mingw64" : "mingw32"),
28-
"bin",
29-
cplusplus ? "g++.exe" : "gcc.exe")
30-
compiler_cmd = `$path`
31-
end
3224
if cc !== nothing
3325
compiler_cmd = Cmd(Base.shell_split(cc))
3426
path = nothing
35-
elseif !Sys.iswindows()
36-
compilers_cpp = ("g++", "clang++")
37-
compilers_c = ("gcc", "clang")
38-
found_compiler = false
39-
if cplusplus
40-
for compiler in compilers_cpp
41-
if Sys.which(compiler) !== nothing
42-
compiler_cmd = `$compiler`
43-
found_compiler = true
44-
break
27+
else
28+
@static if Sys.iswindows()
29+
path = joinpath(LazyArtifacts.artifact"mingw-w64",
30+
"extracted_files",
31+
(Int==Int64 ? "mingw64" : "mingw32"),
32+
"bin",
33+
cplusplus ? "g++.exe" : "gcc.exe")
34+
compiler_cmd = `$path`
35+
else
36+
compilers_cpp = ("g++", "clang++")
37+
compilers_c = ("gcc", "clang")
38+
found_compiler = false
39+
if cplusplus
40+
for compiler in compilers_cpp
41+
if Sys.which(compiler) !== nothing
42+
compiler_cmd = `$compiler`
43+
found_compiler = true
44+
break
45+
end
4546
end
4647
end
47-
end
48-
if !found_compiler
49-
for compiler in compilers_c
50-
if Sys.which(compiler) !== nothing
51-
compiler_cmd = `$compiler`
52-
found_compiler = true
53-
break
48+
if !found_compiler
49+
for compiler in compilers_c
50+
if Sys.which(compiler) !== nothing
51+
compiler_cmd = `$compiler`
52+
found_compiler = true
53+
break
54+
end
5455
end
5556
end
57+
found_compiler || error("could not find a compiler, looked for ",
58+
join(((cplusplus ? compilers_cpp : ())..., compilers_c...), ", ", " and "))
5659
end
57-
found_compiler || error("could not find a compiler, looked for ",
58-
join(((cplusplus ? compilers_cpp : ())..., compilers_c...), ", ", " and "))
5960
end
6061
if path !== nothing
6162
compiler_cmd = addenv(compiler_cmd, "PATH" => string(ENV["PATH"], ";", dirname(path)))

0 commit comments

Comments
 (0)