Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / version-management / rcs / default.nix
blob40d909c8e028268fbe4f3e098eddb5a4c654fb0d
1 { lib, stdenv, fetchurl, buildPackages, diffutils, ed, lzip }:
3 stdenv.mkDerivation rec {
4   pname = "rcs";
5   version = "5.10.1";
7   src = fetchurl {
8     url = "mirror://gnu/rcs/${pname}-${version}.tar.lz";
9     sha256 = "sha256-Q93+EHJKi4XiRo9kA7YABzcYbwHmDgvWL95p2EIjTMU=";
10   };
12   ac_cv_path_ED = "${ed}/bin/ed";
13   DIFF = "${diffutils}/bin/diff";
14   DIFF3 = "${diffutils}/bin/diff3";
16   disallowedReferences =
17     lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform)
18       [ buildPackages.diffutils buildPackages.ed ];
20   env.NIX_CFLAGS_COMPILE = "-std=c99";
22   hardeningDisable = lib.optional stdenv.cc.isClang "format";
24   nativeBuildInputs = [ lzip ];
26   meta = {
27     homepage = "https://www.gnu.org/software/rcs/";
28     description = "Revision control system";
29     longDescription =
30       '' The GNU Revision Control System (RCS) manages multiple revisions of
31          files. RCS automates the storing, retrieval, logging,
32          identification, and merging of revisions.  RCS is useful for text
33          that is revised frequently, including source code, programs,
34          documentation, graphics, papers, and form letters.
35       '';
37     license = lib.licenses.gpl3Plus;
38     maintainers = with lib.maintainers; [ eelco ];
39     platforms = lib.platforms.unix;
40   };