reports/report-runner.st
changeset 75 686f675d9442
child 83 40162ba13436
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/reports/report-runner.st	Fri Jan 13 12:25:20 2012 +0100
@@ -0,0 +1,39 @@
+| pp wd i p |
+
+"Search for package path, bit hacky but..."
+wd := Filename currentDirectory.
+pp := nil.
+p := wd.
+i := 10."How many super-directories try"
+[i > 0 and:[pp == nil]] whileTrue:[
+        p := p / '..'. i := i - 1.
+        ((p / 'stx' / 'libbasic') exists and:[(p / 'stx' / 'libcomp') exists])
+                ifTrue:[pp := p]].
+pp
+        ifNil:
+                [Stderr nextPutAll: 'ERROR: Cannot find package path'.
+                Smalltalk exit: 16]
+        ifNotNil:
+                [Smalltalk packagePath add: pp pathName].
+
+(Smalltalk commandLineArguments includes:'--debug') ifTrue:[
+    Stderr nextPutAll:'Package path:'; cr.
+    Smalltalk packagePath do:[:each|
+       Stderr nextPutAll:'  '; nextPutAll: each; cr.
+    ].
+
+	(OperatingSystem getEnvironment: 'DISPLAY') notNil ifTrue:[
+        Smalltalk beHeadless: false.
+	].
+] ifFalse: [
+	Smalltalk beHeadless: true.
+].
+
+(Smalltalk at:#'Builder::ReportRunner') isNil ifTrue:[
+    (Smalltalk loadPackage: 'stx:goodies/builder/reports') ifFalse:[
+        Stderr nextPutAll:'ERROR: cannot load stx:goodies/builder/reports.'.
+        Smalltalk exit: 17
+    ].
+].
+
+Smalltalk addStartBlock:[(Smalltalk at:#'Builder::ReportRunner') start].