xref: /aosp_15_r20/external/google-breakpad/src/third_party/curl/curlbuild.h (revision 9712c20fc9bbfbac4935993a2ca0b3958c5adad2)
1*9712c20fSFrederick Mayle /* include/curl/curlbuild.h.  Generated from curlbuild.h.in by configure.  */
2*9712c20fSFrederick Mayle #ifndef __CURL_CURLBUILD_H
3*9712c20fSFrederick Mayle #define __CURL_CURLBUILD_H
4*9712c20fSFrederick Mayle /***************************************************************************
5*9712c20fSFrederick Mayle  *                                  _   _ ____  _
6*9712c20fSFrederick Mayle  *  Project                     ___| | | |  _ \| |
7*9712c20fSFrederick Mayle  *                             / __| | | | |_) | |
8*9712c20fSFrederick Mayle  *                            | (__| |_| |  _ <| |___
9*9712c20fSFrederick Mayle  *                             \___|\___/|_| \_\_____|
10*9712c20fSFrederick Mayle  *
11*9712c20fSFrederick Mayle  * Copyright (C) 1998 - 2009, Daniel Stenberg, <[email protected]>, et al.
12*9712c20fSFrederick Mayle  *
13*9712c20fSFrederick Mayle  * This software is licensed as described in the file COPYING, which
14*9712c20fSFrederick Mayle  * you should have received as part of this distribution. The terms
15*9712c20fSFrederick Mayle  * are also available at http://curl.haxx.se/docs/copyright.html.
16*9712c20fSFrederick Mayle  *
17*9712c20fSFrederick Mayle  * You may opt to use, copy, modify, merge, publish, distribute and/or sell
18*9712c20fSFrederick Mayle  * copies of the Software, and permit persons to whom the Software is
19*9712c20fSFrederick Mayle  * furnished to do so, under the terms of the COPYING file.
20*9712c20fSFrederick Mayle  *
21*9712c20fSFrederick Mayle  * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
22*9712c20fSFrederick Mayle  * KIND, either express or implied.
23*9712c20fSFrederick Mayle  *
24*9712c20fSFrederick Mayle  * $Id: curlbuild.h.in,v 1.8 2009-04-29 15:15:38 yangtse Exp $
25*9712c20fSFrederick Mayle  ***************************************************************************/
26*9712c20fSFrederick Mayle 
27*9712c20fSFrederick Mayle /* ================================================================ */
28*9712c20fSFrederick Mayle /*               NOTES FOR CONFIGURE CAPABLE SYSTEMS                */
29*9712c20fSFrederick Mayle /* ================================================================ */
30*9712c20fSFrederick Mayle 
31*9712c20fSFrederick Mayle /*
32*9712c20fSFrederick Mayle  * NOTE 1:
33*9712c20fSFrederick Mayle  * -------
34*9712c20fSFrederick Mayle  *
35*9712c20fSFrederick Mayle  * Nothing in this file is intended to be modified or adjusted by the
36*9712c20fSFrederick Mayle  * curl library user nor by the curl library builder.
37*9712c20fSFrederick Mayle  *
38*9712c20fSFrederick Mayle  * If you think that something actually needs to be changed, adjusted
39*9712c20fSFrederick Mayle  * or fixed in this file, then, report it on the libcurl development
40*9712c20fSFrederick Mayle  * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/
41*9712c20fSFrederick Mayle  *
42*9712c20fSFrederick Mayle  * This header file shall only export symbols which are 'curl' or 'CURL'
43*9712c20fSFrederick Mayle  * prefixed, otherwise public name space would be polluted.
44*9712c20fSFrederick Mayle  *
45*9712c20fSFrederick Mayle  * NOTE 2:
46*9712c20fSFrederick Mayle  * -------
47*9712c20fSFrederick Mayle  *
48*9712c20fSFrederick Mayle  * Right now you might be staring at file include/curl/curlbuild.h.in or
49*9712c20fSFrederick Mayle  * at file include/curl/curlbuild.h, this is due to the following reason:
50*9712c20fSFrederick Mayle  *
51*9712c20fSFrederick Mayle  * On systems capable of running the configure script, the configure process
52*9712c20fSFrederick Mayle  * will overwrite the distributed include/curl/curlbuild.h file with one that
53*9712c20fSFrederick Mayle  * is suitable and specific to the library being configured and built, which
54*9712c20fSFrederick Mayle  * is generated from the include/curl/curlbuild.h.in template file.
55*9712c20fSFrederick Mayle  *
56*9712c20fSFrederick Mayle  */
57*9712c20fSFrederick Mayle 
58*9712c20fSFrederick Mayle /* ================================================================ */
59*9712c20fSFrederick Mayle /*  DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE  */
60*9712c20fSFrederick Mayle /* ================================================================ */
61*9712c20fSFrederick Mayle 
62*9712c20fSFrederick Mayle #ifdef CURL_SIZEOF_LONG
63*9712c20fSFrederick Mayle #  error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h"
64*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined
65*9712c20fSFrederick Mayle #endif
66*9712c20fSFrederick Mayle 
67*9712c20fSFrederick Mayle #ifdef CURL_TYPEOF_CURL_SOCKLEN_T
68*9712c20fSFrederick Mayle #  error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
69*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined
70*9712c20fSFrederick Mayle #endif
71*9712c20fSFrederick Mayle 
72*9712c20fSFrederick Mayle #ifdef CURL_SIZEOF_CURL_SOCKLEN_T
73*9712c20fSFrederick Mayle #  error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h"
74*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined
75*9712c20fSFrederick Mayle #endif
76*9712c20fSFrederick Mayle 
77*9712c20fSFrederick Mayle #ifdef CURL_TYPEOF_CURL_OFF_T
78*9712c20fSFrederick Mayle #  error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
79*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined
80*9712c20fSFrederick Mayle #endif
81*9712c20fSFrederick Mayle 
82*9712c20fSFrederick Mayle #ifdef CURL_FORMAT_CURL_OFF_T
83*9712c20fSFrederick Mayle #  error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h"
84*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined
85*9712c20fSFrederick Mayle #endif
86*9712c20fSFrederick Mayle 
87*9712c20fSFrederick Mayle #ifdef CURL_FORMAT_CURL_OFF_TU
88*9712c20fSFrederick Mayle #  error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h"
89*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined
90*9712c20fSFrederick Mayle #endif
91*9712c20fSFrederick Mayle 
92*9712c20fSFrederick Mayle #ifdef CURL_FORMAT_OFF_T
93*9712c20fSFrederick Mayle #  error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h"
94*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined
95*9712c20fSFrederick Mayle #endif
96*9712c20fSFrederick Mayle 
97*9712c20fSFrederick Mayle #ifdef CURL_SIZEOF_CURL_OFF_T
98*9712c20fSFrederick Mayle #  error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h"
99*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined
100*9712c20fSFrederick Mayle #endif
101*9712c20fSFrederick Mayle 
102*9712c20fSFrederick Mayle #ifdef CURL_SUFFIX_CURL_OFF_T
103*9712c20fSFrederick Mayle #  error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h"
104*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined
105*9712c20fSFrederick Mayle #endif
106*9712c20fSFrederick Mayle 
107*9712c20fSFrederick Mayle #ifdef CURL_SUFFIX_CURL_OFF_TU
108*9712c20fSFrederick Mayle #  error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h"
109*9712c20fSFrederick Mayle    Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined
110*9712c20fSFrederick Mayle #endif
111*9712c20fSFrederick Mayle 
112*9712c20fSFrederick Mayle /* ================================================================ */
113*9712c20fSFrederick Mayle /*  EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY  */
114*9712c20fSFrederick Mayle /* ================================================================ */
115*9712c20fSFrederick Mayle 
116*9712c20fSFrederick Mayle /* Configure process defines this to 1 when it finds out that system  */
117*9712c20fSFrederick Mayle /* header file ws2tcpip.h must be included by the external interface. */
118*9712c20fSFrederick Mayle /* #undef CURL_PULL_WS2TCPIP_H */
119*9712c20fSFrederick Mayle #ifdef CURL_PULL_WS2TCPIP_H
120*9712c20fSFrederick Mayle #  ifndef WIN32_LEAN_AND_MEAN
121*9712c20fSFrederick Mayle #    define WIN32_LEAN_AND_MEAN
122*9712c20fSFrederick Mayle #  endif
123*9712c20fSFrederick Mayle #  include <windows.h>
124*9712c20fSFrederick Mayle #  include <winsock2.h>
125*9712c20fSFrederick Mayle #  include <ws2tcpip.h>
126*9712c20fSFrederick Mayle #endif
127*9712c20fSFrederick Mayle 
128*9712c20fSFrederick Mayle /* Configure process defines this to 1 when it finds out that system   */
129*9712c20fSFrederick Mayle /* header file sys/types.h must be included by the external interface. */
130*9712c20fSFrederick Mayle #define CURL_PULL_SYS_TYPES_H 1
131*9712c20fSFrederick Mayle #ifdef CURL_PULL_SYS_TYPES_H
132*9712c20fSFrederick Mayle #  include <sys/types.h>
133*9712c20fSFrederick Mayle #endif
134*9712c20fSFrederick Mayle 
135*9712c20fSFrederick Mayle /* Configure process defines this to 1 when it finds out that system */
136*9712c20fSFrederick Mayle /* header file stdint.h must be included by the external interface.  */
137*9712c20fSFrederick Mayle /* #undef CURL_PULL_STDINT_H */
138*9712c20fSFrederick Mayle #ifdef CURL_PULL_STDINT_H
139*9712c20fSFrederick Mayle #  include <stdint.h>
140*9712c20fSFrederick Mayle #endif
141*9712c20fSFrederick Mayle 
142*9712c20fSFrederick Mayle /* Configure process defines this to 1 when it finds out that system  */
143*9712c20fSFrederick Mayle /* header file inttypes.h must be included by the external interface. */
144*9712c20fSFrederick Mayle /* #undef CURL_PULL_INTTYPES_H */
145*9712c20fSFrederick Mayle #ifdef CURL_PULL_INTTYPES_H
146*9712c20fSFrederick Mayle #  include <inttypes.h>
147*9712c20fSFrederick Mayle #endif
148*9712c20fSFrederick Mayle 
149*9712c20fSFrederick Mayle /* Configure process defines this to 1 when it finds out that system    */
150*9712c20fSFrederick Mayle /* header file sys/socket.h must be included by the external interface. */
151*9712c20fSFrederick Mayle #define CURL_PULL_SYS_SOCKET_H 1
152*9712c20fSFrederick Mayle #ifdef CURL_PULL_SYS_SOCKET_H
153*9712c20fSFrederick Mayle #  include <sys/socket.h>
154*9712c20fSFrederick Mayle #endif
155*9712c20fSFrederick Mayle 
156*9712c20fSFrederick Mayle /* The size of `long', as computed by sizeof. */
157*9712c20fSFrederick Mayle #if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__)) ||      \
158*9712c20fSFrederick Mayle     defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABI64) ||   \
159*9712c20fSFrederick Mayle     defined(__powerpc64__) || defined(__s390x__) || defined(__LP64__) ||    \
160*9712c20fSFrederick Mayle     (defined(__riscv) && __riscv_xlen == 64)
161*9712c20fSFrederick Mayle #define CURL_SIZEOF_LONG 8
162*9712c20fSFrederick Mayle #else
163*9712c20fSFrederick Mayle #define CURL_SIZEOF_LONG 4
164*9712c20fSFrederick Mayle #endif
165*9712c20fSFrederick Mayle 
166*9712c20fSFrederick Mayle /* Integral data type used for curl_socklen_t. */
167*9712c20fSFrederick Mayle #define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
168*9712c20fSFrederick Mayle 
169*9712c20fSFrederick Mayle /* The size of `curl_socklen_t', as computed by sizeof. */
170*9712c20fSFrederick Mayle #define CURL_SIZEOF_CURL_SOCKLEN_T 4
171*9712c20fSFrederick Mayle 
172*9712c20fSFrederick Mayle /* Data type definition of curl_socklen_t. */
173*9712c20fSFrederick Mayle typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
174*9712c20fSFrederick Mayle 
175*9712c20fSFrederick Mayle /* Signed integral data type used for curl_off_t. */
176*9712c20fSFrederick Mayle #if defined(_M_X64) || (defined(__x86_64__) && !defined(__ILP32__)) ||      \
177*9712c20fSFrederick Mayle     defined(__aarch64__)
178*9712c20fSFrederick Mayle #define CURL_TYPEOF_CURL_OFF_T long
179*9712c20fSFrederick Mayle #else
180*9712c20fSFrederick Mayle #define CURL_TYPEOF_CURL_OFF_T int64_t
181*9712c20fSFrederick Mayle #endif
182*9712c20fSFrederick Mayle 
183*9712c20fSFrederick Mayle /* Data type definition of curl_off_t. */
184*9712c20fSFrederick Mayle typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
185*9712c20fSFrederick Mayle 
186*9712c20fSFrederick Mayle /* curl_off_t formatting string directive without "%" conversion specifier. */
187*9712c20fSFrederick Mayle #define CURL_FORMAT_CURL_OFF_T "ld"
188*9712c20fSFrederick Mayle 
189*9712c20fSFrederick Mayle /* unsigned curl_off_t formatting string without "%" conversion specifier. */
190*9712c20fSFrederick Mayle #define CURL_FORMAT_CURL_OFF_TU "lu"
191*9712c20fSFrederick Mayle 
192*9712c20fSFrederick Mayle /* curl_off_t formatting string directive with "%" conversion specifier. */
193*9712c20fSFrederick Mayle #define CURL_FORMAT_OFF_T "%ld"
194*9712c20fSFrederick Mayle 
195*9712c20fSFrederick Mayle /* The size of `curl_off_t', as computed by sizeof. */
196*9712c20fSFrederick Mayle #define CURL_SIZEOF_CURL_OFF_T 8
197*9712c20fSFrederick Mayle 
198*9712c20fSFrederick Mayle /* curl_off_t constant suffix. */
199*9712c20fSFrederick Mayle #define CURL_SUFFIX_CURL_OFF_T L
200*9712c20fSFrederick Mayle 
201*9712c20fSFrederick Mayle /* unsigned curl_off_t constant suffix. */
202*9712c20fSFrederick Mayle #define CURL_SUFFIX_CURL_OFF_TU UL
203*9712c20fSFrederick Mayle 
204*9712c20fSFrederick Mayle #endif /* __CURL_CURLBUILD_H */
205