]> sjero.net Git - wget/blobdiff - src/config-post.h
[svn] New option --ignore-case for case-insensitive matching.
[wget] / src / config-post.h
index 77a859dd59c39597855a2cb0c4f6cd2e2f93fc69..f3cbec3ca4a44ad362de39f4d2e30a228e366d81 100644 (file)
@@ -1,24 +1,12 @@
 /* Some autoconf-unrelated preprocessor magic that needs to be done
-   before including the system includes and therefore cannot belong in
-   sysdep.h.  This file is included at the bottom of config.h.  */
-
-/* Alloca-related defines, straight out of the Autoconf manual. */
-
-/* AIX requires this to be the first thing in the file.  */
-#ifndef __GNUC__
-# if HAVE_ALLOCA_H
-#  include <alloca.h>
-# else
-#  ifdef _AIX
- #pragma alloca
-#  else
-#   ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#   endif
-#  endif
-# endif
-#endif
+   *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
@@ -39,11 +27,6 @@ char *alloca ();
 
 #ifdef solaris
 # define NAMESPACE_TWEAKS
-# ifdef __GNUC__
-/* Prevent stdio.h from declaring va_list and thus tripping gcc's
-   stdarg.h. */
-#  define _VA_LIST
-# endif
 #endif
 
 #ifdef __linux__
@@ -64,4 +47,33 @@ char *alloca ();
 #define _SVID_SOURCE
 #define _BSD_SOURCE
 
+/* Under glibc-based systems we want all GNU extensions as well.  This
+   declares some unnecessary cruft, but also useful functions such as
+   timegm, FNM_CASEFOLD extension to fnmatch, memrchr, etc.  */
+#define _GNU_SOURCE
+
 #endif /* NAMESPACE_TWEAKS */
+
+
+/* Alloca declaration, based on recommendation in the Autoconf manual.
+   These have to be after the above namespace tweaks, but before any
+   non-preprocessor code.  */
+
+#if HAVE_ALLOCA_H
+# include <alloca.h>
+#elif defined WINDOWS
+# include <malloc.h>
+# ifndef alloca
+#  define alloca _alloca
+# endif
+#elif defined __GNUC__
+# define alloca __builtin_alloca
+#elif defined _AIX
+# define alloca __alloca
+#else
+# include <stddef.h>
+# ifdef  __cplusplus
+extern "C"
+# endif
+void *alloca (size_t);
+#endif