bfs: add v4.0.5 (#49049)
* bfs: add v4.0.5, liburing: v2.4, v2.9 * Re-enable bfs on developer tools pipelines
This commit is contained in:
parent
dae3b69f2c
commit
f1678f4c7b
@ -38,7 +38,7 @@ spack:
|
|||||||
- ripgrep
|
- ripgrep
|
||||||
- gh
|
- gh
|
||||||
- fd
|
- fd
|
||||||
# - bfs # liburing: /usr/include/linux/ipv6.h:19:8: error: redefinition of 'struct in6_pktinfo'
|
- bfs
|
||||||
- fzf
|
- fzf
|
||||||
- tree
|
- tree
|
||||||
- jq
|
- jq
|
||||||
|
@ -37,7 +37,7 @@ spack:
|
|||||||
- ripgrep
|
- ripgrep
|
||||||
- gh
|
- gh
|
||||||
- fd
|
- fd
|
||||||
# - bfs # liburing: /usr/include/linux/ipv6.h:19:8: error: redefinition of 'struct in6_pktinfo'
|
- bfs
|
||||||
- fzf
|
- fzf
|
||||||
- tree
|
- tree
|
||||||
- jq
|
- jq
|
||||||
|
@ -44,7 +44,7 @@ spack:
|
|||||||
- ripgrep
|
- ripgrep
|
||||||
- gh
|
- gh
|
||||||
- fd
|
- fd
|
||||||
# - bfs # liburing: /usr/include/linux/ipv6.h:19:8: error: redefinition of 'struct in6_pktinfo'
|
- bfs
|
||||||
- fzf
|
- fzf
|
||||||
- tree
|
- tree
|
||||||
- jq
|
- jq
|
||||||
|
@ -6,15 +6,21 @@
|
|||||||
|
|
||||||
|
|
||||||
class Bfs(MakefilePackage):
|
class Bfs(MakefilePackage):
|
||||||
"""A breadth-first version of the UNIX find command."""
|
"""BFS is a breadth-first variant of the UNIX find command that offers
|
||||||
|
consistent, intuitive behavior and improved performance."""
|
||||||
|
|
||||||
homepage = "https://github.com/tavianator/bfs"
|
homepage = "https://github.com/tavianator/bfs"
|
||||||
url = "https://github.com/tavianator/bfs/archive/refs/tags/3.0.1.tar.gz"
|
url = "https://github.com/tavianator/bfs/archive/refs/tags/3.0.1.tar.gz"
|
||||||
|
git = "https://github.com/tavianator/bfs.git"
|
||||||
|
|
||||||
maintainers("alecbcs")
|
maintainers("alecbcs")
|
||||||
|
|
||||||
license("0BSD")
|
license("0BSD")
|
||||||
|
|
||||||
|
sanity_check_is_file = ["bin/bfs"]
|
||||||
|
|
||||||
|
version("main", branch="main")
|
||||||
|
version("4.0.5", sha256="f7d9ebff00d9a010a5d6cc9b7bf1933095d7e5c0b11a8ec48c96c7ed8f993e5f")
|
||||||
version("4.0.4", sha256="209da9e9f43d8fe30fd689c189ea529e9d6b5358ce84a63a44721003aea3e1ca")
|
version("4.0.4", sha256="209da9e9f43d8fe30fd689c189ea529e9d6b5358ce84a63a44721003aea3e1ca")
|
||||||
version("4.0.1", sha256="8117b76b0a967887278a11470cbfa9e7aeae98f11a7eeb136f456ac462e5ba23")
|
version("4.0.1", sha256="8117b76b0a967887278a11470cbfa9e7aeae98f11a7eeb136f456ac462e5ba23")
|
||||||
version("3.1.1", sha256="d73f345c1021e0630e0db930a3fa68dd1f968833037d8471ee1096e5040bf91b")
|
version("3.1.1", sha256="d73f345c1021e0630e0db930a3fa68dd1f968833037d8471ee1096e5040bf91b")
|
||||||
@ -23,12 +29,16 @@ class Bfs(MakefilePackage):
|
|||||||
version("3.0.2", sha256="d3456a9aeecc031064db0dbe012e55a11eb97be88d0ab33a90e570fe66457f92")
|
version("3.0.2", sha256="d3456a9aeecc031064db0dbe012e55a11eb97be88d0ab33a90e570fe66457f92")
|
||||||
version("3.0.1", sha256="a38bb704201ed29f4e0b989fb2ab3791ca51c3eff90acfc31fff424579bbf962")
|
version("3.0.1", sha256="a38bb704201ed29f4e0b989fb2ab3791ca51c3eff90acfc31fff424579bbf962")
|
||||||
|
|
||||||
|
# Build dependencies
|
||||||
depends_on("c", type="build")
|
depends_on("c", type="build")
|
||||||
|
|
||||||
|
# System dependencies
|
||||||
depends_on("acl", when="platform=linux")
|
depends_on("acl", when="platform=linux")
|
||||||
depends_on("attr", when="platform=linux")
|
depends_on("attr", when="platform=linux")
|
||||||
depends_on("libcap", when="platform=linux")
|
depends_on("libcap", when="platform=linux")
|
||||||
depends_on("liburing", when="platform=linux @3.1:")
|
depends_on("liburing@2.4:", when="platform=linux @3.1:")
|
||||||
|
|
||||||
|
# Required dependencies
|
||||||
depends_on("oniguruma")
|
depends_on("oniguruma")
|
||||||
|
|
||||||
@run_before("build", when="@4:")
|
@run_before("build", when="@4:")
|
||||||
@ -39,6 +49,7 @@ def configure(self):
|
|||||||
configure_exe(*args)
|
configure_exe(*args)
|
||||||
|
|
||||||
def install(self, spec, prefix):
|
def install(self, spec, prefix):
|
||||||
|
"""Install the package."""
|
||||||
if spec.satisfies("@:3"):
|
if spec.satisfies("@:3"):
|
||||||
make("install", f"PREFIX={prefix}")
|
make("install", f"PREFIX={prefix}")
|
||||||
else:
|
else:
|
||||||
|
@ -2,27 +2,50 @@
|
|||||||
#
|
#
|
||||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
|
|
||||||
from spack.package import *
|
from spack.package import *
|
||||||
|
|
||||||
|
|
||||||
class Liburing(AutotoolsPackage):
|
class Liburing(AutotoolsPackage):
|
||||||
"""This is the io_uring library, liburing. liburing provides helpers
|
"""Linux-native io_uring I/O access library.
|
||||||
to setup and teardown io_uring instances, and also a simplified interface
|
|
||||||
for applications that don't need (or want) to deal with the full kernel
|
liburing provides helpers to setup and teardown io_uring instances,
|
||||||
side implementation."""
|
and a simplified interface for applications that don't need (or want)
|
||||||
|
to deal with the full kernel side implementation. It enables high-performance
|
||||||
|
asynchronous I/O operations on Linux systems supporting the io_uring
|
||||||
|
interface.
|
||||||
|
"""
|
||||||
|
|
||||||
homepage = "https://github.com/axboe/liburing"
|
homepage = "https://github.com/axboe/liburing"
|
||||||
url = "https://github.com/axboe/liburing/archive/refs/tags/liburing-2.3.tar.gz"
|
url = "https://github.com/axboe/liburing/archive/refs/tags/liburing-2.3.tar.gz"
|
||||||
git = "https://github.com/axboe/liburing.git"
|
git = "https://github.com/axboe/liburing.git"
|
||||||
|
|
||||||
|
maintainers("alecbcs")
|
||||||
|
|
||||||
license("LGPL-2.1-or-later OR MIT")
|
license("LGPL-2.1-or-later OR MIT")
|
||||||
|
|
||||||
|
# Sanity checks
|
||||||
|
sanity_check_is_file = ["include/liburing.h", "lib/liburing.so"]
|
||||||
|
sanity_check_is_dir = ["include", "lib"]
|
||||||
|
|
||||||
|
# Versions
|
||||||
version("master", branch="master")
|
version("master", branch="master")
|
||||||
|
version("2.9", sha256="897b1153b55543e8b92a5a3eb9b906537a5fedcf8afaf241f8b8787940c79f8d")
|
||||||
|
version("2.4", sha256="2398ec82d967a6f903f3ae1fd4541c754472d3a85a584dc78c5da2fabc90706b")
|
||||||
version("2.3", sha256="60b367dbdc6f2b0418a6e0cd203ee0049d9d629a36706fcf91dfb9428bae23c8")
|
version("2.3", sha256="60b367dbdc6f2b0418a6e0cd203ee0049d9d629a36706fcf91dfb9428bae23c8")
|
||||||
|
|
||||||
depends_on("c", type="build") # generated
|
# Build dependencies
|
||||||
depends_on("cxx", type="build") # generated
|
depends_on("c", type="build")
|
||||||
|
depends_on("cxx", type="build")
|
||||||
|
|
||||||
conflicts("platform=darwin", msg="Only supported on linux")
|
# Platform conflicts
|
||||||
conflicts("platform=windows", msg="Only supported on linux")
|
conflicts("platform=darwin", msg="liburing is only supported on Linux.")
|
||||||
|
conflicts("platform=windows", msg="liburing is only supported on Linux.")
|
||||||
|
|
||||||
|
# Define build targets
|
||||||
|
@property
|
||||||
|
def build_targets(self):
|
||||||
|
if self.spec.satisfies("@2.7:"):
|
||||||
|
# avoid examples and test
|
||||||
|
return ["library"]
|
||||||
|
else:
|
||||||
|
return ["all"]
|
||||||
|
Loading…
Reference in New Issue
Block a user