mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-20 04:19:00 +02:00
jasmin: make deterministic and clean up
* use finalAttrs instead of rec * shorten url * use hash instead of sha256 * use canonicalize-jars-hook (related issue: #278518) * add meta.mainProgram
This commit is contained in:
parent
8b213fb757
commit
d7af1d962d
|
@ -1,31 +1,49 @@
|
||||||
{ lib, stdenv
|
{ lib
|
||||||
|
, stdenv
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, unzip
|
, unzip
|
||||||
, jdk8
|
|
||||||
, ant
|
, ant
|
||||||
|
, jdk8
|
||||||
, makeWrapper
|
, makeWrapper
|
||||||
|
, canonicalize-jars-hook
|
||||||
, callPackage
|
, callPackage
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let jre = jdk8.jre; jdk = jdk8; in
|
let
|
||||||
stdenv.mkDerivation rec {
|
jdk = jdk8;
|
||||||
|
jre = jdk8.jre;
|
||||||
|
|
||||||
|
in stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "jasmin";
|
pname = "jasmin";
|
||||||
version = "2.4";
|
version = "2.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://sourceforge/jasmin/jasmin-${version}/jasmin-${version}.zip";
|
url = "mirror://sourceforge/jasmin/jasmin-${finalAttrs.version}.zip";
|
||||||
sha256 = "17a41vr96glcdrdbk88805wwvv1r6w8wg7if23yhd0n6rrl0r8ga";
|
hash = "sha256-6qEMaM7Gggb9EC6exxE3OezNeQEIoblabow+k/IORJ0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ unzip jdk ant makeWrapper ];
|
nativeBuildInputs = [
|
||||||
|
unzip
|
||||||
|
ant
|
||||||
|
jdk
|
||||||
|
makeWrapper
|
||||||
|
canonicalize-jars-hook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
runHook preBuild
|
||||||
|
ant all
|
||||||
|
runHook postBuild
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
runHook preInstall
|
||||||
|
|
||||||
buildPhase = "ant all";
|
|
||||||
installPhase =
|
|
||||||
''
|
|
||||||
install -Dm644 jasmin.jar $out/share/java/jasmin.jar
|
install -Dm644 jasmin.jar $out/share/java/jasmin.jar
|
||||||
mkdir -p $out/bin
|
|
||||||
makeWrapper ${jre}/bin/java $out/bin/jasmin \
|
makeWrapper ${jre}/bin/java $out/bin/jasmin \
|
||||||
--add-flags "-jar $out/share/java/jasmin.jar"
|
--add-flags "-jar $out/share/java/jasmin.jar"
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.tests = {
|
passthru.tests = {
|
||||||
|
@ -34,11 +52,11 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "An assembler for the Java Virtual Machine";
|
description = "An assembler for the Java Virtual Machine";
|
||||||
homepage = "https://jasmin.sourceforge.net/";
|
|
||||||
downloadPage = "https://sourceforge.net/projects/jasmin/files/latest/download";
|
downloadPage = "https://sourceforge.net/projects/jasmin/files/latest/download";
|
||||||
|
homepage = "https://jasmin.sourceforge.net/";
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
|
mainProgram = "jasmin";
|
||||||
maintainers = with maintainers; [ fgaz ];
|
maintainers = with maintainers; [ fgaz ];
|
||||||
platforms = platforms.all;
|
platforms = platforms.all;
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue