Varargs portability note:

The .a library file should work as is on Linux systems,
but if you have trouble recompiling it from scratch due
to vararg differences, here is the code structure you may
need to use in all the vararg-style API functions to get 
this to work; HAVE_STDARG_PROTOTYPES is something you need 
to set to say whether you have standard or old-style vararg
support.  This wasn't done in the example code because it
is complex enough to obscure the Python-specific logic.

-----------------------------------------------------------

#ifdef HAVE_STDARG_PROTOTYPES
int somefunc(char *realarg, ...)           <= this is the version used
#else
int somefunc(realarg, va_alist)            <= change to this if needed
        char *realarg;
        va_dcl
#endif 
{
        va_list vargs;

#ifdef HAVE_STDARG_PROTOTYPES
        va_start(vargs, realarg);
#else
        va_start(vargs);
#endif
        ...rest of function...

