diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/spack/spack/cmd/license.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/spack/spack/cmd/license.py b/lib/spack/spack/cmd/license.py index df208d8bbe..e3349c505d 100644 --- a/lib/spack/spack/cmd/license.py +++ b/lib/spack/spack/cmd/license.py @@ -67,10 +67,14 @@ lgpl_exceptions = [ def _all_spack_files(root=spack.paths.prefix): """Generates root-relative paths of all files in the spack repository.""" + visited = set() for cur_root, folders, files in os.walk(root): for filename in files: - path = os.path.join(cur_root, filename) - yield os.path.relpath(path, root) + path = os.path.realpath(os.path.join(cur_root, filename)) + + if path not in visited: + yield os.path.relpath(path, root) + visited.add(path) def _licensed_files(root=spack.paths.prefix): @@ -81,7 +85,7 @@ def _licensed_files(root=spack.paths.prefix): def list_files(args): """list files in spack that should have license headers""" - for relpath in _licensed_files(): + for relpath in sorted(_licensed_files()): print(os.path.join(spack.paths.spack_root, relpath)) |