Kapitel 4. kdesrc-build einrichten

Übersicht über die Einrichtung von kdesrc-build

Für die korrekte Funktion benötigt das Skript eine Datei namens .kdesrc-buildrc in Ihrem persönlichen Ordner. Diese beschreibt unter anderem die KDE-Module, die Sie herunterladen und installieren möchten, und alle Optionen und Einstellungs-Parameter, die für diese Module verwendet werden sollen.

Layout der Einrichtungsdatei

Globale Einstellungen

In der Einrichtungsdatei werden zuerst die globalen Einstellungen wie folgt festgelegt:

global
option-name option-wert
[...]
end global

Einstellungen für Module

Danach folgen eine oder mehrere Modul-Abschnitte, die in einer der beiden folgenden Formen angegeben werden:

  • module modul-name
    option-name option-wert
    [...]
    end module
    
  • module-set module-set-name
      repository kde-projects or git://host.org/path/to/repo.git
      use-modules module-names
    
    # Andere Optionen können auch gesetzt werden
    option-name option-value
    [...]
    end module-set
    

Wichtig

Beachten Sie, das die zweite Form „module-set“ nur mit Git-basierten Modulen funktioniert.

Für Subversion-Module muss modul-name ein Modulname aus dem KDE-Subversion-Archiv sein (zum Beispiel kdeartwork oder kde-wallpapers). Dies können Sie umgehen, wenn Sie die Subversion-URL direkt eingeben.

Für Git-Module ist im Prinzip jeder beliebige Name zulässig, solange er in der Einrichtungsdatei eindeutig ist und nur einmal vorkommt. Beachten Sie, dass die Namen der Quelltext- und Erstellungssystem auf dem Modulnamen basieren, solange Sie nicht die Option dest-dir benutzen.

Bei Git-Modulgruppen jedoch muss die Option module-names den tatsächlichen Git-Modulen in der ausgewählten Option repository entsprechen. Weitere Informationen finden Sie in den Abschnitten git-repository-base oder use-modules.

Verarbeitung von Options-Werten

Generell wird der gesamte Inhalt einer Zeile nach option-name als option-value verwendet.

kdesrc-build ersetzt eine Folge von ${Name-der-Option} durch den Wert dieser Option aus der globalen Einrichtung. Damit können Sie den Wert vorhandener Optionen referenzieren, einschließlich Optionen, die bereits durch kdesrc-build festgelegt sind.

Ein Beispiel dazu finden Sie unter Beispiel 2.1, „Einrichtung von Make, um alle verfügbaren CPUs mit Ausnahmen zu benutzen“.

options-Module

Es gibt einen abschließenden Eintrag options-Gruppen für die Einrichtungsdatei, der immer dann eingesetzt werden kann, wenn auch module oder module-set verwendet werden kann.

options module-name
option-name option-value
[...]
end options

Für eine options-Gruppe können wie in einer Modul-Deklaration Optionen angegeben werden. Die options-Gruppe wird für ein vorhandenes Modul definiert. Alle auf diese Weise gesetzten Optionen überschreiben die Optionen, die für das zugehörige Modul definiert wurden.

Wichtig

Der zugehörige Modulname muss dem in der Deklaration von options angegebenen Namen entsprechen. Achten Sie daher besonders auf die Schreibweise.

Dies ermöglicht die Deklaration einer gesamten Modulgruppe module-set, in der die gleichen Optionen für alle Module benutzt werden, aber mit der options-Gruppe Änderungen für einzelne Module eingestellt werden.

options-Gruppen können auch für benannte Modulgruppen gelten. Dies ermöglicht es erfahrenen Benutzern, eine gemeinsame Einrichtungsdatei mit Deklarationen für module-set als Basis zu verwenden und dann Änderungen an den Optionen vornehmen, die von diesen Modulgruppen in Einrichtungsdateien verwendet werden, die den include-Befehl verwenden, um auf die Basiskonfiguration zu verweisen.

Beispiel 4.1. Beispiel für die Anwendung von „options“

In diesem Beispiel sollen alle Module aus der Softwaregruppe KDE.Multimedia erstellt werden. Für das Programm KMix soll jedoch eine unterschiedliche Version verwendet werden, um vielleicht eine Fehlerkorrektur zu testen. Dies funktioniert wie folgt:

module-set kde-multimedia-set
  repository kde-projects
  use-modules kde/kdemultimedia
  branch master
end module-set

# kmix ist in der Gruppe kde/kdemultimedia enthalten, auch wenn kmix bisher noch
# in dieser Datei genannt wurde, kann kdesrc-build die Änderung erkennen.
options kmix
  branch KDE/4.12
end options

Wird nun kdesrc-build ausgeführt, werden alle KDE-Multimediaprogramme aus dem Zweig master des Quelltextarchivs erstellt, nur KMix vom älteren Zweig KDE/4.12. Durch die Benutzung von options müssen Sie nicht alle anderen KDE-Multimediaprogramme einzeln auflisten, um für sie den richtigen Zweig einzustellen.


Anmerkung

Beachten Sie, dass diese Option nur in kdesrc-build ab Version 1.16 oder in der Entwicklerversion von kdesrc-build nach dem 12.01.2014 vorhanden ist.

Andere Einrichtungsdateien einschließen

In einer Einrichtungsdatei können Sie eine Referenz auf andere Dateien mit dem Schlüsselwort include und dem Namen einer Datei benutzen. Das führt zum gleichen Ergebnis, als wenn die eingeschlossene Datei an dieser Stelle eingefügt wäre.

Sie können zum Beispiel folgende Einstellung benutzen:

global
    include ~/common-kdesrc-build-options

    # Spezielle Optionen hier einfügen.

end global

Anmerkung

Wenn Sie nicht den vollständigen Pfad zur einzuschließenden Datei angegeben haben, dann wird die Datei vom Ordner mit der Quelldatei aus gesucht. Die Suche wird auch rekursiv ausgeführt.

Häufig verwendete Einstellungsoptionen

Im Folgenden sehen Sie eine Liste von häufig benutzten Optionen. Klicken Sie auf eine Option, um mehr darüber zu erfahren. Eine vollständige Liste aller Optionen finden Sie unter „Tabelle der verfügbaren Einstellungsoptionen“.

  • cmake-options: Legt fest, welche Parameter zur Konfiguration eines bestimmten Moduls mit CMake übergeben werden sollen.

  • branch: Zum Herunterladen aus einem bestimmten Zweig (branch) anstelle von /trunk für Subversion oder master für Git.

  • configure-flags: Legen fest, welche Parameter zur Konfiguration von Qt™ benutzt werden soll.

  • kdedir: Legt den Zielordner für die KDE-Installation fest.

  • make-options: Übergibt bestimmte Optionen an das Programm Make, wie zum Beispiel die Anzahl der benutzten CPUs.

  • qtdir: Legt den Pfad zu Qt™ fest.

  • source-dir: Ändert den Pfad für heruntergeladene Quellen.