application builder stuff moved to a separate class
authortz
Mon, 30 Mar 1998 23:21:48 +0200
changeset 1515 293aa84c6b80
parent 1514 faec78b0e588
child 1516 91b6f64b56e6
application builder stuff moved to a separate class
NewLauncher.st
--- a/NewLauncher.st	Mon Mar 30 15:58:14 1998 +0200
+++ b/NewLauncher.st	Mon Mar 30 23:21:48 1998 +0200
@@ -158,345 +158,6 @@
     "Modified: / 13.2.1998 / 21:25:20 / stefan"
 !
 
-windowSpecForApplicationSettings
-    "this window spec was automatically generated by the ST/X UIPainter"
-
-    "do not manually edit this - the painter/builder may not be able to
-     handle the specification if its corrupted."
-
-    "
-     UIPainter new openOnClass:NewLauncher andSelector:#windowSpecForApplicationSettings
-     NewLauncher new openInterface:#windowSpecForApplicationSettings
-    "
-
-    <resource: #canvas>
-
-    ^
-     
-       #(#FullSpec
-          #window: 
-           #(#WindowSpec
-              #name: 'Build Application'
-              #layout: #(#LayoutFrame 57 0 172 0 476 0 763 0)
-              #label: 'Build Application'
-              #min: #(#Point 420 220)
-              #max: #(#Point 1152 900)
-              #bounds: #(#Rectangle 57 172 477 764)
-              #usePreferredExtent: false
-          )
-          #component: 
-           #(#SpecCollection
-              #collection: 
-               #(
-                 #(#LabelSpec
-                    #name: 'applicationNameLabel'
-                    #layout: #(#AlignmentOrigin 147 0 15 0 1 0.5)
-                    #label: 'Application Name:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'applicationNameInputField'
-                    #layout: #(#LayoutFrame 150 0 4 0 -4 1 26 0)
-                    #model: #valueOfApplicationName
-                )
-                 #(#LabelSpec
-                    #name: 'startupClassLabel'
-                    #layout: #(#AlignmentOrigin 147 0 39 0 1 0.5)
-                    #label: 'Startup Class:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'startupClassInputField'
-                    #layout: #(#LayoutFrame 150 0 28 0 -4 1.0 50 0)
-                    #model: #valueOfStartupClass
-                )
-                 #(#LabelSpec
-                    #name: 'startupSelectorLabel'
-                    #layout: #(#AlignmentOrigin 147 0 63 0 1 0.5)
-                    #label: 'Startup Selector:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'startupSelectorInputField'
-                    #layout: #(#LayoutFrame 150 0 52 0 -4 1.0 74 0)
-                    #model: #valueOfStartupSelector
-                )
-                 #(#LabelSpec
-                    #name: 'buildDateLabel'
-                    #layout: #(#AlignmentOrigin 147 0 87 0 1 0.5)
-                    #label: 'Build Date:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'buildDateInputField'
-                    #layout: #(#LayoutFrame 150 0 76 0 -4 1.0 98 0)
-                    #model: #valueOfBuildDate
-                )
-                 #(#LabelSpec
-                    #name: 'configurationLabel'
-                    #layout: #(#LayoutFrame 21 0 100 0 147 0 122 0)
-                    #label: 'Configuration:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'configurationInputField'
-                    #layout: #(#LayoutFrame 150 0 100 0 -4 1.0 122 0)
-                    #model: #valueOfConfiguration
-                )
-                 #(#DividerSpec
-                    #name: 'divider1'
-                    #layout: #(#LayoutFrame 0 0 124 0 0 1 127 0)
-                    #orientation: #horizontal
-                )
-                 #(#ActionButtonSpec
-                    #name: 'targetDirectoryButton'
-                    #layout: #(#LayoutFrame 4 0 130 0 147 0 154 0)
-                    #label: 'Target Directory:'
-                    #model: #selectDirectory:
-                    #actionValue: 'Target'
-                )
-                 #(#InputFieldSpec
-                    #name: 'targetDirectoryInputField'
-                    #layout: #(#LayoutFrame 150 0 130 0 -4 1.0 152 0)
-                    #model: #valueOfTargetDirectory
-                )
-                 #(#ActionButtonSpec
-                    #name: 'topDirectoryButton'
-                    #layout: #(#LayoutFrame 4 0 154 0 147 0 178 0)
-                    #label: 'Top Directory:'
-                    #model: #selectDirectory:
-                    #actionValue: 'Top'
-                )
-                 #(#InputFieldSpec
-                    #name: 'topDirectoryInputField'
-                    #layout: #(#LayoutFrame 150 0 154 0 -4 1.0 176 0)
-                    #model: #valueOfTopDirectory
-                )
-                 #(#ActionButtonSpec
-                    #name: 'libraryDirectoryButton'
-                    #layout: #(#LayoutFrame 4 0 178 0 147 0 202 0)
-                    #label: 'Library Directory:'
-                    #model: #selectDirectory:
-                    #actionValue: 'Library'
-                )
-                 #(#InputFieldSpec
-                    #name: 'libraryDirectoryInputField'
-                    #layout: #(#LayoutFrame 150 0 178 0 -4 1.0 200 0)
-                    #model: #valueOfLibraryDirectory
-                )
-                 #(#ActionButtonSpec
-                    #name: 'startupModuleButton'
-                    #layout: #(#LayoutFrame 4 0 202 0 147 0 226 0)
-                    #label: 'Startup Module:'
-                    #model: #selectCFile:
-                    #actionValue: 'StartupModule'
-                )
-                 #(#InputFieldSpec
-                    #name: 'startupModulInputField'
-                    #layout: #(#LayoutFrame 150 0 202 0 -4 1.0 224 0)
-                    #model: #valueOfStartupModule
-                )
-                 #(#DividerSpec
-                    #name: 'divider2'
-                    #layout: #(#LayoutFrame 0 0 226 0 0 1 229 0)
-                    #orientation: #horizontal
-                )
-                 #(#LabelSpec
-                    #name: 'systemsLibrariesLabel'
-                    #layout: #(#AlignmentOrigin 147 0 243 0 1 0.5)
-                    #label: 'System Libraries:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'systemLibrariesInputField'
-                    #layout: #(#LayoutFrame 150 0 232 0 -4 1.0 254 0)
-                    #model: #valueOfSystemLibraries
-                )
-                 #(#LabelSpec
-                    #name: 'userLibrariesLabel'
-                    #layout: #(#AlignmentOrigin 147 0 266 0 1 0.5)
-                    #label: 'User Libraries:'
-                    #adjust: #right
-                )
-                 #(#InputFieldSpec
-                    #name: 'userLibrariesInputField'
-                    #layout: #(#LayoutFrame 150 0 256 0 -4 1.0 278 0)
-                    #model: #valueOfUserLibraries
-                )
-                 #(#LabelSpec
-                    #name: 'stxLibrarieslabel'
-                    #layout: #(#AlignmentOrigin 147 0 290 0 1 0.5)
-                    #label: 'ST/X Libraries:'
-                    #adjust: #right
-                )
-                 #(#FramedBoxSpec
-                    #name: 'framedBox1'
-                    #layout: #(#LayoutFrame 0 0 307 0 0 0.5 -44 1)
-                    #component: 
-                     #(#SpecCollection
-                        #collection: 
-                         #(
-                           #(#CheckBoxSpec
-                              #name: 'librunCheckBox'
-                              #layout: #(#LayoutFrame 10 0 20 0 10 0.5 42 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'librun'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libbasicCheckBox'
-                              #layout: #(#LayoutFrame 10 0 43 0 10 0.5 65 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'libbasic'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libbasic2CheckBox'
-                              #layout: #(#LayoutFrame 10 0 66 0 10 0.5 88 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'libbasic2'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libbasic3CheckBox'
-                              #layout: #(#LayoutFrame 10 0 89 0 10 1 111 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'libbasic3'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libviewCheckBox'
-                              #layout: #(#LayoutFrame 10 0 112 0 10 1 134 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'libview'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libview2CheckBox'
-                              #layout: #(#LayoutFrame 10 0 135 0 10 1 157 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'libview2'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'ObjectFileLoaderCheckBox'
-                              #layout: #(#LayoutFrame 10 0 158 0 10 1 182 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'ObjectFileLoader'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'GLXWorkstationCheckBox'
-                              #layout: #(#LayoutFrame 10 0 206 0 10 1 228 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'GLXWorkstation'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'XWorkstationCheckBox'
-                              #layout: #(#LayoutFrame 10 0 183 0 10 1 205 0)
-                              #initiallyDisabled: true
-                              #model: #valueOfDefaultLibs
-                              #label: 'XWorkstation'
-                          )
-                        )
-                    )
-                    #label: 'Basics'
-                    #labelPosition: #topLeft
-                )
-                 #(#FramedBoxSpec
-                    #name: 'framedBox2'
-                    #layout: #(#LayoutFrame 0 0.5 307 0 0 1 407 0)
-                    #component: 
-                     #(#SpecCollection
-                        #collection: 
-                         #(
-                           #(#CheckBoxSpec
-                              #name: 'libwidgCheckBox'
-                              #layout: #(#LayoutFrame 10 0 20 0 10 1 42 0)
-                              #model: #valueOfLibwidg
-                              #label: 'libwidg'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libwidg2CheckBox'
-                              #layout: #(#LayoutFrame 10 0 43 0 10 1 65 0)
-                              #model: #valueOfLibwidg2
-                              #label: 'libwidg2'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libuiCheckBox'
-                              #layout: #(#LayoutFrame 10 0 66 0 10 1 88 0)
-                              #model: #valueOfLibui
-                              #label: 'libui'
-                          )
-                        )
-                    )
-                    #label: 'UI'
-                    #labelPosition: #topLeft
-                )
-                 #(#FramedBoxSpec
-                    #name: 'framedBox3'
-                    #layout: #(#LayoutFrame 0 0.5 407 0 0 1 -43 1)
-                    #component: 
-                     #(#SpecCollection
-                        #collection: 
-                         #(
-                           #(#CheckBoxSpec
-                              #name: 'libtoolCheckBox'
-                              #layout: #(#LayoutFrame 10 0 20 0 10 1 42 0)
-                              #model: #valueOfLibtool
-                              #label: 'libtool'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libtool2CheckBox'
-                              #layout: #(#LayoutFrame 10 0 43 0 10 1 65 0)
-                              #model: #valueOfLibtool2
-                              #label: 'libtool2'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libcompCheckBox'
-                              #layout: #(#LayoutFrame 10 0 66 0 10 1 88 0)
-                              #model: #valueOfLibcomp
-                              #label: 'libcomp'
-                          )
-                           #(#CheckBoxSpec
-                              #name: 'libhtmlCheckBox'
-                              #layout: #(#LayoutFrame 10 0 89 0 10 1 111 0)
-                              #model: #valueOfLibhtml
-                              #label: 'libhtml'
-                          )
-                        )
-                    )
-                    #label: 'Optional'
-                    #labelPosition: #topLeft
-                )
-                 #(#ViewSpec
-                    #name: 'view'
-                    #layout: #(#LayoutFrame 0 0.0 -44 1 0 1.0 0 1.0)
-                    #component: 
-                     #(#SpecCollection
-                        #collection: 
-                         #(
-                           #(#ActionButtonSpec
-                              #name: 'buildButton'
-                              #layout: #(#LayoutFrame 10 0.5 10 0 -10 1 -10 1)
-                              #label: 'Build'
-                              #model: #buildApplication
-                          )
-                           #(#ActionButtonSpec
-                              #name: 'closeButton'
-                              #layout: #(#LayoutFrame 10 0.0 10 0 -10 0.5 -10 1)
-                              #label: 'Close'
-                              #model: #accept
-                          )
-                        )
-                    )
-                )
-              )
-          )
-      )
-!
-
 windowSpecForStyleSettings
     "this window spec was automatically generated by the ST/X UIPainter"
 
@@ -1446,10 +1107,11 @@
 !NewLauncher class methodsFor:'menu specs'!
 
 menu
-    "this window spec was automatically generated by the ST/X MenuEditor"
-
-    "do not manually edit this - the builder may not be able to
-     handle the specification if its corrupted."
+    "This resource specification was automatically generated
+     by the MenuEditor of ST/X."
+
+    "Do not manually edit this!! If it is corrupted,
+     the MenuEditor may not be able to read the specification."
 
     "
      MenuEditor new openOnClass:NewLauncher andSelector:#menu
@@ -1503,7 +1165,8 @@
                           #label: 'Build Application...'
                           #translateLabel: true
                           #isVisible: #applicationBuilderPresent
-                          #value: #openApplicationBuilder
+                          #value: #openApplication:
+                          #argument: 'ApplicationBuilder'
                       )
                        #(#MenuItem
                           #label: '-'
@@ -2276,8 +1939,6 @@
           ) nil
           nil
       )
-
-    "Modified: / 26.2.1998 / 00:22:16 / cg"
 !
 
 menuAbout
@@ -2703,292 +2364,6 @@
         constantNamed:#'NewLauncher startWorkspaceIcon'
         ifAbsentPut:[(Depth4Image new) width: 28; height: 28; photometric:(#palette); bitsPerSample:(#(4 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@@@@@@@@@@@M7]7]7]7]7]7]7]@@@@@@@@@@@@@@@@@@@@@@@QDQDQDQDQDQDQ@0@@@AUPUUUUAUAQDQDB@@@@EUAUUUTE@@DQDPH@@@@P@E@@UPUPTQDQ@ @@@AAPTEAUAUAQDQDB@@@@D@AP@ETET@DQDPH@@@@QDQDQDQDQEADQ@ @@@ADQDQDQDQDTPQDB@@@@DQDQDQDQDQQDDPH@@@@QDQDQDQDQEDDQ@ @@@ADQDQDQDQDQEADB@@@@DQDQDQDQDQDTDPH@@@@QDQDQDQDQDQDQ@0@@@@@@@@@@@@@@@@@@@@@@L"H"H"H"H"H"H0L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@L@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@L@@@@@@@@@@b'); colorMap:((OrderedCollection new add:(Color black); add:(Color white); add:(Color grey:66.9978); add:(Color grey:49.9962); add:(Color red:100.0 green:0.0 blue:0.0); add:(Color red:0.0 green:100.0 blue:0.0); add:(Color red:0.0 green:0.0 blue:100.0); add:(Color red:0.0 green:100.0 blue:100.0); add:(Color red:100.0 green:100.0 blue:0.0); add:(Color red:100.0 green:0.0 blue:100.0); add:(Color red:49.9962 green:0.0 blue:0.0); add:(Color red:0.0 green:49.9962 blue:0.0); add:(Color red:0.0 green:0.0 blue:49.9962); add:(Color red:0.0 green:49.9962 blue:49.9962); add:(Color red:49.9962 green:49.9962 blue:0.0); add:(Color red:49.9962 green:0.0 blue:49.9962); yourself)); mask:((Depth1Image new) width: 28; height: 28; photometric:(#blackIs0); bitsPerSample:(#(1 )); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'????@O???0C???<@????@O???0C???<@????@O???0C???<@????@O???0C???<@????@O???0C???<@????@O???0C???<@????@@@@@@@@@@@@ //R@HJJT BB"%P@$(/X@IJJU@BR"%H@[O)R@@@a'); yourself); yourself]! !
 
-!NewLauncher methodsFor:'actions - application building'!
-
-buildApplication
-
-    |dir compilerPath compilerFlags|
-
-    Transcript cr; showCR: 'Starting building of application...' asBoldText.
-
-    (dir := self getApplicationDirectory) isNil 
-        ifTrue: [^self warn: 'Could not create application directory!!'].
-    (compilerPath := ByteCodeCompiler ccPath, ' ') isNil 
-        ifTrue: [^self warn:'Define first a system compiler!!'].
-    compilerFlags := self getCompilerFlags.
-
-    (self generateHFileWithSymbolsIn: dir) isNil 
-        ifTrue: [^self warn:'Could not generate h-file with symbols!!'].
-    (self generateCFileWithModulesIn: dir) isNil 
-        ifTrue: [^self warn:'Could not generate c-file with libraries!!'].
-
-    (self compileModulListFileWith: compilerPath, compilerFlags inDirectory: dir)
-        isNil ifTrue: [^self warn:'Could not compile modules file!!'].
-    (self compileStartupFileWith: compilerPath, compilerFlags inDirectory: dir) 
-        isNil ifTrue: [^self warn:'Could not compile startup file!!'].
-
-    self defineSymbolicLinksToTheLibrariesIn: dir.
-    (self linkLibrariesToTheApplicationIn: dir) 
-        isNil ifTrue: [^self warn:'Could not build application!!'].
-
-    Transcript showCR: 'Application build.' asBoldText; cr.
-    Display beep.
-
-
-!
-
-compileModulListFileWith: ccPathAndFlags inDirectory: dir
-
-    |command|
-    command := ccPathAndFlags , ' -c -fPIC -O6 -fomit-frame-pointer -m486 -DDEBUG -Di386 modulList.c'.
-
-    Transcript cr; showCR: 'Starting compilation of modules init file...'.
-    self executeCommand: command inDirectory: dir.
-    Transcript showCR: 'Modules init file compiled.'; cr.
-
-    (dir asFilename construct: 'modulList.o') exists ifFalse: [^nil].
-
-
-!
-
-compileStartupFileWith: ccPathAndFlags inDirectory: dir
-
-    |startupFile command|
-
-    (startupFile := (aspects at: #valueOfStartupModule) value asFilename) exists  
-        ifFalse: [self warn: 'Startup Module not found!!'. ^nil].
-    startupFile copyTo: (startupFile := dir asFilename construct: (aspects at: #valueOfStartupModule) value asFilename baseName).
-    command := ccPathAndFlags , ' -o main.o -c -O -O6 -fomit-frame-pointer -m486 -DDEBUG -Di386 ',
-        '-DSTARTUP_CLASS="\"',        (aspects at: #valueOfStartupClass)    value, '\"" ',
-        '-DSTARTUP_SELECTOR="\"',     (aspects at: #valueOfStartupSelector) value, '\"" ',
-        '-DCONFIGURATION_STRING="\"', (aspects at: #valueOfConfiguration)   value, '\"" ',
-        '-DBUILD_DATE="\"',           (aspects at: #valueOfBuildDate)       value, '\"" ',
-        startupFile name.
-
-    Transcript cr; showCR: 'Starting compilation of startup file...'.
-    self executeCommand: command inDirectory: dir.
-    Transcript showCR: 'Startup file compiled.'; cr.
-
-    (dir asFilename construct: 'main.o') exists ifFalse: [^nil].
-
-
-
-!
-
-defineSymbolicLinksToTheLibrariesIn: dir
-
-    Transcript cr; showCR: 'Starting defining of symbolic links to the libraries...'.
-    self selectionOfLibraries value , (Array with: 'librun')do:
-    [:lib|
-        self executeCommand: 'ln -s ', ((aspects at: #valueOfLibraryDirectory) value asFilename construct: (lib, '.so ')) name , (lib, '.so') inDirectory: dir.
-    ].
-    Transcript showCR: 'Symbolic links to the libraries defined.'; cr.
-
-
-!
-
-executeCommand: aCommand inDirectory: dir
-
-    |outStream|
-    Transcript showCR: 
-        ' Execute: "', 
-        (Text string: aCommand emphasis: #italic), 
-        '" in directory: "', 
-        (Text string: dir emphasis: #italic),
-        '"'.
-
-    outStream:= PipeStream readingFrom: aCommand errorDisposition:#inline inDirectory: dir.
-    [      
-        outStream canReadWithoutBlocking
-        ifTrue:
-        [
-            outStream readWait.
-            Transcript showCR: (Text string: (outStream upTo: Character cr) color: Color red).
-        ].
-    ] doWhile:[outStream atEnd not].
-    outStream close
-
-
-
-
-
-!
-
-generateCFileWithModulesIn: dir
-
-    |selectionOfLibraries|
-    selectionOfLibraries := self selectionOfLibraries remove: #librun; yourself.
-    Transcript cr; showCR: 'Starting generation of c-file with modules...'.
-    self executeCommand: 'echo "#include <stcIntern.h>" > modulList.c' inDirectory: dir.
-    self executeCommand: 'echo "typedef void (*vf)();" >> modulList.c' inDirectory: dir.
-    selectionOfLibraries do:
-    [:lib|
-        self executeCommand: 'echo "extern void _', lib, '_Init();" >> modulList.c' inDirectory: dir.
-    ].
-    self executeCommand: 'echo "static vf modules[] = {" >> modulList.c' inDirectory: dir.
-    selectionOfLibraries do:
-    [:lib|
-        self executeCommand: 'echo "_', lib, '_Init," >> modulList.c' inDirectory: dir.
-    ].
-    self executeCommand: 'echo "(vf)0};" >> modulList.c' inDirectory: dir.
-    self executeCommand: 'echo "vf *__modules__ = modules;" >> modulList.c' inDirectory: dir.
-    Transcript showCR: 'C-file of modules generated.'; cr.
-
-    (dir asFilename construct: 'modulList.c') exists ifFalse: [^nil].
-!
-
-generateHFileWithSymbolsIn: dir
-
-    |symbolsFile realInc|
-    ByteCodeCompiler stcCompilationIncludes asArrayOfSubstrings do:
-    [:inc|
-        realInc := inc readStream.
-        realInc upTo: $/. 
-        realInc := '/', realInc upToEnd.      
-        (symbolsFile := realInc asFilename construct: 'symbols.stc') exists
-        ifTrue:
-        [   
-            Transcript cr; showCR: 'Starting generation of h-file with symbols...'.
-            self executeCommand: 'echo "char *__symbols[] = {" > symbols.h' inDirectory: dir.
-            self executeCommand: 'sed ''s/^/"/'' < ', symbolsFile name,' | sed ''s/$/",/'' | sed ''s/\\/\\\\/g'' >> symbols.h' inDirectory: dir.
-            self executeCommand: 'echo "0 };" >> symbols.h' inDirectory: dir.
-            Transcript showCR: 'H-file of symbols generated.'; cr.
-
-            (dir asFilename construct: 'symbols.h') exists ifTrue: [^self].
-        ]
-    ].
-    ^nil
-                                       
-!
-
-getApplicationDirectory
-
-    |appDir|
-    (appDir := (aspects at: #valueOfTargetDirectory) value asFilename) exists ifFalse:[appDir makeDirectory].   
-    (appDir isReadable and:[appDir isWritable]) ifFalse: [^nil].
-    ^appDir name
-!
-
-getCompilerFlags
-
-    |compilerFlags|
-    compilerFlags := OperatingSystem getOSDefine ? ''.
-    ByteCodeCompiler stcCompilationDefines notNil 
-        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler stcCompilationDefines].
-    ByteCodeCompiler stcCompilationIncludes notNil 
-        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler stcCompilationIncludes].
-    ByteCodeCompiler ccCompilationOptions notNil 
-        ifTrue:[compilerFlags := compilerFlags , ' ' , ByteCodeCompiler ccCompilationOptions].
-    ^compilerFlags
-!
-
-linkLibrariesToTheApplicationIn: dir
-
-    |appName libs command|
-
-    appName := (aspects at: #valueOfApplicationName) value.
-
-    libs := (self selectionOfLibraries value, #(librun)) collect: [:lib| ((aspects at: #valueOfLibraryDirectory) value asFilename construct: (lib, '.so ')) name].
-
-    command := ByteCodeCompiler ccPath, 
-        ' -L/usr/X11/lib -Llib -Lbinary -L. -L/usr/local/lib -L/usr/lib -L/lib ',
-        '-lm -ldl -lXext -lX11 ',
-        ' -o ' , appName,
-        ' modulList.o main.o ',
-        ((libs, (aspects at: #valueOfSystemLibraries) value asArrayOfSubstrings) asStringCollection asStringWith: $ ).
-
-    Transcript cr; showCR: 'Starting linking of libraries to the application...'.
-    self executeCommand: command inDirectory: dir.
-    Transcript showCR: 'Libraries to the application linked.'; cr.
-
-    (dir asFilename construct: appName) exists ifFalse: [^nil].
-
-
-
-!
-
-openApplicationBuilder
-
-    |homeDir|
-    #(valueOfLibcomp valueOfLibhtml valueOfLibtool valueOfLibtool2 valueOfLibui) do: 
-    [:libAspect|
-        self aspectsAt: libAspect putFirst: false
-    ].
-    #(valueOfLibwidg valueOfLibwidg2) do: 
-    [:libAspect|
-        self aspectsAt: libAspect putFirst: true
-    ].
-    homeDir := Filename homeDirectory asFilename.
-
-    self aspectsAt: #valueOfApplicationName  putFirst: 'application'.
-    self aspectsAt: #valueOfStartupClass     putFirst: 'Smalltalk'.
-    self aspectsAt: #valueOfStartupSelector  putFirst: 'start'.
-    self aspectsAt: #valueOfStartupModule    putFirst: (homeDir construct: 'stx/librun/main.c') name.
-    self aspectsAt: #valueOfTargetDirectory  putFirst: (homeDir construct: 'stx/projects/application') name.
-    self aspectsAt: #valueOfSystemLibraries  putFirst: '/usr/lib/libc.a ', (homeDir construct: 'stx/support/VGL/vogl/src/libvogl.a') name.
-    self aspectsAt: #valueOfLibraryDirectory putFirst: (homeDir construct: 'stx/projects/smalltalk') name.
-    self aspectsAt: #valueOfUserLibraries    putFirst:  "LibraryBuilder UserLibraries"''.
-    aspects at:     #valueOfBuildDate        put: Date today printString, ' ', Time now printString.
-    self aspectsAt: #valueOfConfiguration    putFirst: Smalltalk configuration.
-    self aspectsAt: #valueOfTopDirectory     putFirst: (homeDir construct: 'stx') name.
-
-    self openDialogInterface:#windowSpecForApplicationSettings.
-
-    "LibraryBuilder UserLibraries: self valueOfUserLibraries value"
-
-!
-
-selectCFile: whichFile
-
-    |currentFile selectedFile|
-
-    currentFile := aspects at: ('valueOf', whichFile) asSymbol.
-
-    ((selectedFile := FileSelectionBrowser
-        request: 'Select Your ', whichFile, ' File' 
-        fileName: currentFile value
-        inDirectory: currentFile value
-        withFileFilters: #('*.c')) notNil and:
-    [selectedFile asFilename exists and: [selectedFile asFilename isDirectory not]]) 
-        ifTrue: [currentFile value: selectedFile].
-
-!
-
-selectDirectory: whichDir
-
-    |currentDir selectedDir|
-
-    currentDir := aspects at: ('valueOf', whichDir, 'Directory') asSymbol.
-
-    ((selectedDir := FileSelectionBrowser
-        request: 'Select Your ', whichDir, ' Directory' 
-        fileName: nil 
-        inDirectory: currentDir value
-        withFileFilters: #('*.*o')) notNil and:
-    [selectedDir asFilename exists and: [selectedDir asFilename isDirectory]]) 
-        ifTrue: [currentDir value: selectedDir].
-
-!
-
-selectionOfLibraries
-
-    |selectionOfLibraries|
-
-    selectionOfLibraries := OrderedCollection new.
-
-    selectionOfLibraries addAll: #(librun libbasic libbasic2 libbasic3 libview libview2 ObjectFileLoader XWorkstation GLXWorkstation).
-
-    #(libwidg libwidg2 libui libtool libtool2 libcomp libhtml) do:
-    [:lib|
-        (aspects at: ('valueOf', lib asUppercaseFirst) asSymbol) value 
-            ifTrue: [selectionOfLibraries add: lib]
-    ].
-     
-    selectionOfLibraries addAll: (aspects at: #valueOfUserLibraries) value asArrayOfSubstrings.
-
-    ^selectionOfLibraries
-! !
-
 !NewLauncher methodsFor:'actions - classes'!
 
 browseAllBreakAndTracePoints
@@ -6395,9 +5770,7 @@
 !NewLauncher methodsFor:'aspects'!
 
 applicationBuilderPresent
-    ^ false asValue
-
-    "Created: / 5.2.1998 / 23:56:10 / cg"
+    ^ false
 !
 
 aspectFor:aKey
@@ -6405,12 +5778,6 @@
     ^self aspects at: aKey ifAbsent: [super aspectFor:aKey]
 !
 
-aspectsAt: aKey putFirst: anObject
-
-    self aspects at: aKey ifAbsent: [aspects at: aKey put: anObject asValue]
-
-!
-
 enableDangerousMenuItemsInRemoteLauncher
 
     |holder|
@@ -6435,15 +5802,6 @@
         AspectAdaptor new subject: self; forAspect: #settingsSelection)
     ].
     ^ holder
-!
-
-valueOfDefaultLibs
-
-    |holder|
-    (holder := builder bindingAt:#valueOfDefaultLibs) isNil ifTrue:[
-        builder aspectAt:#valueOfDefaultLibs put:(holder :=  true asValue).
-    ].
-    ^ holder
 ! !
 
 !NewLauncher methodsFor:'change & update'!
@@ -6730,11 +6088,6 @@
 
 !
 
-destroy
-
-self halt.
-!
-
 postOpenWith:aBuilder
     "increase my priority"
 
@@ -6843,5 +6196,5 @@
 !NewLauncher class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/NewLauncher.st,v 1.45 1998-02-26 19:05:29 tz Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/NewLauncher.st,v 1.46 1998-03-30 21:21:48 tz Exp $'
 ! !