1{ lib, stdenv, fetchzip, fpc , lang ? "en" } :
2
3assert lib.assertOneOf "lang" lang ["cn" "de" "en" "fr" "tr"];
4
5stdenv.mkDerivation rec {
6 pname = "gavrasm";
7 version = "5.4";
8 flatVersion = lib.strings.replaceStrings ["."] [""] version;
9
10 src = fetchzip {
11 url = "http://www.avr-asm-tutorial.net/gavrasm/v${flatVersion}/gavrasm_sources_lin_${flatVersion}.zip";
12 sha256 = "sha256-uTalb8Wzn2RAoUKZx9RZFCX+V9HUEtUnJ4eSltFumh0=";
13 stripRoot=false;
14 };
15
16 nativeBuildInputs = [ fpc ];
17
18 configurePhase = ''
19 runHook preConfigure
20 cp gavrlang_${lang}.pas gavrlang.pas
21 runHook postConfigure
22 '';
23
24 buildPhase = ''
25 runHook preBuild
26 fpc gavrasm.pas
27 runHook postBuild
28 '';
29
30 installPhase = ''
31 runHook preInstall
32 mkdir -p $out/bin
33 cp gavrasm $out/bin
34 mkdir -p $out/doc
35 cp instr.asm $out/doc
36 cp ReadMe.Txt $out/doc
37 cp LiesMich.Txt $out/doc
38 runHook postInstall
39 '';
40
41 meta = with lib; {
42 homepage = "http://www.avr-asm-tutorial.net/gavrasm/";
43 description = "AVR Assembler for ATMEL AVR-Processors";
44 license = licenses.unfree;
45 maintainers = with maintainers; [ mafo ];
46 platforms = platforms.linux;
47 };
48}