| 
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -192,7 +192,6 @@ fn compileRaylib(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            setDesktopPlatform(raylib, options.platform); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        }, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        .linux => { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            if (options.platform == .drm) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                if (options.opengl_version == .auto) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    raylib.linkSystemLibrary("GLESv2"); | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -209,34 +208,32 @@ fn compileRaylib(b: *std.Build, target: std.Build.ResolvedTarget, optimize: std. | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			            } else if (target.result.abi == .android) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                //these are the only tag options per https://developer.android.com/ndk/guides/other_build_systems | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const hostTuple = switch(builtin.target.os.tag) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    .linux =>   "linux-x86_64", | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const hostTuple = switch (builtin.target.os.tag) { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    .linux => "linux-x86_64", | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    .windows => "windows-x86_64", | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    .macos =>   "darwin-x86_64", | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    else => { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                        @panic("unsupported host OS"); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    .macos => "darwin-x86_64", | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                    else => @panic("unsupported host OS"), | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                }; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidTriple = try target.result.linuxTriple(b.allocator); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidNdkPathString: []const u8 = options.android_ndk; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                if(androidNdkPathString.len < 1) @panic("no ndk path provided and ANDROID_NDK_HOME is not set"); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                if (androidNdkPathString.len < 1) @panic("no ndk path provided and ANDROID_NDK_HOME is not set"); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidApiLevel: []const u8 = options.android_api_version; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidSysroot = try std.fs.path.join(b.allocator, &.{androidNdkPathString,  "/toolchains/llvm/prebuilt/", hostTuple, "/sysroot"}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidLibPath = try std.fs.path.join(b.allocator, &.{androidSysroot, "/usr/lib/", androidTriple}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidApiSpecificPath =  try std.fs.path.join(b.allocator, &.{androidLibPath, androidApiLevel}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidIncludePath = try std.fs.path.join(b.allocator, &.{androidSysroot, "/usr/include"}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidArchIncludePath = try std.fs.path.join(b.allocator, &.{androidIncludePath, androidTriple}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidAsmPath = try std.fs.path.join(b.allocator, &.{androidIncludePath, "/asm-generic"}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidGluePath = try std.fs.path.join(b.allocator, &.{androidNdkPathString, "/sources/android/native_app_glue/"}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidSysroot = try std.fs.path.join(b.allocator, &.{ androidNdkPathString, "/toolchains/llvm/prebuilt/", hostTuple, "/sysroot" }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidLibPath = try std.fs.path.join(b.allocator, &.{ androidSysroot, "/usr/lib/", androidTriple }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidApiSpecificPath = try std.fs.path.join(b.allocator, &.{ androidLibPath, androidApiLevel }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidIncludePath = try std.fs.path.join(b.allocator, &.{ androidSysroot, "/usr/include" }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidArchIncludePath = try std.fs.path.join(b.allocator, &.{ androidIncludePath, androidTriple }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidAsmPath = try std.fs.path.join(b.allocator, &.{ androidIncludePath, "/asm-generic" }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const androidGluePath = try std.fs.path.join(b.allocator, &.{ androidNdkPathString, "/sources/android/native_app_glue/" }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addLibraryPath(.{ .cwd_relative =  androidLibPath}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addLibraryPath(.{ .cwd_relative = androidLibPath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.root_module.addLibraryPath(.{ .cwd_relative = androidApiSpecificPath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidIncludePath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidArchIncludePath}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath( .{ .cwd_relative = androidAsmPath}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidGluePath}); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidArchIncludePath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidAsmPath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                raylib.addSystemIncludePath(.{ .cwd_relative = androidGluePath }); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                var libcData = std.ArrayList(u8).init(b.allocator); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			                const writer = libcData.writer(); | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -442,7 +439,7 @@ pub const PlatformBackend = enum { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    rgfw, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    sdl, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    drm, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    android | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    android, | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			}; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			pub fn build(b: *std.Build) !void { | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |