/ Hex Artifact Content
Login

Artifact 2c20b3501860b36115c477a95a7f9355c755cf3b:


0000: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0010: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0050: 23 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20  # The following 
0060: 6d 61 63 72 6f 73 20 73 68 6f 75 6c 64 20 62 65  macros should be
0070: 20 64 65 66 69 6e 65 64 20 62 65 66 6f 72 65 20   defined before 
0080: 74 68 69 73 20 73 63 72 69 70 74 20 69 73 0a 23  this script is.#
0090: 20 69 6e 76 6f 6b 65 64 3a 0a 23 0a 23 20 54 4f   invoked:.#.# TO
00a0: 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54  P              T
00b0: 68 65 20 74 6f 70 6c 65 76 65 6c 20 64 69 72 65  he toplevel dire
00c0: 63 74 6f 72 79 20 6f 66 20 74 68 65 20 73 6f 75  ctory of the sou
00d0: 72 63 65 20 74 72 65 65 2e 20 20 54 68 69 73 20  rce tree.  This 
00e0: 69 73 20 74 68 65 0a 23 20 20 20 20 20 20 20 20  is the.#        
00f0: 20 20 20 20 20 20 20 20 20 20 64 69 72 65 63 74            direct
0100: 6f 72 79 20 74 68 61 74 20 63 6f 6e 74 61 69 6e  ory that contain
0110: 73 20 74 68 69 73 20 22 4d 61 6b 65 66 69 6c 65  s this "Makefile
0120: 2e 69 6e 22 20 61 6e 64 20 74 68 65 0a 23 20 20  .in" and the.#  
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0140: 22 63 6f 6e 66 69 67 75 72 65 2e 69 6e 22 20 73  "configure.in" s
0150: 63 72 69 70 74 2e 0a 23 0a 23 20 42 43 43 20 20  cript..#.# BCC  
0160: 20 20 20 20 20 20 20 20 20 20 20 20 43 20 43 6f              C Co
0170: 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70 74 69 6f  mpiler and optio
0180: 6e 73 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75  ns for use in bu
0190: 69 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c  ilding executabl
01a0: 65 73 20 74 68 61 74 0a 23 20 20 20 20 20 20 20  es that.#       
01b0: 20 20 20 20 20 20 20 20 20 20 20 77 69 6c 6c 20             will 
01c0: 72 75 6e 20 6f 6e 20 74 68 65 20 70 6c 61 74 66  run on the platf
01d0: 6f 72 6d 20 74 68 61 74 20 69 73 20 64 6f 69 6e  orm that is doin
01e0: 67 20 74 68 65 20 62 75 69 6c 64 2e 0a 23 0a 23  g the build..#.#
01f0: 20 55 53 4c 45 45 50 20 20 20 20 20 20 20 20 20   USLEEP         
0200: 20 20 49 66 20 74 68 65 20 74 61 72 67 65 74 20    If the target 
0210: 6f 70 65 72 61 74 69 6e 67 20 73 79 73 74 65 6d  operating system
0220: 20 73 75 70 70 6f 72 74 73 20 74 68 65 20 22 75   supports the "u
0230: 73 6c 65 65 70 28 29 22 20 73 79 73 74 65 6d 0a  sleep()" system.
0240: 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  #               
0250: 20 20 20 63 61 6c 6c 2c 20 74 68 65 6e 20 64 65     call, then de
0260: 66 69 6e 65 20 74 68 65 20 48 41 56 45 5f 55 53  fine the HAVE_US
0270: 4c 45 45 50 20 6d 61 63 72 6f 20 66 6f 72 20 61  LEEP macro for a
0280: 6c 6c 20 43 20 6d 6f 64 75 6c 65 73 2e 0a 23 0a  ll C modules..#.
0290: 23 20 54 48 52 45 41 44 53 41 46 45 20 20 20 20  # THREADSAFE    
02a0: 20 20 20 49 66 20 79 6f 75 20 77 61 6e 74 20 74     If you want t
02b0: 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72  he SQLite librar
02c0: 79 20 74 6f 20 62 65 20 73 61 66 65 20 66 6f 72  y to be safe for
02d0: 20 75 73 65 20 77 69 74 68 69 6e 20 61 20 0a 23   use within a .#
02e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
02f0: 20 20 6d 75 6c 74 69 2d 74 68 72 65 61 64 65 64    multi-threaded
0300: 20 70 72 6f 67 72 61 6d 2c 20 74 68 65 6e 20 64   program, then d
0310: 65 66 69 6e 65 20 74 68 65 20 66 6f 6c 6c 6f 77  efine the follow
0320: 69 6e 67 20 6d 61 63 72 6f 0a 23 20 20 20 20 20  ing macro.#     
0330: 20 20 20 20 20 20 20 20 20 20 20 20 20 61 70 70               app
0340: 72 6f 70 72 69 61 74 65 6c 79 3a 0a 23 0a 23 20  ropriately:.#.# 
0350: 54 48 52 45 41 44 4c 49 42 20 20 20 20 20 20 20  THREADLIB       
0360: 20 53 70 65 63 69 66 79 20 61 6e 79 20 65 78 74   Specify any ext
0370: 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e  ra linker option
0380: 73 20 6e 65 65 64 65 64 20 74 6f 20 6d 61 6b 65  s needed to make
0390: 20 74 68 65 20 6c 69 62 72 61 72 79 0a 23 20 20   the library.#  
03a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
03b0: 74 68 72 65 61 64 20 73 61 66 65 0a 23 0a 23 20  thread safe.#.# 
03c0: 4f 50 54 53 20 20 20 20 20 20 20 20 20 20 20 20  OPTS            
03d0: 20 45 78 74 72 61 20 63 6f 6d 70 69 6c 65 72 20   Extra compiler 
03e0: 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 6f 70 74  command-line opt
03f0: 69 6f 6e 73 2e 0a 23 0a 23 20 45 58 45 20 20 20  ions..#.# EXE   
0400: 20 20 20 20 20 20 20 20 20 20 20 54 68 65 20 73             The s
0410: 75 66 66 69 78 20 74 6f 20 61 64 64 20 74 6f 20  uffix to add to 
0420: 65 78 65 63 75 74 61 62 6c 65 20 66 69 6c 65 73  executable files
0430: 2e 20 20 22 2e 65 78 65 22 20 66 6f 72 20 77 69  .  ".exe" for wi
0440: 6e 64 6f 77 73 0a 23 20 20 20 20 20 20 20 20 20  ndows.#         
0450: 20 20 20 20 20 20 20 20 20 61 6e 64 20 22 22 20           and "" 
0460: 66 6f 72 20 55 6e 69 78 2e 0a 23 0a 23 20 54 43  for Unix..#.# TC
0470: 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43  C              C
0480: 20 43 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70   Compiler and op
0490: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e  tions for use in
04a0: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74   building execut
04b0: 61 62 6c 65 73 20 74 68 61 74 20 0a 23 20 20 20  ables that .#   
04c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77                 w
04d0: 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 74  ill run on the t
04e0: 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20  arget platform. 
04f0: 20 54 68 69 73 20 69 73 20 75 73 75 61 6c 6c 79   This is usually
0500: 20 74 68 65 20 73 61 6d 65 0a 23 20 20 20 20 20   the same.#     
0510: 20 20 20 20 20 20 20 20 20 20 20 20 20 61 73 20               as 
0520: 42 43 43 2c 20 75 6e 6c 65 73 73 20 79 6f 75 20  BCC, unless you 
0530: 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c  are cross-compil
0540: 69 6e 67 2e 0a 23 0a 23 20 41 52 20 20 20 20 20  ing..#.# AR     
0550: 20 20 20 20 20 20 20 20 20 20 54 6f 6f 6c 73 20            Tools 
0560: 75 73 65 64 20 74 6f 20 62 75 69 6c 64 20 61 20  used to build a 
0570: 73 74 61 74 69 63 20 6c 69 62 72 61 72 79 2e 0a  static library..
0580: 23 20 52 41 4e 4c 49 42 0a 23 0a 23 20 54 43 4c  # RANLIB.#.# TCL
0590: 5f 46 4c 41 47 53 20 20 20 20 20 20 20 20 45 78  _FLAGS        Ex
05a0: 74 72 61 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74  tra compiler opt
05b0: 69 6f 6e 73 20 6e 65 65 64 65 64 20 66 6f 72 20  ions needed for 
05c0: 70 72 6f 67 72 61 6d 73 20 74 68 61 74 20 75 73  programs that us
05d0: 65 20 74 68 65 0a 23 20 20 20 20 20 20 20 20 20  e the.#         
05e0: 20 20 20 20 20 20 20 20 20 54 43 4c 20 6c 69 62           TCL lib
05f0: 72 61 72 79 2e 0a 23 0a 23 20 4c 49 42 54 43 4c  rary..#.# LIBTCL
0600: 20 20 20 20 20 20 20 20 20 20 20 4c 69 6e 6b 65             Linke
0610: 72 20 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 64  r options needed
0620: 20 74 6f 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74   to link against
0630: 20 74 68 65 20 54 43 4c 20 6c 69 62 72 61 72 79   the TCL library
0640: 2e 0a 23 0a 23 20 52 45 41 44 4c 49 4e 45 5f 46  ..#.# READLINE_F
0650: 4c 41 47 53 20 20 20 43 6f 6d 70 69 6c 65 72 20  LAGS   Compiler 
0660: 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 64 20 66  options needed f
0670: 6f 72 20 70 72 6f 67 72 61 6d 73 20 74 68 61 74  or programs that
0680: 20 75 73 65 20 74 68 65 0a 23 20 20 20 20 20 20   use the.#      
0690: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 61 64              read
06a0: 6c 69 6e 65 28 29 20 6c 69 62 72 61 72 79 2e 0a  line() library..
06b0: 23 0a 23 20 4c 49 42 52 45 41 44 4c 49 4e 45 20  #.# LIBREADLINE 
06c0: 20 20 20 20 20 4c 69 6e 6b 65 72 20 6f 70 74 69       Linker opti
06d0: 6f 6e 73 20 6e 65 65 64 65 64 20 62 79 20 70 72  ons needed by pr
06e0: 6f 67 72 61 6d 73 20 75 73 69 6e 67 20 72 65 61  ograms using rea
06f0: 64 6c 69 6e 65 28 29 20 6d 75 73 74 0a 23 20 20  dline() must.#  
0700: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0710: 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e 0a 23 0a  link against..#.
0720: 23 20 4e 41 57 4b 20 20 20 20 20 20 20 20 20 20  # NAWK          
0730: 20 20 20 4e 61 77 6b 20 63 6f 6d 70 61 74 69 62     Nawk compatib
0740: 6c 65 20 61 77 6b 20 70 72 6f 67 72 61 6d 2e 20  le awk program. 
0750: 20 4f 6c 64 65 72 20 28 6f 62 73 6f 6c 65 74 65   Older (obsolete
0760: 3f 29 20 73 6f 6c 61 72 69 73 0a 23 20 20 20 20  ?) solaris.#    
0770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 79                sy
0780: 73 74 65 6d 73 20 6e 65 65 64 20 74 68 69 73 20  stems need this 
0790: 74 6f 20 61 76 6f 69 64 20 75 73 69 6e 67 20 74  to avoid using t
07a0: 68 65 20 6f 72 69 67 69 6e 61 6c 20 41 54 26 54  he original AT&T
07b0: 20 41 57 4b 2e 0a 23 0a 23 20 4f 6e 63 65 20 74   AWK..#.# Once t
07c0: 68 65 20 6d 61 63 72 6f 73 20 61 62 6f 76 65 20  he macros above 
07d0: 61 72 65 20 64 65 66 69 6e 65 64 2c 20 74 68 65  are defined, the
07e0: 20 72 65 73 74 20 6f 66 20 74 68 69 73 20 6d 61   rest of this ma
07f0: 6b 65 20 73 63 72 69 70 74 20 77 69 6c 6c 0a 23  ke script will.#
0800: 20 62 75 69 6c 64 20 74 68 65 20 53 51 4c 69 74   build the SQLit
0810: 65 20 6c 69 62 72 61 72 79 20 61 6e 64 20 74 65  e library and te
0820: 73 74 69 6e 67 20 74 6f 6f 6c 73 2e 0a 23 23 23  sting tools..###
0830: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0840: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0850: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0860: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0870: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23  #############..#
0880: 20 54 68 69 73 20 69 73 20 68 6f 77 20 77 65 20   This is how we 
0890: 63 6f 6d 70 69 6c 65 0a 23 0a 54 43 43 58 20 3d  compile.#.TCCX =
08a0: 20 24 28 54 43 43 29 20 24 28 4f 50 54 53 29 20   $(TCC) $(OPTS) 
08b0: 24 28 54 48 52 45 41 44 53 41 46 45 29 20 24 28  $(THREADSAFE) $(
08c0: 55 53 4c 45 45 50 29 20 2d 49 2e 20 2d 49 24 28  USLEEP) -I. -I$(
08d0: 54 4f 50 29 2f 73 72 63 0a 0a 23 20 4f 62 6a 65  TOP)/src..# Obje
08e0: 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 68 65  ct files for the
08f0: 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79 2e   SQLite library.
0900: 0a 23 0a 4c 49 42 4f 42 4a 2b 3d 20 61 6c 74 65  .#.LIBOBJ+= alte
0910: 72 2e 6f 20 61 6e 61 6c 79 7a 65 2e 6f 20 61 74  r.o analyze.o at
0920: 74 61 63 68 2e 6f 20 61 75 74 68 2e 6f 20 62 74  tach.o auth.o bt
0930: 72 65 65 2e 6f 20 62 75 69 6c 64 2e 6f 20 5c 0a  ree.o build.o \.
0940: 20 20 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63           callbac
0950: 6b 2e 6f 20 63 6f 6d 70 6c 65 74 65 2e 6f 20 64  k.o complete.o d
0960: 61 74 65 2e 6f 20 64 65 6c 65 74 65 2e 6f 20 5c  ate.o delete.o \
0970: 0a 20 20 20 20 20 20 20 20 20 65 78 70 72 2e 6f  .         expr.o
0980: 20 66 75 6e 63 2e 6f 20 68 61 73 68 2e 6f 20 69   func.o hash.o i
0990: 6e 73 65 72 74 2e 6f 20 6c 6f 61 64 65 78 74 2e  nsert.o loadext.
09a0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 61 69  o \.         mai
09b0: 6e 2e 6f 20 6f 70 63 6f 64 65 73 2e 6f 20 6f 73  n.o opcodes.o os
09c0: 2e 6f 20 6f 73 5f 6f 73 32 2e 6f 20 6f 73 5f 75  .o os_os2.o os_u
09d0: 6e 69 78 2e 6f 20 6f 73 5f 77 69 6e 2e 6f 20 5c  nix.o os_win.o \
09e0: 0a 20 20 20 20 20 20 20 20 20 70 61 67 65 72 2e  .         pager.
09f0: 6f 20 70 61 72 73 65 2e 6f 20 70 72 61 67 6d 61  o parse.o pragma
0a00: 2e 6f 20 70 72 65 70 61 72 65 2e 6f 20 70 72 69  .o prepare.o pri
0a10: 6e 74 66 2e 6f 20 72 61 6e 64 6f 6d 2e 6f 20 5c  ntf.o random.o \
0a20: 0a 20 20 20 20 20 20 20 20 20 73 65 6c 65 63 74  .         select
0a30: 2e 6f 20 74 61 62 6c 65 2e 6f 20 74 63 6c 73 71  .o table.o tclsq
0a40: 6c 69 74 65 2e 6f 20 74 6f 6b 65 6e 69 7a 65 2e  lite.o tokenize.
0a50: 6f 20 74 72 69 67 67 65 72 2e 6f 20 5c 0a 20 20  o trigger.o \.  
0a60: 20 20 20 20 20 20 20 75 70 64 61 74 65 2e 6f 20         update.o 
0a70: 75 74 69 6c 2e 6f 20 76 61 63 75 75 6d 2e 6f 20  util.o vacuum.o 
0a80: 5c 0a 20 20 20 20 20 20 20 20 20 76 64 62 65 2e  \.         vdbe.
0a90: 6f 20 76 64 62 65 61 70 69 2e 6f 20 76 64 62 65  o vdbeapi.o vdbe
0aa0: 61 75 78 2e 6f 20 76 64 62 65 66 69 66 6f 2e 6f  aux.o vdbefifo.o
0ab0: 20 76 64 62 65 6d 65 6d 2e 6f 20 5c 0a 20 20 20   vdbemem.o \.   
0ac0: 20 20 20 20 20 20 77 68 65 72 65 2e 6f 20 75 74        where.o ut
0ad0: 66 2e 6f 20 6c 65 67 61 63 79 2e 6f 20 76 74 61  f.o legacy.o vta
0ae0: 62 2e 6f 0a 0a 23 20 41 6c 6c 20 6f 66 20 74 68  b.o..# All of th
0af0: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69  e source code fi
0b00: 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 5c 0a 20  les..#.SRC = \. 
0b10: 20 24 28 54 4f 50 29 2f 73 72 63 2f 61 6c 74 65   $(TOP)/src/alte
0b20: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  r.c \.  $(TOP)/s
0b30: 72 63 2f 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20  rc/analyze.c \. 
0b40: 20 24 28 54 4f 50 29 2f 73 72 63 2f 61 74 74 61   $(TOP)/src/atta
0b50: 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  ch.c \.  $(TOP)/
0b60: 73 72 63 2f 61 75 74 68 2e 63 20 5c 0a 20 20 24  src/auth.c \.  $
0b70: 28 54 4f 50 29 2f 73 72 63 2f 62 74 72 65 65 2e  (TOP)/src/btree.
0b80: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
0b90: 2f 62 74 72 65 65 2e 68 20 5c 0a 20 20 24 28 54  /btree.h \.  $(T
0ba0: 4f 50 29 2f 73 72 63 2f 62 75 69 6c 64 2e 63 20  OP)/src/build.c 
0bb0: 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 63  \.  $(TOP)/src/c
0bc0: 61 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28  allback.c \.  $(
0bd0: 54 4f 50 29 2f 73 72 63 2f 63 6f 6d 70 6c 65 74  TOP)/src/complet
0be0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  e.c \.  $(TOP)/s
0bf0: 72 63 2f 64 61 74 65 2e 63 20 5c 0a 20 20 24 28  rc/date.c \.  $(
0c00: 54 4f 50 29 2f 73 72 63 2f 64 65 6c 65 74 65 2e  TOP)/src/delete.
0c10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
0c20: 2f 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f  /expr.c \.  $(TO
0c30: 50 29 2f 73 72 63 2f 66 75 6e 63 2e 63 20 5c 0a  P)/src/func.c \.
0c40: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 68 61 73    $(TOP)/src/has
0c50: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  h.c \.  $(TOP)/s
0c60: 72 63 2f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  rc/hash.h \.  $(
0c70: 54 4f 50 29 2f 73 72 63 2f 69 6e 73 65 72 74 2e  TOP)/src/insert.
0c80: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
0c90: 2f 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20 24 28  /legacy.c \.  $(
0ca0: 54 4f 50 29 2f 73 72 63 2f 6c 6f 61 64 65 78 74  TOP)/src/loadext
0cb0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72  .c \.  $(TOP)/sr
0cc0: 63 2f 6d 61 69 6e 2e 63 20 5c 0a 20 20 24 28 54  c/main.c \.  $(T
0cd0: 4f 50 29 2f 73 72 63 2f 6f 73 2e 63 20 5c 0a 20  OP)/src/os.c \. 
0ce0: 20 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 5f 6f   $(TOP)/src/os_o
0cf0: 73 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  s2.c \.  $(TOP)/
0d00: 73 72 63 2f 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a  src/os_unix.c \.
0d10: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 5f    $(TOP)/src/os_
0d20: 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  win.c \.  $(TOP)
0d30: 2f 73 72 63 2f 70 61 67 65 72 2e 63 20 5c 0a 20  /src/pager.c \. 
0d40: 20 24 28 54 4f 50 29 2f 73 72 63 2f 70 61 67 65   $(TOP)/src/page
0d50: 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  r.h \.  $(TOP)/s
0d60: 72 63 2f 70 61 72 73 65 2e 79 20 5c 0a 20 20 24  rc/parse.y \.  $
0d70: 28 54 4f 50 29 2f 73 72 63 2f 70 72 61 67 6d 61  (TOP)/src/pragma
0d80: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72  .c \.  $(TOP)/sr
0d90: 63 2f 70 72 65 70 61 72 65 2e 63 20 5c 0a 20 20  c/prepare.c \.  
0da0: 24 28 54 4f 50 29 2f 73 72 63 2f 70 72 69 6e 74  $(TOP)/src/print
0db0: 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  f.c \.  $(TOP)/s
0dc0: 72 63 2f 72 61 6e 64 6f 6d 2e 63 20 5c 0a 20 20  rc/random.c \.  
0dd0: 24 28 54 4f 50 29 2f 73 72 63 2f 73 65 6c 65 63  $(TOP)/src/selec
0de0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  t.c \.  $(TOP)/s
0df0: 72 63 2f 73 68 65 6c 6c 2e 63 20 5c 0a 20 20 24  rc/shell.c \.  $
0e00: 28 54 4f 50 29 2f 73 72 63 2f 73 71 6c 69 74 65  (TOP)/src/sqlite
0e10: 2e 68 2e 69 6e 20 5c 0a 20 20 24 28 54 4f 50 29  .h.in \.  $(TOP)
0e20: 2f 73 72 63 2f 73 71 6c 69 74 65 33 65 78 74 2e  /src/sqlite3ext.
0e30: 68 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  h \.  $(TOP)/src
0e40: 2f 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a 20  /sqliteInt.h \. 
0e50: 20 24 28 54 4f 50 29 2f 73 72 63 2f 74 61 62 6c   $(TOP)/src/tabl
0e60: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  e.c \.  $(TOP)/s
0e70: 72 63 2f 74 63 6c 73 71 6c 69 74 65 2e 63 20 5c  rc/tclsqlite.c \
0e80: 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 74 6f  .  $(TOP)/src/to
0e90: 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28 54  kenize.c \.  $(T
0ea0: 4f 50 29 2f 73 72 63 2f 74 72 69 67 67 65 72 2e  OP)/src/trigger.
0eb0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
0ec0: 2f 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50  /utf.c \.  $(TOP
0ed0: 29 2f 73 72 63 2f 75 70 64 61 74 65 2e 63 20 5c  )/src/update.c \
0ee0: 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 75 74  .  $(TOP)/src/ut
0ef0: 69 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  il.c \.  $(TOP)/
0f00: 73 72 63 2f 76 61 63 75 75 6d 2e 63 20 5c 0a 20  src/vacuum.c \. 
0f10: 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65   $(TOP)/src/vdbe
0f20: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72  .c \.  $(TOP)/sr
0f30: 63 2f 76 64 62 65 2e 68 20 5c 0a 20 20 24 28 54  c/vdbe.h \.  $(T
0f40: 4f 50 29 2f 73 72 63 2f 76 64 62 65 61 70 69 2e  OP)/src/vdbeapi.
0f50: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
0f60: 2f 76 64 62 65 61 75 78 2e 63 20 5c 0a 20 20 24  /vdbeaux.c \.  $
0f70: 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65 66 69  (TOP)/src/vdbefi
0f80: 66 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  fo.c \.  $(TOP)/
0f90: 73 72 63 2f 76 64 62 65 6d 65 6d 2e 63 20 5c 0a  src/vdbemem.c \.
0fa0: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62    $(TOP)/src/vdb
0fb0: 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50  eInt.h \.  $(TOP
0fc0: 29 2f 73 72 63 2f 76 74 61 62 2e 63 20 5c 0a 20  )/src/vtab.c \. 
0fd0: 20 24 28 54 4f 50 29 2f 73 72 63 2f 77 68 65 72   $(TOP)/src/wher
0fe0: 65 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  e.c..# Source co
0ff0: 64 65 20 66 6f 72 20 65 78 74 65 6e 73 69 6f 6e  de for extension
1000: 73 0a 23 0a 53 52 43 20 2b 3d 20 5c 0a 20 20 24  s.#.SRC += \.  $
1010: 28 54 4f 50 29 2f 65 78 74 2f 66 74 73 31 2f 66  (TOP)/ext/fts1/f
1020: 74 73 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ts1.c \.  $(TOP)
1030: 2f 65 78 74 2f 66 74 73 31 2f 66 74 73 31 2e 68  /ext/fts1/fts1.h
1040: 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f   \.  $(TOP)/ext/
1050: 66 74 73 31 2f 66 74 73 31 5f 68 61 73 68 2e 63  fts1/fts1_hash.c
1060: 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f   \.  $(TOP)/ext/
1070: 66 74 73 31 2f 66 74 73 31 5f 68 61 73 68 2e 68  fts1/fts1_hash.h
1080: 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f   \.  $(TOP)/ext/
1090: 66 74 73 31 2f 66 74 73 31 5f 70 6f 72 74 65 72  fts1/fts1_porter
10a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78  .c \.  $(TOP)/ex
10b0: 74 2f 66 74 73 31 2f 66 74 73 31 5f 74 6f 6b 65  t/fts1/fts1_toke
10c0: 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f  nizer.h \.  $(TO
10d0: 50 29 2f 65 78 74 2f 66 74 73 31 2f 66 74 73 31  P)/ext/fts1/fts1
10e0: 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 53 52  _tokenizer1.c.SR
10f0: 43 20 2b 3d 20 5c 0a 20 20 24 28 54 4f 50 29 2f  C += \.  $(TOP)/
1100: 65 78 74 2f 66 74 73 32 2f 66 74 73 32 2e 63 20  ext/fts2/fts2.c 
1110: 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f 66  \.  $(TOP)/ext/f
1120: 74 73 32 2f 66 74 73 32 2e 68 20 5c 0a 20 20 24  ts2/fts2.h \.  $
1130: 28 54 4f 50 29 2f 65 78 74 2f 66 74 73 32 2f 66  (TOP)/ext/fts2/f
1140: 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24  ts2_hash.c \.  $
1150: 28 54 4f 50 29 2f 65 78 74 2f 66 74 73 32 2f 66  (TOP)/ext/fts2/f
1160: 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24  ts2_hash.h \.  $
1170: 28 54 4f 50 29 2f 65 78 74 2f 66 74 73 32 2f 66  (TOP)/ext/fts2/f
1180: 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20  ts2_porter.c \. 
1190: 20 24 28 54 4f 50 29 2f 65 78 74 2f 66 74 73 32   $(TOP)/ext/fts2
11a0: 2f 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  /fts2_tokenizer.
11b0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74  h \.  $(TOP)/ext
11c0: 2f 66 74 73 32 2f 66 74 73 32 5f 74 6f 6b 65 6e  /fts2/fts2_token
11d0: 69 7a 65 72 31 2e 63 0a 0a 23 20 47 65 6e 65 72  izer1.c..# Gener
11e0: 61 74 65 64 20 73 6f 75 72 63 65 20 63 6f 64 65  ated source code
11f0: 20 66 69 6c 65 73 0a 23 0a 53 52 43 20 2b 3d 20   files.#.SRC += 
1200: 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e  \.  keywordhash.
1210: 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63 20  h \.  opcodes.c 
1220: 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a  \.  opcodes.h \.
1230: 20 20 70 61 72 73 65 2e 63 20 5c 0a 20 20 70 61    parse.c \.  pa
1240: 72 73 65 2e 68 20 5c 0a 20 20 73 71 6c 69 74 65  rse.h \.  sqlite
1250: 33 2e 68 0a 0a 0a 23 20 53 6f 75 72 63 65 20 63  3.h...# Source c
1260: 6f 64 65 20 74 6f 20 74 68 65 20 74 65 73 74 20  ode to the test 
1270: 66 69 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52 43  files..#.TESTSRC
1280: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72   = \.  $(TOP)/sr
1290: 63 2f 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28  c/btree.c \.  $(
12a0: 54 4f 50 29 2f 73 72 63 2f 64 61 74 65 2e 63 20  TOP)/src/date.c 
12b0: 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 66  \.  $(TOP)/src/f
12c0: 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  unc.c \.  $(TOP)
12d0: 2f 73 72 63 2f 69 6e 73 65 72 74 2e 63 20 5c 0a  /src/insert.c \.
12e0: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 6d 61 69    $(TOP)/src/mai
12f0: 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  n.c \.  $(TOP)/s
1300: 72 63 2f 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f  rc/os.c \.  $(TO
1310: 50 29 2f 73 72 63 2f 6f 73 5f 6f 73 32 2e 63 20  P)/src/os_os2.c 
1320: 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 6f  \.  $(TOP)/src/o
1330: 73 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54  s_unix.c \.  $(T
1340: 4f 50 29 2f 73 72 63 2f 6f 73 5f 77 69 6e 2e 63  OP)/src/os_win.c
1350: 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f   \.  $(TOP)/src/
1360: 70 61 67 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  pager.c \.  $(TO
1370: 50 29 2f 73 72 63 2f 70 72 61 67 6d 61 2e 63 20  P)/src/pragma.c 
1380: 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 70  \.  $(TOP)/src/p
1390: 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f  rintf.c \.  $(TO
13a0: 50 29 2f 73 72 63 2f 74 65 73 74 31 2e 63 20 5c  P)/src/test1.c \
13b0: 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 74 65  .  $(TOP)/src/te
13c0: 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  st2.c \.  $(TOP)
13d0: 2f 73 72 63 2f 74 65 73 74 33 2e 63 20 5c 0a 20  /src/test3.c \. 
13e0: 20 24 28 54 4f 50 29 2f 73 72 63 2f 74 65 73 74   $(TOP)/src/test
13f0: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73  4.c \.  $(TOP)/s
1400: 72 63 2f 74 65 73 74 35 2e 63 20 5c 0a 20 20 24  rc/test5.c \.  $
1410: 28 54 4f 50 29 2f 73 72 63 2f 74 65 73 74 36 2e  (TOP)/src/test6.
1420: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
1430: 2f 74 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 54  /test7.c \.  $(T
1440: 4f 50 29 2f 73 72 63 2f 74 65 73 74 38 2e 63 20  OP)/src/test8.c 
1450: 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 74  \.  $(TOP)/src/t
1460: 65 73 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est9.c \.  $(TOP
1470: 29 2f 73 72 63 2f 74 65 73 74 5f 61 75 74 6f 65  )/src/test_autoe
1480: 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  xt.c \.  $(TOP)/
1490: 73 72 63 2f 74 65 73 74 5f 61 73 79 6e 63 2e 63  src/test_async.c
14a0: 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63 2f   \.  $(TOP)/src/
14b0: 74 65 73 74 5f 6d 64 35 2e 63 20 5c 0a 20 20 24  test_md5.c \.  $
14c0: 28 54 4f 50 29 2f 73 72 63 2f 74 65 73 74 5f 73  (TOP)/src/test_s
14d0: 63 68 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f  chema.c \.  $(TO
14e0: 50 29 2f 73 72 63 2f 74 65 73 74 5f 73 65 72 76  P)/src/test_serv
14f0: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f  er.c \.  $(TOP)/
1500: 73 72 63 2f 74 65 73 74 5f 74 63 6c 76 61 72 2e  src/test_tclvar.
1510: 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72 63  c \.  $(TOP)/src
1520: 2f 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50  /utf.c \.  $(TOP
1530: 29 2f 73 72 63 2f 75 74 69 6c 2e 63 20 5c 0a 20  )/src/util.c \. 
1540: 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65   $(TOP)/src/vdbe
1550: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 73 72  .c \.  $(TOP)/sr
1560: 63 2f 76 64 62 65 61 75 78 2e 63 20 5c 0a 20 20  c/vdbeaux.c \.  
1570: 24 28 54 4f 50 29 2f 73 72 63 2f 77 68 65 72 65  $(TOP)/src/where
1580: 2e 63 0a 0a 23 20 48 65 61 64 65 72 20 66 69 6c  .c..# Header fil
1590: 65 73 20 75 73 65 64 20 62 79 20 61 6c 6c 20 6c  es used by all l
15a0: 69 62 72 61 72 79 20 73 6f 75 72 63 65 20 66 69  ibrary source fi
15b0: 6c 65 73 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a 20  les..#.HDR = \. 
15c0: 20 20 73 71 6c 69 74 65 33 2e 68 20 20 5c 0a 20    sqlite3.h  \. 
15d0: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 62 74 72    $(TOP)/src/btr
15e0: 65 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  ee.h \.   $(TOP)
15f0: 2f 73 72 63 2f 68 61 73 68 2e 68 20 5c 0a 20 20  /src/hash.h \.  
1600: 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20   opcodes.h \.   
1610: 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 2e 68 20  $(TOP)/src/os.h 
1620: 5c 0a 20 20 20 24 28 54 4f 50 29 2f 73 72 63 2f  \.   $(TOP)/src/
1630: 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20  os_common.h \.  
1640: 20 24 28 54 4f 50 29 2f 73 72 63 2f 73 71 6c 69   $(TOP)/src/sqli
1650: 74 65 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28  te3ext.h \.   $(
1660: 54 4f 50 29 2f 73 72 63 2f 73 71 6c 69 74 65 49  TOP)/src/sqliteI
1670: 6e 74 2e 68 20 20 5c 0a 20 20 20 24 28 54 4f 50  nt.h  \.   $(TOP
1680: 29 2f 73 72 63 2f 76 64 62 65 2e 68 20 5c 0a 20  )/src/vdbe.h \. 
1690: 20 20 70 61 72 73 65 2e 68 0a 0a 23 20 48 65 61    parse.h..# Hea
16a0: 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20 62  der files used b
16b0: 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45  y extensions.#.E
16c0: 58 54 48 44 52 20 2b 3d 20 5c 0a 20 20 24 28 54  XTHDR += \.  $(T
16d0: 4f 50 29 2f 65 78 74 2f 66 74 73 31 2f 66 74 73  OP)/ext/fts1/fts
16e0: 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65  1.h \.  $(TOP)/e
16f0: 78 74 2f 66 74 73 31 2f 66 74 73 31 5f 68 61 73  xt/fts1/fts1_has
1700: 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65  h.h \.  $(TOP)/e
1710: 78 74 2f 66 74 73 31 2f 66 74 73 31 5f 74 6f 6b  xt/fts1/fts1_tok
1720: 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20  enizer.h.EXTHDR 
1730: 2b 3d 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78  += \.  $(TOP)/ex
1740: 74 2f 66 74 73 32 2f 66 74 73 32 2e 68 20 5c 0a  t/fts2/fts2.h \.
1750: 20 20 24 28 54 4f 50 29 2f 65 78 74 2f 66 74 73    $(TOP)/ext/fts
1760: 32 2f 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a  2/fts2_hash.h \.
1770: 20 20 24 28 54 4f 50 29 2f 65 78 74 2f 66 74 73    $(TOP)/ext/fts
1780: 32 2f 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2/fts2_tokenizer
1790: 2e 68 0a 0a 0a 23 20 48 65 61 64 65 72 20 66 69  .h...# Header fi
17a0: 6c 65 73 20 75 73 65 64 20 62 79 20 74 68 65 20  les used by the 
17b0: 56 44 42 45 20 73 75 62 6d 6f 64 75 6c 65 0a 23  VDBE submodule.#
17c0: 0a 56 44 42 45 48 44 52 20 3d 20 5c 0a 20 20 20  .VDBEHDR = \.   
17d0: 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65 49  $(TOP)/src/vdbeI
17e0: 6e 74 2e 68 0a 0a 23 20 54 68 69 73 20 69 73 20  nt.h..# This is 
17f0: 74 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65  the default Make
1800: 66 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68  file target.  Th
1810: 65 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64  e objects listed
1820: 20 68 65 72 65 0a 23 20 61 72 65 20 77 68 61 74   here.# are what
1830: 20 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20   get build when 
1840: 79 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d  you type just "m
1850: 61 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67  ake" with no arg
1860: 75 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 73  uments..#.all:.s
1870: 71 6c 69 74 65 33 2e 68 20 6c 69 62 73 71 6c 69  qlite3.h libsqli
1880: 74 65 33 2e 61 20 73 71 6c 69 74 65 33 24 28 45  te3.a sqlite3$(E
1890: 58 45 29 0a 0a 23 20 47 65 6e 65 72 61 74 65 20  XE)..# Generate 
18a0: 74 68 65 20 66 69 6c 65 20 22 6c 61 73 74 5f 63  the file "last_c
18b0: 68 61 6e 67 65 22 20 77 68 69 63 68 20 63 6f 6e  hange" which con
18c0: 74 61 69 6e 73 20 74 68 65 20 64 61 74 65 20 6f  tains the date o
18d0: 66 20 63 68 61 6e 67 65 0a 23 20 6f 66 20 74 68  f change.# of th
18e0: 65 20 6d 6f 73 74 20 72 65 63 65 6e 74 6c 79 20  e most recently 
18f0: 6d 6f 64 69 66 69 65 64 20 73 6f 75 72 63 65 20  modified source 
1900: 63 6f 64 65 20 66 69 6c 65 0a 23 0a 6c 61 73 74  code file.#.last
1910: 5f 63 68 61 6e 67 65 3a 09 24 28 53 52 43 29 0a  _change:.$(SRC).
1920: 09 63 61 74 20 24 28 53 52 43 29 20 7c 20 67 72  .cat $(SRC) | gr
1930: 65 70 20 27 24 24 49 64 3a 20 27 20 7c 20 73 6f  ep '$$Id: ' | so
1940: 72 74 20 2d 6b 20 35 20 7c 20 74 61 69 6c 20 2d  rt -k 5 | tail -
1950: 31 20 5c 0a 20 20 20 20 20 20 20 20 20 20 7c 20  1 \.          | 
1960: 24 28 4e 41 57 4b 29 20 27 7b 70 72 69 6e 74 20  $(NAWK) '{print 
1970: 24 24 35 2c 24 24 36 7d 27 20 3e 6c 61 73 74 5f  $$5,$$6}' >last_
1980: 63 68 61 6e 67 65 0a 0a 6c 69 62 73 71 6c 69 74  change..libsqlit
1990: 65 33 2e 61 3a 09 24 28 4c 49 42 4f 42 4a 29 0a  e3.a:.$(LIBOBJ).
19a0: 09 24 28 41 52 29 20 6c 69 62 73 71 6c 69 74 65  .$(AR) libsqlite
19b0: 33 2e 61 20 24 28 4c 49 42 4f 42 4a 29 0a 09 24  3.a $(LIBOBJ)..$
19c0: 28 52 41 4e 4c 49 42 29 20 6c 69 62 73 71 6c 69  (RANLIB) libsqli
19d0: 74 65 33 2e 61 0a 0a 73 71 6c 69 74 65 33 24 28  te3.a..sqlite3$(
19e0: 45 58 45 29 3a 09 24 28 54 4f 50 29 2f 73 72 63  EXE):.$(TOP)/src
19f0: 2f 73 68 65 6c 6c 2e 63 20 6c 69 62 73 71 6c 69  /shell.c libsqli
1a00: 74 65 33 2e 61 20 73 71 6c 69 74 65 33 2e 68 0a  te3.a sqlite3.h.
1a10: 09 24 28 54 43 43 58 29 20 24 28 52 45 41 44 4c  .$(TCCX) $(READL
1a20: 49 4e 45 5f 46 4c 41 47 53 29 20 2d 6f 20 73 71  INE_FLAGS) -o sq
1a30: 6c 69 74 65 33 24 28 45 58 45 29 20 24 28 54 4f  lite3$(EXE) $(TO
1a40: 50 29 2f 73 72 63 2f 73 68 65 6c 6c 2e 63 20 5c  P)/src/shell.c \
1a50: 0a 09 09 6c 69 62 73 71 6c 69 74 65 33 2e 61 20  ...libsqlite3.a 
1a60: 24 28 4c 49 42 52 45 41 44 4c 49 4e 45 29 20 24  $(LIBREADLINE) $
1a70: 28 54 4c 49 42 53 29 20 24 28 54 48 52 45 41 44  (TLIBS) $(THREAD
1a80: 4c 49 42 29 0a 0a 6f 62 6a 65 63 74 73 3a 20 24  LIB)..objects: $
1a90: 28 4c 49 42 4f 42 4a 5f 4f 52 49 47 29 0a 0a 23  (LIBOBJ_ORIG)..#
1aa0: 20 54 68 69 73 20 74 61 72 67 65 74 20 63 72 65   This target cre
1ab0: 61 74 65 73 20 61 20 64 69 72 65 63 74 6f 72 79  ates a directory
1ac0: 20 6e 61 6d 65 64 20 22 74 73 72 63 22 20 61 6e   named "tsrc" an
1ad0: 64 20 66 69 6c 6c 73 20 69 74 20 77 69 74 68 0a  d fills it with.
1ae0: 23 20 63 6f 70 69 65 73 20 6f 66 20 61 6c 6c 20  # copies of all 
1af0: 6f 66 20 74 68 65 20 43 20 73 6f 75 72 63 65 20  of the C source 
1b00: 63 6f 64 65 20 61 6e 64 20 68 65 61 64 65 72 20  code and header 
1b10: 66 69 6c 65 73 20 6e 65 65 64 65 64 20 74 6f 0a  files needed to.
1b20: 23 20 62 75 69 6c 64 20 6f 6e 20 74 68 65 20 74  # build on the t
1b30: 61 72 67 65 74 20 73 79 73 74 65 6d 2e 20 20 53  arget system.  S
1b40: 6f 6d 65 20 6f 66 20 74 68 65 20 43 20 73 6f 75  ome of the C sou
1b50: 72 63 65 20 63 6f 64 65 20 61 6e 64 20 68 65 61  rce code and hea
1b60: 64 65 72 0a 23 20 66 69 6c 65 73 20 61 72 65 20  der.# files are 
1b70: 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65  automatically ge
1b80: 6e 65 72 61 74 65 64 2e 20 20 54 68 69 73 20 74  nerated.  This t
1b90: 61 72 67 65 74 20 74 61 6b 65 73 20 63 61 72 65  arget takes care
1ba0: 20 6f 66 0a 23 20 61 6c 6c 20 74 68 61 74 20 61   of.# all that a
1bb0: 75 74 6f 6d 61 74 69 63 20 67 65 6e 65 72 61 74  utomatic generat
1bc0: 69 6f 6e 2e 0a 23 0a 74 61 72 67 65 74 5f 73 6f  ion..#.target_so
1bd0: 75 72 63 65 3a 09 24 28 53 52 43 29 0a 09 72 6d  urce:.$(SRC)..rm
1be0: 20 2d 72 66 20 74 73 72 63 0a 09 6d 6b 64 69 72   -rf tsrc..mkdir
1bf0: 20 74 73 72 63 0a 09 63 70 20 2d 66 20 24 28 53   tsrc..cp -f $(S
1c00: 52 43 29 20 24 28 54 4f 50 29 2f 73 72 63 2f 2a  RC) $(TOP)/src/*
1c10: 2e 68 20 74 73 72 63 20 32 3e 2f 64 65 76 2f 6e  .h tsrc 2>/dev/n
1c20: 75 6c 6c 0a 09 72 6d 20 74 73 72 63 2f 73 71 6c  ull..rm tsrc/sql
1c30: 69 74 65 2e 68 2e 69 6e 20 74 73 72 63 2f 70 61  ite.h.in tsrc/pa
1c40: 72 73 65 2e 79 0a 0a 73 71 6c 69 74 65 33 2e 63  rse.y..sqlite3.c
1c50: 3a 09 74 61 72 67 65 74 5f 73 6f 75 72 63 65 20  :.target_source 
1c60: 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 6d 6b 73 71  $(TOP)/tool/mksq
1c70: 6c 69 74 65 33 63 2e 74 63 6c 0a 09 74 63 6c 73  lite3c.tcl..tcls
1c80: 68 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 6d 6b  h $(TOP)/tool/mk
1c90: 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 09 63 70  sqlite3c.tcl..cp
1ca0: 20 73 71 6c 69 74 65 33 2e 63 20 74 63 6c 73 71   sqlite3.c tclsq
1cb0: 6c 69 74 65 33 2e 63 0a 09 63 61 74 20 24 28 54  lite3.c..cat $(T
1cc0: 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71 6c 69 74  OP)/src/tclsqlit
1cd0: 65 2e 63 20 3e 3e 74 63 6c 73 71 6c 69 74 65 33  e.c >>tclsqlite3
1ce0: 2e 63 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29  .c..tclsh $(TOP)
1cf0: 2f 74 6f 6f 6c 2f 6d 6b 73 71 6c 69 74 65 33 69  /tool/mksqlite3i
1d00: 6e 74 65 72 6e 61 6c 68 2e 74 63 6c 0a 0a 23 20  nternalh.tcl..# 
1d10: 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74  Rules to build t
1d20: 68 65 20 4c 45 4d 4f 4e 20 63 6f 6d 70 69 6c 65  he LEMON compile
1d30: 72 20 67 65 6e 65 72 61 74 6f 72 0a 23 0a 6c 65  r generator.#.le
1d40: 6d 6f 6e 3a 09 24 28 54 4f 50 29 2f 74 6f 6f 6c  mon:.$(TOP)/tool
1d50: 2f 6c 65 6d 6f 6e 2e 63 20 24 28 54 4f 50 29 2f  /lemon.c $(TOP)/
1d60: 74 6f 6f 6c 2f 6c 65 6d 70 61 72 2e 63 0a 09 24  tool/lempar.c..$
1d70: 28 42 43 43 29 20 2d 6f 20 6c 65 6d 6f 6e 20 24  (BCC) -o lemon $
1d80: 28 54 4f 50 29 2f 74 6f 6f 6c 2f 6c 65 6d 6f 6e  (TOP)/tool/lemon
1d90: 2e 63 0a 09 63 70 20 24 28 54 4f 50 29 2f 74 6f  .c..cp $(TOP)/to
1da0: 6f 6c 2f 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a 23  ol/lempar.c ...#
1db0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build 
1dc0: 69 6e 64 69 76 69 64 75 61 6c 20 66 69 6c 65 73  individual files
1dd0: 0a 23 0a 61 6c 74 65 72 2e 6f 3a 09 24 28 54 4f  .#.alter.o:.$(TO
1de0: 50 29 2f 73 72 63 2f 61 6c 74 65 72 2e 63 20 24  P)/src/alter.c $
1df0: 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d  (HDR)..$(TCCX) -
1e00: 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 61 6c 74  c $(TOP)/src/alt
1e10: 65 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6f 3a  er.c..analyze.o:
1e20: 09 24 28 54 4f 50 29 2f 73 72 63 2f 61 6e 61 6c  .$(TOP)/src/anal
1e30: 79 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  yze.c $(HDR)..$(
1e40: 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f  TCCX) -c $(TOP)/
1e50: 73 72 63 2f 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61  src/analyze.c..a
1e60: 74 74 61 63 68 2e 6f 3a 09 24 28 54 4f 50 29 2f  ttach.o:.$(TOP)/
1e70: 73 72 63 2f 61 74 74 61 63 68 2e 63 20 24 28 48  src/attach.c $(H
1e80: 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20  DR)..$(TCCX) -c 
1e90: 24 28 54 4f 50 29 2f 73 72 63 2f 61 74 74 61 63  $(TOP)/src/attac
1ea0: 68 2e 63 0a 0a 61 75 74 68 2e 6f 3a 09 24 28 54  h.c..auth.o:.$(T
1eb0: 4f 50 29 2f 73 72 63 2f 61 75 74 68 2e 63 20 24  OP)/src/auth.c $
1ec0: 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d  (HDR)..$(TCCX) -
1ed0: 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 61 75 74  c $(TOP)/src/aut
1ee0: 68 2e 63 0a 0a 62 74 72 65 65 2e 6f 3a 09 24 28  h.c..btree.o:.$(
1ef0: 54 4f 50 29 2f 73 72 63 2f 62 74 72 65 65 2e 63  TOP)/src/btree.c
1f00: 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 2f 73   $(HDR) $(TOP)/s
1f10: 72 63 2f 70 61 67 65 72 2e 68 0a 09 24 28 54 43  rc/pager.h..$(TC
1f20: 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72  CX) -c $(TOP)/sr
1f30: 63 2f 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c 64  c/btree.c..build
1f40: 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 62  .o:.$(TOP)/src/b
1f50: 75 69 6c 64 2e 63 20 24 28 48 44 52 29 0a 09 24  uild.c $(HDR)..$
1f60: 28 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29  (TCCX) -c $(TOP)
1f70: 2f 73 72 63 2f 62 75 69 6c 64 2e 63 0a 0a 63 61  /src/build.c..ca
1f80: 6c 6c 62 61 63 6b 2e 6f 3a 09 24 28 54 4f 50 29  llback.o:.$(TOP)
1f90: 2f 73 72 63 2f 63 61 6c 6c 62 61 63 6b 2e 63 20  /src/callback.c 
1fa0: 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20  $(HDR)..$(TCCX) 
1fb0: 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 63 61  -c $(TOP)/src/ca
1fc0: 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f 6d 70 6c 65  llback.c..comple
1fd0: 74 65 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63  te.o:.$(TOP)/src
1fe0: 2f 63 6f 6d 70 6c 65 74 65 2e 63 20 24 28 48 44  /complete.c $(HD
1ff0: 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20 24  R)..$(TCCX) -c $
2000: 28 54 4f 50 29 2f 73 72 63 2f 63 6f 6d 70 6c 65  (TOP)/src/comple
2010: 74 65 2e 63 0a 0a 64 61 74 65 2e 6f 3a 09 24 28  te.c..date.o:.$(
2020: 54 4f 50 29 2f 73 72 63 2f 64 61 74 65 2e 63 20  TOP)/src/date.c 
2030: 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20  $(HDR)..$(TCCX) 
2040: 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 64 61  -c $(TOP)/src/da
2050: 74 65 2e 63 0a 0a 64 65 6c 65 74 65 2e 6f 3a 09  te.c..delete.o:.
2060: 24 28 54 4f 50 29 2f 73 72 63 2f 64 65 6c 65 74  $(TOP)/src/delet
2070: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 54 43  e.c $(HDR)..$(TC
2080: 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72  CX) -c $(TOP)/sr
2090: 63 2f 64 65 6c 65 74 65 2e 63 0a 0a 65 78 70 72  c/delete.c..expr
20a0: 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 65  .o:.$(TOP)/src/e
20b0: 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  xpr.c $(HDR)..$(
20c0: 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f  TCCX) -c $(TOP)/
20d0: 73 72 63 2f 65 78 70 72 2e 63 0a 0a 66 75 6e 63  src/expr.c..func
20e0: 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 66  .o:.$(TOP)/src/f
20f0: 75 6e 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28  unc.c $(HDR)..$(
2100: 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f  TCCX) -c $(TOP)/
2110: 73 72 63 2f 66 75 6e 63 2e 63 0a 0a 68 61 73 68  src/func.c..hash
2120: 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 68  .o:.$(TOP)/src/h
2130: 61 73 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ash.c $(HDR)..$(
2140: 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f  TCCX) -c $(TOP)/
2150: 73 72 63 2f 68 61 73 68 2e 63 0a 0a 69 6e 73 65  src/hash.c..inse
2160: 72 74 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63  rt.o:.$(TOP)/src
2170: 2f 69 6e 73 65 72 74 2e 63 20 24 28 48 44 52 29  /insert.c $(HDR)
2180: 0a 09 24 28 54 43 43 58 29 20 2d 63 20 24 28 54  ..$(TCCX) -c $(T
2190: 4f 50 29 2f 73 72 63 2f 69 6e 73 65 72 74 2e 63  OP)/src/insert.c
21a0: 0a 0a 6c 65 67 61 63 79 2e 6f 3a 09 24 28 54 4f  ..legacy.o:.$(TO
21b0: 50 29 2f 73 72 63 2f 6c 65 67 61 63 79 2e 63 20  P)/src/legacy.c 
21c0: 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20  $(HDR)..$(TCCX) 
21d0: 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 6c 65  -c $(TOP)/src/le
21e0: 67 61 63 79 2e 63 0a 0a 6c 6f 61 64 65 78 74 2e  gacy.c..loadext.
21f0: 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 6c 6f  o:.$(TOP)/src/lo
2200: 61 64 65 78 74 2e 63 20 24 28 48 44 52 29 0a 09  adext.c $(HDR)..
2210: 24 28 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50  $(TCCX) -c $(TOP
2220: 29 2f 73 72 63 2f 6c 6f 61 64 65 78 74 2e 63 0a  )/src/loadext.c.
2230: 0a 6d 61 69 6e 2e 6f 3a 09 24 28 54 4f 50 29 2f  .main.o:.$(TOP)/
2240: 73 72 63 2f 6d 61 69 6e 2e 63 20 24 28 48 44 52  src/main.c $(HDR
2250: 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20 24 28  )..$(TCCX) -c $(
2260: 54 4f 50 29 2f 73 72 63 2f 6d 61 69 6e 2e 63 0a  TOP)/src/main.c.
2270: 0a 70 61 67 65 72 2e 6f 3a 09 24 28 54 4f 50 29  .pager.o:.$(TOP)
2280: 2f 73 72 63 2f 70 61 67 65 72 2e 63 20 24 28 48  /src/pager.c $(H
2290: 44 52 29 20 24 28 54 4f 50 29 2f 73 72 63 2f 70  DR) $(TOP)/src/p
22a0: 61 67 65 72 2e 68 0a 09 24 28 54 43 43 58 29 20  ager.h..$(TCCX) 
22b0: 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 70 61  -c $(TOP)/src/pa
22c0: 67 65 72 2e 63 0a 0a 6f 70 63 6f 64 65 73 2e 6f  ger.c..opcodes.o
22d0: 3a 09 6f 70 63 6f 64 65 73 2e 63 0a 09 24 28 54  :.opcodes.c..$(T
22e0: 43 43 58 29 20 2d 63 20 6f 70 63 6f 64 65 73 2e  CCX) -c opcodes.
22f0: 63 0a 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f 70  c..opcodes.c:.op
2300: 63 6f 64 65 73 2e 68 20 24 28 54 4f 50 29 2f 6d  codes.h $(TOP)/m
2310: 6b 6f 70 63 6f 64 65 63 2e 61 77 6b 0a 09 73 6f  kopcodec.awk..so
2320: 72 74 20 2d 6e 20 2d 62 20 2d 6b 20 33 20 6f 70  rt -n -b -k 3 op
2330: 63 6f 64 65 73 2e 68 20 7c 20 24 28 4e 41 57 4b  codes.h | $(NAWK
2340: 29 20 2d 66 20 24 28 54 4f 50 29 2f 6d 6b 6f 70  ) -f $(TOP)/mkop
2350: 63 6f 64 65 63 2e 61 77 6b 20 3e 6f 70 63 6f 64  codec.awk >opcod
2360: 65 73 2e 63 0a 0a 6f 70 63 6f 64 65 73 2e 68 3a  es.c..opcodes.h:
2370: 09 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 2f  .parse.h $(TOP)/
2380: 73 72 63 2f 76 64 62 65 2e 63 20 24 28 54 4f 50  src/vdbe.c $(TOP
2390: 29 2f 6d 6b 6f 70 63 6f 64 65 68 2e 61 77 6b 0a  )/mkopcodeh.awk.
23a0: 09 63 61 74 20 70 61 72 73 65 2e 68 20 24 28 54  .cat parse.h $(T
23b0: 4f 50 29 2f 73 72 63 2f 76 64 62 65 2e 63 20 7c  OP)/src/vdbe.c |
23c0: 20 24 28 4e 41 57 4b 29 20 2d 66 20 24 28 54 4f   $(NAWK) -f $(TO
23d0: 50 29 2f 6d 6b 6f 70 63 6f 64 65 68 2e 61 77 6b  P)/mkopcodeh.awk
23e0: 20 3e 6f 70 63 6f 64 65 73 2e 68 0a 0a 6f 73 2e   >opcodes.h..os.
23f0: 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73  o:.$(TOP)/src/os
2400: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 54 43 43  .c $(HDR)..$(TCC
2410: 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63  X) -c $(TOP)/src
2420: 2f 6f 73 2e 63 0a 0a 6f 73 5f 6f 73 32 2e 6f 3a  /os.c..os_os2.o:
2430: 09 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 5f 6f  .$(TOP)/src/os_o
2440: 73 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 54  s2.c $(HDR)..$(T
2450: 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73  CCX) -c $(TOP)/s
2460: 72 63 2f 6f 73 5f 6f 73 32 2e 63 0a 0a 6f 73 5f  rc/os_os2.c..os_
2470: 75 6e 69 78 2e 6f 3a 09 24 28 54 4f 50 29 2f 73  unix.o:.$(TOP)/s
2480: 72 63 2f 6f 73 5f 75 6e 69 78 2e 63 20 24 28 48  rc/os_unix.c $(H
2490: 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20  DR)..$(TCCX) -c 
24a0: 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 5f 75 6e  $(TOP)/src/os_un
24b0: 69 78 2e 63 0a 0a 6f 73 5f 77 69 6e 2e 6f 3a 09  ix.c..os_win.o:.
24c0: 24 28 54 4f 50 29 2f 73 72 63 2f 6f 73 5f 77 69  $(TOP)/src/os_wi
24d0: 6e 2e 63 20 24 28 48 44 52 29 0a 09 24 28 54 43  n.c $(HDR)..$(TC
24e0: 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72  CX) -c $(TOP)/sr
24f0: 63 2f 6f 73 5f 77 69 6e 2e 63 0a 0a 70 61 72 73  c/os_win.c..pars
2500: 65 2e 6f 3a 09 70 61 72 73 65 2e 63 20 24 28 48  e.o:.parse.c $(H
2510: 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20  DR)..$(TCCX) -c 
2520: 70 61 72 73 65 2e 63 0a 0a 70 61 72 73 65 2e 68  parse.c..parse.h
2530: 3a 09 70 61 72 73 65 2e 63 0a 0a 70 61 72 73 65  :.parse.c..parse
2540: 2e 63 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 70  .c:.$(TOP)/src/p
2550: 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 20 24 28 54  arse.y lemon $(T
2560: 4f 50 29 2f 61 64 64 6f 70 63 6f 64 65 73 2e 61  OP)/addopcodes.a
2570: 77 6b 0a 09 63 70 20 24 28 54 4f 50 29 2f 73 72  wk..cp $(TOP)/sr
2580: 63 2f 70 61 72 73 65 2e 79 20 2e 0a 09 2e 2f 6c  c/parse.y ..../l
2590: 65 6d 6f 6e 20 24 28 4f 50 54 53 29 20 70 61 72  emon $(OPTS) par
25a0: 73 65 2e 79 0a 09 6d 76 20 70 61 72 73 65 2e 68  se.y..mv parse.h
25b0: 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 0a 09 61   parse.h.temp..a
25c0: 77 6b 20 2d 66 20 24 28 54 4f 50 29 2f 61 64 64  wk -f $(TOP)/add
25d0: 6f 70 63 6f 64 65 73 2e 61 77 6b 20 70 61 72 73  opcodes.awk pars
25e0: 65 2e 68 2e 74 65 6d 70 20 3e 70 61 72 73 65 2e  e.h.temp >parse.
25f0: 68 0a 0a 70 72 61 67 6d 61 2e 6f 3a 09 24 28 54  h..pragma.o:.$(T
2600: 4f 50 29 2f 73 72 63 2f 70 72 61 67 6d 61 2e 63  OP)/src/pragma.c
2610: 20 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29   $(HDR)..$(TCCX)
2620: 20 24 28 54 43 4c 5f 46 4c 41 47 53 29 20 2d 63   $(TCL_FLAGS) -c
2630: 20 24 28 54 4f 50 29 2f 73 72 63 2f 70 72 61 67   $(TOP)/src/prag
2640: 6d 61 2e 63 0a 0a 70 72 65 70 61 72 65 2e 6f 3a  ma.c..prepare.o:
2650: 09 24 28 54 4f 50 29 2f 73 72 63 2f 70 72 65 70  .$(TOP)/src/prep
2660: 61 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  are.c $(HDR)..$(
2670: 54 43 43 58 29 20 24 28 54 43 4c 5f 46 4c 41 47  TCCX) $(TCL_FLAG
2680: 53 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63  S) -c $(TOP)/src
2690: 2f 70 72 65 70 61 72 65 2e 63 0a 0a 70 72 69 6e  /prepare.c..prin
26a0: 74 66 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63  tf.o:.$(TOP)/src
26b0: 2f 70 72 69 6e 74 66 2e 63 20 24 28 48 44 52 29  /printf.c $(HDR)
26c0: 0a 09 24 28 54 43 43 58 29 20 24 28 54 43 4c 5f  ..$(TCCX) $(TCL_
26d0: 46 4c 41 47 53 29 20 2d 63 20 24 28 54 4f 50 29  FLAGS) -c $(TOP)
26e0: 2f 73 72 63 2f 70 72 69 6e 74 66 2e 63 0a 0a 72  /src/printf.c..r
26f0: 61 6e 64 6f 6d 2e 6f 3a 09 24 28 54 4f 50 29 2f  andom.o:.$(TOP)/
2700: 73 72 63 2f 72 61 6e 64 6f 6d 2e 63 20 24 28 48  src/random.c $(H
2710: 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20  DR)..$(TCCX) -c 
2720: 24 28 54 4f 50 29 2f 73 72 63 2f 72 61 6e 64 6f  $(TOP)/src/rando
2730: 6d 2e 63 0a 0a 73 65 6c 65 63 74 2e 6f 3a 09 24  m.c..select.o:.$
2740: 28 54 4f 50 29 2f 73 72 63 2f 73 65 6c 65 63 74  (TOP)/src/select
2750: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 54 43 43  .c $(HDR)..$(TCC
2760: 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63  X) -c $(TOP)/src
2770: 2f 73 65 6c 65 63 74 2e 63 0a 0a 73 71 6c 69 74  /select.c..sqlit
2780: 65 33 2e 68 3a 09 24 28 54 4f 50 29 2f 73 72 63  e3.h:.$(TOP)/src
2790: 2f 73 71 6c 69 74 65 2e 68 2e 69 6e 20 0a 09 73  /sqlite.h.in ..s
27a0: 65 64 20 2d 65 20 73 2f 2d 2d 56 45 52 53 2d 2d  ed -e s/--VERS--
27b0: 2f 60 63 61 74 20 24 7b 54 4f 50 7d 2f 56 45 52  /`cat ${TOP}/VER
27c0: 53 49 4f 4e 60 2f 20 5c 0a 09 20 20 20 20 2d 65  SION`/ \..    -e
27d0: 20 73 2f 2d 2d 56 45 52 53 49 4f 4e 2d 4e 55 4d   s/--VERSION-NUM
27e0: 42 45 52 2d 2d 2f 60 63 61 74 20 24 7b 54 4f 50  BER--/`cat ${TOP
27f0: 7d 2f 56 45 52 53 49 4f 4e 20 7c 20 73 65 64 20  }/VERSION | sed 
2800: 27 73 2f 5b 5e 30 2d 39 5d 2f 20 2f 67 27 20 7c  's/[^0-9]/ /g' |
2810: 20 24 28 4e 41 57 4b 29 20 27 7b 70 72 69 6e 74   $(NAWK) '{print
2820: 66 20 22 25 64 25 30 33 64 25 30 33 64 22 2c 24  f "%d%03d%03d",$
2830: 24 31 2c 24 24 32 2c 24 24 33 7d 27 60 2f 20 5c  $1,$$2,$$3}'`/ \
2840: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2850: 20 20 24 28 54 4f 50 29 2f 73 72 63 2f 73 71 6c    $(TOP)/src/sql
2860: 69 74 65 2e 68 2e 69 6e 20 3e 73 71 6c 69 74 65  ite.h.in >sqlite
2870: 33 2e 68 0a 0a 74 61 62 6c 65 2e 6f 3a 09 24 28  3.h..table.o:.$(
2880: 54 4f 50 29 2f 73 72 63 2f 74 61 62 6c 65 2e 63  TOP)/src/table.c
2890: 20 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29   $(HDR)..$(TCCX)
28a0: 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 74   -c $(TOP)/src/t
28b0: 61 62 6c 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74  able.c..tclsqlit
28c0: 65 2e 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f  e.o:.$(TOP)/src/
28d0: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44  tclsqlite.c $(HD
28e0: 52 29 0a 09 24 28 54 43 43 58 29 20 24 28 54 43  R)..$(TCCX) $(TC
28f0: 4c 5f 46 4c 41 47 53 29 20 2d 63 20 24 28 54 4f  L_FLAGS) -c $(TO
2900: 50 29 2f 73 72 63 2f 74 63 6c 73 71 6c 69 74 65  P)/src/tclsqlite
2910: 2e 63 0a 0a 74 6f 6b 65 6e 69 7a 65 2e 6f 3a 09  .c..tokenize.o:.
2920: 24 28 54 4f 50 29 2f 73 72 63 2f 74 6f 6b 65 6e  $(TOP)/src/token
2930: 69 7a 65 2e 63 20 6b 65 79 77 6f 72 64 68 61 73  ize.c keywordhas
2940: 68 2e 68 20 24 28 48 44 52 29 0a 09 24 28 54 43  h.h $(HDR)..$(TC
2950: 43 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72  CX) -c $(TOP)/sr
2960: 63 2f 74 6f 6b 65 6e 69 7a 65 2e 63 0a 0a 6b 65  c/tokenize.c..ke
2970: 79 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 28 54  ywordhash.h:.$(T
2980: 4f 50 29 2f 74 6f 6f 6c 2f 6d 6b 6b 65 79 77 6f  OP)/tool/mkkeywo
2990: 72 64 68 61 73 68 2e 63 0a 09 24 28 42 43 43 29  rdhash.c..$(BCC)
29a0: 20 2d 6f 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73   -o mkkeywordhas
29b0: 68 20 24 28 4f 50 54 53 29 20 24 28 54 4f 50 29  h $(OPTS) $(TOP)
29c0: 2f 74 6f 6f 6c 2f 6d 6b 6b 65 79 77 6f 72 64 68  /tool/mkkeywordh
29d0: 61 73 68 2e 63 0a 09 2e 2f 6d 6b 6b 65 79 77 6f  ash.c.../mkkeywo
29e0: 72 64 68 61 73 68 20 3e 6b 65 79 77 6f 72 64 68  rdhash >keywordh
29f0: 61 73 68 2e 68 0a 0a 74 72 69 67 67 65 72 2e 6f  ash.h..trigger.o
2a00: 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 74 72 69  :.$(TOP)/src/tri
2a10: 67 67 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24  gger.c $(HDR)..$
2a20: 28 54 43 43 58 29 20 2d 63 20 24 28 54 4f 50 29  (TCCX) -c $(TOP)
2a30: 2f 73 72 63 2f 74 72 69 67 67 65 72 2e 63 0a 0a  /src/trigger.c..
2a40: 75 70 64 61 74 65 2e 6f 3a 09 24 28 54 4f 50 29  update.o:.$(TOP)
2a50: 2f 73 72 63 2f 75 70 64 61 74 65 2e 63 20 24 28  /src/update.c $(
2a60: 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63  HDR)..$(TCCX) -c
2a70: 20 24 28 54 4f 50 29 2f 73 72 63 2f 75 70 64 61   $(TOP)/src/upda
2a80: 74 65 2e 63 0a 0a 75 74 66 2e 6f 3a 09 24 28 54  te.c..utf.o:.$(T
2a90: 4f 50 29 2f 73 72 63 2f 75 74 66 2e 63 20 24 28  OP)/src/utf.c $(
2aa0: 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63  HDR)..$(TCCX) -c
2ab0: 20 24 28 54 4f 50 29 2f 73 72 63 2f 75 74 66 2e   $(TOP)/src/utf.
2ac0: 63 0a 0a 75 74 69 6c 2e 6f 3a 09 24 28 54 4f 50  c..util.o:.$(TOP
2ad0: 29 2f 73 72 63 2f 75 74 69 6c 2e 63 20 24 28 48  )/src/util.c $(H
2ae0: 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20  DR)..$(TCCX) -c 
2af0: 24 28 54 4f 50 29 2f 73 72 63 2f 75 74 69 6c 2e  $(TOP)/src/util.
2b00: 63 0a 0a 76 61 63 75 75 6d 2e 6f 3a 09 24 28 54  c..vacuum.o:.$(T
2b10: 4f 50 29 2f 73 72 63 2f 76 61 63 75 75 6d 2e 63  OP)/src/vacuum.c
2b20: 20 24 28 48 44 52 29 0a 09 24 28 54 43 43 58 29   $(HDR)..$(TCCX)
2b30: 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 76   -c $(TOP)/src/v
2b40: 61 63 75 75 6d 2e 63 0a 0a 76 64 62 65 2e 6f 3a  acuum.c..vdbe.o:
2b50: 09 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65  .$(TOP)/src/vdbe
2b60: 2e 63 20 24 28 56 44 42 45 48 44 52 29 20 24 28  .c $(VDBEHDR) $(
2b70: 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63  HDR)..$(TCCX) -c
2b80: 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65   $(TOP)/src/vdbe
2b90: 2e 63 0a 0a 76 64 62 65 61 70 69 2e 6f 3a 09 24  .c..vdbeapi.o:.$
2ba0: 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65 61 70  (TOP)/src/vdbeap
2bb0: 69 2e 63 20 24 28 56 44 42 45 48 44 52 29 20 24  i.c $(VDBEHDR) $
2bc0: 28 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d  (HDR)..$(TCCX) -
2bd0: 63 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62  c $(TOP)/src/vdb
2be0: 65 61 70 69 2e 63 0a 0a 76 64 62 65 61 75 78 2e  eapi.c..vdbeaux.
2bf0: 6f 3a 09 24 28 54 4f 50 29 2f 73 72 63 2f 76 64  o:.$(TOP)/src/vd
2c00: 62 65 61 75 78 2e 63 20 24 28 56 44 42 45 48 44  beaux.c $(VDBEHD
2c10: 52 29 20 24 28 48 44 52 29 0a 09 24 28 54 43 43  R) $(HDR)..$(TCC
2c20: 58 29 20 2d 63 20 24 28 54 4f 50 29 2f 73 72 63  X) -c $(TOP)/src
2c30: 2f 76 64 62 65 61 75 78 2e 63 0a 0a 76 64 62 65  /vdbeaux.c..vdbe
2c40: 66 69 66 6f 2e 6f 3a 09 24 28 54 4f 50 29 2f 73  fifo.o:.$(TOP)/s
2c50: 72 63 2f 76 64 62 65 66 69 66 6f 2e 63 20 24 28  rc/vdbefifo.c $(
2c60: 56 44 42 45 48 44 52 29 20 24 28 48 44 52 29 0a  VDBEHDR) $(HDR).
2c70: 09 24 28 54 43 43 58 29 20 2d 63 20 24 28 54 4f  .$(TCCX) -c $(TO
2c80: 50 29 2f 73 72 63 2f 76 64 62 65 66 69 66 6f 2e  P)/src/vdbefifo.
2c90: 63 0a 0a 76 64 62 65 6d 65 6d 2e 6f 3a 09 24 28  c..vdbemem.o:.$(
2ca0: 54 4f 50 29 2f 73 72 63 2f 76 64 62 65 6d 65 6d  TOP)/src/vdbemem
2cb0: 2e 63 20 24 28 56 44 42 45 48 44 52 29 20 24 28  .c $(VDBEHDR) $(
2cc0: 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63  HDR)..$(TCCX) -c
2cd0: 20 24 28 54 4f 50 29 2f 73 72 63 2f 76 64 62 65   $(TOP)/src/vdbe
2ce0: 6d 65 6d 2e 63 0a 0a 76 74 61 62 2e 6f 3a 09 24  mem.c..vtab.o:.$
2cf0: 28 54 4f 50 29 2f 73 72 63 2f 76 74 61 62 2e 63  (TOP)/src/vtab.c
2d00: 20 24 28 56 44 42 45 48 44 52 29 20 24 28 48 44   $(VDBEHDR) $(HD
2d10: 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63 20 24  R)..$(TCCX) -c $
2d20: 28 54 4f 50 29 2f 73 72 63 2f 76 74 61 62 2e 63  (TOP)/src/vtab.c
2d30: 0a 0a 77 68 65 72 65 2e 6f 3a 09 24 28 54 4f 50  ..where.o:.$(TOP
2d40: 29 2f 73 72 63 2f 77 68 65 72 65 2e 63 20 24 28  )/src/where.c $(
2d50: 48 44 52 29 0a 09 24 28 54 43 43 58 29 20 2d 63  HDR)..$(TCCX) -c
2d60: 20 24 28 54 4f 50 29 2f 73 72 63 2f 77 68 65 72   $(TOP)/src/wher
2d70: 65 2e 63 0a 0a 23 20 52 75 6c 65 73 20 66 6f 72  e.c..# Rules for
2d80: 20 62 75 69 6c 64 69 6e 67 20 74 65 73 74 20 70   building test p
2d90: 72 6f 67 72 61 6d 73 20 61 6e 64 20 66 6f 72 20  rograms and for 
2da0: 72 75 6e 6e 69 6e 67 20 74 65 73 74 73 0a 23 0a  running tests.#.
2db0: 74 63 6c 73 71 6c 69 74 65 33 3a 09 24 28 54 4f  tclsqlite3:.$(TO
2dc0: 50 29 2f 73 72 63 2f 74 63 6c 73 71 6c 69 74 65  P)/src/tclsqlite
2dd0: 2e 63 20 6c 69 62 73 71 6c 69 74 65 33 2e 61 0a  .c libsqlite3.a.
2de0: 09 24 28 54 43 43 58 29 20 24 28 54 43 4c 5f 46  .$(TCCX) $(TCL_F
2df0: 4c 41 47 53 29 20 2d 44 54 43 4c 53 48 3d 31 20  LAGS) -DTCLSH=1 
2e00: 2d 6f 20 74 63 6c 73 71 6c 69 74 65 33 20 5c 0a  -o tclsqlite3 \.
2e10: 09 09 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c  ..$(TOP)/src/tcl
2e20: 73 71 6c 69 74 65 2e 63 20 6c 69 62 73 71 6c 69  sqlite.c libsqli
2e30: 74 65 33 2e 61 20 24 28 4c 49 42 54 43 4c 29 20  te3.a $(LIBTCL) 
2e40: 24 28 54 48 52 45 41 44 4c 49 42 29 0a 0a 74 65  $(THREADLIB)..te
2e50: 73 74 66 69 78 74 75 72 65 24 28 45 58 45 29 3a  stfixture$(EXE):
2e60: 09 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73  .$(TOP)/src/tcls
2e70: 71 6c 69 74 65 2e 63 20 6c 69 62 73 71 6c 69 74  qlite.c libsqlit
2e80: 65 33 2e 61 20 24 28 54 45 53 54 53 52 43 29 0a  e3.a $(TESTSRC).
2e90: 09 24 28 54 43 43 58 29 20 24 28 54 43 4c 5f 46  .$(TCCX) $(TCL_F
2ea0: 4c 41 47 53 29 20 2d 44 54 43 4c 53 48 3d 31 20  LAGS) -DTCLSH=1 
2eb0: 2d 44 53 51 4c 49 54 45 5f 54 45 53 54 3d 31 20  -DSQLITE_TEST=1 
2ec0: 2d 44 53 51 4c 49 54 45 5f 43 52 41 53 48 5f 54  -DSQLITE_CRASH_T
2ed0: 45 53 54 3d 31 20 5c 0a 09 09 2d 44 53 51 4c 49  EST=1 \...-DSQLI
2ee0: 54 45 5f 53 45 52 56 45 52 3d 31 20 2d 6f 20 74  TE_SERVER=1 -o t
2ef0: 65 73 74 66 69 78 74 75 72 65 24 28 45 58 45 29  estfixture$(EXE)
2f00: 20 5c 0a 09 09 24 28 54 45 53 54 53 52 43 29 20   \...$(TESTSRC) 
2f10: 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71  $(TOP)/src/tclsq
2f20: 6c 69 74 65 2e 63 20 5c 0a 09 09 6c 69 62 73 71  lite.c \...libsq
2f30: 6c 69 74 65 33 2e 61 20 24 28 4c 49 42 54 43 4c  lite3.a $(LIBTCL
2f40: 29 20 24 28 54 48 52 45 41 44 4c 49 42 29 0a 0a  ) $(THREADLIB)..
2f50: 66 75 6c 6c 74 65 73 74 3a 09 74 65 73 74 66 69  fulltest:.testfi
2f60: 78 74 75 72 65 24 28 45 58 45 29 20 73 71 6c 69  xture$(EXE) sqli
2f70: 74 65 33 24 28 45 58 45 29 0a 09 2e 2f 74 65 73  te3$(EXE).../tes
2f80: 74 66 69 78 74 75 72 65 24 28 45 58 45 29 20 24  tfixture$(EXE) $
2f90: 28 54 4f 50 29 2f 74 65 73 74 2f 61 6c 6c 2e 74  (TOP)/test/all.t
2fa0: 65 73 74 0a 0a 74 65 73 74 3a 09 74 65 73 74 66  est..test:.testf
2fb0: 69 78 74 75 72 65 24 28 45 58 45 29 20 73 71 6c  ixture$(EXE) sql
2fc0: 69 74 65 33 24 28 45 58 45 29 0a 09 2e 2f 74 65  ite3$(EXE).../te
2fd0: 73 74 66 69 78 74 75 72 65 24 28 45 58 45 29 20  stfixture$(EXE) 
2fe0: 24 28 54 4f 50 29 2f 74 65 73 74 2f 71 75 69 63  $(TOP)/test/quic
2ff0: 6b 2e 74 65 73 74 0a 0a 73 71 6c 69 74 65 33 5f  k.test..sqlite3_
3000: 61 6e 61 6c 79 7a 65 72 24 28 45 58 45 29 3a 09  analyzer$(EXE):.
3010: 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71  $(TOP)/src/tclsq
3020: 6c 69 74 65 2e 63 20 6c 69 62 73 71 6c 69 74 65  lite.c libsqlite
3030: 33 2e 61 20 24 28 54 45 53 54 53 52 43 29 20 5c  3.a $(TESTSRC) \
3040: 0a 09 09 09 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f  ....$(TOP)/tool/
3050: 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 0a 09 73  spaceanal.tcl..s
3060: 65 64 20 5c 0a 09 20 20 2d 65 20 27 2f 5e 23 2f  ed \..  -e '/^#/
3070: 64 27 20 5c 0a 09 20 20 2d 65 20 27 73 2c 5c 5c  d' \..  -e 's,\\
3080: 2c 5c 5c 5c 5c 2c 67 27 20 5c 0a 09 20 20 2d 65  ,\\\\,g' \..  -e
3090: 20 27 73 2c 22 2c 5c 5c 22 2c 67 27 20 5c 0a 09   's,",\\",g' \..
30a0: 20 20 2d 65 20 27 73 2c 5e 2c 22 2c 27 20 5c 0a    -e 's,^,",' \.
30b0: 09 20 20 2d 65 20 27 73 2c 24 24 2c 5c 5c 6e 22  .  -e 's,$$,\\n"
30c0: 2c 27 20 5c 0a 09 20 20 24 28 54 4f 50 29 2f 74  ,' \..  $(TOP)/t
30d0: 6f 6f 6c 2f 73 70 61 63 65 61 6e 61 6c 2e 74 63  ool/spaceanal.tc
30e0: 6c 20 3e 73 70 61 63 65 61 6e 61 6c 5f 74 63 6c  l >spaceanal_tcl
30f0: 2e 68 0a 09 24 28 54 43 43 58 29 20 24 28 54 43  .h..$(TCCX) $(TC
3100: 4c 5f 46 4c 41 47 53 29 20 2d 44 54 43 4c 53 48  L_FLAGS) -DTCLSH
3110: 3d 32 20 2d 44 53 51 4c 49 54 45 5f 54 45 53 54  =2 -DSQLITE_TEST
3120: 3d 31 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55  =1 -DSQLITE_DEBU
3130: 47 3d 31 20 2d 6f 20 5c 0a 20 09 09 73 71 6c 69  G=1 -o \. ..sqli
3140: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 24 28 45 58  te3_analyzer$(EX
3150: 45 29 20 24 28 54 45 53 54 53 52 43 29 20 24 28  E) $(TESTSRC) $(
3160: 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71 6c 69  TOP)/src/tclsqli
3170: 74 65 2e 63 20 5c 0a 09 09 6c 69 62 73 71 6c 69  te.c \...libsqli
3180: 74 65 33 2e 61 20 24 28 4c 49 42 54 43 4c 29 20  te3.a $(LIBTCL) 
3190: 24 28 54 48 52 45 41 44 4c 49 42 29 0a 0a 54 45  $(THREADLIB)..TE
31a0: 53 54 5f 45 58 54 45 4e 53 49 4f 4e 20 3d 20 24  ST_EXTENSION = $
31b0: 28 53 48 50 52 45 46 49 58 29 74 65 73 74 6c 6f  (SHPREFIX)testlo
31c0: 61 64 65 78 74 2e 24 28 53 4f 29 0a 24 28 54 45  adext.$(SO).$(TE
31d0: 53 54 5f 45 58 54 45 4e 53 49 4f 4e 29 3a 20 24  ST_EXTENSION): $
31e0: 28 54 4f 50 29 2f 73 72 63 2f 74 65 73 74 5f 6c  (TOP)/src/test_l
31f0: 6f 61 64 65 78 74 2e 63 0a 09 24 28 4d 4b 53 48  oadext.c..$(MKSH
3200: 4c 49 42 29 20 24 28 54 4f 50 29 2f 73 72 63 2f  LIB) $(TOP)/src/
3210: 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63 20 2d  test_loadext.c -
3220: 6f 20 24 28 54 45 53 54 5f 45 58 54 45 4e 53 49  o $(TEST_EXTENSI
3230: 4f 4e 29 0a 0a 65 78 74 65 6e 73 69 6f 6e 74 65  ON)..extensionte
3240: 73 74 3a 20 74 65 73 74 66 69 78 74 75 72 65 24  st: testfixture$
3250: 28 45 58 45 29 20 24 28 54 45 53 54 5f 45 58 54  (EXE) $(TEST_EXT
3260: 45 4e 53 49 4f 4e 29 0a 09 2e 2f 74 65 73 74 66  ENSION).../testf
3270: 69 78 74 75 72 65 24 28 45 58 45 29 20 24 28 54  ixture$(EXE) $(T
3280: 4f 50 29 2f 74 65 73 74 2f 6c 6f 61 64 65 78 74  OP)/test/loadext
3290: 2e 74 65 73 74 0a 0a 23 20 52 75 6c 65 73 20 75  .test..# Rules u
32a0: 73 65 64 20 74 6f 20 62 75 69 6c 64 20 64 6f 63  sed to build doc
32b0: 75 6d 65 6e 74 61 74 69 6f 6e 0a 23 0a 61 72 63  umentation.#.arc
32c0: 68 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77  h.html:.$(TOP)/w
32d0: 77 77 2f 61 72 63 68 2e 74 63 6c 0a 09 74 63 6c  ww/arch.tcl..tcl
32e0: 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f 61 72  sh $(TOP)/www/ar
32f0: 63 68 2e 74 63 6c 20 3e 61 72 63 68 2e 68 74 6d  ch.tcl >arch.htm
3300: 6c 0a 0a 61 75 74 6f 69 6e 63 2e 68 74 6d 6c 3a  l..autoinc.html:
3310: 09 24 28 54 4f 50 29 2f 77 77 77 2f 61 75 74 6f  .$(TOP)/www/auto
3320: 69 6e 63 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  inc.tcl..tclsh $
3330: 28 54 4f 50 29 2f 77 77 77 2f 61 75 74 6f 69 6e  (TOP)/www/autoin
3340: 63 2e 74 63 6c 20 3e 61 75 74 6f 69 6e 63 2e 68  c.tcl >autoinc.h
3350: 74 6d 6c 0a 0a 63 5f 69 6e 74 65 72 66 61 63 65  tml..c_interface
3360: 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77  .html:.$(TOP)/ww
3370: 77 2f 63 5f 69 6e 74 65 72 66 61 63 65 2e 74 63  w/c_interface.tc
3380: 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f  l..tclsh $(TOP)/
3390: 77 77 77 2f 63 5f 69 6e 74 65 72 66 61 63 65 2e  www/c_interface.
33a0: 74 63 6c 20 3e 63 5f 69 6e 74 65 72 66 61 63 65  tcl >c_interface
33b0: 2e 68 74 6d 6c 0a 0a 63 61 70 69 33 2e 68 74 6d  .html..capi3.htm
33c0: 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 63 61  l:.$(TOP)/www/ca
33d0: 70 69 33 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  pi3.tcl..tclsh $
33e0: 28 54 4f 50 29 2f 77 77 77 2f 63 61 70 69 33 2e  (TOP)/www/capi3.
33f0: 74 63 6c 20 3e 63 61 70 69 33 2e 68 74 6d 6c 0a  tcl >capi3.html.
3400: 0a 63 61 70 69 33 72 65 66 2e 68 74 6d 6c 3a 09  .capi3ref.html:.
3410: 24 28 54 4f 50 29 2f 77 77 77 2f 63 61 70 69 33  $(TOP)/www/capi3
3420: 72 65 66 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  ref.tcl..tclsh $
3430: 28 54 4f 50 29 2f 77 77 77 2f 63 61 70 69 33 72  (TOP)/www/capi3r
3440: 65 66 2e 74 63 6c 20 3e 63 61 70 69 33 72 65 66  ef.tcl >capi3ref
3450: 2e 68 74 6d 6c 0a 0a 63 68 61 6e 67 65 73 2e 68  .html..changes.h
3460: 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f  tml:.$(TOP)/www/
3470: 63 68 61 6e 67 65 73 2e 74 63 6c 0a 09 74 63 6c  changes.tcl..tcl
3480: 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f 63 68  sh $(TOP)/www/ch
3490: 61 6e 67 65 73 2e 74 63 6c 20 3e 63 68 61 6e 67  anges.tcl >chang
34a0: 65 73 2e 68 74 6d 6c 0a 0a 63 6f 6d 70 69 6c 65  es.html..compile
34b0: 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77  .html:.$(TOP)/ww
34c0: 77 2f 63 6f 6d 70 69 6c 65 2e 74 63 6c 0a 09 74  w/compile.tcl..t
34d0: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
34e0: 63 6f 6d 70 69 6c 65 2e 74 63 6c 20 3e 63 6f 6d  compile.tcl >com
34f0: 70 69 6c 65 2e 68 74 6d 6c 0a 0a 63 6f 70 79 72  pile.html..copyr
3500: 69 67 68 74 2e 68 74 6d 6c 3a 09 24 28 54 4f 50  ight.html:.$(TOP
3510: 29 2f 77 77 77 2f 63 6f 70 79 72 69 67 68 74 2e  )/www/copyright.
3520: 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50  tcl..tclsh $(TOP
3530: 29 2f 77 77 77 2f 63 6f 70 79 72 69 67 68 74 2e  )/www/copyright.
3540: 74 63 6c 20 3e 63 6f 70 79 72 69 67 68 74 2e 68  tcl >copyright.h
3550: 74 6d 6c 0a 0a 63 6f 70 79 72 69 67 68 74 2d 72  tml..copyright-r
3560: 65 6c 65 61 73 65 2e 68 74 6d 6c 3a 09 24 28 54  elease.html:.$(T
3570: 4f 50 29 2f 77 77 77 2f 63 6f 70 79 72 69 67 68  OP)/www/copyrigh
3580: 74 2d 72 65 6c 65 61 73 65 2e 68 74 6d 6c 0a 09  t-release.html..
3590: 63 70 20 24 28 54 4f 50 29 2f 77 77 77 2f 63 6f  cp $(TOP)/www/co
35a0: 70 79 72 69 67 68 74 2d 72 65 6c 65 61 73 65 2e  pyright-release.
35b0: 68 74 6d 6c 20 2e 0a 0a 63 6f 70 79 72 69 67 68  html ...copyrigh
35c0: 74 2d 72 65 6c 65 61 73 65 2e 70 64 66 3a 09 24  t-release.pdf:.$
35d0: 28 54 4f 50 29 2f 77 77 77 2f 63 6f 70 79 72 69  (TOP)/www/copyri
35e0: 67 68 74 2d 72 65 6c 65 61 73 65 2e 70 64 66 0a  ght-release.pdf.
35f0: 09 63 70 20 24 28 54 4f 50 29 2f 77 77 77 2f 63  .cp $(TOP)/www/c
3600: 6f 70 79 72 69 67 68 74 2d 72 65 6c 65 61 73 65  opyright-release
3610: 2e 70 64 66 20 2e 0a 0a 63 6f 6d 6d 6f 6e 2e 74  .pdf ...common.t
3620: 63 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 63  cl:.$(TOP)/www/c
3630: 6f 6d 6d 6f 6e 2e 74 63 6c 0a 09 63 70 20 24 28  ommon.tcl..cp $(
3640: 54 4f 50 29 2f 77 77 77 2f 63 6f 6d 6d 6f 6e 2e  TOP)/www/common.
3650: 74 63 6c 20 2e 0a 0a 63 6f 6e 66 6c 69 63 74 2e  tcl ...conflict.
3660: 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77  html:.$(TOP)/www
3670: 2f 63 6f 6e 66 6c 69 63 74 2e 74 63 6c 0a 09 74  /conflict.tcl..t
3680: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3690: 63 6f 6e 66 6c 69 63 74 2e 74 63 6c 20 3e 63 6f  conflict.tcl >co
36a0: 6e 66 6c 69 63 74 2e 68 74 6d 6c 0a 0a 64 61 74  nflict.html..dat
36b0: 61 74 79 70 65 73 2e 68 74 6d 6c 3a 09 24 28 54  atypes.html:.$(T
36c0: 4f 50 29 2f 77 77 77 2f 64 61 74 61 74 79 70 65  OP)/www/datatype
36d0: 73 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54  s.tcl..tclsh $(T
36e0: 4f 50 29 2f 77 77 77 2f 64 61 74 61 74 79 70 65  OP)/www/datatype
36f0: 73 2e 74 63 6c 20 3e 64 61 74 61 74 79 70 65 73  s.tcl >datatypes
3700: 2e 68 74 6d 6c 0a 0a 64 61 74 61 74 79 70 65 33  .html..datatype3
3710: 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77  .html:.$(TOP)/ww
3720: 77 2f 64 61 74 61 74 79 70 65 33 2e 74 63 6c 0a  w/datatype3.tcl.
3730: 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77  .tclsh $(TOP)/ww
3740: 77 2f 64 61 74 61 74 79 70 65 33 2e 74 63 6c 20  w/datatype3.tcl 
3750: 3e 64 61 74 61 74 79 70 65 33 2e 68 74 6d 6c 0a  >datatype3.html.
3760: 0a 64 69 66 66 65 72 65 6e 74 2e 68 74 6d 6c 3a  .different.html:
3770: 09 24 28 54 4f 50 29 2f 77 77 77 2f 64 69 66 66  .$(TOP)/www/diff
3780: 65 72 65 6e 74 2e 74 63 6c 0a 09 74 63 6c 73 68  erent.tcl..tclsh
3790: 20 24 28 54 4f 50 29 2f 77 77 77 2f 64 69 66 66   $(TOP)/www/diff
37a0: 65 72 65 6e 74 2e 74 63 6c 20 3e 64 69 66 66 65  erent.tcl >diffe
37b0: 72 65 6e 74 2e 68 74 6d 6c 0a 0a 64 6f 63 73 2e  rent.html..docs.
37c0: 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77  html:.$(TOP)/www
37d0: 2f 64 6f 63 73 2e 74 63 6c 0a 09 74 63 6c 73 68  /docs.tcl..tclsh
37e0: 20 24 28 54 4f 50 29 2f 77 77 77 2f 64 6f 63 73   $(TOP)/www/docs
37f0: 2e 74 63 6c 20 3e 64 6f 63 73 2e 68 74 6d 6c 0a  .tcl >docs.html.
3800: 0a 64 6f 77 6e 6c 6f 61 64 2e 68 74 6d 6c 3a 09  .download.html:.
3810: 24 28 54 4f 50 29 2f 77 77 77 2f 64 6f 77 6e 6c  $(TOP)/www/downl
3820: 6f 61 64 2e 74 63 6c 0a 09 6d 6b 64 69 72 20 2d  oad.tcl..mkdir -
3830: 70 20 64 6f 63 0a 09 74 63 6c 73 68 20 24 28 54  p doc..tclsh $(T
3840: 4f 50 29 2f 77 77 77 2f 64 6f 77 6e 6c 6f 61 64  OP)/www/download
3850: 2e 74 63 6c 20 3e 64 6f 77 6e 6c 6f 61 64 2e 68  .tcl >download.h
3860: 74 6d 6c 0a 0a 66 61 71 2e 68 74 6d 6c 3a 09 24  tml..faq.html:.$
3870: 28 54 4f 50 29 2f 77 77 77 2f 66 61 71 2e 74 63  (TOP)/www/faq.tc
3880: 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f  l..tclsh $(TOP)/
3890: 77 77 77 2f 66 61 71 2e 74 63 6c 20 3e 66 61 71  www/faq.tcl >faq
38a0: 2e 68 74 6d 6c 0a 0a 66 69 6c 65 66 6f 72 6d 61  .html..fileforma
38b0: 74 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77  t.html:.$(TOP)/w
38c0: 77 77 2f 66 69 6c 65 66 6f 72 6d 61 74 2e 74 63  ww/fileformat.tc
38d0: 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f  l..tclsh $(TOP)/
38e0: 77 77 77 2f 66 69 6c 65 66 6f 72 6d 61 74 2e 74  www/fileformat.t
38f0: 63 6c 20 3e 66 69 6c 65 66 6f 72 6d 61 74 2e 68  cl >fileformat.h
3900: 74 6d 6c 0a 0a 66 6f 72 6d 61 74 63 68 6e 67 2e  tml..formatchng.
3910: 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77  html:.$(TOP)/www
3920: 2f 66 6f 72 6d 61 74 63 68 6e 67 2e 74 63 6c 0a  /formatchng.tcl.
3930: 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77  .tclsh $(TOP)/ww
3940: 77 2f 66 6f 72 6d 61 74 63 68 6e 67 2e 74 63 6c  w/formatchng.tcl
3950: 20 3e 66 6f 72 6d 61 74 63 68 6e 67 2e 68 74 6d   >formatchng.htm
3960: 6c 0a 0a 69 6e 64 65 78 2e 68 74 6d 6c 3a 09 24  l..index.html:.$
3970: 28 54 4f 50 29 2f 77 77 77 2f 69 6e 64 65 78 2e  (TOP)/www/index.
3980: 74 63 6c 20 6c 61 73 74 5f 63 68 61 6e 67 65 0a  tcl last_change.
3990: 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77  .tclsh $(TOP)/ww
39a0: 77 2f 69 6e 64 65 78 2e 74 63 6c 20 3e 69 6e 64  w/index.tcl >ind
39b0: 65 78 2e 68 74 6d 6c 0a 0a 6c 61 6e 67 2e 68 74  ex.html..lang.ht
39c0: 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 6c  ml:.$(TOP)/www/l
39d0: 61 6e 67 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  ang.tcl..tclsh $
39e0: 28 54 4f 50 29 2f 77 77 77 2f 6c 61 6e 67 2e 74  (TOP)/www/lang.t
39f0: 63 6c 20 64 6f 63 20 3e 6c 61 6e 67 2e 68 74 6d  cl doc >lang.htm
3a00: 6c 0a 0a 70 72 61 67 6d 61 2e 68 74 6d 6c 3a 09  l..pragma.html:.
3a10: 24 28 54 4f 50 29 2f 77 77 77 2f 70 72 61 67 6d  $(TOP)/www/pragm
3a20: 61 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54  a.tcl..tclsh $(T
3a30: 4f 50 29 2f 77 77 77 2f 70 72 61 67 6d 61 2e 74  OP)/www/pragma.t
3a40: 63 6c 20 3e 70 72 61 67 6d 61 2e 68 74 6d 6c 0a  cl >pragma.html.
3a50: 0a 6c 6f 63 6b 69 6e 67 76 33 2e 68 74 6d 6c 3a  .lockingv3.html:
3a60: 09 24 28 54 4f 50 29 2f 77 77 77 2f 6c 6f 63 6b  .$(TOP)/www/lock
3a70: 69 6e 67 76 33 2e 74 63 6c 0a 09 74 63 6c 73 68  ingv3.tcl..tclsh
3a80: 20 24 28 54 4f 50 29 2f 77 77 77 2f 6c 6f 63 6b   $(TOP)/www/lock
3a90: 69 6e 67 76 33 2e 74 63 6c 20 3e 6c 6f 63 6b 69  ingv3.tcl >locki
3aa0: 6e 67 76 33 2e 68 74 6d 6c 0a 0a 73 68 61 72 65  ngv3.html..share
3ab0: 64 63 61 63 68 65 2e 68 74 6d 6c 3a 20 24 28 54  dcache.html: $(T
3ac0: 4f 50 29 2f 77 77 77 2f 73 68 61 72 65 64 63 61  OP)/www/sharedca
3ad0: 63 68 65 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  che.tcl..tclsh $
3ae0: 28 54 4f 50 29 2f 77 77 77 2f 73 68 61 72 65 64  (TOP)/www/shared
3af0: 63 61 63 68 65 2e 74 63 6c 20 3e 73 68 61 72 65  cache.tcl >share
3b00: 64 63 61 63 68 65 2e 68 74 6d 6c 0a 0a 6d 69 6e  dcache.html..min
3b10: 67 77 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f  gw.html:.$(TOP)/
3b20: 77 77 77 2f 6d 69 6e 67 77 2e 74 63 6c 0a 09 74  www/mingw.tcl..t
3b30: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3b40: 6d 69 6e 67 77 2e 74 63 6c 20 3e 6d 69 6e 67 77  mingw.tcl >mingw
3b50: 2e 68 74 6d 6c 0a 0a 6e 75 6c 6c 73 2e 68 74 6d  .html..nulls.htm
3b60: 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 6e 75  l:.$(TOP)/www/nu
3b70: 6c 6c 73 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  lls.tcl..tclsh $
3b80: 28 54 4f 50 29 2f 77 77 77 2f 6e 75 6c 6c 73 2e  (TOP)/www/nulls.
3b90: 74 63 6c 20 3e 6e 75 6c 6c 73 2e 68 74 6d 6c 0a  tcl >nulls.html.
3ba0: 0a 6f 6c 64 6e 65 77 73 2e 68 74 6d 6c 3a 09 24  .oldnews.html:.$
3bb0: 28 54 4f 50 29 2f 77 77 77 2f 6f 6c 64 6e 65 77  (TOP)/www/oldnew
3bc0: 73 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54  s.tcl..tclsh $(T
3bd0: 4f 50 29 2f 77 77 77 2f 6f 6c 64 6e 65 77 73 2e  OP)/www/oldnews.
3be0: 74 63 6c 20 3e 6f 6c 64 6e 65 77 73 2e 68 74 6d  tcl >oldnews.htm
3bf0: 6c 0a 0a 6f 6d 69 74 74 65 64 2e 68 74 6d 6c 3a  l..omitted.html:
3c00: 09 24 28 54 4f 50 29 2f 77 77 77 2f 6f 6d 69 74  .$(TOP)/www/omit
3c10: 74 65 64 2e 74 63 6c 0a 09 74 63 6c 73 68 20 24  ted.tcl..tclsh $
3c20: 28 54 4f 50 29 2f 77 77 77 2f 6f 6d 69 74 74 65  (TOP)/www/omitte
3c30: 64 2e 74 63 6c 20 3e 6f 6d 69 74 74 65 64 2e 68  d.tcl >omitted.h
3c40: 74 6d 6c 0a 0a 6f 70 63 6f 64 65 2e 68 74 6d 6c  tml..opcode.html
3c50: 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 6f 70 63  :.$(TOP)/www/opc
3c60: 6f 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 2f 73  ode.tcl $(TOP)/s
3c70: 72 63 2f 76 64 62 65 2e 63 0a 09 74 63 6c 73 68  rc/vdbe.c..tclsh
3c80: 20 24 28 54 4f 50 29 2f 77 77 77 2f 6f 70 63 6f   $(TOP)/www/opco
3c90: 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 2f 73 72  de.tcl $(TOP)/sr
3ca0: 63 2f 76 64 62 65 2e 63 20 3e 6f 70 63 6f 64 65  c/vdbe.c >opcode
3cb0: 2e 68 74 6d 6c 0a 0a 6f 70 74 69 6d 69 7a 65 72  .html..optimizer
3cc0: 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77  .html:.$(TOP)/ww
3cd0: 77 2f 6f 70 74 69 6d 69 7a 65 72 2e 74 63 6c 0a  w/optimizer.tcl.
3ce0: 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77  .tclsh $(TOP)/ww
3cf0: 77 2f 6f 70 74 69 6d 69 7a 65 72 2e 74 63 6c 20  w/optimizer.tcl 
3d00: 3e 6f 70 74 69 6d 69 7a 65 72 2e 68 74 6d 6c 0a  >optimizer.html.
3d10: 0a 6f 70 74 6f 76 65 72 76 69 65 77 2e 68 74 6d  .optoverview.htm
3d20: 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 6f 70  l:.$(TOP)/www/op
3d30: 74 6f 76 65 72 76 69 65 77 2e 74 63 6c 0a 09 74  toverview.tcl..t
3d40: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3d50: 6f 70 74 6f 76 65 72 76 69 65 77 2e 74 63 6c 20  optoverview.tcl 
3d60: 3e 6f 70 74 6f 76 65 72 76 69 65 77 2e 68 74 6d  >optoverview.htm
3d70: 6c 0a 0a 71 75 69 63 6b 73 74 61 72 74 2e 68 74  l..quickstart.ht
3d80: 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77 77 2f 71  ml:.$(TOP)/www/q
3d90: 75 69 63 6b 73 74 61 72 74 2e 74 63 6c 0a 09 74  uickstart.tcl..t
3da0: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3db0: 71 75 69 63 6b 73 74 61 72 74 2e 74 63 6c 20 3e  quickstart.tcl >
3dc0: 71 75 69 63 6b 73 74 61 72 74 2e 68 74 6d 6c 0a  quickstart.html.
3dd0: 0a 73 70 65 65 64 2e 68 74 6d 6c 3a 09 24 28 54  .speed.html:.$(T
3de0: 4f 50 29 2f 77 77 77 2f 73 70 65 65 64 2e 74 63  OP)/www/speed.tc
3df0: 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f  l..tclsh $(TOP)/
3e00: 77 77 77 2f 73 70 65 65 64 2e 74 63 6c 20 3e 73  www/speed.tcl >s
3e10: 70 65 65 64 2e 68 74 6d 6c 0a 0a 73 71 6c 69 74  peed.html..sqlit
3e20: 65 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77  e.html:.$(TOP)/w
3e30: 77 77 2f 73 71 6c 69 74 65 2e 74 63 6c 0a 09 74  ww/sqlite.tcl..t
3e40: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3e50: 73 71 6c 69 74 65 2e 74 63 6c 20 3e 73 71 6c 69  sqlite.tcl >sqli
3e60: 74 65 2e 68 74 6d 6c 0a 0a 73 75 70 70 6f 72 74  te.html..support
3e70: 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29 2f 77 77  .html:.$(TOP)/ww
3e80: 77 2f 73 75 70 70 6f 72 74 2e 74 63 6c 0a 09 74  w/support.tcl..t
3e90: 63 6c 73 68 20 24 28 54 4f 50 29 2f 77 77 77 2f  clsh $(TOP)/www/
3ea0: 73 75 70 70 6f 72 74 2e 74 63 6c 20 3e 73 75 70  support.tcl >sup
3eb0: 70 6f 72 74 2e 68 74 6d 6c 0a 0a 74 63 6c 73 71  port.html..tclsq
3ec0: 6c 69 74 65 2e 68 74 6d 6c 3a 09 24 28 54 4f 50  lite.html:.$(TOP
3ed0: 29 2f 77 77 77 2f 74 63 6c 73 71 6c 69 74 65 2e  )/www/tclsqlite.
3ee0: 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50  tcl..tclsh $(TOP
3ef0: 29 2f 77 77 77 2f 74 63 6c 73 71 6c 69 74 65 2e  )/www/tclsqlite.
3f00: 74 63 6c 20 3e 74 63 6c 73 71 6c 69 74 65 2e 68  tcl >tclsqlite.h
3f10: 74 6d 6c 0a 0a 76 64 62 65 2e 68 74 6d 6c 3a 09  tml..vdbe.html:.
3f20: 24 28 54 4f 50 29 2f 77 77 77 2f 76 64 62 65 2e  $(TOP)/www/vdbe.
3f30: 74 63 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50  tcl..tclsh $(TOP
3f40: 29 2f 77 77 77 2f 76 64 62 65 2e 74 63 6c 20 3e  )/www/vdbe.tcl >
3f50: 76 64 62 65 2e 68 74 6d 6c 0a 0a 76 65 72 73 69  vdbe.html..versi
3f60: 6f 6e 33 2e 68 74 6d 6c 3a 09 24 28 54 4f 50 29  on3.html:.$(TOP)
3f70: 2f 77 77 77 2f 76 65 72 73 69 6f 6e 33 2e 74 63  /www/version3.tc
3f80: 6c 0a 09 74 63 6c 73 68 20 24 28 54 4f 50 29 2f  l..tclsh $(TOP)/
3f90: 77 77 77 2f 76 65 72 73 69 6f 6e 33 2e 74 63 6c  www/version3.tcl
3fa0: 20 3e 76 65 72 73 69 6f 6e 33 2e 68 74 6d 6c 0a   >version3.html.
3fb0: 0a 77 68 65 6e 74 6f 75 73 65 2e 68 74 6d 6c 3a  .whentouse.html:
3fc0: 09 24 28 54 4f 50 29 2f 77 77 77 2f 77 68 65 6e  .$(TOP)/www/when
3fd0: 74 6f 75 73 65 2e 74 63 6c 0a 09 74 63 6c 73 68  touse.tcl..tclsh
3fe0: 20 24 28 54 4f 50 29 2f 77 77 77 2f 77 68 65 6e   $(TOP)/www/when
3ff0: 74 6f 75 73 65 2e 74 63 6c 20 3e 77 68 65 6e 74  touse.tcl >whent
4000: 6f 75 73 65 2e 68 74 6d 6c 0a 0a 0a 23 20 46 69  ouse.html...# Fi
4010: 6c 65 73 20 74 6f 20 62 65 20 70 75 62 6c 69 73  les to be publis
4020: 68 65 64 20 6f 6e 20 74 68 65 20 77 65 62 73 69  hed on the websi
4030: 74 65 2e 0a 23 0a 44 4f 43 20 3d 20 5c 0a 20 20  te..#.DOC = \.  
4040: 61 72 63 68 2e 68 74 6d 6c 20 5c 0a 20 20 61 75  arch.html \.  au
4050: 74 6f 69 6e 63 2e 68 74 6d 6c 20 5c 0a 20 20 63  toinc.html \.  c
4060: 5f 69 6e 74 65 72 66 61 63 65 2e 68 74 6d 6c 20  _interface.html 
4070: 5c 0a 20 20 63 61 70 69 33 2e 68 74 6d 6c 20 5c  \.  capi3.html \
4080: 0a 20 20 63 61 70 69 33 72 65 66 2e 68 74 6d 6c  .  capi3ref.html
4090: 20 5c 0a 20 20 63 68 61 6e 67 65 73 2e 68 74 6d   \.  changes.htm
40a0: 6c 20 5c 0a 20 20 63 6f 6d 70 69 6c 65 2e 68 74  l \.  compile.ht
40b0: 6d 6c 20 5c 0a 20 20 63 6f 70 79 72 69 67 68 74  ml \.  copyright
40c0: 2e 68 74 6d 6c 20 5c 0a 20 20 63 6f 70 79 72 69  .html \.  copyri
40d0: 67 68 74 2d 72 65 6c 65 61 73 65 2e 68 74 6d 6c  ght-release.html
40e0: 20 5c 0a 20 20 63 6f 70 79 72 69 67 68 74 2d 72   \.  copyright-r
40f0: 65 6c 65 61 73 65 2e 70 64 66 20 5c 0a 20 20 63  elease.pdf \.  c
4100: 6f 6e 66 6c 69 63 74 2e 68 74 6d 6c 20 5c 0a 20  onflict.html \. 
4110: 20 64 61 74 61 74 79 70 65 73 2e 68 74 6d 6c 20   datatypes.html 
4120: 5c 0a 20 20 64 61 74 61 74 79 70 65 33 2e 68 74  \.  datatype3.ht
4130: 6d 6c 20 5c 0a 20 20 64 69 66 66 65 72 65 6e 74  ml \.  different
4140: 2e 68 74 6d 6c 20 5c 0a 20 20 64 6f 63 73 2e 68  .html \.  docs.h
4150: 74 6d 6c 20 5c 0a 20 20 64 6f 77 6e 6c 6f 61 64  tml \.  download
4160: 2e 68 74 6d 6c 20 5c 0a 20 20 66 61 71 2e 68 74  .html \.  faq.ht
4170: 6d 6c 20 5c 0a 20 20 66 69 6c 65 66 6f 72 6d 61  ml \.  fileforma
4180: 74 2e 68 74 6d 6c 20 5c 0a 20 20 66 6f 72 6d 61  t.html \.  forma
4190: 74 63 68 6e 67 2e 68 74 6d 6c 20 5c 0a 20 20 69  tchng.html \.  i
41a0: 6e 64 65 78 2e 68 74 6d 6c 20 5c 0a 20 20 6c 61  ndex.html \.  la
41b0: 6e 67 2e 68 74 6d 6c 20 5c 0a 20 20 6c 6f 63 6b  ng.html \.  lock
41c0: 69 6e 67 76 33 2e 68 74 6d 6c 20 5c 0a 20 20 6d  ingv3.html \.  m
41d0: 69 6e 67 77 2e 68 74 6d 6c 20 5c 0a 20 20 6e 75  ingw.html \.  nu
41e0: 6c 6c 73 2e 68 74 6d 6c 20 5c 0a 20 20 6f 6c 64  lls.html \.  old
41f0: 6e 65 77 73 2e 68 74 6d 6c 20 5c 0a 20 20 6f 6d  news.html \.  om
4200: 69 74 74 65 64 2e 68 74 6d 6c 20 5c 0a 20 20 6f  itted.html \.  o
4210: 70 63 6f 64 65 2e 68 74 6d 6c 20 5c 0a 20 20 6f  pcode.html \.  o
4220: 70 74 69 6d 69 7a 65 72 2e 68 74 6d 6c 20 5c 0a  ptimizer.html \.
4230: 20 20 6f 70 74 6f 76 65 72 76 69 65 77 2e 68 74    optoverview.ht
4240: 6d 6c 20 5c 0a 20 20 70 72 61 67 6d 61 2e 68 74  ml \.  pragma.ht
4250: 6d 6c 20 5c 0a 20 20 71 75 69 63 6b 73 74 61 72  ml \.  quickstar
4260: 74 2e 68 74 6d 6c 20 5c 0a 20 20 73 68 61 72 65  t.html \.  share
4270: 64 63 61 63 68 65 2e 68 74 6d 6c 20 5c 0a 20 20  dcache.html \.  
4280: 73 70 65 65 64 2e 68 74 6d 6c 20 5c 0a 20 20 73  speed.html \.  s
4290: 71 6c 69 74 65 2e 68 74 6d 6c 20 5c 0a 20 20 73  qlite.html \.  s
42a0: 75 70 70 6f 72 74 2e 68 74 6d 6c 20 5c 0a 20 20  upport.html \.  
42b0: 74 63 6c 73 71 6c 69 74 65 2e 68 74 6d 6c 20 5c  tclsqlite.html \
42c0: 0a 20 20 76 64 62 65 2e 68 74 6d 6c 20 5c 0a 20  .  vdbe.html \. 
42d0: 20 76 65 72 73 69 6f 6e 33 2e 68 74 6d 6c 20 5c   version3.html \
42e0: 0a 20 20 77 68 65 6e 74 6f 75 73 65 2e 68 74 6d  .  whentouse.htm
42f0: 6c 0a 0a 64 6f 63 3a 09 63 6f 6d 6d 6f 6e 2e 74  l..doc:.common.t
4300: 63 6c 20 24 28 44 4f 43 29 0a 09 6d 6b 64 69 72  cl $(DOC)..mkdir
4310: 20 2d 70 20 64 6f 63 0a 09 6d 76 20 24 28 44 4f   -p doc..mv $(DO
4320: 43 29 20 64 6f 63 0a 09 63 70 20 24 28 54 4f 50  C) doc..cp $(TOP
4330: 29 2f 77 77 77 2f 2a 2e 67 69 66 20 24 28 54 4f  )/www/*.gif $(TO
4340: 50 29 2f 61 72 74 2f 2a 2e 67 69 66 20 64 6f 63  P)/art/*.gif doc
4350: 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 69 6e 73  ..# Standard ins
4360: 74 61 6c 6c 20 61 6e 64 20 63 6c 65 61 6e 75 70  tall and cleanup
4370: 20 74 61 72 67 65 74 73 0a 23 0a 69 6e 73 74 61   targets.#.insta
4380: 6c 6c 3a 09 73 71 6c 69 74 65 33 20 6c 69 62 73  ll:.sqlite3 libs
4390: 71 6c 69 74 65 33 2e 61 20 73 71 6c 69 74 65 33  qlite3.a sqlite3
43a0: 2e 68 0a 09 6d 76 20 73 71 6c 69 74 65 33 20 2f  .h..mv sqlite3 /
43b0: 75 73 72 2f 62 69 6e 0a 09 6d 76 20 6c 69 62 73  usr/bin..mv libs
43c0: 71 6c 69 74 65 33 2e 61 20 2f 75 73 72 2f 6c 69  qlite3.a /usr/li
43d0: 62 0a 09 6d 76 20 73 71 6c 69 74 65 33 2e 68 20  b..mv sqlite3.h 
43e0: 2f 75 73 72 2f 69 6e 63 6c 75 64 65 0a 0a 63 6c  /usr/include..cl
43f0: 65 61 6e 3a 09 0a 09 72 6d 20 2d 66 20 2a 2e 6f  ean:...rm -f *.o
4400: 20 73 71 6c 69 74 65 33 20 6c 69 62 73 71 6c 69   sqlite3 libsqli
4410: 74 65 33 2e 61 20 73 71 6c 69 74 65 33 2e 68 20  te3.a sqlite3.h 
4420: 6f 70 63 6f 64 65 73 2e 2a 0a 09 72 6d 20 2d 66  opcodes.*..rm -f
4430: 20 6c 65 6d 6f 6e 20 6c 65 6d 70 61 72 2e 63 20   lemon lempar.c 
4440: 70 61 72 73 65 2e 2a 20 73 71 6c 69 74 65 2a 2e  parse.* sqlite*.
4450: 74 61 72 2e 67 7a 20 6d 6b 6b 65 79 77 6f 72 64  tar.gz mkkeyword
4460: 68 61 73 68 20 6b 65 79 77 6f 72 64 68 61 73 68  hash keywordhash
4470: 2e 68 0a 09 72 6d 20 2d 66 20 24 28 50 55 42 4c  .h..rm -f $(PUBL
4480: 49 53 48 29 0a 09 72 6d 20 2d 66 20 2a 2e 64 61  ISH)..rm -f *.da
4490: 20 2a 2e 62 62 20 2a 2e 62 62 67 20 67 6d 6f 6e   *.bb *.bbg gmon
44a0: 2e 6f 75 74 0a 09 72 6d 20 2d 72 66 20 74 73 72  .out..rm -rf tsr
44b0: 63 0a 09 72 6d 20 2d 66 20 74 65 73 74 6c 6f 61  c..rm -f testloa
44c0: 64 65 78 74 2e 64 6c 6c 20 6c 69 62 74 65 73 74  dext.dll libtest
44d0: 6c 6f 61 64 65 78 74 2e 73 6f 0a                 loadext.so.