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:
Massimiliano Culpo
2021-02-04 13:17:32 +01:00
committed by GitHub
parent e9ae44fd8c
commit 694d633a2c
15 changed files with 76 additions and 12 deletions

View File

@@ -31,6 +31,8 @@ class Autoconf(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
tags = ['build-tools']
executables = [
'^autoconf$', '^autoheader$', '^autom4te$', '^autoreconf$',
'^autoscan$', '^autoupdate$', '^ifnames$'

View File

@@ -25,6 +25,8 @@ class Automake(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
tags = ['build-tools']
executables = ['^automake$']
@classmethod

View File

@@ -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')

View File

@@ -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')

View File

@@ -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

View File

@@ -30,6 +30,8 @@ class Libtool(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
tags = ['build-tools']
executables = ['^g?libtool(ize)?$']
@classmethod

View File

@@ -33,6 +33,8 @@ class M4(AutotoolsPackage, GNUMirrorPackage):
build_directory = 'spack-build'
tags = ['build-tools']
executables = ['^g?m4$']
@classmethod

View File

@@ -31,6 +31,8 @@ class PkgConfig(AutotoolsPackage):
parallel = False
tags = ['build-tools']
executables = ['^pkg-config$']
@classmethod

View File

@@ -37,6 +37,8 @@ class Pkgconf(AutotoolsPackage):
# https://github.com/spack/spack/issues/3525
conflicts('%pgi')
tags = ['build-tools']
executables = ['^pkgconf$', '^pkg-config$']
@classmethod