#!/bin/sh URL="https://www.unrealircd.org/files/curl-latest.tar.gz" OUTF="curl-latest.tar.gz" OUTD="curl-latest" ARESPATH="`pwd`/extras/c-ares" UNREALDIR="`pwd`" CARESVERSION="1.17.1" LIBDIR="$1" if [ "x$1" = "x" ]; then echo "You should (no longer) run this program directly." echo "It will be invoked by ./Config" exit 1 fi if [ ! -f src/parse.c ]; then if [ -f ../src/parse.c ]; then cd .. else echo "Please run this program from your UnrealIRCd directory" echo "(usually $HOME/unrealircd-5.0.X or something like that)" exit 1 fi fi wget --version 1>/dev/null 2>&1 if [ "$?" = 0 ]; then FETCHER="wget" else fetch --version 1>/dev/null 2>&1 if [ "$?" = 0 ]; then FETCHER="fetch" else lynx --version 1>/dev/null 2>&1 if [ "$?" = 0 ]; then FETCHER="lynx" else echo "ERROR: unable to find wget/fetch/lynx, please install at least one of these programs" exit 1 fi fi fi if [ ! -d tmp ]; then mkdir tmp || exit 1 fi cd tmp || exit 1 rm -f "$OUTF" if [ "$FETCHER" = "wget" ]; then wget -O "$OUTF" "$URL" elif [ "$FETCHER" = "lynx" ]; then lynx -dump "$URL" >"$OUTF" elif [ "$FETCHER" = "fetch" ]; then cd tmp #todo: find out the cmd line parameter ;) fetch "$URL" fi if [ "$?" != 0 ]; then echo "ERROR: Something went wrong while trying to download $URL" exit 1 fi rm -rf "$OUTD" # remove old directory prior to extracting tar xzf "$OUTF" || exit 1 if [ "`eval echo -n 'a'`" = "-n a" ] ; then c="\c" else n="-n" fi if [ ! -d "$ARESPATH/lib" ]; then echo "c-ares has not been build yet, let's do that now..." cd ../extras/ tar xzf c-ares.tar.gz || exit 1 cd c-ares-$CARESVERSION || exit 1 ./configure --prefix=$ARESPATH || exit 1 (make && make install) || exit 1 cd ../../tmp/ echo "c-ares built." echo "" fi # We assume curl has been packaged in a way it will extract to "$OUTD"/ cd "$OUTD" || exit 1 echo "Building and installing libcurl" CPPFLAGS="-I$ARESPATH/include" ./configure --prefix=$UNREALDIR/extras/curl --libdir=$LIBDIR --enable-shared \ --enable-ares=$ARESPATH --with-openssl cp -R $ARESPATH/lib ares make && make install #cp $ARESPATH/lib/libcares.a $HOME/curl/lib # that isn't needed anymore as the lib is already in unreal...