mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-11-10 08:24:20 +03:00
By default, symlink re-creation fails if the link already exists, more
specifically in case of meson-install-symlink.py:
Traceback (most recent call last):
File "/<path_to_libvirt_repo>/scripts/meson-install-symlink.py",
line 15, in <module>
os.symlink(target, link)
FileExistsError: File exists: '../default.xml' -> 'default.xml'
Unfortunately, Python can't mimic "ln -sf", so we have to fix this
differently - remove the existing link first and then try re-creating
it.
Signed-off-by: Erik Skultety <eskultet@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
20 lines
335 B
Python
20 lines
335 B
Python
#!/usr/bin/env python3
|
|
|
|
import os
|
|
import sys
|
|
|
|
destdir = os.environ.get('DESTDIR', os.sep)
|
|
dirname = sys.argv[1]
|
|
target = sys.argv[2]
|
|
link = sys.argv[3]
|
|
|
|
workdir = os.path.join(destdir, dirname.strip(os.sep))
|
|
|
|
os.makedirs(workdir, exist_ok=True)
|
|
os.chdir(workdir)
|
|
|
|
if os.path.exists(link):
|
|
os.remove(link)
|
|
|
|
os.symlink(target, link)
|