1{
2 lib,
3 unwrapped,
4}:
5
6mkDerivation:
7
8args:
9
10# Check if it's supposed to not get built for the current gnuradio version
11if (builtins.hasAttr "disabled" args) && args.disabled then
12 let
13 name = args.name or "${args.pname}";
14 in
15 throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}"
16else
17
18if builtins.hasAttr "disabledForGRafter" args then
19 throw ''
20 `disabledForGRafter` is superseded by `disabled`.
21 Use `disabled = gnuradioAtLeast "${args.disabledForGRafter}";` instead.
22 ''
23else
24
25 let
26 args_ = {
27 enableParallelBuilding = args.enableParallelBuilding or true;
28 nativeBuildInputs = (args.nativeBuildInputs or [ ]);
29 # We add gnuradio and volk itself by default - most gnuradio based packages
30 # will not consider it a dependency worth mentioning and it will almost
31 # always be needed
32 buildInputs = (args.buildInputs or [ ]) ++ [
33 unwrapped
34 unwrapped.volk
35 ];
36 };
37 in
38 mkDerivation (args // args_)