*** empty log message *** rel4_1_3_1
authorClaus Gittinger <cg@exept.de>
Fri, 26 Oct 2001 19:53:42 +0200
changeset 15196196930f9a1d
parent 1518 85114c70d811
child 1520 eb77c52704c7
*** empty log message ***
STXInstaller.st
     1.1 --- a/STXInstaller.st	Fri Oct 26 18:51:56 2001 +0200
     1.2 +++ b/STXInstaller.st	Fri Oct 26 19:53:42 2001 +0200
     1.3 @@ -237,11 +237,13 @@
     1.4                  "/ name                             destination  subDir             required mode      
     1.5                  ( 'projects/smalltalk/include'          #lib     nil                  true  '644' )
     1.6                  ( 'projects/smalltalk/*.rc'             #lib     nil                  true  '644' )
     1.7 +                ( 'projects/smalltalk/*.wsp'            #lib     nil                  true  '644' )
     1.8                  ( 'projects/smalltalk/banner*.xpm'      #lib     nil                  true  '644' )
     1.9                  ( 'projects/smalltalk/patches'          #lib     nil                  true  '644' )
    1.10                  ( 'COPYRIGHT'                           nil      nil                  true  '644' )
    1.11 -                ( 'doc/online/german/LICENCE_STX.html'  nil      'doc/online/german'      true  '644' )
    1.12 -                ( 'doc/online/english/LICENCE_STX.html' nil      'doc/online/english'     true  '644' )
    1.13 +                ( 'RELEASE'                             nil      nil                  true  '644' )
    1.14 +                ( 'doc/online/german/LICENCE_STX.html'  nil           'doc/online/german'      true  '644' )
    1.15 +                ( 'doc/online/english/LICENCE_STX.html' nil           'doc/online/english'     true  '644' )
    1.16                  ( 'doc/online/german/LICENCE_DEMO_STX.html'  nil      'doc/online/german'      true  '644' )
    1.17                  ( 'doc/online/english/LICENCE_DEMO_STX.html' nil      'doc/online/english'     true  '644' )
    1.18      ).
    1.19 @@ -372,6 +374,20 @@
    1.20  
    1.21  !STXInstaller methodsFor:'installing'!
    1.22  
    1.23 +add:specEntry toFileSpec:fileSpec
    1.24 +    (specEntry first startsWith:'./') ifTrue:[
    1.25 +        specEntry at:1 put:(specEntry first copyFrom:3).
    1.26 +    ].
    1.27 +    (specEntry first startsWith:'.\') ifTrue:[
    1.28 +        specEntry at:1 put:(specEntry first copyFrom:3).
    1.29 +    ].
    1.30 +    (fileSpec includes:specEntry) ifFalse:[
    1.31 +        fileSpec add:specEntry
    1.32 +    ] ifTrue:[
    1.33 +        "/ self halt
    1.34 +    ]
    1.35 +!
    1.36 +
    1.37  addFilesToSpec:fileSpec relativeTo:rel fromINSTALLSpec:f
    1.38      |s entry t cond dst|
    1.39  
    1.40 @@ -389,18 +405,49 @@
    1.41                      or:[installGoodyFiles]) ifTrue:[
    1.42                          dst := t at:2.
    1.43                          (dst startsWith:'packages/stx/') ifTrue:[
    1.44 -                            fileSpec add:(Array 
    1.45 +                            self add:(Array 
    1.46                                              with:(rel asFilename constructString:(t at:1))
    1.47                                              with:#pkg
    1.48                                              with:('stx' asFilename constructString:(dst copyFrom:'packages/stx/' size+1))
    1.49 -                                            with:true).
    1.50 +                                            with:true)
    1.51 +                                 toFileSpec:fileSpec.
    1.52                          ] ifFalse:[
    1.53 -                            (dst = 'bin') ifTrue:[
    1.54 -                                fileSpec add:(Array 
    1.55 -                                                with:(rel asFilename constructString:(t at:1))
    1.56 -                                                with:#bin
    1.57 -                                                with:nil
    1.58 -                                                with:true).
    1.59 +                            ((dst = 'bin') or:[dst startsWith:'bin/']) ifTrue:[
    1.60 +                                (dst = 'bin') ifTrue:[
    1.61 +                                    self add:(Array 
    1.62 +                                                    with:(rel asFilename constructString:(t at:1))
    1.63 +                                                    with:#bin
    1.64 +                                                    with:nil
    1.65 +                                                    with:true)
    1.66 +                                         toFileSpec:fileSpec.
    1.67 +                                ] ifFalse:[
    1.68 +                                    self add:(Array 
    1.69 +                                                    with:(rel asFilename constructString:(t at:1))
    1.70 +                                                    with:#bin
    1.71 +                                                    with:(dst copyFrom:'bin/' size+1)
    1.72 +                                                    with:true)
    1.73 +                                         toFileSpec:fileSpec.
    1.74 +                                ].
    1.75 +                            ] ifFalse:[
    1.76 +                                ((dst = 'lib') or:[dst startsWith:'lib/']) ifTrue:[
    1.77 +                                    (dst = 'lib') ifTrue:[
    1.78 +                                        self add:(Array 
    1.79 +                                                        with:(rel asFilename constructString:(t at:1))
    1.80 +                                                        with:#lib
    1.81 +                                                        with:nil
    1.82 +                                                        with:true)
    1.83 +                                             toFileSpec:fileSpec.
    1.84 +                                    ] ifFalse:[
    1.85 +                                        self add:(Array 
    1.86 +                                                        with:(rel asFilename constructString:(t at:1))
    1.87 +                                                        with:#lib
    1.88 +                                                        with:(dst copyFrom:'lib/' size+1)
    1.89 +                                                        with:true)
    1.90 +                                             toFileSpec:fileSpec.
    1.91 +                                    ]
    1.92 +                                ] ifFalse:[
    1.93 +                                    self halt:'unhandled destination: ' , dst.
    1.94 +                                ]
    1.95                              ]
    1.96                          ]
    1.97                      ]