1 /****************************************************************************** 2 * 3 * Copyright (C) 2001, International Business Machines 4 * Corporation and others. All Rights Reserved. 5 * 6 ******************************************************************************* 7 * file name: stubdata.c 8 * 9 * Define initialized data that will build into a valid, but empty 10 * ICU data library. Used to bootstrap the ICU build, which has these 11 * dependencies: 12 * ICU Common library depends on ICU data 13 * ICU data requires data building tools. 14 * ICU data building tools require the ICU common library. 15 * 16 * The stub data library (for which this file is the source) is sufficient 17 * for running the data building tools. 18 * 19 */ 20 #include "unicode/utypes.h" 21 #include "unicode/udata.h" 22 #include "unicode/uversion.h" 23 24 25 typedef struct { 26 uint16_t headerSize; 27 uint8_t magic1, magic2; 28 UDataInfo info; 29 char padding[8]; 30 uint32_t count, reserved; 31 /* 32 const struct { 33 const char *const name; 34 const void *const data; 35 } toc[1]; 36 */ 37 int fakeNameAndData[4]; /* TODO: Change this header type from */ 38 /* pointerTOC to OffsetTOC. */ 39 } ICU_Data_Header; 40 41 U_EXPORT const ICU_Data_Header U_ICUDATA_ENTRY_POINT = { 42 32, /* headerSize */ 43 0xda, /* magic1, (see struct MappedData in udata.c) */ 44 0x27, /* magic2 */ 45 { /*UDataInfo */ 46 sizeof(UDataInfo), /* size */ 47 0, /* reserved */ 48 49 #if U_IS_BIG_ENDIAN 50 1, 51 #else 52 0, 53 #endif 54 55 U_CHARSET_FAMILY, 56 sizeof(UChar), 57 0, /* reserved */ 58 { /* data format identifier */ 59 0x54, 0x6f, 0x43, 0x50}, /* "ToCP" */ 60 {1, 0, 0, 0}, /* format version major, minor, milli, micro */ 61 {0, 0, 0, 0} /* dataVersion */ 62 }, 63 {0,0,0,0,0,0,0,0}, /* Padding[8] */ 64 0, /* count */ 65 0, /* Reserved */ 66 { /* TOC structure */ 67 /* { */ 68 0 , 0 , 0, 0 /* name and data entries. Count says there are none, */ 69 /* but put one in just in case. */ 70 /* } */ 71 } 72 }; 73 74 75