From 909955825b3a2d0ccf080b8030b9459f41e0fc29 Mon Sep 17 00:00:00 2001 From: klchen0112 <32459567+klchen0112@users.noreply.github.com> Date: Thu, 27 Jun 2024 23:39:33 +0800 Subject: [PATCH] emacsPackages.rime: fix build error in darwin (#322873) Co-authored-by: klchen0112 --- .../emacs/elisp-packages/melpa-packages.nix | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix index bb45c383487c..1e9a8191b3f1 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix @@ -508,14 +508,29 @@ let rime = super.rime.overrideAttrs (old: { buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.librime ]; - preBuild = (old.preBuild or "") + '' + preBuild = (old.preBuild or "") + + (if pkgs.stdenv.isDarwin then + '' + export MODULE_FILE_SUFFIX=".dylib" + make lib + mkdir -p /tmp/build/rime-lib + cp *.dylib /tmp/build/rime-lib + '' + else + '' make lib mkdir -p /build/rime-lib cp *.so /build/rime-lib - ''; - postInstall = (old.postInstall or "") + '' + ''); + postInstall = (old.postInstall or "") + + (if pkgs.stdenv.isDarwin then + '' + install -m444 -t $out/share/emacs/site-lisp/elpa/rime-* /tmp/build/rime-lib/*.dylib + '' + else + '' install -m444 -t $out/share/emacs/site-lisp/elpa/rime-* /build/rime-lib/*.so - ''; + ''); }); shm = super.shm.overrideAttrs (attrs: {