Xfce Wiki

Sub domains
 

This is an old revision of the document!


xfce4-dev-tools


The Xfce development tools are a collection of tools and macros for Xfce developers and people that want to build Xfce from Git In addition it contains the Xfce developer's handbook.


xfce-build containerized build environment

This project also contains the code to build and deploy xfce-build to the [xfce-build area on Docker Hub](https://hub.docker.com/repository/docker/xfce/xfce-build/). This container is the build environment used by Xfce to build the various projects. It can also be used as your own build environment as follows:

docker run --rm -u $(id -u ${USER}):$(id -g ${USER}) \
  --volume $(pwd):/tmp xfce/xfce-build:master /bin/bash \
  -c "cd /tmp; ./autogen.sh && make distcheck"

The steps to build the container are encoded in the [`Dockerfile`](Dockerfile) in this repository, and is built via the build job in [`.gitlab-ci.yml`](.gitlab-ci.yml).


CI templates for Xfce

The [CI folder](ci/) contains the build_project.yml template for building the various Xfce projects, as well as supporting scripts such as `build_libs.sh` which handles building any needed dependencies. This helps us avoid repeating the same build code in each project.


Release notes for 4.15.0

[Please note that this is a development release.]

- New macro XDT_VERSION_INIT(SEMVER[, TAG])

This macro takes care of setting up the version numbering. It will define the following macros based on SEMVER and TAG:

  1. xdt_version
  2. xdt_version_major
  3. xdt_version_minor
  4. xdt_version_micro
  5. xdt_version_tag
  6. xdt_version_build
  7. xdt_debug_default

If TAG isn't specified, the xdt_version_tag and xdt_version_git will be empty and xdt_debug_default will be set to “minimum”, otherwise the xdt_version_build will contain a git hash and xdt_debug_default will be set to “yes”

Example usage:

XDT_VERSION_INIT([4.15.3],[git])
AC_INIT([xfce4-someproject], [xdt_version()])
...
XDT_FEATURE_DEBUG([xdt_debug_default])

- XDT_I18N macro will now automatically find the linguas if none are specified during the autoconf run.

- Install m4 macros in default search dir. This makes autoconf find the macros by default.

By setting version via XDT_VERSION_INIT and using XDT_I18N without arguments, this is no longer necessary to use a separate configure.ac.in and a plain configure.ac can be used ! A big thank to Natanael Copa (ncopa) for his work on this part !

- xfce4-dev-tools now also handle the CI (docker container, .gitlab-ci.yml templates files etc) on our new gitlab instance. A merge request or a push to master to any of our projects automatically trigger a build. This will help us to catch errors quicker and have better quality. Thanks to Jason Yavorska and Simon Steinbeiss.

- New helpers are also available (xfce-get-release-notes, xfce-get-translations, xfce-update-news) to help our maintainers to do releases

Back to Top


Latest Release

4.15.0 (202020624)

Source Code Repository

Reporting Bugs

Back to Top


Back to main Xfce documentation page