python3Packages.wasmtime: fix darwin shared library path
This commit is contained in:
@@ -10,8 +10,13 @@
|
||||
setuptools-git-versioning,
|
||||
setuptools,
|
||||
writableTmpDirAsHomeHook,
|
||||
stdenvNoCC,
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenvNoCC) targetPlatform;
|
||||
systemDir = "${targetPlatform.parsed.kernel.name}-${targetPlatform.parsed.cpu.name}";
|
||||
libExt = targetPlatform.extensions.sharedLibrary;
|
||||
in
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "wasmtime";
|
||||
version = "44.0.0";
|
||||
@@ -35,9 +40,8 @@ buildPythonPackage (finalAttrs: {
|
||||
sed -i '/^backend-path = \[/,/^\]/d' pyproject.toml
|
||||
|
||||
# Use nixpkgs' wasmtime instead of downloading prebuilt C API artifacts.
|
||||
mkdir -p wasmtime/linux-x86_64 wasmtime/linux-aarch64
|
||||
ln -s ${lib.getLib pkgs.wasmtime}/lib/libwasmtime.so wasmtime/linux-x86_64/_libwasmtime.so
|
||||
ln -s ${lib.getLib pkgs.wasmtime}/lib/libwasmtime.so wasmtime/linux-aarch64/_libwasmtime.so
|
||||
mkdir -p wasmtime/${systemDir}
|
||||
ln -s ${lib.getLib pkgs.wasmtime}/lib/libwasmtime${libExt} wasmtime/${systemDir}/_libwasmtime${libExt}
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
@@ -49,10 +53,8 @@ buildPythonPackage (finalAttrs: {
|
||||
|
||||
postInstall = ''
|
||||
# Ensure the installed module can find the shared library at runtime
|
||||
mkdir -p "$out/${python.sitePackages}/wasmtime/linux-x86_64"
|
||||
mkdir -p "$out/${python.sitePackages}/wasmtime/linux-aarch64"
|
||||
ln -sf ${lib.getLib pkgs.wasmtime}/lib/libwasmtime.so "$out/${python.sitePackages}/wasmtime/linux-x86_64/_libwasmtime.so"
|
||||
ln -sf ${lib.getLib pkgs.wasmtime}/lib/libwasmtime.so "$out/${python.sitePackages}/wasmtime/linux-aarch64/_libwasmtime.so"
|
||||
mkdir -p "$out/${python.sitePackages}/wasmtime/${systemDir}"
|
||||
ln -sf ${lib.getLib pkgs.wasmtime}/lib/libwasmtime${libExt} "$out/${python.sitePackages}/wasmtime/${systemDir}/_libwasmtime${libExt}"
|
||||
'';
|
||||
|
||||
nativeCheckInputs = [
|
||||
|
||||
Reference in New Issue
Block a user