Add Debian sid build pass (#4707)

* Add Debian sid build pass

* Update file locations and copyright

* Use ccache

* Redirect within sudo

* Work around a pbuilder bug which breaks ccache

* Debian: enable parallel builds

* Travis: Debian: fix caching

* Fix shellcheck warnings
This commit is contained in:
Javier Serrano Polo
2018-12-09 11:19:15 +01:00
committed by GitHub
parent 9c9290eeeb
commit 698c39d385
14 changed files with 574 additions and 45 deletions

View File

@@ -0,0 +1,2 @@
314ef4af137903dfb13e8c3ef1e6ea56cfdb23808d52ec4f5f50e288c73610c5 pbuilder_0.229.1_all.deb
fa82aa8ed3055c6f6330104deedf080b26778295e589426d4c4dd0f2c2a5defa debootstrap_1.0.95_all.deb

View File

@@ -1,7 +1,14 @@
#!/usr/bin/env bash
mkdir build
cd build
if [ $QT5 ]; then
unset QTDIR QT_PLUGIN_PATH LD_LIBRARY_PATH
source /opt/qt59/bin/qt59-env.sh
fi
cmake -DUSE_WERROR=ON $CMAKE_FLAGS ..
make -j4
make tests
./tests/tests

View File

@@ -0,0 +1,2 @@
#!/bin/sh
sudo apt-get update -qq

View File

@@ -0,0 +1,16 @@
#!/bin/sh
set -e
sudo apt-get install -y \
debian-archive-keyring \
dpkg \
pbuilder
# work around a pbuilder bug which breaks ccache
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=666525
cd /tmp
wget http://archive.ubuntu.com/ubuntu/pool/main/p/pbuilder/pbuilder_0.229.1_all.deb
wget http://archive.ubuntu.com/ubuntu/pool/main/d/debootstrap/debootstrap_1.0.95_all.deb
sha256sum -c "$TRAVIS_BUILD_DIR/.travis/debian_pkgs.sha256"
sudo dpkg -i pbuilder_0.229.1_all.deb debootstrap_1.0.95_all.deb
cd "$OLDPWD"

View File

@@ -0,0 +1,30 @@
#!/bin/sh
set -e
BASETGZ="$HOME/pbuilder-bases/debian-sid-amd64.tgz"
MIRROR=http://cdn-fastly.deb.debian.org/debian
KEYRING=/usr/share/keyrings/debian-archive-keyring.gpg
if [ -z "$TRAVIS_TAG" ]
then
sudo \
sh -c "echo CCACHEDIR=$HOME/.ccache >> /etc/pbuilderrc"
fi
if [ ! -e "$BASETGZ.stamp" ]
then
mkdir -p "$HOME/pbuilder-bases"
sudo pbuilder --create --basetgz "$BASETGZ" --mirror $MIRROR \
--distribution sid --architecture amd64 \
--debootstrapopts --variant=buildd \
--debootstrapopts --keyring=$KEYRING \
--debootstrapopts --include=perl
touch "$BASETGZ.stamp"
else
sudo pbuilder --update --basetgz "$BASETGZ"
fi
DIR="$PWD"
cd ..
dpkg-source -b "$DIR"
env -i sudo pbuilder --build --debbuildopts "--jobs=auto" --basetgz "$BASETGZ" ./*.dsc

View File

@@ -1,4 +1,8 @@
#!/usr/bin/env bash
mkdir build
cd build
export CMAKE_OPTS="$CMAKE_FLAGS -DUSE_WERROR=ON"
../cmake/build_mingw32.sh
make -j4

View File

@@ -1,4 +1,8 @@
#!/usr/bin/env bash
mkdir build
cd build
export CMAKE_OPTS="$CMAKE_FLAGS -DUSE_WERROR=ON"
../cmake/build_mingw64.sh
make -j4

View File

@@ -1,4 +1,6 @@
#!/usr/bin/env bash
mkdir build
cd build
if [ $QT5 ]; then
# Workaround; No FindQt5.cmake module exists
@@ -6,3 +8,7 @@ if [ $QT5 ]; then
fi
cmake $CMAKE_FLAGS -DUSE_WERROR=OFF ..
make -j4
make tests
./tests/tests