Make dev-build compatible with spack develop

This commit is contained in:
Philip Sakievich 2024-11-07 21:59:21 -07:00
parent 43a9c6cb66
commit 259a1d9268

View File

@ -12,6 +12,7 @@
import spack.cmd
import spack.cmd.common.arguments
import spack.config
import spack.environment as ev
import spack.repo
from spack.cmd.common import arguments
from spack.installer import PackageInstaller
@ -102,6 +103,17 @@ def dev_build(self, args):
if not spack.repo.PATH.exists(spec.name):
raise spack.repo.UnknownPackageError(spec.name)
env = ev.active_environment()
if env:
matches = env.all_matching_specs(spec)
dev_matches = [m for m in matches if m.is_develop]
if len(dev_matches) > 1:
tty.die("Too many matching develop specs in the active environment")
elif len(dev_matches) < 1:
tty.die("No matching develop specs found in the active environment")
else:
spec = dev_matches[0]
else:
if not spec.versions.concrete_range_as_version:
tty.die(
"spack dev-build spec must have a single, concrete version. "