python313Packages.kivy: fix build (#372247)
[NixPkgs.git] / pkgs / by-name / li / libmbim / package.nix
blob0171aea5490efbbd34fe4bc7d8457957cfbb2f4f
2   lib,
3   stdenv,
4   fetchFromGitLab,
5   meson,
6   ninja,
7   pkg-config,
8   glib,
9   python3,
10   help2man,
11   bash-completion,
12   bash,
13   buildPackages,
14   withIntrospection ?
15     lib.meta.availableOn stdenv.hostPlatform gobject-introspection
16     && stdenv.hostPlatform.emulatorAvailable buildPackages,
17   withDocs ? stdenv.hostPlatform == stdenv.buildPlatform,
18   gobject-introspection,
21 stdenv.mkDerivation rec {
22   pname = "libmbim";
23   version = "1.30.0";
25   outputs = [
26     "out"
27     "dev"
28   ] ++ lib.optionals withDocs [ "man" ];
30   src = fetchFromGitLab {
31     domain = "gitlab.freedesktop.org";
32     owner = "mobile-broadband";
33     repo = "libmbim";
34     rev = version;
35     hash = "sha256-sHTpu9WeMZroT+1I18ObEHWSzcyj/Relyz8UNe+WawI=";
36   };
38   mesonFlags = [
39     "-Dudevdir=${placeholder "out"}/lib/udev"
40     (lib.mesonBool "introspection" withIntrospection)
41     (lib.mesonBool "man" withDocs)
42   ];
44   strictDeps = true;
46   nativeBuildInputs =
47     [
48       meson
49       ninja
50       pkg-config
51       python3
52     ]
53     ++ lib.optionals withDocs [
54       help2man
55     ]
56     ++ lib.optionals withIntrospection [
57       gobject-introspection
58     ];
60   buildInputs = [
61     glib
62     bash-completion
63     bash
64   ];
66   doCheck = true;
68   postPatch = ''
69     patchShebangs \
70       build-aux/mbim-codegen/mbim-codegen
71   '';
73   meta = with lib; {
74     homepage = "https://www.freedesktop.org/wiki/Software/libmbim/";
75     description = "Library for talking to WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol";
76     changelog = "https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/raw/${version}/NEWS";
77     maintainers = teams.freedesktop.members;
78     platforms = platforms.linux;
79     license = licenses.gpl2Plus;
80   };