From fdb85c6dd4be7515e92081731c0848407e3c2b3c Mon Sep 17 00:00:00 2001 From: Qiming Chu Date: Wed, 2 Jul 2025 23:32:55 +0800 Subject: [PATCH] magic-vlsi: fix darwin Signed-off-by: Qiming Chu --- pkgs/by-name/ma/magic-vlsi/package.nix | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ma/magic-vlsi/package.nix b/pkgs/by-name/ma/magic-vlsi/package.nix index 14a63b1c83f2..21c4f4e93a03 100644 --- a/pkgs/by-name/ma/magic-vlsi/package.nix +++ b/pkgs/by-name/ma/magic-vlsi/package.nix @@ -7,11 +7,13 @@ m4, cairo, libX11, + mesa, mesa_glu, ncurses, tcl, tcsh, tk, + fixDarwinDylibNames, }: stdenv.mkDerivation rec { @@ -26,15 +28,20 @@ stdenv.mkDerivation rec { leaveDotGit = true; }; - nativeBuildInputs = [ - python3 - git - ]; + nativeBuildInputs = + [ + python3 + git + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + fixDarwinDylibNames + ]; buildInputs = [ cairo libX11 m4 + mesa mesa_glu ncurses tcl @@ -73,7 +80,16 @@ stdenv.mkDerivation rec { done ''; + postFixup = lib.optionalString stdenv.hostPlatform.isDarwin '' + # Fix dylib paths on macOS + install_name_tool -add_rpath ${mesa.out}/lib $out/lib/magic/tcl/tclmagic.dylib + install_name_tool -add_rpath ${mesa_glu.out}/lib $out/lib/magic/tcl/tclmagic.dylib + install_name_tool -add_rpath ${mesa.out}/lib $out/lib/magic/tcl/magicexec + install_name_tool -add_rpath ${mesa_glu.out}/lib $out/lib/magic/tcl/magicexec + ''; + env.NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration"; + env.NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-headerpad_max_install_names"; meta = with lib; { description = "VLSI layout tool written in Tcl";