summaryrefslogtreecommitdiff
path: root/win32/include/msvc
diff options
context:
space:
mode:
authorFrantišek Dvořák <valtri@users.sourceforge.net>2004-09-20 19:30:02 +0000
committerFrantišek Dvořák <valtri@users.sourceforge.net>2004-09-20 19:30:02 +0000
commit7204b84beb0f5cfb166e8d56402371d05bece83b (patch)
tree16b76662489bd637b04e06e5ee6ca1ea98186dec /win32/include/msvc
parent747ab57ec201661d72adfdf0ce538d728c0013c5 (diff)
downloadxine-lib-7204b84beb0f5cfb166e8d56402371d05bece83b.tar.gz
xine-lib-7204b84beb0f5cfb166e8d56402371d05bece83b.tar.bz2
Build system improvements:
- use replacement functions (macro AC_REPLACE_FUNCS and variable LTLIBOBJS), each function is in a file placed into lib/ directory, it was not necessary, but it looks nice, IMHO - headers cleanups (this was needed): - prototypes of replacement funtions and macros are placed into separate os_internal.h (and included by config.h) - drop include inttypes.h from public xine.h, replaced by custom os_type.h, idea origins from Ogg/Vorbis public headers - disable generating inttypes.h: generated replacement isn't enough for xine-lib but nobody complained (and for M$VC we have special version) - better including headers for win32, let dvdnav use its mutex wrapper - updated M$VC port Result: - xine is compiled nicely by MinGW, CygWin and paritaly M$VC - frontends in M$VC port don't require additional helping headers - moved some platform specific things from xine-utils and win32/contrib to lib/ Finally I can start with real coding. :-) CVS patchset: 6982 CVS date: 2004/09/20 19:30:02
Diffstat (limited to 'win32/include/msvc')
-rw-r--r--win32/include/msvc/config.h2
-rw-r--r--win32/include/msvc/inttypes.h51
-rw-r--r--win32/include/msvc/stdint.h60
3 files changed, 53 insertions, 60 deletions
diff --git a/win32/include/msvc/config.h b/win32/include/msvc/config.h
index 2b44ff85c..a0d35a972 100644
--- a/win32/include/msvc/config.h
+++ b/win32/include/msvc/config.h
@@ -609,3 +609,5 @@
/* define ssize_t to __int64 if it's missing in default includes */
#define ssize_t __int64
+
+#include "os_internal.h"
diff --git a/win32/include/msvc/inttypes.h b/win32/include/msvc/inttypes.h
index b7e13daf3..2934bf43a 100644
--- a/win32/include/msvc/inttypes.h
+++ b/win32/include/msvc/inttypes.h
@@ -29,34 +29,20 @@
#include <stdint.h>
-#define int8_t signed char
-#define int16_t signed short
-#define int32_t signed long
-#define int64_t signed hyper
-
-#define uint8_t unsigned char
-#define uint16_t unsigned short
-#define uint32_t unsigned long
-#define uint64_t unsigned hyper
-
-#define intptr_t signed int
-#define uintptr_t unsigned int
-
-#define __int8_t int8_t
-#define __int16_t int16_t
-#define __int32_t int32_t
-#define __int64_t int64_t
-
-#define __uint8_t uint8_t
-#define __uint16_t uint16_t
-#define __uint32_t uint32_t
-#define __uint64_t uint64_t
-
-#define __intptr_t intptr_t
-#define __uintptr_t uintptr_t
-
-typedef __int64 ulonglong;
-typedef __int64 longlong;
+typedef __int8 int8_t;
+typedef unsigned __int8 uint8_t;
+typedef __int16 int16_t;
+typedef unsigned __int16 uint16_t;
+typedef __int32 int32_t;
+typedef unsigned __int32 uint32_t;
+typedef __int64 int64_t;
+typedef unsigned __int64 uint64_t;
+typedef int intptr_t;
+typedef unsigned int uintptr_t;
+typedef __int64 intmax_t;
+typedef unsigned __int64 uintmax_t;
+typedef signed __int64 intmax_t;
+typedef unsigned __int64 uintmax_t;
#define __WORDSIZE 32
@@ -188,6 +174,15 @@ typedef __int64 longlong;
# define PRIxPTR __PRIPTR_PREFIX "x"
# define PRIXPTR __PRIPTR_PREFIX "X"
+
+/* Macros for scanning `intmax_t' and `uintmax_t'. */
+#define SCNdMAX __PRI64_PREFIX "d"
+#define SCNiMAX __PRI64_PREFIX "i"
+#define SCNoMAX __PRI64_PREFIX "o"
+#define SCNuMAX __PRI64_PREFIX "u"
+#define SCNxMAX __PRI64_PREFIX "x"
+#define SCNXMAX __PRI64_PREFIX "X"
+
#endif /* !defined __cplusplus || defined __STDC_FORMAT_MACROS */
diff --git a/win32/include/msvc/stdint.h b/win32/include/msvc/stdint.h
index fe934b846..7b9d4a090 100644
--- a/win32/include/msvc/stdint.h
+++ b/win32/include/msvc/stdint.h
@@ -27,7 +27,7 @@ details. */
* along with self program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: stdint.h,v 1.1 2004/04/06 19:20:21 valtri Exp $
+ * $Id: stdint.h,v 1.2 2004/09/20 19:30:08 valtri Exp $
*/
/* Modified original CygWin version for using by MSVC port. */
@@ -35,60 +35,73 @@ details. */
#ifndef _STDINT_H
#define _STDINT_H
-/* Exact-width integer types */
+/* Macros for minimum-width integer constant expressions */
+
+#define INT8_C(x) x
+#define INT16_C(x) x
+#define INT32_C(x) x ## L
+#define INT64_C(x) x ## I64
+
+#define UINT8_C(x) x ## U
+#define UINT16_C(x) x ## U
+#define UINT32_C(x) x ## UL
+#define UINT64_C(x) x ## UI64
-#include <inttypes.h>
+/* Macros for greatest-width integer constant expressions */
+
+#define INTMAX_C(x) x ## I64
+#define UINTMAX_C(x) x ## UI64
/* Limits of exact-width integer types */
#define INT8_MIN (-128)
#define INT16_MIN (-32768)
#define INT32_MIN (-2147483647 - 1)
-#define INT64_MIN (-9223372036854775807LL - 1LL)
+#define INT64_MIN (-INT64_C(9223372036854775807) - 1)
#define INT8_MAX (127)
#define INT16_MAX (32767)
#define INT32_MAX (2147483647)
-#define INT64_MAX (9223372036854775807LL)
+#define INT64_MAX (INT64_C(9223372036854775807))
#define UINT8_MAX (255)
#define UINT16_MAX (65535)
#define UINT32_MAX (4294967295UL)
-#define UINT64_MAX (18446744073709551615ULL)
+#define UINT64_MAX (UINT64_C(18446744073709551615))
/* Limits of minimum-width integer types */
#define INT_LEAST8_MIN (-128)
#define INT_LEAST16_MIN (-32768)
#define INT_LEAST32_MIN (-2147483647 - 1)
-#define INT_LEAST64_MIN (-9223372036854775807LL - 1LL)
+#define INT_LEAST64_MIN (-INT64_C(9223372036854775807) - 1)
#define INT_LEAST8_MAX (127)
#define INT_LEAST16_MAX (32767)
#define INT_LEAST32_MAX (2147483647)
-#define INT_LEAST64_MAX (9223372036854775807LL)
+#define INT_LEAST64_MAX (INT64_C(9223372036854775807))
#define UINT_LEAST8_MAX (255)
#define UINT_LEAST16_MAX (65535)
#define UINT_LEAST32_MAX (4294967295UL)
-#define UINT_LEAST64_MAX (18446744073709551615ULL)
+#define UINT_LEAST64_MAX (UINT64_C(18446744073709551615))
/* Limits of fastest minimum-width integer types */
#define INT_FAST8_MIN (-128)
#define INT_FAST16_MIN (-2147483647 - 1)
#define INT_FAST32_MIN (-2147483647 - 1)
-#define INT_FAST64_MIN (-9223372036854775807LL - 1LL)
+#define INT_FAST64_MIN (-INT64_C(9223372036854775807) - 1)
#define INT_FAST8_MAX (127)
#define INT_FAST16_MAX (2147483647)
#define INT_FAST32_MAX (2147483647)
-#define INT_FAST64_MAX (9223372036854775807LL)
+#define INT_FAST64_MAX (INT64_C(9223372036854775807))
#define UINT_FAST8_MAX (255)
#define UINT_FAST16_MAX (4294967295UL)
#define UINT_FAST32_MAX (4294967295UL)
-#define UINT_FAST64_MAX (18446744073709551615ULL)
+#define UINT_FAST64_MAX (UINT64_C(18446744073709551615))
/* Limits of integer types capable of holding object pointers */
@@ -98,9 +111,9 @@ details. */
/* Limits of greatest-width integer types */
-#define INTMAX_MIN (-9223372036854775807LL - 1LL)
-#define INTMAX_MAX (9223372036854775807LL)
-#define UINTMAX_MAX (18446744073709551615ULL)
+#define INTMAX_MIN (-INT64_C(9223372036854775807) - 1)
+#define INTMAX_MAX (INT64_C(9223372036854775807))
+#define UINTMAX_MAX (UINT64_C(18446744073709551615))
/* Limits of other integer types */
@@ -135,21 +148,4 @@ details. */
#define WINT_MAX (2147483647)
#endif
-/* Macros for minimum-width integer constant expressions */
-
-#define INT8_C(x) x
-#define INT16_C(x) x
-#define INT32_C(x) x ## L
-#define INT64_C(x) x ## LL
-
-#define UINT8_C(x) x ## U
-#define UINT16_C(x) x ## U
-#define UINT32_C(x) x ## UL
-#define UINT64_C(x) x ## ULL
-
-/* Macros for greatest-width integer constant expressions */
-
-#define INTMAX_C(x) x ## L
-#define UINTMAX_C(x) x ## UL
-
#endif /* _STDINT_H */