Merge pull request #3 from speedy-lex/main

Windows building with dyn link
This commit is contained in:
Blendi Goose 2025-07-01 09:16:12 +02:00 committed by GitHub
commit 22e0130199
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 26 additions and 4 deletions

2
.gitignore vendored
View File

@ -2,3 +2,5 @@
zig-out/
!data/.gitkeep
.vscode/
raylib/
lua/

View File

@ -1,4 +1,5 @@
const std = @import("std");
const builtin = @import("builtin");
fn addEngineSources(c: *std.Build.Step.Compile) void {
c.linkLibC(); // we need a libc
@ -24,6 +25,8 @@ fn addEngineSources(c: *std.Build.Step.Compile) void {
}
pub fn build(b: *std.Build) void {
const os = builtin.target.os.tag;
const target = b.standardTargetOptions(.{});
const optimize = b.standardOptimizeOption(.{});
@ -65,8 +68,19 @@ pub fn build(b: *std.Build) void {
.optimize = optimize,
});
emulator.linkLibC();
emulator.linkSystemLibrary("lua");
emulator.linkSystemLibrary("raylib");
if (os == .windows) {
// use the msvc win64 dll versions and copy them to raylib/ and lua/
// get raylib from https://github.com/raysan5/raylib/releases
// get lua from https://luabinaries.sourceforge.net/
emulator.addIncludePath(b.path("lua/include"));
emulator.addIncludePath(b.path("raylib/include"));
emulator.addObjectFile(b.path("lua/lua54.lib"));
emulator.addObjectFile(b.path("raylib/lib/raylibdll.lib"));
} else {
emulator.linkSystemLibrary("lua");
emulator.linkSystemLibrary("raylib");
}
emulator.addCSourceFiles(.{
.files = &.{
"src/testLuaArch.c",

6
run.ps1 Normal file
View File

@ -0,0 +1,6 @@
zig build
copy lua/lua54.dll zig-out/bin
copy raylib/lib/raylib.dll zig-out/bin
zig build run