3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/development/tools/literate-programming/nuweb/default.nix
2022-08-01 02:50:37 +00:00

46 lines
1.3 KiB
Nix

{lib, stdenv, fetchurl, tex}:
stdenv.mkDerivation rec {
pname = "nuweb";
version = "1.62";
src = fetchurl {
url = "mirror://sourceforge/project/nuweb/${pname}-${version}.tar.gz";
sha256 = "sha256-JVqPYkYPXBT0xLNWuW4DV6N6ZlKuBYQGT46frhnpU64=";
};
buildInputs = [ tex ];
patchPhase = ''
sed -ie 's|nuweb -r|./nuweb -r|' Makefile
'';
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: global.o:/build/nuweb-1.62/global.h:91: multiple definition of
# `current_sector'; main.o:/build/nuweb-1.62/global.h:91: first defined here
NIX_CFLAGS_COMPILE = "-fcommon";
buildPhase = ''
make nuweb
make nuweb.pdf nuwebdoc.pdf all
'';
installPhase = ''
install -d $out/bin $out/share/man/man1 $out/share/doc/${pname}-${version} $out/share/emacs/site-lisp
cp nuweb $out/bin
cp nuweb.el $out/share/emacs/site-lisp
gzip -c nuweb.1 > $out/share/man/man1/nuweb.1.gz
cp htdocs/index.html nuweb.w nuweb.pdf nuwebdoc.pdf README $out/share/doc/${pname}-${version}
'';
meta = with lib; {
description = "A simple literate programming tool";
homepage = "http://nuweb.sourceforge.net";
license = licenses.free;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.unix;
};
}
# TODO: nuweb.el Emacs integration