--- a/ProjectDefinition.st Thu Jan 19 11:46:00 2012 +0000
+++ b/ProjectDefinition.st Sun Jan 22 23:07:15 2012 +0000
@@ -2766,6 +2766,7 @@
!ProjectDefinition class methodsFor:'file generation'!
apspecFilename
+ "/ for linux
^ 'autopackage/default.apspec'
"Created: / 21-12-2010 / 09:43:13 / cg"
@@ -2783,18 +2784,19 @@
'Makefile' #'generate_makefile'
'bc.mak' #'generate_bc_dot_mak'
'abbrev.stc' #'generate_abbrev_dot_stc'
- 'bmake.bat' #'generate_bmake_dot_mak'
- 'vcmake.bat' #'generate_vcmake_dot_mak'
- 'lcmake.bat' #'generate_lcmake_dot_mak'
+ 'bmake.bat' #'generate_bmake_dot_mak' "/ for bcc32
+ 'vcmake.bat' #'generate_vcmake_dot_mak' "/ for msvc
+ 'lcmake.bat' #'generate_lcmake_dot_mak' "/ for lcc
).
dict
- at:self rcFilename put:#'generate_packageName_dot_rc';
- at:self apspecFilename put:#'generate_autopackage_default_dot_apspec'.
+ at:self rcFilename put:#'generate_packageName_dot_rc'; "/ for windows
+ at:self apspecFilename put:#'generate_autopackage_default_dot_apspec'. "/ for linux
^ dict.
"Modified: / 21-12-2010 / 11:02:02 / cg"
+ "Modified (comment): / 21-01-2012 / 12:32:45 / cg"
!
fileNamesToGenerate
@@ -2843,11 +2845,13 @@
^ self generate_loadAll
].
(filename = 'autopackage/default.apspec' or:[filename = self apspecFilename]) ifTrue:[
+ "/ for linux
^ self generate_autopackage_default_dot_apspec
].
self error:('File "%1" not appropriate (not generated) for this type of project.' bindWith:filename)
"Modified: / 21-12-2010 / 11:01:10 / cg"
+ "Modified (format): / 21-01-2012 / 12:31:40 / cg"
!
generateFile:filename in: directory
@@ -2912,6 +2916,7 @@
!
generate_abbrev_dot_stc
+ "/ for stc: provides abbreviations and namespace information
self checkIfClassesArePresent.
^ String
@@ -2970,6 +2975,10 @@
s cr.
].
+ s nextPutLine:'# automagically generated by the project definition'.
+ s nextPutLine:'# this file is needed for stc to be able to compile modules independently.'.
+ s nextPutLine:'# it provides information about a classes filename, category and especially namespace.'.
+
self allClassNames do:addEntry.
self namesAndAttributesIn:(self additionalClassNamesAndAttributes) do: [:nm :attr |
(attr isEmptyOrNil or:[(attr includes:#autoload) not]) ifTrue:[
@@ -2979,13 +2988,14 @@
]
"
+ stx_libbasic generate_abbrev_dot_stc
DapasXProject generate_abbrev_dot_stc
DapasX_Datenbasis generate_abbrev_dot_stc
bosch_dapasx_interactiver_editor generate_abbrev_dot_stc
"
"Created: / 09-08-2006 / 11:24:39 / fm"
- "Modified: / 20-10-2006 / 16:31:08 / cg"
+ "Modified: / 21-01-2012 / 12:42:57 / cg"
!
generate_autopackage_default_dot_apspec
@@ -4754,7 +4764,7 @@
|abbrevs|
AccessLock critical:[
- |mustRead file|
+ |mustRead file myPackageDirectory|
AbbrevDictionary isNil ifTrue:[
AbbrevDictionary := WeakIdentityDictionary new.
@@ -4764,23 +4774,27 @@
abbrevs := AbbrevDictionary at:self ifAbsent:[ mustRead := true. Dictionary new ].
mustRead ifTrue:[
- file := self packageDirectory / 'abbrev.stc'.
- file exists ifTrue: [
- file readingFileDo:[:stream |
- Smalltalk
- withAbbreviationsFromStream:stream
- do:[:nm :fn :pkg :cat :sz|
- abbrevs at: nm put: (AbbrevEntry new className:nm fileName:fn category:cat numClassInstVars:sz)
- ]
- ]
- ].
- ].
+ myPackageDirectory := self packageDirectory.
+ myPackageDirectory isNil ifTrue:[
+ ] ifFalse:[
+ file := myPackageDirectory / 'abbrev.stc'.
+ file exists ifTrue: [
+ file readingFileDo:[:stream |
+ Smalltalk
+ withAbbreviationsFromStream:stream
+ do:[:nm :fn :pkg :cat :sz|
+ abbrevs at: nm put: (AbbrevEntry new className:nm fileName:fn category:cat numClassInstVars:sz)
+ ]
+ ]
+ ].
+ ].
+ ].
].
^abbrevs
"Created: / 06-03-2011 / 18:25:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 18-08-2011 / 14:24:15 / cg"
+ "Modified: / 20-01-2012 / 15:42:47 / cg"
!
additionalClassAttributesFor: aClass
@@ -6146,7 +6160,17 @@
!
allClasses
- ^ self allClassNames collect:[:nm | Smalltalk classNamed:nm]
+ ^ self allClassNames
+ collect:[:nm |
+ |cls|
+
+ cls := Smalltalk classNamed:nm.
+ cls isNil ifTrue:[
+ Transcript showCR:('%1: failed to autoload class %2' bindWith:self name with:nm)
+ ].
+ cls
+ ]
+ thenSelect:[:cls | cls notNil ].
"Created: / 06-08-2011 / 15:47:36 / cg"
!
@@ -6742,15 +6766,15 @@
!ProjectDefinition class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.377 2012/01/09 10:09:44 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.380 2012/01/22 10:08:54 cg Exp $'
!
version_CVS
- ^ 'Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.377 2012/01/09 10:09:44 cg Exp '
+ ^ 'Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.380 2012/01/22 10:08:54 cg Exp '
!
version_SVN
- ^ '$Id: ProjectDefinition.st 10761 2012-01-19 11:46:00Z vranyj1 $'
+ ^ '$Id: ProjectDefinition.st 10763 2012-01-22 23:07:15Z vranyj1 $'
! !
ProjectDefinition initialize!
@@ -6758,3 +6782,4 @@
+