summaryrefslogtreecommitdiff
path: root/openssl/test/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/test/build.sh')
-rwxr-xr-xopenssl/test/build.sh35
1 files changed, 25 insertions, 10 deletions
diff --git a/openssl/test/build.sh b/openssl/test/build.sh
index 2c38f3a3..106a38d3 100755
--- a/openssl/test/build.sh
+++ b/openssl/test/build.sh
@@ -1,33 +1,48 @@
#!/bin/bash
-set -e
+
+set -ex
MAX_REDIRECTS=5
-OPENSSL=openssl-1.0.2h.tar.gz
+OPENSSL=openssl-$BUILD_OPENSSL_VERSION.tar.gz
OUT=/tmp/$OPENSSL
-SHA1="577585f5f5d299c44dd3c993d3c0ac7a219e4949"
+
+me=$0
+myname=`basename $me`
+
+cmp --silent $me $HOME/openssl/$myname && exit 0 || echo "cache is busted"
+
+rm -rf $HOME/openssl
if [ "$TRAVIS_OS_NAME" == "osx" ]; then
exit 0
fi
-if [ "$TARGET" == "arm-unknown-linux-gnueabihf" ]; then
- export C_INCLUDE_PATH=/usr/arm-linux-gnueabihf/include
- CROSS=arm-linux-gnueabihf-
+if [ "$BUILD_OPENSSL_VERSION" == "" ]; then
+ exit 0
+fi
+
+if [ "$TARGET" == "i686-unknown-linux-gnu" ]; then
+ OS_COMPILER=linux-elf
+ OS_FLAGS=-m32
+elif [ "$TARGET" == "arm-unknown-linux-gnueabihf" ]; then
OS_COMPILER=linux-armv4
+ export AR=arm-linux-gnueabihf-ar
+ export CC=arm-linux-gnueabihf-gcc
else
OS_COMPILER=linux-x86_64
fi
mkdir -p /tmp/openssl
+cp $me /tmp/openssl/$myname
cd /tmp/openssl
curl -o $OUT -L --max-redirs $MAX_REDIRECTS https://openssl.org/source/$OPENSSL \
|| curl -o $OUT -L --max-redirs ${MAX_REDIRECTS} http://mirrors.ibiblio.org/openssl/source/$OPENSSL
-echo "$SHA1 $OUT" | sha1sum -c -
-
tar --strip-components=1 -xzf $OUT
-./Configure --prefix=$HOME/openssl shared --cross-compile-prefix=$CROSS $OS_COMPILER
-make
+./Configure --prefix=$HOME/openssl $OS_COMPILER -fPIC $OS_FLAGS
+
+make -j$(nproc)
make install
+cp $myname $HOME/openssl/$myname