From 532bb82d5aa84c847ba5e40a8fa7e45ae3ae6f69 Mon Sep 17 00:00:00 2001 From: Rhys-T <108157737+Rhys-T@users.noreply.github.com> Date: Wed, 26 Feb 2025 14:54:07 -0500 Subject: [PATCH] picolisp: fix darwin build Also use the default `buildPhase` to let `makeFlags` etc. work, and change the deprecated `substituteInPlace --replace` to `--replace-fail`. --- pkgs/by-name/pi/picolisp/package.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/pi/picolisp/package.nix b/pkgs/by-name/pi/picolisp/package.nix index d211fd3afcb6..237649250e24 100644 --- a/pkgs/by-name/pi/picolisp/package.nix +++ b/pkgs/by-name/pi/picolisp/package.nix @@ -29,10 +29,16 @@ stdenv.mkDerivation { readline ]; sourceRoot = ''pil21''; - buildPhase = '' - cd src - make - ''; + preBuild = + '' + cd src + '' + + lib.optionalString stdenv.hostPlatform.isDarwin '' + # Flags taken from instructions at: https://picolisp.com/wiki/?alternativeMacOSRepository + makeFlagsArray+=( + SHARED='-dynamiclib -undefined dynamic_lookup' + ) + ''; installPhase = '' cd .. @@ -42,7 +48,7 @@ stdenv.mkDerivation { ln -s "$out/lib/picolisp/bin/pil" "$out/bin/pil" ln -s "$out/lib/picolisp/man/man1/pil.1" "$out/man/pil.1" ln -s "$out/lib/picolisp/man/man1/picolisp.1" "$out/man/picolisp.1" - substituteInPlace $out/bin/pil --replace /usr $out + substituteInPlace $out/bin/pil --replace-fail /usr $out ''; meta = with lib; {