Documentation Source Text

Hex Artifact Content
Login

Artifact 46f7cf535d7f48f153849950e136f259d80e6227:


0000: 3c 74 69 74 6c 65 3e 53 51 4c 69 74 65 20 44 6f  <title>SQLite Do
0010: 77 6e 6c 6f 61 64 20 50 61 67 65 3c 2f 74 69 74  wnload Page</tit
0020: 6c 65 3e 0a 0a 3c 68 32 3e 53 51 4c 69 74 65 20  le>..<h2>SQLite 
0030: 44 6f 77 6e 6c 6f 61 64 20 50 61 67 65 3c 2f 68  Download Page</h
0040: 32 3e 0a 3c 74 61 62 6c 65 20 77 69 64 74 68 3d  2>.<table width=
0050: 22 31 30 30 25 22 20 63 65 6c 6c 70 61 64 64 69  "100%" cellpaddi
0060: 6e 67 3d 22 35 22 20 63 65 6c 6c 73 70 61 63 69  ng="5" cellspaci
0070: 6e 67 3d 22 30 22 3e 0a 0a 3c 74 63 6c 3e 0a 68  ng="0">..<tcl>.h
0080: 64 5f 6b 65 79 77 6f 72 64 73 20 7b 64 6f 77 6e  d_keywords {down
0090: 6c 6f 61 64 20 70 61 67 65 7d 0a 73 65 74 20 6e  load page}.set n
00a0: 44 6f 77 6e 6c 6f 61 64 20 30 0a 73 65 74 20 42  Download 0.set B
00b0: 47 20 7b 7d 0a 70 72 6f 63 20 50 72 6f 64 75 63  G {}.proc Produc
00c0: 74 20 7b 70 61 74 74 65 72 6e 20 64 65 73 63 20  t {pattern desc 
00d0: 7b 66 72 61 67 20 7b 7d 7d 7d 20 7b 0a 20 20 72  {frag {}}} {.  r
00e0: 65 67 73 75 62 20 56 56 56 20 24 70 61 74 74 65  egsub VVV $patte
00f0: 72 6e 20 7b 2a 7d 20 70 33 0a 20 20 72 65 67 73  rn {*} p3.  regs
0100: 75 62 20 44 41 54 45 20 24 70 33 20 7b 32 30 2a  ub DATE $p3 {20*
0110: 7d 20 70 33 0a 20 20 72 65 67 73 75 62 20 59 45  } p3.  regsub YE
0120: 41 52 20 24 70 33 20 7b 32 30 5b 31 33 34 5d 5b  AR $p3 {20[134][
0130: 30 2d 39 5d 7d 20 70 33 0a 20 20 72 65 67 73 75  0-9]} p3.  regsu
0140: 62 20 56 56 56 20 24 70 61 74 74 65 72 6e 20 7b  b VVV $pattern {
0150: 28 33 30 5c 64 7b 35 7d 29 7d 20 70 61 74 74 65  (30\d{5})} patte
0160: 72 6e 0a 20 20 72 65 67 73 75 62 20 44 41 54 45  rn.  regsub DATE
0170: 20 24 70 61 74 74 65 72 6e 20 7b 28 5c 64 7b 31   $pattern {(\d{1
0180: 32 7d 29 7d 20 70 61 74 74 65 72 6e 0a 20 20 72  2})} pattern.  r
0190: 65 67 73 75 62 20 59 45 41 52 20 24 70 61 74 74  egsub YEAR $patt
01a0: 65 72 6e 20 7b 5c 64 7b 34 7d 7d 20 70 61 74 74  ern {\d{4}} patt
01b0: 65 72 6e 0a 20 20 73 65 74 20 70 32 20 5b 73 74  ern.  set p2 [st
01c0: 72 69 6e 67 20 6d 61 70 20 7b 2a 20 2e 2a 7d 20  ring map {* .*} 
01d0: 24 70 61 74 74 65 72 6e 5d 0a 20 20 73 65 74 20  $pattern].  set 
01e0: 66 6c 69 73 74 20 5b 67 6c 6f 62 20 2d 6e 6f 63  flist [glob -noc
01f0: 6f 6d 70 6c 61 69 6e 20 24 70 33 5d 0a 20 20 66  omplain $p3].  f
0200: 6f 72 65 61 63 68 20 66 69 6c 65 20 5b 6c 73 6f  oreach file [lso
0210: 72 74 20 2d 64 69 63 74 20 24 66 6c 69 73 74 5d  rt -dict $flist]
0220: 20 7b 0a 20 20 20 20 69 66 20 7b 21 5b 72 65 67   {.    if {![reg
0230: 65 78 70 20 5e 24 70 32 5c 24 20 24 66 69 6c 65  exp ^$p2\$ $file
0240: 20 61 6c 6c 20 76 65 72 73 69 6f 6e 5d 7d 20 63   all version]} c
0250: 6f 6e 74 69 6e 75 65 0a 20 20 20 20 69 66 20 7b  ontinue.    if {
0260: 5b 72 65 67 65 78 70 20 7b 5e 28 5c 64 5c 64 5c  [regexp {^(\d\d\
0270: 64 5c 64 29 28 5c 64 5c 64 29 28 5c 64 5c 64 29  d\d)(\d\d)(\d\d)
0280: 28 5c 64 5c 64 29 28 5c 64 5c 64 29 24 7d 20 24  (\d\d)(\d\d)$} $
0290: 76 65 72 73 69 6f 6e 20 5c 0a 20 20 20 20 20 20  version \.      
02a0: 20 20 20 20 20 61 6c 6c 20 79 65 61 72 20 6d 6f       all year mo
02b0: 6e 74 68 20 64 61 79 20 68 6f 75 72 20 6d 69 6e  nth day hour min
02c0: 5d 7d 20 7b 0a 20 20 20 20 20 20 73 65 74 20 76  ]} {.      set v
02d0: 65 72 73 69 6f 6e 20 22 24 79 65 61 72 2d 24 6d  ersion "$year-$m
02e0: 6f 6e 74 68 2d 24 64 61 79 20 24 68 6f 75 72 3a  onth-$day $hour:
02f0: 24 6d 69 6e 20 55 54 43 22 0a 20 20 20 20 7d 20  $min UTC".    } 
0300: 65 6c 73 65 69 66 20 7b 5b 72 65 67 65 78 70 20  elseif {[regexp 
0310: 7b 5e 33 30 28 5c 64 29 28 5c 64 5c 64 29 28 5c  {^30(\d)(\d\d)(\
0320: 64 5c 64 29 24 7d 20 24 76 65 72 73 69 6f 6e 20  d\d)$} $version 
0330: 5c 0a 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c  \.           all
0340: 20 6d 61 6a 6f 72 20 6d 69 6e 6f 72 20 70 61 74   major minor pat
0350: 63 68 5d 7d 20 7b 0a 20 20 20 20 20 20 73 63 61  ch]} {.      sca
0360: 6e 20 24 6d 61 6a 6f 72 20 25 64 20 6d 31 0a 20  n $major %d m1. 
0370: 20 20 20 20 20 73 63 61 6e 20 24 6d 69 6e 6f 72       scan $minor
0380: 20 25 64 20 6d 32 0a 20 20 20 20 20 20 73 63 61   %d m2.      sca
0390: 6e 20 24 70 61 74 63 68 20 25 64 20 6d 33 0a 20  n $patch %d m3. 
03a0: 20 20 20 20 20 73 65 74 20 76 65 72 73 69 6f 6e       set version
03b0: 20 33 2e 24 6d 31 2e 24 6d 32 0a 20 20 20 20 20   3.$m1.$m2.     
03c0: 20 69 66 20 7b 24 70 61 74 63 68 3e 30 7d 20 7b   if {$patch>0} {
03d0: 0a 20 20 20 20 20 20 20 20 61 70 70 65 6e 64 20  .        append 
03e0: 76 65 72 73 69 6f 6e 20 2e 24 6d 33 0a 20 20 20  version .$m3.   
03f0: 20 20 20 7d 0a 20 20 20 20 7d 0a 20 20 20 20 73     }.    }.    s
0400: 65 74 20 73 69 7a 65 20 5b 66 69 6c 65 20 73 69  et size [file si
0410: 7a 65 20 24 66 69 6c 65 5d 0a 20 20 20 20 73 65  ze $file].    se
0420: 74 20 73 68 61 31 73 75 6d 20 5b 6c 69 6e 64 65  t sha1sum [linde
0430: 78 20 5b 65 78 65 63 20 73 68 61 31 73 75 6d 20  x [exec sha1sum 
0440: 24 66 69 6c 65 5d 20 30 5d 0a 20 20 20 20 73 65  $file] 0].    se
0450: 74 20 75 6e 69 74 73 20 62 79 74 65 73 0a 20 20  t units bytes.  
0460: 20 20 69 66 20 7b 24 73 69 7a 65 3e 31 30 32 34    if {$size>1024
0470: 2a 31 30 32 34 7d 20 7b 0a 20 20 20 20 20 20 73  *1024} {.      s
0480: 65 74 20 73 69 7a 65 20 5b 66 6f 72 6d 61 74 20  et size [format 
0490: 25 2e 32 66 20 5b 65 78 70 72 20 7b 24 73 69 7a  %.2f [expr {$siz
04a0: 65 2f 28 31 30 32 34 2e 30 2a 31 30 32 34 2e 30  e/(1024.0*1024.0
04b0: 29 7d 5d 5d 0a 20 20 20 20 20 20 73 65 74 20 75  )}]].      set u
04c0: 6e 69 74 73 20 4d 69 42 0a 20 20 20 20 7d 20 65  nits MiB.    } e
04d0: 6c 73 65 69 66 20 7b 24 73 69 7a 65 3e 31 30 32  lseif {$size>102
04e0: 34 7d 20 7b 0a 20 20 20 20 20 20 73 65 74 20 73  4} {.      set s
04f0: 69 7a 65 20 5b 66 6f 72 6d 61 74 20 25 2e 32 66  ize [format %.2f
0500: 20 5b 65 78 70 72 20 7b 24 73 69 7a 65 2f 28 31   [expr {$size/(1
0510: 30 32 34 2e 30 29 7d 5d 5d 0a 20 20 20 20 20 20  024.0)}]].      
0520: 73 65 74 20 75 6e 69 74 73 20 4b 69 42 0a 20 20  set units KiB.  
0530: 20 20 7d 0a 20 20 20 20 67 6c 6f 62 61 6c 20 70    }.    global p
0540: 65 6e 64 69 6e 67 5f 68 65 61 64 69 6e 67 20 70  ending_heading p
0550: 65 6e 64 69 6e 67 5f 74 61 67 20 42 47 0a 20 20  ending_tag BG.  
0560: 20 20 69 66 20 7b 24 42 47 21 3d 22 22 7d 20 7b    if {$BG!=""} {
0570: 0a 20 20 20 20 20 20 73 65 74 20 74 72 20 22 3c  .      set tr "<
0580: 74 72 20 62 67 63 6f 6c 6f 72 3d 5c 22 24 42 47  tr bgcolor=\"$BG
0590: 5c 22 3e 22 0a 20 20 20 20 7d 20 65 6c 73 65 20  \">".    } else 
05a0: 7b 0a 20 20 20 20 20 20 73 65 74 20 74 72 20 22  {.      set tr "
05b0: 3c 74 72 3e 22 0a 20 20 20 20 7d 0a 20 20 20 20  <tr>".    }.    
05c0: 69 66 20 7b 24 70 65 6e 64 69 6e 67 5f 68 65 61  if {$pending_hea
05d0: 64 69 6e 67 21 3d 22 22 7d 20 7b 0a 20 20 20 20  ding!=""} {.    
05e0: 20 20 69 66 20 7b 24 70 65 6e 64 69 6e 67 5f 74    if {$pending_t
05f0: 61 67 21 3d 22 22 7d 20 7b 0a 20 20 20 20 20 20  ag!=""} {.      
0600: 20 20 73 65 74 20 74 67 20 22 3c 61 20 6e 61 6d    set tg "<a nam
0610: 65 3d 5c 22 24 70 65 6e 64 69 6e 67 5f 74 61 67  e=\"$pending_tag
0620: 5c 22 3e 3c 2f 61 3e 22 0a 20 20 20 20 20 20 20  \"></a>".       
0630: 20 73 65 74 20 70 65 6e 64 69 6e 67 5f 74 61 67   set pending_tag
0640: 20 7b 7d 0a 20 20 20 20 20 20 7d 20 65 6c 73 65   {}.      } else
0650: 20 7b 0a 20 20 20 20 20 20 20 20 73 65 74 20 74   {.        set t
0660: 67 20 22 22 0a 20 20 20 20 20 20 7d 0a 20 20 20  g "".      }.   
0670: 20 20 20 68 64 5f 70 75 74 73 20 22 24 74 72 3c     hd_puts "$tr<
0680: 74 64 20 63 6f 6c 73 70 61 6e 3d 5c 22 34 5c 22  td colspan=\"4\"
0690: 3e 24 74 67 3c 62 3e 24 70 65 6e 64 69 6e 67 5f  >$tg<b>$pending_
06a0: 68 65 61 64 69 6e 67 3c 2f 62 3e 3c 2f 74 64 3e  heading</b></td>
06b0: 3c 2f 74 72 3e 5c 6e 22 0a 20 20 20 20 20 20 73  </tr>\n".      s
06c0: 65 74 20 70 65 6e 64 69 6e 67 5f 68 65 61 64 69  et pending_headi
06d0: 6e 67 20 7b 7d 0a 20 20 20 20 7d 0a 20 20 20 20  ng {}.    }.    
06e0: 68 64 5f 70 75 74 73 20 22 24 74 72 3c 74 64 20  hd_puts "$tr<td 
06f0: 77 69 64 74 68 3d 5c 22 31 30 5c 22 3e 3c 2f 74  width=\"10\"></t
0700: 64 3e 22 0a 20 20 20 20 68 64 5f 70 75 74 73 20  d>".    hd_puts 
0710: 22 3c 74 64 20 76 61 6c 69 67 6e 3d 5c 22 74 6f  "<td valign=\"to
0720: 70 5c 22 20 61 6c 69 67 6e 3d 5c 22 72 69 67 68  p\" align=\"righ
0730: 74 5c 22 3e 22 0a 20 20 20 20 69 66 20 7b 24 66  t\">".    if {$f
0740: 72 61 67 21 3d 22 22 7d 20 7b 0a 20 20 20 20 20  rag!=""} {.     
0750: 20 65 76 61 6c 20 68 64 5f 66 72 61 67 6d 65 6e   eval hd_fragmen
0760: 74 20 24 66 72 61 67 0a 20 20 20 20 20 20 73 65  t $frag.      se
0770: 74 20 66 72 61 67 20 7b 7d 0a 20 20 20 20 7d 0a  t frag {}.    }.
0780: 20 20 20 20 68 64 5f 70 75 74 73 20 22 3c 61 20      hd_puts "<a 
0790: 68 72 65 66 3d 5c 22 24 66 69 6c 65 5c 22 3e 5b  href=\"$file\">[
07a0: 66 69 6c 65 20 74 61 69 6c 20 24 66 69 6c 65 5d  file tail $file]
07b0: 3c 2f 61 3e 3c 62 72 3e 28 24 73 69 7a 65 20 24  </a><br>($size $
07c0: 75 6e 69 74 73 29 3c 2f 74 64 3e 5c 6e 22 0a 20  units)</td>\n". 
07d0: 20 20 20 68 64 5f 70 75 74 73 20 22 3c 74 64 20     hd_puts "<td 
07e0: 77 69 64 74 68 3d 5c 22 35 5c 22 3e 3c 2f 74 64  width=\"5\"></td
07f0: 3e 22 0a 20 20 20 20 72 65 67 73 75 62 20 2d 61  >".    regsub -a
0800: 6c 6c 20 56 45 52 53 49 4f 4e 20 24 64 65 73 63  ll VERSION $desc
0810: 20 24 76 65 72 73 69 6f 6e 20 64 32 0a 20 20 20   $version d2.   
0820: 20 68 64 5f 70 75 74 73 20 22 5c 6e 3c 74 64 20   hd_puts "\n<td 
0830: 76 61 6c 69 67 6e 3d 5c 22 74 6f 70 5c 22 3e 22  valign=\"top\">"
0840: 0a 20 20 20 20 68 64 5f 72 65 73 6f 6c 76 65 20  .    hd_resolve 
0850: 5b 73 74 72 69 6e 67 20 74 72 69 6d 20 24 64 32  [string trim $d2
0860: 5d 0a 20 20 20 20 68 64 5f 70 75 74 73 20 22 3c  ].    hd_puts "<
0870: 62 72 3e 28 73 68 61 31 3a 20 24 73 68 61 31 73  br>(sha1: $sha1s
0880: 75 6d 29 3c 2f 74 64 3e 3c 2f 74 72 3e 5c 6e 22  um)</td></tr>\n"
0890: 0a 20 20 20 20 69 6e 63 72 20 3a 3a 6e 44 6f 77  .    incr ::nDow
08a0: 6e 6c 6f 61 64 0a 20 20 7d 0a 20 20 69 66 20 7b  nload.  }.  if {
08b0: 24 66 72 61 67 21 3d 22 22 7d 20 7b 0a 20 20 20  $frag!=""} {.   
08c0: 20 65 76 61 6c 20 68 64 5f 6b 65 79 77 6f 72 64   eval hd_keyword
08d0: 73 20 5b 6c 72 61 6e 67 65 20 24 66 72 61 67 20  s [lrange $frag 
08e0: 31 20 65 6e 64 5d 0a 20 20 7d 0a 7d 0a 63 64 20  1 end].  }.}.cd 
08f0: 24 3a 3a 44 45 53 54 0a 0a 70 72 6f 63 20 48 65  $::DEST..proc He
0900: 61 64 69 6e 67 20 7b 74 69 74 6c 65 20 7b 74 61  ading {title {ta
0910: 67 20 7b 7d 7d 20 7b 62 67 63 6f 6c 6f 72 20 7b  g {}} {bgcolor {
0920: 7d 7d 7d 20 7b 0a 20 20 73 65 74 20 3a 3a 70 65  }}} {.  set ::pe
0930: 6e 64 69 6e 67 5f 68 65 61 64 69 6e 67 20 24 74  nding_heading $t
0940: 69 74 6c 65 0a 20 20 73 65 74 20 3a 3a 70 65 6e  itle.  set ::pen
0950: 64 69 6e 67 5f 74 61 67 20 24 74 61 67 0a 20 20  ding_tag $tag.  
0960: 73 65 74 20 3a 3a 42 47 20 24 62 67 63 6f 6c 6f  set ::BG $bgcolo
0970: 72 0a 20 20 23 20 68 64 5f 70 75 74 73 20 22 3c  r.  # hd_puts "<
0980: 74 72 3e 3c 74 64 20 63 6f 6c 73 70 61 6e 3d 34  tr><td colspan=4
0990: 3e 3c 62 69 67 3e 3c 62 3e 24 74 69 74 6c 65 3c  ><big><b>$title<
09a0: 2f 62 3e 3c 2f 62 69 67 3e 3c 2f 74 64 3e 3c 2f  /b></big></td></
09b0: 74 72 3e 22 0a 7d 0a 0a 73 65 74 20 43 61 75 74  tr>".}..set Caut
09c0: 69 6f 6e 20 23 66 66 66 31 63 38 0a 0a 48 65 61  ion #fff1c8..Hea
09d0: 64 69 6e 67 20 7b 50 72 65 2d 72 65 6c 65 61 73  ding {Pre-releas
09e0: 65 20 53 6e 61 70 73 68 6f 74 73 7d 20 7b 7d 20  e Snapshots} {} 
09f0: 24 43 61 75 74 69 6f 6e 0a 0a 0a 50 72 6f 64 75  $Caution...Produ
0a00: 63 74 20 7b 73 6e 61 70 73 68 6f 74 2f 73 71 6c  ct {snapshot/sql
0a10: 69 74 65 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  ite-amalgamation
0a20: 2d 44 41 54 45 2e 7a 69 70 7d 20 7b 0a 20 20 54  -DATE.zip} {.  T
0a30: 68 69 73 20 69 73 20 61 20 73 6e 61 70 73 68 6f  his is a snapsho
0a40: 74 20 28 61 73 20 6f 66 20 56 45 52 53 49 4f 4e  t (as of VERSION
0a50: 29 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e 74  ) of the current
0a60: 20 53 51 4c 69 74 65 20 63 6f 64 65 20 75 6e 64   SQLite code und
0a70: 65 72 20 0a 20 20 64 65 76 65 6c 6f 70 6d 65 6e  er .  developmen
0a80: 74 2e 20 20 55 73 65 20 74 68 69 73 20 73 6e 61  t.  Use this sna
0a90: 70 73 68 6f 74 20 66 6f 72 20 74 65 73 74 69 6e  pshot for testin
0aa0: 67 20 6f 6e 6c 79 2e 20 20 54 68 69 73 20 69 73  g only.  This is
0ab0: 20 6e 6f 74 20 61 20 72 65 6c 65 61 73 65 2e 0a   not a release..
0ac0: 20 20 54 68 69 73 20 5a 49 50 20 61 72 63 68 69    This ZIP archi
0ad0: 76 65 20 63 6f 6e 74 61 69 6e 73 20 61 6c 6c 20  ve contains all 
0ae0: 70 72 65 70 72 6f 63 65 73 73 65 64 20 43 20 63  preprocessed C c
0af0: 6f 64 65 20 63 6f 6d 62 69 6e 65 64 20 69 6e 74  ode combined int
0b00: 6f 20 61 0a 20 20 73 69 6e 67 6c 65 20 73 6f 75  o a.  single sou
0b10: 72 63 65 20 66 69 6c 65 20 28 74 68 65 20 5b 61  rce file (the [a
0b20: 6d 61 6c 67 61 6d 61 74 69 6f 6e 5d 29 2e 0a 7d  malgamation])..}
0b30: 0a 50 72 6f 64 75 63 74 20 7b 73 6e 61 70 73 68  .Product {snapsh
0b40: 6f 74 2f 73 71 6c 69 74 65 2d 61 6d 61 6c 67 61  ot/sqlite-amalga
0b50: 6d 61 74 69 6f 6e 33 32 6b 2d 44 41 54 45 2e 7a  mation32k-DATE.z
0b60: 69 70 7d 20 7b 0a 20 20 54 68 69 73 20 69 73 20  ip} {.  This is 
0b70: 61 20 73 6e 61 70 73 68 6f 74 20 28 61 73 20 6f  a snapshot (as o
0b80: 66 20 56 45 52 53 49 4f 4e 29 20 6f 66 20 74 68  f VERSION) of th
0b90: 65 20 63 75 72 72 65 6e 74 20 53 51 4c 69 74 65  e current SQLite
0ba0: 20 63 6f 64 65 20 75 6e 64 65 72 20 0a 20 20 64   code under .  d
0bb0: 65 76 65 6c 6f 70 6d 65 6e 74 2e 20 20 54 68 65  evelopment.  The
0bc0: 20 63 6f 64 65 20 69 73 20 73 70 6c 69 74 20 69   code is split i
0bd0: 6e 74 6f 20 61 20 73 6d 61 6c 6c 20 6e 75 6d 62  nto a small numb
0be0: 65 72 20 6f 66 20 73 6f 75 72 63 65 20 66 69 6c  er of source fil
0bf0: 65 73 2c 0a 20 20 73 75 63 68 20 74 68 61 74 20  es,.  such that 
0c00: 6e 6f 20 73 69 6e 67 6c 65 20 73 6f 75 72 63 65  no single source
0c10: 20 66 69 6c 65 20 69 73 20 6c 6f 6e 67 65 72 20   file is longer 
0c20: 74 68 61 6e 20 33 32 37 36 37 20 6c 69 6e 65 73  than 32767 lines
0c30: 20 6f 66 20 63 6f 64 65 2e 0a 20 20 55 73 65 20   of code..  Use 
0c40: 74 68 69 73 20 73 6e 61 70 73 68 6f 74 20 66 6f  this snapshot fo
0c50: 72 20 74 65 73 74 69 6e 67 20 6f 6e 6c 79 2e 20  r testing only. 
0c60: 20 54 68 69 73 20 69 73 20 6e 6f 74 20 61 20 72   This is not a r
0c70: 65 6c 65 61 73 65 2e 0a 7d 0a 50 72 6f 64 75 63  elease..}.Produc
0c80: 74 20 7b 73 6e 61 70 73 68 6f 74 2f 73 71 6c 69  t {snapshot/sqli
0c90: 74 65 2d 74 65 61 2d 44 41 54 45 2e 7a 69 70 7d  te-tea-DATE.zip}
0ca0: 20 7b 0a 20 20 54 68 69 73 20 69 73 20 61 20 73   {.  This is a s
0cb0: 6e 61 70 73 68 6f 74 20 28 61 73 20 6f 66 20 56  napshot (as of V
0cc0: 45 52 53 49 4f 4e 29 20 6f 66 20 74 68 65 20 63  ERSION) of the c
0cd0: 75 72 72 65 6e 74 20 53 51 4c 69 74 65 20 63 6f  urrent SQLite co
0ce0: 64 65 20 75 6e 64 65 72 20 0a 20 20 64 65 76 65  de under .  deve
0cf0: 6c 6f 70 6d 65 6e 74 2c 20 70 61 63 6b 61 67 65  lopment, package
0d00: 64 20 61 6e 64 20 72 65 61 64 79 20 74 6f 20 62  d and ready to b
0d10: 75 69 6c 64 20 75 73 69 6e 67 20 74 68 65 0a 20  uild using the. 
0d20: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f   <a href="http:/
0d30: 2f 77 77 77 2e 74 63 6c 2e 74 6b 2f 64 6f 63 2f  /www.tcl.tk/doc/
0d40: 74 65 61 2f 22 3e 54 63 6c 20 45 78 74 65 6e 73  tea/">Tcl Extens
0d50: 69 6f 6e 20 41 72 63 68 69 74 65 63 74 75 72 65  ion Architecture
0d60: 20 28 54 45 41 29 3c 2f 61 3e 2e 0a 20 20 55 73   (TEA)</a>..  Us
0d70: 65 20 74 68 69 73 20 73 6e 61 70 73 68 6f 74 20  e this snapshot 
0d80: 66 6f 72 20 74 65 73 74 69 6e 67 20 6f 6e 6c 79  for testing only
0d90: 2e 20 20 54 68 69 73 20 69 73 20 6e 6f 74 20 61  .  This is not a
0da0: 20 72 65 6c 65 61 73 65 2e 0a 7d 0a 50 72 6f 64   release..}.Prod
0db0: 75 63 74 20 7b 73 6e 61 70 73 68 6f 74 2f 73 71  uct {snapshot/sq
0dc0: 6c 69 74 65 2d 73 68 65 6c 6c 2d 77 69 6e 33 32  lite-shell-win32
0dd0: 2d 78 38 36 2d 44 41 54 45 2e 7a 69 70 7d 20 7b  -x86-DATE.zip} {
0de0: 0a 20 20 54 68 69 73 20 69 73 20 61 20 73 6e 61  .  This is a sna
0df0: 70 73 68 6f 74 20 28 61 73 20 6f 66 20 56 45 52  pshot (as of VER
0e00: 53 49 4f 4e 29 20 62 75 69 6c 64 20 6f 66 20 74  SION) build of t
0e10: 68 65 20 0a 20 20 3c 61 20 68 72 65 66 3d 22 73  he .  <a href="s
0e20: 71 6c 69 74 65 2e 68 74 6d 6c 22 3e 73 71 6c 69  qlite.html">sqli
0e30: 74 65 33 2e 65 78 65 20 63 6f 6d 6d 61 6e 64 2d  te3.exe command-
0e40: 6c 69 6e 65 20 73 68 65 6c 6c 3c 2f 61 3e 0a 20  line shell</a>. 
0e50: 20 73 68 65 6c 6c 20 70 72 6f 67 72 61 6d 20 66   shell program f
0e60: 6f 72 20 33 32 2d 62 69 74 20 77 69 6e 64 6f 77  or 32-bit window
0e70: 73 2e 0a 7d 0a 50 72 6f 64 75 63 74 20 7b 73 6e  s..}.Product {sn
0e80: 61 70 73 68 6f 74 2f 73 71 6c 69 74 65 2d 73 68  apshot/sqlite-sh
0e90: 65 6c 6c 2d 77 69 6e 36 34 2d 78 36 34 2d 44 41  ell-win64-x64-DA
0ea0: 54 45 2e 7a 69 70 7d 20 7b 0a 20 20 54 68 69 73  TE.zip} {.  This
0eb0: 20 69 73 20 61 20 73 6e 61 70 73 68 6f 74 20 28   is a snapshot (
0ec0: 61 73 20 6f 66 20 56 45 52 53 49 4f 4e 29 20 62  as of VERSION) b
0ed0: 75 69 6c 64 20 6f 66 20 74 68 65 20 0a 20 20 3c  uild of the .  <
0ee0: 61 20 68 72 65 66 3d 22 73 71 6c 69 74 65 2e 68  a href="sqlite.h
0ef0: 74 6d 6c 22 3e 73 71 6c 69 74 65 33 2e 65 78 65  tml">sqlite3.exe
0f00: 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 73 68   command-line sh
0f10: 65 6c 6c 3c 2f 61 3e 0a 20 20 73 68 65 6c 6c 20  ell</a>.  shell 
0f20: 70 72 6f 67 72 61 6d 20 66 6f 72 20 36 34 2d 62  program for 64-b
0f30: 69 74 20 77 69 6e 64 6f 77 73 2e 0a 7d 0a 0a 50  it windows..}..P
0f40: 72 6f 64 75 63 74 20 7b 73 6e 61 70 73 68 6f 74  roduct {snapshot
0f50: 2f 73 71 6c 69 74 65 2d 77 69 6e 72 74 38 31 2d  /sqlite-winrt81-
0f60: 44 41 54 45 2e 76 73 69 78 7d 20 7b 0a 20 20 54  DATE.vsix} {.  T
0f70: 68 69 73 20 69 73 20 61 20 73 6e 61 70 73 68 6f  his is a snapsho
0f80: 74 20 28 61 73 20 6f 66 20 56 45 52 53 49 4f 4e  t (as of VERSION
0f90: 29 20 66 6f 72 0a 20 20 61 20 63 6f 6d 70 6c 65  ) for.  a comple
0fa0: 74 65 20 56 53 49 58 20 70 61 63 6b 61 67 65 20  te VSIX package 
0fb0: 77 69 74 68 20 61 6e 20 65 78 74 65 6e 73 69 6f  with an extensio
0fc0: 6e 20 53 44 4b 20 61 6e 64 20 61 6c 6c 20 6f 74  n SDK and all ot
0fd0: 68 65 72 20 63 6f 6d 70 6f 6e 65 6e 74 73 0a 20  her components. 
0fe0: 20 6e 65 65 64 65 64 20 74 6f 20 75 73 65 20 53   needed to use S
0ff0: 51 4c 69 74 65 20 66 6f 72 20 57 69 6e 52 54 20  QLite for WinRT 
1000: 38 2e 31 20 61 70 70 6c 69 63 61 74 69 6f 6e 20  8.1 application 
1010: 64 65 76 65 6c 6f 70 6d 65 6e 74 20 77 69 74 68  development with
1020: 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 0a 20   Visual Studio. 
1030: 20 32 30 31 33 2e 20 20 54 68 69 73 20 69 73 20   2013.  This is 
1040: 6e 6f 74 20 61 20 72 65 6c 65 61 73 65 2e 0a 7d  not a release..}
1050: 0a 0a 0a 48 65 61 64 69 6e 67 20 7b 53 6f 75 72  ...Heading {Sour
1060: 63 65 20 43 6f 64 65 7d 0a 0a 50 72 6f 64 75 63  ce Code}..Produc
1070: 74 20 7b 59 45 41 52 2f 73 71 6c 69 74 65 2d 61  t {YEAR/sqlite-a
1080: 6d 61 6c 67 61 6d 61 74 69 6f 6e 2d 56 56 56 2e  malgamation-VVV.
1090: 7a 69 70 7d 20 7b 0a 20 20 54 68 69 73 20 5a 49  zip} {.  This ZI
10a0: 50 20 61 72 63 68 69 76 65 20 63 6f 6e 74 61 69  P archive contai
10b0: 6e 73 20 61 6c 6c 20 43 20 73 6f 75 72 63 65 20  ns all C source 
10c0: 63 6f 64 65 20 66 6f 72 20 53 51 4c 69 74 65 20  code for SQLite 
10d0: 56 45 52 53 49 4f 4e 0a 20 20 63 6f 6d 62 69 6e  VERSION.  combin
10e0: 65 64 20 69 6e 74 6f 20 61 0a 20 20 73 69 6e 67  ed into a.  sing
10f0: 6c 65 20 73 6f 75 72 63 65 20 66 69 6c 65 20 28  le source file (
1100: 74 68 65 20 5b 61 6d 61 6c 67 61 6d 61 74 69 6f  the [amalgamatio
1110: 6e 5d 29 2e 0a 7d 0a 0a 50 72 6f 64 75 63 74 20  n])..}..Product 
1120: 7b 59 45 41 52 2f 73 71 6c 69 74 65 2d 61 6d 61  {YEAR/sqlite-ama
1130: 6c 67 61 6d 61 74 69 6f 6e 33 32 6b 2d 56 56 56  lgamation32k-VVV
1140: 2e 7a 69 70 7d 20 7b 0a 20 20 54 68 69 73 20 5a  .zip} {.  This Z
1150: 49 50 20 61 72 63 68 69 76 65 20 63 6f 6e 74 61  IP archive conta
1160: 69 6e 73 20 61 6c 6c 20 43 20 73 6f 75 72 63 65  ins all C source
1170: 20 63 6f 64 65 20 66 6f 72 20 53 51 4c 69 74 65   code for SQLite
1180: 20 56 45 52 53 49 4f 4e 0a 20 20 63 6f 6d 62 69   VERSION.  combi
1190: 6e 65 64 20 69 6e 74 6f 20 61 20 73 6d 61 6c 6c  ned into a small
11a0: 20 6e 75 6d 62 65 72 20 6f 66 20 73 6f 75 72 63   number of sourc
11b0: 65 20 66 69 6c 65 73 2c 20 77 68 65 72 65 20 6e  e files, where n
11c0: 6f 20 73 6f 75 72 63 65 20 66 69 6c 65 0a 20 20  o source file.  
11d0: 69 73 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 33  is longer than 3
11e0: 32 37 36 37 20 6c 69 6e 65 73 20 6f 66 20 63 6f  2767 lines of co
11f0: 64 65 2e 0a 7d 0a 0a 50 72 6f 64 75 63 74 20 7b  de..}..Product {
1200: 59 45 41 52 2f 73 71 6c 69 74 65 2d 61 75 74 6f  YEAR/sqlite-auto
1210: 63 6f 6e 66 2d 56 56 56 2e 74 61 72 2e 67 7a 7d  conf-VVV.tar.gz}
1220: 20 7b 0a 20 20 41 20 74 61 72 62 61 6c 6c 20 63   {.  A tarball c
1230: 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 5b 61  ontaining the [a
1240: 6d 61 6c 67 61 6d 61 74 69 6f 6e 5d 0a 20 20 66  malgamation].  f
1250: 6f 72 20 53 51 4c 69 74 65 20 56 45 52 53 49 4f  or SQLite VERSIO
1260: 4e 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 20  N together with 
1270: 61 6e 20 63 6f 6e 66 69 67 75 72 65 20 73 63 72  an configure scr
1280: 69 70 74 20 61 6e 64 20 6d 61 6b 65 66 69 6c 65  ipt and makefile
1290: 0a 20 20 66 6f 72 20 62 75 69 6c 64 69 6e 67 20  .  for building 
12a0: 69 74 2e 20 20 54 68 69 73 20 74 61 72 62 61 6c  it.  This tarbal
12b0: 6c 20 61 6c 73 6f 20 63 6f 6e 74 61 69 6e 73 20  l also contains 
12c0: 69 6e 20 74 68 65 20 22 74 65 61 22 20 73 75 62  in the "tea" sub
12d0: 64 69 72 65 63 74 6f 72 79 0a 20 20 61 20 73 65  directory.  a se
12e0: 70 61 72 61 74 65 20 63 6f 6e 66 69 67 75 72 65  parate configure
12f0: 20 73 63 72 69 70 74 20 61 6e 64 20 6d 61 6b 65   script and make
1300: 66 69 6c 65 20 63 6f 6d 70 61 74 69 62 6c 65 20  file compatible 
1310: 77 69 74 68 20 74 68 65 0a 20 20 3c 61 20 68 72  with the.  <a hr
1320: 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e 74  ef="http://www.t
1330: 63 6c 2e 74 6b 2f 64 6f 63 2f 74 65 61 2f 22 3e  cl.tk/doc/tea/">
1340: 54 63 6c 20 45 78 74 65 6e 73 69 6f 6e 0a 20 20  Tcl Extension.  
1350: 41 72 63 68 69 74 65 63 74 75 72 65 20 28 54 45  Architecture (TE
1360: 41 29 3c 2f 61 3e 20 66 6f 72 20 62 75 69 6c 64  A)</a> for build
1370: 69 6e 67 20 74 68 65 20 54 43 4c 20 62 69 6e 64  ing the TCL bind
1380: 69 6e 67 73 20 74 6f 20 53 51 4c 69 74 65 2e 0a  ings to SQLite..
1390: 7d 20 7b 61 6d 61 6c 67 74 61 72 62 61 6c 6c 20  } {amalgtarball 
13a0: 7b 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 20 74 61  {amalgamation ta
13b0: 72 62 61 6c 6c 7d 7d 0a 0a 0a 50 72 6f 64 75 63  rball}}...Produc
13c0: 74 20 7b 59 45 41 52 2f 73 71 6c 69 74 65 2d 74  t {YEAR/sqlite-t
13d0: 65 61 2d 56 56 56 2e 74 61 72 2e 67 7a 7d 20 7b  ea-VVV.tar.gz} {
13e0: 0a 20 20 41 20 74 61 72 62 61 6c 6c 20 6f 66 20  .  A tarball of 
13f0: 74 68 65 20 5b 61 6d 61 6c 67 61 6d 61 74 69 6f  the [amalgamatio
1400: 6e 5d 20 74 6f 67 65 74 68 65 72 20 77 69 74 68  n] together with
1410: 20 61 0a 20 20 3c 61 20 68 72 65 66 3d 22 68 74   a.  <a href="ht
1420: 74 70 3a 2f 2f 77 77 77 2e 74 63 6c 2e 74 6b 2f  tp://www.tcl.tk/
1430: 64 6f 63 2f 74 65 61 2f 22 3e 54 63 6c 20 45 78  doc/tea/">Tcl Ex
1440: 74 65 6e 73 69 6f 6e 0a 20 20 41 72 63 68 69 74  tension.  Archit
1450: 65 63 74 75 72 65 20 28 54 45 41 29 3c 2f 61 3e  ecture (TEA)</a>
1460: 0a 20 20 63 6f 6d 70 61 74 69 62 6c 65 20 63 6f  .  compatible co
1470: 6e 66 69 67 75 72 65 20 73 63 72 69 70 74 20 61  nfigure script a
1480: 6e 64 20 6d 61 6b 65 66 69 6c 65 2e 0a 7d 20 7b  nd makefile..} {
1490: 74 65 61 74 61 72 62 61 6c 6c 20 7b 54 45 41 20  teatarball {TEA 
14a0: 74 61 72 62 61 6c 6c 7d 7d 0a 0a 48 65 61 64 69  tarball}}..Headi
14b0: 6e 67 20 7b 44 6f 63 75 6d 65 6e 74 61 74 69 6f  ng {Documentatio
14c0: 6e 7d 20 64 6f 63 63 6f 0a 0a 50 72 6f 64 75 63  n} docco..Produc
14d0: 74 20 7b 59 45 41 52 2f 73 71 6c 69 74 65 2d 64  t {YEAR/sqlite-d
14e0: 6f 63 2d 56 56 56 2e 7a 69 70 7d 20 7b 0a 20 20  oc-VVV.zip} {.  
14f0: 54 68 69 73 20 5a 49 50 20 61 72 63 68 69 76 65  This ZIP archive
1500: 20 63 6f 6e 74 61 69 6e 73 20 6d 6f 73 74 20 6f   contains most o
1510: 66 20 74 68 65 20 73 74 61 74 69 63 20 48 54 4d  f the static HTM
1520: 4c 20 66 69 6c 65 73 20 74 68 61 74 0a 20 20 63  L files that.  c
1530: 6f 6d 70 72 69 73 65 20 74 68 69 73 20 77 65 62  omprise this web
1540: 73 69 74 65 2c 20 69 6e 63 6c 75 64 69 6e 67 20  site, including 
1550: 61 6c 6c 20 6f 66 20 74 68 65 20 53 51 4c 20 53  all of the SQL S
1560: 79 6e 74 61 78 20 61 6e 64 20 74 68 65 0a 20 20  yntax and the.  
1570: 43 2f 43 2b 2b 20 69 6e 74 65 72 66 61 63 65 20  C/C++ interface 
1580: 73 70 65 63 73 20 61 6e 64 20 6f 74 68 65 72 20  specs and other 
1590: 6d 69 73 63 65 6c 6c 61 6e 65 6f 75 73 20 64 6f  miscellaneous do
15a0: 63 75 6d 65 6e 74 61 74 69 6f 6e 2e 0a 7d 0a 0a  cumentation..}..
15b0: 48 65 61 64 69 6e 67 20 7b 50 72 65 63 6f 6d 70  Heading {Precomp
15c0: 69 6c 65 64 20 42 69 6e 61 72 69 65 73 20 66 6f  iled Binaries fo
15d0: 72 20 4c 69 6e 75 78 7d 20 6c 69 6e 75 78 0a 0a  r Linux} linux..
15e0: 50 72 6f 64 75 63 74 20 59 45 41 52 2f 73 71 6c  Product YEAR/sql
15f0: 69 74 65 2d 73 68 65 6c 6c 2d 6c 69 6e 75 78 2d  ite-shell-linux-
1600: 78 38 36 2d 56 56 56 2e 7a 69 70 20 7b 0a 20 20  x86-VVV.zip {.  
1610: 41 20 5b 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20  A [command-line 
1620: 73 68 65 6c 6c 5d 0a 20 20 66 6f 72 20 61 63 63  shell].  for acc
1630: 65 73 73 69 6e 67 20 61 6e 64 20 6d 6f 64 69 66  essing and modif
1640: 79 69 6e 67 20 53 51 4c 69 74 65 20 64 61 74 61  ying SQLite data
1650: 62 61 73 65 73 2e 0a 20 20 54 68 69 73 20 70 72  bases..  This pr
1660: 6f 67 72 61 6d 20 69 73 20 63 6f 6d 70 61 74 69  ogram is compati
1670: 62 6c 65 20 77 69 74 68 20 61 6c 6c 20 76 65 72  ble with all ver
1680: 73 69 6f 6e 73 20 6f 66 20 53 51 4c 69 74 65 20  sions of SQLite 
1690: 74 68 72 6f 75 67 68 20 56 45 52 53 49 4f 4e 0a  through VERSION.
16a0: 20 20 61 6e 64 20 62 65 79 6f 6e 64 2e 0a 7d 0a    and beyond..}.
16b0: 0a 50 72 6f 64 75 63 74 20 59 45 41 52 2f 73 71  .Product YEAR/sq
16c0: 6c 69 74 65 2d 61 6e 61 6c 79 7a 65 72 2d 6c 69  lite-analyzer-li
16d0: 6e 75 78 2d 78 38 36 2d 56 56 56 2e 7a 69 70 20  nux-x86-VVV.zip 
16e0: 7b 0a 20 20 41 6e 20 61 6e 61 6c 79 73 69 73 20  {.  An analysis 
16f0: 70 72 6f 67 72 61 6d 20 66 6f 72 20 64 61 74 61  program for data
1700: 62 61 73 65 20 66 69 6c 65 73 20 63 6f 6d 70 61  base files compa
1710: 74 69 62 6c 65 20 77 69 74 68 20 61 6c 6c 20 53  tible with all S
1720: 51 4c 69 74 65 20 0a 20 20 76 65 72 73 69 6f 6e  QLite .  version
1730: 73 20 74 68 72 6f 75 67 68 20 56 45 52 53 49 4f  s through VERSIO
1740: 4e 20 61 6e 64 20 62 65 79 6f 6e 64 2e 0a 7d 0a  N and beyond..}.
1750: 0a 48 65 61 64 69 6e 67 20 7b 50 72 65 63 6f 6d  .Heading {Precom
1760: 70 69 6c 65 64 20 42 69 6e 61 72 69 65 73 20 66  piled Binaries f
1770: 6f 72 20 4d 61 63 20 4f 53 20 58 20 28 78 38 36  or Mac OS X (x86
1780: 29 7d 20 6d 61 63 0a 0a 50 72 6f 64 75 63 74 20  )} mac..Product 
1790: 59 45 41 52 2f 73 71 6c 69 74 65 2d 73 68 65 6c  YEAR/sqlite-shel
17a0: 6c 2d 6f 73 78 2d 78 38 36 2d 56 56 56 2e 7a 69  l-osx-x86-VVV.zi
17b0: 70 20 7b 0a 20 20 41 20 5b 63 6f 6d 6d 61 6e 64  p {.  A [command
17c0: 2d 6c 69 6e 65 20 73 68 65 6c 6c 5d 0a 20 20 66  -line shell].  f
17d0: 6f 72 20 61 63 63 65 73 73 69 6e 67 20 61 6e 64  or accessing and
17e0: 20 6d 6f 64 69 66 79 69 6e 67 20 53 51 4c 69 74   modifying SQLit
17f0: 65 20 64 61 74 61 62 61 73 65 73 2e 0a 20 20 54  e databases..  T
1800: 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 63  his program is c
1810: 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 61  ompatible with a
1820: 6c 6c 20 76 65 72 73 69 6f 6e 73 20 6f 66 20 53  ll versions of S
1830: 51 4c 69 74 65 20 74 68 72 6f 75 67 68 20 56 45  QLite through VE
1840: 52 53 49 4f 4e 0a 20 20 61 6e 64 20 62 65 79 6f  RSION.  and beyo
1850: 6e 64 2e 0a 7d 0a 0a 50 72 6f 64 75 63 74 20 59  nd..}..Product Y
1860: 45 41 52 2f 73 71 6c 69 74 65 2d 61 6e 61 6c 79  EAR/sqlite-analy
1870: 7a 65 72 2d 6f 73 78 2d 78 38 36 2d 56 56 56 2e  zer-osx-x86-VVV.
1880: 7a 69 70 20 7b 0a 20 20 41 6e 20 61 6e 61 6c 79  zip {.  An analy
1890: 73 69 73 20 70 72 6f 67 72 61 6d 20 66 6f 72 20  sis program for 
18a0: 64 61 74 61 62 61 73 65 20 66 69 6c 65 73 20 63  database files c
18b0: 6f 6d 70 61 74 69 62 6c 65 20 77 69 74 68 20 61  ompatible with a
18c0: 6c 6c 20 53 51 4c 69 74 65 20 0a 20 20 76 65 72  ll SQLite .  ver
18d0: 73 69 6f 6e 73 20 74 68 72 6f 75 67 68 20 56 45  sions through VE
18e0: 52 53 49 4f 4e 20 61 6e 64 20 62 65 79 6f 6e 64  RSION and beyond
18f0: 2e 0a 7d 0a 0a 48 65 61 64 69 6e 67 20 7b 50 72  ..}..Heading {Pr
1900: 65 63 6f 6d 70 69 6c 65 64 20 42 69 6e 61 72 69  ecompiled Binari
1910: 65 73 20 66 6f 72 20 57 69 6e 64 6f 77 73 7d 20  es for Windows} 
1920: 77 69 6e 33 32 0a 0a 73 65 74 20 73 74 61 72 74  win32..set start
1930: 20 24 6e 44 6f 77 6e 6c 6f 61 64 0a 50 72 6f 64   $nDownload.Prod
1940: 75 63 74 20 59 45 41 52 2f 73 71 6c 69 74 65 2d  uct YEAR/sqlite-
1950: 73 68 65 6c 6c 2d 77 69 6e 33 32 2d 78 38 36 2d  shell-win32-x86-
1960: 56 56 56 2e 7a 69 70 20 7b 0a 20 20 41 20 5b 63  VVV.zip {.  A [c
1970: 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 73 68 65 6c  ommand-line shel
1980: 6c 5d 0a 20 20 66 6f 72 20 61 63 63 65 73 73 69  l].  for accessi
1990: 6e 67 20 61 6e 64 20 6d 6f 64 69 66 79 69 6e 67  ng and modifying
19a0: 20 53 51 4c 69 74 65 20 64 61 74 61 62 61 73 65   SQLite database
19b0: 73 2e 0a 20 20 54 68 69 73 20 70 72 6f 67 72 61  s..  This progra
19c0: 6d 20 69 73 20 63 6f 6d 70 61 74 69 62 6c 65 20  m is compatible 
19d0: 77 69 74 68 20 61 6c 6c 20 76 65 72 73 69 6f 6e  with all version
19e0: 73 20 6f 66 20 53 51 4c 69 74 65 20 74 68 72 6f  s of SQLite thro
19f0: 75 67 68 20 56 45 52 53 49 4f 4e 0a 20 20 61 6e  ugh VERSION.  an
1a00: 64 20 62 65 79 6f 6e 64 2e 0a 7d 0a 0a 50 72 6f  d beyond..}..Pro
1a10: 64 75 63 74 20 59 45 41 52 2f 73 71 6c 69 74 65  duct YEAR/sqlite
1a20: 2d 64 6c 6c 2d 77 69 6e 33 32 2d 78 38 36 2d 56  -dll-win32-x86-V
1a30: 56 56 2e 7a 69 70 20 7b 0a 20 20 54 68 69 73 20  VV.zip {.  This 
1a40: 5a 49 50 20 61 72 63 68 69 76 65 20 63 6f 6e 74  ZIP archive cont
1a50: 61 69 6e 73 20 61 20 44 4c 4c 20 66 6f 72 20 74  ains a DLL for t
1a60: 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72  he SQLite librar
1a70: 79 20 76 65 72 73 69 6f 6e 20 56 45 52 53 49 4f  y version VERSIO
1a80: 4e 20 66 6f 72 0a 20 20 33 32 2d 62 69 74 20 78  N for.  32-bit x
1a90: 38 36 20 70 72 6f 63 65 73 73 6f 72 73 20 75 73  86 processors us
1aa0: 69 6e 67 20 74 68 65 20 57 69 6e 33 32 20 41 50  ing the Win32 AP
1ab0: 49 2e 0a 20 20 54 68 65 20 44 4c 4c 20 69 73 20  I..  The DLL is 
1ac0: 62 75 69 6c 74 20 75 73 69 6e 67 20 5b 53 51 4c  built using [SQL
1ad0: 49 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d  ITE_ENABLE_COLUM
1ae0: 4e 5f 4d 45 54 41 44 41 54 41 5d 20 73 6f 20 74  N_METADATA] so t
1af0: 68 61 74 20 69 74 20 69 73 0a 20 20 73 75 69 74  hat it is.  suit
1b00: 61 62 6c 65 20 66 6f 72 20 75 73 65 20 77 69 74  able for use wit
1b10: 68 20 52 75 62 79 20 6f 6e 20 52 61 69 6c 73 2e  h Ruby on Rails.
1b20: 0a 7d 0a 0a 50 72 6f 64 75 63 74 20 59 45 41 52  .}..Product YEAR
1b30: 2f 73 71 6c 69 74 65 2d 64 6c 6c 2d 77 69 6e 33  /sqlite-dll-win3
1b40: 32 2d 78 36 34 2d 56 56 56 2e 7a 69 70 20 7b 0a  2-x64-VVV.zip {.
1b50: 20 20 54 68 69 73 20 5a 49 50 20 61 72 63 68 69    This ZIP archi
1b60: 76 65 20 63 6f 6e 74 61 69 6e 73 20 61 20 44 4c  ve contains a DL
1b70: 4c 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65  L for the SQLite
1b80: 20 6c 69 62 72 61 72 79 20 76 65 72 73 69 6f 6e   library version
1b90: 20 56 45 52 53 49 4f 4e 20 66 6f 72 0a 20 20 36   VERSION for.  6
1ba0: 34 2d 62 69 74 20 78 36 34 20 70 72 6f 63 65 73  4-bit x64 proces
1bb0: 73 6f 72 73 20 75 73 69 6e 67 20 74 68 65 20 57  sors using the W
1bc0: 69 6e 33 32 20 41 50 49 2e 0a 7d 0a 0a 50 72 6f  in32 API..}..Pro
1bd0: 64 75 63 74 20 59 45 41 52 2f 73 71 6c 69 74 65  duct YEAR/sqlite
1be0: 2d 61 6e 61 6c 79 7a 65 72 2d 77 69 6e 33 32 2d  -analyzer-win32-
1bf0: 78 38 36 2d 56 56 56 2e 7a 69 70 20 7b 0a 20 20  x86-VVV.zip {.  
1c00: 41 6e 20 61 6e 61 6c 79 73 69 73 20 70 72 6f 67  An analysis prog
1c10: 72 61 6d 20 66 6f 72 20 64 61 74 61 62 61 73 65  ram for database
1c20: 20 66 69 6c 65 73 20 63 6f 6d 70 61 74 69 62 6c   files compatibl
1c30: 65 20 77 69 74 68 20 61 6c 6c 20 53 51 4c 69 74  e with all SQLit
1c40: 65 20 0a 20 20 76 65 72 73 69 6f 6e 73 20 74 68  e .  versions th
1c50: 72 6f 75 67 68 20 56 45 52 53 49 4f 4e 20 61 6e  rough VERSION an
1c60: 64 20 62 65 79 6f 6e 64 2e 0a 7d 0a 0a 48 65 61  d beyond..}..Hea
1c70: 64 69 6e 67 20 7b 50 72 65 63 6f 6d 70 69 6c 65  ding {Precompile
1c80: 64 20 42 69 6e 61 72 69 65 73 20 66 6f 72 20 57  d Binaries for W
1c90: 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 38 7d 20  indows Phone 8} 
1ca0: 77 70 38 0a 0a 0a 50 72 6f 64 75 63 74 20 59 45  wp8...Product YE
1cb0: 41 52 2f 73 71 6c 69 74 65 2d 77 70 38 30 2d 77  AR/sqlite-wp80-w
1cc0: 69 6e 72 74 2d 56 56 56 2e 76 73 69 78 20 7b 0a  inrt-VVV.vsix {.
1cd0: 20 20 41 20 63 6f 6d 70 6c 65 74 65 20 56 53 49    A complete VSI
1ce0: 58 20 70 61 63 6b 61 67 65 20 77 69 74 68 20 61  X package with a
1cf0: 6e 20 65 78 74 65 6e 73 69 6f 6e 20 53 44 4b 20  n extension SDK 
1d00: 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72 20 63 6f  and all other co
1d10: 6d 70 6f 6e 65 6e 74 73 0a 20 20 6e 65 65 64 65  mponents.  neede
1d20: 64 20 74 6f 20 75 73 65 20 53 51 4c 69 74 65 20  d to use SQLite 
1d30: 66 6f 72 20 61 70 70 6c 69 63 61 74 69 6f 6e 20  for application 
1d40: 64 65 76 65 6c 6f 70 6d 65 6e 74 20 77 69 74 68  development with
1d50: 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 0a 20   Visual Studio. 
1d60: 20 32 30 31 32 20 74 61 72 67 65 74 69 6e 67 20   2012 targeting 
1d70: 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 38 2e  Windows Phone 8.
1d80: 30 2e 0a 7d 0a 0a 50 72 6f 64 75 63 74 20 59 45  0..}..Product YE
1d90: 41 52 2f 73 71 6c 69 74 65 2d 77 70 38 30 2d 77  AR/sqlite-wp80-w
1da0: 69 6e 72 74 2d 44 41 54 45 2e 76 73 69 78 20 7b  inrt-DATE.vsix {
1db0: 0a 20 20 41 20 63 6f 6d 70 6c 65 74 65 20 56 53  .  A complete VS
1dc0: 49 58 20 70 61 63 6b 61 67 65 20 77 69 74 68 20  IX package with 
1dd0: 61 6e 20 65 78 74 65 6e 73 69 6f 6e 20 53 44 4b  an extension SDK
1de0: 20 61 6e 64 20 61 6c 6c 20 6f 74 68 65 72 20 63   and all other c
1df0: 6f 6d 70 6f 6e 65 6e 74 73 0a 20 20 6e 65 65 64  omponents.  need
1e00: 65 64 20 74 6f 20 75 73 65 20 53 51 4c 69 74 65  ed to use SQLite
1e10: 20 66 6f 72 20 61 70 70 6c 69 63 61 74 69 6f 6e   for application
1e20: 20 64 65 76 65 6c 6f 70 6d 65 6e 74 20 77 69 74   development wit
1e30: 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 0a  h Visual Studio.
1e40: 20 20 32 30 31 32 20 74 61 72 67 65 74 69 6e 67    2012 targeting
1e50: 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 38   Windows Phone 8
1e60: 2e 30 2e 0a 20 20 54 68 69 73 20 70 61 72 74 69  .0..  This parti
1e70: 63 75 6c 61 72 20 56 53 49 58 20 75 73 65 73 20  cular VSIX uses 
1e80: 61 20 73 6e 61 70 73 68 6f 74 20 6f 66 20 53 51  a snapshot of SQ
1e90: 4c 69 74 65 20 61 73 20 6f 66 20 56 45 52 53 49  Lite as of VERSI
1ea0: 4f 4e 2e 0a 7d 0a 0a 48 65 61 64 69 6e 67 20 7b  ON..}..Heading {
1eb0: 50 72 65 63 6f 6d 70 69 6c 65 64 20 42 69 6e 61  Precompiled Bina
1ec0: 72 69 65 73 20 66 6f 72 20 57 69 6e 64 6f 77 73  ries for Windows
1ed0: 20 52 75 6e 74 69 6d 65 7d 20 77 69 6e 72 74 0a   Runtime} winrt.
1ee0: 0a 50 72 6f 64 75 63 74 20 59 45 41 52 2f 73 71  .Product YEAR/sq
1ef0: 6c 69 74 65 2d 64 6c 6c 2d 77 69 6e 72 74 2d 78  lite-dll-winrt-x
1f00: 38 36 2d 56 56 56 2e 7a 69 70 20 7b 0a 20 20 54  86-VVV.zip {.  T
1f10: 68 69 73 20 5a 49 50 20 61 72 63 68 69 76 65 20  his ZIP archive 
1f20: 63 6f 6e 74 61 69 6e 73 20 61 20 44 4c 4c 20 66  contains a DLL f
1f30: 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 6c 69  or the SQLite li
1f40: 62 72 61 72 79 20 76 65 72 73 69 6f 6e 20 56 45  brary version VE
1f50: 52 53 49 4f 4e 20 66 6f 72 0a 20 20 33 32 2d 62  RSION for.  32-b
1f60: 69 74 20 78 38 36 20 70 72 6f 63 65 73 73 6f 72  it x86 processor
1f70: 73 20 75 73 69 6e 67 20 74 68 65 20 57 69 6e 52  s using the WinR
1f80: 54 20 41 50 49 2e 0a 7d 0a 0a 50 72 6f 64 75 63  T API..}..Produc
1f90: 74 20 59 45 41 52 2f 73 71 6c 69 74 65 2d 64 6c  t YEAR/sqlite-dl
1fa0: 6c 2d 77 69 6e 72 74 2d 78 36 34 2d 56 56 56 2e  l-winrt-x64-VVV.
1fb0: 7a 69 70 20 7b 0a 20 20 54 68 69 73 20 5a 49 50  zip {.  This ZIP
1fc0: 20 61 72 63 68 69 76 65 20 63 6f 6e 74 61 69 6e   archive contain
1fd0: 73 20 61 20 44 4c 4c 20 66 6f 72 20 74 68 65 20  s a DLL for the 
1fe0: 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20 76  SQLite library v
1ff0: 65 72 73 69 6f 6e 20 56 45 52 53 49 4f 4e 20 66  ersion VERSION f
2000: 6f 72 0a 20 20 36 34 2d 62 69 74 20 78 36 34 20  or.  64-bit x64 
2010: 70 72 6f 63 65 73 73 6f 72 73 20 75 73 69 6e 67  processors using
2020: 20 74 68 65 20 57 69 6e 52 54 20 41 50 49 2e 0a   the WinRT API..
2030: 7d 0a 0a 50 72 6f 64 75 63 74 20 59 45 41 52 2f  }..Product YEAR/
2040: 73 71 6c 69 74 65 2d 77 69 6e 72 74 2d 56 56 56  sqlite-winrt-VVV
2050: 2e 76 73 69 78 20 7b 0a 20 20 41 20 63 6f 6d 70  .vsix {.  A comp
2060: 6c 65 74 65 20 56 53 49 58 20 70 61 63 6b 61 67  lete VSIX packag
2070: 65 20 77 69 74 68 20 61 6e 20 65 78 74 65 6e 73  e with an extens
2080: 69 6f 6e 20 53 44 4b 20 61 6e 64 20 61 6c 6c 20  ion SDK and all 
2090: 6f 74 68 65 72 20 63 6f 6d 70 6f 6e 65 6e 74 73  other components
20a0: 0a 20 20 6e 65 65 64 65 64 20 74 6f 20 75 73 65  .  needed to use
20b0: 20 53 51 4c 69 74 65 20 66 6f 72 20 57 69 6e 52   SQLite for WinR
20c0: 54 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 64 65  T application de
20d0: 76 65 6c 6f 70 6d 65 6e 74 20 77 69 74 68 20 56  velopment with V
20e0: 69 73 75 61 6c 20 53 74 75 64 69 6f 0a 20 20 32  isual Studio.  2
20f0: 30 31 32 2e 0a 7d 0a 0a 69 66 20 7b 24 6e 44 6f  012..}..if {$nDo
2100: 77 6e 6c 6f 61 64 3e 24 73 74 61 72 74 7d 20 7b  wnload>$start} {
2110: 0a 20 20 68 64 5f 70 75 74 73 20 7b 3c 74 72 3e  .  hd_puts {<tr>
2120: 3c 74 64 20 63 6f 6c 73 70 61 6e 3d 22 34 22 3e  <td colspan="4">
2130: 3c 62 3e 50 72 65 63 6f 6d 70 69 6c 65 64 20 42  <b>Precompiled B
2140: 69 6e 61 72 69 65 73 20 66 6f 72 20 2e 4e 45 54  inaries for .NET
2150: 3c 2f 62 3e 3c 2f 74 64 3e 3c 2f 74 72 3e 7d 0a  </b></td></tr>}.
2160: 20 20 68 64 5f 70 75 74 73 20 22 3c 74 72 3e 3c    hd_puts "<tr><
2170: 74 64 20 77 69 64 74 68 3d 5c 22 31 30 5c 22 3e  td width=\"10\">
2180: 3c 2f 74 64 3e 22 0a 20 20 68 64 5f 70 75 74 73  </td>".  hd_puts
2190: 20 22 3c 74 64 20 76 61 6c 69 67 6e 3d 5c 22 74   "<td valign=\"t
21a0: 6f 70 5c 22 20 61 6c 69 67 6e 3d 5c 22 72 69 67  op\" align=\"rig
21b0: 68 74 5c 22 3e 22 0a 20 20 73 65 74 20 75 72 6c  ht\">".  set url
21c0: 20 68 74 74 70 3a 2f 2f 73 79 73 74 65 6d 2e 64   http://system.d
21d0: 61 74 61 2e 73 71 6c 69 74 65 2e 6f 72 67 2f 69  ata.sqlite.org/i
21e0: 6e 64 65 78 2e 68 74 6d 6c 2f 64 6f 63 2f 74 72  ndex.html/doc/tr
21f0: 75 6e 6b 2f 77 77 77 2f 64 6f 77 6e 6c 6f 61 64  unk/www/download
2200: 73 2e 77 69 6b 69 0a 20 20 68 64 5f 70 75 74 73  s.wiki.  hd_puts
2210: 20 22 3c 61 20 68 72 65 66 3d 5c 22 24 75 72 6c   "<a href=\"$url
2220: 5c 22 3e 53 79 73 74 65 6d 2e 44 61 74 61 2e 53  \">System.Data.S
2230: 51 4c 69 74 65 3c 2f 61 3e 3c 2f 74 64 3e 22 0a  QLite</a></td>".
2240: 20 20 68 64 5f 70 75 74 73 20 22 3c 74 64 20 77    hd_puts "<td w
2250: 69 64 74 68 3d 5c 22 35 5c 22 3e 3c 2f 74 64 3e  idth=\"5\"></td>
2260: 22 0a 20 20 68 64 5f 70 75 74 73 20 22 3c 74 64  ".  hd_puts "<td
2270: 20 76 61 6c 69 67 6e 3d 5c 22 74 6f 70 5c 22 3e   valign=\"top\">
2280: 22 0a 20 20 68 64 5f 70 75 74 73 20 22 0a 20 20  ".  hd_puts ".  
2290: 20 20 56 69 73 69 74 20 74 68 65 20 3c 61 20 68    Visit the <a h
22a0: 72 65 66 3d 5c 22 68 74 74 70 3a 2f 2f 73 79 73  ref=\"http://sys
22b0: 74 65 6d 2e 64 61 74 61 2e 73 71 6c 69 74 65 2e  tem.data.sqlite.
22c0: 6f 72 67 2f 5c 22 3e 53 79 73 74 65 6d 2e 44 61  org/\">System.Da
22d0: 74 61 2e 53 51 4c 69 74 65 2e 6f 72 67 0a 20 20  ta.SQLite.org.  
22e0: 20 20 3c 2f 61 3e 20 77 65 62 73 69 74 65 20 61    </a> website a
22f0: 6e 64 20 65 73 70 65 63 69 61 6c 6c 79 20 74 68  nd especially th
2300: 65 20 3c 61 20 68 72 65 66 3d 5c 22 24 75 72 6c  e <a href=\"$url
2310: 5c 22 3e 64 6f 77 6e 6c 6f 61 64 20 70 61 67 65  \">download page
2320: 3c 2f 61 3e 20 66 6f 72 0a 20 20 20 20 73 6f 75  </a> for.    sou
2330: 72 63 65 20 63 6f 64 65 20 61 6e 64 20 62 69 6e  rce code and bin
2340: 61 72 69 65 73 20 6f 66 20 53 51 4c 69 74 65 20  aries of SQLite 
2350: 66 6f 72 20 2e 4e 45 54 2e 3c 2f 74 64 3e 3c 2f  for .NET.</td></
2360: 74 72 3e 0a 20 20 22 0a 7d 0a 0a 48 65 61 64 69  tr>.  ".}..Headi
2370: 6e 67 20 7b 4c 65 67 61 63 79 20 53 6f 75 72 63  ng {Legacy Sourc
2380: 65 20 43 6f 64 65 20 44 69 73 74 72 69 62 75 74  e Code Distribut
2390: 69 6f 6e 20 46 6f 72 6d 61 74 73 20 28 4e 6f 74  ion Formats (Not
23a0: 20 52 65 63 6f 6d 6d 65 6e 64 65 64 29 7d 20 6f   Recommended)} o
23b0: 6c 64 0a 0a 50 72 6f 64 75 63 74 20 7b 59 45 41  ld..Product {YEA
23c0: 52 2f 73 71 6c 69 74 65 2d 73 72 63 2d 56 56 56  R/sqlite-src-VVV
23d0: 2e 7a 69 70 7d 20 7b 0a 20 20 41 20 5a 49 50 20  .zip} {.  A ZIP 
23e0: 61 72 63 68 69 76 65 20 6f 66 20 74 68 65 20 63  archive of the c
23f0: 6f 6d 70 6c 65 74 65 20 73 6f 75 72 63 65 20 74  omplete source t
2400: 72 65 65 20 66 6f 72 20 53 51 4c 69 74 65 20 76  ree for SQLite v
2410: 65 72 73 69 6f 6e 20 56 45 52 53 49 4f 4e 0a 20  ersion VERSION. 
2420: 20 61 73 20 65 78 74 72 61 63 74 65 64 20 66 72   as extracted fr
2430: 6f 6d 20 74 68 65 20 76 65 72 73 69 6f 6e 20 63  om the version c
2440: 6f 6e 74 72 6f 6c 20 73 79 73 74 65 6d 2e 20 20  ontrol system.  
2450: 3c 69 3e 54 68 65 20 4d 61 6b 65 66 69 6c 65 20  <i>The Makefile 
2460: 61 6e 64 0a 20 20 63 6f 6e 66 69 67 75 72 65 20  and.  configure 
2470: 73 63 72 69 70 74 20 69 6e 20 74 68 69 73 20 74  script in this t
2480: 61 72 62 61 6c 6c 20 61 72 65 20 6e 6f 74 20 73  arball are not s
2490: 75 70 70 6f 72 74 65 64 3c 2f 69 3e 2e 20 20 54  upported</i>.  T
24a0: 68 65 69 72 20 75 73 65 0a 20 20 69 73 20 3c 75  heir use.  is <u
24b0: 3e 6e 6f 74 3c 2f 75 3e 20 72 65 63 6f 6d 6d 65  >not</u> recomme
24c0: 6e 64 65 64 2e 20 54 68 65 20 53 51 4c 69 74 65  nded. The SQLite
24d0: 20 64 65 76 65 6c 6f 70 65 72 73 20 64 6f 20 6e   developers do n
24e0: 6f 74 20 75 73 65 20 74 68 65 6d 2e 20 20 0a 20  ot use them.  . 
24f0: 20 59 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 20   You should not 
2500: 75 73 65 20 74 68 65 6d 20 65 69 74 68 65 72 2e  use them either.
2510: 20 20 49 66 20 79 6f 75 20 77 61 6e 74 20 61 20    If you want a 
2520: 63 6f 6e 66 69 67 75 72 65 20 73 63 72 69 70 74  configure script
2530: 20 61 6e 64 0a 20 20 61 6e 20 61 75 74 6f 6d 61   and.  an automa
2540: 74 65 64 20 62 75 69 6c 64 2c 20 75 73 65 20 65  ted build, use e
2550: 69 74 68 65 72 20 74 68 65 20 61 6d 61 6c 67 61  ither the amalga
2560: 6d 61 74 69 6f 6e 20 74 61 72 62 61 6c 6c 20 6f  mation tarball o
2570: 72 20 54 45 41 20 74 61 72 62 61 6c 6c 0a 20 20  r TEA tarball.  
2580: 69 6e 73 74 65 61 64 20 6f 66 20 74 68 69 73 20  instead of this 
2590: 6f 6e 65 2e 0a 20 20 54 6f 20 62 75 69 6c 64 20  one..  To build 
25a0: 66 72 6f 6d 20 74 68 69 73 20 74 61 72 62 61 6c  from this tarbal
25b0: 6c 2c 20 68 61 6e 64 2d 65 64 69 74 20 6f 6e 65  l, hand-edit one
25c0: 20 6f 66 20 74 68 65 20 74 65 6d 70 6c 61 74 65   of the template
25d0: 20 4d 61 6b 65 66 69 6c 65 73 0a 20 20 69 6e 20   Makefiles.  in 
25e0: 74 68 65 20 72 6f 6f 74 20 64 69 72 65 63 74 6f  the root directo
25f0: 72 79 20 6f 66 20 74 68 65 20 74 61 72 62 61 6c  ry of the tarbal
2600: 6c 20 61 6e 64 20 62 75 69 6c 64 20 75 73 69 6e  l and build usin
2610: 67 20 79 6f 75 72 20 6f 77 6e 20 63 75 73 74 6f  g your own custo
2620: 6d 69 7a 65 64 0a 20 20 4d 61 6b 65 66 69 6c 65  mized.  Makefile
2630: 2e 0a 7d 0a 0a 50 72 6f 64 75 63 74 20 7b 59 45  ..}..Product {YE
2640: 41 52 2f 73 71 6c 69 74 65 2d 70 72 65 70 72 6f  AR/sqlite-prepro
2650: 63 65 73 73 65 64 2d 56 56 56 2e 7a 69 70 7d 20  cessed-VVV.zip} 
2660: 7b 0a 20 20 54 68 69 73 20 5a 49 50 20 61 72 63  {.  This ZIP arc
2670: 68 69 76 65 20 63 6f 6e 74 61 69 6e 73 20 70 72  hive contains pr
2680: 65 70 72 6f 63 65 73 73 65 64 20 43 20 63 6f 64  eprocessed C cod
2690: 65 20 66 6f 72 20 53 51 4c 69 74 65 20 76 65 72  e for SQLite ver
26a0: 73 69 6f 6e 20 56 45 52 53 49 4f 4e 0a 20 20 69  sion VERSION.  i
26b0: 6e 64 69 76 69 64 75 61 6c 20 73 6f 75 72 63 65  ndividual source
26c0: 20 66 69 6c 65 73 2e 20 20 54 68 65 20 75 73 65   files.  The use
26d0: 20 6f 66 20 74 68 69 73 20 73 6f 75 72 63 65 20   of this source 
26e0: 64 69 73 74 72 69 62 75 74 69 6f 6e 20 69 73 0a  distribution is.
26f0: 20 20 3c 75 3e 6e 6f 74 3c 2f 75 3e 20 72 65 63    <u>not</u> rec
2700: 6f 6d 6d 65 6e 64 65 64 2e 20 20 55 73 65 20 6f  ommended.  Use o
2710: 6e 65 20 6f 66 20 74 68 65 20 61 6d 61 6c 67 61  ne of the amalga
2720: 6d 61 74 69 6f 6e 20 70 61 63 6b 61 67 65 73 20  mation packages 
2730: 61 62 6f 76 65 0a 20 20 75 6e 6c 65 73 73 20 79  above.  unless y
2740: 6f 75 20 68 61 76 65 20 61 20 63 6f 6d 70 65 6c  ou have a compel
2750: 6c 69 6e 67 20 72 65 61 73 6f 6e 20 6e 6f 74 20  ling reason not 
2760: 74 6f 2e 0a 7d 0a 0a 0a 3c 2f 74 63 6c 3e 0a 3c  to..}...</tcl>.<
2770: 2f 74 61 62 6c 65 3e 0a 0a 3c 74 63 6c 3e 68 64  /table>..<tcl>hd
2780: 5f 66 72 61 67 6d 65 6e 74 20 65 6e 63 6f 64 69  _fragment encodi
2790: 6e 67 20 7b 62 75 69 6c 64 20 70 72 6f 64 75 63  ng {build produc
27a0: 74 20 6e 61 6d 65 73 7d 3c 2f 74 63 6c 3e 0a 3c  t names}</tcl>.<
27b0: 68 33 3e 42 75 69 6c 64 20 50 72 6f 64 75 63 74  h3>Build Product
27c0: 20 4e 61 6d 65 73 3c 2f 68 33 3e 0a 0a 3c 70 3e   Names</h3>..<p>
27d0: 42 65 67 69 6e 6e 69 6e 67 20 77 69 74 68 20 53  Beginning with S
27e0: 51 4c 69 74 65 20 5b 76 65 72 73 69 6f 6e 20 33  QLite [version 3
27f0: 2e 37 2e 34 5d 2c 20 74 68 65 20 6e 61 6d 65 73  .7.4], the names
2800: 20 6f 66 20 74 68 65 20 62 75 69 6c 64 20 70 72   of the build pr
2810: 6f 64 75 63 74 73 0a 68 61 76 65 20 63 68 61 6e  oducts.have chan
2820: 67 65 64 20 74 6f 20 62 65 20 6d 6f 72 65 20 63  ged to be more c
2830: 6f 6e 73 69 73 74 65 6e 74 2e 20 20 28 50 72 69  onsistent.  (Pri
2840: 6f 72 20 74 6f 20 76 65 72 73 69 6f 6e 20 33 2e  or to version 3.
2850: 37 2e 34 2c 20 74 68 65 0a 6e 61 6d 65 73 20 6f  7.4, the.names o
2860: 66 20 62 75 69 6c 64 20 70 72 6f 64 75 63 74 73  f build products
2870: 20 77 65 72 65 20 73 65 65 6d 69 6e 67 6c 79 20   were seemingly 
2880: 72 61 6e 64 6f 6d 2e 29 20 20 42 75 69 6c 64 20  random.)  Build 
2890: 70 72 6f 64 75 63 74 73 20 61 72 65 20 6e 61 6d  products are nam
28a0: 65 64 0a 75 73 69 6e 67 20 6f 6e 65 20 6f 66 20  ed.using one of 
28b0: 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 74 65  the following te
28c0: 6d 70 6c 61 74 65 73 3a 0a 0a 3c 6f 6c 3e 0a 3c  mplates:..<ol>.<
28d0: 6c 69 3e 20 3c 62 3e 73 71 6c 69 74 65 2d 3c 2f  li> <b>sqlite-</
28e0: 62 3e 70 72 6f 64 75 63 74 3c 62 3e 2d 3c 2f 62  b>product<b>-</b
28f0: 3e 76 65 72 73 69 6f 6e 3c 62 3e 2e 7a 69 70 3c  >version<b>.zip<
2900: 2f 62 3e 0a 3c 6c 69 3e 20 3c 62 3e 73 71 6c 69  /b>.<li> <b>sqli
2910: 74 65 2d 3c 2f 62 3e 70 72 6f 64 75 63 74 3c 62  te-</b>product<b
2920: 3e 2d 3c 2f 62 3e 76 65 72 73 69 6f 6e 3c 62 3e  >-</b>version<b>
2930: 2e 74 61 72 2e 67 7a 3c 2f 62 3e 0a 3c 6c 69 3e  .tar.gz</b>.<li>
2940: 20 3c 62 3e 73 71 6c 69 74 65 2d 3c 2f 62 3e 70   <b>sqlite-</b>p
2950: 72 6f 64 75 63 74 3c 62 3e 2d 3c 2f 62 3e 6f 73  roduct<b>-</b>os
2960: 3c 62 3e 2d 3c 2f 62 3e 63 70 75 3c 62 3e 2d 3c  <b>-</b>cpu<b>-<
2970: 2f 62 3e 76 65 72 73 69 6f 6e 3c 62 3e 2e 7a 69  /b>version<b>.zi
2980: 70 3c 2f 62 3e 0a 3c 6c 69 3e 20 3c 62 3e 73 71  p</b>.<li> <b>sq
2990: 6c 69 74 65 2d 3c 2f 62 3e 70 72 6f 64 75 63 74  lite-</b>product
29a0: 3c 62 3e 2d 3c 2f 62 3e 64 61 74 65 3c 62 3e 2e  <b>-</b>date<b>.
29b0: 7a 69 70 3c 2f 62 3e 0a 3c 2f 6f 6c 3e 0a 0a 3c  zip</b>.</ol>..<
29c0: 70 3e 54 65 6d 70 6c 61 74 65 73 20 28 31 29 20  p>Templates (1) 
29d0: 61 6e 64 20 28 32 29 20 61 72 65 20 75 73 65 64  and (2) are used
29e0: 20 66 6f 72 20 73 6f 75 72 63 65 2d 63 6f 64 65   for source-code
29f0: 20 70 72 6f 64 75 63 74 73 2e 20 20 54 65 6d 70   products.  Temp
2a00: 6c 61 74 65 20 28 31 29 20 69 73 0a 75 73 65 64  late (1) is.used
2a10: 20 66 6f 72 20 67 65 6e 65 72 69 63 20 73 6f 75   for generic sou
2a20: 72 63 65 2d 63 6f 64 65 20 70 72 6f 64 75 63 74  rce-code product
2a30: 73 20 61 6e 64 20 74 65 6d 70 6c 61 74 65 73 20  s and templates 
2a40: 28 32 29 20 69 73 20 75 73 65 64 20 66 6f 72 20  (2) is used for 
2a50: 73 6f 75 72 63 65 2d 63 6f 64 65 0a 70 72 6f 64  source-code.prod
2a60: 75 63 74 73 20 74 68 61 74 20 61 72 65 20 67 65  ucts that are ge
2a70: 6e 65 72 61 6c 6c 79 20 6f 6e 6c 79 20 75 73 65  nerally only use
2a80: 66 75 6c 20 6f 6e 20 75 6e 69 78 2d 6c 69 6b 65  ful on unix-like
2a90: 20 70 6c 61 74 66 6f 72 6d 73 2e 20 20 54 65 6d   platforms.  Tem
2aa0: 70 6c 61 74 65 20 28 33 29 0a 69 73 20 75 73 65  plate (3).is use
2ab0: 64 20 66 6f 72 20 70 72 65 63 6f 6d 70 69 6c 65  d for precompile
2ac0: 64 20 62 69 6e 61 72 69 65 73 20 70 72 6f 64 75  d binaries produ
2ad0: 63 74 73 2e 20 20 54 65 6d 70 6c 61 74 65 20 28  cts.  Template (
2ae0: 34 29 20 69 73 20 75 73 65 64 20 66 6f 72 0a 75  4) is used for.u
2af0: 6e 6f 66 66 69 63 69 61 6c 20 70 72 65 2d 72 65  nofficial pre-re
2b00: 6c 65 61 73 65 20 22 73 6e 61 70 73 68 6f 74 73  lease "snapshots
2b10: 22 20 6f 66 20 73 6f 75 72 63 65 20 63 6f 64 65  " of source code
2b20: 2e 0a 0a 3c 70 3e 54 68 65 20 3c 69 3e 76 65 72  ...<p>The <i>ver
2b30: 73 69 6f 6e 3c 2f 69 3e 20 69 73 20 65 6e 63 6f  sion</i> is enco
2b40: 64 65 64 20 73 6f 20 74 68 61 74 20 66 69 6c 65  ded so that file
2b50: 6e 61 6d 65 73 20 73 6f 72 74 20 69 6e 20 6f 72  names sort in or
2b60: 64 65 72 20 6f 66 0a 69 6e 63 72 65 61 73 69 6e  der of.increasin
2b70: 67 20 76 65 72 73 69 6f 6e 20 6e 75 6d 62 65 72  g version number
2b80: 20 77 68 65 6e 20 76 69 65 77 65 64 20 75 73 69   when viewed usi
2b90: 6e 67 20 22 6c 73 22 2e 20 20 46 6f 72 20 76 65  ng "ls".  For ve
2ba0: 72 73 69 6f 6e 20 33 2e 58 2e 59 20 74 68 65 0a  rsion 3.X.Y the.
2bb0: 66 69 6c 65 6e 61 6d 65 20 65 6e 63 6f 64 69 6e  filename encodin
2bc0: 67 20 69 73 20 33 58 58 59 59 30 30 2e 20 20 46  g is 3XXYY00.  F
2bd0: 6f 72 20 62 72 61 6e 63 68 20 76 65 72 73 69 6f  or branch versio
2be0: 6e 20 33 2e 58 2e 59 2e 5a 2c 20 74 68 65 20 65  n 3.X.Y.Z, the e
2bf0: 6e 63 6f 64 69 6e 67 20 69 73 0a 33 58 58 59 59  ncoding is.3XXYY
2c00: 5a 5a 2e 0a 0a 3c 70 3e 54 68 65 20 3c 69 3e 64  ZZ...<p>The <i>d
2c10: 61 74 65 3c 2f 69 3e 20 69 6e 20 74 65 6d 70 6c  ate</i> in templ
2c20: 61 74 65 20 28 34 29 20 69 73 20 6f 66 20 74 68  ate (4) is of th
2c30: 65 20 66 6f 72 6d 3a 20 59 59 59 59 4d 4d 44 44  e form: YYYYMMDD
2c40: 48 48 4d 4d 0a 0a 3c 61 20 6e 61 6d 65 3d 22 63  HHMM..<a name="c
2c50: 76 73 22 3e 3c 2f 61 3e 0a 3c 61 20 6e 61 6d 65  vs"></a>.<a name
2c60: 3d 22 66 6f 73 73 69 6c 22 3e 3c 2f 61 3e 0a 3c  ="fossil"></a>.<
2c70: 68 33 3e 43 61 6e 6f 6e 69 63 61 6c 20 53 6f 75  h3>Canonical Sou
2c80: 72 63 65 20 43 6f 64 65 3c 2f 68 33 3e 0a 0a 3c  rce Code</h3>..<
2c90: 70 3e 0a 54 68 65 20 63 61 6e 6f 6e 69 63 61 6c  p>.The canonical
2ca0: 20 53 51 4c 69 74 65 20 73 6f 75 72 63 65 20 63   SQLite source c
2cb0: 6f 64 65 20 69 73 20 6d 61 69 6e 74 61 69 6e 65  ode is maintaine
2cc0: 64 20 69 6e 20 74 68 72 65 65 20 73 65 6c 66 2d  d in three self-
2cd0: 73 79 6e 63 68 72 6f 6e 69 7a 69 6e 67 0a 5b 68  synchronizing.[h
2ce0: 74 74 70 3a 2f 2f 77 77 77 2e 66 6f 73 73 69 6c  ttp://www.fossil
2cf0: 2d 73 63 6d 2e 6f 72 67 2f 20 7c 20 46 6f 73 73  -scm.org/ | Foss
2d00: 69 6c 5d 20 72 65 70 6f 73 69 74 6f 72 69 65 73  il] repositories
2d10: 20 74 68 61 74 20 61 72 65 0a 61 76 61 69 6c 61   that are.availa
2d20: 62 6c 65 20 66 6f 72 20 61 6e 6f 6e 79 6d 6f 75  ble for anonymou
2d30: 73 20 72 65 61 64 2d 6f 6e 6c 79 20 61 63 63 65  s read-only acce
2d40: 73 73 2e 20 20 41 6e 79 6f 6e 65 20 63 61 6e 20  ss.  Anyone can 
2d50: 0a 76 69 65 77 20 74 68 65 20 72 65 70 6f 73 69  .view the reposi
2d60: 74 6f 72 79 20 63 6f 6e 74 65 6e 74 73 20 61 6e  tory contents an
2d70: 64 20 64 6f 77 6e 6c 6f 61 64 20 68 69 73 74 6f  d download histo
2d80: 72 69 63 61 6c 20 76 65 72 73 69 6f 6e 73 0a 6f  rical versions.o
2d90: 66 20 69 6e 64 69 76 69 64 75 61 6c 20 66 69 6c  f individual fil
2da0: 65 73 20 6f 72 20 5a 49 50 20 61 72 63 68 69 76  es or ZIP archiv
2db0: 65 73 20 6f 66 20 68 69 73 74 6f 72 69 63 61 6c  es of historical
2dc0: 20 63 68 65 63 6b 2d 69 6e 73 2e 3c 2f 70 3e 0a   check-ins.</p>.
2dd0: 0a 3c 70 3e 4e 6f 74 65 20 74 68 61 74 20 61 20  .<p>Note that a 
2de0: 75 6e 69 78 2d 6c 69 6b 65 20 64 65 76 65 6c 6f  unix-like develo
2df0: 70 6d 65 6e 74 20 65 6e 76 69 72 6f 6e 6d 65 6e  pment environmen
2e00: 74 2c 20 69 6e 63 6c 75 64 69 6e 67 20 61 20 72  t, including a r
2e10: 65 63 65 6e 74 0a 76 65 72 73 69 6f 6e 20 6f 66  ecent.version of
2e20: 20 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f   <a href="http:/
2e30: 2f 77 77 77 2e 74 63 6c 2e 74 6b 2f 22 3e 54 63  /www.tcl.tk/">Tc
2e40: 6c 3c 2f 61 3e 2c 20 69 73 20 72 65 71 75 69 72  l</a>, is requir
2e50: 65 64 20 69 6e 20 6f 72 64 65 72 20 74 6f 0a 62  ed in order to.b
2e60: 75 69 6c 64 20 66 72 6f 6d 20 74 68 65 20 63 61  uild from the ca
2e70: 6e 6f 6e 69 63 61 6c 20 73 6f 75 72 63 65 73 2e  nonical sources.
2e80: 3c 2f 70 3e 0a 0a 3c 62 6c 6f 63 6b 71 75 6f 74  </p>..<blockquot
2e90: 65 3e 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70  e>.<a href="http
2ea0: 3a 2f 2f 77 77 77 2e 73 71 6c 69 74 65 2e 6f 72  ://www.sqlite.or
2eb0: 67 2f 63 67 69 2f 73 72 63 22 3e 68 74 74 70 3a  g/cgi/src">http:
2ec0: 2f 2f 77 77 77 2e 73 71 6c 69 74 65 2e 6f 72 67  //www.sqlite.org
2ed0: 2f 63 67 69 2f 73 72 63 3c 2f 61 3e 20 28 44 61  /cgi/src</a> (Da
2ee0: 6c 6c 61 73 29 3c 62 72 3e 0a 3c 61 20 68 72 65  llas)<br>.<a hre
2ef0: 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 32 2e 73  f="http://www2.s
2f00: 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f 73 72  qlite.org/cgi/sr
2f10: 63 22 3e 68 74 74 70 3a 2f 2f 77 77 77 32 2e 73  c">http://www2.s
2f20: 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f 73 72  qlite.org/cgi/sr
2f30: 63 3c 2f 61 3e 20 28 4e 65 77 61 72 6b 29 3c 62  c</a> (Newark)<b
2f40: 72 3e 0a 3c 61 20 68 72 65 66 3d 22 68 74 74 70  r>.<a href="http
2f50: 3a 2f 2f 77 77 77 33 2e 73 71 6c 69 74 65 2e 6f  ://www3.sqlite.o
2f60: 72 67 2f 63 67 69 2f 73 72 63 22 3e 68 74 74 70  rg/cgi/src">http
2f70: 3a 2f 2f 77 77 77 33 2e 73 71 6c 69 74 65 2e 6f  ://www3.sqlite.o
2f80: 72 67 2f 63 67 69 2f 73 72 63 3c 2f 61 3e 20 28  rg/cgi/src</a> (
2f90: 46 72 65 6d 6f 6e 74 29 3c 62 72 3e 0a 3c 2f 62  Fremont)<br>.</b
2fa0: 6c 6f 63 6b 71 75 6f 74 65 3e 0a 0a 3c 70 3e 54  lockquote>..<p>T
2fb0: 68 65 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  he documentation
2fc0: 20 69 73 20 6d 61 69 6e 74 61 69 6e 65 64 20 69   is maintained i
2fd0: 6e 20 73 65 70 61 72 61 74 65 0a 5b 68 74 74 70  n separate.[http
2fe0: 3a 2f 2f 77 77 77 2e 66 6f 73 73 69 6c 2d 73 63  ://www.fossil-sc
2ff0: 6d 2e 6f 72 67 2f 20 7c 20 46 6f 73 73 69 6c 5d  m.org/ | Fossil]
3000: 20 72 65 70 6f 73 69 74 6f 72 69 65 73 20 6c 6f   repositories lo
3010: 63 61 74 65 64 0a 61 74 3a 3c 2f 70 3e 0a 0a 3c  cated.at:</p>..<
3020: 62 6c 6f 63 6b 71 75 6f 74 65 3e 0a 3c 61 20 68  blockquote>.<a h
3030: 72 65 66 3d 22 68 74 74 70 3a 2f 2f 77 77 77 2e  ref="http://www.
3040: 73 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f 64  sqlite.org/cgi/d
3050: 6f 63 73 72 63 22 3e 68 74 74 70 3a 2f 2f 77 77  ocsrc">http://ww
3060: 77 2e 73 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69  w.sqlite.org/cgi
3070: 2f 64 6f 63 73 72 63 3c 2f 61 3e 20 28 44 61 6c  /docsrc</a> (Dal
3080: 6c 61 73 29 3c 62 72 3e 0a 3c 61 20 68 72 65 66  las)<br>.<a href
3090: 3d 22 68 74 74 70 3a 2f 2f 77 77 77 32 2e 73 71  ="http://www2.sq
30a0: 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f 64 6f 63  lite.org/cgi/doc
30b0: 73 72 63 22 3e 68 74 74 70 3a 2f 2f 77 77 77 32  src">http://www2
30c0: 2e 73 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f  .sqlite.org/cgi/
30d0: 64 6f 63 73 72 63 3c 2f 61 3e 20 28 4e 65 77 61  docsrc</a> (Newa
30e0: 72 6b 29 3c 62 72 3e 0a 3c 61 20 68 72 65 66 3d  rk)<br>.<a href=
30f0: 22 68 74 74 70 3a 2f 2f 77 77 77 33 2e 73 71 6c  "http://www3.sql
3100: 69 74 65 2e 6f 72 67 2f 63 67 69 2f 64 6f 63 73  ite.org/cgi/docs
3110: 72 63 22 3e 68 74 74 70 3a 2f 2f 77 77 77 33 2e  rc">http://www3.
3120: 73 71 6c 69 74 65 2e 6f 72 67 2f 63 67 69 2f 64  sqlite.org/cgi/d
3130: 6f 63 73 72 63 3c 2f 61 3e 20 28 46 72 65 6d 6f  ocsrc</a> (Fremo
3140: 6e 74 29 3c 62 72 3e 0a 3c 2f 62 6c 6f 63 6b 71  nt)<br>.</blockq
3150: 75 6f 74 65 3e 0a                                uote>.