nixpkgs/pkgs/development/compilers/zasm/default.nix

51 lines
1.3 KiB
Nix

{ lib, stdenv, fetchFromGitHub, zlib }:
let
libs-src = fetchFromGitHub {
owner = "megatokio";
repo = "Libraries";
# 2021-02-02
rev = "c5cb3ed512c677db6f33e2d3539dfbb6e547030b";
sha256 = "sha256-GiplhZf640uScVdKL6E/fegOgtC9SE1xgBqcX86XADk=";
};
in
stdenv.mkDerivation rec {
pname = "zasm";
version = "4.4.7";
src = fetchFromGitHub {
owner = "megatokio";
repo = "zasm";
rev = version;
sha256 = "sha256-Zbno8kmzss1H2FjwzHB4U7UXxa6oDfsPV80MVVFfM68=";
extraPostFetch = ''
# remove folder containing files with weird names (causes the hash to turn out differently under macOS vs. Linux)
rm -rv $out/Test
'';
};
buildInputs = [ zlib ];
configurePhase = ''
ln -sf ${libs-src} Libraries
'';
makeFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
"CXX=${stdenv.cc.targetPrefix}c++"
"LINK=${stdenv.cc.targetPrefix}c++"
"STRIP=${stdenv.cc.targetPrefix}strip"
];
installPhase = ''
install -Dm755 -t $out/bin zasm
'';
meta = with lib; {
description = "Z80 / 8080 / Z180 assembler (for unix-style OS)";
homepage = "https://k1.spdns.de/Develop/Projects/zasm/Distributions/";
license = licenses.bsd2;
maintainers = [ maintainers.turbomack ];
platforms = platforms.unix;
badPlatforms = platforms.aarch64;
};
}