README: Include new commands, update dependencies, change writing

- spelling errors corrected
- unnecessary teaching marks removed
- Formatting adjusted
This commit is contained in:
Felix 2020-12-12 14:31:51 +01:00
parent 3bb14f69b1
commit 6cf1429a93
1 changed files with 5 additions and 23 deletions

View File

@ -14,11 +14,9 @@ Weitere Informationen gibt es auf <https://freifunk.net/> und auf <https://wiki.
## Erste Schritte
Je nachdem, für welche Hardware die Firmware gebaut werden soll, muss das BSP gewählt werden:
* `./buildscript selectbsp bsp/ath79-generic.bsp`
* Um die vorhandenen BSPs zu sehen, kann `./buildscript selectbsp help` ausgeführt werden.
## Was ist ein BSP?
Ein BSP (Board-Support-Package) beschreibt, was zu tun ist, damit ein Firmware Image für eine spezielle Hardware gebaut werden kann.
Typischerweise besteht ein bsp aus:
@ -27,27 +25,19 @@ Typischerweise besteht ein bsp aus:
Die Daten des BSP werden nie alleine verwendet. Zuerst werden immer die Daten aus dem "default"-BSP zum Ziel kopiert, erst danach werden die Daten des eigentlichen BSPs dazu kopiert. Durch diesen Effekt kann ein BSP die "default" Daten überschreiben.
## Die Verwendung des Buildscripts
Die BSP-Datei wird durch das Buildscript automatisch als dot-Script geladen, somit stehen dort alle Funktionen zur Verfügung.
Das Buildscript generiert ein dynamisches sed-Script. Dies geschieht, damit die Templates mit den richtigen Werten gefüllt werden können.
## Zweiter Schritt
Man wählt aus ob man Node Firmware oder Layer3 Firmware bauen Möglichkeiten
### `./buildscript selectvariant`
Desweiteren wählt aus ob man Node Firmware oder Layer3 Firmware bauen möchte.
* `./buildscript selectvariant [node/layer3]`
* Um die Verschiedenen Varianten zu sehen, kann `./buildscript selectvariant help` ausgeführt werden.
## Vorbereitungen für den bau der Firmware
### `./buildscript prepare`
* Sourcen werden in einen separaten src-Folder geladen, sofern diese nicht schon da sind. Zu den Sourcen zählen folgende Komponenten:
* OpenWrt
* Sämtliche Packages (ggf. werden Patches angewandt)
* Eine OpenWrt Feed-Config wird mit dem lokalen Source Verzeichnis als Quelle angelegt
* Die Feeds werden geladen
* Spezielle Auswahl an Paketen wird geladen
@ -64,10 +54,7 @@ Dieses Kommando arbeitet folgendermaßen:
* Config ins BSP zurück speichern
### `./buildscript updatefeeds`
Updated OpenWrt feed und Prüft auf neuerungen im Git und lädt diese ggf. runter.
## Firmware build für ein bestimmtes BSP
Aktualisiert die OpenWrt Feeds, die in die Firmware eingebaut werden. Dabei werden alle Pakete, die für bestimmte Feeds angegeben sind, ins OpenWrt Buildsystem eingebunden bzw. aktualisiert. Dieser Schritt wird bereits von `./buildscript prepapre` übernommen, daher ist dies nur bei manuellen Änderungen der Feeds nötig.
### `./buildscript build`
Sollte man am besten immer in einem screen oder ähnliches laufen lassen um einen Abbruch des Builds bei Verbindungsproblemen oder ähnlichem zu verhindern.
@ -83,13 +70,8 @@ Sollte man am besten immer in einem screen oder ähnliches laufen lassen um eine
* postbuild
* board_postbuild() wird aufgerufen
## Firmware build für alle BSP
### `./buildscript buildall`
Kann verwendet werden um für alle BSPs Firmware zu bauen, sollte UNBEDINGT in einem screen ausgeführt werden und kann mehrere Stunden dauern.
Kann verwendet werden um für alle BSPs Firmware zu bauen, das kann jedoch mehrere Stunden dauern.
## Erweiterung eines BSPs
Beispielhaftes Vorgehen um den WR1043V2 zu unterstützen.
@ -158,4 +140,4 @@ Auf der Mailingliste franken-dev@freifunk.net kannst du natürlich jederzeit Fra
## Hinzufügen von Paketen zum Image
Das Hinzufügen von Paketen sollte mit Bedacht erfolgen, da dies (bei unvorsichtiger Konfiguration) den Betrieb des Routers und eventuell des Freifunk-Netzes beeinträchtigen könnte.
Mit dem Firmware-Verzeichnis als Arbeitsverzeichnis kann mittels des Befehls `./build/<target>/scripts/feeds install <paket>` ein Paket zur menuconfig hinzugefügt werden.
Mittels des schon bekannten `./buildscript config openwrt` kann das Paket dann ausgewählt werden. Es wird beim anschließenden Build zum Image hinzugefügt.
Mittels des schon bekannten `./buildscript config openwrt` kann das Paket dann ausgewählt werden. Es wird beim anschließenden Build zum Image hinzugefügt.