From d852768538d8e36117a7c367f5625296b08200fd Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Fri, 14 Jan 2022 00:13:52 -0300 Subject: tinycc: unstable-2021-10-09 -> 0.9.27+date=2022-01-11 --- pkgs/development/compilers/tinycc/default.nix | 62 ++++++++++++++++----------- 1 file changed, 36 insertions(+), 26 deletions(-) (limited to 'pkgs/development/compilers/tinycc') diff --git a/pkgs/development/compilers/tinycc/default.nix b/pkgs/development/compilers/tinycc/default.nix index b46dee899a3..9da506900bc 100644 --- a/pkgs/development/compilers/tinycc/default.nix +++ b/pkgs/development/compilers/tinycc/default.nix @@ -1,18 +1,26 @@ -{ stdenv, lib, fetchFromRepoOrCz, perl, texinfo, which }: +{ lib +, stdenv +, fetchFromRepoOrCz +, perl +, texinfo +, which +}: stdenv.mkDerivation rec { pname = "tcc"; - version = "unstable-2021-10-09"; + version = "0.9.27+date=2022-01-11"; src = fetchFromRepoOrCz { repo = "tinycc"; - rev = "ca11849ebb88ef4ff87beda46bf5687e22949bd6"; - sha256 = "sha256-xnUDyTYZxbxUCblACyX73boBhU073VRqSy1SWlWsvIw="; + rev = "4e0e9b8f210d69893b306d6b24d2dd615a22f246"; + hash = "sha256-0BJ5wXsgDLBIvcbq+rL9UQC4NjLHCI9r6sUWF98APPg="; }; - nativeBuildInputs = [ perl texinfo which ]; - - hardeningDisable = [ "fortify" ]; + nativeBuildInputs = [ + perl + texinfo + which + ]; postPatch = '' patchShebangs texi2pod.pl @@ -46,37 +54,39 @@ stdenv.mkDerivation rec { install -Dt $out/lib/pkgconfig libtcc.pc -m 444 ''; + outputs = [ "out" "info" "man" ]; + doCheck = true; checkTarget = "test"; meta = with lib; { + homepage = "https://repo.or.cz/tinycc.git"; description = "Small, fast, and embeddable C compiler and interpreter"; longDescription = '' - TinyCC (aka TCC) is a small but hyper fast C compiler. Unlike - other C compilers, it is meant to be self-sufficient: you do not - need an external assembler or linker because TCC does that for - you. + TinyCC (aka TCC) is a small but hyper fast C compiler. Unlike other C + compilers, it is meant to be self-sufficient: you do not need an external + assembler or linker because TCC does that for you. - TCC compiles so fast that even for big projects Makefiles may not - be necessary. + TCC compiles so fast that even for big projects Makefiles may not be + necessary. - TCC not only supports ANSI C, but also most of the new ISO C99 - standard and many GNU C extensions. + TCC not only supports ANSI C, but also most of the new ISO C99 standard + and many GNU C extensions. - TCC can also be used to make C scripts, i.e. pieces of C source - that you run as a Perl or Python script. Compilation is so fast - that your script will be as fast as if it was an executable. + TCC can also be used to make C scripts, i.e. pieces of C source that you + run as a Perl or Python script. Compilation is so fast that your script + will be as fast as if it was an executable. - TCC can also automatically generate memory and bound checks while - allowing all C pointers operations. TCC can do these checks even - if non patched libraries are used. + TCC can also automatically generate memory and bound checks while allowing + all C pointers operations. TCC can do these checks even if non patched + libraries are used. - With libtcc, you can use TCC as a backend for dynamic code - generation. + With libtcc, you can use TCC as a backend for dynamic code generation. ''; - homepage = "https://repo.or.cz/tinycc.git"; license = licenses.lgpl21Only; - platforms = platforms.linux; - maintainers = [ maintainers.joachifm ]; + maintainers = with maintainers; [ joachifm AndersonTorres ]; + platforms = platforms.unix; }; } +# TODO: more multiple outputs +# TODO: self-compilation -- cgit 1.4.1