From 07d799fa51c0c28f88797e55df3e4c1cdfde2c9d Mon Sep 17 00:00:00 2001 From: Bram Matthys Date: Fri, 18 Nov 2016 11:46:36 +0100 Subject: [PATCH] Multiple build options for Travis CI --- .travis.yml | 5 +++- extras/build-tests/configs/default | 2 +- extras/build-tests/select-config | 37 ++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 2 deletions(-) create mode 100755 extras/build-tests/select-config diff --git a/.travis.yml b/.travis.yml index fc39b45ec..7746053da 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,4 +2,7 @@ language: c compiler: - gcc - clang -script: cp extras/build-tests/configs/default config.settings && ./Config -quick && make +script: extras/build-tests/select-config $BUILDCONFIG && ./Config -quick && make +env: + - BUILDCONFIG="" + - BUILDCONFIG="system-cares" diff --git a/extras/build-tests/configs/default b/extras/build-tests/configs/default index bdcef1d83..34cdef7fd 100644 --- a/extras/build-tests/configs/default +++ b/extras/build-tests/configs/default @@ -24,5 +24,5 @@ NOOPEROVERRIDE="" DISABLEUSERMOD="" OPEROVERRIDEVERIFY="" DISABLEEXTBANSTACKING="" -GENCERTIFICATE="1" +GENCERTIFICATE="0" ADVANCED="" diff --git a/extras/build-tests/select-config b/extras/build-tests/select-config new file mode 100755 index 000000000..f62f0551c --- /dev/null +++ b/extras/build-tests/select-config @@ -0,0 +1,37 @@ +#!/bin/bash +# +# This is a helper script for travis-ci builds +# It is not meant to be used by end-users +# + +if [ ! -d extras ]; then + echo "This tool is supposed to be run from the source root, so ~/unrealircd-4.0.x or similar" + exit 1 +fi + +# Take default settings as a starter.. +cp extras/build-tests/configs/default ./config.settings + +# Libtool is required for the other options.. (or should we have a no libtool test option?) +sudo apt-get install libtool -qq + +echo "*****************************************************************" +echo "SELECTED BUILD OPTIONS: $*" +echo "*****************************************************************" + +while [ "$1" ] +do + echo "Processing option $1..." + if [ "$1" = "system-cares" ]; then + sudo apt-get install libc-ares-dev + elif [ "$1" = "system-curl" ]; then + sudo apt-get install libcurl4-openssl-dev + echo 'REMOTEINC=1' >>config.settings + elif [ "$1" = "local-curl" ]; then + echo 'REMOTEINC=1' >>config.settings + else + echo "Unknown option $1" + exit 1 + fi + shift +done