Move reference removal logic into build support

This commit is contained in:
James Conroy-Finn
2023-11-26 11:23:15 +00:00
parent 4bef5460b5
commit 56aedbd477
5 changed files with 8 additions and 41 deletions
@@ -3,6 +3,7 @@
, glibcLocales
# The GraalVM derivation to use
, graalvmDrv
, removeReferencesTo
, executable ? args.pname
# JAR used as input for GraalVM derivation, defaults to src
, jar ? args.src
@@ -37,12 +38,13 @@ let
"buildPhase"
"nativeBuildInputs"
"installPhase"
"postInstall"
];
in
stdenv.mkDerivation ({
inherit dontUnpack jar;
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ graalvmDrv glibcLocales ];
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ graalvmDrv glibcLocales removeReferencesTo ];
nativeImageBuildArgs = nativeImageBuildArgs ++ extraNativeImageBuildArgs ++ [ graalvmXmx ];
@@ -62,6 +64,11 @@ stdenv.mkDerivation ({
runHook postInstall
'';
postInstall = ''
remove-references-to -t ${graalvmDrv} $out/bin/${executable}
${args.postInstall or ""}
'';
disallowedReferences = [ graalvmDrv ];
passthru = { inherit graalvmDrv; };
-10
View File
@@ -1,7 +1,5 @@
{ lib
, buildGraalvmNativeImage
, graalvmCEPackages
, removeReferencesTo
, fetchurl
, nix-update-script
, testers
@@ -17,10 +15,6 @@ buildGraalvmNativeImage rec {
sha256 = "sha256-vEldQ7qV375mHMn3OUdn0FaPd+f/v9g+C+PuzbSTWtk=";
};
graalvmDrv = graalvmCEPackages.graalvm-ce;
nativeBuildInputs = [ removeReferencesTo ];
extraNativeImageBuildArgs = [
"-H:+ReportExceptionStackTraces"
"-H:Log=registerResource:"
@@ -30,10 +24,6 @@ buildGraalvmNativeImage rec {
"--no-fallback"
];
postInstall = ''
remove-references-to -t ${graalvmDrv} $out/bin/${pname}
'';
passthru.updateScript = nix-update-script { };
passthru.tests.version = testers.testVersion {
-10
View File
@@ -1,7 +1,5 @@
{ lib
, buildGraalvmNativeImage
, graalvmCEPackages
, removeReferencesTo
, fetchurl
, testers
, jet
@@ -16,10 +14,6 @@ buildGraalvmNativeImage rec {
sha256 = "sha256-250/1DBNCXlU1b4jjLUUOXI+uSbOyPXtBN1JJRpdmFc=";
};
graalvmDrv = graalvmCEPackages.graalvm-ce;
nativeBuildInputs = [ removeReferencesTo ];
extraNativeImageBuildArgs = [
"-H:+ReportExceptionStackTraces"
"-H:Log=registerResource:"
@@ -27,10 +21,6 @@ buildGraalvmNativeImage rec {
"--no-server"
];
postInstall = ''
remove-references-to -t ${graalvmDrv} $out/bin/${pname}
'';
passthru.tests.version = testers.testVersion {
inherit version;
package = jet;
@@ -1,8 +1,6 @@
{ lib
, stdenv
, buildGraalvmNativeImage
, graalvmCEPackages
, removeReferencesTo
, babashka
, fetchurl
, fetchFromGitHub
@@ -28,19 +26,11 @@ buildGraalvmNativeImage rec {
sha256 = "c301821ac6914999a44f5c1cd371d46b248fe9a2e31d43a666d0bc2656cfdd78";
};
graalvmDrv = graalvmCEPackages.graalvm-ce;
nativeBuildInputs = [ removeReferencesTo ];
extraNativeImageBuildArgs = [
"--no-fallback"
"--native-image-info"
];
postInstall = ''
remove-references-to -t ${graalvmDrv} $out/bin/${pname}
'';
doCheck = true;
checkPhase = ''
runHook preCheck
-10
View File
@@ -1,7 +1,5 @@
{ lib
, buildGraalvmNativeImage
, graalvmCEPackages
, removeReferencesTo
, fetchurl
, testers
, zprint
@@ -16,10 +14,6 @@ buildGraalvmNativeImage rec {
sha256 = "sha256-o0yoW45a5r+sTGvjEqr5VZgQKm72qsPH/kbLTbMTgEM=";
};
graalvmDrv = graalvmCEPackages.graalvm-ce;
nativeBuildInputs = [ removeReferencesTo ];
extraNativeImageBuildArgs = [
"--no-server"
"-H:EnableURLProtocols=https,http"
@@ -29,10 +23,6 @@ buildGraalvmNativeImage rec {
"--no-fallback"
];
postInstall = ''
remove-references-to -t ${graalvmDrv} $out/bin/${pname}
'';
passthru.tests.version = testers.testVersion {
inherit version;
package = zprint;