mirror of
https://github.com/bensuperpc/dockcross.git
synced 2024-11-08 20:27:27 +01:00
60 lines
1.5 KiB
Bash
Executable File
60 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -ex
|
|
|
|
MY_DIR=$(dirname "${BASH_SOURCE[0]}")
|
|
source $MY_DIR/utils.sh
|
|
|
|
#
|
|
# Function 'do_curl_build' and 'build_curl'
|
|
# copied from https://github.com/pypa/manylinux/tree/master/docker/build_scripts
|
|
#
|
|
|
|
if [[ -z "${CURL_VERSION}" ]]; then
|
|
echo >&2 'error: CURL_VERSION env. variable must be set to a non-empty value'
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z "${CURL_HASH}" ]]; then
|
|
echo >&2 'error: CURL_HASH env. variable must be set to a non-empty value'
|
|
exit 1
|
|
fi
|
|
|
|
CURL_DOWNLOAD_URL=https://curl.haxx.se/download
|
|
|
|
function do_curl_build {
|
|
# We do this shared to avoid obnoxious linker issues where git couldn't
|
|
# link properly. If anyone wants to make this build statically go for it.
|
|
LIBS=-ldl CFLAGS=-Wl,--exclude-libs,ALL ./configure --with-ssl --disable-static > /dev/null
|
|
make -j"$(nproc)" > /dev/null
|
|
make install > /dev/null
|
|
}
|
|
|
|
|
|
function build_curl {
|
|
local curl_fname=$1
|
|
check_var ${curl_fname}
|
|
local curl_sha256=$2
|
|
check_var ${curl_sha256}
|
|
check_var ${CURL_DOWNLOAD_URL}
|
|
curl --connect-timeout 30 \
|
|
--max-time 10 \
|
|
--retry 5 \
|
|
--retry-delay 10 \
|
|
--retry-max-time 30 \
|
|
-fsSLO ${CURL_DOWNLOAD_URL}/${curl_fname}.tar.gz
|
|
|
|
check_sha256sum ${curl_fname}.tar.gz ${curl_sha256}
|
|
tar -zxf ${curl_fname}.tar.gz
|
|
(cd curl-*/ && do_curl_build)
|
|
rm -rf curl-*
|
|
}
|
|
|
|
cd /usr/src
|
|
build_curl "${CURL_VERSION}" "${CURL_HASH}"
|
|
|
|
(cat /etc/ld.so.conf.d/usr-local.conf 2> /dev/null | grep -q "^/usr/local/lib$") ||
|
|
echo '/usr/local/lib' >> /etc/ld.so.conf.d/usr-local.conf
|
|
ldconfig
|
|
|