2007-07-21 Stephen Compall * kernel/PkgLoader.st: Support implied by in XML package descriptions, unless otherwise specified as a different type of file. --- orig/doc/gst.texi +++ mod/doc/gst.texi @@ -1783,7 +1783,7 @@ need not be loaded once this one is.}} --> BLOX - BloxBasic.st @@ -1791,21 +1791,18 @@ BloxText.st BloxExtend.st Blox.st - ../browser/test.st - - - Blox.st - BloxBasic.st - BloxWidgets.st - BloxText.st - BloxExtend.st @end example Other tags exist: @table @code address@hidden file +Identifies a file that should be distributed with the package, but will +not be filed in by the package loader unless also listed as a address@hidden Examples include Smalltalk code filed in by other means, +text files, graphic files, or anything. + @item module Loads a dynamic shared object and calls the @code{gst_initModule} function in it. Modules can register functions so that Smalltalk --- orig/kernel/PkgLoader.st +++ mod/kernel/PkgLoader.st @@ -1057,11 +1057,25 @@ cdata := nil ]. ]. + self distributeFreeFileIns. ] ensure: [ stack isEmpty ifFalse: [ self error: 'error in packages file: unmatched start tags', stack asArray printString ] ] +! + +distributeFreeFileIns + "Add all fileIns, including those in tests, not in `self allFiles' + to my distributed files." + | fileSet addNewFile | + fileSet := Set withAll: self allFiles. + addNewFile := [:each | + (fileSet includes: each) ifFalse: + [fileSet add: each. + self files add: each]]. + self fileIns do: addNewFile. + test isNil ifFalse: [test fileIns do: addNewFile]. ! ! !Kernel.DisabledPackage methodsFor: 'accessing'!