-#undef inline
-
-/* Define to `long long' if <sys/types.h> does not define. */
-#undef longlong
-
-/* Define to `unsigned' if <sys/types.h> does not define. */
-#undef size_t
-
-/* Define to `int' if <sys/types.h> does not define. */
-#undef ssize_t
-
-/* Define to `unsigned char' if <sys/types.h> does not define. */
-#undef uchar
-
-/* Define to `unsigned int' if <sys/types.h> does not define. */
-#undef uint
-
-/* Define to `unsigned long' if <sys/types.h> does not define. */
-#undef ulong
-
-/* Define to `unsigned long long' if <sys/types.h> does not define. */
-#undef ulonglong
-
-/* Define to `unsigned short' if <sys/types.h> does not define. */
-#undef ushort
-
-
+/* #undef inline */
+
+/* Whether types "long long" and "__int64" are enabled. If a type is
+ enabled then it is a unique fundamental type. */
+#cmakedefine GDCM_TYPE_USE_LONG_LONG
+#cmakedefine GDCM_TYPE_USE___INT64
+
+/* Some properties of the available types. */
+#cmakedefine GDCM_TYPE_SAME_LONG_AND___INT64
+#cmakedefine GDCM_TYPE_SAME_LONG_LONG_AND___INT64
+#cmakedefine GDCM_TYPE_CONVERT_UI64_TO_DOUBLE
+
+
+// On win32 there is no long long therefore use __int64 instead
+//
+#ifndef HAVE_SYS_TYPES_H
+typedef unsigned short ushort;
+typedef unsigned int uint;
+typedef unsigned long ulong;
+#ifdef GDCM_TYPE_USE___INT64
+typedef unsigned char uchar;
+typedef unsigned __int64 ulonglong;
+typedef __int64 longlong;