/ Hex Artifact Content

• File Makefile.msc — part of check-in [87995dc9] at 2012-08-31 14:23:16 on branch sessions — Update with latest trunk changes. (user: dan size: 34174) [more...]

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 61 74  this non-0 to at
01b0: 74 65 6d 70 74 20 73 65 74 74 69 6e 67 20 74 68  tempt setting th
01c0: 65 20 6e 61 74 69 76 65 20 63 6f 6d 70 69 6c 65  e native compile
01d0: 72 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a  r automatically.
01e0: 23 20 66 6f 72 20 63 72 6f 73 73 2d 63 6f 6d 70  # for cross-comp
01f0: 69 6c 69 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e  iling the comman
0200: 64 20 6c 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65  d line tools nee
0210: 64 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 63  ded during the c
0220: 6f 6d 70 69 6c 61 74 69 6f 6e 0a 23 20 70 72 6f  ompilation.# pro
0230: 63 65 73 73 2e 0a 23 0a 58 43 4f 4d 50 49 4c 45  cess..#.XCOMPILE
0240: 20 3d 20 30 0a 0a 23 20 53 65 74 20 74 68 69 73   = 0..# Set this
0250: 20 6e 6f 6e 2d 30 20 74 6f 20 75 73 65 20 74 68   non-0 to use th
0260: 65 20 6e 61 74 69 76 65 20 6c 69 62 72 61 72 69  e native librari
0270: 65 73 20 70 61 74 68 73 20 66 6f 72 20 63 72 6f  es paths for cro
0280: 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74  ss-compiling.# t
0290: 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20  he command line
02a0: 74 6f 6f 6c 73 20 6e 65 65 64 65 64 20 64 75 72  tools needed dur
02b0: 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74  ing the compilat
02c0: 69 6f 6e 20 70 72 6f 63 65 73 73 2e 0a 23 0a 55  ion process..#.U
02d0: 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54  SE_NATIVE_LIBPAT
02e0: 48 53 20 3d 20 30 0a 0a 23 20 53 65 74 20 74 68  HS = 0..# Set th
02f0: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d 70  is non-0 to comp
0300: 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75 69  ile binaries sui
0310: 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57 69  table for the Wi
0320: 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e  nRT environment.
0330: 0a 23 20 54 68 69 73 20 73 65 74 74 69 6e 67 20  .# This setting
0340: 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74  does not apply t
0350: 6f 20 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74  o any binaries t
0360: 68 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 20  hat require Tcl
0370: 74 6f 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f  to operate.# pro
0380: 70 65 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20  perly (i.e. the
0390: 74 65 78 74 20 66 69 78 74 75 72 65 2c 20 65 74  text fixture, et
03a0: 63 29 2e 0a 23 0a 46 4f 52 5f 57 49 4e 52 54 20  c)..#.FOR_WINRT
03b0: 3d 20 30 0a 0a 23 20 53 65 74 20 74 68 69 73 20  = 0..# Set this
03c0: 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69 70 20 61 74  non-0 to skip at
03d0: 74 65 6d 70 74 69 6e 67 20 74 6f 20 6c 6f 6f 6b  tempting to look
03e0: 20 66 6f 72 20 61 6e 64 2f 6f 72 20 6c 69 6e 6b   for and/or link
03f0: 20 77 69 74 68 20 74 68 65 20 54 63 6c 0a 23 20   with the Tcl.#
0400: 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 2e  runtime library.
0410: 0a 23 0a 4e 4f 5f 54 43 4c 20 3d 20 30 0a 0a 23  .#.NO_TCL = 0..#
0420: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0430: 2d 30 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64  -0 to create and
0440: 20 75 73 65 20 50 44 42 73 2e 0a 23 0a 53 59 4d   use PDBs..#.SYM
0450: 42 4f 4c 53 20 3d 20 31 0a 0a 23 20 53 65 74 20  BOLS = 1..# Set
0460: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
0470: 20 75 73 65 20 74 68 65 20 53 51 4c 69 74 65 20   use the SQLite
0480: 64 65 62 75 67 67 69 6e 67 20 68 65 61 70 20 73  debugging heap s
0490: 75 62 73 79 73 74 65 6d 2e 0a 23 0a 4d 45 4d 44  ubsystem..#.MEMD
04a0: 45 42 55 47 20 3d 20 30 0a 0a 23 20 53 65 74 20  EBUG = 0..# Set
04b0: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
04c0: 20 75 73 65 20 74 68 65 20 57 69 6e 33 32 20 6e   use the Win32 n
04d0: 61 74 69 76 65 20 68 65 61 70 20 73 75 62 73 79  ative heap subsy
04e0: 73 74 65 6d 2e 0a 23 0a 57 49 4e 33 32 48 45 41  stem..#.WIN32HEA
04f0: 50 20 3d 20 30 0a 0a 23 20 53 65 74 20 74 68 69  P = 0..# Set thi
0500: 73 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20  s to one of the
0510: 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75 65 73  following values
0520: 20 74 6f 20 65 6e 61 62 6c 65 20 76 61 72 69 6f   to enable vario
0530: 75 73 20 64 65 62 75 67 67 69 6e 67 0a 23 20 66  us debugging.# f
0540: 65 61 74 75 72 65 73 2e 20 20 45 61 63 68 20 6c  eatures.  Each l
0550: 65 76 65 6c 20 69 6e 63 6c 75 64 65 73 20 74 68  evel includes th
0560: 65 20 64 65 62 75 67 67 69 6e 67 20 6f 70 74 69  e debugging opti
0570: 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 70 72 65  ons from the pre
0580: 76 69 6f 75 73 0a 23 20 6c 65 76 65 6c 73 2e 20  vious.# levels.
0590: 20 43 75 72 72 65 6e 74 6c 79 2c 20 74 68 65 20   Currently, the
05a0: 72 65 63 6f 67 6e 69 7a 65 64 20 76 61 6c 75 65  recognized value
05b0: 73 20 66 6f 72 20 44 45 42 55 47 20 61 72 65 3a  s for DEBUG are:
05c0: 0a 23 0a 23 20 30 20 3d 3d 20 4e 44 45 42 55 47  .#.# 0 == NDEBUG
05d0: 3a 20 44 69 73 61 62 6c 65 73 20 61 73 73 65 72  : Disables asser
05e0: 74 28 29 20 61 6e 64 20 6f 74 68 65 72 20 72 75  t() and other ru
05f0: 6e 74 69 6d 65 20 64 69 61 67 6e 6f 73 74 69 63  ntime diagnostic
0600: 73 2e 0a 23 20 31 20 3d 3d 20 44 69 73 61 62 6c  s..# 1 == Disabl
0610: 65 73 20 4e 44 45 42 55 47 20 61 6e 64 20 61 6c  es NDEBUG and al
0620: 6c 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20  l optimizations
0630: 61 6e 64 20 74 68 65 6e 20 65 6e 61 62 6c 65 73  and then enables
0640: 20 50 44 42 73 2e 0a 23 20 32 20 3d 3d 20 53 51   PDBs..# 2 == SQ
0650: 4c 49 54 45 5f 44 45 42 55 47 3a 20 45 6e 61 62  LITE_DEBUG: Enab
0660: 6c 65 73 20 76 61 72 69 6f 75 73 20 64 69 61 67  les various diag
0670: 6e 6f 73 74 69 63 73 20 6d 65 73 73 61 67 65 73  nostics messages
0680: 20 61 6e 64 20 63 6f 64 65 2e 0a 23 20 33 20 3d   and code..# 3 =
0690: 3d 20 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d  = SQLITE_WIN32_M
06a0: 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3a 20  ALLOC_VALIDATE:
06b0: 56 61 6c 69 64 61 74 65 20 74 68 65 20 57 69 6e  Validate the Win
06c0: 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20 70  32 native heap p
06d0: 65 72 20 63 61 6c 6c 2e 0a 23 20 34 20 3d 3d 20  er call..# 4 ==
06e0: 53 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f  SQLITE_DEBUG_OS_
06f0: 54 52 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f  TRACE: Enables o
0700: 75 74 70 75 74 20 66 72 6f 6d 20 74 68 65 20 4f  utput from the O
0710: 53 54 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e  STRACE() macros.
0720: 0a 23 20 35 20 3d 3d 20 53 51 4c 49 54 45 5f 45  .# 5 == SQLITE_E
0730: 4e 41 42 4c 45 5f 49 4f 54 52 41 43 45 3a 20 45  NABLE_IOTRACE: E
0740: 6e 61 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72  nables output fr
0750: 6f 6d 20 74 68 65 20 49 4f 54 52 41 43 45 28 29  om the IOTRACE()
0760: 20 6d 61 63 72 6f 73 2e 0a 23 0a 44 45 42 55 47   macros..#.DEBUG
0770: 20 3d 20 30 0a 0a 23 20 43 68 65 63 6b 20 66 6f   = 0..# Check fo
0780: 72 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64  r the predefined
0790: 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43   command macro C
07a0: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  C.  This should
07b0: 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d  point to the com
07c0: 70 69 6c 65 72 0a 23 20 62 69 6e 61 72 79 20 66  piler.# binary f
07d0: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  or the target pl
07e0: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
07f0: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
0800: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20  imply define it
0810: 74 6f 0a 23 20 74 68 65 20 6c 65 67 61 63 79 20  to.# the legacy
0820: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 63  default value 'c
0830: 6c 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45  l.exe'..#.!IFNDE
0840: 46 20 43 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65  F CC.CC = cl.exe
0850: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b  .!ENDIF..# Check
0860: 20 66 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64   for the command
0870: 20 6d 61 63 72 6f 20 4c 44 2e 20 20 54 68 69 73   macro LD.  This
0880: 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f   should point to
0890: 20 74 68 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61   the linker bina
08a0: 72 79 20 66 6f 72 0a 23 20 74 68 65 20 74 61 72  ry for.# the tar
08b0: 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49  get platform.  I
08c0: 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69  f it is not defi
08d0: 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69  ned, simply defi
08e0: 6e 65 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67  ne it to the leg
08f0: 61 63 79 0a 23 20 64 65 66 61 75 6c 74 20 76 61  acy.# default va
0900: 6c 75 65 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a  lue 'link.exe'..
0910: 23 0a 21 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20  #.!IFNDEF LD.LD
0920: 3d 20 6c 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49  = link.exe.!ENDI
0930: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74  F..# Check for t
0940: 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f  he command macro
0950: 20 4e 43 43 2e 20 20 54 68 69 73 20 73 68 6f 75   NCC.  This shou
0960: 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20  ld point to the
0970: 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 0a  compiler binary.
0980: 23 20 66 6f 72 20 74 68 65 20 70 6c 61 74 66 6f  # for the platfo
0990: 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  rm the compilati
09a0: 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20 74 61  on process is ta
09b0: 6b 69 6e 67 20 70 6c 61 63 65 20 6f 6e 2e 20 20  king place on.
09c0: 49 66 20 69 74 20 69 73 20 6e 6f 74 0a 23 20 64  If it is not.# d
09d0: 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64  efined, simply d
09e0: 65 66 69 6e 65 20 69 74 20 74 6f 20 68 61 76 65  efine it to have
09f0: 20 74 68 65 20 73 61 6d 65 20 76 61 6c 75 65 20   the same value
0a00: 61 73 20 74 68 65 20 43 43 20 6d 61 63 72 6f 2e  as the CC macro.
0a10: 20 20 57 68 65 6e 0a 23 20 63 72 6f 73 73 2d 63    When.# cross-c
0a20: 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20 69 73 20  ompiling, it is
0a30: 73 75 67 67 65 73 74 65 64 20 74 68 61 74 20 74  suggested that t
0a40: 68 69 73 20 6d 61 63 72 6f 20 62 65 20 6d 6f 64  his macro be mod
0a50: 69 66 69 65 64 20 76 69 61 20 74 68 65 20 63 6f  ified via the co
0a60: 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 28 73 69  mmand.# line (si
0a70: 6e 63 65 20 6e 6d 61 6b 65 20 69 74 73 65 6c 66  nce nmake itself
0a80: 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76 69 64   does not provid
0a90: 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 6d 65 74  e a built-in met
0aa0: 68 6f 64 20 74 6f 20 67 75 65 73 73 20 69 74 29  hod to guess it)
0ab0: 2e 0a 23 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c  ..# For example,
0ac0: 20 74 6f 20 75 73 65 20 74 68 65 20 78 38 36 20   to use the x86
0ad0: 63 6f 6d 70 69 6c 65 72 20 77 68 65 6e 20 63 72  compiler when cr
0ae0: 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 20 66 6f  oss-compiling fo
0af0: 72 20 78 36 34 2c 20 61 20 63 6f 6d 6d 61 6e 64  r x64, a command
0b00: 0a 23 20 6c 69 6e 65 20 73 69 6d 69 6c 61 72 20  .# line similar
0b10: 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  to the following
0b20: 20 63 6f 75 6c 64 20 62 65 20 75 73 65 64 20 28   could be used (
0b30: 61 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 6e 65 29  all on one line)
0b40: 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20  :.#.#     nmake
0b50: 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20  /f Makefile.msc
0b60: 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20  sqlite3.dll.#
0b70: 20 20 20 20 20 20 20 20 58 43 4f 4d 50 49 4c 45          XCOMPILE
0b80: 3d 31 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49  =1 USE_NATIVE_LI
0b90: 42 50 41 54 48 53 3d 31 0a 23 0a 23 20 41 6c 74  BPATHS=1.#.# Alt
0ba0: 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 68 65 20  ernatively, the
0bb0: 66 75 6c 6c 20 70 61 74 68 20 61 6e 64 20 66 69  full path and fi
0bc0: 6c 65 20 6e 61 6d 65 20 74 6f 20 74 68 65 20 63  le name to the c
0bd0: 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 20 66  ompiler binary f
0be0: 6f 72 20 74 68 65 0a 23 20 70 6c 61 74 66 6f 72  or the.# platfor
0bf0: 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f  m the compilatio
0c00: 6e 20 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b  n process is tak
0c10: 69 6e 67 20 70 6c 61 63 65 20 6d 61 79 20 62 65  ing place may be
0c20: 20 73 70 65 63 69 66 69 65 64 20 28 61 6c 6c 20   specified (all
0c30: 6f 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a  on.# one line):.
0c40: 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66  #.#     nmake /f
0c50: 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73 71   Makefile.msc sq
0c60: 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20 20  lite3.dll.#
0c70: 20 20 20 20 20 20 22 4e 43 43 3d 22 22 25 56 43        "NCC=""%VC
0c80: 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62 69 6e 5c  INSTALLDIR%\bin\
0c90: 63 6c 2e 65 78 65 22 22 22 0a 23 20 20 20 20 20  cl.exe""".#
0ca0: 20 20 20 20 20 20 55 53 45 5f 4e 41 54 49 56 45        USE_NATIVE
0cb0: 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 21 49  _LIBPATHS=1.#.!I
0cc0: 46 44 45 46 20 4e 43 43 0a 4e 43 43 20 3d 20 24  FDEF NCC.NCC = $0cd0: 28 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 (NCC:\\=\).!ELSE 0ce0: 49 46 20 24 28 58 43 4f 4d 50 49 4c 45 29 21 3d IF$(XCOMPILE)!=
0cf0: 30 0a 4e 43 43 20 3d 20 22 24 28 56 43 49 4e 53  0.NCC = "$(VCINS 0d00: 54 41 4c 4c 44 49 52 29 5c 62 69 6e 5c 63 6c 2e TALLDIR)\bin\cl. 0d10: 65 78 65 22 0a 4e 43 43 20 3d 20 24 28 4e 43 43 exe".NCC =$(NCC
0d20: 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e 43 43  :\\=\).!ELSE.NCC
0d30: 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49 46 0a   = $(CC).!ENDIF. 0d40: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 .# Check for the 0d50: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 MSVC runtime li 0d60: 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f brary path macro 0d70: 2e 20 20 4f 74 68 65 72 74 69 73 65 2c 20 74 68 . Othertise, th 0d80: 69 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c 20 is.# value will 0d90: 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27 default to the ' 0da0: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75 lib' directory u 0db0: 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 4d 53 nderneath the MS 0dc0: 56 43 0a 23 20 69 6e 73 74 61 6c 6c 61 74 69 6f VC.# installatio 0dd0: 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21 n directory..#.! 0de0: 49 46 4e 44 45 46 20 4e 43 52 54 4c 49 42 50 41 IFNDEF NCRTLIBPA 0df0: 54 48 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 3d TH.NCRTLIBPATH = 0e00: 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29$(VCINSTALLDIR)
0e10: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 43 52  \lib.!ENDIF..NCR
0e20: 54 4c 49 42 50 41 54 48 20 3d 20 24 28 4e 43 52  TLIBPATH = $(NCR 0e30: 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a TLIBPATH:\\=\).. 0e40: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 # Check for the 0e50: 50 6c 61 74 66 6f 72 6d 20 53 44 4b 20 6c 69 62 Platform SDK lib 0e60: 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f 2e rary path macro. 0e70: 20 20 4f 74 68 65 72 74 69 73 65 2c 20 74 68 69 Othertise, thi 0e80: 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c 20 64 s.# value will d 0e90: 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27 6c efault to the 'l 0ea0: 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75 6e ib' directory un 0eb0: 64 65 72 6e 65 61 74 68 20 74 68 65 20 57 69 6e derneath the Win 0ec0: 64 6f 77 73 0a 23 20 53 44 4b 20 69 6e 73 74 61 dows.# SDK insta 0ed0: 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 llation director 0ee0: 79 20 28 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 y (the environme 0ef0: 6e 74 20 76 61 72 69 61 62 6c 65 20 75 73 65 64 nt variable used 0f00: 20 61 70 70 65 61 72 73 0a 23 20 74 6f 20 62 65 appears.# to be 0f10: 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 available when 0f20: 75 73 69 6e 67 20 56 69 73 75 61 6c 20 43 2b 2b using Visual C++ 0f30: 20 32 30 30 38 20 6f 72 20 6c 61 74 65 72 20 76 2008 or later v 0f40: 69 61 20 74 68 65 0a 23 20 63 6f 6d 6d 61 6e 64 ia the.# command 0f50: 20 6c 69 6e 65 29 2e 0a 23 0a 21 49 46 4e 44 45 line)..#.!IFNDE 0f60: 46 20 4e 53 44 4b 4c 49 42 50 41 54 48 0a 4e 53 F NSDKLIBPATH.NS 0f70: 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 57 49 DKLIBPATH =$(WI
0f80: 4e 44 4f 57 53 53 44 4b 44 49 52 29 5c 6c 69 62  NDOWSSDKDIR)\lib
0f90: 0a 21 45 4e 44 49 46 0a 0a 4e 53 44 4b 4c 49 42  .!ENDIF..NSDKLIB
0fa0: 50 41 54 48 20 3d 20 24 28 4e 53 44 4b 4c 49 42  PATH = $(NSDKLIB 0fb0: 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 20 PATH:\\=\)..# C 0fc0: 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70 74 compiler and opt 0fd0: 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e 20 ions for use in 0fe0: 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74 61 building executa 0ff0: 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c 6c bles that.# will 1000: 20 72 75 6e 20 6f 6e 20 74 68 65 20 70 6c 61 74 run on the plat 1010: 66 6f 72 6d 20 74 68 61 74 20 69 73 20 64 6f 69 form that is doi 1020: 6e 67 20 74 68 65 20 62 75 69 6c 64 2e 0a 23 0a ng the build..#. 1030: 42 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 57 33 BCC =$(NCC) -W3
1040: 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 74 68 65  ..# Check if the
1050: 20 6e 61 74 69 76 65 20 6c 69 62 72 61 72 79 20   native library
1060: 70 61 74 68 73 20 73 68 6f 75 6c 64 20 62 65 20  paths should be
1070: 75 73 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c  used when compil
1080: 69 6e 67 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e  ing.# the comman
1090: 64 20 6c 69 6e 65 20 74 6f 6f 6c 73 20 75 73 65  d line tools use
10a0: 64 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d  d during the com
10b0: 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73  pilation process
10c0: 2e 20 20 49 66 0a 23 20 73 6f 2c 20 73 65 74 20  .  If.# so, set
10d0: 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 6d 61  the necessary ma
10e0: 63 72 6f 20 6e 6f 77 2e 0a 23 0a 21 49 46 20 24  cro now..#.!IF $10f0: 28 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 (USE_NATIVE_LIBP 1100: 41 54 48 53 29 21 3d 30 0a 4e 4c 54 4c 49 42 50 ATHS)!=0.NLTLIBP 1110: 41 54 48 53 20 3d 20 22 2f 4c 49 42 50 41 54 48 ATHS = "/LIBPATH 1120: 3a 24 28 4e 43 52 54 4c 49 42 50 41 54 48 29 22 :$(NCRTLIBPATH)"
1130: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 53 44   "/LIBPATH:$(NSD 1140: 4b 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44 49 KLIBPATH)".!ENDI 1150: 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 F..# C compiler 1160: 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 and options for 1170: 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 use in building 1180: 65 78 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 executables that 1190: 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 .# will run on t 11a0: 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f he target platfo 11b0: 72 6d 2e 20 20 28 42 43 43 20 61 6e 64 20 54 43 rm. (BCC and TC 11c0: 43 20 61 72 65 20 75 73 75 61 6c 6c 79 20 74 68 C are usually th 11d0: 65 0a 23 20 73 61 6d 65 20 75 6e 6c 65 73 73 20 e.# same unless 11e0: 79 6f 75 72 20 61 72 65 20 63 72 6f 73 73 2d 63 your are cross-c 11f0: 6f 6d 70 69 6c 69 6e 67 2e 29 0a 23 0a 54 43 43 ompiling.).#.TCC 1200: 20 3d 20 24 28 43 43 29 20 2d 57 33 20 2d 44 53 =$(CC) -W3 -DS
1210: 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d  QLITE_OS_WIN=1 -
1220: 49 2e 20 2d 49 24 28 54 4f 50 29 5c 73 72 63 20  I. -I$(TOP)\src 1230: 2d 66 70 3a 70 72 65 63 69 73 65 0a 0a 23 20 57 -fp:precise..# W 1240: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 hen compiling th 1250: 65 20 6c 69 62 72 61 72 79 20 66 6f 72 20 75 73 e library for us 1260: 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54 20 65 e in the WinRT e 1270: 6e 76 69 72 6f 6e 6d 65 6e 74 2c 0a 23 20 74 68 nvironment,.# th 1280: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 70 e following comp 1290: 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69 6f 6e 73 ile-time options 12a0: 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 61 73 must be used as 12b0: 20 77 65 6c 6c 20 74 6f 0a 23 20 64 69 73 61 62 well to.# disab 12c0: 6c 65 20 75 73 65 20 6f 66 20 57 69 6e 33 32 20 le use of Win32 12d0: 41 50 49 73 20 74 68 61 74 20 61 72 65 20 6e 6f APIs that are no 12e0: 74 20 61 76 61 69 6c 61 62 6c 65 20 61 6e 64 20 t available and 12f0: 74 6f 20 65 6e 61 62 6c 65 0a 23 20 75 73 65 20 to enable.# use 1300: 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 74 68 of Win32 APIs th 1310: 61 74 20 61 72 65 20 73 70 65 63 69 66 69 63 20 at are specific 1320: 74 6f 20 57 69 6e 64 6f 77 73 20 38 20 61 6e 64 to Windows 8 and 1330: 2f 6f 72 20 57 69 6e 52 54 2e 0a 23 0a 21 49 46 /or WinRT..#.!IF 1340: 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30$(FOR_WINRT)!=0
1350: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D 1360: 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 52 54 3d SQLITE_OS_WINRT= 1370: 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 1.TCC =$(TCC) -
1380: 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 3d 57  DWINAPI_FAMILY=W
1390: 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f 4e 5f  INAPI_PARTITION_
13a0: 41 50 50 0a 21 45 4e 44 49 46 0a 0a 23 20 41 6c  APP.!ENDIF..# Al
13b0: 73 6f 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 64  so, we need to d
13c0: 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20  ynamically link
13d0: 74 6f 20 74 68 65 20 63 6f 72 72 65 63 74 20 4d  to the correct M
13e0: 53 56 43 20 72 75 6e 74 69 6d 65 0a 23 20 77 68  SVC runtime.# wh
13f0: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72  en compiling for
1400: 20 57 69 6e 52 54 20 28 65 2e 67 2e 20 64 65 62   WinRT (e.g. deb
1410: 75 67 20 6f 72 20 72 65 6c 65 61 73 65 29 20 4f  ug or release) O
1420: 52 20 69 66 20 74 68 65 0a 23 20 55 53 45 5f 43  R if the.# USE_C
1430: 52 54 5f 44 4c 4c 20 6f 70 74 69 6f 6e 20 69 73  RT_DLL option is
1440: 20 73 65 74 20 74 6f 20 66 6f 72 63 65 20 64 79   set to force dy
1450: 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 69 6e  namically linkin
1460: 67 20 74 6f 20 74 68 65 0a 23 20 4d 53 56 43 20  g to the.# MSVC
1470: 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 2e  runtime library.
1480: 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  .#.!IF $(FOR_WIN 1490: 52 54 29 21 3d 30 20 7c 7c 20 24 28 55 53 45 5f RT)!=0 ||$(USE_
14a0: 43 52 54 5f 44 4c 4c 29 21 3d 30 0a 21 49 46 20  CRT_DLL)!=0.!IF
14b0: 24 28 44 45 42 55 47 29 3e 30 0a 54 43 43 20 3d  $(DEBUG)>0.TCC = 14c0: 20 24 28 54 43 43 29 20 2d 4d 44 64 0a 21 45 4c$(TCC) -MDd.!EL
14d0: 53 45 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  SE.TCC = $(TCC) 14e0: 2d 4d 44 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 -MD.!ENDIF.!ELSE 14f0: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 0a .!IF$(DEBUG)>0.
1500: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54  TCC = $(TCC) -MT 1510: 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 d.!ELSE.TCC =$(
1520: 54 43 43 29 20 2d 4d 54 0a 21 45 4e 44 49 46 0a  TCC) -MT.!ENDIF.
1530: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6d 6b  !ENDIF..# The mk
1540: 73 71 6c 69 74 65 33 63 2e 74 63 6c 20 61 6e 64  sqlite3c.tcl and
1550: 20 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c 20   mksqlite3h.tcl
1560: 73 63 72 69 70 74 73 20 77 69 6c 6c 20 70 75 6c  scripts will pul
1570: 6c 20 69 6e 0a 23 20 61 6e 79 20 65 78 74 65 6e  l in.# any exten
1580: 73 69 6f 6e 20 68 65 61 64 65 72 20 66 69 6c 65  sion header file
1590: 73 20 62 79 20 64 65 66 61 75 6c 74 2e 20 20 46  s by default.  F
15a0: 6f 72 20 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74  or non-amalgamat
15b0: 69 6f 6e 0a 23 20 62 75 69 6c 64 73 2c 20 77 65  ion.# builds, we
15c0: 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 73 75   need to make su
15d0: 72 65 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20  re the compiler
15e0: 63 61 6e 20 66 69 6e 64 20 74 68 65 73 65 2e 0a  can find these..
15f0: 23 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c  #.!IF $(USE_AMAL 1600: 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 54 43 43 GAMATION)==0.TCC 1610: 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f =$(TCC) -I$(TO 1620: 50 29 5c 65 78 74 5c 66 74 73 33 0a 54 43 43 20 P)\ext\fts3.TCC 1630: 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 =$(TCC) -I$(TOP 1640: 29 5c 65 78 74 5c 72 74 72 65 65 0a 21 45 4e 44 )\ext\rtree.!END 1650: 49 46 0a 0a 23 20 44 65 66 69 6e 65 20 2d 44 4e IF..# Define -DN 1660: 44 45 42 55 47 20 74 6f 20 63 6f 6d 70 69 6c 65 DEBUG to compile 1670: 20 77 69 74 68 6f 75 74 20 64 65 62 75 67 67 69 without debuggi 1680: 6e 67 20 28 69 2e 65 2e 2c 20 66 6f 72 20 70 72 ng (i.e., for pr 1690: 6f 64 75 63 74 69 6f 6e 20 75 73 61 67 65 29 0a oduction usage). 16a0: 23 20 4f 6d 69 74 74 69 6e 67 20 74 68 65 20 64 # Omitting the d 16b0: 65 66 69 6e 65 20 77 69 6c 6c 20 63 61 75 73 65 efine will cause 16c0: 20 65 78 74 72 61 20 64 65 62 75 67 67 69 6e 67 extra debugging 16d0: 20 63 6f 64 65 20 74 6f 20 62 65 20 69 6e 73 65 code to be inse 16e0: 72 74 65 64 20 61 6e 64 0a 23 20 69 6e 63 6c 75 rted and.# inclu 16f0: 64 65 73 20 65 78 74 72 61 20 63 6f 6d 6d 65 6e des extra commen 1700: 74 73 20 77 68 65 6e 20 22 45 58 50 4c 41 49 4e ts when "EXPLAIN 1710: 20 73 74 6d 74 22 20 69 73 20 75 73 65 64 2e 0a stmt" is used.. 1720: 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3d 3d #.!IF$(DEBUG)==
1730: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 1740: 44 4e 44 45 42 55 47 0a 42 43 43 20 3d 20 24 28 DNDEBUG.BCC =$(
1750: 42 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 21 45  BCC) -DNDEBUG.!E
1760: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55  NDIF..!IF $(DEBU 1770: 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43 43 G)>1.TCC =$(TCC
1780: 29 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47  ) -DSQLITE_DEBUG
1790: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44  .!ENDIF..!IF $(D 17a0: 45 42 55 47 29 3e 33 0a 54 43 43 20 3d 20 24 28 EBUG)>3.TCC =$(
17b0: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 44 45  TCC) -DSQLITE_DE
17c0: 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 0a 21  BUG_OS_TRACE=1.!
17d0: 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42  ENDIF..!IF $(DEB 17e0: 55 47 29 3e 34 0a 54 43 43 20 3d 20 24 28 54 43 UG)>4.TCC =$(TC
17f0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  C) -DSQLITE_ENAB
1800: 4c 45 5f 49 4f 54 52 41 43 45 0a 21 45 4e 44 49  LE_IOTRACE.!ENDI
1810: 46 0a 0a 23 0a 23 20 50 72 65 76 65 6e 74 20 77  F..#.# Prevent w
1820: 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20 22 69  arnings about "i
1830: 6e 73 65 63 75 72 65 22 20 4d 53 56 43 20 72 75  nsecure" MSVC ru
1840: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 66 75  ntime library fu
1850: 6e 63 74 69 6f 6e 73 0a 23 20 62 65 69 6e 67 20  nctions.# being
1860: 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28  used..#.TCC = $( 1870: 54 43 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 TCC) -D_CRT_SECU 1880: 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 RE_NO_DEPRECATE 1890: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f -D_CRT_SECURE_NO 18a0: 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 _WARNINGS.BCC = 18b0: 24 28 42 43 43 29 20 2d 44 5f 43 52 54 5f 53 45$(BCC) -D_CRT_SE
18c0: 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54  CURE_NO_DEPRECAT
18d0: 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  E -D_CRT_SECURE_
18e0: 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a 23 0a 23  NO_WARNINGS..#.#
18f0: 20 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67   Prevent warning
1900: 73 20 61 62 6f 75 74 20 22 64 65 70 72 65 63 61  s about "depreca
1910: 74 65 64 22 20 50 4f 53 49 58 20 66 75 6e 63 74  ted" POSIX funct
1920: 69 6f 6e 73 20 62 65 69 6e 67 20 75 73 65 64 2e  ions being used.
1930: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 1940: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e -D_CRT_NONSTDC_N 1950: 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 O_DEPRECATE -D_C 1960: 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 RT_NONSTDC_NO_WA 1970: 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 24 28 42 RNINGS.BCC =$(B
1980: 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  CC) -D_CRT_NONST
1990: 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20  DC_NO_DEPRECATE
19a0: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e  -D_CRT_NONSTDC_N
19b0: 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a 23 0a 23 20  O_WARNINGS..#.#
19c0: 55 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 64  Use the SQLite d
19d0: 65 62 75 67 67 69 6e 67 20 68 65 61 70 20 73 75  ebugging heap su
19e0: 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46 20 24  bsystem?.#.!IF $19f0: 28 4d 45 4d 44 45 42 55 47 29 21 3d 30 0a 54 43 (MEMDEBUG)!=0.TC 1a00: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c C =$(TCC) -DSQL
1a10: 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d 31 0a 0a  ITE_MEMDEBUG=1..
1a20: 23 0a 23 20 55 73 65 20 6e 61 74 69 76 65 20 57  #.# Use native W
1a30: 69 6e 33 32 20 68 65 61 70 20 73 75 62 73 79 73  in32 heap subsys
1a40: 74 65 6d 20 69 6e 73 74 65 61 64 20 6f 66 20 6d  tem instead of m
1a50: 61 6c 6c 6f 63 2f 66 72 65 65 3f 0a 23 0a 21 45  alloc/free?.#.!E
1a60: 4c 53 45 49 46 20 24 28 57 49 4e 33 32 48 45 41  LSEIF $(WIN32HEA 1a70: 50 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 P)!=0.TCC =$(TC
1a80: 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33  C) -DSQLITE_WIN3
1a90: 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a 23 0a 23 20  2_MALLOC=1..#.#
1aa0: 56 61 6c 69 64 61 74 65 20 74 68 65 20 68 65 61  Validate the hea
1ab0: 70 20 6f 6e 20 65 76 65 72 79 20 63 61 6c 6c 20  p on every call
1ac0: 69 6e 74 6f 20 74 68 65 20 6e 61 74 69 76 65 20  into the native
1ad0: 57 69 6e 33 32 20 68 65 61 70 20 73 75 62 73 79  Win32 heap subsy
1ae0: 73 74 65 6d 3f 0a 23 0a 21 49 46 20 24 28 44 45  stem?.#.!IF $(DE 1af0: 42 55 47 29 3e 32 0a 54 43 43 20 3d 20 24 28 54 BUG)>2.TCC =$(T
1b00: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e  CC) -DSQLITE_WIN
1b10: 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44 41  32_MALLOC_VALIDA
1b20: 54 45 3d 31 0a 21 45 4e 44 49 46 0a 21 45 4e 44  TE=1.!ENDIF.!END
1b30: 49 46 0a 0a 23 20 54 68 65 20 6c 6f 63 61 74 69  IF..# The locati
1b40: 6f 6e 73 20 6f 66 20 74 68 65 20 54 63 6c 20 68  ons of the Tcl h
1b50: 65 61 64 65 72 20 61 6e 64 20 6c 69 62 72 61 72  eader and librar
1b60: 79 20 66 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20  y files.  Also,
1b70: 74 68 65 20 6c 69 62 72 61 72 79 20 74 68 61 74  the library that
1b80: 0a 23 20 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61  .# non-stubs ena
1b90: 62 6c 65 64 20 70 72 6f 67 72 61 6d 73 20 75 73  bled programs us
1ba0: 69 6e 67 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e  ing Tcl must lin
1bb0: 6b 20 61 67 61 69 6e 73 74 2e 20 20 54 68 65 73  k against.  Thes
1bc0: 65 20 76 61 72 69 61 62 6c 65 73 0a 23 20 28 54  e variables.# (T
1bd0: 43 4c 49 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42  CLINCDIR, TCLLIB
1be0: 44 49 52 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29  DIR, and LIBTCL)
1bf0: 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69 64 64   may be overridd
1c00: 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 72  en via the envir
1c10: 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20 74  onment.# prior t
1c20: 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20  o running nmake
1c30: 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 74 63  in order to matc
1c40: 68 20 74 68 65 20 61 63 74 75 61 6c 20 69 6e 73  h the actual ins
1c50: 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20  talled location
1c60: 61 6e 64 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e  and.# version on
1c70: 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23   this machine..#
1c80: 0a 21 49 46 4e 44 45 46 20 54 43 4c 49 4e 43 44  .!IFNDEF TCLINCD
1c90: 49 52 0a 54 43 4c 49 4e 43 44 49 52 20 3d 20 63  IR.TCLINCDIR = c
1ca0: 3a 5c 74 63 6c 5c 69 6e 63 6c 75 64 65 0a 21 45  :\tcl\include.!E
1cb0: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 54 43  NDIF..!IFNDEF TC
1cc0: 4c 4c 49 42 44 49 52 0a 54 43 4c 4c 49 42 44 49  LLIBDIR.TCLLIBDI
1cd0: 52 20 3d 20 63 3a 5c 74 63 6c 5c 6c 69 62 0a 21  R = c:\tcl\lib.!
1ce0: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c  ENDIF..!IFNDEF L
1cf0: 49 42 54 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74  IBTCL.LIBTCL = t
1d00: 63 6c 38 35 2e 6c 69 62 0a 21 45 4e 44 49 46 0a  cl85.lib.!ENDIF.
1d10: 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73  .# The locations
1d20: 20 6f 66 20 74 68 65 20 49 43 55 20 68 65 61 64   of the ICU head
1d30: 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66  er and library f
1d40: 69 6c 65 73 2e 20 20 54 68 65 73 65 20 76 61 72  iles.  These var
1d50: 69 61 62 6c 65 73 0a 23 20 28 49 43 55 49 4e 43  iables.# (ICUINC
1d60: 44 49 52 2c 20 49 43 55 4c 49 42 44 49 52 2c 20  DIR, ICULIBDIR,
1d70: 61 6e 64 20 4c 49 42 49 43 55 29 20 6d 61 79 20  and LIBICU) may
1d80: 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69  be overridden vi
1d90: 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e  a the environmen
1da0: 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 75 6e  t.# prior to run
1db0: 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72  ning nmake in or
1dc0: 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74 68 65  der to match the
1dd0: 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65   actual installe
1de0: 64 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 0a 23 20  d location on.#
1df0: 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a  this machine..#.
1e00: 21 49 46 4e 44 45 46 20 49 43 55 49 4e 43 44 49  !IFNDEF ICUINCDI
1e10: 52 0a 49 43 55 49 4e 43 44 49 52 20 3d 20 63 3a  R.ICUINCDIR = c:
1e20: 5c 69 63 75 5c 69 6e 63 6c 75 64 65 0a 21 45 4e  \icu\include.!EN
1e30: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 43 55  DIF..!IFNDEF ICU
1e40: 4c 49 42 44 49 52 0a 49 43 55 4c 49 42 44 49 52  LIBDIR.ICULIBDIR
1e50: 20 3d 20 63 3a 5c 69 63 75 5c 6c 69 62 0a 21 45   = c:\icu\lib.!E
1e60: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49  NDIF..!IFNDEF LI
1e70: 42 49 43 55 0a 4c 49 42 49 43 55 20 3d 20 69 63  BICU.LIBICU = ic
1e80: 75 75 63 2e 6c 69 62 20 69 63 75 69 6e 2e 6c 69  uuc.lib icuin.li
1e90: 62 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73  b.!ENDIF..# This
1ea0: 20 69 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20   is the command
1eb0: 74 6f 20 75 73 65 20 66 6f 72 20 74 63 6c 73 68  to use for tclsh
1ec0: 20 2d 20 6e 6f 72 6d 61 6c 6c 79 20 6a 75 73 74   - normally just
1ed0: 20 22 74 63 6c 73 68 22 2c 20 62 75 74 20 77 65   "tclsh", but we
1ee0: 20 6d 61 79 0a 23 20 6b 6e 6f 77 20 74 68 65 20   may.# know the
1ef0: 73 70 65 63 69 66 69 63 20 76 65 72 73 69 6f 6e  specific version
1f00: 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73 65 2e   we want to use.
1f10: 20 20 54 68 69 73 20 76 61 72 69 61 62 6c 65 20    This variable
1f20: 28 54 43 4c 53 48 5f 43 4d 44 29 20 6d 61 79 20  (TCLSH_CMD) may
1f30: 62 65 0a 23 20 6f 76 65 72 72 69 64 64 65 6e 20  be.# overridden
1f40: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d  via the environm
1f50: 65 6e 74 20 70 72 69 6f 72 20 74 6f 20 72 75 6e  ent prior to run
1f60: 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72  ning nmake in or
1f70: 64 65 72 20 74 6f 20 73 65 6c 65 63 74 20 61 0a  der to select a.
1f80: 23 20 73 70 65 63 69 66 69 63 20 54 63 6c 20 73  # specific Tcl s
1f90: 68 65 6c 6c 20 74 6f 20 75 73 65 2e 0a 23 0a 21  hell to use..#.!
1fa0: 49 46 4e 44 45 46 20 54 43 4c 53 48 5f 43 4d 44  IFNDEF TCLSH_CMD
1fb0: 0a 54 43 4c 53 48 5f 43 4d 44 20 3d 20 74 63 6c  .TCLSH_CMD = tcl
1fc0: 73 68 38 35 0a 21 45 4e 44 49 46 0a 0a 23 20 43  sh85.!ENDIF..# C
1fd0: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20  ompiler options
1fe0: 6e 65 65 64 65 64 20 66 6f 72 20 70 72 6f 67 72  needed for progr
1ff0: 61 6d 73 20 74 68 61 74 20 75 73 65 20 74 68 65  ams that use the
2000: 20 72 65 61 64 6c 69 6e 65 28 29 20 6c 69 62 72   readline() libr
2010: 61 72 79 2e 0a 23 0a 52 45 41 44 4c 49 4e 45 5f  ary..#.READLINE_
2020: 46 4c 41 47 53 20 3d 20 2d 44 48 41 56 45 5f 52  FLAGS = -DHAVE_R
2030: 45 41 44 4c 49 4e 45 3d 30 0a 0a 23 20 54 68 65  EADLINE=0..# The
2040: 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 70 72   library that pr
2050: 6f 67 72 61 6d 73 20 75 73 69 6e 67 20 72 65 61  ograms using rea
2060: 64 6c 69 6e 65 28 29 20 6d 75 73 74 20 6c 69 6e  dline() must lin
2070: 6b 20 61 67 61 69 6e 73 74 2e 0a 23 0a 4c 49 42  k against..#.LIB
2080: 52 45 41 44 4c 49 4e 45 20 3d 0a 0a 23 20 53 68  READLINE =..# Sh
2090: 6f 75 6c 64 20 74 68 65 20 64 61 74 61 62 61 73  ould the databas
20a0: 65 20 65 6e 67 69 6e 65 20 62 65 20 63 6f 6d 70  e engine be comp
20b0: 69 6c 65 64 20 74 68 72 65 61 64 73 61 66 65 0a  iled threadsafe.
20c0: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  #.TCC = $(TCC) - 20d0: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 DSQLITE_THREADSA 20e0: 46 45 3d 31 0a 0a 23 20 44 6f 20 74 68 72 65 61 FE=1..# Do threa 20f0: 64 73 20 6f 76 65 72 72 69 64 65 20 65 61 63 68 ds override each 2100: 20 6f 74 68 65 72 73 20 6c 6f 63 6b 73 20 62 79 others locks by 2110: 20 64 65 66 61 75 6c 74 20 28 31 29 2c 20 6f 72 default (1), or 2120: 20 64 6f 20 77 65 20 74 65 73 74 20 28 2d 31 29 do we test (-1) 2130: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 .#.TCC =$(TCC)
2140: 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 5f  -DSQLITE_THREAD_
2150: 4f 56 45 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31  OVERRIDE_LOCK=-1
2160: 0a 0a 23 20 41 6e 79 20 74 61 72 67 65 74 20 6c  ..# Any target l
2170: 69 62 72 61 72 69 65 73 20 77 68 69 63 68 20 6c  ibraries which l
2180: 69 62 73 71 6c 69 74 65 20 6d 75 73 74 20 62 65  ibsqlite must be
2190: 20 6c 69 6e 6b 65 64 20 61 67 61 69 6e 73 74 0a   linked against.
21a0: 23 0a 21 49 46 4e 44 45 46 20 54 4c 49 42 53 0a  #.!IFNDEF TLIBS.
21b0: 54 4c 49 42 53 20 3d 0a 21 45 4e 44 49 46 0a 0a  TLIBS =.!ENDIF..
21c0: 23 20 46 6c 61 67 73 20 63 6f 6e 74 72 6f 6c 6c  # Flags controll
21d0: 69 6e 67 20 75 73 65 20 6f 66 20 74 68 65 20 69  ing use of the i
21e0: 6e 20 6d 65 6d 6f 72 79 20 62 74 72 65 65 20 69  n memory btree i
21f0: 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 23 0a  mplementation.#.
2200: 23 20 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54  # SQLITE_TEMP_ST
2210: 4f 52 45 20 69 73 20 30 20 74 6f 20 66 6f 72 63  ORE is 0 to forc
2220: 65 20 74 65 6d 70 6f 72 61 72 79 20 74 61 62 6c  e temporary tabl
2230: 65 73 20 74 6f 20 62 65 20 69 6e 20 61 20 66 69  es to be in a fi
2240: 6c 65 2c 20 31 20 74 6f 0a 23 20 64 65 66 61 75  le, 1 to.# defau
2250: 6c 74 20 74 6f 20 66 69 6c 65 2c 20 32 20 74 6f  lt to file, 2 to
2260: 20 64 65 66 61 75 6c 74 20 74 6f 20 6d 65 6d 6f   default to memo
2270: 72 79 2c 20 61 6e 64 20 33 20 74 6f 20 66 6f 72  ry, and 3 to for
2280: 63 65 20 74 65 6d 70 6f 72 61 72 79 0a 23 20 74  ce temporary.# t
2290: 61 62 6c 65 73 20 74 6f 20 61 6c 77 61 79 73 20  ables to always
22a0: 62 65 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a 23 0a  be in memory..#.
22b0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS 22c0: 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 QLITE_TEMP_STORE 22d0: 3d 31 0a 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 =1..# Enable/dis 22e0: 61 62 6c 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 able loadable ex 22f0: 74 65 6e 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 tensions, and ot 2300: 68 65 72 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 her optional fea 2310: 74 75 72 65 73 0a 23 20 62 61 73 65 64 20 6f 6e tures.# based on 2320: 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 configuration. 2330: 28 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c (-DSQLITE_OMIT*, 2340: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE 2350: 2a 29 2e 0a 23 20 54 68 65 20 73 61 6d 65 20 73 *)..# The same s 2360: 65 74 20 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 et of OMIT and E 2370: 4e 41 42 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 NABLE flags shou 2380: 6c 64 20 62 65 20 70 61 73 73 65 64 20 74 6f 20 ld be passed to 2390: 74 68 65 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 the.# LEMON pars 23a0: 65 72 20 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 er generator and 23b0: 20 74 68 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 the mkkeywordha 23c0: 73 68 20 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e sh tool as well. 23d0: 0a 0a 23 20 42 45 47 49 4e 20 73 74 61 6e 64 61 ..# BEGIN standa 23e0: 72 64 20 6f 70 74 69 6f 6e 73 0a 4f 50 54 5f 46 rd options.OPT_F 23f0: 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 EATURE_FLAGS =$
2400: 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (OPT_FEATURE_FLA
2410: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  GS) -DSQLITE_ENA
2420: 42 4c 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f 46  BLE_FTS3=1.OPT_F
2430: 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24  EATURE_FLAGS = $2440: 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 (OPT_FEATURE_FLA 2450: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 GS) -DSQLITE_ENA 2460: 42 4c 45 5f 52 54 52 45 45 3d 31 0a 4f 50 54 5f BLE_RTREE=1.OPT_ 2470: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 FEATURE_FLAGS = 2480: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c$(OPT_FEATURE_FL
2490: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  AGS) -DSQLITE_EN
24a0: 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41  ABLE_COLUMN_META
24b0: 44 41 54 41 3d 31 0a 4f 50 54 5f 46 45 41 54 55  DATA=1.OPT_FEATU
24c0: 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54  RE_FLAGS = $(OPT 24d0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 _FEATURE_FLAGS) 24e0: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 24f0: 53 45 53 53 49 4f 4e 3d 31 0a 4f 50 54 5f 46 45 SESSION=1.OPT_FE 2500: 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 ATURE_FLAGS =$(
2510: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
2520: 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  S) -DSQLITE_ENAB
2530: 4c 45 5f 50 52 45 55 50 44 41 54 45 5f 48 4f 4f  LE_PREUPDATE_HOO
2540: 4b 3d 31 0a 23 20 45 4e 44 20 73 74 61 6e 64 61  K=1.# END standa
2550: 72 64 20 6f 70 74 69 6f 6e 73 0a 0a 23 20 42 45  rd options..# BE
2560: 47 49 4e 20 72 65 71 75 69 72 65 64 20 57 69 6e  GIN required Win
2570: 64 6f 77 73 20 6f 70 74 69 6f 6e 0a 4f 50 54 5f  dows option.OPT_
2580: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20  FEATURE_FLAGS =
2590: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL 25a0: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 4d 41 AGS) -DSQLITE_MA 25b0: 58 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 3d X_TRIGGER_DEPTH= 25c0: 31 30 30 0a 23 20 45 4e 44 20 72 65 71 75 69 72 100.# END requir 25d0: 65 64 20 57 69 6e 64 6f 77 73 20 6f 70 74 69 6f ed Windows optio 25e0: 6e 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 n..TCC =$(TCC)
25f0: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL 2600: 41 47 53 29 0a 0a 23 20 41 64 64 20 69 6e 20 61 AGS)..# Add in a 2610: 6e 79 20 6f 70 74 69 6f 6e 61 6c 20 70 61 72 61 ny optional para 2620: 6d 65 74 65 72 73 20 73 70 65 63 69 66 69 65 64 meters specified 2630: 20 6f 6e 20 74 68 65 20 6d 61 6b 65 20 63 6f 6d on the make com 2640: 6d 61 6e 65 20 6c 69 6e 65 0a 23 20 69 65 2e 20 mane line.# ie. 2650: 20 6d 61 6b 65 20 22 4f 50 54 53 3d 2d 44 53 51 make "OPTS=-DSQ 2660: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d LITE_ENABLE_FOO= 2670: 31 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 1 -DSQLITE_OMIT_ 2680: 46 4f 4f 3d 31 22 2e 0a 54 43 43 20 3d 20 24 28 FOO=1"..TCC =$(
2690: 54 43 43 29 20 24 28 4f 50 54 53 29 0a 0a 23 20  TCC) $(OPTS)..# 26a0: 49 66 20 73 79 6d 62 6f 6c 73 20 61 72 65 20 65 If symbols are e 26b0: 6e 61 62 6c 65 64 2c 20 65 6e 61 62 6c 65 20 50 nabled, enable P 26c0: 44 42 73 2e 0a 23 20 49 66 20 64 65 62 75 67 67 DBs..# If debugg 26d0: 69 6e 67 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 ing is enabled, 26e0: 64 69 73 61 62 6c 65 20 61 6c 6c 20 6f 70 74 69 disable all opti 26f0: 6d 69 7a 61 74 69 6f 6e 73 20 61 6e 64 20 65 6e mizations and en 2700: 61 62 6c 65 20 50 44 42 73 2e 0a 21 49 46 20 24 able PDBs..!IF$
2710: 28 44 45 42 55 47 29 3e 30 0a 54 43 43 20 3d 20  (DEBUG)>0.TCC =
2720: 24 28 54 43 43 29 20 2d 4f 64 20 2d 44 5f 44 45  $(TCC) -Od -D_DE 2730: 42 55 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 BUG.BCC =$(BCC)
2740: 20 2d 4f 64 20 2d 44 5f 44 45 42 55 47 0a 21 45   -Od -D_DEBUG.!E
2750: 4c 53 45 0a 54 43 43 20 3d 20 24 28 54 43 43 29  LSE.TCC = $(TCC) 2760: 20 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 -O2.BCC =$(BCC
2770: 29 20 2d 4f 32 0a 21 45 4e 44 49 46 0a 0a 21 49  ) -O2.!ENDIF..!I
2780: 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c 20  F $(DEBUG)>0 || 2790: 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 54 43$(SYMBOLS)!=0.TC
27a0: 43 20 3d 20 24 28 54 43 43 29 20 2d 5a 69 0a 42  C = $(TCC) -Zi.B 27b0: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 5a 69 0a CC =$(BCC) -Zi.
27c0: 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 49 43 55  !ENDIF..# If ICU
27d0: 20 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62   support is enab
27e0: 6c 65 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d  led, add the com
27f0: 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f  piler options fo
2800: 72 20 69 74 2e 0a 21 49 46 20 24 28 55 53 45 5f  r it..!IF $(USE_ 2810: 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 ICU)!=0.TCC =$(
2820: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  TCC) -DSQLITE_EN
2830: 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43 43 20 3d  ABLE_ICU=1.TCC =
2840: 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29   $(TCC) -I$(TOP)
2850: 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20 24  \ext\icu.TCC = $2860: 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e 43 (TCC) -I$(ICUINC
2870: 44 49 52 29 0a 21 45 4e 44 49 46 0a 0a 23 20 6c  DIR).!ENDIF..# l
2880: 69 62 74 6f 6f 6c 20 63 6f 6d 70 69 6c 65 2f 6c  ibtool compile/l
2890: 69 6e 6b 0a 4c 54 43 4f 4d 50 49 4c 45 20 3d 20  ink.LTCOMPILE =
28a0: 24 28 54 43 43 29 20 2d 46 6f 24 40 0a 4c 54 4c  $(TCC) -Fo$@.LTL
28b0: 49 42 20 3d 20 6c 69 62 2e 65 78 65 0a 4c 54 4c  IB = lib.exe.LTL
28c0: 49 4e 4b 20 3d 20 24 28 54 43 43 29 20 2d 46 65  INK = $(TCC) -Fe 28d0: 24 40 0a 0a 23 20 49 66 20 61 20 70 6c 61 74 66$@..# If a platf
28e0: 6f 72 6d 20 77 61 73 20 73 65 74 2c 20 66 6f 72  orm was set, for
28f0: 63 65 20 74 68 65 20 6c 69 6e 6b 65 72 20 74 6f  ce the linker to
2900: 20 74 61 72 67 65 74 20 74 68 61 74 2e 0a 23 20   target that..#
2910: 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 76 63  Note that the vc
2920: 76 61 72 73 2a 2e 62 61 74 20 66 61 6d 69 6c 79  vars*.bat family
2930: 20 6f 66 20 62 61 74 63 68 20 66 69 6c 65 73 20   of batch files
2940: 74 79 70 69 63 61 6c 6c 79 0a 23 20 73 65 74 20  typically.# set
2950: 74 68 69 73 20 66 6f 72 20 79 6f 75 2e 20 20 4f  this for you.  O
2960: 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 6c 69  therwise, the li
2970: 6e 6b 65 72 20 77 69 6c 6c 20 61 74 74 65 6d 70  nker will attemp
2980: 74 0a 23 20 74 6f 20 64 65 64 75 63 65 20 74 68  t.# to deduce th
2990: 65 20 62 69 6e 61 72 79 20 74 79 70 65 20 62 61  e binary type ba
29a0: 73 65 64 20 6f 6e 20 74 68 65 20 6f 62 6a 65 63  sed on the objec
29b0: 74 20 66 69 6c 65 73 2e 0a 21 49 46 44 45 46 20  t files..!IFDEF
29c0: 50 4c 41 54 46 4f 52 4d 0a 4c 54 4c 49 4e 4b 4f  PLATFORM.LTLINKO
29d0: 50 54 53 20 3d 20 2f 4d 41 43 48 49 4e 45 3a 24  PTS = /MACHINE:$29e0: 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49 42 (PLATFORM).LTLIB 29f0: 4f 50 54 53 20 3d 20 2f 4d 41 43 48 49 4e 45 3a OPTS = /MACHINE: 2a00: 24 28 50 4c 41 54 46 4f 52 4d 29 0a 21 45 4e 44$(PLATFORM).!END
2a10: 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69  IF..# When compi
2a20: 6c 69 6e 67 20 66 6f 72 20 75 73 65 20 69 6e 20  ling for use in
2a30: 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f  the WinRT enviro
2a40: 6e 6d 65 6e 74 2c 20 74 68 65 20 66 6f 6c 6c 6f  nment, the follo
2a50: 77 69 6e 67 0a 23 20 6c 69 6e 6b 65 72 20 6f 70  wing.# linker op
2a60: 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 75 73 65  tion must be use
2a70: 64 20 74 6f 20 6d 61 72 6b 20 74 68 65 20 65 78  d to mark the ex
2a80: 65 63 75 74 61 62 6c 65 20 61 73 20 72 75 6e 6e  ecutable as runn
2a90: 61 62 6c 65 0a 23 20 6f 6e 6c 79 20 69 6e 20 74  able.# only in t
2aa0: 68 65 20 63 6f 6e 74 65 78 74 20 6f 66 20 61 6e  he context of an
2ab0: 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 63 6f 6e   application con
2ac0: 74 61 69 6e 65 72 2e 0a 23 0a 21 49 46 20 24 28  tainer..#.!IF $( 2ad0: 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 0a 4c 54 FOR_WINRT)!=0.LT 2ae0: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c LINKOPTS =$(LTL
2af0: 49 4e 4b 4f 50 54 53 29 20 2f 41 50 50 43 4f 4e  INKOPTS) /APPCON
2b00: 54 41 49 4e 45 52 0a 21 45 4e 44 49 46 0a 0a 23  TAINER.!ENDIF..#
2b10: 20 49 66 20 65 69 74 68 65 72 20 64 65 62 75 67   If either debug
2b20: 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f 6c 73 20  ging or symbols
2b30: 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 65 6e 61  are enabled, ena
2b40: 62 6c 65 20 50 44 42 73 2e 0a 21 49 46 20 24 28  ble PDBs..!IF $( 2b50: 44 45 42 55 47 29 3e 30 20 7c 7c 20 24 28 53 59 DEBUG)>0 ||$(SY
2b60: 4d 42 4f 4c 53 29 21 3d 30 0a 4c 44 46 4c 41 47  MBOLS)!=0.LDFLAG
2b70: 53 20 3d 20 2f 44 45 42 55 47 0a 21 45 4e 44 49  S = /DEBUG.!ENDI
2b80: 46 0a 0a 23 20 53 74 61 72 74 20 77 69 74 68 20  F..# Start with
2b90: 74 68 65 20 54 63 6c 20 72 65 6c 61 74 65 64 20  the Tcl related
2ba0: 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 2e 0a  linker options..
2bb0: 21 49 46 20 24 28 4e 4f 5f 54 43 4c 29 3d 3d 30  !IF $(NO_TCL)==0 2bc0: 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 2f 4c .LTLIBPATHS = /L 2bd0: 49 42 50 41 54 48 3a 24 28 54 43 4c 4c 49 42 44 IBPATH:$(TCLLIBD
2be0: 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28 4c  IR).LTLIBS = $(L 2bf0: 49 42 54 43 4c 29 0a 21 45 4e 44 49 46 0a 0a 23 IBTCL).!ENDIF..# 2c00: 20 49 66 20 49 43 55 20 73 75 70 70 6f 72 74 20 If ICU support 2c10: 69 73 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 is enabled, add 2c20: 74 68 65 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f the linker optio 2c30: 6e 73 20 66 6f 72 20 69 74 2e 0a 21 49 46 20 24 ns for it..!IF$
2c40: 28 55 53 45 5f 49 43 55 29 21 3d 30 0a 4c 54 4c  (USE_ICU)!=0.LTL
2c50: 49 42 50 41 54 48 53 20 3d 20 24 28 4c 54 4c 49  IBPATHS = $(LTLI 2c60: 42 50 41 54 48 53 29 20 2f 4c 49 42 50 41 54 48 BPATHS) /LIBPATH 2c70: 3a 24 28 49 43 55 4c 49 42 44 49 52 29 0a 4c 54 :$(ICULIBDIR).LT
2c80: 4c 49 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 29  LIBS = $(LTLIBS) 2c90: 20 24 28 4c 49 42 49 43 55 29 0a 21 45 4e 44 49$(LIBICU).!ENDI
2ca0: 46 0a 0a 23 20 6e 61 77 6b 20 63 6f 6d 70 61 74  F..# nawk compat
2cb0: 69 62 6c 65 20 61 77 6b 2e 0a 4e 41 57 4b 20 3d  ible awk..NAWK =
2cc0: 20 67 61 77 6b 2e 65 78 65 0a 0a 23 20 59 6f 75   gawk.exe..# You
2cd0: 20 73 68 6f 75 6c 64 20 6e 6f 74 20 68 61 76 65   should not have
2ce0: 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 79 74 68   to change anyth
2cf0: 69 6e 67 20 62 65 6c 6f 77 20 74 68 69 73 20 6c  ing below this l
2d00: 69 6e 65 0a 23 23 23 23 23 23 23 23 23 23 23 23  ine.############
2d10: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2d20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2d30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2d40: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2d50: 23 23 23 0a 0a 23 20 4f 62 6a 65 63 74 20 66 69  ###..# Object fi
2d60: 6c 65 73 20 66 6f 72 20 74 68 65 20 53 51 4c 69  les for the SQLi
2d70: 74 65 20 6c 69 62 72 61 72 79 20 28 6e 6f 6e 2d  te library (non-
2d80: 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a 23  amalgamation)..#
2d90: 0a 4c 49 42 4f 42 4a 53 30 20 3d 20 61 6c 74 65  .LIBOBJS0 = alte
2da0: 72 2e 6c 6f 20 61 6e 61 6c 79 7a 65 2e 6c 6f 20  r.lo analyze.lo
2db0: 61 74 74 61 63 68 2e 6c 6f 20 61 75 74 68 2e 6c  attach.lo auth.l
2dc0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 62 61 63  o \.         bac
2dd0: 6b 75 70 2e 6c 6f 20 62 69 74 76 65 63 2e 6c 6f  kup.lo bitvec.lo
2de0: 20 62 74 6d 75 74 65 78 2e 6c 6f 20 62 74 72 65   btmutex.lo btre
2df0: 65 2e 6c 6f 20 62 75 69 6c 64 2e 6c 6f 20 5c 0a  e.lo build.lo \.
2e00: 20 20 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63           callbac
2e10: 6b 2e 6c 6f 20 63 6f 6d 70 6c 65 74 65 2e 6c 6f  k.lo complete.lo
2e20: 20 63 74 69 6d 65 2e 6c 6f 20 64 61 74 65 2e 6c   ctime.lo date.l
2e30: 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20 20  o delete.lo \.
2e40: 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f 20 66         expr.lo f
2e50: 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f 20  ault.lo fkey.lo
2e60: 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 33 2e  \.         fts3.
2e70: 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 20 66  lo fts3_aux.lo f
2e80: 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 73 33  ts3_expr.lo fts3
2e90: 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f 69 63  _hash.lo fts3_ic
2ea0: 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  u.lo \.
2eb0: 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 20 66  fts3_porter.lo f
2ec0: 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 20 66  ts3_snippet.lo f
2ed0: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f  ts3_tokenizer.lo
2ee0: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31   fts3_tokenizer1
2ef0: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66  .lo \.         f
2f00: 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c 6f 20 66  ts3_unicode.lo f
2f10: 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 6c 6f 20  ts3_unicode2.lo
2f20: 66 74 73 33 5f 77 72 69 74 65 2e 6c 6f 20 5c 0a  fts3_write.lo \.
2f30: 20 20 20 20 20 20 20 20 20 66 75 6e 63 2e 6c 6f           func.lo
2f40: 20 67 6c 6f 62 61 6c 2e 6c 6f 20 68 61 73 68 2e   global.lo hash.
2f50: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 69 63  lo \.         ic
2f60: 75 2e 6c 6f 20 69 6e 73 65 72 74 2e 6c 6f 20 6a  u.lo insert.lo j
2f70: 6f 75 72 6e 61 6c 2e 6c 6f 20 6c 65 67 61 63 79  ournal.lo legacy
2f80: 2e 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c  .lo loadext.lo \
2f90: 0a 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c  .         main.l
2fa0: 6f 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30  o malloc.lo mem0
2fb0: 2e 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32  .lo mem1.lo mem2
2fc0: 2e 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35  .lo mem3.lo mem5
2fd0: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d  .lo \.         m
2fe0: 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20  emjournal.lo \.
2ff0: 20 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f          mutex.lo
3000: 20 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d   mutex_noop.lo m
3010: 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74  utex_unix.lo mut
3020: 65 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20  ex_w32.lo \.
3030: 20 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f       notify.lo o
3040: 70 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20  pcodes.lo os.lo
3050: 6f 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69  os_unix.lo os_wi
3060: 6e 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  n.lo \.
3070: 70 61 67 65 72 2e 6c 6f 20 70 61 72 73 65 2e 6c  pager.lo parse.l
3080: 6f 20 70 63 61 63 68 65 2e 6c 6f 20 70 63 61 63  o pcache.lo pcac
3090: 68 65 31 2e 6c 6f 20 70 72 61 67 6d 61 2e 6c 6f  he1.lo pragma.lo
30a0: 20 70 72 65 70 61 72 65 2e 6c 6f 20 70 72 69 6e   prepare.lo prin
30b0: 74 66 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  tf.lo \.
30c0: 20 72 61 6e 64 6f 6d 2e 6c 6f 20 72 65 73 6f 6c   random.lo resol
30d0: 76 65 2e 6c 6f 20 72 6f 77 73 65 74 2e 6c 6f 20  ve.lo rowset.lo
30e0: 72 74 72 65 65 2e 6c 6f 20 73 65 6c 65 63 74 2e  rtree.lo select.
30f0: 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c 0a 20  lo status.lo \.
3100: 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e 6c 6f          table.lo
3110: 20 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72 69   tokenize.lo tri
3120: 67 67 65 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  gger.lo \.
3130: 20 20 20 75 70 64 61 74 65 2e 6c 6f 20 75 74 69     update.lo uti
3140: 6c 2e 6c 6f 20 76 61 63 75 75 6d 2e 6c 6f 20 5c  l.lo vacuum.lo \
3150: 0a 20 20 20 20 20 20 20 20 20 76 64 62 65 2e 6c  .         vdbe.l
3160: 6f 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62  o vdbeapi.lo vdb
3170: 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62  eaux.lo vdbeblob
3180: 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76  .lo vdbemem.lo v
3190: 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20  dbesort.lo \.
31a0: 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e        vdbetrace.
31b0: 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72  lo wal.lo walker
31c0: 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 75 74 66  .lo where.lo utf
31d0: 2e 6c 6f 20 76 74 61 62 2e 6c 6f 0a 0a 23 20 4f  .lo vtab.lo..# O
31e0: 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20  bject files for
31f0: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  the amalgamation
3200: 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20 73  ..#.LIBOBJS1 = s
3210: 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65 74  qlite3.lo..# Det
3220: 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c 20  ermine the real
3230: 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a 20  value of LIBOBJ
3240: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63 6f  based on the 'co
3250: 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74 0a  nfigure' script.
3260: 23 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c  #.!IF $(USE_AMAL 3270: 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 GAMATION)==0.LIB 3280: 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 OBJ =$(LIBOBJS0
3290: 29 0a 21 45 4c 53 45 0a 4c 49 42 4f 42 4a 20 3d  ).!ELSE.LIBOBJ =
32a0: 20 24 28 4c 49 42 4f 42 4a 53 31 29 0a 21 45 4e   $(LIBOBJS1).!EN 32b0: 44 49 46 0a 0a 23 20 41 6c 6c 20 6f 66 20 74 68 DIF..# All of th 32c0: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 e source code fi 32d0: 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 5c 0a 20 les..#.SRC = \. 32e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65$(TOP)\src\alte
32f0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  r.c \.  $(TOP)\s 3300: 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 rc\analyze.c \. 3310: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61$(TOP)\src\atta
3320: 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ch.c \.  $(TOP)\ 3330: 73 72 63 5c 61 75 74 68 2e 63 20 5c 0a 20 20 24 src\auth.c \.$
3340: 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70  (TOP)\src\backup
3350: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 3360: 63 5c 62 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 c\bitvec.c \.$
3370: 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65  (TOP)\src\btmute
3380: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s 3390: 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 rc\btree.c \.$
33a0: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
33b0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 33c0: 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 \btreeInt.h \. 33d0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64$(TOP)\src\build
33e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 33f0: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 c\callback.c \. 3400: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70$(TOP)\src\comp
3410: 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lete.c \.  $(TOP 3420: 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a )\src\ctime.c \. 3430: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74$(TOP)\src\dat
3440: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 3450: 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c 0a 20 20 rc\delete.c \. 3460: 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e$(TOP)\src\expr.
3470: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 3480: 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20 24 28 54 \fault.c \.$(T
3490: 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 20 5c  OP)\src\fkey.c \
34a0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75  .  $(TOP)\src\fu 34b0: 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c nc.c \.$(TOP)\
34c0: 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c 0a 20  src\global.c \.
34d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68   $(TOP)\src\hash 34e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
34f0: 63 5c 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54  c\hash.h \.  $(T 3500: 4f 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 OP)\src\hwtime.h 3510: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
3520: 69 6e 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54  insert.c \.  $(T 3530: 4f 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e OP)\src\journal. 3540: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
3550: 5c 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20 24 28  \legacy.c \.  $( 3560: 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 TOP)\src\loadext 3570: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
3580: 63 5c 6d 61 69 6e 2e 63 20 5c 0a 20 20 24 28 54  c\main.c \.  $(T 3590: 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 OP)\src\malloc.c 35a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
35b0: 6d 65 6d 30 2e 63 20 5c 0a 20 20 24 28 54 4f 50  mem0.c \.  $(TOP 35c0: 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 5c 0a 20 )\src\mem1.c \. 35d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32$(TOP)\src\mem2
35e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 35f0: 63 5c 6d 65 6d 33 2e 63 20 5c 0a 20 20 24 28 54 c\mem3.c \.$(T
3600: 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 20 5c  OP)\src\mem5.c \
3610: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  .  $(TOP)\src\me 3620: 6d 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 mjournal.c \.$
3630: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e  (TOP)\src\mutex.
3640: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 3650: 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 \mutex.h \.$(T
3660: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f  OP)\src\mutex_no
3670: 6f 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  op.c \.  $(TOP)\ 3680: 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 src\mutex_unix.c 3690: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
36a0: 6d 75 74 65 78 5f 77 33 32 2e 63 20 5c 0a 20 20  mutex_w32.c \.
36b0: 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66  $(TOP)\src\notif 36c0: 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 y.c \.$(TOP)\s
36d0: 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f  rc\os.c \.  $(TO 36e0: 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 P)\src\os.h \. 36f0: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f$(TOP)\src\os_co
3700: 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50  mmon.h \.  $(TOP 3710: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 )\src\os_unix.c 3720: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f \.$(TOP)\src\o
3730: 73 5f 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f  s_win.c \.  $(TO 3740: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c P)\src\pager.c \ 3750: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 .$(TOP)\src\pa
3760: 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ger.h \.  $(TOP) 3770: 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 5c 0a 20 \src\parse.y \. 3780: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63$(TOP)\src\pcac
3790: 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  he.c \.  $(TOP)\ 37a0: 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a 20 src\pcache.h \. 37b0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63$(TOP)\src\pcac
37c0: 68 65 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  he1.c \.  $(TOP) 37d0: 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a \src\pragma.c \. 37e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65$(TOP)\src\pre
37f0: 70 61 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  pare.c \.  $(TOP 3800: 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c )\src\printf.c \ 3810: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 .$(TOP)\src\ra
3820: 6e 64 6f 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ndom.c \.  $(TOP 3830: 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 )\src\resolve.c 3840: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 \.$(TOP)\src\r
3850: 6f 77 73 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f  owset.c \.  $(TO 3860: 50 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 P)\src\select.c 3870: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 \.$(TOP)\src\s
3880: 74 61 74 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f  tatus.c \.  $(TO 3890: 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20 5c P)\src\shell.c \ 38a0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 .$(TOP)\src\sq
38b0: 6c 69 74 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28  lite.h.in \.  $( 38c0: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 TOP)\src\sqlite3 38d0: 65 78 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ext.h \.$(TOP)
38e0: 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68  \src\sqliteInt.h
38f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 3900: 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a sqliteLimit.h \. 3910: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 62$(TOP)\src\tab
3920: 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  le.c \.  $(TOP)\ 3930: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c 3940: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
3950: 6f 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28  okenize.c \.  $( 3960: 54 4f 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 TOP)\src\trigger 3970: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
3980: 63 5c 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f  c\utf.c \.  $(TO 3990: 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 20 P)\src\update.c 39a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 \.$(TOP)\src\u
39b0: 74 69 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  til.c \.  $(TOP) 39c0: 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 20 5c 0a \src\vacuum.c \. 39d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62$(TOP)\src\vdb
39e0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 39f0: 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 24 28 rc\vdbe.h \.$(
3a00: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69  TOP)\src\vdbeapi
3a10: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 3a20: 63 5c 76 64 62 65 61 75 78 2e 63 20 5c 0a 20 20 c\vdbeaux.c \. 3a30: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 62$(TOP)\src\vdbeb
3a40: 6c 6f 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  lob.c \.  $(TOP) 3a50: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c \src\vdbemem.c \ 3a60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 .$(TOP)\src\vd
3a70: 62 65 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54  besort.c \.  $(T 3a80: 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 OP)\src\vdbetrac 3a90: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
3aa0: 72 63 5c 76 64 62 65 49 6e 74 2e 68 20 5c 0a 20  rc\vdbeInt.h \.
3ab0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62   $(TOP)\src\vtab 3ac0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
3ad0: 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  c\wal.c \.  $(TO 3ae0: 50 29 5c 73 72 63 5c 77 61 6c 2e 68 20 5c 0a 20 P)\src\wal.h \. 3af0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b$(TOP)\src\walk
3b00: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\ 3b10: 73 72 63 5c 77 68 65 72 65 2e 63 0a 0a 23 20 53 src\where.c..# S 3b20: 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 65 ource code for e 3b30: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 53 52 43 20 xtensions.#.SRC 3b40: 3d 20 24 28 53 52 43 29 20 5c 0a 20 20 24 28 54 =$(SRC) \.  $(T 3b50: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 OP)\ext\fts1\fts 3b60: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 1.c \.$(TOP)\e
3b70: 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20 5c  xt\fts1\fts1.h \
3b80: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 3b90: 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 63 20 5c s1\fts1_hash.c \ 3ba0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
3bb0: 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20 5c  s1\fts1_hash.h \
3bc0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 3bd0: 73 31 5c 66 74 73 31 5f 70 6f 72 74 65 72 2e 63 s1\fts1_porter.c 3be0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
3bf0: 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69  fts1\fts1_tokeni
3c00: 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  zer.h \.  $(TOP) 3c10: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 \ext\fts1\fts1_t 3c20: 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 53 52 43 20 okenizer1.c.SRC 3c30: 3d 20 24 28 53 52 43 29 20 5c 0a 20 20 24 28 54 =$(SRC) \.  $(T 3c40: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts 3c50: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 2.c \.$(TOP)\e
3c60: 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c  xt\fts2\fts2.h \
3c70: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 3c80: 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63 20 5c s2\fts2_hash.c \ 3c90: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
3ca0: 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c  s2\fts2_hash.h \
3cb0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 3cc0: 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a s2\fts2_icu.c \. 3cd0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
3ce0: 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20  2\fts2_porter.c
3cf0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 3d00: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a ts2\fts2_tokeniz 3d10: 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c er.h \.$(TOP)\
3d20: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f  ext\fts2\fts2_to
3d30: 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28  kenizer.c \.  $( 3d40: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 3d50: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a s2_tokenizer1.c. 3d60: 53 52 43 20 3d 20 24 28 53 52 43 29 20 5c 0a 20 SRC =$(SRC) \.
3d70: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 3d80: 5c 66 74 73 33 2e 63 20 5c 0a 20 20 24 28 54 4f \fts3.c \.$(TO
3d90: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
3da0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 3db0: 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 t\fts3\fts3Int.h 3dc0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
3dd0: 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20  fts3\fts3_aux.c
3de0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 3df0: 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 ts3\fts3_expr.c 3e00: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
3e10: 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 20  ts3\fts3_hash.c
3e20: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 3e30: 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 20 ts3\fts3_hash.h 3e40: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
3e50: 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63 20 5c  ts3\fts3_icu.c \
3e60: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 3e70: 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 s3\fts3_porter.c 3e80: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
3e90: 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65  fts3\fts3_snippe
3ea0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  t.c \.  $(TOP)\e 3eb0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b xt\fts3\fts3_tok 3ec0: 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 enizer.h \.$(T
3ed0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
3ee0: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a  3_tokenizer.c \.
3ef0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 3f00: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer 3f10: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 1.c \.$(TOP)\e
3f20: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
3f30: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  code.c \.  $(TOP 3f40: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 3f50: 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24 unicode2.c \.$
3f60: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
3f70: 74 73 33 5f 77 72 69 74 65 2e 63 0a 53 52 43 20  ts3_write.c.SRC
3f80: 3d 20 24 28 53 52 43 29 20 5c 0a 20 20 24 28 54  = $(SRC) \.$(T
3f90: 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69  OP)\ext\icu\sqli
3fa0: 74 65 69 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f  teicu.h \.  $(TO 3fb0: 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 P)\ext\icu\icu.c 3fc0: 0a 53 52 43 20 3d 20 24 28 53 52 43 29 20 5c 0a .SRC =$(SRC) \.
3fd0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72    $(TOP)\ext\rtr 3fe0: 65 65 5c 72 74 72 65 65 2e 68 20 5c 0a 20 20 24 ee\rtree.h \.$
3ff0: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c  (TOP)\ext\rtree\
4000: 72 74 72 65 65 2e 63 0a 53 52 43 20 3d 20 24 28  rtree.c.SRC = $( 4010: 53 52 43 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c SRC) \.$(TOP)\
4020: 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69  ext\session\sqli
4030: 74 65 33 73 65 73 73 69 6f 6e 2e 68 20 5c 0a 20  te3session.h \.
4040: 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73   $(TOP)\ext\sess 4050: 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69 ion\sqlite3sessi 4060: 6f 6e 2e 63 0a 0a 0a 23 20 47 65 6e 65 72 61 74 on.c...# Generat 4070: 65 64 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 ed source code f 4080: 69 6c 65 73 0a 23 0a 53 52 43 20 3d 20 24 28 53 iles.#.SRC =$(S
4090: 52 43 29 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68  RC) \.  keywordh
40a0: 61 73 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65  ash.h \.  opcode
40b0: 73 2e 63 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e  s.c \.  opcodes.
40c0: 68 20 5c 0a 20 20 70 61 72 73 65 2e 63 20 5c 0a  h \.  parse.c \.
40d0: 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 20 73 71    parse.h \.  sq
40e0: 6c 69 74 65 33 2e 68 0a 0a 23 20 53 6f 75 72 63  lite3.h..# Sourc
40f0: 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 74 65  e code to the te
4100: 73 74 20 66 69 6c 65 73 2e 0a 23 0a 54 45 53 54  st files..#.TEST
4110: 53 52 43 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29  SRC = \.  $(TOP) 4120: 5c 73 72 63 5c 74 65 73 74 31 2e 63 20 5c 0a 20 \src\test1.c \. 4130: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
4140: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  2.c \.  $(TOP)\s 4150: 72 63 5c 74 65 73 74 33 2e 63 20 5c 0a 20 20 24 rc\test3.c \.$
4160: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 34 2e  (TOP)\src\test4.
4170: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 4180: 5c 74 65 73 74 35 2e 63 20 5c 0a 20 20 24 28 54 \test5.c \.$(T
4190: 4f 50 29 5c 73 72 63 5c 74 65 73 74 36 2e 63 20  OP)\src\test6.c
41a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 41b0: 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 54 4f 50 est7.c \.$(TOP
41c0: 29 5c 73 72 63 5c 74 65 73 74 38 2e 63 20 5c 0a  )\src\test8.c \.
41d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 41e0: 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c t9.c \.$(TOP)\
41f0: 73 72 63 5c 74 65 73 74 5f 61 75 74 6f 65 78 74  src\test_autoext
4200: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 4210: 63 5c 74 65 73 74 5f 61 73 79 6e 63 2e 63 20 5c c\test_async.c \ 4220: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
4230: 73 74 5f 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20  st_backup.c \.
4240: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 4250: 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f btree.c \.$(TO
4260: 50 29 5c 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66  P)\src\test_conf
4270: 69 67 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ig.c \.  $(TOP)\ 4280: 73 72 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66 73 src\test_demovfs 4290: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
42a0: 63 5c 74 65 73 74 5f 64 65 76 73 79 6d 2e 63 20  c\test_devsym.c
42b0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 42c0: 65 73 74 5f 66 75 6e 63 2e 63 20 5c 0a 20 20 24 est_func.c \.$
42d0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66  (TOP)\src\test_f
42e0: 75 7a 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  uzzer.c \.  $(TO 42f0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 68 65 78 69 P)\src\test_hexi 4300: 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 o.c \.$(TOP)\s
4310: 72 63 5c 74 65 73 74 5f 69 6e 69 74 2e 63 20 5c  rc\test_init.c \
4320: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 4330: 73 74 5f 69 6e 74 61 72 72 61 79 2e 63 20 5c 0a st_intarray.c \. 4340: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
4350: 74 5f 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20  t_journal.c \.
4360: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 4370: 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 malloc.c \.$(T
4380: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 75 6c  OP)\src\test_mul
4390: 74 69 70 6c 65 78 2e 63 20 5c 0a 20 20 24 28 54  tiplex.c \.  $(T 43a0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 75 74 OP)\src\test_mut 43b0: 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ex.c \.$(TOP)\
43c0: 73 72 63 5c 74 65 73 74 5f 6f 6e 65 66 69 6c 65  src\test_onefile
43d0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 43e0: 63 5c 74 65 73 74 5f 6f 73 69 6e 73 74 2e 63 20 c\test_osinst.c 43f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
4400: 65 73 74 5f 70 63 61 63 68 65 2e 63 20 5c 0a 20  est_pcache.c \.
4410: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 4420: 5f 71 75 6f 74 61 2e 63 20 5c 0a 20 20 24 28 54 _quota.c \.$(T
4430: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 72 74 72  OP)\src\test_rtr
4440: 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ee.c \.  $(TOP)\ 4450: 73 72 63 5c 74 65 73 74 5f 73 63 68 65 6d 61 2e src\test_schema. 4460: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
4470: 5c 74 65 73 74 5f 73 65 72 76 65 72 2e 63 20 5c  \test_server.c \
4480: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 4490: 73 74 5f 73 75 70 65 72 6c 6f 63 6b 2e 63 20 5c st_superlock.c \ 44a0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
44b0: 73 74 5f 73 79 73 63 61 6c 6c 2e 63 20 5c 0a 20  st_syscall.c \.
44c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 44d0: 5f 73 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f _stat.c \.$(TO
44e0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 74 63 6c 76  P)\src\test_tclv
44f0: 61 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ar.c \.  $(TOP)\ 4500: 73 72 63 5c 74 65 73 74 5f 74 68 72 65 61 64 2e src\test_thread. 4510: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
4520: 5c 74 65 73 74 5f 76 66 73 2e 63 20 5c 0a 20 20  \test_vfs.c \.
4530: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 4540: 77 68 6f 6c 65 6e 75 6d 62 65 72 2e 63 20 5c 0a wholenumber.c \. 4550: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
4560: 74 5f 77 73 64 2e 63 20 5c 0a 20 20 24 28 54 4f  t_wsd.c \.  $(TO 4570: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 4580: 5f 74 65 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f _term.c \.$(TO
4590: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
45a0: 5f 74 65 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f  _test.c \.  $(TO 45b0: 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 74 P)\ext\session\t 45c0: 65 73 74 5f 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 est_session.c..# 45d0: 20 53 6f 75 72 63 65 20 63 6f 64 65 20 74 6f 20 Source code to 45e0: 74 68 65 20 6c 69 62 72 61 72 79 20 66 69 6c 65 the library file 45f0: 73 20 6e 65 65 64 65 64 20 62 79 20 74 68 65 20 s needed by the 4600: 74 65 73 74 20 66 69 78 74 75 72 65 0a 23 20 28 test fixture.# ( 4610: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e non-amalgamation 4620: 29 0a 23 0a 54 45 53 54 53 52 43 32 20 3d 20 5c ).#.TESTSRC2 = \ 4630: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 .$(TOP)\src\at
4640: 74 61 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tach.c \.  $(TOP 4650: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c )\src\backup.c \ 4660: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 .$(TOP)\src\bi
4670: 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tvec.c \.  $(TOP 4680: 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a )\src\btree.c \. 4690: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69$(TOP)\src\bui
46a0: 6c 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ld.c \.  $(TOP)\ 46b0: 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 src\ctime.c \. 46c0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e$(TOP)\src\date.
46d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 46e0: 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f \expr.c \.$(TO
46f0: 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a  P)\src\func.c \.
4700: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73    $(TOP)\src\ins 4710: 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ert.c \.$(TOP)
4720: 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24  \src\wal.c \.  $4730: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 (TOP)\src\mem5.c 4740: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
4750: 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  os.c \.  $(TOP)\ 4760: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a src\os_unix.c \. 4770: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f$(TOP)\src\os_
4780: 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  win.c \.  $(TOP) 4790: 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a 20 \src\pager.c \. 47a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67$(TOP)\src\prag
47b0: 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ma.c \.  $(TOP)\ 47c0: 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 5c 0a src\prepare.c \. 47d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69$(TOP)\src\pri
47e0: 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ntf.c \.  $(TOP) 47f0: 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 5c 0a \src\random.c \. 4800: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61$(TOP)\src\pca
4810: 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  che.c \.  $(TOP) 4820: 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 5c \src\pcache1.c \ 4830: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65 .$(TOP)\src\se
4840: 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lect.c \.  $(TOP 4850: 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 )\src\tokenize.c 4860: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
4870: 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  utf.c \.  $(TOP) 4880: 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20 \src\util.c \. 4890: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61$(TOP)\src\vdbea
48a0: 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pi.c \.  $(TOP)\ 48b0: 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 5c 0a src\vdbeaux.c \. 48c0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62$(TOP)\src\vdb
48d0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 48e0: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20 rc\vdbemem.c \. 48f0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65$(TOP)\src\vdbe
4900: 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sort.c \.  $(TOP 4910: 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e )\src\vdbetrace. 4920: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
4930: 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20 70 61 72  \where.c \.  par
4940: 73 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  se.c \.  $(TOP)\ 4950: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 ext\fts3\fts3.c 4960: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
4970: 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 5c  ts3\fts3_aux.c \
4980: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 4990: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 5c s3\fts3_expr.c \ 49a0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
49b0: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
49c0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.c \.  $(TOP)\e 49d0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 xt\fts3\fts3_uni 49e0: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 code.c \.$(TOP
49f0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
4a00: 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24  unicode2.c \.  $4a10: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 4a20: 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 20 ts3_write.c \. 4a30: 24 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63$(TOP)\ext\async
4a40: 5c 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 20  \sqlite3async.c
4a50: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73  \.  $(TOP)\ext\s 4a60: 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 ession\sqlite3se 4a70: 73 73 69 6f 6e 2e 63 0a 0a 23 20 53 6f 75 72 63 ssion.c..# Sourc 4a80: 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6c 69 e code to the li 4a90: 62 72 61 72 79 20 66 69 6c 65 73 20 6e 65 65 64 brary files need 4aa0: 65 64 20 62 79 20 74 68 65 20 74 65 73 74 20 66 ed by the test f 4ab0: 69 78 74 75 72 65 0a 23 20 28 61 6d 61 6c 67 61 ixture.# (amalga 4ac0: 6d 61 74 69 6f 6e 29 0a 23 0a 54 45 53 54 53 52 mation).#.TESTSR 4ad0: 43 33 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c C3 = \.$(TOP)\
4ae0: 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69  ext\session\sqli
4af0: 74 65 33 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20  te3session.c..#
4b00: 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65  Header files use
4b10: 64 20 62 79 20 61 6c 6c 20 6c 69 62 72 61 72 79  d by all library
4b20: 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 0a 23   source files..#
4b30: 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24 28 54 4f  .HDR = \.   $(TO 4b40: 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 20 5c P)\src\btree.h \ 4b50: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 .$(TOP)\src\b
4b60: 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24  treeInt.h \.   $4b70: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 (TOP)\src\hash.h 4b80: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
4b90: 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 20 6b  \hwtime.h \.   k
4ba0: 65 79 77 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20  eywordhash.h \.
4bb0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74    $(TOP)\src\mut 4bc0: 65 78 2e 68 20 5c 0a 20 20 20 6f 70 63 6f 64 65 ex.h \. opcode 4bd0: 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c s.h \.$(TOP)\
4be0: 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 20 24 28  src\os.h \.   $( 4bf0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d 6d TOP)\src\os_comm 4c00: 6f 6e 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 on.h \.$(TOP)
4c10: 5c 73 72 63 5c 70 61 67 65 72 2e 68 20 5c 0a 20  \src\pager.h \.
4c20: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61    $(TOP)\src\pca 4c30: 63 68 65 2e 68 20 5c 0a 20 20 20 70 61 72 73 65 che.h \. parse 4c40: 2e 68 20 5c 0a 20 20 20 73 71 6c 69 74 65 33 2e .h \. sqlite3. 4c50: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 h \.$(TOP)\sr
4c60: 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c  c\sqlite3ext.h \
4c70: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73  .   $(TOP)\src\s 4c80: 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a 20 20 20 qliteInt.h \. 4c90: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74$(TOP)\src\sqlit
4ca0: 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20 20 24 28  eLimit.h \.   $( 4cb0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 68 20 TOP)\src\vdbe.h 4cc0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
4cd0: 76 64 62 65 49 6e 74 2e 68 0a 0a 23 20 48 65 61  vdbeInt.h..# Hea
4ce0: 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20 62  der files used b
4cf0: 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45  y extensions.#.E
4d00: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR 4d10: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 ) \.$(TOP)\ext
4d20: 5c 66 74 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20  \fts1\fts1.h \.
4d30: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31   $(TOP)\ext\fts1 4d40: 5c 66 74 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 \fts1_hash.h \. 4d50: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31$(TOP)\ext\fts1
4d60: 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts1_tokenizer.
4d70: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT 4d80: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c HDR) \.$(TOP)\
4d90: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 68 20  ext\fts2\fts2.h
4da0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 4db0: 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 ts2\fts2_hash.h 4dc0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
4dd0: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  ts2\fts2_tokeniz
4de0: 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28  er.h.EXTHDR = $( 4df0: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f EXTHDR) \.$(TO
4e00: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
4e10: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 4e20: 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 t\fts3\fts3Int.h 4e30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
4e40: 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 68  fts3\fts3_hash.h
4e50: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 4e60: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni 4e70: 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 zer.h.EXTHDR =$
4e80: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54  (EXTHDR) \.  $(T 4e90: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 OP)\ext\rtree\rt 4ea0: 72 65 65 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 ree.h.EXTHDR =$
4eb0: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54  (EXTHDR) \.  $(T 4ec0: 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 OP)\ext\icu\sqli 4ed0: 74 65 69 63 75 2e 68 0a 45 58 54 48 44 52 20 3d teicu.h.EXTHDR = 4ee0: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24$(EXTHDR) \.  $4ef0: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c (TOP)\ext\rtree\ 4f00: 73 71 6c 69 74 65 33 72 74 72 65 65 2e 68 0a 45 sqlite3rtree.h.E 4f10: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52 XTHDR =$(EXTHDR
4f20: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  ) \.  $(TOP)\ext 4f30: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 \session\sqlite3 4f40: 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 54 68 69 session.h..# Thi 4f50: 73 20 69 73 20 74 68 65 20 64 65 66 61 75 6c 74 s is the default 4f60: 20 4d 61 6b 65 66 69 6c 65 20 74 61 72 67 65 74 Makefile target 4f70: 2e 20 20 54 68 65 20 6f 62 6a 65 63 74 73 20 6c . The objects l 4f80: 69 73 74 65 64 20 68 65 72 65 0a 23 20 61 72 65 isted here.# are 4f90: 20 77 68 61 74 20 67 65 74 20 62 75 69 6c 64 20 what get build 4fa0: 77 68 65 6e 20 79 6f 75 20 74 79 70 65 20 6a 75 when you type ju 4fb0: 73 74 20 22 6d 61 6b 65 22 20 77 69 74 68 20 6e st "make" with n 4fc0: 6f 20 61 72 67 75 6d 65 6e 74 73 2e 0a 23 0a 61 o arguments..#.a 4fd0: 6c 6c 3a 09 64 6c 6c 20 6c 69 62 73 71 6c 69 74 ll:.dll libsqlit 4fe0: 65 33 2e 6c 69 62 20 73 71 6c 69 74 65 33 2e 65 e3.lib sqlite3.e 4ff0: 78 65 20 6c 69 62 74 63 6c 73 71 6c 69 74 65 33 xe libtclsqlite3 5000: 2e 6c 69 62 0a 0a 6c 69 62 73 71 6c 69 74 65 33 .lib..libsqlite3 5010: 2e 6c 69 62 3a 09 24 28 4c 49 42 4f 42 4a 29 0a .lib:.$(LIBOBJ).
5020: 09 24 28 4c 54 4c 49 42 29 20 24 28 4c 54 4c 49  .$(LTLIB)$(LTLI
5030: 42 4f 50 54 53 29 20 2f 4f 55 54 3a 24 40 20 24  BOPTS) /OUT:$@$
5040: 28 4c 49 42 4f 42 4a 29 20 24 28 54 4c 49 42 53  (LIBOBJ) $(TLIBS 5050: 29 0a 0a 6c 69 62 74 63 6c 73 71 6c 69 74 65 33 )..libtclsqlite3 5060: 2e 6c 69 62 3a 09 74 63 6c 73 71 6c 69 74 65 2e .lib:.tclsqlite. 5070: 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 lo libsqlite3.li 5080: 62 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c 54 b..$(LTLIB) $(LT 5090: 4c 49 42 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 LIBOPTS)$(LTLIB
50a0: 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 20 74  PATHS) /OUT:$@ t 50b0: 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 clsqlite.lo libs 50c0: 71 6c 69 74 65 33 2e 6c 69 62 20 24 28 4c 49 42 qlite3.lib$(LIB
50d0: 54 43 4c 3a 74 63 6c 3d 74 63 6c 73 74 75 62 29  TCL:tcl=tclstub)
50e0: 20 24 28 54 4c 49 42 53 29 0a 0a 73 71 6c 69 74   $(TLIBS)..sqlit 50f0: 65 33 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 73 e3.exe:.$(TOP)\s
5100: 72 63 5c 73 68 65 6c 6c 2e 63 20 6c 69 62 73 71  rc\shell.c libsq
5110: 6c 69 74 65 33 2e 6c 69 62 20 73 71 6c 69 74 65  lite3.lib sqlite
5120: 33 2e 68 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3.h..$(LTLINK)$
5130: 28 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 29  (READLINE_FLAGS)
5140: 20 5c 0a 09 09 24 28 54 4f 50 29 5c 73 72 63 5c   \...$(TOP)\src\ 5150: 73 68 65 6c 6c 2e 63 20 5c 0a 09 09 2f 6c 69 6e shell.c \.../lin 5160: 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 k$(LTLINKOPTS)
5170: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 6c 69  $(LTLIBPATHS) li 5180: 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 24 28 4c bsqlite3.lib$(L
5190: 49 42 52 45 41 44 4c 49 4e 45 29 20 24 28 4c 54  IBREADLINE) $(LT 51a0: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a LIBS)$(TLIBS)..
51b0: 23 20 54 68 69 73 20 74 61 72 67 65 74 20 63 72  # This target cr
51c0: 65 61 74 65 73 20 61 20 64 69 72 65 63 74 6f 72  eates a director
51d0: 79 20 6e 61 6d 65 64 20 22 74 73 72 63 22 20 61  y named "tsrc" a
51e0: 6e 64 20 66 69 6c 6c 73 20 69 74 20 77 69 74 68  nd fills it with
51f0: 0a 23 20 63 6f 70 69 65 73 20 6f 66 20 61 6c 6c  .# copies of all
5200: 20 6f 66 20 74 68 65 20 43 20 73 6f 75 72 63 65   of the C source
5210: 20 63 6f 64 65 20 61 6e 64 20 68 65 61 64 65 72   code and header
5220: 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 74 6f   files needed to
5230: 0a 23 20 62 75 69 6c 64 20 6f 6e 20 74 68 65 20  .# build on the
5240: 74 61 72 67 65 74 20 73 79 73 74 65 6d 2e 20 20  target system.
5250: 53 6f 6d 65 20 6f 66 20 74 68 65 20 43 20 73 6f  Some of the C so
5260: 75 72 63 65 20 63 6f 64 65 20 61 6e 64 20 68 65  urce code and he
5270: 61 64 65 72 0a 23 20 66 69 6c 65 73 20 61 72 65  ader.# files are
5280: 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67   automatically g
5290: 65 6e 65 72 61 74 65 64 2e 20 20 54 68 69 73 20  enerated.  This
52a0: 74 61 72 67 65 74 20 74 61 6b 65 73 20 63 61 72  target takes car
52b0: 65 20 6f 66 0a 23 20 61 6c 6c 20 74 68 61 74 20  e of.# all that
52c0: 61 75 74 6f 6d 61 74 69 63 20 67 65 6e 65 72 61  automatic genera
52d0: 74 69 6f 6e 2e 0a 23 0a 2e 74 61 72 67 65 74 5f  tion..#..target_
52e0: 73 6f 75 72 63 65 3a 09 24 28 53 52 43 29 20 24  source:.$(SRC)$
52f0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d  (TOP)\tool\vdbe-
5300: 63 6f 6d 70 72 65 73 73 2e 74 63 6c 0a 09 2d 72  compress.tcl..-r
5310: 6d 64 69 72 20 2f 53 2f 51 20 74 73 72 63 0a 09  mdir /S/Q tsrc..
5320: 2d 6d 6b 64 69 72 20 74 73 72 63 0a 09 66 6f 72  -mkdir tsrc..for
5330: 20 25 69 20 69 6e 20 28 24 28 53 52 43 29 29 20   %i in ($(SRC)) 5340: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts 5350: 72 63 0a 09 64 65 6c 20 2f 51 20 74 73 72 63 5c rc..del /Q tsrc\ 5360: 73 71 6c 69 74 65 2e 68 2e 69 6e 20 74 73 72 63 sqlite.h.in tsrc 5370: 5c 70 61 72 73 65 2e 79 0a 09 24 28 54 43 4c 53 \parse.y..$(TCLS
5380: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f  H_CMD) $(TOP)\to 5390: 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 ol\vdbe-compress 53a0: 2e 74 63 6c 20 3c 20 74 73 72 63 5c 76 64 62 65 .tcl < tsrc\vdbe 53b0: 2e 63 20 3e 20 76 64 62 65 2e 6e 65 77 0a 09 6d .c > vdbe.new..m 53c0: 6f 76 65 20 76 64 62 65 2e 6e 65 77 20 74 73 72 ove vdbe.new tsr 53d0: 63 5c 76 64 62 65 2e 63 0a 09 65 63 68 6f 20 3e c\vdbe.c..echo > 53e0: 20 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a .target_source. 53f0: 0a 73 71 6c 69 74 65 33 2e 63 3a 09 2e 74 61 72 .sqlite3.c:..tar 5400: 67 65 74 5f 73 6f 75 72 63 65 20 24 28 54 4f 50 get_source$(TOP
5410: 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33  )\tool\mksqlite3
5420: 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43  c.tcl..$(TCLSH_C 5430: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
5440: 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 0a  mksqlite3c.tcl..
5450: 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 3a 09 73  sqlite3-all.c:.s
5460: 71 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 2f  qlite3.c $(TOP)/ 5470: 74 6f 6f 6c 2f 73 70 6c 69 74 2d 73 71 6c 69 74 tool/split-sqlit 5480: 65 33 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 e3c.tcl..$(TCLSH
5490: 5f 43 4d 44 29 20 24 28 54 4f 50 29 2f 74 6f 6f  _CMD) $(TOP)/too 54a0: 6c 2f 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 l/split-sqlite3c 54b0: 2e 74 63 6c 0a 0a 23 20 52 75 6c 65 20 74 6f 20 .tcl..# Rule to 54c0: 62 75 69 6c 64 20 74 68 65 20 61 6d 61 6c 67 61 build the amalga 54d0: 6d 61 74 69 6f 6e 0a 23 0a 73 71 6c 69 74 65 33 mation.#.sqlite3 54e0: 2e 6c 6f 3a 09 73 71 6c 69 74 65 33 2e 63 0a 09 .lo:.sqlite3.c.. 54f0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20$(LTCOMPILE) -c
5500: 73 71 6c 69 74 65 33 2e 63 0a 0a 23 20 52 75 6c  sqlite3.c..# Rul
5510: 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20  es to build the
5520: 4c 45 4d 4f 4e 20 63 6f 6d 70 69 6c 65 72 20 67  LEMON compiler g
5530: 65 6e 65 72 61 74 6f 72 0a 23 0a 6c 65 6d 70 61  enerator.#.lempa
5540: 72 2e 63 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  r.c:.$(TOP)\src\ 5550: 6c 65 6d 70 61 72 2e 63 0a 09 63 6f 70 79 20 24 lempar.c..copy$
5560: 28 54 4f 50 29 5c 73 72 63 5c 6c 65 6d 70 61 72  (TOP)\src\lempar
5570: 2e 63 20 2e 0a 0a 6c 65 6d 6f 6e 2e 65 78 65 3a  .c ...lemon.exe:
5580: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d  .$(TOP)\tool\lem 5590: 6f 6e 2e 63 20 6c 65 6d 70 61 72 2e 63 0a 09 24 on.c lempar.c..$
55a0: 28 42 43 43 29 20 2d 44 61 63 63 65 73 73 3d 5f  (BCC) -Daccess=_
55b0: 61 63 63 65 73 73 20 2d 46 65 24 40 20 24 28 54  access -Fe$@$(T
55c0: 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63  OP)\tool\lemon.c
55d0: 20 2f 6c 69 6e 6b 20 24 28 4e 4c 54 4c 49 42 50   /link $(NLTLIBP 55e0: 41 54 48 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 ATHS)..# Rules t 55f0: 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 69 64 75 o build individu 5600: 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 20 66 72 al *.lo files fr 5610: 6f 6d 20 67 65 6e 65 72 61 74 65 64 20 2a 2e 63 om generated *.c 5620: 20 66 69 6c 65 73 2e 20 54 68 69 73 0a 23 20 61 files. This.# a 5630: 70 70 6c 69 65 73 20 74 6f 3a 0a 23 0a 23 20 20 pplies to:.#.# 5640: 20 20 20 70 61 72 73 65 2e 6c 6f 0a 23 20 20 20 parse.lo.# 5650: 20 20 6f 70 63 6f 64 65 73 2e 6c 6f 0a 23 0a 70 opcodes.lo.#.p 5660: 61 72 73 65 2e 6c 6f 3a 09 70 61 72 73 65 2e 63 arse.lo:.parse.c 5670: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 5680: 50 49 4c 45 29 20 2d 63 20 70 61 72 73 65 2e 63 PILE) -c parse.c 5690: 0a 0a 6f 70 63 6f 64 65 73 2e 6c 6f 3a 09 6f 70 ..opcodes.lo:.op 56a0: 63 6f 64 65 73 2e 63 0a 09 24 28 4c 54 43 4f 4d codes.c..$(LTCOM
56b0: 50 49 4c 45 29 20 2d 63 20 6f 70 63 6f 64 65 73  PILE) -c opcodes
56c0: 2e 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62  .c..# Rules to b
56d0: 75 69 6c 64 20 69 6e 64 69 76 69 64 75 61 6c 20  uild individual
56e0: 2a 2e 6c 6f 20 66 69 6c 65 73 20 66 72 6f 6d 20  *.lo files from
56f0: 66 69 6c 65 73 20 69 6e 20 74 68 65 20 73 72 63  files in the src
5700: 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 61 6c   directory..#.al
5710: 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ter.lo:.$(TOP)\s 5720: 72 63 5c 61 6c 74 65 72 2e 63 20 24 28 48 44 52 rc\alter.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 61 6c -c$(TOP)\src\al
5750: 74 65 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6c  ter.c..analyze.l
5760: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e  o:.$(TOP)\src\an 5770: 61 6c 79 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 alyze.c$(HDR)..
5780: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 5790: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79$(TOP)\src\analy
57a0: 7a 65 2e 63 0a 0a 61 74 74 61 63 68 2e 6c 6f 3a  ze.c..attach.lo:
57b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61  .$(TOP)\src\atta 57c0: 63 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ch.c$(HDR)..$(L 57d0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
57e0: 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63  OP)\src\attach.c
57f0: 0a 0a 61 75 74 68 2e 6c 6f 3a 09 24 28 54 4f 50  ..auth.lo:.$(TOP 5800: 29 5c 73 72 63 5c 61 75 74 68 2e 63 20 24 28 48 )\src\auth.c$(H
5810: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 5820: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
5830: 61 75 74 68 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c  auth.c..backup.l
5840: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 61  o:.$(TOP)\src\ba 5850: 63 6b 75 70 2e 63 20 24 28 48 44 52 29 0a 09 24 ckup.c$(HDR)..$5860: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 (LTCOMPILE) -c$
5870: 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70  (TOP)\src\backup
5880: 2e 63 0a 0a 62 69 74 76 65 63 2e 6c 6f 3a 09 24  .c..bitvec.lo:.$5890: 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65 63 (TOP)\src\bitvec 58a0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC 58b0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 OMPILE) -c$(TOP
58c0: 29 5c 73 72 63 5c 62 69 74 76 65 63 2e 63 0a 0a  )\src\bitvec.c..
58d0: 62 74 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f  btmutex.lo:.$(TO 58e0: 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 P)\src\btmutex.c 58f0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 5900: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
5910: 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 0a 0a 62  src\btmutex.c..b
5920: 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  tree.lo:.$(TOP)\ 5930: 73 72 63 5c 62 74 72 65 65 2e 63 20 24 28 48 44 src\btree.c$(HD
5940: 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61  R) $(TOP)\src\pa 5950: 67 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 ger.h..$(LTCOMPI
5960: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 5970: 63 5c 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c 64 c\btree.c..build 5980: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
5990: 62 75 69 6c 64 2e 63 20 24 28 48 44 52 29 0a 09  build.c $(HDR).. 59a0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20$(LTCOMPILE) -c
59b0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64  $(TOP)\src\build 59c0: 2e 63 0a 0a 63 61 6c 6c 62 61 63 6b 2e 6c 6f 3a .c..callback.lo: 59d0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c .$(TOP)\src\call
59e0: 62 61 63 6b 2e 63 20 24 28 48 44 52 29 0a 09 24  back.c $(HDR)..$
59f0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $5a00: 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 (TOP)\src\callba 5a10: 63 6b 2e 63 0a 0a 63 6f 6d 70 6c 65 74 65 2e 6c ck.c..complete.l 5a20: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f o:.$(TOP)\src\co
5a30: 6d 70 6c 65 74 65 2e 63 20 24 28 48 44 52 29 0a  mplete.c $(HDR). 5a40: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 .$(LTCOMPILE) -c
5a50: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70   $(TOP)\src\comp 5a60: 6c 65 74 65 2e 63 0a 0a 63 74 69 6d 65 2e 6c 6f lete.c..ctime.lo 5a70: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 :.$(TOP)\src\cti
5a80: 6d 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  me.c $(HDR)..$(L
5a90: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 5aa0: 4f 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 0a OP)\src\ctime.c. 5ab0: 0a 64 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 .date.lo:.$(TOP)
5ac0: 5c 73 72 63 5c 64 61 74 65 2e 63 20 24 28 48 44  \src\date.c $(HD 5ad0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
5ae0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 64   -c $(TOP)\src\d 5af0: 61 74 65 2e 63 0a 0a 64 65 6c 65 74 65 2e 6c 6f ate.c..delete.lo 5b00: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c :.$(TOP)\src\del
5b10: 65 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ete.c $(HDR)..$(
5b20: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $( 5b30: 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e TOP)\src\delete. 5b40: 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f c..expr.lo:.$(TO
5b50: 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20 24 28  P)\src\expr.c $( 5b60: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
5b70: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src 5b80: 5c 65 78 70 72 2e 63 0a 0a 66 61 75 6c 74 2e 6c \expr.c..fault.l 5b90: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 61 o:.$(TOP)\src\fa
5ba0: 75 6c 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ult.c $(HDR)..$(
5bb0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $( 5bc0: 54 4f 50 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 TOP)\src\fault.c 5bd0: 0a 0a 66 6b 65 79 2e 6c 6f 3a 09 24 28 54 4f 50 ..fkey.lo:.$(TOP
5be0: 29 5c 73 72 63 5c 66 6b 65 79 2e 63 20 24 28 48  )\src\fkey.c $(H 5bf0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
5c00: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 5c10: 66 6b 65 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a fkey.c..func.lo: 5c20: 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 .$(TOP)\src\func
5c30: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5c40: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP 5c50: 29 5c 73 72 63 5c 66 75 6e 63 2e 63 0a 0a 67 6c )\src\func.c..gl 5c60: 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c obal.lo:.$(TOP)\
5c70: 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 24 28 48  src\global.c $(H 5c80: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
5c90: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 5ca0: 67 6c 6f 62 61 6c 2e 63 0a 0a 68 61 73 68 2e 6c global.c..hash.l 5cb0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 o:.$(TOP)\src\ha
5cc0: 73 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  sh.c $(HDR)..$(L
5cd0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 5ce0: 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 0a 0a OP)\src\hash.c.. 5cf0: 69 6e 73 65 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 insert.lo:.$(TOP
5d00: 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 24  )\src\insert.c $5d10: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
5d20: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 5d30: 63 5c 69 6e 73 65 72 74 2e 63 0a 0a 6a 6f 75 72 c\insert.c..jour 5d40: 6e 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 nal.lo:.$(TOP)\s
5d50: 72 63 5c 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 48  rc\journal.c $(H 5d60: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
5d70: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 5d80: 6a 6f 75 72 6e 61 6c 2e 63 0a 0a 6c 65 67 61 63 journal.c..legac 5d90: 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 y.lo:.$(TOP)\src
5da0: 5c 6c 65 67 61 63 79 2e 63 20 24 28 48 44 52 29  \legacy.c $(HDR) 5db0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d ..$(LTCOMPILE) -
5dc0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67  c $(TOP)\src\leg 5dd0: 61 63 79 2e 63 0a 0a 6c 6f 61 64 65 78 74 2e 6c acy.c..loadext.l 5de0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f o:.$(TOP)\src\lo
5df0: 61 64 65 78 74 2e 63 20 24 28 48 44 52 29 0a 09  adext.c $(HDR).. 5e00: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20$(LTCOMPILE) -c
5e10: 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65  $(TOP)\src\loade 5e20: 78 74 2e 63 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 xt.c..main.lo:.$
5e30: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63  (TOP)\src\main.c
5e40: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
5e50: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\ 5e60: 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a 6d 61 6c 6c src\main.c..mall 5e70: 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 oc.lo:.$(TOP)\sr
5e80: 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 28 48 44 52  c\malloc.c $(HDR 5e90: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
5ea0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61  -c $(TOP)\src\ma 5eb0: 6c 6c 6f 63 2e 63 0a 0a 6d 65 6d 30 2e 6c 6f 3a lloc.c..mem0.lo: 5ec0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30 .$(TOP)\src\mem0
5ed0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
5ee0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP 5ef0: 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 )\src\mem0.c..me 5f00: 6d 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 m1.lo:.$(TOP)\sr
5f10: 63 5c 6d 65 6d 31 2e 63 20 24 28 48 44 52 29 0a  c\mem1.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 6d 65 6d 31   $(TOP)\src\mem1 5f40: 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09 24 28 54 .c..mem2.lo:.$(T
5f50: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 24  OP)\src\mem2.c $5f60: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
5f70: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 5f80: 63 5c 6d 65 6d 32 2e 63 0a 0a 6d 65 6d 33 2e 6c c\mem2.c..mem3.l 5f90: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 o:.$(TOP)\src\me
5fa0: 6d 33 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  m3.c $(HDR)..$(L
5fb0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 5fc0: 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 0a 0a OP)\src\mem3.c.. 5fd0: 6d 65 6d 35 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c mem5.lo:.$(TOP)\
5fe0: 73 72 63 5c 6d 65 6d 35 2e 63 20 24 28 48 44 52  src\mem5.c $(HDR 5ff0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
6000: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  -c $(TOP)\src\me 6010: 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 72 6e 61 6c m5.c..memjournal 6020: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
6030: 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 48  memjournal.c $(H 6040: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
6050: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 6060: 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 0a 0a 6d 75 memjournal.c..mu 6070: 74 65 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 tex.lo:.$(TOP)\s
6080: 72 63 5c 6d 75 74 65 78 2e 63 20 24 28 48 44 52  rc\mutex.c $(HDR 6090: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
60a0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75  -c $(TOP)\src\mu 60b0: 74 65 78 2e 63 0a 0a 6d 75 74 65 78 5f 6e 6f 6f tex.c..mutex_noo 60c0: 70 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 p.lo:.$(TOP)\src
60d0: 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 24 28  \mutex_noop.c $( 60e0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
60f0: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  E) -c $(TOP)\src 6100: 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d \mutex_noop.c..m 6110: 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 utex_unix.lo:.$(
6120: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75  TOP)\src\mutex_u
6130: 6e 69 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28  nix.c $(HDR)..$(
6140: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $( 6150: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 TOP)\src\mutex_u 6160: 6e 69 78 2e 63 0a 0a 6d 75 74 65 78 5f 77 33 32 nix.c..mutex_w32 6170: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
6180: 6d 75 74 65 78 5f 77 33 32 2e 63 20 24 28 48 44  mutex_w32.c $(HD 6190: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
61a0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m 61b0: 75 74 65 78 5f 77 33 32 2e 63 0a 0a 6e 6f 74 69 utex_w32.c..noti 61c0: 66 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 fy.lo:.$(TOP)\sr
61d0: 63 5c 6e 6f 74 69 66 79 2e 63 20 24 28 48 44 52  c\notify.c $(HDR 61e0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
61f0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f  -c $(TOP)\src\no 6200: 74 69 66 79 2e 63 0a 0a 70 61 67 65 72 2e 6c 6f tify.c..pager.lo 6210: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 :.$(TOP)\src\pag
6220: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f  er.c $(HDR)$(TO
6230: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09  P)\src\pager.h..
6240: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 6250: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72$(TOP)\src\pager
6260: 2e 63 0a 0a 70 63 61 63 68 65 2e 6c 6f 3a 09 24  .c..pcache.lo:.$6270: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 (TOP)\src\pcache 6280: 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 .c$(HDR) $(TOP) 6290: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 0a 09 24 \src\pcache.h..$
62a0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $62b0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 (TOP)\src\pcache 62c0: 2e 63 0a 0a 70 63 61 63 68 65 31 2e 6c 6f 3a 09 .c..pcache1.lo:. 62d0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68$(TOP)\src\pcach
62e0: 65 31 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f  e1.c $(HDR)$(TO
62f0: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 0a  P)\src\pcache.h.
6300: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c 6310: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63$(TOP)\src\pcac
6320: 68 65 31 2e 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 28  he1.c..os.lo:.$( 6330: 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 24 28 TOP)\src\os.c$(
6340: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL 6350: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 E) -c$(TOP)\src
6360: 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e 69 78 2e 6c  \os.c..os_unix.l
6370: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  o:.$(TOP)\src\os 6380: 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a 09 _unix.c$(HDR)..
6390: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 63a0: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e$(TOP)\src\os_un
63b0: 69 78 2e 63 0a 0a 6f 73 5f 77 69 6e 2e 6c 6f 3a  ix.c..os_win.lo:
63c0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77  .$(TOP)\src\os_w 63d0: 69 6e 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c in.c$(HDR)..$(L 63e0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
63f0: 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63  OP)\src\os_win.c
6400: 0a 0a 70 72 61 67 6d 61 2e 6c 6f 3a 09 24 28 54  ..pragma.lo:.$(T 6410: 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 OP)\src\pragma.c 6420: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 6430: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
6440: 73 72 63 5c 70 72 61 67 6d 61 2e 63 0a 0a 70 72  src\pragma.c..pr
6450: 65 70 61 72 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  epare.lo:.$(TOP) 6460: 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 24 \src\prepare.c$
6470: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 6480: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
6490: 63 5c 70 72 65 70 61 72 65 2e 63 0a 0a 70 72 69  c\prepare.c..pri
64a0: 6e 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ntf.lo:.$(TOP)\s 64b0: 72 63 5c 70 72 69 6e 74 66 2e 63 20 24 28 48 44 rc\printf.c$(HD
64c0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 64d0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 -c$(TOP)\src\p
64e0: 72 69 6e 74 66 2e 63 0a 0a 72 61 6e 64 6f 6d 2e  rintf.c..random.
64f0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72  lo:.$(TOP)\src\r 6500: 61 6e 64 6f 6d 2e 63 20 24 28 48 44 52 29 0a 09 andom.c$(HDR)..
6510: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 6520: 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f$(TOP)\src\rando
6530: 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65 2e 6c 6f 3a  m.c..resolve.lo:
6540: 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f  .$(TOP)\src\reso 6550: 6c 76 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 lve.c$(HDR)..$( 6560: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 LTCOMPILE) -c$(
6570: 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65  TOP)\src\resolve
6580: 2e 63 0a 0a 72 6f 77 73 65 74 2e 6c 6f 3a 09 24  .c..rowset.lo:.$6590: 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 (TOP)\src\rowset 65a0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC 65b0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 OMPILE) -c$(TOP
65c0: 29 5c 73 72 63 5c 72 6f 77 73 65 74 2e 63 0a 0a  )\src\rowset.c..
65d0: 73 65 6c 65 63 74 2e 6c 6f 3a 09 24 28 54 4f 50  select.lo:.$(TOP 65e0: 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 24 )\src\select.c$
65f0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 6600: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
6610: 63 5c 73 65 6c 65 63 74 2e 63 0a 0a 73 74 61 74  c\select.c..stat
6620: 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  us.lo:.$(TOP)\sr 6630: 63 5c 73 74 61 74 75 73 2e 63 20 24 28 48 44 52 c\status.c$(HDR
6640: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 6650: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 -c$(TOP)\src\st
6660: 61 74 75 73 2e 63 0a 0a 74 61 62 6c 65 2e 6c 6f  atus.c..table.lo
6670: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 62  :.$(TOP)\src\tab 6680: 6c 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c le.c$(HDR)..$(L 6690: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
66a0: 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e 63 0a  OP)\src\table.c.
66b0: 0a 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a 09 24 28  .tokenize.lo:.$( 66c0: 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a TOP)\src\tokeniz 66d0: 65 2e 63 20 6b 65 79 77 6f 72 64 68 61 73 68 2e e.c keywordhash. 66e0: 68 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f h$(HDR)..$(LTCO 66f0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 MPILE) -c$(TOP)
6700: 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 0a  \src\tokenize.c.
6710: 0a 74 72 69 67 67 65 72 2e 6c 6f 3a 09 24 28 54  .trigger.lo:.$(T 6720: 4f 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 2e OP)\src\trigger. 6730: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO 6740: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 MPILE) -c$(TOP)
6750: 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 0a 0a  \src\trigger.c..
6760: 75 70 64 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50  update.lo:.$(TOP 6770: 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 20 24 )\src\update.c$
6780: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 6790: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
67a0: 63 5c 75 70 64 61 74 65 2e 63 0a 0a 75 74 66 2e  c\update.c..utf.
67b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75  lo:.$(TOP)\src\u 67c0: 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c tf.c$(HDR)..$(L 67d0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
67e0: 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 0a 0a 75  OP)\src\utf.c..u
67f0: 74 69 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  til.lo:.$(TOP)\s 6800: 72 63 5c 75 74 69 6c 2e 63 20 24 28 48 44 52 29 rc\util.c$(HDR)
6810: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) - 6820: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 c$(TOP)\src\uti
6830: 6c 2e 63 0a 0a 76 61 63 75 75 6d 2e 6c 6f 3a 09  l.c..vacuum.lo:.
6840: 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75  $(TOP)\src\vacuu 6850: 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 m.c$(HDR)..$(LT 6860: 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f COMPILE) -c$(TO
6870: 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 0a  P)\src\vacuum.c.
6880: 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  .vdbe.lo:.$(TOP) 6890: 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 48 44 \src\vdbe.c$(HD
68a0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 68b0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 -c$(TOP)\src\v
68c0: 64 62 65 2e 63 0a 0a 76 64 62 65 61 70 69 2e 6c  dbe.c..vdbeapi.l
68d0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  o:.$(TOP)\src\vd 68e0: 62 65 61 70 69 2e 63 20 24 28 48 44 52 29 0a 09 beapi.c$(HDR)..
68f0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 6900: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61$(TOP)\src\vdbea
6910: 70 69 2e 63 0a 0a 76 64 62 65 61 75 78 2e 6c 6f  pi.c..vdbeaux.lo
6920: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  :.$(TOP)\src\vdb 6930: 65 61 75 78 2e 63 20 24 28 48 44 52 29 0a 09 24 eaux.c$(HDR)..$6940: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 (LTCOMPILE) -c$
6950: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75  (TOP)\src\vdbeau
6960: 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 2e 6c 6f  x.c..vdbeblob.lo
6970: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  :.$(TOP)\src\vdb 6980: 65 62 6c 6f 62 2e 63 20 24 28 48 44 52 29 0a 09 eblob.c$(HDR)..
6990: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 69a0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 62$(TOP)\src\vdbeb
69b0: 6c 6f 62 2e 63 0a 0a 76 64 62 65 6d 65 6d 2e 6c  lob.c..vdbemem.l
69c0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  o:.$(TOP)\src\vd 69d0: 62 65 6d 65 6d 2e 63 20 24 28 48 44 52 29 0a 09 bemem.c$(HDR)..
69e0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 69f0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d$(TOP)\src\vdbem
6a00: 65 6d 2e 63 0a 0a 76 64 62 65 73 6f 72 74 2e 6c  em.c..vdbesort.l
6a10: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  o:.$(TOP)\src\vd 6a20: 62 65 73 6f 72 74 2e 63 20 24 28 48 44 52 29 0a besort.c$(HDR).
6a30: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c 6a40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65$(TOP)\src\vdbe
6a50: 73 6f 72 74 2e 63 0a 0a 76 64 62 65 74 72 61 63  sort.c..vdbetrac
6a60: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src 6a70: 5c 76 64 62 65 74 72 61 63 65 2e 63 20 24 28 48 \vdbetrace.c$(H
6a80: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 6a90: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
6aa0: 76 64 62 65 74 72 61 63 65 2e 63 0a 0a 76 74 61  vdbetrace.c..vta
6ab0: 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  b.lo:.$(TOP)\src 6ac0: 5c 76 74 61 62 2e 63 20 24 28 48 44 52 29 0a 09 \vtab.c$(HDR)..
6ad0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20  $(LTCOMPILE) -c 6ae0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e$(TOP)\src\vtab.
6af0: 63 0a 0a 77 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50  c..wal.lo:.$(TOP 6b00: 29 5c 73 72 63 5c 77 61 6c 2e 63 20 24 28 48 44 )\src\wal.c$(HD
6b10: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 6b20: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 -c$(TOP)\src\w
6b30: 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f 3a  al.c..walker.lo:
6b40: 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b  .$(TOP)\src\walk 6b50: 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c er.c$(HDR)..$(L 6b60: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
6b70: 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63  OP)\src\walker.c
6b80: 0a 0a 77 68 65 72 65 2e 6c 6f 3a 09 24 28 54 4f  ..where.lo:.$(TO 6b90: 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63 20 24 P)\src\where.c$
6ba0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 6bb0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
6bc0: 63 5c 77 68 65 72 65 2e 63 0a 0a 74 63 6c 73 71  c\where.c..tclsq
6bd0: 6c 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  lite.lo:.$(TOP)\ 6be0: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c 6bf0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP 6c00: 49 4c 45 29 20 2d 44 55 53 45 5f 54 43 4c 5f 53 ILE) -DUSE_TCL_S 6c10: 54 55 42 53 3d 31 20 2d 44 42 55 49 4c 44 5f 73 TUBS=1 -DBUILD_s 6c20: 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 qlite -I$(TCLINC
6c30: 44 49 52 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  DIR) -c $(TOP)\s 6c40: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 0a 0a rc\tclsqlite.c.. 6c50: 74 63 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e tclsqlite-shell. 6c60: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 lo:.$(TOP)\src\t
6c70: 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44 52  clsqlite.c $(HDR 6c80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
6c90: 2d 44 54 43 4c 53 48 3d 31 20 2d 44 42 55 49 4c  -DTCLSH=1 -DBUIL
6ca0: 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 4c  D_sqlite -I$(TCL 6cb0: 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 4f 50 INCDIR) -c$(TOP
6cc0: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
6cd0: 63 0a 0a 74 63 6c 73 71 6c 69 74 65 33 2e 65 78  c..tclsqlite3.ex
6ce0: 65 3a 09 74 63 6c 73 71 6c 69 74 65 2d 73 68 65  e:.tclsqlite-she
6cf0: 6c 6c 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33  ll.lo libsqlite3
6d00: 2e 6c 69 62 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  .lib..$(LTLINK) 6d10: 74 63 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e tclsqlite-shell. 6d20: 6c 6f 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c lo \.../link$(L
6d30: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL 6d40: 49 42 50 41 54 48 53 29 20 6c 69 62 73 71 6c 69 IBPATHS) libsqli 6d50: 74 65 33 2e 6c 69 62 20 24 28 4c 54 4c 49 42 53 te3.lib$(LTLIBS
6d60: 29 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 52 75  ) $(TLIBS)..# Ru 6d70: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 6f 70 63 les to build opc 6d80: 6f 64 65 73 2e 63 20 61 6e 64 20 6f 70 63 6f 64 odes.c and opcod 6d90: 65 73 2e 68 0a 23 0a 6f 70 63 6f 64 65 73 2e 63 es.h.#.opcodes.c 6da0: 3a 09 6f 70 63 6f 64 65 73 2e 68 20 24 28 54 4f :.opcodes.h$(TO
6db0: 50 29 5c 6d 6b 6f 70 63 6f 64 65 63 2e 61 77 6b  P)\mkopcodec.awk
6dc0: 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20 24 28 54  ..$(NAWK) -f$(T
6dd0: 4f 50 29 5c 6d 6b 6f 70 63 6f 64 65 63 2e 61 77  OP)\mkopcodec.aw
6de0: 6b 20 6f 70 63 6f 64 65 73 2e 68 20 3e 20 6f 70  k opcodes.h > op
6df0: 63 6f 64 65 73 2e 63 0a 0a 6f 70 63 6f 64 65 73  codes.c..opcodes
6e00: 2e 68 3a 09 70 61 72 73 65 2e 68 20 24 28 54 4f  .h:.parse.h $(TO 6e10: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 P)\src\vdbe.c$(
6e20: 54 4f 50 29 5c 6d 6b 6f 70 63 6f 64 65 68 2e 61  TOP)\mkopcodeh.a
6e30: 77 6b 0a 09 74 79 70 65 20 70 61 72 73 65 2e 68  wk..type parse.h
6e40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe 6e50: 2e 63 20 7c 20 24 28 4e 41 57 4b 29 20 2d 66 20 .c |$(NAWK) -f
6e60: 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 6f 64 65 68  $(TOP)\mkopcodeh 6e70: 2e 61 77 6b 20 3e 20 6f 70 63 6f 64 65 73 2e 68 .awk > opcodes.h 6e80: 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 ..# Rules to bui 6e90: 6c 64 20 70 61 72 73 65 2e 63 20 61 6e 64 20 70 ld parse.c and p 6ea0: 61 72 73 65 2e 68 20 2d 20 74 68 65 20 6f 75 74 arse.h - the out 6eb0: 70 75 74 73 20 6f 66 20 6c 65 6d 6f 6e 2e 0a 23 puts of lemon..# 6ec0: 0a 70 61 72 73 65 2e 68 3a 09 70 61 72 73 65 2e .parse.h:.parse. 6ed0: 63 0a 0a 70 61 72 73 65 2e 63 3a 09 24 28 54 4f c..parse.c:.$(TO
6ee0: 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 6c  P)\src\parse.y l
6ef0: 65 6d 6f 6e 2e 65 78 65 20 24 28 54 4f 50 29 5c  emon.exe $(TOP)\ 6f00: 61 64 64 6f 70 63 6f 64 65 73 2e 61 77 6b 0a 09 addopcodes.awk.. 6f10: 64 65 6c 20 2f 51 20 70 61 72 73 65 2e 79 20 70 del /Q parse.y p 6f20: 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74 arse.h parse.h.t 6f30: 65 6d 70 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 emp..copy$(TOP)
6f40: 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 2e 0a 09  \src\parse.y ...
6f50: 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 4f 50  .\lemon.exe $(OP 6f60: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 T_FEATURE_FLAGS) 6f70: 20 24 28 4f 50 54 53 29 20 70 61 72 73 65 2e 79$(OPTS) parse.y
6f80: 0a 09 6d 6f 76 65 20 70 61 72 73 65 2e 68 20 70  ..move parse.h p
6f90: 61 72 73 65 2e 68 2e 74 65 6d 70 0a 09 24 28 4e  arse.h.temp..$(N 6fa0: 41 57 4b 29 20 2d 66 20 24 28 54 4f 50 29 5c 61 AWK) -f$(TOP)\a
6fb0: 64 64 6f 70 63 6f 64 65 73 2e 61 77 6b 20 70 61  ddopcodes.awk pa
6fc0: 72 73 65 2e 68 2e 74 65 6d 70 20 3e 20 70 61 72  rse.h.temp > par
6fd0: 73 65 2e 68 0a 0a 73 71 6c 69 74 65 33 2e 68 3a  se.h..sqlite3.h:
6fe0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69  .$(TOP)\src\sqli 6ff0: 74 65 2e 68 2e 69 6e 20 24 28 54 4f 50 29 5c 6d te.h.in$(TOP)\m
7000: 61 6e 69 66 65 73 74 2e 75 75 69 64 20 24 28 54  anifest.uuid $(T 7010: 4f 50 29 5c 56 45 52 53 49 4f 4e 0a 09 24 28 54 OP)\VERSION..$(T
7020: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) 7030: 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 68 \tool\mksqlite3h 7040: 2e 74 63 6c 20 24 28 54 4f 50 29 20 3e 20 73 71 .tcl$(TOP) > sq
7050: 6c 69 74 65 33 2e 68 0a 0a 6d 6b 6b 65 79 77 6f  lite3.h..mkkeywo
7060: 72 64 68 61 73 68 2e 65 78 65 3a 09 24 28 54 4f  rdhash.exe:.$(TO 7070: 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 P)\tool\mkkeywor 7080: 64 68 61 73 68 2e 63 0a 09 24 28 42 43 43 29 20 dhash.c..$(BCC)
7090: 2d 46 65 24 40 20 24 28 4f 50 54 5f 46 45 41 54  -Fe$@$(OPT_FEAT
70a0: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT 70b0: 53 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d S)$(TOP)\tool\m
70c0: 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20 2f  kkeywordhash.c /
70d0: 6c 69 6e 6b 20 24 28 4e 4c 54 4c 49 42 50 41 54  link $(NLTLIBPAT 70e0: 48 53 29 0a 0a 6b 65 79 77 6f 72 64 68 61 73 68 HS)..keywordhash 70f0: 2e 68 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c .h:.$(TOP)\tool\
7100: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20  mkkeywordhash.c
7110: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78  mkkeywordhash.ex
7120: 65 0a 09 2e 5c 6d 6b 6b 65 79 77 6f 72 64 68 61  e...\mkkeywordha
7130: 73 68 2e 65 78 65 20 3e 20 6b 65 79 77 6f 72 64  sh.exe > keyword
7140: 68 61 73 68 2e 68 0a 0a 0a 0a 23 20 52 75 6c 65  hash.h....# Rule
7150: 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 65  s to build the e
7160: 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65 63 74 73  xtension objects
7170: 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24 28 54 4f  ..#.icu.lo:.$(TO 7180: 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 P)\ext\icu\icu.c 7190: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR 71a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
71b0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
71c0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c   $(TOP)\ext\icu\ 71d0: 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c 6f 3a 09 icu.c..fts2.lo:. 71e0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
71f0: 66 74 73 32 2e 63 20 24 28 48 44 52 29 20 24 28  fts2.c $(HDR)$(
7200: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM 7210: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 PILE) -DSQLITE_C 7220: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
7230: 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 0a 0a 66  t\fts2\fts2.c..f
7240: 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54  ts2_hash.lo:.$(T 7250: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts 7260: 32 5f 68 61 73 68 2e 63 20 24 28 48 44 52 29 20 2_hash.c$(HDR)
7270: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
7280: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45  OMPILE) -DSQLITE
7290: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\ 72a0: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 ext\fts2\fts2_ha 72b0: 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63 75 2e 6c sh.c..fts2_icu.l 72c0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
72d0: 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 20 24 28  s2\fts2_icu.c $( 72e0: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
72f0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53  $(LTCOMPILE) -DS 7300: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
7310: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
7320: 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73 32 5f 70  s2_icu.c..fts2_p
7330: 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  orter.lo:.$(TOP) 7340: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 \ext\fts2\fts2_p 7350: 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29 20 24 orter.c$(HDR) $7360: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
7370: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
7380: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e 7390: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 xt\fts2\fts2_por 73a0: 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 ter.c..fts2_toke 73b0: 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 nizer.lo:.$(TOP)
73c0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
73d0: 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 44 52  okenizer.c $(HDR 73e0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L 73f0: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 TCOMPILE) -DSQLI 7400: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
7410: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
7420: 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73  tokenizer.c..fts
7430: 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a  2_tokenizer1.lo:
7440: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32  .$(TOP)\ext\fts2 7450: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 \fts2_tokenizer1 7460: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH 7470: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
7480: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE
7490: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft 74a0: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 s2\fts2_tokenize 74b0: 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f 3a 09 24 r1.c..fts3.lo:.$
74c0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
74d0: 74 73 33 2e 63 20 24 28 48 44 52 29 20 24 28 45  ts3.c $(HDR)$(E
74e0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP 74f0: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ILE) -DSQLITE_CO 7500: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
7510: 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a 0a 66 74  \fts3\fts3.c..ft
7520: 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50  s3_aux.lo:.$(TOP 7530: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 7540: 61 75 78 2e 63 20 24 28 48 44 52 29 20 24 28 45 aux.c$(HDR) $(E 7550: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
7560: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ILE) -DSQLITE_CO
7570: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext 7580: 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 \fts3\fts3_aux.c 7590: 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c 6f 3a 09 ..fts3_expr.lo:. 75a0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
75b0: 66 74 73 33 5f 65 78 70 72 2e 63 20 24 28 48 44  fts3_expr.c $(HD 75c0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( 75d0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c LTCOMPILE) -DSQL 75e0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
75f0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
7600: 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33 5f 68 61  _expr.c..fts3_ha
7610: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  sh.lo:.$(TOP)\ex 7620: 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 t\fts3\fts3_hash 7630: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH 7640: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
7650: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE
7660: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft 7670: 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 0a 0a s3\fts3_hash.c.. 7680: 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 fts3_icu.lo:.$(T
7690: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
76a0: 33 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20 24  3_icu.c $(HDR)$
76b0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO 76c0: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f MPILE) -DSQLITE_ 76d0: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
76e0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75  xt\fts3\fts3_icu
76f0: 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70 70 65 74  .c..fts3_snippet
7700: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ 7710: 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 fts3\fts3_snippe 7720: 74 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 t.c$(HDR) $(EXT 7730: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
7740: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  E) -DSQLITE_CORE
7750: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f 7760: 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 ts3\fts3_snippet 7770: 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74 65 72 2e .c..fts3_porter. 7780: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
7790: 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e  ts3\fts3_porter.
77a0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
77b0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 77c0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - 77d0: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 c$(TOP)\ext\fts
77e0: 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 0a  3\fts3_porter.c.
77f0: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e  .fts3_tokenizer.
7800: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f 7810: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a ts3\fts3_tokeniz 7820: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 er.c$(HDR) $(EX 7830: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
7840: 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  LE) -DSQLITE_COR
7850: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ 7860: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni 7870: 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 zer.c..fts3_toke 7880: 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 nizer1.lo:.$(TOP
7890: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
78a0: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48  tokenizer1.c $(H 78b0: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 DR)$(EXTHDR)..$78c0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 (LTCOMPILE) -DSQ 78d0: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 LITE_CORE -c$(T
78e0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
78f0: 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a  3_tokenizer1.c..
7900: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c 6f 3a  fts3_unicode.lo:
7910: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3 7920: 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20 \fts3_unicode.c 7930: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) 7940: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d ..$(LTCOMPILE) -
7950: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
7960: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 7970: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 0a 0a fts3_unicode.c.. 7980: 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 6c 6f fts3_unicode2.lo 7990: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
79a0: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e  3\fts3_unicode2.
79b0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
79c0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 79d0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - 79e0: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 c$(TOP)\ext\fts
79f0: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e  3\fts3_unicode2.
7a00: 63 0a 0a 66 74 73 33 5f 77 72 69 74 65 2e 6c 6f  c..fts3_write.lo
7a10: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts 7a20: 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 20 24 3\fts3_write.c$
7a30: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). 7a40: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 .$(LTCOMPILE) -D
7a50: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $7a60: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 7a70: 74 73 33 5f 77 72 69 74 65 2e 63 0a 0a 72 74 72 ts3_write.c..rtr 7a80: 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 ee.lo:.$(TOP)\ex
7a90: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 20  t\rtree\rtree.c
7aa0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
7ab0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) - 7ac0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c 7ad0: 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65$(TOP)\ext\rtree
7ae0: 5c 72 74 72 65 65 2e 63 0a 0a 0a 23 20 52 75 6c  \rtree.c...# Rul
7af0: 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20  es to build the
7b00: 27 74 65 73 74 66 69 78 74 75 72 65 27 20 61 70  'testfixture' ap
7b10: 70 6c 69 63 61 74 69 6f 6e 2e 0a 23 0a 23 20 49  plication..#.# I
7b20: 66 20 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c  f using the amal
7b30: 67 61 6d 61 74 69 6f 6e 2c 20 75 73 65 20 73 71  gamation, use sq
7b40: 6c 69 74 65 33 2e 63 20 64 69 72 65 63 74 6c 79  lite3.c directly
7b50: 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 74 65   to build the te
7b60: 73 74 0a 23 20 66 69 78 74 75 72 65 2e 20 20 4f  st.# fixture.  O
7b70: 74 68 65 72 77 69 73 65 20 6c 69 6e 6b 20 61 67  therwise link ag
7b80: 61 69 6e 73 74 20 6c 69 62 73 71 6c 69 74 65 33  ainst libsqlite3
7b90: 2e 6c 69 62 2e 20 20 28 54 68 69 73 20 64 69 73  .lib.  (This dis
7ba0: 74 69 6e 63 74 69 6f 6e 20 69 73 0a 23 20 6e 65  tinction is.# ne
7bb0: 63 65 73 73 61 72 79 20 62 65 63 61 75 73 65 20  cessary because
7bc0: 74 68 65 20 74 65 73 74 20 66 69 78 74 75 72 65  the test fixture
7bd0: 20 72 65 71 75 69 72 65 73 20 6e 6f 6e 2d 41 50   requires non-AP
7be0: 49 20 73 79 6d 62 6f 6c 73 20 77 68 69 63 68 20  I symbols which
7bf0: 61 72 65 0a 23 20 68 69 64 64 65 6e 20 77 68 65  are.# hidden whe
7c00: 6e 20 74 68 65 20 6c 69 62 72 61 72 79 20 69 73  n the library is
7c10: 20 62 75 69 6c 74 20 76 69 61 20 74 68 65 20 61   built via the a
7c20: 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a 23 0a  malgamation)..#.
7c30: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
7c40: 53 20 3d 20 2d 44 54 43 4c 53 48 3d 31 20 2d 44  S = -DTCLSH=1 -D
7c50: 53 51 4c 49 54 45 5f 54 45 53 54 3d 31 20 2d 44  SQLITE_TEST=1 -D
7c60: 53 51 4c 49 54 45 5f 43 52 41 53 48 5f 54 45 53  SQLITE_CRASH_TES
7c70: 54 3d 31 0a 54 45 53 54 46 49 58 54 55 52 45 5f  T=1.TESTFIXTURE_
7c80: 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 49  FLAGS = $(TESTFI 7c90: 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 XTURE_FLAGS) -DS 7ca0: 51 4c 49 54 45 5f 53 45 52 56 45 52 3d 31 20 2d QLITE_SERVER=1 - 7cb0: 44 53 51 4c 49 54 45 5f 50 52 49 56 41 54 45 3d DSQLITE_PRIVATE= 7cc0: 22 22 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 "" -DSQLITE_CORE 7cd0: 0a 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 ..TESTFIXTURE_SR 7ce0: 43 30 20 3d 20 24 28 54 45 53 54 53 52 43 32 29 C0 =$(TESTSRC2)
7cf0: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a   libsqlite3.lib.
7d00: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 31  TESTFIXTURE_SRC1
7d10: 20 3d 20 24 28 54 45 53 54 53 52 43 33 29 20 73   = $(TESTSRC3) s 7d20: 71 6c 69 74 65 33 2e 63 0a 21 49 46 20 24 28 55 qlite3.c.!IF$(U
7d30: 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29  SE_AMALGAMATION)
7d40: 3d 3d 30 0a 54 45 53 54 46 49 58 54 55 52 45 5f  ==0.TESTFIXTURE_
7d50: 53 52 43 20 3d 20 24 28 54 45 53 54 53 52 43 29  SRC = $(TESTSRC) 7d60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73$(TOP)\src\tcls
7d70: 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54 46 49  qlite.c $(TESTFI 7d80: 58 54 55 52 45 5f 53 52 43 30 29 0a 21 45 4c 53 XTURE_SRC0).!ELS 7d90: 45 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 E.TESTFIXTURE_SR 7da0: 43 20 3d 20 24 28 54 45 53 54 53 52 43 29 20 24 C =$(TESTSRC) $7db0: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c (TOP)\src\tclsql 7dc0: 69 74 65 2e 63 20 24 28 54 45 53 54 46 49 58 54 ite.c$(TESTFIXT
7dd0: 55 52 45 5f 53 52 43 31 29 0a 21 45 4e 44 49 46  URE_SRC1).!ENDIF
7de0: 0a 0a 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  ..testfixture.ex
7df0: 65 3a 09 24 28 54 45 53 54 46 49 58 54 55 52 45  e:.$(TESTFIXTURE 7e00: 5f 53 52 43 29 20 24 28 48 44 52 29 0a 09 24 28 _SRC)$(HDR)..$( 7e10: 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45 LTLINK) -DSQLITE 7e20: 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53 _NO_SYNC=1$(TES
7e30: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20  TFIXTURE_FLAGS)
7e40: 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69  \...-DBUILD_sqli
7e50: 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52  te -I$(TCLINCDIR 7e60: 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54 ) \...$(TESTFIXT
7e70: 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69  URE_SRC) \.../li
7e80: 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  nk $(LTLINKOPTS) 7e90: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24$(LTLIBPATHS) $7ea0: 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 (LTLIBS)$(TLIBS
7eb0: 29 0a 0a 66 75 6c 6c 74 65 73 74 3a 09 74 65 73  )..fulltest:.tes
7ec0: 74 66 69 78 74 75 72 65 2e 65 78 65 20 73 71 6c  tfixture.exe sql
7ed0: 69 74 65 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74  ite3.exe...\test
7ee0: 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f  fixture.exe $(TO 7ef0: 50 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 P)\test\all.test 7f00: 0a 0a 73 6f 61 6b 74 65 73 74 3a 09 74 65 73 74 ..soaktest:.test 7f10: 66 69 78 74 75 72 65 2e 65 78 65 20 73 71 6c 69 fixture.exe sqli 7f20: 74 65 33 2e 65 78 65 0a 09 2e 5c 74 65 73 74 66 te3.exe...\testf 7f30: 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 ixture.exe$(TOP
7f40: 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20  )\test\all.test
7f50: 2d 73 6f 61 6b 3d 31 0a 0a 74 65 73 74 3a 09 74  -soak=1..test:.t
7f60: 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 73  estfixture.exe s
7f70: 71 6c 69 74 65 33 2e 65 78 65 0a 09 2e 5c 74 65  qlite3.exe...\te
7f80: 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 28  stfixture.exe $( 7f90: 54 4f 50 29 5c 74 65 73 74 5c 76 65 72 79 71 75 TOP)\test\veryqu 7fa0: 69 63 6b 2e 74 65 73 74 0a 0a 73 71 6c 69 74 65 ick.test..sqlite 7fb0: 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 3a 20 73 71 3_analyzer.c: sq 7fc0: 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 5c 73 lite3.c$(TOP)\s
7fd0: 72 63 5c 74 65 73 74 5f 73 74 61 74 2e 63 20 24  rc\test_stat.c $7fe0: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c (TOP)\src\tclsql 7ff0: 69 74 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f ite.c$(TOP)\too
8000: 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 0a  l\spaceanal.tcl.
8010: 09 63 6f 70 79 20 73 71 6c 69 74 65 33 2e 63 20  .copy sqlite3.c
8020: 2b 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73  + $(TOP)\src\tes 8030: 74 5f 73 74 61 74 2e 63 20 2b 20 24 28 54 4f 50 t_stat.c +$(TOP
8040: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
8050: 63 20 24 40 0a 09 65 63 68 6f 20 73 74 61 74 69  c $@..echo stati 8060: 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 63 c const char *tc 8070: 6c 73 68 5f 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f lsh_main_loop(vo 8080: 69 64 29 7b 20 3e 3e 20 24 40 0a 09 65 63 68 6f id){ >>$@..echo
8090: 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20 63 68   static const ch
80a0: 61 72 20 2a 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20  ar *zMainloop =
80b0: 3e 3e 20 24 40 0a 09 24 28 4e 41 57 4b 29 20 2d  >> $@..$(NAWK) -
80c0: 66 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f  f $(TOP)\tool\to 80d0: 73 74 72 2e 61 77 6b 20 24 28 54 4f 50 29 5c 74 str.awk$(TOP)\t
80e0: 6f 6f 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63  ool\spaceanal.tc
80f0: 6c 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 3b 20  l >> $@..echo ; 8100: 72 65 74 75 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 return zMainloop 8110: 3b 20 7d 20 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 ; } >>$@..sqlit
8120: 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 3a  e3_analyzer.exe:
8130: 09 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65  .sqlite3_analyze
8140: 72 2e 63 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 2d  r.c..$(LTLINK) - 8150: 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 44 DBUILD_sqlite -D 8160: 54 43 4c 53 48 3d 32 20 2d 49 24 28 54 43 4c 49 TCLSH=2 -I$(TCLI
8170: 4e 43 44 49 52 29 20 73 71 6c 69 74 65 33 5f 61  NCDIR) sqlite3_a
8180: 6e 61 6c 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c  nalyzer.c \.../l
8190: 69 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  ink $(LTLINKOPTS 81a0: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 )$(LTLIBPATHS)
81b0: 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42  $(LTLIBS)$(TLIB
81c0: 53 29 0a 0a 63 6c 65 61 6e 3a 0a 09 64 65 6c 20  S)..clean:..del
81d0: 2f 51 20 2a 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e  /Q *.lo *.ilk *.
81e0: 6c 69 62 20 2a 2e 6f 62 6a 20 2a 2e 70 64 62 20  lib *.obj *.pdb
81f0: 73 71 6c 69 74 65 33 2e 65 78 65 20 6c 69 62 73  sqlite3.exe libs
8200: 71 6c 69 74 65 33 2e 6c 69 62 0a 09 64 65 6c 20  qlite3.lib..del
8210: 2f 51 20 2a 2e 64 61 20 2a 2e 62 62 20 2a 2e 62  /Q *.da *.bb *.b
8220: 62 67 20 67 6d 6f 6e 2e 6f 75 74 0a 09 64 65 6c  bg gmon.out..del
8230: 20 2f 51 20 73 71 6c 69 74 65 33 2e 68 20 6f 70   /Q sqlite3.h op
8240: 63 6f 64 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e  codes.c opcodes.
8250: 68 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e 2e  h..del /Q lemon.
8260: 65 78 65 20 6c 65 6d 70 61 72 2e 63 20 70 61 72  exe lempar.c par
8270: 73 65 2e 2a 0a 09 64 65 6c 20 2f 51 20 6d 6b 6b  se.*..del /Q mkk
8280: 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 20 6b  eywordhash.exe k
8290: 65 79 77 6f 72 64 68 61 73 68 2e 68 0a 09 2d 72  eywordhash.h..-r
82a0: 6d 64 69 72 20 2f 51 2f 53 20 2e 64 65 70 73 0a  mdir /Q/S .deps.
82b0: 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69  .-rmdir /Q/S .li
82c0: 62 73 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20  bs..-rmdir /Q/S
82d0: 71 75 6f 74 61 32 61 0a 09 2d 72 6d 64 69 72 20  quota2a..-rmdir
82e0: 2f 51 2f 53 20 71 75 6f 74 61 32 62 0a 09 2d 72  /Q/S quota2b..-r
82f0: 6d 64 69 72 20 2f 51 2f 53 20 71 75 6f 74 61 32  mdir /Q/S quota2
8300: 63 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 74  c..-rmdir /Q/S t
8310: 73 72 63 0a 09 64 65 6c 20 2f 51 20 2e 74 61 72  src..del /Q .tar
8320: 67 65 74 5f 73 6f 75 72 63 65 0a 09 64 65 6c 20  get_source..del
8330: 2f 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65 78  /Q tclsqlite3.ex
8340: 65 0a 09 64 65 6c 20 2f 51 20 74 65 73 74 66 69  e..del /Q testfi
8350: 78 74 75 72 65 2e 65 78 65 20 74 65 73 74 66 69  xture.exe testfi
8360: 78 74 75 72 65 2e 65 78 70 20 74 65 73 74 2e 64  xture.exp test.d
8370: 62 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65  b..del /Q sqlite
8380: 33 2e 64 6c 6c 20 73 71 6c 69 74 65 33 2e 6c 69  3.dll sqlite3.li
8390: 62 20 73 71 6c 69 74 65 33 2e 65 78 70 20 73 71  b sqlite3.exp sq
83a0: 6c 69 74 65 33 2e 64 65 66 0a 09 64 65 6c 20 2f  lite3.def..del /
83b0: 51 20 73 71 6c 69 74 65 33 2e 63 0a 09 64 65 6c  Q sqlite3.c..del
83c0: 20 2f 51 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c   /Q sqlite3_anal
83d0: 79 7a 65 72 2e 65 78 65 20 73 71 6c 69 74 65 33  yzer.exe sqlite3
83e0: 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 70 20 73 71  _analyzer.exp sq
83f0: 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63  lite3_analyzer.c
8400: 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 2d  ..del /Q sqlite-
8410: 6f 75 74 70 75 74 2e 76 73 69 78 0a 0a 23 0a 23  output.vsix..#.#
8420: 20 57 69 6e 64 6f 77 73 20 73 65 63 74 69 6f 6e   Windows section
8430: 0a 23 0a 64 6c 6c 3a 20 73 71 6c 69 74 65 33 2e  .#.dll: sqlite3.
8440: 64 6c 6c 0a 0a 73 71 6c 69 74 65 33 2e 64 65 66  dll..sqlite3.def
8450: 3a 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62  : libsqlite3.lib
8460: 0a 09 65 63 68 6f 20 45 58 50 4f 52 54 53 20 3e  ..echo EXPORTS >
8470: 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 09 64 75   sqlite3.def..du
8480: 6d 70 62 69 6e 20 2f 61 6c 6c 20 6c 69 62 73 71  mpbin /all libsq
8490: 6c 69 74 65 33 2e 6c 69 62 20 5c 0a 09 09 7c 20  lite3.lib \...|
84a0: 24 28 4e 41 57 4b 29 20 22 2f 20 31 20 5f 3f 73  $(NAWK) "/ 1 _?s 84b0: 71 6c 69 74 65 33 5f 2f 20 7b 20 73 75 62 28 2f qlite3_/ { sub(/ 84c0: 5e 2e 2a 20 5f 3f 2f 2c 5c 22 5c 22 29 3b 70 72 ^.* _?/,\"\");pr 84d0: 69 6e 74 20 7d 22 20 5c 0a 09 09 7c 20 73 6f 72 int }" \...| sor 84e0: 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 t >> sqlite3.def 84f0: 0a 0a 73 71 6c 69 74 65 33 2e 64 6c 6c 3a 20 24 ..sqlite3.dll:$
8500: 28 4c 49 42 4f 42 4a 29 20 73 71 6c 69 74 65 33  (LIBOBJ) sqlite3
8510: 2e 64 65 66 0a 09 24 28 4c 44 29 20 24 28 4c 44  .def..$(LD)$(LD
8520: 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 8530: 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 PTS)$(LTLIBPATH
8540: 53 29 20 2f 44 4c 4c 20 2f 44 45 46 3a 73 71 6c  S) /DLL /DEF:sql
8550: 69 74 65 33 2e 64 65 66 20 2f 4f 55 54 3a 24 40  ite3.def /OUT:$@ 8560: 20 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c 54 4c$(LIBOBJ) $(LTL 8570: 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a IBS)$(TLIBS).