Commit 74eba5d8 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Fix C++ linking

parent 6b67d828
......@@ -39,12 +39,41 @@
# error Window CE support for *printf needs fixing.
#endif
#if !defined (HAVE_GMTIME_R) || !defined (HAVE_LOCALTIME_R)
# include <time.h> /* time_t */
#endif
#ifndef HAVE_LLDIV
typedef struct
{
long long quot; /* Quotient. */
long long rem; /* Remainder. */
} lldiv_t;
#endif
#ifndef HAVE_REWIND
# include <stdio.h> /* FILE */
#endif
#if !defined (HAVE_STRLCPY) || \
!defined (HAVE_STRNDUP) || \
!defined (HAVE_STRNLEN)
# include <stddef.h> /* size_t */
#endif
#ifndef HAVE_VASPRINTF
# include <stdarg.h> /* va_list */
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifndef HAVE_STRDUP
char *strdup (const char *);
#endif
#ifndef HAVE_VASPRINTF
# include <stdarg.h>
int vasprintf (char **, const char *, va_list);
#endif
......@@ -53,17 +82,14 @@ int asprintf (char **, const char *, ...);
#endif
#ifndef HAVE_STRNLEN
# include <stddef.h>
size_t strnlen (const char *, size_t);
#endif
#ifndef HAVE_STRNDUP
# include <stddef.h>
char *strndup (const char *, size_t);
#endif
#ifndef HAVE_STRLCPY
# include <stddef.h>
size_t strlcpy (char *, const char *, size_t);
#endif
......@@ -88,22 +114,9 @@ long long atoll (const char *);
#endif
#ifndef HAVE_LLDIV
typedef struct {
long long quot; /* Quotient. */
long long rem; /* Remainder. */
} lldiv_t;
lldiv_t lldiv (long long, long long);
#endif
#ifndef HAVE_GETENV
static inline char *getenv (const char *name)
{
(void)name;
return NULL;
}
#endif
#ifndef HAVE_STRCASECMP
int strcasecmp (const char *, const char *);
#endif
......@@ -117,20 +130,29 @@ char *strcasestr (const char *, const char *);
#endif
#ifndef HAVE_GMTIME_R
# include <time.h>
struct tm *gmtime_r (const time_t *, struct tm *);
#endif
#ifndef HAVE_LOCALTIME_R
# include <time.h>
struct tm *localtime_r (const time_t *, struct tm *);
#endif
#ifndef HAVE_REWIND
# include <stdio.h>
void rewind (FILE *);
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif
#ifndef HAVE_GETENV
static inline char *getenv (const char *name)
{
(void)name;
return NULL;
}
#endif
/* Alignment of critical static data structures */
#ifdef ATTRIBUTE_ALIGNED_MAX
# define ATTR_ALIGN(align) __attribute__ ((__aligned__ ((ATTRIBUTE_ALIGNED_MAX < align) ? ATTRIBUTE_ALIGNED_MAX : align)))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment