mirror of
https://github.com/mirror/wget.git
synced 2025-01-26 20:30:40 +08:00
73 lines
1.9 KiB
C
73 lines
1.9 KiB
C
/* Some autoconf-unrelated preprocessor magic that needs to be done
|
|
*before* including the system includes and therefore cannot belong
|
|
in sysdep.h.
|
|
|
|
Everything else related to system tweaking belongs to sysdep.h.
|
|
|
|
This file is included at the bottom of config.h. */
|
|
|
|
/* Testing for __sun is not enough because it's also defined on SunOS. */
|
|
#ifdef __sun
|
|
# ifdef __SVR4
|
|
# define solaris
|
|
# endif
|
|
#endif
|
|
|
|
/* The "namespace tweaks" below attempt to set a friendly "compilation
|
|
environment" under popular operating systems. Default compilation
|
|
environment often means that some functions that are "extensions"
|
|
are not declared -- `strptime' is one example.
|
|
|
|
But non-default environments can expose bugs in the system header
|
|
files, crippling compilation in _very_ non-obvious ways. Because
|
|
of that, we define them only on well-tested architectures where we
|
|
know they will work. */
|
|
|
|
#undef NAMESPACE_TWEAKS
|
|
|
|
#ifdef solaris
|
|
# define NAMESPACE_TWEAKS
|
|
#endif
|
|
|
|
#ifdef __linux__
|
|
# define NAMESPACE_TWEAKS
|
|
#endif
|
|
|
|
#ifdef NAMESPACE_TWEAKS
|
|
|
|
/* Request the "Unix 98 compilation environment". */
|
|
#define _XOPEN_SOURCE 500
|
|
|
|
/* For Solaris: request everything else that is available and doesn't
|
|
conflict with the above. */
|
|
#define __EXTENSIONS__
|
|
|
|
/* For Linux: request features of 4.3BSD and SVID (System V Interface
|
|
Definition). */
|
|
#define _SVID_SOURCE
|
|
#define _BSD_SOURCE
|
|
|
|
#endif /* NAMESPACE_TWEAKS */
|
|
|
|
|
|
/* Alloca-related defines, straight out of the Autoconf manual. These
|
|
have to be after the above namespace tweaks, but before actual
|
|
declarations and system includes. */
|
|
|
|
#if HAVE_ALLOCA_H
|
|
# include <alloca.h>
|
|
#elif defined __GNUC__
|
|
# define alloca __builtin_alloca
|
|
#elif defined _AIX
|
|
# define alloca __alloca
|
|
#elif defined _MSC_VER
|
|
# include <malloc.h>
|
|
# define alloca _alloca
|
|
#else
|
|
# include <stddef.h>
|
|
# ifdef __cplusplus
|
|
extern "C"
|
|
# endif
|
|
void *alloca (size_t);
|
|
#endif
|