@@ -3,7 +3,6 @@ from e3.fs import cp
3
3
from e3.anod.helper import Make
4
4
from e3.anod.spec import Anod
5
5
from e3.anod.loader import spec
6
- from e3.diff import patch
7
6
8
7
import os
9
8
@@ -13,7 +12,7 @@ patch_name = "gnatcov.patch"
13
12
class GNATcov(spec("common")):
14
13
@property
15
14
def version(self):
16
- return "22 .0"
15
+ return "26 .0"
17
16
18
17
@property
19
18
def tarball(self):
@@ -34,7 +33,6 @@ class GNATcov(spec("common")):
34
33
def build_source_list(self):
35
34
return [
36
35
Anod.Source(name=self.tarball, publish=True, dest=""),
37
- self.Source(name=patch_name, publish=True, unpack_cmd=cp, dest="patches"),
38
36
]
39
37
40
38
@property
@@ -45,13 +43,14 @@ class GNATcov(spec("common")):
45
43
Anod.Dependency("libgpr", track=True),
46
44
Anod.Dependency("gnatcoll", track=True),
47
45
Anod.Dependency("gnatcoll-bindings", track=True),
48
- Anod.Dependency("langkit ", track=True),
46
+ Anod.Dependency("langkit_support ", track=True),
49
47
Anod.Dependency("libadalang", track=True),
50
48
Anod.Dependency("binutils", track=True),
51
49
Anod.Dependency("gnatutil", track=True),
52
50
Anod.Dependency("xmlada", track=True),
53
51
Anod.Dependency("zlib", track=True),
54
- Anod.Dependency("gmp", track=True)
52
+ Anod.Dependency("gmp", track=True),
53
+ Anod.Dependency("llvm", track=True),
55
54
]
56
55
if self.env.target.os.name == "windows":
57
56
deps.append(Anod.Dependency("libiconv"))
@@ -63,23 +62,14 @@ class GNATcov(spec("common")):
63
62
for m in [d for d in self.deps if d != "binutils"]:
64
63
self.deps[m].setenv()
65
64
66
- # Little hack to apply the patch only once, there is probably a clean
67
- # way to do that.
68
- patched = os.path.join(self["SRC_DIR"], "patches", ".patched")
69
- if not os.path.exists(patched):
70
- patch(
71
- os.path.join(self["SRC_DIR"], "patches", patch_name),
72
- self.build_space.src_dir,
73
- )
74
- touch(patched)
75
-
76
65
build_mode = "prod"
77
66
exec_dir = os.path.join(self["SRC_DIR"], "tools", "gnatcov")
78
67
79
68
make_all = Make(self, exec_dir=exec_dir, jobs=1)
80
69
make_all.set_default_target("all")
81
70
make_all.set_var("BINUTILS_SRC_DIR", self.deps["binutils"]["SRC_DIR"])
82
71
make_all.set_var("BINUTILS_BUILD_DIR", self.deps["binutils"]["BUILD_DIR"])
72
+ make_all.set_var("C_SUPPORT", "False")
83
73
84
74
make_distrib = Make(self, exec_dir=exec_dir)
85
75
make_distrib.set_var("PREFIX", unixpath(self["INSTALL_DIR"]))
@@ -89,8 +79,21 @@ class GNATcov(spec("common")):
89
79
m.set_var("BITS_ARCH", str(self.env.target.cpu.bits))
90
80
m.set_var("DISTRIB_ARCH", self.env.build.cpu.name)
91
81
m.set_var("BUILD_MODE", build_mode)
92
- m.set_var("ADAPTERS_LIST", "")
82
+ m.set_var("ADAPTERS_LIST", "llvm_json ")
93
83
94
84
make_all()
95
85
make_distrib()
86
+
87
+ cp(
88
+ source=os.path.join(
89
+ self.deps["llvm"]["INSTALL_DIR"],
90
+ "bin",
91
+ "llvm-profdata" + self.env.build.os.exeext,
92
+ ),
93
+ target=os.path.join(
94
+ self["PKG_DIR"],
95
+ "libexec",
96
+ "gnatcoverage",
97
+ ),
98
+ )
96
99
self.clean()
0 commit comments