40 lines
1.3 KiB
Nix
40 lines
1.3 KiB
Nix
{ lib, stdenv, fetchFromGitHub, cmake, bison, flex, libusb-compat-0_1, libelf, libftdi1, readline
|
|
# docSupport is a big dependency, disabled by default
|
|
, docSupport ? false, texLive ? null, texinfo ? null, texi2html ? null
|
|
}:
|
|
|
|
assert docSupport -> texLive != null && texinfo != null && texi2html != null;
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "avrdude";
|
|
version = "7.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "avrdudes";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "sha256-T8MKrvBvFF3WFwBMIN75vCOS0khliHQI+GGQvCk7T1o=";
|
|
};
|
|
|
|
nativeBuildInputs = [ cmake bison flex ];
|
|
|
|
buildInputs = [ libusb-compat-0_1 libelf libftdi1 readline ]
|
|
++ lib.optionals docSupport [ texLive texinfo texi2html ];
|
|
|
|
cmakeFlags = lib.optionals docSupport [
|
|
"-DBUILD_DOC=ON"
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Command-line tool for programming Atmel AVR microcontrollers";
|
|
longDescription = ''
|
|
AVRDUDE (AVR Downloader/UploaDEr) is an utility to
|
|
download/upload/manipulate the ROM and EEPROM contents of AVR
|
|
microcontrollers using the in-system programming technique (ISP).
|
|
'';
|
|
homepage = "https://www.nongnu.org/avrdude/";
|
|
license = licenses.gpl2Plus;
|
|
platforms = with platforms; linux ++ darwin;
|
|
maintainers = [ maintainers.bjornfor ];
|
|
};
|
|
}
|