diff options
author | Daniel Stenberg <daniel@haxx.se> | 2016-10-24 13:38:29 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2016-10-24 13:38:29 +0200 |
commit | cc8c8f957e35fc8bda22a80862a0e90a5979bffb (patch) | |
tree | 1b6a1ce7554b17d974f8091fe70036f64552b61a /docs/TODO | |
parent | 21b9e54058bd0dd5108803facd4ee678a4846ae5 (diff) |
TODO: Remove the generated include file
Diffstat (limited to 'docs/TODO')
-rw-r--r-- | docs/TODO | 27 |
1 files changed, 27 insertions, 0 deletions
@@ -38,6 +38,7 @@ 1.21 API for URL parsing/splitting 1.23 Offer API to flush the connection pool 1.24 TCP Fast Open for windows + 1.25 Remove the generated include file 2. libcurl - multi interface 2.1 More non-blocking @@ -377,6 +378,32 @@ Mac OS. Windows supports TCP Fast Open starting with Windows 10, version 1607 and we should add support for it. +1.25 Remove the generated include file + + When curl and libcurl are built, one of the public include files are + generated and is populated with a set of defines that are derevid from sizes + and constants for the particular target architecture that build is made. For + platforms that can select between 32 bit and 64 bit at build time, this + approach makes the libcurl build only create a set of public headers suitable + for one of the architectures and not both. If you build libcurl for such a + platform and you want to allow applications to get built using either 32/64 + version, you must generate the libcurl headers once for each setup and you + must then add a replacement curl header that would itself select the correct + 32 or 64 bit specific header as necessary. + + Your curl/curl.h alternative could then look like (replace with suitable CPP + variable to check): + + #ifdef ARCH_32bit + #include <curl32/curl.h> + #else /* ARCH_64bit */ + #include <curl64/curl.h> + #endif + + A fix would either (A) fix the 32/64 setup automatically or even better (B) + work away the architecture specific defines from the headers so that they can + be used for all architectures independently of what libcurl was built for. + 2. libcurl - multi interface |