JHBuild is a tool designed to ease building collections of source packages, called “modules”.

Related tags

Miscellaneousjhbuild
Overview

JHBuild README

JHBuild is a tool designed to ease building collections of source packages, called “modules”.

JHBuild was originally written for building GNOME, but has since been extended to be usable with other projects.

JHBuild requires Python >= 3.5

Installing JHBuild

Refer to the 'Getting Started' section of the JHBuild manual:

https://gnome.pages.gitlab.gnome.org/jhbuild/getting-started.html

Or refer to the online JHBuild manual at:

https://gnome.pages.gitlab.gnome.org/jhbuild/index.html
An introduction to JHBuild is also available on the GNOME Wiki:
https://wiki.gnome.org/Projects/Jhbuild/Introduction

Using JHBuild

JHBuild uses a command line syntax similar to tools like CVS:

jhbuild [global-options] command [command-arguments]

The global JHBuild options are:

-f, --file config
  Use an alternative configuration file instead of the default ~/.config/jhbuildrc.
-m, --moduleset moduleset
  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.

Refer to the JHBuild manual for a complete list of JHBuild commands and options. The common ones are:

jhbuild bootstrap

The bootstrap command installs a set of build utilities. The build utilities include autoconf , automake and similar utilities. The recommended method to install the build utilities is via your distribution's package management system. The bootstrap should only be used if the build utilites are not provided by your distribution's package management system, for example on Mac OS.

jhbuild build [--autogen] [--clean] [--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...]

The build command builds one or more packages, including their dependencies.

If no module names are provided on the command line, the modules list from the configuration file will be used.

-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 Run make clean before building modules.
-d, --dist Run make dist after building modules.
--distcheck Run make distcheck after building modules.
--ignore-suggests
  Do not build soft dependencies.
-n, --no-network
  Do not access the network when building modules. This will skip download or update stages in a build. If a module can't be built without network access, the module build will fail.
-s, --skip=
  Do not build the listed modules. Used to skip the building of specified dependencies.
--tags=
  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=module
  Start at the named module rather than at the beginning of the list. This option is useful if the build was interrupted.
-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
  If one or more of a module's dependencies failed, this option forces JHBuild to try to build the module anyway.
-f, --force Build the modules even if policy states it is not required.
--build-optional-modules
  Modules listed as optional dependencies, may not be required to build the module. This option forces JHBuild to build optional dependencies.
--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.

jhbuild buildone [--autogen] [--clean] [--distcheck] [--no-network] [-D date] [--no-xvfb] [--force] [--min-age=time] module...

The buildone command is similar to build, but it does not build the dependent modules. It is useful for rebuilding one or more modules.

jhbuild sanitycheck

The sanitycheck command performs a number of checks to verify the build environment is okay.

For details of all jbhuild's command line options:

jhbuild --help

Reporting Bugs

If you find any bugs in JHBuild, or have feature requests (or implementations :), please file them at:

https://gitlab.gnome.org/GNOME/jhbuild/issues/new

This will ensure your request is not lost.

Owner
GNOME Github Mirror
Contributions sent to this organization will be forwarded automatically to https://gitlab.gnome.org
GNOME Github Mirror
🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

🍏 Make Thinc faster on macOS by calling into Apple's native Accelerate library

Explosion 81 Nov 26, 2022
Boamp-extractor - Script d'extraction des AOs publiés au BOAMP

BOAMP Extractor BOAMP-Extractor permet d'extraire les offres de marchés publics publiées au bulletin officiel des annonces des marchés publics (BOAMP)

Julien 3 Dec 09, 2022
List of short Codeforces problems with a statement of 1000 characters or less. Python script and data files included.

Shortest problems on Codeforces List of Codeforces problems with a short problem statement of 1000 characters or less. Sorted for each rating level. B

32 Dec 24, 2022
pybind11 — Seamless operability between C++11 and Python

pybind11 — Seamless operability between C++11 and Python Setuptools example • Scikit-build example • CMake example pybind11 is a lightweight header-on

pybind 12.1k Jan 08, 2023
Zeus - Advanced Punishments with Embeds.

Zeus Advanced Punishments with Embeds. Make sure to put the Discord Bot Token in the " TOKEN = '' " Language Python Features Ban Kick Mute Unmute Warn

2 Jan 05, 2022
This is an online course where you can learn and master the skill of low-level performance analysis and tuning.

Performance Ninja Class This is an online course where you can learn to find and fix low-level performance issues, for example CPU cache misses and br

Denis Bakhvalov 1.2k Dec 30, 2022
Python module to work with Magneto Database directly without using broken Magento 2 core

Python module to work with Magneto Database directly without using broken Magento 2 core

Egor Shitikov 13 Nov 10, 2022
[CVPR 2020] Rethinking Class-Balanced Methods for Long-Tailed Visual Recognition from a Domain Adaptation Perspective

Rethinking Class-Balanced Methods for Long-Tailed Visual Recognition from a Domain Adaptation Perspective [Arxiv] This is PyTorch implementation of th

Abdullah Jamal 22 Nov 19, 2022
Swim between bookmarks in the Windows terminal

Marlin Swim between bookmarks in the terminal! Marlin is an easy to use bookmark manager for the terminal. Choose a folder, bookmark it and swim there

wilfredinni 7 Nov 03, 2022
Hook and simulate global keyboard events on Windows and Linux.

keyboard Take full control of your keyboard with this small Python library. Hook global events, register hotkeys, simulate key presses and much more.

BoppreH 3.2k Jan 01, 2023
Supercharge your NFTs with new behaviours and superpowers!

WrapX Supercharge your NFTs with new behaviours and superpowers! WrapX is a collection of Wrappers (currently one - WrapXSet) to decorate your NTFs ad

Emiliano Bonassi 9 Jun 13, 2022
Its a simple and fun to use application. You can make your own quizes and send the lik of the quiz to your friends.

Quiz Application Its a simple and fun to use application. You can make your own quizes and send the lik of the quiz to your friends. When they would a

Atharva Parkhe 1 Feb 23, 2022
This module is for finding the execution time of a whole python program

exetime 3.8 This module is for finding the execution time of a whole program How to install $ pip install exetime Contents: General Information Instru

Saikat Das 4 Oct 18, 2021
适用于HoshinoBot下的雀魂插件。可进行近期对局查询、查询个人数据等功能,更多功能正在扩展

Majsoul_bot This is a Majsoul plugin for HoshinoBot 这是一个HoshinoBot的雀魂相关插件 本项目目前正在扩展,后续会扩展更多功能,敬请期待 前言 项目地址:https://github.com/DaiShengSheng/Majsoul_bo

黛笙笙 33 Dec 14, 2022
Unified Distributed Execution

Unified Distributed Execution The framework supports multiple execution backends: Ray, Dask, MPI and MultiProcessing. To run tests you need to install

17 Dec 25, 2022
K2HASH Python library - NoSQL Key Value Store(KVS) library

k2hash_python Overview k2hash_python is an official python driver for k2hash. Install Firstly you must install the k2hash shared library: curl -o- htt

Yahoo! JAPAN 3 Oct 19, 2022
Mpis-ex7 - Implementation of tasks 1, 2, 3 for Metody Probabilistyczne i Statystyka Lista 7

Implementations of task 1, 2 and 3 from here Author: Maciej Bazela Index: 261743 Each task was implemented in Python 3. I've used Cython to speed up e

Maciej Bazela 1 Feb 27, 2022
Open Source Management System for Botanic Garden Collections.

BotGard 3.0 Open Source Management System for Botanic Garden Collections built and maintained by netzkolchose.de in cooperation with the Botanical Gar

netzkolchose.de 1 Dec 15, 2021
A simple BrainF**k compiler written in Python

bf-comp A simple BrainF**k compiler written in Python. What else were you looking for?

1 Jan 09, 2022
Python for Microscopists and other image processing enthusiasts

The YouTube channel associated with this code walks you through the entire process of learning to code in Python; all the way from basics to advanced machine learning and deep learning.

Dr. Sreenivas Bhattiprolu 2.3k Jan 01, 2023