Browse Source

Add vendor:directx and vendor:darwin packages for documentation generation

gingerBill 3 years ago
parent
commit
197b832992

+ 16 - 2
examples/all/all_vendor.odin

@@ -1,7 +1,6 @@
 //+build windows
 package all
 
-
 import botan     "vendor:botan"
 import ENet      "vendor:ENet"
 import gl        "vendor:OpenGL"
@@ -25,6 +24,15 @@ import stb_vorbis    "vendor:stb/vorbis"
 
 import vk "vendor:vulkan"
 
+import D3D11 "vendor:directx/d3d11"
+import D3D12 "vendor:directx/d3d12"
+import DXGI  "vendor:directx/dxgi"
+
+// note these are technicaly darwin only but they are added to aid with documentation generation
+import NS  "vendor:darwin/Foundation"
+import MTL "vendor:darwin/Metal"
+import CA  "vendor:darwin/QuartzCore"
+
 
 _ :: botan
 _ :: ENet
@@ -44,4 +52,10 @@ _ :: stbi
 _ :: stbrp
 _ :: stbtt
 _ :: stb_vorbis
-_ :: vk
+_ :: vk
+_ :: D3D11
+_ :: D3D12
+_ :: DXGI
+_ :: NS
+_ :: MTL
+_ :: CA

+ 3 - 2
src/check_builtin.cpp

@@ -248,8 +248,9 @@ bool check_builtin_objc_procedure(CheckerContext *c, Operand *operand, Ast *call
 	String builtin_name = builtin_procs[id].name;
 
 	if (build_context.metrics.os != TargetOs_darwin) {
-		error(call, "'%.*s' only works on darwin", LIT(builtin_name));
-		return false;
+		if (!build_context.generate_docs) { // allow on doc generation (e.g. Metal stuff)
+			error(call, "'%.*s' only works on darwin", LIT(builtin_name));
+		}
 	}
 
 

+ 0 - 1
vendor/darwin/Foundation/NSArray.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 import "core:intrinsics"

+ 0 - 1
vendor/darwin/Foundation/NSAutoreleasePool.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSAutoreleasePool")

+ 0 - 1
vendor/darwin/Foundation/NSBundle.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSBundle")

+ 0 - 1
vendor/darwin/Foundation/NSData.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSData")

+ 0 - 1
vendor/darwin/Foundation/NSDate.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSDate")

+ 0 - 1
vendor/darwin/Foundation/NSDictionary.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSDictionary")

+ 0 - 1
vendor/darwin/Foundation/NSEnumerator.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 import "core:c"

+ 0 - 1
vendor/darwin/Foundation/NSError.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 foreign import "system:Foundation.framework"

+ 0 - 1
vendor/darwin/Foundation/NSLock.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 Locking :: struct($T: typeid) {using _: Object}

+ 0 - 1
vendor/darwin/Foundation/NSNotification.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSNotification")

+ 4 - 3
vendor/darwin/Foundation/NSNumber.odin

@@ -1,10 +1,11 @@
-//+build darwin
 package objc_Foundation
 
 import "core:c"
 
-#assert(size_of(c.long)  == size_of(int))
-#assert(size_of(c.ulong) == size_of(uint))
+when ODIN_OS == .Darwin {
+	#assert(size_of(c.long)  == size_of(int))
+	#assert(size_of(c.ulong) == size_of(uint))
+}
 
 @(objc_class="NSValue")
 Value :: struct{using _: Copying(Value)}

+ 0 - 1
vendor/darwin/Foundation/NSObject.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 import "core:intrinsics"

+ 0 - 1
vendor/darwin/Foundation/NSRange.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 Range :: struct {

+ 0 - 1
vendor/darwin/Foundation/NSString.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 foreign import "system:Foundation.framework"

+ 0 - 1
vendor/darwin/Foundation/NSTypes.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 import "core:intrinsics"

+ 0 - 1
vendor/darwin/Foundation/NSURL.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 @(objc_class="NSURL")

+ 0 - 1
vendor/darwin/Foundation/NSWindow.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Foundation
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/Metal/MetalClasses.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Metal
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/Metal/MetalEnums.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Metal
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/Metal/MetalErrors.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Metal
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/Metal/MetalProcedures.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Metal
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/Metal/MetalTypes.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_Metal
 
 import NS "vendor:darwin/Foundation"

+ 0 - 1
vendor/darwin/QuartzCore/QuartzCore.odin

@@ -1,4 +1,3 @@
-//+build darwin
 package objc_QuartzCore
 
 import NS "vendor:darwin/Foundation"