diff --git a/lib/std/Build/Configuration.zig b/lib/std/Build/Configuration.zig index 47fe0009a63177e2a71de0d603fe204ce5043f8a..7c4f06562d0f262d818b9bdaecb95f44802138c3 100644 --- a/lib/std/Build/Configuration.zig +++ b/lib/std/Build/Configuration.zig @@ -1419,6 +1419,13 @@ pub const Path = extern struct { global_cache, build_root, }; + + pub fn toCachePath(path: Path, c: *const Configuration, arena: Allocator) std.Build.Cache.Path { + _ = c; + _ = arena; + _ = path; + @panic("TODO"); + } }; pub const InstallDestDir = enum(u32) { diff --git a/src/Compilation.zig b/src/Compilation.zig index 870ac3f79893b9301c8daa075276c10237bce75f..5445710ea4a7f01d2175306417b4e3eb179e1362 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -1747,9 +1747,13 @@ pub const CreateOptions = struct { .no => return null, .yes_cache => { assert(opts.cache_mode != .none); + const target = &opts.root_mod.resolved_target.result; return try ea.cacheName(arena, .{ .root_name = opts.root_name, - .target = &opts.root_mod.resolved_target.result, + .cpu_arch = target.cpu.arch, + .os_tag = target.os.tag, + .ofmt = target.ofmt, + .abi = target.abi, .output_mode = opts.config.output_mode, .link_mode = opts.config.link_mode, .version = opts.version, diff --git a/src/main.zig b/src/main.zig index 8978bb9d58b99034715e8207d0eb6a8a80a61e9a..f774eb522fecf9c9dd093be05d3a4d80dbb4d5c2 100644 --- a/src/main.zig +++ b/src/main.zig @@ -3380,7 +3380,10 @@ fn buildOutputType( .pch => try std.fmt.allocPrint(arena, "{s}.pch", .{root_name}), else => try std.zig.binNameAlloc(arena, .{ .root_name = root_name, - .target = target, + .cpu_arch = target.cpu.arch, + .os_tag = target.os.tag, + .ofmt = target.ofmt, + .abi = target.abi, .output_mode = create_module.resolved_options.output_mode, .link_mode = create_module.resolved_options.link_mode, .version = optional_version,