diff options
-rw-r--r-- | lib/spack/spack/cmd/location.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/spack/spack/cmd/location.py b/lib/spack/spack/cmd/location.py index 9050e3111c..24236d7e83 100644 --- a/lib/spack/spack/cmd/location.py +++ b/lib/spack/spack/cmd/location.py @@ -109,4 +109,16 @@ def location(parser, args): tty.die("Build directory does not exist yet. " "Run this to create it:", "spack stage " + " ".join(args.spec)) - print(pkg.stage.source_path) + + # Out of source builds have build_directory defined + if hasattr(pkg, 'build_directory'): + # build_directory can be either absolute or relative + # to the stage path in either case os.path.join makes it + # absolute + print(os.path.normpath(os.path.join( + pkg.stage.path, + pkg.build_directory + ))) + else: + # Otherwise assume in-source builds + return print(pkg.stage.source_path) |