depot/third_party/nixpkgs/pkgs/development/compilers/avian/default.nix

44 lines
1.1 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchFromGitHub, zlib, jdk, CoreServices, Foundation }:
stdenv.mkDerivation rec {
pname = "avian";
version = "1.2.0";
src = fetchFromGitHub {
owner = "readytalk";
repo = "avian";
rev = "v${version}";
sha256 = "1j2y45cpqk3x6a743mgpg7z3ivwm7qc9jy6xirvay7ah1qyxmm48";
};
buildInputs = [ zlib jdk ]
++ lib.optionals stdenv.isDarwin [ CoreServices Foundation ];
NIX_CFLAGS_COMPILE = "-Wno-error";
postPatch = ''
substituteInPlace makefile \
--replace 'g++' 'c++' \
--replace 'gcc' 'cc'
'';
installPhase = ''
mkdir -p $out/bin
cp build/*/avian $out/bin/
cp build/*/avian-dynamic $out/bin/
'';
meta = {
description = "Lightweight Java virtual machine";
longDescription = ''
Avian is a lightweight virtual machine and class library designed
to provide a useful subset of Javas features, suitable for
building self-contained applications.
'';
homepage = "https://readytalk.github.io/avian/";
license = lib.licenses.isc;
platforms = lib.platforms.all;
maintainers = [ lib.maintainers.earldouglas ];
};
}