Hi, I will manage it. There has to be one ugly hack. To support all platforms (compilers), the MHD_FNCTL should be in the two forms. MHD_FNCTL2(x,y) and MHD_FNCTL3(x,y,z). I am not sure whether variadic macros are supported by all compilers (< C99). Some hints to overcome it would be appreciated.
Best Martin On Fri, Apr 18, 2014 at 2:46 PM, Christian Grothoff <[email protected]> wrote: > Hi! > > Given that I remember Symbian also creating similar issues, I guess I'm > not opposed to this in principle. However, we should only do this for > the symbols where it is really needed, instead of always wrapping all > system calls (and use #defines so that on platforms where the system > call is sane, we have zero overhead). > > So Martin, if you could contribute > 1) a patch with the minimal changes that make it work for you, > 2) updates to the TeXInfo manual that describe how to make MHD > work with lwip (so that others can benefit from the change) > > I'd be in favor of merging the change. > > Happy hacking! > > Christian > > On 04/14/14 20:29, Martin Velek wrote: >> Hi, >> >> it is about using libmicrohttpd on non-POSIX enviroment. More users, >> more bugs discovered, and so on. I do not insist, it is only a feature >> request. >> >> I cannot say if there is another software affected, most of it I am >> using is ANSI C or has an adaptation layer exactly from these reasons >> (non standard enviroment). >> >> Best >> Martin >> >> >> >> On Mon, Apr 14, 2014 at 2:51 PM, Zbigniew Jędrzejewski-Szmek >> <[email protected]> wrote: >>> On Mon, Apr 14, 2014 at 02:29:58PM +0200, Martin Velek wrote: >>>> Hello, >>>> >>>> could be possible to rename all socket functions (fnctl, send, accept >>>> etc) to something like MHD_FNCTL, MHD_SEND, in further versions > >>>> 0.9.34? >>>> >>>> I am using lwip, gnu arm with newlib and there is a name clash for >>>> fnctl. The newlib has a function named fnctl, but without >>>> implementation, returning -1. The lwip has own implementation of >>>> lwip_fnctl. I cannot simply define #define fnctl lwip_fnctl because it >>>> would break all code using libmicrohttpd. >>> Hi, >>> it seems clear that the problem is in lwip, and should be fixed there. Why >>> force ugly workarounds into all other software (lib痛ttpd certainly isn't >>> the only thing affected), instead of fixing the error where it is? >>> >>> Zbyszek >>> >> >
