1{ lib
2, stdenv
3, fetchurl
4, perl
5, gitUpdater
6}:
7
8stdenv.mkDerivation rec {
9 pname = "nasm";
10 version = "2.16.03";
11
12 src = fetchurl {
13 url = "https://www.nasm.us/pub/nasm/releasebuilds/${version}/${pname}-${version}.tar.xz";
14 hash = "sha256-FBKhx2C70F2wJrbA0WV6/9ZjHNCmPN229zzG1KphYUg=";
15 };
16
17 nativeBuildInputs = [ perl ];
18
19 enableParallelBuilding = true;
20
21 doCheck = true;
22
23 checkPhase = ''
24 runHook preCheck
25
26 make golden
27 make test
28
29 runHook postCheck
30 '';
31
32 passthru.updateScript = gitUpdater {
33 url = "https://github.com/netwide-assembler/nasm.git";
34 rev-prefix = "nasm-";
35 ignoredVersions = "rc.*";
36 };
37
38 meta = with lib; {
39 homepage = "https://www.nasm.us/";
40 description = "An 80x86 and x86-64 assembler designed for portability and modularity";
41 platforms = platforms.unix;
42 maintainers = with maintainers; [ pSub willibutz ];
43 license = licenses.bsd2;
44 };
45}