linux_xanmod: 5.11.14 -> 5.11.15
[NixPkgs.git] / pkgs / development / libraries / tllist / default.nix
blobc8497391999032e5e7222055b09edf4c86834fa3
1 { stdenv
2 , lib
3 , fetchgit
4 , meson
5 , ninja
6 }:
8 stdenv.mkDerivation rec {
9   pname = "tllist";
10   version = "1.0.5";
12   src = fetchgit {
13     url = "https://codeberg.org/dnkl/tllist.git";
14     rev = version;
15     sha256 = "wJEW7haQBtCR2rffKOFyqH3aq0eBr6H8T6gnBs2bNRg=";
16   };
18   nativeBuildInputs = [ meson ninja ];
20   doCheck = true;
22   meta = with lib; {
23     homepage = "https://codeberg.org/dnkl/tllist";
24     description = "C header file only implementation of a typed linked list";
25     longDescription = ''
26       Most C implementations of linked list are untyped. That is, their data
27       carriers are typically void *. This is error prone since your compiler
28       will not be able to help you correct your mistakes (oh, was it a
29       pointer-to-a-pointer... I thought it was just a pointer...).
31       tllist addresses this by using pre-processor macros to implement dynamic
32       types, where the data carrier is typed to whatever you want; both
33       primitive data types are supported as well as aggregated ones such as
34       structs, enums and unions.
35     '';
37     license = licenses.mit;
38     maintainers = with maintainers; [ fionera AndersonTorres ];
39     platforms = platforms.all;
40   };