--- a/ApplicationBuilder.st Sat Apr 18 15:58:57 1998 +0200
+++ b/ApplicationBuilder.st Sat Apr 18 16:17:45 1998 +0200
@@ -32,10 +32,9 @@
6. Link the libraries to the application
7. Define the symbolic links to the resources
-
[instance variables:]
task <Process> task of the running build
- shellView <ShellView> shell view for outputing the build results
+ shellView <ShellView> shell view for outputting the build results
[instance class variables:]
aspects <IdentityDictionary> aspects of the settings
@@ -64,6 +63,11 @@
aspects: anIdentityDictionary
aspects := anIdentityDictionary
+!
+
+label
+
+ ^'Application Builder (experimental)'
! !
!ApplicationBuilder class methodsFor:'help specs'!
@@ -104,6 +108,12 @@
#link
'Starts the process of linking the application.'
+#selectPath
+'Opens a dialog for choosing the name of the file/path.'
+
+#sourceDirectory
+'Source directory of ST/X.'
+
#start
'Start the build application.'
@@ -175,11 +185,11 @@
#window:
#(#WindowSpec
#name: 'Application Builder'
- #layout: #(#LayoutFrame 428 0 301 0 927 0 760 0)
+ #layout: #(#LayoutFrame 79 0 285 0 578 0 744 0)
#label: 'Application Builder'
#min: #(#Point 420 220)
#max: #(#Point 1152 900)
- #bounds: #(#Rectangle 428 301 928 761)
+ #bounds: #(#Rectangle 79 285 579 745)
#menu: #menu
#usePreferredExtent: false
)
@@ -256,6 +266,7 @@
#(#ActionButtonSpec
#name: 'targetDirectoryButton'
#layout: #(#LayoutFrame 4 0 109 0 147 0 133 0)
+ #activeHelpKey: #selectPath
#label: 'Target Directory:'
#model: #doSelectDirectory:
#actionValue: 'Target'
@@ -269,6 +280,7 @@
#(#ActionButtonSpec
#name: 'topDirectoryButton'
#layout: #(#LayoutFrame 4 0 133 0 147 0 157 0)
+ #activeHelpKey: #selectPath
#label: 'Top Directory:'
#model: #doSelectDirectory:
#actionValue: 'Top'
@@ -282,6 +294,7 @@
#(#ActionButtonSpec
#name: 'libraryDirectoryButton'
#layout: #(#LayoutFrame 4 0 157 0 147 0 181 0)
+ #activeHelpKey: #selectPath
#label: 'Library Directory:'
#model: #doSelectDirectory:
#actionValue: 'Library'
@@ -295,6 +308,7 @@
#(#ActionButtonSpec
#name: 'startupCFileButton'
#layout: #(#LayoutFrame 4 0 181 0 147 0 205 0)
+ #activeHelpKey: #selectPath
#label: 'Startup C-File:'
#model: #doSelectCFile:
#actionValue: 'StartupCFile'
@@ -326,6 +340,7 @@
#(#ActionButtonSpec
#name: 'systemLibrariesButton'
#layout: #(#LayoutFrame 4 0 239 0 147 0 263 0)
+ #activeHelpKey: #selectPath
#label: 'System Libraries:'
#model: #doSelectLibrary:
#actionValue: 'SystemLibrary'
@@ -342,6 +357,7 @@
#(#ActionButtonSpec
#name: 'userLibrariesButton'
#layout: #(#LayoutFrame 4 0 263 0 147 0 287 0)
+ #activeHelpKey: #selectPath
#label: 'User Libraries:'
#model: #doSelectLibrary:
#actionValue: 'UserLibrary'
@@ -499,12 +515,32 @@
#(
#(#MenuItem
+ #label: 'About'
+ #labelImage: #(#ResourceRetriever nil #menuIcon)
+ #submenuChannel: #menuAbout
+ )
+ #(#MenuItem
#label: 'File'
#submenu:
#(#Menu
#(
#(#MenuItem
+ #label: 'Exit'
+ #value: #closeRequest
+ #activeHelpKey: #fileExit
+ )
+ ) nil
+ nil
+ )
+ )
+ #(#MenuItem
+ #label: 'Application'
+ #submenu:
+ #(#Menu
+
+ #(
+ #(#MenuItem
#label: 'Build'
#value: #doBuild
#activeHelpKey: #build
@@ -515,6 +551,9 @@
#activeHelpKey: #link
)
#(#MenuItem
+ #label: '-'
+ )
+ #(#MenuItem
#label: 'Stop'
#value: #doStop
#activeHelpKey: #stop
@@ -524,14 +563,6 @@
#value: #doStart
#activeHelpKey: #start
)
- #(#MenuItem
- #label: '-'
- )
- #(#MenuItem
- #label: 'Exit'
- #value: #closeRequest
- #activeHelpKey: #fileExit
- )
) nil
nil
)
@@ -839,8 +870,7 @@
ifTrue:
[
outStream readWait.
- shellView append: shellView getDirectoryTextString, ' ',
- (Text string: (outStream upTo: Character cr) color: Color red).
+ shellView append: (Text string: (outStream upTo: Character cr) color: Color red).
].
] doWhile:[outStream atEnd not].
@@ -1010,6 +1040,10 @@
'ln -s ',
((aspects at: #libraryDirectory) value asFilename construct: '*.rc') name, ' ',
(aspects at: #targetDirectory) value inDirectory: dir.
+ self executeCommand:
+ 'ln -s ',
+ ((aspects at: #libraryDirectory) value asFilename construct: 'patches') name, ' ',
+ (aspects at: #targetDirectory) value inDirectory: dir.
].
(aspects at: #linkResources) value
ifTrue:
@@ -1156,8 +1190,7 @@
(aspects at: #userLibrary) value size = 0 ifTrue: [libraries remove: (aspects at: #oldUserLibrary) value ifAbsent: nil].
(aspects at: #oldUserLibrary) value: (library := (aspects at: #userLibrary) value).
].
- (libraries includes: library) not &
- library notEmpty
+ (libraries includes: library) not & library notEmpty
ifTrue:
[
libraries addFirst: library
@@ -1183,12 +1216,12 @@
homeDir := Filename homeDirectory asFilename.
self aspectsAt: #topDirectory putFirst: (homeDir construct: 'stx') name.
- self aspectsAt: #systemLibraries putFirst: ObjectFileLoader searchedLibraries.
+ aspects at: #systemLibraries put: ObjectFileLoader searchedLibraries asValue.
(aspects at: #systemLibrary put: ((aspects at: #systemLibraries) value at: 1 ifAbsent: '') asValue) addDependent: self.
self aspectsAt: #oldSystemLibrary putFirst: (aspects at: #systemLibrary) value.
self aspectsAt: #configuration putFirst: Smalltalk configuration.
- self class ~~ ApplicationBuilder ifTrue: [^nil].
+ self class ~~ ApplicationBuilder ifTrue: [^self].
self aspectsAt: #applicationName putFirst: 'application'.
self aspectsAt: #startupMessage putFirst: 'Smalltalk start'.
@@ -1297,10 +1330,18 @@
super closeRequest
+!
+
+postBuildWith:aBuilder
+ "sets target directory for the shell view"
+
+ shellView directory: self getTargetDirectory.
+
+ ^super postBuildWith:aBuilder
! !
!ApplicationBuilder class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/ApplicationBuilder.st,v 1.3 1998-04-16 22:05:50 tz Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/ApplicationBuilder.st,v 1.4 1998-04-18 14:17:07 tz Exp $'
! !