libui/.travis.yml

95 lines
3.1 KiB
YAML

language: c
include: &toolchain_linux_amd64
os: linux
dist: trusty
addons:
apt:
packages:
- libgtk-3-dev
include: &toolchain_linux_386
os: linux
dist: trusty
addons:
apt:
packages:
- gcc-multilib
- g++-multilib
- libgtk-3-dev:i386
# the rest fixes broken dependencies of libgtk:i386
- libgirepository-1.0-1:i386
- libglib2.0-dev:i386
- gir1.2-glib-2.0:i386
- gir1.2-atk-1.0:i386
- libatk1.0-dev:i386
- libfreetype6-dev:i386
- libfontconfig1-dev:i386
- libcairo2-dev:i386
- libgdk-pixbuf2.0-dev:i386
- libpango1.0-dev:i386
- libxft-dev:i386
- libpng12-dev:i386
include: &toolchain_osx_amd64
os: osx
osx_image: xcode8
# Travis CI build matrix.
# Each entry below will trigger an extra, parallel build on Travis.
matrix:
include:
- env: linking=shared arch=amd64
<<: *toolchain_linux_amd64
- env: linking=static arch=amd64
<<: *toolchain_linux_amd64
- env: linking=shared arch=386
<<: *toolchain_linux_386
- env: linking=static arch=386
<<: *toolchain_linux_386
- env: linking=shared arch=amd64
<<: *toolchain_osx_amd64
- env: linking=static arch=amd64
<<: *toolchain_osx_amd64
install:
- if [[ "${arch}" == "386" ]]; then
export CFLAGS=-m32;
export CXXFLAGS=-m32;
export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig;
fi
- if [[ "${linking}" == "static" ]]; then
export CMAKE_FLAGS=-DBUILD_SHARED_LIBS=OFF;
fi
script:
- cmake --version
- mkdir build
- pushd build
- cmake -G "Unix Makefiles" ${CMAKE_FLAGS} ..
- make tester examples
- popd
after_success:
- ls -lR build/out
- file build/out/test
- export platform="$TRAVIS_OS_NAME"
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then cp ui.h ui_darwin.h build/out/; export platform=darwin; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then cp ui.h ui_unix.h build/out/; fi
- if [[ "x${TRAVIS_TAG}" != "x" ]]; then export version=${TRAVIS_TAG}; else export version=${TRAVIS_BRANCH}; fi
- export artifact=${version}-${platform}-${arch}-${linking}
- pushd build/out
- tar -czvf libui-${artifact}.tgz libui.* *.h
- tar -czvf examples-${artifact}.tgz `find . -type f ! -name "*.*"`
- popd
deploy:
provider: releases
api_key:
secure: MFpee9M8kzihNg7KmQQjtznIHmfTF88EVhkY5FcM3CZUg6XfNE8YDPRLhWnH9/Oyrn1WjL37UabrJSrMYoz44s7yqyKeGK0rXIpV2i9gGMdGDxe94iCrPdvcwK2BysDd7pfwDPy1EtM8nxCQHv7d01PPT+w0hDCjBAMbILOh0IHB4yDvwyZOy6ReWas3/co3djjfjHk5XCUm54cT2mxu3U5CHQY9gsJWVaom9eINLjtDkTgbStxGSuXXmeRGzpFReR5dF4KK/IVs2GbayNfWOS8Xqhgk5uKFalWaH4P+F5ACf4zH78mhK+FiDWCkhzB6/N+mJOwl6BV9BjUv9/4+pNDQVYZvc0P19Kv8wzQsL3jMJ/SRFf4tdIeoDgRFOrq0QL7JajWq16zazbhP6PiIEfcNKdbqlvVoG7LheUsSkbVbmV439He3oykA7Tbc+dBPn+8hRdpsyoG8CyY/8nDS+E8mMxU5JvRfmlc93ZL6uxAOeIW/w8V70/upb/Tdk4d2pEeihisdL24Ys5CYzbVJAyP6Vx4y5yyKrA1RSq0pBkjzc9DJI811c4XLiLpv8jglYomN4PHk5e7GEW7n7HYSTf3gXB4HgVt5fnDudhTHErRKtzxxiBKXMYLmaCUv5mOEjSu4hRZq4v0e/VbzbfGlFoMsB9krzd9JIk7Fl1FbkNo=
file: build/out/*.tgz
file_glob: true
skip_cleanup: true
on:
tags: true