From c228f58a7d2ae3cfd606a591bdbd6bbeba0484b5 Mon Sep 17 00:00:00 2001 From: Klaus Aehlig Date: Tue, 18 Apr 2023 12:28:14 +0200 Subject: bootstrap traverser: prefer hard over symlinks ... as in this way, the setup is more close to the one used in our build tool. In particular, tools that search for auxilliary files relativ to their own location get confused less. --- bin/bootstrap-traverser.py | 5 ++++- bin/parallel-bootstrap-traverser.py | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/bin/bootstrap-traverser.py b/bin/bootstrap-traverser.py index d2961312..a58abb04 100755 --- a/bin/bootstrap-traverser.py +++ b/bin/bootstrap-traverser.py @@ -50,7 +50,10 @@ def build_known(desc, *, root): def link(src, dest): dest = os.path.normpath(dest) os.makedirs(os.path.dirname(dest), exist_ok=True) - os.symlink(src, dest) + try: + os.link(src, dest) + except: + os.symlink(src, dest) def build_local(desc, *, root, config): repo_name = desc["data"]["repository"] diff --git a/bin/parallel-bootstrap-traverser.py b/bin/parallel-bootstrap-traverser.py index beaf75bd..b9eb2d36 100755 --- a/bin/parallel-bootstrap-traverser.py +++ b/bin/parallel-bootstrap-traverser.py @@ -196,7 +196,10 @@ def build_known(desc, *, root): def link(src, dest): dest = os.path.normpath(dest) os.makedirs(os.path.dirname(dest), exist_ok=True) - os.symlink(src, dest) + try: + os.link(src, dest) + except: + os.symlink(src, dest) def build_local(desc, *, root, config): repo_name = desc["data"]["repository"] -- cgit v1.2.3