Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / by-name / na / nawk / package.nix
blob0e0b84784c99985c0daeb63482195e0aad322ff0
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , bison
5 , buildPackages
6 , installShellFiles
7 }:
9 stdenv.mkDerivation (finalAttrs: {
10   pname = "nawk";
11   version = "20230911";
13   src = fetchFromGitHub {
14     owner = "onetrueawk";
15     repo = "awk";
16     rev = "2ndEdition";
17     hash = "sha256-9SxeYsTFrsJ+Cg43QjQihi2Ij0qdJvTnyGGhUHJHjuU=";
18   };
20   depsBuildBuild = [ buildPackages.stdenv.cc ];
22   nativeBuildInputs = [
23     bison
24     installShellFiles
25   ];
27   outputs = [ "out" "man" ];
29   makeFlags = [
30     "CC=${stdenv.cc.targetPrefix}cc"
31     "HOSTCC=${if stdenv.buildPlatform.isDarwin then "clang" else "cc"}"
32   ];
34   installPhase = ''
35     runHook preInstall
36     install -Dm755 a.out "$out/bin/nawk"
37     mv awk.1 nawk.1
38     installManPage nawk.1
39     runHook postInstall
40   '';
42   meta = {
43     homepage = "https://awk.dev";
44     description = "The one, true implementation of AWK";
45     longDescription = ''
46       This is the version of awk described in "The AWK Programming Language",
47       Second Edition, by Al Aho, Brian Kernighan, and Peter Weinberger
48       (Addison-Wesley, 2023, ISBN 0-13-826972-6).
49     '';
50     changelog = "https://github.com/onetrueawk/awk/blob/${finalAttrs.src.rev}/ChangeLog";
51     license = lib.licenses.mit;
52     mainProgram = "nawk";
53     maintainers = with lib.maintainers; [ AndersonTorres konimex ];
54     platforms = lib.platforms.all;
55   };