nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 unzip,
6 ant,
7 jdk8,
8 makeWrapper,
9 stripJavaArchivesHook,
10 callPackage,
11}:
12
13let
14 jdk = jdk8;
15 jre = jdk8.jre;
16
17in
18stdenv.mkDerivation (finalAttrs: {
19 pname = "jasmin";
20 version = "2.4";
21
22 src = fetchurl {
23 url = "mirror://sourceforge/jasmin/jasmin-${finalAttrs.version}.zip";
24 hash = "sha256-6qEMaM7Gggb9EC6exxE3OezNeQEIoblabow+k/IORJ0=";
25 };
26
27 nativeBuildInputs = [
28 unzip
29 ant
30 jdk
31 makeWrapper
32 stripJavaArchivesHook
33 ];
34
35 buildPhase = ''
36 runHook preBuild
37 ant all
38 runHook postBuild
39 '';
40
41 installPhase = ''
42 runHook preInstall
43
44 install -Dm644 jasmin.jar $out/share/java/jasmin.jar
45 makeWrapper ${jre}/bin/java $out/bin/jasmin \
46 --add-flags "-jar $out/share/java/jasmin.jar"
47
48 runHook postInstall
49 '';
50
51 passthru.tests = {
52 minimal-module = callPackage ./test-assemble-hello-world { };
53 };
54
55 meta = {
56 description = "Assembler for the Java Virtual Machine";
57 downloadPage = "https://sourceforge.net/projects/jasmin/files/latest/download";
58 homepage = "https://jasmin.sourceforge.net/";
59 license = lib.licenses.bsd3;
60 mainProgram = "jasmin";
61 maintainers = with lib.maintainers; [ fgaz ];
62 platforms = lib.platforms.all;
63 };
64})