pmix, openmpi, and prrte need to use the same configure to find the same deps (#36105)

* [openmpi] 5.0.0.rc10 onwards needs munge

This is the error you will see when munge is missing from `PKG_CONFIG_PATH`:

```
configure:63942: checking for pmix pkg-config cflags
configure:63956: check_package_pkgconfig_run_results=Package munge was not found in the pkg-config search path.
Perhaps you should add the directory containing `munge.pc'
to the PKG_CONFIG_PATH environment variable
Package 'munge', required by 'pmix', not found
configure:63959: $? = 1
configure:63966: pkg-config output: Package munge was not found in the pkg-config search path.
Perhaps you should add the directory containing `munge.pc'
to the PKG_CONFIG_PATH environment variable
Package 'munge', required by 'pmix', not found
configure:63972: result: error
configure:63974: error: An error occurred retrieving pmix cppflags from pkg-config
```

* Use same PKG_CONFIG_PATH defaults for ompi+pmix+prrte

The issue I tried to fix in https://github.com/spack/spack/pull/36105 comes from
different default search paths in different `pkg-config` executables used in
`openmpi` and `pmix` package. As these tools (`openmpi`, `pmix`, and `prrte`)
all use the same mechanisms to detect dependencies, the `pkg-config` environment
they use should also be equal.
This commit is contained in:
Stephen Sachs 2023-03-17 00:02:02 +01:00 committed by GitHub
parent 8b94cc4ec2
commit 38383743e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 0 deletions

View File

@ -80,6 +80,7 @@ class Pmix(AutotoolsPackage):
depends_on("libtool", type="build", when="@master")
depends_on("perl", type="build", when="@master")
depends_on("pandoc", type="build", when="+docs")
depends_on("pkgconfig", type="build")
depends_on("libevent@2.0.20:")
depends_on("hwloc@1.0:1", when="@:2")

View File

@ -33,6 +33,7 @@ class Prrte(AutotoolsPackage):
depends_on("automake", type=("build"))
depends_on("libtool", type=("build"))
depends_on("flex", type=("build"))
depends_on("pkgconfig", type="build")
def autoreconf(self, spec, prefix):
# If configure exists nothing needs to be done