/ Hex Artifact Content
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

Artifact d2f83cd5e74d54f9e3bcd7a505ca5b356d7e7c68:


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 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69  his non-0 to ski
0320: 70 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20  p attempting to 
0330: 6c 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20  look for and/or 
0340: 6c 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63  link with the Tc
0350: 6c 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72  l.# runtime libr
0360: 61 72 79 2e 0a 23 0a 4e 4f 5f 54 43 4c 20 3d 20  ary..#.NO_TCL = 
0370: 30 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f  0..# Set this to
0380: 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61 74 65   non-0 to create
0390: 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e 0a 23   and use PDBs..#
03a0: 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 0a 23 20  .SYMBOLS = 1..# 
03b0: 53 65 74 20 74 68 69 73 20 74 6f 20 6f 6e 65 20  Set this to one 
03c0: 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  of the following
03d0: 20 76 61 6c 75 65 73 20 74 6f 20 65 6e 61 62 6c   values to enabl
03e0: 65 20 76 61 72 69 6f 75 73 20 64 65 62 75 67 67  e various debugg
03f0: 69 6e 67 0a 23 20 66 65 61 74 75 72 65 73 2e 20  ing.# features. 
0400: 20 45 61 63 68 20 6c 65 76 65 6c 20 69 6e 63 6c   Each level incl
0410: 75 64 65 73 20 74 68 65 20 64 65 62 75 67 67 69  udes the debuggi
0420: 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72 6f 6d 20  ng options from 
0430: 74 68 65 20 70 72 65 76 69 6f 75 73 0a 23 20 6c  the previous.# l
0440: 65 76 65 6c 73 2e 20 20 43 75 72 72 65 6e 74 6c  evels.  Currentl
0450: 79 2c 20 74 68 65 20 72 65 63 6f 67 6e 69 7a 65  y, the recognize
0460: 64 20 76 61 6c 75 65 73 20 66 6f 72 20 44 45 42  d values for DEB
0470: 55 47 20 61 72 65 3a 0a 23 0a 23 20 30 20 3d 3d  UG are:.#.# 0 ==
0480: 20 4e 44 45 42 55 47 3a 20 44 69 73 61 62 6c 65   NDEBUG: Disable
0490: 73 20 61 73 73 65 72 74 28 29 20 61 6e 64 20 6f  s assert() and o
04a0: 74 68 65 72 20 72 75 6e 74 69 6d 65 20 64 69 61  ther runtime dia
04b0: 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31 20 3d 3d  gnostics..# 1 ==
04c0: 20 44 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47   Disables NDEBUG
04d0: 20 61 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a   and all optimiz
04e0: 61 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20  ations and then 
04f0: 65 6e 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20  enables PDBs..# 
0500: 32 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55  2 == SQLITE_DEBU
0510: 47 3a 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f  G: Enables vario
0520: 75 73 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d  us diagnostics m
0530: 65 73 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65  essages and code
0540: 2e 0a 23 20 33 20 3d 3d 20 53 51 4c 49 54 45 5f  ..# 3 == SQLITE_
0550: 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c  WIN32_MALLOC_VAL
0560: 49 44 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20  IDATE: Validate 
0570: 74 68 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65  the Win32 native
0580: 20 68 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a   heap per call..
0590: 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45  # 4 == SQLITE_DE
05a0: 42 55 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e  BUG_OS_TRACE: En
05b0: 61 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f  ables output fro
05c0: 6d 20 74 68 65 20 4f 53 54 52 41 43 45 28 29 20  m the OSTRACE() 
05d0: 6d 61 63 72 6f 73 2e 0a 23 20 35 20 3d 3d 20 53  macros..# 5 == S
05e0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54  QLITE_ENABLE_IOT
05f0: 52 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75  RACE: Enables ou
0600: 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f  tput from the IO
0610: 54 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a  TRACE() macros..
0620: 23 0a 44 45 42 55 47 20 3d 20 30 0a 0a 23 20 43  #.DEBUG = 0..# C
0630: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 65  heck for the pre
0640: 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20  defined command 
0650: 6d 61 63 72 6f 20 43 43 2e 20 20 54 68 69 73 20  macro CC.  This 
0660: 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20  should point to 
0670: 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 23 20 62  the compiler.# b
0680: 69 6e 61 72 79 20 66 6f 72 20 74 68 65 20 74 61  inary for the ta
0690: 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20  rget platform.  
06a0: 49 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66  If it is not def
06b0: 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66  ined, simply def
06c0: 69 6e 65 20 69 74 20 74 6f 0a 23 20 74 68 65 20  ine it to.# the 
06d0: 6c 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 76  legacy default v
06e0: 61 6c 75 65 20 27 63 6c 2e 65 78 65 27 2e 0a 23  alue 'cl.exe'..#
06f0: 0a 21 49 46 4e 44 45 46 20 43 43 0a 43 43 20 3d  .!IFNDEF CC.CC =
0700: 20 63 6c 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a   cl.exe.!ENDIF..
0710: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20  # Check for the 
0720: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4c 44  command macro LD
0730: 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70  .  This should p
0740: 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c 69 6e 6b  oint to the link
0750: 65 72 20 62 69 6e 61 72 79 20 66 6f 72 0a 23 20  er binary for.# 
0760: 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66  the target platf
0770: 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e  orm.  If it is n
0780: 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70  ot defined, simp
0790: 6c 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20  ly define it to 
07a0: 74 68 65 20 6c 65 67 61 63 79 0a 23 20 64 65 66  the legacy.# def
07b0: 61 75 6c 74 20 76 61 6c 75 65 20 27 6c 69 6e 6b  ault value 'link
07c0: 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46  .exe'..#.!IFNDEF
07d0: 20 4c 44 0a 4c 44 20 3d 20 6c 69 6e 6b 2e 65 78   LD.LD = link.ex
07e0: 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63  e.!ENDIF..# Chec
07f0: 6b 20 66 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e  k for the comman
0800: 64 20 6d 61 63 72 6f 20 4e 43 43 2e 20 20 54 68  d macro NCC.  Th
0810: 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20  is should point 
0820: 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20  to the compiler 
0830: 62 69 6e 61 72 79 0a 23 20 66 6f 72 20 74 68 65  binary.# for the
0840: 20 70 6c 61 74 66 6f 72 6d 20 74 68 65 20 63 6f   platform the co
0850: 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73  mpilation proces
0860: 73 20 69 73 20 74 61 6b 69 6e 67 20 70 6c 61 63  s is taking plac
0870: 65 20 6f 6e 2e 20 20 49 66 20 69 74 20 69 73 20  e on.  If it is 
0880: 6e 6f 74 0a 23 20 64 65 66 69 6e 65 64 2c 20 73  not.# defined, s
0890: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20  imply define it 
08a0: 74 6f 20 68 61 76 65 20 74 68 65 20 73 61 6d 65  to have the same
08b0: 20 76 61 6c 75 65 20 61 73 20 74 68 65 20 43 43   value as the CC
08c0: 20 6d 61 63 72 6f 2e 20 20 57 68 65 6e 0a 23 20   macro.  When.# 
08d0: 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 2c  cross-compiling,
08e0: 20 69 74 20 69 73 20 73 75 67 67 65 73 74 65 64   it is suggested
08f0: 20 74 68 61 74 20 74 68 69 73 20 6d 61 63 72 6f   that this macro
0900: 20 62 65 20 6d 6f 64 69 66 69 65 64 20 76 69 61   be modified via
0910: 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c   the command.# l
0920: 69 6e 65 20 28 73 69 6e 63 65 20 6e 6d 61 6b 65  ine (since nmake
0930: 20 69 74 73 65 6c 66 20 64 6f 65 73 20 6e 6f 74   itself does not
0940: 20 70 72 6f 76 69 64 65 20 61 20 62 75 69 6c 74   provide a built
0950: 2d 69 6e 20 6d 65 74 68 6f 64 20 74 6f 20 67 75  -in method to gu
0960: 65 73 73 20 69 74 29 2e 0a 23 20 46 6f 72 20 65  ess it)..# For e
0970: 78 61 6d 70 6c 65 2c 20 74 6f 20 75 73 65 20 74  xample, to use t
0980: 68 65 20 78 38 36 20 63 6f 6d 70 69 6c 65 72 20  he x86 compiler 
0990: 77 68 65 6e 20 63 72 6f 73 73 2d 63 6f 6d 70 69  when cross-compi
09a0: 6c 69 6e 67 20 66 6f 72 20 78 36 34 2c 20 61 20  ling for x64, a 
09b0: 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 73  command.# line s
09c0: 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 20 66 6f  imilar to the fo
09d0: 6c 6c 6f 77 69 6e 67 20 63 6f 75 6c 64 20 62 65  llowing could be
09e0: 20 75 73 65 64 20 28 61 6c 6c 20 6f 6e 20 6f 6e   used (all on on
09f0: 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 20 20 20 20  e line):.#.#    
0a00: 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65 66 69   nmake /f Makefi
0a10: 6c 65 2e 6d 73 63 20 73 71 6c 69 74 65 33 2e 64  le.msc sqlite3.d
0a20: 6c 6c 0a 23 20 20 20 20 20 20 20 20 20 20 20 22  ll.#           "
0a30: 4e 43 43 3d 22 22 25 56 43 49 4e 53 54 41 4c 4c  NCC=""%VCINSTALL
0a40: 44 49 52 25 5c 62 69 6e 5c 63 6c 2e 65 78 65 22  DIR%\bin\cl.exe"
0a50: 22 22 0a 23 20 20 20 20 20 20 20 20 20 20 20 55  "".#           U
0a60: 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54  SE_NATIVE_LIBPAT
0a70: 48 53 3d 31 0a 23 0a 21 49 46 44 45 46 20 4e 43  HS=1.#.!IFDEF NC
0a80: 43 0a 4e 43 43 20 3d 20 24 28 4e 43 43 3a 5c 5c  C.NCC = $(NCC:\\
0a90: 3d 5c 29 0a 21 45 4c 53 45 0a 4e 43 43 20 3d 20  =\).!ELSE.NCC = 
0aa0: 24 28 43 43 29 0a 21 45 4e 44 49 46 0a 0a 23 20  $(CC).!ENDIF..# 
0ab0: 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53  Check for the MS
0ac0: 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  VC runtime libra
0ad0: 72 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20  ry path macro.  
0ae0: 4f 74 68 65 72 74 69 73 65 2c 20 74 68 69 73 0a  Othertise, this.
0af0: 23 20 76 61 6c 75 65 20 77 69 6c 6c 20 64 65 66  # value will def
0b00: 61 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62  ault to the 'lib
0b10: 27 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65  ' directory unde
0b20: 72 6e 65 61 74 68 20 74 68 65 20 4d 53 56 43 0a  rneath the MSVC.
0b30: 23 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64  # installation d
0b40: 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21 49 46 4e  irectory..#.!IFN
0b50: 44 45 46 20 4e 43 52 54 4c 49 42 50 41 54 48 0a  DEF NCRTLIBPATH.
0b60: 4e 43 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28  NCRTLIBPATH = $(
0b70: 56 43 49 4e 53 54 41 4c 4c 44 49 52 29 5c 6c 69  VCINSTALLDIR)\li
0b80: 62 0a 21 45 4e 44 49 46 0a 0a 4e 43 52 54 4c 49  b.!ENDIF..NCRTLI
0b90: 42 50 41 54 48 20 3d 20 24 28 4e 43 52 54 4c 49  BPATH = $(NCRTLI
0ba0: 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43  BPATH:\\=\)..# C
0bb0: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 50 6c 61  heck for the Pla
0bc0: 74 66 6f 72 6d 20 53 44 4b 20 6c 69 62 72 61 72  tform SDK librar
0bd0: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f  y path macro.  O
0be0: 74 68 65 72 74 69 73 65 2c 20 74 68 69 73 0a 23  thertise, this.#
0bf0: 20 76 61 6c 75 65 20 77 69 6c 6c 20 64 65 66 61   value will defa
0c00: 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27  ult to the 'lib'
0c10: 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72   directory under
0c20: 6e 65 61 74 68 20 74 68 65 20 57 69 6e 64 6f 77  neath the Window
0c30: 73 0a 23 20 53 44 4b 20 69 6e 73 74 61 6c 6c 61  s.# SDK installa
0c40: 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 20 28  tion directory (
0c50: 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20  the environment 
0c60: 76 61 72 69 61 62 6c 65 20 75 73 65 64 20 61 70  variable used ap
0c70: 70 65 61 72 73 0a 23 20 74 6f 20 62 65 20 61 76  pears.# to be av
0c80: 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 75 73 69  ailable when usi
0c90: 6e 67 20 56 69 73 75 61 6c 20 43 2b 2b 20 32 30  ng Visual C++ 20
0ca0: 30 38 20 6f 72 20 6c 61 74 65 72 20 76 69 61 20  08 or later via 
0cb0: 74 68 65 0a 23 20 63 6f 6d 6d 61 6e 64 20 6c 69  the.# command li
0cc0: 6e 65 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ne)..#.!IFNDEF N
0cd0: 53 44 4b 4c 49 42 50 41 54 48 0a 4e 53 44 4b 4c  SDKLIBPATH.NSDKL
0ce0: 49 42 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f  IBPATH = $(WINDO
0cf0: 57 53 53 44 4b 44 49 52 29 5c 6c 69 62 0a 21 45  WSSDKDIR)\lib.!E
0d00: 4e 44 49 46 0a 0a 4e 53 44 4b 4c 49 42 50 41 54  NDIF..NSDKLIBPAT
0d10: 48 20 3d 20 24 28 4e 53 44 4b 4c 49 42 50 41 54  H = $(NSDKLIBPAT
0d20: 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 20 63 6f 6d  H:\\=\)..# C com
0d30: 70 69 6c 65 72 20 61 6e 64 20 6f 70 74 69 6f 6e  piler and option
0d40: 73 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75 69  s for use in bui
0d50: 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65  lding executable
0d60: 73 20 74 68 61 74 0a 23 20 77 69 6c 6c 20 72 75  s that.# will ru
0d70: 6e 20 6f 6e 20 74 68 65 20 70 6c 61 74 66 6f 72  n on the platfor
0d80: 6d 20 74 68 61 74 20 69 73 20 64 6f 69 6e 67 20  m that is doing 
0d90: 74 68 65 20 62 75 69 6c 64 2e 0a 23 0a 42 43 43  the build..#.BCC
0da0: 20 3d 20 24 28 4e 43 43 29 20 2d 57 33 0a 0a 23   = $(NCC) -W3..#
0db0: 20 43 68 65 63 6b 20 69 66 20 74 68 65 20 6e 61   Check if the na
0dc0: 74 69 76 65 20 6c 69 62 72 61 72 79 20 70 61 74  tive library pat
0dd0: 68 73 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65  hs should be use
0de0: 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  d when compiling
0df0: 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  .# the command l
0e00: 69 6e 65 20 74 6f 6f 6c 73 20 75 73 65 64 20 64  ine tools used d
0e10: 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c  uring the compil
0e20: 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20  ation process.  
0e30: 49 66 0a 23 20 73 6f 2c 20 73 65 74 20 74 68 65  If.# so, set the
0e40: 20 6e 65 63 65 73 73 61 72 79 20 6d 61 63 72 6f   necessary macro
0e50: 20 6e 6f 77 2e 0a 23 0a 21 49 46 20 24 28 55 53   now..#.!IF $(US
0e60: 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48  E_NATIVE_LIBPATH
0e70: 53 29 21 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48  S)!=0.NLTLIBPATH
0e80: 53 20 3d 20 22 2f 4c 49 42 50 41 54 48 3a 24 28  S = "/LIBPATH:$(
0e90: 4e 43 52 54 4c 49 42 50 41 54 48 29 22 20 22 2f  NCRTLIBPATH)" "/
0ea0: 4c 49 42 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49  LIBPATH:$(NSDKLI
0eb0: 42 50 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 0a  BPATH)".!ENDIF..
0ec0: 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64  # C compiler and
0ed0: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 65   options for use
0ee0: 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 65   in building exe
0ef0: 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 20  cutables that.# 
0f00: 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20  will run on the 
0f10: 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e  target platform.
0f20: 20 20 28 42 43 43 20 61 6e 64 20 54 43 43 20 61    (BCC and TCC a
0f30: 72 65 20 75 73 75 61 6c 6c 79 20 74 68 65 0a 23  re usually the.#
0f40: 20 73 61 6d 65 20 75 6e 6c 65 73 73 20 79 6f 75   same unless you
0f50: 72 20 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70  r are cross-comp
0f60: 69 6c 69 6e 67 2e 29 0a 23 0a 54 43 43 20 3d 20  iling.).#.TCC = 
0f70: 24 28 43 43 29 20 2d 57 33 20 2d 44 53 51 4c 49  $(CC) -W3 -DSQLI
0f80: 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20  TE_OS_WIN=1 -I. 
0f90: 2d 49 24 28 54 4f 50 29 5c 73 72 63 20 2d 66 70  -I$(TOP)\src -fp
0fa0: 3a 70 72 65 63 69 73 65 0a 0a 23 20 57 68 65 6e  :precise..# When
0fb0: 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 6c   compiling the l
0fc0: 69 62 72 61 72 79 20 66 6f 72 20 75 73 65 20 69  ibrary for use i
0fd0: 6e 20 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69  n the WinRT envi
0fe0: 72 6f 6e 6d 65 6e 74 2c 0a 23 20 74 68 65 20 66  ronment,.# the f
0ff0: 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 70 69 6c 65  ollowing compile
1000: 2d 74 69 6d 65 20 6f 70 74 69 6f 6e 73 20 6d 75  -time options mu
1010: 73 74 20 62 65 20 75 73 65 64 20 61 73 20 77 65  st be used as we
1020: 6c 6c 20 74 6f 0a 23 20 64 69 73 61 62 6c 65 20  ll to.# disable 
1030: 75 73 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49  use of Win32 API
1040: 73 20 74 68 61 74 20 61 72 65 20 6e 6f 74 20 61  s that are not a
1050: 76 61 69 6c 61 62 6c 65 20 61 6e 64 20 74 6f 20  vailable and to 
1060: 65 6e 61 62 6c 65 0a 23 20 75 73 65 20 6f 66 20  enable.# use of 
1070: 57 69 6e 33 32 20 41 50 49 73 20 74 68 61 74 20  Win32 APIs that 
1080: 61 72 65 20 73 70 65 63 69 66 69 63 20 74 6f 20  are specific to 
1090: 57 69 6e 64 6f 77 73 20 38 20 61 6e 64 2f 6f 72  Windows 8 and/or
10a0: 20 57 69 6e 52 54 2e 0a 23 0a 21 49 46 20 24 28   WinRT..#.!IF $(
10b0: 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 0a 54 43  FOR_WINRT)!=0.TC
10c0: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c  C = $(TCC) -DSQL
10d0: 49 54 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 54  ITE_OS_WINRT=1.T
10e0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 57 49  CC = $(TCC) -DWI
10f0: 4e 41 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41  NAPI_FAMILY=WINA
1100: 50 49 5f 50 41 52 54 49 54 49 4f 4e 5f 41 50 50  PI_PARTITION_APP
1110: 0a 21 45 4e 44 49 46 0a 0a 23 20 41 6c 73 6f 2c  .!ENDIF..# Also,
1120: 20 77 65 20 6e 65 65 64 20 74 6f 20 64 79 6e 61   we need to dyna
1130: 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20  mically link to 
1140: 74 68 65 20 63 6f 72 72 65 63 74 20 4d 53 56 43  the correct MSVC
1150: 20 72 75 6e 74 69 6d 65 0a 23 20 77 68 65 6e 20   runtime.# when 
1160: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69  compiling for Wi
1170: 6e 52 54 20 28 65 2e 67 2e 20 64 65 62 75 67 20  nRT (e.g. debug 
1180: 6f 72 20 72 65 6c 65 61 73 65 29 20 4f 52 20 69  or release) OR i
1190: 66 20 74 68 65 0a 23 20 55 53 45 5f 43 52 54 5f  f the.# USE_CRT_
11a0: 44 4c 4c 20 6f 70 74 69 6f 6e 20 69 73 20 73 65  DLL option is se
11b0: 74 20 74 6f 20 66 6f 72 63 65 20 64 79 6e 61 6d  t to force dynam
11c0: 69 63 61 6c 6c 79 20 6c 69 6e 6b 69 6e 67 20 74  ically linking t
11d0: 6f 20 74 68 65 0a 23 20 4d 53 56 43 20 72 75 6e  o the.# MSVC run
11e0: 74 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a  time library..#.
11f0: 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29  !IF $(FOR_WINRT)
1200: 21 3d 30 20 7c 7c 20 24 28 55 53 45 5f 43 52 54  !=0 || $(USE_CRT
1210: 5f 44 4c 4c 29 21 3d 30 0a 21 49 46 20 24 28 44  _DLL)!=0.!IF $(D
1220: 45 42 55 47 29 3e 30 0a 54 43 43 20 3d 20 24 28  EBUG)>0.TCC = $(
1230: 54 43 43 29 20 2d 4d 44 64 0a 21 45 4c 53 45 0a  TCC) -MDd.!ELSE.
1240: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 44  TCC = $(TCC) -MD
1250: 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 0a 21 49  .!ENDIF.!ELSE.!I
1260: 46 20 24 28 44 45 42 55 47 29 3e 30 0a 54 43 43  F $(DEBUG)>0.TCC
1270: 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 64 0a 21   = $(TCC) -MTd.!
1280: 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 54 43 43  ELSE.TCC = $(TCC
1290: 29 20 2d 4d 54 0a 21 45 4e 44 49 46 0a 21 45 4e  ) -MT.!ENDIF.!EN
12a0: 44 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71 6c  DIF..# The mksql
12b0: 69 74 65 33 63 2e 74 63 6c 20 61 6e 64 20 6d 6b  ite3c.tcl and mk
12c0: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 73 63 72  sqlite3h.tcl scr
12d0: 69 70 74 73 20 77 69 6c 6c 20 70 75 6c 6c 20 69  ipts will pull i
12e0: 6e 0a 23 20 61 6e 79 20 65 78 74 65 6e 73 69 6f  n.# any extensio
12f0: 6e 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 62  n header files b
1300: 79 20 64 65 66 61 75 6c 74 2e 20 20 46 6f 72 20  y default.  For 
1310: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  non-amalgamation
1320: 0a 23 20 62 75 69 6c 64 73 2c 20 77 65 20 6e 65  .# builds, we ne
1330: 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20  ed to make sure 
1340: 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e  the compiler can
1350: 20 66 69 6e 64 20 74 68 65 73 65 2e 0a 23 0a 21   find these..#.!
1360: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM
1370: 41 54 49 4f 4e 29 3d 3d 30 0a 54 43 43 20 3d 20  ATION)==0.TCC = 
1380: 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c  $(TCC) -I$(TOP)\
1390: 65 78 74 5c 66 74 73 33 0a 54 43 43 20 3d 20 24  ext\fts3.TCC = $
13a0: 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65  (TCC) -I$(TOP)\e
13b0: 78 74 5c 72 74 72 65 65 0a 21 45 4e 44 49 46 0a  xt\rtree.!ENDIF.
13c0: 0a 23 20 44 65 66 69 6e 65 20 2d 44 4e 44 45 42  .# Define -DNDEB
13d0: 55 47 20 74 6f 20 63 6f 6d 70 69 6c 65 20 77 69  UG to compile wi
13e0: 74 68 6f 75 74 20 64 65 62 75 67 67 69 6e 67 20  thout debugging 
13f0: 28 69 2e 65 2e 2c 20 66 6f 72 20 70 72 6f 64 75  (i.e., for produ
1400: 63 74 69 6f 6e 20 75 73 61 67 65 29 0a 23 20 4f  ction usage).# O
1410: 6d 69 74 74 69 6e 67 20 74 68 65 20 64 65 66 69  mitting the defi
1420: 6e 65 20 77 69 6c 6c 20 63 61 75 73 65 20 65 78  ne will cause ex
1430: 74 72 61 20 64 65 62 75 67 67 69 6e 67 20 63 6f  tra debugging co
1440: 64 65 20 74 6f 20 62 65 20 69 6e 73 65 72 74 65  de to be inserte
1450: 64 20 61 6e 64 0a 23 20 69 6e 63 6c 75 64 65 73  d and.# includes
1460: 20 65 78 74 72 61 20 63 6f 6d 6d 65 6e 74 73 20   extra comments 
1470: 77 68 65 6e 20 22 45 58 50 4c 41 49 4e 20 73 74  when "EXPLAIN st
1480: 6d 74 22 20 69 73 20 75 73 65 64 2e 0a 23 0a 21  mt" is used..#.!
1490: 49 46 20 24 28 44 45 42 55 47 29 3d 3d 30 0a 54  IF $(DEBUG)==0.T
14a0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 4e 44  CC = $(TCC) -DND
14b0: 45 42 55 47 0a 42 43 43 20 3d 20 24 28 42 43 43  EBUG.BCC = $(BCC
14c0: 29 20 2d 44 4e 44 45 42 55 47 0a 21 45 4e 44 49  ) -DNDEBUG.!ENDI
14d0: 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e  F..!IF $(DEBUG)>
14e0: 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  1.TCC = $(TCC) -
14f0: 44 53 51 4c 49 54 45 5f 44 45 42 55 47 0a 21 45  DSQLITE_DEBUG.!E
1500: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55  NDIF..!IF $(DEBU
1510: 47 29 3e 33 0a 54 43 43 20 3d 20 24 28 54 43 43  G)>3.TCC = $(TCC
1520: 29 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47  ) -DSQLITE_DEBUG
1530: 5f 4f 53 5f 54 52 41 43 45 3d 31 0a 21 45 4e 44  _OS_TRACE=1.!END
1540: 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47 29  IF..!IF $(DEBUG)
1550: 3e 34 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  >4.TCC = $(TCC) 
1560: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
1570: 49 4f 54 52 41 43 45 0a 21 45 4e 44 49 46 0a 0a  IOTRACE.!ENDIF..
1580: 23 0a 23 20 50 72 65 76 65 6e 74 20 77 61 72 6e  #.# Prevent warn
1590: 69 6e 67 73 20 61 62 6f 75 74 20 22 69 6e 73 65  ings about "inse
15a0: 63 75 72 65 22 20 4d 53 56 43 20 72 75 6e 74 69  cure" MSVC runti
15b0: 6d 65 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74  me library funct
15c0: 69 6f 6e 73 0a 23 20 62 65 69 6e 67 20 75 73 65  ions.# being use
15d0: 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43  d..#.TCC = $(TCC
15e0: 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  ) -D_CRT_SECURE_
15f0: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f  NO_DEPRECATE -D_
1600: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41  CRT_SECURE_NO_WA
1610: 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 24 28 42  RNINGS.BCC = $(B
1620: 43 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52  CC) -D_CRT_SECUR
1630: 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d  E_NO_DEPRECATE -
1640: 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f  D_CRT_SECURE_NO_
1650: 57 41 52 4e 49 4e 47 53 0a 0a 23 0a 23 20 50 72  WARNINGS..#.# Pr
1660: 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 73 20 61  event warnings a
1670: 62 6f 75 74 20 22 64 65 70 72 65 63 61 74 65 64  bout "deprecated
1680: 22 20 50 4f 53 49 58 20 66 75 6e 63 74 69 6f 6e  " POSIX function
1690: 73 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23 0a  s being used..#.
16a0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 5f  TCC = $(TCC) -D_
16b0: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44  CRT_NONSTDC_NO_D
16c0: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f  EPRECATE -D_CRT_
16d0: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49  NONSTDC_NO_WARNI
16e0: 4e 47 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29  NGS.BCC = $(BCC)
16f0: 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f   -D_CRT_NONSTDC_
1700: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f  NO_DEPRECATE -D_
1710: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57  CRT_NONSTDC_NO_W
1720: 41 52 4e 49 4e 47 53 0a 0a 23 0a 23 20 55 73 65  ARNINGS..#.# Use
1730: 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68 65   native Win32 he
1740: 61 70 20 69 6e 73 74 65 61 64 20 6f 66 20 6d 61  ap instead of ma
1750: 6c 6c 6f 63 2f 66 72 65 65 3f 0a 23 0a 23 20 54  lloc/free?.#.# T
1760: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ
1770: 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f  LITE_WIN32_MALLO
1780: 43 3d 31 0a 0a 23 0a 23 20 56 61 6c 69 64 61 74  C=1..#.# Validat
1790: 65 20 74 68 65 20 68 65 61 70 20 6f 6e 20 65 76  e the heap on ev
17a0: 65 72 79 20 63 61 6c 6c 20 69 6e 74 6f 20 74 68  ery call into th
17b0: 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68  e native Win32 h
17c0: 65 61 70 20 73 75 62 73 79 73 74 65 6d 3f 0a 23  eap subsystem?.#
17d0: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 32 0a  .!IF $(DEBUG)>2.
17e0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS
17f0: 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c  QLITE_WIN32_MALL
1800: 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a 21 45  OC_VALIDATE=1.!E
1810: 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c 6f 63 61  NDIF..# The loca
1820: 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 54 63 6c  tions of the Tcl
1830: 20 68 65 61 64 65 72 20 61 6e 64 20 6c 69 62 72   header and libr
1840: 61 72 79 20 66 69 6c 65 73 2e 20 20 41 6c 73 6f  ary files.  Also
1850: 2c 20 74 68 65 20 6c 69 62 72 61 72 79 20 74 68  , the library th
1860: 61 74 0a 23 20 6e 6f 6e 2d 73 74 75 62 73 20 65  at.# non-stubs e
1870: 6e 61 62 6c 65 64 20 70 72 6f 67 72 61 6d 73 20  nabled programs 
1880: 75 73 69 6e 67 20 54 63 6c 20 6d 75 73 74 20 6c  using Tcl must l
1890: 69 6e 6b 20 61 67 61 69 6e 73 74 2e 20 20 54 68  ink against.  Th
18a0: 65 73 65 20 76 61 72 69 61 62 6c 65 73 0a 23 20  ese variables.# 
18b0: 28 54 43 4c 49 4e 43 44 49 52 2c 20 54 43 4c 4c  (TCLINCDIR, TCLL
18c0: 49 42 44 49 52 2c 20 61 6e 64 20 4c 49 42 54 43  IBDIR, and LIBTC
18d0: 4c 29 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69  L) may be overri
18e0: 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76  dden via the env
18f0: 69 72 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72  ironment.# prior
1900: 20 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b   to running nmak
1910: 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61  e in order to ma
1920: 74 63 68 20 74 68 65 20 61 63 74 75 61 6c 20 69  tch the actual i
1930: 6e 73 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69 6f  nstalled locatio
1940: 6e 20 61 6e 64 0a 23 20 76 65 72 73 69 6f 6e 20  n and.# version 
1950: 6f 6e 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e  on this machine.
1960: 0a 23 0a 21 49 46 4e 44 45 46 20 54 43 4c 49 4e  .#.!IFNDEF TCLIN
1970: 43 44 49 52 0a 54 43 4c 49 4e 43 44 49 52 20 3d  CDIR.TCLINCDIR =
1980: 20 63 3a 5c 74 63 6c 5c 69 6e 63 6c 75 64 65 0a   c:\tcl\include.
1990: 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20  !ENDIF..!IFNDEF 
19a0: 54 43 4c 4c 49 42 44 49 52 0a 54 43 4c 4c 49 42  TCLLIBDIR.TCLLIB
19b0: 44 49 52 20 3d 20 63 3a 5c 74 63 6c 5c 6c 69 62  DIR = c:\tcl\lib
19c0: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46  .!ENDIF..!IFNDEF
19d0: 20 4c 49 42 54 43 4c 0a 4c 49 42 54 43 4c 20 3d   LIBTCL.LIBTCL =
19e0: 20 74 63 6c 38 35 2e 6c 69 62 0a 21 45 4e 44 49   tcl85.lib.!ENDI
19f0: 46 0a 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f  F..# The locatio
1a00: 6e 73 20 6f 66 20 74 68 65 20 49 43 55 20 68 65  ns of the ICU he
1a10: 61 64 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79  ader and library
1a20: 20 66 69 6c 65 73 2e 20 20 54 68 65 73 65 20 76   files.  These v
1a30: 61 72 69 61 62 6c 65 73 0a 23 20 28 49 43 55 49  ariables.# (ICUI
1a40: 4e 43 44 49 52 2c 20 49 43 55 4c 49 42 44 49 52  NCDIR, ICULIBDIR
1a50: 2c 20 61 6e 64 20 4c 49 42 49 43 55 29 20 6d 61  , and LIBICU) ma
1a60: 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20  y be overridden 
1a70: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d  via the environm
1a80: 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72  ent.# prior to r
1a90: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20  unning nmake in 
1aa0: 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74  order to match t
1ab0: 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c  he actual instal
1ac0: 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 0a  led location on.
1ad0: 23 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a  # this machine..
1ae0: 23 0a 21 49 46 4e 44 45 46 20 49 43 55 49 4e 43  #.!IFNDEF ICUINC
1af0: 44 49 52 0a 49 43 55 49 4e 43 44 49 52 20 3d 20  DIR.ICUINCDIR = 
1b00: 63 3a 5c 69 63 75 5c 69 6e 63 6c 75 64 65 0a 21  c:\icu\include.!
1b10: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 49  ENDIF..!IFNDEF I
1b20: 43 55 4c 49 42 44 49 52 0a 49 43 55 4c 49 42 44  CULIBDIR.ICULIBD
1b30: 49 52 20 3d 20 63 3a 5c 69 63 75 5c 6c 69 62 0a  IR = c:\icu\lib.
1b40: 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20  !ENDIF..!IFNDEF 
1b50: 4c 49 42 49 43 55 0a 4c 49 42 49 43 55 20 3d 20  LIBICU.LIBICU = 
1b60: 69 63 75 75 63 2e 6c 69 62 20 69 63 75 69 6e 2e  icuuc.lib icuin.
1b70: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  lib.!ENDIF..# Th
1b80: 69 73 20 69 73 20 74 68 65 20 63 6f 6d 6d 61 6e  is is the comman
1b90: 64 20 74 6f 20 75 73 65 20 66 6f 72 20 74 63 6c  d to use for tcl
1ba0: 73 68 20 2d 20 6e 6f 72 6d 61 6c 6c 79 20 6a 75  sh - normally ju
1bb0: 73 74 20 22 74 63 6c 73 68 22 2c 20 62 75 74 20  st "tclsh", but 
1bc0: 77 65 20 6d 61 79 0a 23 20 6b 6e 6f 77 20 74 68  we may.# know th
1bd0: 65 20 73 70 65 63 69 66 69 63 20 76 65 72 73 69  e specific versi
1be0: 6f 6e 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73  on we want to us
1bf0: 65 2e 20 20 54 68 69 73 20 76 61 72 69 61 62 6c  e.  This variabl
1c00: 65 20 28 54 43 4c 53 48 5f 43 4d 44 29 20 6d 61  e (TCLSH_CMD) ma
1c10: 79 20 62 65 0a 23 20 6f 76 65 72 72 69 64 64 65  y be.# overridde
1c20: 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f  n via the enviro
1c30: 6e 6d 65 6e 74 20 70 72 69 6f 72 20 74 6f 20 72  nment prior to r
1c40: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20  unning nmake in 
1c50: 6f 72 64 65 72 20 74 6f 20 73 65 6c 65 63 74 20  order to select 
1c60: 61 0a 23 20 73 70 65 63 69 66 69 63 20 54 63 6c  a.# specific Tcl
1c70: 20 73 68 65 6c 6c 20 74 6f 20 75 73 65 2e 0a 23   shell to use..#
1c80: 0a 21 49 46 4e 44 45 46 20 54 43 4c 53 48 5f 43  .!IFNDEF TCLSH_C
1c90: 4d 44 0a 54 43 4c 53 48 5f 43 4d 44 20 3d 20 74  MD.TCLSH_CMD = t
1ca0: 63 6c 73 68 38 35 0a 21 45 4e 44 49 46 0a 0a 23  clsh85.!ENDIF..#
1cb0: 20 43 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   Compiler option
1cc0: 73 20 6e 65 65 64 65 64 20 66 6f 72 20 70 72 6f  s needed for pro
1cd0: 67 72 61 6d 73 20 74 68 61 74 20 75 73 65 20 74  grams that use t
1ce0: 68 65 20 72 65 61 64 6c 69 6e 65 28 29 20 6c 69  he readline() li
1cf0: 62 72 61 72 79 2e 0a 23 0a 52 45 41 44 4c 49 4e  brary..#.READLIN
1d00: 45 5f 46 4c 41 47 53 20 3d 20 2d 44 48 41 56 45  E_FLAGS = -DHAVE
1d10: 5f 52 45 41 44 4c 49 4e 45 3d 30 0a 0a 23 20 54  _READLINE=0..# T
1d20: 68 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20  he library that 
1d30: 70 72 6f 67 72 61 6d 73 20 75 73 69 6e 67 20 72  programs using r
1d40: 65 61 64 6c 69 6e 65 28 29 20 6d 75 73 74 20 6c  eadline() must l
1d50: 69 6e 6b 20 61 67 61 69 6e 73 74 2e 0a 23 0a 4c  ink against..#.L
1d60: 49 42 52 45 41 44 4c 49 4e 45 20 3d 0a 0a 23 20  IBREADLINE =..# 
1d70: 53 68 6f 75 6c 64 20 74 68 65 20 64 61 74 61 62  Should the datab
1d80: 61 73 65 20 65 6e 67 69 6e 65 20 62 65 20 63 6f  ase engine be co
1d90: 6d 70 69 6c 65 64 20 74 68 72 65 61 64 73 61 66  mpiled threadsaf
1da0: 65 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29  e.#.TCC = $(TCC)
1db0: 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44   -DSQLITE_THREAD
1dc0: 53 41 46 45 3d 31 0a 0a 23 20 44 6f 20 74 68 72  SAFE=1..# Do thr
1dd0: 65 61 64 73 20 6f 76 65 72 72 69 64 65 20 65 61  eads override ea
1de0: 63 68 20 6f 74 68 65 72 73 20 6c 6f 63 6b 73 20  ch others locks 
1df0: 62 79 20 64 65 66 61 75 6c 74 20 28 31 29 2c 20  by default (1), 
1e00: 6f 72 20 64 6f 20 77 65 20 74 65 73 74 20 28 2d  or do we test (-
1e10: 31 29 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43  1).#.TCC = $(TCC
1e20: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
1e30: 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f 43 4b 3d  D_OVERRIDE_LOCK=
1e40: 2d 31 0a 0a 23 20 41 6e 79 20 74 61 72 67 65 74  -1..# Any target
1e50: 20 6c 69 62 72 61 72 69 65 73 20 77 68 69 63 68   libraries which
1e60: 20 6c 69 62 73 71 6c 69 74 65 20 6d 75 73 74 20   libsqlite must 
1e70: 62 65 20 6c 69 6e 6b 65 64 20 61 67 61 69 6e 73  be linked agains
1e80: 74 0a 23 0a 21 49 46 4e 44 45 46 20 54 4c 49 42  t.#.!IFNDEF TLIB
1e90: 53 0a 54 4c 49 42 53 20 3d 0a 21 45 4e 44 49 46  S.TLIBS =.!ENDIF
1ea0: 0a 0a 23 20 46 6c 61 67 73 20 63 6f 6e 74 72 6f  ..# Flags contro
1eb0: 6c 6c 69 6e 67 20 75 73 65 20 6f 66 20 74 68 65  lling use of the
1ec0: 20 69 6e 20 6d 65 6d 6f 72 79 20 62 74 72 65 65   in memory btree
1ed0: 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a   implementation.
1ee0: 23 0a 23 20 53 51 4c 49 54 45 5f 54 45 4d 50 5f  #.# SQLITE_TEMP_
1ef0: 53 54 4f 52 45 20 69 73 20 30 20 74 6f 20 66 6f  STORE is 0 to fo
1f00: 72 63 65 20 74 65 6d 70 6f 72 61 72 79 20 74 61  rce temporary ta
1f10: 62 6c 65 73 20 74 6f 20 62 65 20 69 6e 20 61 20  bles to be in a 
1f20: 66 69 6c 65 2c 20 31 20 74 6f 0a 23 20 64 65 66  file, 1 to.# def
1f30: 61 75 6c 74 20 74 6f 20 66 69 6c 65 2c 20 32 20  ault to file, 2 
1f40: 74 6f 20 64 65 66 61 75 6c 74 20 74 6f 20 6d 65  to default to me
1f50: 6d 6f 72 79 2c 20 61 6e 64 20 33 20 74 6f 20 66  mory, and 3 to f
1f60: 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 79 0a 23  orce temporary.#
1f70: 20 74 61 62 6c 65 73 20 74 6f 20 61 6c 77 61 79   tables to alway
1f80: 73 20 62 65 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a  s be in memory..
1f90: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  #.TCC = $(TCC) -
1fa0: 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f  DSQLITE_TEMP_STO
1fb0: 52 45 3d 31 0a 0a 23 20 45 6e 61 62 6c 65 2f 64  RE=1..# Enable/d
1fc0: 69 73 61 62 6c 65 20 6c 6f 61 64 61 62 6c 65 20  isable loadable 
1fd0: 65 78 74 65 6e 73 69 6f 6e 73 2c 20 61 6e 64 20  extensions, and 
1fe0: 6f 74 68 65 72 20 6f 70 74 69 6f 6e 61 6c 20 66  other optional f
1ff0: 65 61 74 75 72 65 73 0a 23 20 62 61 73 65 64 20  eatures.# based 
2000: 6f 6e 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e  on configuration
2010: 2e 20 28 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54  . (-DSQLITE_OMIT
2020: 2a 2c 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  *, -DSQLITE_ENAB
2030: 4c 45 2a 29 2e 0a 23 20 54 68 65 20 73 61 6d 65  LE*)..# The same
2040: 20 73 65 74 20 6f 66 20 4f 4d 49 54 20 61 6e 64   set of OMIT and
2050: 20 45 4e 41 42 4c 45 20 66 6c 61 67 73 20 73 68   ENABLE flags sh
2060: 6f 75 6c 64 20 62 65 20 70 61 73 73 65 64 20 74  ould be passed t
2070: 6f 20 74 68 65 0a 23 20 4c 45 4d 4f 4e 20 70 61  o the.# LEMON pa
2080: 72 73 65 72 20 67 65 6e 65 72 61 74 6f 72 20 61  rser generator a
2090: 6e 64 20 74 68 65 20 6d 6b 6b 65 79 77 6f 72 64  nd the mkkeyword
20a0: 68 61 73 68 20 74 6f 6f 6c 20 61 73 20 77 65 6c  hash tool as wel
20b0: 6c 2e 0a 0a 23 20 42 45 47 49 4e 20 73 74 61 6e  l...# BEGIN stan
20c0: 64 61 72 64 20 6f 70 74 69 6f 6e 73 0a 4f 50 54  dard options.OPT
20d0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d  _FEATURE_FLAGS =
20e0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F
20f0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  LAGS) -DSQLITE_E
2100: 4e 41 42 4c 45 5f 46 54 53 33 3d 31 0a 4f 50 54  NABLE_FTS3=1.OPT
2110: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d  _FEATURE_FLAGS =
2120: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F
2130: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  LAGS) -DSQLITE_E
2140: 4e 41 42 4c 45 5f 52 54 52 45 45 3d 31 0a 4f 50  NABLE_RTREE=1.OP
2150: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20  T_FEATURE_FLAGS 
2160: 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f  = $(OPT_FEATURE_
2170: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
2180: 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45  ENABLE_COLUMN_ME
2190: 54 41 44 41 54 41 3d 31 0a 23 20 45 4e 44 20 73  TADATA=1.# END s
21a0: 74 61 6e 64 61 72 64 20 6f 70 74 69 6f 6e 73 0a  tandard options.
21b0: 0a 23 20 42 45 47 49 4e 20 72 65 71 75 69 72 65  .# BEGIN require
21c0: 64 20 57 69 6e 64 6f 77 73 20 6f 70 74 69 6f 6e  d Windows option
21d0: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
21e0: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU
21f0: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
2200: 54 45 5f 4d 41 58 5f 54 52 49 47 47 45 52 5f 44  TE_MAX_TRIGGER_D
2210: 45 50 54 48 3d 31 30 30 0a 23 20 45 4e 44 20 72  EPTH=100.# END r
2220: 65 71 75 69 72 65 64 20 57 69 6e 64 6f 77 73 20  equired Windows 
2230: 6f 70 74 69 6f 6e 0a 0a 54 43 43 20 3d 20 24 28  option..TCC = $(
2240: 54 43 43 29 20 24 28 4f 50 54 5f 46 45 41 54 55  TCC) $(OPT_FEATU
2250: 52 45 5f 46 4c 41 47 53 29 0a 0a 23 20 41 64 64  RE_FLAGS)..# Add
2260: 20 69 6e 20 61 6e 79 20 6f 70 74 69 6f 6e 61 6c   in any optional
2270: 20 70 61 72 61 6d 65 74 65 72 73 20 73 70 65 63   parameters spec
2280: 69 66 69 65 64 20 6f 6e 20 74 68 65 20 6d 61 6b  ified on the mak
2290: 65 20 63 6f 6d 6d 61 6e 65 20 6c 69 6e 65 0a 23  e commane line.#
22a0: 20 69 65 2e 20 20 6d 61 6b 65 20 22 4f 50 54 53   ie.  make "OPTS
22b0: 3d 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  =-DSQLITE_ENABLE
22c0: 5f 46 4f 4f 3d 31 20 2d 44 53 51 4c 49 54 45 5f  _FOO=1 -DSQLITE_
22d0: 4f 4d 49 54 5f 46 4f 4f 3d 31 22 2e 0a 54 43 43  OMIT_FOO=1"..TCC
22e0: 20 3d 20 24 28 54 43 43 29 20 24 28 4f 50 54 53   = $(TCC) $(OPTS
22f0: 29 0a 0a 23 20 49 66 20 73 79 6d 62 6f 6c 73 20  )..# If symbols 
2300: 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 65 6e 61  are enabled, ena
2310: 62 6c 65 20 50 44 42 73 2e 0a 23 20 49 66 20 64  ble PDBs..# If d
2320: 65 62 75 67 67 69 6e 67 20 69 73 20 65 6e 61 62  ebugging is enab
2330: 6c 65 64 2c 20 64 69 73 61 62 6c 65 20 61 6c 6c  led, disable all
2340: 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61   optimizations a
2350: 6e 64 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a  nd enable PDBs..
2360: 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 0a 54  !IF $(DEBUG)>0.T
2370: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f 64 20  CC = $(TCC) -Od 
2380: 2d 44 5f 44 45 42 55 47 0a 42 43 43 20 3d 20 24  -D_DEBUG.BCC = $
2390: 28 42 43 43 29 20 2d 4f 64 20 2d 44 5f 44 45 42  (BCC) -Od -D_DEB
23a0: 55 47 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  UG.!ELSE.TCC = $
23b0: 28 54 43 43 29 20 2d 4f 32 0a 42 43 43 20 3d 20  (TCC) -O2.BCC = 
23c0: 24 28 42 43 43 29 20 2d 4f 32 0a 21 45 4e 44 49  $(BCC) -O2.!ENDI
23d0: 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e  F..!IF $(DEBUG)>
23e0: 30 20 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21  0 || $(SYMBOLS)!
23f0: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 
2400: 2d 5a 69 0a 42 43 43 20 3d 20 24 28 42 43 43 29  -Zi.BCC = $(BCC)
2410: 20 2d 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20 49   -Zi.!ENDIF..# I
2420: 66 20 49 43 55 20 73 75 70 70 6f 72 74 20 69 73  f ICU support is
2430: 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68   enabled, add th
2440: 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f  e compiler optio
2450: 6e 73 20 66 6f 72 20 69 74 2e 0a 21 49 46 20 24  ns for it..!IF $
2460: 28 55 53 45 5f 49 43 55 29 21 3d 30 0a 54 43 43  (USE_ICU)!=0.TCC
2470: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49   = $(TCC) -DSQLI
2480: 54 45 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a  TE_ENABLE_ICU=1.
2490: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
24a0: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 0a 54 43  (TOP)\ext\icu.TC
24b0: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 49  C = $(TCC) -I$(I
24c0: 43 55 49 4e 43 44 49 52 29 0a 21 45 4e 44 49 46  CUINCDIR).!ENDIF
24d0: 0a 0a 23 20 6c 69 62 74 6f 6f 6c 20 63 6f 6d 70  ..# libtool comp
24e0: 69 6c 65 2f 6c 69 6e 6b 0a 4c 54 43 4f 4d 50 49  ile/link.LTCOMPI
24f0: 4c 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24  LE = $(TCC) -Fo$
2500: 40 0a 4c 54 4c 49 42 20 3d 20 6c 69 62 2e 65 78  @.LTLIB = lib.ex
2510: 65 0a 4c 54 4c 49 4e 4b 20 3d 20 24 28 54 43 43  e.LTLINK = $(TCC
2520: 29 20 2d 46 65 24 40 0a 0a 23 20 49 66 20 61 20  ) -Fe$@..# If a 
2530: 70 6c 61 74 66 6f 72 6d 20 77 61 73 20 73 65 74  platform was set
2540: 2c 20 66 6f 72 63 65 20 74 68 65 20 6c 69 6e 6b  , force the link
2550: 65 72 20 74 6f 20 74 61 72 67 65 74 20 74 68 61  er to target tha
2560: 74 2e 0a 23 20 4e 6f 74 65 20 74 68 61 74 20 74  t..# Note that t
2570: 68 65 20 76 63 76 61 72 73 2a 2e 62 61 74 20 66  he vcvars*.bat f
2580: 61 6d 69 6c 79 20 6f 66 20 62 61 74 63 68 20 66  amily of batch f
2590: 69 6c 65 73 20 74 79 70 69 63 61 6c 6c 79 0a 23  iles typically.#
25a0: 20 73 65 74 20 74 68 69 73 20 66 6f 72 20 79 6f   set this for yo
25b0: 75 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74  u.  Otherwise, t
25c0: 68 65 20 6c 69 6e 6b 65 72 20 77 69 6c 6c 20 61  he linker will a
25d0: 74 74 65 6d 70 74 0a 23 20 74 6f 20 64 65 64 75  ttempt.# to dedu
25e0: 63 65 20 74 68 65 20 62 69 6e 61 72 79 20 74 79  ce the binary ty
25f0: 70 65 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20  pe based on the 
2600: 6f 62 6a 65 63 74 20 66 69 6c 65 73 2e 0a 21 49  object files..!I
2610: 46 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a 4c 54  FDEF PLATFORM.LT
2620: 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f 4d 41 43 48  LINKOPTS = /MACH
2630: 49 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 0a  INE:$(PLATFORM).
2640: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4d 41 43  LTLIBOPTS = /MAC
2650: 48 49 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29  HINE:$(PLATFORM)
2660: 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20  .!ENDIF..# When 
2670: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 75 73  compiling for us
2680: 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54 20 65  e in the WinRT e
2690: 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 68 65 20  nvironment, the 
26a0: 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c 69 6e 6b  following.# link
26b0: 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62  er option must b
26c0: 65 20 75 73 65 64 20 74 6f 20 6d 61 72 6b 20 74  e used to mark t
26d0: 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 61 73  he executable as
26e0: 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f 6e 6c 79   runnable.# only
26f0: 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78 74 20   in the context 
2700: 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f  of an applicatio
2710: 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a 23 0a 21  n container..#.!
2720: 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21  IF $(FOR_WINRT)!
2730: 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  =0.LTLINKOPTS = 
2740: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 41  $(LTLINKOPTS) /A
2750: 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 45 4e 44  PPCONTAINER.!END
2760: 49 46 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20  IF..# If either 
2770: 64 65 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d  debugging or sym
2780: 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64  bols are enabled
2790: 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 21  , enable PDBs..!
27a0: 49 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c  IF $(DEBUG)>0 ||
27b0: 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c   $(SYMBOLS)!=0.L
27c0: 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 0a  DFLAGS = /DEBUG.
27d0: 21 45 4e 44 49 46 0a 0a 23 20 53 74 61 72 74 20  !ENDIF..# Start 
27e0: 77 69 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c  with the Tcl rel
27f0: 61 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69  ated linker opti
2800: 6f 6e 73 2e 0a 21 49 46 20 24 28 4e 4f 5f 54 43  ons..!IF $(NO_TC
2810: 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53  L)==0.LTLIBPATHS
2820: 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28 54 43   = /LIBPATH:$(TC
2830: 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 20  LLIBDIR).LTLIBS 
2840: 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44  = $(LIBTCL).!END
2850: 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75 70  IF..# If ICU sup
2860: 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c  port is enabled,
2870: 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 20   add the linker 
2880: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a  options for it..
2890: 21 49 46 20 24 28 55 53 45 5f 49 43 55 29 21 3d  !IF $(USE_ICU)!=
28a0: 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 24  0.LTLIBPATHS = $
28b0: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4c 49  (LTLIBPATHS) /LI
28c0: 42 50 41 54 48 3a 24 28 49 43 55 4c 49 42 44 49  BPATH:$(ICULIBDI
28d0: 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28 4c 54  R).LTLIBS = $(LT
28e0: 4c 49 42 53 29 20 24 28 4c 49 42 49 43 55 29 0a  LIBS) $(LIBICU).
28f0: 21 45 4e 44 49 46 0a 0a 23 20 6e 61 77 6b 20 63  !ENDIF..# nawk c
2900: 6f 6d 70 61 74 69 62 6c 65 20 61 77 6b 2e 0a 4e  ompatible awk..N
2910: 41 57 4b 20 3d 20 67 61 77 6b 2e 65 78 65 0a 0a  AWK = gawk.exe..
2920: 23 20 59 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74  # You should not
2930: 20 68 61 76 65 20 74 6f 20 63 68 61 6e 67 65 20   have to change 
2940: 61 6e 79 74 68 69 6e 67 20 62 65 6c 6f 77 20 74  anything below t
2950: 68 69 73 20 6c 69 6e 65 0a 23 23 23 23 23 23 23  his line.#######
2960: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2970: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2980: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2990: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
29a0: 23 23 23 23 23 23 23 23 0a 0a 23 20 4f 62 6a 65  ########..# Obje
29b0: 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 68 65  ct files for the
29c0: 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20   SQLite library 
29d0: 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f  (non-amalgamatio
29e0: 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 20 3d  n)..#.LIBOBJS0 =
29f0: 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 6c 79 7a   alter.lo analyz
2a00: 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c 6f 20 61  e.lo attach.lo a
2a10: 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  uth.lo \.       
2a20: 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62 69 74 76    backup.lo bitv
2a30: 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78 2e 6c 6f  ec.lo btmutex.lo
2a40: 20 62 74 72 65 65 2e 6c 6f 20 62 75 69 6c 64 2e   btree.lo build.
2a50: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 63 61  lo \.         ca
2a60: 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d 70 6c 65  llback.lo comple
2a70: 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c 6f 20 64  te.lo ctime.lo d
2a80: 61 74 65 2e 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f  ate.lo delete.lo
2a90: 20 5c 0a 20 20 20 20 20 20 20 20 20 65 78 70 72   \.         expr
2aa0: 2e 6c 6f 20 66 61 75 6c 74 2e 6c 6f 20 66 6b 65  .lo fault.lo fke
2ab0: 79 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  y.lo \.         
2ac0: 66 74 73 33 2e 6c 6f 20 66 74 73 33 5f 61 75 78  fts3.lo fts3_aux
2ad0: 2e 6c 6f 20 66 74 73 33 5f 65 78 70 72 2e 6c 6f  .lo fts3_expr.lo
2ae0: 20 66 74 73 33 5f 68 61 73 68 2e 6c 6f 20 66 74   fts3_hash.lo ft
2af0: 73 33 5f 69 63 75 2e 6c 6f 20 5c 0a 20 20 20 20  s3_icu.lo \.    
2b00: 20 20 20 20 20 66 74 73 33 5f 70 6f 72 74 65 72       fts3_porter
2b10: 2e 6c 6f 20 66 74 73 33 5f 73 6e 69 70 70 65 74  .lo fts3_snippet
2b20: 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a  .lo fts3_tokeniz
2b30: 65 72 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e  er.lo fts3_token
2b40: 69 7a 65 72 31 2e 6c 6f 20 5c 0a 20 20 20 20 20  izer1.lo \.     
2b50: 20 20 20 20 66 74 73 33 5f 75 6e 69 63 6f 64 65      fts3_unicode
2b60: 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 65  .lo fts3_unicode
2b70: 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 74 65 2e  2.lo fts3_write.
2b80: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 75  lo \.         fu
2b90: 6e 63 2e 6c 6f 20 67 6c 6f 62 61 6c 2e 6c 6f 20  nc.lo global.lo 
2ba0: 68 61 73 68 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  hash.lo \.      
2bb0: 20 20 20 69 63 75 2e 6c 6f 20 69 6e 73 65 72 74     icu.lo insert
2bc0: 2e 6c 6f 20 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 6c  .lo journal.lo l
2bd0: 65 67 61 63 79 2e 6c 6f 20 6c 6f 61 64 65 78 74  egacy.lo loadext
2be0: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d  .lo \.         m
2bf0: 61 69 6e 2e 6c 6f 20 6d 61 6c 6c 6f 63 2e 6c 6f  ain.lo malloc.lo
2c00: 20 6d 65 6d 30 2e 6c 6f 20 6d 65 6d 31 2e 6c 6f   mem0.lo mem1.lo
2c10: 20 6d 65 6d 32 2e 6c 6f 20 6d 65 6d 33 2e 6c 6f   mem2.lo mem3.lo
2c20: 20 6d 65 6d 35 2e 6c 6f 20 5c 0a 20 20 20 20 20   mem5.lo \.     
2c30: 20 20 20 20 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 6c      memjournal.l
2c40: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 75 74  o \.         mut
2c50: 65 78 2e 6c 6f 20 6d 75 74 65 78 5f 6e 6f 6f 70  ex.lo mutex_noop
2c60: 2e 6c 6f 20 6d 75 74 65 78 5f 75 6e 69 78 2e 6c  .lo mutex_unix.l
2c70: 6f 20 6d 75 74 65 78 5f 77 33 32 2e 6c 6f 20 5c  o mutex_w32.lo \
2c80: 0a 20 20 20 20 20 20 20 20 20 6e 6f 74 69 66 79  .         notify
2c90: 2e 6c 6f 20 6f 70 63 6f 64 65 73 2e 6c 6f 20 6f  .lo opcodes.lo o
2ca0: 73 2e 6c 6f 20 6f 73 5f 75 6e 69 78 2e 6c 6f 20  s.lo os_unix.lo 
2cb0: 6f 73 5f 77 69 6e 2e 6c 6f 20 5c 0a 20 20 20 20  os_win.lo \.    
2cc0: 20 20 20 20 20 70 61 67 65 72 2e 6c 6f 20 70 61       pager.lo pa
2cd0: 72 73 65 2e 6c 6f 20 70 63 61 63 68 65 2e 6c 6f  rse.lo pcache.lo
2ce0: 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 61 67   pcache1.lo prag
2cf0: 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e 6c 6f  ma.lo prepare.lo
2d00: 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 20 20   printf.lo \.   
2d10: 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c 6f 20        random.lo 
2d20: 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 73 65  resolve.lo rowse
2d30: 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 73 65  t.lo rtree.lo se
2d40: 6c 65 63 74 2e 6c 6f 20 73 74 61 74 75 73 2e 6c  lect.lo status.l
2d50: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 74 61 62  o \.         tab
2d60: 6c 65 2e 6c 6f 20 74 68 72 65 61 64 73 2e 6f 20  le.lo threads.o 
2d70: 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72 69 67  tokenize.lo trig
2d80: 67 65 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  ger.lo \.       
2d90: 20 20 75 70 64 61 74 65 2e 6c 6f 20 75 74 69 6c    update.lo util
2da0: 2e 6c 6f 20 76 61 63 75 75 6d 2e 6c 6f 20 5c 0a  .lo vacuum.lo \.
2db0: 20 20 20 20 20 20 20 20 20 76 64 62 65 2e 6c 6f           vdbe.lo
2dc0: 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62 65   vdbeapi.lo vdbe
2dd0: 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62 2e  aux.lo vdbeblob.
2de0: 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76 64  lo vdbemem.lo vd
2df0: 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20 20  besort.lo \.    
2e00: 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e 6c       vdbetrace.l
2e10: 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72 2e  o wal.lo walker.
2e20: 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 75 74 66 2e  lo where.lo utf.
2e30: 6c 6f 20 76 74 61 62 2e 6c 6f 0a 0a 23 20 4f 62  lo vtab.lo..# Ob
2e40: 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74  ject files for t
2e50: 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e  he amalgamation.
2e60: 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20 73 71  .#.LIBOBJS1 = sq
2e70: 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65 74 65  lite3.lo..# Dete
2e80: 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c 20 76  rmine the real v
2e90: 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a 20 62  alue of LIBOBJ b
2ea0: 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63 6f 6e  ased on the 'con
2eb0: 66 69 67 75 72 65 27 20 73 63 72 69 70 74 0a 23  figure' script.#
2ec0: 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47  .!IF $(USE_AMALG
2ed0: 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f  AMATION)==0.LIBO
2ee0: 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29  BJ = $(LIBOBJS0)
2ef0: 0a 21 45 4c 53 45 0a 4c 49 42 4f 42 4a 20 3d 20  .!ELSE.LIBOBJ = 
2f00: 24 28 4c 49 42 4f 42 4a 53 31 29 0a 21 45 4e 44  $(LIBOBJS1).!END
2f10: 49 46 0a 0a 23 20 41 6c 6c 20 6f 66 20 74 68 65  IF..# All of the
2f20: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c   source code fil
2f30: 65 73 2e 0a 23 0a 53 52 43 20 3d 20 5c 0a 20 20  es..#.SRC = \.  
2f40: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72  $(TOP)\src\alter
2f50: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
2f60: 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20  c\analyze.c \.  
2f70: 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63  $(TOP)\src\attac
2f80: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  h.c \.  $(TOP)\s
2f90: 72 63 5c 61 75 74 68 2e 63 20 5c 0a 20 20 24 28  rc\auth.c \.  $(
2fa0: 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e  TOP)\src\backup.
2fb0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
2fc0: 5c 62 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 28  \bitvec.c \.  $(
2fd0: 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78  TOP)\src\btmutex
2fe0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
2ff0: 63 5c 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28  c\btree.c \.  $(
3000: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68  TOP)\src\btree.h
3010: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3020: 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 24  btreeInt.h \.  $
3030: 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e  (TOP)\src\build.
3040: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3050: 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 20  \callback.c \.  
3060: 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c  $(TOP)\src\compl
3070: 65 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ete.c \.  $(TOP)
3080: 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20  \src\ctime.c \. 
3090: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65   $(TOP)\src\date
30a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
30b0: 63 5c 64 65 6c 65 74 65 2e 63 20 5c 0a 20 20 24  c\delete.c \.  $
30c0: 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63  (TOP)\src\expr.c
30d0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
30e0: 66 61 75 6c 74 2e 63 20 5c 0a 20 20 24 28 54 4f  fault.c \.  $(TO
30f0: 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 20 5c 0a  P)\src\fkey.c \.
3100: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e    $(TOP)\src\fun
3110: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  c.c \.  $(TOP)\s
3120: 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c 0a 20 20  rc\global.c \.  
3130: 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e  $(TOP)\src\hash.
3140: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3150: 5c 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f  \hash.h \.  $(TO
3160: 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 20  P)\src\hwtime.h 
3170: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69  \.  $(TOP)\src\i
3180: 6e 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f  nsert.c \.  $(TO
3190: 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e 63  P)\src\journal.c
31a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
31b0: 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20 24 28 54  legacy.c \.  $(T
31c0: 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e  OP)\src\loadext.
31d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
31e0: 5c 6d 61 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f  \main.c \.  $(TO
31f0: 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20  P)\src\malloc.c 
3200: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m
3210: 65 6d 30 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  em0.c \.  $(TOP)
3220: 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20  \src\mem1.c \.  
3230: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e  $(TOP)\src\mem2.
3240: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3250: 5c 6d 65 6d 33 2e 63 20 5c 0a 20 20 24 28 54 4f  \mem3.c \.  $(TO
3260: 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a  P)\src\mem5.c \.
3270: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem
3280: 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28  journal.c \.  $(
3290: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63  TOP)\src\mutex.c
32a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
32b0: 6d 75 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 4f  mutex.h \.  $(TO
32c0: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f  P)\src\mutex_noo
32d0: 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  p.c \.  $(TOP)\s
32e0: 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 20  rc\mutex_unix.c 
32f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m
3300: 75 74 65 78 5f 77 33 32 2e 63 20 5c 0a 20 20 24  utex_w32.c \.  $
3310: 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79  (TOP)\src\notify
3320: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3330: 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50  c\os.c \.  $(TOP
3340: 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 24  )\src\os.h \.  $
3350: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d  (TOP)\src\os_com
3360: 6d 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  mon.h \.  $(TOP)
3370: 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c  \src\os_unix.c \
3380: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  .  $(TOP)\src\os
3390: 5f 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _win.c \.  $(TOP
33a0: 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a  )\src\pager.c \.
33b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67    $(TOP)\src\pag
33c0: 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.h \.  $(TOP)\
33d0: 73 72 63 5c 70 61 72 73 65 2e 79 20 5c 0a 20 20  src\parse.y \.  
33e0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach
33f0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
3400: 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a 20 20  rc\pcache.h \.  
3410: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach
3420: 65 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  e1.c \.  $(TOP)\
3430: 73 72 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20  src\pragma.c \. 
3440: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70   $(TOP)\src\prep
3450: 61 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  are.c \.  $(TOP)
3460: 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a  \src\printf.c \.
3470: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e    $(TOP)\src\ran
3480: 64 6f 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  dom.c \.  $(TOP)
3490: 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c  \src\resolve.c \
34a0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  .  $(TOP)\src\ro
34b0: 77 73 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  wset.c \.  $(TOP
34c0: 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c  )\src\select.c \
34d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74  .  $(TOP)\src\st
34e0: 61 74 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50  atus.c \.  $(TOP
34f0: 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20 5c 0a  )\src\shell.c \.
3500: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c    $(TOP)\src\sql
3510: 69 74 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28 54  ite.h.in \.  $(T
3520: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 65  OP)\src\sqlite3e
3530: 78 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  xt.h \.  $(TOP)\
3540: 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20  src\sqliteInt.h 
3550: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73  \.  $(TOP)\src\s
3560: 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20  qliteLimit.h \. 
3570: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c   $(TOP)\src\tabl
3580: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
3590: 72 63 5c 74 68 72 65 61 64 73 2e 63 20 5c 0a 20  rc\threads.c \. 
35a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls
35b0: 71 6c 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f  qlite.c \.  $(TO
35c0: 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e  P)\src\tokenize.
35d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
35e0: 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20 20 24  \trigger.c \.  $
35f0: 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 20  (TOP)\src\utf.c 
3600: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75  \.  $(TOP)\src\u
3610: 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f  pdate.c \.  $(TO
3620: 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a  P)\src\util.c \.
3630: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63    $(TOP)\src\vac
3640: 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  uum.c \.  $(TOP)
3650: 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a 20 20  \src\vdbe.c \.  
3660: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e  $(TOP)\src\vdbe.
3670: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src
3680: 5c 76 64 62 65 61 70 69 2e 63 20 5c 0a 20 20 24  \vdbeapi.c \.  $
3690: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75  (TOP)\src\vdbeau
36a0: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s
36b0: 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 5c 0a  rc\vdbeblob.c \.
36c0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb
36d0: 65 6d 65 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50  emem.c \.  $(TOP
36e0: 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63  )\src\vdbesort.c
36f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3700: 76 64 62 65 74 72 61 63 65 2e 63 20 5c 0a 20 20  vdbetrace.c \.  
3710: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49  $(TOP)\src\vdbeI
3720: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nt.h \.  $(TOP)\
3730: 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a 20 20 24  src\vtab.c \.  $
3740: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20  (TOP)\src\wal.c 
3750: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77  \.  $(TOP)\src\w
3760: 61 6c 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  al.h \.  $(TOP)\
3770: 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20  src\walker.c \. 
3780: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher
3790: 65 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  e.c..# Source co
37a0: 64 65 20 66 6f 72 20 65 78 74 65 6e 73 69 6f 6e  de for extension
37b0: 73 0a 23 0a 53 52 43 20 3d 20 24 28 53 52 43 29  s.#.SRC = $(SRC)
37c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
37d0: 66 74 73 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20  fts1\fts1.c \.  
37e0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\
37f0: 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts1.h \.  $(TOP
3800: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
3810: 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hash.c \.  $(TOP
3820: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
3830: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP
3840: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
3850: 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54  porter.c \.  $(T
3860: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
3870: 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a  1_tokenizer.h \.
3880: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
3890: 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72  1\fts1_tokenizer
38a0: 31 2e 63 0a 53 52 43 20 3d 20 24 28 53 52 43 29  1.c.SRC = $(SRC)
38b0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
38c0: 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20 20  fts2\fts2.c \.  
38d0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
38e0: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts2.h \.  $(TOP
38f0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
3900: 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hash.c \.  $(TOP
3910: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
3920: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP
3930: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
3940: 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  icu.c \.  $(TOP)
3950: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70  \ext\fts2\fts2_p
3960: 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  orter.c \.  $(TO
3970: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
3980: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20  _tokenizer.h \. 
3990: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
39a0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
39b0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
39c0: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e  \fts2\fts2_token
39d0: 69 7a 65 72 31 2e 63 0a 53 52 43 20 3d 20 24 28  izer1.c.SRC = $(
39e0: 53 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c  SRC) \.  $(TOP)\
39f0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20  ext\fts3\fts3.c 
3a00: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
3a10: 74 73 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24  ts3\fts3.h \.  $
3a20: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
3a30: 74 73 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54  ts3Int.h \.  $(T
3a40: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
3a50: 33 5f 61 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f  3_aux.c \.  $(TO
3a60: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3a70: 5f 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f  _expr.c \.  $(TO
3a80: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3a90: 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f  _hash.c \.  $(TO
3aa0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3ab0: 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f  _hash.h \.  $(TO
3ac0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3ad0: 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _icu.c \.  $(TOP
3ae0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
3af0: 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54  porter.c \.  $(T
3b00: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
3b10: 33 5f 73 6e 69 70 70 65 74 2e 63 20 5c 0a 20 20  3_snippet.c \.  
3b20: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
3b30: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68  fts3_tokenizer.h
3b40: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3b50: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
3b60: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  zer.c \.  $(TOP)
3b70: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
3b80: 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20  okenizer1.c \.  
3b90: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
3ba0: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20 5c  fts3_unicode.c \
3bb0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
3bc0: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32  s3\fts3_unicode2
3bd0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
3be0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74  t\fts3\fts3_writ
3bf0: 65 2e 63 0a 53 52 43 20 3d 20 24 28 53 52 43 29  e.c.SRC = $(SRC)
3c00: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
3c10: 69 63 75 5c 73 71 6c 69 74 65 69 63 75 2e 68 20  icu\sqliteicu.h 
3c20: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69  \.  $(TOP)\ext\i
3c30: 63 75 5c 69 63 75 2e 63 0a 53 52 43 20 3d 20 24  cu\icu.c.SRC = $
3c40: 28 53 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29  (SRC) \.  $(TOP)
3c50: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
3c60: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
3c70: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a  t\rtree\rtree.c.
3c80: 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 73 6f  ..# Generated so
3c90: 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 0a  urce code files.
3ca0: 23 0a 53 52 43 20 3d 20 24 28 53 52 43 29 20 5c  #.SRC = $(SRC) \
3cb0: 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68  .  keywordhash.h
3cc0: 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63 20 5c   \.  opcodes.c \
3cd0: 0a 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20  .  opcodes.h \. 
3ce0: 20 70 61 72 73 65 2e 63 20 5c 0a 20 20 70 61 72   parse.c \.  par
3cf0: 73 65 2e 68 20 5c 0a 20 20 73 71 6c 69 74 65 33  se.h \.  sqlite3
3d00: 2e 68 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64  .h..# Source cod
3d10: 65 20 74 6f 20 74 68 65 20 74 65 73 74 20 66 69  e to the test fi
3d20: 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52 43 20 3d  les..#.TESTSRC =
3d30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
3d40: 74 65 73 74 31 2e 63 20 5c 0a 20 20 24 28 54 4f  test1.c \.  $(TO
3d50: 50 29 5c 73 72 63 5c 74 65 73 74 32 2e 63 20 5c  P)\src\test2.c \
3d60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
3d70: 73 74 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  st3.c \.  $(TOP)
3d80: 5c 73 72 63 5c 74 65 73 74 34 2e 63 20 5c 0a 20  \src\test4.c \. 
3d90: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
3da0: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  5.c \.  $(TOP)\s
3db0: 72 63 5c 74 65 73 74 36 2e 63 20 5c 0a 20 20 24  rc\test6.c \.  $
3dc0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 37 2e  (TOP)\src\test7.
3dd0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
3de0: 5c 74 65 73 74 38 2e 63 20 5c 0a 20 20 24 28 54  \test8.c \.  $(T
3df0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 39 2e 63 20  OP)\src\test9.c 
3e00: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3e10: 65 73 74 5f 61 75 74 6f 65 78 74 2e 63 20 5c 0a  est_autoext.c \.
3e20: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3e30: 74 5f 61 73 79 6e 63 2e 63 20 5c 0a 20 20 24 28  t_async.c \.  $(
3e40: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 61  TOP)\src\test_ba
3e50: 63 6b 75 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ckup.c \.  $(TOP
3e60: 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 72 65 65  )\src\test_btree
3e70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3e80: 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67 2e 63 20  c\test_config.c 
3e90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3ea0: 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63 20 5c 0a  est_demovfs.c \.
3eb0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
3ec0: 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a 20 20 24  t_devsym.c \.  $
3ed0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66  (TOP)\src\test_f
3ee0: 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  unc.c \.  $(TOP)
3ef0: 5c 73 72 63 5c 74 65 73 74 5f 66 75 7a 7a 65 72  \src\test_fuzzer
3f00: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
3f10: 63 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63 20 5c  c\test_hexio.c \
3f20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
3f30: 73 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 24 28  st_init.c \.  $(
3f40: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e  TOP)\src\test_in
3f50: 74 61 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54  tarray.c \.  $(T
3f60: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a 6f 75  OP)\src\test_jou
3f70: 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50  rnal.c \.  $(TOP
3f80: 29 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c 6c 6f  )\src\test_mallo
3f90: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  c.c \.  $(TOP)\s
3fa0: 72 63 5c 74 65 73 74 5f 6d 75 6c 74 69 70 6c 65  rc\test_multiple
3fb0: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s
3fc0: 72 63 5c 74 65 73 74 5f 6d 75 74 65 78 2e 63 20  rc\test_mutex.c 
3fd0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
3fe0: 65 73 74 5f 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a  est_onefile.c \.
3ff0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
4000: 74 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a 20 20 24  t_osinst.c \.  $
4010: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 70  (TOP)\src\test_p
4020: 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f  cache.c \.  $(TO
4030: 50 29 5c 73 72 63 5c 74 65 73 74 5f 71 75 6f 74  P)\src\test_quot
4040: 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  a.c \.  $(TOP)\s
4050: 72 63 5c 74 65 73 74 5f 72 74 72 65 65 2e 63 20  rc\test_rtree.c 
4060: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
4070: 65 73 74 5f 73 63 68 65 6d 61 2e 63 20 5c 0a 20  est_schema.c \. 
4080: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
4090: 5f 73 65 72 76 65 72 2e 63 20 5c 0a 20 20 24 28  _server.c \.  $(
40a0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 75  TOP)\src\test_su
40b0: 70 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20 20 24 28  perlock.c \.  $(
40c0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 79  TOP)\src\test_sy
40d0: 73 63 61 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  scall.c \.  $(TO
40e0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 74 61 74  P)\src\test_stat
40f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
4100: 63 5c 74 65 73 74 5f 74 63 6c 76 61 72 2e 63 20  c\test_tclvar.c 
4110: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
4120: 65 73 74 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20  est_thread.c \. 
4130: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
4140: 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _vfs.c \.  $(TOP
4150: 29 5c 73 72 63 5c 74 65 73 74 5f 77 68 6f 6c 65  )\src\test_whole
4160: 6e 75 6d 62 65 72 2e 63 20 5c 0a 20 20 24 28 54  number.c \.  $(T
4170: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 73 64  OP)\src\test_wsd
4180: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
4190: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 72 6d  t\fts3\fts3_term
41a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
41b0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 73 74  t\fts3\fts3_test
41c0: 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64  .c..# Source cod
41d0: 65 20 74 6f 20 74 68 65 20 6c 69 62 72 61 72 79  e to the library
41e0: 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 62 79   files needed by
41f0: 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75 72   the test fixtur
4200: 65 0a 23 0a 54 45 53 54 53 52 43 32 20 3d 20 5c  e.#.TESTSRC2 = \
4210: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74  .  $(TOP)\src\at
4220: 74 61 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tach.c \.  $(TOP
4230: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c  )\src\backup.c \
4240: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  .  $(TOP)\src\bi
4250: 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tvec.c \.  $(TOP
4260: 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a  )\src\btree.c \.
4270: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69    $(TOP)\src\bui
4280: 6c 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ld.c \.  $(TOP)\
4290: 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20  src\ctime.c \.  
42a0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e  $(TOP)\src\date.
42b0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
42c0: 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f  \expr.c \.  $(TO
42d0: 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a  P)\src\func.c \.
42e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73    $(TOP)\src\ins
42f0: 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ert.c \.  $(TOP)
4300: 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24  \src\wal.c \.  $
4310: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63  (TOP)\src\mem5.c
4320: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4330: 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  os.c \.  $(TOP)\
4340: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a  src\os_unix.c \.
4350: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_
4360: 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  win.c \.  $(TOP)
4370: 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a 20  \src\pager.c \. 
4380: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67   $(TOP)\src\prag
4390: 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ma.c \.  $(TOP)\
43a0: 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 5c 0a  src\prepare.c \.
43b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69    $(TOP)\src\pri
43c0: 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ntf.c \.  $(TOP)
43d0: 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 5c 0a  \src\random.c \.
43e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61    $(TOP)\src\pca
43f0: 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  che.c \.  $(TOP)
4400: 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 5c  \src\pcache1.c \
4410: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65  .  $(TOP)\src\se
4420: 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lect.c \.  $(TOP
4430: 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63  )\src\tokenize.c
4440: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
4450: 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  utf.c \.  $(TOP)
4460: 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20  \src\util.c \.  
4470: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61  $(TOP)\src\vdbea
4480: 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pi.c \.  $(TOP)\
4490: 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 5c 0a  src\vdbeaux.c \.
44a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb
44b0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s
44c0: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20  rc\vdbemem.c \. 
44d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe
44e0: 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sort.c \.  $(TOP
44f0: 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e  )\src\vdbetrace.
4500: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
4510: 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20 70 61 72  \where.c \.  par
4520: 73 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  se.c \.  $(TOP)\
4530: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20  ext\fts3\fts3.c 
4540: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4550: 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 5c  ts3\fts3_aux.c \
4560: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
4570: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 5c  s3\fts3_expr.c \
4580: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
4590: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
45a0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.c \.  $(TOP)\e
45b0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
45c0: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  code.c \.  $(TOP
45d0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
45e0: 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24  unicode2.c \.  $
45f0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
4600: 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 20  ts3_write.c \.  
4610: 24 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63  $(TOP)\ext\async
4620: 5c 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 0a  \sqlite3async.c.
4630: 0a 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20  .# Header files 
4640: 75 73 65 64 20 62 79 20 61 6c 6c 20 6c 69 62 72  used by all libr
4650: 61 72 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73  ary source files
4660: 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24  ..#.HDR = \.   $
4670: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
4680: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr
4690: 63 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20  c\btreeInt.h \. 
46a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73    $(TOP)\src\has
46b0: 68 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  h.h \.   $(TOP)\
46c0: 73 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20  src\hwtime.h \. 
46d0: 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20    keywordhash.h 
46e0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\
46f0: 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 6f 70 63  mutex.h \.   opc
4700: 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f  odes.h \.   $(TO
4710: 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20  P)\src\os.h \.  
4720: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63   $(TOP)\src\os_c
4730: 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 24 28 54  ommon.h \.   $(T
4740: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20  OP)\src\pager.h 
4750: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\
4760: 70 63 61 63 68 65 2e 68 20 5c 0a 20 20 20 70 61  pcache.h \.   pa
4770: 72 73 65 2e 68 20 5c 0a 20 20 20 73 71 6c 69 74  rse.h \.   sqlit
4780: 65 33 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  e3.h \.   $(TOP)
4790: 5c 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e  \src\sqlite3ext.
47a0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr
47b0: 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a  c\sqliteInt.h \.
47c0: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71     $(TOP)\src\sq
47d0: 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20  liteLimit.h \.  
47e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe
47f0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s
4800: 72 63 5c 76 64 62 65 49 6e 74 2e 68 0a 0a 23 20  rc\vdbeInt.h..# 
4810: 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65  Header files use
4820: 64 20 62 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a  d by extensions.
4830: 23 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  #.EXTHDR = $(EXT
4840: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c  HDR) \.  $(TOP)\
4850: 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20  ext\fts1\fts1.h 
4860: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4870: 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20  ts1\fts1_hash.h 
4880: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
4890: 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a  ts1\fts1_tokeniz
48a0: 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28  er.h.EXTHDR = $(
48b0: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO
48c0: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
48d0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
48e0: 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68  t\fts2\fts2_hash
48f0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
4900: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65  t\fts2\fts2_toke
4910: 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d  nizer.h.EXTHDR =
4920: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24   $(EXTHDR) \.  $
4930: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
4940: 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts3.h \.  $(TOP)
4950: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e  \ext\fts3\fts3In
4960: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  t.h \.  $(TOP)\e
4970: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73  xt\fts3\fts3_has
4980: 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  h.h \.  $(TOP)\e
4990: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
49a0: 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20  enizer.h.EXTHDR 
49b0: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \.  
49c0: 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65  $(TOP)\ext\rtree
49d0: 5c 72 74 72 65 65 2e 68 0a 45 58 54 48 44 52 20  \rtree.h.EXTHDR 
49e0: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \.  
49f0: 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73  $(TOP)\ext\icu\s
4a00: 71 6c 69 74 65 69 63 75 2e 68 0a 45 58 54 48 44  qliteicu.h.EXTHD
4a10: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \.
4a20: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72    $(TOP)\ext\rtr
4a30: 65 65 5c 73 71 6c 69 74 65 33 72 74 72 65 65 2e  ee\sqlite3rtree.
4a40: 68 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65  h..# This is the
4a50: 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 66 69 6c   default Makefil
4a60: 65 20 74 61 72 67 65 74 2e 20 20 54 68 65 20 6f  e target.  The o
4a70: 62 6a 65 63 74 73 20 6c 69 73 74 65 64 20 68 65  bjects listed he
4a80: 72 65 0a 23 20 61 72 65 20 77 68 61 74 20 67 65  re.# are what ge
4a90: 74 20 62 75 69 6c 64 20 77 68 65 6e 20 79 6f 75  t build when you
4aa0: 20 74 79 70 65 20 6a 75 73 74 20 22 6d 61 6b 65   type just "make
4ab0: 22 20 77 69 74 68 20 6e 6f 20 61 72 67 75 6d 65  " with no argume
4ac0: 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64 6c 6c 20  nts..#.all:.dll 
4ad0: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 73  libsqlite3.lib s
4ae0: 71 6c 69 74 65 33 2e 65 78 65 20 6c 69 62 74 63  qlite3.exe libtc
4af0: 6c 73 71 6c 69 74 65 33 2e 6c 69 62 0a 0a 6c 69  lsqlite3.lib..li
4b00: 62 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 24 28  bsqlite3.lib:.$(
4b10: 4c 49 42 4f 42 4a 29 0a 09 24 28 4c 54 4c 49 42  LIBOBJ)..$(LTLIB
4b20: 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20 2f  ) $(LTLIBOPTS) /
4b30: 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29  OUT:$@ $(LIBOBJ)
4b40: 20 24 28 54 4c 49 42 53 29 0a 0a 6c 69 62 74 63   $(TLIBS)..libtc
4b50: 6c 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 74 63  lsqlite3.lib:.tc
4b60: 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 71  lsqlite.lo libsq
4b70: 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c 54 4c  lite3.lib..$(LTL
4b80: 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29  IB) $(LTLIBOPTS)
4b90: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) /
4ba0: 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 74 65  OUT:$@ tclsqlite
4bb0: 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  .lo libsqlite3.l
4bc0: 69 62 20 24 28 4c 49 42 54 43 4c 3a 74 63 6c 3d  ib $(LIBTCL:tcl=
4bd0: 74 63 6c 73 74 75 62 29 20 24 28 54 4c 49 42 53  tclstub) $(TLIBS
4be0: 29 0a 0a 73 71 6c 69 74 65 33 2e 65 78 65 3a 09  )..sqlite3.exe:.
4bf0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c  $(TOP)\src\shell
4c00: 2e 63 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  .c libsqlite3.li
4c10: 62 20 73 71 6c 69 74 65 33 2e 68 0a 09 24 28 4c  b sqlite3.h..$(L
4c20: 54 4c 49 4e 4b 29 20 24 28 52 45 41 44 4c 49 4e  TLINK) $(READLIN
4c30: 45 5f 46 4c 41 47 53 29 20 5c 0a 09 09 24 28 54  E_FLAGS) \...$(T
4c40: 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20  OP)\src\shell.c 
4c50: 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 54 4c 49  \.../link $(LTLI
4c60: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP
4c70: 41 54 48 53 29 20 6c 69 62 73 71 6c 69 74 65 33  ATHS) libsqlite3
4c80: 2e 6c 69 62 20 24 28 4c 49 42 52 45 41 44 4c 49  .lib $(LIBREADLI
4c90: 4e 45 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28  NE) $(LTLIBS) $(
4ca0: 54 4c 49 42 53 29 0a 0a 23 20 54 68 69 73 20 74  TLIBS)..# This t
4cb0: 61 72 67 65 74 20 63 72 65 61 74 65 73 20 61 20  arget creates a 
4cc0: 64 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 64 20  directory named 
4cd0: 22 74 73 72 63 22 20 61 6e 64 20 66 69 6c 6c 73  "tsrc" and fills
4ce0: 20 69 74 20 77 69 74 68 0a 23 20 63 6f 70 69 65   it with.# copie
4cf0: 73 20 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65 20  s of all of the 
4d00: 43 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e  C source code an
4d10: 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 6e  d header files n
4d20: 65 65 64 65 64 20 74 6f 0a 23 20 62 75 69 6c 64  eeded to.# build
4d30: 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 73   on the target s
4d40: 79 73 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20  ystem.  Some of 
4d50: 74 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64  the C source cod
4d60: 65 20 61 6e 64 20 68 65 61 64 65 72 0a 23 20 66  e and header.# f
4d70: 69 6c 65 73 20 61 72 65 20 61 75 74 6f 6d 61 74  iles are automat
4d80: 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64  ically generated
4d90: 2e 20 20 54 68 69 73 20 74 61 72 67 65 74 20 74  .  This target t
4da0: 61 6b 65 73 20 63 61 72 65 20 6f 66 0a 23 20 61  akes care of.# a
4db0: 6c 6c 20 74 68 61 74 20 61 75 74 6f 6d 61 74 69  ll that automati
4dc0: 63 20 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a  c generation..#.
4dd0: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 3a 09  .target_source:.
4de0: 24 28 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f  $(SRC) $(TOP)\to
4df0: 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73  ol\vdbe-compress
4e00: 2e 74 63 6c 0a 09 2d 72 6d 64 69 72 20 2f 53 2f  .tcl..-rmdir /S/
4e10: 51 20 74 73 72 63 0a 09 2d 6d 6b 64 69 72 20 74  Q tsrc..-mkdir t
4e20: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
4e30: 24 28 53 52 43 29 29 20 64 6f 20 63 6f 70 79 20  $(SRC)) do copy 
4e40: 2f 59 20 25 69 20 74 73 72 63 0a 09 64 65 6c 20  /Y %i tsrc..del 
4e50: 2f 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e 68  /Q tsrc\sqlite.h
4e60: 2e 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e 79  .in tsrc\parse.y
4e70: 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  ..$(TCLSH_CMD) $
4e80: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d  (TOP)\tool\vdbe-
4e90: 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20 3c 20 74  compress.tcl < t
4ea0: 73 72 63 5c 76 64 62 65 2e 63 20 3e 20 76 64 62  src\vdbe.c > vdb
4eb0: 65 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64 62 65  e.new..move vdbe
4ec0: 2e 6e 65 77 20 74 73 72 63 5c 76 64 62 65 2e 63  .new tsrc\vdbe.c
4ed0: 0a 09 65 63 68 6f 20 3e 20 2e 74 61 72 67 65 74  ..echo > .target
4ee0: 5f 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74 65 33  _source..sqlite3
4ef0: 2e 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 72  .c:..target_sour
4f00: 63 65 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  ce $(TOP)\tool\m
4f10: 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 09 24  ksqlite3c.tcl..$
4f20: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO
4f30: 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65  P)\tool\mksqlite
4f40: 33 63 2e 74 63 6c 0a 0a 73 71 6c 69 74 65 33 2d  3c.tcl..sqlite3-
4f50: 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65 33 2e 63  all.c:.sqlite3.c
4f60: 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 73 70 6c   $(TOP)/tool/spl
4f70: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a  it-sqlite3c.tcl.
4f80: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD) $(
4f90: 54 4f 50 29 2f 74 6f 6f 6c 2f 73 70 6c 69 74 2d  TOP)/tool/split-
4fa0: 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 0a 23 20  sqlite3c.tcl..# 
4fb0: 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68  Rule to build th
4fc0: 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23  e amalgamation.#
4fd0: 0a 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 73 71 6c  .sqlite3.lo:.sql
4fe0: 69 74 65 33 2e 63 0a 09 24 28 4c 54 43 4f 4d 50  ite3.c..$(LTCOMP
4ff0: 49 4c 45 29 20 2d 63 20 73 71 6c 69 74 65 33 2e  ILE) -c sqlite3.
5000: 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75  c..# Rules to bu
5010: 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e 20 63 6f  ild the LEMON co
5020: 6d 70 69 6c 65 72 20 67 65 6e 65 72 61 74 6f 72  mpiler generator
5030: 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09 24 28 54  .#.lempar.c:.$(T
5040: 4f 50 29 5c 73 72 63 5c 6c 65 6d 70 61 72 2e 63  OP)\src\lempar.c
5050: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 72  ..copy $(TOP)\sr
5060: 63 5c 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a 6c 65  c\lempar.c ...le
5070: 6d 6f 6e 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  mon.exe:.$(TOP)\
5080: 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c 65 6d  tool\lemon.c lem
5090: 70 61 72 2e 63 0a 09 24 28 42 43 43 29 20 2d 44  par.c..$(BCC) -D
50a0: 61 63 63 65 73 73 3d 5f 61 63 63 65 73 73 20 2d  access=_access -
50b0: 46 65 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  Fe$@ $(TOP)\tool
50c0: 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20 24  \lemon.c /link $
50d0: 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 23  (NLTLIBPATHS)..#
50e0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build 
50f0: 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20  individual *.lo 
5100: 66 69 6c 65 73 20 66 72 6f 6d 20 67 65 6e 65 72  files from gener
5110: 61 74 65 64 20 2a 2e 63 20 66 69 6c 65 73 2e 20  ated *.c files. 
5120: 54 68 69 73 0a 23 20 61 70 70 6c 69 65 73 20 74  This.# applies t
5130: 6f 3a 0a 23 0a 23 20 20 20 20 20 70 61 72 73 65  o:.#.#     parse
5140: 2e 6c 6f 0a 23 20 20 20 20 20 6f 70 63 6f 64 65  .lo.#     opcode
5150: 73 2e 6c 6f 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a  s.lo.#.parse.lo:
5160: 09 70 61 72 73 65 2e 63 20 24 28 48 44 52 29 0a  .parse.c $(HDR).
5170: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5180: 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65   parse.c..opcode
5190: 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a  s.lo:.opcodes.c.
51a0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
51b0: 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 23 20 52 75   opcodes.c..# Ru
51c0: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64  les to build ind
51d0: 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c  ividual *.lo fil
51e0: 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 20 69 6e  es from files in
51f0: 20 74 68 65 20 73 72 63 20 64 69 72 65 63 74 6f   the src directo
5200: 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a 09  ry..#.alter.lo:.
5210: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72  $(TOP)\src\alter
5220: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5230: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5240: 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 0a 0a 61  )\src\alter.c..a
5250: 6e 61 6c 79 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50  nalyze.lo:.$(TOP
5260: 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 20  )\src\analyze.c 
5270: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5280: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5290: 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74  rc\analyze.c..at
52a0: 74 61 63 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  tach.lo:.$(TOP)\
52b0: 73 72 63 5c 61 74 74 61 63 68 2e 63 20 24 28 48  src\attach.c $(H
52c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
52d0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
52e0: 61 74 74 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c  attach.c..auth.l
52f0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 75  o:.$(TOP)\src\au
5300: 74 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  th.c $(HDR)..$(L
5310: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5320: 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e 63 0a 0a  OP)\src\auth.c..
5330: 62 61 63 6b 75 70 2e 6c 6f 3a 09 24 28 54 4f 50  backup.lo:.$(TOP
5340: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 24  )\src\backup.c $
5350: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
5360: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
5370: 63 5c 62 61 63 6b 75 70 2e 63 0a 0a 62 69 74 76  c\backup.c..bitv
5380: 65 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ec.lo:.$(TOP)\sr
5390: 63 5c 62 69 74 76 65 63 2e 63 20 24 28 48 44 52  c\bitvec.c $(HDR
53a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
53b0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  -c $(TOP)\src\bi
53c0: 74 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 2e  tvec.c..btmutex.
53d0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62  lo:.$(TOP)\src\b
53e0: 74 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a  tmutex.c $(HDR).
53f0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5400: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75   $(TOP)\src\btmu
5410: 74 65 78 2e 63 0a 0a 62 74 72 65 65 2e 6c 6f 3a  tex.c..btree.lo:
5420: 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65  .$(TOP)\src\btre
5430: 65 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f 50  e.c $(HDR) $(TOP
5440: 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09 24  )\src\pager.h..$
5450: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5460: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
5470: 63 0a 0a 62 75 69 6c 64 2e 6c 6f 3a 09 24 28 54  c..build.lo:.$(T
5480: 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20  OP)\src\build.c 
5490: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
54a0: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
54b0: 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c  rc\build.c..call
54c0: 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  back.lo:.$(TOP)\
54d0: 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24  src\callback.c $
54e0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
54f0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
5500: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f  c\callback.c..co
5510: 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50  mplete.lo:.$(TOP
5520: 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63  )\src\complete.c
5530: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5540: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5550: 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 0a 0a  src\complete.c..
5560: 63 74 69 6d 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  ctime.lo:.$(TOP)
5570: 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 24 28 48  \src\ctime.c $(H
5580: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5590: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
55a0: 63 74 69 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f  ctime.c..date.lo
55b0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74  :.$(TOP)\src\dat
55c0: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
55d0: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
55e0: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a 0a 64  P)\src\date.c..d
55f0: 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  elete.lo:.$(TOP)
5600: 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 24 28  \src\delete.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 64 65 6c 65 74 65 2e 63 0a 0a 65 78 70 72 2e  \delete.c..expr.
5640: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 65  lo:.$(TOP)\src\e
5650: 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  xpr.c $(HDR)..$(
5660: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5670: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a  TOP)\src\expr.c.
5680: 0a 66 61 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50  .fault.lo:.$(TOP
5690: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 20 24 28  )\src\fault.c $(
56a0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
56b0: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
56c0: 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c  \fault.c..fkey.l
56d0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b  o:.$(TOP)\src\fk
56e0: 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ey.c $(HDR)..$(L
56f0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5700: 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 0a 0a  OP)\src\fkey.c..
5710: 66 75 6e 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  func.lo:.$(TOP)\
5720: 73 72 63 5c 66 75 6e 63 2e 63 20 24 28 48 44 52  src\func.c $(HDR
5730: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
5740: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75  -c $(TOP)\src\fu
5750: 6e 63 2e 63 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a  nc.c..global.lo:
5760: 09 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62  .$(TOP)\src\glob
5770: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5780: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5790: 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63  OP)\src\global.c
57a0: 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50  ..hash.lo:.$(TOP
57b0: 29 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28 48  )\src\hash.c $(H
57c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
57d0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
57e0: 68 61 73 68 2e 63 0a 0a 69 6e 73 65 72 74 2e 6c  hash.c..insert.l
57f0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e  o:.$(TOP)\src\in
5800: 73 65 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24  sert.c $(HDR)..$
5810: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5820: 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74  (TOP)\src\insert
5830: 2e 63 0a 0a 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09  .c..journal.lo:.
5840: 24 28 54 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e  $(TOP)\src\journ
5850: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5860: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5870: 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e  OP)\src\journal.
5880: 63 0a 0a 6c 65 67 61 63 79 2e 6c 6f 3a 09 24 28  c..legacy.lo:.$(
5890: 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e  TOP)\src\legacy.
58a0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
58b0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP)
58c0: 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c  \src\legacy.c..l
58d0: 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50  oadext.lo:.$(TOP
58e0: 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20  )\src\loadext.c 
58f0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5900: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5910: 72 63 5c 6c 6f 61 64 65 78 74 2e 63 0a 0a 6d 61  rc\loadext.c..ma
5920: 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  in.lo:.$(TOP)\sr
5930: 63 5c 6d 61 69 6e 2e 63 20 24 28 48 44 52 29 0a  c\main.c $(HDR).
5940: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5950: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e   $(TOP)\src\main
5960: 2e 63 0a 0a 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24  .c..malloc.lo:.$
5970: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63  (TOP)\src\malloc
5980: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5990: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
59a0: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a  )\src\malloc.c..
59b0: 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  mem0.lo:.$(TOP)\
59c0: 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52  src\mem0.c $(HDR
59d0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
59e0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  -c $(TOP)\src\me
59f0: 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f 3a 09 24  m0.c..mem1.lo:.$
5a00: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63  (TOP)\src\mem1.c
5a10: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5a20: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5a30: 73 72 63 5c 6d 65 6d 31 2e 63 0a 0a 6d 65 6d 32  src\mem1.c..mem2
5a40: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
5a50: 6d 65 6d 32 2e 63 20 24 28 48 44 52 29 0a 09 24  mem2.c $(HDR)..$
5a60: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5a70: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63  (TOP)\src\mem2.c
5a80: 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50  ..mem3.lo:.$(TOP
5a90: 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48  )\src\mem3.c $(H
5aa0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5ab0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
5ac0: 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c 6f 3a  mem3.c..mem5.lo:
5ad0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35  .$(TOP)\src\mem5
5ae0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5af0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5b00: 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 0a 0a 6d 65  )\src\mem5.c..me
5b10: 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54  mjournal.lo:.$(T
5b20: 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e  OP)\src\memjourn
5b30: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  al.c $(HDR)..$(L
5b40: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T
5b50: 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e  OP)\src\memjourn
5b60: 61 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09  al.c..mutex.lo:.
5b70: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex
5b80: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5b90: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5ba0: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 0a 0a 6d  )\src\mutex.c..m
5bb0: 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24 28  utex_noop.lo:.$(
5bc0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e  TOP)\src\mutex_n
5bd0: 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28  oop.c $(HDR)..$(
5be0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5bf0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e  TOP)\src\mutex_n
5c00: 6f 6f 70 2e 63 0a 0a 6d 75 74 65 78 5f 75 6e 69  oop.c..mutex_uni
5c10: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  x.lo:.$(TOP)\src
5c20: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 20 24 28  \mutex_unix.c $(
5c30: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
5c40: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
5c50: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d  \mutex_unix.c..m
5c60: 75 74 65 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54  utex_w32.lo:.$(T
5c70: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33  OP)\src\mutex_w3
5c80: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  2.c $(HDR)..$(LT
5c90: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5ca0: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32  P)\src\mutex_w32
5cb0: 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24  .c..notify.lo:.$
5cc0: 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79  (TOP)\src\notify
5cd0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5ce0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
5cf0: 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63 0a 0a  )\src\notify.c..
5d00: 70 61 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  pager.lo:.$(TOP)
5d10: 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 24 28 48  \src\pager.c $(H
5d20: 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  DR) $(TOP)\src\p
5d30: 61 67 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50  ager.h..$(LTCOMP
5d40: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5d50: 72 63 5c 70 61 67 65 72 2e 63 0a 0a 70 63 61 63  rc\pager.c..pcac
5d60: 68 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  he.lo:.$(TOP)\sr
5d70: 63 5c 70 63 61 63 68 65 2e 63 20 24 28 48 44 52  c\pcache.c $(HDR
5d80: 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61  ) $(TOP)\src\pca
5d90: 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49  che.h..$(LTCOMPI
5da0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
5db0: 63 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63 61 63  c\pcache.c..pcac
5dc0: 68 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  he1.lo:.$(TOP)\s
5dd0: 72 63 5c 70 63 61 63 68 65 31 2e 63 20 24 28 48  rc\pcache1.c $(H
5de0: 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  DR) $(TOP)\src\p
5df0: 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d  cache.h..$(LTCOM
5e00: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
5e10: 73 72 63 5c 70 63 61 63 68 65 31 2e 63 0a 0a 6f  src\pcache1.c..o
5e20: 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  s.lo:.$(TOP)\src
5e30: 5c 6f 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28  \os.c $(HDR)..$(
5e40: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
5e50: 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f  TOP)\src\os.c..o
5e60: 73 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50  s_unix.lo:.$(TOP
5e70: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20  )\src\os_unix.c 
5e80: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
5e90: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
5ea0: 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73  rc\os_unix.c..os
5eb0: 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  _win.lo:.$(TOP)\
5ec0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28 48  src\os_win.c $(H
5ed0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
5ee0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
5ef0: 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61 67 6d 61  os_win.c..pragma
5f00: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
5f10: 70 72 61 67 6d 61 2e 63 20 24 28 48 44 52 29 0a  pragma.c $(HDR).
5f20: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
5f30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67   $(TOP)\src\prag
5f40: 6d 61 2e 63 0a 0a 70 72 65 70 61 72 65 2e 6c 6f  ma.c..prepare.lo
5f50: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65  :.$(TOP)\src\pre
5f60: 70 61 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24  pare.c $(HDR)..$
5f70: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
5f80: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
5f90: 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09  e.c..printf.lo:.
5fa0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74  $(TOP)\src\print
5fb0: 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  f.c $(HDR)..$(LT
5fc0: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
5fd0: 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 0a  P)\src\printf.c.
5fe0: 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24 28 54 4f  .random.lo:.$(TO
5ff0: 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20  P)\src\random.c 
6000: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
6010: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
6020: 72 63 5c 72 61 6e 64 6f 6d 2e 63 0a 0a 72 65 73  rc\random.c..res
6030: 6f 6c 76 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  olve.lo:.$(TOP)\
6040: 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 24 28  src\resolve.c $(
6050: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
6060: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
6070: 5c 72 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73  \resolve.c..rows
6080: 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  et.lo:.$(TOP)\sr
6090: 63 5c 72 6f 77 73 65 74 2e 63 20 24 28 48 44 52  c\rowset.c $(HDR
60a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
60b0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  -c $(TOP)\src\ro
60c0: 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63 74 2e 6c  wset.c..select.l
60d0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 65  o:.$(TOP)\src\se
60e0: 6c 65 63 74 2e 63 20 24 28 48 44 52 29 0a 09 24  lect.c $(HDR)..$
60f0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $
6100: 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74  (TOP)\src\select
6110: 2e 63 0a 0a 73 74 61 74 75 73 2e 6c 6f 3a 09 24  .c..status.lo:.$
6120: 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75 73  (TOP)\src\status
6130: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
6140: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
6150: 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a  )\src\status.c..
6160: 74 61 62 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  table.lo:.$(TOP)
6170: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 24 28 48  \src\table.c $(H
6180: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
6190: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
61a0: 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65 61 64 73  table.c..threads
61b0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
61c0: 74 68 72 65 61 64 73 2e 63 20 24 28 48 44 52 29  threads.c $(HDR)
61d0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
61e0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72  c $(TOP)\src\thr
61f0: 65 61 64 73 2e 63 0a 0a 74 6f 6b 65 6e 69 7a 65  eads.c..tokenize
6200: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
6210: 74 6f 6b 65 6e 69 7a 65 2e 63 20 6b 65 79 77 6f  tokenize.c keywo
6220: 72 64 68 61 73 68 2e 68 20 24 28 48 44 52 29 0a  rdhash.h $(HDR).
6230: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
6240: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65   $(TOP)\src\toke
6250: 6e 69 7a 65 2e 63 0a 0a 74 72 69 67 67 65 72 2e  nize.c..trigger.
6260: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74  lo:.$(TOP)\src\t
6270: 72 69 67 67 65 72 2e 63 20 24 28 48 44 52 29 0a  rigger.c $(HDR).
6280: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c
6290: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 69 67   $(TOP)\src\trig
62a0: 67 65 72 2e 63 0a 0a 75 70 64 61 74 65 2e 6c 6f  ger.c..update.lo
62b0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 64  :.$(TOP)\src\upd
62c0: 61 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ate.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 75 70 64 61 74 65 2e  TOP)\src\update.
62f0: 63 0a 0a 75 74 66 2e 6c 6f 3a 09 24 28 54 4f 50  c..utf.lo:.$(TOP
6300: 29 5c 73 72 63 5c 75 74 66 2e 63 20 24 28 48 44  )\src\utf.c $(HD
6310: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6320: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75   -c $(TOP)\src\u
6330: 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a 09 24  tf.c..util.lo:.$
6340: 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63  (TOP)\src\util.c
6350: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
6360: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\
6370: 73 72 63 5c 75 74 69 6c 2e 63 0a 0a 76 61 63 75  src\util.c..vacu
6380: 75 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  um.lo:.$(TOP)\sr
6390: 63 5c 76 61 63 75 75 6d 2e 63 20 24 28 48 44 52  c\vacuum.c $(HDR
63a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
63b0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61  -c $(TOP)\src\va
63c0: 63 75 75 6d 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a  cuum.c..vdbe.lo:
63d0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65  .$(TOP)\src\vdbe
63e0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
63f0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
6400: 29 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76 64  )\src\vdbe.c..vd
6410: 62 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50 29  beapi.lo:.$(TOP)
6420: 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20 24  \src\vdbeapi.c $
6430: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6440: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
6450: 63 5c 76 64 62 65 61 70 69 2e 63 0a 0a 76 64 62  c\vdbeapi.c..vdb
6460: 65 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  eaux.lo:.$(TOP)\
6470: 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 24 28  src\vdbeaux.c $(
6480: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
6490: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src
64a0: 5c 76 64 62 65 61 75 78 2e 63 0a 0a 76 64 62 65  \vdbeaux.c..vdbe
64b0: 62 6c 6f 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  blob.lo:.$(TOP)\
64c0: 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 24  src\vdbeblob.c $
64d0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
64e0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
64f0: 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76 64  c\vdbeblob.c..vd
6500: 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29  bemem.lo:.$(TOP)
6510: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 24  \src\vdbemem.c $
6520: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6530: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
6540: 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a 76 64 62  c\vdbemem.c..vdb
6550: 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  esort.lo:.$(TOP)
6560: 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 20  \src\vdbesort.c 
6570: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
6580: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s
6590: 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 0a 0a 76  rc\vdbesort.c..v
65a0: 64 62 65 74 72 61 63 65 2e 6c 6f 3a 09 24 28 54  dbetrace.lo:.$(T
65b0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63  OP)\src\vdbetrac
65c0: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
65d0: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f  COMPILE) -c $(TO
65e0: 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65  P)\src\vdbetrace
65f0: 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24 28 54  .c..vtab.lo:.$(T
6600: 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 24  OP)\src\vtab.c $
6610: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
6620: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr
6630: 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c 2e 6c 6f  c\vtab.c..wal.lo
6640: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c  :.$(TOP)\src\wal
6650: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
6660: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP
6670: 29 5c 73 72 63 5c 77 61 6c 2e 63 0a 0a 77 61 6c  )\src\wal.c..wal
6680: 6b 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ker.lo:.$(TOP)\s
6690: 72 63 5c 77 61 6c 6b 65 72 2e 63 20 24 28 48 44  rc\walker.c $(HD
66a0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
66b0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77   -c $(TOP)\src\w
66c0: 61 6c 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e 6c  alker.c..where.l
66d0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68  o:.$(TOP)\src\wh
66e0: 65 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ere.c $(HDR)..$(
66f0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $(
6700: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63  TOP)\src\where.c
6710: 0a 0a 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 3a 09  ..tclsqlite.lo:.
6720: 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71  $(TOP)\src\tclsq
6730: 6c 69 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24  lite.c $(HDR)..$
6740: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 55 53  (LTCOMPILE) -DUS
6750: 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d 44  E_TCL_STUBS=1 -D
6760: 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24  BUILD_sqlite -I$
6770: 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 20 24  (TCLINCDIR) -c $
6780: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c  (TOP)\src\tclsql
6790: 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65  ite.c..tclsqlite
67a0: 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54 4f 50  -shell.lo:.$(TOP
67b0: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
67c0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
67d0: 4d 50 49 4c 45 29 20 2d 44 54 43 4c 53 48 3d 31  MPILE) -DTCLSH=1
67e0: 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20   -DBUILD_sqlite 
67f0: 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d  -I$(TCLINCDIR) -
6800: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c  c $(TOP)\src\tcl
6810: 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c  sqlite.c..tclsql
6820: 69 74 65 33 2e 65 78 65 3a 09 74 63 6c 73 71 6c  ite3.exe:.tclsql
6830: 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 6c 69 62  ite-shell.lo lib
6840: 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c  sqlite3.lib..$(L
6850: 54 4c 49 4e 4b 29 20 74 63 6c 73 71 6c 69 74 65  TLINK) tclsqlite
6860: 2d 73 68 65 6c 6c 2e 6c 6f 20 5c 0a 09 09 2f 6c  -shell.lo \.../l
6870: 69 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  ink $(LTLINKOPTS
6880: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  ) $(LTLIBPATHS) 
6890: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 24  libsqlite3.lib $
68a0: 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53  (LTLIBS) $(TLIBS
68b0: 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75  )..# Rules to bu
68c0: 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63 20 61 6e  ild opcodes.c an
68d0: 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23 0a 6f 70  d opcodes.h.#.op
68e0: 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f 64 65 73  codes.c:.opcodes
68f0: 2e 68 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 6f  .h $(TOP)\mkopco
6900: 64 65 63 2e 61 77 6b 0a 09 24 28 4e 41 57 4b 29  dec.awk..$(NAWK)
6910: 20 2d 66 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63   -f $(TOP)\mkopc
6920: 6f 64 65 63 2e 61 77 6b 20 6f 70 63 6f 64 65 73  odec.awk opcodes
6930: 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63 0a 0a  .h > opcodes.c..
6940: 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61 72 73 65  opcodes.h:.parse
6950: 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .h $(TOP)\src\vd
6960: 62 65 2e 63 20 24 28 54 4f 50 29 5c 6d 6b 6f 70  be.c $(TOP)\mkop
6970: 63 6f 64 65 68 2e 61 77 6b 0a 09 74 79 70 65 20  codeh.awk..type 
6980: 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 5c 73  parse.h $(TOP)\s
6990: 72 63 5c 76 64 62 65 2e 63 20 7c 20 24 28 4e 41  rc\vdbe.c | $(NA
69a0: 57 4b 29 20 2d 66 20 24 28 54 4f 50 29 5c 6d 6b  WK) -f $(TOP)\mk
69b0: 6f 70 63 6f 64 65 68 2e 61 77 6b 20 3e 20 6f 70  opcodeh.awk > op
69c0: 63 6f 64 65 73 2e 68 0a 0a 23 20 52 75 6c 65 73  codes.h..# Rules
69d0: 20 74 6f 20 62 75 69 6c 64 20 70 61 72 73 65 2e   to build parse.
69e0: 63 20 61 6e 64 20 70 61 72 73 65 2e 68 20 2d 20  c and parse.h - 
69f0: 74 68 65 20 6f 75 74 70 75 74 73 20 6f 66 20 6c  the outputs of l
6a00: 65 6d 6f 6e 2e 0a 23 0a 70 61 72 73 65 2e 68 3a  emon..#.parse.h:
6a10: 09 70 61 72 73 65 2e 63 0a 0a 70 61 72 73 65 2e  .parse.c..parse.
6a20: 63 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61  c:.$(TOP)\src\pa
6a30: 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65 20  rse.y lemon.exe 
6a40: 24 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f 64 65  $(TOP)\addopcode
6a50: 73 2e 61 77 6b 0a 09 64 65 6c 20 2f 51 20 70 61  s.awk..del /Q pa
6a60: 72 73 65 2e 79 20 70 61 72 73 65 2e 68 20 70 61  rse.y parse.h pa
6a70: 72 73 65 2e 68 2e 74 65 6d 70 0a 09 63 6f 70 79  rse.h.temp..copy
6a80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73   $(TOP)\src\pars
6a90: 65 2e 79 20 2e 0a 09 2e 5c 6c 65 6d 6f 6e 2e 65  e.y ....\lemon.e
6aa0: 78 65 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45  xe $(OPT_FEATURE
6ab0: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20  _FLAGS) $(OPTS) 
6ac0: 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20 70 61  parse.y..move pa
6ad0: 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74 65  rse.h parse.h.te
6ae0: 6d 70 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20 24  mp..$(NAWK) -f $
6af0: 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f 64 65 73  (TOP)\addopcodes
6b00: 2e 61 77 6b 20 70 61 72 73 65 2e 68 2e 74 65 6d  .awk parse.h.tem
6b10: 70 20 3e 20 70 61 72 73 65 2e 68 0a 0a 73 71 6c  p > parse.h..sql
6b20: 69 74 65 33 2e 68 3a 09 24 28 54 4f 50 29 5c 73  ite3.h:.$(TOP)\s
6b30: 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e 20 24  rc\sqlite.h.in $
6b40: 28 54 4f 50 29 5c 6d 61 6e 69 66 65 73 74 2e 75  (TOP)\manifest.u
6b50: 75 69 64 20 24 28 54 4f 50 29 5c 56 45 52 53 49  uid $(TOP)\VERSI
6b60: 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  ON..$(TCLSH_CMD)
6b70: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73   $(TOP)\tool\mks
6b80: 71 6c 69 74 65 33 68 2e 74 63 6c 20 24 28 54 4f  qlite3h.tcl $(TO
6b90: 50 29 20 3e 20 73 71 6c 69 74 65 33 2e 68 0a 0a  P) > sqlite3.h..
6ba0: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78  mkkeywordhash.ex
6bb0: 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  e:.$(TOP)\tool\m
6bc0: 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 0a 09  kkeywordhash.c..
6bd0: 24 28 42 43 43 29 20 2d 46 65 24 40 20 24 28 4f  $(BCC) -Fe$@ $(O
6be0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
6bf0: 29 20 24 28 4f 50 54 53 29 20 24 28 54 4f 50 29  ) $(OPTS) $(TOP)
6c00: 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68  \tool\mkkeywordh
6c10: 61 73 68 2e 63 20 2f 6c 69 6e 6b 20 24 28 4e 4c  ash.c /link $(NL
6c20: 54 4c 49 42 50 41 54 48 53 29 0a 0a 6b 65 79 77  TLIBPATHS)..keyw
6c30: 6f 72 64 68 61 73 68 2e 68 3a 09 24 28 54 4f 50  ordhash.h:.$(TOP
6c40: 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64  )\tool\mkkeyword
6c50: 68 61 73 68 2e 63 20 6d 6b 6b 65 79 77 6f 72 64  hash.c mkkeyword
6c60: 68 61 73 68 2e 65 78 65 0a 09 2e 5c 6d 6b 6b 65  hash.exe...\mkke
6c70: 79 77 6f 72 64 68 61 73 68 2e 65 78 65 20 3e 20  ywordhash.exe > 
6c80: 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 0a 0a 0a  keywordhash.h...
6c90: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c  .# Rules to buil
6ca0: 64 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e 20  d the extension 
6cb0: 6f 62 6a 65 63 74 73 2e 0a 23 0a 69 63 75 2e 6c  objects..#.icu.l
6cc0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 69 63  o:.$(TOP)\ext\ic
6cd0: 75 5c 69 63 75 2e 63 20 24 28 48 44 52 29 20 24  u\icu.c $(HDR) $
6ce0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO
6cf0: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
6d00: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e
6d10: 78 74 5c 69 63 75 5c 69 63 75 2e 63 0a 0a 66 74  xt\icu\icu.c..ft
6d20: 73 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  s2.lo:.$(TOP)\ex
6d30: 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 24 28  t\fts2\fts2.c $(
6d40: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR)..
6d50: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53  $(LTCOMPILE) -DS
6d60: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $(
6d70: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
6d80: 73 32 2e 63 0a 0a 66 74 73 32 5f 68 61 73 68 2e  s2.c..fts2_hash.
6d90: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
6da0: 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63 20  ts2\fts2_hash.c 
6db0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR) $(EXTHDR)
6dc0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) -
6dd0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c 
6de0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
6df0: 66 74 73 32 5f 68 61 73 68 2e 63 0a 0a 66 74 73  fts2_hash.c..fts
6e00: 32 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 29  2_icu.lo:.$(TOP)
6e10: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 69  \ext\fts2\fts2_i
6e20: 63 75 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  cu.c $(HDR) $(EX
6e30: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI
6e40: 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  LE) -DSQLITE_COR
6e50: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\
6e60: 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 0a  fts2\fts2_icu.c.
6e70: 0a 66 74 73 32 5f 70 6f 72 74 65 72 2e 6c 6f 3a  .fts2_porter.lo:
6e80: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32  .$(TOP)\ext\fts2
6e90: 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 24  \fts2_porter.c $
6ea0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR).
6eb0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44  .$(LTCOMPILE) -D
6ec0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $
6ed0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
6ee0: 74 73 32 5f 70 6f 72 74 65 72 2e 63 0a 0a 66 74  ts2_porter.c..ft
6ef0: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a  s2_tokenizer.lo:
6f00: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32  .$(TOP)\ext\fts2
6f10: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
6f20: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR) $(EXTHD
6f30: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
6f40: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
6f50: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts
6f60: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
6f70: 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  .c..fts2_tokeniz
6f80: 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  er1.lo:.$(TOP)\e
6f90: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b  xt\fts2\fts2_tok
6fa0: 65 6e 69 7a 65 72 31 2e 63 20 24 28 48 44 52 29  enizer1.c $(HDR)
6fb0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
6fc0: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
6fd0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
6fe0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
6ff0: 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 66 74 73  okenizer1.c..fts
7000: 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  3.lo:.$(TOP)\ext
7010: 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 24 28 48  \fts3\fts3.c $(H
7020: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
7030: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
7040: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
7050: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
7060: 33 2e 63 0a 0a 66 74 73 33 5f 61 75 78 2e 6c 6f  3.c..fts3_aux.lo
7070: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts
7080: 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 24 28 48  3\fts3_aux.c $(H
7090: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
70a0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
70b0: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
70c0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
70d0: 33 5f 61 75 78 2e 63 0a 0a 66 74 73 33 5f 65 78  3_aux.c..fts3_ex
70e0: 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  pr.lo:.$(TOP)\ex
70f0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72  t\fts3\fts3_expr
7100: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
7110: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
7120: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
7130: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft
7140: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 0a 0a  s3\fts3_expr.c..
7150: 66 74 73 33 5f 68 61 73 68 2e 6c 6f 3a 09 24 28  fts3_hash.lo:.$(
7160: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
7170: 73 33 5f 68 61 73 68 2e 63 20 24 28 48 44 52 29  s3_hash.c $(HDR)
7180: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
7190: 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54  COMPILE) -DSQLIT
71a0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
71b0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68  \ext\fts3\fts3_h
71c0: 61 73 68 2e 63 0a 0a 66 74 73 33 5f 69 63 75 2e  ash.c..fts3_icu.
71d0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
71e0: 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63 20 24  ts3\fts3_icu.c $
71f0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR).
7200: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44  .$(LTCOMPILE) -D
7210: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $
7220: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
7230: 74 73 33 5f 69 63 75 2e 63 0a 0a 66 74 73 33 5f  ts3_icu.c..fts3_
7240: 73 6e 69 70 70 65 74 2e 6c 6f 3a 09 24 28 54 4f  snippet.lo:.$(TO
7250: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7260: 5f 73 6e 69 70 70 65 74 2e 63 20 24 28 48 44 52  _snippet.c $(HDR
7270: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
7280: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
7290: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP
72a0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
72b0: 73 6e 69 70 70 65 74 2e 63 0a 0a 66 74 73 33 5f  snippet.c..fts3_
72c0: 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50  porter.lo:.$(TOP
72d0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
72e0: 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29 20  porter.c $(HDR) 
72f0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
7300: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45  OMPILE) -DSQLITE
7310: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
7320: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f  ext\fts3\fts3_po
7330: 72 74 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b  rter.c..fts3_tok
7340: 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50  enizer.lo:.$(TOP
7350: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
7360: 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 44  tokenizer.c $(HD
7370: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
7380: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c  LTCOMPILE) -DSQL
7390: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO
73a0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
73b0: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74  _tokenizer.c..ft
73c0: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f  s3_tokenizer1.lo
73d0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts
73e0: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  3\fts3_tokenizer
73f0: 31 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  1.c $(HDR) $(EXT
7400: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
7410: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  E) -DSQLITE_CORE
7420: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f
7430: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a  ts3\fts3_tokeniz
7440: 65 72 31 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63  er1.c..fts3_unic
7450: 6f 64 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ode.lo:.$(TOP)\e
7460: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
7470: 63 6f 64 65 2e 63 20 24 28 48 44 52 29 20 24 28  code.c $(HDR) $(
7480: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
7490: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43  PILE) -DSQLITE_C
74a0: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
74b0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63  t\fts3\fts3_unic
74c0: 6f 64 65 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63  ode.c..fts3_unic
74d0: 6f 64 65 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  ode2.lo:.$(TOP)\
74e0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e  ext\fts3\fts3_un
74f0: 69 63 6f 64 65 32 2e 63 20 24 28 48 44 52 29 20  icode2.c $(HDR) 
7500: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
7510: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45  OMPILE) -DSQLITE
7520: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
7530: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e  ext\fts3\fts3_un
7540: 69 63 6f 64 65 32 2e 63 0a 0a 66 74 73 33 5f 77  icode2.c..fts3_w
7550: 72 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  rite.lo:.$(TOP)\
7560: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72  ext\fts3\fts3_wr
7570: 69 74 65 2e 63 20 24 28 48 44 52 29 20 24 28 45  ite.c $(HDR) $(E
7580: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP
7590: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ILE) -DSQLITE_CO
75a0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext
75b0: 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65  \fts3\fts3_write
75c0: 2e 63 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24 28  .c..rtree.lo:.$(
75d0: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72  TOP)\ext\rtree\r
75e0: 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24 28  tree.c $(HDR) $(
75f0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
7600: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43  PILE) -DSQLITE_C
7610: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
7620: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a  t\rtree\rtree.c.
7630: 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69  ..# Rules to bui
7640: 6c 64 20 74 68 65 20 27 74 65 73 74 66 69 78 74  ld the 'testfixt
7650: 75 72 65 27 20 61 70 70 6c 69 63 61 74 69 6f 6e  ure' application
7660: 2e 0a 23 0a 23 20 49 66 20 75 73 69 6e 67 20 74  ..#.# If using t
7670: 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c  he amalgamation,
7680: 20 75 73 65 20 73 71 6c 69 74 65 33 2e 63 20 64   use sqlite3.c d
7690: 69 72 65 63 74 6c 79 20 74 6f 20 62 75 69 6c 64  irectly to build
76a0: 20 74 68 65 20 74 65 73 74 0a 23 20 66 69 78 74   the test.# fixt
76b0: 75 72 65 2e 20 20 4f 74 68 65 72 77 69 73 65 20  ure.  Otherwise 
76c0: 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 6c 69 62  link against lib
76d0: 73 71 6c 69 74 65 33 2e 6c 69 62 2e 20 20 28 54  sqlite3.lib.  (T
76e0: 68 69 73 20 64 69 73 74 69 6e 63 74 69 6f 6e 20  his distinction 
76f0: 69 73 0a 23 20 6e 65 63 65 73 73 61 72 79 20 62  is.# necessary b
7700: 65 63 61 75 73 65 20 74 68 65 20 74 65 73 74 20  ecause the test 
7710: 66 69 78 74 75 72 65 20 72 65 71 75 69 72 65 73  fixture requires
7720: 20 6e 6f 6e 2d 41 50 49 20 73 79 6d 62 6f 6c 73   non-API symbols
7730: 20 77 68 69 63 68 20 61 72 65 0a 23 20 68 69 64   which are.# hid
7740: 64 65 6e 20 77 68 65 6e 20 74 68 65 20 6c 69 62  den when the lib
7750: 72 61 72 79 20 69 73 20 62 75 69 6c 74 20 76 69  rary is built vi
7760: 61 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69  a the amalgamati
7770: 6f 6e 29 2e 0a 23 0a 54 45 53 54 46 49 58 54 55  on)..#.TESTFIXTU
7780: 52 45 5f 46 4c 41 47 53 20 3d 20 2d 44 54 43 4c  RE_FLAGS = -DTCL
7790: 53 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54 45  SH=1 -DSQLITE_TE
77a0: 53 54 3d 31 20 2d 44 53 51 4c 49 54 45 5f 43 52  ST=1 -DSQLITE_CR
77b0: 41 53 48 5f 54 45 53 54 3d 31 0a 54 45 53 54 46  ASH_TEST=1.TESTF
77c0: 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24  IXTURE_FLAGS = $
77d0: 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  (TESTFIXTURE_FLA
77e0: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 45 52  GS) -DSQLITE_SER
77f0: 56 45 52 3d 31 20 2d 44 53 51 4c 49 54 45 5f 50  VER=1 -DSQLITE_P
7800: 52 49 56 41 54 45 3d 22 22 20 2d 44 53 51 4c 49  RIVATE="" -DSQLI
7810: 54 45 5f 43 4f 52 45 0a 0a 54 45 53 54 46 49 58  TE_CORE..TESTFIX
7820: 54 55 52 45 5f 53 52 43 30 20 3d 20 24 28 54 45  TURE_SRC0 = $(TE
7830: 53 54 53 52 43 32 29 20 6c 69 62 73 71 6c 69 74  STSRC2) libsqlit
7840: 65 33 2e 6c 69 62 0a 54 45 53 54 46 49 58 54 55  e3.lib.TESTFIXTU
7850: 52 45 5f 53 52 43 31 20 3d 20 73 71 6c 69 74 65  RE_SRC1 = sqlite
7860: 33 2e 63 0a 21 49 46 20 24 28 55 53 45 5f 41 4d  3.c.!IF $(USE_AM
7870: 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 54  ALGAMATION)==0.T
7880: 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d  ESTFIXTURE_SRC =
7890: 20 24 28 54 45 53 54 53 52 43 29 20 24 28 54 4f   $(TESTSRC) $(TO
78a0: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
78b0: 2e 63 20 24 28 54 45 53 54 46 49 58 54 55 52 45  .c $(TESTFIXTURE
78c0: 5f 53 52 43 30 29 0a 21 45 4c 53 45 0a 54 45 53  _SRC0).!ELSE.TES
78d0: 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d 20 24  TFIXTURE_SRC = $
78e0: 28 54 45 53 54 53 52 43 29 20 24 28 54 4f 50 29  (TESTSRC) $(TOP)
78f0: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63  \src\tclsqlite.c
7900: 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 53   $(TESTFIXTURE_S
7910: 52 43 31 29 0a 21 45 4e 44 49 46 0a 0a 74 65 73  RC1).!ENDIF..tes
7920: 74 66 69 78 74 75 72 65 2e 65 78 65 3a 09 24 28  tfixture.exe:.$(
7930: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 29  TESTFIXTURE_SRC)
7940: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 4c 49 4e   $(HDR)..$(LTLIN
7950: 4b 29 20 2d 44 53 51 4c 49 54 45 5f 4e 4f 5f 53  K) -DSQLITE_NO_S
7960: 59 4e 43 3d 31 20 24 28 54 45 53 54 46 49 58 54  YNC=1 $(TESTFIXT
7970: 55 52 45 5f 46 4c 41 47 53 29 20 5c 0a 09 09 2d  URE_FLAGS) \...-
7980: 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49  DBUILD_sqlite -I
7990: 24 28 54 43 4c 49 4e 43 44 49 52 29 20 5c 0a 09  $(TCLINCDIR) \..
79a0: 09 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 53  .$(TESTFIXTURE_S
79b0: 52 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28  RC) \.../link $(
79c0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54  LTLINKOPTS) $(LT
79d0: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c 49  LIBPATHS) $(LTLI
79e0: 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 66 75  BS) $(TLIBS)..fu
79f0: 6c 6c 74 65 73 74 3a 09 74 65 73 74 66 69 78 74  lltest:.testfixt
7a00: 75 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e  ure.exe sqlite3.
7a10: 65 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75  exe...\testfixtu
7a20: 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65  re.exe $(TOP)\te
7a30: 73 74 5c 61 6c 6c 2e 74 65 73 74 0a 0a 73 6f 61  st\all.test..soa
7a40: 6b 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75  ktest:.testfixtu
7a50: 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 65  re.exe sqlite3.e
7a60: 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72  xe...\testfixtur
7a70: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73  e.exe $(TOP)\tes
7a80: 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f 61 6b  t\all.test -soak
7a90: 3d 31 0a 0a 74 65 73 74 3a 09 74 65 73 74 66 69  =1..test:.testfi
7aa0: 78 74 75 72 65 2e 65 78 65 20 73 71 6c 69 74 65  xture.exe sqlite
7ab0: 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 69 78  3.exe...\testfix
7ac0: 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\
7ad0: 74 65 73 74 5c 76 65 72 79 71 75 69 63 6b 2e 74  test\veryquick.t
7ae0: 65 73 74 0a 0a 73 71 6c 69 74 65 33 5f 61 6e 61  est..sqlite3_ana
7af0: 6c 79 7a 65 72 2e 63 3a 20 73 71 6c 69 74 65 33  lyzer.c: sqlite3
7b00: 2e 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .c $(TOP)\src\te
7b10: 73 74 5f 73 74 61 74 2e 63 20 24 28 54 4f 50 29  st_stat.c $(TOP)
7b20: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63  \src\tclsqlite.c
7b30: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 61   $(TOP)\tool\spa
7b40: 63 65 61 6e 61 6c 2e 74 63 6c 0a 09 63 6f 70 79  ceanal.tcl..copy
7b50: 20 73 71 6c 69 74 65 33 2e 63 20 2b 20 24 28 54   sqlite3.c + $(T
7b60: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 74 61  OP)\src\test_sta
7b70: 74 2e 63 20 2b 20 24 28 54 4f 50 29 5c 73 72 63  t.c + $(TOP)\src
7b80: 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 40 0a  \tclsqlite.c $@.
7b90: 09 65 63 68 6f 20 73 74 61 74 69 63 20 63 6f 6e  .echo static con
7ba0: 73 74 20 63 68 61 72 20 2a 74 63 6c 73 68 5f 6d  st char *tclsh_m
7bb0: 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64 29 7b 20  ain_loop(void){ 
7bc0: 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73 74 61 74  >> $@..echo stat
7bd0: 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 7a  ic const char *z
7be0: 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e 20 24 40  Mainloop = >> $@
7bf0: 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20 24 28 54  ..$(NAWK) -f $(T
7c00: 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74 72 2e 61  OP)\tool\tostr.a
7c10: 77 6b 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  wk $(TOP)\tool\s
7c20: 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20 3e 3e 20  paceanal.tcl >> 
7c30: 24 40 0a 09 65 63 68 6f 20 3b 20 72 65 74 75 72  $@..echo ; retur
7c40: 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20 7d 20 3e  n zMainloop; } >
7c50: 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 61 6e  > $@..sqlite3_an
7c60: 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73 71 6c 69  alyzer.exe:.sqli
7c70: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a 09  te3_analyzer.c..
7c80: 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 42 55 49 4c  $(LTLINK) -DBUIL
7c90: 44 5f 73 71 6c 69 74 65 20 2d 44 54 43 4c 53 48  D_sqlite -DTCLSH
7ca0: 3d 32 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52  =2 -I$(TCLINCDIR
7cb0: 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a  ) sqlite3_analyz
7cc0: 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24  er.c \.../link $
7cd0: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c  (LTLINKOPTS) $(L
7ce0: 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c  TLIBPATHS) $(LTL
7cf0: 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 63  IBS) $(TLIBS)..c
7d00: 6c 65 61 6e 3a 0a 09 64 65 6c 20 2f 51 20 2a 2e  lean:..del /Q *.
7d10: 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a  lo *.ilk *.lib *
7d20: 2e 6f 62 6a 20 2a 2e 70 64 62 20 73 71 6c 69 74  .obj *.pdb sqlit
7d30: 65 33 2e 65 78 65 20 6c 69 62 73 71 6c 69 74 65  e3.exe libsqlite
7d40: 33 2e 6c 69 62 0a 09 64 65 6c 20 2f 51 20 2a 2e  3.lib..del /Q *.
7d50: 64 61 20 2a 2e 62 62 20 2a 2e 62 62 67 20 67 6d  da *.bb *.bbg gm
7d60: 6f 6e 2e 6f 75 74 0a 09 64 65 6c 20 2f 51 20 73  on.out..del /Q s
7d70: 71 6c 69 74 65 33 2e 68 20 6f 70 63 6f 64 65 73  qlite3.h opcodes
7d80: 2e 63 20 6f 70 63 6f 64 65 73 2e 68 0a 09 64 65  .c opcodes.h..de
7d90: 6c 20 2f 51 20 6c 65 6d 6f 6e 2e 65 78 65 20 6c  l /Q lemon.exe l
7da0: 65 6d 70 61 72 2e 63 20 70 61 72 73 65 2e 2a 0a  empar.c parse.*.
7db0: 09 64 65 6c 20 2f 51 20 6d 6b 6b 65 79 77 6f 72  .del /Q mkkeywor
7dc0: 64 68 61 73 68 2e 65 78 65 20 6b 65 79 77 6f 72  dhash.exe keywor
7dd0: 64 68 61 73 68 2e 68 0a 09 2d 72 6d 64 69 72 20  dhash.h..-rmdir 
7de0: 2f 51 2f 53 20 2e 64 65 70 73 0a 09 2d 72 6d 64  /Q/S .deps..-rmd
7df0: 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73 0a 09 2d  ir /Q/S .libs..-
7e00: 72 6d 64 69 72 20 2f 51 2f 53 20 71 75 6f 74 61  rmdir /Q/S quota
7e10: 32 61 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20  2a..-rmdir /Q/S 
7e20: 71 75 6f 74 61 32 62 0a 09 2d 72 6d 64 69 72 20  quota2b..-rmdir 
7e30: 2f 51 2f 53 20 71 75 6f 74 61 32 63 0a 09 2d 72  /Q/S quota2c..-r
7e40: 6d 64 69 72 20 2f 51 2f 53 20 74 73 72 63 0a 09  mdir /Q/S tsrc..
7e50: 64 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73  del /Q .target_s
7e60: 6f 75 72 63 65 0a 09 64 65 6c 20 2f 51 20 74 63  ource..del /Q tc
7e70: 6c 73 71 6c 69 74 65 33 2e 65 78 65 0a 09 64 65  lsqlite3.exe..de
7e80: 6c 20 2f 51 20 74 65 73 74 66 69 78 74 75 72 65  l /Q testfixture
7e90: 2e 65 78 65 20 74 65 73 74 66 69 78 74 75 72 65  .exe testfixture
7ea0: 2e 65 78 70 20 74 65 73 74 2e 64 62 0a 09 64 65  .exp test.db..de
7eb0: 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 64 6c 6c  l /Q sqlite3.dll
7ec0: 20 73 71 6c 69 74 65 33 2e 6c 69 62 20 73 71 6c   sqlite3.lib sql
7ed0: 69 74 65 33 2e 65 78 70 20 73 71 6c 69 74 65 33  ite3.exp sqlite3
7ee0: 2e 64 65 66 0a 09 64 65 6c 20 2f 51 20 73 71 6c  .def..del /Q sql
7ef0: 69 74 65 33 2e 63 0a 09 64 65 6c 20 2f 51 20 73  ite3.c..del /Q s
7f00: 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
7f10: 65 78 65 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c  exe sqlite3_anal
7f20: 79 7a 65 72 2e 65 78 70 20 73 71 6c 69 74 65 33  yzer.exp sqlite3
7f30: 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a 09 64 65 6c  _analyzer.c..del
7f40: 20 2f 51 20 73 71 6c 69 74 65 2d 6f 75 74 70 75   /Q sqlite-outpu
7f50: 74 2e 76 73 69 78 0a 0a 23 0a 23 20 57 69 6e 64  t.vsix..#.# Wind
7f60: 6f 77 73 20 73 65 63 74 69 6f 6e 0a 23 0a 64 6c  ows section.#.dl
7f70: 6c 3a 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 0a  l: sqlite3.dll..
7f80: 73 71 6c 69 74 65 33 2e 64 65 66 3a 20 6c 69 62  sqlite3.def: lib
7f90: 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 65 63 68  sqlite3.lib..ech
7fa0: 6f 20 45 58 50 4f 52 54 53 20 3e 20 73 71 6c 69  o EXPORTS > sqli
7fb0: 74 65 33 2e 64 65 66 0a 09 64 75 6d 70 62 69 6e  te3.def..dumpbin
7fc0: 20 2f 61 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33   /all libsqlite3
7fd0: 2e 6c 69 62 20 5c 0a 09 09 7c 20 24 28 4e 41 57  .lib \...| $(NAW
7fe0: 4b 29 20 22 2f 20 31 20 5f 3f 73 71 6c 69 74 65  K) "/ 1 _?sqlite
7ff0: 33 5f 2f 20 7b 20 73 75 62 28 2f 5e 2e 2a 20 5f  3_/ { sub(/^.* _
8000: 3f 2f 2c 5c 22 5c 22 29 3b 70 72 69 6e 74 20 7d  ?/,\"\");print }
8010: 22 20 5c 0a 09 09 7c 20 73 6f 72 74 20 3e 3e 20  " \...| sort >> 
8020: 73 71 6c 69 74 65 33 2e 64 65 66 0a 0a 73 71 6c  sqlite3.def..sql
8030: 69 74 65 33 2e 64 6c 6c 3a 20 24 28 4c 49 42 4f  ite3.dll: $(LIBO
8040: 42 4a 29 20 73 71 6c 69 74 65 33 2e 64 65 66 0a  BJ) sqlite3.def.
8050: 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53  .$(LD) $(LDFLAGS
8060: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20  ) $(LTLINKOPTS) 
8070: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44  $(LTLIBPATHS) /D
8080: 4c 4c 20 2f 44 45 46 3a 73 71 6c 69 74 65 33 2e  LL /DEF:sqlite3.
8090: 64 65 66 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49  def /OUT:$@ $(LI
80a0: 42 4f 42 4a 29 20 24 28 4c 54 4c 49 42 53 29 20  BOBJ) $(LTLIBS) 
80b0: 24 28 54 4c 49 42 53 29 0a                       $(TLIBS).