/ Hex Artifact Content
Login

Artifact 332c166048570b65127db33450bca22c53b4f0a2:


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 68 72 65 61 64 73  table.lo threads
2c50: 2e 6f 20 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 20 74  .o tokenize.lo t
2c60: 72 69 67 67 65 72 2e 6c 6f 20 5c 0a 20 20 20 20  rigger.lo \.    
2c70: 20 20 20 20 20 75 70 64 61 74 65 2e 6c 6f 20 75       update.lo u
2c80: 74 69 6c 2e 6c 6f 20 76 61 63 75 75 6d 2e 6c 6f  til.lo vacuum.lo
2c90: 20 5c 0a 20 20 20 20 20 20 20 20 20 76 64 62 65   \.         vdbe
2ca0: 2e 6c 6f 20 76 64 62 65 61 70 69 2e 6c 6f 20 76  .lo vdbeapi.lo v
2cb0: 64 62 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c  dbeaux.lo vdbebl
2cc0: 6f 62 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f  ob.lo vdbemem.lo
2cd0: 20 76 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20   vdbesort.lo \. 
2ce0: 20 20 20 20 20 20 20 20 76 64 62 65 74 72 61 63          vdbetrac
2cf0: 65 2e 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b  e.lo wal.lo walk
2d00: 65 72 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 75  er.lo where.lo u
2d10: 74 66 2e 6c 6f 20 76 74 61 62 2e 6c 6f 0a 0a 23  tf.lo vtab.lo..#
2d20: 20 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f   Object files fo
2d30: 72 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69  r the amalgamati
2d40: 6f 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d  on..#.LIBOBJS1 =
2d50: 20 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44   sqlite3.lo..# D
2d60: 65 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61  etermine the rea
2d70: 6c 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42  l value of LIBOB
2d80: 4a 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27  J based on the '
2d90: 63 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70  configure' scrip
2da0: 74 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 41 4d  t.#.!IF $(USE_AM
2db0: 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c  ALGAMATION)==0.L
2dc0: 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a  IBOBJ = $(LIBOBJ
2dd0: 53 30 29 0a 21 45 4c 53 45 0a 4c 49 42 4f 42 4a  S0).!ELSE.LIBOBJ
2de0: 20 3d 20 24 28 4c 49 42 4f 42 4a 53 31 29 0a 21   = $(LIBOBJS1).!
2df0: 45 4e 44 49 46 0a 0a 23 20 41 6c 6c 20 6f 66 20  ENDIF..# All of 
2e00: 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20  the source code 
2e10: 66 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 5c  files..#.SRC = \
2e20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c  .  $(TOP)\src\al
2e30: 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ter.c \.  $(TOP)
2e40: 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 5c  \src\analyze.c \
2e50: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74  .  $(TOP)\src\at
2e60: 74 61 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tach.c \.  $(TOP
2e70: 29 5c 73 72 63 5c 61 75 74 68 2e 63 20 5c 0a 20  )\src\auth.c \. 
2e80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b   $(TOP)\src\back
2e90: 75 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  up.c \.  $(TOP)\
2ea0: 73 72 63 5c 62 69 74 76 65 63 2e 63 20 5c 0a 20  src\bitvec.c \. 
2eb0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75   $(TOP)\src\btmu
2ec0: 74 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tex.c \.  $(TOP)
2ed0: 5c 73 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a 20  \src\btree.c \. 
2ee0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65   $(TOP)\src\btre
2ef0: 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.h \.  $(TOP)\s
2f00: 72 63 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a  rc\btreeInt.h \.
2f10: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69    $(TOP)\src\bui
2f20: 6c 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ld.c \.  $(TOP)\
2f30: 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 5c  src\callback.c \
2f40: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f  .  $(TOP)\src\co
2f50: 6d 70 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28 54  mplete.c \.  $(T
2f60: 4f 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20  OP)\src\ctime.c 
2f70: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64  \.  $(TOP)\src\d
2f80: 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ate.c \.  $(TOP)
2f90: 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c 0a  \src\delete.c \.
2fa0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70    $(TOP)\src\exp
2fb0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  r.c \.  $(TOP)\s
2fc0: 72 63 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20 24  rc\fault.c \.  $
2fd0: 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63  (TOP)\src\fkey.c
2fe0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
2ff0: 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  func.c \.  $(TOP
3000: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c  )\src\global.c \
3010: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61  .  $(TOP)\src\ha
3020: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.c \.  $(TOP)\
3030: 73 72 63 5c 68 61 73 68 2e 68 20 5c 0a 20 20 24  src\hash.h \.  $
3040: 28 54 4f 50 29 5c 73 72 63 5c 68 77 74 69 6d 65  (TOP)\src\hwtime
3050: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr
3060: 63 5c 69 6e 73 65 72 74 2e 63 20 5c 0a 20 20 24  c\insert.c \.  $
3070: 28 54 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61  (TOP)\src\journa
3080: 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  l.c \.  $(TOP)\s
3090: 72 63 5c 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20  rc\legacy.c \.  
30a0: 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65  $(TOP)\src\loade
30b0: 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  xt.c \.  $(TOP)\
30c0: 73 72 63 5c 6d 61 69 6e 2e 63 20 5c 0a 20 20 24  src\main.c \.  $
30d0: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63  (TOP)\src\malloc
30e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
30f0: 63 5c 6d 65 6d 30 2e 63 20 5c 0a 20 20 24 28 54  c\mem0.c \.  $(T
3100: 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 5c  OP)\src\mem1.c \
3110: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  .  $(TOP)\src\me
3120: 6d 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  m2.c \.  $(TOP)\
3130: 73 72 63 5c 6d 65 6d 33 2e 63 20 5c 0a 20 20 24  src\mem3.c \.  $
3140: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63  (TOP)\src\mem5.c
3150: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3160: 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20  memjournal.c \. 
3170: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute
3180: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s
3190: 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 24  rc\mutex.h \.  $
31a0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
31b0: 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50  noop.c \.  $(TOP
31c0: 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78  )\src\mutex_unix
31d0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
31e0: 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 5c 0a  c\mutex_w32.c \.
31f0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74    $(TOP)\src\not
3200: 69 66 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ify.c \.  $(TOP)
3210: 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28  \src\os.c \.  $(
3220: 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a  TOP)\src\os.h \.
3230: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_
3240: 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 24 28 54  common.h \.  $(T
3250: 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e  OP)\src\os_unix.
3260: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3270: 5c 6f 73 5f 77 69 6e 2e 63 20 5c 0a 20 20 24 28  \os_win.c \.  $(
3280: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63  TOP)\src\pager.c
3290: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
32a0: 70 61 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f  pager.h \.  $(TO
32b0: 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 5c  P)\src\parse.y \
32c0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  .  $(TOP)\src\pc
32d0: 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ache.c \.  $(TOP
32e0: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c  )\src\pcache.h \
32f0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  .  $(TOP)\src\pc
3300: 61 63 68 65 31 2e 63 20 5c 0a 20 20 24 28 54 4f  ache1.c \.  $(TO
3310: 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 20  P)\src\pragma.c 
3320: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  \.  $(TOP)\src\p
3330: 72 65 70 61 72 65 2e 63 20 5c 0a 20 20 24 28 54  repare.c \.  $(T
3340: 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63  OP)\src\printf.c
3350: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3360: 72 61 6e 64 6f 6d 2e 63 20 5c 0a 20 20 24 28 54  random.c \.  $(T
3370: 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e  OP)\src\resolve.
3380: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3390: 5c 72 6f 77 73 65 74 2e 63 20 5c 0a 20 20 24 28  \rowset.c \.  $(
33a0: 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e  TOP)\src\select.
33b0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
33c0: 5c 73 74 61 74 75 73 2e 63 20 5c 0a 20 20 24 28  \status.c \.  $(
33d0: 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63  TOP)\src\shell.c
33e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
33f0: 73 71 6c 69 74 65 2e 68 2e 69 6e 20 5c 0a 20 20  sqlite.h.in \.  
3400: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74  $(TOP)\src\sqlit
3410: 65 33 65 78 74 2e 68 20 5c 0a 20 20 24 28 54 4f  e3ext.h \.  $(TO
3420: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74  P)\src\sqliteInt
3430: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr
3440: 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20  c\sqliteLimit.h 
3450: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3460: 61 62 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  able.c \.  $(TOP
3470: 29 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63 20  )\src\threads.c 
3480: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3490: 63 6c 73 71 6c 69 74 65 2e 63 20 5c 0a 20 20 24  clsqlite.c \.  $
34a0: 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69  (TOP)\src\tokeni
34b0: 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ze.c \.  $(TOP)\
34c0: 73 72 63 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a  src\trigger.c \.
34d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66    $(TOP)\src\utf
34e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
34f0: 63 5c 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 24  c\update.c \.  $
3500: 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63  (TOP)\src\util.c
3510: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3520: 76 61 63 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54  vacuum.c \.  $(T
3530: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c  OP)\src\vdbe.c \
3540: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd
3550: 62 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  be.h \.  $(TOP)\
3560: 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20 5c 0a  src\vdbeapi.c \.
3570: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb
3580: 65 61 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50  eaux.c \.  $(TOP
3590: 29 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63  )\src\vdbeblob.c
35a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
35b0: 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20 20 24 28  vdbemem.c \.  $(
35c0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72  TOP)\src\vdbesor
35d0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s
35e0: 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 20 5c  rc\vdbetrace.c \
35f0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd
3600: 62 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f  beInt.h \.  $(TO
3610: 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a  P)\src\vtab.c \.
3620: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c    $(TOP)\src\wal
3630: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3640: 63 5c 77 61 6c 2e 68 20 5c 0a 20 20 24 28 54 4f  c\wal.h \.  $(TO
3650: 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20  P)\src\walker.c 
3660: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77  \.  $(TOP)\src\w
3670: 68 65 72 65 2e 63 0a 0a 23 20 53 6f 75 72 63 65  here.c..# Source
3680: 20 63 6f 64 65 20 66 6f 72 20 65 78 74 65 6e 73   code for extens
3690: 69 6f 6e 73 0a 23 0a 53 52 43 20 3d 20 24 28 53  ions.#.SRC = $(S
36a0: 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  RC) \.  $(TOP)\e
36b0: 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 63 20 5c  xt\fts1\fts1.c \
36c0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
36d0: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $(
36e0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
36f0: 73 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28  s1_hash.c \.  $(
3700: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
3710: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  s1_hash.h \.  $(
3720: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
3730: 73 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20  s1_porter.c \.  
3740: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\
3750: 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68  fts1_tokenizer.h
3760: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3770: 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69  fts1\fts1_tokeni
3780: 7a 65 72 31 2e 63 0a 53 52 43 20 3d 20 24 28 53  zer1.c.SRC = $(S
3790: 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  RC) \.  $(TOP)\e
37a0: 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 5c  xt\fts2\fts2.c \
37b0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
37c0: 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20 20 24 28  s2\fts2.h \.  $(
37d0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
37e0: 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28  s2_hash.c \.  $(
37f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
3800: 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  s2_hash.h \.  $(
3810: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
3820: 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28 54  s2_icu.c \.  $(T
3830: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
3840: 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24  2_porter.c \.  $
3850: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
3860: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20  ts2_tokenizer.h 
3870: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
3880: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  ts2\fts2_tokeniz
3890: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\
38a0: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f  ext\fts2\fts2_to
38b0: 6b 65 6e 69 7a 65 72 31 2e 63 0a 53 52 43 20 3d  kenizer1.c.SRC =
38c0: 20 24 28 53 52 43 29 20 5c 0a 20 20 24 28 54 4f   $(SRC) \.  $(TO
38d0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
38e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
38f0: 74 5c 66 74 73 33 5c 66 74 73 33 2e 68 20 5c 0a  t\fts3\fts3.h \.
3900: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
3910: 33 5c 66 74 73 33 49 6e 74 2e 68 20 5c 0a 20 20  3\fts3Int.h \.  
3920: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
3930: 66 74 73 33 5f 61 75 78 2e 63 20 5c 0a 20 20 24  fts3_aux.c \.  $
3940: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
3950: 74 73 33 5f 65 78 70 72 2e 63 20 5c 0a 20 20 24  ts3_expr.c \.  $
3960: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
3970: 74 73 33 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24  ts3_hash.c \.  $
3980: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
3990: 74 73 33 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24  ts3_hash.h \.  $
39a0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
39b0: 74 73 33 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28  ts3_icu.c \.  $(
39c0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
39d0: 73 33 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20  s3_porter.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 73 6e 69 70 70 65 74 2e 63 20 5c  fts3_snippet.c \
3a00: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
3a10: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
3a20: 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.h \.  $(TOP)\e
3a30: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
3a40: 65 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54  enizer.c \.  $(T
3a50: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
3a60: 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c  3_tokenizer1.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 2e  s3\fts3_unicode.
3a90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
3aa0: 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f  \fts3\fts3_unico
3ab0: 64 65 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  de2.c \.  $(TOP)
3ac0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77  \ext\fts3\fts3_w
3ad0: 72 69 74 65 2e 63 0a 53 52 43 20 3d 20 24 28 53  rite.c.SRC = $(S
3ae0: 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  RC) \.  $(TOP)\e
3af0: 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69 63 75  xt\icu\sqliteicu
3b00: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
3b10: 74 5c 69 63 75 5c 69 63 75 2e 63 0a 53 52 43 20  t\icu\icu.c.SRC 
3b20: 3d 20 24 28 53 52 43 29 20 5c 0a 20 20 24 28 54  = $(SRC) \.  $(T
3b30: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74  OP)\ext\rtree\rt
3b40: 72 65 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ree.h \.  $(TOP)
3b50: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
3b60: 2e 63 0a 0a 0a 23 20 47 65 6e 65 72 61 74 65 64  .c...# Generated
3b70: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c   source code fil
3b80: 65 73 0a 23 0a 53 52 43 20 3d 20 24 28 53 52 43  es.#.SRC = $(SRC
3b90: 29 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73  ) \.  keywordhas
3ba0: 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e  h.h \.  opcodes.
3bb0: 63 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 68 20  c \.  opcodes.h 
3bc0: 5c 0a 20 20 70 61 72 73 65 2e 63 20 5c 0a 20 20  \.  parse.c \.  
3bd0: 70 61 72 73 65 2e 68 20 5c 0a 20 20 73 71 6c 69  parse.h \.  sqli
3be0: 74 65 33 2e 68 0a 0a 23 20 53 6f 75 72 63 65 20  te3.h..# Source 
3bf0: 63 6f 64 65 20 74 6f 20 74 68 65 20 74 65 73 74  code to the test
3c00: 20 66 69 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52   files..#.TESTSR
3c10: 43 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  C = \.  $(TOP)\s
3c20: 72 63 5c 74 65 73 74 31 2e 63 20 5c 0a 20 20 24  rc\test1.c \.  $
3c30: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 32 2e  (TOP)\src\test2.
3c40: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3c50: 5c 74 65 73 74 33 2e 63 20 5c 0a 20 20 24 28 54  \test3.c \.  $(T
3c60: 4f 50 29 5c 73 72 63 5c 74 65 73 74 34 2e 63 20  OP)\src\test4.c 
3c70: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3c80: 65 73 74 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est5.c \.  $(TOP
3c90: 29 5c 73 72 63 5c 74 65 73 74 36 2e 63 20 5c 0a  )\src\test6.c \.
3ca0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3cb0: 74 37 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  t7.c \.  $(TOP)\
3cc0: 73 72 63 5c 74 65 73 74 38 2e 63 20 5c 0a 20 20  src\test8.c \.  
3cd0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 39  $(TOP)\src\test9
3ce0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3cf0: 63 5c 74 65 73 74 5f 61 75 74 6f 65 78 74 2e 63  c\test_autoext.c
3d00: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3d10: 74 65 73 74 5f 61 73 79 6e 63 2e 63 20 5c 0a 20  test_async.c \. 
3d20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3d30: 5f 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20 24 28  _backup.c \.  $(
3d40: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 74  TOP)\src\test_bt
3d50: 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ree.c \.  $(TOP)
3d60: 5c 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67  \src\test_config
3d70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3d80: 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63  c\test_demovfs.c
3d90: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3da0: 74 65 73 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a  test_devsym.c \.
3db0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3dc0: 74 5f 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54  t_func.c \.  $(T
3dd0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 75 7a  OP)\src\test_fuz
3de0: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  zer.c \.  $(TOP)
3df0: 5c 73 72 63 5c 74 65 73 74 5f 68 65 78 69 6f 2e  \src\test_hexio.
3e00: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3e10: 5c 74 65 73 74 5f 69 6e 69 74 2e 63 20 5c 0a 20  \test_init.c \. 
3e20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3e30: 5f 69 6e 74 61 72 72 61 79 2e 63 20 5c 0a 20 20  _intarray.c \.  
3e40: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_
3e50: 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28  journal.c \.  $(
3e60: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 61  TOP)\src\test_ma
3e70: 6c 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lloc.c \.  $(TOP
3e80: 29 5c 73 72 63 5c 74 65 73 74 5f 6d 75 6c 74 69  )\src\test_multi
3e90: 70 6c 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50  plex.c \.  $(TOP
3ea0: 29 5c 73 72 63 5c 74 65 73 74 5f 6d 75 74 65 78  )\src\test_mutex
3eb0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3ec0: 63 5c 74 65 73 74 5f 6f 6e 65 66 69 6c 65 2e 63  c\test_onefile.c
3ed0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3ee0: 74 65 73 74 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a  test_osinst.c \.
3ef0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3f00: 74 5f 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24  t_pcache.c \.  $
3f10: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 71  (TOP)\src\test_q
3f20: 75 6f 74 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50  uota.c \.  $(TOP
3f30: 29 5c 73 72 63 5c 74 65 73 74 5f 72 74 72 65 65  )\src\test_rtree
3f40: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3f50: 63 5c 74 65 73 74 5f 73 63 68 65 6d 61 2e 63 20  c\test_schema.c 
3f60: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3f70: 65 73 74 5f 73 65 72 76 65 72 2e 63 20 5c 0a 20  est_server.c \. 
3f80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3f90: 5f 73 75 70 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20  _superlock.c \. 
3fa0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3fb0: 5f 73 79 73 63 61 6c 6c 2e 63 20 5c 0a 20 20 24  _syscall.c \.  $
3fc0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73  (TOP)\src\test_s
3fd0: 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tat.c \.  $(TOP)
3fe0: 5c 73 72 63 5c 74 65 73 74 5f 74 63 6c 76 61 72  \src\test_tclvar
3ff0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
4000: 63 5c 74 65 73 74 5f 74 68 72 65 61 64 2e 63 20  c\test_thread.c 
4010: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
4020: 65 73 74 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28  est_vfs.c \.  $(
4030: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 68  TOP)\src\test_wh
4040: 6f 6c 65 6e 75 6d 62 65 72 2e 63 20 5c 0a 20 20  olenumber.c \.  
4050: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_
4060: 77 73 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  wsd.c \.  $(TOP)
4070: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
4080: 65 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  erm.c \.  $(TOP)
4090: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
40a0: 65 73 74 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20  est.c..# Source 
40b0: 63 6f 64 65 20 74 6f 20 74 68 65 20 6c 69 62 72  code to the libr
40c0: 61 72 79 20 66 69 6c 65 73 20 6e 65 65 64 65 64  ary files needed
40d0: 20 62 79 20 74 68 65 20 74 65 73 74 20 66 69 78   by the test fix
40e0: 74 75 72 65 0a 23 0a 54 45 53 54 53 52 43 32 20  ture.#.TESTSRC2 
40f0: 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  = \.  $(TOP)\src
4100: 5c 61 74 74 61 63 68 2e 63 20 5c 0a 20 20 24 28  \attach.c \.  $(
4110: 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e  TOP)\src\backup.
4120: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
4130: 5c 62 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 28  \bitvec.c \.  $(
4140: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 63  TOP)\src\btree.c
4150: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4160: 62 75 69 6c 64 2e 63 20 5c 0a 20 20 24 28 54 4f  build.c \.  $(TO
4170: 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c  P)\src\ctime.c \
4180: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 61  .  $(TOP)\src\da
4190: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\
41a0: 73 72 63 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24  src\expr.c \.  $
41b0: 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63  (TOP)\src\func.c
41c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
41d0: 69 6e 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54  insert.c \.  $(T
41e0: 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a  OP)\src\wal.c \.
41f0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem
4200: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  5.c \.  $(TOP)\s
4210: 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f  rc\os.c \.  $(TO
4220: 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63  P)\src\os_unix.c
4230: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4240: 6f 73 5f 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54  os_win.c \.  $(T
4250: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20  OP)\src\pager.c 
4260: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  \.  $(TOP)\src\p
4270: 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f  ragma.c \.  $(TO
4280: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63  P)\src\prepare.c
4290: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
42a0: 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54  printf.c \.  $(T
42b0: 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63  OP)\src\random.c
42c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
42d0: 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54  pcache.c \.  $(T
42e0: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e  OP)\src\pcache1.
42f0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
4300: 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28  \select.c \.  $(
4310: 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a  TOP)\src\tokeniz
4320: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
4330: 72 63 5c 75 74 66 2e 63 20 5c 0a 20 20 24 28 54  rc\utf.c \.  $(T
4340: 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c  OP)\src\util.c \
4350: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd
4360: 62 65 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f  beapi.c \.  $(TO
4370: 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63  P)\src\vdbeaux.c
4380: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4390: 76 64 62 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  vdbe.c \.  $(TOP
43a0: 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20  )\src\vdbemem.c 
43b0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76  \.  $(TOP)\src\v
43c0: 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28  dbesort.c \.  $(
43d0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61  TOP)\src\vdbetra
43e0: 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ce.c \.  $(TOP)\
43f0: 73 72 63 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20  src\where.c \.  
4400: 70 61 72 73 65 2e 63 20 5c 0a 20 20 24 28 54 4f  parse.c \.  $(TO
4410: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
4420: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
4430: 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e  t\fts3\fts3_aux.
4440: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
4450: 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e  \fts3\fts3_expr.
4460: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
4470: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e  \fts3\fts3_token
4480: 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50  izer.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 2e 63 20 5c 0a 20 20 24 28  unicode.c \.  $(
44b0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
44c0: 73 33 5f 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a  s3_unicode2.c \.
44d0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
44e0: 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 20 5c  3\fts3_write.c \
44f0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 61 73  .  $(TOP)\ext\as
4500: 79 6e 63 5c 73 71 6c 69 74 65 33 61 73 79 6e 63  ync\sqlite3async
4510: 2e 63 0a 0a 23 20 48 65 61 64 65 72 20 66 69 6c  .c..# Header fil
4520: 65 73 20 75 73 65 64 20 62 79 20 61 6c 6c 20 6c  es used by all l
4530: 69 62 72 61 72 79 20 73 6f 75 72 63 65 20 66 69  ibrary source fi
4540: 6c 65 73 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a 20  les..#.HDR = \. 
4550: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72    $(TOP)\src\btr
4560: 65 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  ee.h \.   $(TOP)
4570: 5c 73 72 63 5c 62 74 72 65 65 49 6e 74 2e 68 20  \src\btreeInt.h 
4580: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\
4590: 68 61 73 68 2e 68 20 5c 0a 20 20 20 24 28 54 4f  hash.h \.   $(TO
45a0: 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 20  P)\src\hwtime.h 
45b0: 5c 0a 20 20 20 6b 65 79 77 6f 72 64 68 61 73 68  \.   keywordhash
45c0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s
45d0: 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20  rc\mutex.h \.   
45e0: 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24  opcodes.h \.   $
45f0: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c  (TOP)\src\os.h \
4600: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  .   $(TOP)\src\o
4610: 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20  s_common.h \.   
4620: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72  $(TOP)\src\pager
4630: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s
4640: 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a 20 20  rc\pcache.h \.  
4650: 20 70 61 72 73 65 2e 68 20 5c 0a 20 20 20 73 71   parse.h \.   sq
4660: 6c 69 74 65 33 2e 68 20 5c 0a 20 20 20 24 28 54  lite3.h \.   $(T
4670: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 65  OP)\src\sqlite3e
4680: 78 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  xt.h \.   $(TOP)
4690: 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68  \src\sqliteInt.h
46a0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src
46b0: 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c  \sqliteLimit.h \
46c0: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76  .   $(TOP)\src\v
46d0: 64 62 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  dbe.h \.   $(TOP
46e0: 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e 68 0a  )\src\vdbeInt.h.
46f0: 0a 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20  .# Header files 
4700: 75 73 65 64 20 62 79 20 65 78 74 65 6e 73 69 6f  used by extensio
4710: 6e 73 0a 23 0a 45 58 54 48 44 52 20 3d 20 24 28  ns.#.EXTHDR = $(
4720: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO
4730: 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31  P)\ext\fts1\fts1
4740: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
4750: 74 5c 66 74 73 31 5c 66 74 73 31 5f 68 61 73 68  t\fts1\fts1_hash
4760: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
4770: 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65  t\fts1\fts1_toke
4780: 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d  nizer.h.EXTHDR =
4790: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24   $(EXTHDR) \.  $
47a0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
47b0: 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts2.h \.  $(TOP)
47c0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68  \ext\fts2\fts2_h
47d0: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ash.h \.  $(TOP)
47e0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
47f0: 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44  okenizer.h.EXTHD
4800: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \.
4810: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
4820: 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 54  3\fts3.h \.  $(T
4830: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
4840: 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50  3Int.h \.  $(TOP
4850: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
4860: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP
4870: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
4880: 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48  tokenizer.h.EXTH
4890: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \
48a0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74  .  $(TOP)\ext\rt
48b0: 72 65 65 5c 72 74 72 65 65 2e 68 0a 45 58 54 48  ree\rtree.h.EXTH
48c0: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \
48d0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63  .  $(TOP)\ext\ic
48e0: 75 5c 73 71 6c 69 74 65 69 63 75 2e 68 0a 45 58  u\sqliteicu.h.EX
48f0: 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52 29  THDR = $(EXTHDR)
4900: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
4910: 72 74 72 65 65 5c 73 71 6c 69 74 65 33 72 74 72  rtree\sqlite3rtr
4920: 65 65 2e 68 0a 0a 23 20 54 68 69 73 20 69 73 20  ee.h..# This is 
4930: 74 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65  the default Make
4940: 66 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68  file target.  Th
4950: 65 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64  e objects listed
4960: 20 68 65 72 65 0a 23 20 61 72 65 20 77 68 61 74   here.# are what
4970: 20 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20   get build when 
4980: 79 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d  you type just "m
4990: 61 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67  ake" with no arg
49a0: 75 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64  uments..#.all:.d
49b0: 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  ll libsqlite3.li
49c0: 62 20 73 71 6c 69 74 65 33 2e 65 78 65 20 6c 69  b sqlite3.exe li
49d0: 62 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 0a  btclsqlite3.lib.
49e0: 0a 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 3a  .libsqlite3.lib:
49f0: 09 24 28 4c 49 42 4f 42 4a 29 0a 09 24 28 4c 54  .$(LIBOBJ)..$(LT
4a00: 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53  LIB) $(LTLIBOPTS
4a10: 29 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f  ) /OUT:$@ $(LIBO
4a20: 42 4a 29 20 24 28 54 4c 49 42 53 29 0a 0a 6c 69  BJ) $(TLIBS)..li
4a30: 62 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 3a  btclsqlite3.lib:
4a40: 09 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69  .tclsqlite.lo li
4a50: 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28  bsqlite3.lib..$(
4a60: 4c 54 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f 50  LTLIB) $(LTLIBOP
4a70: 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53  TS) $(LTLIBPATHS
4a80: 29 20 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c  ) /OUT:$@ tclsql
4a90: 69 74 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65  ite.lo libsqlite
4aa0: 33 2e 6c 69 62 20 24 28 4c 49 42 54 43 4c 3a 74  3.lib $(LIBTCL:t
4ab0: 63 6c 3d 74 63 6c 73 74 75 62 29 20 24 28 54 4c  cl=tclstub) $(TL
4ac0: 49 42 53 29 0a 0a 73 71 6c 69 74 65 33 2e 65 78  IBS)..sqlite3.ex
4ad0: 65 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 68  e:.$(TOP)\src\sh
4ae0: 65 6c 6c 2e 63 20 6c 69 62 73 71 6c 69 74 65 33  ell.c libsqlite3
4af0: 2e 6c 69 62 20 73 71 6c 69 74 65 33 2e 68 0a 09  .lib sqlite3.h..
4b00: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 52 45 41 44  $(LTLINK) $(READ
4b10: 4c 49 4e 45 5f 46 4c 41 47 53 29 20 5c 0a 09 09  LINE_FLAGS) \...
4b20: 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c  $(TOP)\src\shell
4b30: 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c  .c \.../link $(L
4b40: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL
4b50: 49 42 50 41 54 48 53 29 20 6c 69 62 73 71 6c 69  IBPATHS) libsqli
4b60: 74 65 33 2e 6c 69 62 20 24 28 4c 49 42 52 45 41  te3.lib $(LIBREA
4b70: 44 4c 49 4e 45 29 20 24 28 4c 54 4c 49 42 53 29  DLINE) $(LTLIBS)
4b80: 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 54 68 69   $(TLIBS)..# Thi
4b90: 73 20 74 61 72 67 65 74 20 63 72 65 61 74 65 73  s target creates
4ba0: 20 61 20 64 69 72 65 63 74 6f 72 79 20 6e 61 6d   a directory nam
4bb0: 65 64 20 22 74 73 72 63 22 20 61 6e 64 20 66 69  ed "tsrc" and fi
4bc0: 6c 6c 73 20 69 74 20 77 69 74 68 0a 23 20 63 6f  lls it with.# co
4bd0: 70 69 65 73 20 6f 66 20 61 6c 6c 20 6f 66 20 74  pies of all of t
4be0: 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65  he C source code
4bf0: 20 61 6e 64 20 68 65 61 64 65 72 20 66 69 6c 65   and header file
4c00: 73 20 6e 65 65 64 65 64 20 74 6f 0a 23 20 62 75  s needed to.# bu
4c10: 69 6c 64 20 6f 6e 20 74 68 65 20 74 61 72 67 65  ild on the targe
4c20: 74 20 73 79 73 74 65 6d 2e 20 20 53 6f 6d 65 20  t system.  Some 
4c30: 6f 66 20 74 68 65 20 43 20 73 6f 75 72 63 65 20  of the C source 
4c40: 63 6f 64 65 20 61 6e 64 20 68 65 61 64 65 72 0a  code and header.
4c50: 23 20 66 69 6c 65 73 20 61 72 65 20 61 75 74 6f  # files are auto
4c60: 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61  matically genera
4c70: 74 65 64 2e 20 20 54 68 69 73 20 74 61 72 67 65  ted.  This targe
4c80: 74 20 74 61 6b 65 73 20 63 61 72 65 20 6f 66 0a  t takes care of.
4c90: 23 20 61 6c 6c 20 74 68 61 74 20 61 75 74 6f 6d  # all that autom
4ca0: 61 74 69 63 20 67 65 6e 65 72 61 74 69 6f 6e 2e  atic generation.
4cb0: 0a 23 0a 2e 74 61 72 67 65 74 5f 73 6f 75 72 63  .#..target_sourc
4cc0: 65 3a 09 24 28 53 52 43 29 20 24 28 54 4f 50 29  e:.$(SRC) $(TOP)
4cd0: 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72  \tool\vdbe-compr
4ce0: 65 73 73 2e 74 63 6c 0a 09 2d 72 6d 64 69 72 20  ess.tcl..-rmdir 
4cf0: 2f 53 2f 51 20 74 73 72 63 0a 09 2d 6d 6b 64 69  /S/Q tsrc..-mkdi
4d00: 72 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69  r tsrc..for %i i
4d10: 6e 20 28 24 28 53 52 43 29 29 20 64 6f 20 63 6f  n ($(SRC)) do co
4d20: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 64  py /Y %i tsrc..d
4d30: 65 6c 20 2f 51 20 74 73 72 63 5c 73 71 6c 69 74  el /Q tsrc\sqlit
4d40: 65 2e 68 2e 69 6e 20 74 73 72 63 5c 70 61 72 73  e.h.in tsrc\pars
4d50: 65 2e 79 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44  e.y..$(TCLSH_CMD
4d60: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64  ) $(TOP)\tool\vd
4d70: 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20  be-compress.tcl 
4d80: 3c 20 74 73 72 63 5c 76 64 62 65 2e 63 20 3e 20  < tsrc\vdbe.c > 
4d90: 76 64 62 65 2e 6e 65 77 0a 09 6d 6f 76 65 20 76  vdbe.new..move v
4da0: 64 62 65 2e 6e 65 77 20 74 73 72 63 5c 76 64 62  dbe.new tsrc\vdb
4db0: 65 2e 63 0a 09 65 63 68 6f 20 3e 20 2e 74 61 72  e.c..echo > .tar
4dc0: 67 65 74 5f 73 6f 75 72 63 65 0a 0a 73 71 6c 69  get_source..sqli
4dd0: 74 65 33 2e 63 3a 09 2e 74 61 72 67 65 74 5f 73  te3.c:..target_s
4de0: 6f 75 72 63 65 20 24 28 54 4f 50 29 5c 74 6f 6f  ource $(TOP)\too
4df0: 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  l\mksqlite3c.tcl
4e00: 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  ..$(TCLSH_CMD) $
4e10: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c  (TOP)\tool\mksql
4e20: 69 74 65 33 63 2e 74 63 6c 0a 0a 73 71 6c 69 74  ite3c.tcl..sqlit
4e30: 65 33 2d 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65  e3-all.c:.sqlite
4e40: 33 2e 63 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f  3.c $(TOP)/tool/
4e50: 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 2e 74  split-sqlite3c.t
4e60: 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  cl..$(TCLSH_CMD)
4e70: 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 73 70 6c   $(TOP)/tool/spl
4e80: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a  it-sqlite3c.tcl.
4e90: 0a 23 20 52 75 6c 65 20 74 6f 20 62 75 69 6c 64  .# Rule to build
4ea0: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f   the amalgamatio
4eb0: 6e 0a 23 0a 73 71 6c 69 74 65 33 2e 6c 6f 3a 09  n.#.sqlite3.lo:.
4ec0: 73 71 6c 69 74 65 33 2e 63 0a 09 24 28 4c 54 43  sqlite3.c..$(LTC
4ed0: 4f 4d 50 49 4c 45 29 20 2d 63 20 73 71 6c 69 74  OMPILE) -c sqlit
4ee0: 65 33 2e 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f  e3.c..# Rules to
4ef0: 20 62 75 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e   build the LEMON
4f00: 20 63 6f 6d 70 69 6c 65 72 20 67 65 6e 65 72 61   compiler genera
4f10: 74 6f 72 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09  tor.#.lempar.c:.
4f20: 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 6d 70 61  $(TOP)\src\lempa
4f30: 72 2e 63 0a 09 63 6f 70 79 20 24 28 54 4f 50 29  r.c..copy $(TOP)
4f40: 5c 73 72 63 5c 6c 65 6d 70 61 72 2e 63 20 2e 0a  \src\lempar.c ..
4f50: 0a 6c 65 6d 6f 6e 2e 65 78 65 3a 09 24 28 54 4f  .lemon.exe:.$(TO
4f60: 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20  P)\tool\lemon.c 
4f70: 6c 65 6d 70 61 72 2e 63 0a 09 24 28 42 43 43 29  lempar.c..$(BCC)
4f80: 20 2d 44 61 63 63 65 73 73 3d 5f 61 63 63 65 73   -Daccess=_acces
4f90: 73 20 2d 46 65 24 40 20 24 28 54 4f 50 29 5c 74  s -Fe$@ $(TOP)\t
4fa0: 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69 6e  ool\lemon.c /lin
4fb0: 6b 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53 29  k $(NLTLIBPATHS)
4fc0: 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69  ..# Rules to bui
4fd0: 6c 64 20 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e  ld individual *.
4fe0: 6c 6f 20 66 69 6c 65 73 20 66 72 6f 6d 20 67 65  lo files from ge
4ff0: 6e 65 72 61 74 65 64 20 2a 2e 63 20 66 69 6c 65  nerated *.c file
5000: 73 2e 20 54 68 69 73 0a 23 20 61 70 70 6c 69 65  s. This.# applie
5010: 73 20 74 6f 3a 0a 23 0a 23 20 20 20 20 20 70 61  s to:.#.#     pa
5020: 72 73 65 2e 6c 6f 0a 23 20 20 20 20 20 6f 70 63  rse.lo.#     opc
5030: 6f 64 65 73 2e 6c 6f 0a 23 0a 70 61 72 73 65 2e  odes.lo.#.parse.
5040: 6c 6f 3a 09 70 61 72 73 65 2e 63 20 24 28 48 44  lo:.parse.c $(HD
5050: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
5060: 20 2d 63 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63   -c parse.c..opc
5070: 6f 64 65 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73  odes.lo:.opcodes
5080: 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  .c..$(LTCOMPILE)
5090: 20 2d 63 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 23   -c opcodes.c..#
50a0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build 
50b0: 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20  individual *.lo 
50c0: 66 69 6c 65 73 20 66 72 6f 6d 20 66 69 6c 65 73  files from files
50d0: 20 69 6e 20 74 68 65 20 73 72 63 20 64 69 72 65   in the src dire
50e0: 63 74 6f 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c  ctory..#.alter.l
50f0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c  o:.$(TOP)\src\al
5100: 74 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ter.c $(HDR)..$(
5110: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5120: 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63  TOP)\src\alter.c
5130: 0a 0a 61 6e 61 6c 79 7a 65 2e 6c 6f 3a 09 24 28  ..analyze.lo:.$(
5140: 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65  TOP)\src\analyze
5150: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5160: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5170: 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 0a  )\src\analyze.c.
5180: 0a 61 74 74 61 63 68 2e 6c 6f 3a 09 24 28 54 4f  .attach.lo:.$(TO
5190: 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 20  P)\src\attach.c 
51a0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
51b0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
51c0: 72 63 5c 61 74 74 61 63 68 2e 63 0a 0a 61 75 74  rc\attach.c..aut
51d0: 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  h.lo:.$(TOP)\src
51e0: 5c 61 75 74 68 2e 63 20 24 28 48 44 52 29 0a 09  \auth.c $(HDR)..
51f0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 
5200: 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e  $(TOP)\src\auth.
5210: 63 0a 0a 62 61 63 6b 75 70 2e 6c 6f 3a 09 24 28  c..backup.lo:.$(
5220: 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e  TOP)\src\backup.
5230: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
5240: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
5250: 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 0a 0a 62  \src\backup.c..b
5260: 69 74 76 65 63 2e 6c 6f 3a 09 24 28 54 4f 50 29  itvec.lo:.$(TOP)
5270: 5c 73 72 63 5c 62 69 74 76 65 63 2e 63 20 24 28  \src\bitvec.c $(
5280: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5290: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
52a0: 5c 62 69 74 76 65 63 2e 63 0a 0a 62 74 6d 75 74  \bitvec.c..btmut
52b0: 65 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ex.lo:.$(TOP)\sr
52c0: 63 5c 62 74 6d 75 74 65 78 2e 63 20 24 28 48 44  c\btmutex.c $(HD
52d0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
52e0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62   -c $(TOP)\src\b
52f0: 74 6d 75 74 65 78 2e 63 0a 0a 62 74 72 65 65 2e  tmutex.c..btree.
5300: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62  lo:.$(TOP)\src\b
5310: 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24 28  tree.c $(HDR) $(
5320: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68  TOP)\src\pager.h
5330: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
5340: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72  c $(TOP)\src\btr
5350: 65 65 2e 63 0a 0a 62 75 69 6c 64 2e 6c 6f 3a 09  ee.c..build.lo:.
5360: 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64  $(TOP)\src\build
5370: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5380: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5390: 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63  )\src\build.c..c
53a0: 61 6c 6c 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f  allback.lo:.$(TO
53b0: 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e  P)\src\callback.
53c0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
53d0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
53e0: 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a  \src\callback.c.
53f0: 0a 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28  .complete.lo:.$(
5400: 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74  TOP)\src\complet
5410: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
5420: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5430: 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e  P)\src\complete.
5440: 63 0a 0a 63 74 69 6d 65 2e 6c 6f 3a 09 24 28 54  c..ctime.lo:.$(T
5450: 4f 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20  OP)\src\ctime.c 
5460: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5470: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5480: 72 63 5c 63 74 69 6d 65 2e 63 0a 0a 64 61 74 65  rc\ctime.c..date
5490: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
54a0: 64 61 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24  date.c $(HDR)..$
54b0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
54c0: 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63  (TOP)\src\date.c
54d0: 0a 0a 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54  ..delete.lo:.$(T
54e0: 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63  OP)\src\delete.c
54f0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5500: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5510: 73 72 63 5c 64 65 6c 65 74 65 2e 63 0a 0a 65 78  src\delete.c..ex
5520: 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  pr.lo:.$(TOP)\sr
5530: 63 5c 65 78 70 72 2e 63 20 24 28 48 44 52 29 0a  c\expr.c $(HDR).
5540: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5550: 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72   $(TOP)\src\expr
5560: 2e 63 0a 0a 66 61 75 6c 74 2e 6c 6f 3a 09 24 28  .c..fault.lo:.$(
5570: 54 4f 50 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63  TOP)\src\fault.c
5580: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5590: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
55a0: 73 72 63 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65  src\fault.c..fke
55b0: 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  y.lo:.$(TOP)\src
55c0: 5c 66 6b 65 79 2e 63 20 24 28 48 44 52 29 0a 09  \fkey.c $(HDR)..
55d0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 
55e0: 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e  $(TOP)\src\fkey.
55f0: 63 0a 0a 66 75 6e 63 2e 6c 6f 3a 09 24 28 54 4f  c..func.lo:.$(TO
5600: 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 24 28  P)\src\func.c $(
5610: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5620: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5630: 5c 66 75 6e 63 2e 63 0a 0a 67 6c 6f 62 61 6c 2e  \func.c..global.
5640: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 67  lo:.$(TOP)\src\g
5650: 6c 6f 62 61 6c 2e 63 20 24 28 48 44 52 29 0a 09  lobal.c $(HDR)..
5660: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 
5670: 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61  $(TOP)\src\globa
5680: 6c 2e 63 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 28  l.c..hash.lo:.$(
5690: 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 20  TOP)\src\hash.c 
56a0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
56b0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
56c0: 72 63 5c 68 61 73 68 2e 63 0a 0a 69 6e 73 65 72  rc\hash.c..inser
56d0: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  t.lo:.$(TOP)\src
56e0: 5c 69 6e 73 65 72 74 2e 63 20 24 28 48 44 52 29  \insert.c $(HDR)
56f0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
5700: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73  c $(TOP)\src\ins
5710: 65 72 74 2e 63 0a 0a 6a 6f 75 72 6e 61 6c 2e 6c  ert.c..journal.l
5720: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6a 6f  o:.$(TOP)\src\jo
5730: 75 72 6e 61 6c 2e 63 20 24 28 48 44 52 29 0a 09  urnal.c $(HDR)..
5740: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 
5750: 24 28 54 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e  $(TOP)\src\journ
5760: 61 6c 2e 63 0a 0a 6c 65 67 61 63 79 2e 6c 6f 3a  al.c..legacy.lo:
5770: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61  .$(TOP)\src\lega
5780: 63 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  cy.c $(HDR)..$(L
5790: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
57a0: 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63  OP)\src\legacy.c
57b0: 0a 0a 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28  ..loadext.lo:.$(
57c0: 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74  TOP)\src\loadext
57d0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
57e0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
57f0: 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 0a  )\src\loadext.c.
5800: 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29  .main.lo:.$(TOP)
5810: 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 24 28 48 44  \src\main.c $(HD
5820: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
5830: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m
5840: 61 69 6e 2e 63 0a 0a 6d 61 6c 6c 6f 63 2e 6c 6f  ain.c..malloc.lo
5850: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c  :.$(TOP)\src\mal
5860: 6c 6f 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28  loc.c $(HDR)..$(
5870: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5880: 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e  TOP)\src\malloc.
5890: 63 0a 0a 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f  c..mem0.lo:.$(TO
58a0: 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28  P)\src\mem0.c $(
58b0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
58c0: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
58d0: 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f  \mem0.c..mem1.lo
58e0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  :.$(TOP)\src\mem
58f0: 31 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  1.c $(HDR)..$(LT
5900: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5910: 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 0a 0a 6d  P)\src\mem1.c..m
5920: 65 6d 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  em2.lo:.$(TOP)\s
5930: 72 63 5c 6d 65 6d 32 2e 63 20 24 28 48 44 52 29  rc\mem2.c $(HDR)
5940: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
5950: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  c $(TOP)\src\mem
5960: 32 2e 63 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28  2.c..mem3.lo:.$(
5970: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20  TOP)\src\mem3.c 
5980: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5990: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
59a0: 72 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e  rc\mem3.c..mem5.
59b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d  lo:.$(TOP)\src\m
59c0: 65 6d 35 2e 63 20 24 28 48 44 52 29 0a 09 24 28  em5.c $(HDR)..$(
59d0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
59e0: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 0a  TOP)\src\mem5.c.
59f0: 0a 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09  .memjournal.lo:.
5a00: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f  $(TOP)\src\memjo
5a10: 75 72 6e 61 6c 2e 63 20 24 28 48 44 52 29 0a 09  urnal.c $(HDR)..
5a20: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 
5a30: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f  $(TOP)\src\memjo
5a40: 75 72 6e 61 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c  urnal.c..mutex.l
5a50: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75  o:.$(TOP)\src\mu
5a60: 74 65 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28  tex.c $(HDR)..$(
5a70: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5a80: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63  TOP)\src\mutex.c
5a90: 0a 0a 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a  ..mutex_noop.lo:
5aa0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65  .$(TOP)\src\mute
5ab0: 78 5f 6e 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a  x_noop.c $(HDR).
5ac0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5ad0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute
5ae0: 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d 75 74 65 78 5f  x_noop.c..mutex_
5af0: 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  unix.lo:.$(TOP)\
5b00: 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63  src\mutex_unix.c
5b10: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5b20: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5b30: 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63  src\mutex_unix.c
5b40: 0a 0a 6d 75 74 65 78 5f 77 33 32 2e 6c 6f 3a 09  ..mutex_w32.lo:.
5b50: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex
5b60: 5f 77 33 32 2e 63 20 24 28 48 44 52 29 0a 09 24  _w32.c $(HDR)..$
5b70: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5b80: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
5b90: 77 33 32 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f  w32.c..notify.lo
5ba0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74  :.$(TOP)\src\not
5bb0: 69 66 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ify.c $(HDR)..$(
5bc0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5bd0: 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e  TOP)\src\notify.
5be0: 63 0a 0a 70 61 67 65 72 2e 6c 6f 3a 09 24 28 54  c..pager.lo:.$(T
5bf0: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20  OP)\src\pager.c 
5c00: 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72  $(HDR) $(TOP)\sr
5c10: 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c 54 43  c\pager.h..$(LTC
5c20: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5c30: 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 0a 0a 70  )\src\pager.c..p
5c40: 63 61 63 68 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  cache.lo:.$(TOP)
5c50: 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 20 24 28  \src\pcache.c $(
5c60: 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c  HDR) $(TOP)\src\
5c70: 70 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f  pcache.h..$(LTCO
5c80: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
5c90: 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 0a 0a 70  \src\pcache.c..p
5ca0: 63 61 63 68 65 31 2e 6c 6f 3a 09 24 28 54 4f 50  cache1.lo:.$(TOP
5cb0: 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20  )\src\pcache1.c 
5cc0: 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72  $(HDR) $(TOP)\sr
5cd0: 63 5c 70 63 61 63 68 65 2e 68 0a 09 24 28 4c 54  c\pcache.h..$(LT
5ce0: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5cf0: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63  P)\src\pcache1.c
5d00: 0a 0a 6f 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  ..os.lo:.$(TOP)\
5d10: 73 72 63 5c 6f 73 2e 63 20 24 28 48 44 52 29 0a  src\os.c $(HDR).
5d20: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5d30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63   $(TOP)\src\os.c
5d40: 0a 0a 6f 73 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28  ..os_unix.lo:.$(
5d50: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78  TOP)\src\os_unix
5d60: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5d70: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5d80: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a  )\src\os_unix.c.
5d90: 0a 6f 73 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f  .os_win.lo:.$(TO
5da0: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20  P)\src\os_win.c 
5db0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5dc0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5dd0: 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61  rc\os_win.c..pra
5de0: 67 6d 61 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  gma.lo:.$(TOP)\s
5df0: 72 63 5c 70 72 61 67 6d 61 2e 63 20 24 28 48 44  rc\pragma.c $(HD
5e00: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
5e10: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70   -c $(TOP)\src\p
5e20: 72 61 67 6d 61 2e 63 0a 0a 70 72 65 70 61 72 65  ragma.c..prepare
5e30: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
5e40: 70 72 65 70 61 72 65 2e 63 20 24 28 48 44 52 29  prepare.c $(HDR)
5e50: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
5e60: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65  c $(TOP)\src\pre
5e70: 70 61 72 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c  pare.c..printf.l
5e80: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72  o:.$(TOP)\src\pr
5e90: 69 6e 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24  intf.c $(HDR)..$
5ea0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5eb0: 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66  (TOP)\src\printf
5ec0: 2e 63 0a 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24  .c..random.lo:.$
5ed0: 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d  (TOP)\src\random
5ee0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5ef0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5f00: 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 0a 0a  )\src\random.c..
5f10: 72 65 73 6f 6c 76 65 2e 6c 6f 3a 09 24 28 54 4f  resolve.lo:.$(TO
5f20: 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63  P)\src\resolve.c
5f30: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5f40: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5f50: 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 0a 0a 72  src\resolve.c..r
5f60: 6f 77 73 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  owset.lo:.$(TOP)
5f70: 5c 73 72 63 5c 72 6f 77 73 65 74 2e 63 20 24 28  \src\rowset.c $(
5f80: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5f90: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5fa0: 5c 72 6f 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63  \rowset.c..selec
5fb0: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  t.lo:.$(TOP)\src
5fc0: 5c 73 65 6c 65 63 74 2e 63 20 24 28 48 44 52 29  \select.c $(HDR)
5fd0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
5fe0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c  c $(TOP)\src\sel
5ff0: 65 63 74 2e 63 0a 0a 73 74 61 74 75 73 2e 6c 6f  ect.c..status.lo
6000: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61  :.$(TOP)\src\sta
6010: 74 75 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28  tus.c $(HDR)..$(
6020: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
6030: 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75 73 2e  TOP)\src\status.
6040: 63 0a 0a 74 61 62 6c 65 2e 6c 6f 3a 09 24 28 54  c..table.lo:.$(T
6050: 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20  OP)\src\table.c 
6060: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
6070: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
6080: 72 63 5c 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65  rc\table.c..thre
6090: 61 64 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ads.lo:.$(TOP)\s
60a0: 72 63 5c 74 68 72 65 61 64 73 2e 63 20 24 28 48  rc\threads.c $(H
60b0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
60c0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
60d0: 74 68 72 65 61 64 73 2e 63 0a 0a 74 6f 6b 65 6e  threads.c..token
60e0: 69 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ize.lo:.$(TOP)\s
60f0: 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20 6b 65  rc\tokenize.c ke
6100: 79 77 6f 72 64 68 61 73 68 2e 68 20 24 28 48 44  ywordhash.h $(HD
6110: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6120: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t
6130: 6f 6b 65 6e 69 7a 65 2e 63 0a 0a 74 72 69 67 67  okenize.c..trigg
6140: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  er.lo:.$(TOP)\sr
6150: 63 5c 74 72 69 67 67 65 72 2e 63 20 24 28 48 44  c\trigger.c $(HD
6160: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6170: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t
6180: 72 69 67 67 65 72 2e 63 0a 0a 75 70 64 61 74 65  rigger.c..update
6190: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
61a0: 75 70 64 61 74 65 2e 63 20 24 28 48 44 52 29 0a  update.c $(HDR).
61b0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
61c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 64 61   $(TOP)\src\upda
61d0: 74 65 2e 63 0a 0a 75 74 66 2e 6c 6f 3a 09 24 28  te.c..utf.lo:.$(
61e0: 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 20 24  TOP)\src\utf.c $
61f0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6200: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
6210: 63 5c 75 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f  c\utf.c..util.lo
6220: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69  :.$(TOP)\src\uti
6230: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  l.c $(HDR)..$(LT
6240: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
6250: 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 0a 0a 76  P)\src\util.c..v
6260: 61 63 75 75 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29  acuum.lo:.$(TOP)
6270: 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 20 24 28  \src\vacuum.c $(
6280: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
6290: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
62a0: 5c 76 61 63 75 75 6d 2e 63 0a 0a 76 64 62 65 2e  \vacuum.c..vdbe.
62b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76  lo:.$(TOP)\src\v
62c0: 64 62 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  dbe.c $(HDR)..$(
62d0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
62e0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 0a  TOP)\src\vdbe.c.
62f0: 0a 76 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28 54  .vdbeapi.lo:.$(T
6300: 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e  OP)\src\vdbeapi.
6310: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
6320: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
6330: 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 0a 0a  \src\vdbeapi.c..
6340: 76 64 62 65 61 75 78 2e 6c 6f 3a 09 24 28 54 4f  vdbeaux.lo:.$(TO
6350: 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63  P)\src\vdbeaux.c
6360: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
6370: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
6380: 73 72 63 5c 76 64 62 65 61 75 78 2e 63 0a 0a 76  src\vdbeaux.c..v
6390: 64 62 65 62 6c 6f 62 2e 6c 6f 3a 09 24 28 54 4f  dbeblob.lo:.$(TO
63a0: 50 29 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e  P)\src\vdbeblob.
63b0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
63c0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
63d0: 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a  \src\vdbeblob.c.
63e0: 0a 76 64 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54  .vdbemem.lo:.$(T
63f0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e  OP)\src\vdbemem.
6400: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
6410: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
6420: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a  \src\vdbemem.c..
6430: 76 64 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54  vdbesort.lo:.$(T
6440: 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74  OP)\src\vdbesort
6450: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
6460: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
6470: 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63  )\src\vdbesort.c
6480: 0a 0a 76 64 62 65 74 72 61 63 65 2e 6c 6f 3a 09  ..vdbetrace.lo:.
6490: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74  $(TOP)\src\vdbet
64a0: 72 61 63 65 2e 63 20 24 28 48 44 52 29 0a 09 24  race.c $(HDR)..$
64b0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
64c0: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72  (TOP)\src\vdbetr
64d0: 61 63 65 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09  ace.c..vtab.lo:.
64e0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e  $(TOP)\src\vtab.
64f0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
6500: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
6510: 5c 73 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c  \src\vtab.c..wal
6520: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
6530: 77 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28  wal.c $(HDR)..$(
6540: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
6550: 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 0a 0a  TOP)\src\wal.c..
6560: 77 61 6c 6b 65 72 2e 6c 6f 3a 09 24 28 54 4f 50  walker.lo:.$(TOP
6570: 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 24  )\src\walker.c $
6580: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6590: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
65a0: 63 5c 77 61 6c 6b 65 72 2e 63 0a 0a 77 68 65 72  c\walker.c..wher
65b0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src
65c0: 5c 77 68 65 72 65 2e 63 20 24 28 48 44 52 29 0a  \where.c $(HDR).
65d0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
65e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher
65f0: 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2e 6c  e.c..tclsqlite.l
6600: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 63  o:.$(TOP)\src\tc
6610: 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44 52 29  lsqlite.c $(HDR)
6620: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6630: 44 55 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31  DUSE_TCL_STUBS=1
6640: 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20   -DBUILD_sqlite 
6650: 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d  -I$(TCLINCDIR) -
6660: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c  c $(TOP)\src\tcl
6670: 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c  sqlite.c..tclsql
6680: 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28  ite-shell.lo:.$(
6690: 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69  TOP)\src\tclsqli
66a0: 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  te.c $(HDR)..$(L
66b0: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 54 43 4c 53  TCOMPILE) -DTCLS
66c0: 48 3d 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69  H=1 -DBUILD_sqli
66d0: 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52  te -I$(TCLINCDIR
66e0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
66f0: 74 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c  tclsqlite.c..tcl
6700: 73 71 6c 69 74 65 33 2e 65 78 65 3a 09 74 63 6c  sqlite3.exe:.tcl
6710: 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20  sqlite-shell.lo 
6720: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09  libsqlite3.lib..
6730: 24 28 4c 54 4c 49 4e 4b 29 20 74 63 6c 73 71 6c  $(LTLINK) tclsql
6740: 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 5c 0a 09  ite-shell.lo \..
6750: 09 2f 6c 69 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f  ./link $(LTLINKO
6760: 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48  PTS) $(LTLIBPATH
6770: 53 29 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  S) libsqlite3.li
6780: 62 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c  b $(LTLIBS) $(TL
6790: 49 42 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f  IBS)..# Rules to
67a0: 20 62 75 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63   build opcodes.c
67b0: 20 61 6e 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23   and opcodes.h.#
67c0: 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f  .opcodes.c:.opco
67d0: 64 65 73 2e 68 20 24 28 54 4f 50 29 5c 6d 6b 6f  des.h $(TOP)\mko
67e0: 70 63 6f 64 65 63 2e 61 77 6b 0a 09 24 28 4e 41  pcodec.awk..$(NA
67f0: 57 4b 29 20 2d 66 20 24 28 54 4f 50 29 5c 6d 6b  WK) -f $(TOP)\mk
6800: 6f 70 63 6f 64 65 63 2e 61 77 6b 20 6f 70 63 6f  opcodec.awk opco
6810: 64 65 73 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e  des.h > opcodes.
6820: 63 0a 0a 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61  c..opcodes.h:.pa
6830: 72 73 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63  rse.h $(TOP)\src
6840: 5c 76 64 62 65 2e 63 20 24 28 54 4f 50 29 5c 6d  \vdbe.c $(TOP)\m
6850: 6b 6f 70 63 6f 64 65 68 2e 61 77 6b 0a 09 74 79  kopcodeh.awk..ty
6860: 70 65 20 70 61 72 73 65 2e 68 20 24 28 54 4f 50  pe parse.h $(TOP
6870: 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 7c 20 24  )\src\vdbe.c | $
6880: 28 4e 41 57 4b 29 20 2d 66 20 24 28 54 4f 50 29  (NAWK) -f $(TOP)
6890: 5c 6d 6b 6f 70 63 6f 64 65 68 2e 61 77 6b 20 3e  \mkopcodeh.awk >
68a0: 20 6f 70 63 6f 64 65 73 2e 68 0a 0a 23 20 52 75   opcodes.h..# Ru
68b0: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 70 61 72  les to build par
68c0: 73 65 2e 63 20 61 6e 64 20 70 61 72 73 65 2e 68  se.c and parse.h
68d0: 20 2d 20 74 68 65 20 6f 75 74 70 75 74 73 20 6f   - the outputs o
68e0: 66 20 6c 65 6d 6f 6e 2e 0a 23 0a 70 61 72 73 65  f lemon..#.parse
68f0: 2e 68 3a 09 70 61 72 73 65 2e 63 0a 0a 70 61 72  .h:.parse.c..par
6900: 73 65 2e 63 3a 09 24 28 54 4f 50 29 5c 73 72 63  se.c:.$(TOP)\src
6910: 5c 70 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65  \parse.y lemon.e
6920: 78 65 20 24 28 54 4f 50 29 5c 61 64 64 6f 70 63  xe $(TOP)\addopc
6930: 6f 64 65 73 2e 61 77 6b 0a 09 64 65 6c 20 2f 51  odes.awk..del /Q
6940: 20 70 61 72 73 65 2e 79 20 70 61 72 73 65 2e 68   parse.y parse.h
6950: 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 0a 09 63   parse.h.temp..c
6960: 6f 70 79 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  opy $(TOP)\src\p
6970: 61 72 73 65 2e 79 20 2e 0a 09 2e 5c 6c 65 6d 6f  arse.y ....\lemo
6980: 6e 2e 65 78 65 20 24 28 4f 50 54 5f 46 45 41 54  n.exe $(OPT_FEAT
6990: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT
69a0: 53 29 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65  S) parse.y..move
69b0: 20 70 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68   parse.h parse.h
69c0: 2e 74 65 6d 70 0a 09 24 28 4e 41 57 4b 29 20 2d  .temp..$(NAWK) -
69d0: 66 20 24 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f  f $(TOP)\addopco
69e0: 64 65 73 2e 61 77 6b 20 70 61 72 73 65 2e 68 2e  des.awk parse.h.
69f0: 74 65 6d 70 20 3e 20 70 61 72 73 65 2e 68 0a 0a  temp > parse.h..
6a00: 73 71 6c 69 74 65 33 2e 68 3a 09 24 28 54 4f 50  sqlite3.h:.$(TOP
6a10: 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69  )\src\sqlite.h.i
6a20: 6e 20 24 28 54 4f 50 29 5c 6d 61 6e 69 66 65 73  n $(TOP)\manifes
6a30: 74 2e 75 75 69 64 20 24 28 54 4f 50 29 5c 56 45  t.uuid $(TOP)\VE
6a40: 52 53 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43  RSION..$(TCLSH_C
6a50: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\
6a60: 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 24  mksqlite3h.tcl $
6a70: 28 54 4f 50 29 20 3e 20 73 71 6c 69 74 65 33 2e  (TOP) > sqlite3.
6a80: 68 0a 0a 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  h..mkkeywordhash
6a90: 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too
6aa0: 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e  l\mkkeywordhash.
6ab0: 63 0a 09 24 28 42 43 43 29 20 2d 46 65 24 40 20  c..$(BCC) -Fe$@ 
6ac0: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL
6ad0: 41 47 53 29 20 24 28 4f 50 54 53 29 20 24 28 54  AGS) $(OPTS) $(T
6ae0: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f  OP)\tool\mkkeywo
6af0: 72 64 68 61 73 68 2e 63 20 2f 6c 69 6e 6b 20 24  rdhash.c /link $
6b00: 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 6b  (NLTLIBPATHS)..k
6b10: 65 79 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 28  eywordhash.h:.$(
6b20: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77  TOP)\tool\mkkeyw
6b30: 6f 72 64 68 61 73 68 2e 63 20 6d 6b 6b 65 79 77  ordhash.c mkkeyw
6b40: 6f 72 64 68 61 73 68 2e 65 78 65 0a 09 2e 5c 6d  ordhash.exe...\m
6b50: 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65  kkeywordhash.exe
6b60: 20 3e 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68   > keywordhash.h
6b70: 0a 0a 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62  ....# Rules to b
6b80: 75 69 6c 64 20 74 68 65 20 65 78 74 65 6e 73 69  uild the extensi
6b90: 6f 6e 20 6f 62 6a 65 63 74 73 2e 0a 23 0a 69 63  on objects..#.ic
6ba0: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  u.lo:.$(TOP)\ext
6bb0: 5c 69 63 75 5c 69 63 75 2e 63 20 24 28 48 44 52  \icu\icu.c $(HDR
6bc0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
6bd0: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
6be0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP
6bf0: 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 0a  )\ext\icu\icu.c.
6c00: 0a 66 74 73 32 2e 6c 6f 3a 09 24 28 54 4f 50 29  .fts2.lo:.$(TOP)
6c10: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63  \ext\fts2\fts2.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 2e 63 0a 0a 66 74 73 32 5f 68 61  \fts2.c..fts2_ha
6c70: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  sh.lo:.$(TOP)\ex
6c80: 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68  t\fts2\fts2_hash
6c90: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
6ca0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6cb0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
6cc0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft
6cd0: 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63 0a 0a  s2\fts2_hash.c..
6ce0: 66 74 73 32 5f 69 63 75 2e 6c 6f 3a 09 24 28 54  fts2_icu.lo:.$(T
6cf0: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
6d00: 32 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20 24  2_icu.c $(HDR) $
6d10: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO
6d20: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
6d30: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e
6d40: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75  xt\fts2\fts2_icu
6d50: 2e 63 0a 0a 66 74 73 32 5f 70 6f 72 74 65 72 2e  .c..fts2_porter.
6d60: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
6d70: 74 73 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e  ts2\fts2_porter.
6d80: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR) $(EXTHD
6d90: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6da0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
6db0: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts
6dc0: 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 0a  2\fts2_porter.c.
6dd0: 0a 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  .fts2_tokenizer.
6de0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
6df0: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  ts2\fts2_tokeniz
6e00: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  er.c $(HDR) $(EX
6e10: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI
6e20: 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  LE) -DSQLITE_COR
6e30: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\
6e40: 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69  fts2\fts2_tokeni
6e50: 7a 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65  zer.c..fts2_toke
6e60: 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50  nizer1.lo:.$(TOP
6e70: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
6e80: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48  tokenizer1.c $(H
6e90: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
6ea0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
6eb0: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
6ec0: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
6ed0: 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a  2_tokenizer1.c..
6ee0: 66 74 73 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  fts3.lo:.$(TOP)\
6ef0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20  ext\fts3\fts3.c 
6f00: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR) $(EXTHDR)
6f10: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6f20: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c 
6f30: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
6f40: 66 74 73 33 2e 63 0a 0a 66 74 73 33 5f 61 75 78  fts3.c..fts3_aux
6f50: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
6f60: 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20  fts3\fts3_aux.c 
6f70: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR) $(EXTHDR)
6f80: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6f90: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c 
6fa0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
6fb0: 66 74 73 33 5f 61 75 78 2e 63 0a 0a 66 74 73 33  fts3_aux.c..fts3
6fc0: 5f 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  _expr.lo:.$(TOP)
6fd0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65  \ext\fts3\fts3_e
6fe0: 78 70 72 2e 63 20 24 28 48 44 52 29 20 24 28 45  xpr.c $(HDR) $(E
6ff0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP
7000: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ILE) -DSQLITE_CO
7010: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext
7020: 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e  \fts3\fts3_expr.
7030: 63 0a 0a 66 74 73 33 5f 68 61 73 68 2e 6c 6f 3a  c..fts3_hash.lo:
7040: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3
7050: 5c 66 74 73 33 5f 68 61 73 68 2e 63 20 24 28 48  \fts3_hash.c $(H
7060: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
7070: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
7080: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
7090: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
70a0: 33 5f 68 61 73 68 2e 63 0a 0a 66 74 73 33 5f 69  3_hash.c..fts3_i
70b0: 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  cu.lo:.$(TOP)\ex
70c0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e  t\fts3\fts3_icu.
70d0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR) $(EXTHD
70e0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
70f0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
7100: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts
7110: 33 5c 66 74 73 33 5f 69 63 75 2e 63 0a 0a 66 74  3\fts3_icu.c..ft
7120: 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 3a 09 24  s3_snippet.lo:.$
7130: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
7140: 74 73 33 5f 73 6e 69 70 70 65 74 2e 63 20 24 28  ts3_snippet.c $(
7150: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR)..
7160: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53  $(LTCOMPILE) -DS
7170: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $(
7180: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
7190: 73 33 5f 73 6e 69 70 70 65 74 2e 63 0a 0a 66 74  s3_snippet.c..ft
71a0: 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28  s3_porter.lo:.$(
71b0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
71c0: 73 33 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44  s3_porter.c $(HD
71d0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
71e0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c  LTCOMPILE) -DSQL
71f0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO
7200: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7210: 5f 70 6f 72 74 65 72 2e 63 0a 0a 66 74 73 33 5f  _porter.c..fts3_
7220: 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28  tokenizer.lo:.$(
7230: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
7240: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24  s3_tokenizer.c $
7250: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR).
7260: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44  .$(LTCOMPILE) -D
7270: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $
7280: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
7290: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a  ts3_tokenizer.c.
72a0: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31  .fts3_tokenizer1
72b0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
72c0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
72d0: 7a 65 72 31 2e 63 20 24 28 48 44 52 29 20 24 28  zer1.c $(HDR) $(
72e0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
72f0: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43  PILE) -DSQLITE_C
7300: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
7310: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
7320: 6e 69 7a 65 72 31 2e 63 0a 0a 66 74 73 33 5f 75  nizer1.c..fts3_u
7330: 6e 69 63 6f 64 65 2e 6c 6f 3a 09 24 28 54 4f 50  nicode.lo:.$(TOP
7340: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
7350: 75 6e 69 63 6f 64 65 2e 63 20 24 28 48 44 52 29  unicode.c $(HDR)
7360: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
7370: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
7380: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
7390: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75  \ext\fts3\fts3_u
73a0: 6e 69 63 6f 64 65 2e 63 0a 0a 66 74 73 33 5f 75  nicode.c..fts3_u
73b0: 6e 69 63 6f 64 65 32 2e 6c 6f 3a 09 24 28 54 4f  nicode2.lo:.$(TO
73c0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
73d0: 5f 75 6e 69 63 6f 64 65 32 2e 63 20 24 28 48 44  _unicode2.c $(HD
73e0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
73f0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c  LTCOMPILE) -DSQL
7400: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO
7410: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7420: 5f 75 6e 69 63 6f 64 65 32 2e 63 0a 0a 66 74 73  _unicode2.c..fts
7430: 33 5f 77 72 69 74 65 2e 6c 6f 3a 09 24 28 54 4f  3_write.lo:.$(TO
7440: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7450: 5f 77 72 69 74 65 2e 63 20 24 28 48 44 52 29 20  _write.c $(HDR) 
7460: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
7470: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45  OMPILE) -DSQLITE
7480: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
7490: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72  ext\fts3\fts3_wr
74a0: 69 74 65 2e 63 0a 0a 72 74 72 65 65 2e 6c 6f 3a  ite.c..rtree.lo:
74b0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65  .$(TOP)\ext\rtre
74c0: 65 5c 72 74 72 65 65 2e 63 20 24 28 48 44 52 29  e\rtree.c $(HDR)
74d0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
74e0: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
74f0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
7500: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
7510: 2e 63 0a 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20  .c...# Rules to 
7520: 62 75 69 6c 64 20 74 68 65 20 27 74 65 73 74 66  build the 'testf
7530: 69 78 74 75 72 65 27 20 61 70 70 6c 69 63 61 74  ixture' applicat
7540: 69 6f 6e 2e 0a 23 0a 23 20 49 66 20 75 73 69 6e  ion..#.# If usin
7550: 67 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69  g the amalgamati
7560: 6f 6e 2c 20 75 73 65 20 73 71 6c 69 74 65 33 2e  on, use sqlite3.
7570: 63 20 64 69 72 65 63 74 6c 79 20 74 6f 20 62 75  c directly to bu
7580: 69 6c 64 20 74 68 65 20 74 65 73 74 0a 23 20 66  ild the test.# f
7590: 69 78 74 75 72 65 2e 20 20 4f 74 68 65 72 77 69  ixture.  Otherwi
75a0: 73 65 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20  se link against 
75b0: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 2e 20  libsqlite3.lib. 
75c0: 20 28 54 68 69 73 20 64 69 73 74 69 6e 63 74 69   (This distincti
75d0: 6f 6e 20 69 73 0a 23 20 6e 65 63 65 73 73 61 72  on is.# necessar
75e0: 79 20 62 65 63 61 75 73 65 20 74 68 65 20 74 65  y because the te
75f0: 73 74 20 66 69 78 74 75 72 65 20 72 65 71 75 69  st fixture requi
7600: 72 65 73 20 6e 6f 6e 2d 41 50 49 20 73 79 6d 62  res non-API symb
7610: 6f 6c 73 20 77 68 69 63 68 20 61 72 65 0a 23 20  ols which are.# 
7620: 68 69 64 64 65 6e 20 77 68 65 6e 20 74 68 65 20  hidden when the 
7630: 6c 69 62 72 61 72 79 20 69 73 20 62 75 69 6c 74  library is built
7640: 20 76 69 61 20 74 68 65 20 61 6d 61 6c 67 61 6d   via the amalgam
7650: 61 74 69 6f 6e 29 2e 0a 23 0a 54 45 53 54 46 49  ation)..#.TESTFI
7660: 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 2d 44  XTURE_FLAGS = -D
7670: 54 43 4c 53 48 3d 31 20 2d 44 53 51 4c 49 54 45  TCLSH=1 -DSQLITE
7680: 5f 54 45 53 54 3d 31 20 2d 44 53 51 4c 49 54 45  _TEST=1 -DSQLITE
7690: 5f 43 52 41 53 48 5f 54 45 53 54 3d 31 0a 54 45  _CRASH_TEST=1.TE
76a0: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20  STFIXTURE_FLAGS 
76b0: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  = $(TESTFIXTURE_
76c0: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
76d0: 53 45 52 56 45 52 3d 31 20 2d 44 53 51 4c 49 54  SERVER=1 -DSQLIT
76e0: 45 5f 50 52 49 56 41 54 45 3d 22 22 20 2d 44 53  E_PRIVATE="" -DS
76f0: 51 4c 49 54 45 5f 43 4f 52 45 0a 0a 54 45 53 54  QLITE_CORE..TEST
7700: 46 49 58 54 55 52 45 5f 53 52 43 30 20 3d 20 24  FIXTURE_SRC0 = $
7710: 28 54 45 53 54 53 52 43 32 29 20 6c 69 62 73 71  (TESTSRC2) libsq
7720: 6c 69 74 65 33 2e 6c 69 62 0a 54 45 53 54 46 49  lite3.lib.TESTFI
7730: 58 54 55 52 45 5f 53 52 43 31 20 3d 20 73 71 6c  XTURE_SRC1 = sql
7740: 69 74 65 33 2e 63 0a 21 49 46 20 24 28 55 53 45  ite3.c.!IF $(USE
7750: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d  _AMALGAMATION)==
7760: 30 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52  0.TESTFIXTURE_SR
7770: 43 20 3d 20 24 28 54 45 53 54 53 52 43 29 20 24  C = $(TESTSRC) $
7780: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c  (TOP)\src\tclsql
7790: 69 74 65 2e 63 20 24 28 54 45 53 54 46 49 58 54  ite.c $(TESTFIXT
77a0: 55 52 45 5f 53 52 43 30 29 0a 21 45 4c 53 45 0a  URE_SRC0).!ELSE.
77b0: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 20  TESTFIXTURE_SRC 
77c0: 3d 20 24 28 54 45 53 54 53 52 43 29 20 24 28 54  = $(TESTSRC) $(T
77d0: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
77e0: 65 2e 63 20 24 28 54 45 53 54 46 49 58 54 55 52  e.c $(TESTFIXTUR
77f0: 45 5f 53 52 43 31 29 0a 21 45 4e 44 49 46 0a 0a  E_SRC1).!ENDIF..
7800: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 3a  testfixture.exe:
7810: 09 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 53  .$(TESTFIXTURE_S
7820: 52 43 29 20 24 28 48 44 52 29 0a 09 24 28 4c 54  RC) $(HDR)..$(LT
7830: 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f 4e  LINK) -DSQLITE_N
7840: 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53 54 46  O_SYNC=1 $(TESTF
7850: 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 5c 0a  IXTURE_FLAGS) \.
7860: 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65  ..-DBUILD_sqlite
7870: 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20   -I$(TCLINCDIR) 
7880: 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54 55 52  \...$(TESTFIXTUR
7890: 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b  E_SRC) \.../link
78a0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24   $(LTLINKOPTS) $
78b0: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c  (LTLIBPATHS) $(L
78c0: 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a  TLIBS) $(TLIBS).
78d0: 0a 66 75 6c 6c 74 65 73 74 3a 09 74 65 73 74 66  .fulltest:.testf
78e0: 69 78 74 75 72 65 2e 65 78 65 20 73 71 6c 69 74  ixture.exe sqlit
78f0: 65 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 69  e3.exe...\testfi
7900: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29  xture.exe $(TOP)
7910: 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 0a 0a  \test\all.test..
7920: 73 6f 61 6b 74 65 73 74 3a 09 74 65 73 74 66 69  soaktest:.testfi
7930: 78 74 75 72 65 2e 65 78 65 20 73 71 6c 69 74 65  xture.exe sqlite
7940: 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 69 78  3.exe...\testfix
7950: 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\
7960: 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73  test\all.test -s
7970: 6f 61 6b 3d 31 0a 0a 74 65 73 74 3a 09 74 65 73  oak=1..test:.tes
7980: 74 66 69 78 74 75 72 65 2e 65 78 65 20 73 71 6c  tfixture.exe sql
7990: 69 74 65 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74  ite3.exe...\test
79a0: 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f  fixture.exe $(TO
79b0: 50 29 5c 74 65 73 74 5c 76 65 72 79 71 75 69 63  P)\test\veryquic
79c0: 6b 2e 74 65 73 74 0a 0a 73 71 6c 69 74 65 33 5f  k.test..sqlite3_
79d0: 61 6e 61 6c 79 7a 65 72 2e 63 3a 20 73 71 6c 69  analyzer.c: sqli
79e0: 74 65 33 2e 63 20 24 28 54 4f 50 29 5c 73 72 63  te3.c $(TOP)\src
79f0: 5c 74 65 73 74 5f 73 74 61 74 2e 63 20 24 28 54  \test_stat.c $(T
7a00: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
7a10: 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  e.c $(TOP)\tool\
7a20: 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 0a 09 63  spaceanal.tcl..c
7a30: 6f 70 79 20 73 71 6c 69 74 65 33 2e 63 20 2b 20  opy sqlite3.c + 
7a40: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_
7a50: 73 74 61 74 2e 63 20 2b 20 24 28 54 4f 50 29 5c  stat.c + $(TOP)\
7a60: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20  src\tclsqlite.c 
7a70: 24 40 0a 09 65 63 68 6f 20 73 74 61 74 69 63 20  $@..echo static 
7a80: 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 63 6c 73  const char *tcls
7a90: 68 5f 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64  h_main_loop(void
7aa0: 29 7b 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73  ){ >> $@..echo s
7ab0: 74 61 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72  tatic const char
7ac0: 20 2a 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e   *zMainloop = >>
7ad0: 20 24 40 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20   $@..$(NAWK) -f 
7ae0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74  $(TOP)\tool\tost
7af0: 72 2e 61 77 6b 20 24 28 54 4f 50 29 5c 74 6f 6f  r.awk $(TOP)\too
7b00: 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20  l\spaceanal.tcl 
7b10: 3e 3e 20 24 40 0a 09 65 63 68 6f 20 3b 20 72 65  >> $@..echo ; re
7b20: 74 75 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20  turn zMainloop; 
7b30: 7d 20 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33  } >> $@..sqlite3
7b40: 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73  _analyzer.exe:.s
7b50: 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
7b60: 63 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 42  c..$(LTLINK) -DB
7b70: 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 44 54 43  UILD_sqlite -DTC
7b80: 4c 53 48 3d 32 20 2d 49 24 28 54 43 4c 49 4e 43  LSH=2 -I$(TCLINC
7b90: 44 49 52 29 20 73 71 6c 69 74 65 33 5f 61 6e 61  DIR) sqlite3_ana
7ba0: 6c 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e  lyzer.c \.../lin
7bb0: 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20  k $(LTLINKOPTS) 
7bc0: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28  $(LTLIBPATHS) $(
7bd0: 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29  LTLIBS) $(TLIBS)
7be0: 0a 0a 63 6c 65 61 6e 3a 0a 09 64 65 6c 20 2f 51  ..clean:..del /Q
7bf0: 20 2a 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69   *.lo *.ilk *.li
7c00: 62 20 2a 2e 6f 62 6a 20 2a 2e 70 64 62 20 73 71  b *.obj *.pdb sq
7c10: 6c 69 74 65 33 2e 65 78 65 20 6c 69 62 73 71 6c  lite3.exe libsql
7c20: 69 74 65 33 2e 6c 69 62 0a 09 64 65 6c 20 2f 51  ite3.lib..del /Q
7c30: 20 2a 2e 64 61 20 2a 2e 62 62 20 2a 2e 62 62 67   *.da *.bb *.bbg
7c40: 20 67 6d 6f 6e 2e 6f 75 74 0a 09 64 65 6c 20 2f   gmon.out..del /
7c50: 51 20 73 71 6c 69 74 65 33 2e 68 20 6f 70 63 6f  Q sqlite3.h opco
7c60: 64 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68 0a  des.c opcodes.h.
7c70: 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e 2e 65 78  .del /Q lemon.ex
7c80: 65 20 6c 65 6d 70 61 72 2e 63 20 70 61 72 73 65  e lempar.c parse
7c90: 2e 2a 0a 09 64 65 6c 20 2f 51 20 6d 6b 6b 65 79  .*..del /Q mkkey
7ca0: 77 6f 72 64 68 61 73 68 2e 65 78 65 20 6b 65 79  wordhash.exe key
7cb0: 77 6f 72 64 68 61 73 68 2e 68 0a 09 2d 72 6d 64  wordhash.h..-rmd
7cc0: 69 72 20 2f 51 2f 53 20 2e 64 65 70 73 0a 09 2d  ir /Q/S .deps..-
7cd0: 72 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73  rmdir /Q/S .libs
7ce0: 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 71 75  ..-rmdir /Q/S qu
7cf0: 6f 74 61 32 61 0a 09 2d 72 6d 64 69 72 20 2f 51  ota2a..-rmdir /Q
7d00: 2f 53 20 71 75 6f 74 61 32 62 0a 09 2d 72 6d 64  /S quota2b..-rmd
7d10: 69 72 20 2f 51 2f 53 20 71 75 6f 74 61 32 63 0a  ir /Q/S quota2c.
7d20: 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 74 73 72  .-rmdir /Q/S tsr
7d30: 63 0a 09 64 65 6c 20 2f 51 20 2e 74 61 72 67 65  c..del /Q .targe
7d40: 74 5f 73 6f 75 72 63 65 0a 09 64 65 6c 20 2f 51  t_source..del /Q
7d50: 20 74 63 6c 73 71 6c 69 74 65 33 2e 65 78 65 0a   tclsqlite3.exe.
7d60: 09 64 65 6c 20 2f 51 20 74 65 73 74 66 69 78 74  .del /Q testfixt
7d70: 75 72 65 2e 65 78 65 20 74 65 73 74 66 69 78 74  ure.exe testfixt
7d80: 75 72 65 2e 65 78 70 20 74 65 73 74 2e 64 62 0a  ure.exp test.db.
7d90: 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e  .del /Q sqlite3.
7da0: 64 6c 6c 20 73 71 6c 69 74 65 33 2e 6c 69 62 20  dll sqlite3.lib 
7db0: 73 71 6c 69 74 65 33 2e 65 78 70 20 73 71 6c 69  sqlite3.exp sqli
7dc0: 74 65 33 2e 64 65 66 0a 09 64 65 6c 20 2f 51 20  te3.def..del /Q 
7dd0: 73 71 6c 69 74 65 33 2e 63 0a 09 64 65 6c 20 2f  sqlite3.c..del /
7de0: 51 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a  Q sqlite3_analyz
7df0: 65 72 2e 65 78 65 20 73 71 6c 69 74 65 33 5f 61  er.exe sqlite3_a
7e00: 6e 61 6c 79 7a 65 72 2e 65 78 70 20 73 71 6c 69  nalyzer.exp sqli
7e10: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a 0a  te3_analyzer.c..
7e20: 23 0a 23 20 57 69 6e 64 6f 77 73 20 73 65 63 74  #.# Windows sect
7e30: 69 6f 6e 0a 23 0a 64 6c 6c 3a 20 73 71 6c 69 74  ion.#.dll: sqlit
7e40: 65 33 2e 64 6c 6c 0a 0a 73 71 6c 69 74 65 33 2e  e3.dll..sqlite3.
7e50: 64 65 66 3a 20 6c 69 62 73 71 6c 69 74 65 33 2e  def: libsqlite3.
7e60: 6c 69 62 0a 09 65 63 68 6f 20 45 58 50 4f 52 54  lib..echo EXPORT
7e70: 53 20 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a  S > sqlite3.def.
7e80: 09 64 75 6d 70 62 69 6e 20 2f 61 6c 6c 20 6c 69  .dumpbin /all li
7e90: 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 5c 0a 09  bsqlite3.lib \..
7ea0: 09 7c 20 24 28 4e 41 57 4b 29 20 22 2f 20 31 20  .| $(NAWK) "/ 1 
7eb0: 5f 3f 73 71 6c 69 74 65 33 5f 2f 20 7b 20 73 75  _?sqlite3_/ { su
7ec0: 62 28 2f 5e 2e 2a 20 5f 3f 2f 2c 5c 22 5c 22 29  b(/^.* _?/,\"\")
7ed0: 3b 70 72 69 6e 74 20 7d 22 20 5c 0a 09 09 7c 20  ;print }" \...| 
7ee0: 73 6f 72 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e  sort >> sqlite3.
7ef0: 64 65 66 0a 0a 73 71 6c 69 74 65 33 2e 64 6c 6c  def..sqlite3.dll
7f00: 3a 20 24 28 4c 49 42 4f 42 4a 29 20 73 71 6c 69  : $(LIBOBJ) sqli
7f10: 74 65 33 2e 64 65 66 0a 09 24 28 4c 44 29 20 24  te3.def..$(LD) $
7f20: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI
7f30: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP
7f40: 41 54 48 53 29 20 2f 44 4c 4c 20 2f 44 45 46 3a  ATHS) /DLL /DEF:
7f50: 73 71 6c 69 74 65 33 2e 64 65 66 20 2f 4f 55 54  sqlite3.def /OUT
7f60: 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 28  :$@ $(LIBOBJ) $(
7f70: 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29  LTLIBS) $(TLIBS)
7f80: 0a                                               .