tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
jextract-21: convert to gradle setup hook
chayleaf
2 years ago
6d513fb2
f9c2c4a8
+5
-47
1 changed file
expand all
collapse all
unified
split
pkgs
by-name
je
jextract-21
package.nix
+5
-47
pkgs/by-name/je/jextract-21/package.nix
···
1
1
{ lib
2
2
, stdenv
3
3
, fetchFromGitHub
4
4
-
, emptyDirectory
5
5
-
, writeText
6
4
, makeBinaryWrapper
7
5
, gradle
8
6
, jdk21
9
7
, llvmPackages
10
8
}:
11
9
12
12
-
let
13
13
-
gradleInit = writeText "init.gradle" ''
14
14
-
logger.lifecycle 'Replacing Maven repositories with empty directory...'
15
15
-
gradle.projectsLoaded {
16
16
-
rootProject.allprojects {
17
17
-
buildscript {
18
18
-
repositories {
19
19
-
clear()
20
20
-
maven { url '${emptyDirectory}' }
21
21
-
}
22
22
-
}
23
23
-
repositories {
24
24
-
clear()
25
25
-
maven { url '${emptyDirectory}' }
26
26
-
}
27
27
-
}
28
28
-
}
29
29
-
settingsEvaluated { settings ->
30
30
-
settings.pluginManagement {
31
31
-
repositories {
32
32
-
maven { url '${emptyDirectory}' }
33
33
-
}
34
34
-
}
35
35
-
}
36
36
-
'';
37
37
-
in
38
38
-
39
10
stdenv.mkDerivation {
40
11
pname = "jextract";
41
12
version = "unstable-2023-11-27";
···
52
23
makeBinaryWrapper
53
24
];
54
25
55
55
-
env = {
56
56
-
ORG_GRADLE_PROJECT_llvm_home = llvmPackages.libclang.lib;
57
57
-
ORG_GRADLE_PROJECT_jdk21_home = jdk21;
58
58
-
};
59
59
-
60
60
-
buildPhase = ''
61
61
-
runHook preBuild
62
62
-
63
63
-
export GRADLE_USER_HOME=$(mktemp -d)
64
64
-
gradle --console plain --init-script "${gradleInit}" assemble
65
65
-
66
66
-
runHook postBuild
67
67
-
'';
26
26
+
gradleFlags = [
27
27
+
"-Pllvm_home=${llvmPackages.libclang.lib}"
28
28
+
"-Pjdk21_home=${jdk21}"
29
29
+
];
68
30
69
31
doCheck = true;
70
32
71
71
-
checkPhase = ''
72
72
-
runHook preCheck
73
73
-
gradle --console plain --init-script "${gradleInit}" verify
74
74
-
runHook postCheck
75
75
-
'';
33
33
+
gradleCheckTask = "verify";
76
34
77
35
installPhase = ''
78
36
runHook preInstall