ApplicationBuilder.st
author Claus Gittinger <cg@exept.de>
Sun, 01 Feb 2015 14:17:11 +0100
changeset 15150 940d37c7d3ac
parent 13256 d1d0f1f71f47
child 13289 cc75e3cd0362
permissions -rw-r--r--
class: Tools::ChangeList fixed the following redraw bug in ModelListView (which is already fixed in SelectionInListView): if a colored item is shown with selection, the color attribute should be removed (or relaxed), to avoid drawing the label invisible. I.e. if the text color is blue or grey, and the selection bg is blue. we should draw white-on-blue, instead of blue/grey on blue. For this to work, the info whether drawing a selection must be passed down through the renderer to the item's draw routine.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2628
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     1
"
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     2
 COPYRIGHT (c) 1998 by eXept Software AG
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     3
              All Rights Reserved
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     4
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     5
 This software is furnished under a license and may be used
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     6
 only in accordance with the terms of that license and with the
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     7
 inclusion of the above copyright notice. This software may not
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     8
 be provided or otherwise made available to, or used by, any
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
     9
 other person. No title to or ownership of the software is
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    10
 hereby transferred.
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    11
"
7087
c46a141cfe46 category change
Claus Gittinger <cg@exept.de>
parents: 2628
diff changeset
    12
"{ Package: 'stx:libtool' }"
c46a141cfe46 category change
Claus Gittinger <cg@exept.de>
parents: 2628
diff changeset
    13
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    14
ToolApplicationModel subclass:#ApplicationBuilder
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    15
	instanceVariableNames:'task shellView aspects'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    16
	classVariableNames:''
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    17
	poolDictionaries:''
7087
c46a141cfe46 category change
Claus Gittinger <cg@exept.de>
parents: 2628
diff changeset
    18
	category:'Interface-Tools'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    19
!
dd37d7763def initial checkin
tz
parents:
diff changeset
    20
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    21
ApplicationBuilder class instanceVariableNames:'aspects'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    22
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    23
"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    24
 The following class instance variables are inherited by this class:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    25
7087
c46a141cfe46 category change
Claus Gittinger <cg@exept.de>
parents: 2628
diff changeset
    26
	ToolApplicationModel - history fileHistory clipboard settings showingHelp instances
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    27
	ApplicationModel - ClassResources
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    28
	Model - 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    29
	Object - 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    30
"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    31
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    32
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    33
!ApplicationBuilder class methodsFor:'documentation'!
dd37d7763def initial checkin
tz
parents:
diff changeset
    34
2628
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    35
copyright
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    36
"
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    37
 COPYRIGHT (c) 1998 by eXept Software AG
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    38
              All Rights Reserved
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    39
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    40
 This software is furnished under a license and may be used
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    41
 only in accordance with the terms of that license and with the
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    42
 inclusion of the above copyright notice. This software may not
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    43
 be provided or otherwise made available to, or used by, any
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    44
 other person. No title to or ownership of the software is
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    45
 hereby transferred.
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    46
"
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    47
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    48
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    49
!
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    50
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    51
documentation
dd37d7763def initial checkin
tz
parents:
diff changeset
    52
"
2628
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    53
    WARNING: unfinished - do not use.
c20c71989aa1 copyrights
Claus Gittinger <cg@exept.de>
parents: 1630
diff changeset
    54
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    55
    The Application Builder of ST/X allows you to build ST/X-applications by following steps:
dd37d7763def initial checkin
tz
parents:
diff changeset
    56
dd37d7763def initial checkin
tz
parents:
diff changeset
    57
        0. Clobber the target directory of the application
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    58
        1. Generate the h-file with symbols
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    59
        2. Generate the c-file with modules
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    60
        3. Compile the modules init file
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    61
        4. Compile the startup C-file
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    62
        5. Define the symbolic links to the libraries
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    63
        6. Link the libraries to the application
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    64
        7. Define the symbolic links to the resources
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    65
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    66
    [instance variables:]
dd37d7763def initial checkin
tz
parents:
diff changeset
    67
        task           <Process>               task of the running build
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
    68
        shellView      <ShellView>             shell view for outputting the build results
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    69
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    70
    [instance class variables:]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    71
        aspects        <IdentityDictionary>    aspects of the settings
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
    72
dd37d7763def initial checkin
tz
parents:
diff changeset
    73
    [start with:]
dd37d7763def initial checkin
tz
parents:
diff changeset
    74
        ApplicationBuilder open
dd37d7763def initial checkin
tz
parents:
diff changeset
    75
dd37d7763def initial checkin
tz
parents:
diff changeset
    76
    [see also:]
dd37d7763def initial checkin
tz
parents:
diff changeset
    77
        LibraryBuilder
dd37d7763def initial checkin
tz
parents:
diff changeset
    78
dd37d7763def initial checkin
tz
parents:
diff changeset
    79
    [author:]
dd37d7763def initial checkin
tz
parents:
diff changeset
    80
        Thomas Zwick, eXept Software AG
dd37d7763def initial checkin
tz
parents:
diff changeset
    81
"
dd37d7763def initial checkin
tz
parents:
diff changeset
    82
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
    83
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    84
!ApplicationBuilder class methodsFor:'accessing'!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    85
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    86
aspects
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    87
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    88
    aspects isNil ifTrue: [aspects := IdentityDictionary new].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    89
    ^aspects
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    90
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    91
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    92
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    93
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    94
aspects: anIdentityDictionary
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    95
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
    96
    aspects := anIdentityDictionary
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
    97
!
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
    98
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
    99
label
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   100
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   101
   ^'Application Builder (experimental)'
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   102
! !
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   103
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   104
!ApplicationBuilder class methodsFor:'help specs'!
dd37d7763def initial checkin
tz
parents:
diff changeset
   105
dd37d7763def initial checkin
tz
parents:
diff changeset
   106
helpSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   107
    "This resource specification was automatically generated
dd37d7763def initial checkin
tz
parents:
diff changeset
   108
     by the UIHelpTool of ST/X."
dd37d7763def initial checkin
tz
parents:
diff changeset
   109
dd37d7763def initial checkin
tz
parents:
diff changeset
   110
    "Do not manually edit this!! If it is corrupted,
dd37d7763def initial checkin
tz
parents:
diff changeset
   111
     the UIHelpTool may not be able to read the specification."
dd37d7763def initial checkin
tz
parents:
diff changeset
   112
dd37d7763def initial checkin
tz
parents:
diff changeset
   113
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   114
     UIHelpTool openOnClass:ApplicationBuilder    
dd37d7763def initial checkin
tz
parents:
diff changeset
   115
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   116
dd37d7763def initial checkin
tz
parents:
diff changeset
   117
    <resource: #help>
dd37d7763def initial checkin
tz
parents:
diff changeset
   118
dd37d7763def initial checkin
tz
parents:
diff changeset
   119
    ^super helpSpec addPairsFrom:#(
dd37d7763def initial checkin
tz
parents:
diff changeset
   120
dd37d7763def initial checkin
tz
parents:
diff changeset
   121
#applicationLinkDefines
dd37d7763def initial checkin
tz
parents:
diff changeset
   122
'Opens a dialog to define the link defines for the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   123
dd37d7763def initial checkin
tz
parents:
diff changeset
   124
#applicationName
dd37d7763def initial checkin
tz
parents:
diff changeset
   125
'Name of the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   126
dd37d7763def initial checkin
tz
parents:
diff changeset
   127
#build
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   128
'Starts the process of building the target.'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   129
dd37d7763def initial checkin
tz
parents:
diff changeset
   130
#buildDate
dd37d7763def initial checkin
tz
parents:
diff changeset
   131
'Build date of the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   132
dd37d7763def initial checkin
tz
parents:
diff changeset
   133
#configuration
dd37d7763def initial checkin
tz
parents:
diff changeset
   134
'Configuration information of the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   135
dd37d7763def initial checkin
tz
parents:
diff changeset
   136
#libraryDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   137
'Directory of the ST/X libraries.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   138
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   139
#link
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   140
'Starts the process of linking the application.'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   141
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   142
#selectPath
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   143
'Opens a dialog for choosing the name of the file/path.'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   144
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   145
#sourceDirectory
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   146
'Source directory of ST/X.'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   147
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   148
#start
dd37d7763def initial checkin
tz
parents:
diff changeset
   149
'Start the build application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   150
dd37d7763def initial checkin
tz
parents:
diff changeset
   151
#startupCFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   152
'Startup C-file of ST/X for the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   153
dd37d7763def initial checkin
tz
parents:
diff changeset
   154
#startupFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   155
'Startup C-file of ST/X for the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   156
dd37d7763def initial checkin
tz
parents:
diff changeset
   157
#startupMessage
dd37d7763def initial checkin
tz
parents:
diff changeset
   158
'Startup message consisting of the class name and the selector name.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   159
dd37d7763def initial checkin
tz
parents:
diff changeset
   160
#startupModule
dd37d7763def initial checkin
tz
parents:
diff changeset
   161
'Startup module of ST/X for the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   162
dd37d7763def initial checkin
tz
parents:
diff changeset
   163
#stop
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   164
'Stops the process of the building.'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   165
dd37d7763def initial checkin
tz
parents:
diff changeset
   166
#stxLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   167
'List of the ST/X library names.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   168
dd37d7763def initial checkin
tz
parents:
diff changeset
   169
#symlinkBitmaps
dd37d7763def initial checkin
tz
parents:
diff changeset
   170
'Create symbolic links to the bitmaps of ST/X.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   171
dd37d7763def initial checkin
tz
parents:
diff changeset
   172
#symlinkRCFiles
dd37d7763def initial checkin
tz
parents:
diff changeset
   173
'Create symbolic links to the RC-files of ST/X.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   174
dd37d7763def initial checkin
tz
parents:
diff changeset
   175
#symlinkResources
dd37d7763def initial checkin
tz
parents:
diff changeset
   176
'Create symbolic links to the resources of ST/X.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   177
dd37d7763def initial checkin
tz
parents:
diff changeset
   178
#symlinkSources
dd37d7763def initial checkin
tz
parents:
diff changeset
   179
'Create symbolic links to the sources of ST/X.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   180
dd37d7763def initial checkin
tz
parents:
diff changeset
   181
#systemLibaries
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   182
'Libraries of the operating system needed by the target.'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   183
dd37d7763def initial checkin
tz
parents:
diff changeset
   184
#targetDirectory
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   185
'Directory where the target will build.'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   186
dd37d7763def initial checkin
tz
parents:
diff changeset
   187
#topDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   188
'Top directory of ST/X.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   189
dd37d7763def initial checkin
tz
parents:
diff changeset
   190
#userLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   191
'Libraries of the user wanted to add to the application.'
dd37d7763def initial checkin
tz
parents:
diff changeset
   192
dd37d7763def initial checkin
tz
parents:
diff changeset
   193
)
dd37d7763def initial checkin
tz
parents:
diff changeset
   194
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
   195
dd37d7763def initial checkin
tz
parents:
diff changeset
   196
!ApplicationBuilder class methodsFor:'interface specs'!
dd37d7763def initial checkin
tz
parents:
diff changeset
   197
dd37d7763def initial checkin
tz
parents:
diff changeset
   198
windowSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   199
    "This resource specification was automatically generated
dd37d7763def initial checkin
tz
parents:
diff changeset
   200
     by the UIPainter of ST/X."
dd37d7763def initial checkin
tz
parents:
diff changeset
   201
dd37d7763def initial checkin
tz
parents:
diff changeset
   202
    "Do not manually edit this!! If it is corrupted,
dd37d7763def initial checkin
tz
parents:
diff changeset
   203
     the UIPainter may not be able to read the specification."
dd37d7763def initial checkin
tz
parents:
diff changeset
   204
dd37d7763def initial checkin
tz
parents:
diff changeset
   205
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   206
     UIPainter new openOnClass:ApplicationBuilder andSelector:#windowSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   207
     ApplicationBuilder new openInterface:#windowSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   208
     ApplicationBuilder open
dd37d7763def initial checkin
tz
parents:
diff changeset
   209
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   210
dd37d7763def initial checkin
tz
parents:
diff changeset
   211
    <resource: #canvas>
dd37d7763def initial checkin
tz
parents:
diff changeset
   212
dd37d7763def initial checkin
tz
parents:
diff changeset
   213
    ^
dd37d7763def initial checkin
tz
parents:
diff changeset
   214
     
dd37d7763def initial checkin
tz
parents:
diff changeset
   215
       #(#FullSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   216
          #window: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   217
           #(#WindowSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   218
              #name: 'Application Builder'
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   219
              #layout: #(#LayoutFrame 79 0 285 0 578 0 744 0)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   220
              #label: 'Application Builder'
dd37d7763def initial checkin
tz
parents:
diff changeset
   221
              #min: #(#Point 420 220)
dd37d7763def initial checkin
tz
parents:
diff changeset
   222
              #max: #(#Point 1152 900)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   223
              #bounds: #(#Rectangle 79 285 579 745)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   224
              #menu: #menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   225
              #usePreferredExtent: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   226
          )
dd37d7763def initial checkin
tz
parents:
diff changeset
   227
          #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   228
           #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   229
              #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   230
               #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   231
                 #(#ViewSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   232
                    #name: 'Box1'
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   233
                    #layout: #(#LayoutFrame 0 0.0 3 0 0 1.0 292 0)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   234
                    #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   235
                     #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   236
                        #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   237
                         #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   238
                           #(#ViewSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   239
                              #name: 'Box2'
dd37d7763def initial checkin
tz
parents:
diff changeset
   240
                              #layout: #(#LayoutFrame 0 0.0 0 0.0 -148 1.0 2 1.0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   241
                              #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   242
                               #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   243
                                  #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   244
                                   #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   245
                                     #(#LabelSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   246
                                        #name: 'applicationNameLabel'
dd37d7763def initial checkin
tz
parents:
diff changeset
   247
                                        #layout: #(#AlignmentOrigin 147 0 15 0 1 0.5)
dd37d7763def initial checkin
tz
parents:
diff changeset
   248
                                        #label: 'Application Name:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   249
                                        #adjust: #right
dd37d7763def initial checkin
tz
parents:
diff changeset
   250
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   251
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   252
                                        #name: 'applicationNameField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   253
                                        #layout: #(#LayoutFrame 150 0 4 0 0 1 26 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   254
                                        #activeHelpKey: #applicationName
dd37d7763def initial checkin
tz
parents:
diff changeset
   255
                                        #model: #applicationName
dd37d7763def initial checkin
tz
parents:
diff changeset
   256
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   257
                                     #(#LabelSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   258
                                        #name: 'startupMessageLabel'
dd37d7763def initial checkin
tz
parents:
diff changeset
   259
                                        #layout: #(#AlignmentOrigin 147 0 39 0 1 0.5)
dd37d7763def initial checkin
tz
parents:
diff changeset
   260
                                        #label: 'Startup Message:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   261
                                        #adjust: #right
dd37d7763def initial checkin
tz
parents:
diff changeset
   262
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   263
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   264
                                        #name: 'startupMessageField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   265
                                        #layout: #(#LayoutFrame 150 0 28 0 0 1.0 50 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   266
                                        #activeHelpKey: #startupMessage
dd37d7763def initial checkin
tz
parents:
diff changeset
   267
                                        #model: #startupMessage
dd37d7763def initial checkin
tz
parents:
diff changeset
   268
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   269
                                     #(#LabelSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   270
                                        #name: 'buildDateLabel'
dd37d7763def initial checkin
tz
parents:
diff changeset
   271
                                        #layout: #(#AlignmentOrigin 147 0 63 0 1 0.5)
dd37d7763def initial checkin
tz
parents:
diff changeset
   272
                                        #label: 'Build Date:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   273
                                        #adjust: #right
dd37d7763def initial checkin
tz
parents:
diff changeset
   274
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   275
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   276
                                        #name: 'buildDateField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   277
                                        #layout: #(#LayoutFrame 150 0 52 0 0 1.0 74 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   278
                                        #activeHelpKey: #buildDate
dd37d7763def initial checkin
tz
parents:
diff changeset
   279
                                        #model: #buildDate
dd37d7763def initial checkin
tz
parents:
diff changeset
   280
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   281
                                     #(#LabelSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   282
                                        #name: 'configurationLabel'
dd37d7763def initial checkin
tz
parents:
diff changeset
   283
                                        #layout: #(#AlignmentOrigin 147 0 87 0 1 0.5)
dd37d7763def initial checkin
tz
parents:
diff changeset
   284
                                        #label: 'Configuration:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   285
                                        #adjust: #right
dd37d7763def initial checkin
tz
parents:
diff changeset
   286
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   287
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   288
                                        #name: 'configurationField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   289
                                        #layout: #(#LayoutFrame 150 0 76 0 0 1.0 98 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   290
                                        #activeHelpKey: #configuration
dd37d7763def initial checkin
tz
parents:
diff changeset
   291
                                        #model: #configuration
dd37d7763def initial checkin
tz
parents:
diff changeset
   292
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   293
                                     #(#DividerSpec
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   294
                                        #name: 'Separator2'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   295
                                        #layout: #(#LayoutFrame 0 0 102 0 0 1 105 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   296
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   297
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   298
                                        #name: 'targetDirectoryButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   299
                                        #layout: #(#LayoutFrame 4 0 109 0 147 0 133 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   300
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   301
                                        #label: 'Target Directory:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   302
                                        #model: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   303
                                        #actionValue: 'Target'
dd37d7763def initial checkin
tz
parents:
diff changeset
   304
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   305
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   306
                                        #name: 'targetDirectoryField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   307
                                        #layout: #(#LayoutFrame 150 0 109 0 0 1.0 131 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   308
                                        #activeHelpKey: #targetDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   309
                                        #model: #targetDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   310
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   311
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   312
                                        #name: 'topDirectoryButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   313
                                        #layout: #(#LayoutFrame 4 0 133 0 147 0 157 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   314
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   315
                                        #label: 'Top Directory:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   316
                                        #model: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   317
                                        #actionValue: 'Top'
dd37d7763def initial checkin
tz
parents:
diff changeset
   318
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   319
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   320
                                        #name: 'topDirectoryField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   321
                                        #layout: #(#LayoutFrame 150 0 133 0 0 1.0 155 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   322
                                        #activeHelpKey: #topDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   323
                                        #model: #topDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   324
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   325
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   326
                                        #name: 'libraryDirectoryButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   327
                                        #layout: #(#LayoutFrame 4 0 157 0 147 0 181 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   328
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   329
                                        #label: 'Library Directory:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   330
                                        #model: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   331
                                        #actionValue: 'Library'
dd37d7763def initial checkin
tz
parents:
diff changeset
   332
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   333
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   334
                                        #name: 'libraryDirectoryField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   335
                                        #layout: #(#LayoutFrame 150 0 157 0 0 1.0 179 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   336
                                        #activeHelpKey: #libraryDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   337
                                        #model: #libraryDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   338
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   339
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   340
                                        #name: 'startupCFileButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   341
                                        #layout: #(#LayoutFrame 4 0 181 0 147 0 205 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   342
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   343
                                        #label: 'Startup C-File:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   344
                                        #model: #doSelectCFile:
dd37d7763def initial checkin
tz
parents:
diff changeset
   345
                                        #actionValue: 'StartupCFile'
dd37d7763def initial checkin
tz
parents:
diff changeset
   346
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   347
                                     #(#InputFieldSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   348
                                        #name: 'startupCFileField'
dd37d7763def initial checkin
tz
parents:
diff changeset
   349
                                        #layout: #(#LayoutFrame 150 0 181 0 0 1.0 203 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   350
                                        #activeHelpKey: #startupModule
dd37d7763def initial checkin
tz
parents:
diff changeset
   351
                                        #model: #startupCFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   352
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   353
                                     #(#DividerSpec
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   354
                                        #name: 'Separator3'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   355
                                        #layout: #(#LayoutFrame 0 0.0 208 0 0 1.0 211 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   356
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   357
                                     #(#LabelSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   358
                                        #name: 'stxLibraryButton'
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   359
                                        #layout: #(#AlignmentOrigin 147 0 227 0 1 0.5)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   360
                                        #label: 'ST/X Libraries:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   361
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   362
                                     #(#ComboBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   363
                                        #name: 'stxLibrariesComboBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   364
                                        #layout: #(#LayoutFrame 150 0 216 0 0 1 238 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   365
                                        #activeHelpKey: #stxLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   366
                                        #model: #stxLibrary
dd37d7763def initial checkin
tz
parents:
diff changeset
   367
                                        #immediateAccept: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   368
                                        #acceptOnTab: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   369
                                        #comboList: #stxLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   370
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   371
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   372
                                        #name: 'systemLibrariesButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   373
                                        #layout: #(#LayoutFrame 4 0 239 0 147 0 263 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   374
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   375
                                        #label: 'System Libraries:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   376
                                        #model: #doSelectLibrary:
dd37d7763def initial checkin
tz
parents:
diff changeset
   377
                                        #actionValue: 'SystemLibrary'
dd37d7763def initial checkin
tz
parents:
diff changeset
   378
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   379
                                     #(#ComboBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   380
                                        #name: 'systemLibrariesComboBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   381
                                        #layout: #(#LayoutFrame 150 0 240 0 0 1 262 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   382
                                        #activeHelpKey: #systemLibaries
dd37d7763def initial checkin
tz
parents:
diff changeset
   383
                                        #model: #systemLibrary
dd37d7763def initial checkin
tz
parents:
diff changeset
   384
                                        #immediateAccept: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   385
                                        #acceptOnTab: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   386
                                        #comboList: #systemLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   387
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   388
                                     #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   389
                                        #name: 'userLibrariesButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   390
                                        #layout: #(#LayoutFrame 4 0 263 0 147 0 287 0)
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   391
                                        #activeHelpKey: #selectPath
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   392
                                        #label: 'User Libraries:'
dd37d7763def initial checkin
tz
parents:
diff changeset
   393
                                        #model: #doSelectLibrary:
dd37d7763def initial checkin
tz
parents:
diff changeset
   394
                                        #actionValue: 'UserLibrary'
dd37d7763def initial checkin
tz
parents:
diff changeset
   395
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   396
                                     #(#ComboBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   397
                                        #name: 'userLibrariesComboBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   398
                                        #layout: #(#LayoutFrame 150 0 264 0 0 1 286 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   399
                                        #activeHelpKey: #userLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   400
                                        #model: #userLibrary
dd37d7763def initial checkin
tz
parents:
diff changeset
   401
                                        #immediateAccept: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   402
                                        #acceptOnTab: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   403
                                        #comboList: #userLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   404
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   405
                                  )
dd37d7763def initial checkin
tz
parents:
diff changeset
   406
                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   407
                          )
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   408
                           #(#DividerSpec
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   409
                              #name: 'Separator4'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   410
                              #layout: #(#LayoutFrame -144 1 0 0.0 -138 1 0 1.0)
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   411
                              #orientation: #vertical
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   412
                          )
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   413
                           #(#ViewSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   414
                              #name: 'Box3'
dd37d7763def initial checkin
tz
parents:
diff changeset
   415
                              #layout: #(#LayoutFrame -134 1 0 0.0 0 1.0 0 1.0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   416
                              #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   417
                               #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   418
                                  #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   419
                                   #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   420
                                     #(#FramedBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   421
                                        #name: 'FramedBox'
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   422
                                        #layout: #(#LayoutFrame -4 0.0 4 0.0 0 1.0 -150 1.0)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   423
                                        #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   424
                                         #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   425
                                            #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   426
                                             #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   427
                                               #(#CheckBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   428
                                                  #name: 'linkRCFilesCheckBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   429
                                                  #layout: #(#LayoutFrame 12 0 24 0 12 1 46 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   430
                                                  #activeHelpKey: #symlinkRCFiles
dd37d7763def initial checkin
tz
parents:
diff changeset
   431
                                                  #model: #linkRCFiles
dd37d7763def initial checkin
tz
parents:
diff changeset
   432
                                                  #label: 'RC-Files'
dd37d7763def initial checkin
tz
parents:
diff changeset
   433
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   434
                                               #(#CheckBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   435
                                                  #name: 'linkResourcesCheckBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   436
                                                  #layout: #(#LayoutFrame 12 0 48 0 12 1 70 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   437
                                                  #activeHelpKey: #symlinkResources
dd37d7763def initial checkin
tz
parents:
diff changeset
   438
                                                  #model: #linkResources
dd37d7763def initial checkin
tz
parents:
diff changeset
   439
                                                  #label: 'Resources'
dd37d7763def initial checkin
tz
parents:
diff changeset
   440
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   441
                                               #(#CheckBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   442
                                                  #name: 'linkSourcesCheckBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   443
                                                  #layout: #(#LayoutFrame 12 0 72 0 12 1 94 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   444
                                                  #activeHelpKey: #symlinkSources
dd37d7763def initial checkin
tz
parents:
diff changeset
   445
                                                  #model: #linkSources
dd37d7763def initial checkin
tz
parents:
diff changeset
   446
                                                  #label: 'Sources'
dd37d7763def initial checkin
tz
parents:
diff changeset
   447
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   448
                                               #(#CheckBoxSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   449
                                                  #name: 'linkBitmapsCheckBox'
dd37d7763def initial checkin
tz
parents:
diff changeset
   450
                                                  #layout: #(#LayoutFrame 12 0 96 0 12 1 118 0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   451
                                                  #activeHelpKey: #symlinkBitmaps
dd37d7763def initial checkin
tz
parents:
diff changeset
   452
                                                  #model: #linkBitmaps
dd37d7763def initial checkin
tz
parents:
diff changeset
   453
                                                  #label: 'Bitmaps'
dd37d7763def initial checkin
tz
parents:
diff changeset
   454
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   455
                                            )
dd37d7763def initial checkin
tz
parents:
diff changeset
   456
                                        )
dd37d7763def initial checkin
tz
parents:
diff changeset
   457
                                        #label: 'Symbolic Links'
dd37d7763def initial checkin
tz
parents:
diff changeset
   458
                                        #labelPosition: #topLeft
dd37d7763def initial checkin
tz
parents:
diff changeset
   459
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   460
                                     #(#VerticalPanelViewSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   461
                                        #name: 'VerticalPanel'
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   462
                                        #layout: #(#LayoutFrame 0 0.0 -144 1 -6 1.0 -2 1.0)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   463
                                        #component: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   464
                                         #(#SpecCollection
dd37d7763def initial checkin
tz
parents:
diff changeset
   465
                                            #collection: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   466
                                             #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   467
                                               #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   468
                                                  #name: 'buildButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   469
                                                  #activeHelpKey: #build
dd37d7763def initial checkin
tz
parents:
diff changeset
   470
                                                  #label: 'Build'
dd37d7763def initial checkin
tz
parents:
diff changeset
   471
                                                  #model: #doBuild
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   472
                                                  #extent: #(#Point 128 33)
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   473
                                              )
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   474
                                               #(#ActionButtonSpec
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   475
                                                  #name: 'linkButton'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   476
                                                  #activeHelpKey: #link
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   477
                                                  #label: 'Link'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   478
                                                  #model: #doLink
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   479
                                                  #extent: #(#Point 128 34)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   480
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   481
                                               #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   482
                                                  #name: 'stopButton'
dd37d7763def initial checkin
tz
parents:
diff changeset
   483
                                                  #activeHelpKey: #stop
dd37d7763def initial checkin
tz
parents:
diff changeset
   484
                                                  #label: 'Stop'
dd37d7763def initial checkin
tz
parents:
diff changeset
   485
                                                  #model: #doStop
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   486
                                                  #extent: #(#Point 128 33)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   487
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   488
                                               #(#ActionButtonSpec
dd37d7763def initial checkin
tz
parents:
diff changeset
   489
                                                  #name: 'Button1'
dd37d7763def initial checkin
tz
parents:
diff changeset
   490
                                                  #activeHelpKey: #start
dd37d7763def initial checkin
tz
parents:
diff changeset
   491
                                                  #label: 'Start'
dd37d7763def initial checkin
tz
parents:
diff changeset
   492
                                                  #model: #doStart
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   493
                                                  #extent: #(#Point 128 33)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   494
                                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   495
                                            )
dd37d7763def initial checkin
tz
parents:
diff changeset
   496
                                        )
dd37d7763def initial checkin
tz
parents:
diff changeset
   497
                                        #horizontalLayout: #fit
dd37d7763def initial checkin
tz
parents:
diff changeset
   498
                                        #verticalLayout: #fit
dd37d7763def initial checkin
tz
parents:
diff changeset
   499
                                        #horizontalSpace: 3
dd37d7763def initial checkin
tz
parents:
diff changeset
   500
                                        #verticalSpace: 3
dd37d7763def initial checkin
tz
parents:
diff changeset
   501
                                    )
dd37d7763def initial checkin
tz
parents:
diff changeset
   502
                                  )
dd37d7763def initial checkin
tz
parents:
diff changeset
   503
                              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   504
                          )
dd37d7763def initial checkin
tz
parents:
diff changeset
   505
                        )
dd37d7763def initial checkin
tz
parents:
diff changeset
   506
                    )
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   507
                    #borderWidth: 1
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   508
                )
dd37d7763def initial checkin
tz
parents:
diff changeset
   509
                 #(#SubCanvasSpec
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   510
                    #name: 'shellViewSubCanvas'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   511
                    #layout: #(#LayoutFrame 0 0.0 294 0 0 1.0 -26 1)
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   512
                    #hasHorizontalScrollBar: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   513
                    #hasVerticalScrollBar: false
dd37d7763def initial checkin
tz
parents:
diff changeset
   514
                    #clientHolder: #shellView
dd37d7763def initial checkin
tz
parents:
diff changeset
   515
                )
dd37d7763def initial checkin
tz
parents:
diff changeset
   516
                 #(#UISubSpecification
dd37d7763def initial checkin
tz
parents:
diff changeset
   517
                    #name: 'windowSpecForInfoBar'
dd37d7763def initial checkin
tz
parents:
diff changeset
   518
                    #layout: #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
dd37d7763def initial checkin
tz
parents:
diff changeset
   519
                    #majorKey: #ToolApplicationModel
dd37d7763def initial checkin
tz
parents:
diff changeset
   520
                    #minorKey: #windowSpecForInfoBar
dd37d7763def initial checkin
tz
parents:
diff changeset
   521
                )
dd37d7763def initial checkin
tz
parents:
diff changeset
   522
              )
dd37d7763def initial checkin
tz
parents:
diff changeset
   523
          )
dd37d7763def initial checkin
tz
parents:
diff changeset
   524
      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   525
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
   526
dd37d7763def initial checkin
tz
parents:
diff changeset
   527
!ApplicationBuilder class methodsFor:'menu specs'!
dd37d7763def initial checkin
tz
parents:
diff changeset
   528
dd37d7763def initial checkin
tz
parents:
diff changeset
   529
menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   530
    "This resource specification was automatically generated
dd37d7763def initial checkin
tz
parents:
diff changeset
   531
     by the MenuEditor of ST/X."
dd37d7763def initial checkin
tz
parents:
diff changeset
   532
dd37d7763def initial checkin
tz
parents:
diff changeset
   533
    "Do not manually edit this!! If it is corrupted,
dd37d7763def initial checkin
tz
parents:
diff changeset
   534
     the MenuEditor may not be able to read the specification."
dd37d7763def initial checkin
tz
parents:
diff changeset
   535
dd37d7763def initial checkin
tz
parents:
diff changeset
   536
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   537
     MenuEditor new openOnClass:ApplicationBuilder andSelector:#menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   538
     (Menu new fromLiteralArrayEncoding:(ApplicationBuilder menu)) startUp
dd37d7763def initial checkin
tz
parents:
diff changeset
   539
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   540
dd37d7763def initial checkin
tz
parents:
diff changeset
   541
    <resource: #menu>
dd37d7763def initial checkin
tz
parents:
diff changeset
   542
dd37d7763def initial checkin
tz
parents:
diff changeset
   543
    ^
dd37d7763def initial checkin
tz
parents:
diff changeset
   544
     
dd37d7763def initial checkin
tz
parents:
diff changeset
   545
       #(#Menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   546
          
dd37d7763def initial checkin
tz
parents:
diff changeset
   547
           #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   548
             #(#MenuItem
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   549
                #label: 'About'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   550
                #labelImage: #(#ResourceRetriever nil #menuIcon)
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   551
                #submenuChannel: #menuAbout
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   552
            )
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   553
             #(#MenuItem
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   554
                #label: 'File'
dd37d7763def initial checkin
tz
parents:
diff changeset
   555
                #submenu: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   556
                 #(#Menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   557
                    
dd37d7763def initial checkin
tz
parents:
diff changeset
   558
                     #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   559
                       #(#MenuItem
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   560
                          #label: 'Exit'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   561
                          #value: #closeRequest
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   562
                          #activeHelpKey: #fileExit
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   563
                      )
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   564
                    ) nil
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   565
                    nil
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   566
                )
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   567
            )
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   568
             #(#MenuItem
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   569
                #label: 'Application'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   570
                #submenu: 
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   571
                 #(#Menu
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   572
                    
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   573
                     #(
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   574
                       #(#MenuItem
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   575
                          #label: 'Build'
dd37d7763def initial checkin
tz
parents:
diff changeset
   576
                          #value: #doBuild
dd37d7763def initial checkin
tz
parents:
diff changeset
   577
                          #activeHelpKey: #build
dd37d7763def initial checkin
tz
parents:
diff changeset
   578
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   579
                       #(#MenuItem
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   580
                          #label: 'Link'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   581
                          #value: #doLink
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   582
                          #activeHelpKey: #link
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   583
                      )
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   584
                       #(#MenuItem
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   585
                          #label: '-'
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   586
                      )
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   587
                       #(#MenuItem
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   588
                          #label: 'Stop'
dd37d7763def initial checkin
tz
parents:
diff changeset
   589
                          #value: #doStop
dd37d7763def initial checkin
tz
parents:
diff changeset
   590
                          #activeHelpKey: #stop
dd37d7763def initial checkin
tz
parents:
diff changeset
   591
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   592
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   593
                          #label: 'Start'
dd37d7763def initial checkin
tz
parents:
diff changeset
   594
                          #value: #doStart
dd37d7763def initial checkin
tz
parents:
diff changeset
   595
                          #activeHelpKey: #start
dd37d7763def initial checkin
tz
parents:
diff changeset
   596
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   597
                    ) nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   598
                    nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   599
                )
dd37d7763def initial checkin
tz
parents:
diff changeset
   600
            )
dd37d7763def initial checkin
tz
parents:
diff changeset
   601
             #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   602
                #label: 'Settings'
dd37d7763def initial checkin
tz
parents:
diff changeset
   603
                #submenu: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   604
                 #(#Menu
dd37d7763def initial checkin
tz
parents:
diff changeset
   605
                    
dd37d7763def initial checkin
tz
parents:
diff changeset
   606
                     #(
dd37d7763def initial checkin
tz
parents:
diff changeset
   607
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   608
                          #label: 'Target Directory...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   609
                          #value: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   610
                          #activeHelpKey: #targetDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   611
                          #argument: 'Target'
dd37d7763def initial checkin
tz
parents:
diff changeset
   612
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   613
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   614
                          #label: 'Top Directory...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   615
                          #value: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   616
                          #activeHelpKey: #topDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   617
                          #argument: 'Top'
dd37d7763def initial checkin
tz
parents:
diff changeset
   618
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   619
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   620
                          #label: 'Library Directory...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   621
                          #value: #doSelectDirectory:
dd37d7763def initial checkin
tz
parents:
diff changeset
   622
                          #activeHelpKey: #libraryDirectory
dd37d7763def initial checkin
tz
parents:
diff changeset
   623
                          #argument: 'Library'
dd37d7763def initial checkin
tz
parents:
diff changeset
   624
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   625
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   626
                          #label: 'Startup C-File...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   627
                          #value: #doSelectCFile:
dd37d7763def initial checkin
tz
parents:
diff changeset
   628
                          #activeHelpKey: #startupCFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   629
                          #argument: 'StartupCFile'
dd37d7763def initial checkin
tz
parents:
diff changeset
   630
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   631
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   632
                          #label: '-'
dd37d7763def initial checkin
tz
parents:
diff changeset
   633
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   634
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   635
                          #label: 'System Libraries...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   636
                          #value: #doSelectLibrary:
dd37d7763def initial checkin
tz
parents:
diff changeset
   637
                          #activeHelpKey: #systemLibaries
dd37d7763def initial checkin
tz
parents:
diff changeset
   638
                          #argument: 'SystemLibrary'
dd37d7763def initial checkin
tz
parents:
diff changeset
   639
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   640
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   641
                          #label: 'User Libraries...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   642
                          #value: #doSelectLibrary:
dd37d7763def initial checkin
tz
parents:
diff changeset
   643
                          #activeHelpKey: #userLibraries
dd37d7763def initial checkin
tz
parents:
diff changeset
   644
                          #argument: 'UserLibrary'
dd37d7763def initial checkin
tz
parents:
diff changeset
   645
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   646
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   647
                          #label: '-'
dd37d7763def initial checkin
tz
parents:
diff changeset
   648
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   649
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   650
                          #label: 'Application Link Defines...'
dd37d7763def initial checkin
tz
parents:
diff changeset
   651
                          #value: #doDefineApplicationLinkDefines
dd37d7763def initial checkin
tz
parents:
diff changeset
   652
                          #activeHelpKey: #applicationLinkDefines
dd37d7763def initial checkin
tz
parents:
diff changeset
   653
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   654
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   655
                          #label: '-'
dd37d7763def initial checkin
tz
parents:
diff changeset
   656
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   657
                       #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   658
                          #label: 'Fonts'
dd37d7763def initial checkin
tz
parents:
diff changeset
   659
                          #submenuChannel: #menuFont
dd37d7763def initial checkin
tz
parents:
diff changeset
   660
                      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   661
                    ) nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   662
                    nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   663
                )
dd37d7763def initial checkin
tz
parents:
diff changeset
   664
            )
dd37d7763def initial checkin
tz
parents:
diff changeset
   665
             #(#MenuItem
dd37d7763def initial checkin
tz
parents:
diff changeset
   666
                #label: 'Help'
dd37d7763def initial checkin
tz
parents:
diff changeset
   667
                #startGroup: #right
dd37d7763def initial checkin
tz
parents:
diff changeset
   668
                #submenuChannel: #menuHelp
dd37d7763def initial checkin
tz
parents:
diff changeset
   669
            )
dd37d7763def initial checkin
tz
parents:
diff changeset
   670
          ) nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   671
          nil
dd37d7763def initial checkin
tz
parents:
diff changeset
   672
      )
dd37d7763def initial checkin
tz
parents:
diff changeset
   673
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
   674
dd37d7763def initial checkin
tz
parents:
diff changeset
   675
!ApplicationBuilder methodsFor:'actions'!
dd37d7763def initial checkin
tz
parents:
diff changeset
   676
dd37d7763def initial checkin
tz
parents:
diff changeset
   677
doBuild
dd37d7763def initial checkin
tz
parents:
diff changeset
   678
    "builds the application by doing following tasks:
dd37d7763def initial checkin
tz
parents:
diff changeset
   679
        0. Clobber the target directory of the application
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   680
        1. Generate the h-file with symbols
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   681
        2. Generate the c-file with modules
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   682
        3. Compile the modules init file
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   683
        4. Compile the startup C-file
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   684
        5. Define the symbolic links to the libraries
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   685
        6. Link the libraries to the application
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   686
        7. Define the symbolic links to the resources
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   687
    "
dd37d7763def initial checkin
tz
parents:
diff changeset
   688
    |dir compilerPath compilerFlags block0 block1 block2 block3 block4 block5 block6 block7 priority|
dd37d7763def initial checkin
tz
parents:
diff changeset
   689
dd37d7763def initial checkin
tz
parents:
diff changeset
   690
    task notNil ifTrue: [self warn: 'There is already a build running!!'].
dd37d7763def initial checkin
tz
parents:
diff changeset
   691
dd37d7763def initial checkin
tz
parents:
diff changeset
   692
    self inform: 'Starting building of application...' asBoldText.
dd37d7763def initial checkin
tz
parents:
diff changeset
   693
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   694
    (dir := self getTargetDirectory) isNil 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   695
        ifTrue: [^self warn: 'Could not create application directory!!'].
dd37d7763def initial checkin
tz
parents:
diff changeset
   696
dd37d7763def initial checkin
tz
parents:
diff changeset
   697
    shellView directory: dir.
dd37d7763def initial checkin
tz
parents:
diff changeset
   698
dd37d7763def initial checkin
tz
parents:
diff changeset
   699
    (compilerPath := ByteCodeCompiler ccPath, ' ') isNil 
dd37d7763def initial checkin
tz
parents:
diff changeset
   700
        ifTrue: [^self warn:'Define first a system compiler!!'].
dd37d7763def initial checkin
tz
parents:
diff changeset
   701
    compilerFlags := self getCompilerFlags.
dd37d7763def initial checkin
tz
parents:
diff changeset
   702
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   703
    block0 := self getBlockForClobberingTargetDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   704
    block1 := self getBlockForGeneratingHFileWithSymbolsIn: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   705
    block2 := self getBlockForGeneratingCFileWithModulesIn: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   706
    block3 := self getBlockForCompilingModulListFileWith: compilerPath, compilerFlags inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   707
    block4 := self getBlockForCompilingStartupCFileWith: compilerPath, compilerFlags inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   708
    block5 := self getBlockForCreatingSymbolicLinksToTheLibrariesIn: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   709
    block6 := self getBlockForLinkingLibrariesToTheApplicationIn: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   710
    block7 := self getBlockForCreatingSymbolicLinksToTheResourcesIn: dir.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   711
dd37d7763def initial checkin
tz
parents:
diff changeset
   712
    priority := Processor userBackgroundPriority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   713
    task := block0 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   714
    task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   715
    [
dd37d7763def initial checkin
tz
parents:
diff changeset
   716
        task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   717
        [
dd37d7763def initial checkin
tz
parents:
diff changeset
   718
            task := block1 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   719
            task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   720
            [
dd37d7763def initial checkin
tz
parents:
diff changeset
   721
                task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   722
                [
dd37d7763def initial checkin
tz
parents:
diff changeset
   723
                    task := block2 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   724
                    task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   725
                    [
dd37d7763def initial checkin
tz
parents:
diff changeset
   726
                        task isNil ifTrue:
dd37d7763def initial checkin
tz
parents:
diff changeset
   727
                        [
dd37d7763def initial checkin
tz
parents:
diff changeset
   728
                            task := block3 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   729
                            task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   730
                            [
dd37d7763def initial checkin
tz
parents:
diff changeset
   731
                                task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   732
                                [
dd37d7763def initial checkin
tz
parents:
diff changeset
   733
                                    task := block4 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   734
                                    task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   735
                                    [
dd37d7763def initial checkin
tz
parents:
diff changeset
   736
                                        task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   737
                                        [
dd37d7763def initial checkin
tz
parents:
diff changeset
   738
                                            task := block5 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   739
                                            task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   740
                                            [
dd37d7763def initial checkin
tz
parents:
diff changeset
   741
                                                task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   742
                                                [
dd37d7763def initial checkin
tz
parents:
diff changeset
   743
                                                    task := block6 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   744
                                                    task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   745
                                                    [
dd37d7763def initial checkin
tz
parents:
diff changeset
   746
                                                        task isNil ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   747
                                                        [
dd37d7763def initial checkin
tz
parents:
diff changeset
   748
                                                            task := block7 forkAt: priority.
dd37d7763def initial checkin
tz
parents:
diff changeset
   749
                                                            task addExitAction: 
dd37d7763def initial checkin
tz
parents:
diff changeset
   750
                                                            [
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   751
                                                                task isNil 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   752
                                                                    ifTrue: [self inform: 'Application build.' asBoldText]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   753
                                                                    ifFalse: [self informTargetBuildingFailed].
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   754
                                                                Display beep.
dd37d7763def initial checkin
tz
parents:
diff changeset
   755
                                                            ]   
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   756
                                                        ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   757
                                                    ]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   758
                                                ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   759
                                            ]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   760
                                        ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   761
                                    ]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   762
                                ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   763
                            ]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   764
                        ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   765
                    ]           
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   766
                ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   767
            ]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   768
        ] ifFalse: [self informTargetBuildingFailed]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   769
    ]
dd37d7763def initial checkin
tz
parents:
diff changeset
   770
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   771
dd37d7763def initial checkin
tz
parents:
diff changeset
   772
doDefineApplicationLinkDefines
dd37d7763def initial checkin
tz
parents:
diff changeset
   773
    "opens a dialog for defining the application defines"
dd37d7763def initial checkin
tz
parents:
diff changeset
   774
dd37d7763def initial checkin
tz
parents:
diff changeset
   775
    |box|
dd37d7763def initial checkin
tz
parents:
diff changeset
   776
    box := EnterBox new.
dd37d7763def initial checkin
tz
parents:
diff changeset
   777
    box label: 'Application Link Defines'.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   778
    box initialText: (aspects at: #applicationLinkDefines) value.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   779
    box showAtPointer.
dd37d7763def initial checkin
tz
parents:
diff changeset
   780
    box accepted
dd37d7763def initial checkin
tz
parents:
diff changeset
   781
    ifTrue:
dd37d7763def initial checkin
tz
parents:
diff changeset
   782
    [
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   783
        (aspects at: #applicationLinkDefines) value: box contents
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   784
    ].
dd37d7763def initial checkin
tz
parents:
diff changeset
   785
    box destroy
dd37d7763def initial checkin
tz
parents:
diff changeset
   786
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   787
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   788
doLink
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   789
    "links the application"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   790
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   791
    |dir block priority|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   792
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   793
    task notNil ifTrue: [self warn: 'There is already a build running!!'].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   794
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   795
    self inform: 'Starting building of application...' asBoldText.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   796
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   797
    (dir := self getTargetDirectory) isNil 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   798
        ifTrue: [^self warn: 'Could not create application directory!!'].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   799
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   800
    shellView directory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   801
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   802
    block := self getBlockForLinkingLibrariesToTheApplicationIn: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   803
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   804
    priority := Processor userBackgroundPriority.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   805
    task := block forkAt: priority.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   806
    task addExitAction: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   807
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   808
        task isNil 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   809
            ifTrue: [self inform: 'Application build.' asBoldText]
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   810
            ifFalse:[self informTargetBuildingFailed].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   811
        Display beep.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   812
    ]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   813
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   814
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   815
doSelectCFile: whichFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   816
    "opens a FileSelectionBrowser in order to select C-file"
dd37d7763def initial checkin
tz
parents:
diff changeset
   817
dd37d7763def initial checkin
tz
parents:
diff changeset
   818
    |currentFile selectedFile|
dd37d7763def initial checkin
tz
parents:
diff changeset
   819
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   820
    currentFile := aspects at: whichFile asLowercaseFirst asSymbol.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   821
dd37d7763def initial checkin
tz
parents:
diff changeset
   822
    ((selectedFile := FileSelectionBrowser
dd37d7763def initial checkin
tz
parents:
diff changeset
   823
        request: 'Select Your ', whichFile, ' File' 
dd37d7763def initial checkin
tz
parents:
diff changeset
   824
        fileName: currentFile value
dd37d7763def initial checkin
tz
parents:
diff changeset
   825
        withFileFilters: #('*.c')) notNil and:
dd37d7763def initial checkin
tz
parents:
diff changeset
   826
    [selectedFile asFilename exists and: [selectedFile asFilename isDirectory not]]) 
dd37d7763def initial checkin
tz
parents:
diff changeset
   827
        ifTrue: [currentFile value: selectedFile]
dd37d7763def initial checkin
tz
parents:
diff changeset
   828
dd37d7763def initial checkin
tz
parents:
diff changeset
   829
dd37d7763def initial checkin
tz
parents:
diff changeset
   830
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   831
dd37d7763def initial checkin
tz
parents:
diff changeset
   832
doSelectDirectory: whichDir
dd37d7763def initial checkin
tz
parents:
diff changeset
   833
    "opens a FileSelectionBrowser in order to select directory"
dd37d7763def initial checkin
tz
parents:
diff changeset
   834
dd37d7763def initial checkin
tz
parents:
diff changeset
   835
    |currentDir selectedDir|
dd37d7763def initial checkin
tz
parents:
diff changeset
   836
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   837
    currentDir := aspects at: (whichDir asLowercaseFirst, 'Directory') asSymbol.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   838
dd37d7763def initial checkin
tz
parents:
diff changeset
   839
    ((selectedDir := FileSelectionBrowser
dd37d7763def initial checkin
tz
parents:
diff changeset
   840
        request: 'Select Your ', whichDir, ' Directory' 
dd37d7763def initial checkin
tz
parents:
diff changeset
   841
        fileName: nil 
dd37d7763def initial checkin
tz
parents:
diff changeset
   842
        inDirectory: currentDir value
dd37d7763def initial checkin
tz
parents:
diff changeset
   843
        withFileFilters: #('*.*o')) notNil and:
dd37d7763def initial checkin
tz
parents:
diff changeset
   844
    [selectedDir asFilename exists and: [selectedDir asFilename isDirectory]]) 
dd37d7763def initial checkin
tz
parents:
diff changeset
   845
        ifTrue: [currentDir value: selectedDir. shellView executeCommand: 'cd ', selectedDir]
dd37d7763def initial checkin
tz
parents:
diff changeset
   846
dd37d7763def initial checkin
tz
parents:
diff changeset
   847
dd37d7763def initial checkin
tz
parents:
diff changeset
   848
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   849
dd37d7763def initial checkin
tz
parents:
diff changeset
   850
doSelectLibrary: whichFile
dd37d7763def initial checkin
tz
parents:
diff changeset
   851
    "opens a FileSelectionBrowser in order to select library"
dd37d7763def initial checkin
tz
parents:
diff changeset
   852
dd37d7763def initial checkin
tz
parents:
diff changeset
   853
    |currentFile selectedFile|
dd37d7763def initial checkin
tz
parents:
diff changeset
   854
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   855
    currentFile := aspects at: whichFile asLowercaseFirst asSymbol.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   856
dd37d7763def initial checkin
tz
parents:
diff changeset
   857
    ((selectedFile := FileSelectionBrowser
dd37d7763def initial checkin
tz
parents:
diff changeset
   858
        request: 'Select Your ', whichFile, ' File' 
dd37d7763def initial checkin
tz
parents:
diff changeset
   859
        fileName: currentFile value
dd37d7763def initial checkin
tz
parents:
diff changeset
   860
        withFileFilters: #('*.*o' '*.a')) notNil and:
dd37d7763def initial checkin
tz
parents:
diff changeset
   861
    [selectedFile asFilename exists and: [selectedFile asFilename isDirectory not]]) 
dd37d7763def initial checkin
tz
parents:
diff changeset
   862
        ifTrue: [currentFile value: selectedFile]
dd37d7763def initial checkin
tz
parents:
diff changeset
   863
dd37d7763def initial checkin
tz
parents:
diff changeset
   864
dd37d7763def initial checkin
tz
parents:
diff changeset
   865
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   866
dd37d7763def initial checkin
tz
parents:
diff changeset
   867
doStart
dd37d7763def initial checkin
tz
parents:
diff changeset
   868
    "starts the build application"
dd37d7763def initial checkin
tz
parents:
diff changeset
   869
dd37d7763def initial checkin
tz
parents:
diff changeset
   870
    |dir|
dd37d7763def initial checkin
tz
parents:
diff changeset
   871
    self doStop.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   872
    (dir := self getTargetDirectory) isNil 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   873
        ifTrue: [^self warn: 'Application directory does not exists!!'].
dd37d7763def initial checkin
tz
parents:
diff changeset
   874
dd37d7763def initial checkin
tz
parents:
diff changeset
   875
    shellView directory: dir.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   876
    shellView executeCommand: (aspects at: #applicationName) value.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   877
dd37d7763def initial checkin
tz
parents:
diff changeset
   878
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   879
dd37d7763def initial checkin
tz
parents:
diff changeset
   880
doStop
dd37d7763def initial checkin
tz
parents:
diff changeset
   881
    "terminates the task of the current build"
dd37d7763def initial checkin
tz
parents:
diff changeset
   882
dd37d7763def initial checkin
tz
parents:
diff changeset
   883
    task notNil ifTrue: [task removeAllExitActions. task terminate].
dd37d7763def initial checkin
tz
parents:
diff changeset
   884
    task := nil.
dd37d7763def initial checkin
tz
parents:
diff changeset
   885
    shellView executeCommand: 'clear'.
dd37d7763def initial checkin
tz
parents:
diff changeset
   886
    self inform: ''
dd37d7763def initial checkin
tz
parents:
diff changeset
   887
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   888
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   889
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   890
executeCommand: aCommand inDirectory: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   891
    "executes aCommand in directory dir; put aCommand and the result into the shell view"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   892
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   893
    |outStream|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   894
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   895
    shellView directory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   896
    shellView append: shellView getDirectoryTextString, ' ', aCommand.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   897
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   898
    outStream:= PipeStream readingFrom: aCommand errorDisposition:#inline inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   899
    [      
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   900
        outStream canReadWithoutBlocking
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   901
        ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   902
        [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   903
            outStream readWait.
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
   904
            shellView append: (Text string: (outStream upTo: Character cr) color: Color red).
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   905
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   906
    ] doWhile:[outStream atEnd not].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   907
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   908
    outStream close
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   909
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   910
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   911
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   912
inform: aString
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   913
    "outputs aString via shell view as information"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   914
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   915
    shellView commandInputField contents: aString
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   916
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   917
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   918
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   919
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   920
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   921
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   922
informTargetBuildingFailed
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   923
    "informs that something went wrong"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   924
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
   925
    self inform: 'Application building failed.' asBoldText.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   926
    task := nil
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   927
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
   928
dd37d7763def initial checkin
tz
parents:
diff changeset
   929
!ApplicationBuilder methodsFor:'aspects'!
dd37d7763def initial checkin
tz
parents:
diff changeset
   930
dd37d7763def initial checkin
tz
parents:
diff changeset
   931
aspectFor:aKey
dd37d7763def initial checkin
tz
parents:
diff changeset
   932
    "returns an aspect at aKey"
dd37d7763def initial checkin
tz
parents:
diff changeset
   933
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   934
    ^aspects at: aKey ifAbsent: [super aspectFor:aKey]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   935
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   936
dd37d7763def initial checkin
tz
parents:
diff changeset
   937
aspectsAt: aKey putFirst: anObject
dd37d7763def initial checkin
tz
parents:
diff changeset
   938
    "puts firstly anObject as ValueHolder at aKey and returns it"
dd37d7763def initial checkin
tz
parents:
diff changeset
   939
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   940
    ^aspects at: aKey ifAbsent: [aspects at: aKey put: anObject asValue]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   941
dd37d7763def initial checkin
tz
parents:
diff changeset
   942
dd37d7763def initial checkin
tz
parents:
diff changeset
   943
dd37d7763def initial checkin
tz
parents:
diff changeset
   944
dd37d7763def initial checkin
tz
parents:
diff changeset
   945
dd37d7763def initial checkin
tz
parents:
diff changeset
   946
dd37d7763def initial checkin
tz
parents:
diff changeset
   947
dd37d7763def initial checkin
tz
parents:
diff changeset
   948
dd37d7763def initial checkin
tz
parents:
diff changeset
   949
dd37d7763def initial checkin
tz
parents:
diff changeset
   950
dd37d7763def initial checkin
tz
parents:
diff changeset
   951
dd37d7763def initial checkin
tz
parents:
diff changeset
   952
dd37d7763def initial checkin
tz
parents:
diff changeset
   953
dd37d7763def initial checkin
tz
parents:
diff changeset
   954
dd37d7763def initial checkin
tz
parents:
diff changeset
   955
dd37d7763def initial checkin
tz
parents:
diff changeset
   956
dd37d7763def initial checkin
tz
parents:
diff changeset
   957
dd37d7763def initial checkin
tz
parents:
diff changeset
   958
dd37d7763def initial checkin
tz
parents:
diff changeset
   959
dd37d7763def initial checkin
tz
parents:
diff changeset
   960
dd37d7763def initial checkin
tz
parents:
diff changeset
   961
dd37d7763def initial checkin
tz
parents:
diff changeset
   962
dd37d7763def initial checkin
tz
parents:
diff changeset
   963
dd37d7763def initial checkin
tz
parents:
diff changeset
   964
dd37d7763def initial checkin
tz
parents:
diff changeset
   965
dd37d7763def initial checkin
tz
parents:
diff changeset
   966
dd37d7763def initial checkin
tz
parents:
diff changeset
   967
dd37d7763def initial checkin
tz
parents:
diff changeset
   968
dd37d7763def initial checkin
tz
parents:
diff changeset
   969
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   970
dd37d7763def initial checkin
tz
parents:
diff changeset
   971
shellView
dd37d7763def initial checkin
tz
parents:
diff changeset
   972
    "returns a shell view"
dd37d7763def initial checkin
tz
parents:
diff changeset
   973
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   974
    shellView isNil ifTrue: [shellView := ShellView new. shellView directory: (aspects at: #topDirectory) value]. 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   975
    ^shellView 
dd37d7763def initial checkin
tz
parents:
diff changeset
   976
dd37d7763def initial checkin
tz
parents:
diff changeset
   977
dd37d7763def initial checkin
tz
parents:
diff changeset
   978
dd37d7763def initial checkin
tz
parents:
diff changeset
   979
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
   980
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   981
!ApplicationBuilder methodsFor:'building blocks'!
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   982
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   983
getBlockForClobberingTargetDirectory: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   984
    "returns the block for clobbering the target directory of the application"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   985
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   986
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   987
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   988
        self inform: 'Clobbering the target directory...'.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   989
        self executeCommand: 'rm -r *' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   990
        task := nil
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   991
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   992
dd37d7763def initial checkin
tz
parents:
diff changeset
   993
!
dd37d7763def initial checkin
tz
parents:
diff changeset
   994
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   995
getBlockForCompilingModulListFileWith: compilerPathAndFlags inDirectory: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   996
    "returns the block for compiling the C-file with the list of the module names"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
   997
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   998
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
   999
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1000
        |command|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1001
        self inform: 'Starting compilation of the modules init file...'.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1002
        command := compilerPathAndFlags , ' -c -fPIC -O6 -fomit-frame-pointer -m486 -DDEBUG -Di386 modulList.c'.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1003
        self executeCommand: command inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1004
        (dir asFilename construct: 'modulList.o') exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1005
            ifTrue:  [task := nil]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1006
            ifFalse: [self warn:'Could not compile the modules file!!']
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1007
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1008
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1009
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1010
getBlockForCompilingStartupCFileWith: compilerPathAndFlags inDirectory: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1011
    "returns the block for compiling the startup file with passing startup class, startup selector, configuration string, and build date"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1012
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1013
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1014
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1015
        |startUpClass cls startUpSelector startupFile command|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1016
        ((aspects at: #startupCFile) value asFilename) exists  
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1017
        ifFalse: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1018
        [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1019
            self warn: 'Defined startup C-file not found!!'
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1020
        ]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1021
        ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1022
        [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1023
            self inform: 'Starting compilation of the startup C-file...'.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1024
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1025
            startUpClass    := ((aspects at: #startupMessage) value upTo: $ ) asSymbol.
1559
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1026
            (cls := Smalltalk at: startUpClass) isNil 
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1027
            ifTrue: 
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1028
            [
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1029
                self warn: 'Defined class not found in system!!'
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1030
            ]
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1031
            ifFalse:
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1032
            [
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1033
                startUpSelector := ((aspects at: #startupMessage) value copy reverse upTo: $ ) reverse asSymbol.
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1034
                (cls respondsTo: startUpSelector) 
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1035
                ifFalse: 
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1036
                [
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1037
                    self warn: 'Defined class does not respond to the defined selector!!'
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1038
                ]
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1039
                ifTrue:
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1040
                [
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1041
                    startupFile     := (aspects at: #startupCFile) value asFilename.
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1042
                    startupFile copyTo: (startupFile := dir asFilename construct: (aspects at: #startupCFile) value asFilename baseName).
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1043
                    command := compilerPathAndFlags , ' -o main.o -c -O -O6 -fomit-frame-pointer -m486 -DDEBUG -Di386 ',
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1044
                        '-DSTARTUP_CLASS="\"',        startUpClass, '\"" ',
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1045
                        '-DSTARTUP_SELECTOR="\"',     startUpSelector, '\"" ',
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1046
                        '-DCONFIGURATION_STRING="\"', (aspects at: #configuration)   value, '\"" ',
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1047
                        '-DBUILD_DATE="\"',           (aspects at: #buildDate)       value, '\"" ',
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1048
                        startupFile name.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1049
1559
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1050
                    self executeCommand: command inDirectory: dir
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1051
                ]
088d6bc754c9 consider failures
tz
parents: 1558
diff changeset
  1052
            ]
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1053
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1054
        (dir asFilename construct: 'main.o') exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1055
            ifTrue:  [task := nil]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1056
            ifFalse: [self warn:'Could not compile the startup C-file!!']
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1057
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1058
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1059
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1060
getBlockForCreatingSymbolicLinksToTheLibrariesIn: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1061
    "returns the block for creating the symbolic links to the libraries"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1062
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1063
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1064
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1065
        self inform: 'Starting defining of the symbolic links to the libraries...'.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1066
        self getLibraryFileNames value do:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1067
        [:libPath|       
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1068
            self executeCommand: 'ln -s ', libPath , ' ', libPath asFilename head inDirectory: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1069
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1070
        task := nil. 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1071
    ]
dd37d7763def initial checkin
tz
parents:
diff changeset
  1072
dd37d7763def initial checkin
tz
parents:
diff changeset
  1073
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1074
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1075
getBlockForCreatingSymbolicLinksToTheResourcesIn: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1076
    "returns the block for creating the symbolic links to the resources"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1077
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1078
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1079
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1080
        self inform: 'Starting linking of the resources...'.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1081
        (aspects at: #linkRCFiles) value
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1082
        ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1083
        [                
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1084
            self executeCommand: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1085
                'ln -s ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1086
                ((aspects at: #libraryDirectory) value asFilename construct: '*.rc') name, ' ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1087
                (aspects at: #targetDirectory) value inDirectory: dir.
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1088
            self executeCommand: 
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1089
                'ln -s ', 
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1090
                ((aspects at: #libraryDirectory) value asFilename construct: 'patches') name, ' ', 
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1091
                (aspects at: #targetDirectory) value inDirectory: dir.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1092
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1093
        (aspects at: #linkResources) value
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1094
        ifTrue:
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1095
        [ 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1096
            self executeCommand: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1097
                'cp -r -d ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1098
                ((aspects at: #libraryDirectory) value asFilename construct: 'resources') name, ' ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1099
                (aspects at: #targetDirectory) value inDirectory: dir.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1100
        ].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1101
        (aspects at: #linkSources) value
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1102
        ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1103
        [ 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1104
            self executeCommand: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1105
                'cp -r -d ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1106
                ((aspects at: #libraryDirectory) value asFilename construct: 'source') name, ' ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1107
                (aspects at: #targetDirectory) value inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1108
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1109
        (aspects at: #linkBitmaps) value
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1110
        ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1111
        [ 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1112
            self executeCommand: 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1113
                'cp -r -d ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1114
                ((aspects at: #libraryDirectory) value asFilename construct: 'bitmaps') name, ' ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1115
                (aspects at: #targetDirectory) value inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1116
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1117
        task := nil.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1118
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1119
dd37d7763def initial checkin
tz
parents:
diff changeset
  1120
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1121
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1122
getBlockForGeneratingCFileWithModulesIn: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1123
    "returns the block for generating a C-file with the modules in directory dir"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1124
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1125
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1126
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1127
        |selectionOfLibraries|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1128
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1129
        self inform: 'Starting generation of the C-file with modules...'.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1130
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1131
        selectionOfLibraries := self getModuleNames.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1132
        self executeCommand: 'echo "#include <stcIntern.h>" > modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1133
        self executeCommand: 'echo "typedef void (*vf)();" >> modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1134
        selectionOfLibraries do:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1135
        [:lib|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1136
            self executeCommand: 'echo "extern void _', lib, '_Init();" >> modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1137
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1138
        self executeCommand: 'echo "static vf modules[] = {" >> modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1139
        selectionOfLibraries do:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1140
        [:lib|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1141
            self executeCommand: 'echo "_', lib, '_Init," >> modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1142
        ].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1143
        self executeCommand: 'echo "(vf)0};" >> modulList.c' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1144
        self executeCommand: 'echo "vf *__modules__ = modules;" >> modulList.c' inDirectory: dir.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1145
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1146
        (dir asFilename construct: 'modulList.c') exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1147
            ifTrue:  [task := nil]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1148
            ifFalse: [self warn:'Could not generate the C-file with libraries!!']
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1149
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1150
dd37d7763def initial checkin
tz
parents:
diff changeset
  1151
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1152
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1153
getBlockForGeneratingHFileWithSymbolsIn: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1154
    "returns the block for generating a H-file with the symbols in directory dir"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1155
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1156
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1157
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1158
        |symbolsFile realInc|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1159
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1160
        self inform: 'Starting generation of the h-file with symbols...'.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1161
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1162
        ByteCodeCompiler stcCompilationIncludes asArrayOfSubstrings do:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1163
        [:inc|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1164
            realInc := inc readStream.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1165
            realInc upTo: $/. 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1166
            realInc := '/', realInc upToEnd.      
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1167
            (symbolsFile := realInc asFilename construct: 'symbols.stc') exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1168
            ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1169
            [   
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1170
                self executeCommand: 'echo "char *__symbols[] = {" > symbols.h' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1171
                self executeCommand: 'sed ''s/^/"/'' < ', symbolsFile name,' | sed ''s/$/",/'' | sed ''s/\\/\\\\/g'' >> symbols.h' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1172
                self executeCommand: 'echo "0 };" >> symbols.h' inDirectory: dir.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1173
            ]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1174
        ].
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1175
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1176
        (dir asFilename construct: 'symbols.h') exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1177
            ifTrue:  [task := nil]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1178
            ifFalse: [self warn:'Could not generate the h-file with symbols!!']
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1179
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1180
dd37d7763def initial checkin
tz
parents:
diff changeset
  1181
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1182
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1183
getBlockForLinkingLibrariesToTheApplicationIn: dir
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1184
    "returns the block for linking the libraries to the application"
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1185
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1186
    ^
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1187
    [
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1188
        |appName command|
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1189
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1190
        self inform: 'Starting linking of the libraries to the application...'.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1191
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1192
        appName := (aspects at: #applicationName) value.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1193
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1194
        command := ByteCodeCompiler ccPath,
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1195
            ' ', (aspects at: #applicationLinkDefines) value, ' ',
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1196
            ' -o ' , appName,
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1197
            ' modulList.o main.o ', 
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1198
            ((aspects at: #libraryDirectory) value asFilename construct: 'librun', ObjectFileLoader sharedLibraryExtension) name, ' ',
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1199
            ((self getLibraryFileNames, (aspects at: #systemLibraries) value) asStringCollection asStringWith: $ ).
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1200
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1201
        self executeCommand: command inDirectory: dir.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1202
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1203
        (dir asFilename construct: (aspects at: #applicationName) value) exists
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1204
            ifTrue:  [task := nil]
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1205
            ifFalse: [self warn:'Could not build the application!!']
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1206
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1207
dd37d7763def initial checkin
tz
parents:
diff changeset
  1208
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
  1209
dd37d7763def initial checkin
tz
parents:
diff changeset
  1210
!ApplicationBuilder methodsFor:'change & update'!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1211
dd37d7763def initial checkin
tz
parents:
diff changeset
  1212
update:something with:aParameter from:changedObject
dd37d7763def initial checkin
tz
parents:
diff changeset
  1213
    "updates the combo boxes with the library names and the module names"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1214
dd37d7763def initial checkin
tz
parents:
diff changeset
  1215
    |library libraries|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1216
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1217
    changedObject == (aspects at: #stxLibrary ifAbsent: nil) 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1218
    ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1219
    [                
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1220
        libraries := (aspects at: #stxLibraries) value.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1221
        (aspects at: #stxLibrary) value size = 0 ifTrue: [libraries remove: (aspects at: #oldSTXLibrary) value ifAbsent: nil].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1222
        (aspects at: #oldSTXLibrary) value: (library := (aspects at: #stxLibrary) value).
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1223
    ].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1224
    changedObject == (aspects at: #systemLibrary) 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1225
    ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1226
    [                
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1227
        libraries := (aspects at: #systemLibraries) value.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1228
        (aspects at: #systemLibrary) value size = 0 ifTrue: [libraries remove: (aspects at: #oldSystemLibrary) value ifAbsent: nil].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1229
        (aspects at: #oldSystemLibrary) value: (library := (aspects at: #systemLibrary) value).
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1230
    ].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1231
    changedObject == (aspects at: #userLibrary ifAbsent: nil) 
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1232
    ifTrue: 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1233
    [                
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1234
        libraries := (aspects at: #userLibraries) value.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1235
        (aspects at: #userLibrary) value size = 0 ifTrue: [libraries remove: (aspects at: #oldUserLibrary) value ifAbsent: nil].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1236
        (aspects at: #oldUserLibrary) value: (library := (aspects at: #userLibrary) value).
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1237
    ].
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1238
    (libraries includes: library) not & library notEmpty
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1239
    ifTrue:
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1240
    [   
1630
0303b4b6a5ce grammar
tz
parents: 1564
diff changeset
  1241
        libraries add: library
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1242
    ]
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1243
dd37d7763def initial checkin
tz
parents:
diff changeset
  1244
dd37d7763def initial checkin
tz
parents:
diff changeset
  1245
dd37d7763def initial checkin
tz
parents:
diff changeset
  1246
dd37d7763def initial checkin
tz
parents:
diff changeset
  1247
dd37d7763def initial checkin
tz
parents:
diff changeset
  1248
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
  1249
dd37d7763def initial checkin
tz
parents:
diff changeset
  1250
!ApplicationBuilder methodsFor:'initialization'!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1251
dd37d7763def initial checkin
tz
parents:
diff changeset
  1252
initialize
dd37d7763def initial checkin
tz
parents:
diff changeset
  1253
    "initialize all aspects"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1254
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1255
    |topDir|
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1256
dd37d7763def initial checkin
tz
parents:
diff changeset
  1257
    super initialize.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1258
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1259
    aspects := self class aspects.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1260
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1261
    topDir := (Filename currentDirectory asFilename construct:'..') construct:'..'.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1262
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1263
    self aspectsAt: #topDirectory      putFirst: topDir pathName.
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1264
    aspects     at: #systemLibraries   put: ObjectFileLoader searchedLibraries asValue.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1265
    (aspects at: #systemLibrary        put: ((aspects at: #systemLibraries) value at: 1 ifAbsent: '') asValue) addDependent: self.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1266
    self aspectsAt: #oldSystemLibrary putFirst: (aspects at: #systemLibrary) value.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1267
    self aspectsAt: #configuration     putFirst: Smalltalk configuration.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1268
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1269
    self class ~~ ApplicationBuilder ifTrue: [^self].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1270
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1271
    self aspectsAt: #applicationName   putFirst: 'application'.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1272
    self aspectsAt: #startupMessage    putFirst: 'Smalltalk start'.
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1273
    self aspectsAt: #startupCFile      putFirst: (topDir construct: 'librun/main.c') pathName.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1274
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1275
    self aspectsAt: #targetDirectory   putFirst: ((topDir construct: 'projects') construct:'application') pathName.
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1276
    self aspectsAt: #libraryDirectory  putFirst: ((topDir construct: 'projects') construct:'smalltalk') pathName.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1277
dd37d7763def initial checkin
tz
parents:
diff changeset
  1278
    self aspectsAt: #stxLibraries      putFirst: 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1279
        (ObjectMemory binaryModuleInfo collect: [:binMoInfo| (binMoInfo name copy reverse upTo: $ ) reverse]) asSortedCollection.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1280
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1281
    self aspectsAt: #userLibraries     putFirst: OrderedCollection new.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1282
1564
9a5fedae64f2 path fixes
Claus Gittinger <cg@exept.de>
parents: 1559
diff changeset
  1283
    aspects at:     #buildDate         put:      (Date today printString, ' ', Time now printString) asValue.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1284
dd37d7763def initial checkin
tz
parents:
diff changeset
  1285
    self aspectsAt: #linkRCFiles       putFirst: true.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1286
    self aspectsAt: #linkResources     putFirst: true.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1287
    self aspectsAt: #linkSources       putFirst: true.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1288
    self aspectsAt: #linkBitmaps       putFirst: true.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1289
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1290
    (aspects at: #stxLibrary           put: ((aspects at: #stxLibraries)    value at: 1 ifAbsent: '') asValue) addDependent: self.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1291
    (aspects at: #userLibrary          put: ((aspects at: #userLibraries)   value at: 1 ifAbsent: '') asValue) addDependent: self.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1292
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1293
    self aspectsAt: #oldSTXLibrary    putFirst: (aspects at: #stxLibrary) value.
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1294
    self aspectsAt: #oldUserLibrary   putFirst: (aspects at: #userLibrary) value.
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1295
dd37d7763def initial checkin
tz
parents:
diff changeset
  1296
    self aspectsAt: #applicationLinkDefines putFirst: '-L/usr/X11/lib -Llib -Lbinary -L. -L/usr/local/lib -L/usr/lib -L/lib -lm -ldl -lXext -lX11'.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1297
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
  1298
dd37d7763def initial checkin
tz
parents:
diff changeset
  1299
!ApplicationBuilder methodsFor:'queries'!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1300
dd37d7763def initial checkin
tz
parents:
diff changeset
  1301
getCompilerFlags
dd37d7763def initial checkin
tz
parents:
diff changeset
  1302
    "returns the defines of the OS and the compiler flags of the ByteCodeCompiler"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1303
dd37d7763def initial checkin
tz
parents:
diff changeset
  1304
    |compilerFlags|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1305
dd37d7763def initial checkin
tz
parents:
diff changeset
  1306
    compilerFlags := OperatingSystem getOSDefine ? ''.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1307
dd37d7763def initial checkin
tz
parents:
diff changeset
  1308
    ByteCodeCompiler stcCompilationDefines notNil 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1309
        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler stcCompilationDefines].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1310
    ByteCodeCompiler stcCompilationIncludes notNil 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1311
        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler stcCompilationIncludes].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1312
    ByteCodeCompiler ccCompilationOptions notNil 
dd37d7763def initial checkin
tz
parents:
diff changeset
  1313
        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler ccCompilationOptions].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1314
dd37d7763def initial checkin
tz
parents:
diff changeset
  1315
    ^compilerFlags
dd37d7763def initial checkin
tz
parents:
diff changeset
  1316
dd37d7763def initial checkin
tz
parents:
diff changeset
  1317
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1318
dd37d7763def initial checkin
tz
parents:
diff changeset
  1319
getLibraryFileNames
dd37d7763def initial checkin
tz
parents:
diff changeset
  1320
    "returns the complete file names of the system and the user libraries"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1321
dd37d7763def initial checkin
tz
parents:
diff changeset
  1322
    |libraryFileNames|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1323
dd37d7763def initial checkin
tz
parents:
diff changeset
  1324
    libraryFileNames := OrderedCollection new.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1325
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1326
    (aspects at: #stxLibraries) value do:
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1327
    [:lib|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1328
        |abbrevLib libPath|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1329
        abbrevLib  := lib.
dd37d7763def initial checkin
tz
parents:
diff changeset
  1330
        lib = 'GLXWorkstation'   ifTrue: [abbrevLib := 'GLXWorkstat'].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1331
        lib = 'XWorkstation'     ifTrue: [abbrevLib := 'XWorkstat'  ].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1332
        lib = 'ObjectFileLoader' ifTrue: [abbrevLib := 'ObjFLoader' ].
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1333
        (libPath := (aspects at: #libraryDirectory) value asFilename construct: abbrevLib, ObjectFileLoader sharedLibraryExtension) exists
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1334
            ifTrue: [libraryFileNames add: libPath name]
dd37d7763def initial checkin
tz
parents:
diff changeset
  1335
    ].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1336
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1337
    ^libraryFileNames, (aspects at: #userLibraries) value
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1338
dd37d7763def initial checkin
tz
parents:
diff changeset
  1339
!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1340
dd37d7763def initial checkin
tz
parents:
diff changeset
  1341
getModuleNames
dd37d7763def initial checkin
tz
parents:
diff changeset
  1342
    "returns the module names of the system and the user libraries"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1343
dd37d7763def initial checkin
tz
parents:
diff changeset
  1344
    |moduleNames|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1345
dd37d7763def initial checkin
tz
parents:
diff changeset
  1346
    moduleNames := OrderedCollection new.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1347
    (aspects at: #userLibraries) value do:
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1348
    [:lib|
dd37d7763def initial checkin
tz
parents:
diff changeset
  1349
        lib asFilename exists ifTrue: [moduleNames add: (lib asFilename baseName upTo: $.)]
dd37d7763def initial checkin
tz
parents:
diff changeset
  1350
    ].
dd37d7763def initial checkin
tz
parents:
diff changeset
  1351
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1352
    ^(aspects at: #stxLibraries) value, moduleNames
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1353
!
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1354
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1355
getTargetDirectory
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1356
    "returns the directory of the application; if not present, create it"
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1357
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1358
    |targetDirectory|
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1359
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1360
    (targetDirectory := (aspects at: #targetDirectory) value asFilename) exists ifFalse:[targetDirectory makeDirectory].   
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1361
    (targetDirectory isReadable and:[targetDirectory isWritable]) ifFalse: [^nil].
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1362
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1363
    ^targetDirectory name
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1364
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1365
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1366
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
  1367
13256
d1d0f1f71f47 class: ApplicationBuilder
Claus Gittinger <cg@exept.de>
parents: 7087
diff changeset
  1368
!ApplicationBuilder methodsFor:'startup & release'!
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1369
dd37d7763def initial checkin
tz
parents:
diff changeset
  1370
closeRequest
dd37d7763def initial checkin
tz
parents:
diff changeset
  1371
    "close request; before closing stop the running build, then release the dependents of all aspects"
dd37d7763def initial checkin
tz
parents:
diff changeset
  1372
dd37d7763def initial checkin
tz
parents:
diff changeset
  1373
    self doStop.
1525
ba7044e40ba0 revised
tz
parents: 1518
diff changeset
  1374
    aspects do: [:aspect| aspect release].
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1375
dd37d7763def initial checkin
tz
parents:
diff changeset
  1376
    super closeRequest
dd37d7763def initial checkin
tz
parents:
diff changeset
  1377
1558
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1378
!
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1379
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1380
postBuildWith:aBuilder
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1381
    "sets target directory for the shell view"
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1382
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1383
    shellView directory: self getTargetDirectory.
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1384
c4ed1badfc13 revised
tz
parents: 1551
diff changeset
  1385
    ^super postBuildWith:aBuilder
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1386
! !
dd37d7763def initial checkin
tz
parents:
diff changeset
  1387
dd37d7763def initial checkin
tz
parents:
diff changeset
  1388
!ApplicationBuilder class methodsFor:'documentation'!
dd37d7763def initial checkin
tz
parents:
diff changeset
  1389
dd37d7763def initial checkin
tz
parents:
diff changeset
  1390
version
13256
d1d0f1f71f47 class: ApplicationBuilder
Claus Gittinger <cg@exept.de>
parents: 7087
diff changeset
  1391
    ^ '$Header: /cvs/stx/stx/libtool/ApplicationBuilder.st,v 1.10 2013-07-30 05:57:02 cg Exp $'
1518
dd37d7763def initial checkin
tz
parents:
diff changeset
  1392
! !
13256
d1d0f1f71f47 class: ApplicationBuilder
Claus Gittinger <cg@exept.de>
parents: 7087
diff changeset
  1393