/ Hex Artifact Content

## Artifact 1edfd7dd45d98a04f9a2fa81a01c49faeb628578:

• File Makefile.msc — part of check-in [0cdd59bf] at 2015-01-29 14:48:36 on branch one-writable-btree — Avoid overlength command lines in Makefile.msc when using TOP= with a large directory name. (user: drh size: 45433) [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: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 53  ############## S
0090: 54 41 52 54 20 4f 46 20 4f 50 54 49 4f 4e 53 20  TART OF OPTIONS
00a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
00c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0110: 0a 23 20 54 68 65 20 74 6f 70 6c 65 76 65 6c 20  .# The toplevel
0120: 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65  directory of the
0130: 20 73 6f 75 72 63 65 20 74 72 65 65 2e 20 20 54   source tree.  T
0140: 68 69 73 20 69 73 20 74 68 65 20 64 69 72 65 63  his is the direc
0150: 74 6f 72 79 0a 23 20 74 68 61 74 20 63 6f 6e 74  tory.# that cont
0160: 61 69 6e 73 20 74 68 69 73 20 22 4d 61 6b 65 66  ains this "Makef
0170: 69 6c 65 2e 6d 73 63 22 2e 0a 23 0a 54 4f 50 20  ile.msc"..#.TOP
0180: 3d 20 2e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  = ...# Set this
0190: 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61 74 65 20  non-0 to create
01a0: 61 6e 64 20 75 73 65 20 74 68 65 20 53 51 4c 69  and use the SQLi
01b0: 74 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 20  te amalgamation
01c0: 66 69 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20  file..#.!IFNDEF
01d0: 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  USE_AMALGAMATION
01e0: 0a 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f  .USE_AMALGAMATIO
01f0: 4e 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a 23 20  N = 1.!ENDIF..#
0200: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0210: 6f 20 65 6e 61 62 6c 65 20 66 75 6c 6c 20 77 61  o enable full wa
0220: 72 6e 69 6e 67 73 20 28 2d 57 34 2c 20 65 74 63  rnings (-W4, etc
0230: 29 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  ) when compiling
0240: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0250: 46 55 4c 4c 57 41 52 4e 0a 55 53 45 5f 46 55 4c  FULLWARN.USE_FUL
0260: 4c 57 41 52 4e 20 3d 20 30 0a 21 45 4e 44 49 46  LWARN = 0.!ENDIF
0270: 0a 0a 23 20 49 66 20 6e 65 63 65 73 73 61 72 79  ..# If necessary
0280: 2c 20 63 72 65 61 74 65 20 61 20 6c 69 73 74 20  , create a list
0290: 6f 66 20 68 61 72 6d 6c 65 73 73 20 63 6f 6d 70  of harmless comp
02a0: 69 6c 65 72 20 77 61 72 6e 69 6e 67 73 20 74 6f  iler warnings to
02b0: 20 64 69 73 61 62 6c 65 20 77 68 65 6e 0a 23 20   disable when.#
02c0: 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 62 75  compiling the bu
02d0: 69 6c 64 20 74 6f 6f 6c 73 2e 20 20 46 6f 72 20  ild tools.  For
02e0: 74 68 65 20 53 51 4c 69 74 65 20 73 6f 75 72 63  the SQLite sourc
02f0: 65 20 63 6f 64 65 20 69 74 73 65 6c 66 2c 20 77  e code itself, w
0300: 61 72 6e 69 6e 67 73 2c 0a 23 20 69 66 20 61 6e  arnings,.# if an
0310: 79 2c 20 77 69 6c 6c 20 62 65 20 64 69 73 61 62  y, will be disab
0320: 6c 65 64 20 66 72 6f 6d 20 77 69 74 68 69 6e 20  led from within
0330: 69 74 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 4f  it..#.!IFNDEF NO
0340: 5f 57 41 52 4e 0a 21 49 46 20 24 28 55 53 45 5f  _WARN.!IF $(USE_ 0350: 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 4e 4f 5f FULLWARN)!=0.NO_ 0360: 57 41 52 4e 20 3d 20 2d 77 64 34 30 35 34 20 2d WARN = -wd4054 - 0370: 77 64 34 30 35 35 20 2d 77 64 34 31 30 30 20 2d wd4055 -wd4100 - 0380: 77 64 34 31 32 37 20 2d 77 64 34 31 35 32 20 2d wd4127 -wd4152 - 0390: 77 64 34 31 38 39 20 2d 77 64 34 32 30 36 20 2d wd4189 -wd4206 - 03a0: 77 64 34 32 31 30 0a 4e 4f 5f 57 41 52 4e 20 3d wd4210.NO_WARN = 03b0: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 77 64 34$(NO_WARN) -wd4
03c0: 32 33 32 20 2d 77 64 34 32 34 34 20 2d 77 64 34  232 -wd4244 -wd4
03d0: 33 30 35 20 2d 77 64 34 33 30 36 20 2d 77 64 34  305 -wd4306 -wd4
03e0: 37 30 32 20 2d 77 64 34 37 30 36 0a 21 45 4e 44  702 -wd4706.!END
03f0: 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74  IF.!ENDIF..# Set
0400: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75   this non-0 to u
0410: 73 65 20 74 68 65 20 6c 69 62 72 61 72 79 20 70  se the library p
0420: 61 74 68 73 20 61 6e 64 20 6f 74 68 65 72 20 6f  aths and other o
0430: 70 74 69 6f 6e 73 20 6e 65 63 65 73 73 61 72 79  ptions necessary
0440: 20 66 6f 72 0a 23 20 57 69 6e 64 6f 77 73 20 50   for.# Windows P
0450: 68 6f 6e 65 20 38 2e 31 2e 0a 23 0a 21 49 46 4e  hone 8.1..#.!IFN
0460: 44 45 46 20 55 53 45 5f 57 50 38 31 5f 4f 50 54  DEF USE_WP81_OPT
0470: 53 0a 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 20  S.USE_WP81_OPTS
0480: 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65  = 0.!ENDIF..# Se
0490: 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20  t this non-0 to
04a0: 73 70 6c 69 74 20 74 68 65 20 53 51 4c 69 74 65  split the SQLite
04b0: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69   amalgamation fi
04c0: 6c 65 20 69 6e 74 6f 20 63 68 75 6e 6b 73 20 74  le into chunks t
04d0: 6f 0a 23 20 62 65 20 75 73 65 64 20 66 6f 72 20  o.# be used for
04e0: 64 65 62 75 67 67 69 6e 67 20 77 69 74 68 20 56  debugging with V
04f0: 69 73 75 61 6c 20 53 74 75 64 69 6f 2e 0a 23 0a  isual Studio..#.
0500: 21 49 46 4e 44 45 46 20 53 50 4c 49 54 5f 41 4d  !IFNDEF SPLIT_AM
0510: 41 4c 47 41 4d 41 54 49 4f 4e 0a 53 50 4c 49 54  ALGAMATION.SPLIT
0520: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 20 3d 20  _AMALGAMATION =
0530: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
0540: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  this non-0 to us
0550: 65 20 74 68 65 20 49 6e 74 65 72 6e 61 74 69 6f  e the Internatio
0560: 6e 61 6c 20 43 6f 6d 70 6f 6e 65 6e 74 73 20 66  nal Components f
0570: 6f 72 20 55 6e 69 63 6f 64 65 20 28 49 43 55 29  or Unicode (ICU)
0580: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0590: 49 43 55 0a 55 53 45 5f 49 43 55 20 3d 20 30 0a  ICU.USE_ICU = 0.
05a0: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
05b0: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79 6e 61  is non-0 to dyna
05c0: 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20  mically link to
05d0: 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69 6d 65  the MSVC runtime
05e0: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e   library..#.!IFN
05f0: 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c 4c 0a  DEF USE_CRT_DLL.
0600: 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20 30 0a  USE_CRT_DLL = 0.
0610: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
0620: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69 6e 6b  is non-0 to link
0630: 20 74 6f 20 74 68 65 20 52 50 43 52 54 34 20 6c   to the RPCRT4 l
0640: 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45  ibrary..#.!IFNDE
0650: 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42  F USE_RPCRT4_LIB
0660: 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42 20  .USE_RPCRT4_LIB
0670: 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65  = 0.!ENDIF..# Se
0680: 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20  t this non-0 to
0690: 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d 62 6c  generate assembl
06a0: 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67 73 20  y code listings
06b0: 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 20 63  for the source c
06c0: 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23 0a 21  ode.# files..#.!
06d0: 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53 54 49  IFNDEF USE_LISTI
06e0: 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e 47 53  NGS.USE_LISTINGS
06f0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53   = 0.!ENDIF..# S
0700: 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f  et this non-0 to
0710: 20 61 74 74 65 6d 70 74 20 73 65 74 74 69 6e 67   attempt setting
0720: 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f 6d 70   the native comp
0730: 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63 61 6c  iler automatical
0740: 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73 2d 63  ly.# for cross-c
0750: 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63 6f 6d  ompiling the com
0760: 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c 73 20  mand line tools
0770: 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20 74 68  needed during th
0780: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a 23 20  e compilation.#
0790: 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e 44  process..#.!IFND
07a0: 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43 4f 4d  EF XCOMPILE.XCOM
07b0: 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a  PILE = 0.!ENDIF.
07c0: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
07d0: 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e 61 74  0 to use the nat
07e0: 69 76 65 20 6c 69 62 72 61 72 69 65 73 20 70 61  ive libraries pa
07f0: 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d 63 6f  ths for cross-co
0800: 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20 63 6f  mpiling.# the co
0810: 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c 73  mmand line tools
0820: 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20 74   needed during t
0830: 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70  he compilation p
0840: 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e 44 45  rocess..#.!IFNDE
0850: 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42  F USE_NATIVE_LIB
0860: 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49 56 45  PATHS.USE_NATIVE
0870: 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a 21 45  _LIBPATHS = 0.!E
0880: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
0890: 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65 20 63   0 to skip the c
08a0: 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65 6d 62  ompiling and emb
08b0: 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73 69 6f  edding of versio
08c0: 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23 0a 21  n resources..#.!
08d0: 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a 55 53  IFNDEF USE_RC.US
08e0: 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49 46 0a  E_RC = 1.!ENDIF.
08f0: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0900: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0910: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0920: 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65 6e 76  or the WinRT env
0930: 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68 69 73  ironment..# This
0940: 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20 6e 6f   setting does no
0950: 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79 20 62  t apply to any b
0960: 69 6e 61 72 69 65 73 20 74 68 61 74 20 72 65 71  inaries that req
0970: 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70 65 72  uire Tcl to oper
0980: 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79 20 28  ate.# properly (
0990: 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20 66 69  i.e. the text fi
09a0: 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23 0a 21  xture, etc)..#.!
09b0: 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e 52 54  IFNDEF FOR_WINRT
09c0: 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30 0a 21  .FOR_WINRT = 0.!
09d0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
09e0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69 70 20  s non-0 to skip
09f0: 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 6c 6f  attempting to lo
0a00: 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20 6c 69  ok for and/or li
0a10: 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63 6c 0a  nk with the Tcl.
0a20: 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72  # runtime librar
0a30: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 4f 5f  y..#.!IFNDEF NO_
0a40: 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30 0a 21  TCL.NO_TCL = 0.!
0a50: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0a60: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72  s to non-0 to cr
0a70: 65 61 74 65 20 61 6e 64 20 75 73 65 20 50 44 42  eate and use PDB
0a80: 73 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 59 4d  s..#.!IFNDEF SYM
0a90: 42 4f 4c 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31  BOLS.SYMBOLS = 1
0aa0: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0ab0: 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20  his to non-0 to
0ac0: 75 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 64  use the SQLite d
0ad0: 65 62 75 67 67 69 6e 67 20 68 65 61 70 20 73 75  ebugging heap su
0ae0: 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44  bsystem..#.!IFND
0af0: 45 46 20 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44  EF MEMDEBUG.MEMD
0b00: 45 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a  EBUG = 0.!ENDIF.
0b10: 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e  .# Set this to n
0b20: 6f 6e 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20  on-0 to use the
0b30: 57 69 6e 33 32 20 6e 61 74 69 76 65 20 68 65 61  Win32 native hea
0b40: 70 20 73 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21  p subsystem..#.!
0b50: 49 46 4e 44 45 46 20 57 49 4e 33 32 48 45 41 50  IFNDEF WIN32HEAP
0b60: 0a 57 49 4e 33 32 48 45 41 50 20 3d 20 30 0a 21  .WIN32HEAP = 0.!
0b70: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0b80: 73 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68 65 20  s to one of the
0b90: 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75 65 73  following values
0ba0: 20 74 6f 20 65 6e 61 62 6c 65 20 76 61 72 69 6f   to enable vario
0bb0: 75 73 20 64 65 62 75 67 67 69 6e 67 0a 23 20 66  us debugging.# f
0bc0: 65 61 74 75 72 65 73 2e 20 20 45 61 63 68 20 6c  eatures.  Each l
0bd0: 65 76 65 6c 20 69 6e 63 6c 75 64 65 73 20 74 68  evel includes th
0be0: 65 20 64 65 62 75 67 67 69 6e 67 20 6f 70 74 69  e debugging opti
0bf0: 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 70 72 65  ons from the pre
0c00: 76 69 6f 75 73 0a 23 20 6c 65 76 65 6c 73 2e 20  vious.# levels.
0c10: 20 43 75 72 72 65 6e 74 6c 79 2c 20 74 68 65 20   Currently, the
0c20: 72 65 63 6f 67 6e 69 7a 65 64 20 76 61 6c 75 65  recognized value
0c30: 73 20 66 6f 72 20 44 45 42 55 47 20 61 72 65 3a  s for DEBUG are:
0c40: 0a 23 0a 23 20 30 20 3d 3d 20 4e 44 45 42 55 47  .#.# 0 == NDEBUG
0c50: 3a 20 44 69 73 61 62 6c 65 73 20 61 73 73 65 72  : Disables asser
0c60: 74 28 29 20 61 6e 64 20 6f 74 68 65 72 20 72 75  t() and other ru
0c70: 6e 74 69 6d 65 20 64 69 61 67 6e 6f 73 74 69 63  ntime diagnostic
0c80: 73 2e 0a 23 20 31 20 3d 3d 20 53 51 4c 49 54 45  s..# 1 == SQLITE
0c90: 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d 4f  _ENABLE_API_ARMO
0ca0: 52 3a 20 65 78 74 72 61 20 61 74 74 65 6d 70 74  R: extra attempt
0cb0: 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69 73 75  s to detect misu
0cc0: 73 65 20 6f 66 20 74 68 65 20 41 50 49 2e 0a 23  se of the API..#
0cd0: 20 32 20 3d 3d 20 44 69 73 61 62 6c 65 73 20 4e   2 == Disables N
0ce0: 44 45 42 55 47 20 61 6e 64 20 61 6c 6c 20 6f 70  DEBUG and all op
0cf0: 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 6e 64 20  timizations and
0d00: 74 68 65 6e 20 65 6e 61 62 6c 65 73 20 50 44 42  then enables PDB
0d10: 73 2e 0a 23 20 33 20 3d 3d 20 53 51 4c 49 54 45  s..# 3 == SQLITE
0d20: 5f 44 45 42 55 47 3a 20 45 6e 61 62 6c 65 73 20  _DEBUG: Enables
0d30: 76 61 72 69 6f 75 73 20 64 69 61 67 6e 6f 73 74  various diagnost
0d40: 69 63 73 20 6d 65 73 73 61 67 65 73 20 61 6e 64  ics messages and
0d50: 20 63 6f 64 65 2e 0a 23 20 34 20 3d 3d 20 53 51   code..# 4 == SQ
0d60: 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f  LITE_WIN32_MALLO
0d70: 43 5f 56 41 4c 49 44 41 54 45 3a 20 56 61 6c 69  C_VALIDATE: Vali
0d80: 64 61 74 65 20 74 68 65 20 57 69 6e 33 32 20 6e  date the Win32 n
0d90: 61 74 69 76 65 20 68 65 61 70 20 70 65 72 20 63  ative heap per c
0da0: 61 6c 6c 2e 0a 23 20 35 20 3d 3d 20 53 51 4c 49  all..# 5 == SQLI
0db0: 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54 52 41 43  TE_DEBUG_OS_TRAC
0dc0: 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74 70 75  E: Enables outpu
0dd0: 74 20 66 72 6f 6d 20 74 68 65 20 4f 53 54 52 41  t from the OSTRA
0de0: 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23 20 36  CE() macros..# 6
0df0: 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c   == SQLITE_ENABL
0e00: 45 5f 49 4f 54 52 41 43 45 3a 20 45 6e 61 62 6c  E_IOTRACE: Enabl
0e10: 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d 20 74  es output from t
0e20: 68 65 20 49 4f 54 52 41 43 45 28 29 20 6d 61 63  he IOTRACE() mac
0e30: 72 6f 73 2e 0a 23 0a 21 49 46 4e 44 45 46 20 44  ros..#.!IFNDEF D
0e40: 45 42 55 47 0a 44 45 42 55 47 20 3d 20 30 0a 21  EBUG.DEBUG = 0.!
0e50: 45 4e 44 49 46 0a 0a 23 20 45 6e 61 62 6c 65 20  ENDIF..# Enable
0e60: 75 73 65 20 6f 66 20 61 76 61 69 6c 61 62 6c 65  use of available
0e70: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6d 69   compiler optimi
0e80: 7a 61 74 69 6f 6e 73 3f 20 20 4e 6f 72 6d 61 6c  zations?  Normal
0e90: 6c 79 2c 20 74 68 69 73 20 73 68 6f 75 6c 64 20  ly, this should
0ea0: 62 65 0a 23 20 6e 6f 6e 2d 7a 65 72 6f 2e 20 20  be.# non-zero.
0eb0: 53 65 74 74 69 6e 67 20 74 68 69 73 20 74 6f 20  Setting this to
0ec0: 7a 65 72 6f 2c 20 74 68 75 73 20 64 69 73 61 62  zero, thus disab
0ed0: 6c 69 6e 67 20 61 6c 6c 20 63 6f 6d 70 69 6c 65  ling all compile
0ee0: 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 2c  r optimizations,
0ef0: 0a 23 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c  .# can be useful
0f00: 20 66 6f 72 20 74 65 73 74 69 6e 67 2e 0a 23 0a   for testing..#.
0f10: 21 49 46 4e 44 45 46 20 4f 50 54 49 4d 49 5a 41  !IFNDEF OPTIMIZA
0f20: 54 49 4f 4e 53 0a 4f 50 54 49 4d 49 5a 41 54 49  TIONS.OPTIMIZATI
0f30: 4f 4e 53 20 3d 20 32 0a 21 45 4e 44 49 46 0a 0a  ONS = 2.!ENDIF..
0f40: 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20  # These are the
0f50: 22 73 74 61 6e 64 61 72 64 22 20 53 51 4c 69 74  "standard" SQLit
0f60: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70  e compilation op
0f70: 74 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20  tions used when
0f80: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20  compiling for.#
0f90: 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74  the Windows plat
0fa0: 66 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20  form..#.!IFNDEF
0fb0: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
0fc0: 53 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  S.OPT_FEATURE_FL
0fd0: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54  AGS = $(OPT_FEAT 0fe0: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 0ff0: 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 33 3d ITE_ENABLE_FTS3= 1000: 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 1.OPT_FEATURE_FL 1010: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 AGS =$(OPT_FEAT
1020: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c  URE_FLAGS) -DSQL
1030: 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45 45  ITE_ENABLE_RTREE
1040: 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46  =1.OPT_FEATURE_F
1050: 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41  LAGS = $(OPT_FEA 1060: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 TURE_FLAGS) -DSQ 1070: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 LITE_ENABLE_COLU 1080: 4d 4e 5f 4d 45 54 41 44 41 54 41 3d 31 0a 21 45 MN_METADATA=1.!E 1090: 4e 44 49 46 0a 0a 23 23 23 23 23 23 23 23 23 23 NDIF..########## 10a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 10b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 10c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 10d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 10e0: 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 #####.########## 10f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1100: 23 23 23 23 23 20 45 4e 44 20 4f 46 20 4f 50 54 ##### END OF OPT 1110: 49 4f 4e 53 20 23 23 23 23 23 23 23 23 23 23 23 IONS ########### 1120: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1130: 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 #####.########## 1140: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1150: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1160: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1170: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1180: 23 23 23 23 23 0a 0a 23 20 54 68 69 73 20 61 73 #####..# This as 1190: 73 75 6d 65 73 20 74 68 61 74 20 4d 53 56 43 20 sumes that MSVC 11a0: 69 73 20 61 6c 77 61 79 73 20 69 6e 73 74 61 6c is always instal 11b0: 6c 65 64 20 69 6e 20 33 32 2d 62 69 74 20 50 72 led in 32-bit Pr 11c0: 6f 67 72 61 6d 20 46 69 6c 65 73 20 64 69 72 65 ogram Files dire 11d0: 63 74 6f 72 79 0a 23 20 61 6e 64 20 73 65 74 73 ctory.# and sets 11e0: 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 66 6f the variable fo 11f0: 72 20 75 73 65 20 69 6e 20 6c 6f 63 61 74 69 6e r use in locatin 1200: 67 20 6f 74 68 65 72 20 33 32 2d 62 69 74 20 69 g other 32-bit i 1210: 6e 73 74 61 6c 6c 73 20 61 63 63 6f 72 64 69 6e nstalls accordin 1220: 67 6c 79 2e 0a 23 0a 50 52 4f 47 52 41 4d 46 49 gly..#.PROGRAMFI 1230: 4c 45 53 5f 58 38 36 20 3d 20 24 28 56 43 49 4e LES_X86 =$(VCIN
1240: 53 54 41 4c 4c 44 49 52 29 5c 2e 2e 5c 2e 2e 0a  STALLDIR)\..\...
1250: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36  PROGRAMFILES_X86
1260: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45   = $(PROGRAMFILE 1270: 53 5f 58 38 36 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 S_X86:\\=\)..# C 1280: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 65 heck for the pre 1290: 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 defined command 12a0: 6d 61 63 72 6f 20 43 43 2e 20 20 54 68 69 73 20 macro CC. This 12b0: 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 should point to 12c0: 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 23 20 62 the compiler.# b 12d0: 69 6e 61 72 79 20 66 6f 72 20 74 68 65 20 74 61 inary for the ta 12e0: 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 rget platform. 12f0: 49 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66 If it is not def 1300: 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 ined, simply def 1310: 69 6e 65 20 69 74 20 74 6f 0a 23 20 74 68 65 20 ine it to.# the 1320: 6c 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 76 legacy default v 1330: 61 6c 75 65 20 27 63 6c 2e 65 78 65 27 2e 0a 23 alue 'cl.exe'..# 1340: 0a 21 49 46 4e 44 45 46 20 43 43 0a 43 43 20 3d .!IFNDEF CC.CC = 1350: 20 63 6c 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a cl.exe.!ENDIF.. 1360: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 # Check for the 1370: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4c 44 command macro LD 1380: 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 . This should p 1390: 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c 69 6e 6b oint to the link 13a0: 65 72 20 62 69 6e 61 72 79 20 66 6f 72 0a 23 20 er binary for.# 13b0: 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 the target platf 13c0: 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e orm. If it is n 13d0: 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 ot defined, simp 13e0: 6c 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 ly define it to 13f0: 74 68 65 20 6c 65 67 61 63 79 0a 23 20 64 65 66 the legacy.# def 1400: 61 75 6c 74 20 76 61 6c 75 65 20 27 6c 69 6e 6b ault value 'link 1410: 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 .exe'..#.!IFNDEF 1420: 20 4c 44 0a 4c 44 20 3d 20 6c 69 6e 6b 2e 65 78 LD.LD = link.ex 1430: 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 e.!ENDIF..# Chec 1440: 6b 20 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 k for the predef 1450: 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 ined command mac 1460: 72 6f 20 52 43 2e 20 20 54 68 69 73 20 73 68 6f ro RC. This sho 1470: 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 uld point to the 1480: 20 72 65 73 6f 75 72 63 65 0a 23 20 63 6f 6d 70 resource.# comp 1490: 69 6c 65 72 20 62 69 6e 61 72 79 20 66 6f 72 20 iler binary for 14a0: 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 the target platf 14b0: 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e orm. If it is n 14c0: 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 ot defined, simp 14d0: 6c 79 20 64 65 66 69 6e 65 0a 23 20 69 74 20 74 ly define.# it t 14e0: 6f 20 74 68 65 20 6c 65 67 61 63 79 20 64 65 66 o the legacy def 14f0: 61 75 6c 74 20 76 61 6c 75 65 20 27 72 63 2e 65 ault value 'rc.e 1500: 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 52 xe'..#.!IFNDEF R 1510: 43 0a 52 43 20 3d 20 72 63 2e 65 78 65 0a 21 45 C.RC = rc.exe.!E 1520: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f NDIF..# Check fo 1530: 72 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69 r the MSVC runti 1540: 6d 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 me library path 1550: 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 74 69 73 macro. Othertis 1560: 65 2c 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 e, this value wi 1570: 6c 6c 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 ll.# default to 1580: 74 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74 the 'lib' direct 1590: 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74 ory underneath t 15a0: 68 65 20 4d 53 56 43 20 69 6e 73 74 61 6c 6c 61 he MSVC installa 15b0: 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a tion directory.. 15c0: 23 0a 21 49 46 4e 44 45 46 20 43 52 54 4c 49 42 #.!IFNDEF CRTLIB 15d0: 50 41 54 48 0a 43 52 54 4c 49 42 50 41 54 48 20 PATH.CRTLIBPATH 15e0: 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 =$(VCINSTALLDIR
15f0: 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 43 52  )\lib.!ENDIF..CR
1600: 54 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54  TLIBPATH = $(CRT 1610: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 LIBPATH:\\=\)..# 1620: 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 63 Check for the c 1630: 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4e 43 43 ommand macro NCC 1640: 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 . This should p 1650: 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 oint to the comp 1660: 69 6c 65 72 20 62 69 6e 61 72 79 0a 23 20 66 6f iler binary.# fo 1670: 72 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 74 r the platform t 1680: 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 he compilation p 1690: 72 6f 63 65 73 73 20 69 73 20 74 61 6b 69 6e 67 rocess is taking 16a0: 20 70 6c 61 63 65 20 6f 6e 2e 20 20 49 66 20 69 place on. If i 16b0: 74 20 69 73 20 6e 6f 74 0a 23 20 64 65 66 69 6e t is not.# defin 16c0: 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e ed, simply defin 16d0: 65 20 69 74 20 74 6f 20 68 61 76 65 20 74 68 65 e it to have the 16e0: 20 73 61 6d 65 20 76 61 6c 75 65 20 61 73 20 74 same value as t 16f0: 68 65 20 43 43 20 6d 61 63 72 6f 2e 20 20 57 68 he CC macro. Wh 1700: 65 6e 0a 23 20 63 72 6f 73 73 2d 63 6f 6d 70 69 en.# cross-compi 1710: 6c 69 6e 67 2c 20 69 74 20 69 73 20 73 75 67 67 ling, it is sugg 1720: 65 73 74 65 64 20 74 68 61 74 20 74 68 69 73 20 ested that this 1730: 6d 61 63 72 6f 20 62 65 20 6d 6f 64 69 66 69 65 macro be modifie 1740: 64 20 76 69 61 20 74 68 65 20 63 6f 6d 6d 61 6e d via the comman 1750: 64 0a 23 20 6c 69 6e 65 20 28 73 69 6e 63 65 20 d.# line (since 1760: 6e 6d 61 6b 65 20 69 74 73 65 6c 66 20 64 6f 65 nmake itself doe 1770: 73 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 20 s not provide a 1780: 62 75 69 6c 74 2d 69 6e 20 6d 65 74 68 6f 64 20 built-in method 1790: 74 6f 20 67 75 65 73 73 20 69 74 29 2e 0a 23 20 to guess it)..# 17a0: 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 For example, to 17b0: 75 73 65 20 74 68 65 20 78 38 36 20 63 6f 6d 70 use the x86 comp 17c0: 69 6c 65 72 20 77 68 65 6e 20 63 72 6f 73 73 2d iler when cross- 17d0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 78 36 compiling for x6 17e0: 34 2c 20 61 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 4, a command.# l 17f0: 69 6e 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 ine similar to t 1800: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 75 he following cou 1810: 6c 64 20 62 65 20 75 73 65 64 20 28 61 6c 6c 20 ld be used (all 1820: 6f 6e 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a on one line):.#. 1830: 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20 4d # nmake /f M 1840: 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c 69 akefile.msc sqli 1850: 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20 20 te3.dll.# 1860: 20 20 20 20 58 43 4f 4d 50 49 4c 45 3d 31 20 55 XCOMPILE=1 U 1870: 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 SE_NATIVE_LIBPAT 1880: 48 53 3d 31 0a 23 0a 23 20 41 6c 74 65 72 6e 61 HS=1.#.# Alterna 1890: 74 69 76 65 6c 79 2c 20 74 68 65 20 66 75 6c 6c tively, the full 18a0: 20 70 61 74 68 20 61 6e 64 20 66 69 6c 65 20 6e path and file n 18b0: 61 6d 65 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 ame to the compi 18c0: 6c 65 72 20 62 69 6e 61 72 79 20 66 6f 72 20 74 ler binary for t 18d0: 68 65 0a 23 20 70 6c 61 74 66 6f 72 6d 20 74 68 he.# platform th 18e0: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 e compilation pr 18f0: 6f 63 65 73 73 20 69 73 20 74 61 6b 69 6e 67 20 ocess is taking 1900: 70 6c 61 63 65 20 6d 61 79 20 62 65 20 73 70 65 place may be spe 1910: 63 69 66 69 65 64 20 28 61 6c 6c 20 6f 6e 0a 23 cified (all on.# 1920: 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 20 one line):.#.# 1930: 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b nmake /f Mak 1940: 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c 69 74 65 efile.msc sqlite 1950: 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20 20 20 20 3.dll.# 1960: 20 20 22 4e 43 43 3d 22 22 25 56 43 49 4e 53 54 "NCC=""%VCINST 1970: 41 4c 4c 44 49 52 25 5c 62 69 6e 5c 63 6c 2e 65 ALLDIR%\bin\cl.e 1980: 78 65 22 22 22 0a 23 20 20 20 20 20 20 20 20 20 xe""".# 1990: 20 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 USE_NATIVE_LIB 19a0: 50 41 54 48 53 3d 31 0a 23 0a 21 49 46 44 45 46 PATHS=1.#.!IFDEF 19b0: 20 4e 43 43 0a 4e 43 43 20 3d 20 24 28 4e 43 43 NCC.NCC =$(NCC
19c0: 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 49 46 20 24  :\\=\).!ELSEIF $19d0: 28 58 43 4f 4d 50 49 4c 45 29 21 3d 30 0a 4e 43 (XCOMPILE)!=0.NC 19e0: 43 20 3d 20 22 24 28 56 43 49 4e 53 54 41 4c 4c C = "$(VCINSTALL
19f0: 44 49 52 29 5c 62 69 6e 5c 24 28 43 43 29 22 0a  DIR)\bin\$(CC)". 1a00: 4e 43 43 20 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c NCC =$(NCC:\\=\
1a10: 29 0a 21 45 4c 53 45 0a 4e 43 43 20 3d 20 24 28  ).!ELSE.NCC = $( 1a20: 43 43 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 CC).!ENDIF..# Ch 1a30: 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 43 eck for the MSVC 1a40: 20 6e 61 74 69 76 65 20 72 75 6e 74 69 6d 65 20 native runtime 1a50: 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 library path mac 1a60: 72 6f 2e 20 20 4f 74 68 65 72 74 69 73 65 2c 0a ro. Othertise,. 1a70: 23 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c # this value wil 1a80: 6c 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 l default to the 1a90: 20 27 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 'lib' directory 1aa0: 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 underneath the 1ab0: 4d 53 56 43 0a 23 20 69 6e 73 74 61 6c 6c 61 74 MSVC.# installat 1ac0: 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 ion directory..# 1ad0: 0a 21 49 46 4e 44 45 46 20 4e 43 52 54 4c 49 42 .!IFNDEF NCRTLIB 1ae0: 50 41 54 48 0a 4e 43 52 54 4c 49 42 50 41 54 48 PATH.NCRTLIBPATH 1af0: 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 =$(VCINSTALLDI
1b00: 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e  R)\lib.!ENDIF..N
1b10: 43 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 4e  CRTLIBPATH = $(N 1b20: 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 CRTLIBPATH:\\=\) 1b30: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 ..# Check for th 1b40: 65 20 50 6c 61 74 66 6f 72 6d 20 53 44 4b 20 6c e Platform SDK l 1b50: 69 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 ibrary path macr 1b60: 6f 2e 20 20 4f 74 68 65 72 74 69 73 65 2c 20 74 o. Othertise, t 1b70: 68 69 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c his.# value will 1b80: 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 default to the 1b90: 27 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 'lib' directory 1ba0: 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 57 underneath the W 1bb0: 69 6e 64 6f 77 73 0a 23 20 53 44 4b 20 69 6e 73 indows.# SDK ins 1bc0: 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 tallation direct 1bd0: 6f 72 79 20 28 74 68 65 20 65 6e 76 69 72 6f 6e ory (the environ 1be0: 6d 65 6e 74 20 76 61 72 69 61 62 6c 65 20 75 73 ment variable us 1bf0: 65 64 20 61 70 70 65 61 72 73 0a 23 20 74 6f 20 ed appears.# to 1c00: 62 65 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 be available whe 1c10: 6e 20 75 73 69 6e 67 20 56 69 73 75 61 6c 20 43 n using Visual C 1c20: 2b 2b 20 32 30 30 38 20 6f 72 20 6c 61 74 65 72 ++ 2008 or later 1c30: 20 76 69 61 20 74 68 65 0a 23 20 63 6f 6d 6d 61 via the.# comma 1c40: 6e 64 20 6c 69 6e 65 29 2e 0a 23 0a 21 49 46 4e nd line)..#.!IFN 1c50: 44 45 46 20 4e 53 44 4b 4c 49 42 50 41 54 48 0a DEF NSDKLIBPATH. 1c60: 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 NSDKLIBPATH =$(
1c70: 57 49 4e 44 4f 57 53 53 44 4b 44 49 52 29 5c 6c  WINDOWSSDKDIR)\l
1c80: 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 53 44 4b 4c  ib.!ENDIF..NSDKL
1c90: 49 42 50 41 54 48 20 3d 20 24 28 4e 53 44 4b 4c  IBPATH = $(NSDKL 1ca0: 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 IBPATH:\\=\)..# 1cb0: 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f C compiler and o 1cc0: 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 ptions for use i 1cd0: 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 n building execu 1ce0: 74 61 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 tables that.# wi 1cf0: 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 70 6c ll run on the pl 1d00: 61 74 66 6f 72 6d 20 74 68 61 74 20 69 73 20 64 atform that is d 1d10: 6f 69 6e 67 20 74 68 65 20 62 75 69 6c 64 2e 0a oing the build.. 1d20: 23 0a 21 49 46 20 24 28 55 53 45 5f 46 55 4c 4c #.!IF$(USE_FULL
1d30: 57 41 52 4e 29 21 3d 30 0a 42 43 43 20 3d 20 24  WARN)!=0.BCC = $1d40: 28 4e 43 43 29 20 2d 57 34 0a 21 45 4c 53 45 0a (NCC) -W4.!ELSE. 1d50: 42 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 57 33 BCC =$(NCC) -W3
1d60: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b  .!ENDIF..# Check
1d70: 20 69 66 20 61 73 73 65 6d 62 6c 79 20 63 6f 64   if assembly cod
1d80: 65 20 6c 69 73 74 69 6e 67 73 20 73 68 6f 75 6c  e listings shoul
1d90: 64 20 62 65 20 67 65 6e 65 72 61 74 65 64 20 66  d be generated f
1da0: 6f 72 20 74 68 65 20 73 6f 75 72 63 65 0a 23 20  or the source.#
1db0: 63 6f 64 65 20 66 69 6c 65 73 20 74 6f 20 62 65  code files to be
1dc0: 20 63 6f 6d 70 69 6c 65 64 2e 0a 23 0a 21 49 46   compiled..#.!IF
1dd0: 20 24 28 55 53 45 5f 4c 49 53 54 49 4e 47 53 29   $(USE_LISTINGS) 1de0: 21 3d 30 0a 42 43 43 20 3d 20 24 28 42 43 43 29 !=0.BCC =$(BCC)
1df0: 20 2d 46 41 63 73 0a 21 45 4e 44 49 46 0a 0a 23   -FAcs.!ENDIF..#
1e00: 20 43 68 65 63 6b 20 69 66 20 74 68 65 20 6e 61   Check if the na
1e10: 74 69 76 65 20 6c 69 62 72 61 72 79 20 70 61 74  tive library pat
1e20: 68 73 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65  hs should be use
1e30: 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  d when compiling
1e40: 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  .# the command l
1e50: 69 6e 65 20 74 6f 6f 6c 73 20 75 73 65 64 20 64  ine tools used d
1e60: 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c  uring the compil
1e70: 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20  ation process.
1e80: 49 66 0a 23 20 73 6f 2c 20 73 65 74 20 74 68 65  If.# so, set the
1e90: 20 6e 65 63 65 73 73 61 72 79 20 6d 61 63 72 6f   necessary macro
1ea0: 20 6e 6f 77 2e 0a 23 0a 21 49 46 20 24 28 55 53   now..#.!IF $(US 1eb0: 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 E_NATIVE_LIBPATH 1ec0: 53 29 21 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48 S)!=0.NLTLIBPATH 1ed0: 53 20 3d 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 S = "/LIBPATH:$(
1ee0: 4e 43 52 54 4c 49 42 50 41 54 48 29 22 20 22 2f  NCRTLIBPATH)" "/
1ef0: 4c 49 42 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49  LIBPATH:$(NSDKLI 1f00: 42 50 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 0a BPATH)".!ENDIF.. 1f10: 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 # C compiler and 1f20: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 options for use 1f30: 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 65 in building exe 1f40: 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 20 cutables that.# 1f50: 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 will run on the 1f60: 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e target platform. 1f70: 20 20 28 42 43 43 20 61 6e 64 20 54 43 43 20 61 (BCC and TCC a 1f80: 72 65 20 75 73 75 61 6c 6c 79 20 74 68 65 0a 23 re usually the.# 1f90: 20 73 61 6d 65 20 75 6e 6c 65 73 73 20 79 6f 75 same unless you 1fa0: 72 20 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70 r are cross-comp 1fb0: 69 6c 69 6e 67 2e 29 0a 23 0a 21 49 46 20 24 28 iling.).#.!IF$(
1fc0: 55 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d 30  USE_FULLWARN)!=0
1fd0: 0a 54 43 43 20 3d 20 24 28 43 43 29 20 2d 57 34  .TCC = $(CC) -W4 1fe0: 20 2d 44 49 4e 43 4c 55 44 45 5f 4d 53 56 43 5f -DINCLUDE_MSVC_ 1ff0: 48 3d 31 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 H=1.!ELSE.TCC = 2000: 24 28 43 43 29 20 2d 57 33 0a 21 45 4e 44 49 46$(CC) -W3.!ENDIF
2010: 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  ..TCC = $(TCC) - 2020: 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 DSQLITE_OS_WIN=1 2030: 20 2d 49 2e 20 2d 49 24 28 54 4f 50 29 20 2d 49 -I. -I$(TOP) -I
2040: 24 28 54 4f 50 29 5c 73 72 63 20 2d 66 70 3a 70  $(TOP)\src -fp:p 2050: 72 65 63 69 73 65 0a 52 43 43 20 3d 20 24 28 52 recise.RCC =$(R
2060: 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57  C) -DSQLITE_OS_W
2070: 49 4e 3d 31 20 2d 49 24 28 54 4f 50 29 20 2d 49  IN=1 -I$(TOP) -I 2080: 24 28 54 4f 50 29 5c 73 72 63 0a 0a 23 20 43 68$(TOP)\src..# Ch
2090: 65 63 6b 20 69 66 20 61 73 73 65 6d 62 6c 79 20  eck if assembly
20a0: 63 6f 64 65 20 6c 69 73 74 69 6e 67 73 20 73 68  code listings sh
20b0: 6f 75 6c 64 20 62 65 20 67 65 6e 65 72 61 74 65  ould be generate
20c0: 64 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65  d for the source
20d0: 0a 23 20 63 6f 64 65 20 66 69 6c 65 73 20 74 6f  .# code files to
20e0: 20 62 65 20 63 6f 6d 70 69 6c 65 64 2e 0a 23 0a   be compiled..#.
20f0: 21 49 46 20 24 28 55 53 45 5f 4c 49 53 54 49 4e  !IF $(USE_LISTIN 2100: 47 53 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 GS)!=0.TCC =$(T
2110: 43 43 29 20 2d 46 41 63 73 0a 21 45 4e 44 49 46  CC) -FAcs.!ENDIF
2120: 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
2130: 6e 67 20 74 68 65 20 6c 69 62 72 61 72 79 20 66  ng the library f
2140: 6f 72 20 75 73 65 20 69 6e 20 74 68 65 20 57 69  or use in the Wi
2150: 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c  nRT environment,
2160: 0a 23 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67  .# the following
2170: 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70   compile-time op
2180: 74 69 6f 6e 73 20 6d 75 73 74 20 62 65 20 75 73  tions must be us
2190: 65 64 20 61 73 20 77 65 6c 6c 20 74 6f 0a 23 20  ed as well to.#
21a0: 64 69 73 61 62 6c 65 20 75 73 65 20 6f 66 20 57  disable use of W
21b0: 69 6e 33 32 20 41 50 49 73 20 74 68 61 74 20 61  in32 APIs that a
21c0: 72 65 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65  re not available
21d0: 20 61 6e 64 20 74 6f 20 65 6e 61 62 6c 65 0a 23   and to enable.#
21e0: 20 75 73 65 20 6f 66 20 57 69 6e 33 32 20 41 50   use of Win32 AP
21f0: 49 73 20 74 68 61 74 20 61 72 65 20 73 70 65 63  Is that are spec
2200: 69 66 69 63 20 74 6f 20 57 69 6e 64 6f 77 73 20  ific to Windows
2210: 38 20 61 6e 64 2f 6f 72 20 57 69 6e 52 54 2e 0a  8 and/or WinRT..
2220: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52  #.!IF $(FOR_WINR 2230: 54 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 T)!=0.TCC =$(TC
2240: 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57  C) -DSQLITE_OS_W
2250: 49 4e 52 54 3d 31 0a 52 43 43 20 3d 20 24 28 52  INRT=1.RCC = $(R 2260: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f CC) -DSQLITE_OS_ 2270: 57 49 4e 52 54 3d 31 0a 54 43 43 20 3d 20 24 28 WINRT=1.TCC =$(
2280: 54 43 43 29 20 2d 44 57 49 4e 41 50 49 5f 46 41  TCC) -DWINAPI_FA
2290: 4d 49 4c 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49  MILY=WINAPI_FAMI
22a0: 4c 59 5f 41 50 50 0a 52 43 43 20 3d 20 24 28 52  LY_APP.RCC = $(R 22b0: 43 43 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d CC) -DWINAPI_FAM 22c0: 49 4c 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c ILY=WINAPI_FAMIL 22d0: 59 5f 41 50 50 0a 21 45 4e 44 49 46 0a 0a 23 20 Y_APP.!ENDIF..# 22e0: 41 6c 73 6f 2c 20 77 65 20 6e 65 65 64 20 74 6f Also, we need to 22f0: 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e dynamically lin 2300: 6b 20 74 6f 20 74 68 65 20 63 6f 72 72 65 63 74 k to the correct 2310: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 0a 23 20 MSVC runtime.# 2320: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 when compiling f 2330: 6f 72 20 57 69 6e 52 54 20 28 65 2e 67 2e 20 64 or WinRT (e.g. d 2340: 65 62 75 67 20 6f 72 20 72 65 6c 65 61 73 65 29 ebug or release) 2350: 20 4f 52 20 69 66 20 74 68 65 0a 23 20 55 53 45 OR if the.# USE 2360: 5f 43 52 54 5f 44 4c 4c 20 6f 70 74 69 6f 6e 20 _CRT_DLL option 2370: 69 73 20 73 65 74 20 74 6f 20 66 6f 72 63 65 20 is set to force 2380: 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b dynamically link 2390: 69 6e 67 20 74 6f 20 74 68 65 0a 23 20 4d 53 56 ing to the.# MSV 23a0: 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 C runtime librar 23b0: 79 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 y..#.!IF$(FOR_W
23c0: 49 4e 52 54 29 21 3d 30 20 7c 7c 20 24 28 55 53  INRT)!=0 || $(US 23d0: 45 5f 43 52 54 5f 44 4c 4c 29 21 3d 30 0a 21 49 E_CRT_DLL)!=0.!I 23e0: 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 F$(DEBUG)>1.TCC
23f0: 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 64 0a 42   = $(TCC) -MDd.B 2400: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 44 64 CC =$(BCC) -MDd
2410: 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 54  .!ELSE.TCC = $(T 2420: 43 43 29 20 2d 4d 44 0a 42 43 43 20 3d 20 24 28 CC) -MD.BCC =$(
2430: 42 43 43 29 20 2d 4d 44 0a 21 45 4e 44 49 46 0a  BCC) -MD.!ENDIF.
2440: 21 45 4c 53 45 0a 21 49 46 20 24 28 44 45 42 55  !ELSE.!IF $(DEBU 2450: 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43 43 G)>1.TCC =$(TCC
2460: 29 20 2d 4d 54 64 0a 42 43 43 20 3d 20 24 28 42  ) -MTd.BCC = $(B 2470: 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 0a 54 CC) -MTd.!ELSE.T 2480: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 0a CC =$(TCC) -MT.
2490: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 54  BCC = $(BCC) -MT 24a0: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 24b0: 23 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 63 # The mksqlite3c 24c0: 2e 74 63 6c 20 61 6e 64 20 6d 6b 73 71 6c 69 74 .tcl and mksqlit 24d0: 65 33 68 2e 74 63 6c 20 73 63 72 69 70 74 73 20 e3h.tcl scripts 24e0: 77 69 6c 6c 20 70 75 6c 6c 20 69 6e 0a 23 20 61 will pull in.# a 24f0: 6e 79 20 65 78 74 65 6e 73 69 6f 6e 20 68 65 61 ny extension hea 2500: 64 65 72 20 66 69 6c 65 73 20 62 79 20 64 65 66 der files by def 2510: 61 75 6c 74 2e 20 20 46 6f 72 20 6e 6f 6e 2d 61 ault. For non-a 2520: 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 20 62 75 malgamation.# bu 2530: 69 6c 64 73 2c 20 77 65 20 6e 65 65 64 20 74 6f ilds, we need to 2540: 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 63 make sure the c 2550: 6f 6d 70 69 6c 65 72 20 63 61 6e 20 66 69 6e 64 ompiler can find 2560: 20 74 68 65 73 65 2e 0a 23 0a 21 49 46 20 24 28 these..#.!IF$(
2570: 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  USE_AMALGAMATION
2580: 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43  )==0.TCC = $(TCC 2590: 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 66 ) -I$(TOP)\ext\f
25a0: 74 73 33 0a 52 43 43 20 3d 20 24 28 52 43 43 29  ts3.RCC = $(RCC) 25b0: 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 -I$(TOP)\ext\ft
25c0: 73 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  s3.TCC = $(TCC) 25d0: 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 -I$(TOP)\ext\rtr
25e0: 65 65 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20  ee.RCC = $(RCC) 25f0: 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 -I$(TOP)\ext\rtr
2600: 65 65 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65  ee.!ENDIF..# The
2610: 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 20   mksqlite3c.tcl
2620: 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20 73  script accepts s
2630: 6f 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20 74  ome options on t
2640: 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e  he command.# lin
2650: 65 2e 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  e.  When compili
2660: 6e 67 20 77 69 74 68 20 64 65 62 75 67 67 69 6e  ng with debuggin
2670: 67 20 65 6e 61 62 6c 65 64 2c 20 73 6f 6d 65 20  g enabled, some
2680: 6f 66 20 74 68 65 73 65 0a 23 20 6f 70 74 69 6f  of these.# optio
2690: 6e 73 20 61 72 65 20 6e 65 63 65 73 73 61 72 79  ns are necessary
26a0: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c   in order to all
26b0: 6f 77 20 64 65 62 75 67 67 69 6e 67 20 73 79 6d  ow debugging sym
26c0: 62 6f 6c 73 20 74 6f 0a 23 20 77 6f 72 6b 20 63  bols to.# work c
26d0: 6f 72 72 65 63 74 6c 79 20 77 69 74 68 20 56 69  orrectly with Vi
26e0: 73 75 61 6c 20 53 74 75 64 69 6f 20 77 68 65 6e  sual Studio when
26f0: 20 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c 67   using the amalg
2700: 61 6d 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 20 24  amation..#.!IF $2710: 28 44 45 42 55 47 29 3e 31 0a 4d 4b 53 51 4c 49 (DEBUG)>1.MKSQLI 2720: 54 45 33 43 5f 41 52 47 53 20 3d 20 2d 2d 6c 69 TE3C_ARGS = --li 2730: 6e 65 6d 61 63 72 6f 73 0a 21 45 4c 53 45 0a 4d nemacros.!ELSE.M 2740: 4b 53 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d KSQLITE3C_ARGS = 2750: 0a 21 45 4e 44 49 46 0a 0a 23 20 44 65 66 69 6e .!ENDIF..# Defin 2760: 65 20 2d 44 4e 44 45 42 55 47 20 74 6f 20 63 6f e -DNDEBUG to co 2770: 6d 70 69 6c 65 20 77 69 74 68 6f 75 74 20 64 65 mpile without de 2780: 62 75 67 67 69 6e 67 20 28 69 2e 65 2e 2c 20 66 bugging (i.e., f 2790: 6f 72 20 70 72 6f 64 75 63 74 69 6f 6e 20 75 73 or production us 27a0: 61 67 65 29 0a 23 20 4f 6d 69 74 74 69 6e 67 20 age).# Omitting 27b0: 74 68 65 20 64 65 66 69 6e 65 20 77 69 6c 6c 20 the define will 27c0: 63 61 75 73 65 20 65 78 74 72 61 20 64 65 62 75 cause extra debu 27d0: 67 67 69 6e 67 20 63 6f 64 65 20 74 6f 20 62 65 gging code to be 27e0: 20 69 6e 73 65 72 74 65 64 20 61 6e 64 0a 23 20 inserted and.# 27f0: 69 6e 63 6c 75 64 65 73 20 65 78 74 72 61 20 63 includes extra c 2800: 6f 6d 6d 65 6e 74 73 20 77 68 65 6e 20 22 45 58 omments when "EX 2810: 50 4c 41 49 4e 20 73 74 6d 74 22 20 69 73 20 75 PLAIN stmt" is u 2820: 73 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 sed..#.!IF$(DEB
2830: 55 47 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54  UG)==0.TCC = $(T 2840: 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 42 43 43 CC) -DNDEBUG.BCC 2850: 20 3d 20 24 28 42 43 43 29 20 2d 44 4e 44 45 42 =$(BCC) -DNDEB
2860: 55 47 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20  UG.RCC = $(RCC) 2870: 2d 44 4e 44 45 42 55 47 0a 21 45 4e 44 49 46 0a -DNDEBUG.!ENDIF. 2880: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 0a .!IF$(DEBUG)>0.
2890: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS 28a0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 QLITE_ENABLE_API 28b0: 5f 41 52 4d 4f 52 0a 52 43 43 20 3d 20 24 28 52 _ARMOR.RCC =$(R
28c0: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  CC) -DSQLITE_ENA
28d0: 42 4c 45 5f 41 50 49 5f 41 52 4d 4f 52 0a 21 45  BLE_API_ARMOR.!E
28e0: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55  NDIF..!IF $(DEBU 28f0: 47 29 3e 32 0a 54 43 43 20 3d 20 24 28 54 43 43 G)>2.TCC =$(TCC
2900: 29 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47  ) -DSQLITE_DEBUG
2910: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 2920: 53 51 4c 49 54 45 5f 44 45 42 55 47 0a 21 45 4e SQLITE_DEBUG.!EN 2930: 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47 DIF..!IF$(DEBUG
2940: 29 3e 34 0a 54 43 43 20 3d 20 24 28 54 43 43 29  )>4.TCC = $(TCC) 2950: 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 5f -DSQLITE_DEBUG_ 2960: 4f 53 5f 54 52 41 43 45 3d 31 0a 52 43 43 20 3d OS_TRACE=1.RCC = 2970: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
2980: 5f 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d  _DEBUG_OS_TRACE=
2990: 31 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28  1.!ENDIF..!IF $( 29a0: 44 45 42 55 47 29 3e 35 0a 54 43 43 20 3d 20 24 DEBUG)>5.TCC =$
29b0: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45  (TCC) -DSQLITE_E
29c0: 4e 41 42 4c 45 5f 49 4f 54 52 41 43 45 0a 52 43  NABLE_IOTRACE.RC
29d0: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 29e0: 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 41 ITE_ENABLE_IOTRA 29f0: 43 45 0a 21 45 4e 44 49 46 0a 0a 23 20 50 72 65 CE.!ENDIF..# Pre 2a00: 76 65 6e 74 20 77 61 72 6e 69 6e 67 73 20 61 62 vent warnings ab 2a10: 6f 75 74 20 22 69 6e 73 65 63 75 72 65 22 20 4d out "insecure" M 2a20: 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 SVC runtime libr 2a30: 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 0a 23 20 ary functions.# 2a40: 62 65 69 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 being used..#.TC 2a50: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 5f 43 52 C =$(TCC) -D_CR
2a60: 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52  T_SECURE_NO_DEPR
2a70: 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 43  ECATE -D_CRT_SEC
2a80: 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a  URE_NO_WARNINGS.
2a90: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f  BCC = $(BCC) -D_ 2aa0: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 45 CRT_SECURE_NO_DE 2ab0: 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 53 PRECATE -D_CRT_S 2ac0: 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 ECURE_NO_WARNING 2ad0: 53 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d S.RCC =$(RCC) -
2ae0: 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f  D_CRT_SECURE_NO_
2af0: 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54  DEPRECATE -D_CRT
2b00: 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49  _SECURE_NO_WARNI
2b10: 4e 47 53 0a 0a 23 20 50 72 65 76 65 6e 74 20 77  NGS..# Prevent w
2b20: 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20 22 64  arnings about "d
2b30: 65 70 72 65 63 61 74 65 64 22 20 50 4f 53 49 58  eprecated" POSIX
2b40: 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 69 6e 67   functions being
2b50: 20 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24   used..#.TCC = $2b60: 28 54 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e (TCC) -D_CRT_NON 2b70: 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 STDC_NO_DEPRECAT 2b80: 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 E -D_CRT_NONSTDC 2b90: 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 _NO_WARNINGS.BCC 2ba0: 20 3d 20 24 28 42 43 43 29 20 2d 44 5f 43 52 54 =$(BCC) -D_CRT
2bb0: 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52  _NONSTDC_NO_DEPR
2bc0: 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e  ECATE -D_CRT_NON
2bd0: 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53  STDC_NO_WARNINGS
2be0: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 2bf0: 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f _CRT_NONSTDC_NO_ 2c00: 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 DEPRECATE -D_CRT 2c10: 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e _NONSTDC_NO_WARN 2c20: 49 4e 47 53 0a 0a 23 20 55 73 65 20 74 68 65 20 INGS..# Use the 2c30: 53 51 4c 69 74 65 20 64 65 62 75 67 67 69 6e 67 SQLite debugging 2c40: 20 68 65 61 70 20 73 75 62 73 79 73 74 65 6d 3f heap subsystem? 2c50: 0a 23 0a 21 49 46 20 24 28 4d 45 4d 44 45 42 55 .#.!IF$(MEMDEBU
2c60: 47 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  G)!=0.TCC = $(TC 2c70: 43 29 20 2d 44 53 51 4c 49 54 45 5f 4d 45 4d 44 C) -DSQLITE_MEMD 2c80: 45 42 55 47 3d 31 0a 52 43 43 20 3d 20 24 28 52 EBUG=1.RCC =$(R
2c90: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 4d 45 4d  CC) -DSQLITE_MEM
2ca0: 44 45 42 55 47 3d 31 0a 0a 23 20 55 73 65 20 6e  DEBUG=1..# Use n
2cb0: 61 74 69 76 65 20 57 69 6e 33 32 20 68 65 61 70  ative Win32 heap
2cc0: 20 73 75 62 73 79 73 74 65 6d 20 69 6e 73 74 65   subsystem inste
2cd0: 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 2f 66 72 65  ad of malloc/fre
2ce0: 65 3f 0a 23 0a 21 45 4c 53 45 49 46 20 24 28 57  e?.#.!ELSEIF $(W 2cf0: 49 4e 33 32 48 45 41 50 29 21 3d 30 0a 54 43 43 IN32HEAP)!=0.TCC 2d00: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 =$(TCC) -DSQLI
2d10: 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d  TE_WIN32_MALLOC=
2d20: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 2d30: 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 DSQLITE_WIN32_MA 2d40: 4c 4c 4f 43 3d 31 0a 0a 23 20 56 61 6c 69 64 61 LLOC=1..# Valida 2d50: 74 65 20 74 68 65 20 68 65 61 70 20 6f 6e 20 65 te the heap on e 2d60: 76 65 72 79 20 63 61 6c 6c 20 69 6e 74 6f 20 74 very call into t 2d70: 68 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 he native Win32 2d80: 68 65 61 70 20 73 75 62 73 79 73 74 65 6d 3f 0a heap subsystem?. 2d90: 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 33 #.!IF$(DEBUG)>3
2da0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D 2db0: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c SQLITE_WIN32_MAL 2dc0: 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a 52 LOC_VALIDATE=1.R 2dd0: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 CC =$(RCC) -DSQ
2de0: 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f  LITE_WIN32_MALLO
2df0: 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a 21 45 4e  C_VALIDATE=1.!EN
2e00: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  DIF.!ENDIF..# Th
2e10: 65 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74  e locations of t
2e20: 68 65 20 54 63 6c 20 68 65 61 64 65 72 20 61 6e  he Tcl header an
2e30: 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e  d library files.
2e40: 20 20 41 6c 73 6f 2c 20 74 68 65 20 6c 69 62 72    Also, the libr
2e50: 61 72 79 20 74 68 61 74 0a 23 20 6e 6f 6e 2d 73  ary that.# non-s
2e60: 74 75 62 73 20 65 6e 61 62 6c 65 64 20 70 72 6f  tubs enabled pro
2e70: 67 72 61 6d 73 20 75 73 69 6e 67 20 54 63 6c 20  grams using Tcl
2e80: 6d 75 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73  must link agains
2e90: 74 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62  t.  These variab
2ea0: 6c 65 73 0a 23 20 28 54 43 4c 49 4e 43 44 49 52  les.# (TCLINCDIR
2eb0: 2c 20 54 43 4c 4c 49 42 44 49 52 2c 20 61 6e 64  , TCLLIBDIR, and
2ec0: 20 4c 49 42 54 43 4c 29 20 6d 61 79 20 62 65 20   LIBTCL) may be
2ed0: 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74  overridden via t
2ee0: 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23  he environment.#
2ef0: 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e   prior to runnin
2f00: 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72  g nmake in order
2f10: 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63   to match the ac
2f20: 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c  tual installed l
2f30: 6f 63 61 74 69 6f 6e 20 61 6e 64 0a 23 20 76 65  ocation and.# ve
2f40: 72 73 69 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61  rsion on this ma
2f50: 63 68 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46  chine..#.!IFNDEF
2f60: 20 54 43 4c 49 4e 43 44 49 52 0a 54 43 4c 49 4e   TCLINCDIR.TCLIN
2f70: 43 44 49 52 20 3d 20 63 3a 5c 74 63 6c 5c 69 6e  CDIR = c:\tcl\in
2f80: 63 6c 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49  clude.!ENDIF..!I
2f90: 46 4e 44 45 46 20 54 43 4c 4c 49 42 44 49 52 0a  FNDEF TCLLIBDIR.
2fa0: 54 43 4c 4c 49 42 44 49 52 20 3d 20 63 3a 5c 74  TCLLIBDIR = c:\t
2fb0: 63 6c 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21  cl\lib.!ENDIF..!
2fc0: 49 46 4e 44 45 46 20 4c 49 42 54 43 4c 0a 4c 49  IFNDEF LIBTCL.LI
2fd0: 42 54 43 4c 20 3d 20 74 63 6c 38 35 2e 6c 69 62  BTCL = tcl85.lib
2fe0: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c  .!ENDIF..# The l
2ff0: 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20  ocations of the
3000: 49 43 55 20 68 65 61 64 65 72 20 61 6e 64 20 6c  ICU header and l
3010: 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 20 54  ibrary files.  T
3020: 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 0a 23  hese variables.#
3030: 20 28 49 43 55 49 4e 43 44 49 52 2c 20 49 43 55   (ICUINCDIR, ICU
3040: 4c 49 42 44 49 52 2c 20 61 6e 64 20 4c 49 42 49  LIBDIR, and LIBI
3050: 43 55 29 20 6d 61 79 20 62 65 20 6f 76 65 72 72  CU) may be overr
3060: 69 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e  idden via the en
3070: 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f  vironment.# prio
3080: 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61  r to running nma
3090: 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d  ke in order to m
30a0: 61 74 63 68 20 74 68 65 20 61 63 74 75 61 6c 20  atch the actual
30b0: 69 6e 73 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69  installed locati
30c0: 6f 6e 20 6f 6e 0a 23 20 74 68 69 73 20 6d 61 63  on on.# this mac
30d0: 68 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20  hine..#.!IFNDEF
30e0: 49 43 55 49 4e 43 44 49 52 0a 49 43 55 49 4e 43  ICUINCDIR.ICUINC
30f0: 44 49 52 20 3d 20 63 3a 5c 69 63 75 5c 69 6e 63  DIR = c:\icu\inc
3100: 6c 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46  lude.!ENDIF..!IF
3110: 4e 44 45 46 20 49 43 55 4c 49 42 44 49 52 0a 49  NDEF ICULIBDIR.I
3120: 43 55 4c 49 42 44 49 52 20 3d 20 63 3a 5c 69 63  CULIBDIR = c:\ic
3130: 75 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49  u\lib.!ENDIF..!I
3140: 46 4e 44 45 46 20 4c 49 42 49 43 55 0a 4c 49 42  FNDEF LIBICU.LIB
3150: 49 43 55 20 3d 20 69 63 75 75 63 2e 6c 69 62 20  ICU = icuuc.lib
3160: 69 63 75 69 6e 2e 6c 69 62 0a 21 45 4e 44 49 46  icuin.lib.!ENDIF
3170: 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20  ..# This is the
3180: 63 6f 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 66  command to use f
3190: 6f 72 20 74 63 6c 73 68 20 2d 20 6e 6f 72 6d 61  or tclsh - norma
31a0: 6c 6c 79 20 6a 75 73 74 20 22 74 63 6c 73 68 22  lly just "tclsh"
31b0: 2c 20 62 75 74 20 77 65 20 6d 61 79 0a 23 20 6b  , but we may.# k
31c0: 6e 6f 77 20 74 68 65 20 73 70 65 63 69 66 69 63  now the specific
31d0: 20 76 65 72 73 69 6f 6e 20 77 65 20 77 61 6e 74   version we want
31e0: 20 74 6f 20 75 73 65 2e 20 20 54 68 69 73 20 76   to use.  This v
31f0: 61 72 69 61 62 6c 65 20 28 54 43 4c 53 48 5f 43  ariable (TCLSH_C
3200: 4d 44 29 20 6d 61 79 20 62 65 0a 23 20 6f 76 65  MD) may be.# ove
3210: 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 65 20  rridden via the
3220: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 70 72 69 6f  environment prio
3230: 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61  r to running nma
3240: 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 73  ke in order to s
3250: 65 6c 65 63 74 20 61 0a 23 20 73 70 65 63 69 66  elect a.# specif
3260: 69 63 20 54 63 6c 20 73 68 65 6c 6c 20 74 6f 20  ic Tcl shell to
3270: 75 73 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54  use..#.!IFNDEF T
3280: 43 4c 53 48 5f 43 4d 44 0a 54 43 4c 53 48 5f 43  CLSH_CMD.TCLSH_C
3290: 4d 44 20 3d 20 74 63 6c 73 68 38 35 0a 21 45 4e  MD = tclsh85.!EN
32a0: 44 49 46 0a 0a 23 20 43 6f 6d 70 69 6c 65 72 20  DIF..# Compiler
32b0: 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 64 20 66  options needed f
32c0: 6f 72 20 70 72 6f 67 72 61 6d 73 20 74 68 61 74  or programs that
32d0: 20 75 73 65 20 74 68 65 20 72 65 61 64 6c 69 6e   use the readlin
32e0: 65 28 29 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  e() library..#.!
32f0: 49 46 4e 44 45 46 20 52 45 41 44 4c 49 4e 45 5f  IFNDEF READLINE_
3300: 46 4c 41 47 53 0a 52 45 41 44 4c 49 4e 45 5f 46  FLAGS.READLINE_F
3310: 4c 41 47 53 20 3d 20 2d 44 48 41 56 45 5f 52 45  LAGS = -DHAVE_RE
3320: 41 44 4c 49 4e 45 3d 30 0a 21 45 4e 44 49 46 0a  ADLINE=0.!ENDIF.
3330: 0a 23 20 54 68 65 20 6c 69 62 72 61 72 79 20 74  .# The library t
3340: 68 61 74 20 70 72 6f 67 72 61 6d 73 20 75 73 69  hat programs usi
3350: 6e 67 20 72 65 61 64 6c 69 6e 65 28 29 20 6d 75  ng readline() mu
3360: 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e  st link against.
3370: 0a 23 0a 21 49 46 4e 44 45 46 20 4c 49 42 52 45  .#.!IFNDEF LIBRE
3380: 41 44 4c 49 4e 45 0a 4c 49 42 52 45 41 44 4c 49  ADLINE.LIBREADLI
3390: 4e 45 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 53  NE =.!ENDIF..# S
33a0: 68 6f 75 6c 64 20 74 68 65 20 64 61 74 61 62 61  hould the databa
33b0: 73 65 20 65 6e 67 69 6e 65 20 62 65 20 63 6f 6d  se engine be com
33c0: 70 69 6c 65 64 20 74 68 72 65 61 64 73 61 66 65  piled threadsafe
33d0: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 33e0: 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 -DSQLITE_THREADS 33f0: 41 46 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 AFE=1.RCC =$(RC
3400: 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45  C) -DSQLITE_THRE
3410: 41 44 53 41 46 45 3d 31 0a 0a 23 20 44 6f 20 74  ADSAFE=1..# Do t
3420: 68 72 65 61 64 73 20 6f 76 65 72 72 69 64 65 20  hreads override
3430: 65 61 63 68 20 6f 74 68 65 72 73 20 6c 6f 63 6b  each others lock
3440: 73 20 62 79 20 64 65 66 61 75 6c 74 20 28 31 29  s by default (1)
3450: 2c 20 6f 72 20 64 6f 20 77 65 20 74 65 73 74 20  , or do we test
3460: 28 2d 31 29 0a 23 0a 54 43 43 20 3d 20 24 28 54  (-1).#.TCC = $(T 3470: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 CC) -DSQLITE_THR 3480: 45 41 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f 43 EAD_OVERRIDE_LOC 3490: 4b 3d 2d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 K=-1.RCC =$(RCC
34a0: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
34b0: 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f 43 4b 3d  D_OVERRIDE_LOCK=
34c0: 2d 31 0a 0a 23 20 41 6e 79 20 74 61 72 67 65 74  -1..# Any target
34d0: 20 6c 69 62 72 61 72 69 65 73 20 77 68 69 63 68   libraries which
34e0: 20 6c 69 62 73 71 6c 69 74 65 20 6d 75 73 74 20   libsqlite must
34f0: 62 65 20 6c 69 6e 6b 65 64 20 61 67 61 69 6e 73  be linked agains
3500: 74 0a 23 0a 21 49 46 4e 44 45 46 20 54 4c 49 42  t.#.!IFNDEF TLIB
3510: 53 0a 54 4c 49 42 53 20 3d 0a 21 45 4e 44 49 46  S.TLIBS =.!ENDIF
3520: 0a 0a 23 20 46 6c 61 67 73 20 63 6f 6e 74 72 6f  ..# Flags contro
3530: 6c 6c 69 6e 67 20 75 73 65 20 6f 66 20 74 68 65  lling use of the
3540: 20 69 6e 20 6d 65 6d 6f 72 79 20 62 74 72 65 65   in memory btree
3550: 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a   implementation.
3560: 23 0a 23 20 53 51 4c 49 54 45 5f 54 45 4d 50 5f  #.# SQLITE_TEMP_
3570: 53 54 4f 52 45 20 69 73 20 30 20 74 6f 20 66 6f  STORE is 0 to fo
3580: 72 63 65 20 74 65 6d 70 6f 72 61 72 79 20 74 61  rce temporary ta
3590: 62 6c 65 73 20 74 6f 20 62 65 20 69 6e 20 61 20  bles to be in a
35a0: 66 69 6c 65 2c 20 31 20 74 6f 0a 23 20 64 65 66  file, 1 to.# def
35b0: 61 75 6c 74 20 74 6f 20 66 69 6c 65 2c 20 32 20  ault to file, 2
35c0: 74 6f 20 64 65 66 61 75 6c 74 20 74 6f 20 6d 65  to default to me
35d0: 6d 6f 72 79 2c 20 61 6e 64 20 33 20 74 6f 20 66  mory, and 3 to f
35e0: 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 79 0a 23  orce temporary.#
35f0: 20 74 61 62 6c 65 73 20 74 6f 20 61 6c 77 61 79   tables to alway
3600: 73 20 62 65 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a  s be in memory..
3610: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  #.TCC = $(TCC) - 3620: 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f DSQLITE_TEMP_STO 3630: 52 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 RE=1.RCC =$(RCC
3640: 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f  ) -DSQLITE_TEMP_
3650: 53 54 4f 52 45 3d 31 0a 0a 23 20 45 6e 61 62 6c  STORE=1..# Enabl
3660: 65 2f 64 69 73 61 62 6c 65 20 6c 6f 61 64 61 62  e/disable loadab
3670: 6c 65 20 65 78 74 65 6e 73 69 6f 6e 73 2c 20 61  le extensions, a
3680: 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 6f 6e 61  nd other optiona
3690: 6c 20 66 65 61 74 75 72 65 73 0a 23 20 62 61 73  l features.# bas
36a0: 65 64 20 6f 6e 20 63 6f 6e 66 69 67 75 72 61 74  ed on configurat
36b0: 69 6f 6e 2e 20 28 2d 44 53 51 4c 49 54 45 5f 4f  ion. (-DSQLITE_O
36c0: 4d 49 54 2a 2c 20 2d 44 53 51 4c 49 54 45 5f 45  MIT*, -DSQLITE_E
36d0: 4e 41 42 4c 45 2a 29 2e 0a 23 20 54 68 65 20 73  NABLE*)..# The s
36e0: 61 6d 65 20 73 65 74 20 6f 66 20 4f 4d 49 54 20  ame set of OMIT
36f0: 61 6e 64 20 45 4e 41 42 4c 45 20 66 6c 61 67 73  and ENABLE flags
3700: 20 73 68 6f 75 6c 64 20 62 65 20 70 61 73 73 65   should be passe
3710: 64 20 74 6f 20 74 68 65 0a 23 20 4c 45 4d 4f 4e  d to the.# LEMON
3720: 20 70 61 72 73 65 72 20 67 65 6e 65 72 61 74 6f   parser generato
3730: 72 20 61 6e 64 20 74 68 65 20 6d 6b 6b 65 79 77  r and the mkkeyw
3740: 6f 72 64 68 61 73 68 20 74 6f 6f 6c 20 61 73 20  ordhash tool as
3750: 77 65 6c 6c 2e 0a 0a 23 20 54 68 65 73 65 20 61  well...# These a
3760: 72 65 20 74 68 65 20 72 65 71 75 69 72 65 64 20  re the required
3770: 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69  SQLite compilati
3780: 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20  on options used
3790: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66  when compiling f
37a0: 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 6f 77 73  or.# the Windows
37b0: 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 52 45 51   platform..#.REQ
37c0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d  _FEATURE_FLAGS =
37d0: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46   $(REQ_FEATURE_F 37e0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 4d LAGS) -DSQLITE_M 37f0: 41 58 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 AX_TRIGGER_DEPTH 3800: 3d 31 30 30 0a 0a 23 20 49 66 20 77 65 20 61 72 =100..# If we ar 3810: 65 20 6c 69 6e 6b 69 6e 67 20 74 6f 20 74 68 65 e linking to the 3820: 20 52 50 43 52 54 34 20 6c 69 62 72 61 72 79 2c RPCRT4 library, 3830: 20 65 6e 61 62 6c 65 20 66 65 61 74 75 72 65 73 enable features 3840: 20 74 68 61 74 20 6e 65 65 64 20 69 74 2e 0a 23 that need it..# 3850: 0a 21 49 46 20 24 28 55 53 45 5f 52 50 43 52 54 .!IF$(USE_RPCRT
3860: 34 5f 4c 49 42 29 21 3d 30 0a 52 45 51 5f 46 45  4_LIB)!=0.REQ_FE
3870: 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28  ATURE_FLAGS = $( 3880: 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 REQ_FEATURE_FLAG 3890: 53 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 S) -DSQLITE_WIN3 38a0: 32 5f 55 53 45 5f 55 55 49 44 3d 31 0a 21 45 4e 2_USE_UUID=1.!EN 38b0: 44 49 46 0a 0a 23 20 41 64 64 20 74 68 65 20 72 DIF..# Add the r 38c0: 65 71 75 69 72 65 64 20 61 6e 64 20 6f 70 74 69 equired and opti 38d0: 6f 6e 61 6c 20 53 51 4c 69 74 65 20 63 6f 6d 70 onal SQLite comp 38e0: 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 ilation options 38f0: 69 6e 74 6f 20 74 68 65 20 63 6f 6d 6d 61 6e 64 into the command 3900: 0a 23 20 6c 69 6e 65 73 20 75 73 65 64 20 74 6f .# lines used to 3910: 20 69 6e 76 6f 6b 65 20 74 68 65 20 4d 53 56 43 invoke the MSVC 3920: 20 63 6f 64 65 20 61 6e 64 20 72 65 73 6f 75 72 code and resour 3930: 63 65 20 63 6f 6d 70 69 6c 65 72 73 2e 0a 23 0a ce compilers..#. 3940: 54 43 43 20 3d 20 24 28 54 43 43 29 20 24 28 52 TCC =$(TCC) $(R 3950: 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 EQ_FEATURE_FLAGS 3960: 29 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f )$(OPT_FEATURE_
3970: 46 4c 41 47 53 29 0a 52 43 43 20 3d 20 24 28 52  FLAGS).RCC = $(R 3980: 43 43 29 20 24 28 52 45 51 5f 46 45 41 54 55 52 CC)$(REQ_FEATUR
3990: 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f 46  E_FLAGS) $(OPT_F 39a0: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a 0a 23 EATURE_FLAGS)..# 39b0: 20 41 64 64 20 69 6e 20 61 6e 79 20 6f 70 74 69 Add in any opti 39c0: 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72 73 20 onal parameters 39d0: 73 70 65 63 69 66 69 65 64 20 6f 6e 20 74 68 65 specified on the 39e0: 20 63 6f 6d 6d 61 6e 65 20 6c 69 6e 65 2c 20 65 commane line, e 39f0: 2e 67 2e 0a 23 20 6e 6d 61 6b 65 20 2f 66 20 4d .g..# nmake /f M 3a00: 61 6b 65 66 69 6c 65 2e 6d 73 63 20 61 6c 6c 20 akefile.msc all 3a10: 22 4f 50 54 53 3d 2d 44 53 51 4c 49 54 45 5f 45 "OPTS=-DSQLITE_E 3a20: 4e 41 42 4c 45 5f 46 4f 4f 3d 31 20 2d 44 53 51 NABLE_FOO=1 -DSQ 3a30: 4c 49 54 45 5f 4f 4d 49 54 5f 46 4f 4f 3d 31 22 LITE_OMIT_FOO=1" 3a40: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 .#.TCC =$(TCC)
3a50: 24 28 4f 50 54 53 29 0a 52 43 43 20 3d 20 24 28  $(OPTS).RCC =$(
3a60: 52 43 43 29 20 24 28 4f 50 54 53 29 0a 0a 23 20  RCC) $(OPTS)..# 3a70: 49 66 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 If compiling for 3a80: 20 64 65 62 75 67 67 69 6e 67 2c 20 61 64 64 20 debugging, add 3a90: 73 6f 6d 65 20 64 65 66 69 6e 65 73 2e 0a 23 0a some defines..#. 3aa0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 !IF$(DEBUG)>1.T
3ab0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 5f 44  CC = $(TCC) -D_D 3ac0: 45 42 55 47 0a 42 43 43 20 3d 20 24 28 42 43 43 EBUG.BCC =$(BCC
3ad0: 29 20 2d 44 5f 44 45 42 55 47 0a 52 43 43 20 3d  ) -D_DEBUG.RCC =
3ae0: 20 24 28 52 43 43 29 20 2d 44 5f 44 45 42 55 47   $(RCC) -D_DEBUG 3af0: 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 6f 70 .!ENDIF..# If op 3b00: 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 timizations are 3b10: 65 6e 61 62 6c 65 64 20 6f 72 20 64 69 73 61 62 enabled or disab 3b20: 6c 65 64 20 28 65 69 74 68 65 72 20 69 6d 70 6c led (either impl 3b30: 69 63 69 74 6c 79 20 6f 72 0a 23 20 65 78 70 6c icitly or.# expl 3b40: 69 63 69 74 6c 79 29 2c 20 61 64 64 20 74 68 65 icitly), add the 3b50: 20 6e 65 63 65 73 73 61 72 79 20 66 6c 61 67 73 necessary flags 3b60: 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 ..#.!IF$(DEBUG)
3b70: 3e 31 20 7c 7c 20 24 28 4f 50 54 49 4d 49 5a 41  >1 || $(OPTIMIZA 3b80: 54 49 4f 4e 53 29 3d 3d 30 0a 54 43 43 20 3d 20 TIONS)==0.TCC = 3b90: 24 28 54 43 43 29 20 2d 4f 64 0a 42 43 43 20 3d$(TCC) -Od.BCC =
3ba0: 20 24 28 42 43 43 29 20 2d 4f 64 0a 21 45 4c 53   $(BCC) -Od.!ELS 3bb0: 45 49 46 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 EIF$(OPTIMIZATI
3bc0: 4f 4e 53 29 3e 3d 33 0a 54 43 43 20 3d 20 24 28  ONS)>=3.TCC = $( 3bd0: 54 43 43 29 20 2d 4f 78 0a 42 43 43 20 3d 20 24 TCC) -Ox.BCC =$
3be0: 28 42 43 43 29 20 2d 4f 78 0a 21 45 4c 53 45 49  (BCC) -Ox.!ELSEI
3bf0: 46 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e  F $(OPTIMIZATION 3c00: 53 29 3d 3d 32 0a 54 43 43 20 3d 20 24 28 54 43 S)==2.TCC =$(TC
3c10: 43 29 20 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42  C) -O2.BCC = $(B 3c20: 43 43 29 20 2d 4f 32 0a 21 45 4c 53 45 49 46 20 CC) -O2.!ELSEIF 3c30: 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29$(OPTIMIZATIONS)
3c40: 3d 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29  ==1.TCC = $(TCC) 3c50: 20 2d 4f 31 0a 42 43 43 20 3d 20 24 28 42 43 43 -O1.BCC =$(BCC
3c60: 29 20 2d 4f 31 0a 21 45 4e 44 49 46 0a 0a 23 20  ) -O1.!ENDIF..#
3c70: 49 66 20 73 79 6d 62 6f 6c 73 20 61 72 65 20 65  If symbols are e
3c80: 6e 61 62 6c 65 64 20 28 6f 72 20 63 6f 6d 70 69  nabled (or compi
3c90: 6c 69 6e 67 20 66 6f 72 20 64 65 62 75 67 67 69  ling for debuggi
3ca0: 6e 67 29 2c 20 65 6e 61 62 6c 65 20 50 44 42 73  ng), enable PDBs
3cb0: 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29  ..#.!IF $(DEBUG) 3cc0: 3e 31 20 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 >1 ||$(SYMBOLS)
3cd0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29  !=0.TCC = $(TCC) 3ce0: 20 2d 5a 69 0a 42 43 43 20 3d 20 24 28 42 43 43 -Zi.BCC =$(BCC
3cf0: 29 20 2d 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20  ) -Zi.!ENDIF..#
3d00: 49 66 20 49 43 55 20 73 75 70 70 6f 72 74 20 69  If ICU support i
3d10: 73 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 74  s enabled, add t
3d20: 68 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  he compiler opti
3d30: 6f 6e 73 20 66 6f 72 20 69 74 2e 0a 23 0a 21 49  ons for it..#.!I
3d40: 46 20 24 28 55 53 45 5f 49 43 55 29 21 3d 30 0a  F $(USE_ICU)!=0. 3d50: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
3d60: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 43 55  QLITE_ENABLE_ICU
3d70: 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20  =1.RCC = $(RCC) 3d80: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 3d90: 49 43 55 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 ICU=1.TCC =$(TC
3da0: 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c  C) -I$(TOP)\ext\ 3db0: 69 63 75 0a 52 43 43 20 3d 20 24 28 52 43 43 29 icu.RCC =$(RCC)
3dc0: 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 69 63   -I$(TOP)\ext\ic 3dd0: 75 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d u.TCC =$(TCC) -
3de0: 49 24 28 49 43 55 49 4e 43 44 49 52 29 0a 52 43  I$(ICUINCDIR).RC 3df0: 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 28 49 C =$(RCC) -I$(I 3e00: 43 55 49 4e 43 44 49 52 29 0a 21 45 4e 44 49 46 CUINCDIR).!ENDIF 3e10: 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20 6c 69 6e 65 ..# Command line 3e20: 20 70 72 65 66 69 78 65 73 20 66 6f 72 20 63 6f prefixes for co 3e30: 6d 70 69 6c 69 6e 67 20 63 6f 64 65 2c 20 63 6f mpiling code, co 3e40: 6d 70 69 6c 69 6e 67 20 72 65 73 6f 75 72 63 65 mpiling resource 3e50: 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67 2c 20 65 74 s,.# linking, et 3e60: 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49 4c 45 20 3d c..#.LTCOMPILE = 3e70: 20 24 28 54 43 43 29 20 2d 46 6f 24 40 0a 4c 54$(TCC) -Fo$@.LT 3e80: 52 43 4f 4d 50 49 4c 45 20 3d 20 24 28 52 43 43 RCOMPILE =$(RCC
3e90: 29 20 2d 72 0a 4c 54 4c 49 42 20 3d 20 6c 69 62  ) -r.LTLIB = lib
3ea0: 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 3d 20 24 28  .exe.LTLINK = $( 3eb0: 54 43 43 29 20 2d 46 65 24 40 0a 0a 23 20 49 66 TCC) -Fe$@..# If
3ec0: 20 72 65 71 75 65 73 74 65 64 2c 20 6c 69 6e 6b   requested, link
3ed0: 20 74 6f 20 74 68 65 20 52 50 43 52 54 34 20 6c   to the RPCRT4 l
3ee0: 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 20 24 28  ibrary..#.!IF $( 3ef0: 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42 29 21 USE_RPCRT4_LIB)! 3f00: 3d 30 0a 4c 54 4c 49 4e 4b 20 3d 20 24 28 4c 54 =0.LTLINK =$(LT
3f10: 4c 49 4e 4b 29 20 72 70 63 72 74 34 2e 6c 69 62  LINK) rpcrt4.lib
3f20: 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 61 20  .!ENDIF..# If a
3f30: 70 6c 61 74 66 6f 72 6d 20 77 61 73 20 73 65 74  platform was set
3f40: 2c 20 66 6f 72 63 65 20 74 68 65 20 6c 69 6e 6b  , force the link
3f50: 65 72 20 74 6f 20 74 61 72 67 65 74 20 74 68 61  er to target tha
3f60: 74 2e 0a 23 20 4e 6f 74 65 20 74 68 61 74 20 74  t..# Note that t
3f70: 68 65 20 76 63 76 61 72 73 2a 2e 62 61 74 20 66  he vcvars*.bat f
3f80: 61 6d 69 6c 79 20 6f 66 20 62 61 74 63 68 20 66  amily of batch f
3f90: 69 6c 65 73 20 74 79 70 69 63 61 6c 6c 79 0a 23  iles typically.#
3fa0: 20 73 65 74 20 74 68 69 73 20 66 6f 72 20 79 6f   set this for yo
3fb0: 75 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74  u.  Otherwise, t
3fc0: 68 65 20 6c 69 6e 6b 65 72 20 77 69 6c 6c 20 61  he linker will a
3fd0: 74 74 65 6d 70 74 0a 23 20 74 6f 20 64 65 64 75  ttempt.# to dedu
3fe0: 63 65 20 74 68 65 20 62 69 6e 61 72 79 20 74 79  ce the binary ty
3ff0: 70 65 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20  pe based on the
4000: 6f 62 6a 65 63 74 20 66 69 6c 65 73 2e 0a 21 49  object files..!I
4010: 46 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a 4c 54  FDEF PLATFORM.LT
4020: 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f 4d 41 43 48  LINKOPTS = /MACH
4030: 49 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 0a  INE:$(PLATFORM). 4040: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4d 41 43 LTLIBOPTS = /MAC 4050: 48 49 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 HINE:$(PLATFORM)
4060: 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20  .!ENDIF..# When
4070: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 75 73  compiling for us
4080: 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54 20 65  e in the WinRT e
4090: 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 68 65 20  nvironment, the
40a0: 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c 69 6e 6b  following.# link
40b0: 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62  er option must b
40c0: 65 20 75 73 65 64 20 74 6f 20 6d 61 72 6b 20 74  e used to mark t
40d0: 68 65 20 65 78 65 63 75 74 61 62 6c 65 20 61 73  he executable as
40e0: 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f 6e 6c 79   runnable.# only
40f0: 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78 74 20   in the context
4100: 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f  of an applicatio
4110: 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a 23 0a 21  n container..#.!
4120: 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21  IF $(FOR_WINRT)! 4130: 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 =0.LTLINKOPTS = 4140: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 41$(LTLINKOPTS) /A
4150: 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 49 46 20  PPCONTAINER.!IF
4160: 22 24 28 56 49 53 55 41 4c 53 54 55 44 49 4f 56  "$(VISUALSTUDIOV 4170: 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32 2e 30 22 ERSION)"=="12.0" 4180: 0a 21 49 46 4e 44 45 46 20 53 54 4f 52 45 4c 49 .!IFNDEF STORELI 4190: 42 50 41 54 48 0a 21 49 46 20 22 24 28 50 4c 41 BPATH.!IF "$(PLA
41a0: 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 53  TFORM)"=="x86".S
41b0: 54 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24 28  TORELIBPATH = $( 41c0: 43 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 CRTLIBPATH)\stor 41d0: 65 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c 41 e.!ELSEIF "$(PLA
41e0: 54 46 4f 52 4d 29 22 3d 3d 22 78 36 34 22 0a 53  TFORM)"=="x64".S
41f0: 54 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24 28  TORELIBPATH = $( 4200: 43 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 CRTLIBPATH)\stor 4210: 65 5c 61 6d 64 36 34 0a 21 45 4c 53 45 49 46 20 e\amd64.!ELSEIF 4220: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 "$(PLATFORM)"=="
4230: 41 52 4d 22 0a 53 54 4f 52 45 4c 49 42 50 41 54  ARM".STORELIBPAT
4240: 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48  H = $(CRTLIBPATH 4250: 29 5c 73 74 6f 72 65 5c 61 72 6d 0a 21 45 4c 53 )\store\arm.!ELS 4260: 45 0a 53 54 4f 52 45 4c 49 42 50 41 54 48 20 3d E.STORELIBPATH = 4270: 20 24 28 43 52 54 4c 49 42 50 41 54 48 29 5c 73$(CRTLIBPATH)\s
4280: 74 6f 72 65 0a 21 45 4e 44 49 46 0a 21 45 4e 44  tore.!ENDIF.!END
4290: 49 46 0a 53 54 4f 52 45 4c 49 42 50 41 54 48 20  IF.STORELIBPATH
42a0: 3d 20 24 28 53 54 4f 52 45 4c 49 42 50 41 54 48  = $(STORELIBPATH 42b0: 3a 5c 5c 3d 5c 29 0a 4c 54 4c 49 4e 4b 4f 50 54 :\\=\).LTLINKOPT 42c0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 S =$(LTLINKOPTS
42d0: 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 53 54  ) "/LIBPATH:$(ST 42e0: 4f 52 45 4c 49 42 50 41 54 48 29 22 0a 21 45 4e ORELIBPATH)".!EN 42f0: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 DIF.!ENDIF..# Wh 4300: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 4310: 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 38 Windows Phone 8 4320: 2e 31 2c 20 61 6e 20 65 78 74 72 61 20 6c 69 62 .1, an extra lib 4330: 72 61 72 79 20 70 61 74 68 20 69 73 0a 23 20 72 rary path is.# r 4340: 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 24 equired..#.!IF$
4350: 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29 21  (USE_WP81_OPTS)!
4360: 3d 30 0a 21 49 46 4e 44 45 46 20 57 50 38 31 4c  =0.!IFNDEF WP81L
4370: 49 42 50 41 54 48 0a 21 49 46 20 22 24 28 50 4c  IBPATH.!IF "$(PL 4380: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a ATFORM)"=="x86". 4390: 57 50 38 31 4c 49 42 50 41 54 48 20 3d 20 24 28 WP81LIBPATH =$(
43a0: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36  PROGRAMFILES_X86
43b0: 29 5c 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20  )\Windows Phone
43c0: 4b 69 74 73 5c 38 2e 31 5c 6c 69 62 5c 78 38 36  Kits\8.1\lib\x86
43d0: 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c 41 54  .!ELSEIF "$(PLAT 43e0: 46 4f 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 57 50 FORM)"=="ARM".WP 43f0: 38 31 4c 49 42 50 41 54 48 20 3d 20 24 28 50 52 81LIBPATH =$(PR
4400: 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c  OGRAMFILES_X86)\
4410: 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69  Windows Phone Ki
4420: 74 73 5c 38 2e 31 5c 6c 69 62 5c 41 52 4d 0a 21  ts\8.1\lib\ARM.!
4430: 45 4c 53 45 0a 57 50 38 31 4c 49 42 50 41 54 48  ELSE.WP81LIBPATH
4440: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45   = $(PROGRAMFILE 4450: 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50 S_X86)\Windows P 4460: 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69 hone Kits\8.1\li 4470: 62 5c 78 38 36 0a 21 45 4e 44 49 46 0a 21 45 4e b\x86.!ENDIF.!EN 4480: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 DIF.!ENDIF..# Wh 4490: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 44a0: 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 38 Windows Phone 8 44b0: 2e 31 2c 20 73 6f 6d 65 20 65 78 74 72 61 20 6c .1, some extra l 44c0: 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 0a 23 20 inker options.# 44d0: 61 72 65 20 61 6c 73 6f 20 72 65 71 75 69 72 65 are also require 44e0: 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 57 d..#.!IF$(USE_W
44f0: 50 38 31 5f 4f 50 54 53 29 21 3d 30 0a 21 49 46  P81_OPTS)!=0.!IF
4500: 44 45 46 20 57 50 38 31 4c 49 42 50 41 54 48 0a  DEF WP81LIBPATH.
4510: 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c  LTLINKOPTS = $(L 4520: 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 TLINKOPTS) "/LIB 4530: 50 41 54 48 3a 24 28 57 50 38 31 4c 49 42 50 41 PATH:$(WP81LIBPA
4540: 54 48 29 22 0a 21 45 4e 44 49 46 0a 4c 54 4c 49  TH)".!ENDIF.LTLI
4550: 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e  NKOPTS = $(LTLIN 4560: 4b 4f 50 54 53 29 20 2f 44 59 4e 41 4d 49 43 42 KOPTS) /DYNAMICB 4570: 41 53 45 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d ASE.LTLINKOPTS = 4580: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 57$(LTLINKOPTS) W
4590: 69 6e 64 6f 77 73 50 68 6f 6e 65 43 6f 72 65 2e  indowsPhoneCore.
45a0: 6c 69 62 20 52 75 6e 74 69 6d 65 4f 62 6a 65 63  lib RuntimeObjec
45b0: 74 2e 6c 69 62 20 50 68 6f 6e 65 41 70 70 4d 6f  t.lib PhoneAppMo
45c0: 64 65 6c 48 6f 73 74 2e 6c 69 62 0a 4c 54 4c 49  delHost.lib.LTLI
45d0: 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e  NKOPTS = $(LTLIN 45e0: 4b 4f 50 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c KOPTS) /NODEFAUL 45f0: 54 4c 49 42 3a 6b 65 72 6e 65 6c 33 32 2e 6c 69 TLIB:kernel32.li 4600: 62 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a b /NODEFAULTLIB: 4610: 6f 6c 65 33 32 2e 6c 69 62 0a 21 45 4e 44 49 46 ole32.lib.!ENDIF 4620: 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 ..# If either de 4630: 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f bugging or symbo 4640: 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 ls are enabled, 4650: 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 enable PDBs..#.! 4660: 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c IF$(DEBUG)>1 ||
4670: 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c   $(SYMBOLS)!=0.L 4680: 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 0a DFLAGS = /DEBUG. 4690: 21 45 4e 44 49 46 0a 0a 23 20 53 74 61 72 74 20 !ENDIF..# Start 46a0: 77 69 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c with the Tcl rel 46b0: 61 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 ated linker opti 46c0: 6f 6e 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f ons..#.!IF$(NO_
46d0: 54 43 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54  TCL)==0.LTLIBPAT
46e0: 48 53 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28  HS = /LIBPATH:$( 46f0: 54 43 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 TCLLIBDIR).LTLIB 4700: 53 20 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 S =$(LIBTCL).!E
4710: 4e 44 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73  NDIF..# If ICU s
4720: 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65  upport is enable
4730: 64 2c 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65  d, add the linke
4740: 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74  r options for it
4750: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43  ..#.!IF $(USE_IC 4760: 55 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 U)!=0.LTLIBPATHS 4770: 20 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 =$(LTLIBPATHS)
4780: 20 2f 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c   /LIBPATH:$(ICUL 4790: 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 IBDIR).LTLIBS = 47a0: 24 28 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49$(LTLIBS) $(LIBI 47b0: 43 55 29 0a 21 45 4e 44 49 46 0a 0a 23 20 6e 61 CU).!ENDIF..# na 47c0: 77 6b 20 63 6f 6d 70 61 74 69 62 6c 65 20 61 77 wk compatible aw 47d0: 6b 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 41 57 k..#.!IFNDEF NAW 47e0: 4b 0a 4e 41 57 4b 20 3d 20 67 61 77 6b 2e 65 78 K.NAWK = gawk.ex 47f0: 65 0a 21 45 4e 44 49 46 0a 0a 23 20 59 6f 75 20 e.!ENDIF..# You 4800: 73 68 6f 75 6c 64 20 6e 6f 74 20 68 61 76 65 20 should not have 4810: 74 6f 20 63 68 61 6e 67 65 20 61 6e 79 74 68 69 to change anythi 4820: 6e 67 20 62 65 6c 6f 77 20 74 68 69 73 20 6c 69 ng below this li 4830: 6e 65 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 ne.############# 4840: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 4850: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 4860: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 4870: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 4880: 23 23 0a 0a 23 20 4f 62 6a 65 63 74 20 66 69 6c ##..# Object fil 4890: 65 73 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 es for the SQLit 48a0: 65 20 6c 69 62 72 61 72 79 20 28 6e 6f 6e 2d 61 e library (non-a 48b0: 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a 23 0a malgamation)..#. 48c0: 4c 49 42 4f 42 4a 53 30 20 3d 20 76 64 62 65 2e LIBOBJS0 = vdbe. 48d0: 6c 6f 20 70 61 72 73 65 2e 6c 6f 20 61 6c 74 65 lo parse.lo alte 48e0: 72 2e 6c 6f 20 61 6e 61 6c 79 7a 65 2e 6c 6f 20 r.lo analyze.lo 48f0: 61 74 74 61 63 68 2e 6c 6f 20 61 75 74 68 2e 6c attach.lo auth.l 4900: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 62 61 63 o \. bac 4910: 6b 75 70 2e 6c 6f 20 62 69 74 76 65 63 2e 6c 6f kup.lo bitvec.lo 4920: 20 62 74 6d 75 74 65 78 2e 6c 6f 20 62 74 72 65 btmutex.lo btre 4930: 65 2e 6c 6f 20 62 75 69 6c 64 2e 6c 6f 20 5c 0a e.lo build.lo \. 4940: 20 20 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63 callbac 4950: 6b 2e 6c 6f 20 63 6f 6d 70 6c 65 74 65 2e 6c 6f k.lo complete.lo 4960: 20 63 74 69 6d 65 2e 6c 6f 20 64 61 74 65 2e 6c ctime.lo date.l 4970: 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20 20 o delete.lo \. 4980: 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f 20 66 expr.lo f 4990: 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f 20 ault.lo fkey.lo 49a0: 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 33 2e \. fts3. 49b0: 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 20 66 lo fts3_aux.lo f 49c0: 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 73 33 ts3_expr.lo fts3 49d0: 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f 69 63 _hash.lo fts3_ic 49e0: 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 u.lo \. 49f0: 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 20 66 fts3_porter.lo f 4a00: 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 20 66 ts3_snippet.lo f 4a10: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f ts3_tokenizer.lo 4a20: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 fts3_tokenizer1 4a30: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 .lo \. f 4a40: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 ts3_tokenize_vta 4a50: 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 b.lo fts3_unicod 4a60: 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 e.lo fts3_unicod 4a70: 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 74 65 e2.lo fts3_write 4a80: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 .lo \. f 4a90: 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61 6c 2e 6c 6f unc.lo global.lo 4aa0: 20 68 61 73 68 2e 6c 6f 20 5c 0a 20 20 20 20 20 hash.lo \. 4ab0: 20 20 20 20 69 63 75 2e 6c 6f 20 69 6e 73 65 72 icu.lo inser 4ac0: 74 2e 6c 6f 20 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 t.lo journal.lo 4ad0: 6c 65 67 61 63 79 2e 6c 6f 20 6c 6f 61 64 65 78 legacy.lo loadex 4ae0: 74 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 t.lo \. 4af0: 6d 61 69 6e 2e 6c 6f 20 6d 61 6c 6c 6f 63 2e 6c main.lo malloc.l 4b00: 6f 20 6d 65 6d 30 2e 6c 6f 20 6d 65 6d 31 2e 6c o mem0.lo mem1.l 4b10: 6f 20 6d 65 6d 32 2e 6c 6f 20 6d 65 6d 33 2e 6c o mem2.lo mem3.l 4b20: 6f 20 6d 65 6d 35 2e 6c 6f 20 5c 0a 20 20 20 20 o mem5.lo \. 4b30: 20 20 20 20 20 6d 65 6d 6a 6f 75 72 6e 61 6c 2e memjournal. 4b40: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 75 lo \. mu 4b50: 74 65 78 2e 6c 6f 20 6d 75 74 65 78 5f 6e 6f 6f tex.lo mutex_noo 4b60: 70 2e 6c 6f 20 6d 75 74 65 78 5f 75 6e 69 78 2e p.lo mutex_unix. 4b70: 6c 6f 20 6d 75 74 65 78 5f 77 33 32 2e 6c 6f 20 lo mutex_w32.lo 4b80: 5c 0a 20 20 20 20 20 20 20 20 20 6e 6f 74 69 66 \. notif 4b90: 79 2e 6c 6f 20 6f 70 63 6f 64 65 73 2e 6c 6f 20 y.lo opcodes.lo 4ba0: 6f 73 2e 6c 6f 20 6f 73 5f 75 6e 69 78 2e 6c 6f os.lo os_unix.lo 4bb0: 20 6f 73 5f 77 69 6e 2e 6c 6f 20 5c 0a 20 20 20 os_win.lo \. 4bc0: 20 20 20 20 20 20 70 61 67 65 72 2e 6c 6f 20 70 pager.lo p 4bd0: 63 61 63 68 65 2e 6c 6f 20 70 63 61 63 68 65 31 cache.lo pcache1 4be0: 2e 6c 6f 20 70 72 61 67 6d 61 2e 6c 6f 20 70 72 .lo pragma.lo pr 4bf0: 65 70 61 72 65 2e 6c 6f 20 70 72 69 6e 74 66 2e epare.lo printf. 4c00: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 72 61 lo \. ra 4c10: 6e 64 6f 6d 2e 6c 6f 20 72 65 73 6f 6c 76 65 2e ndom.lo resolve. 4c20: 6c 6f 20 72 6f 77 73 65 74 2e 6c 6f 20 72 74 72 lo rowset.lo rtr 4c30: 65 65 2e 6c 6f 20 73 65 6c 65 63 74 2e 6c 6f 20 ee.lo select.lo 4c40: 73 74 61 74 75 73 2e 6c 6f 20 5c 0a 20 20 20 20 status.lo \. 4c50: 20 20 20 20 20 74 61 62 6c 65 2e 6c 6f 20 74 68 table.lo th 4c60: 72 65 61 64 73 2e 6c 6f 20 74 6f 6b 65 6e 69 7a reads.lo tokeniz 4c70: 65 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20 e.lo trigger.lo 4c80: 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 74 \. updat 4c90: 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63 e.lo util.lo vac 4ca0: 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 uum.lo \. 4cb0: 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62 vdbeapi.lo vdb 4cc0: 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62 eaux.lo vdbeblob 4cd0: 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76 .lo vdbemem.lo v 4ce0: 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20 dbesort.lo \. 4cf0: 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e vdbetrace. 4d00: 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72 lo wal.lo walker 4d10: 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 75 74 66 .lo where.lo utf 4d20: 2e 6c 6f 20 76 74 61 62 2e 6c 6f 0a 0a 23 20 4f .lo vtab.lo..# O 4d30: 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 bject files for 4d40: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e the amalgamation 4d50: 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20 73 ..#.LIBOBJS1 = s 4d60: 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65 74 qlite3.lo..# Det 4d70: 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c 20 ermine the real 4d80: 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a 20 value of LIBOBJ 4d90: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63 6f based on the 'co 4da0: 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74 0a nfigure' script. 4db0: 23 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c #.!IF$(USE_AMAL
4dc0: 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42  GAMATION)==0.LIB
4dd0: 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30  OBJ = $(LIBOBJS0 4de0: 29 0a 21 45 4c 53 45 0a 4c 49 42 4f 42 4a 20 3d ).!ELSE.LIBOBJ = 4df0: 20 24 28 4c 49 42 4f 42 4a 53 31 29 0a 21 45 4e$(LIBOBJS1).!EN
4e00: 44 49 46 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65  DIF..# Determine
4e10: 20 69 66 20 65 6d 62 65 64 64 65 64 20 72 65 73   if embedded res
4e20: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f  ource compilatio
4e30: 6e 20 61 6e 64 20 75 73 61 67 65 20 61 72 65 20  n and usage are
4e40: 65 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24  enabled..#.!IF $4e50: 28 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 (USE_RC)!=0.LIBR 4e60: 45 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 ESOBJS = sqlite3 4e70: 72 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 res.lo.!ELSE.LIB 4e80: 52 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 RESOBJS =.!ENDIF 4e90: 0a 0a 23 20 41 6c 6c 20 6f 66 20 74 68 65 20 73 ..# All of the s 4ea0: 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 ource code files 4eb0: 2e 0a 23 0a 53 52 43 31 20 3d 20 5c 0a 20 20 24 ..#.SRC1 = \.$
4ec0: 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e  (TOP)\src\alter.
4ed0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 4ee0: 5c 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 \analyze.c \.$
4ef0: 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68  (TOP)\src\attach
4f00: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 4f10: 63 5c 61 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 c\auth.c \.$(T
4f20: 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63  OP)\src\backup.c
4f30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 4f40: 62 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 bitvec.c \.$(T
4f50: 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e  OP)\src\btmutex.
4f60: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 4f70: 5c 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 \btree.c \.$(T
4f80: 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 20  OP)\src\btree.h
4f90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62  \.  $(TOP)\src\b 4fa0: 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 treeInt.h \.$(
4fb0: 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63  TOP)\src\build.c
4fc0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 4fd0: 63 61 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24 callback.c \.$
4fe0: 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65  (TOP)\src\comple
4ff0: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\ 5000: 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 src\ctime.c \. 5010: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e$(TOP)\src\date.
5020: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 5030: 5c 64 65 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28 \delete.c \.$(
5040: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20  TOP)\src\expr.c
5050: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 66  \.  $(TOP)\src\f 5060: 61 75 6c 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 ault.c \.$(TOP
5070: 29 5c 73 72 63 5c 66 6b 65 79 2e 63 20 5c 0a 20  )\src\fkey.c \.
5080: 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63   $(TOP)\src\func 5090: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
50a0: 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c 0a 20 20 24  c\global.c \.  $50b0: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 (TOP)\src\hash.c 50c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
50d0: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 50e0: 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c )\src\hwtime.h \ 50f0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e .$(TOP)\src\in
5100: 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sert.c \.  $(TOP 5110: 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e 63 20 )\src\journal.c 5120: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c \.$(TOP)\src\l
5130: 65 67 61 63 79 2e 63 20 5c 0a 20 20 24 28 54 4f  egacy.c \.  $(TO 5140: 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 P)\src\loadext.c 5150: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
5160: 6d 61 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50  main.c \.  $(TOP 5170: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 5c )\src\malloc.c \ 5180: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 .$(TOP)\src\me
5190: 6d 30 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  m0.c \.  $(TOP)\ 51a0: 73 72 63 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20 24 src\mem1.c \.$
51b0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63  (TOP)\src\mem2.c
51c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 51d0: 6d 65 6d 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 mem3.c \.$(TOP
51e0: 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a 20  )\src\mem5.c \.
51f0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a   $(TOP)\src\memj 5200: 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 ournal.c \.$(T
5210: 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 20 5c  OP)\src\msvc.h \
5220: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75  .  $(TOP)\src\mu 5230: 74 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 tex.c \.$(TOP)
5240: 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20  \src\mutex.h \.
5250: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute 5260: 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 54 x_noop.c \.$(T
5270: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e  OP)\src\mutex_un
5280: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ix.c \.  $(TOP)\ 5290: 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 src\mutex_w32.c 52a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e \.$(TOP)\src\n
52b0: 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 28 54 4f  otify.c \.  $(TO 52c0: 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 P)\src\os.c \. 52d0: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20$(TOP)\src\os.h
52e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  \.  $(TOP)\src\o 52f0: 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 24 s_common.h \.$
5300: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65 74  (TOP)\src\os_set
5310: 75 70 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  up.h \.  $(TOP)\ 5320: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a src\os_unix.c \. 5330: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f$(TOP)\src\os_
5340: 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  win.c \.  $(TOP) 5350: 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 0a 53 52 \src\os_win.h.SR 5360: 43 32 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c C2 = \.$(TOP)\
5370: 73 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a 20 20  src\pager.c \.
5380: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72  $(TOP)\src\pager 5390: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .h \.$(TOP)\sr
53a0: 63 5c 70 61 72 73 65 2e 79 20 5c 0a 20 20 24 28  c\parse.y \.  $( 53b0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e TOP)\src\pcache. 53c0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
53d0: 5c 70 63 61 63 68 65 2e 68 20 5c 0a 20 20 24 28  \pcache.h \.  $( 53e0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 TOP)\src\pcache1 53f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
5400: 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24  c\pragma.c \.  $5410: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 (TOP)\src\prepar 5420: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
5430: 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20  rc\printf.c \.
5440: 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f  $(TOP)\src\rando 5450: 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 m.c \.$(TOP)\s
5460: 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20  rc\resolve.c \.
5470: 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73   $(TOP)\src\rows 5480: 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c et.c \.$(TOP)\
5490: 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20  src\select.c \.
54a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74   $(TOP)\src\stat 54b0: 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c us.c \.$(TOP)\
54c0: 73 72 63 5c 73 68 65 6c 6c 2e 63 20 5c 0a 20 20  src\shell.c \.
54d0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74  $(TOP)\src\sqlit 54e0: 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28 54 4f 50 e.h.in \.$(TOP
54f0: 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74  )\src\sqlite3ext
5500: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 5510: 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a c\sqliteInt.h \. 5520: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c$(TOP)\src\sql
5530: 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20 24  iteLimit.h \.  $5540: 28 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e (TOP)\src\table. 5550: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
5560: 5c 74 68 72 65 61 64 73 2e 63 20 5c 0a 20 20 24  \threads.c \.  $5570: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c (TOP)\src\tclsql 5580: 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ite.c \.$(TOP)
5590: 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20  \src\tokenize.c
55a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 55b0: 72 69 67 67 65 72 2e 63 20 5c 0a 20 20 24 28 54 rigger.c \.$(T
55c0: 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 20 5c 0a  OP)\src\utf.c \.
55d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 64    $(TOP)\src\upd 55e0: 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ate.c \.$(TOP)
55f0: 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20  \src\util.c \.
5600: 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75  $(TOP)\src\vacuu 5610: 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 m.c \.$(TOP)\s
5620: 72 63 5c 76 64 62 65 2e 63 20 5c 0a 20 20 24 28  rc\vdbe.c \.  $( 5630: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 68 20 TOP)\src\vdbe.h 5640: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
5650: 64 62 65 61 70 69 2e 63 20 5c 0a 20 20 24 28 54  dbeapi.c \.  $(T 5660: 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e OP)\src\vdbeaux. 5670: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
5680: 5c 76 64 62 65 62 6c 6f 62 2e 63 20 5c 0a 20 20  \vdbeblob.c \.
5690: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d  $(TOP)\src\vdbem 56a0: 65 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c em.c \.$(TOP)\
56b0: 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 20 5c  src\vdbesort.c \
56c0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd 56d0: 62 65 74 72 61 63 65 2e 63 20 5c 0a 20 20 24 28 betrace.c \.$(
56e0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74  TOP)\src\vdbeInt
56f0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 5700: 63 5c 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 c\vtab.c \.$(T
5710: 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a  OP)\src\wal.c \.
5720: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c    $(TOP)\src\wal 5730: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .h \.$(TOP)\sr
5740: 63 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20 20 24  c\walker.c \.  $5750: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. 5760: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
5770: 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 53  \whereInt.h..# S
5780: 6f 75 72 63 65 20 63 6f 64 65 20 66 6f 72 20 65  ource code for e
5790: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 53 52 43 33  xtensions.#.SRC3
57a0: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78   = \.  $(TOP)\ex 57b0: 74 5c 66 74 73 31 5c 66 74 73 31 2e 63 20 5c 0a t\fts1\fts1.c \. 57c0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
57d0: 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54  1\fts1.h \.  $(T 57e0: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 OP)\ext\fts1\fts 57f0: 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 1_hash.c \.$(T
5800: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
5810: 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54  1_hash.h \.  $(T 5820: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 OP)\ext\fts1\fts 5830: 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 1_porter.c \.$
5840: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66  (TOP)\ext\fts1\f
5850: 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20  ts1_tokenizer.h
5860: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 5870: 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a ts1\fts1_tokeniz 5880: 65 72 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 er1.c \.$(TOP)
5890: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63  \ext\fts2\fts2.c
58a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 58b0: 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20 20 fts2\fts2.h \. 58c0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
58d0: 66 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20  fts2_hash.c \.
58e0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 58f0: 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 20 fts2_hash.h \. 5900: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
5910: 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20 24  fts2_icu.c \.  $5920: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 (TOP)\ext\fts2\f 5930: 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 ts2_porter.c \. 5940: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
5950: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
5960: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 5970: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e \fts2\fts2_token 5980: 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 izer.c \.$(TOP
5990: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
59a0: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 53 52 43  tokenizer1.c.SRC
59b0: 34 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  4 = \.  $(TOP)\e 59c0: 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 5c xt\fts3\fts3.c \ 59d0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
59e0: 73 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24 28  s3\fts3.h \.  $( 59f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft 5a00: 73 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f s3Int.h \.$(TO
5a10: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
5a20: 5f 61 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _aux.c \.  $(TOP 5a30: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 5a40: 65 78 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 expr.c \.$(TOP
5a50: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
5a60: 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50  hash.c \.  $(TOP 5a70: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 5a80: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 hash.h \.$(TOP
5a90: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
5aa0: 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  icu.c \.  $(TOP) 5ab0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 \ext\fts3\fts3_p 5ac0: 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f orter.c \.$(TO
5ad0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
5ae0: 5f 73 6e 69 70 70 65 74 2e 63 20 5c 0a 20 20 24  _snippet.c \.  $5af0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 5b00: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 ts3_tokenizer.h 5b10: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
5b20: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a  ts3\fts3_tokeniz
5b30: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\ 5b40: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f ext\fts3\fts3_to 5b50: 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20 24 kenizer1.c \.$
5b60: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
5b70: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61  ts3_tokenize_vta
5b80: 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  b.c \.  $(TOP)\e 5b90: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 xt\fts3\fts3_uni 5ba0: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 code.c \.$(TOP
5bb0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
5bc0: 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24  unicode2.c \.  $5bd0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 5be0: 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 20 ts3_write.c \. 5bf0: 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73$(TOP)\ext\icu\s
5c00: 71 6c 69 74 65 69 63 75 2e 68 20 5c 0a 20 20 24  qliteicu.h \.  $5c10: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 (TOP)\ext\icu\ic 5c20: 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 u.c \.$(TOP)\e
5c30: 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 68  xt\rtree\rtree.h
5c40: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 5c50: 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a 0a rtree\rtree.c... 5c60: 23 20 47 65 6e 65 72 61 74 65 64 20 73 6f 75 72 # Generated sour 5c70: 63 65 20 63 6f 64 65 20 66 69 6c 65 73 0a 23 0a ce code files.#. 5c80: 53 52 43 35 20 3d 20 5c 0a 20 20 6b 65 79 77 6f SRC5 = \. keywo 5c90: 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 6f 70 63 rdhash.h \. opc 5ca0: 6f 64 65 73 2e 63 20 5c 0a 20 20 6f 70 63 6f 64 odes.c \. opcod 5cb0: 65 73 2e 68 20 5c 0a 20 20 70 61 72 73 65 2e 63 es.h \. parse.c 5cc0: 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 \. parse.h \. 5cd0: 20 73 71 6c 69 74 65 33 2e 68 0a 0a 23 20 41 6c sqlite3.h..# Al 5ce0: 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 l source code fi 5cf0: 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24 28 53 les..#.SRC =$(S
5d00: 52 43 31 29 20 24 28 53 52 43 32 29 20 24 28 53  RC1) $(SRC2)$(S
5d10: 52 43 33 29 20 24 28 53 52 43 34 29 20 24 28 53  RC3) $(SRC4)$(S
5d20: 52 43 35 29 0a 0a 23 20 53 6f 75 72 63 65 20 63  RC5)..# Source c
5d30: 6f 64 65 20 74 6f 20 74 68 65 20 74 65 73 74 20  ode to the test
5d40: 66 69 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52 43  files..#.TESTSRC
5d50: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72   = \.  $(TOP)\sr 5d60: 63 5c 74 65 73 74 31 2e 63 20 5c 0a 20 20 24 28 c\test1.c \.$(
5d70: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 32 2e 63  TOP)\src\test2.c
5d80: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 5d90: 74 65 73 74 33 2e 63 20 5c 0a 20 20 24 28 54 4f test3.c \.$(TO
5da0: 50 29 5c 73 72 63 5c 74 65 73 74 34 2e 63 20 5c  P)\src\test4.c \
5db0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 5dc0: 73 74 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 st5.c \.$(TOP)
5dd0: 5c 73 72 63 5c 74 65 73 74 36 2e 63 20 5c 0a 20  \src\test6.c \.
5de0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 5df0: 37 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 7.c \.$(TOP)\s
5e00: 72 63 5c 74 65 73 74 38 2e 63 20 5c 0a 20 20 24  rc\test8.c \.  $5e10: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 39 2e (TOP)\src\test9. 5e20: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
5e30: 5c 74 65 73 74 5f 61 75 74 6f 65 78 74 2e 63 20  \test_autoext.c
5e40: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 5e50: 65 73 74 5f 61 73 79 6e 63 2e 63 20 5c 0a 20 20 est_async.c \. 5e60: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
5e70: 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20 24 28 54  backup.c \.  $(T 5e80: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 6c 6f OP)\src\test_blo 5e90: 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 b.c \.$(TOP)\s
5ea0: 72 63 5c 74 65 73 74 5f 62 74 72 65 65 2e 63 20  rc\test_btree.c
5eb0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 5ec0: 65 73 74 5f 63 6f 6e 66 69 67 2e 63 20 5c 0a 20 est_config.c \. 5ed0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
5ee0: 5f 64 65 6d 6f 76 66 73 2e 63 20 5c 0a 20 20 24  _demovfs.c \.  $5ef0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 64 (TOP)\src\test_d 5f00: 65 76 73 79 6d 2e 63 20 5c 0a 20 20 24 28 54 4f evsym.c \.$(TO
5f10: 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 73 2e 63  P)\src\test_fs.c
5f20: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 5f30: 74 65 73 74 5f 66 75 6e 63 2e 63 20 5c 0a 20 20 test_func.c \. 5f40: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
5f50: 68 65 78 69 6f 2e 63 20 5c 0a 20 20 24 28 54 4f  hexio.c \.  $(TO 5f60: 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e 69 74 P)\src\test_init 5f70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
5f80: 63 5c 74 65 73 74 5f 69 6e 74 61 72 72 61 79 2e  c\test_intarray.
5f90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 5fa0: 5c 74 65 73 74 5f 6a 6f 75 72 6e 61 6c 2e 63 20 \test_journal.c 5fb0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
5fc0: 65 73 74 5f 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20  est_malloc.c \.
5fd0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 5fe0: 5f 6d 75 6c 74 69 70 6c 65 78 2e 63 20 5c 0a 20 _multiplex.c \. 5ff0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
6000: 5f 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24 28 54  _mutex.c \.  $(T 6010: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 6e 65 OP)\src\test_one 6020: 66 69 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 file.c \.$(TOP
6030: 29 5c 73 72 63 5c 74 65 73 74 5f 6f 73 69 6e 73  )\src\test_osins
6040: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s 6050: 72 63 5c 74 65 73 74 5f 70 63 61 63 68 65 2e 63 rc\test_pcache.c 6060: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
6070: 74 65 73 74 5f 71 75 6f 74 61 2e 63 20 5c 0a 20  test_quota.c \.
6080: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 6090: 5f 72 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 _rtree.c \.$(T
60a0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 63 68  OP)\src\test_sch
60b0: 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ema.c \.  $(TOP) 60c0: 5c 73 72 63 5c 74 65 73 74 5f 73 65 72 76 65 72 \src\test_server 60d0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
60e0: 63 5c 74 65 73 74 5f 73 75 70 65 72 6c 6f 63 6b  c\test_superlock
60f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 6100: 63 5c 74 65 73 74 5f 73 79 73 63 61 6c 6c 2e 63 c\test_syscall.c 6110: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
6120: 74 65 73 74 5f 73 74 61 74 2e 63 20 5c 0a 20 20  test_stat.c \.
6130: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 6140: 74 63 6c 76 61 72 2e 63 20 5c 0a 20 20 24 28 54 tclvar.c \.$(T
6150: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 74 68 72  OP)\src\test_thr
6160: 65 61 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ead.c \.  $(TOP) 6170: 5c 73 72 63 5c 74 65 73 74 5f 76 66 73 2e 63 20 \src\test_vfs.c 6180: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
6190: 65 73 74 5f 77 73 64 2e 63 20 5c 0a 20 20 24 28  est_wsd.c \.  $( 61a0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft 61b0: 73 33 5f 74 65 72 6d 2e 63 20 5c 0a 20 20 24 28 s3_term.c \.$(
61c0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
61d0: 73 33 5f 74 65 73 74 2e 63 0a 0a 23 20 53 74 61  s3_test.c..# Sta
61e0: 74 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20 65  tically linked e
61f0: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 54 45 53 54  xtensions.#.TEST
6200: 45 58 54 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29  EXT = \.  $(TOP) 6210: 5c 65 78 74 5c 6d 69 73 63 5c 61 6d 61 74 63 68 \ext\misc\amatch 6220: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
6230: 74 5c 6d 69 73 63 5c 63 6c 6f 73 75 72 65 2e 63  t\misc\closure.c
6240: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 6250: 6d 69 73 63 5c 65 76 61 6c 2e 63 20 5c 0a 20 20 misc\eval.c \. 6260: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
6270: 66 69 6c 65 69 6f 2e 63 20 5c 0a 20 20 24 28 54  fileio.c \.  $(T 6280: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 66 75 7a OP)\ext\misc\fuz 6290: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 zer.c \.$(TOP)
62a0: 5c 65 78 74 5c 6d 69 73 63 5c 69 65 65 65 37 35  \ext\misc\ieee75
62b0: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  4.c \.  $(TOP)\e 62c0: 78 74 5c 6d 69 73 63 5c 6e 65 78 74 63 68 61 72 xt\misc\nextchar 62d0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
62e0: 74 5c 6d 69 73 63 5c 70 65 72 63 65 6e 74 69 6c  t\misc\percentil
62f0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  e.c \.  $(TOP)\e 6300: 78 74 5c 6d 69 73 63 5c 72 65 67 65 78 70 2e 63 xt\misc\regexp.c 6310: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
6320: 6d 69 73 63 5c 73 70 65 6c 6c 66 69 78 2e 63 20  misc\spellfix.c
6330: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d  \.  $(TOP)\ext\m 6340: 69 73 63 5c 74 6f 74 79 70 65 2e 63 20 5c 0a 20 isc\totype.c \. 6350: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63$(TOP)\ext\misc
6360: 5c 77 68 6f 6c 65 6e 75 6d 62 65 72 2e 63 0a 0a  \wholenumber.c..
6370: 0a 23 20 53 6f 75 72 63 65 20 63 6f 64 65 20 74  .# Source code t
6380: 6f 20 74 68 65 20 6c 69 62 72 61 72 79 20 66 69  o the library fi
6390: 6c 65 73 20 6e 65 65 64 65 64 20 62 79 20 74 68  les needed by th
63a0: 65 20 74 65 73 74 20 66 69 78 74 75 72 65 0a 23  e test fixture.#
63b0: 0a 54 45 53 54 53 52 43 32 20 3d 20 5c 0a 20 20  .TESTSRC2 = \.
63c0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63  $(TOP)\src\attac 63d0: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 h.c \.$(TOP)\s
63e0: 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20  rc\backup.c \.
63f0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65  $(TOP)\src\bitve 6400: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 c.c \.$(TOP)\s
6410: 72 63 5c 62 74 72 65 65 2e 63 20 5c 0a 20 20 24  rc\btree.c \.  $6420: 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e (TOP)\src\build. 6430: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
6440: 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54  \ctime.c \.  $(T 6450: 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c OP)\src\date.c \ 6460: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 .$(TOP)\src\ex
6470: 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pr.c \.  $(TOP)\ 6480: 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a 20 20 24 src\func.c \.$
6490: 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74  (TOP)\src\insert
64a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 64b0: 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f c\wal.c \.$(TO
64c0: 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 5c 0a  P)\src\main.c \.
64d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem 64e0: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 5.c \.$(TOP)\s
64f0: 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f  rc\os.c \.  $(TO 6500: 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 P)\src\os_unix.c 6510: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
6520: 6f 73 5f 77 69 6e 2e 63 20 5c 0a 20 20 24 28 54  os_win.c \.  $(T 6530: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 OP)\src\pager.c 6540: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 \.$(TOP)\src\p
6550: 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f  ragma.c \.  $(TO 6560: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 P)\src\prepare.c 6570: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
6580: 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54  printf.c \.  $(T 6590: 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 OP)\src\random.c 65a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
65b0: 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54  pcache.c \.  $(T 65c0: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e OP)\src\pcache1. 65d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
65e0: 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28  \select.c \.  $( 65f0: 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a TOP)\src\tokeniz 6600: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
6610: 72 63 5c 75 74 66 2e 63 20 5c 0a 20 20 24 28 54  rc\utf.c \.  $(T 6620: 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c OP)\src\util.c \ 6630: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 .$(TOP)\src\vd
6640: 62 65 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f  beapi.c \.  $(TO 6650: 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 P)\src\vdbeaux.c 6660: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
6670: 76 64 62 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  vdbe.c \.  $(TOP 6680: 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 )\src\vdbemem.c 6690: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
66a0: 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28  dbesort.c \.  $( 66b0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 TOP)\src\vdbetra 66c0: 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ce.c \.$(TOP)\
66d0: 73 72 63 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20  src\where.c \.
66e0: 70 61 72 73 65 2e 63 20 5c 0a 20 20 24 28 54 4f  parse.c \.  $(TO 66f0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 6700: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
6710: 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e  t\fts3\fts3_aux.
6720: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 6730: 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e \fts3\fts3_expr. 6740: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
6750: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e  \fts3\fts3_token
6760: 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50  izer.c \.  $(TOP 6770: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 6780: 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 tokenize_vtab.c 6790: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
67a0: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65  ts3\fts3_unicode
67b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 67c0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 t\fts3\fts3_unic 67d0: 6f 64 65 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 ode2.c \.$(TOP
67e0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
67f0: 77 72 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f  write.c \.  $(TO 6800: 50 29 5c 65 78 74 5c 61 73 79 6e 63 5c 73 71 6c P)\ext\async\sql 6810: 69 74 65 33 61 73 79 6e 63 2e 63 0a 0a 23 20 48 ite3async.c..# H 6820: 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 eader files used 6830: 20 62 79 20 61 6c 6c 20 6c 69 62 72 61 72 79 20 by all library 6840: 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 0a 23 0a source files..#. 6850: 48 44 52 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 HDR = \.$(TOP
6860: 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 20 5c 0a  )\src\btree.h \.
6870: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74     $(TOP)\src\bt 6880: 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 reeInt.h \.$(
6890: 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 20  TOP)\src\hash.h
68a0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\ 68b0: 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 20 6b 65 hwtime.h \. ke 68c0: 79 77 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 ywordhash.h \. 68d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63$(TOP)\src\msvc
68e0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s 68f0: 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 rc\mutex.h \. 6900: 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 opcodes.h \.$
6910: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c  (TOP)\src\os.h \
6920: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  .   $(TOP)\src\o 6930: 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 s_common.h \. 6940: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65$(TOP)\src\os_se
6950: 74 75 70 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  tup.h \.   $(TOP 6960: 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 20 5c )\src\os_win.h \ 6970: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 .$(TOP)\src\p
6980: 61 67 65 72 2e 68 20 5c 0a 20 20 20 24 28 54 4f  ager.h \.   $(TO 6990: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 P)\src\pcache.h 69a0: 5c 0a 20 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 \. parse.h \. 69b0: 20 20 73 71 6c 69 74 65 33 2e 68 20 5c 0a 20 20 sqlite3.h \. 69c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69$(TOP)\src\sqli
69d0: 74 65 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28  te3ext.h \.   $( 69e0: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 TOP)\src\sqliteI 69f0: 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 nt.h \.$(TOP)
6a00: 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74  \src\sqliteLimit
6a10: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s 6a20: 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 20 24 rc\vdbe.h \.$
6a30: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e  (TOP)\src\vdbeIn
6a40: 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  t.h \.   $(TOP)\ 6a50: 73 72 63 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a src\whereInt.h.. 6a60: 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 # Header files u 6a70: 73 65 64 20 62 79 20 65 78 74 65 6e 73 69 6f 6e sed by extension 6a80: 73 0a 23 0a 45 58 54 48 44 52 20 3d 20 24 28 45 s.#.EXTHDR =$(E
6a90: 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50  XTHDR) \.  $(TOP 6aa0: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e )\ext\fts1\fts1. 6ab0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
6ac0: 5c 66 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e  \fts1\fts1_hash.
6ad0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 6ae0: 5c 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e \fts1\fts1_token 6af0: 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 izer.h.EXTHDR = 6b00: 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28$(EXTHDR) \.  $( 6b10: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 6b20: 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c s2.h \.$(TOP)\
6b30: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61  ext\fts2\fts2_ha
6b40: 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.h \.  $(TOP)\ 6b50: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f ext\fts2\fts2_to 6b60: 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 kenizer.h.EXTHDR 6b70: 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 =$(EXTHDR) \.
6b80: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 6b90: 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f \fts3.h \.$(TO
6ba0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
6bb0: 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  Int.h \.  $(TOP) 6bc0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 \ext\fts3\fts3_h 6bd0: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ash.h \.$(TOP)
6be0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
6bf0: 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44  okenizer.h.EXTHD
6c00: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \. 6c10: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72$(TOP)\ext\rtr
6c20: 65 65 5c 72 74 72 65 65 2e 68 0a 45 58 54 48 44  ee\rtree.h.EXTHD
6c30: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \. 6c40: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75$(TOP)\ext\icu
6c50: 5c 73 71 6c 69 74 65 69 63 75 2e 68 0a 45 58 54  \sqliteicu.h.EXT
6c60: 48 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20  HDR = $(EXTHDR) 6c70: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 \.$(TOP)\ext\r
6c80: 74 72 65 65 5c 73 71 6c 69 74 65 33 72 74 72 65  tree\sqlite3rtre
6c90: 65 2e 68 0a 0a 23 20 54 68 69 73 20 69 73 20 74  e.h..# This is t
6ca0: 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 66  he default Makef
6cb0: 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68 65  ile target.  The
6cc0: 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64 20   objects listed
6cd0: 68 65 72 65 0a 23 20 61 72 65 20 77 68 61 74 20  here.# are what
6ce0: 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20 79  get build when y
6cf0: 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d 61  ou type just "ma
6d00: 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67 75  ke" with no argu
6d10: 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64 6c  ments..#.all:.dl
6d20: 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62  l libsqlite3.lib
6d30: 20 73 71 6c 69 74 65 33 2e 65 78 65 20 6c 69 62   sqlite3.exe lib
6d40: 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 0a 0a  tclsqlite3.lib..
6d50: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09  libsqlite3.lib:.
6d60: 24 28 4c 49 42 4f 42 4a 29 0a 09 24 28 4c 54 4c  $(LIBOBJ)..$(LTL
6d70: 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29  IB) $(LTLIBOPTS) 6d80: 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 /OUT:$@ $(LIBOB 6d90: 4a 29 20 24 28 54 4c 49 42 53 29 0a 0a 6c 69 62 J)$(TLIBS)..lib
6da0: 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09  tclsqlite3.lib:.
6db0: 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62  tclsqlite.lo lib
6dc0: 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c  sqlite3.lib..$(L 6dd0: 54 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 TLIB)$(LTLIBOPT
6de0: 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29  S) $(LTLIBPATHS) 6df0: 20 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 /OUT:$@ tclsqli
6e00: 74 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33  te.lo libsqlite3
6e10: 2e 6c 69 62 20 24 28 4c 49 42 54 43 4c 3a 74 63  .lib $(LIBTCL:tc 6e20: 6c 3d 74 63 6c 73 74 75 62 29 20 24 28 54 4c 49 l=tclstub)$(TLI
6e30: 42 53 29 0a 0a 73 71 6c 69 74 65 33 2e 65 78 65  BS)..sqlite3.exe
6e40: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65  :.$(TOP)\src\she 6e50: 6c 6c 2e 63 20 6c 69 62 73 71 6c 69 74 65 33 2e ll.c libsqlite3. 6e60: 6c 69 62 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 lib$(LIBRESOBJS
6e70: 29 20 73 71 6c 69 74 65 33 2e 68 0a 09 24 28 4c  ) sqlite3.h..$(L 6e80: 54 4c 49 4e 4b 29 20 24 28 52 45 41 44 4c 49 4e TLINK)$(READLIN
6e90: 45 5f 46 4c 41 47 53 29 20 24 28 54 4f 50 29 5c  E_FLAGS) $(TOP)\ 6ea0: 73 72 63 5c 73 68 65 6c 6c 2e 63 20 5c 0a 09 09 src\shell.c \... 6eb0: 2f 6c 69 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 /link$(LTLINKOP
6ec0: 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53  TS) $(LTLIBPATHS 6ed0: 29 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 ) libsqlite3.lib 6ee0: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24$(LIBRESOBJS) $6ef0: 28 4c 49 42 52 45 41 44 4c 49 4e 45 29 20 24 28 (LIBREADLINE)$(
6f00: 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29  LTLIBS) $(TLIBS) 6f10: 0a 0a 6d 70 74 65 73 74 65 72 2e 65 78 65 3a 09 ..mptester.exe:. 6f20: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70$(TOP)\mptest\mp
6f30: 74 65 73 74 2e 63 20 6c 69 62 73 71 6c 69 74 65  test.c libsqlite
6f40: 33 2e 6c 69 62 20 24 28 4c 49 42 52 45 53 4f 42  3.lib $(LIBRESOB 6f50: 4a 53 29 20 73 71 6c 69 74 65 33 2e 68 0a 09 24 JS) sqlite3.h..$
6f60: 28 4c 54 4c 49 4e 4b 29 20 24 28 54 4f 50 29 5c  (LTLINK) $(TOP)\ 6f70: 6d 70 74 65 73 74 5c 6d 70 74 65 73 74 2e 63 20 mptest\mptest.c 6f80: 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 54 4c 49 \.../link$(LTLI
6f90: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP 6fa0: 41 54 48 53 29 20 6c 69 62 73 71 6c 69 74 65 33 ATHS) libsqlite3 6fb0: 2e 6c 69 62 20 24 28 4c 49 42 52 45 53 4f 42 4a .lib$(LIBRESOBJ
6fc0: 53 29 20 24 28 4c 49 42 52 45 41 44 4c 49 4e 45  S) $(LIBREADLINE 6fd0: 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c )$(LTLIBS) $(TL 6fe0: 49 42 53 29 0a 0a 23 20 54 68 69 73 20 74 61 72 IBS)..# This tar 6ff0: 67 65 74 20 63 72 65 61 74 65 73 20 61 20 64 69 get creates a di 7000: 72 65 63 74 6f 72 79 20 6e 61 6d 65 64 20 22 74 rectory named "t 7010: 73 72 63 22 20 61 6e 64 20 66 69 6c 6c 73 20 69 src" and fills i 7020: 74 20 77 69 74 68 0a 23 20 63 6f 70 69 65 73 20 t with.# copies 7030: 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 43 20 of all of the C 7040: 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 20 source code and 7050: 68 65 61 64 65 72 20 66 69 6c 65 73 20 6e 65 65 header files nee 7060: 64 65 64 20 74 6f 0a 23 20 62 75 69 6c 64 20 6f ded to.# build o 7070: 6e 20 74 68 65 20 74 61 72 67 65 74 20 73 79 73 n the target sys 7080: 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20 74 68 tem. Some of th 7090: 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65 20 e C source code 70a0: 61 6e 64 20 68 65 61 64 65 72 0a 23 20 66 69 6c and header.# fil 70b0: 65 73 20 61 72 65 20 61 75 74 6f 6d 61 74 69 63 es are automatic 70c0: 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e 20 ally generated. 70d0: 20 54 68 69 73 20 74 61 72 67 65 74 20 74 61 6b This target tak 70e0: 65 73 20 63 61 72 65 20 6f 66 0a 23 20 61 6c 6c es care of.# all 70f0: 20 74 68 61 74 20 61 75 74 6f 6d 61 74 69 63 20 that automatic 7100: 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a 2e 74 generation..#..t 7110: 61 72 67 65 74 5f 73 6f 75 72 63 65 3a 09 24 28 arget_source:.$(
7120: 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  SRC) $(TOP)\tool 7130: 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 \vdbe-compress.t 7140: 63 6c 0a 09 2d 72 6d 64 69 72 20 2f 53 2f 51 20 cl..-rmdir /S/Q 7150: 74 73 72 63 0a 09 2d 6d 6b 64 69 72 20 74 73 72 tsrc..-mkdir tsr 7160: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 c..for %i in ($(
7170: 53 52 43 31 29 29 20 64 6f 20 63 6f 70 79 20 2f  SRC1)) do copy /
7180: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
7190: 69 20 69 6e 20 28 24 28 53 52 43 32 29 29 20 64  i in ($(SRC2)) d 71a0: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 o copy /Y %i tsr 71b0: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 c..for %i in ($(
71c0: 53 52 43 33 29 29 20 64 6f 20 63 6f 70 79 20 2f  SRC3)) do copy /
71d0: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
71e0: 69 20 69 6e 20 28 24 28 53 52 43 34 29 29 20 64  i in ($(SRC4)) d 71f0: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 o copy /Y %i tsr 7200: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 c..for %i in ($(
7210: 53 52 43 35 29 29 20 64 6f 20 63 6f 70 79 20 2f  SRC5)) do copy /
7220: 59 20 25 69 20 74 73 72 63 0a 09 64 65 6c 20 2f  Y %i tsrc..del /
7230: 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e  Q tsrc\sqlite.h.
7240: 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e 79 0a  in tsrc\parse.y.
7250: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
7260: 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63  TOP)\tool\vdbe-c
7270: 6f 6d 70 72 65 73 73 2e 74 63 6c 20 24 28 4f 50  ompress.tcl $(OP 7280: 54 53 29 20 3c 20 74 73 72 63 5c 76 64 62 65 2e TS) < tsrc\vdbe. 7290: 63 20 3e 20 76 64 62 65 2e 6e 65 77 0a 09 6d 6f c > vdbe.new..mo 72a0: 76 65 20 76 64 62 65 2e 6e 65 77 20 74 73 72 63 ve vdbe.new tsrc 72b0: 5c 76 64 62 65 2e 63 0a 09 65 63 68 6f 20 3e 20 \vdbe.c..echo > 72c0: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 0a .target_source.. 72d0: 73 71 6c 69 74 65 33 2e 63 3a 09 2e 74 61 72 67 sqlite3.c:..targ 72e0: 65 74 5f 73 6f 75 72 63 65 20 24 28 54 4f 50 29 et_source$(TOP)
72f0: 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 63  \tool\mksqlite3c
7300: 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d  .tcl..$(TCLSH_CM 7310: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d D)$(TOP)\tool\m
7320: 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 20 24 28  ksqlite3c.tcl $( 7330: 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47 53 29 MKSQLITE3C_ARGS) 7340: 0a 09 63 6f 70 79 20 74 73 72 63 5c 73 68 65 6c ..copy tsrc\shel 7350: 6c 2e 63 20 2e 0a 09 63 6f 70 79 20 74 73 72 63 l.c ...copy tsrc 7360: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 2e 0a \sqlite3ext.h .. 7370: 0a 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 3a 09 .sqlite3-all.c:. 7380: 73 71 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 sqlite3.c$(TOP)
7390: 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69  \tool\split-sqli
73a0: 74 65 33 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53  te3c.tcl..$(TCLS 73b0: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
73c0: 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69 74 65 33  ol\split-sqlite3
73d0: 63 2e 74 63 6c 0a 0a 23 20 53 65 74 20 74 68 65  c.tcl..# Set the
73e0: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c   source code fil
73f0: 65 20 74 6f 20 62 65 20 75 73 65 64 20 62 79 20  e to be used by
7400: 65 78 65 63 75 74 61 62 6c 65 73 20 61 6e 64 20  executables and
7410: 6c 69 62 72 61 72 69 65 73 20 77 68 65 6e 0a 23  libraries when.#
7420: 20 74 68 65 79 20 6e 65 65 64 20 74 68 65 20 61   they need the a
7430: 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 0a 23 0a 21  malgamation..#.!
7440: 49 46 20 24 28 53 50 4c 49 54 5f 41 4d 41 4c 47  IF $(SPLIT_AMALG 7450: 41 4d 41 54 49 4f 4e 29 21 3d 30 0a 53 51 4c 49 AMATION)!=0.SQLI 7460: 54 45 33 43 20 3d 20 73 71 6c 69 74 65 33 2d 61 TE3C = sqlite3-a 7470: 6c 6c 2e 63 0a 21 45 4c 53 45 0a 53 51 4c 49 54 ll.c.!ELSE.SQLIT 7480: 45 33 43 20 3d 20 73 71 6c 69 74 65 33 2e 63 0a E3C = sqlite3.c. 7490: 21 45 4e 44 49 46 0a 0a 23 20 52 75 6c 65 20 74 !ENDIF..# Rule t 74a0: 6f 20 62 75 69 6c 64 20 74 68 65 20 61 6d 61 6c o build the amal 74b0: 67 61 6d 61 74 69 6f 6e 0a 23 0a 73 71 6c 69 74 gamation.#.sqlit 74c0: 65 33 2e 6c 6f 3a 09 24 28 53 51 4c 49 54 45 33 e3.lo:.$(SQLITE3
74d0: 43 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  C)..$(LTCOMPILE) 74e0: 20 2d 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a -c$(SQLITE3C).
74f0: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c  .# Rules to buil
7500: 64 20 74 68 65 20 4c 45 4d 4f 4e 20 63 6f 6d 70  d the LEMON comp
7510: 69 6c 65 72 20 67 65 6e 65 72 61 74 6f 72 0a 23  iler generator.#
7520: 0a 6c 65 6d 70 61 72 2e 63 3a 09 24 28 54 4f 50  .lempar.c:.$(TOP 7530: 29 5c 73 72 63 5c 6c 65 6d 70 61 72 2e 63 0a 09 )\src\lempar.c.. 7540: 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 72 63 5c copy$(TOP)\src\
7550: 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a 6c 65 6d 6f  lempar.c ...lemo
7560: 6e 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f  n.exe:.$(TOP)\to 7570: 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c 65 6d 70 61 ol\lemon.c lempa 7580: 72 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f r.c..$(BCC) $(NO 7590: 5f 57 41 52 4e 29 20 2d 44 61 63 63 65 73 73 3d _WARN) -Daccess= 75a0: 5f 61 63 63 65 73 73 20 5c 0a 09 09 2d 46 65 24 _access \...-Fe$
75b0: 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65  @ $(TOP)\tool\le 75c0: 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20 24 28 4e 4c mon.c /link$(NL
75d0: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c 54  TLINKOPTS) $(NLT 75e0: 4c 49 42 50 41 54 48 53 29 0a 0a 23 20 52 75 6c LIBPATHS)..# Rul 75f0: 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 es to build indi 7600: 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 vidual *.lo file 7610: 73 20 66 72 6f 6d 20 67 65 6e 65 72 61 74 65 64 s from generated 7620: 20 2a 2e 63 20 66 69 6c 65 73 2e 20 54 68 69 73 *.c files. This 7630: 0a 23 20 61 70 70 6c 69 65 73 20 74 6f 3a 0a 23 .# applies to:.# 7640: 0a 23 20 20 20 20 20 70 61 72 73 65 2e 6c 6f 0a .# parse.lo. 7650: 23 20 20 20 20 20 6f 70 63 6f 64 65 73 2e 6c 6f # opcodes.lo 7660: 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a 09 70 61 72 .#.parse.lo:.par 7670: 73 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c se.c$(HDR)..$(L 7680: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 70 61 72 TCOMPILE) -c par 7690: 73 65 2e 63 0a 0a 6f 70 63 6f 64 65 73 2e 6c 6f se.c..opcodes.lo 76a0: 3a 09 6f 70 63 6f 64 65 73 2e 63 0a 09 24 28 4c :.opcodes.c..$(L
76b0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 6f 70 63  TCOMPILE) -c opc
76c0: 6f 64 65 73 2e 63 0a 0a 23 20 52 75 6c 65 20 74  odes.c..# Rule t
76d0: 6f 20 62 75 69 6c 64 20 74 68 65 20 57 69 6e 33  o build the Win3
76e0: 32 20 72 65 73 6f 75 72 63 65 73 20 6f 62 6a 65  2 resources obje
76f0: 63 74 20 66 69 6c 65 2e 0a 23 0a 21 49 46 20 24  ct file..#.!IF $7700: 28 55 53 45 5f 52 43 29 21 3d 30 0a 24 28 4c 49 (USE_RC)!=0.$(LI
7710: 42 52 45 53 4f 42 4a 53 29 3a 09 24 28 54 4f 50  BRESOBJS):.$(TOP 7720: 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 )\src\sqlite3.rc 7730: 20 24 28 48 44 52 29 0a 09 65 63 68 6f 20 23 69$(HDR)..echo #i
7740: 66 6e 64 65 66 20 53 51 4c 49 54 45 5f 52 45 53  fndef SQLITE_RES
7750: 4f 55 52 43 45 5f 56 45 52 53 49 4f 4e 20 3e 20  OURCE_VERSION >
7760: 73 71 6c 69 74 65 33 72 63 2e 68 0a 09 66 6f 72  sqlite3rc.h..for
7770: 20 2f 46 20 25 25 56 20 69 6e 20 28 27 74 79 70   /F %%V in ('typ
7780: 65 20 22 24 28 54 4f 50 29 5c 56 45 52 53 49 4f  e "$(TOP)\VERSIO 7790: 4e 22 27 29 20 64 6f 20 28 20 5c 0a 09 09 65 63 N"') do ( \...ec 77a0: 68 6f 20 23 64 65 66 69 6e 65 20 53 51 4c 49 54 ho #define SQLIT 77b0: 45 5f 52 45 53 4f 55 52 43 45 5f 56 45 52 53 49 E_RESOURCE_VERSI 77c0: 4f 4e 20 25 25 56 20 5c 0a 09 09 09 7c 20 24 28 ON %%V \....|$(
77d0: 4e 41 57 4b 29 20 22 2f 2e 2a 2f 20 7b 20 67 73  NAWK) "/.*/ { gs
77e0: 75 62 28 2f 5b 2e 5d 2f 2c 5c 22 2c 5c 22 29 3b  ub(/[.]/,\",\");
77f0: 70 72 69 6e 74 20 7d 22 20 3e 3e 20 73 71 6c 69  print }" >> sqli
7800: 74 65 33 72 63 2e 68 20 5c 0a 09 29 0a 09 65 63  te3rc.h \..)..ec
7810: 68 6f 20 23 65 6e 64 69 66 20 3e 3e 20 73 71 6c  ho #endif >> sql
7820: 69 74 65 33 72 63 2e 68 0a 09 24 28 4c 54 52 43  ite3rc.h..$(LTRC 7830: 4f 4d 50 49 4c 45 29 20 2d 66 6f 20 24 28 4c 49 OMPILE) -fo$(LI
7840: 42 52 45 53 4f 42 4a 53 29 20 24 28 54 4f 50 29  BRESOBJS) $(TOP) 7850: 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 0a \src\sqlite3.rc. 7860: 21 45 4e 44 49 46 0a 0a 23 20 52 75 6c 65 73 20 !ENDIF..# Rules 7870: 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 69 64 to build individ 7880: 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 20 66 ual *.lo files f 7890: 72 6f 6d 20 66 69 6c 65 73 20 69 6e 20 74 68 65 rom files in the 78a0: 20 73 72 63 20 64 69 72 65 63 74 6f 72 79 2e 0a src directory.. 78b0: 23 0a 61 6c 74 65 72 2e 6c 6f 3a 09 24 28 54 4f #.alter.lo:.$(TO
78c0: 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 24  P)\src\alter.c $78d0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
78e0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 78f0: 63 5c 61 6c 74 65 72 2e 63 0a 0a 61 6e 61 6c 79 c\alter.c..analy 7900: 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 ze.lo:.$(TOP)\sr
7910: 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 24 28 48 44  c\analyze.c $(HD 7920: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
7930: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61   -c $(TOP)\src\a 7940: 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74 74 61 63 68 nalyze.c..attach 7950: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
7960: 61 74 74 61 63 68 2e 63 20 24 28 48 44 52 29 0a  attach.c $(HDR). 7970: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 .$(LTCOMPILE) -c
7980: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61   $(TOP)\src\atta 7990: 63 68 2e 63 0a 0a 61 75 74 68 2e 6c 6f 3a 09 24 ch.c..auth.lo:.$
79a0: 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e 63  (TOP)\src\auth.c
79b0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
79c0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c  PILE) -c $(TOP)\ 79d0: 73 72 63 5c 61 75 74 68 2e 63 0a 0a 62 61 63 6b src\auth.c..back 79e0: 75 70 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 up.lo:.$(TOP)\sr
79f0: 63 5c 62 61 63 6b 75 70 2e 63 20 24 28 48 44 52  c\backup.c $(HDR 7a00: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
7a10: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 61  -c $(TOP)\src\ba 7a20: 63 6b 75 70 2e 63 0a 0a 62 69 74 76 65 63 2e 6c ckup.c..bitvec.l 7a30: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 o:.$(TOP)\src\bi
7a40: 74 76 65 63 2e 63 20 24 28 48 44 52 29 0a 09 24  tvec.c $(HDR)..$
7a50: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $7a60: 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65 63 (TOP)\src\bitvec 7a70: 2e 63 0a 0a 62 74 6d 75 74 65 78 2e 6c 6f 3a 09 .c..btmutex.lo:. 7a80: 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74$(TOP)\src\btmut
7a90: 65 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ex.c $(HDR)..$(L
7aa0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 7ab0: 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e OP)\src\btmutex. 7ac0: 63 0a 0a 62 74 72 65 65 2e 6c 6f 3a 09 24 28 54 c..btree.lo:.$(T
7ad0: 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 20  OP)\src\btree.c
7ae0: 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72  $(HDR)$(TOP)\sr
7af0: 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c 54 43  c\pager.h..$(LTC 7b00: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 OMPILE) -c$(TOP
7b10: 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 0a 0a 62  )\src\btree.c..b
7b20: 75 69 6c 64 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  uild.lo:.$(TOP)\ 7b30: 73 72 63 5c 62 75 69 6c 64 2e 63 20 24 28 48 44 src\build.c$(HD
7b40: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 7b50: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 -c$(TOP)\src\b
7b60: 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c 62 61 63 6b  uild.c..callback
7b70: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ 7b80: 63 61 6c 6c 62 61 63 6b 2e 63 20 24 28 48 44 52 callback.c$(HDR
7b90: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 7ba0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 -c$(TOP)\src\ca
7bb0: 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f 6d 70 6c 65  llback.c..comple
7bc0: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  te.lo:.$(TOP)\sr 7bd0: 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 20 24 28 48 c\complete.c$(H
7be0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 7bf0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
7c00: 63 6f 6d 70 6c 65 74 65 2e 63 0a 0a 63 74 69 6d  complete.c..ctim
7c10: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src 7c20: 5c 63 74 69 6d 65 2e 63 20 24 28 48 44 52 29 0a \ctime.c$(HDR).
7c30: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c 7c40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 6d$(TOP)\src\ctim
7c50: 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f 3a 09 24 28  e.c..date.lo:.$( 7c60: 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 TOP)\src\date.c 7c70: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP 7c80: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 ILE) -c$(TOP)\s
7c90: 72 63 5c 64 61 74 65 2e 63 0a 0a 64 65 6c 65 74  rc\date.c..delet
7ca0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src 7cb0: 5c 64 65 6c 65 74 65 2e 63 20 24 28 48 44 52 29 \delete.c$(HDR)
7cc0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) - 7cd0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c c$(TOP)\src\del
7ce0: 65 74 65 2e 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09  ete.c..expr.lo:.
7cf0: 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e  $(TOP)\src\expr. 7d00: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO 7d10: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 MPILE) -c$(TOP)
7d20: 5c 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66 61 75  \src\expr.c..fau
7d30: 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  lt.lo:.$(TOP)\sr 7d40: 63 5c 66 61 75 6c 74 2e 63 20 24 28 48 44 52 29 c\fault.c$(HDR)
7d50: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) - 7d60: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 61 75 c$(TOP)\src\fau
7d70: 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c 6f 3a 09 24  lt.c..fkey.lo:.$7d80: 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 (TOP)\src\fkey.c 7d90: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 7da0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
7db0: 73 72 63 5c 66 6b 65 79 2e 63 0a 0a 66 75 6e 63  src\fkey.c..func
7dc0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ 7dd0: 66 75 6e 63 2e 63 20 24 28 48 44 52 29 0a 09 24 func.c$(HDR)..$7de0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 (LTCOMPILE) -c$
7df0: 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63  (TOP)\src\func.c
7e00: 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54  ..global.lo:.$(T 7e10: 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 OP)\src\global.c 7e20: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 7e30: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
7e40: 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 0a 0a 68 61  src\global.c..ha
7e50: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  sh.lo:.$(TOP)\sr 7e60: 63 5c 68 61 73 68 2e 63 20 24 28 48 44 52 29 0a c\hash.c$(HDR).
7e70: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c 7e80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68$(TOP)\src\hash
7e90: 2e 63 0a 0a 69 6e 73 65 72 74 2e 6c 6f 3a 09 24  .c..insert.lo:.$7ea0: 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 (TOP)\src\insert 7eb0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC 7ec0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 OMPILE) -c$(TOP
7ed0: 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a  )\src\insert.c..
7ee0: 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54 4f  journal.lo:.$(TO 7ef0: 50 29 5c 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e 63 P)\src\journal.c 7f00: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 7f10: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
7f20: 73 72 63 5c 6a 6f 75 72 6e 61 6c 2e 63 0a 0a 6c  src\journal.c..l
7f30: 65 67 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50 29  egacy.lo:.$(TOP) 7f40: 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 20 24 28 \src\legacy.c$(
7f50: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL 7f60: 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 E) -c$(TOP)\src
7f70: 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c 6f 61 64 65  \legacy.c..loade
7f80: 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  xt.lo:.$(TOP)\sr 7f90: 63 5c 6c 6f 61 64 65 78 74 2e 63 20 24 28 48 44 c\loadext.c$(HD
7fa0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 7fb0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c -c$(TOP)\src\l
7fc0: 6f 61 64 65 78 74 2e 63 0a 0a 6d 61 69 6e 2e 6c  oadext.c..main.l
7fd0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61  o:.$(TOP)\src\ma 7fe0: 69 6e 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c in.c$(HDR)..$(L 7ff0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 TCOMPILE) -c$(T
8000: 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a  OP)\src\main.c..
8010: 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50  malloc.lo:.$(TOP 8020: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 )\src\malloc.c$
8030: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 8040: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
8050: 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a 6d 65 6d 30  c\malloc.c..mem0
8060: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ 8070: 6d 65 6d 30 2e 63 20 24 28 48 44 52 29 0a 09 24 mem0.c$(HDR)..$8080: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 (LTCOMPILE) -c$
8090: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63  (TOP)\src\mem0.c
80a0: 0a 0a 6d 65 6d 31 2e 6c 6f 3a 09 24 28 54 4f 50  ..mem1.lo:.$(TOP 80b0: 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 24 28 48 )\src\mem1.c$(H
80c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 80d0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
80e0: 6d 65 6d 31 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a  mem1.c..mem2.lo:
80f0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32  .$(TOP)\src\mem2 8100: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC 8110: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 OMPILE) -c$(TOP
8120: 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 0a 0a 6d 65  )\src\mem2.c..me
8130: 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  m3.lo:.$(TOP)\sr 8140: 63 5c 6d 65 6d 33 2e 63 20 24 28 48 44 52 29 0a c\mem3.c$(HDR).
8150: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63  .$(LTCOMPILE) -c 8160: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 33$(TOP)\src\mem3
8170: 2e 63 0a 0a 6d 65 6d 35 2e 6c 6f 3a 09 24 28 54  .c..mem5.lo:.$(T 8180: 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 20 24 OP)\src\mem5.c$
8190: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 81a0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
81b0: 63 5c 6d 65 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75  c\mem5.c..memjou
81c0: 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  rnal.lo:.$(TOP)\ 81d0: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 src\memjournal.c 81e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM 81f0: 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c PILE) -c$(TOP)\
8200: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63  src\memjournal.c
8210: 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f  ..mutex.lo:.$(TO 8220: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 24 P)\src\mutex.c$
8230: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 8240: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
8250: 63 5c 6d 75 74 65 78 2e 63 0a 0a 6d 75 74 65 78  c\mutex.c..mutex
8260: 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24 28 54 4f 50 29  _noop.lo:.$(TOP) 8270: 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e \src\mutex_noop. 8280: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO 8290: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 MPILE) -c$(TOP)
82a0: 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e  \src\mutex_noop.
82b0: 63 0a 0a 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f  c..mutex_unix.lo
82c0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74  :.$(TOP)\src\mut 82d0: 65 78 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 ex_unix.c$(HDR)
82e0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d  ..$(LTCOMPILE) - 82f0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 c$(TOP)\src\mut
8300: 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d 75 74 65 78  ex_unix.c..mutex
8310: 5f 77 33 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  _w32.lo:.$(TOP)\ 8320: 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 src\mutex_w32.c 8330: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP 8340: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 ILE) -c$(TOP)\s
8350: 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 0a 0a  rc\mutex_w32.c..
8360: 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24 28 54 4f 50  notify.lo:.$(TOP 8370: 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63 20 24 )\src\notify.c$
8380: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI 8390: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
83a0: 63 5c 6e 6f 74 69 66 79 2e 63 0a 0a 70 61 67 65  c\notify.c..page
83b0: 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  r.lo:.$(TOP)\src 83c0: 5c 70 61 67 65 72 2e 63 20 24 28 48 44 52 29 20 \pager.c$(HDR)
83d0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72  $(TOP)\src\pager 83e0: 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 .h..$(LTCOMPILE)
83f0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70   -c $(TOP)\src\p 8400: 61 67 65 72 2e 63 0a 0a 70 63 61 63 68 65 2e 6c ager.c..pcache.l 8410: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 o:.$(TOP)\src\pc
8420: 61 63 68 65 2e 63 20 24 28 48 44 52 29 20 24 28  ache.c $(HDR)$(
8430: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e  TOP)\src\pcache.
8440: 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  h..$(LTCOMPILE) 8450: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 -c$(TOP)\src\pc
8460: 61 63 68 65 2e 63 0a 0a 70 63 61 63 68 65 31 2e  ache.c..pcache1.
8470: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70  lo:.$(TOP)\src\p 8480: 63 61 63 68 65 31 2e 63 20 24 28 48 44 52 29 20 cache1.c$(HDR)
8490: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach 84a0: 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 e.h..$(LTCOMPILE
84b0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 84c0: 70 63 61 63 68 65 31 2e 63 0a 0a 6f 73 2e 6c 6f pcache1.c..os.lo 84d0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e :.$(TOP)\src\os.
84e0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
84f0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP) 8500: 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e \src\os.c..os_un 8510: 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 ix.lo:.$(TOP)\sr
8520: 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 24 28 48 44  c\os_unix.c $(HD 8530: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
8540: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f   -c $(TOP)\src\o 8550: 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73 5f 77 69 6e s_unix.c..os_win 8560: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
8570: 6f 73 5f 77 69 6e 2e 63 20 24 28 48 44 52 29 0a  os_win.c $(HDR). 8580: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 .$(LTCOMPILE) -c
8590: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77   $(TOP)\src\os_w 85a0: 69 6e 2e 63 0a 0a 70 72 61 67 6d 61 2e 6c 6f 3a in.c..pragma.lo: 85b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 .$(TOP)\src\prag
85c0: 6d 61 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ma.c $(HDR)..$(L
85d0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 85e0: 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 OP)\src\pragma.c 85f0: 0a 0a 70 72 65 70 61 72 65 2e 6c 6f 3a 09 24 28 ..prepare.lo:.$(
8600: 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65  TOP)\src\prepare
8610: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
8620: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP 8630: 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 0a )\src\prepare.c. 8640: 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09 24 28 54 4f .printf.lo:.$(TO
8650: 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 20  P)\src\printf.c
8660: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
8670: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s 8680: 72 63 5c 70 72 69 6e 74 66 2e 63 0a 0a 72 61 6e rc\printf.c..ran 8690: 64 6f 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 dom.lo:.$(TOP)\s
86a0: 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 24 28 48 44  rc\random.c $(HD 86b0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
86c0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72   -c $(TOP)\src\r 86d0: 61 6e 64 6f 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65 andom.c..resolve 86e0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
86f0: 72 65 73 6f 6c 76 65 2e 63 20 24 28 48 44 52 29  resolve.c $(HDR) 8700: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d ..$(LTCOMPILE) -
8710: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73  c $(TOP)\src\res 8720: 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73 65 74 2e 6c olve.c..rowset.l 8730: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f o:.$(TOP)\src\ro
8740: 77 73 65 74 2e 63 20 24 28 48 44 52 29 0a 09 24  wset.c $(HDR)..$
8750: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $8760: 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 (TOP)\src\rowset 8770: 2e 63 0a 0a 73 65 6c 65 63 74 2e 6c 6f 3a 09 24 .c..select.lo:.$
8780: 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74  (TOP)\src\select
8790: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
87a0: 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50  OMPILE) -c $(TOP 87b0: 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 0a 0a )\src\select.c.. 87c0: 73 74 61 74 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 status.lo:.$(TOP
87d0: 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 20 24  )\src\status.c $87e0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
87f0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 8800: 63 5c 73 74 61 74 75 73 2e 63 0a 0a 74 61 62 6c c\status.c..tabl 8810: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 e.lo:.$(TOP)\src
8820: 5c 74 61 62 6c 65 2e 63 20 24 28 48 44 52 29 0a  \table.c $(HDR). 8830: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 .$(LTCOMPILE) -c
8840: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c   $(TOP)\src\tabl 8850: 65 2e 63 0a 0a 74 68 72 65 61 64 73 2e 6c 6f 3a e.c..threads.lo: 8860: 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 .$(TOP)\src\thre
8870: 61 64 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ads.c $(HDR)..$(
8880: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28  LTCOMPILE) -c $( 8890: 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61 64 73 TOP)\src\threads 88a0: 2e 63 0a 0a 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a .c..tokenize.lo: 88b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 .$(TOP)\src\toke
88c0: 6e 69 7a 65 2e 63 20 6b 65 79 77 6f 72 64 68 61  nize.c keywordha
88d0: 73 68 2e 68 20 24 28 48 44 52 29 0a 09 24 28 4c  sh.h $(HDR)..$(L
88e0: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 88f0: 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 OP)\src\tokenize 8900: 2e 63 0a 0a 74 72 69 67 67 65 72 2e 6c 6f 3a 09 .c..trigger.lo:. 8910: 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 69 67 67$(TOP)\src\trigg
8920: 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  er.c $(HDR)..$(L
8930: 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24 28 54  TCOMPILE) -c $(T 8940: 4f 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 2e OP)\src\trigger. 8950: 63 0a 0a 75 70 64 61 74 65 2e 6c 6f 3a 09 24 28 c..update.lo:.$(
8960: 54 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e  TOP)\src\update.
8970: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
8980: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP) 8990: 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 0a 0a 75 \src\update.c..u 89a0: 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 tf.lo:.$(TOP)\sr
89b0: 63 5c 75 74 66 2e 63 20 24 28 48 44 52 29 0a 09  c\utf.c $(HDR).. 89c0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20$(LTCOMPILE) -c
89d0: 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63  $(TOP)\src\utf.c 89e0: 0a 0a 75 74 69 6c 2e 6c 6f 3a 09 24 28 54 4f 50 ..util.lo:.$(TOP
89f0: 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 24 28 48  )\src\util.c $(H 8a00: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
8a10: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ 8a20: 75 74 69 6c 2e 63 0a 0a 76 61 63 75 75 6d 2e 6c util.c..vacuum.l 8a30: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 o:.$(TOP)\src\va
8a40: 63 75 75 6d 2e 63 20 24 28 48 44 52 29 0a 09 24  cuum.c $(HDR)..$
8a50: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20 24  (LTCOMPILE) -c $8a60: 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d (TOP)\src\vacuum 8a70: 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54 .c..vdbe.lo:.$(T
8a80: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 24  OP)\src\vdbe.c $8a90: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
8aa0: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 8ab0: 63 5c 76 64 62 65 2e 63 0a 0a 76 64 62 65 61 70 c\vdbe.c..vdbeap 8ac0: 69 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 i.lo:.$(TOP)\src
8ad0: 5c 76 64 62 65 61 70 69 2e 63 20 24 28 48 44 52  \vdbeapi.c $(HDR 8ae0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
8af0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  -c $(TOP)\src\vd 8b00: 62 65 61 70 69 2e 63 0a 0a 76 64 62 65 61 75 78 beapi.c..vdbeaux 8b10: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
8b20: 76 64 62 65 61 75 78 2e 63 20 24 28 48 44 52 29  vdbeaux.c $(HDR) 8b30: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d ..$(LTCOMPILE) -
8b40: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  c $(TOP)\src\vdb 8b50: 65 61 75 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 eaux.c..vdbeblob 8b60: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
8b70: 76 64 62 65 62 6c 6f 62 2e 63 20 24 28 48 44 52  vdbeblob.c $(HDR 8b80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
8b90: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  -c $(TOP)\src\vd 8ba0: 62 65 62 6c 6f 62 2e 63 0a 0a 76 64 62 65 6d 65 beblob.c..vdbeme 8bb0: 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 m.lo:.$(TOP)\src
8bc0: 5c 76 64 62 65 6d 65 6d 2e 63 20 24 28 48 44 52  \vdbemem.c $(HDR 8bd0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
8be0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  -c $(TOP)\src\vd 8bf0: 62 65 6d 65 6d 2e 63 0a 0a 76 64 62 65 73 6f 72 bemem.c..vdbesor 8c00: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
8c10: 5c 76 64 62 65 73 6f 72 74 2e 63 20 24 28 48 44  \vdbesort.c $(HD 8c20: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
8c30: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76   -c $(TOP)\src\v 8c40: 64 62 65 73 6f 72 74 2e 63 0a 0a 76 64 62 65 74 dbesort.c..vdbet 8c50: 72 61 63 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c race.lo:.$(TOP)\
8c60: 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 20  src\vdbetrace.c
8c70: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
8c80: 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  ILE) -c $(TOP)\s 8c90: 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 0a 0a rc\vdbetrace.c.. 8ca0: 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c vtab.lo:.$(TOP)\
8cb0: 73 72 63 5c 76 74 61 62 2e 63 20 24 28 48 44 52  src\vtab.c $(HDR 8cc0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
8cd0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 74  -c $(TOP)\src\vt 8ce0: 61 62 2e 63 0a 0a 77 61 6c 2e 6c 6f 3a 09 24 28 ab.c..wal.lo:.$(
8cf0: 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20 24  TOP)\src\wal.c $8d00: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
8d10: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  LE) -c $(TOP)\sr 8d20: 63 5c 77 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e c\wal.c..walker. 8d30: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 lo:.$(TOP)\src\w
8d40: 61 6c 6b 65 72 2e 63 20 24 28 48 44 52 29 0a 09  alker.c $(HDR).. 8d50: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 63 20$(LTCOMPILE) -c
8d60: 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65  $(TOP)\src\walke 8d70: 72 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f 3a 09 24 r.c..where.lo:.$
8d80: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e  (TOP)\src\where.
8d90: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
8da0: 4d 50 49 4c 45 29 20 2d 63 20 24 28 54 4f 50 29  MPILE) -c $(TOP) 8db0: 5c 73 72 63 5c 77 68 65 72 65 2e 63 0a 0a 74 63 \src\where.c..tc 8dc0: 6c 73 71 6c 69 74 65 2e 6c 6f 3a 09 24 28 54 4f lsqlite.lo:.$(TO
8dd0: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
8de0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
8df0: 4f 4d 50 49 4c 45 29 20 2d 44 55 53 45 5f 54 43  OMPILE) -DUSE_TC
8e00: 4c 5f 53 54 55 42 53 3d 31 20 2d 44 42 55 49 4c  L_STUBS=1 -DBUIL
8e10: 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 4c  D_sqlite -I$(TCL 8e20: 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 4f 50 INCDIR) -c$(TOP
8e30: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
8e40: 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2d 73 68 65  c..tclsqlite-she
8e50: 6c 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ll.lo:.$(TOP)\sr 8e60: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 c\tclsqlite.c$(
8e70: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL 8e80: 45 29 20 2d 44 54 43 4c 53 48 3d 31 20 2d 44 42 E) -DTCLSH=1 -DB 8e90: 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 UILD_sqlite -I$(
8ea0: 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 20 24 28  TCLINCDIR) -c $( 8eb0: 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 TOP)\src\tclsqli 8ec0: 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 33 te.c..tclsqlite3 8ed0: 2e 65 78 65 3a 09 74 63 6c 73 71 6c 69 74 65 2d .exe:.tclsqlite- 8ee0: 73 68 65 6c 6c 2e 6c 6f 20 6c 69 62 73 71 6c 69 shell.lo libsqli 8ef0: 74 65 33 2e 6c 69 62 20 24 28 4c 49 42 52 45 53 te3.lib$(LIBRES
8f00: 4f 42 4a 53 29 0a 09 24 28 4c 44 29 20 24 28 4c  OBJS)..$(LD)$(L
8f10: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK 8f20: 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 OPTS)$(LTLIBPAT
8f30: 48 53 29 20 2f 4f 55 54 3a 24 40 20 6c 69 62 73  HS) /OUT:$@ libs 8f40: 71 6c 69 74 65 33 2e 6c 69 62 20 74 63 6c 73 71 qlite3.lib tclsq 8f50: 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 lite-shell.lo$(
8f60: 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54  LIBRESOBJS) $(LT 8f70: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a LIBS)$(TLIBS)..
8f80: 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64  # Rules to build
8f90: 20 6f 70 63 6f 64 65 73 2e 63 20 61 6e 64 20 6f   opcodes.c and o
8fa0: 70 63 6f 64 65 73 2e 68 0a 23 0a 6f 70 63 6f 64  pcodes.h.#.opcod
8fb0: 65 73 2e 63 3a 09 6f 70 63 6f 64 65 73 2e 68 20  es.c:.opcodes.h
8fc0: 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 6f 64 65 63  $(TOP)\mkopcodec 8fd0: 2e 61 77 6b 0a 09 24 28 4e 41 57 4b 29 20 2d 66 .awk..$(NAWK) -f
8fe0: 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 6f 64 65   $(TOP)\mkopcode 8ff0: 63 2e 61 77 6b 20 6f 70 63 6f 64 65 73 2e 68 20 c.awk opcodes.h 9000: 3e 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 6f 70 63 > opcodes.c..opc 9010: 6f 64 65 73 2e 68 3a 09 70 61 72 73 65 2e 68 20 odes.h:.parse.h 9020: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e$(TOP)\src\vdbe.
9030: 63 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 6f 64  c $(TOP)\mkopcod 9040: 65 68 2e 61 77 6b 0a 09 74 79 70 65 20 70 61 72 eh.awk..type par 9050: 73 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c se.h$(TOP)\src\
9060: 76 64 62 65 2e 63 20 7c 20 24 28 4e 41 57 4b 29  vdbe.c | $(NAWK) 9070: 20 2d 66 20 24 28 54 4f 50 29 5c 6d 6b 6f 70 63 -f$(TOP)\mkopc
9080: 6f 64 65 68 2e 61 77 6b 20 3e 20 6f 70 63 6f 64  odeh.awk > opcod
9090: 65 73 2e 68 0a 0a 23 20 52 75 6c 65 73 20 74 6f  es.h..# Rules to
90a0: 20 62 75 69 6c 64 20 70 61 72 73 65 2e 63 20 61   build parse.c a
90b0: 6e 64 20 70 61 72 73 65 2e 68 20 2d 20 74 68 65  nd parse.h - the
90c0: 20 6f 75 74 70 75 74 73 20 6f 66 20 6c 65 6d 6f   outputs of lemo
90d0: 6e 2e 0a 23 0a 70 61 72 73 65 2e 68 3a 09 70 61  n..#.parse.h:.pa
90e0: 72 73 65 2e 63 0a 0a 70 61 72 73 65 2e 63 3a 09  rse.c..parse.c:.
90f0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65  $(TOP)\src\parse 9100: 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 54 .y lemon.exe$(T
9110: 4f 50 29 5c 61 64 64 6f 70 63 6f 64 65 73 2e 61  OP)\addopcodes.a
9120: 77 6b 0a 09 64 65 6c 20 2f 51 20 70 61 72 73 65  wk..del /Q parse
9130: 2e 79 20 70 61 72 73 65 2e 68 20 70 61 72 73 65  .y parse.h parse
9140: 2e 68 2e 74 65 6d 70 0a 09 63 6f 70 79 20 24 28  .h.temp..copy $( 9150: 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 TOP)\src\parse.y 9160: 20 2e 0a 09 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 ....\lemon.exe 9170: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c$(REQ_FEATURE_FL
9180: 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55  AGS) $(OPT_FEATU 9190: 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 RE_FLAGS)$(OPTS
91a0: 29 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20  ) parse.y..move
91b0: 70 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e  parse.h parse.h.
91c0: 74 65 6d 70 0a 09 24 28 4e 41 57 4b 29 20 2d 66  temp..$(NAWK) -f 91d0: 20 24 28 54 4f 50 29 5c 61 64 64 6f 70 63 6f 64$(TOP)\addopcod
91e0: 65 73 2e 61 77 6b 20 70 61 72 73 65 2e 68 2e 74  es.awk parse.h.t
91f0: 65 6d 70 20 3e 20 70 61 72 73 65 2e 68 0a 0a 73  emp > parse.h..s
9200: 71 6c 69 74 65 33 2e 68 3a 09 24 28 54 4f 50 29  qlite3.h:.$(TOP) 9210: 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e \src\sqlite.h.in 9220: 20 24 28 54 4f 50 29 5c 6d 61 6e 69 66 65 73 74$(TOP)\manifest
9230: 2e 75 75 69 64 20 24 28 54 4f 50 29 5c 56 45 52  .uuid $(TOP)\VER 9240: 53 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43 4d SION..$(TCLSH_CM
9250: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  D) $(TOP)\tool\m 9260: 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 24 28 ksqlite3h.tcl$(
9270: 54 4f 50 3a 5c 3d 2f 29 20 3e 20 73 71 6c 69 74  TOP:\=/) > sqlit
9280: 65 33 2e 68 0a 0a 6d 6b 6b 65 79 77 6f 72 64 68  e3.h..mkkeywordh
9290: 61 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  ash.exe:.$(TOP)\ 92a0: 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 tool\mkkeywordha 92b0: 73 68 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e sh.c..$(BCC) $(N 92c0: 4f 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 O_WARN) -Fe$@ $( 92d0: 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 REQ_FEATURE_FLAG 92e0: 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 S)$(OPT_FEATURE
92f0: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20  _FLAGS) $(OPTS) 9300: 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c \...$(TOP)\tool\
9310: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20  mkkeywordhash.c
9320: 2f 6c 69 6e 6b 20 24 28 4e 4c 54 4c 49 4e 4b 4f  /link $(NLTLINKO 9330: 50 54 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 54 PTS)$(NLTLIBPAT
9340: 48 53 29 0a 0a 6b 65 79 77 6f 72 64 68 61 73 68  HS)..keywordhash
9350: 2e 68 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  .h:.$(TOP)\tool\ 9360: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20 mkkeywordhash.c 9370: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 mkkeywordhash.ex 9380: 65 0a 09 2e 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 e...\mkkeywordha 9390: 73 68 2e 65 78 65 20 3e 20 6b 65 79 77 6f 72 64 sh.exe > keyword 93a0: 68 61 73 68 2e 68 0a 0a 0a 0a 23 20 52 75 6c 65 hash.h....# Rule 93b0: 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 65 s to build the e 93c0: 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65 63 74 73 xtension objects 93d0: 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24 28 54 4f ..#.icu.lo:.$(TO
93e0: 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63  P)\ext\icu\icu.c
93f0: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR)$(EXTHDR
9400: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 9410: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 -DSQLITE_CORE -c 9420: 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c$(TOP)\ext\icu\
9430: 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c 6f 3a 09  icu.c..fts2.lo:.
9440: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 9450: 66 74 73 32 2e 63 20 24 28 48 44 52 29 20 24 28 fts2.c$(HDR) $( 9460: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
9470: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43  PILE) -DSQLITE_C
9480: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex 9490: 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 0a 0a 66 t\fts2\fts2.c..f 94a0: 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54 ts2_hash.lo:.$(T
94b0: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
94c0: 32 5f 68 61 73 68 2e 63 20 24 28 48 44 52 29 20  2_hash.c $(HDR) 94d0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC 94e0: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 OMPILE) -DSQLITE 94f0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
9500: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61  ext\fts2\fts2_ha
9510: 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63 75 2e 6c  sh.c..fts2_icu.l
9520: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft 9530: 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 20 24 28 s2\fts2_icu.c$(
9540: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR).. 9550: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53$(LTCOMPILE) -DS
9560: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $( 9570: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 9580: 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73 32 5f 70 s2_icu.c..fts2_p 9590: 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 orter.lo:.$(TOP)
95a0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70  \ext\fts2\fts2_p
95b0: 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29 20 24  orter.c $(HDR)$
95c0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO 95d0: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f MPILE) -DSQLITE_ 95e0: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
95f0: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72  xt\fts2\fts2_por
9600: 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65  ter.c..fts2_toke
9610: 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  nizer.lo:.$(TOP) 9620: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 \ext\fts2\fts2_t 9630: 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 44 52 okenizer.c$(HDR
9640: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
9650: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
9660: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP 9670: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ 9680: 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73 tokenizer.c..fts 9690: 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a 2_tokenizer1.lo: 96a0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 .$(TOP)\ext\fts2
96b0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31  \fts2_tokenizer1
96c0: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR)$(EXTH
96d0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 96e0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 ) -DSQLITE_CORE 96f0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 -c$(TOP)\ext\ft
9700: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65  s2\fts2_tokenize
9710: 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f 3a 09 24  r1.c..fts3.lo:.$9720: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 9730: 74 73 33 2e 63 20 24 28 48 44 52 29 20 24 28 45 ts3.c$(HDR) $(E 9740: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
9750: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ILE) -DSQLITE_CO
9760: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext 9770: 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a 0a 66 74 \fts3\fts3.c..ft 9780: 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50 s3_aux.lo:.$(TOP
9790: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
97a0: 61 75 78 2e 63 20 24 28 48 44 52 29 20 24 28 45  aux.c $(HDR)$(E
97b0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP 97c0: 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ILE) -DSQLITE_CO 97d0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
97e0: 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63  \fts3\fts3_aux.c
97f0: 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c 6f 3a 09  ..fts3_expr.lo:.
9800: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 9810: 66 74 73 33 5f 65 78 70 72 2e 63 20 24 28 48 44 fts3_expr.c$(HD
9820: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
9830: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c  LTCOMPILE) -DSQL
9840: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO 9850: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 9860: 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33 5f 68 61 _expr.c..fts3_ha 9870: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 sh.lo:.$(TOP)\ex
9880: 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68  t\fts3\fts3_hash
9890: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR)$(EXTH
98a0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE 98b0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 ) -DSQLITE_CORE 98c0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 -c$(TOP)\ext\ft
98d0: 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 0a 0a  s3\fts3_hash.c..
98e0: 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09 24 28 54  fts3_icu.lo:.$(T 98f0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 9900: 33 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20 24 3_icu.c$(HDR) $9910: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
9920: 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f  MPILE) -DSQLITE_
9930: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e 9940: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75 xt\fts3\fts3_icu 9950: 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70 70 65 74 .c..fts3_snippet 9960: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c .lo:.$(TOP)\ext\
9970: 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65  fts3\fts3_snippe
9980: 74 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  t.c $(HDR)$(EXT
9990: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL 99a0: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 E) -DSQLITE_CORE 99b0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 -c$(TOP)\ext\f
99c0: 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74  ts3\fts3_snippet
99d0: 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74 65 72 2e  .c..fts3_porter.
99e0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f 99f0: 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e ts3\fts3_porter. 9a00: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD 9a10: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
9a20: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
9a30: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts 9a40: 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 0a 3\fts3_porter.c. 9a50: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e .fts3_tokenizer. 9a60: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
9a70: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a  ts3\fts3_tokeniz
9a80: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  er.c $(HDR)$(EX
9a90: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI 9aa0: 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 LE) -DSQLITE_COR 9ab0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
9ac0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
9ad0: 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65  zer.c..fts3_toke
9ae0: 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50  nizer1.lo:.$(TOP 9af0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 9b00: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48 tokenizer1.c$(H
9b10: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
9b20: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51  (LTCOMPILE) -DSQ
9b30: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T 9b40: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 9b50: 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 3_tokenizer1.c.. 9b60: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 fts3_tokenize_vt 9b70: 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 ab.lo:.$(TOP)\ex
9b80: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
9b90: 6e 69 7a 65 5f 76 74 61 62 2e 63 20 24 28 48 44  nize_vtab.c $(HD 9ba0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( 9bb0: 4c 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c LTCOMPILE) -DSQL 9bc0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
9bd0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
9be0: 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63  _tokenize_vtab.c
9bf0: 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c  ..fts3_unicode.l
9c00: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft 9c10: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e s3\fts3_unicode. 9c20: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD 9c30: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
9c40: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
9c50: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts 9c60: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 3\fts3_unicode.c 9c70: 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e ..fts3_unicode2. 9c80: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
9c90: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65  ts3\fts3_unicode
9ca0: 32 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  2.c $(HDR)$(EXT
9cb0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL 9cc0: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 E) -DSQLITE_CORE 9cd0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 -c$(TOP)\ext\f
9ce0: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65  ts3\fts3_unicode
9cf0: 32 2e 63 0a 0a 66 74 73 33 5f 77 72 69 74 65 2e  2.c..fts3_write.
9d00: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f 9d10: 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 ts3\fts3_write.c 9d20: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR 9d30: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
9d40: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
9d50: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 9d60: 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 0a 0a 72 \fts3_write.c..r 9d70: 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c tree.lo:.$(TOP)\
9d80: 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e  ext\rtree\rtree.
9d90: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
9da0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) 9db0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - 9dc0: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 c$(TOP)\ext\rtr
9dd0: 65 65 5c 72 74 72 65 65 2e 63 0a 0a 0a 23 20 52  ee\rtree.c...# R
9de0: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68  ules to build th
9df0: 65 20 27 74 65 73 74 66 69 78 74 75 72 65 27 20  e 'testfixture'
9e00: 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 23 0a 23  application..#.#
9e10: 20 49 66 20 75 73 69 6e 67 20 74 68 65 20 61 6d   If using the am
9e20: 61 6c 67 61 6d 61 74 69 6f 6e 2c 20 75 73 65 20  algamation, use
9e30: 73 71 6c 69 74 65 33 2e 63 20 64 69 72 65 63 74  sqlite3.c direct
9e40: 6c 79 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20  ly to build the
9e50: 74 65 73 74 0a 23 20 66 69 78 74 75 72 65 2e 20  test.# fixture.
9e60: 20 4f 74 68 65 72 77 69 73 65 20 6c 69 6e 6b 20   Otherwise link
9e70: 61 67 61 69 6e 73 74 20 6c 69 62 73 71 6c 69 74  against libsqlit
9e80: 65 33 2e 6c 69 62 2e 20 20 28 54 68 69 73 20 64  e3.lib.  (This d
9e90: 69 73 74 69 6e 63 74 69 6f 6e 20 69 73 0a 23 20  istinction is.#
9ea0: 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 75 73  necessary becaus
9eb0: 65 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75  e the test fixtu
9ec0: 72 65 20 72 65 71 75 69 72 65 73 20 6e 6f 6e 2d  re requires non-
9ed0: 41 50 49 20 73 79 6d 62 6f 6c 73 20 77 68 69 63  API symbols whic
9ee0: 68 20 61 72 65 0a 23 20 68 69 64 64 65 6e 20 77  h are.# hidden w
9ef0: 68 65 6e 20 74 68 65 20 6c 69 62 72 61 72 79 20  hen the library
9f00: 69 73 20 62 75 69 6c 74 20 76 69 61 20 74 68 65  is built via the
9f10: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a   amalgamation)..
9f20: 23 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c  #.TESTFIXTURE_FL
9f30: 41 47 53 20 3d 20 2d 44 54 43 4c 53 48 3d 31 20  AGS = -DTCLSH=1
9f40: 2d 44 53 51 4c 49 54 45 5f 54 45 53 54 3d 31 20  -DSQLITE_TEST=1
9f50: 2d 44 53 51 4c 49 54 45 5f 43 52 41 53 48 5f 54  -DSQLITE_CRASH_T
9f60: 45 53 54 3d 31 0a 54 45 53 54 46 49 58 54 55 52  EST=1.TESTFIXTUR
9f70: 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54  E_FLAGS = $(TEST 9f80: 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d FIXTURE_FLAGS) - 9f90: 44 53 51 4c 49 54 45 5f 53 45 52 56 45 52 3d 31 DSQLITE_SERVER=1 9fa0: 20 2d 44 53 51 4c 49 54 45 5f 50 52 49 56 41 54 -DSQLITE_PRIVAT 9fb0: 45 3d 22 22 0a 54 45 53 54 46 49 58 54 55 52 45 E="".TESTFIXTURE 9fc0: 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 _FLAGS =$(TESTF
9fd0: 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  IXTURE_FLAGS) -D
9fe0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 24 28 4e 4f  SQLITE_CORE $(NO 9ff0: 5f 57 41 52 4e 29 0a 0a 54 45 53 54 46 49 58 54 _WARN)..TESTFIXT a000: 55 52 45 5f 53 52 43 30 20 3d 20 24 28 54 45 53 URE_SRC0 =$(TES
a010: 54 45 58 54 29 20 24 28 54 45 53 54 53 52 43 32  TEXT) $(TESTSRC2 a020: 29 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 ) libsqlite3.lib a030: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 .TESTFIXTURE_SRC a040: 31 20 3d 20 24 28 54 45 53 54 45 58 54 29 20 24 1 =$(TESTEXT) $a050: 28 53 51 4c 49 54 45 33 43 29 0a 21 49 46 20 24 (SQLITE3C).!IF$
a060: 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f  (USE_AMALGAMATIO
a070: 4e 29 3d 3d 30 0a 54 45 53 54 46 49 58 54 55 52  N)==0.TESTFIXTUR
a080: 45 5f 53 52 43 20 3d 20 24 28 54 45 53 54 53 52  E_SRC = $(TESTSR a090: 43 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 C)$(TOP)\src\tc
a0a0: 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54  lsqlite.c $(TEST a0b0: 46 49 58 54 55 52 45 5f 53 52 43 30 29 0a 21 45 FIXTURE_SRC0).!E a0c0: 4c 53 45 0a 54 45 53 54 46 49 58 54 55 52 45 5f LSE.TESTFIXTURE_ a0d0: 53 52 43 20 3d 20 24 28 54 45 53 54 53 52 43 29 SRC =$(TESTSRC)
a0e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls a0f0: 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54 46 49 qlite.c$(TESTFI
a100: 58 54 55 52 45 5f 53 52 43 31 29 0a 21 45 4e 44  XTURE_SRC1).!END
a110: 49 46 0a 0a 74 65 73 74 66 69 78 74 75 72 65 2e  IF..testfixture.
a120: 65 78 65 3a 09 24 28 54 45 53 54 46 49 58 54 55  exe:.$(TESTFIXTU a130: 52 45 5f 53 52 43 29 20 24 28 4c 49 42 52 45 53 RE_SRC)$(LIBRES
a140: 4f 42 4a 53 29 20 24 28 48 44 52 29 0a 09 24 28  OBJS) $(HDR)..$(
a150: 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45  LTLINK) -DSQLITE
a160: 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53  _NO_SYNC=1 $(TES a170: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) a180: 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69 \...-DBUILD_sqli a190: 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 te -I$(TCLINCDIR
a1a0: 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54  ) \...$(TESTFIXT a1b0: 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 URE_SRC) \.../li a1c0: 6e 6b 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 nk$(LTLINKOPTS)
a1d0: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24   $(LTLIBPATHS)$
a1e0: 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c  (LIBRESOBJS) $(L a1f0: 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a TLIBS)$(TLIBS).
a200: 0a 65 78 74 65 6e 73 69 6f 6e 74 65 73 74 3a 20  .extensiontest:
a210: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
a220: 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 0a  testloadext.dll.
a230: 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65  ..\testfixture.e
a240: 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6c  xe $(TOP)\test\l a250: 6f 61 64 65 78 74 2e 74 65 73 74 0a 0a 66 75 6c oadext.test..ful a260: 6c 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 ltest:.testfixtu a270: 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 65 re.exe sqlite3.e a280: 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 xe...\testfixtur a290: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
a2a0: 74 5c 61 6c 6c 2e 74 65 73 74 0a 0a 73 6f 61 6b  t\all.test..soak
a2b0: 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 72  test:.testfixtur
a2c0: 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 65 78  e.exe sqlite3.ex
a2d0: 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65  e...\testfixture
a2e0: 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74  .exe $(TOP)\test a2f0: 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f 61 6b 3d \all.test -soak= a300: 31 0a 0a 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a 1..fulltestonly: a310: 09 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 .testfixture.exe a320: 20 73 71 6c 69 74 65 33 2e 65 78 65 0a 09 2e 5c sqlite3.exe...\ a330: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 testfixture.exe a340: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 6c 6c$(TOP)\test\full
a350: 2e 74 65 73 74 0a 0a 71 75 65 72 79 70 6c 61 6e  .test..queryplan
a360: 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 72  test:.testfixtur
a370: 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 65 78  e.exe sqlite3.ex
a380: 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65  e...\testfixture
a390: 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74  .exe $(TOP)\test a3a0: 5c 70 65 72 6d 75 74 61 74 69 6f 6e 73 2e 74 65 \permutations.te a3b0: 73 74 20 71 75 65 72 79 70 6c 61 6e 6e 65 72 0a st queryplanner. a3c0: 0a 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 .test:.testfixtu a3d0: 72 65 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 65 re.exe sqlite3.e a3e0: 78 65 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 xe...\testfixtur a3f0: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
a400: 74 5c 76 65 72 79 71 75 69 63 6b 2e 74 65 73 74  t\veryquick.test
a410: 0a 0a 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a  ..sqlite3_analyz
a420: 65 72 2e 63 3a 20 24 28 53 51 4c 49 54 45 33 43  er.c: $(SQLITE3C a430: 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 )$(TOP)\src\tes
a440: 74 5f 73 74 61 74 2e 63 20 24 28 54 4f 50 29 5c  t_stat.c $(TOP)\ a450: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c a460: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 61 63$(TOP)\tool\spac
a470: 65 61 6e 61 6c 2e 74 63 6c 0a 09 63 6f 70 79 20  eanal.tcl..copy
a480: 24 28 53 51 4c 49 54 45 33 43 29 20 2b 20 24 28  $(SQLITE3C) +$(
a490: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 74  TOP)\src\test_st
a4a0: 61 74 2e 63 20 2b 20 24 28 54 4f 50 29 5c 73 72  at.c + $(TOP)\sr a4b0: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 40 c\tclsqlite.c$@
a4c0: 0a 09 65 63 68 6f 20 73 74 61 74 69 63 20 63 6f  ..echo static co
a4d0: 6e 73 74 20 63 68 61 72 20 2a 74 63 6c 73 68 5f  nst char *tclsh_
a4e0: 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64 29 7b  main_loop(void){
a4f0: 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73 74 61   >> $@..echo sta a500: 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a tic const char * a510: 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e 20 24 zMainloop = >>$
a520: 40 0a 09 24 28 4e 41 57 4b 29 20 2d 66 20 24 28  @..$(NAWK) -f$(
a530: 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74 72 2e  TOP)\tool\tostr.
a540: 61 77 6b 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  awk $(TOP)\tool\ a550: 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20 3e 3e spaceanal.tcl >> a560: 20 24 40 0a 09 65 63 68 6f 20 3b 20 72 65 74 75$@..echo ; retu
a570: 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20 7d 20  rn zMainloop; }
a580: 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 61  >> $@..sqlite3_a a590: 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73 71 6c nalyzer.exe:.sql a5a0: 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 ite3_analyzer.c a5b0: 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24$(LIBRESOBJS)..$a5c0: 28 4c 54 4c 49 4e 4b 29 20 2d 44 42 55 49 4c 44 (LTLINK) -DBUILD a5d0: 5f 73 71 6c 69 74 65 20 2d 44 54 43 4c 53 48 3d _sqlite -DTCLSH= a5e0: 32 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 2 -I$(TCLINCDIR)
a5f0: 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
a600: 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28  r.c \.../link $( a610: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 LTLINKOPTS)$(LT
a620: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52  LIBPATHS) $(LIBR a630: 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 ESOBJS)$(LTLIBS
a640: 29 20 24 28 54 4c 49 42 53 29 0a 0a 74 65 73 74  ) $(TLIBS)..test a650: 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f loadext.lo:.$(TO
a660: 50 29 5c 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64  P)\src\test_load
a670: 65 78 74 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49  ext.c..$(LTCOMPI a680: 4c 45 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 LE) -c$(TOP)\sr
a690: 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63  c\test_loadext.c
a6a0: 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c  ..testloadext.dl
a6b0: 6c 3a 20 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c  l: testloadext.l
a6c0: 6f 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41  o..$(LD)$(LDFLA
a6d0: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS a6e0: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 )$(LTLIBPATHS)
a6f0: 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 74 65 73  /DLL /OUT:$@ tes a700: 74 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a 73 68 6f tloadext.lo..sho a710: 77 64 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c wdb.exe:.$(TOP)\
a720: 74 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63 20 24 28  tool\showdb.c $( a730: 53 51 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 4c SQLITE3C)..$(LTL
a740: 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f 54 48  INK) -DSQLITE_TH
a750: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c  READSAFE=0 -DSQL
a760: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
a770: 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a  TENSION -Fe$@ \. a780: 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 ..$(TOP)\tool\sh
a790: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33  owdb.c $(SQLITE3 a7a0: 43 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 C)..showstat4.ex a7b0: 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 e:.$(TOP)\tool\s
a7c0: 68 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c  howstat4.c $(SQL a7d0: 49 54 45 33 43 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3C)..$(LTLINK
a7e0: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
a7f0: 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45  DSAFE=0 -DSQLITE
a800: 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e  _OMIT_LOAD_EXTEN
a810: 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24  SION -Fe$@ \...$
a820: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73  (TOP)\tool\shows
a830: 74 61 74 34 2e 63 20 24 28 53 51 4c 49 54 45 33  tat4.c $(SQLITE3 a840: 43 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e C)..showjournal. a850: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
a860: 5c 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24  \showjournal.c $a870: 28 53 51 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 (SQLITE3C)..$(LT
a880: 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f 54  LINK) -DSQLITE_T
a890: 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51  HREADSAFE=0 -DSQ
a8a0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45  LITE_OMIT_LOAD_E
a8b0: 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c  XTENSION -Fe$@ \ a8c0: 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 ...$(TOP)\tool\s
a8d0: 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 53  howjournal.c $(S a8e0: 51 4c 49 54 45 33 43 29 0a 0a 73 68 6f 77 77 61 QLITE3C)..showwa a8f0: 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f l.exe:.$(TOP)\to
a900: 6f 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 24 28 53  ol\showwal.c $(S a910: 51 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 4c 49 QLITE3C)..$(LTLI
a920: 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52  NK) -DSQLITE_THR
a930: 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49  EADSAFE=0 -DSQLI
a940: 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54  TE_OMIT_LOAD_EXT
a950: 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a 09  ENSION -Fe$@ \.. a960: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f .$(TOP)\tool\sho
a970: 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33  wwal.c $(SQLITE3 a980: 43 29 0a 0a 66 74 73 33 76 69 65 77 2e 65 78 65 C)..fts3view.exe a990: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
a9a0: 33 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77 2e  3\tool\fts3view.
a9b0: 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 09 24  c $(SQLITE3C)..$
a9c0: 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54  (LTLINK) -DSQLIT
a9d0: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
a9e0: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
a9f0: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24  D_EXTENSION -Fe$aa00: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 @ \...$(TOP)\ext
aa10: 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76  \fts3\tool\fts3v
aa20: 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33 43  iew.c $(SQLITE3C aa30: 29 0a 0a 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 )..rollback-test aa40: 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f .exe:.$(TOP)\too
aa50: 6c 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e  l\rollback-test.
aa60: 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 09 24  c $(SQLITE3C)..$
aa70: 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54  (LTLINK) -DSQLIT
aa80: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
aa90: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
aaa0: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24  D_EXTENSION -Fe$aab0: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f @ \...$(TOP)\too
aac0: 6c 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e  l\rollback-test.
aad0: 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 0a 4c  c $(SQLITE3C)..L aae0: 6f 67 45 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 ogEst.exe:.$(TOP
aaf0: 29 5c 74 6f 6f 6c 5c 6c 6f 67 65 73 74 2e 63 20  )\tool\logest.c
ab00: 73 71 6c 69 74 65 33 2e 68 0a 09 24 28 4c 54 4c  sqlite3.h..$(LTL ab10: 49 4e 4b 29 20 2d 46 65 24 40 20 24 28 54 4f 50 INK) -Fe$@ $(TOP ab20: 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74 2e 63 0a )\tool\LogEst.c. ab30: 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 3a 09 .wordcount.exe:. ab40: 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 64$(TOP)\test\word
ab50: 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54 45  count.c $(SQLITE ab60: 33 43 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 2d 3C)..$(LTLINK) -
ab70: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
ab80: 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
ab90: 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
aba0: 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24 28 54 4f  N -Fe$@ \...$(TO
abb0: 50 29 5c 74 65 73 74 5c 77 6f 72 64 63 6f 75 6e  P)\test\wordcoun
abc0: 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a  t.c $(SQLITE3C). abd0: 0a 73 70 65 65 64 74 65 73 74 31 2e 65 78 65 3a .speedtest1.exe: abe0: 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 70 65 .$(TOP)\test\spe
abf0: 65 64 74 65 73 74 31 2e 63 20 24 28 53 51 4c 49  edtest1.c $(SQLI ac00: 54 45 33 43 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3C)..$(LTLINK)
ac10: 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
ac20: 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46  OAD_EXTENSION -F
ac30: 65 24 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74  e$@ \...$(TOP)\t
ac40: 65 73 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63  est\speedtest1.c
ac50: 20 24 28 53 51 4c 49 54 45 33 43 29 0a 0a 63 6c   $(SQLITE3C)..cl ac60: 65 61 6e 3a 0a 09 64 65 6c 20 2f 51 20 2a 2e 6c ean:..del /Q *.l ac70: 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e o *.ilk *.lib *. ac80: 6f 62 6a 20 2a 2e 70 64 62 20 73 71 6c 69 74 65 obj *.pdb sqlite ac90: 33 2e 65 78 65 20 6c 69 62 73 71 6c 69 74 65 33 3.exe libsqlite3 aca0: 2e 6c 69 62 0a 09 64 65 6c 20 2f 51 20 2a 2e 63 .lib..del /Q *.c acb0: 6f 64 20 2a 2e 64 61 20 2a 2e 62 62 20 2a 2e 62 od *.da *.bb *.b acc0: 62 67 20 67 6d 6f 6e 2e 6f 75 74 0a 09 64 65 6c bg gmon.out..del acd0: 20 2f 51 20 73 71 6c 69 74 65 33 2e 68 20 6f 70 /Q sqlite3.h op ace0: 63 6f 64 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e codes.c opcodes. acf0: 68 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e 2e h..del /Q lemon. ad00: 2a 20 6c 65 6d 70 61 72 2e 63 20 70 61 72 73 65 * lempar.c parse ad10: 2e 2a 0a 09 64 65 6c 20 2f 51 20 6d 6b 6b 65 79 .*..del /Q mkkey ad20: 77 6f 72 64 68 61 73 68 2e 2a 20 6b 65 79 77 6f wordhash.* keywo ad30: 72 64 68 61 73 68 2e 68 0a 09 64 65 6c 20 2f 51 rdhash.h..del /Q ad40: 20 6e 6f 74 61 73 68 61 72 65 64 6c 69 62 2e 2a notasharedlib.* ad50: 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 2e 64 ..-rmdir /Q/S .d ad60: 65 70 73 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 eps..-rmdir /Q/S ad70: 20 2e 6c 69 62 73 0a 09 2d 72 6d 64 69 72 20 2f .libs..-rmdir / ad80: 51 2f 53 20 71 75 6f 74 61 32 61 0a 09 2d 72 6d Q/S quota2a..-rm ad90: 64 69 72 20 2f 51 2f 53 20 71 75 6f 74 61 32 62 dir /Q/S quota2b ada0: 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 71 75 ..-rmdir /Q/S qu adb0: 6f 74 61 32 63 0a 09 2d 72 6d 64 69 72 20 2f 51 ota2c..-rmdir /Q adc0: 2f 53 20 74 73 72 63 0a 09 64 65 6c 20 2f 51 20 /S tsrc..del /Q add0: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 09 .target_source.. ade0: 64 65 6c 20 2f 51 20 74 63 6c 73 71 6c 69 74 65 del /Q tclsqlite adf0: 33 2e 65 78 65 20 74 63 6c 73 71 6c 69 74 65 33 3.exe tclsqlite3 ae00: 2e 65 78 70 0a 09 64 65 6c 20 2f 51 20 74 65 73 .exp..del /Q tes ae10: 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 20 74 65 73 tloadext.dll tes ae20: 74 6c 6f 61 64 65 78 74 2e 65 78 70 0a 09 64 65 tloadext.exp..de ae30: 6c 20 2f 51 20 74 65 73 74 66 69 78 74 75 72 65 l /Q testfixture ae40: 2e 65 78 65 20 74 65 73 74 66 69 78 74 75 72 65 .exe testfixture ae50: 2e 65 78 70 20 74 65 73 74 2e 64 62 0a 09 64 65 .exp test.db..de ae60: 6c 20 2f 51 20 4c 6f 67 45 73 74 2e 65 78 65 20 l /Q LogEst.exe ae70: 66 74 73 33 76 69 65 77 2e 65 78 65 20 72 6f 6c fts3view.exe rol ae80: 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65 20 73 lback-test.exe s ae90: 68 6f 77 64 62 2e 65 78 65 0a 09 64 65 6c 20 2f howdb.exe..del / aea0: 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 78 Q showjournal.ex aeb0: 65 20 73 68 6f 77 73 74 61 74 34 2e 65 78 65 20 e showstat4.exe aec0: 73 68 6f 77 77 61 6c 2e 65 78 65 20 73 70 65 65 showwal.exe spee aed0: 64 74 65 73 74 31 2e 65 78 65 0a 09 64 65 6c 20 dtest1.exe..del aee0: 2f 51 20 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 /Q wordcount.exe aef0: 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 ..del /Q sqlite3 af00: 2e 64 6c 6c 20 73 71 6c 69 74 65 33 2e 6c 69 62 .dll sqlite3.lib af10: 20 73 71 6c 69 74 65 33 2e 65 78 70 20 73 71 6c sqlite3.exp sql af20: 69 74 65 33 2e 64 65 66 0a 09 64 65 6c 20 2f 51 ite3.def..del /Q af30: 20 73 71 6c 69 74 65 33 2e 63 20 73 71 6c 69 74 sqlite3.c sqlit af40: 65 33 2d 2a 2e 63 0a 09 64 65 6c 20 2f 51 20 73 e3-*.c..del /Q s af50: 71 6c 69 74 65 33 72 63 2e 68 0a 09 64 65 6c 20 qlite3rc.h..del af60: 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69 74 /Q shell.c sqlit af70: 65 33 65 78 74 2e 68 0a 09 64 65 6c 20 2f 51 20 e3ext.h..del /Q af80: 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 sqlite3_analyzer af90: 2e 65 78 65 20 73 71 6c 69 74 65 33 5f 61 6e 61 .exe sqlite3_ana afa0: 6c 79 7a 65 72 2e 65 78 70 20 73 71 6c 69 74 65 lyzer.exp sqlite afb0: 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 0a 09 64 65 3_analyzer.c..de afc0: 6c 20 2f 51 20 73 71 6c 69 74 65 2d 2a 2d 6f 75 l /Q sqlite-*-ou afd0: 74 70 75 74 2e 76 73 69 78 0a 09 64 65 6c 20 2f tput.vsix..del / afe0: 51 20 6d 70 74 65 73 74 65 72 2e 65 78 65 0a 0a Q mptester.exe.. aff0: 23 20 44 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c # Dynamic link l b000: 69 62 72 61 72 79 20 73 65 63 74 69 6f 6e 2e 0a ibrary section.. b010: 23 0a 64 6c 6c 3a 20 73 71 6c 69 74 65 33 2e 64 #.dll: sqlite3.d b020: 6c 6c 0a 0a 73 71 6c 69 74 65 33 2e 64 65 66 3a ll..sqlite3.def: b030: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a libsqlite3.lib. b040: 09 65 63 68 6f 20 45 58 50 4f 52 54 53 20 3e 20 .echo EXPORTS > b050: 73 71 6c 69 74 65 33 2e 64 65 66 0a 09 64 75 6d sqlite3.def..dum b060: 70 62 69 6e 20 2f 61 6c 6c 20 6c 69 62 73 71 6c pbin /all libsql b070: 69 74 65 33 2e 6c 69 62 20 5c 0a 09 09 7c 20 24 ite3.lib \...|$
b080: 28 4e 41 57 4b 29 20 22 2f 20 31 20 5f 3f 73 71  (NAWK) "/ 1 _?sq
b090: 6c 69 74 65 33 5f 2f 20 7b 20 73 75 62 28 2f 5e  lite3_/ { sub(/^
b0a0: 2e 2a 20 5f 3f 2f 2c 5c 22 5c 22 29 3b 70 72 69  .* _?/,\"\");pri
b0b0: 6e 74 20 7d 22 20 5c 0a 09 09 7c 20 73 6f 72 74  nt }" \...| sort
b0c0: 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a   >> sqlite3.def.
b0d0: 0a 73 71 6c 69 74 65 33 2e 64 6c 6c 3a 20 24 28  .sqlite3.dll: $( b0e0: 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52 45 53 LIBOBJ)$(LIBRES
b0f0: 4f 42 4a 53 29 20 73 71 6c 69 74 65 33 2e 64 65  OBJS) sqlite3.de
b100: 66 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41  f..$(LD)$(LDFLA
b110: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS b120: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 )$(LTLIBPATHS)
b130: 2f 44 4c 4c 20 2f 44 45 46 3a 73 71 6c 69 74 65  /DLL /DEF:sqlite
b140: 33 2e 64 65 66 20 2f 4f 55 54 3a 24 40 20 24 28  3.def /OUT:$@$(
b150: 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52 45 53  LIBOBJ) $(LIBRES b160: 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20 OBJS)$(LTLIBS)
b170: 24 28 54 4c 49 42 53 29 0a                       \$(TLIBS).