MLD - Entwicklungs Hilfsmittel
(→Entwicklungsumgebung einrichten) |
(→Addons erstellen) |
||
Zeile 15: | Zeile 15: | ||
== 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. |
Anschliessend 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. | Anschliessend 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. | ||
− | Sollen Addons erstellt werden die Kernel Module enthalten, ist es erforderlich die an die MLD angepasste Kernelversion zu erstellen. Hierfür reicht ein Aufruf von 'make kernel'. Dies kompiliert den Kernel mit den MLD Einstellungen und installiert die Module. | + | 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. |
+ | |||
+ | Sollen Addons erstellt werden die Kernel Module enthalten, ist es erforderlich die an die MLD angepasste Kernelversion zu erstellen. Hierfür reicht ein Aufruf von 'make kernel'. Dies kompiliert den Kernel mit den MLD Einstellungen und installiert die Module. Wurden zuvor keine eigenen Anpassungen am Kernel vorgenommen, wird das Entwicklungssystem hiervon nicht beeinträchtigt. | ||
== CVS == | == CVS == |
Version vom 26. Juli 2006, 13:39 Uhr
Inhaltsverzeichnis |
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 anschliessend die Addons sofern sich etwas geändert hat. Es sucht für alle im Addon enthaltenen Programme, die benötigten Librarys zusammen (sofern diese nicht durch abhängige Addons bereitgestellt werden) und aktualisiert diese gegebenenfalls. Ausserdem 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 emittelt werden, und von Hand zum Addon hinzugefügt werden.
Entwicklungsumgebung einrichten
Das angebotene devel-full Archiv enthält das Makefile, das root Filesystem 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. Paralel hierzu werden die vdr-Quellen vdr-1.4.x benötigt. Ausserdem müssen die Kernelquellen installiert sein. Der Link VDR muss so angepasst werden, dass dieser auf den Ordner vdr-1.4.x verweist.
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.
Anschliessend 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.
Sollen Addons erstellt werden die Kernel Module enthalten, ist es erforderlich die an die MLD angepasste Kernelversion zu erstellen. Hierfür reicht ein Aufruf von 'make kernel'. Dies kompiliert den Kernel mit den MLD Einstellungen und installiert die Module. Wurden zuvor keine eigenen Anpassungen am Kernel vorgenommen, wird das Entwicklungssystem hiervon nicht beeinträchtigt.
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 Datein 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 Ziehlort des Repositories angeben (z.B. ~/cvs). Anschliessend 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"