]> granicus.if.org Git - php/commitdiff
backported the timelib cleanups to 5.6
authorAnatol Belski <ab@php.net>
Wed, 21 Jan 2015 10:03:16 +0000 (11:03 +0100)
committerAnatol Belski <ab@php.net>
Wed, 21 Jan 2015 10:03:16 +0000 (11:03 +0100)
ext/date/config.w32
ext/date/config0.m4
ext/date/lib/timelib_structs.h

index c97df7246c0de9484df92e7af3210f47c6209a5d..2f25c72ebdd960d74cf6b3cdb53466722106340c 100755 (executable)
@@ -9,6 +9,8 @@ ADD_FLAG('CFLAGS_DATE', "/wd4244");
 
 var tl_config = FSO.CreateTextFile("ext/date/lib/timelib_config.h", true);
 tl_config.WriteLine("#include \"config.w32.h\"");
+tl_config.WriteLine("#include <php_stdint.h>");
+tl_config.WriteLine("#define TIMELIB_OMIT_STDINT 1");
 tl_config.Close();
 
 PHP_INSTALL_HEADERS("ext/date/", "php_date.h lib/timelib.h lib/timelib_structs.h lib/timelib_config.h");
index 0b46c6803a7fd1943ac7b1a14e18518ebc7b1e42..79e12ec8a8f556554da22f43326342c9eeaaa895 100644 (file)
@@ -23,4 +23,5 @@ cat > $ext_builddir/lib/timelib_config.h <<EOF
 # include <php_config.h>
 #endif
 #include <php_stdint.h>
+#define TIMELIB_OMIT_STDINT 1
 EOF
index cfe249ce5ee3e27e10d49d364bcf0e4c4546057e..999ce53147349fc84de29c9a0dc428fe7f6f14f9 100644 (file)
 
 #include "timelib_config.h"
 
-#include "php_stdint.h"
+#ifndef TIMELIB_OMIT_STDINT
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+#if defined(HAVE_INTTYPES_H)
+#include <inttypes.h>
+#elif defined(HAVE_STDINT_H)
+#include <stdint.h>
+#endif
+
+# ifndef HAVE_INT32_T
+#  if SIZEOF_INT == 4
+typedef int int32_t;
+#  elif SIZEOF_LONG == 4
+typedef long int int32_t;
+#  endif
+# endif
+
+# ifndef HAVE_UINT32_T
+#  if SIZEOF_INT == 4
+typedef unsigned int uint32_t;
+#  elif SIZEOF_LONG == 4
+typedef unsigned long int uint32_t;
+#  endif
+# endif
+
+#ifdef _WIN32
+# if _MSC_VER >= 1600
+# include <stdint.h>
+# endif
+# ifndef SIZEOF_INT
+#  define SIZEOF_INT 4
+# endif
+# ifndef SIZEOF_LONG
+#  define SIZEOF_LONG 4
+# endif
+# ifndef int32_t
+typedef __int32           int32_t;
+# endif
+# ifndef uint32_t
+typedef unsigned __int32  uint32_t;
+# endif
+# ifndef int64_t
+typedef __int64           int64_t;
+# endif
+# ifndef uint64_t
+typedef unsigned __int64  uint64_t;
+# endif
+# ifndef PRId32
+#  define PRId32       "I32d"
+# endif
+# ifndef PRIu32
+#  define PRIu32       "I32u"
+# endif
+# ifndef PRId64
+#  define PRId64       "I64d"
+# endif
+# ifndef PRIu64
+#  define PRIu64       "I64u"
+# endif
+# ifndef INT32_MAX
+#define INT32_MAX    _I32_MAX
+# endif
+# ifndef INT32_MIN
+#define INT32_MIN    ((int32_t)_I32_MIN)
+# endif
+# ifndef UINT32_MAX
+#define UINT32_MAX   _UI32_MAX
+# endif
+# ifndef INT64_MIN
+#define INT64_MIN    ((int64_t)_I64_MIN)
+# endif
+# ifndef INT64_MAX
+#define INT64_MAX    _I64_MAX
+# endif
+# ifndef UINT64_MAX
+#define UINT64_MAX   _UI64_MAX
+# endif
+#endif
+
+#endif /* TIMELIB_OMIT_STDINT */
 
 #include <stdio.h>