nixpkgs/pkgs/applications/virtualization/rvvm/default.nix
2023-01-28 01:01:50 +00:00

40 lines
1.2 KiB
Nix

{ lib, stdenv, fetchFromGitHub, SDL_compat }:
stdenv.mkDerivation rec {
pname = "rvvm";
version = "unstable-2023-01-25";
src = fetchFromGitHub {
owner = "LekKit";
repo = "RVVM";
rev = "4de27d7083db34bd074b4f056d6eb3871ccf5c10";
sha256 = "sha256-FjEcXfweL6FzA6iLxl9XnKaD4Fh/wZuRTJzZzHkc/B4=";
};
buildInputs = [ SDL_compat ];
makeFlags =
[ "BUILDDIR=out" "BINARY=rvvm" "USE_SDL=1" "GIT_COMMIT=${src.rev}" "all" "lib" ]
# work around https://github.com/NixOS/nixpkgs/issues/19098
++ lib.optional (stdenv.cc.isClang && stdenv.isDarwin) "CFLAGS=-fno-lto";
installPhase = ''
runHook preInstall
install -d $out/{bin,lib,include/devices}
install -m755 out/rvvm -t $out/bin
install -m755 out/librvvm.{a,so} -t $out/lib
install -m644 src/rvvmlib.h -t $out/include
install -m644 src/devices/*.h -t $out/include/devices
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/LekKit/RVVM";
description = "The RISC-V Virtual Machine";
license = with licenses; [ gpl3 /* or */ mpl20 ];
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ nebulka ];
};
}