Vorlage:Cs development flash build

Aus TuxBoxWIKI
Wechseln zu: Navigation, Suche

Hierfür sind nur wenige Vorbereitungen notwendig. Der größte Aufwand liegt evtl. darin, eigene Daten mit in ein Image zu packen, wobei dies nur von persönlichen Ansprüchen her ins Gewicht fällt.

Das zuständige Target für die Flashimage-Erzeugung hat die Möglichkeit, automatisch lokale Dateien einzupflegen. Hierfür muss im Stammverzeichnis des Buildsytems nur ein Vereichnis namens ./local/flash angelegt sein, welches die Dateien enthält. Die Struktur ist ähnlich zu verstehen, wie das bereits in ./skel-root/[PLATFORM] der Fall ist.

Obligatorisch kann man auch die Daten ebenfalls nach ./root einpflegen lassen und kann einen entsprechenden Symlink auf ../flash setzen. Die lokalen Daten werden dann nicht nur ins Flashimage eingepflegt, sondern auch nach ./root. Ein einfaches benutzerdefinierte Target (local-files) erledigt diese Schritte in Handumdrehen. Einfach im Stammverzeichnis des Buildsystems eine Datei namens Makefile.local erstellen und mit diesem Inhalt ausfüllen. Das benutzerdefinierte Target neutrino-dist, sollte genügen um fertige Images zu erzeugen. In diesem Beispiel für Neo/Neo-Twin:

LOCALROOT       = $(BASE_DIR)/local
local-files:
	if [ ! -d $(LOCALROOT)/root ]; then \
		mkdir -p $(LOCALROOT)/root && \
		ln -sf $(LOCALROOT)/root $(BASE_DIR)/local/flash; \
	fi; \
	rsync -avP --exclude=*.*~ $(LOCALROOT)/root $(BASE_DIR)

trim-glib: 
	rm -f $(BASE_DIR)/pkgs/opkg/glibc-2.*.opk

neutrino-dist: preqs crosstool bootstrap cs-drivers-pkg cs-libs-pkg minimal-system-pkgs wget neutrino-pkg trim-glib install-pkgs dist-pkgs

Dann:

make neutrino-dist

Die Flash-Images liegen dann unter:

./build_tmp

bzw. Images, die mit einem Rettungs/Update-USB-Stick geflasht werden können, unter:

./build_tmp/coolstream