Blame


1 ff3adf60 2004-04-14 devnull /*
2 ff3adf60 2004-04-14 devnull * THIS FILE IS NOT IDENTICAL TO THE ORIGINAL
3 ff3adf60 2004-04-14 devnull * FROM THE BZIP2 DISTRIBUTION.
4 ff3adf60 2004-04-14 devnull *
5 ff3adf60 2004-04-14 devnull * It has been modified, mainly to break the library
6 ff3adf60 2004-04-14 devnull * into smaller pieces.
7 ff3adf60 2004-04-14 devnull *
8 ff3adf60 2004-04-14 devnull * Russ Cox
9 ff3adf60 2004-04-14 devnull * rsc@plan9.bell-labs.com
10 ff3adf60 2004-04-14 devnull * July 2000
11 ff3adf60 2004-04-14 devnull */
12 ff3adf60 2004-04-14 devnull
13 ff3adf60 2004-04-14 devnull /*---------------------------------------------*/
14 ff3adf60 2004-04-14 devnull /*--
15 ff3adf60 2004-04-14 devnull Place a 1 beside your platform, and 0 elsewhere.
16 ff3adf60 2004-04-14 devnull Attempts to autosniff this even if you don't.
17 ff3adf60 2004-04-14 devnull --*/
18 ff3adf60 2004-04-14 devnull
19 ff3adf60 2004-04-14 devnull
20 ff3adf60 2004-04-14 devnull /*--
21 ff3adf60 2004-04-14 devnull Generic 32-bit Unix.
22 ff3adf60 2004-04-14 devnull Also works on 64-bit Unix boxes.
23 ff3adf60 2004-04-14 devnull --*/
24 ff3adf60 2004-04-14 devnull #define BZ_UNIX 1
25 ff3adf60 2004-04-14 devnull
26 ff3adf60 2004-04-14 devnull /*--
27 ff3adf60 2004-04-14 devnull Win32, as seen by Jacob Navia's excellent
28 ff3adf60 2004-04-14 devnull port of (Chris Fraser & David Hanson)'s excellent
29 ff3adf60 2004-04-14 devnull lcc compiler.
30 ff3adf60 2004-04-14 devnull --*/
31 ff3adf60 2004-04-14 devnull #define BZ_LCCWIN32 0
32 ff3adf60 2004-04-14 devnull
33 ff3adf60 2004-04-14 devnull #if defined(_WIN32) && !defined(__CYGWIN__)
34 ff3adf60 2004-04-14 devnull #undef BZ_LCCWIN32
35 ff3adf60 2004-04-14 devnull #define BZ_LCCWIN32 1
36 ff3adf60 2004-04-14 devnull #undef BZ_UNIX
37 ff3adf60 2004-04-14 devnull #define BZ_UNIX 0
38 ff3adf60 2004-04-14 devnull #endif
39 ff3adf60 2004-04-14 devnull
40 ff3adf60 2004-04-14 devnull /*--
41 ff3adf60 2004-04-14 devnull Plan 9 from Bell Labs
42 ff3adf60 2004-04-14 devnull --*/
43 ff3adf60 2004-04-14 devnull #define BZ_PLAN9 0
44 ff3adf60 2004-04-14 devnull
45 ff3adf60 2004-04-14 devnull #if defined(PLAN9)
46 ff3adf60 2004-04-14 devnull #undef BZ_UNIX
47 ff3adf60 2004-04-14 devnull #define BZ_UNIX 0
48 ff3adf60 2004-04-14 devnull #undef BZ_PLAN9
49 ff3adf60 2004-04-14 devnull #define BZ_PLAN9 1
50 ff3adf60 2004-04-14 devnull #endif
51 ff3adf60 2004-04-14 devnull
52 ff3adf60 2004-04-14 devnull #if BZ_UNIX
53 ff3adf60 2004-04-14 devnull # include "unix.h"
54 ff3adf60 2004-04-14 devnull #elif BZ_LCCWIN32
55 ff3adf60 2004-04-14 devnull # include "lccwin32.h"
56 ff3adf60 2004-04-14 devnull #elif BZ_PLAN9
57 ff3adf60 2004-04-14 devnull # include "plan9.h"
58 ff3adf60 2004-04-14 devnull #endif
59 ff3adf60 2004-04-14 devnull
60 ff3adf60 2004-04-14 devnull #ifdef __GNUC__
61 ff3adf60 2004-04-14 devnull # define NORETURN __attribute__ ((noreturn))
62 ff3adf60 2004-04-14 devnull #else
63 ff3adf60 2004-04-14 devnull # define NORETURN /**/
64 ff3adf60 2004-04-14 devnull #endif
65 ff3adf60 2004-04-14 devnull
66 ff3adf60 2004-04-14 devnull /*--
67 ff3adf60 2004-04-14 devnull Some more stuff for all platforms :-)
68 ff3adf60 2004-04-14 devnull This might have to get moved into the platform-specific
69 ff3adf60 2004-04-14 devnull header files if we encounter a machine with different sizes.
70 ff3adf60 2004-04-14 devnull --*/
71 ff3adf60 2004-04-14 devnull
72 ff3adf60 2004-04-14 devnull typedef char Char;
73 ff3adf60 2004-04-14 devnull typedef unsigned char Bool;
74 ff3adf60 2004-04-14 devnull typedef unsigned char UChar;
75 ff3adf60 2004-04-14 devnull typedef int Int32;
76 ff3adf60 2004-04-14 devnull typedef unsigned int UInt32;
77 ff3adf60 2004-04-14 devnull typedef short Int16;
78 ff3adf60 2004-04-14 devnull typedef unsigned short UInt16;
79 ff3adf60 2004-04-14 devnull
80 ff3adf60 2004-04-14 devnull #define True ((Bool)1)
81 ff3adf60 2004-04-14 devnull #define False ((Bool)0)
82 ff3adf60 2004-04-14 devnull
83 ff3adf60 2004-04-14 devnull /*--
84 ff3adf60 2004-04-14 devnull IntNative is your platform's `native' int size.
85 ff3adf60 2004-04-14 devnull Only here to avoid probs with 64-bit platforms.
86 ff3adf60 2004-04-14 devnull --*/
87 ff3adf60 2004-04-14 devnull typedef int IntNative;
88 ff3adf60 2004-04-14 devnull