From 237a0d8999154d6a291bfff56a8bf12ecb104c5b Mon Sep 17 00:00:00 2001 From: Peter Scheibel Date: Sat, 3 Jun 2023 18:08:02 -0700 Subject: Add explicit CMake .libs implementation that returns an empty list; same for .headers (#35816) --- var/spack/repos/builtin/packages/cmake/package.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/var/spack/repos/builtin/packages/cmake/package.py b/var/spack/repos/builtin/packages/cmake/package.py index 34bbd636cd..a70f04152d 100644 --- a/var/spack/repos/builtin/packages/cmake/package.py +++ b/var/spack/repos/builtin/packages/cmake/package.py @@ -436,6 +436,22 @@ class Cmake(Package): module.cmake = Executable(self.spec.prefix.bin.cmake) module.ctest = Executable(self.spec.prefix.bin.ctest) + @property + def libs(self): + """CMake has no libraries, so if you ask for `spec['cmake'].libs` + (which happens automatically for packages that depend on CMake as + a link dependency) the default implementation of ``.libs` will + search the entire root prefix recursively before failing. + + The longer term solution is for all dependents of CMake to change + their deptype. For now, this returns an empty set of libraries. + """ + return LibraryList([]) + + @property + def headers(self): + return HeaderList([]) + def run_version_check(self, bin): """Runs and checks output of the installed binary.""" exe_path = join_path(self.prefix.bin, bin) -- cgit v1.2.3-70-g09d2