/ Hex Artifact Content
Login

Artifact 56ff0fcc3fc3b275aec7f6acb34b3c0526c684bc:


0000: 23 0a 23 20 6e 6d 61 6b 65 20 4d 61 6b 65 66 69  #.# nmake Makefi
0010: 6c 65 20 66 6f 72 20 53 51 4c 69 74 65 0a 23 0a  le for SQLite.#.
0020: 0a 23 20 54 68 65 20 74 6f 70 6c 65 76 65 6c 20  .# The toplevel 
0030: 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65  directory of the
0040: 20 73 6f 75 72 63 65 20 74 72 65 65 2e 20 20 54   source tree.  T
0050: 68 69 73 20 69 73 20 74 68 65 20 64 69 72 65 63  his is the direc
0060: 74 6f 72 79 0a 23 20 74 68 61 74 20 63 6f 6e 74  tory.# that cont
0070: 61 69 6e 73 20 74 68 69 73 20 22 4d 61 6b 65 66  ains this "Makef
0080: 69 6c 65 2e 6d 73 63 22 2e 0a 23 0a 54 4f 50 20  ile.msc"..#.TOP 
0090: 3d 20 2e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  = ...# Set this 
00a0: 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61 74 65 20  non-0 to create 
00b0: 61 6e 64 20 75 73 65 20 74 68 65 20 53 51 4c 69  and use the SQLi
00c0: 74 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 20  te amalgamation 
00d0: 66 69 6c 65 2e 0a 23 0a 55 53 45 5f 41 4d 41 4c  file..#.USE_AMAL
00e0: 47 41 4d 41 54 49 4f 4e 20 3d 20 31 0a 0a 23 20  GAMATION = 1..# 
00f0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0100: 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65 72 6e  o use the Intern
0110: 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e 65 6e  ational Componen
0120: 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65 20 28  ts for Unicode (
0130: 49 43 55 29 2e 0a 23 0a 55 53 45 5f 49 43 55 20  ICU)..#.USE_ICU 
0140: 3d 20 30 0a 0a 23 20 53 65 74 20 74 68 69 73 20  = 0..# Set this 
0150: 6e 6f 6e 2d 30 20 74 6f 20 64 79 6e 61 6d 69 63  non-0 to dynamic
0160: 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65  ally link to the
0170: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69   MSVC runtime li
0180: 62 72 61 72 79 2e 0a 23 0a 55 53 45 5f 43 52 54  brary..#.USE_CRT
0190: 5f 44 4c 4c 20 3d 20 30 0a 0a 23 20 53 65 74 20  _DLL = 0..# Set 
01a0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  this non-0 to us
01b0: 65 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69 62  e the native lib
01c0: 72 61 72 69 65 73 20 70 61 74 68 73 20 66 6f 72  raries paths for
01d0: 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67   cross-compiling
01e0: 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  .# the command l
01f0: 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65 64  ine tools needed
0200: 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70   during the comp
0210: 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e  ilation process.
0220: 0a 23 0a 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49  .#.USE_NATIVE_LI
0230: 42 50 41 54 48 53 20 3d 20 30 0a 0a 23 20 53 65  BPATHS = 0..# Se
0240: 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20  t this non-0 to 
0250: 63 6f 6d 70 69 6c 65 20 62 69 6e 61 72 69 65 73  compile binaries
0260: 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 74 68   suitable for th
0270: 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d  e WinRT environm
0280: 65 6e 74 2e 0a 23 20 54 68 69 73 20 73 65 74 74  ent..# This sett
0290: 69 6e 67 20 64 6f 65 73 20 6e 6f 74 20 61 70 70  ing does not app
02a0: 6c 79 20 74 6f 20 61 6e 79 20 62 69 6e 61 72 69  ly to any binari
02b0: 65 73 20 74 68 61 74 20 72 65 71 75 69 72 65 20  es that require 
02c0: 54 63 6c 20 74 6f 20 6f 70 65 72 61 74 65 0a 23  Tcl to operate.#
02d0: 20 70 72 6f 70 65 72 6c 79 20 28 69 2e 65 2e 20   properly (i.e. 
02e0: 74 68 65 20 74 65 78 74 20 66 69 78 74 75 72 65  the text fixture
02f0: 2c 20 65 74 63 29 2e 0a 23 0a 46 4f 52 5f 57 49  , etc)..#.FOR_WI
0300: 4e 52 54 20 3d 20 30 0a 0a 23 20 53 65 74 20 74  NRT = 0..# Set t
0310: 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20  his to non-0 to 
0320: 63 72 65 61 74 65 20 61 6e 64 20 75 73 65 20 50  create and use P
0330: 44 42 73 2e 0a 23 0a 53 59 4d 42 4f 4c 53 20 3d  DBs..#.SYMBOLS =
0340: 20 31 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74   1..# Set this t
0350: 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c  o one of the fol
0360: 6c 6f 77 69 6e 67 20 76 61 6c 75 65 73 20 74 6f  lowing values to
0370: 20 65 6e 61 62 6c 65 20 76 61 72 69 6f 75 73 20   enable various 
0380: 64 65 62 75 67 67 69 6e 67 0a 23 20 66 65 61 74  debugging.# feat
0390: 75 72 65 73 2e 20 20 45 61 63 68 20 6c 65 76 65  ures.  Each leve
03a0: 6c 20 69 6e 63 6c 75 64 65 73 20 74 68 65 20 64  l includes the d
03b0: 65 62 75 67 67 69 6e 67 20 6f 70 74 69 6f 6e 73  ebugging options
03c0: 20 66 72 6f 6d 20 74 68 65 20 70 72 65 76 69 6f   from the previo
03d0: 75 73 0a 23 20 6c 65 76 65 6c 73 2e 20 20 43 75  us.# levels.  Cu
03e0: 72 72 65 6e 74 6c 79 2c 20 74 68 65 20 72 65 63  rrently, the rec
03f0: 6f 67 6e 69 7a 65 64 20 76 61 6c 75 65 73 20 66  ognized values f
0400: 6f 72 20 44 45 42 55 47 20 61 72 65 3a 0a 23 0a  or DEBUG are:.#.
0410: 23 20 30 20 3d 3d 20 4e 44 45 42 55 47 3a 20 44  # 0 == NDEBUG: D
0420: 69 73 61 62 6c 65 73 20 61 73 73 65 72 74 28 29  isables assert()
0430: 20 61 6e 64 20 6f 74 68 65 72 20 72 75 6e 74 69   and other runti
0440: 6d 65 20 64 69 61 67 6e 6f 73 74 69 63 73 2e 0a  me diagnostics..
0450: 23 20 31 20 3d 3d 20 44 69 73 61 62 6c 65 73 20  # 1 == Disables 
0460: 4e 44 45 42 55 47 20 61 6e 64 20 61 6c 6c 20 6f  NDEBUG and all o
0470: 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 6e 64  ptimizations and
0480: 20 74 68 65 6e 20 65 6e 61 62 6c 65 73 20 50 44   then enables PD
0490: 42 73 2e 0a 23 20 32 20 3d 3d 20 53 51 4c 49 54  Bs..# 2 == SQLIT
04a0: 45 5f 44 45 42 55 47 3a 20 45 6e 61 62 6c 65 73  E_DEBUG: Enables
04b0: 20 76 61 72 69 6f 75 73 20 64 69 61 67 6e 6f 73   various diagnos
04c0: 74 69 63 73 20 6d 65 73 73 61 67 65 73 20 61 6e  tics messages an
04d0: 64 20 63 6f 64 65 2e 0a 23 20 33 20 3d 3d 20 53  d code..# 3 == S
04e0: 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c  QLITE_WIN32_MALL
04f0: 4f 43 5f 56 41 4c 49 44 41 54 45 3a 20 56 61 6c  OC_VALIDATE: Val
0500: 69 64 61 74 65 20 74 68 65 20 57 69 6e 33 32 20  idate the Win32 
0510: 6e 61 74 69 76 65 20 68 65 61 70 20 70 65 72 20  native heap per 
0520: 63 61 6c 6c 2e 0a 23 20 34 20 3d 3d 20 53 51 4c  call..# 4 == SQL
0530: 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54 52 41  ITE_DEBUG_OS_TRA
0540: 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74 70  CE: Enables outp
0550: 75 74 20 66 72 6f 6d 20 74 68 65 20 4f 53 54 52  ut from the OSTR
0560: 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23 20  ACE() macros..# 
0570: 35 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42  5 == SQLITE_ENAB
0580: 4c 45 5f 49 4f 54 52 41 43 45 3a 20 45 6e 61 62  LE_IOTRACE: Enab
0590: 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d 20  les output from 
05a0: 74 68 65 20 49 4f 54 52 41 43 45 28 29 20 6d 61  the IOTRACE() ma
05b0: 63 72 6f 73 2e 0a 23 0a 44 45 42 55 47 20 3d 20  cros..#.DEBUG = 
05c0: 30 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74  0..# Check for t
05d0: 68 65 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f  he predefined co
05e0: 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 43 2e 20  mmand macro CC. 
05f0: 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69   This should poi
0600: 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c  nt to the compil
0610: 65 72 0a 23 20 62 69 6e 61 72 79 20 66 6f 72 20  er.# binary for 
0620: 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66  the target platf
0630: 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e  orm.  If it is n
0640: 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70  ot defined, simp
0650: 6c 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 0a  ly define it to.
0660: 23 20 74 68 65 20 6c 65 67 61 63 79 20 64 65 66  # the legacy def
0670: 61 75 6c 74 20 76 61 6c 75 65 20 27 63 6c 2e 65  ault value 'cl.e
0680: 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43  xe'..#.!IFNDEF C
0690: 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65 0a 21 45  C.CC = cl.exe.!E
06a0: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f  NDIF..# Check fo
06b0: 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61  r the command ma
06c0: 63 72 6f 20 4c 44 2e 20 20 54 68 69 73 20 73 68  cro LD.  This sh
06d0: 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68  ould point to th
06e0: 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61 72 79 20  e linker binary 
06f0: 66 6f 72 0a 23 20 74 68 65 20 74 61 72 67 65 74  for.# the target
0700: 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 69   platform.  If i
0710: 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64  t is not defined
0720: 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 20  , simply define 
0730: 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 79  it to the legacy
0740: 0a 23 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65  .# default value
0750: 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a 21   'link.exe'..#.!
0760: 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20 3d 20 6c  IFNDEF LD.LD = l
0770: 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a  ink.exe.!ENDIF..
0780: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20  # Check for the 
0790: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4e 43  command macro NC
07a0: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  C.  This should 
07b0: 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d  point to the com
07c0: 70 69 6c 65 72 20 62 69 6e 61 72 79 0a 23 20 66  piler binary.# f
07d0: 6f 72 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20  or the platform 
07e0: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  the compilation 
07f0: 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b 69 6e  process is takin
0800: 67 20 70 6c 61 63 65 20 6f 6e 2e 20 20 49 66 20  g place on.  If 
0810: 69 74 20 69 73 20 6e 6f 74 0a 23 20 64 65 66 69  it is not.# defi
0820: 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69  ned, simply defi
0830: 6e 65 20 69 74 20 74 6f 20 68 61 76 65 20 74 68  ne it to have th
0840: 65 20 73 61 6d 65 20 76 61 6c 75 65 20 61 73 20  e same value as 
0850: 74 68 65 20 43 43 20 6d 61 63 72 6f 2e 20 20 57  the CC macro.  W
0860: 68 65 6e 0a 23 20 63 72 6f 73 73 2d 63 6f 6d 70  hen.# cross-comp
0870: 69 6c 69 6e 67 2c 20 69 74 20 69 73 20 73 75 67  iling, it is sug
0880: 67 65 73 74 65 64 20 74 68 61 74 20 74 68 69 73  gested that this
0890: 20 6d 61 63 72 6f 20 62 65 20 6d 6f 64 69 66 69   macro be modifi
08a0: 65 64 20 76 69 61 20 74 68 65 20 63 6f 6d 6d 61  ed via the comma
08b0: 6e 64 0a 23 20 6c 69 6e 65 20 28 73 69 6e 63 65  nd.# line (since
08c0: 20 6e 6d 61 6b 65 20 69 74 73 65 6c 66 20 64 6f   nmake itself do
08d0: 65 73 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61  es not provide a
08e0: 20 62 75 69 6c 74 2d 69 6e 20 6d 65 74 68 6f 64   built-in method
08f0: 20 74 6f 20 67 75 65 73 73 20 69 74 29 2e 0a 23   to guess it)..#
0900: 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f   For example, to
0910: 20 75 73 65 20 74 68 65 20 78 38 36 20 63 6f 6d   use the x86 com
0920: 70 69 6c 65 72 20 77 68 65 6e 20 63 72 6f 73 73  piler when cross
0930: 2d 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 78  -compiling for x
0940: 36 34 2c 20 61 20 63 6f 6d 6d 61 6e 64 0a 23 20  64, a command.# 
0950: 6c 69 6e 65 20 73 69 6d 69 6c 61 72 20 74 6f 20  line similar to 
0960: 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f  the following co
0970: 75 6c 64 20 62 65 20 75 73 65 64 20 28 61 6c 6c  uld be used (all
0980: 20 6f 6e 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23   on one line):.#
0990: 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20  .#     nmake /f 
09a0: 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 0a 23 20 20  Makefile.msc.#  
09b0: 20 20 20 20 20 20 20 20 20 22 4e 43 43 3d 22 22           "NCC=""
09c0: 25 56 43 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62  %VCINSTALLDIR%\b
09d0: 69 6e 5c 63 6c 2e 65 78 65 22 22 22 0a 23 20 20  in\cl.exe""".#  
09e0: 20 20 20 20 20 20 20 20 20 55 53 45 5f 4e 41 54           USE_NAT
09f0: 49 56 45 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23  IVE_LIBPATHS=1.#
0a00: 0a 21 49 46 4e 44 45 46 20 4e 43 43 0a 4e 43 43  .!IFNDEF NCC.NCC
0a10: 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49 46 0a   = $(CC).!ENDIF.
0a20: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65  .# Check for the
0a30: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69   MSVC runtime li
0a40: 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f  brary path macro
0a50: 2e 20 20 4f 74 68 65 72 74 69 73 65 2c 20 74 68  .  Othertise, th
0a60: 69 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c 20  is.# value will 
0a70: 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27  default to the '
0a80: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75  lib' directory u
0a90: 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 4d 53  nderneath the MS
0aa0: 56 43 0a 23 20 69 6e 73 74 61 6c 6c 61 74 69 6f  VC.# installatio
0ab0: 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21  n directory..#.!
0ac0: 49 46 4e 44 45 46 20 4e 43 52 54 4c 49 42 50 41  IFNDEF NCRTLIBPA
0ad0: 54 48 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 3d  TH.NCRTLIBPATH =
0ae0: 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29   $(VCINSTALLDIR)
0af0: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 43  \lib.!ENDIF..# C
0b00: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 50 6c 61  heck for the Pla
0b10: 74 66 6f 72 6d 20 53 44 4b 20 6c 69 62 72 61 72  tform SDK librar
0b20: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f  y path macro.  O
0b30: 74 68 65 72 74 69 73 65 2c 20 74 68 69 73 0a 23  thertise, this.#
0b40: 20 76 61 6c 75 65 20 77 69 6c 6c 20 64 65 66 61   value will defa
0b50: 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27  ult to the 'lib'
0b60: 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72   directory under
0b70: 6e 65 61 74 68 20 74 68 65 20 57 69 6e 64 6f 77  neath the Window
0b80: 73 0a 23 20 53 44 4b 20 69 6e 73 74 61 6c 6c 61  s.# SDK installa
0b90: 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 20 28  tion directory (
0ba0: 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20  the environment 
0bb0: 76 61 72 69 61 62 6c 65 20 75 73 65 64 20 61 70  variable used ap
0bc0: 70 65 61 72 73 0a 23 20 74 6f 20 62 65 20 61 76  pears.# to be av
0bd0: 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 75 73 69  ailable when usi
0be0: 6e 67 20 56 69 73 75 61 6c 20 43 2b 2b 20 32 30  ng Visual C++ 20
0bf0: 30 38 20 6f 72 20 6c 61 74 65 72 20 76 69 61 20  08 or later via 
0c00: 74 68 65 0a 23 20 63 6f 6d 6d 61 6e 64 20 6c 69  the.# command li
0c10: 6e 65 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ne)..#.!IFNDEF N
0c20: 53 44 4b 4c 49 42 50 41 54 48 0a 4e 53 44 4b 4c  SDKLIBPATH.NSDKL
0c30: 49 42 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f  IBPATH = $(WINDO
0c40: 57 53 53 44 4b 44 49 52 29 5c 6c 69 62 0a 21 45  WSSDKDIR)\lib.!E
0c50: 4e 44 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c  NDIF..# C compil
0c60: 65 72 20 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66  er and options f
0c70: 6f 72 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69  or use in buildi
0c80: 6e 67 20 65 78 65 63 75 74 61 62 6c 65 73 20 74  ng executables t
0c90: 68 61 74 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f  hat.# will run o
0ca0: 6e 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 74  n the platform t
0cb0: 68 61 74 20 69 73 20 64 6f 69 6e 67 20 74 68 65  hat is doing the
0cc0: 20 62 75 69 6c 64 2e 0a 23 0a 42 43 43 20 3d 20   build..#.BCC = 
0cd0: 24 28 4e 43 43 29 20 2d 57 33 0a 0a 23 20 43 68  $(NCC) -W3..# Ch
0ce0: 65 63 6b 20 69 66 20 74 68 65 20 6e 61 74 69 76  eck if the nativ
0cf0: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths 
0d00: 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 77  should be used w
0d10: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 23 20  hen compiling.# 
0d20: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  the command line
0d30: 20 74 6f 6f 6c 73 20 75 73 65 64 20 64 75 72 69   tools used duri
0d40: 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  ng the compilati
0d50: 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20 49 66 0a  on process.  If.
0d60: 23 20 73 6f 2c 20 73 65 74 20 74 68 65 20 6e 65  # so, set the ne
0d70: 63 65 73 73 61 72 79 20 6d 61 63 72 6f 20 6e 6f  cessary macro no
0d80: 77 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4e  w..#.!IF $(USE_N
0d90: 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 29 21  ATIVE_LIBPATHS)!
0da0: 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48 53 20 3d  =0.NLTLIBPATHS =
0db0: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 43 52   "/LIBPATH:$(NCR
0dc0: 54 4c 49 42 50 41 54 48 29 22 20 22 2f 4c 49 42  TLIBPATH)" "/LIB
0dd0: 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49 42 50 41  PATH:$(NSDKLIBPA
0de0: 54 48 29 22 0a 21 45 4e 44 49 46 0a 0a 23 20 43  TH)".!ENDIF..# C
0df0: 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70   compiler and op
0e00: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e  tions for use in
0e10: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74   building execut
0e20: 61 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c  ables that.# wil
0e30: 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 74 61 72  l run on the tar
0e40: 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 28  get platform.  (
0e50: 42 43 43 20 61 6e 64 20 54 43 43 20 61 72 65 20  BCC and TCC are 
0e60: 75 73 75 61 6c 6c 79 20 74 68 65 0a 23 20 73 61  usually the.# sa
0e70: 6d 65 20 75 6e 6c 65 73 73 20 79 6f 75 72 20 61  me unless your a
0e80: 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69  re cross-compili
0e90: 6e 67 2e 29 0a 23 0a 54 43 43 20 3d 20 24 28 43  ng.).#.TCC = $(C
0ea0: 43 29 20 2d 57 33 20 2d 44 53 51 4c 49 54 45 5f  C) -W3 -DSQLITE_
0eb0: 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d 49 24  OS_WIN=1 -I. -I$
0ec0: 28 54 4f 50 29 5c 73 72 63 20 2d 66 70 3a 70 72  (TOP)\src -fp:pr
0ed0: 65 63 69 73 65 0a 0a 23 20 57 68 65 6e 20 63 6f  ecise..# When co
0ee0: 6d 70 69 6c 69 6e 67 20 74 68 65 20 6c 69 62 72  mpiling the libr
0ef0: 61 72 79 20 66 6f 72 20 75 73 65 20 69 6e 20 74  ary for use in t
0f00: 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e  he WinRT environ
0f10: 6d 65 6e 74 2c 0a 23 20 74 68 65 20 66 6f 6c 6c  ment,.# the foll
0f20: 6f 77 69 6e 67 20 63 6f 6d 70 69 6c 65 2d 74 69  owing compile-ti
0f30: 6d 65 20 6f 70 74 69 6f 6e 73 20 6d 75 73 74 20  me options must 
0f40: 62 65 20 75 73 65 64 20 61 73 20 77 65 6c 6c 20  be used as well 
0f50: 74 6f 0a 23 20 64 69 73 61 62 6c 65 20 75 73 65  to.# disable use
0f60: 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 74   of Win32 APIs t
0f70: 68 61 74 20 61 72 65 20 6e 6f 74 20 61 76 61 69  hat are not avai
0f80: 6c 61 62 6c 65 20 61 6e 64 20 74 6f 20 65 6e 61  lable and to ena
0f90: 62 6c 65 0a 23 20 75 73 65 20 6f 66 20 57 69 6e  ble.# use of Win
0fa0: 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65  32 APIs that are
0fb0: 20 73 70 65 63 69 66 69 63 20 74 6f 20 57 69 6e   specific to Win
0fc0: 64 6f 77 73 20 38 20 61 6e 64 2f 6f 72 20 57 69  dows 8 and/or Wi
0fd0: 6e 52 54 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52  nRT..#.!IF $(FOR
0fe0: 5f 57 49 4e 52 54 29 21 3d 30 0a 54 43 43 20 3d  _WINRT)!=0.TCC =
0ff0: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE
1000: 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 21 45 4e 44  _OS_WINRT=1.!END
1010: 49 46 0a 0a 23 20 41 6c 73 6f 2c 20 77 65 20 6e  IF..# Also, we n
1020: 65 65 64 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c  eed to dynamical
1030: 6c 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 63  ly link to the c
1040: 6f 72 72 65 63 74 20 4d 53 56 43 20 72 75 6e 74  orrect MSVC runt
1050: 69 6d 65 0a 23 20 77 68 65 6e 20 63 6f 6d 70 69  ime.# when compi
1060: 6c 69 6e 67 20 66 6f 72 20 57 69 6e 52 54 20 28  ling for WinRT (
1070: 65 2e 67 2e 20 64 65 62 75 67 20 6f 72 20 72 65  e.g. debug or re
1080: 6c 65 61 73 65 29 20 4f 52 20 69 66 20 74 68 65  lease) OR if the
1090: 0a 23 20 55 53 45 5f 43 52 54 5f 44 4c 4c 20 6f  .# USE_CRT_DLL o
10a0: 70 74 69 6f 6e 20 69 73 20 73 65 74 20 74 6f 20  ption is set to 
10b0: 66 6f 72 63 65 20 64 79 6e 61 6d 69 63 61 6c 6c  force dynamicall
10c0: 79 20 6c 69 6e 6b 69 6e 67 20 74 6f 20 74 68 65  y linking to the
10d0: 0a 23 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20  .# MSVC runtime 
10e0: 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 20 24  library..#.!IF $
10f0: 28 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 20 7c  (FOR_WINRT)!=0 |
1100: 7c 20 24 28 55 53 45 5f 43 52 54 5f 44 4c 4c 29  | $(USE_CRT_DLL)
1110: 21 3d 30 0a 21 49 46 20 24 28 44 45 42 55 47 29  !=0.!IF $(DEBUG)
1120: 3e 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  >0.TCC = $(TCC) 
1130: 2d 4d 44 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d  -MDd.!ELSE.TCC =
1140: 20 24 28 54 43 43 29 20 2d 4d 44 0a 21 45 4e 44   $(TCC) -MD.!END
1150: 49 46 0a 21 45 4c 53 45 0a 21 49 46 20 24 28 44  IF.!ELSE.!IF $(D
1160: 45 42 55 47 29 3e 30 0a 54 43 43 20 3d 20 24 28  EBUG)>0.TCC = $(
1170: 54 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 0a  TCC) -MTd.!ELSE.
1180: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54  TCC = $(TCC) -MT
1190: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
11a0: 23 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 63  # The mksqlite3c
11b0: 2e 74 63 6c 20 61 6e 64 20 6d 6b 73 71 6c 69 74  .tcl and mksqlit
11c0: 65 33 68 2e 74 63 6c 20 73 63 72 69 70 74 73 20  e3h.tcl scripts 
11d0: 77 69 6c 6c 20 70 75 6c 6c 20 69 6e 0a 23 20 61  will pull in.# a
11e0: 6e 79 20 65 78 74 65 6e 73 69 6f 6e 20 68 65 61  ny extension hea
11f0: 64 65 72 20 66 69 6c 65 73 20 62 79 20 64 65 66  der files by def
1200: 61 75 6c 74 2e 20 20 46 6f 72 20 6e 6f 6e 2d 61  ault.  For non-a
1210: 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 20 62 75  malgamation.# bu
1220: 69 6c 64 73 2c 20 77 65 20 6e 65 65 64 20 74 6f  ilds, we need to
1230: 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 63   make sure the c
1240: 6f 6d 70 69 6c 65 72 20 63 61 6e 20 66 69 6e 64  ompiler can find
1250: 20 74 68 65 73 65 2e 0a 23 0a 21 49 46 20 24 28   these..#.!IF $(
1260: 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  USE_AMALGAMATION
1270: 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43  )==0.TCC = $(TCC
1280: 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 66  ) -I$(TOP)\ext\f
1290: 74 73 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29  ts3.TCC = $(TCC)
12a0: 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 72 74   -I$(TOP)\ext\rt
12b0: 72 65 65 0a 21 45 4e 44 49 46 0a 0a 23 20 44 65  ree.!ENDIF..# De
12c0: 66 69 6e 65 20 2d 44 4e 44 45 42 55 47 20 74 6f  fine -DNDEBUG to
12d0: 20 63 6f 6d 70 69 6c 65 20 77 69 74 68 6f 75 74   compile without
12e0: 20 64 65 62 75 67 67 69 6e 67 20 28 69 2e 65 2e   debugging (i.e.
12f0: 2c 20 66 6f 72 20 70 72 6f 64 75 63 74 69 6f 6e  , for production
1300: 20 75 73 61 67 65 29 0a 23 20 4f 6d 69 74 74 69   usage).# Omitti
1310: 6e 67 20 74 68 65 20 64 65 66 69 6e 65 20 77 69  ng the define wi
1320: 6c 6c 20 63 61 75 73 65 20 65 78 74 72 61 20 64  ll cause extra d
1330: 65 62 75 67 67 69 6e 67 20 63 6f 64 65 20 74 6f  ebugging code to
1340: 20 62 65 20 69 6e 73 65 72 74 65 64 20 61 6e 64   be inserted and
1350: 0a 23 20 69 6e 63 6c 75 64 65 73 20 65 78 74 72  .# includes extr
1360: 61 20 63 6f 6d 6d 65 6e 74 73 20 77 68 65 6e 20  a comments when 
1370: 22 45 58 50 4c 41 49 4e 20 73 74 6d 74 22 20 69  "EXPLAIN stmt" i
1380: 73 20 75 73 65 64 2e 0a 23 0a 21 49 46 20 24 28  s used..#.!IF $(
1390: 44 45 42 55 47 29 3d 3d 30 0a 54 43 43 20 3d 20  DEBUG)==0.TCC = 
13a0: 24 28 54 43 43 29 20 2d 44 4e 44 45 42 55 47 0a  $(TCC) -DNDEBUG.
13b0: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 4e  BCC = $(BCC) -DN
13c0: 44 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a 21 49  DEBUG.!ENDIF..!I
13d0: 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43  F $(DEBUG)>1.TCC
13e0: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49   = $(TCC) -DSQLI
13f0: 54 45 5f 44 45 42 55 47 0a 21 45 4e 44 49 46 0a  TE_DEBUG.!ENDIF.
1400: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 33 0a  .!IF $(DEBUG)>3.
1410: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS
1420: 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54  QLITE_DEBUG_OS_T
1430: 52 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a 21  RACE=1.!ENDIF..!
1440: 49 46 20 24 28 44 45 42 55 47 29 3e 34 0a 54 43  IF $(DEBUG)>4.TC
1450: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c  C = $(TCC) -DSQL
1460: 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 41  ITE_ENABLE_IOTRA
1470: 43 45 0a 21 45 4e 44 49 46 0a 0a 23 0a 23 20 50  CE.!ENDIF..#.# P
1480: 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 73 20  revent warnings 
1490: 61 62 6f 75 74 20 22 69 6e 73 65 63 75 72 65 22  about "insecure"
14a0: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69   MSVC runtime li
14b0: 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 0a  brary functions.
14c0: 23 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23 0a  # being used..#.
14d0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 5f  TCC = $(TCC) -D_
14e0: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 45  CRT_SECURE_NO_DE
14f0: 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 53  PRECATE -D_CRT_S
1500: 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47  ECURE_NO_WARNING
1510: 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  S.BCC = $(BCC) -
1520: 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f  D_CRT_SECURE_NO_
1530: 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54  DEPRECATE -D_CRT
1540: 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49  _SECURE_NO_WARNI
1550: 4e 47 53 0a 0a 23 0a 23 20 50 72 65 76 65 6e 74  NGS..#.# Prevent
1560: 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20   warnings about 
1570: 22 64 65 70 72 65 63 61 74 65 64 22 20 50 4f 53  "deprecated" POS
1580: 49 58 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 69  IX functions bei
1590: 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d  ng used..#.TCC =
15a0: 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 5f 4e   $(TCC) -D_CRT_N
15b0: 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43  ONSTDC_NO_DEPREC
15c0: 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  ATE -D_CRT_NONST
15d0: 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 42  DC_NO_WARNINGS.B
15e0: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f 43  CC = $(BCC) -D_C
15f0: 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45  RT_NONSTDC_NO_DE
1600: 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e  PRECATE -D_CRT_N
1610: 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e  ONSTDC_NO_WARNIN
1620: 47 53 0a 0a 23 0a 23 20 55 73 65 20 6e 61 74 69  GS..#.# Use nati
1630: 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 69 6e  ve Win32 heap in
1640: 73 74 65 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 2f  stead of malloc/
1650: 66 72 65 65 3f 0a 23 0a 23 20 54 43 43 20 3d 20  free?.#.# TCC = 
1660: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(TCC) -DSQLITE_
1670: 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a  WIN32_MALLOC=1..
1680: 23 0a 23 20 56 61 6c 69 64 61 74 65 20 74 68 65  #.# Validate the
1690: 20 68 65 61 70 20 6f 6e 20 65 76 65 72 79 20 63   heap on every c
16a0: 61 6c 6c 20 69 6e 74 6f 20 74 68 65 20 6e 61 74  all into the nat
16b0: 69 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 73  ive Win32 heap s
16c0: 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46 20  ubsystem?.#.!IF 
16d0: 24 28 44 45 42 55 47 29 3e 32 0a 54 43 43 20 3d  $(DEBUG)>2.TCC =
16e0: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE
16f0: 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41  _WIN32_MALLOC_VA
1700: 4c 49 44 41 54 45 3d 31 0a 21 45 4e 44 49 46 0a  LIDATE=1.!ENDIF.
1710: 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73  .# The locations
1720: 20 6f 66 20 74 68 65 20 54 63 6c 20 68 65 61 64   of the Tcl head
1730: 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66  er and library f
1740: 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65  iles.  Also, the
1750: 20 6c 69 62 72 61 72 79 20 74 68 61 74 0a 23 20   library that.# 
1760: 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61 62 6c 65  non-stubs enable
1770: 64 20 70 72 6f 67 72 61 6d 73 20 75 73 69 6e 67  d programs using
1780: 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e 6b 20 61   Tcl must link a
1790: 67 61 69 6e 73 74 2e 20 20 54 68 65 73 65 20 76  gainst.  These v
17a0: 61 72 69 61 62 6c 65 73 0a 23 20 28 54 43 4c 49  ariables.# (TCLI
17b0: 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42 44 49 52  NCDIR, TCLLIBDIR
17c0: 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29 20 6d 61  , and LIBTCL) ma
17d0: 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20  y be overridden 
17e0: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d  via the environm
17f0: 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72  ent.# prior to r
1800: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20  unning nmake in 
1810: 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74  order to match t
1820: 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c  he actual instal
1830: 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 61 6e 64  led location and
1840: 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e 20 74 68  .# version on th
1850: 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49  is machine..#.!I
1860: 46 4e 44 45 46 20 54 43 4c 49 4e 43 44 49 52 0a  FNDEF TCLINCDIR.
1870: 54 43 4c 49 4e 43 44 49 52 20 3d 20 63 3a 5c 74  TCLINCDIR = c:\t
1880: 63 6c 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49  cl\include.!ENDI
1890: 46 0a 0a 21 49 46 4e 44 45 46 20 54 43 4c 4c 49  F..!IFNDEF TCLLI
18a0: 42 44 49 52 0a 54 43 4c 4c 49 42 44 49 52 20 3d  BDIR.TCLLIBDIR =
18b0: 20 63 3a 5c 74 63 6c 5c 6c 69 62 0a 21 45 4e 44   c:\tcl\lib.!END
18c0: 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 54  IF..!IFNDEF LIBT
18d0: 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 63 6c 38  CL.LIBTCL = tcl8
18e0: 35 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20  5.lib.!ENDIF..# 
18f0: 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66  The locations of
1900: 20 74 68 65 20 49 43 55 20 68 65 61 64 65 72 20   the ICU header 
1910: 61 6e 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65  and library file
1920: 73 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62  s.  These variab
1930: 6c 65 73 0a 23 20 28 49 43 55 49 4e 43 44 49 52  les.# (ICUINCDIR
1940: 2c 20 49 43 55 4c 49 42 44 49 52 2c 20 61 6e 64  , ICULIBDIR, and
1950: 20 4c 49 42 49 43 55 29 20 6d 61 79 20 62 65 20   LIBICU) may be 
1960: 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74  overridden via t
1970: 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23  he environment.#
1980: 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e   prior to runnin
1990: 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72  g nmake in order
19a0: 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63   to match the ac
19b0: 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c  tual installed l
19c0: 6f 63 61 74 69 6f 6e 20 6f 6e 0a 23 20 74 68 69  ocation on.# thi
19d0: 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49 46  s machine..#.!IF
19e0: 4e 44 45 46 20 49 43 55 49 4e 43 44 49 52 0a 49  NDEF ICUINCDIR.I
19f0: 43 55 49 4e 43 44 49 52 20 3d 20 63 3a 5c 69 63  CUINCDIR = c:\ic
1a00: 75 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49 46  u\include.!ENDIF
1a10: 0a 0a 21 49 46 4e 44 45 46 20 49 43 55 4c 49 42  ..!IFNDEF ICULIB
1a20: 44 49 52 0a 49 43 55 4c 49 42 44 49 52 20 3d 20  DIR.ICULIBDIR = 
1a30: 63 3a 5c 69 63 75 5c 6c 69 62 0a 21 45 4e 44 49  c:\icu\lib.!ENDI
1a40: 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 49 43  F..!IFNDEF LIBIC
1a50: 55 0a 4c 49 42 49 43 55 20 3d 20 69 63 75 75 63  U.LIBICU = icuuc
1a60: 2e 6c 69 62 20 69 63 75 69 6e 2e 6c 69 62 0a 21  .lib icuin.lib.!
1a70: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
1a80: 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20   the command to 
1a90: 75 73 65 20 66 6f 72 20 74 63 6c 73 68 20 2d 20  use for tclsh - 
1aa0: 6e 6f 72 6d 61 6c 6c 79 20 6a 75 73 74 20 22 74  normally just "t
1ab0: 63 6c 73 68 22 2c 20 62 75 74 20 77 65 20 6d 61  clsh", but we ma
1ac0: 79 0a 23 20 6b 6e 6f 77 20 74 68 65 20 73 70 65  y.# know the spe
1ad0: 63 69 66 69 63 20 76 65 72 73 69 6f 6e 20 77 65  cific version we
1ae0: 20 77 61 6e 74 20 74 6f 20 75 73 65 2e 20 20 54   want to use.  T
1af0: 68 69 73 20 76 61 72 69 61 62 6c 65 20 28 54 43  his variable (TC
1b00: 4c 53 48 5f 43 4d 44 29 20 6d 61 79 20 62 65 0a  LSH_CMD) may be.
1b10: 23 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61  # overridden via
1b20: 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74   the environment
1b30: 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e   prior to runnin
1b40: 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72  g nmake in order
1b50: 20 74 6f 20 73 65 6c 65 63 74 20 61 0a 23 20 73   to select a.# s
1b60: 70 65 63 69 66 69 63 20 54 63 6c 20 73 68 65 6c  pecific Tcl shel
1b70: 6c 20 74 6f 20 75 73 65 2e 0a 23 0a 21 49 46 4e  l to use..#.!IFN
1b80: 44 45 46 20 54 43 4c 53 48 5f 43 4d 44 0a 54 43  DEF TCLSH_CMD.TC
1b90: 4c 53 48 5f 43 4d 44 20 3d 20 74 63 6c 73 68 38  LSH_CMD = tclsh8
1ba0: 35 0a 21 45 4e 44 49 46 0a 0a 23 20 43 6f 6d 70  5.!ENDIF..# Comp
1bb0: 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 6e 65 65  iler options nee
1bc0: 64 65 64 20 66 6f 72 20 70 72 6f 67 72 61 6d 73  ded for programs
1bd0: 20 74 68 61 74 20 75 73 65 20 74 68 65 20 72 65   that use the re
1be0: 61 64 6c 69 6e 65 28 29 20 6c 69 62 72 61 72 79  adline() library
1bf0: 2e 0a 23 0a 52 45 41 44 4c 49 4e 45 5f 46 4c 41  ..#.READLINE_FLA
1c00: 47 53 20 3d 20 2d 44 48 41 56 45 5f 52 45 41 44  GS = -DHAVE_READ
1c10: 4c 49 4e 45 3d 30 0a 0a 23 20 54 68 65 20 6c 69  LINE=0..# The li
1c20: 62 72 61 72 79 20 74 68 61 74 20 70 72 6f 67 72  brary that progr
1c30: 61 6d 73 20 75 73 69 6e 67 20 72 65 61 64 6c 69  ams using readli
1c40: 6e 65 28 29 20 6d 75 73 74 20 6c 69 6e 6b 20 61  ne() must link a
1c50: 67 61 69 6e 73 74 2e 0a 23 0a 4c 49 42 52 45 41  gainst..#.LIBREA
1c60: 44 4c 49 4e 45 20 3d 0a 0a 23 20 53 68 6f 75 6c  DLINE =..# Shoul
1c70: 64 20 74 68 65 20 64 61 74 61 62 61 73 65 20 65  d the database e
1c80: 6e 67 69 6e 65 20 62 65 20 63 6f 6d 70 69 6c 65  ngine be compile
1c90: 64 20 74 68 72 65 61 64 73 61 66 65 0a 23 0a 54  d threadsafe.#.T
1ca0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ
1cb0: 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
1cc0: 31 0a 0a 23 20 44 6f 20 74 68 72 65 61 64 73 20  1..# Do threads 
1cd0: 6f 76 65 72 72 69 64 65 20 65 61 63 68 20 6f 74  override each ot
1ce0: 68 65 72 73 20 6c 6f 63 6b 73 20 62 79 20 64 65  hers locks by de
1cf0: 66 61 75 6c 74 20 28 31 29 2c 20 6f 72 20 64 6f  fault (1), or do
1d00: 20 77 65 20 74 65 73 74 20 28 2d 31 29 0a 23 0a   we test (-1).#.
1d10: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS
1d20: 51 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45  QLITE_THREAD_OVE
1d30: 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 0a 23  RRIDE_LOCK=-1..#
1d40: 20 41 6e 79 20 74 61 72 67 65 74 20 6c 69 62 72   Any target libr
1d50: 61 72 69 65 73 20 77 68 69 63 68 20 6c 69 62 73  aries which libs
1d60: 71 6c 69 74 65 20 6d 75 73 74 20 62 65 20 6c 69  qlite must be li
1d70: 6e 6b 65 64 20 61 67 61 69 6e 73 74 0a 23 0a 21  nked against.#.!
1d80: 49 46 4e 44 45 46 20 54 4c 49 42 53 0a 54 4c 49  IFNDEF TLIBS.TLI
1d90: 42 53 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 46  BS =.!ENDIF..# F
1da0: 6c 61 67 73 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67  lags controlling
1db0: 20 75 73 65 20 6f 66 20 74 68 65 20 69 6e 20 6d   use of the in m
1dc0: 65 6d 6f 72 79 20 62 74 72 65 65 20 69 6d 70 6c  emory btree impl
1dd0: 65 6d 65 6e 74 61 74 69 6f 6e 0a 23 0a 23 20 53  ementation.#.# S
1de0: 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45  QLITE_TEMP_STORE
1df0: 20 69 73 20 30 20 74 6f 20 66 6f 72 63 65 20 74   is 0 to force t
1e00: 65 6d 70 6f 72 61 72 79 20 74 61 62 6c 65 73 20  emporary tables 
1e10: 74 6f 20 62 65 20 69 6e 20 61 20 66 69 6c 65 2c  to be in a file,
1e20: 20 31 20 74 6f 0a 23 20 64 65 66 61 75 6c 74 20   1 to.# default 
1e30: 74 6f 20 66 69 6c 65 2c 20 32 20 74 6f 20 64 65  to file, 2 to de
1e40: 66 61 75 6c 74 20 74 6f 20 6d 65 6d 6f 72 79 2c  fault to memory,
1e50: 20 61 6e 64 20 33 20 74 6f 20 66 6f 72 63 65 20   and 3 to force 
1e60: 74 65 6d 70 6f 72 61 72 79 0a 23 20 74 61 62 6c  temporary.# tabl
1e70: 65 73 20 74 6f 20 61 6c 77 61 79 73 20 62 65 20  es to always be 
1e80: 69 6e 20 6d 65 6d 6f 72 79 2e 0a 23 0a 54 43 43  in memory..#.TCC
1e90: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49   = $(TCC) -DSQLI
1ea0: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a  TE_TEMP_STORE=1.
1eb0: 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 61 62 6c  .# Enable/disabl
1ec0: 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 74 65 6e  e loadable exten
1ed0: 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 68 65 72  sions, and other
1ee0: 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 74 75 72   optional featur
1ef0: 65 73 0a 23 20 62 61 73 65 64 20 6f 6e 20 63 6f  es.# based on co
1f00: 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 28 2d 44  nfiguration. (-D
1f10: 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c 20 2d 44  SQLITE_OMIT*, -D
1f20: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 2a 29 2e  SQLITE_ENABLE*).
1f30: 0a 23 20 54 68 65 20 73 61 6d 65 20 73 65 74 20  .# The same set 
1f40: 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 4e 41 42  of OMIT and ENAB
1f50: 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 6c 64 20  LE flags should 
1f60: 62 65 20 70 61 73 73 65 64 20 74 6f 20 74 68 65  be passed to the
1f70: 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 65 72 20  .# LEMON parser 
1f80: 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 20 74 68  generator and th
1f90: 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 20  e mkkeywordhash 
1fa0: 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e 0a 0a 23  tool as well...#
1fb0: 20 42 45 47 49 4e 20 73 74 61 6e 64 61 72 64 20   BEGIN standard 
1fc0: 6f 70 74 69 6f 6e 73 0a 4f 50 54 5f 46 45 41 54  options.OPT_FEAT
1fd0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50  URE_FLAGS = $(OP
1fe0: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  T_FEATURE_FLAGS)
1ff0: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
2000: 5f 46 54 53 33 3d 31 0a 4f 50 54 5f 46 45 41 54  _FTS3=1.OPT_FEAT
2010: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50  URE_FLAGS = $(OP
2020: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  T_FEATURE_FLAGS)
2030: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
2040: 5f 52 54 52 45 45 3d 31 0a 4f 50 54 5f 46 45 41  _RTREE=1.OPT_FEA
2050: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O
2060: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
2070: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
2080: 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44 41 54  E_COLUMN_METADAT
2090: 41 3d 31 0a 23 20 45 4e 44 20 73 74 61 6e 64 61  A=1.# END standa
20a0: 72 64 20 6f 70 74 69 6f 6e 73 0a 0a 23 20 42 45  rd options..# BE
20b0: 47 49 4e 20 72 65 71 75 69 72 65 64 20 57 69 6e  GIN required Win
20c0: 64 6f 77 73 20 6f 70 74 69 6f 6e 0a 4f 50 54 5f  dows option.OPT_
20d0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20  FEATURE_FLAGS = 
20e0: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL
20f0: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 4d 41  AGS) -DSQLITE_MA
2100: 58 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 3d  X_TRIGGER_DEPTH=
2110: 31 30 30 0a 23 20 45 4e 44 20 72 65 71 75 69 72  100.# END requir
2120: 65 64 20 57 69 6e 64 6f 77 73 20 6f 70 74 69 6f  ed Windows optio
2130: 6e 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  n..TCC = $(TCC) 
2140: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL
2150: 41 47 53 29 0a 0a 23 20 41 64 64 20 69 6e 20 61  AGS)..# Add in a
2160: 6e 79 20 6f 70 74 69 6f 6e 61 6c 20 70 61 72 61  ny optional para
2170: 6d 65 74 65 72 73 20 73 70 65 63 69 66 69 65 64  meters specified
2180: 20 6f 6e 20 74 68 65 20 6d 61 6b 65 20 63 6f 6d   on the make com
2190: 6d 61 6e 65 20 6c 69 6e 65 0a 23 20 69 65 2e 20  mane line.# ie. 
21a0: 20 6d 61 6b 65 20 22 4f 50 54 53 3d 2d 44 53 51   make "OPTS=-DSQ
21b0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d  LITE_ENABLE_FOO=
21c0: 31 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  1 -DSQLITE_OMIT_
21d0: 46 4f 4f 3d 31 22 2e 0a 54 43 43 20 3d 20 24 28  FOO=1"..TCC = $(
21e0: 54 43 43 29 20 24 28 4f 50 54 53 29 0a 0a 23 20  TCC) $(OPTS)..# 
21f0: 49 66 20 73 79 6d 62 6f 6c 73 20 61 72 65 20 65  If symbols are e
2200: 6e 61 62 6c 65 64 2c 20 65 6e 61 62 6c 65 20 50  nabled, enable P
2210: 44 42 73 2e 0a 23 20 49 66 20 64 65 62 75 67 67  DBs..# If debugg
2220: 69 6e 67 20 69 73 20 65 6e 61 62 6c 65 64 2c 20  ing is enabled, 
2230: 64 69 73 61 62 6c 65 20 61 6c 6c 20 6f 70 74 69  disable all opti
2240: 6d 69 7a 61 74 69 6f 6e 73 20 61 6e 64 20 65 6e  mizations and en
2250: 61 62 6c 65 20 50 44 42 73 2e 0a 21 49 46 20 24  able PDBs..!IF $
2260: 28 44 45 42 55 47 29 3e 30 0a 54 43 43 20 3d 20  (DEBUG)>0.TCC = 
2270: 24 28 54 43 43 29 20 2d 4f 64 20 2d 44 5f 44 45  $(TCC) -Od -D_DE
2280: 42 55 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29  BUG.BCC = $(BCC)
2290: 20 2d 4f 64 20 2d 44 5f 44 45 42 55 47 0a 21 45   -Od -D_DEBUG.!E
22a0: 4c 53 45 0a 54 43 43 20 3d 20 24 28 54 43 43 29  LSE.TCC = $(TCC)
22b0: 20 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43   -O2.BCC = $(BCC
22c0: 29 20 2d 4f 32 0a 21 45 4e 44 49 46 0a 0a 21 49  ) -O2.!ENDIF..!I
22d0: 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c 20  F $(DEBUG)>0 || 
22e0: 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 54 43  $(SYMBOLS)!=0.TC
22f0: 43 20 3d 20 24 28 54 43 43 29 20 2d 5a 69 0a 42  C = $(TCC) -Zi.B
2300: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 5a 69 0a  CC = $(BCC) -Zi.
2310: 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 49 43 55  !ENDIF..# If ICU
2320: 20 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62   support is enab
2330: 6c 65 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d  led, add the com
2340: 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f  piler options fo
2350: 72 20 69 74 2e 0a 21 49 46 20 24 28 55 53 45 5f  r it..!IF $(USE_
2360: 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28  ICU)!=0.TCC = $(
2370: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  TCC) -DSQLITE_EN
2380: 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43 43 20 3d  ABLE_ICU=1.TCC =
2390: 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29   $(TCC) -I$(TOP)
23a0: 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20 24  \ext\icu.TCC = $
23b0: 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e 43  (TCC) -I$(ICUINC
23c0: 44 49 52 29 0a 21 45 4e 44 49 46 0a 0a 23 20 6c  DIR).!ENDIF..# l
23d0: 69 62 74 6f 6f 6c 20 63 6f 6d 70 69 6c 65 2f 6c  ibtool compile/l
23e0: 69 6e 6b 0a 4c 54 43 4f 4d 50 49 4c 45 20 3d 20  ink.LTCOMPILE = 
23f0: 24 28 54 43 43 29 20 2d 46 6f 24 40 0a 4c 54 4c  $(TCC) -Fo$@.LTL
2400: 49 42 20 3d 20 6c 69 62 2e 65 78 65 0a 4c 54 4c  IB = lib.exe.LTL
2410: 49 4e 4b 20 3d 20 24 28 54 43 43 29 20 2d 46 65  INK = $(TCC) -Fe
2420: 24 40 0a 0a 23 20 49 66 20 61 20 70 6c 61 74 66  $@..# If a platf
2430: 6f 72 6d 20 77 61 73 20 73 65 74 2c 20 66 6f 72  orm was set, for
2440: 63 65 20 74 68 65 20 6c 69 6e 6b 65 72 20 74 6f  ce the linker to
2450: 20 74 61 72 67 65 74 20 74 68 61 74 2e 0a 23 20   target that..# 
2460: 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 76 63  Note that the vc
2470: 76 61 72 73 2a 2e 62 61 74 20 66 61 6d 69 6c 79  vars*.bat family
2480: 20 6f 66 20 62 61 74 63 68 20 66 69 6c 65 73 20   of batch files 
2490: 74 79 70 69 63 61 6c 6c 79 0a 23 20 73 65 74 20  typically.# set 
24a0: 74 68 69 73 20 66 6f 72 20 79 6f 75 2e 20 20 4f  this for you.  O
24b0: 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 6c 69  therwise, the li
24c0: 6e 6b 65 72 20 77 69 6c 6c 20 61 74 74 65 6d 70  nker will attemp
24d0: 74 0a 23 20 74 6f 20 64 65 64 75 63 65 20 74 68  t.# to deduce th
24e0: 65 20 62 69 6e 61 72 79 20 74 79 70 65 20 62 61  e binary type ba
24f0: 73 65 64 20 6f 6e 20 74 68 65 20 6f 62 6a 65 63  sed on the objec
2500: 74 20 66 69 6c 65 73 2e 0a 21 49 46 44 45 46 20  t files..!IFDEF 
2510: 50 4c 41 54 46 4f 52 4d 0a 4c 54 4c 49 4e 4b 4f  PLATFORM.LTLINKO
2520: 50 54 53 20 3d 20 2f 4d 41 43 48 49 4e 45 3a 24  PTS = /MACHINE:$
2530: 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49 42  (PLATFORM).LTLIB
2540: 4f 50 54 53 20 3d 20 2f 4d 41 43 48 49 4e 45 3a  OPTS = /MACHINE:
2550: 24 28 50 4c 41 54 46 4f 52 4d 29 0a 21 45 4e 44  $(PLATFORM).!END
2560: 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69  IF..# When compi
2570: 6c 69 6e 67 20 66 6f 72 20 75 73 65 20 69 6e 20  ling for use in 
2580: 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f  the WinRT enviro
2590: 6e 6d 65 6e 74 2c 20 74 68 65 20 66 6f 6c 6c 6f  nment, the follo
25a0: 77 69 6e 67 0a 23 20 6c 69 6e 6b 65 72 20 6f 70  wing.# linker op
25b0: 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 75 73 65  tion must be use
25c0: 64 20 74 6f 20 6d 61 72 6b 20 74 68 65 20 65 78  d to mark the ex
25d0: 65 63 75 74 61 62 6c 65 20 61 73 20 72 75 6e 6e  ecutable as runn
25e0: 61 62 6c 65 0a 23 20 6f 6e 6c 79 20 69 6e 20 74  able.# only in t
25f0: 68 65 20 63 6f 6e 74 65 78 74 20 6f 66 20 61 6e  he context of an
2600: 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 63 6f 6e   application con
2610: 74 61 69 6e 65 72 2e 0a 23 0a 21 49 46 20 24 28  tainer..#.!IF $(
2620: 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 0a 4c 54  FOR_WINRT)!=0.LT
2630: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c  LINKOPTS = $(LTL
2640: 49 4e 4b 4f 50 54 53 29 20 2f 41 50 50 43 4f 4e  INKOPTS) /APPCON
2650: 54 41 49 4e 45 52 0a 21 45 4e 44 49 46 0a 0a 23  TAINER.!ENDIF..#
2660: 20 49 66 20 65 69 74 68 65 72 20 64 65 62 75 67   If either debug
2670: 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f 6c 73 20  ging or symbols 
2680: 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 65 6e 61  are enabled, ena
2690: 62 6c 65 20 50 44 42 73 2e 0a 21 49 46 20 24 28  ble PDBs..!IF $(
26a0: 44 45 42 55 47 29 3e 30 20 7c 7c 20 24 28 53 59  DEBUG)>0 || $(SY
26b0: 4d 42 4f 4c 53 29 21 3d 30 0a 4c 44 46 4c 41 47  MBOLS)!=0.LDFLAG
26c0: 53 20 3d 20 2f 44 45 42 55 47 0a 21 45 4e 44 49  S = /DEBUG.!ENDI
26d0: 46 0a 0a 23 20 53 74 61 72 74 20 77 69 74 68 20  F..# Start with 
26e0: 74 68 65 20 54 63 6c 20 72 65 6c 61 74 65 64 20  the Tcl related 
26f0: 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 2e 0a  linker options..
2700: 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 2f 4c 49  LTLIBPATHS = /LI
2710: 42 50 41 54 48 3a 24 28 54 43 4c 4c 49 42 44 49  BPATH:$(TCLLIBDI
2720: 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28 4c 49  R).LTLIBS = $(LI
2730: 42 54 43 4c 29 0a 0a 23 20 49 66 20 49 43 55 20  BTCL)..# If ICU 
2740: 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c  support is enabl
2750: 65 64 2c 20 61 64 64 20 74 68 65 20 6c 69 6e 6b  ed, add the link
2760: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69  er options for i
2770: 74 2e 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55  t..!IF $(USE_ICU
2780: 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20  )!=0.LTLIBPATHS 
2790: 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  = $(LTLIBPATHS) 
27a0: 2f 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49  /LIBPATH:$(ICULI
27b0: 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24  BDIR).LTLIBS = $
27c0: 28 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43  (LTLIBS) $(LIBIC
27d0: 55 29 0a 21 45 4e 44 49 46 0a 0a 23 20 6e 61 77  U).!ENDIF..# naw
27e0: 6b 20 63 6f 6d 70 61 74 69 62 6c 65 20 61 77 6b  k compatible awk
27f0: 2e 0a 4e 41 57 4b 20 3d 20 67 61 77 6b 2e 65 78  ..NAWK = gawk.ex
2800: 65 0a 0a 23 20 59 6f 75 20 73 68 6f 75 6c 64 20  e..# You should 
2810: 6e 6f 74 20 68 61 76 65 20 74 6f 20 63 68 61 6e  not have to chan
2820: 67 65 20 61 6e 79 74 68 69 6e 67 20 62 65 6c 6f  ge anything belo
2830: 77 20 74 68 69 73 20 6c 69 6e 65 0a 23 23 23 23  w this line.####
2840: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2850: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2860: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2870: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2880: 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 4f  ###########..# O
2890: 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20  bject files for 
28a0: 74 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61  the SQLite libra
28b0: 72 79 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61  ry (non-amalgama
28c0: 74 69 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53  tion)..#.LIBOBJS
28d0: 30 20 3d 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61  0 = alter.lo ana
28e0: 6c 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c  lyze.lo attach.l
28f0: 6f 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20  o auth.lo \.    
2900: 20 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62       backup.lo b
2910: 69 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78  itvec.lo btmutex
2920: 2e 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69  .lo btree.lo bui
2930: 6c 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  ld.lo \.        
2940: 20 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d   callback.lo com
2950: 70 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c  plete.lo ctime.l
2960: 6f 20 64 61 74 65 2e 6c 6f 20 64 65 6c 65 74 65  o date.lo delete
2970: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 65  .lo \.         e
2980: 78 70 72 2e 6c 6f 20 66 61 75 6c 74 2e 6c 6f 20  xpr.lo fault.lo 
2990: 66 6b 65 79 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  fkey.lo \.      
29a0: 20 20 20 66 74 73 33 2e 6c 6f 20 66 74 73 33 5f     fts3.lo fts3_
29b0: 61 75 78 2e 6c 6f 20 66 74 73 33 5f 65 78 70 72  aux.lo fts3_expr
29c0: 2e 6c 6f 20 66 74 73 33 5f 68 61 73 68 2e 6c 6f  .lo fts3_hash.lo
29d0: 20 66 74 73 33 5f 69 63 75 2e 6c 6f 20 5c 0a 20   fts3_icu.lo \. 
29e0: 20 20 20 20 20 20 20 20 66 74 73 33 5f 70 6f 72          fts3_por
29f0: 74 65 72 2e 6c 6f 20 66 74 73 33 5f 73 6e 69 70  ter.lo fts3_snip
2a00: 70 65 74 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b 65  pet.lo fts3_toke
2a10: 6e 69 7a 65 72 2e 6c 6f 20 66 74 73 33 5f 74 6f  nizer.lo fts3_to
2a20: 6b 65 6e 69 7a 65 72 31 2e 6c 6f 20 5c 0a 20 20  kenizer1.lo \.  
2a30: 20 20 20 20 20 20 20 66 74 73 33 5f 75 6e 69 63         fts3_unic
2a40: 6f 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63  ode.lo fts3_unic
2a50: 6f 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69  ode2.lo fts3_wri
2a60: 74 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  te.lo \.        
2a70: 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61 6c 2e   func.lo global.
2a80: 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a 20 20 20  lo hash.lo \.   
2a90: 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 69 6e 73        icu.lo ins
2aa0: 65 72 74 2e 6c 6f 20 6a 6f 75 72 6e 61 6c 2e 6c  ert.lo journal.l
2ab0: 6f 20 6c 65 67 61 63 79 2e 6c 6f 20 6c 6f 61 64  o legacy.lo load
2ac0: 65 78 74 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  ext.lo \.       
2ad0: 20 20 6d 61 69 6e 2e 6c 6f 20 6d 61 6c 6c 6f 63    main.lo malloc
2ae0: 2e 6c 6f 20 6d 65 6d 30 2e 6c 6f 20 6d 65 6d 31  .lo mem0.lo mem1
2af0: 2e 6c 6f 20 6d 65 6d 32 2e 6c 6f 20 6d 65 6d 33  .lo mem2.lo mem3
2b00: 2e 6c 6f 20 6d 65 6d 35 2e 6c 6f 20 5c 0a 20 20  .lo mem5.lo \.  
2b10: 20 20 20 20 20 20 20 6d 65 6d 6a 6f 75 72 6e 61         memjourna
2b20: 6c 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  l.lo \.         
2b30: 6d 75 74 65 78 2e 6c 6f 20 6d 75 74 65 78 5f 6e  mutex.lo mutex_n
2b40: 6f 6f 70 2e 6c 6f 20 6d 75 74 65 78 5f 75 6e 69  oop.lo mutex_uni
2b50: 78 2e 6c 6f 20 6d 75 74 65 78 5f 77 33 32 2e 6c  x.lo mutex_w32.l
2b60: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6e 6f 74  o \.         not
2b70: 69 66 79 2e 6c 6f 20 6f 70 63 6f 64 65 73 2e 6c  ify.lo opcodes.l
2b80: 6f 20 6f 73 2e 6c 6f 20 6f 73 5f 75 6e 69 78 2e  o os.lo os_unix.
2b90: 6c 6f 20 6f 73 5f 77 69 6e 2e 6c 6f 20 5c 0a 20  lo os_win.lo \. 
2ba0: 20 20 20 20 20 20 20 20 70 61 67 65 72 2e 6c 6f          pager.lo
2bb0: 20 70 61 72 73 65 2e 6c 6f 20 70 63 61 63 68 65   parse.lo pcache
2bc0: 2e 6c 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70  .lo pcache1.lo p
2bd0: 72 61 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65  ragma.lo prepare
2be0: 2e 6c 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a  .lo printf.lo \.
2bf0: 20 20 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e           random.
2c00: 6c 6f 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f  lo resolve.lo ro
2c10: 77 73 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f  wset.lo rtree.lo
2c20: 20 73 65 6c 65 63 74 2e 6c 6f 20 73 74 61 74 75   select.lo statu
2c30: 73 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  s.lo \.         
2c40: 74 61 62 6c 65 2e 6c 6f 20 74 6f 6b 65 6e 69 7a  table.lo tokeniz
2c50: 65 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20  e.lo trigger.lo 
2c60: 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 74  \.         updat
2c70: 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63  e.lo util.lo vac
2c80: 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  uum.lo \.       
2c90: 20 20 76 64 62 65 2e 6c 6f 20 76 64 62 65 61 70    vdbe.lo vdbeap
2ca0: 69 2e 6c 6f 20 76 64 62 65 61 75 78 2e 6c 6f 20  i.lo vdbeaux.lo 
2cb0: 76 64 62 65 62 6c 6f 62 2e 6c 6f 20 76 64 62 65  vdbeblob.lo vdbe
2cc0: 6d 65 6d 2e 6c 6f 20 76 64 62 65 73 6f 72 74 2e  mem.lo vdbesort.
2cd0: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 76 64  lo \.         vd
2ce0: 62 65 74 72 61 63 65 2e 6c 6f 20 77 61 6c 2e 6c  betrace.lo wal.l
2cf0: 6f 20 77 61 6c 6b 65 72 2e 6c 6f 20 77 68 65 72  o walker.lo wher
2d00: 65 2e 6c 6f 20 75 74 66 2e 6c 6f 20 76 74 61 62  e.lo utf.lo vtab
2d10: 2e 6c 6f 0a 0a 23 20 4f 62 6a 65 63 74 20 66 69  .lo..# Object fi
2d20: 6c 65 73 20 66 6f 72 20 74 68 65 20 61 6d 61 6c  les for the amal
2d30: 67 61 6d 61 74 69 6f 6e 2e 0a 23 0a 4c 49 42 4f  gamation..#.LIBO
2d40: 42 4a 53 31 20 3d 20 73 71 6c 69 74 65 33 2e 6c  BJS1 = sqlite3.l
2d50: 6f 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65 20 74  o..# Determine t
2d60: 68 65 20 72 65 61 6c 20 76 61 6c 75 65 20 6f 66  he real value of
2d70: 20 4c 49 42 4f 42 4a 20 62 61 73 65 64 20 6f 6e   LIBOBJ based on
2d80: 20 74 68 65 20 27 63 6f 6e 66 69 67 75 72 65 27   the 'configure'
2d90: 20 73 63 72 69 70 74 0a 23 0a 21 49 46 20 24 28   script.#.!IF $(
2da0: 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  USE_AMALGAMATION
2db0: 29 3d 3d 30 0a 4c 49 42 4f 42 4a 20 3d 20 24 28  )==0.LIBOBJ = $(
2dc0: 4c 49 42 4f 42 4a 53 30 29 0a 21 45 4c 53 45 0a  LIBOBJS0).!ELSE.
2dd0: 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42  LIBOBJ = $(LIBOB
2de0: 4a 53 31 29 0a 21 45 4e 44 49 46 0a 0a 23 20 41  JS1).!ENDIF..# A
2df0: 6c 6c 20 6f 66 20 74 68 65 20 73 6f 75 72 63 65  ll of the source
2e00: 20 63 6f 64 65 20 66 69 6c 65 73 2e 0a 23 0a 53   code files..#.S
2e10: 52 43 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c  RC = \.  $(TOP)\
2e20: 73 72 63 5c 61 6c 74 65 72 2e 63 20 5c 0a 20 20  src\alter.c \.  
2e30: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79  $(TOP)\src\analy
2e40: 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ze.c \.  $(TOP)\
2e50: 73 72 63 5c 61 74 74 61 63 68 2e 63 20 5c 0a 20  src\attach.c \. 
2e60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68   $(TOP)\src\auth
2e70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
2e80: 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20 24  c\backup.c \.  $
2e90: 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65 63  (TOP)\src\bitvec
2ea0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
2eb0: 63 5c 62 74 6d 75 74 65 78 2e 63 20 5c 0a 20 20  c\btmutex.c \.  
2ec0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65  $(TOP)\src\btree
2ed0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
2ee0: 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20 24 28  c\btree.h \.  $(
2ef0: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 49 6e  TOP)\src\btreeIn
2f00: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.h \.  $(TOP)\s
2f10: 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a 20 20 24  rc\build.c \.  $
2f20: 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61  (TOP)\src\callba
2f30: 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ck.c \.  $(TOP)\
2f40: 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 20 5c  src\complete.c \
2f50: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74  .  $(TOP)\src\ct
2f60: 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ime.c \.  $(TOP)
2f70: 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c 0a 20 20  \src\date.c \.  
2f80: 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74  $(TOP)\src\delet
2f90: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
2fa0: 72 63 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 28  rc\expr.c \.  $(
2fb0: 54 4f 50 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63  TOP)\src\fault.c
2fc0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
2fd0: 66 6b 65 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50  fkey.c \.  $(TOP
2fe0: 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a 20  )\src\func.c \. 
2ff0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62   $(TOP)\src\glob
3000: 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  al.c \.  $(TOP)\
3010: 73 72 63 5c 68 61 73 68 2e 63 20 5c 0a 20 20 24  src\hash.c \.  $
3020: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 68  (TOP)\src\hash.h
3030: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3040: 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 24 28 54  hwtime.h \.  $(T
3050: 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63  OP)\src\insert.c
3060: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3070: 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28  journal.c \.  $(
3080: 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e  TOP)\src\legacy.
3090: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
30a0: 5c 6c 6f 61 64 65 78 74 2e 63 20 5c 0a 20 20 24  \loadext.c \.  $
30b0: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63  (TOP)\src\main.c
30c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
30d0: 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54  malloc.c \.  $(T
30e0: 4f 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 5c  OP)\src\mem0.c \
30f0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  .  $(TOP)\src\me
3100: 6d 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  m1.c \.  $(TOP)\
3110: 73 72 63 5c 6d 65 6d 32 2e 63 20 5c 0a 20 20 24  src\mem2.c \.  $
3120: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63  (TOP)\src\mem3.c
3130: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3140: 6d 65 6d 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50  mem5.c \.  $(TOP
3150: 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c  )\src\memjournal
3160: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3170: 63 5c 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24 28  c\mutex.c \.  $(
3180: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68  TOP)\src\mutex.h
3190: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
31a0: 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20  mutex_noop.c \. 
31b0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute
31c0: 78 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54  x_unix.c \.  $(T
31d0: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33  OP)\src\mutex_w3
31e0: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  2.c \.  $(TOP)\s
31f0: 72 63 5c 6e 6f 74 69 66 79 2e 63 20 5c 0a 20 20  rc\notify.c \.  
3200: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20  $(TOP)\src\os.c 
3210: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  \.  $(TOP)\src\o
3220: 73 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  s.h \.  $(TOP)\s
3230: 72 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c  rc\os_common.h \
3240: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  .  $(TOP)\src\os
3250: 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f  _unix.c \.  $(TO
3260: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20  P)\src\os_win.c 
3270: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  \.  $(TOP)\src\p
3280: 61 67 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ager.c \.  $(TOP
3290: 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20 5c 0a  )\src\pager.h \.
32a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72    $(TOP)\src\par
32b0: 73 65 2e 79 20 5c 0a 20 20 24 28 54 4f 50 29 5c  se.y \.  $(TOP)\
32c0: 73 72 63 5c 70 63 61 63 68 65 2e 63 20 5c 0a 20  src\pcache.c \. 
32d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63   $(TOP)\src\pcac
32e0: 68 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  he.h \.  $(TOP)\
32f0: 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 5c 0a  src\pcache1.c \.
3300: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61    $(TOP)\src\pra
3310: 67 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  gma.c \.  $(TOP)
3320: 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 5c  \src\prepare.c \
3330: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72  .  $(TOP)\src\pr
3340: 69 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50  intf.c \.  $(TOP
3350: 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 5c  )\src\random.c \
3360: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 65  .  $(TOP)\src\re
3370: 73 6f 6c 76 65 2e 63 20 5c 0a 20 20 24 28 54 4f  solve.c \.  $(TO
3380: 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 2e 63 20  P)\src\rowset.c 
3390: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73  \.  $(TOP)\src\s
33a0: 65 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28 54 4f  elect.c \.  $(TO
33b0: 50 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 20  P)\src\status.c 
33c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73  \.  $(TOP)\src\s
33d0: 68 65 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hell.c \.  $(TOP
33e0: 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69  )\src\sqlite.h.i
33f0: 6e 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  n \.  $(TOP)\src
3400: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a  \sqlite3ext.h \.
3410: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c    $(TOP)\src\sql
3420: 69 74 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54  iteInt.h \.  $(T
3430: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69  OP)\src\sqliteLi
3440: 6d 69 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  mit.h \.  $(TOP)
3450: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a 20  \src\table.c \. 
3460: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls
3470: 71 6c 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f  qlite.c \.  $(TO
3480: 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e  P)\src\tokenize.
3490: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
34a0: 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20 20 24  \trigger.c \.  $
34b0: 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 20  (TOP)\src\utf.c 
34c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75  \.  $(TOP)\src\u
34d0: 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f  pdate.c \.  $(TO
34e0: 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a  P)\src\util.c \.
34f0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63    $(TOP)\src\vac
3500: 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  uum.c \.  $(TOP)
3510: 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a 20 20  \src\vdbe.c \.  
3520: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e  $(TOP)\src\vdbe.
3530: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src
3540: 5c 76 64 62 65 61 70 69 2e 63 20 5c 0a 20 20 24  \vdbeapi.c \.  $
3550: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75  (TOP)\src\vdbeau
3560: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s
3570: 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 5c 0a  rc\vdbeblob.c \.
3580: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb
3590: 65 6d 65 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50  emem.c \.  $(TOP
35a0: 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63  )\src\vdbesort.c
35b0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
35c0: 76 64 62 65 74 72 61 63 65 2e 63 20 5c 0a 20 20  vdbetrace.c \.  
35d0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49  $(TOP)\src\vdbeI
35e0: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nt.h \.  $(TOP)\
35f0: 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a 20 20 24  src\vtab.c \.  $
3600: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20  (TOP)\src\wal.c 
3610: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77  \.  $(TOP)\src\w
3620: 61 6c 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  al.h \.  $(TOP)\
3630: 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20  src\walker.c \. 
3640: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher
3650: 65 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  e.c..# Source co
3660: 64 65 20 66 6f 72 20 65 78 74 65 6e 73 69 6f 6e  de for extension
3670: 73 0a 23 0a 53 52 43 20 3d 20 24 28 53 52 43 29  s.#.SRC = $(SRC)
3680: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3690: 66 74 73 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20  fts1\fts1.c \.  
36a0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\
36b0: 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts1.h \.  $(TOP
36c0: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
36d0: 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hash.c \.  $(TOP
36e0: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
36f0: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP
3700: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
3710: 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54  porter.c \.  $(T
3720: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
3730: 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a  1_tokenizer.h \.
3740: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
3750: 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72  1\fts1_tokenizer
3760: 31 2e 63 0a 53 52 43 20 3d 20 24 28 53 52 43 29  1.c.SRC = $(SRC)
3770: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3780: 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20 20  fts2\fts2.c \.  
3790: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
37a0: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts2.h \.  $(TOP
37b0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
37c0: 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hash.c \.  $(TOP
37d0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
37e0: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP
37f0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
3800: 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  icu.c \.  $(TOP)
3810: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70  \ext\fts2\fts2_p
3820: 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  orter.c \.  $(TO
3830: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
3840: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20  _tokenizer.h \. 
3850: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
3860: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
3870: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
3880: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e  \fts2\fts2_token
3890: 69 7a 65 72 31 2e 63 0a 53 52 43 20 3d 20 24 28  izer1.c.SRC = $(
38a0: 53 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c  SRC) \.  $(TOP)\
38b0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20  ext\fts3\fts3.c 
38c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
38d0: 74 73 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24  ts3\fts3.h \.  $
38e0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
38f0: 74 73 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54  ts3Int.h \.  $(T
3900: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
3910: 33 5f 61 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f  3_aux.c \.  $(TO
3920: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3930: 5f 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f  _expr.c \.  $(TO
3940: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3950: 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f  _hash.c \.  $(TO
3960: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3970: 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f  _hash.h \.  $(TO
3980: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3990: 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _icu.c \.  $(TOP
39a0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
39b0: 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54  porter.c \.  $(T
39c0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
39d0: 33 5f 73 6e 69 70 70 65 74 2e 63 20 5c 0a 20 20  3_snippet.c \.  
39e0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
39f0: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68  fts3_tokenizer.h
3a00: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3a10: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
3a20: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  zer.c \.  $(TOP)
3a30: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
3a40: 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20  okenizer1.c \.  
3a50: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
3a60: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20 5c  fts3_unicode.c \
3a70: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
3a80: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32  s3\fts3_unicode2
3a90: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
3aa0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74  t\fts3\fts3_writ
3ab0: 65 2e 63 0a 53 52 43 20 3d 20 24 28 53 52 43 29  e.c.SRC = $(SRC)
3ac0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3ad0: 69 63 75 5c 73 71 6c 69 74 65 69 63 75 2e 68 20  icu\sqliteicu.h 
3ae0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69  \.  $(TOP)\ext\i
3af0: 63 75 5c 69 63 75 2e 63 0a 53 52 43 20 3d 20 24  cu\icu.c.SRC = $
3b00: 28 53 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29  (SRC) \.  $(TOP)
3b10: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
3b20: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
3b30: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a  t\rtree\rtree.c.
3b40: 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 73 6f  ..# Generated so
3b50: 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 0a  urce code files.
3b60: 23 0a 53 52 43 20 3d 20 24 28 53 52 43 29 20 5c  #.SRC = $(SRC) \
3b70: 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68  .  keywordhash.h
3b80: 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63 20 5c   \.  opcodes.c \
3b90: 0a 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20  .  opcodes.h \. 
3ba0: 20 70 61 72 73 65 2e 63 20 5c 0a 20 20 70 61 72   parse.c \.  par
3bb0: 73 65 2e 68 20 5c 0a 20 20 73 71 6c 69 74 65 33  se.h \.  sqlite3
3bc0: 2e 68 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64  .h..# Source cod
3bd0: 65 20 74 6f 20 74 68 65 20 74 65 73 74 20 66 69  e to the test fi
3be0: 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52 43 20 3d  les..#.TESTSRC =
3bf0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3c00: 74 65 73 74 31 2e 63 20 5c 0a 20 20 24 28 54 4f  test1.c \.  $(TO
3c10: 50 29 5c 73 72 63 5c 74 65 73 74 32 2e 63 20 5c  P)\src\test2.c \
3c20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
3c30: 73 74 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  st3.c \.  $(TOP)
3c40: 5c 73 72 63 5c 74 65 73 74 34 2e 63 20 5c 0a 20  \src\test4.c \. 
3c50: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3c60: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  5.c \.  $(TOP)\s
3c70: 72 63 5c 74 65 73 74 36 2e 63 20 5c 0a 20 20 24  rc\test6.c \.  $
3c80: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 37 2e  (TOP)\src\test7.
3c90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3ca0: 5c 74 65 73 74 38 2e 63 20 5c 0a 20 20 24 28 54  \test8.c \.  $(T
3cb0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 39 2e 63 20  OP)\src\test9.c 
3cc0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3cd0: 65 73 74 5f 61 75 74 6f 65 78 74 2e 63 20 5c 0a  est_autoext.c \.
3ce0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3cf0: 74 5f 61 73 79 6e 63 2e 63 20 5c 0a 20 20 24 28  t_async.c \.  $(
3d00: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 61  TOP)\src\test_ba
3d10: 63 6b 75 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ckup.c \.  $(TOP
3d20: 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 72 65 65  )\src\test_btree
3d30: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3d40: 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67 2e 63 20  c\test_config.c 
3d50: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3d60: 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63 20 5c 0a  est_demovfs.c \.
3d70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3d80: 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a 20 20 24  t_devsym.c \.  $
3d90: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66  (TOP)\src\test_f
3da0: 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  unc.c \.  $(TOP)
3db0: 5c 73 72 63 5c 74 65 73 74 5f 66 75 7a 7a 65 72  \src\test_fuzzer
3dc0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3dd0: 63 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63 20 5c  c\test_hexio.c \
3de0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
3df0: 73 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 24 28  st_init.c \.  $(
3e00: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e  TOP)\src\test_in
3e10: 74 61 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54  tarray.c \.  $(T
3e20: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a 6f 75  OP)\src\test_jou
3e30: 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50  rnal.c \.  $(TOP
3e40: 29 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c 6c 6f  )\src\test_mallo
3e50: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  c.c \.  $(TOP)\s
3e60: 72 63 5c 74 65 73 74 5f 6d 75 6c 74 69 70 6c 65  rc\test_multiple
3e70: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s
3e80: 72 63 5c 74 65 73 74 5f 6d 75 74 65 78 2e 63 20  rc\test_mutex.c 
3e90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3ea0: 65 73 74 5f 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a  est_onefile.c \.
3eb0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3ec0: 74 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a 20 20 24  t_osinst.c \.  $
3ed0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 70  (TOP)\src\test_p
3ee0: 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f  cache.c \.  $(TO
3ef0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 71 75 6f 74  P)\src\test_quot
3f00: 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  a.c \.  $(TOP)\s
3f10: 72 63 5c 74 65 73 74 5f 72 74 72 65 65 2e 63 20  rc\test_rtree.c 
3f20: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3f30: 65 73 74 5f 73 63 68 65 6d 61 2e 63 20 5c 0a 20  est_schema.c \. 
3f40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3f50: 5f 73 65 72 76 65 72 2e 63 20 5c 0a 20 20 24 28  _server.c \.  $(
3f60: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 75  TOP)\src\test_su
3f70: 70 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20 20 24 28  perlock.c \.  $(
3f80: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 79  TOP)\src\test_sy
3f90: 73 63 61 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  scall.c \.  $(TO
3fa0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 74 61 74  P)\src\test_stat
3fb0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3fc0: 63 5c 74 65 73 74 5f 74 63 6c 76 61 72 2e 63 20  c\test_tclvar.c 
3fd0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3fe0: 65 73 74 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20  est_thread.c \. 
3ff0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
4000: 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _vfs.c \.  $(TOP
4010: 29 5c 73 72 63 5c 74 65 73 74 5f 77 68 6f 6c 65  )\src\test_whole
4020: 6e 75 6d 62 65 72 2e 63 20 5c 0a 20 20 24 28 54  number.c \.  $(T
4030: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 73 64  OP)\src\test_wsd
4040: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
4050: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 72 6d  t\fts3\fts3_term
4060: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
4070: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 73 74  t\fts3\fts3_test
4080: 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64  .c..# Source cod
4090: 65 20 74 6f 20 74 68 65 20 6c 69 62 72 61 72 79  e to the library
40a0: 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 62 79   files needed by
40b0: 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75 72   the test fixtur
40c0: 65 0a 23 0a 54 45 53 54 53 52 43 32 20 3d 20 5c  e.#.TESTSRC2 = \
40d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74  .  $(TOP)\src\at
40e0: 74 61 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tach.c \.  $(TOP
40f0: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c  )\src\backup.c \
4100: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  .  $(TOP)\src\bi
4110: 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tvec.c \.  $(TOP
4120: 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a  )\src\btree.c \.
4130: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69    $(TOP)\src\bui
4140: 6c 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ld.c \.  $(TOP)\
4150: 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20  src\ctime.c \.  
4160: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e  $(TOP)\src\date.
4170: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
4180: 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f  \expr.c \.  $(TO
4190: 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a  P)\src\func.c \.
41a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73    $(TOP)\src\ins
41b0: 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ert.c \.  $(TOP)
41c0: 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24  \src\wal.c \.  $
41d0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63  (TOP)\src\mem5.c
41e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
41f0: 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  os.c \.  $(TOP)\
4200: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a  src\os_unix.c \.
4210: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_
4220: 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  win.c \.  $(TOP)
4230: 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a 20  \src\pager.c \. 
4240: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67   $(TOP)\src\prag
4250: 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ma.c \.  $(TOP)\
4260: 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 5c 0a  src\prepare.c \.
4270: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69    $(TOP)\src\pri
4280: 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ntf.c \.  $(TOP)
4290: 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 5c 0a  \src\random.c \.
42a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61    $(TOP)\src\pca
42b0: 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  che.c \.  $(TOP)
42c0: 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 5c  \src\pcache1.c \
42d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65  .  $(TOP)\src\se
42e0: 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lect.c \.  $(TOP
42f0: 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63  )\src\tokenize.c
4300: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4310: 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  utf.c \.  $(TOP)
4320: 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20  \src\util.c \.  
4330: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61  $(TOP)\src\vdbea
4340: 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pi.c \.  $(TOP)\
4350: 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 5c 0a  src\vdbeaux.c \.
4360: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb
4370: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
4380: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20  rc\vdbemem.c \. 
4390: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe
43a0: 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sort.c \.  $(TOP
43b0: 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e  )\src\vdbetrace.
43c0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
43d0: 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20 70 61 72  \where.c \.  par
43e0: 73 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  se.c \.  $(TOP)\
43f0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20  ext\fts3\fts3.c 
4400: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4410: 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 5c  ts3\fts3_aux.c \
4420: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
4430: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 5c  s3\fts3_expr.c \
4440: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
4450: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
4460: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.c \.  $(TOP)\e
4470: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
4480: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  code.c \.  $(TOP
4490: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
44a0: 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24  unicode2.c \.  $
44b0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
44c0: 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 20  ts3_write.c \.  
44d0: 24 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63  $(TOP)\ext\async
44e0: 5c 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 0a  \sqlite3async.c.
44f0: 0a 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20  .# Header files 
4500: 75 73 65 64 20 62 79 20 61 6c 6c 20 6c 69 62 72  used by all libr
4510: 61 72 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73  ary source files
4520: 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24  ..#.HDR = \.   $
4530: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
4540: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr
4550: 63 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20  c\btreeInt.h \. 
4560: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73    $(TOP)\src\has
4570: 68 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  h.h \.   $(TOP)\
4580: 73 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20  src\hwtime.h \. 
4590: 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20    keywordhash.h 
45a0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\
45b0: 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 6f 70 63  mutex.h \.   opc
45c0: 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f  odes.h \.   $(TO
45d0: 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20  P)\src\os.h \.  
45e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63   $(TOP)\src\os_c
45f0: 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 24 28 54  ommon.h \.   $(T
4600: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20  OP)\src\pager.h 
4610: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\
4620: 70 63 61 63 68 65 2e 68 20 5c 0a 20 20 20 70 61  pcache.h \.   pa
4630: 72 73 65 2e 68 20 5c 0a 20 20 20 73 71 6c 69 74  rse.h \.   sqlit
4640: 65 33 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  e3.h \.   $(TOP)
4650: 5c 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e  \src\sqlite3ext.
4660: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr
4670: 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a  c\sqliteInt.h \.
4680: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71     $(TOP)\src\sq
4690: 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20  liteLimit.h \.  
46a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe
46b0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s
46c0: 72 63 5c 76 64 62 65 49 6e 74 2e 68 0a 0a 23 20  rc\vdbeInt.h..# 
46d0: 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65  Header files use
46e0: 64 20 62 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a  d by extensions.
46f0: 23 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  #.EXTHDR = $(EXT
4700: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c  HDR) \.  $(TOP)\
4710: 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20  ext\fts1\fts1.h 
4720: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4730: 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20  ts1\fts1_hash.h 
4740: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4750: 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a  ts1\fts1_tokeniz
4760: 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28  er.h.EXTHDR = $(
4770: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO
4780: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
4790: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
47a0: 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68  t\fts2\fts2_hash
47b0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
47c0: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65  t\fts2\fts2_toke
47d0: 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d  nizer.h.EXTHDR =
47e0: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24   $(EXTHDR) \.  $
47f0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
4800: 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts3.h \.  $(TOP)
4810: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e  \ext\fts3\fts3In
4820: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  t.h \.  $(TOP)\e
4830: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73  xt\fts3\fts3_has
4840: 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  h.h \.  $(TOP)\e
4850: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
4860: 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20  enizer.h.EXTHDR 
4870: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \.  
4880: 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65  $(TOP)\ext\rtree
4890: 5c 72 74 72 65 65 2e 68 0a 45 58 54 48 44 52 20  \rtree.h.EXTHDR 
48a0: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \.  
48b0: 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73  $(TOP)\ext\icu\s
48c0: 71 6c 69 74 65 69 63 75 2e 68 0a 45 58 54 48 44  qliteicu.h.EXTHD
48d0: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \.
48e0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72    $(TOP)\ext\rtr
48f0: 65 65 5c 73 71 6c 69 74 65 33 72 74 72 65 65 2e  ee\sqlite3rtree.
4900: 68 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65  h..# This is the
4910: 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 66 69 6c   default Makefil
4920: 65 20 74 61 72 67 65 74 2e 20 20 54 68 65 20 6f  e target.  The o
4930: 62 6a 65 63 74 73 20 6c 69 73 74 65 64 20 68 65  bjects listed he
4940: 72 65 0a 23 20 61 72 65 20 77 68 61 74 20 67 65  re.# are what ge
4950: 74 20 62 75 69 6c 64 20 77 68 65 6e 20 79 6f 75  t build when you
4960: 20 74 79 70 65 20 6a 75 73 74 20 22 6d 61 6b 65   type just "make
4970: 22 20 77 69 74 68 20 6e 6f 20 61 72 67 75 6d 65  " with no argume
4980: 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64 6c 6c 20  nts..#.all:.dll 
4990: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 73  libsqlite3.lib s
49a0: 71 6c 69 74 65 33 2e 65 78 65 20 6c 69 62 74 63  qlite3.exe libtc
49b0: 6c 73 71 6c 69 74 65 33 2e 6c 69 62 0a 0a 6c 69  lsqlite3.lib..li
49c0: 62 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 24 28  bsqlite3.lib:.$(
49d0: 4c 49 42 4f 42 4a 29 0a 09 24 28 4c 54 4c 49 42  LIBOBJ)..$(LTLIB
49e0: 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20 2f  ) $(LTLIBOPTS) /
49f0: 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29  OUT:$@ $(LIBOBJ)
4a00: 20 24 28 54 4c 49 42 53 29 0a 0a 6c 69 62 74 63   $(TLIBS)..libtc
4a10: 6c 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 74 63  lsqlite3.lib:.tc
4a20: 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 71  lsqlite.lo libsq
4a30: 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c 54 4c  lite3.lib..$(LTL
4a40: 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29  IB) $(LTLIBOPTS)
4a50: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) /
4a60: 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 74 65  OUT:$@ tclsqlite
4a70: 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  .lo libsqlite3.l
4a80: 69 62 20 24 28 4c 49 42 54 43 4c 3a 74 63 6c 3d  ib $(LIBTCL:tcl=
4a90: 74 63 6c 73 74 75 62 29 20 24 28 54 4c 49 42 53  tclstub) $(TLIBS
4aa0: 29 0a 0a 73 71 6c 69 74 65 33 2e 65 78 65 3a 09  )..sqlite3.exe:.
4ab0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c  $(TOP)\src\shell
4ac0: 2e 63 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  .c libsqlite3.li
4ad0: 62 20 73 71 6c 69 74 65 33 2e 68 0a 09 24 28 4c  b sqlite3.h..$(L
4ae0: 54 4c 49 4e 4b 29 20 24 28 52 45 41 44 4c 49 4e  TLINK) $(READLIN
4af0: 45 5f 46 4c 41 47 53 29 20 5c 0a 09 09 24 28 54  E_FLAGS) \...$(T
4b00: 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20  OP)\src\shell.c 
4b10: 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 54 4c 49  \.../link $(LTLI
4b20: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP
4b30: 41 54 48 53 29 20 6c 69 62 73 71 6c 69 74 65 33  ATHS) libsqlite3
4b40: 2e 6c 69 62 20 24 28 4c 49 42 52 45 41 44 4c 49  .lib $(LIBREADLI
4b50: 4e 45 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28  NE) $(LTLIBS) $(
4b60: 54 4c 49 42 53 29 0a 0a 23 20 54 68 69 73 20 74  TLIBS)..# This t
4b70: 61 72 67 65 74 20 63 72 65 61 74 65 73 20 61 20  arget creates a 
4b80: 64 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 64 20  directory named 
4b90: 22 74 73 72 63 22 20 61 6e 64 20 66 69 6c 6c 73  "tsrc" and fills
4ba0: 20 69 74 20 77 69 74 68 0a 23 20 63 6f 70 69 65   it with.# copie
4bb0: 73 20 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65 20  s of all of the 
4bc0: 43 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e  C source code an
4bd0: 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 6e  d header files n
4be0: 65 65 64 65 64 20 74 6f 0a 23 20 62 75 69 6c 64  eeded to.# build
4bf0: 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 73   on the target s
4c00: 79 73 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20  ystem.  Some of 
4c10: 74 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64  the C source cod
4c20: 65 20 61 6e 64 20 68 65 61 64 65 72 0a 23 20 66  e and header.# f
4c30: 69 6c 65 73 20 61 72 65 20 61 75 74 6f 6d 61 74  iles are automat
4c40: 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64  ically generated
4c50: 2e 20 20 54 68 69 73 20 74 61 72 67 65 74 20 74  .  This target t
4c60: 61 6b 65 73 20 63 61 72 65 20 6f 66 0a 23 20 61  akes care of.# a
4c70: 6c 6c 20 74 68 61 74 20 61 75 74 6f 6d 61 74 69  ll that automati
4c80: 63 20 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a  c generation..#.
4c90: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 3a 09  .target_source:.
4ca0: 24 28 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f  $(SRC) $(TOP)\to
4cb0: 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73  ol\vdbe-compress
4cc0: 2e 74 63 6c 0a 09 2d 72 6d 64 69 72 20 2f 53 2f  .tcl..-rmdir /S/
4cd0: 51 20 74 73 72 63 0a 09 2d 6d 6b 64 69 72 20 74  Q tsrc..-mkdir t
4ce0: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
4cf0: 24 28 53 52 43 29 29 20 64 6f 20 63 6f 70 79 20  $(SRC)) do copy 
4d00: 2f 59 20 25 69 20 74 73 72 63 0a 09 64 65 6c 20  /Y %i tsrc..del 
4d10: 2f 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e 68  /Q tsrc\sqlite.h
4d20: 2e 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e 79  .in tsrc\parse.y
4d30: 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  ..$(TCLSH_CMD) $
4d40: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d  (TOP)\tool\vdbe-
4d50: 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20 3c 20 74  compress.tcl < t
4d60: 73 72 63 5c 76 64 62 65 2e 63 20 3e 20 76 64 62  src\vdbe.c > vdb
4d70: 65 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64 62 65  e.new..move vdbe
4d80: 2e 6e 65 77 20 74 73 72 63 5c 76 64 62 65 2e 63  .new tsrc\vdbe.c
4d90: 0a 09 65 63 68 6f 20 3e 20 2e 74 61 72 67 65 74  ..echo > .target
4da0: 5f 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74 65 33  _source..sqlite3
4db0: 2e 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 72  .c:..target_sour
4dc0: 63 65 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  ce $(TOP)\tool\m
4dd0: 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 09 24  ksqlite3c.tcl..$
4de0: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO
4df0: 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65  P)\tool\mksqlite
4e00: 33 63 2e 74 63 6c 0a 0a 73 71 6c 69 74 65 33 2d  3c.tcl..sqlite3-
4e10: 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65 33 2e 63  all.c:.sqlite3.c
4e20: 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 73 70 6c   $(TOP)/tool/spl
4e30: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a  it-sqlite3c.tcl.
4e40: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD) $(
4e50: 54 4f 50 29 2f 74 6f 6f 6c 2f 73 70 6c 69 74 2d  TOP)/tool/split-
4e60: 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 0a 23 20  sqlite3c.tcl..# 
4e70: 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68  Rule to build th
4e80: 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23  e amalgamation.#
4e90: 0a 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 73 71 6c  .sqlite3.lo:.sql
4ea0: 69 74 65 33 2e 63 0a 09 24 28 4c 54 43 4f 4d 50  ite3.c..$(LTCOMP
4eb0: 49 4c 45 29 20 2d 63 20 73 71 6c 69 74 65 33 2e  ILE) -c sqlite3.
4ec0: 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75  c..# Rules to bu
4ed0: 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e 20 63 6f  ild the LEMON co
4ee0: 6d 70 69 6c 65 72 20 67 65 6e 65 72 61 74 6f 72  mpiler generator
4ef0: 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09 24 28 54  .#.lempar.c:.$(T
4f00: 4f 50 29 5c 73 72 63 5c 6c 65 6d 70 61 72 2e 63  OP)\src\lempar.c
4f10: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 72  ..copy $(TOP)\sr
4f20: 63 5c 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a 6c 65  c\lempar.c ...le
4f30: 6d 6f 6e 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  mon.exe:.$(TOP)\
4f40: 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c 65 6d  tool\lemon.c lem
4f50: 70 61 72 2e 63 0a 09 24 28 42 43 43 29 20 2d 44  par.c..$(BCC) -D
4f60: 61 63 63 65 73 73 3d 5f 61 63 63 65 73 73 20 2d  access=_access -
4f70: 46 65 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  Fe$@ $(TOP)\tool
4f80: 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20 24  \lemon.c /link $
4f90: 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 23  (NLTLIBPATHS)..#
4fa0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build 
4fb0: 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20  individual *.lo 
4fc0: 66 69 6c 65 73 20 66 72 6f 6d 20 67 65 6e 65 72  files from gener
4fd0: 61 74 65 64 20 2a 2e 63 20 66 69 6c 65 73 2e 20  ated *.c files. 
4fe0: 54 68 69 73 0a 23 20 61 70 70 6c 69 65 73 20 74  This.# applies t
4ff0: 6f 3a 0a 23 0a 23 20 20 20 20 20 70 61 72 73 65  o:.#.#     parse
5000: 2e 6c 6f 0a 23 20 20 20 20 20 6f 70 63 6f 64 65  .lo.#     opcode
5010: 73 2e 6c 6f 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a  s.lo.#.parse.lo:
5020: 09 70 61 72 73 65 2e 63 20 24 28 48 44 52 29 0a  .parse.c $(HDR).
5030: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5040: 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65   parse.c..opcode
5050: 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a  s.lo:.opcodes.c.
5060: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5070: 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 23 20 52 75   opcodes.c..# Ru
5080: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64  les to build ind
5090: 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c  ividual *.lo fil
50a0: 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 20 69 6e  es from files in
50b0: 20 74 68 65 20 73 72 63 20 64 69 72 65 63 74 6f   the src directo
50c0: 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a 09  ry..#.alter.lo:.
50d0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72  $(TOP)\src\alter
50e0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
50f0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5100: 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 0a 0a 61  )\src\alter.c..a
5110: 6e 61 6c 79 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50  nalyze.lo:.$(TOP
5120: 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 20  )\src\analyze.c 
5130: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5140: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5150: 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74  rc\analyze.c..at
5160: 74 61 63 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  tach.lo:.$(TOP)\
5170: 73 72 63 5c 61 74 74 61 63 68 2e 63 20 24 28 48  src\attach.c $(H
5180: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5190: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
51a0: 61 74 74 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c  attach.c..auth.l
51b0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 75  o:.$(TOP)\src\au
51c0: 74 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  th.c $(HDR)..$(L
51d0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
51e0: 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e 63 0a 0a  OP)\src\auth.c..
51f0: 62 61 63 6b 75 70 2e 6c 6f 3a 09 24 28 54 4f 50  backup.lo:.$(TOP
5200: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 24  )\src\backup.c $
5210: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
5220: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
5230: 63 5c 62 61 63 6b 75 70 2e 63 0a 0a 62 69 74 76  c\backup.c..bitv
5240: 65 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ec.lo:.$(TOP)\sr
5250: 63 5c 62 69 74 76 65 63 2e 63 20 24 28 48 44 52  c\bitvec.c $(HDR
5260: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
5270: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  -c $(TOP)\src\bi
5280: 74 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 2e  tvec.c..btmutex.
5290: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62  lo:.$(TOP)\src\b
52a0: 74 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a  tmutex.c $(HDR).
52b0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
52c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75   $(TOP)\src\btmu
52d0: 74 65 78 2e 63 0a 0a 62 74 72 65 65 2e 6c 6f 3a  tex.c..btree.lo:
52e0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65  .$(TOP)\src\btre
52f0: 65 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f 50  e.c $(HDR) $(TOP
5300: 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09 24  )\src\pager.h..$
5310: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5320: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
5330: 63 0a 0a 62 75 69 6c 64 2e 6c 6f 3a 09 24 28 54  c..build.lo:.$(T
5340: 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20  OP)\src\build.c 
5350: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5360: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5370: 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c  rc\build.c..call
5380: 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  back.lo:.$(TOP)\
5390: 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24  src\callback.c $
53a0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
53b0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
53c0: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f  c\callback.c..co
53d0: 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50  mplete.lo:.$(TOP
53e0: 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63  )\src\complete.c
53f0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5400: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5410: 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 0a 0a  src\complete.c..
5420: 63 74 69 6d 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  ctime.lo:.$(TOP)
5430: 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 24 28 48  \src\ctime.c $(H
5440: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5450: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
5460: 63 74 69 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f  ctime.c..date.lo
5470: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74  :.$(TOP)\src\dat
5480: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
5490: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
54a0: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a 0a 64  P)\src\date.c..d
54b0: 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  elete.lo:.$(TOP)
54c0: 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 24 28  \src\delete.c $(
54d0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
54e0: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
54f0: 5c 64 65 6c 65 74 65 2e 63 0a 0a 65 78 70 72 2e  \delete.c..expr.
5500: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 65  lo:.$(TOP)\src\e
5510: 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  xpr.c $(HDR)..$(
5520: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5530: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a  TOP)\src\expr.c.
5540: 0a 66 61 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50  .fault.lo:.$(TOP
5550: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 20 24 28  )\src\fault.c $(
5560: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5570: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5580: 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c  \fault.c..fkey.l
5590: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b  o:.$(TOP)\src\fk
55a0: 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ey.c $(HDR)..$(L
55b0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
55c0: 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 0a 0a  OP)\src\fkey.c..
55d0: 66 75 6e 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  func.lo:.$(TOP)\
55e0: 73 72 63 5c 66 75 6e 63 2e 63 20 24 28 48 44 52  src\func.c $(HDR
55f0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
5600: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75  -c $(TOP)\src\fu
5610: 6e 63 2e 63 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a  nc.c..global.lo:
5620: 09 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62  .$(TOP)\src\glob
5630: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5640: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5650: 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63  OP)\src\global.c
5660: 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50  ..hash.lo:.$(TOP
5670: 29 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28 48  )\src\hash.c $(H
5680: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5690: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
56a0: 68 61 73 68 2e 63 0a 0a 69 6e 73 65 72 74 2e 6c  hash.c..insert.l
56b0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e  o:.$(TOP)\src\in
56c0: 73 65 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24  sert.c $(HDR)..$
56d0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
56e0: 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74  (TOP)\src\insert
56f0: 2e 63 0a 0a 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09  .c..journal.lo:.
5700: 24 28 54 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e  $(TOP)\src\journ
5710: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5720: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5730: 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e  OP)\src\journal.
5740: 63 0a 0a 6c 65 67 61 63 79 2e 6c 6f 3a 09 24 28  c..legacy.lo:.$(
5750: 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e  TOP)\src\legacy.
5760: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
5770: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
5780: 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c  \src\legacy.c..l
5790: 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50  oadext.lo:.$(TOP
57a0: 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20  )\src\loadext.c 
57b0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
57c0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
57d0: 72 63 5c 6c 6f 61 64 65 78 74 2e 63 0a 0a 6d 61  rc\loadext.c..ma
57e0: 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  in.lo:.$(TOP)\sr
57f0: 63 5c 6d 61 69 6e 2e 63 20 24 28 48 44 52 29 0a  c\main.c $(HDR).
5800: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5810: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e   $(TOP)\src\main
5820: 2e 63 0a 0a 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24  .c..malloc.lo:.$
5830: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63  (TOP)\src\malloc
5840: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5850: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5860: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a  )\src\malloc.c..
5870: 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  mem0.lo:.$(TOP)\
5880: 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52  src\mem0.c $(HDR
5890: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
58a0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  -c $(TOP)\src\me
58b0: 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f 3a 09 24  m0.c..mem1.lo:.$
58c0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63  (TOP)\src\mem1.c
58d0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
58e0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
58f0: 73 72 63 5c 6d 65 6d 31 2e 63 0a 0a 6d 65 6d 32  src\mem1.c..mem2
5900: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
5910: 6d 65 6d 32 2e 63 20 24 28 48 44 52 29 0a 09 24  mem2.c $(HDR)..$
5920: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5930: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63  (TOP)\src\mem2.c
5940: 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50  ..mem3.lo:.$(TOP
5950: 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48  )\src\mem3.c $(H
5960: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5970: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
5980: 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c 6f 3a  mem3.c..mem5.lo:
5990: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35  .$(TOP)\src\mem5
59a0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
59b0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
59c0: 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 0a 0a 6d 65  )\src\mem5.c..me
59d0: 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54  mjournal.lo:.$(T
59e0: 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e  OP)\src\memjourn
59f0: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5a00: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5a10: 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e  OP)\src\memjourn
5a20: 61 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09  al.c..mutex.lo:.
5a30: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex
5a40: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5a50: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5a60: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 0a 0a 6d  )\src\mutex.c..m
5a70: 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24 28  utex_noop.lo:.$(
5a80: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e  TOP)\src\mutex_n
5a90: 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28  oop.c $(HDR)..$(
5aa0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5ab0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e  TOP)\src\mutex_n
5ac0: 6f 6f 70 2e 63 0a 0a 6d 75 74 65 78 5f 75 6e 69  oop.c..mutex_uni
5ad0: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  x.lo:.$(TOP)\src
5ae0: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 20 24 28  \mutex_unix.c $(
5af0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5b00: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5b10: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d  \mutex_unix.c..m
5b20: 75 74 65 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54  utex_w32.lo:.$(T
5b30: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33  OP)\src\mutex_w3
5b40: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  2.c $(HDR)..$(LT
5b50: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5b60: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32  P)\src\mutex_w32
5b70: 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24  .c..notify.lo:.$
5b80: 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79  (TOP)\src\notify
5b90: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5ba0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5bb0: 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63 0a 0a  )\src\notify.c..
5bc0: 70 61 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  pager.lo:.$(TOP)
5bd0: 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 24 28 48  \src\pager.c $(H
5be0: 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  DR) $(TOP)\src\p
5bf0: 61 67 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50  ager.h..$(LTCOMP
5c00: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5c10: 72 63 5c 70 61 67 65 72 2e 63 0a 0a 70 63 61 63  rc\pager.c..pcac
5c20: 68 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  he.lo:.$(TOP)\sr
5c30: 63 5c 70 63 61 63 68 65 2e 63 20 24 28 48 44 52  c\pcache.c $(HDR
5c40: 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61  ) $(TOP)\src\pca
5c50: 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49  che.h..$(LTCOMPI
5c60: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
5c70: 63 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63 61 63  c\pcache.c..pcac
5c80: 68 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  he1.lo:.$(TOP)\s
5c90: 72 63 5c 70 63 61 63 68 65 31 2e 63 20 24 28 48  rc\pcache1.c $(H
5ca0: 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  DR) $(TOP)\src\p
5cb0: 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d  cache.h..$(LTCOM
5cc0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5cd0: 73 72 63 5c 70 63 61 63 68 65 31 2e 63 0a 0a 6f  src\pcache1.c..o
5ce0: 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  s.lo:.$(TOP)\src
5cf0: 5c 6f 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28  \os.c $(HDR)..$(
5d00: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5d10: 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f  TOP)\src\os.c..o
5d20: 73 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50  s_unix.lo:.$(TOP
5d30: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20  )\src\os_unix.c 
5d40: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5d50: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5d60: 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73  rc\os_unix.c..os
5d70: 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  _win.lo:.$(TOP)\
5d80: 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28 48  src\os_win.c $(H
5d90: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5da0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
5db0: 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61 67 6d 61  os_win.c..pragma
5dc0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
5dd0: 70 72 61 67 6d 61 2e 63 20 24 28 48 44 52 29 0a  pragma.c $(HDR).
5de0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5df0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67   $(TOP)\src\prag
5e00: 6d 61 2e 63 0a 0a 70 72 65 70 61 72 65 2e 6c 6f  ma.c..prepare.lo
5e10: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65  :.$(TOP)\src\pre
5e20: 70 61 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24  pare.c $(HDR)..$
5e30: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5e40: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
5e50: 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09  e.c..printf.lo:.
5e60: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74  $(TOP)\src\print
5e70: 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  f.c $(HDR)..$(LT
5e80: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5e90: 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 0a  P)\src\printf.c.
5ea0: 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24 28 54 4f  .random.lo:.$(TO
5eb0: 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20  P)\src\random.c 
5ec0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5ed0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5ee0: 72 63 5c 72 61 6e 64 6f 6d 2e 63 0a 0a 72 65 73  rc\random.c..res
5ef0: 6f 6c 76 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  olve.lo:.$(TOP)\
5f00: 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 24 28  src\resolve.c $(
5f10: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5f20: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5f30: 5c 72 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73  \resolve.c..rows
5f40: 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  et.lo:.$(TOP)\sr
5f50: 63 5c 72 6f 77 73 65 74 2e 63 20 24 28 48 44 52  c\rowset.c $(HDR
5f60: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
5f70: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  -c $(TOP)\src\ro
5f80: 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63 74 2e 6c  wset.c..select.l
5f90: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 65  o:.$(TOP)\src\se
5fa0: 6c 65 63 74 2e 63 20 24 28 48 44 52 29 0a 09 24  lect.c $(HDR)..$
5fb0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5fc0: 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74  (TOP)\src\select
5fd0: 2e 63 0a 0a 73 74 61 74 75 73 2e 6c 6f 3a 09 24  .c..status.lo:.$
5fe0: 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75 73  (TOP)\src\status
5ff0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
6000: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
6010: 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a  )\src\status.c..
6020: 74 61 62 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  table.lo:.$(TOP)
6030: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 24 28 48  \src\table.c $(H
6040: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6050: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
6060: 74 61 62 6c 65 2e 63 0a 0a 74 6f 6b 65 6e 69 7a  table.c..tokeniz
6070: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src
6080: 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20 6b 65 79 77  \tokenize.c keyw
6090: 6f 72 64 68 61 73 68 2e 68 20 24 28 48 44 52 29  ordhash.h $(HDR)
60a0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
60b0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b  c $(TOP)\src\tok
60c0: 65 6e 69 7a 65 2e 63 0a 0a 74 72 69 67 67 65 72  enize.c..trigger
60d0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
60e0: 74 72 69 67 67 65 72 2e 63 20 24 28 48 44 52 29  trigger.c $(HDR)
60f0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6100: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 69  c $(TOP)\src\tri
6110: 67 67 65 72 2e 63 0a 0a 75 70 64 61 74 65 2e 6c  gger.c..update.l
6120: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 70  o:.$(TOP)\src\up
6130: 64 61 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24  date.c $(HDR)..$
6140: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
6150: 28 54 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65  (TOP)\src\update
6160: 2e 63 0a 0a 75 74 66 2e 6c 6f 3a 09 24 28 54 4f  .c..utf.lo:.$(TO
6170: 50 29 5c 73 72 63 5c 75 74 66 2e 63 20 24 28 48  P)\src\utf.c $(H
6180: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6190: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
61a0: 75 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a 09  utf.c..util.lo:.
61b0: 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e  $(TOP)\src\util.
61c0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
61d0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
61e0: 5c 73 72 63 5c 75 74 69 6c 2e 63 0a 0a 76 61 63  \src\util.c..vac
61f0: 75 75 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  uum.lo:.$(TOP)\s
6200: 72 63 5c 76 61 63 75 75 6d 2e 63 20 24 28 48 44  rc\vacuum.c $(HD
6210: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6220: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76   -c $(TOP)\src\v
6230: 61 63 75 75 6d 2e 63 0a 0a 76 64 62 65 2e 6c 6f  acuum.c..vdbe.lo
6240: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  :.$(TOP)\src\vdb
6250: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
6260: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
6270: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76  P)\src\vdbe.c..v
6280: 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50  dbeapi.lo:.$(TOP
6290: 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20  )\src\vdbeapi.c 
62a0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
62b0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
62c0: 72 63 5c 76 64 62 65 61 70 69 2e 63 0a 0a 76 64  rc\vdbeapi.c..vd
62d0: 62 65 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50 29  beaux.lo:.$(TOP)
62e0: 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 24  \src\vdbeaux.c $
62f0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6300: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
6310: 63 5c 76 64 62 65 61 75 78 2e 63 0a 0a 76 64 62  c\vdbeaux.c..vdb
6320: 65 62 6c 6f 62 2e 6c 6f 3a 09 24 28 54 4f 50 29  eblob.lo:.$(TOP)
6330: 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20  \src\vdbeblob.c 
6340: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
6350: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
6360: 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76  rc\vdbeblob.c..v
6370: 64 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50  dbemem.lo:.$(TOP
6380: 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20  )\src\vdbemem.c 
6390: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
63a0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
63b0: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a 76 64  rc\vdbemem.c..vd
63c0: 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54 4f 50  besort.lo:.$(TOP
63d0: 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63  )\src\vdbesort.c
63e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
63f0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
6400: 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 0a 0a  src\vdbesort.c..
6410: 76 64 62 65 74 72 61 63 65 2e 6c 6f 3a 09 24 28  vdbetrace.lo:.$(
6420: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61  TOP)\src\vdbetra
6430: 63 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ce.c $(HDR)..$(L
6440: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
6450: 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63  OP)\src\vdbetrac
6460: 65 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24 28  e.c..vtab.lo:.$(
6470: 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20  TOP)\src\vtab.c 
6480: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
6490: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
64a0: 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c 2e 6c  rc\vtab.c..wal.l
64b0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61  o:.$(TOP)\src\wa
64c0: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  l.c $(HDR)..$(LT
64d0: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
64e0: 50 29 5c 73 72 63 5c 77 61 6c 2e 63 0a 0a 77 61  P)\src\wal.c..wa
64f0: 6c 6b 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  lker.lo:.$(TOP)\
6500: 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 24 28 48  src\walker.c $(H
6510: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6520: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
6530: 77 61 6c 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e  walker.c..where.
6540: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w
6550: 68 65 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24  here.c $(HDR)..$
6560: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
6570: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e  (TOP)\src\where.
6580: 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 3a  c..tclsqlite.lo:
6590: 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73  .$(TOP)\src\tcls
65a0: 71 6c 69 74 65 2e 63 20 24 28 48 44 52 29 0a 09  qlite.c $(HDR)..
65b0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 55  $(LTCOMPILE) -DU
65c0: 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d  SE_TCL_STUBS=1 -
65d0: 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49  DBUILD_sqlite -I
65e0: 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 20  $(TCLINCDIR) -c 
65f0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71  $(TOP)\src\tclsq
6600: 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74  lite.c..tclsqlit
6610: 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54 4f  e-shell.lo:.$(TO
6620: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
6630: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
6640: 4f 4d 50 49 4c 45 29 20 2d 44 54 43 4c 53 48 3d  OMPILE) -DTCLSH=
6650: 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65  1 -DBUILD_sqlite
6660: 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20   -I$(TCLINCDIR) 
6670: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63  -c $(TOP)\src\tc
6680: 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71  lsqlite.c..tclsq
6690: 6c 69 74 65 33 2e 65 78 65 3a 09 74 63 6c 73 71  lite3.exe:.tclsq
66a0: 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 6c 69  lite-shell.lo li
66b0: 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28  bsqlite3.lib..$(
66c0: 4c 54 4c 49 4e 4b 29 20 74 63 6c 73 71 6c 69 74  LTLINK) tclsqlit
66d0: 65 2d 73 68 65 6c 6c 2e 6c 6f 20 5c 0a 09 09 2f  e-shell.lo \.../
66e0: 6c 69 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  link $(LTLINKOPT
66f0: 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29  S) $(LTLIBPATHS)
6700: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20   libsqlite3.lib 
6710: 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42  $(LTLIBS) $(TLIB
6720: 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62  S)..# Rules to b
6730: 75 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63 20 61  uild opcodes.c a
6740: 6e 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23 0a 6f  nd opcodes.h.#.o
6750: 70 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f 64 65  pcodes.c:.opcode
6760: 73 2e 68 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63  s.h $(TOP)\mkopc
6770: 6f 64 65 63 2e 61 77 6b 0a 09 24 28 4e 41 57 4b  odec.awk..$(NAWK
6780: 29 20 2d 66 20 24 28 54 4f 50 29 5c 6d 6b 6f 70  ) -f $(TOP)\mkop
6790: 63 6f 64 65 63 2e 61 77 6b 20 6f 70 63 6f 64 65  codec.awk opcode
67a0: 73 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63 0a  s.h > opcodes.c.
67b0: 0a 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61 72 73  .opcodes.h:.pars
67c0: 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76  e.h $(TOP)\src\v
67d0: 64 62 65 2e 63 20 24 28 54 4f 50 29 5c 6d 6b 6f  dbe.c $(TOP)\mko
67e0: 70 63 6f 64 65 68 2e 61 77 6b 0a 09 74 79 70 65  pcodeh.awk..type
67f0: 20 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 5c   parse.h $(TOP)\
6800: 73 72 63 5c 76 64 62 65 2e 63 20 7c 20 24 28 4e  src\vdbe.c | $(N
6810: 41 57 4b 29 20 2d 66 20 24 28 54 4f 50 29 5c 6d  AWK) -f $(TOP)\m
6820: 6b 6f 70 63 6f 64 65 68 2e 61 77 6b 20 3e 20 6f  kopcodeh.awk > o
6830: 70 63 6f 64 65 73 2e 68 0a 0a 23 20 52 75 6c 65  pcodes.h..# Rule
6840: 73 20 74 6f 20 62 75 69 6c 64 20 70 61 72 73 65  s to build parse
6850: 2e 63 20 61 6e 64 20 70 61 72 73 65 2e 68 20 2d  .c and parse.h -
6860: 20 74 68 65 20 6f 75 74 70 75 74 73 20 6f 66 20   the outputs of 
6870: 6c 65 6d 6f 6e 2e 0a 23 0a 70 61 72 73 65 2e 68  lemon..#.parse.h
6880: 3a 09 70 61 72 73 65 2e 63 0a 0a 70 61 72 73 65  :.parse.c..parse
6890: 2e 63 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70  .c:.$(TOP)\src\p
68a0: 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65  arse.y lemon.exe
68b0: 20 24 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f 64   $(TOP)\addopcod
68c0: 65 73 2e 61 77 6b 0a 09 64 65 6c 20 2f 51 20 70  es.awk..del /Q p
68d0: 61 72 73 65 2e 79 20 70 61 72 73 65 2e 68 20 70  arse.y parse.h p
68e0: 61 72 73 65 2e 68 2e 74 65 6d 70 0a 09 63 6f 70  arse.h.temp..cop
68f0: 79 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72  y $(TOP)\src\par
6900: 73 65 2e 79 20 2e 0a 09 2e 5c 6c 65 6d 6f 6e 2e  se.y ....\lemon.
6910: 65 78 65 20 24 28 4f 50 54 5f 46 45 41 54 55 52  exe $(OPT_FEATUR
6920: 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29  E_FLAGS) $(OPTS)
6930: 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20 70   parse.y..move p
6940: 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74  arse.h parse.h.t
6950: 65 6d 70 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20  emp..$(NAWK) -f 
6960: 24 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f 64 65  $(TOP)\addopcode
6970: 73 2e 61 77 6b 20 70 61 72 73 65 2e 68 2e 74 65  s.awk parse.h.te
6980: 6d 70 20 3e 20 70 61 72 73 65 2e 68 0a 0a 73 71  mp > parse.h..sq
6990: 6c 69 74 65 33 2e 68 3a 09 24 28 54 4f 50 29 5c  lite3.h:.$(TOP)\
69a0: 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e 20  src\sqlite.h.in 
69b0: 24 28 54 4f 50 29 5c 6d 61 6e 69 66 65 73 74 2e  $(TOP)\manifest.
69c0: 75 75 69 64 20 24 28 54 4f 50 29 5c 56 45 52 53  uuid $(TOP)\VERS
69d0: 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44  ION..$(TCLSH_CMD
69e0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b  ) $(TOP)\tool\mk
69f0: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 24 28 54  sqlite3h.tcl $(T
6a00: 4f 50 29 20 3e 20 73 71 6c 69 74 65 33 2e 68 0a  OP) > sqlite3.h.
6a10: 0a 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65  .mkkeywordhash.e
6a20: 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  xe:.$(TOP)\tool\
6a30: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 0a  mkkeywordhash.c.
6a40: 09 24 28 42 43 43 29 20 2d 46 65 24 40 20 24 28  .$(BCC) -Fe$@ $(
6a50: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
6a60: 53 29 20 24 28 4f 50 54 53 29 20 24 28 54 4f 50  S) $(OPTS) $(TOP
6a70: 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64  )\tool\mkkeyword
6a80: 68 61 73 68 2e 63 20 2f 6c 69 6e 6b 20 24 28 4e  hash.c /link $(N
6a90: 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 6b 65 79  LTLIBPATHS)..key
6aa0: 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 28 54 4f  wordhash.h:.$(TO
6ab0: 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72  P)\tool\mkkeywor
6ac0: 64 68 61 73 68 2e 63 20 6d 6b 6b 65 79 77 6f 72  dhash.c mkkeywor
6ad0: 64 68 61 73 68 2e 65 78 65 0a 09 2e 5c 6d 6b 6b  dhash.exe...\mkk
6ae0: 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 20 3e  eywordhash.exe >
6af0: 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 0a 0a   keywordhash.h..
6b00: 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69  ..# Rules to bui
6b10: 6c 64 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e  ld the extension
6b20: 20 6f 62 6a 65 63 74 73 2e 0a 23 0a 69 63 75 2e   objects..#.icu.
6b30: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 69  lo:.$(TOP)\ext\i
6b40: 63 75 5c 69 63 75 2e 63 20 24 28 48 44 52 29 20  cu\icu.c $(HDR) 
6b50: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
6b60: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45  OMPILE) -DSQLITE
6b70: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
6b80: 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 0a 0a 66  ext\icu\icu.c..f
6b90: 74 73 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ts2.lo:.$(TOP)\e
6ba0: 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 24  xt\fts2\fts2.c $
6bb0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR).
6bc0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44  .$(LTCOMPILE) -D
6bd0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $
6be0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
6bf0: 74 73 32 2e 63 0a 0a 66 74 73 32 5f 68 61 73 68  ts2.c..fts2_hash
6c00: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
6c10: 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63  fts2\fts2_hash.c
6c20: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR) $(EXTHDR
6c30: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
6c40: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
6c50: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
6c60: 5c 66 74 73 32 5f 68 61 73 68 2e 63 0a 0a 66 74  \fts2_hash.c..ft
6c70: 73 32 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 4f 50  s2_icu.lo:.$(TOP
6c80: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
6c90: 69 63 75 2e 63 20 24 28 48 44 52 29 20 24 28 45  icu.c $(HDR) $(E
6ca0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP
6cb0: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ILE) -DSQLITE_CO
6cc0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext
6cd0: 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63  \fts2\fts2_icu.c
6ce0: 0a 0a 66 74 73 32 5f 70 6f 72 74 65 72 2e 6c 6f  ..fts2_porter.lo
6cf0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts
6d00: 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20  2\fts2_porter.c 
6d10: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR) $(EXTHDR)
6d20: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6d30: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c 
6d40: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
6d50: 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 0a 0a 66  fts2_porter.c..f
6d60: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f  ts2_tokenizer.lo
6d70: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts
6d80: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
6d90: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
6da0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6db0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
6dc0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft
6dd0: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65  s2\fts2_tokenize
6de0: 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 6e 69  r.c..fts2_tokeni
6df0: 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  zer1.lo:.$(TOP)\
6e00: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f  ext\fts2\fts2_to
6e10: 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48 44 52  kenizer1.c $(HDR
6e20: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
6e30: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
6e40: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP
6e50: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
6e60: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 66 74  tokenizer1.c..ft
6e70: 73 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  s3.lo:.$(TOP)\ex
6e80: 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 24 28  t\fts3\fts3.c $(
6e90: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR)..
6ea0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53  $(LTCOMPILE) -DS
6eb0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $(
6ec0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
6ed0: 73 33 2e 63 0a 0a 66 74 73 33 5f 61 75 78 2e 6c  s3.c..fts3_aux.l
6ee0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft
6ef0: 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 24 28  s3\fts3_aux.c $(
6f00: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR)..
6f10: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53  $(LTCOMPILE) -DS
6f20: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $(
6f30: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
6f40: 73 33 5f 61 75 78 2e 63 0a 0a 66 74 73 33 5f 65  s3_aux.c..fts3_e
6f50: 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  xpr.lo:.$(TOP)\e
6f60: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70  xt\fts3\fts3_exp
6f70: 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  r.c $(HDR) $(EXT
6f80: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
6f90: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  E) -DSQLITE_CORE
6fa0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f
6fb0: 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 0a  ts3\fts3_expr.c.
6fc0: 0a 66 74 73 33 5f 68 61 73 68 2e 6c 6f 3a 09 24  .fts3_hash.lo:.$
6fd0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
6fe0: 74 73 33 5f 68 61 73 68 2e 63 20 24 28 48 44 52  ts3_hash.c $(HDR
6ff0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
7000: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
7010: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP
7020: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
7030: 68 61 73 68 2e 63 0a 0a 66 74 73 33 5f 69 63 75  hash.c..fts3_icu
7040: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
7050: 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63 20  fts3\fts3_icu.c 
7060: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR) $(EXTHDR)
7070: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
7080: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c 
7090: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
70a0: 66 74 73 33 5f 69 63 75 2e 63 0a 0a 66 74 73 33  fts3_icu.c..fts3
70b0: 5f 73 6e 69 70 70 65 74 2e 6c 6f 3a 09 24 28 54  _snippet.lo:.$(T
70c0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
70d0: 33 5f 73 6e 69 70 70 65 74 2e 63 20 24 28 48 44  3_snippet.c $(HD
70e0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
70f0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c  LTCOMPILE) -DSQL
7100: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO
7110: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7120: 5f 73 6e 69 70 70 65 74 2e 63 0a 0a 66 74 73 33  _snippet.c..fts3
7130: 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f  _porter.lo:.$(TO
7140: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7150: 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29  _porter.c $(HDR)
7160: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
7170: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
7180: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
7190: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70  \ext\fts3\fts3_p
71a0: 6f 72 74 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f  orter.c..fts3_to
71b0: 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f  kenizer.lo:.$(TO
71c0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
71d0: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48  _tokenizer.c $(H
71e0: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
71f0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
7200: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
7210: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
7220: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66  3_tokenizer.c..f
7230: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c  ts3_tokenizer1.l
7240: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft
7250: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
7260: 72 31 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  r1.c $(HDR) $(EX
7270: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI
7280: 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  LE) -DSQLITE_COR
7290: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\
72a0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
72b0: 7a 65 72 31 2e 63 0a 0a 66 74 73 33 5f 75 6e 69  zer1.c..fts3_uni
72c0: 63 6f 64 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  code.lo:.$(TOP)\
72d0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e  ext\fts3\fts3_un
72e0: 69 63 6f 64 65 2e 63 20 24 28 48 44 52 29 20 24  icode.c $(HDR) $
72f0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO
7300: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
7310: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e
7320: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
7330: 63 6f 64 65 2e 63 0a 0a 66 74 73 33 5f 75 6e 69  code.c..fts3_uni
7340: 63 6f 64 65 32 2e 6c 6f 3a 09 24 28 54 4f 50 29  code2.lo:.$(TOP)
7350: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75  \ext\fts3\fts3_u
7360: 6e 69 63 6f 64 65 32 2e 63 20 24 28 48 44 52 29  nicode2.c $(HDR)
7370: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
7380: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
7390: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
73a0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75  \ext\fts3\fts3_u
73b0: 6e 69 63 6f 64 65 32 2e 63 0a 0a 66 74 73 33 5f  nicode2.c..fts3_
73c0: 77 72 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  write.lo:.$(TOP)
73d0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77  \ext\fts3\fts3_w
73e0: 72 69 74 65 2e 63 20 24 28 48 44 52 29 20 24 28  rite.c $(HDR) $(
73f0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
7400: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43  PILE) -DSQLITE_C
7410: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
7420: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74  t\fts3\fts3_writ
7430: 65 2e 63 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24  e.c..rtree.lo:.$
7440: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c  (TOP)\ext\rtree\
7450: 72 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24  rtree.c $(HDR) $
7460: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO
7470: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
7480: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e
7490: 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63  xt\rtree\rtree.c
74a0: 0a 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75  ...# Rules to bu
74b0: 69 6c 64 20 74 68 65 20 27 74 65 73 74 66 69 78  ild the 'testfix
74c0: 74 75 72 65 27 20 61 70 70 6c 69 63 61 74 69 6f  ture' applicatio
74d0: 6e 2e 0a 23 0a 23 20 49 66 20 75 73 69 6e 67 20  n..#.# If using 
74e0: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  the amalgamation
74f0: 2c 20 75 73 65 20 73 71 6c 69 74 65 33 2e 63 20  , use sqlite3.c 
7500: 64 69 72 65 63 74 6c 79 20 74 6f 20 62 75 69 6c  directly to buil
7510: 64 20 74 68 65 20 74 65 73 74 0a 23 20 66 69 78  d the test.# fix
7520: 74 75 72 65 2e 20 20 4f 74 68 65 72 77 69 73 65  ture.  Otherwise
7530: 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 6c 69   link against li
7540: 62 73 71 6c 69 74 65 33 2e 6c 69 62 2e 20 20 28  bsqlite3.lib.  (
7550: 54 68 69 73 20 64 69 73 74 69 6e 63 74 69 6f 6e  This distinction
7560: 20 69 73 0a 23 20 6e 65 63 65 73 73 61 72 79 20   is.# necessary 
7570: 62 65 63 61 75 73 65 20 74 68 65 20 74 65 73 74  because the test
7580: 20 66 69 78 74 75 72 65 20 72 65 71 75 69 72 65   fixture require
7590: 73 20 6e 6f 6e 2d 41 50 49 20 73 79 6d 62 6f 6c  s non-API symbol
75a0: 73 20 77 68 69 63 68 20 61 72 65 0a 23 20 68 69  s which are.# hi
75b0: 64 64 65 6e 20 77 68 65 6e 20 74 68 65 20 6c 69  dden when the li
75c0: 62 72 61 72 79 20 69 73 20 62 75 69 6c 74 20 76  brary is built v
75d0: 69 61 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74  ia the amalgamat
75e0: 69 6f 6e 29 2e 0a 23 0a 54 45 53 54 46 49 58 54  ion)..#.TESTFIXT
75f0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 2d 44 54 43  URE_FLAGS = -DTC
7600: 4c 53 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54  LSH=1 -DSQLITE_T
7610: 45 53 54 3d 31 20 2d 44 53 51 4c 49 54 45 5f 43  EST=1 -DSQLITE_C
7620: 52 41 53 48 5f 54 45 53 54 3d 31 0a 54 45 53 54  RASH_TEST=1.TEST
7630: 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20  FIXTURE_FLAGS = 
7640: 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c  $(TESTFIXTURE_FL
7650: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 45  AGS) -DSQLITE_SE
7660: 52 56 45 52 3d 31 20 2d 44 53 51 4c 49 54 45 5f  RVER=1 -DSQLITE_
7670: 50 52 49 56 41 54 45 3d 22 22 20 2d 44 53 51 4c  PRIVATE="" -DSQL
7680: 49 54 45 5f 43 4f 52 45 0a 0a 54 45 53 54 46 49  ITE_CORE..TESTFI
7690: 58 54 55 52 45 5f 53 52 43 30 20 3d 20 24 28 54  XTURE_SRC0 = $(T
76a0: 45 53 54 53 52 43 32 29 20 6c 69 62 73 71 6c 69  ESTSRC2) libsqli
76b0: 74 65 33 2e 6c 69 62 0a 54 45 53 54 46 49 58 54  te3.lib.TESTFIXT
76c0: 55 52 45 5f 53 52 43 31 20 3d 20 73 71 6c 69 74  URE_SRC1 = sqlit
76d0: 65 33 2e 63 0a 21 49 46 20 24 28 55 53 45 5f 41  e3.c.!IF $(USE_A
76e0: 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a  MALGAMATION)==0.
76f0: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 20  TESTFIXTURE_SRC 
7700: 3d 20 24 28 54 45 53 54 53 52 43 29 20 24 28 54  = $(TESTSRC) $(T
7710: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
7720: 65 2e 63 20 24 28 54 45 53 54 46 49 58 54 55 52  e.c $(TESTFIXTUR
7730: 45 5f 53 52 43 30 29 0a 21 45 4c 53 45 0a 54 45  E_SRC0).!ELSE.TE
7740: 53 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d 20  STFIXTURE_SRC = 
7750: 24 28 54 45 53 54 53 52 43 29 20 24 28 54 4f 50  $(TESTSRC) $(TOP
7760: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
7770: 63 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  c $(TESTFIXTURE_
7780: 53 52 43 31 29 0a 21 45 4e 44 49 46 0a 0a 74 65  SRC1).!ENDIF..te
7790: 73 74 66 69 78 74 75 72 65 2e 65 78 65 3a 09 24  stfixture.exe:.$
77a0: 28 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43  (TESTFIXTURE_SRC
77b0: 29 20 24 28 48 44 52 29 0a 09 24 28 4c 54 4c 49  ) $(HDR)..$(LTLI
77c0: 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f 4e 4f 5f  NK) -DSQLITE_NO_
77d0: 53 59 4e 43 3d 31 20 24 28 54 45 53 54 46 49 58  SYNC=1 $(TESTFIX
77e0: 54 55 52 45 5f 46 4c 41 47 53 29 20 5c 0a 09 09  TURE_FLAGS) \...
77f0: 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d  -DBUILD_sqlite -
7800: 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 5c 0a  I$(TCLINCDIR) \.
7810: 09 09 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  ..$(TESTFIXTURE_
7820: 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24  SRC) \.../link $
7830: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c  (LTLINKOPTS) $(L
7840: 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c  TLIBPATHS) $(LTL
7850: 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 66  IBS) $(TLIBS)..f
7860: 75 6c 6c 74 65 73 74 3a 09 74 65 73 74 66 69 78  ulltest:.testfix
7870: 74 75 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33  ture.exe sqlite3
7880: 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74  .exe...\testfixt
7890: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  ure.exe $(TOP)\t
78a0: 65 73 74 5c 61 6c 6c 2e 74 65 73 74 0a 0a 73 6f  est\all.test..so
78b0: 61 6b 74 65 73 74 3a 09 74 65 73 74 66 69 78 74  aktest:.testfixt
78c0: 75 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e  ure.exe sqlite3.
78d0: 65 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75  exe...\testfixtu
78e0: 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65  re.exe $(TOP)\te
78f0: 73 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f 61  st\all.test -soa
7900: 6b 3d 31 0a 0a 74 65 73 74 3a 09 74 65 73 74 66  k=1..test:.testf
7910: 69 78 74 75 72 65 2e 65 78 65 20 73 71 6c 69 74  ixture.exe sqlit
7920: 65 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 69  e3.exe...\testfi
7930: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29  xture.exe $(TOP)
7940: 5c 74 65 73 74 5c 76 65 72 79 71 75 69 63 6b 2e  \test\veryquick.
7950: 74 65 73 74 0a 0a 73 71 6c 69 74 65 33 5f 61 6e  test..sqlite3_an
7960: 61 6c 79 7a 65 72 2e 63 3a 20 73 71 6c 69 74 65  alyzer.c: sqlite
7970: 33 2e 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  3.c $(TOP)\src\t
7980: 65 73 74 5f 73 74 61 74 2e 63 20 24 28 54 4f 50  est_stat.c $(TOP
7990: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
79a0: 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70  c $(TOP)\tool\sp
79b0: 61 63 65 61 6e 61 6c 2e 74 63 6c 0a 09 63 6f 70  aceanal.tcl..cop
79c0: 79 20 73 71 6c 69 74 65 33 2e 63 20 2b 20 24 28  y sqlite3.c + $(
79d0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 74  TOP)\src\test_st
79e0: 61 74 2e 63 20 2b 20 24 28 54 4f 50 29 5c 73 72  at.c + $(TOP)\sr
79f0: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 40  c\tclsqlite.c $@
7a00: 0a 09 65 63 68 6f 20 73 74 61 74 69 63 20 63 6f  ..echo static co
7a10: 6e 73 74 20 63 68 61 72 20 2a 74 63 6c 73 68 5f  nst char *tclsh_
7a20: 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64 29 7b  main_loop(void){
7a30: 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73 74 61   >> $@..echo sta
7a40: 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a  tic const char *
7a50: 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e 20 24  zMainloop = >> $
7a60: 40 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20 24 28  @..$(NAWK) -f $(
7a70: 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74 72 2e  TOP)\tool\tostr.
7a80: 61 77 6b 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  awk $(TOP)\tool\
7a90: 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20 3e 3e  spaceanal.tcl >>
7aa0: 20 24 40 0a 09 65 63 68 6f 20 3b 20 72 65 74 75   $@..echo ; retu
7ab0: 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20 7d 20  rn zMainloop; } 
7ac0: 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 61  >> $@..sqlite3_a
7ad0: 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73 71 6c  nalyzer.exe:.sql
7ae0: 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a  ite3_analyzer.c.
7af0: 09 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 42 55 49  .$(LTLINK) -DBUI
7b00: 4c 44 5f 73 71 6c 69 74 65 20 2d 44 54 43 4c 53  LD_sqlite -DTCLS
7b10: 48 3d 32 20 2d 49 24 28 54 43 4c 49 4e 43 44 49  H=2 -I$(TCLINCDI
7b20: 52 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79  R) sqlite3_analy
7b30: 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20  zer.c \.../link 
7b40: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28  $(LTLINKOPTS) $(
7b50: 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54  LTLIBPATHS) $(LT
7b60: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a  LIBS) $(TLIBS)..
7b70: 63 6c 65 61 6e 3a 0a 09 64 65 6c 20 2f 51 20 2a  clean:..del /Q *
7b80: 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20  .lo *.ilk *.lib 
7b90: 2a 2e 6f 62 6a 20 2a 2e 70 64 62 20 73 71 6c 69  *.obj *.pdb sqli
7ba0: 74 65 33 2e 65 78 65 20 6c 69 62 73 71 6c 69 74  te3.exe libsqlit
7bb0: 65 33 2e 6c 69 62 0a 09 64 65 6c 20 2f 51 20 2a  e3.lib..del /Q *
7bc0: 2e 64 61 20 2a 2e 62 62 20 2a 2e 62 62 67 20 67  .da *.bb *.bbg g
7bd0: 6d 6f 6e 2e 6f 75 74 0a 09 64 65 6c 20 2f 51 20  mon.out..del /Q 
7be0: 73 71 6c 69 74 65 33 2e 68 20 6f 70 63 6f 64 65  sqlite3.h opcode
7bf0: 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68 0a 09 64  s.c opcodes.h..d
7c00: 65 6c 20 2f 51 20 6c 65 6d 6f 6e 2e 65 78 65 20  el /Q lemon.exe 
7c10: 6c 65 6d 70 61 72 2e 63 20 70 61 72 73 65 2e 2a  lempar.c parse.*
7c20: 0a 09 64 65 6c 20 2f 51 20 6d 6b 6b 65 79 77 6f  ..del /Q mkkeywo
7c30: 72 64 68 61 73 68 2e 65 78 65 20 6b 65 79 77 6f  rdhash.exe keywo
7c40: 72 64 68 61 73 68 2e 68 0a 09 2d 72 6d 64 69 72  rdhash.h..-rmdir
7c50: 20 2f 51 2f 53 20 2e 64 65 70 73 0a 09 2d 72 6d   /Q/S .deps..-rm
7c60: 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73 0a 09  dir /Q/S .libs..
7c70: 2d 72 6d 64 69 72 20 2f 51 2f 53 20 71 75 6f 74  -rmdir /Q/S quot
7c80: 61 32 61 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53  a2a..-rmdir /Q/S
7c90: 20 71 75 6f 74 61 32 62 0a 09 2d 72 6d 64 69 72   quota2b..-rmdir
7ca0: 20 2f 51 2f 53 20 71 75 6f 74 61 32 63 0a 09 2d   /Q/S quota2c..-
7cb0: 72 6d 64 69 72 20 2f 51 2f 53 20 74 73 72 63 0a  rmdir /Q/S tsrc.
7cc0: 09 64 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f  .del /Q .target_
7cd0: 73 6f 75 72 63 65 0a 09 64 65 6c 20 2f 51 20 74  source..del /Q t
7ce0: 63 6c 73 71 6c 69 74 65 33 2e 65 78 65 0a 09 64  clsqlite3.exe..d
7cf0: 65 6c 20 2f 51 20 74 65 73 74 66 69 78 74 75 72  el /Q testfixtur
7d00: 65 2e 65 78 65 20 74 65 73 74 66 69 78 74 75 72  e.exe testfixtur
7d10: 65 2e 65 78 70 20 74 65 73 74 2e 64 62 0a 09 64  e.exp test.db..d
7d20: 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 64 6c  el /Q sqlite3.dl
7d30: 6c 20 73 71 6c 69 74 65 33 2e 6c 69 62 20 73 71  l sqlite3.lib sq
7d40: 6c 69 74 65 33 2e 65 78 70 20 73 71 6c 69 74 65  lite3.exp sqlite
7d50: 33 2e 64 65 66 0a 09 64 65 6c 20 2f 51 20 73 71  3.def..del /Q sq
7d60: 6c 69 74 65 33 2e 63 0a 09 64 65 6c 20 2f 51 20  lite3.c..del /Q 
7d70: 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72  sqlite3_analyzer
7d80: 2e 65 78 65 20 73 71 6c 69 74 65 33 5f 61 6e 61  .exe sqlite3_ana
7d90: 6c 79 7a 65 72 2e 65 78 70 20 73 71 6c 69 74 65  lyzer.exp sqlite
7da0: 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a 0a 23 0a  3_analyzer.c..#.
7db0: 23 20 57 69 6e 64 6f 77 73 20 73 65 63 74 69 6f  # Windows sectio
7dc0: 6e 0a 23 0a 64 6c 6c 3a 20 73 71 6c 69 74 65 33  n.#.dll: sqlite3
7dd0: 2e 64 6c 6c 0a 0a 73 71 6c 69 74 65 33 2e 64 65  .dll..sqlite3.de
7de0: 66 3a 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  f: libsqlite3.li
7df0: 62 0a 09 65 63 68 6f 20 45 58 50 4f 52 54 53 20  b..echo EXPORTS 
7e00: 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 09 64  > sqlite3.def..d
7e10: 75 6d 70 62 69 6e 20 2f 61 6c 6c 20 6c 69 62 73  umpbin /all libs
7e20: 71 6c 69 74 65 33 2e 6c 69 62 20 5c 0a 09 09 7c  qlite3.lib \...|
7e30: 20 24 28 4e 41 57 4b 29 20 22 2f 20 31 20 5f 3f   $(NAWK) "/ 1 _?
7e40: 73 71 6c 69 74 65 33 5f 2f 20 7b 20 73 75 62 28  sqlite3_/ { sub(
7e50: 2f 5e 2e 2a 20 5f 3f 2f 2c 5c 22 5c 22 29 3b 70  /^.* _?/,\"\");p
7e60: 72 69 6e 74 20 7d 22 20 5c 0a 09 09 7c 20 73 6f  rint }" \...| so
7e70: 72 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64 65  rt >> sqlite3.de
7e80: 66 0a 0a 73 71 6c 69 74 65 33 2e 64 6c 6c 3a 20  f..sqlite3.dll: 
7e90: 24 28 4c 49 42 4f 42 4a 29 20 73 71 6c 69 74 65  $(LIBOBJ) sqlite
7ea0: 33 2e 64 65 66 0a 09 24 28 4c 44 29 20 24 28 4c  3.def..$(LD) $(L
7eb0: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK
7ec0: 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54  OPTS) $(LTLIBPAT
7ed0: 48 53 29 20 2f 44 4c 4c 20 2f 44 45 46 3a 73 71  HS) /DLL /DEF:sq
7ee0: 6c 69 74 65 33 2e 64 65 66 20 2f 4f 55 54 3a 24  lite3.def /OUT:$
7ef0: 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c 54  @ $(LIBOBJ) $(LT
7f00: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a     LIBS) $(TLIBS).