Commit Graph

19 Commits

Author SHA1 Message Date
Ruediger Meier 277d61b9f4 travis: enable osx root checks
Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2018-03-07 18:31:55 +01:00
Ruediger Meier cf76bbae48 travis: minor cosmetics
This is just to make the diff to my private travis script a bit smaller.

Now we always use $CC _after_ the install script which makes it possible
to install/update the compiler in the install section.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2017-06-15 09:13:14 +02:00
Ruediger Meier 668d6d2ef9 travis: add OSX build
Of course OSX is not an important target but since it's available on
travis we can (mis)use it to generally improve non-Linux and non-GNU
compatibility. People are using musl, busybox or whatever and
util-linux should work for them. Having OSX build running regularly
will help us to freeze the lately improved BSD compatibility and
to check code which is usually ifdef'ed.

We are using the most recent OSX 10.11.x / Xcode 7.3 though the older
travis OSX images are working too currently.

If it turns out that this OSX build is too annoying when we are about
to add support for latest Linux features then we could add:
  allow_failures:
    - os: osx
to let it fail silently.

Note I've tried hard to keep .travis-functions.sh readable for the
Linux case. I've removed --with-python because it's default anyway,
--enable-gtk-doc is still tested in discheck.

OSX root check would also work (almost, using another --prefix) but
would only run one more test yet (minix).

OSX distcheck would have some issues with conditionally built man
pages and does not work with default distcheck confopts. No need to
fix that because distcheck is more for maintainer machines.

BTW to increase travis build speed again we could remove some targets
from the matrix without losing tested scenarios:
 - nonroot for Linux seems to be waste of time
 - clang/Linux could be root check only
For now we keep it as is.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2016-03-13 21:51:18 +01:00
Ruediger Meier fc412fe4ce travis: switch to Ubuntu 14.04 Trusty
Now we have a reasonable recent build system with systemd, etc. We still
keep old Ubuntu 12.04 Precise to check backward compatibility but
remove the hack to install socat.

Note the new env variable PRECISE="yes" is only there to see it on travis
website.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2016-03-13 21:48:21 +01:00
Ruediger Meier 1091e83e84 travis: minor cleanup
- print env for debugging
 - remove unused builddir stuff
 - avoid non-portable find/xargs usage

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2016-02-18 12:53:03 +01:00
Ruediger Meier 514f593060 travis: workaround env pollution, PYTHON_CFLAGS
Since a few days travis workers seem to export broken PYTHON_CFLAGS
and automake's python detection fails.

see https://github.com/travis-ci/travis-ci/issues/5301

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2015-12-17 14:15:34 +01:00
Ruediger Meier d42ecea2e9 travis: cosmetics, order scripts like they are executed
Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2015-12-17 14:09:11 +01:00
Karel Zak b3f5d0bc28 Revert "travise: try to add coverity_scan"
This reverts commit 3053e14997.
2015-05-06 16:43:35 +02:00
Karel Zak 3053e14997 travise: try to add coverity_scan
Signed-off-by: Karel Zak <kzak@redhat.com>
2015-05-06 16:16:17 +02:00
Ruediger Meier 355df774f4 travis: whitelist travis* branches
Sometimes we may want to test non-master branches.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2015-03-16 14:32:34 +01:00
Ruediger Meier 5ddcc32a3e travis: move install script to .travis-functions.sh
Now this snippet can be re-used by non-travis systems. For example
on drone.io we can use this simple build script:
......
MAKE_CHECK="root"
source ./.travis-functions.sh
travis_install_script || exit
travis_before_script || exit
ret=0
travis_script || ret=$?
travis_after_script
exit $ret
......

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2015-03-16 14:32:34 +01:00
Karel Zak bfc0b37ee9 travis: whitelist branches
Signed-off-by: Karel Zak <kzak@redhat.com>
2014-09-09 15:55:53 +02:00
Sami Kerola 7be73458b8 tests: apply travis clang PATH workaround
As seen in Travis build log the clang is not found, causing one of the
tests to fail.  This change adds a workaround from Travis issue 2607 to
util-linux.

Reference: https://travis-ci.org/karelzak/util-linux/jobs/33056101#L3630
Reference: https://github.com/travis-ci/travis-ci/issues/2607
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2014-08-21 10:01:01 +02:00
Ruediger Meier dd68764c59 travis-ci: refactor and add .travis-functions.sh
Travis yaml syntax, where we can only use shell one-liners, is awful
and ugly. We add a real shell script and source it from .travis.yml.

This commit squashes a lot changes because we don't want to pollute
history with this meta CI stuff.

Highlights of this commit:
  - enable make distcheck
  - cleanup configure options (enable all progs, with python and docs)
  - shorter config.log dump
  - out-of-tree build supported
  - workaround broken libtool on travis host
  - now it's easy to add temporary debugging stuff
  - testing locally is possible now

What are we testing now:
  - gcc and clang compiler
  - configure mostly with --enable-all-programs, --with-python and
    --enable-gtk-doc
  - make check with and without root permissions
  - make distcheck
  - make install (with and without --prefix as well as DESTDIR=...)
  - usually we always build in-tree but distcheck does out-of-tree

What do we want/expect at all:
  - This travis setup is intended to always work without fixing or
    updating this build script all the time. Thats why we only use a
    few configure flags.
  - We want to avoid predictable failures on travis host to not make
    developers tired of this machinery. Any tested feature which is
    known to be (sometimes) broken should be fixed or skipped as soon
    as possible.
  - If this works like wanted then in future almost any point in master
    commit history should at least survive the build and common tests
    on this reference host/arch. Moreover we will have a comparable,
    deterministic build log history. This could make bisecting real
    bugs easier.
  - It's not our goal to test any kind of config flags, host setup and
    arch combination. This would be done better by external build
    scripts which do not live within the project itself.
  - Of course this machinery can be also used to reproduce bugs with
    more exotic config and host setup by pushing a debug branch with
    modified travis script to github.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2014-06-06 16:18:44 +02:00
Ruediger Meier 04a176eacd travis-ci: enable root checks
Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2014-05-13 17:38:52 +02:00
Ruediger Meier 1ecee3d556 travis-ci: minor cleanup and speedup
Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2014-05-13 17:38:48 +02:00
Ruediger Meier b9396cbe90 travis-ci: enable more features and update gettext
Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2014-03-29 01:13:13 +01:00
Ruediger Meier d9f0a6b091 travis-ci: abort if make check fails
make check should work now on current travis build image.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
2014-03-14 00:23:18 +01:00
Ruediger Meier dac87e44a2 travis-ci: import travis yaml controller
.travis.yml is used for automatic builds on travis build farm
(https://travis-ci.org/) if the travis service hook is enabled for the
repo on github.

This inital yaml controller will run 2 different compilers (gcc, clang).
The test suite currently fails, that's why we don't abort yet.
2014-02-26 18:04:13 +01:00