From 66d4ef18b4226dfed51cb8d80187aac6d7910316 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Sat, 24 Jan 2026 11:36:19 +0000 Subject: [PATCH] fix build hook --- hook/build.dart | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/hook/build.dart b/hook/build.dart index 51037f1..e693a03 100644 --- a/hook/build.dart +++ b/hook/build.dart @@ -1,17 +1,34 @@ -import "dart:io"; import "package:hooks/hooks.dart"; import "package:code_assets/code_assets.dart"; import "package:path/path.dart"; -import "package:ffigen/ffigen.dart"; Future main(List args) => build(args, (input, output) async { + final targetOS = input.config.code.targetOS; + String libFileName; + switch (targetOS) { + case OS.linux: + libFileName = "libgomuks.so"; + break; + case OS.macOS: + libFileName = "libgomuks.dylib"; + break; + case OS.windows: + libFileName = "libgomuks.dll"; + break; + default: + throw UnsupportedError("Unsupported OS: $targetOS"); + } + + final generatedFile = join("src", "third_party", "gomuks.g.dart"); output.assets.code.add( CodeAsset( package: "nexus", - name: "src/third_party/gomuks.g.dart", + name: generatedFile, linkMode: DynamicLoadingBundled(), - file: libFile.uri, + file: input.packageRoot.resolve(join("build", "gomuks", libFileName)), ), ); - output.dependencies.add(libFile.uri); + output.dependencies.add( + input.packageRoot.resolve(join("lib", generatedFile)), + ); });