class: Tools::ProjectBuilder
authorClaus Gittinger <cg@exept.de>
Sat, 23 Feb 2013 14:03:44 +0100
changeset 2958 d842f4a91d44
parent 2957 299bc0925dab
child 2959 ab140a3e5eb6
class: Tools::ProjectBuilder changed: #copyDLLsForLinkage
ProjectBuilder.st
--- a/ProjectBuilder.st	Tue Feb 19 00:10:33 2013 +0100
+++ b/ProjectBuilder.st	Sat Feb 23 14:03:44 2013 +0100
@@ -364,24 +364,32 @@
             dllRelativeDestPathes := Array with:(objDirDest,'\', libraryName, '.dll').
         ] ifFalse:[
             dllRelativeSourcePathes := Array with:(libraryName,'.so').
+            dllRelativeDestPathes := Array with:(libraryName, '.so').
             (packageModule = 'stx' and:[packageDirectory = 'libview']) ifTrue:[
-                dllRelativeSourcePathes := dllRelativeSourcePathes, #('XWorkstation.so' 'GLXWorkstation.so').
+                dllRelativeSourcePathes := dllRelativeSourcePathes copyWith:('XWorkstation.so').
+                dllRelativeDestPathes := dllRelativeDestPathes copyWith:'XWorkstation.so'.
+                dllRelativeSourcePathes := dllRelativeSourcePathes copyWith:('GLXWorkstation.so').
+                dllRelativeDestPathes := dllRelativeDestPathes copyWith:'GLXWorkstation.so'.
             ].
         ].
         dllRelativeSourcePathes with:dllRelativeDestPathes do:[:dllRelativeSourcePath :dllRelativeDestPath|
             |source dest|
 
             source := dllSourceDir / dllRelativeSourcePath.
-            dest := packageTargetDir / dllRelativeDestPath.
-            (dest exists not
-             or:[source fileSize ~= dest fileSize
-             or:[source modificationTime >= dest modificationTime
-             "/ or:[ ((dllSourceDir / dllRelativePath) sameContentsAs:(packageTargetDir / dllRelativePath)) not ]
-            ]]) ifTrue:[
-                Transcript showCR:'updating ',dllRelativeDestPath.
-                dest directory recursiveMakeDirectory.
-                source copyTo:dest.    
-            ].
+            source exists ifFalse:[
+                self activityNotification:'   skip missing file: ',source pathName.
+            ] ifTrue:[
+                dest := packageTargetDir / dllRelativeDestPath.
+                (dest exists not
+                 or:[source fileSize ~= dest fileSize
+                 or:[source modificationTime >= dest modificationTime
+                 "/ or:[ ((dllSourceDir / dllRelativePath) sameContentsAs:(packageTargetDir / dllRelativePath)) not ]
+                ]]) ifTrue:[
+                    Transcript showCR:'updating ',dllRelativeDestPath.
+                    dest directory recursiveMakeDirectory.
+                    source copyTo:dest.    
+                ].
+            ]
         ].
     ].
 
@@ -1001,3 +1009,4 @@
 version_CVS
     ^ '$Header$'
 ! !
+