diff options
author | Colin Walters <walters@verbum.org> | 2017-06-09 10:57:40 -0400 |
---|---|---|
committer | Atomic Bot <atomic-devel@projectatomic.io> | 2017-06-09 18:30:15 +0000 |
commit | e0e07e2a48ad61e497ee812d97db3cb1bb6e0d70 (patch) | |
tree | 51a42c1770368b263d40e47d4cb957c9df3c8a0f /ci | |
parent | a98faa911343378781114d458ba3936c282b90ec (diff) | |
download | ostree-e0e07e2a48ad61e497ee812d97db3cb1bb6e0d70.tar.gz |
ci: Add CentOS 7 build
For similar reasons as https://github.com/projectatomic/rpm-ostree/pull/824
Closes: #919
Approved by: jlebon
Diffstat (limited to 'ci')
-rwxr-xr-x | ci/build-check.sh | 18 | ||||
-rwxr-xr-x | ci/build.sh | 14 | ||||
-rw-r--r-- | ci/libbuild.sh | 45 |
3 files changed, 58 insertions, 19 deletions
diff --git a/ci/build-check.sh b/ci/build-check.sh index 6123440e..d15032e7 100755 --- a/ci/build-check.sh +++ b/ci/build-check.sh @@ -10,11 +10,15 @@ make check make syntax-check # TODO: do syntax-check under check # And now run the installed tests make install -gnome-desktop-testing-runner -p 0 ostree +if test -x /usr/bin/gnome-desktop-testing-runner; then + gnome-desktop-testing-runner -p 0 ostree +fi -git clean -dfx && git submodule foreach git clean -dfx -# And now a clang build to find unused variables; perhaps -# in the future these could parallelize -export CC=clang -export CFLAGS='-Werror=unused-variable' -build +if test -x /usr/bin/clang; then + git clean -dfx && git submodule foreach git clean -dfx + # And now a clang build to find unused variables; perhaps + # in the future these could parallelize + export CC=clang + export CFLAGS='-Werror=unused-variable' + build +fi diff --git a/ci/build.sh b/ci/build.sh index d5bacd38..eefb7c3c 100755 --- a/ci/build.sh +++ b/ci/build.sh @@ -6,10 +6,14 @@ set -xeuo pipefail dn=$(dirname $0) . ${dn}/libbuild.sh -install_builddeps ostree - -dnf install -y sudo which attr fuse gjs parallel coccinelle clang \ - libubsan libasan libtsan PyYAML gnome-desktop-testing redhat-rpm-config \ +pkg_install_builddeps ostree +pkg_install sudo which attr fuse \ + libubsan libasan libtsan PyYAML redhat-rpm-config \ elfutils +pkg_install_if_os fedora gjs gnome-desktop-testing parallel coccinelle clang -build --enable-gtk-doc --enable-installed-tests=exclusive ${CONFIGOPTS:-} +DETECTED_CONFIGOPTS= +if test -x /usr/bin/gnome-desktop-testing-runner; then + DETECTED_CONFIGOPTS="${DETECTED_CONFIGOPTS} --enable-installed-tests=exclusive" +fi +build --enable-gtk-doc ${DETECTED_CONFIGOPTS} ${CONFIGOPTS:-} diff --git a/ci/libbuild.sh b/ci/libbuild.sh index b061a486..fef9d3ae 100644 --- a/ci/libbuild.sh +++ b/ci/libbuild.sh @@ -10,14 +10,45 @@ build() { make V=1 } -install_builddeps() { - pkg=$1 - dnf -y install dnf-plugins-core - dnf install -y @buildsys-build - dnf install -y 'dnf-command(builddep)' +pkg_install() { + yum -y install "$@" +} + +pkg_install_if_os() { + os=$1 + shift + (. /etc/os-release; + if test "${os}" = "${ID}"; then + pkg_install "$@" + else + echo "Skipping installation on OS ${ID}: $@" + fi + ) +} +pkg_builddep() { + # This is sadly the only case where it's a different command + if test -x /usr/bin/dnf; then + dnf builddep -y "$@" + else + yum-builddep -y "$@" + fi +} + +pkg_install_builddeps() { + pkg=$1 + if test -x /usr/bin/dnf; then + yum -y install dnf-plugins-core + yum install -y 'dnf-command(builddep)' + # Base buildroot + pkg_install @buildsys-build + else + yum -y install yum-utils + # Base buildroot, copied from the mock config sadly + yum -y install bash bzip2 coreutils cpio diffutils system-release findutils gawk gcc gcc-c++ grep gzip info make patch redhat-rpm-config rpm-build sed shadow-utils tar unzip util-linux which xz + fi # builddeps+runtime deps - dnf builddep -y $pkg - dnf install -y $pkg + pkg_builddep $pkg + pkg_install $pkg rpm -e $pkg } |