diff -r cccc239c8833 -r c2de4aaa2670 compiler/ctu_dart_compiler.st --- a/compiler/ctu_dart_compiler.st Thu Oct 30 21:22:38 2014 +0000 +++ b/compiler/ctu_dart_compiler.st Tue Nov 04 00:17:12 2014 +0000 @@ -1,4 +1,4 @@ -"{ Package: 'jv:dart/compiler' }" +"{ Package: 'ctu:dart/compiler' }" LibraryDefinition subclass:#ctu_dart_compiler instanceVariableNames:'' @@ -18,6 +18,20 @@ ) ! +mandatoryPreRequisites + "list packages which are mandatory as a prerequisite. + This are packages containing superclasses of my classes and classes which + are extended by myself. + They are mandatory, because we need these packages as a prerequisite for loading and compiling. + This method is generated automatically, + by searching along the inheritance chain of all of my classes." + + ^ #( + #'stx:goodies/petitparser' "PPCompositeParser - superclass of Dart::Parser" + #'stx:libbasic' "Error - superclass of Dart::ParserError" + ) +! + preRequisites "list all required packages. This list can be maintained manually or (better) generated and @@ -29,6 +43,29 @@ ^ #( #'stx:libbasic' "LibraryDefinition - superclass of jv_dart " ) +! + +referencedPreRequisites + "list packages which are a prerequisite, because they contain + classes which are referenced by my classes. + We do not need these packages as a prerequisite for loading or compiling. + This method is generated automatically, + by searching all classes (and their packages) which are referenced by my classes." + + ^ #( + #'stx:libcomp' "ParserFlags - referenced by Dart::ScannerBase>>initialize" + ) +! + +subProjects + "list packages which are known as subprojects. + The generated makefile will enter those and make there as well. + However: they are not forced to be loaded when a package is loaded; + for those, redefine requiredPrerequisites." + + ^ #( + #'ctu:dart/compiler/tests' + ) ! ! !ctu_dart_compiler class methodsFor:'description - contents'! @@ -41,21 +78,19 @@ ^ #( " or ( attributes...) in load order" - #'ctu_dart_compiler' + #'Dart::Parser' + #'Dart::ParserError' #'Dart::ScannerBase' - #'Dart::Parser' + #'ctu_dart_compiler' #'Dart::Scanner' - #'Dart::ScannerTests' - #'Dart::ParserError' + #'Dart::ScannerError' #'Dart::SyntaxError' - #'Dart::ScannerError' - (#'Dart::ParserTests' autoload) ) ! extensionMethodNames - "lists the extension methods which are to be included in the project. - Entries are 2-element array literals, consisting of class-name and selector." + "list class/selector pairs of extensions. + A correponding method with real names must be present in my concrete subclasses" ^ #( ) @@ -107,3 +142,4 @@ ^ '$Changeset: $' ! ! +