# Travis CI script

language: c

os:
- linux
- osx

sudo: false

env:
 global:
  - BUILD_PREFIX=$PWD/tmp
  - CFLAGS=-I${BUILD_PREFIX}/include
  - CPPFLAGS=-I${BUILD_PREFIX}/include
  - CXXFLAGS=-I${BUILD_PREFIX}/include
  - LDFLAGS=-L${BUILD_PREFIX}/lib
  - PKG_CONFIG_PATH=${BUILD_PREFIX}/lib/pkgconfig
  - DISTCHECK_CONFIGURE_FLAGS="--with-libsodium --prefix=${BUILD_PREFIX}"

before_install:
# workaround for Travis OSX CI bug, hasn't been fixed in a month so time for a hack
- if [ $TRAVIS_OS_NAME == "osx" ] ; then brew uninstall libtool && brew install libtool ; fi

#   Build required projects first
before_script:
- mkdir tmp
#   libsodium
- git clone --depth 1 -b stable git://github.com/jedisct1/libsodium.git
- ( cd libsodium; ./autogen.sh; ./configure --prefix=${BUILD_PREFIX}; make check; make install )

# ZMQ stress tests need more open socket (files) than the usual default
# On OSX, it seems the way to set the max files limit is constantly changing, so
# try to use all known knobs to ensure compatibility across various versions
- if [ $TRAVIS_OS_NAME == "osx" ] ; then sudo sysctl -w kern.maxfiles=64000 ; sudo sysctl -w kern.maxfilesperproc=64000 ; sudo launchctl limit maxfiles 64000 64000 ; fi ; ulimit -n 64000

#   Build and check this project
script:
- ./autogen.sh && ./configure --with-libsodium --prefix=${BUILD_PREFIX} && make distcheck

# Deploy tags
before_deploy:
- . ./ci_deploy.sh
deploy:
  provider: releases
  api_key:
    secure: "C+hbVQQL62twHIit4vjExT908acpjQzxPvCgnKKVdEYm58+rXVvQ4HzOlNve7py522m/2iazwnJDX5bPskES5Kof3jqTJ2hZI9rcFXh1KuEjUojiPwix/mUnxFYcxS4PhgmyqG3z5YUsEXnDhwkOwsAVnQIJUFV1XAWMWwDCilI="
  file_glob: true
  file: ${ZEROMQ41_DEPLOYMENT}
  skip_cleanup: true
  on:
    repo: zeromq/zeromq4-1
    branch: master
    tags: true
    condition: "$TRAVIS_OS_NAME =~ (linux)"