blob: 93987224168c326e41270e7970e32a9aca739af0 [file] [log] [blame]
Lucas Eckels9bd90e62012-08-06 15:07:02 -07001#! /bin/sh
2#***************************************************************************
3# _ _ ____ _
4# Project ___| | | | _ \| |
5# / __| | | | |_) | |
6# | (__| |_| | _ <| |___
7# \___|\___/|_| \_\_____|
8#
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -07009# Copyright (C) 2001 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
Lucas Eckels9bd90e62012-08-06 15:07:02 -070010#
11# This software is licensed as described in the file COPYING, which
12# you should have received as part of this distribution. The terms
13# are also available at http://curl.haxx.se/docs/copyright.html.
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
24prefix=@prefix@
25exec_prefix=@exec_prefix@
26includedir=@includedir@
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070027cppflag_curl_staticlib=@CPPFLAG_CURL_STATICLIB@
Lucas Eckels9bd90e62012-08-06 15:07:02 -070028
29usage()
30{
31 cat <<EOF
32Usage: curl-config [OPTION]
33
34Available 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
47 --static-libs static libcurl library linking information
48 --version output version information
49 --vernum output the version information as a number (hexadecimal)
50EOF
51
52 exit $1
53}
54
55if test $# -eq 0; then
56 usage 1
57fi
58
59while test $# -gt 0; do
60 case "$1" in
61 # this deals with options in the style
62 # --option=value and extracts the value part
63 # [not currently used]
64 -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
65 *) value= ;;
66 esac
67
68 case "$1" in
69 --built-shared)
70 echo @ENABLE_SHARED@
71 ;;
72
73 --ca)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070074 echo @CURL_CA_BUNDLE@
75 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -070076
77 --cc)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070078 echo "@CC@"
79 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -070080
81 --prefix)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070082 echo "$prefix"
83 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -070084
85 --feature|--features)
86 for feature in @SUPPORT_FEATURES@ ""; do
87 test -n "$feature" && echo "$feature"
88 done
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070089 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -070090
91 --protocols)
92 for protocol in @SUPPORT_PROTOCOLS@; do
93 echo "$protocol"
94 done
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070095 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -070096
97 --version)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -070098 echo libcurl @CURLVERSION@
99 exit 0
100 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700101
102 --checkfor)
103 checkfor=$2
104 cmajor=`echo $checkfor | cut -d. -f1`
105 cminor=`echo $checkfor | cut -d. -f2`
106 # when extracting the patch part we strip off everything after a
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700107 # dash as that's used for things like version 1.2.3-CVS
108 cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700109 checknum=`echo "$cmajor*256*256 + $cminor*256 + ${cpatch:-0}" | bc`
110 numuppercase=`echo @VERSIONNUM@ | tr 'a-f' 'A-F'`
111 nownum=`echo "obase=10; ibase=16; $numuppercase" | bc`
112
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700113 if test "$nownum" -ge "$checknum"; then
114 # silent success
115 exit 0
116 else
117 echo "requested version $checkfor is newer than existing @CURLVERSION@"
118 exit 1
119 fi
120 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700121
122 --vernum)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700123 echo @VERSIONNUM@
124 exit 0
125 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700126
127 --help)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700128 usage 0
129 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700130
131 --cflags)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700132 if test "X$cppflag_curl_staticlib" = "X-DCURL_STATICLIB"; then
133 CPPFLAG_CURL_STATICLIB="-DCURL_STATICLIB "
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700134 else
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700135 CPPFLAG_CURL_STATICLIB=""
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700136 fi
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700137 if test "X@includedir@" = "X/usr/include"; then
138 echo "$CPPFLAG_CURL_STATICLIB"
139 else
140 echo "${CPPFLAG_CURL_STATICLIB}-I@includedir@"
141 fi
142 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700143
144 --libs)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700145 if test "X@libdir@" != "X/usr/lib" -a "X@libdir@" != "X/usr/lib64"; then
146 CURLLIBDIR="-L@libdir@ "
147 else
148 CURLLIBDIR=""
149 fi
150 if test "X@REQUIRE_LIB_DEPS@" = "Xyes"; then
151 echo ${CURLLIBDIR}-lcurl @LIBCURL_LIBS@
152 else
153 echo ${CURLLIBDIR}-lcurl
154 fi
155 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700156
157 --static-libs)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700158 if test "X@ENABLE_STATIC@" != "Xno" ; then
159 echo @libdir@/libcurl.@libext@ @LDFLAGS@ @LIBCURL_LIBS@
160 else
161 echo "curl was built with static libraries disabled" >&2
162 exit 1
163 fi
164 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700165
166 --configure)
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700167 echo @CONFIGURE_OPTIONS@
168 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700169
170 *)
171 echo "unknown option: $1"
Bertrand SIMONNETe6cd7382015-07-01 15:39:44 -0700172 usage 1
173 ;;
Lucas Eckels9bd90e62012-08-06 15:07:02 -0700174 esac
175 shift
176done
177
178exit 0