Commit | Line | Data |
---|---|---|
1f5d5e53 JA |
1 | # dfu-programmer doesn't have darwin on it's list of supported platforms |
2 | { pkgs ? import <nixpkgs> { config = { allowUnsupportedSystem = true; }; } | |
833ec849 | 3 | , avr ? true, arm ? true, teensy ? true }: |
1ad941e9 LW |
4 | |
5 | with pkgs; | |
6 | let | |
7 | avr_incflags = [ | |
8 | "-isystem ${avrlibc}/avr/include" | |
9 | "-B${avrlibc}/avr/lib/avr5" | |
10 | "-L${avrlibc}/avr/lib/avr5" | |
11 | "-B${avrlibc}/avr/lib/avr35" | |
12 | "-L${avrlibc}/avr/lib/avr35" | |
13 | "-B${avrlibc}/avr/lib/avr51" | |
14 | "-L${avrlibc}/avr/lib/avr51" | |
15 | ]; | |
2b23072c JH |
16 | avrgcc = pkgs.avrgcc.overrideAttrs (oldAttrs: rec { |
17 | name = "avr-gcc-8.1.0"; | |
18 | src = fetchurl { | |
19 | url = "mirror://gcc/releases/gcc-8.1.0/gcc-8.1.0.tar.xz"; | |
20 | sha256 = "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x"; | |
21 | }; | |
22 | }); | |
1ad941e9 LW |
23 | in |
24 | ||
25 | stdenv.mkDerivation { | |
26 | name = "qmk-firmware"; | |
27 | ||
28 | buildInputs = [ dfu-programmer dfu-util diffutils git ] | |
1f5d5e53 | 29 | ++ lib.optional avr [ avrbinutils avrgcc avrlibc avrdude ] |
833ec849 RV |
30 | ++ lib.optional arm [ gcc-arm-embedded ] |
31 | ++ lib.optional teensy [ teensy-loader-cli ]; | |
1ad941e9 LW |
32 | |
33 | CFLAGS = lib.optional avr avr_incflags; | |
34 | ASFLAGS = lib.optional avr avr_incflags; | |
35 | } |