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
A Linux webcam plugin for BGMv2 as used in our demos.

The goal of this repository is to supplement the main Real-Time High Resolution Background Matting repo with a working demo of a videoconferencing plu

Andrey Ryabtsev 144 Dec 27, 2022
Automatically remove user join messages when the user leaves the server.

CleanLeave Automatically remove user join messages when the user leaves the server. Installation You will need to install poetry to run this bot local

11 Sep 19, 2022
A python script to make leaderboards using a CSV with the runners name, IDs and Flag Emojis

SrcLbMaker A python script to make speedrun.com global leaderboards. Installation You need python 3.6 or higher. First, go to the folder where you wan

2 Jul 25, 2022
Recreating my first CRUD in python, but now more professional

Recreating my first CRUD in python, but now more professional

Ricardo Deo Sipione Augusto 2 Nov 27, 2021
WildHack 2021 solution by Nuclear Foxes team (public version).

WildHack 2021 Nuclear Foxes Team This repo contains our project for the Wildberries Hackathon 2021. Task 2: Searching tags Implement an algorithm of r

Sergey Zakharov 1 Apr 18, 2022
Cup Noodle Vending Maching Ordering Queue

Noodle-API Cup Noodle Vending Machine Ordering Queue Install dependencies in virtual environment python3 -m venv

Jonas Kazlauskas 1 Dec 09, 2021
A Gura parser implementation for Python

Gura parser This repository contains the implementation of a Gura format parser in Python. Installation pip install gura-parser Usage import gura gur

JWare Solutions 19 Jan 25, 2022
How to create the game Rock, Paper, Scissors in Python

Rock, Paper, Scissors! If you want to learn how to do interactive games using Python, then this is great start for you. In this code, You will learn h

SplendidSpidey 1 Dec 18, 2021
A simple string parser based on CLR to check whether a string is acceptable or not for a given grammar.

A simple string parser based on CLR to check whether a string is acceptable or not for a given grammar.

Bharath M Kulkarni 1 Dec 15, 2021
GUI tool to manage the contents of chests in Botw

Botw chest manager is a small gui tool allowing to easily manage chests. Sometimes Ice Spear can be very time consuming when adding a simple chest. The purpose of this light tool is to add a new ches

3 Aug 25, 2022
Hello, Welcome to this repo. don't forget to read guidelines in readme.md

Hacktoberfest_2021 If you looking for your first contribution, we are here to help. Just create a simple program using any language you like in our fo

Wafa Rifqi Anafin 117 Dec 14, 2022
a simple proof system I made to learn math without any mistakes

math_up a simple proof system I made to learn math without any mistakes 0. Short Introduction test yourself, enjoy your math! math_up is an NBG-based,

양현우 5 Jun 04, 2021
Prophet is a tool to discover resources detailed for cloud migration, cloud backup and disaster recovery

Prophet is a tool to discover resources detailed for cloud migration, cloud backup and disaster recovery

22 May 31, 2022
Check broken access control exists in the Java web application

javaEeAccessControlCheck Check broken access control exists in the Java web application. 检查 Java Web 应用程序中是否存在访问控制绕过问题。 使用 python3 javaEeAccessControl

kw0ng 3 May 04, 2022
B-Pkg is a simple tool in python for installing all basic package in termux

Basic-Pkg 👉🏻 Basic-Pkg 👈🏻 B-Pkg is a simple tool in python for installing all basic package in termux This is my first tool, I hope you will like

Macgaiver 3 Oct 21, 2021
Demo scripts for the Kubernetes Security Webinar

Kubernetes Security Webinar [in Russian] YouTube video (October 13, 2021) Authors: Artem Yushkovsky (LinkedIn, GitHub) Maxim Mosharov @ Whitespots.io

Slurm 34 Dec 06, 2022
A collection of useful functions for writers to analyze text/stories.

AuthorTools AuthorTools provides a multitude of functions for easily analyzing (your?) writing. AuthorTools is made especially for creative writers wi

1 Jan 14, 2022
Lags valorant servers by rapidly picking up and throwing shorties.

Lags valorant servers by rapidly picking up and throwing shorties.

Eric Still 9 Dec 30, 2021
A web application which you can search, buy or sell shares with current prices which provided by IEX.

CS50 - Stock Exchange A web application which you can search, buy or sell shares with current prices which provided by IEX. Table of Contents Setup St

1 May 28, 2022
Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım.

Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım. Bu repo kitaptaki örnek programları çalıştığım oyun al

Burak Selim Senyurt 22 Oct 26, 2022