X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=compat%2Fcompat.h;h=634d505b764ed4e07acefa62c7bf8c3c11012211;hp=7767fe84a68580dbd2d2953f99645eda81403cac;hb=4e2c351c588ad74f4800ca0344232be90387c54a;hpb=4b193950a9bf8fb907427526a6191f51e0e2d13c diff --git a/compat/compat.h b/compat/compat.h index 7767fe84..634d505b 100644 --- a/compat/compat.h +++ b/compat/compat.h @@ -30,6 +30,21 @@ extern "C" { #endif +#if !STD_GETPWUID +#define _POSIX_PTHREAD_SEMANTICS 1 +#endif +#if !STD_ASCTIME +#define _POSIX_PTHREAD_SEMANTICS 1 +#endif + +#if !HAVE_CANONICALIZE_FILE_NAME +/* we only call this function from C, and this makes testing easier */ +#ifndef __cplusplus +char * +canonicalize_file_name (const char *path); +#endif +#endif + #if !HAVE_GETLINE #include #include @@ -46,6 +61,23 @@ getdelim (char **lineptr, size_t *n, int delimiter, FILE *fp); char* strcasestr(const char *haystack, const char *needle); #endif /* !HAVE_STRCASESTR */ +#if !HAVE_STRSEP +char *strsep(char **stringp, const char *delim); +#endif /* !HAVE_STRSEP */ + +#if !HAVE_TIMEGM +#include +time_t timegm (struct tm *tm); +#endif /* !HAVE_TIMEGM */ + +/* Silence gcc warnings about unused results. These warnings exist + * for a reason; any use of this needs to be justified. */ +#ifdef __GNUC__ +#define IGNORE_RESULT(x) ({ __typeof__(x) __z = (x); (void)(__z = __z); }) +#else /* !__GNUC__ */ +#define IGNORE_RESULT(x) x +#endif /* __GNUC__ */ + #ifdef __cplusplus } #endif