aria2-static-builds/build-scripts/gnu-linux-config/aria2-i386-gnu-linux-cross-build-libs

100 lines
3.1 KiB
Bash
Executable File

#!/bin/bash
# In this configuration, the following dependent libraries are compiled:
#
# * zlib
# * c-ares
# * expat
# * sqlite3
# * openSSL
# * libssh2
#IMPORTANT: Require install gcc-multilib g++-multilib libc6-dev-i386
#COMPILER AND PATH
PREFIX=/opt/aria2-i386/build_libs
C_COMPILER="gcc"
CXX_COMPILER="g++"
## DEPENDENCES ##
ZLIB=http://sourceforge.net/projects/libpng/files/zlib/1.2.8/zlib-1.2.8.tar.gz
OPENSSL=http://www.openssl.org/source/openssl-1.0.2g.tar.gz
EXPAT=https://sourceforge.net/projects/expat/files/expat/2.1.1/expat-2.1.1.tar.bz2
SQLITE3=http://www.sqlite.org/2016/sqlite-autoconf-3120200.tar.gz
C_ARES=http://c-ares.haxx.se/download/c-ares-1.11.0.tar.gz
SSH2=https://www.libssh2.org/download/libssh2-1.7.0.tar.gz
## CONFIG ##
BUILD_DIRECTORY=/tmp/
## BUILD ##
cd $BUILD_DIRECTORY
export CFLAGS="-m32"
export CXXFLAGS="-m32"
export LDFLAGS="-m32"
#
# zlib build
wget -c $ZLIB
tar zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8/
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./configure --prefix=$PREFIX --static
make
make install
#
# expat build
cd ..
wget -c $EXPAT
tar jxvf expat-2.1.1.tar.bz2
cd expat-2.1.1/
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./configure --prefix=$PREFIX --enable-static --enable-shared
make
make install
#
# c-ares build
cd ..
wget -c $C_ARES
tar zxvf c-ares-1.11.0.tar.gz
cd c-ares-1.11.0/
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./configure --prefix=$PREFIX --enable-static --disable-shared
make
make install
#
# Openssl build
cd ..
wget -c $OPENSSL
tar zxvf openssl-1.0.2g.tar.gz
cd openssl-1.0.2g/
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./Configure --prefix=$PREFIX linux-elf shared
make
make install
#
# sqlite3
cd ..
wget -c $SQLITE3
tar zxvf sqlite-autoconf-3120200.tar.gz
cd sqlite-autoconf-3120200/
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./configure --prefix=$PREFIX --enable-static --enable-shared
make
make install
#
# libssh2
cd ..
wget -c $SSH2
tar zxvf libssh2-1.7.0.tar.gz
cd libssh2-1.7.0/
rm -rf $PREFIX/lib/pkgconfig/libssh2.pc
CFLAGS="-m32" CXXFLAGS="-m32" LDFLAGS="-m32" PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/ LD_LIBRARY_PATH=$PREFIX/lib/ CC="$C_COMPILER -m32" CXX="$CXX_COMPILER -m32" ./configure --without-libgcrypt --with-openssl --without-wincng --prefix=$PREFIX --enable-static --disable-shared
make
make install
#
#cleaning
cd ..
rm -rf c-ares*
rm -rf sqlite-autoconf*
rm -rf zlib-*
rm -rf expat-*
rm -rf openssl-*
rm -rf libssh2-*
#
echo "finished!"