summary refs log tree commit diff
path: root/pkgs/development/tools/literate-programming
diff options
context:
space:
mode:
authorBen Siraphob <bensiraphob@gmail.com>2021-02-28 20:00:10 +0700
committerBen Siraphob <bensiraphob@gmail.com>2021-03-11 18:45:03 +0700
commitd3c32a980b145b944613fc23d6d38455d5e1b9e3 (patch)
treefaf4050980586e6155ad1c310b3c822d984faa39 /pkgs/development/tools/literate-programming
parent4968a578314bf48a37021c7affc31be69c2f52fe (diff)
downloadnixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar.gz
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar.bz2
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar.lz
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar.xz
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.tar.zst
nixpkgs-d3c32a980b145b944613fc23d6d38455d5e1b9e3.zip
noweb: fix cross-compilation
Diffstat (limited to 'pkgs/development/tools/literate-programming')
-rw-r--r--pkgs/development/tools/literate-programming/noweb/default.nix31
-rw-r--r--pkgs/development/tools/literate-programming/noweb/no-FAQ.patch4
2 files changed, 19 insertions, 16 deletions
diff --git a/pkgs/development/tools/literate-programming/noweb/default.nix b/pkgs/development/tools/literate-programming/noweb/default.nix
index 5d4441ecfbb..e4ebde20390 100644
--- a/pkgs/development/tools/literate-programming/noweb/default.nix
+++ b/pkgs/development/tools/literate-programming/noweb/default.nix
@@ -1,6 +1,6 @@
-{ lib, stdenv, fetchFromGitHub, gawk, groff, icon-lang ? null }:
+{ lib, stdenv, fetchFromGitHub, nawk, groff, icon-lang }:
 
-let noweb = stdenv.mkDerivation rec {
+lib.fix (noweb: stdenv.mkDerivation rec {
   pname = "noweb";
   version = "2.12";
 
@@ -11,25 +11,28 @@ let noweb = stdenv.mkDerivation rec {
     sha256 = "1160i2ghgzqvnb44kgwd6s3p4jnk9668rmc15jlcwl7pdf3xqm95";
   };
 
-  patches = [ ./no-FAQ.patch ];
+  sourceRoot = "source/src";
+
+  patches = [
+    # Remove FAQ
+    ./no-FAQ.patch
+  ];
+
+  postPatch = ''
+    substituteInPlace Makefile --replace 'strip' '${stdenv.cc.targetPrefix}strip'
+  '';
 
   nativeBuildInputs = [ groff ] ++ lib.optionals (!isNull icon-lang) [ icon-lang ];
+  buildInputs = [ nawk ];
 
   preBuild = ''
     mkdir -p "$out/lib/noweb"
-    cd src
   '';
 
   makeFlags = lib.optionals (!isNull icon-lang) [
     "LIBSRC=icon"
     "ICONC=icont"
-  ] ++ lib.optionals stdenv.isDarwin [
-    "CC=clang"
-  ];
-
-
-  installFlags = [
-  ];
+  ] ++ [ "CC=${stdenv.cc.targetPrefix}cc" ];
 
   preInstall = ''
     mkdir -p "$tex/tex/latex/noweb"
@@ -50,11 +53,11 @@ let noweb = stdenv.mkDerivation rec {
     for f in $out/bin/no{index,roff,roots,untangle,web} \
              $out/lib/noweb/to{ascii,html,roff,tex} \
              $out/lib/noweb/{bt,empty}defn \
-             $out/lib/noweb/{noidx,unmarkup}; do
+             $out/lib/noweb/{noidx,pipedocs,unmarkup}; do
         # NOTE: substituteInPlace breaks Icon binaries, so make sure the script
         #       uses (n)awk before calling.
         if grep -q nawk "$f"; then
-            substituteInPlace "$f" --replace "nawk" "${gawk}/bin/awk"
+            substituteInPlace "$f" --replace "nawk" "${nawk}/bin/awk"
         fi
     done
 
@@ -77,4 +80,4 @@ let noweb = stdenv.mkDerivation rec {
     maintainers = with maintainers; [ yurrriq ];
     platforms = with platforms; linux ++ darwin;
   };
-}; in noweb
+})
diff --git a/pkgs/development/tools/literate-programming/noweb/no-FAQ.patch b/pkgs/development/tools/literate-programming/noweb/no-FAQ.patch
index 3230924990b..2fa601d35c8 100644
--- a/pkgs/development/tools/literate-programming/noweb/no-FAQ.patch
+++ b/pkgs/development/tools/literate-programming/noweb/no-FAQ.patch
@@ -1,5 +1,5 @@
---- a/src/Makefile	2006-06-12 22:14:20.000000000 +0200
-+++ b/src/Makefile	2010-06-17 11:30:11.804018145 +0200
+--- a/Makefile	2006-06-12 22:14:20.000000000 +0200
++++ b/Makefile	2010-06-17 11:30:11.804018145 +0200
 @@ -198,7 +198,7 @@
  	(cd elisp; ci -l $(CINAME) $(CIMSG) *.el)
  	ci -l $(CINAME) $(CIMSG) Makefile.nw INSTALL INSTALL.DOS README FAQ COPYRIGHT nwmake *.nw