44 lines
1.7 KiB
YAML
44 lines
1.7 KiB
YAML
# we use both C and C++, so advertize C++
|
|
language: cpp
|
|
cache: ccache
|
|
dist: trusty
|
|
compiler:
|
|
- gcc
|
|
env:
|
|
- GTK3=no BINRELOC=no
|
|
- GTK3=yes BINRELOC=no
|
|
- GTK3=no BINRELOC=yes
|
|
- GTK3=yes BINRELOC=yes
|
|
- GTK3=no MINGW=yes
|
|
- GTK3=yes MINGW=yes
|
|
before_install:
|
|
- sudo apt-get update -qq
|
|
install:
|
|
- sudo apt-get install -y intltool libtool
|
|
- test -n "$MINGW" || sudo apt-get install -y libgtk2.0-dev libgtk-3-dev
|
|
- test -z "$MINGW" || sudo apt-get install -y mingw-w64-tools g++-mingw-w64-i686 gcc-mingw-w64-i686 binutils-mingw-w64-i686
|
|
# fix broken pkg-config-crosswrapper, see https://bugs.launchpad.net/ubuntu/+source/mingw-w64/+bug/1327242
|
|
- test -z "$MINGW" || sudo sed -e 's/PKG_CONFIG_PATH=/&$PKG_CONFIG_PATH:/' -i /usr/bin/i686-w64-mingw32-pkg-config
|
|
- sudo apt-get install -y python-docutils rst2pdf
|
|
# try not to install doxygen-latex because we don't need it and it's huge
|
|
- sudo apt-get install -y --no-install-recommends doxygen
|
|
- sudo apt-get install -y python-lxml
|
|
before_script:
|
|
- export CFLAGS="-g -O2 -Werror=pointer-arith -Werror=implicit-function-declaration"
|
|
script:
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- >
|
|
if [ -n "$MINGW" ]; then
|
|
arg=-2; [ "$GTK3" = yes ] && arg=-3;
|
|
unset CC CXX;
|
|
sh ./scripts/cross-build-mingw.sh $arg;
|
|
else
|
|
CONFIGURE_FLAGS="--enable-gtk3=$GTK3 --enable-binreloc=$BINRELOC";
|
|
mkdir _build &&
|
|
cd _build &&
|
|
{ ../configure $CONFIGURE_FLAGS || { cat config.log; exit 1; } ; } &&
|
|
make -j2 &&
|
|
make -j2 check &&
|
|
make -j2 distcheck DISTCHECK_CONFIGURE_FLAGS="$CONFIGURE_FLAGS";
|
|
fi
|