Since we already call realpath on make.profile, we also need to call
realpath on the repo paths that we compare its nodes to.
self.config_profile_path = config_profile_path
def load_profiles(self, known_repository_paths):
- known_repos = [os.path.abspath(x) for x in set(known_repository_paths)]
+ known_repos = set(os.path.realpath(x) for x in known_repository_paths)
# force a trailing '/' for ease of doing startswith checks
- known_repos = [(x + '/', parse_layout_conf(x)[0]) for x in known_repos]
+ known_repos = tuple((x + '/', parse_layout_conf(x)[0])
+ for x in known_repos)
if self.config_profile_path is None:
self.config_profile_path = \
for confs in [make_globals, make_conf, self.configdict["env"]]:
known_repos.extend(confs.get("PORTDIR", '').split())
known_repos.extend(confs.get("PORTDIR_OVERLAY", '').split())
- known_repos = set(known_repos)
+ known_repos = frozenset(known_repos)
locations_manager.load_profiles(known_repos)