Dies ist der Befehl ozmake, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
Ozmake – Machen Sie für Oz
ZUSAMMENFASSUNG
ozmake --help
ozmake [--bauen] [ZIELE...]
ozmake --Installieren [ZIELE...]
ozmake --Installieren [--package=PKG]
ozmake --deinstallieren [--package=PKG]
ozmake --sauber
ozmake --sehr sauber
ozmake --schaffen [--package=DATEI]
ozmake --veröffentlichen
ozmake --Extrakt [--package=PKG]
ozmake --aufführen [--package=MOGUL]
ozmake --config=(put|delete|list) ...
ozmake --mogul=(put|delete|list|export) ...
BESCHREIBUNG
ozmake OPTIONAL ZIELE
ozmake ist ein Werkzeug zum Erstellen Mozart-basierter Projekte sowie zum Erstellen und Installieren von Mozart
Pakete. Es wurde von den Unix-Tools inspiriert um und rpm,aber es ist viel, viel einfacher, ist
spezialisiert auf Mozart-basierte Softwareentwicklung und -bereitstellung, und zwar transparent
unterstützt alle Plattformen, auf denen Mozart portiert wurde. ozmake muss aktuell aufgerufen werden
von einer Shell, aber es wird irgendwann zusätzlich eine optionale, benutzerfreundliche Version erhalten
grafische Oberfläche.
OPTIONAL
Im Folgenden schreiben wir Metavariablen in spitze Klammern, z or <URI as
Cache-Speicher Pfad>
Allgemein Optionen
-v --verbose
Gibt mehr Ablaufverfolgungsinformationen als standardmäßig aus. Durch Bereitstellung dieser Option
zweimal erhalten Sie manchmal sogar noch mehr Informationen.
-q --leise
Unterdrücken Sie alle Nachverfolgungs- und Rückmeldungsinformationen
-n --just-print
Führen Sie einen Probelauf durch, dh drucken Sie einfach aus, was passieren würde, ohne dass es tatsächlich ausgeführt wird
die Taten
--lokal
Rekursieren Sie nicht in Unterverzeichnisse
--(no)autodepend
Standard: was immer dies auch sein sollte.
Ermitteln Sie automatisch Build- und Installationszeit-(Laufzeit-)Abhängigkeiten.
Derzeit wird dies nur für Oz-Quellen unterstützt, indem man sich Import und Require anschaut
.
--(nein)erfordert
Standard: was immer dies auch sein sollte.
Ruft automatisch andere Pakete ab und installiert sie, die für das aktuelle Paket erforderlich sind. Das
Diese Option ist sowohl für den Bau als auch für die Installation relevant.
Was Sie hier beachten sollten, ist Folgendes -vn ist dein Freund. Hinzufügen -vn am Ende eines jeden
ozmake Aufruf, und es wird Ihnen sehr detailliert sagen, was der Befehl ohne tun würde
es tatsächlich tun.
Verzeichnisse und URLs
--präfix=
Standard: ~/.oz
Stammverzeichnis des privaten Installationsbereichs
--dir=
Standard: Aktuelles Verzeichnis
Standardverzeichnis für andere Optionen unten
--builddir=
Standard:
Verzeichnis, in dem erstellt werden soll
--srcdir=
Standard:
Verzeichnis, in dem sich die Quelldateien befinden
--bindir=
Standard: /Behälter
Verzeichnis, in dem Bin-Ziele platziert werden
--libroot=
Standard: /Zwischenspeicher
Stammverzeichnis des Caches, in dem lib-Ziele installiert sind
--libdir=
Standard: /<URI as Cache-Speicher Pfad>
Verzeichnis, in dem lib-Ziele installiert sind
--docroot=
Standard: /doc
Stammverzeichnis, in dem Dokumentziele installiert werden
--docdir=
Standard: /<MOGUL as Dateiname>
Verzeichnis, in dem Dokumentziele installiert werden
--extractdir=
Standard:
Verzeichnis, in das ein Paket extrahiert werden soll
--archive=
Standard: http://www.mozart-oz.org/mogul/pkg
URL des Mogul-Archivs, von dem Pakete heruntergeladen werden können
--moguldir=
Verzeichnis, in dem Unterverzeichnisse für die Beiträge des Benutzers abgelegt werden: a
Verzeichnis für Pakete, eines für die Dokumentation, eines für Mogul-Datenbankeinträge.
--mogulurl=
URL, die dem MOGULDIR-Verzeichnis entspricht
Mappen
-m --makefile=
Standard: /makefile.oz
Speicherort des Makefiles
-p --Paket=
Datei oder URL des Pakets. Beim Erstellen eines Pakets sollte es sich um einen lokalen Dateinamen handeln.
beim Extrahieren oder Installieren kann es sich auch um eine URL oder eine Mogul-ID handeln; in Letzterem
In diesem Fall wird das Paket automatisch aus dem Mogul-Archiv heruntergeladen
-V --packageversion=
Diese Option wird von respektiert --Extrakt und --Installieren .Wann --Extrakt ist gegeben
Wenn Sie eine MOGUL-ID haben und das entsprechende Paket aus dem MOGUL-Archiv herunterladen, wird dies der Fall sein
Suchen Sie genau nach der angegebenen VERSION des Pakets. --Installieren Werde es einfach prüfen
dass das zu installierende Paket wirklich diese VERSION hat.
--Datenbank=
Standard: /DATENBANK
Basispfad der Datenbank der installierten Pakete. Die Datenbank wird sowohl in eingelegter als auch in eingelegter Form gespeichert
Textformat jeweils in den Dateien DB.ozf und DB.txt
Hilfe
ozmake --help
-h - Hilfe
Drucken Sie diese Informationsnachricht aus
Bauen
ozmake [--bauen]
Baue alle Ziele
ozmake [--bauen] DATEIEN...
Bauen Sie diese Ziele auf
-b --build
Dies ist die Standardeinstellung. Erstellt Ziele des Pakets
--optlevel=( keine | debug | optimieren)
Standard: optimieren
Wählen Sie die Optimierungsstufe für die Kompilierung aus
-g --debug --optlevel=debug
Kompilieren mit Debugging
-O --optimize --optlevel=optimize
Kompilieren mit vollständiger Optimierung. Dies ist die Standardeinstellung
--(nein)gnu
ist der C++-Compiler der GNU-Compiler. Dies wird automatisch ermittelt und ermöglicht u. a
höhere Optimierungsstufe, nämlich Passen -O3 anstatt nur -O zu den
Compiler
--(kein)vollständiger Build
Standard: falsch
Erstellen Sie auch die SRC-Ziele
--includedir DIR -I DIR
Weisen Sie den C++-Compiler an, das Verzeichnis zusätzlich nach Include-Dateien zu durchsuchen
--(no)sysincludedirs
Standard: was immer dies auch sein sollte.
Weisen Sie den C++-Compiler an, zusätzlich zu suchen (oder auch nicht, wenn er verwendet wird). --nosysincludedirs
)die Mozart-spezifischen Include-Verzeichnisse, die sich in der globalen Installation befinden
Verzeichnis und im privaten Verzeichnis des Benutzers ~/.oz Bereich.
--librarydir DIR -L DIR
Weisen Sie den C++-Linker an, das DIR zusätzlich nach Bibliotheken zu durchsuchen
--(no)syslibrarydirs
Standard: was immer dies auch sein sollte.
Weisen Sie den C++-Linker an, zusätzlich zu suchen (oder nicht, wenn er verwendet wird). --nosyslibrarydirs
)die Mozart-spezifischen Bibliotheksverzeichnisse, die sich in der globalen Installation befinden
Verzeichnis und im privaten Verzeichnis des Benutzers ~/.oz Bereich.
Installieren
ozmake --Installieren
mit dem Makefile installieren
ozmake --Installieren DATEIEN...
Installieren Sie diese Ziele mithilfe des Makefiles
ozmake --Installieren --package=PKG
Installationspaket PKG
-i --install
installiert Ziele des Pakets und aktualisiert die Paketdatenbank
--grade=( none | same | up | down | any | freshen )
Standard: keine
Was tun, wenn dieses Paket bereits installiert ist? ozmake vergleicht Version und
Datumsangaben, bei denen die Version aussagekräftiger ist. --grade=none signalisiert einen Fehler
--grade=gleich erfordert, dass Versionen und Daten gleich sind --grade=up benötigt ein
Paket mit einer neueren Version oder derselben Version und einem neueren Veröffentlichungsdatum als das Paket
installiert --grade=down erfordert ein Paket mit einer älteren oder derselben Version und
älteres Veröffentlichungsdatum als das installierte --grade=beliebig keine Bedingungen --grade=freshen
Installieren Sie es, wenn das Paket neuer ist, sonst tun Sie nichts
-U --upgrade
entspricht --Installieren --grade=up
--downgrade
entspricht --Installieren --grade=down
-A --anygrade
entspricht --Installieren --grade=beliebig
-F --frischen
entspricht --Installieren --grade=freshen
--(no)replacefiles
Standard: falsch
Erlauben Sie der Installation, Dateien aus anderen Paketen zu überschreiben
-R --replace
entspricht --Installieren --grade=beliebig --replacefiles
--(no)extendpackage
Standard: falsch
ob die aktuelle Installation dieses Pakets ersetzt oder erweitert werden soll, falls vorhanden
-X --extend
entspricht --Installieren --grade=beliebig --extendpackage
--(nein)gespeichertb
Standard: was immer dies auch sein sollte.
Speichern Sie die aktualisierte Datenbank nach der Installation
--includedocs --excludedocs
Standard: --includedocs
ob die Dokumentziele installiert werden sollen
--includelibs --excludelibs
Standard: --includelibs
ob die lib-Ziele installiert werden sollen
--includebins --excludebins
Standard: --includebins
ob die Bin-Ziele installiert werden sollen
--(no)keepzombies
Standard: falsch
ob Dateien entfernt werden sollen, die von einer früheren Installation dieses Pakets übrig geblieben sind
--exe=( Standard | ja | nein | beide | multi )
Standard: Standard
Unter Windows gilt die Konvention, dass ausführbare Dateien eine EXE-Datei haben, während sie unter Unix über eine EXE-Datei verfügen
keine Verlängerung. Der --exe Mit der Option können Sie die von verwendeten Konventionen steuern
ozmake bei der Installation ausführbarer Dateien. --exe=Standard Verwenden Sie die Konvention der Plattform
--exe=ja Verwenden Sie eine .exe-Erweiterung --exe=nein Verwenden Sie keine Erweiterung --exe=beide alles installieren
ausführbare Dateien mit und ohne .exe-Erweiterung --exe=multi Installieren Sie ausführbare Funktoren
sowohl für Unix als auch für Windows. Die Unix-Versionen werden ohne Erweiterung installiert und
Die Windows-Versionen werden mit der Erweiterung .exe installiert
Deinstallieren
ozmake --deinstallieren
Deinstallieren Sie das durch Makefile beschriebene Paket
ozmake --deinstallieren --package=PKG
Deinstallieren Sie das nach der Mogul-ID benannte Paket PKG
-e --uninstall
ein Paket deinstallieren
Clean
ozmake --sauber
ozmake --sehr sauber
Entfernen Sie Dateien gemäß den Clean- und Veryclean-Funktionen des Makefiles.
--sehr sauber impliziert --sauber .
Erstellen
ozmake --schaffen [--package=]
Erstellen Sie ein Paket und speichern Sie es in DATEI. Die für das Paket benötigten Dateien sind
automatisch aus dem Makefile berechnet. Wenn --Paket= wird nicht mitgeliefert, a
Der Standardwert wird anhand der Mogul-ID (und möglicherweise der Versionsnummer) berechnet, die im gefunden wird
Makefile.
--include(bins|libs|docs) --exclude(bins|libs|docs)
Steuern Sie, welche Zieltypen im Paket enthalten sind
Veröffentlichen
ozmake --veröffentlichen
übernimmt automatisch alle notwendigen Schritte zum Erstellen/Aktualisieren eines Pakets
vom Nutzer beigesteuert werden und dem MOGUL alle notwendigen Daten zur Verfügung gestellt werden
Bibliothekar. Siehe Dokumentation für --Mogul unten mit.
Extrahieren
ozmake --Extrakt --Paket=
Extrahieren Sie die Dateien aus der Datei oder URL PKG. Wenn PKG eine Mogul-ID ist, dann ist es das Paket
automatisch aus dem Mogul-Archiv heruntergeladen
Liste
ozmake --aufführen
Listen Sie Informationen für alle Pakete in der installierten Paketdatenbank auf
ozmake --aufführen --Paket=
Listen Sie Informationen für das installierte Paket auf, das durch die Mogul-ID MOGUL identifiziert wird
--linewidth=N
Standard: 70
Nehmen Sie eine Linie mit von an N Zeichen
Config
ozmake --config=put
Zeichnen Sie die angegebenen OPTIONEN in der Konfigurationsdatenbank von ozmake auf und verwenden Sie sie als
wird bei nachfolgenden Aufrufen von ozmake als Standard verwendet, es sei denn, es wird explizit überschrieben
Befehlszeile. Zum Beispiel: ozmake --config=put --prefix=/usr/local/oz sparen
/usr/local/oz als Standardwert für die Option prefix
ozmake --config=löschen ...
löscht einige Einträge aus der Konfigurationsdatenbank. Zum Beispiel: ozmake
--config=löschen Präfix Entfernt die Standardeinstellung für prefix aus der Konfiguration
Datenbank
ozmake --config=Liste
listet den Inhalt der Konfigurationsdatenbank von ozmake auf
das Argument zu --config kann mit jedem eindeutigen Präfix abgekürzt werden
Mogul
Wenn Sie Pakete zum MOGUL-Archiv beitragen möchten, ozmake --mogul=
vereinfacht Ihre Aufgabe. Es erleichtert Ihnen die Pflege einer Datenbank Ihrer Daten
Beiträge zu erfassen und zu exportieren, damit der MOGUL-Bibliothekar sie automatisch finden kann.
Tatsächlich ist der einfachste Weg die Verwendung ozmake --veröffentlichen der sich um alles kümmert
Details für Sie.
ozmake --mogul=put
Aktualisieren Sie dazu die Datenbank der eigenen Mogul-Beiträge des Benutzers mit den Daten
Beitrag (im lokalen Verzeichnis)
ozmake --mogul=put --Paket=
wie oben, jedoch unter Verwendung des explizit angegebenen Pakets PKG
ozmake --mogul=löschen ...
Entfernen Sie die Einträge mit den Mogul-IDs MOG1 bis MOGn aus der eigenen Datenbank des Benutzers
Beitrag
ozmake --mogul=löschen
Eintrag für aktuellen Beitrag entfernen
ozmake --mogul=Liste
Zeigt die aufgezeichneten Daten für alle Einträge in der Datenbank des Benutzers des eigenen Moguls an
Beiträge
ozmake --mogul=Liste ...
Zeigt die aufgezeichneten Daten für die Einträge MOG1 bis MOGn in der eigenen Datenbank des Benutzers an
Mogul-Beiträge
ozmake --mogul=exportieren
Schreiben Sie alle notwendigen Mogul-Einträge für die eigenen Mogul-Beiträge des Benutzers. Diese sind
die Einträge, die vom MOGUL-Bibliothekar gelesen werden, um sie automatisch zusammenzustellen
vollständige MOGUL-Datenbank.
Die Daten zu Ihren Beiträgen müssen der MOGUL-Bibliothekarin auf der Website zur Verfügung gestellt werden
NETZ. Sie möchten einfach ein lokales Verzeichnis mit Ihren Beiträgen aktualisieren, aber damit
Damit der MOGUL-Bibliothekar sie nicht finden kann, müssen diese Verzeichnisse auch über URLs verfügbar sein
das Netz. Hier sind einige Optionen, mit denen Sie diese Korrespondenz steuern können
mit dem Sie die Standardeinstellung festlegen sollten ozmake --config=put
--moguldir=
--mogulurl=
MOGULDIR ist ein Verzeichnis, das auch im WEB über die URL MOGULURL verfügbar ist.
MOGULDIR ist als Stammverzeichnis gedacht, in dem Unterverzeichnisse für Pakete,
Dokumentation und Mogul-Einträge werden gefunden.
Für diejenigen, die Schmerzen wirklich genießen, ozmake hat natürlich viele Möglichkeiten, sich selbst zu erschießen
der Fuß. In den Optionen unten steht für die Dateinamenversion des Moguls des Pakets
id (im Grunde genommen Schrägstriche durch Bindestriche ersetzen). Sie können steuern, wo Pakete sind
Dokumentation und Mogul-Datenbankeinträge erfasst und über die Optionen gespeichert und verfügbar gemacht
unten:
--mogulpkgdir=
Standard: /pkg//
--mogulpkgurl=
Standard: /pkg//
--moguldocdir=
Standard: /doc//
--moguldocurl=
Standard: /doc//
--moguldbdir=
Standard: /db//
--moguldburl=
Standard: /db//
Ihre Beiträge sollten alle Mogul-IDs haben unten die Mogul-ID, die du wo hast
für Ihren Abschnitt der Mogul-Datenbank gewährt. Zur Bequemlichkeit, ozmake werde versuchen,
Erraten Sie die Root-Mogul-ID Ihres Abschnitts, sobald Einträge in Ihrer Datenbank vorhanden sind
Ihre eigenen Beiträge. Es ist jedoch viel besser, es zu erzählen ozmake darüber mit:
--mogulrootid=
und um es mit einzustellen ozmake --config=put --mogulrootid=
MAKEFILE
Das Makefile enthält einen einzelnen Oz-Datensatz, der das Projekt beschreibt und normalerweise sollte
in einer Datei mit dem Namen abgelegt werden makefile.oz.Ein Makefile sieht normalerweise so aus:
Makefile(
lib: ['Foo.ozf']
uri: 'x-ozlib://mylib'
mogul: 'mogul:/denys/lib-foo')
Es wird ausdrücklich darauf hingewiesen, dass es ein Bibliotheksziel gibt, nämlich den Funktor Foo.ozf,und das
Es sollte unter URI installiert werden:
x-ozlib://mylib/Foo.ozf
und implizit, dass es aus der Oz-Quelldatei kompiliert werden sollte Foo.oz.Wenn Sie anrufen
ozmake --Installieren,das Mogul Die Funktion dient zur eindeutigen Identifizierung dieses Pakets und der Dateien
es trägt dazu bei ozmake Datenbank der installierten Pakete.
Es gibt viele weitere Funktionen, die im Makefile vorkommen können und alle optional sind. Wenn
Sie lassen alle Funktionen weg, erhalten nur die Standardeinstellungen und benötigen nicht einmal ein Makefile.
Alle Werte, wie z Dateien,sollte als virtueller String angegeben werden; Atome werden empfohlen, außer
für Funktionen Klappentext, info_text und info_html,wobei Saiten empfohlen werden.
Makefile(
bin: [DATEIEN...]
lib: [DATEIEN...]
doc: [DATEIEN...]
src: [DATEIEN...]
kommt darauf an :
o( DATEI: [ DATEIEN...]
...
)
Regeln :
o( DATEI : WERKZEUG(DATEI)
...
)
sauber: [GLOB...]
veryclean : [ GLOB... ]
uri: URI
Mogul: MOGUL
Autor: [ AUTOREN...]
veröffentlichtes Datum
Klappentext: TEXT
info_text: TEXT
info_html: TEXT
Unterverzeichnisse: [VERZEICHNIS...]
erfordert: [MOGUL...]
Kategorien: [ KATEGORIE... ]
Version: VERSION
bietet: [DATEIEN...]
)
Enthält Bin-, Lib- und Doc-List-Ziele, in denen installiert werden kann , und
beziehungsweise. Kasten Ziele sollten ausführbare Funktoren sein, dh sie sollten mit enden
Erweiterung .exe. lib Ziele sind typischerweise kompilierte Funktoren, die mit einer Erweiterung enden
.ozf,könnten aber auch native Funktoren sein, die mit einer Erweiterung enden .so,oder einfach Daten
Dateien. Dock Ziele sind Dokumentationsdateien.
Erweiterungsoptionen
ozmake weiß, wie man Ziele erstellt, indem man sich die Erweiterung des Ziels ansieht:
Foo.exe
ist ein ausführbarer Funktor und wird daraus erstellt Foo.ozf
Foo.ozf
ist ein kompilierter Funktor und wird daraus erstellt Foo.oz
Foo.o
ist eine kompilierte C++-Datei und wird daraus erstellt Foo.cc
Foo.so
ist ein nativer Funktor und wird aus erstellt Foo.o
Foo.cc
ist eine C++-Quelldatei
Foo.hh
ist eine C++-Headerdatei
Beachten Sie, dass dies sind Zusammenfassung Ziele. Insbesondere, Foo.so bezeichnet wirklich die Datei
Foo.so- woher Identifiziert die Architektur und das Betriebssystem, wo
das Paket wird erstellt; Zum Beispiel: Linux-i486.Auch wenn ein Bin-Ziel Foo.exe is
installiert, es wird sowohl als installiert /Foo.exe und /Foo damit es sein kann
aufgerufen als foo sowohl auf Windows- als auch auf Unix-Plattformen.
Es ist unbedingt erforderlich, dass Sie die hier beschriebene herkömmliche Verwendung von Erweiterungen respektieren:
ozmake erlaubt keine Variation und unterstützt keine anderen Erweiterungen.
Regeln
ozmake verfügt über integrierte Regeln zum Erstellen von Dateien. Gelegentlich möchten Sie möglicherweise das außer Kraft setzen
Standardregel für ein oder mehrere Ziele. Dies geschieht mit der Funktion regieren die enthält a
Datensatzzuordnungsziel zur Regel:
TARGET_FILE: WERKZEUG(SOURCE_FILE)
Die Regel kann auch eine Liste von Optionen enthalten:
TARGET_FILE: WERKZEUG (SOURCE_FILE-OPTIONEN)
Die von unterstützten Tools ozmake sind Unze (Oz-Compiler), ozl (Oz-Linker), cc (C++-Compiler),
ld (C++-Linker). Die Standardregeln sind:
'Foo.exe': ozl('Foo.ozf' [ausführbare Datei])
'Foo.ozf' : ozc('Foo.oz')
'Foo.o' : cc('Foo.cc')
'Foo.so' : ld('Foo.o')
Die Tools unterstützen die folgenden Optionen:
Unze
ausführbar
das Ergebnis ausführbar machen
'definieren'(S)
Makro definieren S.Gleiche wie -DS in der Kommandozeile
ozl
ausführbar
das Ergebnis ausführbar machen
cc
include(DIR)
Ähnlich der üblichen C++-Compileroption -IDIR. DIR ist eine virtuelle Zeichenfolge
'definieren'(MAC)
Ähnlich der üblichen C++-Compileroption -DMAC. MAC ist eine virtuelle Zeichenfolge
ld
Bibliothek (DIR)
Ähnlich der üblichen C++-Linkeroption -lDIR. DIR ist eine virtuelle Zeichenfolge
Möglicherweise möchten Sie eine Regel zum Erstellen einer vorverknüpften Bibliothek angeben:
'Utils.ozf' : ozl('Foo.ozf')
oder um eine nicht vorverlinkte ausführbare Datei zu erstellen:
'Foo.exe': ozc('Foo.oz' [ausführbare Datei])
Abhängigkeiten
ozmake Ermittelt automatisch, ob Ziele neu erstellt werden mussten, z. B. weil sie
fehlen oder wenn eine für deren Erstellung erforderliche Quelldatei geändert wurde. Die Regeln sind
Wird verwendet, um Abhängigkeiten zwischen Dateien zu ermitteln. Manchmal reicht dies nicht aus, z. B. weil
Sie verwenden Werkzeug ozl (Abhängigkeiten von Importen), oder einfügen in einer Oz-Datei oder #include in einer C++-Datei
Datei. In diesem Fall können Sie mithilfe von feature zusätzliche Abhängigkeiten angeben hängt welches ist
Ein Datensatz, der Ziele einer Liste von Abhängigkeiten zuordnet:
ZIEL: [DATEIEN...]
Beispielsweise:
'Foo.o' : [ 'Foo.hh' 'Baz.hh' ]
or
'Foo.exe': [ 'Lib1.ozf' 'Lib2.ozf' ]
Reinigung
Während der Entwicklung ist es oft praktisch, den gesamten Müll und Müll einfach entfernen zu können
kompilierte Dateien, um wieder ein sauberes Projektverzeichnis zu erhalten. Dies wird unterstützt durch ozmake
--sauber und ozmake --sehr sauber;Letzteres impliziert auch Ersteres. Zu entfernende Dateien sind
spezifiziert durch Klacks Muster wo ? Entspricht einem beliebigen Zeichen und * entspricht einer Folge von 0
oder mehr Zeichen. Alle Dateien in BUILDDIR, die einem solchen Muster entsprechen, werden entfernt. Es gibt
integrierte Muster, Sie können sie jedoch mit Funktionen überschreiben reinigen und sehr sauber welche
sollten Listen von Glob-Mustern sein. Die standardmäßigen Clean-Glob-Muster sind beispielsweise:
clean : [ "*~" "*.ozf" "*.o" "*.so-*" "*.exe" ]
Paket Verbundene Eigenschaften
uri
-Funktion uri Gibt den URI an, wo lib-Ziele installiert werden sollen. Zum Beispiel:
uri: 'x-ozlib://mylib/XML'
besagt, dass alle lib Ziele (z Foo.ozf)werden unter dieser URI installiert, damit sie
kann auch daraus importiert werden, also:
Importieren Sie MyFoo unter 'x-ozlib://mylib/XML/Foo.ozf'
Mogul
-Funktion Mogul ist die Mogul-ID, die dieses Paket eindeutig identifiziert. Es dient der Identifizierung
das Paket in der Datenbank der installierten Pakete, zum Erstellen/Veröffentlichen des Pakets und zu
Installieren Sie die Dokumentationsdateien.
Autor
-Funktion Autor ist ein virtueller String bzw. eine Liste virtueller Strings. Identifizierung des Autors
oder Autoren des Pakets. Es wird empfohlen, Autoren anhand ihrer Mogul-ID zu identifizieren.
Es ist jedoch auch möglich, einfach ihre Namen anzugeben. Zum Beispiel der empfohlene Weg
ist:
Autor: 'mogul:/duchier'
aber auch folgendes ist möglich:
Autor: „Denys Duchier“
freigegeben
-Funktion freigegeben ist eine virtuelle Zeichenfolge, die das Datum und die Uhrzeit der Veröffentlichung im angibt
folgendes Format:
veröffentlicht: „JJJJ-MM-TT-HH:MM:SS“
Zeit ist optional. Ein geeignetes Veröffentlichungsdatum unter Verwendung des aktuellen Datums und der aktuellen Uhrzeit ist
beim Aufruf automatisch eingefügt ozmake --schaffen or ozmake --veröffentlichen..
Klappentext
-Funktion Klappentext enthält einen sehr kurzen Text, der das Paket beschreibt. Dieser Text sollte
besteht aus nur einer Zeile und soll als Titel verwendet werden, wenn das Paket veröffentlicht wird
Das Mogul-Archiv.
info_text
-Funktion info_text enthält eine Klartextbeschreibung des Pakets. Das soll so sein
Wird als Zusammenfassung auf der Präsentationsseite für das Paket im Mogul-Archiv verwendet. Es
sollte kurz und informativ sein, aber nicht versuchen, das Paket zu dokumentieren.
info_html
-Funktion info_html ähnelt info_text enthält aber HTML und keinen einfachen Text.
src
-Funktion src gibt an, welche Ziele als Quelle betrachtet werden sollen, d. h. insbesondere nicht-
baubar. Alle in aufgeführten Ziele src sollte in erwähnt werden Kasten, libOder Dock zu. Das
Punkt src besteht darin, die Verteilung von Paketen mit vorgefertigten Zielen und ohne Angabe zu unterstützen
die entsprechenden Quellen heraussuchen. Sie sollten dies nicht mit nativen Funktoren tun, da dies der Fall ist
Plattformabhängig und nicht portierbar, kann aber ein praktisches Mittel zum Verteilen von Vorabinformationen sein.
baute Oz-Bibliotheken auf. Zum Beispiel:
Makefile(
lib: ['Foo.ozf']
src: ['Foo.ozf']
uri: 'x-ozlib://mylib'
mogul: 'mogul:/meinname/foolib')
ist ein Makefile für ein Paket, das das vorkompilierte Paket verteilt Foo.ozf, aber auch nicht
seine Quelle verbreiten Foo.oz.Normalerweise wird beim Erstellen eines Pakets einfach überprüft, ob das
src Dateien sind vorhanden, es wird jedoch nicht versucht, sie zu erstellen. Wenn Sie die Quellen haben, können Sie
Kraftaufbau src Ziele ggf. nutzen --fullbuild..
Unterverzeichnisse
-Funktion Unterverzeichnisse ist eine Liste nackter Dateinamen, die Unterverzeichnisse des Projekts darstellen. Von
Standard, wenn nötig, ozmake wird in diese Unterverzeichnisse rekursiv. Es wird erwartet
dass jedes Unterverzeichnis sein eigenes Makefile bereitstellen sollte. Die Mogul-ID ist automatisch
an Unterverzeichnisse vererbt und die URL wird automatisch durch Anhängen des Namens von erweitert
das Unterverzeichnis: Daher können Unter-Makefiles einfacher sein, da sie nicht berücksichtigt werden müssen
mit Funktionen auf Paketebene.
erfordert
-Funktion erfordert ist eine Liste von Modul-URIs oder Paket-MOGUL-IDs. Diese repräsentieren die
extern Abhängigkeiten des Pakets. Sie werden noch nicht verwendet, aber irgendwann ozmake wird sein
in der Lage, sie zu verwenden, um die rekursive Installation anderer von der benötigten Pakete zu automatisieren
eine, die Sie interessiert.
Kategorien
-Funktion Kategorien ist eine Liste von MOGUL-Kategorien, die bei der Kategorisierung dieses Pakets helfen sollen
MOGUL-Archiv.
Version
-Funktion Version wird verwendet, um eine Versionszeichenfolge bereitzustellen. Dies ist eine Zeichenfolge, die besteht aus
Durch einzelne Punkte getrennte ganze Zahlen, z. B "2" or "3.1.7"..
bietet
-Funktion bietet wird verwendet, um die Standardinformationen über das Paket zu überschreiben
liefert, wird normalerweise automatisch aus dem berechnet Kasten und lib Ziele: Es sollte ein sein
Liste, die eine Teilmenge dieser Ziele enthält. Der bietet Funktion eines Makefiles nicht
seine Sub-Makefiles überschreiben oder anderweitig beeinflussen: Jedes Makefile sollte separat überschreiben
wenn es das wünscht. Um anzugeben, dass ein Makefile offiziell keine Funktoren bereitstellt oder
Für eine ausführbare Anwendung würden Sie Folgendes hinzufügen:
Bietet: Null
Sie sollten die verwenden bietet Funktion, wenn Ihr Paket beide offiziellen öffentlichen enthält
Funktoren sowie reine Implementierungsfunktoren, die nicht Teil des Beamten sind
öffentliche Schnittstelle und sollte nicht als erwähnt werden vorausgesetzt durch das Paket.
KONTAKT
Autoren sollten wirklich mit Mogul-IDs bezeichnet werden, die Mogul-Einträge bezeichnen, die beschreiben
ihnen. Um dies zu vereinfachen, a makefile.oz kann auch enthalten a Kontakt Funktion, die
ist entweder ein Datensatz, der eine Person beschreibt, oder eine Liste solcher Datensätze.
Du solltest kein a . haben Kontakt Feature in jedem Makefile. Vielmehr ist die Kontakt Funktion ist
normalerweise für Makefiles gedacht, die nur eine haben Kontakt Merkmal, also dessen einziger Zweck
besteht darin, Mogul-Einträge für die entsprechenden Personen zu erstellen. Hier ist ein Beispiel dafür
Makefile:
Makefile(
Kontakt:
o(
mogul: 'mogul:/duchier/denys'
Name: „Denys Duchier“
Email : '[E-Mail geschützt] '
www : 'http://www.ps.uni-sb.de/~duchier/'))
Sie können aufrufen ozmake --veröffentlichen Auf einem solchen Makefile trägt der entsprechende Mogul bei
Datenbankeinträge
Nutzen Sie ozmake online über die Dienste von onworks.net