Artifact b4a2d638880a5ed7a1908c9ad2d4cb99ec758c00:
File
src/config.h
part of check-in
[dbda8d6ce9]
- Initial check-in of m1 sources.
by
drh on
2007-07-21 14:10:57.
0000: 2f 2a 0a 2a 2a 20 43 6f 70 79 72 69 67 68 74 20 /*.** Copyright
0010: 28 63 29 20 32 30 30 36 20 44 2e 20 52 69 63 68 (c) 2006 D. Rich
0020: 61 72 64 20 48 69 70 70 0a 2a 2a 0a 2a 2a 20 54 ard Hipp.**.** T
0030: 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 his program is f
0040: 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f ree software; yo
0050: 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 u can redistribu
0060: 74 65 20 69 74 20 61 6e 64 2f 6f 72 0a 2a 2a 20 te it and/or.**
0070: 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 20 modify it under
0080: 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 the terms of the
0090: 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 GNU General Pub
00a0: 6c 69 63 0a 2a 2a 20 4c 69 63 65 6e 73 65 20 76 lic.** License v
00b0: 65 72 73 69 6f 6e 20 32 20 61 73 20 70 75 62 6c ersion 2 as publ
00c0: 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 ished by the Fre
00d0: 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 e Software Found
00e0: 61 74 69 6f 6e 2e 0a 2a 2a 0a 2a 2a 20 54 68 69 ation..**.** Thi
00f0: 73 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 s program is dis
0100: 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 tributed in the
0110: 68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c hope that it wil
0120: 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 2a 2a 20 l be useful,.**
0130: 62 75 74 20 57 49 54 48 4f 55 54 20 41 4e 59 20 but WITHOUT ANY
0140: 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 WARRANTY; withou
0150: 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 t even the impli
0160: 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 2a ed warranty of.*
0170: 2a 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 * MERCHANTABILIT
0180: 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 Y or FITNESS FOR
0190: 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 A PARTICULAR PU
01a0: 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 RPOSE. See the
01b0: 47 4e 55 0a 2a 2a 20 47 65 6e 65 72 61 6c 20 50 GNU.** General P
01c0: 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f ublic License fo
01d0: 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a r more details..
01e0: 2a 2a 20 0a 2a 2a 20 59 6f 75 20 73 68 6f 75 6c ** .** You shoul
01f0: 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 d have received
0200: 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e a copy of the GN
0210: 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 U General Public
0220: 0a 2a 2a 20 4c 69 63 65 6e 73 65 20 61 6c 6f 6e .** License alon
0230: 67 20 77 69 74 68 20 74 68 69 73 20 6c 69 62 72 g with this libr
0240: 61 72 79 3b 20 69 66 20 6e 6f 74 2c 20 77 72 69 ary; if not, wri
0250: 74 65 20 74 6f 20 74 68 65 0a 2a 2a 20 46 72 65 te to the.** Fre
0260: 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 e Software Found
0270: 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 39 20 ation, Inc., 59
0280: 54 65 6d 70 6c 65 20 50 6c 61 63 65 20 2d 20 53 Temple Place - S
0290: 75 69 74 65 20 33 33 30 2c 0a 2a 2a 20 42 6f 73 uite 330,.** Bos
02a0: 74 6f 6e 2c 20 4d 41 20 20 30 32 31 31 31 2d 31 ton, MA 02111-1
02b0: 33 30 37 2c 20 55 53 41 2e 0a 2a 2a 0a 2a 2a 20 307, USA..**.**
02c0: 41 75 74 68 6f 72 20 63 6f 6e 74 61 63 74 20 69 Author contact i
02d0: 6e 66 6f 72 6d 61 74 69 6f 6e 3a 0a 2a 2a 20 20 nformation:.**
02e0: 20 64 72 68 40 68 77 61 63 69 2e 63 6f 6d 0a 2a drh@hwaci.com.*
02f0: 2a 20 20 20 68 74 74 70 3a 2f 2f 77 77 77 2e 68 * http://www.h
0300: 77 61 63 69 2e 63 6f 6d 2f 64 72 68 2f 0a 2a 2a waci.com/drh/.**
0310: 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a .***************
0320: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0330: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0340: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0350: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0360: 0a 2a 2a 0a 2a 2a 20 41 20 63 6f 6d 6d 6f 6e 20 .**.** A common
0370: 68 65 61 64 65 72 20 66 69 6c 65 20 75 73 65 64 header file used
0380: 20 62 79 20 61 6c 6c 20 6d 6f 64 75 6c 65 73 2e by all modules.
0390: 0a 2a 2f 0a 0a 2f 2a 0a 2a 2a 20 53 79 73 74 65 .*/../*.** Syste
03a0: 6d 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 75 m header files u
03b0: 73 65 64 20 62 79 20 61 6c 6c 20 6d 6f 64 75 6c sed by all modul
03c0: 65 73 0a 2a 2f 0a 23 69 6e 63 6c 75 64 65 20 3c es.*/.#include <
03d0: 75 6e 69 73 74 64 2e 68 3e 0a 23 69 6e 63 6c 75 unistd.h>.#inclu
03e0: 64 65 20 3c 73 74 64 69 6f 2e 68 3e 0a 23 69 6e de <stdio.h>.#in
03f0: 63 6c 75 64 65 20 3c 73 74 64 6c 69 62 2e 68 3e clude <stdlib.h>
0400: 0a 23 69 6e 63 6c 75 64 65 20 3c 63 74 79 70 65 .#include <ctype
0410: 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 20 3c 73 74 .h>.#include <st
0420: 72 69 6e 67 2e 68 3e 0a 23 69 6e 63 6c 75 64 65 ring.h>.#include
0430: 20 3c 73 74 64 61 72 67 2e 68 3e 0a 23 69 6e 63 <stdarg.h>.#inc
0440: 6c 75 64 65 20 3c 61 73 73 65 72 74 2e 68 3e 0a lude <assert.h>.
0450: 23 69 6e 63 6c 75 64 65 20 22 73 71 6c 69 74 65 #include "sqlite
0460: 33 2e 68 22 0a 0a 2f 2a 0a 2a 2a 20 54 79 70 65 3.h"../*.** Type
0470: 64 65 66 20 66 6f 72 20 61 20 36 34 2d 62 69 74 def for a 64-bit
0480: 20 69 6e 74 65 67 65 72 0a 2a 2f 0a 74 79 70 65 integer.*/.type
0490: 64 65 66 20 73 71 6c 69 74 65 5f 69 6e 74 36 34 def sqlite_int64
04a0: 20 69 36 34 3b 0a 74 79 70 65 64 65 66 20 73 71 i64;.typedef sq
04b0: 6c 69 74 65 5f 75 69 6e 74 36 34 20 75 36 34 3b lite_uint64 u64;
04c0: 0a 0a 2f 2a 0a 2a 2a 20 55 6e 73 69 67 6e 65 64 ../*.** Unsigned
04d0: 20 63 68 61 72 61 63 74 65 72 20 74 79 70 65 0a character type.
04e0: 2a 2f 0a 74 79 70 65 64 65 66 20 75 6e 73 69 67 */.typedef unsig
04f0: 6e 65 64 20 63 68 61 72 20 75 38 3b 0a 0a 2f 2a ned char u8;../*
0500: 0a 2a 2a 20 53 74 61 6e 64 61 72 64 20 63 6f 6c .** Standard col
0510: 6f 72 73 2e 20 20 54 68 65 73 65 20 63 6f 6c 6f ors. These colo
0520: 72 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 63 rs can also be c
0530: 68 61 6e 67 65 64 20 75 73 69 6e 67 20 61 20 73 hanged using a s
0540: 74 79 6c 65 73 68 65 65 74 2e 0a 2a 2f 0a 0a 2f tylesheet..*/../
0550: 2a 20 41 20 62 6c 75 65 20 62 6f 72 64 65 72 20 * A blue border
0560: 61 6e 64 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 and background.
0570: 20 55 73 65 64 20 66 6f 72 20 74 68 65 20 74 69 Used for the ti
0580: 74 6c 65 20 62 61 72 20 61 6e 64 20 66 6f 72 20 tle bar and for
0590: 64 61 74 65 73 0a 2a 2a 20 69 6e 20 61 20 74 69 dates.** in a ti
05a0: 6d 65 6c 69 6e 65 2e 0a 2a 2f 0a 23 64 65 66 69 meline..*/.#defi
05b0: 6e 65 20 42 4f 52 44 45 52 31 20 20 20 20 20 20 ne BORDER1
05c0: 20 22 23 61 30 62 35 66 34 22 20 20 20 20 20 20 "#a0b5f4"
05d0: 2f 2a 20 53 74 79 6c 65 73 68 65 65 74 20 63 6c /* Stylesheet cl
05e0: 61 73 73 3a 20 62 6f 72 64 65 72 31 20 2a 2f 0a ass: border1 */.
05f0: 23 64 65 66 69 6e 65 20 42 47 31 20 20 20 20 20 #define BG1
0600: 20 20 20 20 20 20 22 23 64 30 64 39 66 34 22 20 "#d0d9f4"
0610: 20 20 20 20 20 2f 2a 20 53 74 79 6c 65 73 68 65 /* Styleshe
0620: 65 74 20 63 6c 61 73 73 3a 20 62 6b 67 6e 64 31 et class: bkgnd1
0630: 20 2a 2f 0a 0a 2f 2a 20 41 20 72 65 64 20 62 6f */../* A red bo
0640: 72 64 65 72 20 61 6e 64 20 62 61 63 6b 67 72 6f rder and backgro
0650: 75 6e 64 2e 20 20 55 73 65 20 66 6f 72 20 72 65 und. Use for re
0660: 6c 65 61 73 65 73 20 69 6e 20 74 68 65 20 74 69 leases in the ti
0670: 6d 65 6c 69 6e 65 2e 0a 2a 2f 0a 23 64 65 66 69 meline..*/.#defi
0680: 6e 65 20 42 4f 52 44 45 52 32 20 20 20 20 20 20 ne BORDER2
0690: 20 22 23 65 63 39 38 39 38 22 20 20 20 20 20 20 "#ec9898"
06a0: 2f 2a 20 53 74 79 6c 65 73 68 65 65 74 20 63 6c /* Stylesheet cl
06b0: 61 73 73 3a 20 62 6f 72 64 65 72 32 20 2a 2f 0a ass: border2 */.
06c0: 23 64 65 66 69 6e 65 20 42 47 32 20 20 20 20 20 #define BG2
06d0: 20 20 20 20 20 20 22 23 66 37 63 30 63 30 22 20 "#f7c0c0"
06e0: 20 20 20 20 20 2f 2a 20 53 74 79 6c 65 73 68 65 /* Styleshe
06f0: 65 74 20 63 6c 61 73 73 3a 20 62 6b 67 6e 64 32 et class: bkgnd2
0700: 20 2a 2f 0a 0a 2f 2a 20 41 20 67 72 61 79 20 62 */../* A gray b
0710: 61 63 6b 67 72 6f 75 6e 64 2e 20 20 55 73 65 64 ackground. Used
0720: 20 66 6f 72 20 63 6f 6c 75 6d 6e 20 68 65 61 64 for column head
0730: 65 72 73 20 69 6e 20 74 68 65 20 57 69 6b 69 20 ers in the Wiki
0740: 54 61 62 6c 65 20 6f 66 20 43 6f 6e 74 65 6e 74 Table of Content
0750: 73 0a 2a 2a 20 61 6e 64 20 74 6f 20 68 69 67 68 s.** and to high
0760: 6c 69 67 68 74 20 74 69 63 6b 65 74 20 70 72 6f light ticket pro
0770: 70 65 72 74 69 65 73 2e 0a 2a 2f 0a 23 64 65 66 perties..*/.#def
0780: 69 6e 65 20 42 47 33 20 20 20 20 20 20 20 20 20 ine BG3
0790: 20 20 22 23 64 30 64 30 64 30 22 20 20 20 20 20 "#d0d0d0"
07a0: 20 2f 2a 20 53 74 79 6c 65 73 68 65 65 74 20 63 /* Stylesheet c
07b0: 6c 61 73 73 3a 20 62 6b 67 6e 64 33 20 2a 2f 0a lass: bkgnd3 */.
07c0: 0a 2f 2a 20 41 20 6c 69 67 68 74 2d 67 72 61 79 ./* A light-gray
07d0: 20 62 61 63 6b 67 72 6f 75 6e 64 2e 20 20 55 73 background. Us
07e0: 65 64 20 66 6f 72 20 74 69 74 6c 65 20 62 61 72 ed for title bar
07f0: 2c 20 6d 65 6e 75 73 2c 20 61 6e 64 20 72 6c 6f , menus, and rlo
0800: 67 20 61 6c 74 65 72 6e 61 74 69 6f 6e 0a 2a 2f g alternation.*/
0810: 0a 23 64 65 66 69 6e 65 20 42 47 34 20 20 20 20 .#define BG4
0820: 20 20 20 20 20 20 20 22 23 66 30 66 30 66 30 22 "#f0f0f0"
0830: 20 20 20 20 20 20 2f 2a 20 53 74 79 6c 65 73 68 /* Stylesh
0840: 65 65 74 20 63 6c 61 73 73 3a 20 62 6b 67 6e 64 eet class: bkgnd
0850: 34 20 2a 2f 0a 0a 2f 2a 20 41 20 64 65 65 70 65 4 */../* A deepe
0860: 72 20 67 72 61 79 20 62 61 63 6b 67 72 6f 75 6e r gray backgroun
0870: 64 2e 20 20 55 73 65 64 20 66 6f 72 20 62 72 61 d. Used for bra
0880: 6e 63 68 65 73 0a 2a 2f 0a 23 64 65 66 69 6e 65 nches.*/.#define
0890: 20 42 47 35 20 20 20 20 20 20 20 20 20 20 20 22 BG5 "
08a0: 23 64 64 64 64 64 64 22 20 20 20 20 20 20 2f 2a #dddddd" /*
08b0: 20 53 74 79 6c 65 73 68 65 65 74 20 63 6c 61 73 Stylesheet clas
08c0: 73 3a 20 62 6b 67 6e 64 35 20 2a 2f 0a 0a 2f 2a s: bkgnd5 */../*
08d0: 20 44 65 66 61 75 6c 74 20 48 54 4d 4c 20 70 61 Default HTML pa
08e0: 67 65 20 68 65 61 64 65 72 20 2a 2f 0a 23 64 65 ge header */.#de
08f0: 66 69 6e 65 20 48 45 41 44 45 52 20 22 3c 68 74 fine HEADER "<ht
0900: 6d 6c 3e 5c 6e 22 20 5c 0a 20 20 20 20 20 20 20 ml>\n" \.
0910: 20 20 20 20 20 20 20 20 22 3c 68 65 61 64 3e 5c "<head>\
0920: 6e 22 20 5c 0a 20 20 20 20 20 20 20 20 20 20 20 n" \.
0930: 20 20 20 20 22 3c 6c 69 6e 6b 20 72 65 6c 3d 5c "<link rel=\
0940: 22 61 6c 74 65 72 6e 61 74 65 5c 22 20 74 79 70 "alternate\" typ
0950: 65 3d 5c 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f e=\"application/
0960: 72 73 73 2b 78 6d 6c 5c 22 5c 6e 22 20 5c 0a 20 rss+xml\"\n" \.
0970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 "
0980: 20 20 74 69 74 6c 65 3d 5c 22 25 4e 20 54 69 6d title=\"%N Tim
0990: 65 6c 69 6e 65 20 46 65 65 64 5c 22 20 68 72 65 eline Feed\" hre
09a0: 66 3d 5c 22 25 42 2f 74 69 6d 65 6c 69 6e 65 2e f=\"%B/timeline.
09b0: 72 73 73 5c 22 3e 5c 6e 22 20 5c 0a 20 20 20 20 rss\">\n" \.
09c0: 20 20 20 20 20 20 20 20 20 20 20 22 3c 74 69 74 "<tit
09d0: 6c 65 3e 25 4e 3a 20 25 54 3c 2f 74 69 74 6c 65 le>%N: %T</title
09e0: 3e 5c 6e 3c 2f 68 65 61 64 3e 5c 6e 22 20 5c 0a >\n</head>\n" \.
09f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 "
0a00: 3c 62 6f 64 79 20 62 67 63 6f 6c 6f 72 3d 5c 22 <body bgcolor=\"
0a10: 77 68 69 74 65 5c 22 3e 22 0a 0a 2f 2a 20 44 65 white\">"../* De
0a20: 66 61 75 6c 74 20 48 54 4d 4c 20 70 61 67 65 20 fault HTML page
0a30: 66 6f 6f 74 65 72 20 2a 2f 0a 23 64 65 66 69 6e footer */.#defin
0a40: 65 20 46 4f 4f 54 45 52 20 22 3c 64 69 76 20 69 e FOOTER "<div i
0a50: 64 3d 5c 22 66 6f 6f 74 65 72 5c 22 3e 3c 73 6d d=\"footer\"><sm
0a60: 61 6c 6c 3e 3c 73 6d 61 6c 6c 3e 5c 6e 22 20 5c all><small>\n" \
0a70: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0a80: 22 3c 61 20 68 72 65 66 3d 5c 22 61 62 6f 75 74 "<a href=\"about
0a90: 5c 22 3e 46 6f 73 73 69 6c 20 76 65 72 73 69 6f \">Fossil versio
0aa0: 6e 20 25 56 3c 2f 61 3e 5c 6e 22 20 5c 0a 20 20 n %V</a>\n" \.
0ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 3c 2f "</
0ac0: 73 6d 61 6c 6c 3e 3c 2f 73 6d 61 6c 6c 3e 3c 2f small></small></
0ad0: 64 69 76 3e 5c 6e 22 20 5c 0a 20 20 20 20 20 20 div>\n" \.
0ae0: 20 20 20 20 20 20 20 20 20 22 3c 2f 62 6f 64 79 "</body
0af0: 3e 3c 2f 68 74 6d 6c 3e 5c 6e 22 0a 0a 2f 2a 20 ></html>\n"../*
0b00: 49 6e 20 74 68 65 20 74 69 6d 65 6c 69 6e 65 2c In the timeline,
0b10: 20 63 68 65 63 6b 2d 69 6e 20 6d 65 73 73 61 67 check-in messag
0b20: 65 73 20 61 72 65 20 74 72 75 6e 63 61 74 65 64 es are truncated
0b30: 20 61 74 20 74 68 65 20 66 69 72 73 74 20 73 70 at the first sp
0b40: 61 63 65 0a 2a 2a 20 74 68 61 74 20 69 73 20 6d ace.** that is m
0b50: 6f 72 65 20 74 68 61 6e 20 4d 58 5f 43 4b 49 4e ore than MX_CKIN
0b60: 5f 4d 53 47 20 66 72 6f 6d 20 74 68 65 20 62 65 _MSG from the be
0b70: 67 69 6e 6e 69 6e 67 2c 20 6f 72 20 61 74 20 74 ginning, or at t
0b80: 68 65 20 66 69 72 73 74 0a 2a 2a 20 70 61 72 61 he first.** para
0b90: 67 72 61 70 68 20 62 72 65 61 6b 20 74 68 61 74 graph break that
0ba0: 20 69 73 20 6d 6f 72 65 20 74 68 61 6e 20 4d 4e is more than MN
0bb0: 5f 43 4b 49 4e 5f 4d 53 47 20 66 72 6f 6d 20 74 _CKIN_MSG from t
0bc0: 68 65 20 62 65 67 69 6e 6e 69 6e 67 2e 0a 2a 2f he beginning..*/
0bd0: 0a 23 64 65 66 69 6e 65 20 4d 4e 5f 43 4b 49 4e .#define MN_CKIN
0be0: 5f 4d 53 47 20 20 20 31 30 30 0a 23 64 65 66 69 _MSG 100.#defi
0bf0: 6e 65 20 4d 58 5f 43 4b 49 4e 5f 4d 53 47 20 20 ne MX_CKIN_MSG
0c00: 20 33 30 30 0a 0a 2f 2a 20 55 6e 73 65 74 20 74 300../* Unset t
0c10: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 he following to
0c20: 64 69 73 61 62 6c 65 20 69 6e 74 65 72 6e 61 74 disable internat
0c30: 69 6f 6e 61 6c 69 7a 61 74 69 6f 6e 20 63 6f 64 ionalization cod
0c40: 65 2e 20 2a 2f 0a 23 69 66 6e 64 65 66 20 46 4f e. */.#ifndef FO
0c50: 53 53 49 4c 5f 49 31 38 4e 0a 23 20 64 65 66 69 SSIL_I18N.# defi
0c60: 6e 65 20 46 4f 53 53 49 4c 5f 49 31 38 4e 20 31 ne FOSSIL_I18N 1
0c70: 0a 23 65 6e 64 69 66 0a 0a 23 69 66 20 46 4f 53 .#endif..#if FOS
0c80: 53 49 4c 5f 49 31 38 4e 0a 23 20 69 6e 63 6c 75 SIL_I18N.# inclu
0c90: 64 65 20 3c 6c 6f 63 61 6c 65 2e 68 3e 0a 23 20 de <locale.h>.#
0ca0: 69 6e 63 6c 75 64 65 20 3c 6c 61 6e 67 69 6e 66 include <langinf
0cb0: 6f 2e 68 3e 0a 23 65 6e 64 69 66 0a 23 69 66 6e o.h>.#endif.#ifn
0cc0: 64 65 66 20 43 4f 44 45 53 45 54 0a 23 20 75 6e def CODESET.# un
0cd0: 64 65 66 20 46 4f 53 53 49 4c 5f 49 31 38 4e 0a def FOSSIL_I18N.
0ce0: 23 20 64 65 66 69 6e 65 20 46 4f 53 53 49 4c 5f # define FOSSIL_
0cf0: 49 31 38 4e 20 30 0a 23 65 6e 64 69 66 0a I18N 0.#endif.