home *** CD-ROM | disk | FTP | other *** search
- ; Oberon Installations Skript für Version 3.11
- ;
- ; © 1994 by Thomas Wagner [tom]
- ;
- ; $VER: Install_Oberon_3_11 1.0 (17.1.94)
- ; Permission granted to include to the Amiga Oberon Distribution.
- ;
- ; KEINE HAFTUNG
- ;
- ; Die Tabulatorlänge sollte auf 4 gesetzt werden, um diesen Text zu lesen/editieren
-
-
- (set verstring "3.20")
-
- (set #start .
- (cat "© 1994 by Thomas Wagner and Fridtjof Siebert.\n"
- "*************************************************\n\n"
- "Mit diesem Skript kann man den\n\nAmiga Oberon Compiler " verstring "\n\n"
- "neu installieren, bzw. auf diese Version aufrüsten.\n"
- )
- )
-
- (set #copy-arp-lib "\nInstalliere arp.library")
- (set #copy-gc-lib "\nInstalliere garbagecollector.library")
- (set #copy-os-lib "\nInstalliere oberonsupport.library")
-
- (set #destination "Wo befindet sich das Oberon-Verzeichnis bzw. wohin soll ich Oberon installieren?\n")
-
- ;(set #lower-version "Warnung: Eine neuere Version scheint bereits installiert zu sein!")
- ;(set #same-version "Warnung: Diese Version scheint bereits installiert zu sein!")
-
- (set #insert-disk "\n\nBitte legen Sie \"%s\" in ein beliebiges Laufwerk.")
-
- (set #disk-1 ("Oberon%s_Disk1" verstring))
- (set #disk-2 ("Oberon%s_Disk2" verstring))
- (set #disk-3 ("Oberon%s_Disk3" verstring))
- (set #disk-4 ("Oberon%s_Disk4" verstring))
-
- (set #select-files
- (cat "Bitte wählen Sie aus, welche der folgenden Files bzw. Verzeichnisse "
- "kopiert werden sollen (und wohin)."
- )
- )
-
- (set #select-dir "Wohin soll ich den Inhalt des Verzeichnisses \"%s\" kopieren?")
-
- (set #select-overwrite
- (cat "Bitte wählen Sie aus, welche der folgenden Files bzw. Verzeichnisse "
- "kopiert werden sollen. Bereits existierende werden überschrieben!"
- )
- )
-
- (set #select-texts
- (cat "Bitte wählen Sie, welche Textfiles Sie installieren wollen, und in welches "
- "Verzeichnis sie sollen (oder wählen Sie \"Skip this Part\" um sie "
- "nicht zu installieren."
- )
- )
- (set #german-menu "\n\nWollen sie für OEd die deutschen Menüs benutzen?")
-
- (set #install-interfaces
- (cat "\n\nWollen Sie die Oberon Interface Quelltexte installieren?\n\n"
- "Wenn Sie z.B. neuere Interfaces haben, so sollten Sie hier mit "
- "Nein (No) antworten, und dann nach Beendigung dieses Skripts "
- "das bei diesen Interfaces mitgelieferte Script Compile_All "
- "starten. Allerdings dürfen Sie das NICHT VERGESSEN, sonst "
- "läuft nichts!"
- )
- )
-
- (set #install-locale
- (cat "\n\nWollen Sie die Sprachbibliotheken (Verzeichnis LOCALE:)installieren?\n\n"
- )
- )
-
- (set #want-demos "\n\nWollen Sie die Oberon-Demos installieren?")
- (set #want-demos2 "\n\nWollen Sie die Oberon-Beispiele installieren?")
- (set #want-support
- (cat "\n\nUm Oberon von verschiedenen Editoren (AmokEd, CED, TurboText) aus zu steuern, "
- "gibt es vorbereitete Skripten. Soll ich diese installieren?"
- )
- )
-
- (set #startup "Ich werde jetzt die User-Startup um folgende Zeilen erweitern:\n\n")
-
- (set #ust-mod "Welche Zeilen soll ich in die User-Startup eintragen?")
-
- (set #good-bye
- (cat "Viel Spaß beim Programmieren!\nDie von Ihnen ausgewählten Befehle für die "
- "User-Startup wurden bereits ausgeführt. Sie können also gleich loslegen..."
- )
- )
-
- (set #good-bye-without-obj
- (cat "Viel Spaß beim Programmieren!\nDie von Ihnen ausgewählten Befehle für die "
- "User-Startup wurden bereits ausgeführt.\n\nAllerdings wurden noch keine "
- "Interfaces installiert und keine Objekt- und SymbolFiles erzeugt (wie von "
- "Ihnen gewünscht. Bitte holen sie das jetzt noch nach..."
- )
- )
-
- (set #really-good-bye?
- (cat "\n\nIch möchte Sie allerdings darauf hinweisen, daß sie KEINE Symbol- und "
- "Objektfiles erstellt haben. Wenn jetzt also nichts funktioniert, ..."
- )
- )
-
- (set #select-comp
- (cat "Jetzt müssen noch die Symbol- und Objekt-Files erstellt werden. "
- "Bitte wählen Sie, welche Objekt-Files ich erstellen soll."
- )
- )
-
- (set #ask-info "Soll ich Ihre alten .info-Files wieder installieren?")
-
- (set #compilation
- (cat "Ich compiliere jetzt mit den von Ihnen gewünschten Parametern.\n\n"
- "Bitte haben Sie etwas Geduld. Dieser Teil dauert etwas länger...\n\n"
- "Ich erzeuge gerade die *.obj%s-Files."
- )
- )
- (set #compilation-liblink
- (cat "Ich compiliere jetzt die Module für LibLink.\n\n"
- "Bitte haben Sie etwas Geduld..."
- )
- )
-
- (set #where-are-interfaces "Wo sind die Interfaces?")
- (set #where-are-modules "Wo sind die Module?")
- (set #where-are-syms
- (cat "In welchem gemeinsamen (Ober-)Verzeichnis befindet sich sowohl "
- "das Verzeichnis \"sym\" also auch \"obj\", bzw. wo sollen diese "
- "angelegt werden?"
- )
- )
-
- (set #where-ist-list "Wo ist die Liste mit der Compilations-Reihenfolge?")
-
- (set #german 1)
- ;-----------------------------------------------------------
-
- (user 2)
-
- (message #start)
-
- (user 0)
-
- (if (exists "Oberon:" (noreq))
- (
- (set @default-dest "OBERON:")
- (set oberonassign 1)
- )
- (
- (set @default-dest (tackon @default-dest "Oberon"))
- (set oberonassign 0)
- )
- )
-
- (welcome)
-
- (set interfaces-dir "")
- (set modules-dir "")
- (set locale-dir "LOCALE:")
-
- ;++++++++++++
- ; Disk 1
- ;++++++++++++
-
- (askdisk
- (prompt (#insert-disk #disk-1))
- (help @askdisk-help)
- (dest #disk-1)
- (newname "d1")
- )
-
- (copylib
- (prompt #copy-arp-lib)
- (help @copylib-help)
- (source "d1:libs/arp.library")
- (dest "LIBS:")
- (confirm)
- (optional nofail)
- )
-
- (copylib
- (prompt #copy-os-lib)
- (help @copylib-help)
- (source "d1:libs/oberonsupport.library")
- (dest "LIBS:")
- (confirm)
- )
-
- (copylib
- (prompt #copy-gc-lib)
- (help @copylib-help)
- (source "d1:libs/garbagecollector.library")
- (dest "LIBS:")
- (confirm)
- )
-
- ;----------------------------------------
- ; get dir to copy to
-
- (set default-dest
- (askdir
- (prompt #destination)
- (help @askdir-help)
- (default @default-dest)
- (newpath)
- )
- )
-
- (set @default-dest default-dest)
-
- (if (exists (tackon @default-dest "oberon.info"))
- (copyfiles
- (prompt "")
- (source @default-dest)
- (dest "T:icons")
- (pattern "#?.info")
- )
- )
-
- (copyfiles
- (prompt "")
- (help @copyfiles-help)
- (source "d1:")
- (infos)
- (dest @default-dest)
- (pattern "(Oberon|OLink|OErr|Path.info|Fehler-Meldungen|Compile_All)")
- )
-
- (copyfiles
- (prompt #select-texts)
- (help @copyfiles-help)
- (source "d1:")
- (infos)
- (dest (tackon @default-dest "Texte"))
- (pattern "(LiesMich_Deutsch|ReadMe_English|ModulaToOberon|Oberon-Bericht_Deutsch|Oberon-Report_English|Oberon2.txt)")
- (confirm)
- )
-
- (copyfiles
- (prompt #select-overwrite)
- (help @copyfiles-help)
- (source "d1:")
- (infos)
- (dest @default-dest)
- (pattern "(Icons)")
- (confirm)
- )
-
- (if (NOT (exists (tackon @default-dest "Path")))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest (tackon @default-dest "Path"))
- (append "OBERON:\nOBERON:LibLink\n")
- )
- )
-
-
- (set want-locale
- (askbool
- (prompt #install-locale)
- (help @askbool-help)
- (default 1)
- )
- )
-
- (if want-locale
- (copyfiles
- (prompt "")
- (source "d1:locale")
- (infos)
- (all)
- (dest locale-dir)
- )
- )
-
- (makeassign "d1" (safe))
-
- ;--------------------------------------------------------
- ; common parts
-
- ;++++++++++++
- ; Disk 2
- ;++++++++++++
-
- (askdisk
- (prompt (#insert-disk #disk-2))
- (help @askdisk-help)
- (dest #disk-2)
- (newname "d2")
- )
-
- (copyfiles
- (prompt #select-files)
- (help @copyfiles-help)
- (source "d2:")
- (infos)
- (confirm)
- (dest @default-dest)
- (pattern "(OMake|ResidentManager|ResidentModules.info|ModToDef|GCStat)")
- )
-
- (copyfiles
- (prompt #select-files)
- (help @copyfiles-help)
- (source "d2:")
- (choices "GarbagePrefs")
- (infos)
- (confirm)
- (dest "sys:Prefs")
- )
-
- (if (NOT (exists (tackon @default-dest "ResidentModules")))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest (tackon @default-dest "ResidentModules"))
- (append "all\n")
- )
- )
-
- (copyfiles
- (prompt "")
- (help @copyfiles-help)
- (source "d2:")
- (choices "LibLink")
- (infos)
- (dest @default-dest)
- )
-
- (set modules-dir
- (askdir
- (prompt (#select-dir "Module"))
- (help @askdir-help)
- (default (tackon @default-dest "Module"))
- (newpath)
- )
- )
- (copyfiles
- (prompt "")
- (help @copyfiles-help)
- (source "d2:Module")
- (all)
- (infos)
- (dest modules-dir)
- )
-
- (set want-interfaces
- (askbool
- (prompt #install-interfaces)
- (help @askbool-help)
- (default 1)
- )
- )
-
- (if want-interfaces
- (set interfaces-dir
- (askdir
- (prompt (#select-dir "Interfaces"))
- (help @askdir-help)
- (default (tackon @default-dest "Interfaces"))
- (newpath)
- )
- )
- )
-
- (if (askbool
- (prompt #want-demos)
- (help @askbool-help)
- (default 1)
- )
- (copyfiles
- (prompt "")
- (source "d2:Demos")
- (all)
- (infos)
- (dest
- (askdir
- (prompt (#select-dir "Demos"))
- (help @askdir-help)
- (default (tackon @default-dest "Demos"))
- (newpath)
- )
- )
- )
- )
-
- (if (askbool
- (prompt #want-support)
- (help @askbool-help)
- (default 1)
- )
- (copyfiles
- (prompt "")
- (source "d2:ObSup_Scripts")
- (all)
- (infos)
- (dest
- (askdir
- (prompt (#select-dir "ObSup_Scripts"))
- (help @askdir-help)
- (default (tackon @default-dest "ObSup_Scripts"))
- (newpath)
- )
- )
- )
- )
-
- (makeassign "d2" (safe))
-
- ;++++++++++++
- ; Disk 3
- ;++++++++++++
-
- (if want-interfaces
- (
- (askdisk
- (prompt (#insert-disk #disk-3))
- (help @askdisk-help)
- (dest #disk-3)
- (newname "d3")
- )
- (copyfiles
- (prompt "")
- (source "d3:Interfaces")
- (infos)
- (all)
- (dest interfaces-dir)
- )
- )
- )
-
-
- (makeassign "d3" (safe))
-
-
- ;++++++++++++
- ; Disk 4
- ;++++++++++++
-
-
- (askdisk
- (prompt (#insert-disk #disk-4))
- (help @askdisk-help)
- (dest #disk-4)
- (newname "d4")
- )
-
- (copyfiles
- (prompt #select-texts)
- (help @copyfiles-help)
- (source "d4:")
- (infos)
- (dest @default-dest)
- (pattern "(OEd|Rexx|OEd#?.txt)")
- (confirm)
- )
-
- (if want-interfaces
- (copyfiles
- (prompt "")
- (source "d4:Interfaces")
- (all)
- (dest interfaces-dir)
- )
- )
-
- (if (askbool
- (prompt #german-menu)
- (help @askbool-help)
- (default #german)
- )
- (copyfiles
- (prompt "")
- (source "d4:OEd_Menu.txt.d")
- (newname "OEd_Menu.txt")
- (infos)
- (dest @default-dest)
- )
- )
-
- (if (askbool
- (prompt #want-demos2)
- (help @askbool-help)
- (default 1)
- )
- (copyfiles
- (prompt "")
- (source "d4:Beispiele")
- (all)
- (infos)
- (dest
- (askdir
- (prompt (#select-dir "Beispiele"))
- (help @askdir-help)
- (default (tackon @default-dest "Beispiele"))
- (newpath)
- )
- )
- )
- )
-
- (makeassign "d4" (safe))
-
- ;-----------------------------------
-
- (if (exists "T:icons/oberon.info")
- (if (askbool
- (prompt #ask-info)
- (help @askbool-help)
- )
- (copyfiles
- (prompt "")
- (source "t:icons")
- (dest @default-dest)
- (all)
- )
- )
- )
-
- (run "delete t:icons all" (safe))
-
- (set ust
- (askoptions
- (prompt #ust-mod)
- (help @askoptions-help)
- (choices ("assign OBERON: %s" (expandpath @default-dest))
- "resident OBERON:Oberon"
- "resident OBERON:OLink"
- "resident OBERON:OEd"
- "resident OBERON:OEd_NOGC"
- "path OBERON: add"
- "OBERON:residentmanager"
- )
- (default 33)
- )
- )
-
- (set ust-string "")
-
- (debug @default-dest)
-
- (if (IN ust 0)
- (
- (set ust-string (cat ust-string ("assign OBERON: %s\n" (expandpath @default-dest))))
- (makeassign "OBERON" @default-dest)
- )
- )
-
- (if (IN ust 1)
- (
- (set ust-string (cat ust-string "resident OBERON:Oberon\n"))
- (run "resident OBERON:Oberon")
- )
- )
-
- (if (IN ust 2)
- (
- (set ust-string (cat ust-string "resident OBERON:OLink\n"))
- (run "resident OBERON:OLink")
- )
- )
-
- (if (IN ust 3)
- (
- (set ust-string (cat ust-string "resident OBERON:OEd\n"))
- (run "resident OBERON:OEd")
- )
- )
-
- (if (IN ust 4)
- (
- (set ust-string (cat ust-string "path OBERON: add\n"))
- (run "path OBERON: add")
- )
- )
-
- (if (IN ust 5)
- (
- (set ust-string (cat ust-string "OBERON:residentmanager\n"))
- (run "OBERON:residentmanager")
- )
- )
-
- (if (> ust 0)
- (startup "Amiga Oberon"
- (prompt (cat #startup ust-string))
- (help @startup-help)
- (command ust-string)
- )
- )
-
- ;--------------------------------------------------------
- ; compile modules and interfaces
-
- (debug modules-dir)
-
- (makeassign "om" modules-dir (safe))
-
- (set obfull (tackon @default-dest "Oberon"))
-
- (if (NOT want-interfaces)
- (
- (makeassign "om" (safe))
- (exit #good-bye-without-obj)
- )
- )
-
- (set comp
- (askoptions
- (prompt #select-comp)
- (help @askoptions-help)
- (choices " < > (*.obj)"
- " <-md > (*.objs)"
- " <-a > (*.obja)"
- " <-mda> (*.objsa)"
- )
- (default 15)
- )
- )
-
- (if (= comp 0)
- (exit (cat #good-bye #really-good-bye?))
- )
-
- (if (= interfaces-dir "")
- (set interfaces-dir
- (askdir
- (prompt #where-are-interfaces)
- (help @askdir-help)
- (default (tackon @default-dest "Interfaces"))
- )
- )
- )
-
- (set sym-dir
- (askdir
- (prompt #where-are-syms)
- (help @askdir-help)
- (default @default-dest)
- )
- )
-
- (set list
- (askfile
- (prompt #where-is-list)
- (help @askdir-help)
- (default (tackon @default-dest "Compile_All"))
- )
- )
-
- (if (NOT (exists (tackon sym-dir "sym")))
- (makedir (tackon sym-dir "sym") (infos))
- )
-
- (if (NOT (exists (tackon sym-dir "obj")))
- (makedir (tackon sym-dir "obj") (infos))
- )
-
- (makeassign "oa" interfaces-dir (safe))
-
- (set intro (cat "cd " sym-dir "\nstack 30000\n"))
-
- (if (IN comp 0)
- (
- (working (#compilation ""))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest "T:OBINST")
- (append intro)
- (append (cat obfull " >CON: <" list "\n"))
- )
- (execute "T:OBINST")
- (run "delete T:OBINST")
- )
- )
-
- (if (IN comp 1)
- (
- (working (#compilation "s"))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest "T:OBINST")
- (append intro)
- (append (cat obfull " -md >CON: <" list "\n"))
- )
- (execute "T:OBINST")
- (run "delete T:OBINST")
- )
- )
-
- (if (IN comp 2)
- (
- (working (#compilation "a"))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest "T:OBINST")
- (append intro)
- (append (cat obfull " -a >CON: <" list "\n"))
- )
- (execute "T:OBINST")
- (run "delete T:OBINST")
- )
- )
-
- (if (IN comp 3)
- (
- (working (#compilation "sa"))
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest "T:OBINST")
- (append intro)
- (append (cat obfull " -mda >CON: <" list "\n"))
- )
- (execute "T:OBINST")
- (run "delete T:OBINST")
- )
- )
-
- (working #compilation-liblink)
- (textfile
- (prompt "")
- (help @textfile-help)
- (dest "T:OBINST")
- (append (cat "cd " (tackon @default-dest "LibLink/Obj") "\n"))
- (append (cat obfull " -m SET LibLink OM:OberonLib\n"))
- (append (cat obfull " -dm SET LibLink OM:OberonLib\n"))
- (append (cat obfull " -ma SET LibLink OM:OberonLib\n"))
- (append (cat obfull " -dma SET LibLink OM:OberonLib\n"))
- (append "DELETE LibOberonLib.obj*\n")
- (append "RENAME OberonLib.obj LibOberonLib.obj\n")
- (append "RENAME OberonLib.objs LibOberonLib.objs\n")
- (append "RENAME OberonLib.obja LibOberonLib.obja\n")
- (append "RENAME OberonLib.objsa LibOberonLib.objsa\n")
- )
- (execute "T:OBINST")
- (run "delete T:OBINST" (safe))
-
- (makeassign "om" (safe))
- (makeassign "oa" (safe))
-
- (exit #good-bye)
-
-