home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 1997-12-09 | 74.9 KB | 2,716 lines
; ; $PROJECT: html.datatype ; ; $VER: DT-Install 40.1 (01.12.97) ; ; $AUTHOR: Stefan Ruppert , Windthorststrasse 5 , 65439 Floersheim , GERMANY ; ; $COPYRIGHT: (C) Copyright 1997 by Stefan Ruppert, All Rights Reserved! ; ; $EMAIL: ruppert@amigaworld.com ; ; $HISTORY: ; ; 01.12.97 : 040.001 : initial ; ; ----------------------- begin customize section ------------------------ (set #dt-base "html") (set #dt-descrpat "HTML#?") (set #dt-suffix "hdtc") (set #dt-prefs "HTMLDTPrefs") (set #dt-copyright "Copyright © 1995-1997 Stefan Ruppert") (set #dt-type "HyperText") ; default directories (set #defaultdir "Sys:Datatypes") (set #classdir "Sys:Classes") (set #prefsdir "Sys:Prefs") (set #arexxdir "Rexx:Datatypes") ; none standard distribution documentation place (set #dt-doc-dir "Docs") (set #dt-doc-file "") ; list of additional documents separated by a slash (set #dt-more-docs "") (set #dt-hg-macro-file "htds.hgm") (set #USE_NEWGETVERSION 0) ; internal getversion ;(set #USE_NEWGETVERSION 1) ; external getversion using "C:Version" ; support for spatched datatype files (set #dt-patchbase (cat #dt-base ".datatype.020")) (set #spatch "c/spatch") ; Minimum datatypes version required for installation (set #min_dt_version 39) (set #min_dt_revision 0) (set #custom_parts_default %0) ; return a list of string for custom distribution parts (procedure P_CustomParts ; Params: ; ; Results: ; ; Used Vars: ; (set #custom_part1 "") (set #custom_part2 "") (set #custom_part3 "") ) ; check distribution structre and preset all variables (procedure P_CustomCheck ; Params: ; ; Results: ; ; Used Vars: ; ) ; ask any user configurable installation part here (procedure P_CustomAsk ; Params: ; ; Results: ; ; Used Vars: ; ) ; now install here all selected parts/files (procedure P_CustomInstall ; Params: ; ; Results: ; ; Used Vars: ; (if #install_docs ( ; author documents (set #infos 1) (set #src-dir (cat #dir "Author")) (set #dest-dir #docsdir) (set #file "SR.hguide") (P_CpNewFile) (set #infos 0) (set #file "fiff.png") (P_CpFile) (set #file "me.png") (P_CpFile) ; HTDS registration and forms (set #infos 1) (set #src-dir (cat #dir "Forms")) (set #file "Registration") (P_CpNewFile) (set #file "BugReport") (P_CpNewFile) (set #infos 0) (set #file "Bug.Template") (P_CpNewFile) (set #file "getconf") (P_CpNewFile) ; pictures (set #infos 0) (set #src-dir (cat #dir "pics")) (set #file "searchwin.png") (P_CpFile) ) ) ) ; now uninstall here all selected parts/files (procedure P_CustomUninstall ; Params: ; ; Results: ; ; Used Vars: ; ) (procedure P_CustomLanguage ; Params: ; #lang ; ; Results: ; ; Used Vars: ; (select #lang ; LANGUAGE ( ; Russian (complete 0) ) ( ; Latina (complete 0) ) ( ; Türkçe (complete 0) ) ( ; Esperanto (complete 0) ) ( ; Greek (complete 0) ) ( ; Magyar (complete 0) ) ( ; suomi (complete 0) ) ( ; polski (complete 0) ) ( ; Swedish (complete 0) ) ( ; norsk (complete 0) ) ( ; nederlands (complete 0) ) ( ; italiano (complete 0) ) ( ; dansk (complete 0) ) ( ; português (complete 0) ) ( ; español (complete 0) ) ( ; français (complete 0) ) ( ; deutsch (complete 0) ) ( ; english (complete 0) ) ) ) ; ------------------------ end customize section ------------------------- ; ; $PROJECT: datatype installation template script ; ; $VER: Install 40.5 (01.12.97) ; ; by Stefan Ruppert (C) Copyright 1997 ; ; motivated by and derived from the MCC-Install script from Kai Hofmann. ; Thanks Kai for your great work. ; ; $EMAIL: ruppert@amigaworld.com ; ; $HISTORY: ; ; 01.12.97 : 040.005 : added french translation, fixed bug with cache cpu variable ; 21.11.97 : 040.004 : added help text for default datatypes directory ; 23.10.97 : 040.003 : added custom language section, changed custom parts ; 19.10.97 : 040.002 : added some missing english text definitions ; 08.10.97 : 040.001 : initial ; ; ----------------------- customize documentation ------------------------ ; ; #dt-suffix : ; ; datatype class suffix : ; ; <dtname>_<dtsuffix> ; ; For example : hypertext_dtc.hguide or hypertext_dtc.catalog ; ; suffix description (baseclass) ; --------------------------------------------------------- ; dtc for datatype base classes (datatypesclass) ; hdtc for hypertext sub classes (hypertext.datatype) ; pdtc for picture sub classes (picture.datatype) ; sdtc for sound sub classes (sound.datatype) ; adtc for animation sub classes (animation.datatype) ; bdtc for binary sub classes (binary.datatype) ; tdtc for text sub classes (text.datatype) ; ; #dt-doc-dir ; #dt-doc-file : ; ; datatype documentation file placed in <dtname>_<dtsuffix>/Docs/ ; ; ; Recommended directory structure ; ; <dtname>_<dtsuffix>/Product-Info ; <dtname>_<dtsuffix>/Product-Info.info ; <dtname>_<dtsuffix>/DT-Install ; <dtname>_<dtsuffix>/DT-Install.info ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.000(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.010(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.020(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.020f(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.030(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.030f(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.040(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.040f(%|.p) (optional) ; <dtname>_<dtsuffix>/Classes/Datatypes/<dtname>.datatype.060(%|.p) (optional) ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix>.doc ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix>.doc.info ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix> (optional) ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix>.info (optional) ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix>.rev (optional) ; <dtname>_<dtsuffix>/Developer/Autodocs/<dtname>_<dtsuffix>.rev.info (optional) ; <dtname>_<dtsuffix>/Developer/C/Include/Datatypes/<dtname>class.h ; <dtname>_<dtsuffix>/Developer/C/Include/CLib/<dtname>dtclass_protos.h (optional) ; <dtname>_<dtsuffix>/Developer/C/Include/FD/<dtname>dtclass_lib.fd (optional) ; <dtname>_<dtsuffix>/Developer/C/Include/Inline/<dtname>dtclass_inline.h (optional) ; <dtname>_<dtsuffix>/Developer/C/Include/Pragmas/<dtname>dtclass_pragmas.h (optional) ; <dtname>_<dtsuffix>/Developer/C/Include/Proto/<dtname>dtclass.h (optional) ; <dtname>_<dtsuffix>/Developer/C/Examples/<dtname>-Demo.c (optional) ; <dtname>_<dtsuffix>/Developer/C/Examples/<dtname>-Demo.c.info (optional) ; <dtname>_<dtsuffix>/Developer/C/Examples/<dtname>-Demo (optional) ; <dtname>_<dtsuffix>/Developer/C/Examples/<dtname>-Demo.info (optional) ; <dtname>_<dtsuffix>/Developer/XRef/<dtname>_<dtsuffix>.xref (optional) ; <dtname>_<dtsuffix>/Developer/XRef/<dtname>_<dtsuffix>.xref.info (optional) ; <dtname>_<dtsuffix>/Devs/Datatypes/<descriptors> (optional) ; <dtname>_<dtsuffix>/Devs/Datatypes/<descriptors>.info (optional) ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.(%|h)guide ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.(%|h)guide.info ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.html (optional) ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.html.info (optional) ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.doc (optional) ; <dtname>_<dtsuffix>/Docs/English/<dtname>_<dtsuffix>.doc.info (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.(%|h)guide (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.(%|h)guide.info (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.html (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.html.info (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.doc (optional) ; <dtname>_<dtsuffix>/Docs/<language>/<dtname>_<dtsuffix>.doc.info (optional) ; <dtname>_<dtsuffix>/Examples/<dt_example> (optional) ; <dtname>_<dtsuffix>/Examples/<dt_example>.info (optional) ; <dtname>_<dtsuffix>/Icons/MagicWB/<dtname>.info (optional) ; <dtname>_<dtsuffix>/Icons/NewIcons/<dtname>.info (optional) ; <dtname>_<dtsuffix>/Icons/Standard/<dtname>.info (optional) ; <dtname>_<dtsuffix>/EnvArc/Datatypes/<dtname>.prefs (optional) ; <dtname>_<dtsuffix>/Locale/Catalogs/<language>/<dtname>_<dtsuffix>.catalog (optional) ; <dtname>_<dtsuffix>/Prefs/Datatypes/<dtname>Prefs (optional) ; Bultin language ; Bit 0 = English ; Bit 1 = German ; Bit 2 = French ; Bit 3 = Spanish ; Bit 4 = Portuguese ; Bit 5 = Danish ; Bit 6 = Italian ; Bit 7 = Dutch ; Bit 8 = Norwegian ; Bit 9 = Swedish ; Bit 10 = Polish ; Bit 11 = Finnish ; Bit 12 = Hungarian ; Bit 13 = Greek ; Bit 14 = Esperanto ; Bit 15 = Turkish ; Bit 16 = Latin ; Bit 17 = Russian ; ----------------------------------------------------------------------------- ; --- Do not change anything below this line ---------------------------------- ; ----------------------------------------------------------------------------- (set #language_dtypes %011111111111111111) ; LANGUAGE (set #language_dtypeslib %000000000000000001) ; LANGUAGE (set #save_user_selections_icon "Misc/Install/Options") (set #save_user_selections 1) (set #iconpackage "") (set #max_standard_parts 10) (set #dt-name (cat #dt-base ".datatype")) ; datatype name (set #dt-envfile (cat #dt-base ".prefs")) ; eventual prefs file name in Env(%|Arc):DataTypes/ (set #dt-file (tackon "classes/datatypes" #dt-name)) (if (= @installer-version 0) ( ; old Installer (set #prop "") ) ; else ( ; new Installer (set #prop "\x1b[2p") ) ) ; ------------------------- begin locale section ------------------------- (set #i 0) (while (<> @language (select #i "deutsch" @language)) ; LANGUAGE (set #i (+ #i 1)) ) (if (= #i 1) ; LANGUAGE (set #language "english") (set #language @language) ) (set #lang 0) (set #language_default %100000000000000000) ; LANGUAGE (while (<> #language (select #lang "russian" "latina" "türkçe" "esperanto" "greek" "magyar" "suomi" "polski" "norsk" "svenska" "nederlands" "italiano" "dansk" "português" "español" "français" "deutsch" #language)) ; LANGUAGE ( (set #language_default (shiftright #language_default 1)) (set #lang (+ #lang 1)) ) ) (select #lang ; LANGUAGE ( ; Russian (complete 0) ) ( ; Latina (complete 0) ) ( ; Türkçe (complete 0) ) ( ; Esperanto (complete 0) ) ( ; Greek (complete 0) ) ( ; Magyar (complete 0) ) ( ; suomi (complete 0) ) ( ; polski (complete 0) ) ( ; Swedish (complete 0) ) ( ; norsk (complete 0) ) ( ; nederlands (complete 0) ) ( ; italiano (complete 0) ) ( ; dansk (complete 0) ) ( ; português (complete 0) ) ( ; español (complete 0) ) ( ; français from Francis Labrie <fb691875@er.uqam.ca> (if (= @installer-version 0) ( (set #help_askoptions "Avec une version de l'outils « Installer » antérieure à 42.6, il peut arriver que des cases à cocher apparaissent sans étiquette. La sélection de ces cases sera alors ignorée.\n\n") (set #help_askoptions "Avec une version de l'outils « Installer » antérieure à 42.6, il peut arriver que des boutons de radio apparaissent sans étiquette. La sélection de ces boutons sera alors ignorée.\n\n") ) ) (set #unknown "inconnu") (set #choice_english "Anglais") (set #choice_german "Allemand") (set #choice_french "Français") (set #choice_spanish "Español") (set #choice_portuguese "Portugais") (set #choice_danish "Danois") (set #choice_italian "Italien") (set #choice_dutch "Hollandais") (set #choice_norwegian "Norvégien") (set #choice_swedish "Suédois") (set #choice_polish "Polonais") (set #choice_finnish "Finnois") (set #choice_hungarian "Hongrois") (set #choice_turkish "Turc") (set #choice_greek "Grec") (set #choice_latin "Latin") (set #choice_esperanto "Espéranto") (set #choice_russian "Russe") ; LANGUAGE (set #choice_datatype "Type de donné") (set #choice_descriptors "Descripteurs") (set #choice_catalogs "Catalogues") (set #choice_docs "Documentation") (set #choice_developer "Outils de développeur") (set #choice_prefs "Outils de préférences") (set #choice_env "Fichier de préférences") (set #choice_examples "Fichiers d'exemple") (set #choice_icons "Icônes standards de type de donnée") (set #choice_arexx "Scripts ARexx") (set #choice_install "Installer") (set #choice_uninstall "Désinstaller") (set #choice_yes "Oui") (set #choice_no "Non") (set #choice_none "Aucun") (set #prompt_info (cat "\nBienvenue à la classe « " @app-name " » \n" #dt-copyright "\n\n")) (set #prompt_install_uninstall (cat #prompt_info "Souhaitez-vous installer ou désinstaller cette classe ?")) (set #prompt_install_docs "Quelle type de documentation souhaitez-vous installer ?") (set #prompt_install_asciidocs "Pour quelles langues désirez-vous installer la documentation de format ASCII ?") (set #prompt_install_hgdocs "Pour quelles langues désirez-vous installer la documentation de format HyperGuide ?") (set #prompt_install_agdocs "Pour quelles langues désirez-vous installer la documentation de format AmigaGuide® ?") (set #prompt_install_html "Pour quelles langues désirez-vous installer la documentation de format HTML ?") (set #prompt_install_dt_catalogs (cat "Lesquels de ces catalogues pour la classe « " @app-name " » souhaitez-vous installer ?")) (set #prompt_install_plangs "Pour quels languages de programmation souhaitez-vous installer les outils de développeur ?") (set #prompt_askcpufpu (cat "Veuillez sélectionner la configuration de microprocesseur pour laquelle vous désirez installer la classe « " #dt-name " ».")) (set #prompt_askenv "Désirez-vous installer les fichiers de préférences ?") (set #prompt_askdefaultdir "Où se trouvent les fichiers relatifs aux classes de types de donnée (voir l'aide) ?") (set #help_askdefaultdir (cat "Tous les fichiers qui n'ont pas de destination particulière définie dans le système sont " "installés dans un répertoire « DataType ». Ceux-ci regroupent les fichiers de documentation, " "les fichiers destinés aux développeurs et d'autre documents divers. Cependant, les classes " " et leurs descripteurs eux-même n'y seront pas installés. Ces fichiers sont plutôt " "installés aux endroits appropriés dans le système. Par défaut, le répertoire « DataType » " "est « SYS:DataTypes ».\n\n")) (set #prompt_askprefsdir "Où désirez-vous installer les outils de préférences ?") (set #prompt_askdocsdir "Où souhaitez-vous installer la documentation ?") (set #prompt_askclassdir "Où les classes se trouvent-elles ?") (set #prompt_askiconpackage "Quelle gamme d'icônes utilisez-vous ?") (set #prompt_installing "Installation") (set #prompt_removing "Désinstallation") (set #prompt_install_parts "Quelles parties souhaitez-vous installer ?") (set #prompt_copy_dt "Copie de la classe") (set #prompt_copy_descr "Copie des descripteurs") (set #prompt_copy "Souhaitez-vous copier le(s) fichier(s) suivant(s) ?") (set #prompt_makedir "Le répertoire suivant n'existe pas, il doit donc être créé :") (set #prompt_descdir "Est-ce que ces classes de types de donnée doivent être disponibles immédiatement après le démarrage du système ?") (set #prompt_deinstalled (cat "Il n'y a présentement pas de section de désinstallation pour la classe « " @app-name " ».")) (set #prompt_askuseinstallcache (cat "Il existe un fichier qui contient les choix " "effectués lors de l'installation antérieure d'une classe. " "Ces choix peuvent-ils être utilisés pour l'installation courante ?" )) (set #help_askuseinstallcache (cat "" )) (set #help_askcpufpu (cat "Sélectionnez ici le type de microprocesseur qui est installé dans votre système.\n\n" "C'est présentement un MC%s.\n\nSi vous sélectionnez un type de microprocesseur quelconque " "dans la boîte de choix, la classe « " #dt-name " » fonctionnera sur n'importe lequel des microprocesseurs dont " "le type est supérieur ou égal à la sélection. Cependant, il ne fonctionnera pas " "sur un système équipé d'un type de microprocesseur inférieur.\n\n" )) (set #help_descdir (cat "Si ces classes de type de donnée doivent être disponibles immédiatement après le démarrage du système, " "les descripteurs sont alors copiés dans le répertoire « DEVS:Datatypes », sinon ils le " "sont copiés dans le répertoire « SYS:Storage/Datatypes ».\n\n" )) (set #abort_nocpu (cat "Désolé, le script est incapable d'installer la classe « " #dt-name " » parce que votre configuration de microprocesseur n'est pas supportée.\n")) (set #abort_nodt (cat "Désolé, le système « DataTypes » n'est pas installé sur votre système !\n")) (set #abort_olddt (cat "Désolé, le script est incapable d'installer la classe « " #dt-name " » parce que la version %s du système « datatypes » installé est trop vieille. Vous avez besoin d'une version supérieur ou égale à %s.\n")) ) ( ; deutsch (if (= @installer-version 0) ( (set #help_askoptions "Mit einem Installer der älter als Version 42.6 ist, kann es passieren, daß Checkbox-Knöpfe ohne Labels zu sehen sind. Das Setzen dieser Knöpfe wird ignoriert.\n\n") (set #help_askchoice "Mit einem Installer der älter als Version 42.6 ist, kann es passieren, daß Radio-Knöpfe ohne Labels zu sehen sind. Das Setzen dieser Knöpfe entspricht der nächst kleineren Auswahl.\n\n") ) ) (set #unknown "unbekannt") (set #choice_english "Englisch") (set #choice_german "Deutsch") (set #choice_french "Französisch") (set #choice_spanish "Spanisch") (set #choice_portuguese "Portugiesisch") (set #choice_danish "Dänisch") (set #choice_italian "Italienisch") (set #choice_dutch "Niederländisch") (set #choice_norwegian "Norwegisch") (set #choice_swedish "Schwedisch") (set #choice_polish "Polnisch") (set #choice_finnish "Finnisch") (set #choice_hungarian "Ungarisch") (set #choice_turkish "Türkisch") (set #choice_greek "Griechisch") (set #choice_latin "Latein") (set #choice_esperanto "Esperanto") (set #choice_russian "Russisch") ; LANGUAGE (set #choice_datatype "Datentypen") (set #choice_descriptors "Deskriptoren") (set #choice_env "Voreinstellungen") (set #choice_prefs "Voreinsteller") (set #choice_catalogs "Kataloge") (set #choice_docs "Dokumentation") (set #choice_examples "Beispiele Dateien") (set #choice_developer "Entwickler-Material") (set #choice_icons "Datentyp Standard Piktogramme") (set #choice_arexx "ARexx Skripts") (set #choice_install "Installieren") (set #choice_uninstall "Deinstallieren") (set #choice_yes "Ja") (set #choice_no "Nein") (set #choice_none "Keine") (set #prompt_installing "Installiere") (set #prompt_removing "Entferne") (set #prompt_install_parts "Welche Komponenten wollen Sie installieren ?") (set #prompt_info (cat "\nWillkommen zur " @app-name " Datentyp-Klasse\n" #dt-copyright "\n\n")) (set #prompt_install_uninstall (cat #prompt_info "Wollen Sie die Klasse installieren oder deinstallieren?")) (set #prompt_copy_dt "Kopiere den Datentyp") (set #prompt_copy_descr "Kopiere die Deskriptoren") (set #prompt_deinstalled (cat "Zur Zeit wird für \"" @app-name "\" keine Deinstallation unterstützt.")) (set #prompt_install_docs "Welche Art von Dokumenten wollen Sie installieren?") (set #prompt_install_asciidocs "Für welche Sprachen wollen Sie die ASCII Dokumentation installieren?") (set #prompt_install_hgdocs "Für welche Sprachen wollen Sie die HyperGuide Dokumentation installieren?") (set #prompt_install_agdocs "Für welche Sprachen wollen Sie die AmigaGuide® Dokumentation installieren?") (set #prompt_install_html "Für welche Sprachen wollen Sie die HTML Dokumentation installieren?") (set #prompt_install_dt_catalogs (cat "Welche Kataloge für " @app-name " wollen Sie installieren?")) (set #prompt_install_plangs "Unterstützung für welche Programmiersprache wollen Sie installieren?") (set #prompt_askenv "Installiere Voreinstellungen ?") (set #prompt_askprefsdir "Wohin soll der Voreinsteller installiert werden ?") (set #prompt_askdocsdir "Wohin soll die Dokumentation installiert werden ?") (set #prompt_askclassdir "Wo liegen die System Klassen ?") (set #prompt_askdefaultdir "Wo befindet sich das \"Datatypes-Verzeichnis\" (siehe Hilfe) ?") (set #help_askdefaultdir (cat "Im \"Datatype-Verzeichnis\" werden alle Dateien installiert, die keinen " "festen Platz innerhalb des Systems besitzen. Dies sind vorallem die Dateien " "für die Dokumentation, Entwickler Dateien oder andere Dateien, die nicht " "eingruppiert werden können. Es werden in diesem Verzeichnis aber nicht der " "Datentyp selbst oder die Deskriptoren installiert. Diese werden an die entsprechenden " "Stellen im System installiert.\n\nStandardmäßig sollte das Verzeichnis " "\"Sys:Datatypes\" ausgewählt werden.\n\n")) (set #prompt_askiconpackage "Welches Piktogramme-Paket benutzen Sie ?") (set #prompt_copy "Wollen Sie das/die folgenden Datei(en) kopieren?") (set #prompt_makedir "Das folgende Verzeichnis wurde nicht gefunden, deshalb muß es erzeugt werden:") (set #prompt_askcpufpu (cat "Bitte wählen Sie die CPU/FPU Konfiguration, für die " @app-name " installiert werden soll.")) (set #help_askcpufpu (cat " Bitte wählen Sie hier die CPU aus, die in Ihrem System " "installiert ist.\n\n" "Ermittelt wurde ein MC%s.\n\n Wenn Sie einen bestimmten CPU-Typ auswählen, " "wird der \"" #dt-name "\" Datentyp nur auf Rechnern mit gleichem oder höherem " "CPU-Typ lauffähig sein. Der Datentyp muß nicht auf Rechnern mit kleinerem CPU-Typ laufen.\n\n" )) (set #prompt_askuseinstallcache (cat "Es existiert eine Datei, die Einstellungen " "für das Datentyp-Installationskript enthält. " "Diese Einstellungen wurden bei einer früheren Datentyp-Installation von Ihnen " "gewählt und abgespeichert. Sollen folgende Einstellungen übernommen werden ? " )) (set #help_askuseinstallcache (cat "Wenn Sie diese Einstellungen übernehmen, werden Sie " "nicht mehr nach einigen Verzeichnissen oder Einstellungen gefragt, sondern die " "Einstellungen aus einer früheren Installation übernommen." )) (set #prompt_descdir "Sollen die Datentypen direkt nach dem Systemstart zur Verfügung stehen ?") (set #help_descdir (cat "Wenn die Datentypen direkt nach dem Systemstart zur Verfügung stehen sollen, werden " "die Deskriptoren nach Devs:Datatypes kopiert. Andernfalls werden sie nach " "Sys:Storage/Datatypes kopiert.\n\n" )) (set #abort_nocpu (cat #dt-name " kann leider nicht installiert werden, da Ihre CPU-Konfiguration nicht unterstützt wird.\n")) (set #abort_nodt (cat #dt-name " kann leider nicht installiert werden, da auf Ihrem System das Datentyp-System nicht installiert ist.\n")) (set #abort_olddt (cat #dt-name " kann leider nicht installiert werden, da auf Ihrem System die Version %s des Datentyp-Systems installiert ist, jedoch Version %s benötigt wird.\n")) ) ( ; english (if (= @installer-version 0) ( (set #help_askoptions "With an Installer prior to version 42.6 it can happen that you see checkbox-buttons without labels. Selecting these buttons will be ignored.\n\n") (set #help_askchoice "With an Installer prior to version 42.6 it can happen that you see radio-buttons without labels. Selecting these buttons will result in the next lower available selection.\n\n") ) ) (set #unknown "unknown") (set #choice_english "English") (set #choice_german "German") (set #choice_french "French") (set #choice_spanish "Spanish") (set #choice_portuguese "Portuguese") (set #choice_danish "Danish") (set #choice_italian "Italian") (set #choice_dutch "Dutch") (set #choice_norwegian "Norwegian") (set #choice_swedish "Swedish") (set #choice_polish "Polish") (set #choice_finnish "Finnish") (set #choice_hungarian "Hungarian") (set #choice_turkish "Turkish") (set #choice_greek "Greek") (set #choice_latin "Latin") (set #choice_esperanto "Esperanto") (set #choice_russian "Russian") ; LANGUAGE (set #choice_datatype "Datatype") (set #choice_descriptors "Descriptors") (set #choice_catalogs "Catalogs") (set #choice_docs "Documentation") (set #choice_developer "Developer material") (set #choice_prefs "Preference Tool") (set #choice_env "Configuration file") (set #choice_examples "Example files") (set #choice_icons "Datatype standard Icons") (set #choice_arexx "ARexx scripts") (set #choice_install "Install") (set #choice_uninstall "Uninstall") (set #choice_yes "Yes") (set #choice_no "No") (set #choice_none "None") (set #prompt_info (cat "\nWelcome to the " @app-name " datatype class\n" #dt-copyright "\n\n")) (set #prompt_install_uninstall (cat #prompt_info "Do you want to install or uninstall the datatype?")) (set #prompt_install_docs "Which typ of documentation do you want to install?") (set #prompt_install_asciidocs "For which languages do you want to install the ASCII documentation?") (set #prompt_install_hgdocs "For which languages do you want to install the HyperGuide documentation?") (set #prompt_install_agdocs "For which languages do you want to install the AmigaGuide® documentation?") (set #prompt_install_html "For which languages do you want to install the HTML documentation?") (set #prompt_install_dt_catalogs (cat "Which catalogs for " @app-name " do you want to install?")) (set #prompt_install_plangs "Support for which programming languages do you want to install?") (set #prompt_askcpufpu (cat "Please select the CPU/FPU configuration for which you want to install " #dt-name )) (set #prompt_askenv "Install Prefs file ?") (set #prompt_askdefaultdir "Where do the Datatypes related files reside (see help)?") (set #help_askdefaultdir (cat "All files, which haven't a defined place in the system are installed in the " "\"Datatype-Directory\". These are documentation files, developer files and " "other files misc files. But the datatype itself or the descriptors will not be " "installed there. These files are installed at the appropriate location in the system.\n\n" "By default the \"Datatype-Directory\" should be : \"Sys:Datatype\".\n\n")) (set #prompt_askprefsdir "Where to install the Preference Tool ?") (set #prompt_askdocsdir "Where to install the Documentation ?") (set #prompt_askclassdir "Where do the Classes belong ?") (set #prompt_askiconpackage "Which icon package do you use ?") (set #prompt_installing "Installing") (set #prompt_removing "Removing") (set #prompt_install_parts "Which parts do you want to install ?") (set #prompt_copy_dt "Copying the Datatype") (set #prompt_copy_descr "Copying the Descriptors") (set #prompt_copy "Do you want to copy the following file(s)?") (set #prompt_makedir "The following directory was not found, so it must be created:") (set #prompt_descdir "Should the datatypes be available directly after system start ?") (set #prompt_deinstalled (cat "Currently there is no deinstallation part for \"" @app-name "\"")) (set #prompt_askuseinstallcache (cat "There exists a file, which contains choices " "made by a earlier datatype installation. " "Should these choices be used ?" )) (set #help_askuseinstallcache (cat "" )) (set #help_askcpufpu (cat " Select here the CPU type that is installed in your system. " "\n\n Currently, this is a MC%s.\n\n If you select a certain CPU type " "in the choice box, the \"" #dt-name "\" will run on any CPU which " "type is higher or equal to the selection. However, it won't " "run on a system equipped with a lower type.\n\n" )) (set #help_descdir (cat "If the datatypes should be available directly after system start, " "the descriptors are copied to Devs:Datatypes otherwise to " "Sys:Storage/Datatypes.\n\n" )) (set #abort_nocpu (cat "Sorry, the script is unable to install " #dt-name ", because your CPU configuration is not supported.\n")) (set #abort_nodt (cat "Sorry, the Datatypes System is not installed on your system!\n")) (set #abort_olddt (cat "Sorry, the script is unable to install " #dt-name ", because the installed version %s of the datatypes system is to low. You need at least version %s.\n")) ) ) (if (> @installer-version 0) ( (set #help_askoptions "") (set #help_askchoice "") )) (P_CustomLanguage) ; -------------------------- end locale section -------------------------- ; --------------------------- begin procedures --------------------------- ; --- GetCPU ---------------------------------------------- (procedure P_GetCPUFPU ; Param: ; ; Results: ; #cpu #cpu_str ; -1 = unknown; 0 = 68000; 1 = 68010; 2 = 68020; 3 = 68030; 4 = 68040; ; 5 = 68060 ; #fpu #fpu_str ; -1 = unknown; 0 = NOFPU; 1 = 68881; 2 = 68882; 3 = FPU40 ; ; Used Vars: (set #cpu_str (database "cpu")) (set #cpu 0) (while (<> #cpu_str (select #cpu "68000" "68010" "68020" "68030" "68040" "68060" #cpu)) (set #cpu (+ #cpu 1)) ) (if (= #cpu 6) ( (set #cpu -1) (set #cpu_str #unknown) )) (if @installer-version ( (set #fpu_str (database "fpu")) (set #fpu 0) (while (<> #fpu_str (select #fpu "NOFPU" "68881" "68882" "FPU40" #fpu_str)) (set #fpu (+ #fpu 1)) ) (if (= #fpu 4) ( (set #fpu -1) (set #fpu_str #unknown) )) ) ; else ( (set #fpu -1) (set #fpu_str #unknown) ) ) ) ; --- BitToLanguage --------------------------------------- (procedure P_BitToLanguage ; Params: ; #langmask ; ; Results: ; #langmask #lang ; ; Used Vars: ; #i #bitmask (set #i 0) (set #bitmask %1111111111111111110) ; LANGUAGE (while (AND (< #i 18) (NOT (IN #langmask #i))) ; LANGUAGE ( (set #bitmask (BITOR (shiftleft #bitmask 1) %0000000000000000001)) ; LANGUAGE (set #i (+ #i 1)) ) ) (set #langmask (BITAND #langmask #bitmask)) (set #lang (select #i "english" "deutsch" "français" "español" "português" "dansk" "italiano" "nederlands" "norsk" "svenska" "polski" "suomi" "magyar" "greek" "esperanto" "türkçe" "latina" "russian" "")) ; LANGUAGE ) ; ******************************************************* ; ******************************************************* ; ; newgetversion () ; ; (C) 1997 by Andreas R. Kleinert (Andreas_Kleinert@t-online.de) ; Freeware. Feel free to add it to your own installer scripts! ; ; INPUT: #NGVER_NAME ; (file to check) ; OUTPUT: #NGVER #NGREV ; (version string) (revision string) ; ; Installer procedure to replace the (buggy) ; internal getversion() function by calling ; "C:Version" and parsing the resulting ; version information. ; ******************************************************* ; (procedure P_NewGetVersion (set #NGVER "") (set #NGREV "") (run "C:Version "#NGVER_NAME" FILE >ENV:ngver_verstring") (set #ngver_verstring (getenv "ENV:ngver_verstring")) (delete "ENV:ngver_verstring") (set #ngver_t1 #ngver_verstring) (until (= (strlen #ngver_t1) 0) ( (set #ngver_cmp (substr #ngver_t1 0 1)) (if (= #ngver_cmp " ") ( (set #ngver_t1 (substr #ngver_t1 1)) (set #ngver_t2 #ngver_t1) (set #ngver_cmp (substr #ngver_t2 0 1)) (until (= #ngver_cmp ".") ( (set #NGVER (cat #NGVER #ngver_cmp)) (set #ngver_t2 (substr #ngver_t2 1)) (set #ngver_cmp (substr #ngver_t2 0 1)) )) (set #NGREV (substr #ngver_t2 1)) )) (set #ngver_t1 (substr #ngver_t1 1)) )) ) ; ******************************************************* ; ******************************************************* ; --- GetVersion procedure -------------------------------- (procedure P_GetVersion ; Param: ; #file ; ; Results: ; #ver #rev ; ; Vars used: ; #vernum #NGVER_NAME #NGVER #NGREV) (if #USE_NEWGETVERSION ( (set #NGVER_NAME #file) (P_NewGetVersion) (set #ver #NGVER) (set #rev #NGREV) ) ; else ( (set #vernum (getversion (cat #file))) (set #ver (/ #vernum 65536)) (set #rev (- #vernum (* #ver 65536))) ) ) ) ; --- CompareVersions procedure --------------------------- (procedure P_CompareVersions ; Param: ; #ver #rev #ver2 #rev2 ; ; Results: ; #result ; -1 : #ver.#rev < #ver2.#rev2 ; 0 : #ver.#rev = #ver2.#rev2 ; 1 : #ver.#rev > #ver2.#rev2 ; ; Used Vars: (if (< #ver #ver2) (set #result -1) (if (> #ver #ver2) (set #result 1) (if (< #rev #rev2) (set #result -1) (if (> #rev #rev2) (set #result 1) (set #result 0) ) ) ) ) ) ; --- GetOSVersion ---------------------------------------- (procedure P_GetOSVersion ; Param: ; ; Results: ; #os_ver #os_rev #os_str ; ; Used Vars: ; #file #ver #rev #vernum #i (set #file "libs:version.library") (P_GetVersion) (set #os_ver #ver) (set #os_rev #rev) (set #i 0) (while (<> #os_ver (select #i 33 34 36 37 38 39 40 43 #os_ver)) (set #i (+ #i 1)) ) (set #os_str (select #i "1.2" "1.3" "2.0pre" "2.0" "2.1" "3.0" "3.1" "3.2" #unknown)) ) ; --- CheckAvailableCPUs ---------------------------------- (procedure P_CheckAvailableCPUs ; Params: ; #src-dir #dt-name ; ; Results: ; #dt_cpus #dt_fpus #dt_cpu_counter ; ; Used Vars: ; #i #file #bitmask #filetype #f (set #dt_cpus %000000) (set #dt_fpus %000000) (set #dt_cpu_counter 0) (foreach #src-dir (cat #dt-base ".datatype(%|.0(0|1|2|3|4|6)0(%|f))(%|.p)") ( (set #i 0) (set #file (substr @each-name (strlen (cat #dt-base ".datatype")))) ; fpu ? (set #f (patmatch ".0?0f(%|.p)" #file)) (if #f (if (patmatch "#?.p" #file) (set #file (substr #file 0 (- (strlen #file) 3))) ; else (set #file (substr #file 0 (- (strlen #file) 1))) ) ) (set #bitmask %000001) (while (NOT (patmatch (select #i "(%|.000)(%|.p)" ".010(%|.p)" ".020(%|.p)" ".030(%|.p)" ".040(%|.p)" ".060(%|.p)") #file)) ( (set #bitmask (shiftleft #bitmask 1)) (set #i (+ #i 1)) ) ) (if #f ( (set #dt_fpus (BITOR #dt_fpus #bitmask)) (set #dt_cpu_counter (+ #dt_cpu_counter 1)) ) ( (set #dt_cpus (BITOR #dt_cpus #bitmask)) (set #dt_cpu_counter (+ #dt_cpu_counter 1)) ) ) ) ) ) ; --- Check procedure --------------------------------------------------------- (procedure P_CheckExists ; Param: ; #dir ; ; Results: ; #chk_catalogs #chk_dt_catalogs ; #chk_docs #chk_agdocs #chk_asciidocs #chk_hgdocs #chk_htmldocs ; ; #chk_autodoc #chk_c_h #chk_c_example #chk_asm_i #chk_asm_example #chk_e_e ; #chk_e_example #chk_modula_def #chk_modula_mod #chk_modula_demo ; #chk_oberon_mod #chk_oberon_example #existsmask ; #chk_progdirs ; ; Vars used: ; #i #lang (set #chk_datatype (exists "classes/datatypes")) (set #chk_descr (exists "devs/datatypes")) (set #chk_env (exists "envarc/datatypes")) (set #chk_prefs (exists "prefs/datatypes")) (set #chk_examples (exists "examples")) (set #chk_arexx (exists "arexx")) ; Catalogs + Documentation (set #chk_dt_catalogs %000000000000000000) ; LANGUAGE (set #chk_asciidocs %000000000000000000) ; LANGUAGE (set #chk_agdocs %000000000000000000) ; LANGUAGE (set #chk_hgdocs %000000000000000000) ; LANGUAGE (set #chk_htmldocs %000000000000000000) ; LANGUAGE (set #langmask %111111111111111111) ; LANGUAGE (while (P_BitToLanguage)( ; Catalogs (if (exists (cat (tackon #dir "locale/catalogs/") #lang "/" #dt-base "_" #dt-suffix ".catalog") (noreq)) ( (set #chk_dt_catalogs (BITOR #chk_dt_catalogs %1000000000000000000)) ; LANGUAGE (set #chk_dt_catalogs (shiftright #chk_dt_catalogs 1)) ) ; else ( (set #chk_dt_catalogs (shiftright #chk_dt_catalogs 1)) ) ) ; Docs/ASCII (if (exists (cat (tackon #dir "Docs/") #lang "/" #dt-base "_" #dt-suffix ".doc") (noreq)) ( (set #chk_asciidocs (BITOR #chk_asciidocs %1000000000000000000)) ; LANGUAGE (set #chk_asciidocs (shiftright #chk_asciidocs 1)) ) ; else ( (set #chk_asciidocs (shiftright #chk_asciidocs 1)) ) ) ; Docs/AmigaGuide (if (exists (cat (tackon #dir "Docs/") #lang "/" #dt-base "_" #dt-suffix ".guide") (noreq)) ( (set #chk_agdocs (BITOR #chk_agdocs %1000000000000000000)) ; LANGUAGE (set #chk_agdocs (shiftright #chk_agdocs 1)) ) ; else ( (set #chk_agdocs (shiftright #chk_agdocs 1)) ) ) ; Docs/HyperGuide (if (exists (cat (tackon #dir "Docs/") #lang "/" #dt-base "_" #dt-suffix ".hguide") (noreq)) ( (set #chk_hgdocs (BITOR #chk_hgdocs %1000000000000000000)) ; LANGUAGE (set #chk_hgdocs (shiftright #chk_hgdocs 1)) ) ; else ( (set #chk_hgdocs (shiftright #chk_hgdocs 1)) ) ) ; Docs/HyperGuide (if (exists (cat #dir "Docs/" #lang "/" #dt-base "_" #dt-suffix ".html") (noreq)) ( (set #chk_htmldocs (BITOR #chk_htmldocs %1000000000000000000)) ; LANGUAGE (set #chk_htmldocs (shiftright #chk_htmldocs 1)) ) ; else ( (set #chk_htmldocs (shiftright #chk_htmldocs 1)) ) ) )) (set #chk_catalogs #chk_dt_catalogs) (set #chk_docs (BITOR (if #chk_asciidocs %0001 %0000) (if #chk_agdocs %0010 %0000) (if #chk_hgdocs %0100 %0000) (if #chk_htmldocs %1000 %0000) ) ) (set #chk_user_docs %0) (if (NOT #chk_docs) ( (if (exists (cat #dir (tackon #dt-doc-dir #dt-doc))) (set #chk_user_docs %1) ) ) ) ; Icon package (set #iconmask (BITOR (if (exists (cat #dir "Icons/Standard/def_Icons")) %001 %000) (if (exists (cat #dir "Icons/MagicWB/def_Icons")) %010 %000) (if (exists (cat #dir "Icons/NewIcons/def_Icons")) %100 %000) )) (set #chk_icons #iconmask) ; Developer (set #chk_proglang %000000) (set #chk_progdirs %000000) (set #chk_autodoc (exists (cat #dir "Developer/Autodocs/" #dt-base "_" #dt-suffix ".doc") (noreq))) (set #chk_autodoc_guide (exists (cat #dir "Developer/Autodocs/" #dt-base "_" #dt-suffix) (noreq))) (set #chk_fd (exists (cat "Developer/FD/" #dt-base "dtclass_lib.fd") (noreq))) ; C (set #chk_progdirs (BITOR #chk_progdirs (if (exists "Developer/C" (noreq)) %000001 %000000))) (set #chk_c_h (exists (cat "Developer/C/Include/Datatypes/" #dt-base "class.h") (noreq))) (set #chk_c_clib (exists (cat "Developer/C/Include/CLib/" #dt-base "dtclass_protos.h") (noreq))) (set #chk_c_pragmas (exists (cat "Developer/C/Include/Pragmas/" #dt-base "dtclass_pragmas.h") (noreq))) (set #chk_c_proto (exists (cat "Developer/C/Include/Proto/" #dt-base "dtclass.h") (noreq))) (set #chk_c_inline (exists (cat "Developer/C/Include/Inline/" #dt-base "dtclass_inline.h") (noreq))) (set #chk_c_example (exists (cat "Developer/C/Examples/" #dt-base "-Demo.c") (noreq))) (if #chk_c_h (set #chk_proglang (BITOR #chk_proglang %000001)) ) ; C++ ; not supported yet ; Assembler (set #chk_progdirs (BITOR #chk_progdirs (if (exists (cat #dir "Developer/Assembler") (noreq)) %000100 %000000))) (set #chk_asm_i (exists (cat "Developer/Assembler/Include/Datatypes/" #dt-base "class.i") (noreq))) (set #chk_asm_example (exists (cat "Developer/Assembler/Examples/" #dt-base "-Demo.s") (noreq))) (if #chk_asm_i (set #chk_proglang (BITOR #chk_proglang %000100)) ) ; Amiga-E (set #chk_progdirs (BITOR #chk_progdirs (if (exists (cat #dir "Developer/Amiga-E") (noreq)) %001000 %000000))) (set #chk_e_e (exists (cat "Developer/Amiga-E/Modules/Datatypes/" #dt-base "class.e") (noreq))) (set #chk_e_example (exists (cat "Developer/Amiga-E/Examples/" #dt-base "-Demo.e") (noreq))) (if #chk_e_e (set #chk_proglang (BITOR #chk_proglang %001000)) ) ; Modula-II (set #chk_progdirs (BITOR #chk_progdirs (if (exists (cat #dir "Developer/Modula") (noreq)) %010000 %000000))) (set #chk_modula_def (exists (cat "Developer/Modula/Datatypes/" #dt-base ".def") (noreq))) (set #chk_modula_mod (exists (cat "Developer/Modula/Datatypes/" #dt-base ".mod") (noreq))) (set #chk_modula_demo (exists (cat "Developer/Modula/Examples/" #dt-base "-Demo.mod") (noreq))) (if (AND #chk_modula_def #chk_modula_mod) (set #chk_proglang (BITOR #chk_proglang %010000)) ) ; Oberon (set #chk_progdirs (BITOR #chk_progdirs (if (exists (cat #dir "Developer/Oberon") (noreq)) %100000 %000000))) (set #chk_oberon_mod (exists (cat "Developer/Oberon/Datatypes/" #dt-base ".mod") (noreq))) (set #chk_oberon_example (exists (cat "Developer/Oberon/Examples/" #dt-base "-Demo.mod") (noreq))) (if #chk_oberon_mod (set #chk_proglang (BITOR #chk_proglang %100000)) ) ; is there any developer informations ? (set #chk_developer #chk_proglang) (P_CustomCheck) (set #existsmask (BITOR (if #chk_datatype %0000000001 %000000000) (if #chk_descr %0000000010 %000000000) (if #chk_env %0000000100 %000000000) (if #chk_catalogs %0000001000 %000000000) (if #chk_docs %0000010000 %000000000) (if #chk_prefs %0000100000 %000000000) (if #chk_icons %0001000000 %000000000) (if #chk_arexx %0010000000 %000000000) (if #chk_examples %0100000000 %000000000) (if #chk_developer %1000000000 %000000000) )) ) ; --- AskLanguages ---------------------------------------- (procedure P_AskLanguages ; Params: ; #prompt #langmask #defaultmask ; ; Results: ; #langmask ; ; Used Vars: ; #bitmask (set #langmask (BITAND #langmask %111111111111111111)) ; LANGUAGE (if #langmask ( (set #bitmask (askoptions (prompt #prompt) (help #help_askoptions @askoptions-help) (default (BITAND #defaultmask #langmask)) (choices (if (IN #langmask 0) (cat #prop #choice_english) ("") ) (if (IN #langmask 1) (cat #prop #choice_german) ("") ) (if (IN #langmask 2) (cat #prop #choice_french) ("") ) (if (IN #langmask 3) (cat #prop #choice_spanish) ("") ) (if (IN #langmask 4) (cat #prop #choice_portuguese) ("") ) (if (IN #langmask 5) (cat #prop #choice_danish) ("") ) (if (IN #langmask 6) (cat #prop #choice_italian) ("") ) (if (IN #langmask 7) (cat #prop #choice_dutch) ("") ) (if (IN #langmask 8) (cat #prop #choice_norwegian) ("") ) (if (IN #langmask 9) (cat #prop #choice_swedish) ("") ) (if (IN #langmask 10) (cat #prop #choice_polish) ("") ) (if (IN #langmask 11) (cat #prop #choice_finnish) ("") ) (if (IN #langmask 12) (cat #prop #choice_hungarian) ("") ) (if (IN #langmask 13) (cat #prop #choice_greek) ("") ) (if (IN #langmask 14) (cat #prop #choice_esperanto) ("") ) (if (IN #langmask 15) (cat #prop #choice_turkish) ("") ) (if (IN #langmask 16) (cat #prop #choice_latin) ("") ) (if (IN #langmask 17) (cat #prop #choice_russian) ("") ) ; LANGUAGE ) ) ) (set #langmask (BITAND #langmask #bitmask)) ) ) ) ; --- AskProgLang ------------------------------------------------------------- (procedure P_AskProgLangs ; Params: ; #prompt #plangmask #defaultmask ; ; Results: ; #plangmask ; ; Used Vars: ; #bitmask (set #plangmask (BITAND #plangmask %111101)) (if #plangmask ( (set #bitmask (askoptions (prompt #prompt) (help #help_askoptions @askoptions-help) (default (BITAND #defaultmask #plangmask)) (choices (if (IN #plangmask 0) (cat #prop "C") ("") ) (if (IN #plangmask 1) (cat #prop "C++") ("") ) (if (IN #plangmask 2) (cat #prop "Assembler") ("") ) (if (IN #plangmask 3) (cat #prop "Amiga-E") ("") ) (if (IN #plangmask 4) (cat #prop "Modula-II") ("") ) (if (IN #plangmask 5) (cat #prop "Oberon") ("") ) )) ) (set #plangmask (BITAND #plangmask #bitmask)) ) ) ) ; --- P_GetCPUString (procedure P_GetCPUString ; Params: ; #cpu ; ; Results: ; #cpu_str ; ; Used Vars: ; (set #cpu_str (select #cpu "MC68000" "MC68010" "MC68020" "MC68020+FPU" "MC68030" "MC68030+FPU" "MC68040" "MC68040+FPU" "MC68060")) ) ; --- AskCPUFPU ------------------------------------------- (procedure P_AskCPUFPU ; Params: ; ; Results: ; #cpu #cpu_str #dt_cpu_file_extension ; ; Used Vars: ; #i #file #bitmask #filetype #f #dt_cpus #dt_fpus #dir ; #defaultcpu #dt_cpu_counter #fpu #fpu_str #cpu2 (set #src-dir "classes/datatypes") (P_CheckAvailableCPUs) ; if there was a user selection from a previous datatype installation use this CPU type (if (NOT #installcache) ( (P_GetCPUFPU) (set #defaultcpu -1) (while (AND (>= #cpu 0) (= #defaultcpu -1)) ( (if (AND #fpu (IN #dt_fpus #cpu)) (set #defaultcpu (select #cpu -1 -1 3 5 7 -1)) (if (IN #dt_cpus #cpu) (set #defaultcpu (select #cpu 0 1 2 4 6 8)) ) ) (set #cpu (- #cpu 1)) ) ) (if (= #defaultcpu -1) (abort #abort_nocpu) ) (if (AND (> #dt_cpu_counter 1) (= @user-level 2)) ( (set #cpu (askchoice (prompt #prompt_askcpufpu) (help (cat (#help_askcpufpu #cpu_str) #help_askchoice @askchoice-help)) (default #defaultcpu) (choices (if (IN #dt_cpus 0) (cat #prop "MC68000") ("") ) (if (IN #dt_cpus 1) (cat #prop "MC68010") ("") ) (if (IN #dt_cpus 2) (cat #prop "MC68020") ("") ) (if (IN #dt_fpus 2) (cat #prop "MC68020+FPU") ("") ) (if (IN #dt_cpus 3) (cat #prop "MC68030") ("") ) (if (IN #dt_fpus 3) (cat #prop "MC68030+FPU") ("") ) (if (IN #dt_cpus 4) (cat #prop "MC68040") ("") ) (if (IN #dt_fpus 4) (cat #prop "MC68040+FPU") ("") ) (if (IN #dt_cpus 5) (cat #prop "MC68060") ("") ) ) ) ) ) (set #cpu #defaultcpu) ) (set #cpu_save #cpu) )) ; select lower cpu if not available (set #cpu2 (select #cpu 0 1 2 2 3 3 4 4 5)) (set #fpu2 (select #cpu 0 0 0 1 0 1 0 1 0)) (while (NOT (OR (AND #fpu2 (AND #fpu (IN #dt_fpus #cpu2))) (AND (NOT #fpu2) (IN #dt_cpus #cpu2)))) ( (set #cpu (- #cpu 1)) (set #cpu2 (select #cpu 0 1 2 2 3 3 4 4 5)) (set #fpu2 (select #cpu 0 0 0 1 0 1 0 1 0)) ) ) (P_GetCPUString) (set #dt_cpu_file_extension (select #cpu (if (exists (cat #dir "/" #dt-base ".datatype.000") (noreq)) (".000") ("")) ".010" ".020" ".020f" ".030" ".030f" ".040" ".040f" ".060")) (set #cpu #cpu2) ) ; --- AskDocFormat ---------------------------------------- (procedure P_AskDocFormats ; Params: ; #prompt_install_docs #docmask #defaultmask ; ; Results: ; #docmask ; ; Used Vars: ; #bitmask (set #docmask (BITAND #docmask %1111)) (if #docmask ( (set #bitmask (askoptions (prompt #prompt_install_docs) (help #help_askoptions @askoptions-help) (default (BITAND #defaultmask #docmask)) (choices (if (IN #docmask 0) (cat #prop "ASCII") ("") ) (if (IN #docmask 1) (cat #prop "AmigaGuide®") ("") ) (if (IN #docmask 2) (cat #prop "HyperGuide") ("") ) (if (IN #docmask 3) (cat #prop "HTML") ("") ) ) )) (set #docmask (BITAND #docmask #bitmask)) ) ) ) ; --- AskDefaultDir --------------------------------------- (procedure P_AskDefaultDir ; Params: ; #prompt_askdefaultdir ; ; Results: ; #defaultdir ; ; Used Vars: (if (= @user-level 2) ( (set #defaultdir (askdir (prompt #prompt_askdefaultdir) (help (cat #help_askdefaultdir @askdir-help)) (default #defaultdir) ) ) )) (set @default-dest #defaultdir) ) ; --- AskIconPackage -------------------------------------- (procedure P_AskIconPackage ; Params: ; #prompt_askiconpackage #iconmask ; ; Results: ; #iconpackage ; ; Used Vars: ; #bitmask (set #iconmask (BITAND #iconmask %111)) (if #iconmask ( (set #iconpackage-nr (askchoice (prompt #prompt_askiconpackage) (help #help_askoptions @askoptions-help) (default (BITAND #defaultmask #docmask)) (choices (if (IN #iconmask 0) (cat #prop "Standard") ("") ) (if (IN #iconmask 1) (cat #prop "MagicWB") ("") ) (if (IN #iconmask 2) (cat #prop "NewIcons") ("") ) (#choice_none) ) )) (set #iconpackage (select #iconpackage-nr "Standard" "MagicWB" "NewIcons" "")) ) ) ) ; --- GetVersion ------------------------------------------ (procedure P_GetVersion ; Param: ; #file ; ; Results: ; #ver #rev ; ; Vars used: ; #vernum (set #vernum (getversion (cat #file))) (set #ver (/ #vernum 65536)) (set #rev (- #vernum (* #ver 65536))) ) ; --- GetDTVersion ---------------------------------------- (procedure P_GetDTVersion ; Params: ; ; Results: ; #dt_ver #dt_rev #dt_str ; ; Used Vars: ; #file #ver #rev #vernum #i (set #file "libs:datatypes.library") (if (exists #file (noreq)) ( (set #file "libs:datatypes.library") (P_GetVersion) (set #dt_ver #ver) (set #dt_rev #rev) (set #dt_str (cat #ver "." #rev)) ) ( (set #dt_ver 0) (set #dt_rev 0) (set #dt_str "") ) ) ) ; --- AskParts ---------------------------------------------------------------- (procedure P_AskParts ; Params: ; #prompt #defaultmask #existsmask ; ; Results: ; #parts ; ; Used Vars: (set #existsmask (BITOR #existsmask (SHIFTLEFT #custommask #max_standard_parts))) (set #existsmask (if (= @user-level 2) #existsmask ; disable developer stuff (BITAND #existsmask (BITOR %0111111111 (SHIFTLEFT #custom_parts_default #max_standard_parts))) ) ) (if #existsmask ( (P_CustomParts) (set #parts (askoptions (prompt #prompt) (help #help_askoptions @askoptions-help) (default (BITAND #defaultmask #existsmask)) (choices (if (IN #existsmask 0) (cat #prop #choice_datatype) ("") ) (if (IN #existsmask 1) (cat #prop #choice_descriptors) ("") ) (if (IN #existsmask 2) (cat #prop #choice_env) ("") ) (if (IN #existsmask 3) (cat #prop #choice_catalogs) ("") ) (if (IN #existsmask 4) (cat #prop #choice_docs) ("") ) (if (IN #existsmask 5) (cat #prop #choice_prefs) ("") ) (if (IN #existsmask 6) (cat #prop #choice_icons) ("") ) (if (IN #existsmask 7) (cat #prop #choice_arexx) ("") ) (if (IN #existsmask 8) (cat #prop #choice_examples) ("") ) (if (IN #existsmask 9) (cat #prop #choice_developer) ("") ) (if (IN #custommask 0) (cat #prop #custom_part1) ("") ) (if (IN #custommask 1) (cat #prop #custom_part2) ("") ) (if (IN #custommask 2) (cat #prop #custom_part3) ("") ) )) ) (set #parts (BITAND #parts #existsmask)) (set #install_datatype (IN #parts 0)) (set #install_descriptors (IN #parts 1)) (set #install_env (IN #parts 2)) (set #install_catalogs (IN #parts 3)) (set #install_docs (IN #parts 4)) (set #install_prefs (IN #parts 5)) (set #install_icons (IN #parts 6)) (set #install_arexx (IN #parts 7)) (set #install_examples (IN #parts 8)) (set #install_developer (IN #parts 9)) (set #install_custom_parts (SHIFTRIGHT #parts #max_standard_parts)) ) ; else ( (set #parts 0) ) ) ) ; --- P_Completed ----------------------------------------- (procedure P_Completed ; Params: ; #completed ; ; Results: ; ; Used Vars: ; #precent #max_installation_parts (set #max_installation_parts 27) (set #percent (/ (* 100 #completed) #max_installation_parts)) (complete #percent) (set #completed (+ #completed 1)) ) ; --- P_DeleteFile ---------------------------------------- (procedure P_DeleteFile ; Params: ; #file ; ; Results: ; ; Used Vars: (if (exists #file) ( (delete #file) (if (exists (cat #file ".info")) (delete (cat #file ".info")) ) )) ) ; --- MkDirInfo ------------------------------------------- (procedure P_MkDirInfo ; Params: ; #dest-dir #infos ; ; Results: ; ; Used Vars: ; #tmp (set #tmp (tackon #defaultdir #dest-dir)) (if (NOT (exists #tmp (noreq))) (if #infos (makedir #tmp (prompt #prompt_makedir "\n\n" #tmp) (help @makedir-help) (infos) (confirm "expert")) (makedir #tmp (prompt #prompt_makedir "\n\n" #tmp) (help @makedir-help) (confirm "expert")) ) ) ) ; --- P_CpNewFile ----------------------------------------- (procedure P_CpNewFile ; Params: ; #dest-dir #src-dir #file #infos ; ; Results: ; ; Used Vars: ; #tmp (set #tmp #file) (if (exists (tackon #dest-dir #file)) ( (set #file (tackon #dest-dir #tmp)) (P_GetVersion) (set #ver2 #ver) (set #rev2 #rev) (set #file (tackon #src-dir #tmp)) (P_GetVersion) (if (= (P_CompareVersions) 1) ( (set #file #tmp) (P_CpFile) ) ) ) ; else (P_CpFile) ) ) ; --- P_CpFile -------------------------------------------- (procedure P_CpFile ; Params: ; #dest-dir #src-dir #file #infos ; ; Results: ; ; Used Vars: ; #tmp (if #infos (copyfiles (prompt #prompt_copy) (help @copyfiles-help) (source (cat #src-dir "/" #file)) (dest #dest-dir) (files) (infos) (optional "nofail" "force") (confirm "expert") ) (copyfiles (prompt #prompt_copy) (help @copyfiles-help) (source (cat #src-dir "/" #file)) (dest #dest-dir) (files) (optional "nofail" "force") (confirm "expert") ) ) ) ; ---------------------------- end procedures ---------------------------- ; -------------------------- begin installation -------------------------- ; 0. Begin installation process ; 0.1 Check datatypes.library (P_GetDTVersion) (if (= #dt_ver 0) (abort #abort_nodt) ) (set #ver2 #min_dt_version) (set #rev2 #min_dt_revision) (P_CompareVersions) (if (= #result -1)( (abort (#abort_olddt #dt_str (cat #min_dt_version "." #min_dt_revision))) )) ; 0.2 Ask installation mode ;(set #mode ; (askchoice ; (prompt #prompt_install_uninstall) ; (help @askchoice-help) ; (choices #choice_install #choice_uninstall) ; ) ;) ; only install mode now (set #mode 0) (if #mode (set #pmode #prompt_uninstall) (set #pmode #prompt_install) ) ; 0.3 Ask default dir (P_AskDefaultDir) (set @default-dest #defaultdir) ; Show what we are doing (working (cat #pmode " " @app-name)) ; 0.4 Check distribution structure (set #dir "") (P_CheckExists) ; 0.5 Try to get cached installation selections (if (exists (cat (tackon @default-dest #save_user_selections_icon) ".info")) ( (iconinfo (dest (tackon @default-dest #save_user_selections_icon)) (gettooltype "CPU" "#tmpcpu") (gettooltype "IconPackage" "#iconpackage") (gettooltype "ClassDir" "#classdir") (gettooltype "DescriptorDir" "#descdir") (gettooltype "ARexxDir" "#arexxdir") ) (set #iconpackage (if (= #iconpackage "none") ("") (#iconpackage))) (set #cpu (+ #tmpcpu)) (P_GetCPUString) (if (askbool (prompt (cat #prompt_askuseinstallcache "\n\n" ("CPU=%s\nClassDir=%s\nDescriptorDir=%s\nARexxDir=%s\n" #cpu_str #classdir #descdir #arexxdir) (if (> (strlen #iconpackage) 0) ("IconPackage=%s\n" #iconpackage) ("")) )) (help #prompt_helpuseinstallcache) ) ( (set #installcache 1) ; disable saving off user selections. They are saved! (set #save_user_selections 0) ) ) )) (complete 0) (set #completed 0) ; now do install or remove (if (= #mode 0) ; 1. Install ( ; 1.1 User selections ; choose installation parts (set #prompt #prompt_install_parts) (set #defaultmask (BITOR %1111111111 (SHIFTLEFT #custom_parts_default #max_standard_parts))) (P_AskParts) (set #docsdir (cat (tackon #defaultdir "Docs/") #dt-type)) (P_Completed) ; 1.1.1 choose #cpu type (if #install_datatype ( ; get classes dir (if (NOT #installcache) ( (set #classdir (askdir (prompt #prompt_askclassdir) (help @askdir-help) (default #classdir) ) ) ) ) (P_AskCPUFPU) (debug "Selected CPU-Number is " #cpu) (debug "Selected CPU-String is " #cpu_str) (debug "Selected CPU-Extension is " #dt_cpu_file_extension) (set #dt-file (cat (tackon "classes/datatypes" #dt-base) ".datatype" #dt_cpu_file_extension)) )) (P_Completed) ; 1.1.2. choose descriptor directory (if #install_descriptors ( (if (AND (NOT #installcache) (exists "devs/datatypes")) ( (if (= 0 (askchoice (prompt #prompt_descdir) (help (cat #help_descdir @askchoice-help)) (choices #choice_yes #choice_no))) (set #descdir "Devs:Datatypes") (set #descdir "Sys:Storage/Datatypes") ) )) )) (P_Completed) ; 1.1.3. choose catalog language (if #install_catalogs ( ; catalogs (P_AskLanguages) (if (OR (NOT #update) (AND #update (IN #parts 1))) ( (set #prompt #prompt_install_dt_catalogs) (set #langmask (BITAND #chk_dt_catalogs (BITNOT #old_dt_catalogs))) (set #defaultmask (BITAND #language_default (BITNOT #old_dt_catalogs))) (P_AskLanguages) (set #install_dt_catalogs #langmask) ) ; else ( (set #install_dt_catalogs 0) ) ) )) (P_Completed) ; 1.1.4. choose iconpackage (if (AND #install_icons (OR (NOT #installcache) (= (strlen #iconpackage) 0))) ( (P_AskIconPackage) )) (set #icondir (cat (tackon #defaultdir "Misc/Icons"))) (P_Completed) ; 1.1.4. choose documentation format and language (if #install_docs ( ; (P_AskDocFormats) (if (OR (NOT #update) (AND #update (IN #parts 2))) ( (set #prompt #prompt_install_docs) (set #docmask (BITAND #chk_docs (BITNOT #old_docs))) (set #defaultmask (BITAND %1111 (BITNOT #old_docs))) (P_AskDocFormats) (set #install_docs #docmask) ) ; else ( (set #install_docs 0) ) ) ; asciidocs (P_AskLanguages) (if (IN #install_docs 0) ( (set #prompt #prompt_install_asciidocs) (set #langmask (BITAND #chk_asciidocs (BITNOT #old_asciidocs))) (set #defaultmask (BITAND #language_default (BITNOT #old_asciidocs))) (P_AskLanguages) (set #install_asciidocs #langmask) ) ; else ( (set #install_asciidocs 0) ) ) ; agdocs (P_AskLanguages) (if (IN #install_docs 1) ( (set #prompt #prompt_install_agdocs) (set #langmask (BITAND #chk_agdocs (BITNOT #old_agdocs))) (set #defaultmask (BITAND #language_default (BITNOT #old_agdocs))) (P_AskLanguages) (set #install_agdocs #langmask) ) ; else ( (set #install_agdocs 0) ) ) ; hgdocs (P_AskLanguages) (if (IN #install_docs 2) ( (set #prompt #prompt_install_hgdocs) (set #langmask (BITAND #chk_hgdocs (BITNOT #old_hgdocs))) (set #defaultmask (BITAND #language_default (BITNOT #old_hgdocs))) (P_AskLanguages) (set #install_hgdocs #langmask) ) ; else ( (set #install_hgdocs 0) ) ) ; htmldocs (P_AskLanguages) (if (IN #install_docs 3) ( (set #prompt #prompt_install_htmldocs) (set #langmask (BITAND #chk_htmldocs (BITNOT #old_htmldocs))) (set #defaultmask (BITAND #language_default (BITNOT #old_htmldocs))) (P_AskLanguages) (set #install_htmldocs #langmask) ) ; else ( (set #install_htmldocs 0) ) ) )) (P_Completed) ; 1.1.5. choose prefs tools directory (if #install_prefs ( (if (exists "prefs/datatypes") ( (set #dt_prefs_dir (askdir (prompt #prompt_askprefsdir) (help @askdir-help) (default #prefsdir) ) ) )) )) (P_Completed) ; 1.1.6. choose programming language (if #install_developer ( (set #prompt #prompt_install_plangs) (set #plangmask (BITAND #chk_proglang (BITNOT #old_proglang))) (set #defaultmask #old_progdirs) (P_AskProgLangs) (set #install_proglang #plangmask) ) (set #install_proglang 0) ) (P_Completed) ; 1.1.6. Custom Ask (P_CustomAsk) (P_Completed) ; 1.2 Installation process ; 1.2.1. Install datatype (if #install_datatype ( ; patched datatype (if (NOT (exists (#dt-file))) ( (set #file (cat #dt-file ".p")) (if (NOT (exists #file)) (abort #abort_nodt) ) (run (cat #spatch " -o" #dt-file " -p" #file " " (tackon "classes/datatypes" #dt-patchbase))) ) ) (set #file #dt-file) (P_GetVersion) (debug ("File %s -> Version %ld.%ld" #file #ver #rev)) (copylib (prompt #prompt_copy_dt) (help @copylib-help) (source #dt-file) (dest (tackon #classdir "Datatypes")) (newname #dt-name) (confirm) ) )) (P_Completed) ; 1.2.2. Install the descriptors (if #install_descriptors ( (copyfiles (prompt #prompt_copy_descr) (help @copyfiles-help) (source "devs/datatypes") (dest #descdir) (pattern "#?") (infos) (confirm "expert") ) ; Tell the system about the new descriptors (run "C:AddDataTypes Refresh") )) (P_Completed) ; 1.2.3. Install prefs file (if #install_env ( (if (exists (tackon "envarc/datatypes" (cat #dt-base ".prefs"))) ( (set #src-dir "envarc/datatypes") (set #file (cat #dt-base ".prefs")) (set #dest-dir "EnvArc:Datatypes") (P_CpFile) (set #dest-dir "Env:Datatypes") (P_CpFile) )) )) (P_Completed) ; 1.2.4. Install catalogs (if #install_catalogs ( (set #langmask #install_dt_catalogs) (while #langmask ( (P_BitToLanguage) (set #src-dir (cat "Locale/Catalogs/" #lang)) (set #dest-dir (cat "Locale:Catalogs/" #lang)) (set #file (cat #dt-base "_" #dt-suffix ".catalog")) (P_CpFile) ) ) ) ) (P_Completed) ; 1.2.5. Install documentation ( ; 1.2.5.1 Install ASCII docs (if #install_asciidocs ( (set #infos 1) (set #dest-dir #docsdir) (P_MkDirInfo) (set #langmask #install_asciidocs) (while #langmask ( (P_BitToLanguage) (set #src-dir (cat "Docs/" #lang)) (set #file (cat #dt-base "_" #dt-suffix ".doc")) (P_CpFile) (set #i 0) (while (set #doc (select #i #dt-more-docs)) (set #file (cat #doc ".doc")) (P_CpFile) (set #i (+ #i 1)) ) ) ) ) ) ; 1.2.5.2 Install amigaguide docs (if #install_agdocs ( (set #infos 1) (set #dest-dir #docsdir) (P_MkDirInfo) (set #langmask #install_agdocs) (while #langmask ( (P_BitToLanguage) (set #src-dir (cat "Docs/" #lang)) (set #file (cat #dt-base "_" #dt-suffix ".guide")) (P_CpFile) (set #i 0) (while (set #doc (select #i #dt-more-docs)) (set #file (cat #doc ".guide")) (P_CpFile) (set #i (+ #i 1)) ) ) ) ) ) ; 1.2.5.3. Install hyperguide docs (if #install_hgdocs ( (set #infos 1) (set #dest-dir #docsdir) (P_MkDirInfo) (set #langmask #install_hgdocs) (while #langmask ( (P_BitToLanguage) (set #src-dir (cat "Docs/" #lang)) (set #file (cat #dt-base "_" #dt-suffix ".hguide")) (P_CpFile) (set #i 0) (set #docs #dt-more-docs) (while #docs (set #doc (fileonly #docs)) (set #docs (pathonly #docs)) (set #file (cat #doc ".hguide")) (P_CpFile) (set #i (+ #i 1)) ) ; install HyperGuide macro file (if (AND (> (strlen #dt-hg-macro-file) 0) (exists (tackon #src-dir #dt-hg-macro-file))) ( (set #file #dt-hg-macro-file) (P_CpFile) )) ) ) ) ) ; 1.2.5.4. Install html docs (if #install_htmldocs ( (set #infos 1) (set #dest-dir #docsdir) (P_MkDirInfo) (set #langmask #install_htmldocs) (while #langmask ( (P_BitToLanguage) (set #src-dir (cat "Docs/" #lang)) (set #file (cat #dt-base "_" #dt-suffix ".html")) (P_CpFile) (set #i 0) (while (set #doc (select #i #dt-more-docs)) (set #file (cat #doc ".html")) (P_CpFile) (set #i (+ #i 1)) ) ) ) ) ) ; 1.2.5.5. Install none standard distribution documentation (if #chk_user_docs ( (set #dest-dir #docsdir) (set #src-dir #dt-doc-dir) (set #file #dt-doc-file) (P_CpFile) ) ) ) (P_Completed) ; 1.2.6. Install prefs tool (if #install_prefs ( (copyfiles (help @copyfiles-help) (source (tackon "prefs/datatypes" #dt-prefs)) (dest #dt_prefs_dir) ) )) (P_Completed) ; 1.2.7. Install Icons (if #install_icons ( (set #infos 1) (set #dest-dir #icondir) (P_MkDirInfo) (copyfiles (prompt #prompt_copyicons) (help @copyfiles-help) (source (cat #dir "Icons/" #iconpackage "/def_Icons")) (dest #icondir) (pattern "#?.info") (infos) (if (= @user-level 2) (confirm)) ) ) ) (P_Completed) ; 1.2.8. Install arexx scripts (if #install_arexx ( (set #infos 1) (set #dest-dir #arexxdir) (P_MkDirInfo) (set #dest-dir (tackon #arexxdir #dt-type)) (P_MkDirInfo) (copyfiles (prompt #prompt_arexxscripts) (help @copyfiles-help) (source "arexx") (dest (tackon #arexxdir #dt-type)) (pattern "#?") (infos) (if (= @user-level 2) (confirm)) ) ) ) (P_Completed) ; 1.2.9. Install examples (if #install_examples ( (set #infos 1) (set #dest-dir "Examples") (P_MkDirInfo) (set #dest-dir (tackon "Examples" #dt-type)) (P_MkDirInfo) (copyfiles (prompt #prompt_copyexamples) (help @copyfiles-help) (source (cat #dir "Examples")) (dest (tackon #defaultdir #dest-dir)) (pattern "#?") (infos) (if (= @user-level 2) (confirm)) ) ) ) (P_Completed) ; 1.2.10. Install developer stuff (if #install_developer ( (set #infos 1) (set #dest-dir "Developer") (P_MkDirInfo) ; 1.2.10.1. Install Autodoc (if #chk_autodoc ( (set #dest-dir "Developer/Autodocs") (P_MkDirInfo) (set #infos 1) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "_" #dt-suffix ".doc")) (P_CpFile) ) ) (if #chk_autodoc_guide ( (set #dest-dir "Developer/Autodocs") (P_MkDirInfo) (set #infos 1) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "_" #dt-suffix)) (P_CpFile) ) ) (P_Completed) (if #chk_fd ( (set #infos 1) (set #dest-dir "Developer/FD") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "dtclass_lib.fd")) (P_CpFile) ) ) ; 1.2.10.2. Install C Language stuff (if (IN #install_proglang 0) ( (set #infos 1) (set #dest-dir "Developer/C") (P_MkDirInfo) (set #infos 0) (set #dest-dir "Developer/C/Include") (P_MkDirInfo) (set #dest-dir "Developer/C/Include/Datatypes") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "class.h")) (P_CpFile) (if #chk_c_example ( (set #infos 0) (set #dest-dir "Developer/C/Examples") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "-Demo.c")) (P_CpFile) ) ) (if #chk_c_clib ( (set #infos 0) (set #dest-dir "Developer/C/Include/clib") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "dtclass_protos.h")) (P_CpFile) ) ) (if #chk_c_pragmas ( (set #infos 0) (set #dest-dir "Developer/C/Include/pragmas") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "dtclass_pragmas.h")) (P_CpFile) ) ) (if #chk_c_proto ( (set #infos 0) (set #dest-dir "Developer/C/Include/proto") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "dtclass.h")) (P_CpFile) ) ) (if #chk_c_inline ( (set #infos 1) (set #dest-dir "Developer/C/Include/inline") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "dtclass_inline.h")) (P_CpFile) ) ) ) ) (P_Completed) ; 1.2.10.3. Install C++ Language stuff (not supported) (P_Completed) ; 1.2.10.4. Install Asm Language stuff (if (IN #install_proglang 2) ( (set #infos 1) (set #dest-dir "Developer/Assembler") (P_MkDirInfo) (set #infos 0) (set #dest-dir "Developer/Assembler/Include") (P_MkDirInfo) (set #dest-dir "Developer/Assembler/Include/Datatypes") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "class.i")) (P_CpFile) (if #chk_asm_example ( (set #dest-dir "Developer/Assembler/Examples") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "-Demo.s")) (P_CpFile) ) ) ) ) (P_Completed) ; 1.2.10.5. Install Amiga-E Language stuff (if (IN #install_proglang 3) ( (set #infos 1) (set #dest-dir "Developer/Amiga-E") (P_MkDirInfo) (set #infos 0) (set #dest-dir "Developer/Amiga-E/Modules") (P_MkDirInfo) (set #dest-dir "Developer/Amiga-E/Modules/Datatypes") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "class.e")) (P_CpFile) (if #chk_e_example ( (set #dest-dir "Developer/Amiga-E/Examples") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "-Demo.e")) (P_CpFile) ) ) ) ) (P_Completed) ; 1.2.10.6. Install Modula-II Language stuff (if (IN #install_proglang 4) ( (set #infos 1) (set #dest-dir "Developer/Modula") (P_MkDirInfo) (set #dest-dir "Developer/Modula/Datatypes") (P_MkDirInfo) (set #infos 0) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base ".def")) (P_CpFile) (set #file (cat #dt-base ".mod")) (P_CpFile) (if #chk_modula_demo ( (set #dest-dir "Developer/Modula/Examples") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "-Demo.mod")) (P_CpFile) ) ) ) ) (P_Completed) ; 1.2.10.7. Install Oberon Language stuff (if (IN #install_proglang 5) ( (set #infos 1) (set #dest-dir "Developer/Oberon") (P_MkDirInfo) (set #dest-dir "Developer/Oberon/Datatypes") (P_MkDirInfo) (set #infos 0) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base ".mod")) (P_CpFile) (if #chk_oberon_example ( (set #dest-dir "Developer/Oberon/Examples") (P_MkDirInfo) (set #src-dir #dest-dir) (set #dest-dir (tackon #defaultdir #dest-dir)) (set #file (cat #dt-base "-Demo.mod")) (P_CpFile) ) ) ) ) ) ) (set #completed (- #max_installation_parts 2)) (P_Completed) ; 1.2.11. Install custom stuff (P_CustomInstall) (P_Completed) ; 1.3 Save installation options selected by the user (if #save_user_selections ( (set #dest-dir (pathonly (tackon @default-dest #save_user_selections_icon))) (makedir #dest-dir) (if (NOT (exists (cat (tackon @default-dest #save_user_selections_icon) ".info"))) ( (copyfiles (prompt #prompt_copyicon) (help @help-copyfiles) (source (cat @icon ".info")) (dest #dest-dir) (newname (cat (fileonly #save_user_selections_icon) ".info"))) (tooltype (dest (tackon @default-dest #save_user_selections_icon)) (setdefaulttool "") (settooltype "APPNAME") (settooltype "NOPRINT") (settooltype "LOG") (settooltype "LOGFILE") (settooltype "DEFUSER") (settooltype "MINUSER") ) )) (tooltype (dest (tackon @default-dest #save_user_selections_icon)) (settooltype "CPU" ("%ld" #cpu_save)) (settooltype "IconPackage" (if (> (strlen #iconpackage) 0) ("%s" #iconpackage) ("none"))) (settooltype "ClassDir" ("%s" #classdir)) (settooltype "DescriptorDir" ("%s" #descdir)) (settooltype "ARexxDir" ("%s" #arexxdir)) ) )) (P_Completed) ) ; 2. Remove TODO!!! ( ; Don't want to use the confusing "Installation Complete" message ; when what we really did was remove things... (message #prompt_deinstalled) (exit (quiet)) ; Remove the non-standard pieces (set #file (tackon (tackon #classdir "datatypes") #dt-name)) (P_DeleteFile) ; delete all descriptors (run (cat "delete " (tackon #descdir #dt-descrpat))) ; remove eventual prefs files (set #file (tackon "env:datatypes" #dt-prefs)) (P_DeleteFile) (set #file (tackon "envarc:datatypes" #dt-prefs)) (P_DeleteFile) ; TODO check language ;(set #file (tackon "Locale:Catalogs" (cat #dt-base "_" #dt-suffix ".catalog"))) ;(P_DeleteFile) (P_CustomUnInstall) ) )