
Checkout the desired branch or tag from the git repository.

Example of branche names:
 - debian/bullseye-backports
 - ubuntu/focal-backports
 - ubuntu/jammy-backports

Or tags:
 - debian/11.26-1_bpo11+1 (for backport to bullseye of 11.26-1)
 - debian/11.27-1_bpo11+1
 - debian/11.28-1_bpo11+1
 - debian/11.29-1_bpo11+1
 - debian/13.3-1_bpo11+1
 - ubuntu/12.0-2_bpo20.04
 - ubuntu/12.4-1_bpo20.04
 - ubuntu/12.5-1_bpo20.04
 - ubuntu/13.3-1_bpo20.04
 - ubuntu/13.3-1_bpo20.04+1 (for backport to focal of 13.3-1)
 - ubuntu/13.3-1_bpo22.04_1 (for backport to jammy of 13.3-1)


Some versions for Ubuntu are also available on:
  https://launchpad.net/~bastif/+archive/ubuntu/freefilesync/


==================================================================
To build for jammy (22.04)
==================================================================

No additional repo required but if possible using security & updates repos doesn't
harm.

sbuild -d jammy

==================================================================
To build for bullseye (2021)
==================================================================

No additional repo required.

sbuild -d bullseye

==================================================================
To build for focal (20.04)
==================================================================

Ensure to have these extra repositores available in your sources.list

# For debhelper 13
deb http://archive.ubuntu.com/ubuntu focal-backports main

# For a recent enough g++-10
deb http://archive.ubuntu.com/ubuntu focal-security main restricted universe

# Build command with sbuild:

sbuild -d focal \
  --build-dep-resolver=aptitude \
  --extra-repository="deb http://archive.ubuntu.com/ubuntu focal-backports main" \
  --extra-repository="deb http://archive.ubuntu.com/ubuntu focal-security main restricted universe"


==================================================================
To build with a specific version of g++ (and cross build also)
==================================================================

For example, if the distribution's default gcc-defaults is version 9
and you want to build with g++ version 10, you have to set

  in d/control, add to the Build-Depends list:

    g++-10 <!cross>,
    g++-10-aarch64-linux-gnu [arm64] <cross>,
    g++-10-alpha-linux-gnu [alpha] <cross>,
    g++-10-arm-linux-gnueabihf [armhf] <cross>,
    g++-10-i686-linux-gnu [i386] <cross>,
    g++-10-ia64-linux-gnu [ia64] <cross>,
    g++-10-mips64el-linux-gnuabi64 [mips64el] <cross>,
    g++-10-powerpc64le-linux-gnu [ppc64el] <cross>,
    g++-10-riscv64-linux-gnu [riscv64] <cross>,
    g++-10-x86-64-linux-gnu [amd64] <cross>,
    g++-10-x86-64-linux-gnux32 [x32] <cross>,

    starting from gcc-13, this list can be replaced by:
      g++-13-for-build <!cross>,
      g++-13-for-host <cross>,

  in d/rules

    uncomment the `CXX := $(CXX)-??` line, and set it to `CXX := $(CXX)-10`
