| ... | ... | @@ -3580,6 +3580,9 @@ fn processOneJob(comp: *Compilation, job: Job, prog_node: *std.Progress.Node) !v |
| 3580 | 3580 | }; |
| 3581 | 3581 | }, |
| 3582 | 3582 | .windows_import_lib => |index| { |
| 3583 | if (build_options.only_c) |
| 3584 | @panic("building import libs not included in core functionality"); |
| 3585 | |
| 3583 | 3586 | const named_frame = tracy.namedFrame("windows_import_lib"); |
| 3584 | 3587 | defer named_frame.end(); |
| 3585 | 3588 | |
| ... | ... | @@ -6391,15 +6394,18 @@ pub fn addLinkLib(comp: *Compilation, lib_name: []const u8) !void { |
| 6391 | 6394 | // If we haven't seen this library yet and we're targeting Windows, we need |
| 6392 | 6395 | // to queue up a work item to produce the DLL import library for this. |
| 6393 | 6396 | const gop = try comp.system_libs.getOrPut(comp.gpa, lib_name); |
| 6394 | | if (!gop.found_existing and comp.getTarget().os.tag == .windows) { |
| 6397 | if (!gop.found_existing) { |
| 6395 | 6398 | gop.value_ptr.* = .{ |
| 6396 | 6399 | .needed = true, |
| 6397 | 6400 | .weak = false, |
| 6398 | 6401 | .path = null, |
| 6399 | 6402 | }; |
| 6400 | | try comp.work_queue.writeItem(.{ |
| 6401 | | .windows_import_lib = comp.system_libs.count() - 1, |
| 6402 | | }); |
| 6403 | const target = comp.root_mod.resolved_target.result; |
| 6404 | if (target.os.tag == .windows and target.ofmt != .c) { |
| 6405 | try comp.work_queue.writeItem(.{ |
| 6406 | .windows_import_lib = comp.system_libs.count() - 1, |
| 6407 | }); |
| 6408 | } |
| 6403 | 6409 | } |
| 6404 | 6410 | } |
| 6405 | 6411 | |