MLD - Entwicklungs Hilfsmittel
Hulk (Diskussion | Beiträge) K |
|||
(10 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
+ | == Komplette Entwicklungsumgebung == | ||
+ | |||
+ | Es existiert ein VMware Image in dem eine komplette Entwicklungsumgebung steckt. Es handelt sich um eine minimale SuSE 10.0 Installation mit sämtlichen benötigten Tools und Sourcen. | ||
+ | Bei Interesse bitte im MLD Forum an Detlef wenden. | ||
+ | |||
== Hilfsmittel zur Entwicklung == | == Hilfsmittel zur Entwicklung == | ||
− | Um die Arbeit an der MLD zu erleichtern steht ein Makefile zur | + | Um die Arbeit an der MLD zu erleichtern steht ein Makefile zur Verfügung. |
− | Das Makefile enthält Anweisungen zum Kompilieren des VDR und dessen Plugins und erstellt | + | Das Makefile enthält Anweisungen zum Kompilieren des VDR und dessen Plugins und erstellt anschließend die Addons sofern sich etwas geändert hat. Es sucht für alle im Addon enthaltenen Programme, die benötigten Libraries zusammen (sofern diese nicht durch abhängige Addons bereitgestellt werden) und aktualisiert diese gegebenenfalls. Außerdem werden Kernelmodul Abhängigkeiten aufgelöst und das Install Iso-Image erstellt. |
− | ''Beachte: Es kommt vor das nicht alle benötigten Libraries erkannt werden können. Dann müssen die fehlenden von Hand zum Addon hinzugefügt werden.'' | + | ''Beachte: Es kommt vor das nicht alle benötigten Libraries erkannt werden können. Dann müssen die fehlenden z.B. mit strace ermittelt werden, und von Hand zum Addon hinzugefügt werden.'' |
== Entwicklungsumgebung einrichten == | == Entwicklungsumgebung einrichten == | ||
− | Das angebotene | + | Das angebotene devel-full Archiv enthält das Makefile, das root Dateisystem der MLD und die komplette Ordnerstruktur die zur Entwicklung an der MLD benötigt wird. |
− | Das Archiv wird | + | Das Archiv wird typischerweise unter ~/src oder unter /usr/local/src entpackt. Parallel hierzu werden die vdr-Quellen vdr-1.4.x benötigt (sofern VDR-Plugins erstellt werden sollen). Der Link VDR muss so angepasst werden, dass dieser auf den Ordner vdr-1.4.x verweist. Die vdr-Quellen müssen mit dem bereitgestellten VDR-diff gepatcht werden. |
== Addons erstellen == | == Addons erstellen == | ||
− | Bevor Addons erstellt werden sollte die Konfigurationsdatei MLD/addons-src/Make.conf angepasst werden. Hier sind die Initialen des Entwicklers einzutragen, es wird festgelegt welche Addons erstellt werden sollen und welche Addons das Install Iso-Image enthalten soll. | + | Bevor Addons erstellt werden sollte die Konfigurationsdatei MLD/addons-src/Make.conf angepasst werden. Hier sind die Initialen des Entwicklers einzutragen, es wird festgelegt welche Addons bei einem einfachen Aufruf von make erstellt werden sollen und welche Addons das Install Iso-Image enthalten soll. |
− | + | Anschließend reicht im Ordner MLD/addons-src ein Aufruf von 'make' um das Erstellen der Addons zu starten. Die fertigen Addons werden unter MLD/addons-tgz abgelegt. | |
− | + | Um z.B. nur die System-Addon zu erstellen genügt der Aufruf von 'make system'. Welche Weiteren Optionen das Makefiel bietet steht am Anfang des Makefiles beschrieben. | |
== CVS == | == CVS == | ||
− | '''CVS steht noch nicht vollständig zur | + | '''CVS steht noch nicht vollständig zur Verfügung. Bisher ist lediglich ein locales Repository möglich.''' |
− | Die | + | Die Nutzung von CVS oder anderen Versionskontrollen ist nicht ohne weiteres möglich, da die MLD-Addons symbolische Links, Devices und Pipes enthalten. Diese werden von CVS und Co. üblicherweise nicht korrekt behandelt, und führen zu Fehlern. Aus diesem Grund ist es erforderlich diese Dateien besonders zu behandeln. Durch die Nutzung des Makefiles für die wichtigsten CVS Funktionen (Import, Add, Commit, Update, Remove) wird dies sichergestellt. |
CVS vorbereiten: | CVS vorbereiten: | ||
− | In MLD/addons-src/Make.conf den | + | In MLD/addons-src/Make.conf den Zielort des Repositories angeben (z.B. ~/cvs). Anschließend das CVS Repository erstellen: |
make ~/cvs | make ~/cvs | ||
Zeile 49: | Zeile 54: | ||
make up modul="MyAddonName" | make up modul="MyAddonName" | ||
− | + | Dateien aus Addons entfernen: | |
make rm file="MyAddonName/PathToFile/FileName" | make rm file="MyAddonName/PathToFile/FileName" |
Aktuelle Version vom 18. August 2013, 14:18 Uhr
Inhaltsverzeichnis |
[Bearbeiten] Komplette Entwicklungsumgebung
Es existiert ein VMware Image in dem eine komplette Entwicklungsumgebung steckt. Es handelt sich um eine minimale SuSE 10.0 Installation mit sämtlichen benötigten Tools und Sourcen. Bei Interesse bitte im MLD Forum an Detlef wenden.
[Bearbeiten] Hilfsmittel zur Entwicklung
Um die Arbeit an der MLD zu erleichtern steht ein Makefile zur Verfügung.
Das Makefile enthält Anweisungen zum Kompilieren des VDR und dessen Plugins und erstellt anschließend die Addons sofern sich etwas geändert hat. Es sucht für alle im Addon enthaltenen Programme, die benötigten Libraries zusammen (sofern diese nicht durch abhängige Addons bereitgestellt werden) und aktualisiert diese gegebenenfalls. Außerdem werden Kernelmodul Abhängigkeiten aufgelöst und das Install Iso-Image erstellt.
Beachte: Es kommt vor das nicht alle benötigten Libraries erkannt werden können. Dann müssen die fehlenden z.B. mit strace ermittelt werden, und von Hand zum Addon hinzugefügt werden.
[Bearbeiten] Entwicklungsumgebung einrichten
Das angebotene devel-full Archiv enthält das Makefile, das root Dateisystem der MLD und die komplette Ordnerstruktur die zur Entwicklung an der MLD benötigt wird.
Das Archiv wird typischerweise unter ~/src oder unter /usr/local/src entpackt. Parallel hierzu werden die vdr-Quellen vdr-1.4.x benötigt (sofern VDR-Plugins erstellt werden sollen). Der Link VDR muss so angepasst werden, dass dieser auf den Ordner vdr-1.4.x verweist. Die vdr-Quellen müssen mit dem bereitgestellten VDR-diff gepatcht werden.
[Bearbeiten] Addons erstellen
Bevor Addons erstellt werden sollte die Konfigurationsdatei MLD/addons-src/Make.conf angepasst werden. Hier sind die Initialen des Entwicklers einzutragen, es wird festgelegt welche Addons bei einem einfachen Aufruf von make erstellt werden sollen und welche Addons das Install Iso-Image enthalten soll.
Anschließend reicht im Ordner MLD/addons-src ein Aufruf von 'make' um das Erstellen der Addons zu starten. Die fertigen Addons werden unter MLD/addons-tgz abgelegt.
Um z.B. nur die System-Addon zu erstellen genügt der Aufruf von 'make system'. Welche Weiteren Optionen das Makefiel bietet steht am Anfang des Makefiles beschrieben.
[Bearbeiten] CVS
CVS steht noch nicht vollständig zur Verfügung. Bisher ist lediglich ein locales Repository möglich.
Die Nutzung von CVS oder anderen Versionskontrollen ist nicht ohne weiteres möglich, da die MLD-Addons symbolische Links, Devices und Pipes enthalten. Diese werden von CVS und Co. üblicherweise nicht korrekt behandelt, und führen zu Fehlern. Aus diesem Grund ist es erforderlich diese Dateien besonders zu behandeln. Durch die Nutzung des Makefiles für die wichtigsten CVS Funktionen (Import, Add, Commit, Update, Remove) wird dies sichergestellt.
CVS vorbereiten:
In MLD/addons-src/Make.conf den Zielort des Repositories angeben (z.B. ~/cvs). Anschließend das CVS Repository erstellen:
make ~/cvs
Addons hinzufügen:
make im modul="MyAddonName"
Addons erweitern:
make ad modul="MyAddonName"
Addons einchecken:
make ci modul="MyAddonName"
Addons aktualisieren:
make up modul="MyAddonName"
Dateien aus Addons entfernen:
make rm file="MyAddonName/PathToFile/FileName"