diff options
-rw-r--r-- | src/tool_setup.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/tool_setup.h b/src/tool_setup.h index 648b0f226..677f6e5c9 100644 --- a/src/tool_setup.h +++ b/src/tool_setup.h @@ -24,10 +24,33 @@ #define CURL_NO_OLDIES -#include <curl/curl.h> /* external interface */ +/* + * setup.h may define preprocessor macros such as _FILE_OFFSET_BITS and + * _LARGE_FILES in order to support files larger than 2 GB. On platforms + * where this happens it is mandatory that these macros are defined before + * any system header file is included, otherwise file handling function + * prototypes will be misdeclared and curl tool may not build properly; + * therefore we must include setup.h before curl.h when building curl. + */ #include "setup.h" /* from the lib directory */ +/* + * Undefine macros intended for libcurl internal use only. + */ + +#undef CURL_HIDDEN_SYMBOLS + +/* + * curl tool certainly uses libcurl's external interface. + */ + +#include <curl/curl.h> /* external interface */ + +/* + * Platform specific stuff. + */ + #if defined(macintosh) && defined(__MRC__) # define main(x,y) curl_main(x,y) #endif |