Config.mk

Aus Ethersex_Wiki
Version vom 4. Oktober 2010, 14:31 Uhr von Kiwi (Diskussion | Beiträge) (Control6 Skript)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Die Datei config.mk im Hauptverzeichnis der Ethersex-Ordnerstruktur ist quasi der Schlüssel zur Entwicklung eigener Ethersex-Komponenten, die nicht in Ethersex aufgenommen werden sollen, weil sie schlicht zu speziell sind.

Als Grundregel sollte in etwa gelten: Wenn du etwas an Ethersex ergänzen möchtest, das nicht groß veröffentlicht werden soll, solltest du zusehen, dass du die bestehenden Dateien, die in Ethersex enthalten sind, nicht modifizierst. Die Datei config.mk sowie Mechanismen wie die Meta-Bereiche ermöglichen dies weitestgehend. Dieses Vorgehen hat für dich den Vorteil, dass es beim Aktualisieren auf eine neue Ethersex-Version nicht zu Konflikten zwischen deinen und unseren Modifikationen kommen kann.

Wenn du ab und an Patches erstellen möchtest, machst du dir das Leben so ebenfalls einfacher, da du nicht mehr aufpassen musst, versehentlich etwas zu committen, das eigentlich gar nicht eingecheckt werden sollte.

Also: Alles, was du am liebsten in die Datei Makefile im Hauptverzeichnis eintragen möchtest, trägst du einfach in die Datei config.mk ein. Wenn es diese noch nicht gibt, leg' sie einfach an.

Weitere Ergänzungsdateien

protocols/ecmd/ecmd_defs.m4

Statt die ecmd_defs.m4 zu bearbeiten, kannst du auch irgendwo eine neue Datei anlegen und die gleiche Syntax wie in ecmd_defs.m4 verwenden. Dass das Make-System die Datei berücksichtigt, musst du sie noch registrieren. Dazu dient wieder die config.mk:

ECMD_DEFS_EXTRA += mycruft/private_ecmds.m4

... und schon werden auch die Einträge in der Datei mycruft/private_ecmds.m4 entsprechend berücksichtigt.

named_pin Konfiguration

Zunächst kopierst du dir am besten die Datei core/portio/config irgendwo hin und verwendest sie als Vorlage. Um diese zu registrieren, verwenden wir die folgende Zeile in config.mk:

NP_CONFIG = mycruft/named_pin.conf

Control6 Skript

Ein eigenes Control6 Skript in einer von control6/control6.src abweichenden Datei kann du mit folgendem Statement registrieren:

C6_SOURCE = mycruft/wecky.src
or
C6_SOURCE = $(TOPDIR)/control6/you_programm.src

mögliche weitere Einträge

avrdude mit 'make dude644' aufrufen

dude644: ethersex.hex
        avrdude -p m644 -c usbasp -V -Uflash:w:$<

AVR mit 'make reset' via ISP resetten

reset:
        avrdude -p m644 -c usbasp