#!/usr/bin/sh
#***************************************************************************
#                                  _   _ ____  _
#  Project                     ___| | | |  _ \| |
#                             / __| | | | |_) | |
#                            | (__| |_| |  _ <| |___
#                             \___|\___/|_| \_\_____|
#
# Copyright (C) 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 https://curl.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.
#
# SPDX-License-Identifier: curl
#
###########################################################################

# shellcheck disable=SC2006

prefix="/usr/i686-w64-mingw32/sys-root/mingw"
# Used in /usr/i686-w64-mingw32/sys-root/mingw/lib
# shellcheck disable=SC2034
exec_prefix=/usr/i686-w64-mingw32/sys-root/mingw
# shellcheck disable=SC2034
includedir=/usr/i686-w64-mingw32/sys-root/mingw/include
cppflag_curl_staticlib=-DCURL_STATICLIB

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              preprocessor 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
  --ssl-backends        output the SSL backends libcurl was built to support
  --static-libs         static libcurl library linking information
  --version             output version information
  --vernum              output version as a hexadecimal number
EOF

  exit "$1"
}

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

while test "$#" -gt 0; do
  case "$1" in
  --built-shared)
    echo 'no'
    ;;

  --ca)
    echo '"/usr/i686-w64-mingw32/sys-root/mingw/etc/pki/tls/certs/ca-bundle.crt"'
    ;;

  --cc)
    echo 'i686-w64-mingw32-gcc'
    ;;

  --prefix)
    echo "$prefix"
    ;;

  --feature|--features)
    for feature in alt-svc AsynchDNS HSTS HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM SPNEGO SSL SSPI threadsafe TLS-SRP UnixSockets ""; do
      test -n "$feature" && echo "$feature"
    done
    ;;

  --protocols)
    # shellcheck disable=SC2043
    for protocol in DICT FILE FTP FTPS GOPHER GOPHERS HTTP HTTPS IMAP IMAPS IPFS IPNS LDAP LDAPS MQTT POP3 POP3S RTSP SCP SFTP SMB SMBS SMTP SMTPS TELNET TFTP; do
      echo "$protocol"
    done
    ;;

  --version)
    echo 'libcurl 8.9.1'
    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-pre1
    cpatch=`echo "$checkfor" | cut -d. -f3 | cut -d- -f1`

    vmajor=`echo '8.9.1' | cut -d. -f1`
    vminor=`echo '8.9.1' | 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-pre1
    vpatch=`echo '8.9.1' | cut -d. -f3 | cut -d- -f1`

    if test "$vmajor" -gt "$cmajor"; then
      exit 0
    fi
    if test "$vmajor" -eq "$cmajor"; then
      if test "$vminor" -gt "$cminor"; then
        exit 0
      fi
      if test "$vminor" -eq "$cminor"; then
        if test "$cpatch" -le "$vpatch"; then
          exit 0
        fi
      fi
    fi

    echo "requested version $checkfor is newer than existing 8.9.1"
    exit 1
    ;;

  --vernum)
    echo '080901'
    exit 0
    ;;

  --help)
    usage 0
    ;;

  --cflags)
    if test "X$cppflag_curl_staticlib" = "X-DCURL_STATICLIB"; then
      CPPFLAG_CURL_STATICLIB="-DCURL_STATICLIB "
    else
      CPPFLAG_CURL_STATICLIB=""
    fi
    if test "X/usr/i686-w64-mingw32/sys-root/mingw/include" = "X/usr/include"; then
      echo "${CPPFLAG_CURL_STATICLIB}"
    else
      echo "${CPPFLAG_CURL_STATICLIB}-I/usr/i686-w64-mingw32/sys-root/mingw/include"
    fi
    ;;

  --libs)
    if test "X/usr/i686-w64-mingw32/sys-root/mingw/lib" != "X/usr/lib" -a "X/usr/i686-w64-mingw32/sys-root/mingw/lib" != "X/usr/lib64"; then
      CURLLIBDIR="-L/usr/i686-w64-mingw32/sys-root/mingw/lib "
    else
      CURLLIBDIR=""
    fi
    if test "Xno" = "Xno"; then
      echo "${CURLLIBDIR}-lcurl -lidn2 -lssh2 -lssh2 -lws2_32 -lbcrypt -ladvapi32 -lcrypt32 -lssl -lcrypto -lssl -lcrypto -lgdi32 -lwldap32 -lz -lws2_32"
    else
      echo "${CURLLIBDIR}-lcurl"
    fi
    ;;

  --ssl-backends)
    echo 'OpenSSL v3+'
    ;;

  --static-libs)
    if test "Xyes" != "Xno" ; then
      echo "/usr/i686-w64-mingw32/sys-root/mingw/lib/libcurl.a" -fstack-protector -lssp -lidn2 -lssh2 -lssh2 -lws2_32 -lbcrypt -ladvapi32 -lcrypt32 -lssl -lcrypto -lssl -lcrypto -lgdi32 -lwldap32 -lz -lws2_32
    else
      echo 'curl was built with static libraries disabled' >&2
      exit 1
    fi
    ;;

  --configure)
    echo " '--host=i686-w64-mingw32' '--build=s390x-redhat-linux-gnu' '--target=i686-w64-mingw32' '--prefix=/usr/i686-w64-mingw32/sys-root/mingw' '--exec-prefix=/usr/i686-w64-mingw32/sys-root/mingw' '--bindir=/usr/i686-w64-mingw32/sys-root/mingw/bin' '--sbindir=/usr/i686-w64-mingw32/sys-root/mingw/sbin' '--sysconfdir=/usr/i686-w64-mingw32/sys-root/mingw/etc' '--datadir=/usr/i686-w64-mingw32/sys-root/mingw/share' '--includedir=/usr/i686-w64-mingw32/sys-root/mingw/include' '--libdir=/usr/i686-w64-mingw32/sys-root/mingw/lib' '--libexecdir=/usr/i686-w64-mingw32/sys-root/mingw/libexec' '--localstatedir=/usr/i686-w64-mingw32/sys-root/mingw/var' '--sharedstatedir=/usr/i686-w64-mingw32/sys-root/mingw/com' '--mandir=/usr/i686-w64-mingw32/sys-root/mingw/share/man' '--infodir=/usr/i686-w64-mingw32/sys-root/mingw/share/info' '--with-ssl' '--enable-ipv6' '--enable-threaded-resolver' '--enable-sspi' '--with-libidn2' '--with-libssh2' '--without-random' '--with-ca-bundle=/usr/i686-w64-mingw32/sys-root/mingw/etc/pki/tls/certs/ca-bundle.crt' '--enable-static' '--disable-shared' 'build_alias=s390x-redhat-linux-gnu' 'host_alias=i686-w64-mingw32' 'target_alias=i686-w64-mingw32' 'CC=i686-w64-mingw32-gcc' 'CFLAGS= -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4' 'LDFLAGS=-fstack-protector -lssp' 'CPPFLAGS=' 'CPP=/usr/bin/i686-w64-mingw32-cpp' 'LT_SYS_LIBRARY_PATH=/usr/lib:'"
    ;;

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

exit 0
