2015-06-10 10:26:10 +00:00
|
|
|
language: c
|
|
|
|
|
2015-08-29 09:27:02 +00:00
|
|
|
os:
|
|
|
|
- linux
|
|
|
|
- osx
|
|
|
|
|
2015-07-21 10:15:06 +00:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
2015-08-26 08:32:55 +00:00
|
|
|
# packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
|
2015-07-21 10:15:06 +00:00
|
|
|
- iptables-dev
|
|
|
|
- libevent-dev
|
|
|
|
- libnfnetlink-dev
|
2019-06-12 05:46:53 +00:00
|
|
|
- libmnl-dev
|
|
|
|
- libnftnl-dev
|
2016-02-12 14:18:32 +00:00
|
|
|
- uuid-dev
|
2019-04-23 11:04:40 +00:00
|
|
|
- cmake
|
2019-09-24 09:29:39 +00:00
|
|
|
- doxygen
|
|
|
|
- graphviz
|
2015-07-21 10:15:06 +00:00
|
|
|
|
2015-07-22 13:06:53 +00:00
|
|
|
# container-based builds
|
2015-07-21 10:15:06 +00:00
|
|
|
sudo: false
|
|
|
|
|
2019-06-04 20:37:35 +00:00
|
|
|
# https://docs.travis-ci.com/user/reference/xenial/
|
|
|
|
dist: xenial
|
|
|
|
|
2015-06-10 10:26:10 +00:00
|
|
|
env:
|
|
|
|
- 'PROJECT=minissdpd'
|
|
|
|
- 'PROJECT=miniupnpc'
|
|
|
|
- 'PROJECT=miniupnpc-async'
|
|
|
|
- 'PROJECT=miniupnpc-libevent'
|
|
|
|
- 'PROJECT=miniupnpd'
|
|
|
|
|
2015-09-15 15:31:08 +00:00
|
|
|
matrix:
|
|
|
|
exclude:
|
|
|
|
- os: osx
|
|
|
|
env: PROJECT=miniupnpd
|
2017-12-12 11:57:12 +00:00
|
|
|
- os: osx
|
|
|
|
compiler: gcc
|
2015-09-15 15:31:08 +00:00
|
|
|
|
2015-07-22 13:06:53 +00:00
|
|
|
compiler:
|
|
|
|
- gcc
|
|
|
|
- clang
|
|
|
|
|
2017-02-15 11:15:36 +00:00
|
|
|
before_install:
|
|
|
|
- 'if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$CC" == "gcc" ] ; then CC=gcc-4.9; fi'
|
|
|
|
|
2015-06-10 10:26:10 +00:00
|
|
|
script:
|
|
|
|
- 'cd $TRAVIS_BUILD_DIR && cd $PROJECT'
|
2019-04-23 11:04:40 +00:00
|
|
|
- MAKEFILE=Makefile && if [ -f Makefile.linux -a "$TRAVIS_OS_NAME" = "linux" ]; then
|
|
|
|
MAKEFILE=Makefile.linux ;
|
|
|
|
elif [ -f Makefile.macosx -a "$TRAVIS_OS_NAME" = "osx" ]; then
|
|
|
|
MAKEFILE=Makefile.macosx;
|
|
|
|
fi
|
|
|
|
- if [ "$MAKEFILE" = "Makefile.macosx" ]; then
|
|
|
|
make -f $MAKEFILE depend;
|
|
|
|
fi
|
2016-08-16 09:51:45 +00:00
|
|
|
- 'CONFIG_OPTIONS="--ipv6 --igd2" make -f $MAKEFILE -j3'
|
2019-10-05 20:54:06 +00:00
|
|
|
- make -f $MAKEFILE check
|
2019-10-01 21:48:56 +00:00
|
|
|
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$PROJECT" = "miniupnpd" ]; then
|
|
|
|
make -f Makefile.linux_nft clean ;
|
2019-10-06 20:24:26 +00:00
|
|
|
CONFIG_OPTIONS="--ipv6 --igd2" make -f Makefile.linux_nft -j3 ;
|
2019-10-01 21:48:56 +00:00
|
|
|
fi
|
2019-09-24 09:20:17 +00:00
|
|
|
- 'if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$PROJECT" = "miniupnpd" ]; then make -f $MAKEFILE dox ; fi'
|
2019-04-23 11:04:40 +00:00
|
|
|
- if [ "$PROJECT" = "miniupnpc" ]; then
|
|
|
|
INSTALLPREFIX="$HOME/_pythonmodule" make -f $MAKEFILE pythonmodule;
|
|
|
|
fi
|
|
|
|
- if [ -f "CMakeLists.txt" ] ; then
|
|
|
|
mkdir cmake-build && cd cmake-build &&
|
|
|
|
cmake .. && make ;
|
|
|
|
fi
|
2015-07-22 13:06:53 +00:00
|
|
|
|
|
|
|
after_success:
|
2015-08-26 08:24:54 +00:00
|
|
|
- 'INSTALLPREFIX="$HOME/$PROJECT" make -f $MAKEFILE install'
|