Preserve symlinks when copying files

This commit is contained in:
rdb 2014-03-17 13:26:58 +00:00
parent e02d8706f3
commit 8ae5e58d92

View File

@ -2333,8 +2333,12 @@ def CopyFile(dstfile, srcfile):
if (fnl < 0): fn = srcfile if (fnl < 0): fn = srcfile
else: fn = srcfile[fnl+1:] else: fn = srcfile[fnl+1:]
dstfile = dstdir + fn dstfile = dstdir + fn
if (NeedsBuild([dstfile], [srcfile])): if NeedsBuild([dstfile], [srcfile]):
WriteBinaryFile(dstfile, ReadBinaryFile(srcfile)) if os.path.islink(srcfile):
# Preserve symlinks
os.symlink(os.readlink(srcfile), dstfile)
else:
WriteBinaryFile(dstfile, ReadBinaryFile(srcfile))
JustBuilt([dstfile], [srcfile]) JustBuilt([dstfile], [srcfile])
def CopyAllFiles(dstdir, srcdir, suffix=""): def CopyAllFiles(dstdir, srcdir, suffix=""):