ProjectDefinition.st
author Claus Gittinger <cg@exept.de>
Thu, 17 Aug 2006 09:50:54 +0200
changeset 9553 0ba9e1ed1aee
parent 9551 b85eead6b4ac
child 9555 5b5d49d5f09d
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9553
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     1
"
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     3
              All Rights Reserved
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     4
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     5
 This software is furnished under a license and may be used
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     6
 only in accordance with the terms of that license and with the
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     8
 be provided or otherwise made available to, or used by, any
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
     9
 other person.  No title to or ownership of the software is
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    10
 hereby transferred.
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    11
"
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    12
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    13
"{ Package: 'stx:libbasic3' }"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    14
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
    15
Object subclass:#BuildDefinition
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    16
	instanceVariableNames:''
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    17
	classVariableNames:''
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    18
	poolDictionaries:''
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    19
	category:'System-Support-Projects'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    20
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    21
9553
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    22
!BuildDefinition class methodsFor:'documentation'!
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    23
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    24
copyright
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    25
"
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    26
 COPYRIGHT (c) 2006 by eXept Software AG
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    27
              All Rights Reserved
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    28
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    29
 This software is furnished under a license and may be used
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    30
 only in accordance with the terms of that license and with the
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    31
 inclusion of the above copyright notice.   This software may not
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    32
 be provided or otherwise made available to, or used by, any
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    33
 other person.  No title to or ownership of the software is
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    34
 hereby transferred.
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    35
"
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
    36
! !
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    37
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
    38
!BuildDefinition class methodsFor:'accessing'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    39
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    40
defaultCategory
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    41
    ^'* Projects *'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    42
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    43
    "Created: / 11-08-2006 / 14:16:49 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    44
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    45
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    46
initialClassNameForDefinitionOf:aPackageId
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    47
    |s|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    48
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    49
    s := aPackageId asString copy replaceAny:':/' with:$_.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    50
    (s endsWith:$_) ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    51
        s := s copyWithoutLast:1
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    52
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    53
    ^ s
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    54
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    55
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    56
   DapasXProject initialClassNameForDefinitionOf:'bosch:dapasx/interactiver_editor' 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    57
   DapasXProject initialClassNameForDefinitionOf:'stx:libbasic' 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    58
   DapasXProject initialClassNameForDefinitionOf:'stx:goodies/xml' 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    59
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    60
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    61
    "Created: / 09-08-2006 / 17:44:47 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    62
    "Modified: / 11-08-2006 / 14:00:05 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    63
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    64
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    65
libraryName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    66
       ^ self libraryNameFor: self package
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    67
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    68
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    69
   bosch_dapasx_datenbasis_Definition libraryName   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    70
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    71
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    72
    "Modified: / 09-08-2006 / 18:20:29 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    73
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    74
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    75
libraryNameFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    76
       ^ aProjectID asString copy replaceAny:':/' with:$_
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    77
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    78
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    79
   bosch_dapasx_datenbasis libraryName   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    80
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    81
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    82
    "Modified: / 09-08-2006 / 18:20:29 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    83
    "Modified: / 11-08-2006 / 14:02:06 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    84
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    85
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    86
module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    87
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    88
^self moduleOfClass: self
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    89
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    90
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    91
   bosch_dapasx_datenbasis_Definition module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    92
   DapasX_Datenbasis module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    93
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    94
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    95
    "Created: / 08-08-2006 / 20:24:53 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    96
    "Modified: / 09-08-2006 / 16:16:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    97
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    98
3a835fa7e38b initial checkin
fm
parents:
diff changeset
    99
moduleDirectory
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   100
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   101
^self moduleDirectoryFor: self package 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   102
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   103
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   104
    bosch_dapasx_datenbasis_Definition moduleDirectory    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   105
    bosch_dapasx_parameter_system_Definition moduleDirectory
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   106
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   107
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   108
    "Created: / 08-08-2006 / 20:25:39 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   109
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   110
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   111
moduleDirectoryFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   112
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   113
^(aProjectID subStrings: $:) last
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   114
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   115
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   116
    bosch_dapasx_datenbasis_Definition moduleDirectory    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   117
    bosch_dapasx_parameter_system_Definition moduleDirectory
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   118
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   119
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   120
    "Created: / 08-08-2006 / 20:25:39 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   121
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   122
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   123
moduleFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   124
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   125
^(aProjectID subStrings: $:) first
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   126
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   127
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   128
   DapasXProject module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   129
   DapasX_Datenbasis module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   130
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   131
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   132
    "Created: / 09-08-2006 / 16:16:16 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   133
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   134
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   135
moduleOfClass: aClass
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   136
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   137
^self moduleFor: aClass package 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   138
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   139
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   140
   DapasXProject module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   141
   DapasX_Datenbasis module
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   142
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   143
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   144
    "Created: / 09-08-2006 / 16:16:16 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   145
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   146
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   147
msdosPathToPackage:aPackageID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   148
"Returns the path to stx counting the number of $/ and $: in the package name and adding for each one '../' to get the ST/X top directory"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   149
9544
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   150
        ^ self msdosPathToTop , '\..\' , (aPackageID asString copy replaceAny:':/' with:$\)
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   151
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   152
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   153
  self msdosPathToPackage:'bosch:dapasx/kernel'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   154
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   155
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   156
    "Created: / 09-08-2006 / 16:35:22 / fm"
9544
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   157
    "Modified: / 16-08-2006 / 18:39:37 / User"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   158
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   159
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   160
msdosPathToProjectFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   161
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   162
       ^ aProjectID asString copy replaceAny:':/' with:$\
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   163
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   164
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   165
   self msdosPathToProjectFor: #'bosch:dapasx/datenbasis'   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   166
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   167
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   168
    "Modified: / 09-08-2006 / 18:20:29 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   169
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   170
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   171
msdosPathToTop
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   172
"Returns the path to stx counting the number of $/ and $: in the package name and adding for each one '../' to get the ST/X top directory"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   173
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   174
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   175
       ^self msdosPathToTopFor: self package 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   176
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   177
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   178
   bosch_dapasx_datenbasis_Definition msdosPathToTop    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   179
   DapasX_Datenbasis pathToTop  
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   180
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   181
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   182
    "Created: / 09-08-2006 / 15:45:54 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   183
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   184
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   185
msdosPathToTopFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   186
"Returns the path to stx counting the number of $/ and $: in the package name and adding for each one '../' to get the ST/X top directory"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   187
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   188
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   189
       ^ (((1 to:(aProjectID asCollectionOfSubstringsSeparatedByAny:':/') size)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   190
            collect:[:n | '..\']) asStringWith:'') , 'stx'    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   191
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   192
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   193
   self msdosPathToTopFor: #'bosch:dapasx/datenbasis'   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   194
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   195
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   196
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   197
    "Created: / 09-08-2006 / 15:45:54 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   198
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   199
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   200
packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   201
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   202
^self packageNameFor: self package
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   203
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   204
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   205
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   206
   bosch_dapasx_hw_schnittstellen_Definition  packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   207
   bosch_dapasx_datenbasis_Definition packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   208
   bosch_dapasx_parameter_system_Definition packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   209
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   210
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   211
    "Created: / 08-08-2006 / 20:24:53 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   212
    "Modified: / 09-08-2006 / 16:16:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   213
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   214
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   215
packageNameFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   216
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   217
^((aProjectID asString copy replaceAny:'/' with:$:) subStrings: $:) last
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   218
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   219
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   220
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   221
   bosch_dapasx_hw_schnittstellen  packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   222
   bosch_dapasx_datenbasis packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   223
   bosch_dapasx_parameter_system packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   224
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   225
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   226
    "Created: / 08-08-2006 / 20:24:53 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   227
    "Modified: / 09-08-2006 / 16:16:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   228
    "Modified: / 11-08-2006 / 14:02:32 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   229
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   230
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   231
parentProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   232
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   233
    ^(self parentProjectFor: self package)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   234
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   235
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   236
    bosch_dapasx_hw_schnittstellen_Definition  parentProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   237
    DapasX_Datenbasis parentProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   238
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   239
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   240
    "Created: / 07-08-2006 / 20:18:27 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   241
    "Modified: / 08-08-2006 / 10:47:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   242
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   243
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   244
parentProjectFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   245
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   246
    ^(aProjectID subStrings: $/) first
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   247
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   248
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   249
    bosch_dapasx_hw_schnittstellen  parentProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   250
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   251
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   252
    "Created: / 07-08-2006 / 20:18:27 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   253
    "Modified: / 08-08-2006 / 10:47:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   254
    "Modified: / 11-08-2006 / 14:02:56 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   255
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   256
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   257
requiredProjects
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   258
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   259
^self preRequisites, self subProjects
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   260
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   261
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   262
unixPathToPackage:aPackageID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   263
"Returns the path to stx counting the number of $/ and $: in the package name and adding for each one '../' to get the ST/X top directory"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   264
9548
94f81c40bca9 *** empty log message ***
fm
parents: 9545
diff changeset
   265
        ^ self unixPathToTop , '/../' , (aPackageID asString copy replaceAll:$: with:$/)
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   266
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   267
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   268
   DapasX_Datenbasis pathToPackage:'bosch:dapasx/kernel'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   269
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   270
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   271
    "Created: / 09-08-2006 / 16:35:22 / fm"
9548
94f81c40bca9 *** empty log message ***
fm
parents: 9545
diff changeset
   272
    "Modified: / 16-08-2006 / 18:55:41 / User"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   273
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   274
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   275
unixPathToProjectFor: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   276
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   277
       ^ aProjectID asString copy replaceAny:':/' with:$/
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   278
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   279
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   280
   self unixPathToProjectFor: #'bosch:dapasx/datenbasis'   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   281
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   282
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   283
    "Modified: / 09-08-2006 / 18:20:29 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   284
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   285
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   286
unixPathToTop
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   287
"Returns the path to stx counting the number of $/ and $: in the package name and adding for each one '../' to get the ST/X top directory"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   288
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   289
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   290
       ^ (((1 to:(self package asCollectionOfSubstringsSeparatedByAny:':/') size)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   291
            collect:[:n | '../']) asStringWith:'') , 'stx'    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   292
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   293
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   294
   DapasXProject pathToTop    
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   295
   DapasX_Datenbasis pathToTop  
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   296
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   297
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   298
    "Created: / 09-08-2006 / 15:45:54 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   299
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   300
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   301
!BuildDefinition class methodsFor:'defaults'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   302
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   303
defaultDescription
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   304
    ^ 'description'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   305
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   306
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   307
!BuildDefinition class methodsFor:'description'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   308
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   309
autoloaded_classNames
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   310
    "classes listed here will NOT be compiled, but remain autoloaded.
9551
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   311
     (i.e. excluded from the build process). Can be user-defined in my subclasses"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   312
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   313
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   314
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   315
    "Created: / 07-08-2006 / 19:02:57 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   316
    "Modified: / 07-08-2006 / 21:25:25 / fm"
9551
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   317
    "Modified: / 17-08-2006 / 08:48:13 / cg"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   318
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   319
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   320
classNames            
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   321
    "this is a stupid default, a correponding method with real names
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   322
     is generated in my subclasses"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   323
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   324
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   325
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   326
    "Created: / 07-08-2006 / 19:02:57 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   327
    "Modified: / 07-08-2006 / 21:25:25 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   328
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   329
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   330
compiled_classNames          
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   331
    "this is a stupid default, a correponding method with real names
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   332
     is generated in my subclasses"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   333
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   334
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   335
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   336
    "Created: / 07-08-2006 / 19:02:57 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   337
    "Modified: / 07-08-2006 / 21:25:25 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   338
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   339
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   340
compiled_classes
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   341
    ^ self compiled_classNames collect:[:eachName| (Smalltalk at:eachName asSymbol)]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   342
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   343
    "Created: / 09-08-2006 / 16:28:15 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   344
    "Modified: / 09-08-2006 / 18:02:28 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   345
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   346
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   347
compiled_classesDo:aBlock
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   348
    self compiled_classes do:aBlock.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   349
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   350
    "Created: / 09-08-2006 / 16:28:15 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   351
    "Modified: / 09-08-2006 / 18:02:28 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   352
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   353
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   354
description
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   355
"Returns a description string which will appear in nt.def and in the files info inside it's properties "
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   356
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   357
^''
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   358
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   359
    "Created: / 08-08-2006 / 11:15:01 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   360
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   361
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   362
excluded_classNames
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   363
    "this is a stupid default, a correponding method with real names
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   364
     to be excluded from the build process can be user-defined in my subclasses"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   365
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   366
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   367
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   368
    "Created: / 07-08-2006 / 19:02:57 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   369
    "Modified: / 07-08-2006 / 21:25:25 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   370
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   371
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   372
extensionMethodNames
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   373
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   374
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   375
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   376
    "Created: / 08-08-2006 / 11:07:08 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   377
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   378
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   379
postLoadAction
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   380
    "raise an error: must be redefined in concrete subclass(es)"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   381
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   382
    ^ self subclassResponsibility
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   383
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   384
    "Created: / 08-08-2006 / 11:07:40 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   385
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   386
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   387
preUnloadAction
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   388
    "raise an error: must be redefined in concrete subclass(es)"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   389
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   390
    ^ self subclassResponsibility
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   391
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   392
    "Created: / 08-08-2006 / 11:07:40 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   393
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   394
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   395
prerequisiteProjects
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   396
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   397
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   398
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   399
    "Created: / 08-08-2006 / 21:17:34 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   400
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   401
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   402
subProjects
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   403
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   404
    ^#()
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   405
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   406
    "Created: / 08-08-2006 / 11:08:23 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   407
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   408
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   409
versionNumber
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   410
"Returns a version string which will appear in nt.def and in the files info inside it's properties "
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   411
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   412
^''
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   413
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   414
    "Created: / 08-08-2006 / 11:35:52 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   415
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   416
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   417
!BuildDefinition class methodsFor:'file generation'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   418
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   419
allClassNames
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   420
    ^ (self compiled_classNames , self autoloaded_classNames , self excluded_classNames)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   421
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   422
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   423
fileNamesToGenerate
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   424
    self subclassResponsibility
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   425
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   426
9544
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   427
forEachFileNameAndGeneratedContentsDo:aTwoArgBlock 
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   428
    |pairs|
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   429
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   430
    pairs := OrderedCollection new.
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   431
    self forEachFileNameAndGeneratorMethodDo:[:fileName :generator | 
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   432
        |file|
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   433
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   434
        file := self perform:generator.
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   435
        pairs add:(Array with:fileName with:file)
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   436
    ].
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   437
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   438
    pairs pairsDo:aTwoArgBlock
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   439
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   440
    "Created: / 16-08-2006 / 18:37:52 / User"
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   441
!
5ee38738942e *** empty log message ***
fm
parents: 9541
diff changeset
   442
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   443
forEachFileNameAndGeneratorMethodDo:aTwoArgBlock 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   444
    |fileNamesAndSelectors|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   445
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   446
    fileNamesAndSelectors := self fileNamesToGenerate asOrderedCollection.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   447
    fileNamesAndSelectors 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   448
                add:(Array 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   449
                        with:self packageName , '.rc'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   450
                        with:#'generate_packageName_dot_rc').
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   451
    fileNamesAndSelectors pairsDo:aTwoArgBlock
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   452
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   453
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   454
generateFile:filename
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   455
    filename = 'nt.mak' ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   456
        ^ self generate_nt_dot_mak
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   457
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   458
    filename = 'Make.spec' ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   459
        ^ self generate_make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   460
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   461
    filename = 'bc.def' ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   462
        ^ self generate_bc_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   463
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   464
    filename = 'libInit.cc' ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   465
        ^ self generate_libInit_dot_cc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   466
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   467
    filename = 'modules.stx' ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   468
        ^ self generate_modules_dot_stx
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   469
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   470
    self halt.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   471
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   472
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   473
generate_abbrev_dot_stc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   474
    ^ String 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   475
        streamContents:[:s | 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   476
            self allClassNames do:[:eachClassName | 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   477
                |cls fn|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   478
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   479
                cls := Smalltalk classNamed:eachClassName.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   480
                cls autoload.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   481
                s nextPutAll:eachClassName.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   482
                s nextPutAll:' '.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   483
                fn := cls classFilename asFilename withoutSuffix baseName.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   484
                (fn includes:Character space) ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   485
                    s nextPutAll:fn storeString.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   486
                ] ifFalse:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   487
                    s nextPutAll:fn.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   488
                ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   489
                s nextPutAll:' '.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   490
                s nextPutAll:cls package.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   491
                s nextPutAll:' '.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   492
                s nextPutAll:cls category asString storeString.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   493
                s nextPutAll:' '.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   494
                s nextPutAll:(cls theMetaclass instVarNames size) printString.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   495
                s cr.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   496
            ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   497
        ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   498
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   499
    "
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   500
        DapasXProject generate_abbrev_dot_stc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   501
        DapasX_Datenbasis generate_abbrev_dot_stc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   502
        bosch_dapasx_interactiver_editor generate_abbrev_dot_stc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   503
    "
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   504
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   505
    "Created: / 09-08-2006 / 11:24:39 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   506
    "Modified: / 11-08-2006 / 14:01:51 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   507
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   508
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   509
generate_bc_dot_def                         
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   510
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   511
    ^self replaceMappings: self bc_dot_def_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   512
            in: self bc_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   513
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   514
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   515
  DapasXProject generate_bc_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   516
  DapasX_Datenbasis generate_bc_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   517
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   518
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   519
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   520
    "Modified: / 09-08-2006 / 11:30:42 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   521
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   522
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   523
generate_libInit_dot_cc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   524
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   525
    ^self replaceMappings: self libInit_dot_cc_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   526
            in: self libInit_dot_cc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   527
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   528
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   529
  DapasXProject generate_libInit_dot_cc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   530
  DapasX_Datenbasis generate_libInit_dot_cc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   531
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   532
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   533
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   534
    "Created: / 08-08-2006 / 12:47:16 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   535
    "Modified: / 09-08-2006 / 11:30:52 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   536
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   537
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   538
generate_make_dot_proto   
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   539
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   540
    ^self replaceMappings: self make_dot_proto_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   541
            in: self make_dot_proto
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   542
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   543
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   544
  DapasXProject generate_make_dot_proto
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   545
  DapasX_Datenbasis generate_make_dot_proto
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   546
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   547
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   548
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   549
    "Modified: / 09-08-2006 / 11:31:01 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   550
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   551
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   552
generate_make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   553
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   554
    ^self replaceMappings: self make_dot_spec_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   555
            in: self make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   556
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   557
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   558
  DapasXProject generate_make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   559
  DapasX_Datenbasis generate_make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   560
  bosch_dapasx_kernel_Definition generate_make_dot_spec
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   561
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   562
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   563
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   564
    "Modified: / 09-08-2006 / 11:31:09 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   565
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   566
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   567
generate_modules_dot_stx
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   568
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   569
    ^self replaceMappings: self modules_dot_stx_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   570
            in: self modules_dot_stx
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   571
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   572
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   573
  bosch_dapasx_application generate_modules_dot_stx
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   574
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   575
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   576
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   577
    "Modified: / 09-08-2006 / 11:31:09 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   578
    "Modified: / 11-08-2006 / 14:01:56 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   579
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   580
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   581
generate_nt_dot_def                           
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   582
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   583
    ^self replaceMappings: self nt_dot_def_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   584
            in: self nt_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   585
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   586
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   587
  DapasXProject generate_nt_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   588
  DapasX_Datenbasis generate_nt_dot_def
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   589
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   590
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   591
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   592
    "Modified: / 09-08-2006 / 11:31:21 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   593
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   594
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   595
generate_nt_dot_mak         
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   596
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   597
    ^self replaceMappings: self nt_dot_mak_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   598
            in: self nt_dot_mak
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   599
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   600
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   601
  DapasXProject generate_nt_dot_mak
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   602
  DapasX_Datenbasis generate_nt_dot_mak
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   603
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   604
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   605
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   606
    "Modified: / 09-08-2006 / 11:46:14 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   607
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   608
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   609
generate_packageName_dot_rc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   610
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   611
    ^self replaceMappings: self packageName_dot_rc_mappings 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   612
            in: self packageName_dot_rc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   613
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   614
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   615
  bosch_dapasx_datenbasis generate_packageName_dot_rc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   616
  bosch_dapasx_hw_schnittstellen  generate_packageName_dot_rc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   617
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   618
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   619
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   620
    "Modified: / 09-08-2006 / 11:31:09 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   621
    "Modified: / 11-08-2006 / 14:01:56 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   622
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   623
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   624
!BuildDefinition class methodsFor:'file templates'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   625
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   626
packageName_dot_rc
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   627
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   628
^ 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   629
'VS_VERSION_INFO VERSIONINFO
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   630
  FILEVERSION     0,1,1,1
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   631
  PRODUCTVERSION  0,1,1,1
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   632
  FILEFLAGSMASK   VS_FF_DEBUG | VS_FF_PRERELEASE
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   633
  FILEFLAGS       VS_FF_PRERELEASE | VS_FF_SPECIALBUILD
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   634
  FILEOS          VOS_NT_WINDOWS32
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   635
  FILETYPE        VFT_DLL
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   636
  FILESUBTYPE     VS_USER_DEFINED
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   637
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   638
BEGIN
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   639
  BLOCK "StringFileInfo"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   640
  BEGIN
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   641
    BLOCK "040904E4"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   642
    BEGIN
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   643
      VALUE "CompanyName", "%(COMPANY_NAME)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   644
      VALUE "FileDescription", "%(FILE_DESCRIPTION)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   645
      VALUE "FileVersion", "%(FILE_VERSION)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   646
      VALUE "InternalName", "%(INTERNAL_NAME)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   647
      VALUE "LegalCopyright", "%(LEGAL_COPYRIGHT)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   648
      VALUE "ProductName", "%(PRODUCT_NAME)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   649
      VALUE "ProductVersion", "%(PRODUCT_VERSION)\0"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   650
    END
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   651
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   652
  END
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   653
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   654
  BLOCK "VarFileInfo"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   655
  BEGIN                               //  Language   |    Translation
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   656
    VALUE "Translation", 0x409, 0x4E4 // U.S. English, Windows Multilingual
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   657
  END
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   658
END
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   659
'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   660
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   661
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   662
    "Created: / 08-08-2006 / 19:31:29 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   663
    "Modified: / 09-08-2006 / 15:10:57 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   664
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   665
9551
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   666
!BuildDefinition class methodsFor:'loading'!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   667
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   668
load
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   669
    self loadExtensions.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   670
    self loadAllClasses.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   671
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   672
    "Created: / 17-08-2006 / 01:01:41 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   673
!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   674
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   675
loadAllClasses
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   676
    |loadedClasses|
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   677
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   678
    loadedClasses := OrderedCollection new.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   679
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   680
    self allClassNames do:[:className |
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   681
        |cls|
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   682
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   683
        cls := Smalltalk at:className asSymbol.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   684
        (cls isNil or:[cls isLoaded not]) ifTrue:[
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   685
            cls := Smalltalk
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   686
                fileInClass:className 
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   687
                package:self package 
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   688
                initialize:false 
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   689
                lazy:false 
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   690
                silent:false.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   691
            cls notNil ifTrue:[
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   692
                loadedClasses add:cls
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   693
            ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   694
        ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   695
    ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   696
    loadedClasses do:[:each |
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   697
        (each theMetaclass implements:#initialize) ifTrue:[
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   698
            each initialize
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   699
        ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   700
    ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   701
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   702
    "Created: / 17-08-2006 / 01:01:14 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   703
!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   704
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   705
loadExtensions
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   706
    Smalltalk loadExtensionsForPackage:self package.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   707
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   708
    "Created: / 17-08-2006 / 00:21:39 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   709
!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   710
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   711
postAutoload
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   712
    self extensionMethodNames notEmptyOrNil ifTrue:[
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   713
        self loadExtensions
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   714
    ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   715
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   716
    "Created: / 17-08-2006 / 00:21:29 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   717
! !
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   718
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   719
!BuildDefinition class methodsFor:'mappings'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   720
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   721
bc_dot_def_mappings
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   722
    ^ (Dictionary new)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   723
        at:#'DESCRIPTION'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   724
            put:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   725
                    |d|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   726
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   727
                    d := self description.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   728
                    (d isEmptyOrNil ifTrue:[ self defaultDescription ] ifFalse:[ d ]) storeString.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   729
                ];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   730
        yourself
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   731
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   732
    "Created: / 09-08-2006 / 11:17:59 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   733
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   734
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   735
packageName_dot_rc_mappings
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   736
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   737
^Dictionary new
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   738
    at: #'COMPANY_NAME' put: [self companyName];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   739
    at: #'FILE_DESCRIPTION' put: [self fileDescription];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   740
    at: #'FILE_VERSION' put: [self fileVersion];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   741
    at: #'INTERNAL_NAME' put: [self internalName];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   742
    at: #'LEGAL_COPYRIGHT' put: [self legalCopyright];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   743
    at: #'PRODUCT_NAME' put: [self productName];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   744
    at: #'PRODUCT_VERSION' put: [self productVersion];
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   745
    yourself
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   746
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   747
    "Created: / 09-08-2006 / 11:21:21 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   748
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   749
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   750
replaceMappings: mappings in: fileTemplate
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   751
"Replaces the defined variable mappings found in a file template with the corresponding information"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   752
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   753
^ fileTemplate bindWithArguments:mappings.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   754
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   755
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   756
self replaceMappings: (self nt_dot_def_mappingsFor: self) in: self nt_dot_def  
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   757
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   758
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   759
    "Created: / 08-08-2006 / 11:44:27 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   760
    "Modified: / 08-08-2006 / 12:46:13 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   761
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   762
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   763
!BuildDefinition class methodsFor:'project information'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   764
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   765
companyName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   766
    ^'eXept Software AG'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   767
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   768
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   769
fileDescription
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   770
    ^self productName,' ',  self packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   771
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   772
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   773
fileVersion
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   774
    ^self revision ? '0.1.1.1'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   775
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   776
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   777
internalName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   778
    ^self packageName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   779
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   780
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   781
legalCopyright
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   782
    ^'Copyright eXept Software AG 2006 (until payment)'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   783
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   784
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   785
productName
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   786
    ^'Product Name'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   787
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   788
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   789
productVersion
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   790
    ^'0.1.1.1'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   791
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   792
9551
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   793
!BuildDefinition class methodsFor:'queries'!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   794
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   795
hasAllClassesLoaded
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   796
    self allClassNames do:[:nm |
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   797
        |cls|
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   798
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   799
        cls := Smalltalk classNamed:nm.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   800
        (cls isNil or:[cls isLoaded not]) ifTrue:[^ false ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   801
    ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   802
    ^ true.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   803
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   804
    "Created: / 17-08-2006 / 00:50:01 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   805
    "Modified: / 17-08-2006 / 08:49:44 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   806
!
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   807
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   808
hasAllExtensionsLoaded
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   809
    self extensionMethodNames pairWiseDo:[:className :selector |
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   810
        |cls|
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   811
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   812
        cls := Smalltalk at:className asSymbol.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   813
        (cls isNil or:[cls isLoaded not]) ifTrue:[^ false ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   814
        (cls compiledMethodAt:selector) isNil ifTrue:[^ false ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   815
    ].
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   816
    ^ true.
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   817
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   818
    "Created: / 17-08-2006 / 00:50:01 / cg"
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   819
! !
b85eead6b4ac *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9549
diff changeset
   820
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   821
!BuildDefinition class methodsFor:'testing'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   822
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   823
isProjectDefinition
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   824
    ^ self ~~ ProjectDefinition
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   825
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   826
    "Created: / 10-08-2006 / 16:24:02 / cg"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   827
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   828
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   829
!BuildDefinition class methodsFor:'update description'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   830
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   831
compileDescriptionMethods
9541
6178c98a72a2 *** empty log message ***
fm
parents: 9537
diff changeset
   832
    Class packageQuerySignal 
6178c98a72a2 *** empty log message ***
fm
parents: 9537
diff changeset
   833
        answer:self package
6178c98a72a2 *** empty log message ***
fm
parents: 9537
diff changeset
   834
        do:[
6178c98a72a2 *** empty log message ***
fm
parents: 9537
diff changeset
   835
            self forEachMethodsCodeToCompileDo:[:code :category |
9549
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   836
                self theMetaclass compilerClass
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   837
                    compile:code
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   838
                    forClass:self theMetaclass
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   839
                    inCategory:category
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   840
                    notifying:nil
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   841
                    install:true
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   842
                    skipIfSame:true
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   843
                    silent:false
9541
6178c98a72a2 *** empty log message ***
fm
parents: 9537
diff changeset
   844
        ].
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   845
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   846
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   847
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   848
    DapasXProject compileDescriptionMethods
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   849
    DapasX_Datenbasis compileDescriptionMethods
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   850
    bosch_dapasx_interactiver_editor compileDescriptionMethods
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   851
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   852
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   853
    "Created: / 09-08-2006 / 18:00:31 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   854
    "Modified: / 11-08-2006 / 14:01:29 / cg"
9549
cb6f689fcbd4 *** empty log message ***
fm
parents: 9548
diff changeset
   855
    "Modified: / 16-08-2006 / 18:58:29 / User"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   856
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   857
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   858
inconsistency:message
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   859
    Dialog warn:message
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   860
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   861
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   862
    self searchForNeverCompiledSuperclasses
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   863
    DapasX_Datenbasis searchForNeverCompiledSuperclasses  
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   864
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   865
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   866
    "Created: / 09-08-2006 / 16:32:31 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   867
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   868
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   869
searchForClassesNamesWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   870
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   871
    ^self searchForClassesWithProject collect:[:each | each name]. 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   872
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   873
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   874
    self searchForClassesNamesWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   875
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   876
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   877
    "Created: / 07-08-2006 / 21:37:06 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   878
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   879
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   880
searchForClassesWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   881
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   882
    ^self searchForClassesWithProject: self package
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   883
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   884
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   885
    self searchForClassesWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   886
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   887
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   888
    "Created: / 07-08-2006 / 20:42:39 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   889
    "Modified: / 07-08-2006 / 21:56:25 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   890
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   891
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   892
searchForClassesWithProject: aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   893
9545
5b2b83baf8a9 *** empty log message ***
fm
parents: 9544
diff changeset
   894
    ^ Smalltalk allClasses 
5b2b83baf8a9 *** empty log message ***
fm
parents: 9544
diff changeset
   895
        select:[:cls | (cls package == aProjectID) ].
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   896
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   897
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   898
    self searchForClassesWithProject: #'bosch:dapasx'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   899
    self searchForClassesWithProject: #'bosch:dapasx/datenbasis'
9545
5b2b83baf8a9 *** empty log message ***
fm
parents: 9544
diff changeset
   900
    self searchForClassesWithProject: #'bosch:dapasx/kernel'
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   901
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   902
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   903
    "Created: / 07-08-2006 / 20:42:39 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   904
    "Modified: / 07-08-2006 / 21:56:25 / fm"
9545
5b2b83baf8a9 *** empty log message ***
fm
parents: 9544
diff changeset
   905
    "Modified: / 16-08-2006 / 18:50:48 / User"
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   906
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   907
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   908
searchForExtensionsForProject:aProjectID
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   909
    |methods|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   910
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   911
    methods := IdentitySet new.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   912
    Smalltalk allClassesDo:[:eachClass |
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   913
        |classPackage|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   914
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   915
        classPackage := eachClass package.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   916
        eachClass instAndClassMethodsDo:[:mthd |
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   917
            mthd package ~= classPackage ifTrue:[ 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   918
                mthd package == aProjectID ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   919
                    methods add:mthd 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   920
                ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   921
            ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   922
        ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   923
    ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   924
    ^ methods
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   925
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   926
    self searchForExtensionsForProject:#'bosch:dapasx'
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   927
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   928
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   929
    "Created: / 07-08-2006 / 22:03:55 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   930
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   931
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   932
searchForExtensionsWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   933
    ^ self searchForExtensionsForProject:self package
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   934
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   935
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   936
    self searchForExtensionsWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   937
    DapasXProject searchForExtensionsWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   938
    DapasX_Datenbasis searchForExtensionsWithProject
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   939
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   940
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   941
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   942
    "Created: / 07-08-2006 / 21:03:10 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   943
    "Modified: / 09-08-2006 / 13:01:26 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   944
!
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   945
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   946
searchForProjectsWhichProvideHeaderFiles
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   947
      |myPackageID requiredPackages|
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   948
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   949
      requiredPackages := Set new.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   950
      myPackageID := self package.
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   951
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   952
      self compiled_classesDo:[:includedClass | 
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   953
            includedClass allSuperclassesDo:[:eachSuperClass |
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   954
                ((eachSuperClass package ~= myPackageID)
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   955
                and:[ (self moduleOfClass: eachSuperClass) ~= 'stx' ])
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   956
                    ifTrue:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   957
                        eachSuperClass package == Project noProjectID ifFalse:[
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   958
                            requiredPackages add:(eachSuperClass package).
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   959
                        ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   960
                    ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   961
            ]
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   962
      ].
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   963
      ^ requiredPackages
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   964
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   965
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   966
    self searchForProjectsWhichProvideHeaderFiles
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   967
    DapasX_Datenbasis searchForProjectsWhichProvideHeaderFiles  
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   968
"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   969
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   970
    "Created: / 09-08-2006 / 16:26:37 / fm"
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   971
! !
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   972
9537
f49bd8ae6e91 *** empty log message ***
fm
parents: 9536
diff changeset
   973
!BuildDefinition class methodsFor:'documentation'!
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   974
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   975
version
9553
0ba9e1ed1aee *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9551
diff changeset
   976
    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.9 2006-08-17 07:50:54 cg Exp $'
9536
3a835fa7e38b initial checkin
fm
parents:
diff changeset
   977
! !