3 // Autogenerated from config.h.in by bsconf
6 #ifndef CONFIG_H_01F8552055DBC4246CF6E32537E15850
7 #define CONFIG_H_01F8552055DBC4246CF6E32537E15850
9 // Define to the one symbol short name of this package.
10 #define IFF_NAME "@PACKAGE_NAME@"
11 // Define to the full name and version of this package.
12 #define IFF_STRING "@PACKAGE_NAME@ @PACKAGE_VERSION@"
13 // Define to the version of this package.
14 #define IFF_VERSION 0x@LIB_MAJOR@@LIB_MINOR@@LIB_BUILD@
15 // Define to the address where bug reports for this package should be sent.
16 #define IFF_BUGREPORT "@PACKAGE_BUGREPORT@"
18 // uSTL library is required to compile. You can get the latest version
19 // from http://sourceforge.net/projects/ustl
21 // Define to 1 if you have the <ustl.h> header file.
24 // The following two settings should be turned on for complete compatibility
25 // with the original EA85 IFF standard. The library defaults to the less
26 // compatible state for performance reasons. It is unlikely that there are
27 // many IFF files already in existence, nor is it likely that any ancient
28 // applications using EA85 IFF are still in use. Therefore it is assumed,
29 // that you will be creating your own files in this format, rather than
30 // reading some legacy data.
32 // Bigendian format was specified in the original standard because back in
33 // 1985 people (mostly academics with Sun machines obtained through a
34 // lucrative educational institution deal with Sun) were assuming that it
35 // will eventually become the standard. Since then the opposite has
36 // happened, and all desktop machines, including Macs, are now Intel-based
37 // little-endian. Because of this, this library defaults to the little-
38 // -endian format; if there are any big-endian machines still left, they
39 // should be the ones to do conversion work. Note that other people have
40 // made this very decision already, as evidenced by the Microsoft RIFF format.
42 // Define to USTL_BIG_ENDIAN if you want header fields in bigendian format.
43 #define IFF_BYTE_ORDER USTL_LITTLE_ENDIAN
45 // The EA85 standard specifies that each chunk must begin at an even file
46 // offset because the Motorola 68000 processor for which it was designed
47 // is not capable of addressing a dword at an odd address. The idea was
48 // to read the file into memory, or mmap it, and then read the dwords
49 // directly by casting memory address to uint. This is exactly what this
50 // library does. All the operations are defined for uSTL binary streams,
51 // which operate on memory blocks, read in or mmapped.
53 // Modern desktop CPUs are all using the Intel architecture, and require
54 // ints to be 4-byte aligned. While off-grain access does not cause a
55 // crash, like it did on the 68000, there is a significant performance
56 // penalty. For this reason, the default alignment is set to 4 instead
57 // of 2. Naturally, this only makes a difference in cases where the chunk
58 // size is not a multiple of 4, which should be pretty rare. Old programs,
59 // if any still exist, will still be able to read 4-grain files.
61 // Note that uSTL has its own alignment checks, so you'll have to turn
62 // those off as well to avoid assert failures.
64 // Define to 2 if you want chunks aligned on 2-grain instead of 4-grain.
65 // Define to 1 to turn off chunk alignment.
71 #error "uSTL library is required to compile. Get it at http://sourceforge.net/projects/ustl."
73 #if USTL_VERSION < 0x100
74 #error "uSTL version 1.0.0 or later is required. Get it at http://sourceforge.net/projects/ustl."