libtpms/.travis.yml
Stefan Berger 4e1cd261ef build-sys: Add support for --disable-use-openssl-functions
OpenSSL's crypto library does not support all crypto functionality
we need in all versions. Elliptic curve support via EVP seems to
have been added much later than for example symmetric crypto support.
So, we move the USE_OPENSSL_FUNCTIONS out of Implementation.h
into configure.ac and let the build system detect what functionality
is available in the crypto library. In this patch we now also rename
USE_OPENSSL_FUNCTIONS to USE_OPENSSL_FUNCTIONS_SYMMETRIC to indicate
that we can use the symmetric crypto functions of the crypto lib.

Using the OpenSSL crypto support is enabled by default, so one has
to use --disable-use-openssl-functions, which we do for Travis now.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
2019-05-30 16:25:15 -04:00

83 lines
3.5 KiB
YAML

language: c
dist: trusty
env:
global:
secure: THraWTkpyL+b3lcnLenhXR6sxphcJS23MoUP36PT9VYhgZRI2YjO1w2h4V0uwzovbGJDU4Tc88Yxn8kL4RSgwy9cIcJcTOAorbePVRd+UFVU0nUjhwYLCKYBTLVLo7lYc0FHTgsdsba65X6keuSlAdegzCRbTvcwNqX9nanSRGI1CvYcwx22Iu5eOdJvMjwIuFOuECs7hVFrGS2rvGoyzqGNMT4A8shXOBZM/pwklRFS1oS/L1g45y3OP27yqINjtfC7wXRGsR8ItH7LAaQ+yCzNg3QzSd/3H3niEC5grcEMS23YugFUkGpqSca8SGJmkK2LFaBctpZS1P75lA/47Bxbh/byu85TUE6wZ+VPm520NkiYtBB+oxIbq1mYv+hhKuxPf5OqzdwLXVO7EAfzO57VkUqQfumWIZqV0WqCU3SdpRk+CUCCURR4P0ww+w6hQx6PzK21+d9tLtqMqdRwuricdyeLvxboWQXXl36fPf4ifmi0AZ6ILaV/LUQu24Di56RG4hO+/Pv/Qqxa8rJLpqJa0PtsYIiBNeVYLH/ZYIlS8saBedMIJ9dqh1dvBw/Jql8EZCOWif6UjYzQFgZAOZQqH9VAp1WVwQxQRo+Sq7dy+MtRKT2GEcNrdfYcL6qucBAQY00vQQBfl+FOnEzIAUImt4tbitnYTxmNx8N+QZU=
addons:
apt:
packages:
- automake
- autoconf
- libtool
- libssl-dev
- sed
- make
- gawk
- sed
- bash
- dh-exec
- libseccomp-dev
coverity_scan:
project:
name: libtpms
description: Build submitted via Travis CI
notification_email: stefanb@linux.vnet.ibm.com
build_command_prepend: "./autogen.sh --with-openssl --with-tpm2; make clean"
build_command: make -j$(nproc)
branch_pattern: coverity_scan
script:
- ./autogen.sh ${CONFIG}
- make -j$(${NPROC}) ${TARGET}
after_failure:
- for f in tests/*.log; do echo ">>>>>>> $f <<<<<<<"; tail -n 50 $f; done
before_install:
- test $TRAVIS_BRANCH != coverity_scan -o ${TRAVIS_JOB_NUMBER##*.} = 1 || exit 0
matrix:
include:
- env: CONFIG="--with-openssl --prefix=/usr --with-tpm2" "TARGET=distcheck"
NPROC="nproc"
- env: CONFIG="--with-openssl --prefix=/usr --with-tpm2 --enable-test-coverage"
TARGET="install" NPROC="nproc"
dist: xenial
before_script:
- sudo pip install cpp-coveralls
script:
./autogen.sh ${CONFIG} &&
sudo make -j$(nproc) ${TARGET} &&
sudo make -j$(nproc) check &&
git clone https://github.com/stefanberger/swtpm.git &&
pushd swtpm &&
sudo apt -y install devscripts equivs python-twisted libfuse-dev
libglib2.0-dev libgmp-dev expect libtasn1-dev socat findutils
tpm-tools gnutls-dev gnutls-bin &&
./autogen.sh --with-gnutls --prefix=/usr &&
export SWTPM_TEST_EXPENSIVE=1 &&
sudo make -j$(nproc) check &&
popd
after_success:
uidgid="$(id -nu):$(id -ng)" &&
sudo chown -R ${uidgid} ./ &&
cpp-coveralls -b src -e tests -e swtpm --gcov-options '\-lp'
- env: CONFIG="--with-openssl --prefix=/usr --with-tpm2 --enable-test-coverage --disable-use-openssl-functions"
TARGET="install" NPROC="nproc"
dist: xenial
script:
./autogen.sh ${CONFIG} &&
sudo make -j$(nproc) ${TARGET} &&
sudo make -j$(nproc) check &&
git clone https://github.com/stefanberger/swtpm.git &&
pushd swtpm &&
sudo apt -y install devscripts equivs python-twisted libfuse-dev
libglib2.0-dev libgmp-dev expect libtasn1-dev socat findutils
tpm-tools gnutls-dev gnutls-bin &&
./autogen.sh --with-gnutls --prefix=/usr &&
export SWTPM_TEST_EXPENSIVE=1 &&
sudo make -j$(nproc) check &&
popd
- env: CONFIG="--with-openssl --prefix=/usr --with-tpm2" "TARGET=check"
NPROC="sysctl -n hw.ncpu" CFLAGS="-I/usr/local/opt/openssl/include"
LDFLAGS="-L/usr/local/opt/openssl/lib"
# 'distcheck' results in duplicate symbol errors
os: osx
compiler: clang