summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
authorEvgenii Petrov <blinunleius@gmail.com>2023-04-29 17:34:21 +0100
committerEvgenii Petrov <blinunleius@gmail.com>2023-04-30 15:19:11 +0100
commit56c915e4cb2f38ae94d2c4046f70fad1011cc789 (patch)
tree023f9d2c492741b2f5832769e659516419f2ed39 /pkgs/tools
parent0c97d307e68209414977ae270db9d9afafde21b6 (diff)
downloadnixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar.gz
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar.bz2
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar.lz
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar.xz
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.tar.zst
nixpkgs-56c915e4cb2f38ae94d2c4046f70fad1011cc789.zip
rosie: unstable-2020-01-11 -> 1.3.0
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/text/rosie/default.nix24
1 files changed, 19 insertions, 5 deletions
diff --git a/pkgs/tools/text/rosie/default.nix b/pkgs/tools/text/rosie/default.nix
index a4edf55f750..190fd4944d1 100644
--- a/pkgs/tools/text/rosie/default.nix
+++ b/pkgs/tools/text/rosie/default.nix
@@ -7,12 +7,12 @@
 
 stdenv.mkDerivation rec {
   pname = "rosie";
-  version = "unstable-2020-01-11";
+  version = "1.3.0";
 
   src = fetchgit {
     url = "https://gitlab.com/rosie-pattern-language/rosie";
-    rev = "670e9027563609ba2ea31e14e2621a1302742795";
-    sha256 = "0jc512dbn62a1fniknhbp6q0xa1p7xi3hn5v60is8sy9jgi3afxv";
+    rev = "9303e04ae2cffabdda6ccc4e2a351a47218615ff";
+    sha256 = "1smh760baf43hr56p6rh4khz3shyzda5lqva4ffxwchl7yy7r82j";
     fetchSubmodules = true;
   };
 
@@ -23,17 +23,31 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     patchShebangs src/build_info.sh
+    # rosie is ran as part of `make check`,
+    # and so needs to be patched in preConfigure.
+    patchShebangs rosie
     # Part of the same Makefile target which calls git to update submodules
     ln -s src submodules/lua/include
+    # ldconfig is irrelevant, disable it inside `make installforce`.
+    sed -iE 's/ldconfig/echo skippin ldconfig/' Makefile
+    sed -iE '/ld.so.conf.d/d' Makefile
+  '';
+
+  preInstall = lib.optionalString stdenv.isDarwin ''
+    install_name_tool -add_rpath $out/lib build/bin/rosie
+    install_name_tool -id $out/lib/librosie.dylib build/lib/librosie.dylib
   '';
 
   postInstall = ''
     mkdir -p $out/share/emacs/site-lisp $out/share/vim-plugins $out/share/nvim
-    mv $out/lib/rosie/extra/extra/emacs/* $out/share/emacs/site-lisp/
-    mv $out/lib/rosie/extra/extra/vim $out/share/vim-plugins/rosie
+    mv $out/lib/rosie/extra/emacs/* $out/share/emacs/site-lisp/
+    mv $out/lib/rosie/extra/vim $out/share/vim-plugins/rosie
     ln -s $out/share/vim-plugins/rosie $out/share/nvim/site
   '';
 
+  # librosie.so is dlopen'ed , so we disable ELF patching to preserve RUNPATH .
+  dontPatchELF = true;
+
   makeFlags = [ "DESTDIR=${placeholder "out"}" ];
 
   buildInputs = [ libbsd readline ];