545 |files| |
545 |files| |
546 |
546 |
547 files := #(). |
547 files := #(). |
548 |
548 |
549 OperatingSystem isMSWINDOWSlike ifTrue:[ |
549 OperatingSystem isMSWINDOWSlike ifTrue:[ |
550 files := files , #( 'librun/genDate.com' ). |
550 files := files , #( |
|
551 'librun/genDate.com' |
|
552 ). |
551 usedCompiler = 'tcc' ifTrue:[ |
553 usedCompiler = 'tcc' ifTrue:[ |
552 files := files , #( |
554 files := files , #( |
553 'support/tcc' |
555 'support/tcc' |
554 ). |
556 ). |
555 ]. |
557 ]. |
556 ] ifFalse:[ |
558 ] ifFalse:[ |
557 files := files , #( 'librun/genDate' ). |
559 files := files , #( |
|
560 "/ 'librun/genDate' -- not needed on unix (done via script) |
|
561 'configurations/myConf' |
|
562 'configurations/vendorConf' |
|
563 'configurations/conf.inc' |
|
564 'configurations/COMMON' |
|
565 ). |
558 ]. |
566 ]. |
559 |
567 |
560 files do:[:relativePath | |
568 files do:[:relativePath | |
561 (mySTXTopDirectory / relativePath) exists ifTrue:[ |
569 (mySTXTopDirectory / relativePath) exists ifTrue:[ |
562 ((buildDirectory / 'stx' / relativePath) exists |
570 ((buildDirectory / 'stx' / relativePath) exists |
563 and:[ (mySTXTopDirectory / relativePath) fileSize = (buildDirectory / 'stx' / relativePath) fileSize |
571 and:[ (mySTXTopDirectory / relativePath) fileSize = (buildDirectory / 'stx' / relativePath) fileSize |
564 and:[ (mySTXTopDirectory / relativePath) modificationTime < (buildDirectory / 'stx' / relativePath) modificationTime |
572 and:[ (mySTXTopDirectory / relativePath) modificationTime < (buildDirectory / 'stx' / relativePath) modificationTime |
565 "/ and:[ (mySTXTopDirectory / dllRelativePath) sameContentsAs:(targetBuildDir / dllRelativePath) ] |
573 "/ and:[ (mySTXTopDirectory / dllRelativePath) sameContentsAs:(targetBuildDir / dllRelativePath) ] |
566 ]]) ifFalse:[ |
574 ]]) ifFalse:[ |
567 (mySTXTopDirectory / relativePath) recursiveCopyTo:(buildDirectory / 'stx' / relativePath). |
575 (buildDirectory / 'stx' / relativePath) directory recursiveMakeDirectory. |
|
576 (mySTXTopDirectory / relativePath) isDirectory ifTrue:[ |
|
577 (mySTXTopDirectory / relativePath) recursiveCopyTo:(buildDirectory / 'stx' / relativePath) directory. |
|
578 ] ifFalse:[ |
|
579 (mySTXTopDirectory / relativePath) copyTo:(buildDirectory / 'stx' / relativePath) directory. |
|
580 ] |
568 ] |
581 ] |
569 ] ifFalse:[ |
582 ] ifFalse:[ |
570 self error:'Missing directory: ',relativePath printString mayProceed:true. |
583 self error:'Missing file or directory: ',relativePath printString mayProceed:true. |
571 ]. |
584 ]. |
572 ]. |
585 ]. |
573 |
586 |
574 "Created: / 04-09-2012 / 00:47:49 / cg" |
587 "Created: / 04-09-2012 / 00:47:49 / cg" |
575 ! |
588 ! |
933 |
946 |
934 "/ makeCommand := makeCommand, ' TOP=', mySTXTopDirectory pathName. |
947 "/ makeCommand := makeCommand, ' TOP=', mySTXTopDirectory pathName. |
935 |
948 |
936 OperatingSystem isUNIXlike ifTrue:[ |
949 OperatingSystem isUNIXlike ifTrue:[ |
937 "/ generate the makefile first |
950 "/ generate the makefile first |
938 self activityNotification:('sh %1/rules/stmkmf' bindWith:mySTXTopDirectory pathName). |
951 self activityNotification:('sh %1/rules/stmkmf (in %2)' |
|
952 bindWith:mySTXTopDirectory pathName |
|
953 with:(buildDirectory / module / directory)). |
939 OperatingSystem |
954 OperatingSystem |
940 executeCommand:('sh %1/rules/stmkmf' bindWith:mySTXTopDirectory pathName) |
955 executeCommand:('sh %1/rules/stmkmf' bindWith:mySTXTopDirectory pathName) |
941 inputFrom:nil |
956 inputFrom:nil |
942 outputTo:stdOut |
957 outputTo:stdOut |
943 errorTo:stdErr |
958 errorTo:stdErr |
1016 ]. |
1031 ]. |
1017 self activityNotification:nil |
1032 self activityNotification:nil |
1018 ! |
1033 ! |
1019 |
1034 |
1020 setupBuildDirectory |
1035 setupBuildDirectory |
|
1036 self activityNotification:('Building in %1' bindWith:buildDirectory pathName). |
|
1037 |
1021 buildDirectory exists ifFalse:[ |
1038 buildDirectory exists ifFalse:[ |
1022 buildDirectory recursiveMakeDirectory. |
1039 buildDirectory recursiveMakeDirectory. |
1023 ]. |
1040 ]. |
1024 (buildDirectory / 'stx') exists ifFalse:[ |
1041 (buildDirectory / 'stx') exists ifFalse:[ |
1025 (buildDirectory / 'stx') makeDirectory. |
1042 (buildDirectory / 'stx') makeDirectory. |
1026 ]. |
1043 ]. |
1027 |
1044 |
1028 self copyDirectoryForBuild:'include'. |
1045 self copyDirectoryForBuild:'include'. |
1029 self copyDirectoryForBuild:'rules'. |
1046 self copyDirectoryForBuild:'rules'. |
|
1047 |
1030 OperatingSystem isUNIXlike ifTrue:[ |
1048 OperatingSystem isUNIXlike ifTrue:[ |
1031 self recursiveCopyDirectoryForBuild:'configurations'. |
1049 self recursiveCopyDirectoryForBuild:'configurations'. |
1032 ] |
1050 ] |
1033 ! |
1051 ! |
1034 |
1052 |