update mbedtls version

update libev build compile configuration(do not build documentation)
by default, compiled mbedtls latest version

Signed-off-by: Teddysun <i@teddysun.com>
This commit is contained in:
Teddysun 2017-07-16 19:02:51 +09:00
parent c10ee1b45d
commit cea0da1416
No known key found for this signature in database
GPG Key ID: 09BD4C080AD6C46D

View File

@ -15,8 +15,8 @@ cur_dir=`pwd`
libsodium_file="libsodium-1.0.12" libsodium_file="libsodium-1.0.12"
libsodium_url="https://github.com/jedisct1/libsodium/releases/download/1.0.12/libsodium-1.0.12.tar.gz" libsodium_url="https://github.com/jedisct1/libsodium/releases/download/1.0.12/libsodium-1.0.12.tar.gz"
mbedtls_file="mbedtls-2.4.2" mbedtls_file="mbedtls-2.5.1"
mbedtls_url="https://tls.mbed.org/download/mbedtls-2.4.2-gpl.tgz" mbedtls_url="https://tls.mbed.org/download/mbedtls-2.5.1-gpl.tgz"
# Make sure only root can run our script # Make sure only root can run our script
rootness(){ rootness(){
@ -247,32 +247,57 @@ pre_install(){
# Update System # Update System
apt-get -y update apt-get -y update
# Install necessary dependencies # Install necessary dependencies
apt-get -y --no-install-recommends install gettext build-essential autoconf automake libtool openssl libssl-dev zlib1g-dev xmlto asciidoc libpcre3-dev libudns-dev libev-dev apt-get -y --no-install-recommends install gettext build-essential autoconf automake libtool openssl libssl-dev zlib1g-dev libpcre3-dev libudns-dev libev-dev
}
download() {
local filename=$(basename $1)
if [ -f ${1} ]; then
echo "${filename} [found]"
else
echo "${filename} not found, download now..."
wget --no-check-certificate -c -t3 -T60 -O ${1} ${2}
if [ $? -ne 0 ]; then
echo "Error: Download ${filename} failed."
exit 1
fi
fi
} }
# Download latest shadowsocks-libev # Download latest shadowsocks-libev
download_files(){ download_files(){
cd ${cur_dir} cd ${cur_dir}
if ! wget --no-check-certificate -O ${shadowsocks_libev_ver}.tar.gz ${download_link}; then download "${shadowsocks_libev_ver}.tar.gz" "${download_link}"
echo "Failed to download ${shadowsocks_libev_ver}.tar.gz" download "${libsodium_file}.tar.gz" "${libsodium_url}"
exit 1 download "${mbedtls_file}-gpl.tgz" "${mbedtls_url}"
fi download "/etc/init.d/shadowsocks" "${init_script_link}"
}
if ! wget --no-check-certificate -O ${libsodium_file}.tar.gz ${libsodium_url}; then install_libsodium() {
echo "Failed to download ${libsodium_file}.tar.gz" if [ ! -f /usr/lib/libsodium.a ]; then
exit 1 cd ${cur_dir}
tar zxf ${libsodium_file}.tar.gz
cd ${libsodium_file}
./configure --prefix=/usr && make && make install
if [ $? -ne 0 ]; then
echo "Error: ${libsodium_file} install failed."
exit 1
fi
else
echo "Info: ${libsodium_file} already installed."
fi fi
}
if ! wget --no-check-certificate -O ${mbedtls_file}-gpl.tgz ${mbedtls_url}; then install_mbedtls() {
echo "Failed to download ${mbedtls_file}-gpl.tgz" if [ ! -f /usr/lib/libmbedtls.a ]; then
exit 1 cd ${cur_dir}
fi tar xf ${mbedtls_file}-gpl.tgz
cd ${mbedtls_file}
# Download init script make SHARED=1 CFLAGS=-fPIC
if ! wget --no-check-certificate -O /etc/init.d/shadowsocks ${init_script_link}; then make DESTDIR=/usr install
echo "Failed to download shadowsocks-libev init script!" else
exit 1 echo "Info: ${mbedtls_file} already installed."
fi fi
} }
@ -301,31 +326,15 @@ EOF
# Install Shadowsocks-libev # Install Shadowsocks-libev
install_shadowsocks(){ install_shadowsocks(){
if [ ! -f /usr/lib/libsodium.a ]; then install_libsodium
cd ${cur_dir} install_mbedtls
tar zxf ${libsodium_file}.tar.gz
cd ${libsodium_file}
./configure --prefix=/usr && make && make install
if [ $? -ne 0 ]; then
echo "${libsodium_file} install failed!"
exit 1
fi
fi
if [ ! -f /usr/lib/libmbedtls.a ]; then
cd ${cur_dir}
tar xf ${mbedtls_file}-gpl.tgz
cd ${mbedtls_file}
make SHARED=1 CFLAGS=-fPIC
make DESTDIR=/usr install
fi
ldconfig ldconfig
cd ${cur_dir} cd ${cur_dir}
tar zxf ${shadowsocks_libev_ver}.tar.gz tar zxf ${shadowsocks_libev_ver}.tar.gz
cd ${shadowsocks_libev_ver} cd ${shadowsocks_libev_ver}
./configure ./configure --disable-documentation
make && make install make && make install
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
chmod +x /etc/init.d/shadowsocks chmod +x /etc/init.d/shadowsocks