From 418cec8cc2ebc911f5064065ae0a7a43fcd40e95 Mon Sep 17 00:00:00 2001
From: pablo
Date: Fri, 20 Feb 2026 17:15:34 +0200
Subject: [PATCH] fix: add install_name for mac
not to hardcode the paths
---
ffi/internal/ffi_library.nim | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/ffi/internal/ffi_library.nim b/ffi/internal/ffi_library.nim
index 3f1b757..158e03e 100644
--- a/ffi/internal/ffi_library.nim
+++ b/ffi/internal/ffi_library.nim
@@ -30,7 +30,14 @@ macro declareLibrary*(libraryName: static[string]): untyped =
nnkExprColonExpr.newTree(ident"passl", newStrLitNode(soName))
)
)
-
+ elif defined(macosx):
+ ## Generates {.passl: "-install_name @rpath/libwaku.dylib".}
+ let installName = fmt"-install_name @rpath/lib{libraryName}.dylib"
+ res.add(
+ newNimNode(nnkPragma).add(
+ nnkExprColonExpr.newTree(ident"passl", newStrLitNode(installName))
+ )
+ )
## proc lib{libraryName}NimMain() {.importc.}
let libNimMainName = ident(fmt"lib{libraryName}NimMain")
let importcPragma = nnkPragma.newTree(ident"importc")