spack location: fix attribute lookup after multiple build systems (#33791)
fixes #33785
This commit is contained in:
parent
60b3d32072
commit
cfd0dc6d89
1 changed files with 4 additions and 2 deletions
|
@ -9,6 +9,7 @@
|
||||||
|
|
||||||
import llnl.util.tty as tty
|
import llnl.util.tty as tty
|
||||||
|
|
||||||
|
import spack.builder
|
||||||
import spack.cmd
|
import spack.cmd
|
||||||
import spack.cmd.common.arguments as arguments
|
import spack.cmd.common.arguments as arguments
|
||||||
import spack.environment as ev
|
import spack.environment as ev
|
||||||
|
@ -134,6 +135,7 @@ def location(parser, args):
|
||||||
# Either concretize or filter from already concretized environment
|
# Either concretize or filter from already concretized environment
|
||||||
spec = spack.cmd.matching_spec_from_env(spec)
|
spec = spack.cmd.matching_spec_from_env(spec)
|
||||||
pkg = spec.package
|
pkg = spec.package
|
||||||
|
builder = spack.builder.create(pkg)
|
||||||
|
|
||||||
if args.stage_dir:
|
if args.stage_dir:
|
||||||
print(pkg.stage.path)
|
print(pkg.stage.path)
|
||||||
|
@ -141,10 +143,10 @@ def location(parser, args):
|
||||||
|
|
||||||
if args.build_dir:
|
if args.build_dir:
|
||||||
# Out of source builds have build_directory defined
|
# Out of source builds have build_directory defined
|
||||||
if hasattr(pkg, "build_directory"):
|
if hasattr(builder, "build_directory"):
|
||||||
# build_directory can be either absolute or relative to the stage path
|
# build_directory can be either absolute or relative to the stage path
|
||||||
# in either case os.path.join makes it absolute
|
# in either case os.path.join makes it absolute
|
||||||
print(os.path.normpath(os.path.join(pkg.stage.path, pkg.build_directory)))
|
print(os.path.normpath(os.path.join(pkg.stage.path, builder.build_directory)))
|
||||||
return
|
return
|
||||||
|
|
||||||
# Otherwise assume in-source builds
|
# Otherwise assume in-source builds
|
||||||
|
|
Loading…
Reference in a new issue