libfabric: Add uring variant (#41563)
* libfabric: Add uring variant * Remove tcp fabric requirement for uring * Fix style and use spec.satisfies
This commit is contained in:
parent
b7edcbecd7
commit
5b6137d91a
@ -99,6 +99,8 @@ class Libfabric(AutotoolsPackage):
|
|||||||
|
|
||||||
variant("debug", default=False, description="Enable debugging")
|
variant("debug", default=False, description="Enable debugging")
|
||||||
|
|
||||||
|
variant("uring", default=False, when="@1.17.0:", description="Enable uring support")
|
||||||
|
|
||||||
# For version 1.9.0:
|
# For version 1.9.0:
|
||||||
# headers: fix forward-declaration of enum fi_collective_op with C++
|
# headers: fix forward-declaration of enum fi_collective_op with C++
|
||||||
patch(
|
patch(
|
||||||
@ -119,6 +121,7 @@ class Libfabric(AutotoolsPackage):
|
|||||||
depends_on("ucx", when="@1.18.0: fabrics=ucx")
|
depends_on("ucx", when="@1.18.0: fabrics=ucx")
|
||||||
depends_on("uuid", when="fabrics=opx")
|
depends_on("uuid", when="fabrics=opx")
|
||||||
depends_on("numactl", when="fabrics=opx")
|
depends_on("numactl", when="fabrics=opx")
|
||||||
|
depends_on("liburing@2.1:", when="+uring")
|
||||||
|
|
||||||
depends_on("m4", when="@main", type="build")
|
depends_on("m4", when="@main", type="build")
|
||||||
depends_on("autoconf", when="@main", type="build")
|
depends_on("autoconf", when="@main", type="build")
|
||||||
@ -191,6 +194,9 @@ def configure_args(self):
|
|||||||
else:
|
else:
|
||||||
args.append("--with-kdreg=no")
|
args.append("--with-kdreg=no")
|
||||||
|
|
||||||
|
if self.spec.satisfies("+uring"):
|
||||||
|
args.append("--with-uring=yes")
|
||||||
|
|
||||||
for fabric in [f if isinstance(f, str) else f[0].value for f in self.fabrics]:
|
for fabric in [f if isinstance(f, str) else f[0].value for f in self.fabrics]:
|
||||||
if "fabrics=" + fabric in self.spec:
|
if "fabrics=" + fabric in self.spec:
|
||||||
args.append("--enable-{0}=yes".format(fabric))
|
args.append("--enable-{0}=yes".format(fabric))
|
||||||
|
Loading…
Reference in New Issue
Block a user