tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
gnatPackages.gpr2: 24.0.0 -> 25.0.0
sternenseemann
1 year ago
0ccec7f0
8bc7bcca
+34
-11
2 changed files
expand all
collapse all
unified
split
pkgs
development
ada-modules
gnatprove
default.nix
gpr2
default.nix
+4
-1
pkgs/development/ada-modules/gnatprove/default.nix
···
13
13
gnat_version = lib.versions.major gnat.version;
14
14
15
15
# gnatprove fsf-14 requires gpr2 from a special branch
16
16
-
gpr2_24_2_next = gpr2.overrideAttrs(old: rec {
16
16
+
gpr2_24_2_next = (gpr2.override {
17
17
+
# pregenerated kb db is not included
18
18
+
gpr2kbdir = "${gprbuild}/share/gprconfig";
19
19
+
}).overrideAttrs(old: rec {
17
20
version = "24.2.0-next";
18
21
src = fetchFromGitHub {
19
22
owner = "AdaCore";
+30
-10
pkgs/development/ada-modules/gpr2/default.nix
···
5
5
gprbuild,
6
6
which,
7
7
gnat,
8
8
+
xmlada,
8
9
gnatcoll-core,
9
10
gnatcoll-iconv,
10
11
gnatcoll-gmp,
11
12
enableShared ? !stdenv.hostPlatform.isStatic,
13
13
+
# kb database source, if null assume it is pregenerated
14
14
+
gpr2kbdir ? null,
12
15
}:
13
16
14
17
stdenv.mkDerivation rec {
15
18
pname = "gpr2";
16
16
-
version = "24.0.0";
19
19
+
version = "25.0.0";
17
20
18
21
src = fetchurl {
19
19
-
url = "https://github.com/AdaCore/gpr/releases/download/v${version}/gpr2-with-lkparser-${lib.versions.majorMinor version}.tgz";
20
20
-
sha256 = "1g90689k94q3ma7q76gnjipfblgfvcq6ldwbzcf0l5hx6n8vbly8";
22
22
+
url = "https://github.com/AdaCore/gpr/releases/download/v${version}/gpr2-with-gprconfig_kb-${lib.versions.majorMinor version}.tgz";
23
23
+
sha512 = "70fe0fcf541f6d3d90a34cab1638bbc0283dcd765c000406e0cfb73bae1817b30ddfe73f3672247a97c6b6bfc41900bc96a4440ca0c660f9c2f7b9d3cc8f8dcf";
21
24
};
22
25
23
26
nativeBuildInputs = [
···
26
29
gprbuild
27
30
];
28
31
29
29
-
makeFlags = [
30
30
-
"prefix=$(out)"
31
31
-
"GPR2KBDIR=${gprbuild}/share/gprconfig"
32
32
-
"PROCESSORS=$(NIX_BUILD_CORES)"
33
33
-
"ENABLE_SHARED=${if enableShared then "yes" else "no"}"
34
34
-
];
32
32
+
makeFlags =
33
33
+
[
34
34
+
"prefix=$(out)"
35
35
+
"PROCESSORS=$(NIX_BUILD_CORES)"
36
36
+
"ENABLE_SHARED=${if enableShared then "yes" else "no"}"
37
37
+
"GPR2_BUILD=release"
38
38
+
]
39
39
+
++ lib.optionals (gpr2kbdir != null) [
40
40
+
"GPR2KBDIR=${gpr2kbdir}"
41
41
+
];
42
42
+
43
43
+
configurePhase = ''
44
44
+
runHook preConfigure
45
45
+
make setup "''${makeFlagsArray[@]}" $makeFlags
46
46
+
runHook postConfigure
47
47
+
'';
48
48
+
49
49
+
# fool make into thinking pregenerated targets are up to date
50
50
+
preBuild = lib.optionalString (gpr2kbdir == null) ''
51
51
+
touch .build/kb/{*.adb,*.ads,collect_kb}
52
52
+
'';
35
53
36
54
propagatedBuildInputs = [
37
37
-
gprbuild
55
55
+
xmlada
38
56
gnatcoll-gmp
39
57
gnatcoll-core
40
58
gnatcoll-iconv
···
49
67
];
50
68
maintainers = with maintainers; [ heijligen ];
51
69
platforms = platforms.all;
70
70
+
# TODO(@sternenseemann): investigate failure with gnat 13
71
71
+
broken = lib.versionOlder gnat.version "14";
52
72
};
53
73
}