Befehlsreferenz
JHBuild verwendet eine Befehlszeilensyntax ähnlich wie in Werkzeugen wie CVS:
jhbuild [global-options] command [command-arguments]
Folgende globale Optionen stehen für JHBuild zur Verfügung:
- -f, --fileKonfigurationsdatei
-
Eine alternative Konfiguration anstelle der vorgegebenen ~/.jhbuildrc verwenden.
- -m, --modulesetModulsatz
-
Use a module set other than the module set listed in the configuration file. This option can be a relative path if the module set is located in the JHBuild moduleset folder, or an absolute path if located elsewhere.
- --no-interact
-
Do not prompt the user for any input. This option is useful if leaving a build unattended, in order to ensure the build is not interrupted.
Befehlsspezifische Optionen werden nachstehend aufgelistet.
5.1. autobuild
Der Befehl autobuild erstellt automatisch die in der Konfigurationsdatei angegebenen Module und überträgt die Ergebnisse zu JHAutobuild.
jhbuild autobuild [--autogen] [--clean] [--distcheck] [--skip=module...] [--start-at=module] [--report-url=reporturl] [--verbose]
The --autogen, --clean, --distcheck, --skip and --start-at options are processed as per the build command.
- --report-url=reporturl, -r Berichtsadresse
-
Diese Option legt die Adresse für Berichte an JHAutobuild fest.
- --verbose, -v
-
Falls angegeben, sind die Ausgaben von JHBuild ausführlicher.
5.2. bootstrap
The bootstrap command installs a set of build utilities required to build most modules (e.g. autoconf, automake, etc).
jhbuild bootstrap
The bootstrap command builds modules using the same method as the build command, but uses the bootstrap.modules moduleset.
Die verfügbaren Optionen finden Sie in der Dokumentation zu build.
5.3. build
Der Befehl build erstellt ein oder mehrere Pakete einschließlich deren Abhängigkeiten.
jhbuild build [--autogen] [--clean] [--check] [--dist] [--distcheck] [--ignore-suggests] [--no-network] [--skip=module...] [--start-at=module] [--tags=tags] [-D date] [--no-xvfb] [--try-checkout] [--no-poison] [--force] [--build-optional-modules] [--min-age=time] [module...]
Falls keine Modulnamen auf der Befehlszeile übergeben werden, wird die Modulliste aus der Konfigurationsdatei verwendet.
- -a, --autogen
-
Always run autogen.sh before building modules. By default, autogen.sh will only be called if the top-level makefile is missing. Otherwise, JHBuild relies on the package's makefiles to detect if configure needs to be rebuilt or rerun.
- -c, --clean
-
make clean vor der Erstellung von Modulen ausführen.
- --check
-
make check nach der Erstellung von Modulen ausführen.
- -d, --dist
-
make dist nach der Erstellung von Modulen ausführen.
- --distcheck
-
make distcheck nach der Erstellung von Modulen ausführen.
- --ignore-suggests
-
Keine weichen Abhängigkeiten erstellen.
- -n, --no-network
-
Beim Erstellen von Modulen nicht auf das Netzwerk zugreifen. Dadurch werden Download- oder Aktualisierungsschritte in einer Erstellung übersprungen. Falls das Modul ohne Netzwerkzugriff nicht erstellt werden kann, wird die Erstellung des Moduls scheitern.
- -s, --skip=Modul,…
-
Die aufgelisteten Module nicht erstellen. Wird benutzt, um die Erstellung spezifischer Abhängigkeiten zu überspringen.
- --tags=Tag, …
-
Ignore modules that do not match tag. Modules are automatically attributed a tag matching the name of the module's module set.
- -t, --start-at=Modul
-
Beim genannten Modul anstatt am Beginn der Liste starten. Diese Option ist sinnvoll, wenn die Erstellung zuvor unterbrochen wurde.
- -D date
-
If supported by the underlying version control system, update the source tree to the specified date before building. An ISO date format is required, e.g. "2009-09-18 02:32Z".
- -x, --no-xvfb
-
Run graphical tests on the actual X server rather than in a simulated Xvfb.
- -C, --try-checkout
-
If the build fails, and if supported by the version control system, force a checkout and run autogen.sh before retrying the build.
- -N, --no-poison
-
Falls die Abhängigkeiten eines oder mehrerer Module scheitern, erzwingt dies die Erstellung des Moduls durch JHBuild.
- -f, --force
-
Das Modul erstellen, auch wenn die Regeln es als nicht erforderlich ansehen.
- --build-optional-modules
-
Einige als optionale Abhängigkeiten aufgelistete Module sind nicht für die Erstellung des Zielmoduls notwendig. Diese Option zwingt JHBuild, diese Module trotzdem einzuschließen.
- --min-age=time
-
Skip modules installed more recently than the specified relative time. The time string format is a number followed by a unit. The following units are supported: seconds (s), minutes (m), hours (h) and days (d). For example, --min-age=2h will skip modules built less than two hours ago.
5.4. buildone
Der Befehl buildone arbeitet ähnlich wie build, erstellt jedoch keine abhängigen Module. Dies ist nützlich für das erneute Erstellen eines oder mehrerer Module.
jhbuild buildone [--autogen] [--clean] [--check] [--distcheck] [--no-network] [-D date] [--no-xvfb] [--force] [--min-age=time] module...
Die Optionen --autogen, --check, --clean, -d, --distcheck, --no-network -D und -x werden ebenso wie für build verarbeitet.
In der Befehlszeile muss mindestens ein Modul angegeben werden.
5.5. checkbranches
The checkbranches checks the module's branches are defined correctly within the version control system and the branches are consistent with the module set.
jhbuild checkbranches [--branch=branch...]
- --branch=branch, -bbranch
-
Der auszucheckende Zweig.
$ jhbuild -m gnome-2.20 checkbranches libgnomecanvas is missing branch definition for gnome-2-20 $
5.6. clean
Der Befehl clean leert die Erstellungsordner von einem oder mehreren Modulen.
jhbuild clean [--skip=module...] [--start-at=module]
Falls keine Modulnamen auf der Befehlszeile übergeben werden, wird die Modulliste aus der Konfigurationsdatei verwendet.
In der Dokumentation zum Befehl build finden Sie eine Beschreibung der verfügbaren Optionen.
5.7. dot
The dot command generates a file describing the directed graph formed by the dependencies between a set of modules. This file can then be processed using the GraphViz software to produce a diagram.
jhbuild dot [--soft-deps] [--clusters] [module...]
Falls keine Modulnamen auf der Befehlszeile übergeben werden, wird die Modulliste aus der Konfigurationsdatei verwendet.
The --soft-deps option adds dotted lines from the modules to the soft dependencies. The --clusters option groups modules from metamodules together.
Die Ausgabe dieses Befehls kann leicht zum Befehl dot weitergeleitet werden, um eine PostScript-Datei zu erstellen:
$ jhbuild dot modules | dot -Tps > dependencies.ps
Oder ein PNG-Bild:
$ jhbuild dot modules | dot -Tpng > dependencies.png
5.8. gui
Der Befehl gui startet eine grafische Oberfläche für JHBuild, in welcher Module ausgewählt und einige Optionen angepasst werden können.
jhbuild gui
Die erzeugte grafische Oberfläche benötigt GTK zur Darstellung, so dass einige unterstützende Bibliotheken erforderlich sein werden.
5.9. info
Der Befehl info wird dazu verwendet, um Informationen über ein oder mehrere Module anzuzeigen.
jhbuild info module...
Der Befehl gibt den Modulnamen, den Typ, die Abhängigkeiten, die davon abhängenden Pakete, den Quellordner und die Zeit der letzten Erstellung mit JHBuild aus. Falls verfügbar, können außerdem Informationen bezüglich des Modultyps ausgegeben werden, wie den CVS-Softwarebestand oder die Downloadadresse.
Falls kein Modul angegeben wird, dann werden Informationen über alle im Modulsatz definierten Module ausgegeben.
5.10. list
The list command displays the expanded list of modules the build command would build.
jhbuild list [-a] [-r] [-s] [--start-at=module] [--tags=tags] [--ignore-suggests] [--list-optional-modules] [module...]
Falls keine Modulnamen auf der Befehlszeile übergeben werden, wird die Modulliste aus der Konfigurationsdatei verwendet.
Die Optionen --skip, --start-at, --tags und --ignore-suggests werden ebenso wie für build verarbeitet.
- -a, --all-modules
-
List all the modules from the module set regardless of the build dependencies.
- -r, --show-revision
-
If a module is set to a branch, show the branch name with the module name.
- --list-optional-modules
-
Diese Option zwingt JHBuild, optionale Abhängigkeiten aufzulisten.
5.11. rdepends
Der Befehl rdepends zeigt die rekursiven Abhängigkeiten eines Moduls an.
jhbuild rdepends [module]
- --dependencies
-
Zeigt den Abhängigkeitspfad neben den Modulen an.
- --direct
-
Limit display to modules directly depending on specified module.
5.12. run
The run command runs the specified command using the same environment that JHBuild uses when building modules.
jhbuild run [--in-builddir] [--in-checkoutdir] Programm [argument...]
Falls Sie JHBuild zur Erstellung von GNOME verwenden, kann dieser Befehl in X-Startskripten nützlich sein.
- --in-builddir=Modul
-
Führen Sie den Befehl im Erstellungesordner des angegebenen Moduls aus.
- --in-checkoutdir=Modul
-
Führen Sie den Befehl im Quellordner des angegebenen Moduls aus.
5.13. sanitycheck
Der Befehl sanitycheck nimmt eine Reihe von Überprüfungen vor, um die Vollständigkeit der Erstellungsumgebung zu gewährleisten.
jhbuild sanitycheck
Beispielsweise wird Folgendes überprüft:
-
Ob die Präfixes für Checkout und Installation schreibbar sind.
-
Ob die benötigten Erstellungswerkzeuge installiert sind.
-
Ob einige häufig verwendete Makros in den Suchpfaden der den verschiedenen Versionen von automake zugeordneten aclocal-Befehle vorhanden sind.
-
Ob der XML-Katalog die DocBook-DTD und die Stilvorlagen enthält.
5.14. shell
The shell command starts the user's shell with the same environment as JHBuild uses when building modules.
jhbuild shell
Dieser Befehl entspricht dem Folgenden:
$ jhbuild run $SHELL
The UNDER_JHBUILD environment variable will be set to "true" when this shell is active. You can use the presence of that variable to customize your shell's prompt to indicate that you indeed are under a jhbuild-controlled shell. For example, you may want to put this in your .bashrc:
if [ -n "$UNDER_JHBUILD" ]; then PS1="[jhbuild] $PS1" fi
This will make your bash shell display [jhbuild] before your normal prompt, making it easier to see which shells are under a jhbuild environment.
5.15. tinderbox
The tinderbox command is similar to build, but writes all terminal output to HTML files suitable for publishing on a website. It can be used to set up systems similar to Mozilla's Tinderbox, or Debian's Buildd.
jhbuild tinderbox [--autogen] [--clean] [--no-network] [--output=directory] [--skip=module...] [--start-at=module] [-D date] [-C] [-N] [-f] [module...]
Die Optionen --autogen, --clean, --no-network, --skip, --start-at, -D, -C -N und -f werden ebenso wie für build verarbeitet.
- -o, --output=Ordner
-
Der Ordner zum Speichern der HTML-Dateien.
5.16. uninstall
Der Befehl uninstall deinstalliert ein oder mehrere Module.
jhbuild uninstall module...
5.17. update
The update command is similar to build, but only performs the download or update stage for modules without building them.
jhbuild update [--skip=module...] [--start-at=module] [--tags=tags] [--ignore-suggests] [-D date] [module...]
Die Optionen --skip, --start-at, --tags --ignore-suggests und -D werden ebenso wie für build verarbeitet.
5.18. updateone
The updateone command is similar to update, but it does not update the dependent modules. It is useful for updating one or more modules.
jhbuild updateone [-D date] module...
The -D option is processed as per the build command.
In der Befehlszeile muss mindestens ein Modul angegeben werden.