2
0
Эх сурвалжийг харах

Preserve symlinks when copying files

rdb 11 жил өмнө
parent
commit
8ae5e58d92

+ 6 - 2
makepanda/makepandacore.py

@@ -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])):
-        WriteBinaryFile(dstfile, ReadBinaryFile(srcfile))
+    if NeedsBuild([dstfile], [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=""):