Blog
Verzeichnisstruktur reorganisieren
2022-06-14
Für Aufgabe 4 wäre es praktisch, wenn euer 1. Commit schlicht aus dem Verschieben der Kerneldateien besteht – dann tun wir uns später beim Fehlersuchen vermutlich etwas einfacher (übersichtliches git diff
). In Bash dazu einfach
# entferne temporäre Ordner
make clean
# erstelle neues Kernelverzeichnis
mkdir kernel
# aktiviere extended pattern matching [1]
shopt -s extglob
# verschiebe relevante Verzeichnisse
git mv !(kernel|user|tools|CPPLINT.cfg|LICENSE|README.md) kernel/
# Makefile anpassen
sed -i 's|^include |include ../|' kernel/Makefile
# Wichtig: Commit der Änderungen
git commit -a -m "Reorganize kernel directory"
ausführen. Dann besteht euer Projektwurzelverzeichnis nur noch aus - CPPLINT.cfg
- kernel/
- LICENSE
- README.md
- tools/
- user/
- und .git/
, .gitignore
sowie .gitlab-ci.yml
Ein make
im Kernelverzeichnis sollte nun immernoch tun (er meckert aber noch über die fehlenden Userapps, die müssen aus der main.cc
entfernt werden).
Außerdem sollte für die CI weiterhin eine Makefile
im Wurzelverzeichnis liegen, die den ganzen Buildprozess (Kernel, libsys und Benutzeranwendungen) bei jedem push
durchführt.