nixpkgs/pkgs/development/compilers/flasm/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

42 lines
1.2 KiB
Nix

{ lib, stdenv, fetchzip, unzip, fetchpatch, bison, flex, gperf, zlib }:
stdenv.mkDerivation rec {
pname = "flasm";
version = "1.64";
src = fetchzip {
url = "https://www.nowrap.de/download/flasm16src.zip";
sha256 = "03hvxm66rb6rjwbr07hc3k7ia5rim2xlhxbd9qmcai9xwmyiqafg";
stripRoot = false;
};
patches = [
# Pull patch pending upstream inclusion for -fno-common toolchains:
# https://sourceforge.net/p/flasm/patches/2/
(fetchpatch {
name = "fno-common.patch";
url = "https://sourceforge.net/p/flasm/patches/2/attachment/0001-flasm-fix-build-on-gcc-10-fno-common.patch";
sha256 = "0ic7k1mmyvhpnxam89dbg8i9bfzk70zslfdxgpmkszx097bj1hv6";
})
];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
nativeBuildInputs = [ unzip bison flex gperf ];
buildInputs = [ zlib ];
installPhase = ''
install -Dm755 flasm -t $out/bin
'';
meta = with lib; {
description = "Assembler and disassembler for Flash (SWF) bytecode";
mainProgram = "flasm";
homepage = "https://flasm.sourceforge.net/";
license = licenses.bsd2;
maintainers = with maintainers; [ siraben ];
platforms = platforms.all;
};
}