ctu_smallruby.st
changeset 0 99e99c395d86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ctu_smallruby.st	Fri Mar 13 12:18:10 2015 +0000
@@ -0,0 +1,133 @@
+"{ Encoding: utf8 }"
+
+"{ Package: 'ctu:smallruby' }"
+
+"{ NameSpace: Smalltalk }"
+
+LibraryDefinition subclass:#ctu_smallruby
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'* Projects & Packages *'
+!
+
+
+!ctu_smallruby class methodsFor:'description'!
+
+excludedFromPreRequisites
+    "list packages which are to be explicitely excluded from the automatic constructed
+     prerequisites list. If empty, everything that is found along the inheritance of any of
+     my classes is considered to be a prerequisite package."
+
+    ^ #(
+    )
+!
+
+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:libbasic'    "LibraryDefinition - superclass of ctu_smallruby"
+    )
+!
+
+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 compiling or loading,
+     however, a class from it may be referenced during execution and having it
+     unloaded then may lead to a runtime doesNotUnderstand error, unless the caller
+     includes explicit checks for the package being present.
+     This method is generated automatically,
+     by searching all classes (and their packages) which are referenced by my classes."
+
+    ^ #(
+    )
+!
+
+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:smallruby/parser'
+    )
+
+    "Modified: / 13-03-2015 / 12:12:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!ctu_smallruby class methodsFor:'description - contents'!
+
+classNamesAndAttributes
+    "lists the classes which are to be included in the project.
+     Each entry in the list may be: a single class-name (symbol),
+     or an array-literal consisting of class name and attributes.
+     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
+
+    ^ #(
+        "<className> or (<className> attributes...) in load order"
+        #'ctu_smallruby'
+    )
+!
+
+extensionMethodNames
+    "list class/selector pairs of extensions.
+     A correponding method with real names must be present in my concrete subclasses"
+
+    ^ #(
+    )
+! !
+
+!ctu_smallruby class methodsFor:'description - project information'!
+
+companyName
+    "Returns a company string which will appear in <lib>.rc.
+     Under win32, this is placed into the dlls file-info"
+
+    ^ 'SWING Research Group, Czech Technical University in Prague'
+
+    "Modified: / 13-03-2015 / 12:13:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+description
+    "Returns a description string which will appear in nt.def / bc.def"
+
+    ^ 'SmallRuby - a Ruby implementation for Smalltalk/X'
+
+    "Modified: / 13-03-2015 / 12:13:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+legalCopyright
+    "Returns a copyright string which will appear in <lib>.rc.
+     Under win32, this is placed into the dlls file-info"
+
+    ^ 
+'Copyright 2025 Jiri Fajman, Marcel Hlopko & Jan Vrany
+                SWING Research Group, Czech Technical University In Prague'
+
+    "Modified: / 13-03-2015 / 12:15:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+productName
+    "Returns a product name which will appear in <lib>.rc.
+     Under win32, this is placed into the dlls file-info.
+     This method is usually redefined in a concrete application definition"
+
+    ^ 'SmallRuby'
+
+    "Modified: / 13-03-2015 / 12:15:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!ctu_smallruby class methodsFor:'documentation'!
+
+version_HG
+    ^ '$Changeset: <not expanded> $'
+! !
+