---
 .travis.yml                    | 85 ++++++++++++++++++++++++++++++++++++++++++
 .travis/build-mbedtls-linux.sh | 10 +++++
 .travis/build-mbedtls-osx.sh   |  9 +++++
 .travis/build-openssl-linux.sh | 12 ++++++
 .travis/build-openssl-osx.sh   | 11 ++++++
 5 files changed, 127 insertions(+)
 create mode 100644 .travis.yml
 create mode 100755 .travis/build-mbedtls-linux.sh
 create mode 100755 .travis/build-mbedtls-osx.sh
 create mode 100755 .travis/build-openssl-linux.sh
 create mode 100755 .travis/build-openssl-osx.sh

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..6f719a1
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,85 @@
+sudo: required
+dist: trusty
+
+os: linux
+
+language: c
+
+compiler:
+  - gcc
+
+env:
+  global:
+    - JOBS=3
+    - MBEDTLS_VERSION=2.2.1
+    - MBEDTLS_PREFIX=~/opt/mbedtls
+    - MBEDTLS_LIBS="-L$MBEDTLS_PREFIX/lib -lmbedtls -lmbedx509 -lmbedcrypto"
+    - MBEDTLS_CFLAGS="-I$MBEDTLS_PREFIX/include"
+    - OPENSSL_VERSION=1.0.1t
+    - OPENSSL_PREFIX=~/opt/openssl
+    - OPENSSL_LIB=$OPENSSL_PREFIX/lib
+    - OPENSSL_INC=$OPENSSL_PREFIX/include
+    - OPENSSL_CFLAGS="-I$OPENSSL_PREFIX/include"
+    - OPENSSL_LIBS="-L$OPENSSL_PREFIX/lib -lssl -lcrypto"
+
+matrix:
+  include:
+    - env: CONFIG="--with-crypto-library=openssl"
+      compiler: gcc
+    - env: CONFIG="--with-crypto-library=openssl"
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=mbedtls"
+      compiler: gcc
+    - env: CONFIG="--with-crypto-library=mbedtls"
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=openssl --disable-crypto"
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=openssl --disable-lzo"
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=openssl --enable-small"
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=openssl"
+      os: osx
+      osx_image: xcode7.3
+      compiler: clang
+    - env: CONFIG="--with-crypto-library=mbedtls"
+      os: osx
+      osx_image: xcode7.3
+      compiler: clang
+  allow_failures:
+    - env: CONFIG="--with-crypto-library=openssl --disable-crypto"
+      compiler: clang
+  exclude:
+    - compiler: gcc
+
+addons:
+  apt:
+    packages:
+      - liblzo2-dev
+      - libpam0g-dev
+      - liblz4-dev
+      - linux-libc-dev
+
+cache:
+  apt: true
+  ccache: true
+  directories:
+  - download-cache
+
+before_install:
+  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update     ; fi
+  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install lzo; fi
+
+install:
+  - mkdir ~/bin && ln -s $(which ccache) ~/bin/$CC && export 
PATH=$HOME/bin:$PATH
+  - if [ ! -d download-cache ]; then mkdir download-cache; fi
+  - if [[ $CONFIG == *"--with-crypto-library=openssl"* ]]; then 
.travis/build-openssl-${TRAVIS_OS_NAME}.sh; fi
+  - if [[ $CONFIG == *"--with-crypto-library=mbedtls"* ]]; then 
.travis/build-mbedtls-${TRAVIS_OS_NAME}.sh; fi
+
+script:
+  - autoreconf -vi
+  - ./configure $CONFIG || (cat config.log && exit 1)
+  - make -j$JOBS
+  - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ldd src/openvpn/openvpn; fi
+  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then otool -L src/openvpn/openvpn; fi
+  - make check
diff --git a/.travis/build-mbedtls-linux.sh b/.travis/build-mbedtls-linux.sh
new file mode 100755
index 0000000..c21f4e6
--- /dev/null
+++ b/.travis/build-mbedtls-linux.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+if [ ! -f download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz ]; then 
+       wget -O download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz 
https://tls.mbed.org/download/mbedtls-${MBEDTLS_VERSION}-apache.tgz; 
+fi
+
+tar zxf download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz
+cd mbedtls-${MBEDTLS_VERSION} && make > build.log 2>&1 || (cat build.log && 
exit 1)
+make install DESTDIR=$MBEDTLS_PREFIX && cd ..
+
diff --git a/.travis/build-mbedtls-osx.sh b/.travis/build-mbedtls-osx.sh
new file mode 100755
index 0000000..e7f07ea
--- /dev/null
+++ b/.travis/build-mbedtls-osx.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+if [ ! -f download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz ]; then 
+       wget -O download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz 
https://tls.mbed.org/download/mbedtls-${MBEDTLS_VERSION}-apache.tgz; 
+fi
+
+tar zxf download-cache/mbedtls-${MBEDTLS_VERSION}-apache.tgz
+cd mbedtls-${MBEDTLS_VERSION} && make > build.log 2>&1 || (cat build.log && 
exit 1)
+make install DESTDIR=$MBEDTLS_PREFIX && cd ..
diff --git a/.travis/build-openssl-linux.sh b/.travis/build-openssl-linux.sh
new file mode 100755
index 0000000..931e2c9
--- /dev/null
+++ b/.travis/build-openssl-linux.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+if [ ! -f download-cache/openssl-${OPENSSL_VERSION}.tar.gz ]; then 
+       wget -O download-cache/openssl-${OPENSSL_VERSION}.tar.gz 
https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz; 
+fi
+
+tar zxf download-cache/openssl-${OPENSSL_VERSION}.tar.gz
+cd openssl-${OPENSSL_VERSION}/
+./config shared --prefix=$OPENSSL_PREFIX -DPURIFY > build.log 2>&1 || (cat 
build.log && exit 1)
+make > build.log 2>&1 || (cat build.log && exit 1)
+make install_sw > build.log 2>&1 || (cat build.log && exit 1)
+cd ..
diff --git a/.travis/build-openssl-osx.sh b/.travis/build-openssl-osx.sh
new file mode 100755
index 0000000..dee207e
--- /dev/null
+++ b/.travis/build-openssl-osx.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+if [ ! -f download-cache/openssl-${OPENSSL_VERSION}.tar.gz ]; then 
+        wget -O download-cache/openssl-${OPENSSL_VERSION}.tar.gz 
https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz; 
+fi
+
+tar zxf download-cache/openssl-${OPENSSL_VERSION}.tar.gz
+cd openssl-${OPENSSL_VERSION}/
+./Configure darwin64-x86_64-cc shared --prefix=$OPENSSL_PREFIX -DPURIFY > 
build.log 2>&1 || (cat build.log && exit 1)
+make depend install > build.log 2>&1 || (cat build.log && exit 1)
+cd ..
-- 
2.5.5


------------------------------------------------------------------------------
_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to