build.zig | 1 + ci/azure/macos_script | 1 + lib/std/build.zig | 13 ++ lib/std/build/CheckObjectStep.zig | 392 ++++++++++++++++++++++++++++++++ lib/std/build/RunStep.zig | 1 + src/link/MachO.zig | 164 +++++++------ test/link.zig | 64 ++++++ test/link/bss/build.zig | 14 ++ test/link/bss/main.zig | 13 ++ test/link/common_symbols/a.c | 6 + test/link/common_symbols/b.c | 7 + test/link/common_symbols/build.zig | 16 ++ test/link/common_symbols/c.c | 5 + test/link/common_symbols/main.zig | 16 ++ test/link/common_symbols_alignment/a.c | 2 + test/link/common_symbols_alignment/build.zig | 16 ++ test/link/common_symbols_alignment/main.zig | 9 + test/link/interdependent_static_c_libs/a.c | 4 + test/link/interdependent_static_c_libs/a.h | 2 + test/link/interdependent_static_c_libs/b.c | 6 + test/link/interdependent_static_c_libs/b.h | 2 + test/link/interdependent_static_c_libs/build.zig | 24 ++ test/link/interdependent_static_c_libs/main.zig | 8 + test/link/macho/dylib/a.c | 7 + test/link/macho/dylib/build.zig | 49 ++++ test/link/macho/dylib/main.c | 9 + test/link/macho/entry/build.zig | 34 +++ test/link/macho/entry/main.c | 6 + test/link/macho/frameworks/build.zig | 32 +++ test/link/macho/frameworks/main.c | 7 + test/link/macho/objc/Foo.h | 7 + test/link/macho/objc/Foo.m | 11 + test/link/macho/objc/build.zig | 22 ++ test/link/macho/objc/test.m | 12 + test/link/macho/objcpp/Foo.h | 7 + test/link/macho/objcpp/Foo.mm | 11 + test/link/macho/objcpp/build.zig | 24 ++ test/link/macho/objcpp/test.mm | 14 ++ test/link/macho/pagezero/build.zig | 43 ++++ test/link/macho/pagezero/main.c | 3 + test/link/macho/stack_size/build.zig | 24 ++ test/link/macho/stack_size/main.c | 3 + test/link/static_lib_as_system_lib/a.c | 4 + test/link/static_lib_as_system_lib/a.h | 2 + test/link/static_lib_as_system_lib/build.zig | 23 ++ test/link/static_lib_as_system_lib/main.zig | 8 + test/link/tls/a.c | 5 + test/link/tls/build.zig | 18 ++ test/link/tls/main.zig | 15 ++ test/standalone.zig | 37 +-- test/standalone/link_common_symbols/a.c | 6 - test/standalone/link_common_symbols/b.c | 7 - test/standalone/link_common_symbols/build.zig | 16 -- test/standalone/link_common_symbols/c.c | 5 - test/standalone/link_common_symbols/main.zig | 16 -- test/standalone/link_common_symbols_alignment/a.c | 2 - test/standalone/link_common_symbols_alignment/build.zig | 16 -- test/standalone/link_common_symbols_alignment/main.zig | 9 - test/standalone/link_frameworks/build.zig | 34 --- test/standalone/link_frameworks/main.c | 7 - test/standalone/link_import_tls_dylib/a.c | 1 - test/standalone/link_import_tls_dylib/build.zig | 16 -- test/standalone/link_import_tls_dylib/main.zig | 7 - test/standalone/link_interdependent_static_c_libs/a.c | 4 - test/standalone/link_interdependent_static_c_libs/a.h | 2 - test/standalone/link_interdependent_static_c_libs/b.c | 6 - test/standalone/link_interdependent_static_c_libs/b.h | 2 - test/standalone/link_interdependent_static_c_libs/build.zig | 24 -- test/standalone/link_interdependent_static_c_libs/main.zig | 8 - test/standalone/link_static_lib_as_system_lib/a.c | 4 - test/standalone/link_static_lib_as_system_lib/a.h | 2 - test/standalone/link_static_lib_as_system_lib/build.zig | 23 -- test/standalone/link_static_lib_as_system_lib/main.zig | 8 - test/standalone/objc/Foo.h | 7 - test/standalone/objc/Foo.m | 11 - test/standalone/objc/build.zig | 36 --- test/standalone/objc/test.m | 12 - test/standalone/objcpp/Foo.h | 7 - test/standalone/objcpp/Foo.mm | 11 - test/standalone/objcpp/build.zig | 36 --- test/standalone/objcpp/test.mm | 14 -- test/tests.zig | 25 +- 82 files changed, 1142 insertions(+), 465 deletions(-)