Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 1 | #! /bin/sh |
| 2 | #*************************************************************************** |
| 3 | # _ _ ____ _ |
| 4 | # Project ___| | | | _ \| | |
| 5 | # / __| | | | |_) | | |
| 6 | # | (__| |_| | _ <| |___ |
| 7 | # \___|\___/|_| \_\_____| |
| 8 | # |
Elliott Hughes | 0128fe4 | 2018-02-27 14:57:55 -0800 | [diff] [blame] | 9 | # Copyright (C) 2001 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al. |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 10 | # |
| 11 | # This software is licensed as described in the file COPYING, which |
| 12 | # you should have received as part of this distribution. The terms |
Alex Deymo | 8f1a214 | 2016-06-28 14:49:26 -0700 | [diff] [blame] | 13 | # are also available at https://curl.haxx.se/docs/copyright.html. |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 14 | # |
| 15 | # You may opt to use, copy, modify, merge, publish, distribute and/or sell |
| 16 | # copies of the Software, and permit persons to whom the Software is |
| 17 | # furnished to do so, under the terms of the COPYING file. |
| 18 | # |
| 19 | # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY |
| 20 | # KIND, either express or implied. |
| 21 | # |
| 22 | ########################################################################### |
| 23 | |
| 24 | prefix=@prefix@ |
| 25 | exec_prefix=@exec_prefix@ |
| 26 | includedir=@includedir@ |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 27 | cppflag_curl_staticlib=@CPPFLAG_CURL_STATICLIB@ |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 28 | |
| 29 | usage() |
| 30 | { |
| 31 | cat <<EOF |
| 32 | Usage: curl-config [OPTION] |
| 33 | |
| 34 | Available values for OPTION include: |
| 35 | |
| 36 | --built-shared says 'yes' if libcurl was built shared |
| 37 | --ca ca bundle install path |
| 38 | --cc compiler |
| 39 | --cflags pre-processor and compiler flags |
| 40 | --checkfor [version] check for (lib)curl of the specified version |
| 41 | --configure the arguments given to configure when building curl |
| 42 | --features newline separated list of enabled features |
| 43 | --help display this help and exit |
| 44 | --libs library linking information |
| 45 | --prefix curl install prefix |
| 46 | --protocols newline separated list of enabled protocols |
Elliott Hughes | 0128fe4 | 2018-02-27 14:57:55 -0800 | [diff] [blame] | 47 | --ssl-backends output the SSL backends libcurl was built to support |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 48 | --static-libs static libcurl library linking information |
| 49 | --version output version information |
| 50 | --vernum output the version information as a number (hexadecimal) |
| 51 | EOF |
| 52 | |
| 53 | exit $1 |
| 54 | } |
| 55 | |
| 56 | if test $# -eq 0; then |
| 57 | usage 1 |
| 58 | fi |
| 59 | |
| 60 | while test $# -gt 0; do |
| 61 | case "$1" in |
| 62 | # this deals with options in the style |
| 63 | # --option=value and extracts the value part |
| 64 | # [not currently used] |
| 65 | -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;; |
| 66 | *) value= ;; |
| 67 | esac |
| 68 | |
| 69 | case "$1" in |
| 70 | --built-shared) |
| 71 | echo @ENABLE_SHARED@ |
| 72 | ;; |
| 73 | |
| 74 | --ca) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 75 | echo @CURL_CA_BUNDLE@ |
| 76 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 77 | |
| 78 | --cc) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 79 | echo "@CC@" |
| 80 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 81 | |
| 82 | --prefix) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 83 | echo "$prefix" |
| 84 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 85 | |
| 86 | --feature|--features) |
| 87 | for feature in @SUPPORT_FEATURES@ ""; do |
| 88 | test -n "$feature" && echo "$feature" |
| 89 | done |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 90 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 91 | |
| 92 | --protocols) |
| 93 | for protocol in @SUPPORT_PROTOCOLS@; do |
| 94 | echo "$protocol" |
| 95 | done |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 96 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 97 | |
| 98 | --version) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 99 | echo libcurl @CURLVERSION@ |
| 100 | exit 0 |
| 101 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 102 | |
| 103 | --checkfor) |
| 104 | checkfor=$2 |
| 105 | cmajor=`echo $checkfor | cut -d. -f1` |
| 106 | cminor=`echo $checkfor | cut -d. -f2` |
| 107 | # when extracting the patch part we strip off everything after a |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 108 | # dash as that's used for things like version 1.2.3-CVS |
| 109 | cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1` |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 110 | checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc` |
| 111 | numuppercase=`echo @VERSIONNUM@ | tr 'a-f' 'A-F'` |
| 112 | nownum=`echo "obase=10; ibase=16; $numuppercase" | bc` |
| 113 | |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 114 | if test "$nownum" -ge "$checknum"; then |
| 115 | # silent success |
| 116 | exit 0 |
| 117 | else |
| 118 | echo "requested version $checkfor is newer than existing @CURLVERSION@" |
| 119 | exit 1 |
| 120 | fi |
| 121 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 122 | |
| 123 | --vernum) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 124 | echo @VERSIONNUM@ |
| 125 | exit 0 |
| 126 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 127 | |
| 128 | --help) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 129 | usage 0 |
| 130 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 131 | |
| 132 | --cflags) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 133 | if test "X$cppflag_curl_staticlib" = "X-DCURL_STATICLIB"; then |
| 134 | CPPFLAG_CURL_STATICLIB="-DCURL_STATICLIB " |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 135 | else |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 136 | CPPFLAG_CURL_STATICLIB="" |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 137 | fi |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 138 | if test "X@includedir@" = "X/usr/include"; then |
| 139 | echo "$CPPFLAG_CURL_STATICLIB" |
| 140 | else |
| 141 | echo "${CPPFLAG_CURL_STATICLIB}-I@includedir@" |
| 142 | fi |
| 143 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 144 | |
| 145 | --libs) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 146 | if test "X@libdir@" != "X/usr/lib" -a "X@libdir@" != "X/usr/lib64"; then |
| 147 | CURLLIBDIR="-L@libdir@ " |
| 148 | else |
| 149 | CURLLIBDIR="" |
| 150 | fi |
| 151 | if test "X@REQUIRE_LIB_DEPS@" = "Xyes"; then |
| 152 | echo ${CURLLIBDIR}-lcurl @LIBCURL_LIBS@ |
| 153 | else |
| 154 | echo ${CURLLIBDIR}-lcurl |
| 155 | fi |
| 156 | ;; |
Elliott Hughes | 0128fe4 | 2018-02-27 14:57:55 -0800 | [diff] [blame] | 157 | --ssl-backends) |
| 158 | echo "@SSL_BACKENDS@" |
| 159 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 160 | |
| 161 | --static-libs) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 162 | if test "X@ENABLE_STATIC@" != "Xno" ; then |
| 163 | echo @libdir@/libcurl.@libext@ @LDFLAGS@ @LIBCURL_LIBS@ |
| 164 | else |
| 165 | echo "curl was built with static libraries disabled" >&2 |
| 166 | exit 1 |
| 167 | fi |
| 168 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 169 | |
| 170 | --configure) |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 171 | echo @CONFIGURE_OPTIONS@ |
| 172 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 173 | |
| 174 | *) |
| 175 | echo "unknown option: $1" |
Bertrand SIMONNET | e6cd738 | 2015-07-01 15:39:44 -0700 | [diff] [blame] | 176 | usage 1 |
| 177 | ;; |
Lucas Eckels | 9bd90e6 | 2012-08-06 15:07:02 -0700 | [diff] [blame] | 178 | esac |
| 179 | shift |
| 180 | done |
| 181 | |
| 182 | exit 0 |