| ... | ... | @@ -110,16 +110,18 @@ fn fetch_deps(dir: []const u8, mpath: []const u8) anyerror!u.Module { |
| 110 | 110 | }, |
| 111 | 111 | } |
| 112 | 112 | switch (d.type) { |
| 113 | | else => { |
| 114 | | if (d.main.len == 0) { |
| 115 | | if (d.c_include_dirs.len > 0 or d.c_source_files.len > 0) { |
| 116 | | var mod_from = try u.Module.from(d); |
| 117 | | mod_from.clean_path = u.trim_prefix(moddir, dir)[1..]; |
| 118 | | try moduledeps.append(mod_from); |
| 119 | | } |
| 120 | | break; |
| 121 | | } |
| 122 | | var dd = try fetch_deps(dir, try u.concat(&[_][]const u8{moddir, "/zig.mod"})); |
| 113 | else => blk: { |
| 114 | var dd = try fetch_deps(dir, try u.concat(&[_][]const u8{moddir, "/zig.mod"})) catch |e| switch (e) { |
| 115 | error.FileNotFound => { |
| 116 | if (d.c_include_dirs.len > 0 or d.c_source_files.len > 0) { |
| 117 | var mod_from = try u.Module.from(d); |
| 118 | mod_from.clean_path = u.trim_prefix(moddir, dir)[1..]; |
| 119 | try moduledeps.append(mod_from); |
| 120 | } |
| 121 | break :blk; |
| 122 | }, |
| 123 | else => e, |
| 124 | }; |
| 123 | 125 | dd.clean_path = u.trim_prefix(moddir, dir)[1..]; |
| 124 | 126 | |
| 125 | 127 | if (d.name.len > 0) dd.name = d.name; |