{ lib , stdenv , fetchFromGitHub , autoreconfHook }: stdenv.mkDerivation (finalAttrs: { pname = "robodoc"; version = "4.99.44"; src = fetchFromGitHub { owner = "gumpu"; repo = "ROBODoc"; rev = "v${finalAttrs.version}"; hash = "sha256-l3prSdaGhOvXmZfCPbsZJNocO7y20zJjLQpajRTJOqE="; }; postConfigure = lib.optionalString stdenv.isDarwin '' substituteInPlace Docs/makefile.am \ --replace 'man1_MANS = robodoc.1 robohdrs.1' 'man1_MANS =' ''; nativeBuildInputs = [ autoreconfHook ]; hardeningDisable = [ "format" ]; meta = with lib; { homepage = "https://github.com/gumpu/ROBODoc"; description = "Documentation Extraction Tool"; longDescription = '' ROBODoc is program documentation tool. The idea is to include for every function or procedure a standard header containing all sorts of information about the procedure or function. ROBODoc extracts these headers from the source file and puts them in a separate autodocs-file. ROBODoc thus allows you to include the program documentation in the source code and avoid having to maintain two separate documents. Or as Petteri puts it: "robodoc is very useful - especially for programmers who don't like writing documents with Word or some other strange tool." ROBODoc can format the headers in a number of different formats: HTML, RTF, LaTeX, or XML DocBook. In HTML mode it can generate cross links between headers. You can even include parts of your source code. ROBODoc works with many programming languages: For instance C, Pascal, Shell Scripts, Assembler, COBOL, Occam, Postscript, Forth, Tcl/Tk, C++, Java -- basically any program in which you can use remarks/comments. ''; license = with licenses; gpl3Plus; maintainers = with maintainers; [ AndersonTorres ]; platforms = platforms.all; }; })