hackedteam/core-linux

View on GitHub
core/multilib/i386/usr/bin/curl-config

Summary

Maintainability
Test Coverage
#! /bin/sh
#***************************************************************************
#                                  _   _ ____  _
#  Project                     ___| | | |  _ \| |
#                             / __| | | | |_) | |
#                            | (__| |_| |  _ <| |___
#                             \___|\___/|_| \_\_____|
#
# Copyright (C) 2001 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
#
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at http://curl.haxx.se/docs/copyright.html.
#
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
# copies of the Software, and permit persons to whom the Software is
# furnished to do so, under the terms of the COPYING file.
#
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
# KIND, either express or implied.
#
###########################################################################

prefix=/usr
exec_prefix=${prefix}
includedir=${prefix}/include

usage()
{
    cat <<EOF
Usage: curl-config [OPTION]

Available values for OPTION include:

  --built-shared says 'yes' if libcurl was built shared
  --ca        ca bundle install path
  --cc        compiler
  --cflags    pre-processor and compiler flags
  --checkfor [version] check for (lib)curl of the specified version
  --configure the arguments given to configure when building curl
  --features  newline separated list of enabled features
  --help      display this help and exit
  --libs      library linking information
  --prefix    curl install prefix
  --protocols newline separated list of enabled protocols
  --static-libs static libcurl library linking information
  --version   output version information
  --vernum    output the version information as a number (hexadecimal)
EOF

    exit $1
}

if test $# -eq 0; then
    usage 1
fi

while test $# -gt 0; do
    case "$1" in
    # this deals with options in the style
    # --option=value and extracts the value part
    # [not currently used]
    -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
    *) value= ;;
    esac

    case "$1" in
    --built-shared)
        echo yes
        ;;

    --ca)
    echo ""
    ;;

    --cc)
    echo "gcc"
    ;;

    --prefix)
    echo "$prefix"
    ;;

    --feature|--features)
        for feature in SSL IPv6 libz IDN NTLM NTLM_WB TLS-SRP ""; do
            test -n "$feature" && echo "$feature"
        done
    ;;

    --protocols)
        for protocol in DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP POP3 POP3S RTMP RTSP SMTP SMTPS TELNET TFTP; do
            echo "$protocol"
        done
    ;;

    --version)
    echo libcurl 7.22.0
    exit 0
    ;;

    --checkfor)
        checkfor=$2
        cmajor=`echo $checkfor | cut -d. -f1`
        cminor=`echo $checkfor | cut -d. -f2`
        # when extracting the patch part we strip off everything after a
    # dash as that's used for things like version 1.2.3-CVS
    cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
        checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc`
        numuppercase=`echo 071600 | tr 'a-f' 'A-F'`
        nownum=`echo "obase=10; ibase=16; $numuppercase" | bc`

    if test "$nownum" -ge "$checknum"; then
      # silent success
      exit 0
    else
      echo "requested version $checkfor is newer than existing 7.22.0"
      exit 1
    fi
    ;;

    --vernum)
    echo 071600
    exit 0
    ;;

    --help)
    usage 0
    ;;

    --cflags)
           if test "X${prefix}/include" = "X/usr/include"; then
          echo ""
        else
          echo "-I${prefix}/include"
        fi
           ;;

    --libs)
    if test "X${prefix}/lib/i386-linux-gnu" != "X/usr/lib" -a "X${prefix}/lib/i386-linux-gnu" != "X/usr/lib64"; then
       CURLLIBDIR="-L${prefix}/lib/i386-linux-gnu "
    else
       CURLLIBDIR=""
    fi
    if test "Xno" = "Xyes"; then
      echo ${CURLLIBDIR}-lcurl -Wl,-Bsymbolic-functions -Wl,-z,relro -lidn -lssl -lcrypto -llber -lldap -lrt -lgssapi_krb5 -lssl -lcrypto -lz -lrtmp -lz -lgnutls 
    else
      echo ${CURLLIBDIR}-lcurl -Wl,-Bsymbolic-functions -Wl,-z,relro 
    fi
    ;;

    --static-libs)
    echo ${prefix}/lib/i386-linux-gnu/libcurl.a -Wl,-Bsymbolic-functions -Wl,-z,relro -lidn -lssl -lcrypto -llber -lldap -lrt -lgssapi_krb5 -lssl -lcrypto -lz -lrtmp -lz -lgnutls 
    ;;

    --configure)
      echo " '--build' 'i686-linux-gnu' '--prefix=/usr' '--mandir=/usr/share/man' '--disable-dependency-tracking' '--enable-ipv6' '--enable-manual' '--enable-versioned-symbols' '--libdir=${prefix}/lib/i386-linux-gnu' '--with-lber-lib=lber' '--with-gssapi=/usr' '--with-librtmp' '--with-ca-path=/etc/ssl/certs' 'build_alias=i686-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'"
    ;;

    *)
        echo "unknown option: $1"
    usage 1
    ;;
    esac
    shift
done

exit 0