Prechádzať zdrojové kódy

Merge branch 'master' of https://github.com/odin-lang/Odin

gingerBill 5 rokov pred
rodič
commit
464e733b88

+ 2 - 2
core/os/os_darwin.odin

@@ -1,8 +1,8 @@
 package os
 
 foreign import dl   "system:dl"
-foreign import libc "system:c"
-foreign import pthread "system:pthread"
+foreign import libc "System.framework"
+foreign import pthread "System.framework"
 
 import "core:runtime"
 import "core:strings"

+ 1 - 1
core/sys/darwin/mach_darwin.odin

@@ -1,6 +1,6 @@
 package darwin;
 
-foreign import "system:pthread"
+foreign import pthread "System.framework"
 
 import "core:c"
 

+ 6 - 1
core/time/time_unix.odin

@@ -3,7 +3,12 @@ package time
 
 IS_SUPPORTED :: true; // NOTE: Times on Darwin are UTC.
 
-foreign import libc "system:c"
+when ODIN_OS == "darwin" {
+  foreign import libc "System.framework"
+} else  {
+  foreign import libc "system:c"
+}
+
 
 @(default_calling_convention="c")
 foreign libc {

+ 10 - 2
src/main.cpp

@@ -432,7 +432,11 @@ i32 linker_stage(lbGenerator *gen) {
 			#endif
 			, linker, object_files, LIT(output_base), LIT(output_ext),
 			lib_str,
-			"-lc -lm",
+      #if defined(GB_SYSTEM_OSX)
+        "-lSystem -lm -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk",
+      #else
+        "-lc -lm",
+      #endif
 			LIT(build_context.link_flags),
 			LIT(build_context.extra_linker_flags),
 			link_settings);
@@ -2195,7 +2199,11 @@ int main(int arg_count, char const **arg_ptr) {
 				#endif
 				, linker, LIT(output_base), LIT(output_base), LIT(output_ext),
 				lib_str,
-				"-lc -lm",
+        #if defined(GB_SYSTEM_OSX)
+          "-lSystem -lm -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk",
+        #else
+          "-lc -lm",
+        #endif
 				LIT(build_context.link_flags),
 				LIT(build_context.extra_linker_flags),
 				link_settings);