keyval-Modul

Dieses Modul parst Dateien, die aus einer Reihe von key=value-Zeilen bestehen. Eine Verwendung dieses Moduls besteht darin, Kconfig-Konfigurationen in Meson-Projekten zu laden.

Hinweis: Dies bietet keine Kconfig-Frontend-Tools zum Generieren einer Konfiguration. Sie benötigen immer noch etwas wie Kconfig-Frontends (siehe Link unten), um Ihre Kconfig-Dateien zu parsen, und dann (nachdem Sie die Konfigurationsoptionen ausgewählt haben) eine ".config"-Datei auszugeben.

Verwendung

Das Modul kann wie folgt importiert werden

keyval = import('keyval')

Die folgenden Funktionen sind dann als Methoden auf dem Objekt mit dem Namen keyval verfügbar. Sie können den Namen keyval natürlich durch einen beliebigen anderen ersetzen.

keyval.load()

Diese Funktion lädt eine Datei, die aus einer Reihe von key=value-Zeilen besteht, und gibt ein Dictionary-Objekt zurück.

keyval.load() versucht nicht, die Werte in der Datei zu parsen. Insbesondere werden boolesche und Ganzzahlwerte als Strings dargestellt, und Strings behalten alle Anführungszeichen, die in der Eingabedatei vorhanden sind. Es kann nützlich sein, ein configuration_data()-Objekt aus dem Dictionary zu erstellen und Methoden wie get_unquoted() zu verwenden.

Kconfig-Frontends haben normalerweise ".config" als Standardnamen für die Konfigurationsdatei. Das Platzieren der Konfigurationsdatei im Quellverzeichnis beschränkt den Benutzer jedoch auf eine Konfiguration pro Quellverzeichnis. Um separate Konfigurationen für jedes Build-Verzeichnis zu ermöglichen, wie es der Meson-Standard ist, sollte meson.build ".config" nicht fest als Argument für kconfig.load() kodieren, sondern stattdessen das Argument für kconfig.load() zu einer Projekt-Build-Option machen.

  • Das erste (und einzige) Argument ist der Pfad zur zu ladenden Konfigurationsdatei (normalerweise ".config").

Gibt zurück: ein dict-Objekt.

Die Ergebnisse der Suche sind