spack external find: allow to search by tags (#21407)
This commit adds an option to the `external find` command that allows it to search by tags. In this way group of executables with common purposes can be grouped under a single name and a simple command can be used to detect all of them. As an example introduce the 'build-tools' tag to search for common development tools on a system
This commit is contained in:

committed by
GitHub

parent
e9ae44fd8c
commit
694d633a2c
@@ -31,6 +31,8 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
|
||||
|
||||
build_directory = 'spack-build'
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = [
|
||||
'^autoconf$', '^autoheader$', '^autom4te$', '^autoreconf$',
|
||||
'^autoscan$', '^autoupdate$', '^ifnames$'
|
||||
|
@@ -25,6 +25,8 @@ class Automake(AutotoolsPackage, GNUMirrorPackage):
|
||||
|
||||
build_directory = 'spack-build'
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^automake$']
|
||||
|
||||
@classmethod
|
||||
|
@@ -14,6 +14,8 @@ class Cmake(Package):
|
||||
url = 'https://github.com/Kitware/CMake/releases/download/v3.19.0/cmake-3.19.0.tar.gz'
|
||||
maintainers = ['chuckatkins']
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^cmake$']
|
||||
|
||||
version('3.19.2', sha256='e3e0fd3b23b7fb13e1a856581078e0776ffa2df4e9d3164039c36d3315e0c7f0')
|
||||
|
@@ -14,6 +14,8 @@ class Flex(AutotoolsPackage):
|
||||
homepage = "https://github.com/westes/flex"
|
||||
url = "https://github.com/westes/flex/releases/download/v2.6.1/flex-2.6.1.tar.gz"
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^flex$']
|
||||
|
||||
version('2.6.4', sha256='e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995')
|
||||
|
@@ -29,6 +29,8 @@ class Gmake(AutotoolsPackage, GNUMirrorPackage):
|
||||
patch('https://src.fedoraproject.org/rpms/make/raw/519a7c5bcbead22e6ea2d2c2341d981ef9e25c0d/f/make-4.2.1-glob-fix-2.patch', level=1, sha256='fe5b60d091c33f169740df8cb718bf4259f84528b42435194ffe0dd5b79cd125', when='@4.2.1')
|
||||
patch('https://src.fedoraproject.org/rpms/make/raw/519a7c5bcbead22e6ea2d2c2341d981ef9e25c0d/f/make-4.2.1-glob-fix-3.patch', level=1, sha256='ca60bd9c1a1b35bc0dc58b6a4a19d5c2651f7a94a4b22b2c5ea001a1ca7a8a7f', when='@:4.2.1')
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^g?make$']
|
||||
|
||||
@classmethod
|
||||
|
@@ -30,6 +30,8 @@ class Libtool(AutotoolsPackage, GNUMirrorPackage):
|
||||
|
||||
build_directory = 'spack-build'
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^g?libtool(ize)?$']
|
||||
|
||||
@classmethod
|
||||
|
@@ -33,6 +33,8 @@ class M4(AutotoolsPackage, GNUMirrorPackage):
|
||||
|
||||
build_directory = 'spack-build'
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^g?m4$']
|
||||
|
||||
@classmethod
|
||||
|
@@ -31,6 +31,8 @@ class PkgConfig(AutotoolsPackage):
|
||||
|
||||
parallel = False
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^pkg-config$']
|
||||
|
||||
@classmethod
|
||||
|
@@ -37,6 +37,8 @@ class Pkgconf(AutotoolsPackage):
|
||||
# https://github.com/spack/spack/issues/3525
|
||||
conflicts('%pgi')
|
||||
|
||||
tags = ['build-tools']
|
||||
|
||||
executables = ['^pkgconf$', '^pkg-config$']
|
||||
|
||||
@classmethod
|
||||
|
Reference in New Issue
Block a user