/ Hex Artifact Content

## Artifact 9e0a87c2a53a7353bf1ed03bf1f37cd8de70958811cf2138530e81a283d6f7e6:

• File Makefile.msc — part of check-in [e17bca2c] at 2018-05-04 19:33:34 on branch apple-osx — Merge recent enhancements from trunk. (user: drh size: 75972) [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 3c 3c 6d 61 72 6b 3e 3e 0a  = ...# <<mark>>.
0190: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
01a0: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
01b0: 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 61 6d  se the SQLite am
01c0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 2e  algamation file.
01d0: 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 41  .#.!IFNDEF USE_A
01e0: 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 55 53 45 5f  MALGAMATION.USE_
01f0: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 20 3d 20 31  AMALGAMATION = 1
0200: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
0210: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
0220: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable
0230: 66 75 6c 6c 20 77 61 72 6e 69 6e 67 73 20 28 2d  full warnings (-
0240: 57 34 2c 20 65 74 63 29 20 77 68 65 6e 20 63 6f  W4, etc) when co
0250: 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21 49 46 4e 44  mpiling..#.!IFND
0260: 45 46 20 55 53 45 5f 46 55 4c 4c 57 41 52 4e 0a  EF USE_FULLWARN.
0270: 55 53 45 5f 46 55 4c 4c 57 41 52 4e 20 3d 20 31  USE_FULLWARN = 1
0280: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0290: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61  his non-0 to ena
02a0: 62 6c 65 20 74 72 65 61 74 69 6e 67 20 77 61 72  ble treating war
02b0: 6e 69 6e 67 73 20 61 73 20 65 72 72 6f 72 73 20  nings as errors
02c0: 28 2d 57 58 2c 20 65 74 63 29 20 77 68 65 6e 0a  (-WX, etc) when.
02d0: 23 20 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21  # compiling..#.!
02e0: 49 46 4e 44 45 46 20 55 53 45 5f 46 41 54 41 4c  IFNDEF USE_FATAL
02f0: 5f 57 41 52 4e 0a 55 53 45 5f 46 41 54 41 4c 5f  _WARN.USE_FATAL_
0300: 57 41 52 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  WARN = 0.!ENDIF.
0310: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0320: 30 20 74 6f 20 65 6e 61 62 6c 65 20 66 75 6c 6c  0 to enable full
0330: 20 72 75 6e 74 69 6d 65 20 65 72 72 6f 72 20 63   runtime error c
0340: 68 65 63 6b 73 20 28 2d 52 54 43 31 2c 20 65 74  hecks (-RTC1, et
0350: 63 29 2e 20 20 54 68 69 73 0a 23 20 68 61 73 20  c).  This.# has
0360: 6e 6f 20 65 66 66 65 63 74 20 69 66 20 28 61 6e  no effect if (an
0370: 79 29 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73  y) optimizations
0380: 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 23 0a   are enabled..#.
0390: 21 49 46 4e 44 45 46 20 55 53 45 5f 52 55 4e 54  !IFNDEF USE_RUNT
03a0: 49 4d 45 5f 43 48 45 43 4b 53 0a 55 53 45 5f 52  IME_CHECKS.USE_R
03b0: 55 4e 54 49 4d 45 5f 43 48 45 43 4b 53 20 3d 20  UNTIME_CHECKS =
03c0: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
03d0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 72  this non-0 to cr
03e0: 65 61 74 65 20 61 20 53 51 4c 69 74 65 20 61 6d  eate a SQLite am
03f0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 20  algamation file
0400: 74 68 61 74 20 65 78 63 6c 75 64 65 73 20 74 68  that excludes th
0410: 65 0a 23 20 76 61 72 69 6f 75 73 20 62 75 69 6c  e.# various buil
0420: 74 2d 69 6e 20 65 78 74 65 6e 73 69 6f 6e 73 2e  t-in extensions.
0430: 0a 23 0a 21 49 46 4e 44 45 46 20 4d 49 4e 49 4d  .#.!IFNDEF MINIM
0440: 41 4c 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a  AL_AMALGAMATION.
0450: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
0460: 54 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  TION = 0.!ENDIF.
0470: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0480: 30 20 74 6f 20 75 73 65 20 22 73 74 64 63 61 6c  0 to use "stdcal
0490: 6c 22 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65  l" calling conve
04a0: 6e 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 6f  ntion for the co
04b0: 72 65 20 6c 69 62 72 61 72 79 0a 23 20 61 6e 64  re library.# and
04c0: 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 6c   shell executabl
04d0: 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45  e..#.!IFNDEF USE
04e0: 5f 53 54 44 43 41 4c 4c 0a 55 53 45 5f 53 54 44  _STDCALL.USE_STD
04f0: 43 41 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  CALL = 0.!ENDIF.
0500: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0510: 30 20 74 6f 20 68 61 76 65 20 74 68 65 20 73 68  0 to have the sh
0520: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 6c  ell executable l
0530: 69 6e 6b 20 61 67 61 69 6e 73 74 20 74 68 65 20  ink against the
0540: 63 6f 72 65 20 64 79 6e 61 6d 69 63 0a 23 20 6c  core dynamic.# l
0550: 69 6e 6b 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ink library..#.!
0560: 49 46 4e 44 45 46 20 44 59 4e 41 4d 49 43 5f 53  IFNDEF DYNAMIC_S
0570: 48 45 4c 4c 0a 44 59 4e 41 4d 49 43 5f 53 48 45  HELL.DYNAMIC_SHE
0580: 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  LL = 0.!ENDIF..#
0590: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
05a0: 74 6f 20 65 6e 61 62 6c 65 20 65 78 74 72 61 20  to enable extra
05b0: 63 6f 64 65 20 74 68 61 74 20 61 74 74 65 6d 70  code that attemp
05c0: 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69 73  ts to detect mis
05d0: 75 73 65 20 6f 66 20 74 68 65 0a 23 20 53 51 4c  use of the.# SQL
05e0: 69 74 65 20 41 50 49 2e 0a 23 0a 21 49 46 4e 44  ite API..#.!IFND
05f0: 45 46 20 41 50 49 5f 41 52 4d 4f 52 0a 41 50 49  EF API_ARMOR.API
0600: 5f 41 52 4d 4f 52 20 3d 20 30 0a 21 45 4e 44 49  _ARMOR = 0.!ENDI
0610: 46 0a 0a 23 20 49 66 20 6e 65 63 65 73 73 61 72  F..# If necessar
0620: 79 2c 20 63 72 65 61 74 65 20 61 20 6c 69 73 74  y, create a list
0630: 20 6f 66 20 68 61 72 6d 6c 65 73 73 20 63 6f 6d   of harmless com
0640: 70 69 6c 65 72 20 77 61 72 6e 69 6e 67 73 20 74  piler warnings t
0650: 6f 20 64 69 73 61 62 6c 65 20 77 68 65 6e 0a 23  o disable when.#
0660: 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 76   compiling the v
0670: 61 72 69 6f 75 73 20 74 6f 6f 6c 73 2e 20 20 46  arious tools.  F
0680: 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 73 6f  or the SQLite so
0690: 75 72 63 65 20 63 6f 64 65 20 69 74 73 65 6c 66  urce code itself
06a0: 2c 20 77 61 72 6e 69 6e 67 73 2c 0a 23 20 69 66  , warnings,.# if
06b0: 20 61 6e 79 2c 20 77 69 6c 6c 20 62 65 20 64 69   any, will be di
06c0: 73 61 62 6c 65 64 20 66 72 6f 6d 20 77 69 74 68  sabled from with
06d0: 69 6e 20 69 74 2e 0a 23 0a 21 49 46 4e 44 45 46  in it..#.!IFNDEF
06e0: 20 4e 4f 5f 57 41 52 4e 0a 21 49 46 20 24 28 55   NO_WARN.!IF $(U 06f0: 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a SE_FULLWARN)!=0. 0700: 4e 4f 5f 57 41 52 4e 20 3d 20 2d 77 64 34 30 35 NO_WARN = -wd405 0710: 34 20 2d 77 64 34 30 35 35 20 2d 77 64 34 31 30 4 -wd4055 -wd410 0720: 30 20 2d 77 64 34 31 32 37 20 2d 77 64 34 31 33 0 -wd4127 -wd413 0730: 30 20 2d 77 64 34 31 35 32 20 2d 77 64 34 31 38 0 -wd4152 -wd418 0740: 39 20 2d 77 64 34 32 30 36 0a 4e 4f 5f 57 41 52 9 -wd4206.NO_WAR 0750: 4e 20 3d 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d N =$(NO_WARN) -
0760: 77 64 34 32 31 30 20 2d 77 64 34 32 33 32 20 2d  wd4210 -wd4232 -
0770: 77 64 34 33 30 35 20 2d 77 64 34 33 30 36 20 2d  wd4305 -wd4306 -
0780: 77 64 34 37 30 32 20 2d 77 64 34 37 30 36 0a 21  wd4702 -wd4706.!
0790: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20  ENDIF.!ENDIF..#
07a0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
07b0: 6f 20 75 73 65 20 74 68 65 20 6c 69 62 72 61 72  o use the librar
07c0: 79 20 70 61 74 68 73 20 61 6e 64 20 6f 74 68 65  y paths and othe
07d0: 72 20 6f 70 74 69 6f 6e 73 20 6e 65 63 65 73 73  r options necess
07e0: 61 72 79 20 66 6f 72 0a 23 20 57 69 6e 64 6f 77  ary for.# Window
07f0: 73 20 50 68 6f 6e 65 20 38 2e 31 2e 0a 23 0a 21  s Phone 8.1..#.!
0800: 49 46 4e 44 45 46 20 55 53 45 5f 57 50 38 31 5f  IFNDEF USE_WP81_
0810: 4f 50 54 53 0a 55 53 45 5f 57 50 38 31 5f 4f 50  OPTS.USE_WP81_OP
0820: 54 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  TS = 0.!ENDIF..#
0830: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0840: 74 6f 20 73 70 6c 69 74 20 74 68 65 20 53 51 4c  to split the SQL
0850: 69 74 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  ite amalgamation
0860: 20 66 69 6c 65 20 69 6e 74 6f 20 63 68 75 6e 6b   file into chunk
0870: 73 20 74 6f 0a 23 20 62 65 20 75 73 65 64 20 66  s to.# be used f
0880: 6f 72 20 64 65 62 75 67 67 69 6e 67 20 77 69 74  or debugging wit
0890: 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e  h Visual Studio.
08a0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 50 4c 49 54  .#.!IFNDEF SPLIT
08b0: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 53 50  _AMALGAMATION.SP
08c0: 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  LIT_AMALGAMATION
08d0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 3c   = 0.!ENDIF..# <
08e0: 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74 68  <mark>>.# Set th
08f0: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 68 61 76 65  is non-0 to have
0900: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 61   this makefile a
0910: 73 73 75 6d 65 20 74 68 65 20 54 63 6c 20 73 68  ssume the Tcl sh
0920: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 0a 23  ell executable.#
0930: 20 28 74 63 6c 73 68 2a 2e 65 78 65 29 20 69 73   (tclsh*.exe) is
0940: 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68   available in th
0950: 65 20 50 41 54 48 2e 20 20 42 79 20 64 65 66 61  e PATH.  By defa
0960: 75 6c 74 2c 20 74 68 69 73 20 69 73 20 64 69 73  ult, this is dis
0970: 61 62 6c 65 64 0a 23 20 66 6f 72 20 63 6f 6d 70  abled.# for comp
0980: 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6f  atibility with o
0990: 6c 64 65 72 20 62 75 69 6c 64 20 65 6e 76 69 72  lder build envir
09a0: 6f 6e 6d 65 6e 74 73 2e 20 20 54 68 69 73 20 73  onments.  This s
09b0: 65 74 74 69 6e 67 20 6f 6e 6c 79 0a 23 20 61 70  etting only.# ap
09c0: 70 6c 69 65 73 20 69 66 20 54 43 4c 53 48 5f 43  plies if TCLSH_C
09d0: 4d 44 20 69 73 20 6e 6f 74 20 73 65 74 20 6d 61  MD is not set ma
09e0: 6e 75 61 6c 6c 79 2e 0a 23 0a 21 49 46 4e 44 45  nually..#.!IFNDE
09f0: 46 20 55 53 45 5f 54 43 4c 53 48 5f 49 4e 5f 50  F USE_TCLSH_IN_P
0a00: 41 54 48 0a 55 53 45 5f 54 43 4c 53 48 5f 49 4e  ATH.USE_TCLSH_IN
0a10: 5f 50 41 54 48 20 3d 20 30 0a 21 45 4e 44 49 46  _PATH = 0.!ENDIF
0a20: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0a30: 2d 30 20 74 6f 20 75 73 65 20 7a 6c 69 62 2c 20  -0 to use zlib,
0a40: 70 6f 73 73 69 62 6c 79 20 63 6f 6d 70 69 6c 69  possibly compili
0a50: 6e 67 20 69 74 20 66 72 6f 6d 20 73 6f 75 72 63  ng it from sourc
0a60: 65 20 63 6f 64 65 2e 0a 23 0a 21 49 46 4e 44 45  e code..#.!IFNDE
0a70: 46 20 55 53 45 5f 5a 4c 49 42 0a 55 53 45 5f 5a  F USE_ZLIB.USE_Z
0a80: 4c 49 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  LIB = 0.!ENDIF..
0a90: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0aa0: 20 74 6f 20 62 75 69 6c 64 20 7a 6c 69 62 20 66   to build zlib f
0ab0: 72 6f 6d 20 73 6f 75 72 63 65 20 63 6f 64 65 2e  rom source code.
0ac0: 20 20 54 68 69 73 20 69 73 20 65 6e 61 62 6c 65    This is enable
0ad0: 64 20 62 79 0a 23 20 64 65 66 61 75 6c 74 20 61  d by.# default a
0ae0: 6e 64 20 69 6e 20 74 68 61 74 20 63 61 73 65 20  nd in that case
0af0: 69 74 20 77 69 6c 6c 20 62 65 20 61 73 73 75 6d  it will be assum
0b00: 65 64 20 74 68 61 74 20 74 68 65 20 5a 4c 49 42  ed that the ZLIB
0b10: 44 49 52 20 6d 61 63 72 6f 0a 23 20 70 6f 69 6e  DIR macro.# poin
0b20: 74 73 20 74 6f 20 74 68 65 20 74 6f 70 2d 6c 65  ts to the top-le
0b30: 76 65 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20  vel source code
0b40: 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 7a 6c  directory for zl
0b50: 69 62 2e 0a 23 0a 21 49 46 4e 44 45 46 20 42 55  ib..#.!IFNDEF BU
0b60: 49 4c 44 5f 5a 4c 49 42 0a 42 55 49 4c 44 5f 5a  ILD_ZLIB.BUILD_Z
0b70: 4c 49 42 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a  LIB = 1.!ENDIF..
0b80: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0b90: 20 74 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65   to use the Inte
0ba0: 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e  rnational Compon
0bb0: 65 6e 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65  ents for Unicode
0bc0: 20 28 49 43 55 29 2e 0a 23 0a 21 49 46 4e 44 45   (ICU)..#.!IFNDE
0bd0: 46 20 55 53 45 5f 49 43 55 0a 55 53 45 5f 49 43  F USE_ICU.USE_IC
0be0: 55 20 3d 20 30 0a 21 45 4e 44 49 46 0a 23 20 3c  U = 0.!ENDIF.# <
0bf0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53 65 74 20  </mark>>..# Set
0c00: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79  this non-0 to dy
0c10: 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74  namically link t
0c20: 6f 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69  o the MSVC runti
0c30: 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49  me library..#.!I
0c40: 46 4e 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c  FNDEF USE_CRT_DL
0c50: 4c 0a 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20  L.USE_CRT_DLL =
0c60: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
0c70: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69  this non-0 to li
0c80: 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54 34  nk to the RPCRT4
0c90: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e   library..#.!IFN
0ca0: 44 45 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c  DEF USE_RPCRT4_L
0cb0: 49 42 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49  IB.USE_RPCRT4_LI
0cc0: 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  B = 0.!ENDIF..#
0cd0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0ce0: 6f 20 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d  o generate assem
0cf0: 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67  bly code listing
0d00: 73 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65  s for the source
0d10: 20 63 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23   code.# files..#
0d20: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53  .!IFNDEF USE_LIS
0d30: 54 49 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e  TINGS.USE_LISTIN
0d40: 47 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  GS = 0.!ENDIF..#
0d50: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0d60: 74 6f 20 61 74 74 65 6d 70 74 20 73 65 74 74 69  to attempt setti
0d70: 6e 67 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f  ng the native co
0d80: 6d 70 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63  mpiler automatic
0d90: 61 6c 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73  ally.# for cross
0da0: 2d 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63  -compiling the c
0db0: 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c  ommand line tool
0dc0: 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20  s needed during
0dd0: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a  the compilation.
0de0: 23 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46  # process..#.!IF
0df0: 4e 44 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43  NDEF XCOMPILE.XC
0e00: 4f 4d 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49  OMPILE = 0.!ENDI
0e10: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0e20: 6e 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e  n-0 to use the n
0e30: 61 74 69 76 65 20 6c 69 62 72 61 72 69 65 73 20  ative libraries
0e40: 70 61 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d  paths for cross-
0e50: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20  compiling.# the
0e60: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f  command line too
0e70: 6c 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67  ls needed during
0e80: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
0e90: 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e   process..#.!IFN
0ea0: 44 45 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c  DEF USE_NATIVE_L
0eb0: 49 42 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49  IBPATHS.USE_NATI
0ec0: 56 45 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a  VE_LIBPATHS = 0.
0ed0: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
0ee0: 69 73 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65  is 0 to skip the
0ef0: 20 63 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65   compiling and e
0f00: 6d 62 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73  mbedding of vers
0f10: 69 6f 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23  ion resources..#
0f20: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a  .!IFNDEF USE_RC.
0f30: 55 53 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49  USE_RC = 1.!ENDI
0f40: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0f50: 6e 2d 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62  n-0 to compile b
0f60: 69 6e 61 72 69 65 73 20 73 75 69 74 61 62 6c 65  inaries suitable
0f70: 20 66 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65   for the WinRT e
0f80: 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68  nvironment..# Th
0f90: 69 73 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20  is setting does
0fa0: 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79  not apply to any
0fb0: 20 62 69 6e 61 72 69 65 73 20 74 68 61 74 20 72   binaries that r
0fc0: 65 71 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70  equire Tcl to op
0fd0: 65 72 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79  erate.# properly
0fe0: 20 28 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20   (i.e. the text
0ff0: 66 69 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23  fixture, etc)..#
1000: 0a 21 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e  .!IFNDEF FOR_WIN
1010: 52 54 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30  RT.FOR_WINRT = 0
1020: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1030: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
1040: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
1050: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 55  itable for the U
1060: 57 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a  WP environment..
1070: 23 20 54 68 69 73 20 73 65 74 74 69 6e 67 20 64  # This setting d
1080: 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f  oes not apply to
1090: 20 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74 68   any binaries th
10a0: 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 20 74  at require Tcl t
10b0: 6f 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f 70  o operate.# prop
10c0: 65 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20 74  erly (i.e. the t
10d0: 65 78 74 20 66 69 78 74 75 72 65 2c 20 65 74 63  ext fixture, etc
10e0: 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52  )..#.!IFNDEF FOR
10f0: 5f 55 57 50 0a 46 4f 52 5f 55 57 50 20 3d 20 30  _UWP.FOR_UWP = 0
1100: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1110: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
1120: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
1130: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57  itable for the W
1140: 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f  indows 10 platfo
1150: 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f  rm..#.!IFNDEF FO
1160: 52 5f 57 49 4e 31 30 0a 46 4f 52 5f 57 49 4e 31  R_WIN10.FOR_WIN1
1170: 30 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  0 = 0.!ENDIF..#
1180: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74  <<mark>>.# Set t
1190: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69  his non-0 to ski
11a0: 70 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20  p attempting to
11b0: 6c 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20  look for and/or
11c0: 6c 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63  link with the Tc
11d0: 6c 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72  l.# runtime libr
11e0: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ary..#.!IFNDEF N
11f0: 4f 5f 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30  O_TCL.NO_TCL = 0
1200: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
1210: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
1220: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61  to non-0 to crea
1230: 74 65 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e  te and use PDBs.
1240: 0a 23 0a 21 49 46 4e 44 45 46 20 53 59 4d 42 4f  .#.!IFNDEF SYMBO
1250: 4c 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 21  LS.SYMBOLS = 1.!
1260: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
1270: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
1280: 65 20 74 68 65 20 53 51 4c 69 74 65 20 64 65 62  e the SQLite deb
1290: 75 67 67 69 6e 67 20 68 65 61 70 20 73 75 62 73  ugging heap subs
12a0: 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44 45 46  ystem..#.!IFNDEF
12b0: 20 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44 45 42   MEMDEBUG.MEMDEB
12c0: 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  UG = 0.!ENDIF..#
12d0: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
12e0: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 57 69  -0 to use the Wi
12f0: 6e 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20  n32 native heap
1300: 73 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46  subsystem..#.!IF
1310: 4e 44 45 46 20 57 49 4e 33 32 48 45 41 50 0a 57  NDEF WIN32HEAP.W
1320: 49 4e 33 32 48 45 41 50 20 3d 20 30 0a 21 45 4e  IN32HEAP = 0.!EN
1330: 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20  DIF..# Set this
1340: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62  to non-0 to enab
1350: 6c 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61 63  le OSTRACE() mac
1360: 72 6f 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62  ros, which can b
1370: 65 20 75 73 65 66 75 6c 20 77 68 65 6e 0a 23 20  e useful when.#
1380: 64 65 62 75 67 67 69 6e 67 2e 0a 23 0a 21 49 46  debugging..#.!IF
1390: 4e 44 45 46 20 4f 53 54 52 41 43 45 0a 4f 53 54  NDEF OSTRACE.OST
13a0: 52 41 43 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a  RACE = 0.!ENDIF.
13b0: 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6f  .# Set this to o
13c0: 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77  ne of the follow
13d0: 69 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 65 6e  ing values to en
13e0: 61 62 6c 65 20 76 61 72 69 6f 75 73 20 64 65 62  able various deb
13f0: 75 67 67 69 6e 67 0a 23 20 66 65 61 74 75 72 65  ugging.# feature
1400: 73 2e 20 20 45 61 63 68 20 6c 65 76 65 6c 20 69  s.  Each level i
1410: 6e 63 6c 75 64 65 73 20 74 68 65 20 64 65 62 75  ncludes the debu
1420: 67 67 69 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72  gging options fr
1430: 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a  om the previous.
1440: 23 20 6c 65 76 65 6c 73 2e 20 20 43 75 72 72 65  # levels.  Curre
1450: 6e 74 6c 79 2c 20 74 68 65 20 72 65 63 6f 67 6e  ntly, the recogn
1460: 69 7a 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20  ized values for
1470: 44 45 42 55 47 20 61 72 65 3a 0a 23 0a 23 20 30  DEBUG are:.#.# 0
1480: 20 3d 3d 20 4e 44 45 42 55 47 3a 20 44 69 73 61   == NDEBUG: Disa
1490: 62 6c 65 73 20 61 73 73 65 72 74 28 29 20 61 6e  bles assert() an
14a0: 64 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 20  d other runtime
14b0: 64 69 61 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31  diagnostics..# 1
14c0: 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c   == SQLITE_ENABL
14d0: 45 5f 41 50 49 5f 41 52 4d 4f 52 3a 20 65 78 74  E_API_ARMOR: ext
14e0: 72 61 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64  ra attempts to d
14f0: 65 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20  etect misuse of
1500: 74 68 65 20 41 50 49 2e 0a 23 20 32 20 3d 3d 20  the API..# 2 ==
1510: 44 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47 20  Disables NDEBUG
1520: 61 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a 61  and all optimiza
1530: 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20 65  tions and then e
1540: 6e 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20 33  nables PDBs..# 3
1550: 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55 47   == SQLITE_DEBUG
1560: 3a 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f 75  : Enables variou
1570: 73 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d 65  s diagnostics me
1580: 73 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65 2e  ssages and code.
1590: 0a 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 57  .# 4 == SQLITE_W
15a0: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49  IN32_MALLOC_VALI
15b0: 44 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20 74  DATE: Validate t
15c0: 68 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65 20  he Win32 native
15d0: 68 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a 23  heap per call..#
15e0: 20 35 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42   5 == SQLITE_DEB
15f0: 55 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e 61  UG_OS_TRACE: Ena
1600: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
1610: 20 74 68 65 20 4f 53 54 52 41 43 45 28 29 20 6d   the OSTRACE() m
1620: 61 63 72 6f 73 2e 0a 23 20 36 20 3d 3d 20 53 51  acros..# 6 == SQ
1630: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
1640: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
1650: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f 54  put from the IOT
1660: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
1670: 0a 21 49 46 4e 44 45 46 20 44 45 42 55 47 0a 44  .!IFNDEF DEBUG.D
1680: 45 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a  EBUG = 0.!ENDIF.
1690: 0a 23 20 45 6e 61 62 6c 65 20 75 73 65 20 6f 66  .# Enable use of
16a0: 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 70 69   available compi
16b0: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
16c0: 73 3f 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68  s?  Normally, th
16d0: 69 73 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 6e  is should be.# n
16e0: 6f 6e 2d 7a 65 72 6f 2e 20 20 53 65 74 74 69 6e  on-zero.  Settin
16f0: 67 20 74 68 69 73 20 74 6f 20 7a 65 72 6f 2c 20  g this to zero,
1700: 74 68 75 73 20 64 69 73 61 62 6c 69 6e 67 20 61  thus disabling a
1710: 6c 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  ll compiler opti
1720: 6d 69 7a 61 74 69 6f 6e 73 2c 0a 23 20 63 61 6e  mizations,.# can
1730: 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 74   be useful for t
1740: 65 73 74 69 6e 67 2e 0a 23 0a 21 49 46 4e 44 45  esting..#.!IFNDE
1750: 46 20 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 0a  F OPTIMIZATIONS.
1760: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 20 3d 20  OPTIMIZATIONS =
1770: 32 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  2.!ENDIF..# Set
1780: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
1790: 20 65 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 20   enable support
17a0: 66 6f 72 20 74 68 65 20 73 65 73 73 69 6f 6e 20  for the session
17b0: 65 78 74 65 6e 73 69 6f 6e 2e 0a 23 0a 21 49 46  extension..#.!IF
17c0: 4e 44 45 46 20 53 45 53 53 49 4f 4e 0a 53 45 53  NDEF SESSION.SES
17d0: 53 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  SION = 0.!ENDIF.
17e0: 0a 23 20 53 65 74 20 74 68 65 20 73 6f 75 72 63  .# Set the sourc
17f0: 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f 20 62  e code file to b
1800: 65 20 75 73 65 64 20 62 79 20 65 78 65 63 75 74  e used by execut
1810: 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 61 72  ables and librar
1820: 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 79 20  ies when.# they
1830: 6e 65 65 64 20 74 68 65 20 61 6d 61 6c 67 61 6d  need the amalgam
1840: 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46  ation..#.!IFNDEF
1850: 20 53 51 4c 49 54 45 33 43 0a 21 49 46 20 24 28   SQLITE3C.!IF $( 1860: 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 SPLIT_AMALGAMATI 1870: 4f 4e 29 21 3d 30 0a 53 51 4c 49 54 45 33 43 20 ON)!=0.SQLITE3C 1880: 3d 20 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 0a = sqlite3-all.c. 1890: 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 43 20 3d !ELSE.SQLITE3C = 18a0: 20 73 71 6c 69 74 65 33 2e 63 0a 21 45 4e 44 49 sqlite3.c.!ENDI 18b0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 F.!ENDIF..# Set 18c0: 74 68 65 20 69 6e 63 6c 75 64 65 20 63 6f 64 65 the include code 18d0: 20 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 file to be used 18e0: 20 62 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 by executables 18f0: 61 6e 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 and libraries wh 1900: 65 6e 0a 23 20 74 68 65 79 20 6e 65 65 64 20 53 en.# they need S 1910: 51 4c 69 74 65 2e 0a 23 0a 21 49 46 4e 44 45 46 QLite..#.!IFNDEF 1920: 20 53 51 4c 49 54 45 33 48 0a 53 51 4c 49 54 45 SQLITE3H.SQLITE 1930: 33 48 20 3d 20 73 71 6c 69 74 65 33 2e 68 0a 21 3H = sqlite3.h.! 1940: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 1950: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 the name to use 1960: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 for the SQLite 1970: 64 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 dynamic link lib 1980: 72 61 72 79 20 28 44 4c 4c 29 2e 0a 23 0a 21 49 rary (DLL)..#.!I 1990: 46 4e 44 45 46 20 53 51 4c 49 54 45 33 44 4c 4c FNDEF SQLITE3DLL 19a0: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 .!IF$(FOR_WIN10
19b0: 29 21 3d 30 0a 53 51 4c 49 54 45 33 44 4c 4c 20  )!=0.SQLITE3DLL
19c0: 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 64 6c 6c  = winsqlite3.dll
19d0: 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 44 4c  .!ELSE.SQLITE3DL
19e0: 4c 20 3d 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a  L = sqlite3.dll.
19f0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
1a00: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d   This is the nam
1a10: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65  e to use for the
1a20: 20 53 51 4c 69 74 65 20 69 6d 70 6f 72 74 20 6c   SQLite import l
1a30: 69 62 72 61 72 79 20 28 4c 49 42 29 2e 0a 23 0a  ibrary (LIB)..#.
1a40: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 4c  !IFNDEF SQLITE3L
1a50: 49 42 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  IB.!IF $(FOR_WIN 1a60: 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 33 4c 49 10)!=0.SQLITE3LI 1a70: 42 20 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 6c B = winsqlite3.l 1a80: 69 62 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 ib.!ELSE.SQLITE3 1a90: 4c 49 42 20 3d 20 73 71 6c 69 74 65 33 2e 6c 69 LIB = sqlite3.li 1aa0: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a b.!ENDIF.!ENDIF. 1ab0: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 6e .# This is the n 1ac0: 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 ame to use for t 1ad0: 68 65 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 20 he SQLite shell 1ae0: 65 78 65 63 75 74 61 62 6c 65 20 28 45 58 45 29 executable (EXE) 1af0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1b00: 54 45 33 45 58 45 0a 21 49 46 20 24 28 46 4f 52 TE3EXE.!IF$(FOR
1b10: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54  _WIN10)!=0.SQLIT
1b20: 45 33 45 58 45 20 3d 20 77 69 6e 73 71 6c 69 74  E3EXE = winsqlit
1b30: 65 33 73 68 65 6c 6c 2e 65 78 65 0a 21 45 4c 53  e3shell.exe.!ELS
1b40: 45 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20 73  E.SQLITE3EXE = s
1b50: 71 6c 69 74 65 33 2e 65 78 65 0a 21 45 4e 44 49  qlite3.exe.!ENDI
1b60: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73  F.!ENDIF..# This
1b70: 20 69 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74   is the argument
1b80: 20 75 73 65 64 20 74 6f 20 73 65 74 20 74 68 65   used to set the
1b90: 20 70 72 6f 67 72 61 6d 20 64 61 74 61 62 61 73   program databas
1ba0: 65 20 28 50 44 42 29 20 66 69 6c 65 20 66 6f 72  e (PDB) file for
1bb0: 20 74 68 65 0a 23 20 53 51 4c 69 74 65 20 73 68   the.# SQLite sh
1bc0: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 28  ell executable (
1bd0: 45 58 45 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  EXE)..#.!IFNDEF
1be0: 53 51 4c 49 54 45 33 45 58 45 50 44 42 0a 21 49  SQLITE3EXEPDB.!I
1bf0: 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  F $(FOR_WIN10)!= 1c00: 30 0a 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 0.SQLITE3EXEPDB 1c10: 3d 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 45 =.!ELSE.SQLITE3E 1c20: 58 45 50 44 42 20 3d 20 2f 70 64 62 3a 73 71 6c XEPDB = /pdb:sql 1c30: 69 74 65 33 73 68 2e 70 64 62 0a 21 45 4e 44 49 ite3sh.pdb.!ENDI 1c40: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 F.!ENDIF..# <<ma 1c50: 72 6b 3e 3e 0a 23 20 54 68 65 73 65 20 61 72 65 rk>>.# These are 1c60: 20 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 74 68 the names of th 1c70: 65 20 63 75 73 74 6f 6d 69 7a 65 64 20 54 63 6c e customized Tcl 1c80: 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 header files us 1c90: 65 64 20 62 79 20 76 61 72 69 6f 75 73 20 70 61 ed by various pa 1ca0: 72 74 73 0a 23 20 6f 66 20 74 68 69 73 20 6d 61 rts.# of this ma 1cb0: 6b 65 66 69 6c 65 20 77 68 65 6e 20 74 68 65 20 kefile when the 1cc0: 73 74 64 63 61 6c 6c 20 63 61 6c 6c 69 6e 67 20 stdcall calling 1cd0: 63 6f 6e 76 65 6e 74 69 6f 6e 20 69 73 20 69 6e convention is in 1ce0: 20 75 73 65 2e 20 20 49 74 20 69 73 20 6e 6f 74 use. It is not 1cf0: 0a 23 20 75 73 65 64 20 66 6f 72 20 61 6e 79 20 .# used for any 1d00: 6f 74 68 65 72 20 70 75 72 70 6f 73 65 2e 0a 23 other purpose..# 1d10: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 54 .!IFNDEF SQLITET 1d20: 43 4c 48 0a 53 51 4c 49 54 45 54 43 4c 48 20 3d CLH.SQLITETCLH = 1d30: 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 21 45 sqlite_tcl.h.!E 1d40: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 53 51 NDIF..!IFNDEF SQ 1d50: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 0a 53 51 LITETCLDECLSH.SQ 1d60: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 20 3d 20 LITETCLDECLSH = 1d70: 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e sqlite_tclDecls. 1d80: 68 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 h.!ENDIF..# Thes 1d90: 65 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69 e are the additi 1da0: 6f 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61 onal targets tha 1db0: 74 20 74 68 65 20 74 61 72 67 65 74 73 20 74 68 t the targets th 1dc0: 61 74 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 at integrate wit 1dd0: 68 20 74 68 65 0a 23 20 54 63 6c 20 6c 69 62 72 h the.# Tcl libr 1de0: 61 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e ary should depen 1df0: 64 20 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c d on when compil 1e00: 69 6e 67 2c 20 65 74 63 2e 0a 23 0a 21 49 46 4e ing, etc..#.!IFN 1e10: 44 45 46 20 53 51 4c 49 54 45 5f 54 43 4c 5f 44 DEF SQLITE_TCL_D 1e20: 45 50 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 EP.!IF$(USE_STD
1e30: 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  CALL)!=0 || $(FO 1e40: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 R_WIN10)!=0.SQLI 1e50: 54 45 5f 54 43 4c 5f 44 45 50 20 3d 20 24 28 53 TE_TCL_DEP =$(S
1e60: 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29 20  QLITETCLDECLSH)
1e70: 24 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45  $(SQLITETCLH).!E 1e80: 4c 53 45 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44 LSE.SQLITE_TCL_D 1e90: 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44 EP =.!ENDIF.!END 1ea0: 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a IF.# <</mark>>.. 1eb0: 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 # These are the 1ec0: 22 73 74 61 6e 64 61 72 64 22 20 53 51 4c 69 74 "standard" SQLit 1ed0: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 e compilation op 1ee0: 74 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 tions used when 1ef0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 compiling for.# 1f00: 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 the Windows plat 1f10: 66 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 form..#.!IFNDEF 1f20: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG 1f30: 53 0a 21 49 46 20 24 28 4d 49 4e 49 4d 41 4c 5f S.!IF$(MINIMAL_
1f40: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30  AMALGAMATION)==0
1f50: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
1f60: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU 1f70: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1f80: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 33 3d 31 TE_ENABLE_FTS3=1 1f90: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 .OPT_FEATURE_FLA 1fa0: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 GS =$(OPT_FEATU
1fb0: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1fc0: 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45 45 3d  TE_ENABLE_RTREE=
1fd0: 31 0a 21 45 4e 44 49 46 0a 4f 50 54 5f 46 45 41  1.!ENDIF.OPT_FEA
1fe0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O 1ff0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 2000: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c ) -DSQLITE_ENABL 2010: 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44 41 54 E_COLUMN_METADAT 2020: 41 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20 53 68 A=1.!ENDIF..# Sh 2030: 6f 75 6c 64 20 74 68 65 20 73 65 73 73 69 6f 6e ould the session 2040: 20 65 78 74 65 6e 73 69 6f 6e 20 62 65 20 65 6e extension be en 2050: 61 62 6c 65 64 3f 20 20 49 66 20 73 6f 2c 20 61 abled? If so, a 2060: 64 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f dd compilation o 2070: 70 74 69 6f 6e 73 0a 23 20 74 6f 20 65 6e 61 62 ptions.# to enab 2080: 6c 65 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 53 le it..#.!IF$(S
2090: 45 53 53 49 4f 4e 29 21 3d 30 0a 4f 50 54 5f 46  ESSION)!=0.OPT_F
20a0: 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24  EATURE_FLAGS = $20b0: 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 (OPT_FEATURE_FLA 20c0: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 GS) -DSQLITE_ENA 20d0: 42 4c 45 5f 53 45 53 53 49 4f 4e 3d 31 0a 4f 50 BLE_SESSION=1.OP 20e0: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 T_FEATURE_FLAGS 20f0: 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f =$(OPT_FEATURE_
2100: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
2110: 45 4e 41 42 4c 45 5f 50 52 45 55 50 44 41 54 45  ENABLE_PREUPDATE
2120: 5f 48 4f 4f 4b 3d 31 0a 21 45 4e 44 49 46 0a 0a  _HOOK=1.!ENDIF..
2130: 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20  # These are the
2140: 22 65 78 74 65 6e 64 65 64 22 20 53 51 4c 69 74  "extended" SQLit
2150: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70  e compilation op
2160: 74 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20  tions used when
2170: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20  compiling for.#
2180: 74 68 65 20 57 69 6e 64 6f 77 73 20 31 30 20 70  the Windows 10 p
2190: 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44  latform..#.!IFND
21a0: 45 46 20 45 58 54 5f 46 45 41 54 55 52 45 5f 46  EF EXT_FEATURE_F
21b0: 4c 41 47 53 0a 21 49 46 20 24 28 46 4f 52 5f 57  LAGS.!IF $(FOR_W 21c0: 49 4e 31 30 29 21 3d 30 0a 45 58 54 5f 46 45 41 IN10)!=0.EXT_FEA 21d0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 45 TURE_FLAGS =$(E
21e0: 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  XT_FEATURE_FLAGS
21f0: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
2200: 45 5f 46 54 53 34 3d 31 0a 45 58 54 5f 46 45 41  E_FTS4=1.EXT_FEA
2210: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 45  TURE_FLAGS = $(E 2220: 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 XT_FEATURE_FLAGS 2230: 29 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 54 45 ) -DSQLITE_SYSTE 2240: 4d 5f 4d 41 4c 4c 4f 43 3d 31 0a 45 58 54 5f 46 M_MALLOC=1.EXT_F 2250: 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 EATURE_FLAGS =$
2260: 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (EXT_FEATURE_FLA
2270: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49  GS) -DSQLITE_OMI
2280: 54 5f 4c 4f 43 41 4c 54 49 4d 45 3d 31 0a 21 45  T_LOCALTIME=1.!E
2290: 4c 53 45 0a 45 58 54 5f 46 45 41 54 55 52 45 5f  LSE.EXT_FEATURE_
22a0: 46 4c 41 47 53 20 3d 0a 21 45 4e 44 49 46 0a 21  FLAGS =.!ENDIF.!
22b0: 45 4e 44 49 46 0a 0a 23 23 23 23 23 23 23 23 23  ENDIF..#########
22c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2300: 23 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23  ######.#########
2310: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2320: 23 23 23 23 23 23 20 45 4e 44 20 4f 46 20 4f 50  ###### END OF OP
2330: 54 49 4f 4e 53 20 23 23 23 23 23 23 23 23 23 23  TIONS ##########
2340: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2350: 23 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23  ######.#########
2360: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2370: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2380: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2390: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
23a0: 23 23 23 23 23 23 0a 0a 23 20 57 68 65 6e 20 63  ######..# When c
23b0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 74 68 65  ompiling for the
23c0: 20 57 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74   Windows 10 plat
23d0: 66 6f 72 6d 2c 20 74 68 65 20 50 4c 41 54 46 4f  form, the PLATFO
23e0: 52 4d 20 6d 61 63 72 6f 20 6d 75 73 74 20 62 65  RM macro must be
23f0: 20 73 65 74 0a 23 20 74 6f 20 61 6e 20 61 70 70   set.# to an app
2400: 72 6f 70 72 69 61 74 65 20 76 61 6c 75 65 20 28  ropriate value (
2410: 65 2e 67 2e 20 78 38 36 2c 20 78 36 34 2c 20 61  e.g. x86, x64, a
2420: 72 6d 2c 20 61 72 6d 36 34 2c 20 65 74 63 29 2e  rm, arm64, etc).
2430: 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  .#.!IF $(FOR_WIN 2440: 31 30 29 21 3d 30 0a 21 49 46 4e 44 45 46 20 50 10)!=0.!IFNDEF P 2450: 4c 41 54 46 4f 52 4d 0a 21 45 52 52 4f 52 20 55 LATFORM.!ERROR U 2460: 73 69 6e 67 20 74 68 65 20 46 4f 52 5f 57 49 4e sing the FOR_WIN 2470: 31 30 20 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 10 option requir 2480: 65 73 20 61 20 76 61 6c 75 65 20 66 6f 72 20 50 es a value for P 2490: 4c 41 54 46 4f 52 4d 2e 0a 21 45 4e 44 49 46 0a LATFORM..!ENDIF. 24a0: 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 61 !ENDIF..# This a 24b0: 73 73 75 6d 65 73 20 74 68 61 74 20 4d 53 56 43 ssumes that MSVC 24c0: 20 69 73 20 61 6c 77 61 79 73 20 69 6e 73 74 61 is always insta 24d0: 6c 6c 65 64 20 69 6e 20 33 32 2d 62 69 74 20 50 lled in 32-bit P 24e0: 72 6f 67 72 61 6d 20 46 69 6c 65 73 20 64 69 72 rogram Files dir 24f0: 65 63 74 6f 72 79 0a 23 20 61 6e 64 20 73 65 74 ectory.# and set 2500: 73 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 66 s the variable f 2510: 6f 72 20 75 73 65 20 69 6e 20 6c 6f 63 61 74 69 or use in locati 2520: 6e 67 20 6f 74 68 65 72 20 33 32 2d 62 69 74 20 ng other 32-bit 2530: 69 6e 73 74 61 6c 6c 73 20 61 63 63 6f 72 64 69 installs accordi 2540: 6e 67 6c 79 2e 0a 23 0a 50 52 4f 47 52 41 4d 46 ngly..#.PROGRAMF 2550: 49 4c 45 53 5f 58 38 36 20 3d 20 24 28 56 43 49 ILES_X86 =$(VCI
2560: 4e 53 54 41 4c 4c 44 49 52 29 5c 2e 2e 5c 2e 2e  NSTALLDIR)\..\..
2570: 0a 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38  .PROGRAMFILES_X8
2580: 36 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c  6 = $(PROGRAMFIL 2590: 45 53 5f 58 38 36 3a 5c 5c 3d 5c 29 0a 0a 23 20 ES_X86:\\=\)..# 25a0: 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 Check for the pr 25b0: 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 edefined command 25c0: 20 6d 61 63 72 6f 20 43 43 2e 20 20 54 68 69 73 macro CC. This 25d0: 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f should point to 25e0: 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 23 20 the compiler.# 25f0: 62 69 6e 61 72 79 20 66 6f 72 20 74 68 65 20 74 binary for the t 2600: 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 arget platform. 2610: 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 If it is not de 2620: 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 fined, simply de 2630: 66 69 6e 65 20 69 74 20 74 6f 0a 23 20 74 68 65 fine it to.# the 2640: 20 6c 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 legacy default 2650: 76 61 6c 75 65 20 27 63 6c 2e 65 78 65 27 2e 0a value 'cl.exe'.. 2660: 23 0a 21 49 46 4e 44 45 46 20 43 43 0a 43 43 20 #.!IFNDEF CC.CC 2670: 3d 20 63 6c 2e 65 78 65 0a 21 45 4e 44 49 46 0a = cl.exe.!ENDIF. 2680: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 .# Check for the 2690: 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d predefined comm 26a0: 61 6e 64 20 6d 61 63 72 6f 20 43 53 43 2e 20 20 and macro CSC. 26b0: 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e This should poin 26c0: 74 20 74 6f 20 61 20 77 6f 72 6b 69 6e 67 0a 23 t to a working.# 26d0: 20 43 20 53 68 61 72 70 20 63 6f 6d 70 69 6c 65 C Sharp compile 26e0: 72 20 62 69 6e 61 72 79 2e 20 20 49 66 20 69 74 r binary. If it 26f0: 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c is not defined, 2700: 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 simply define i 2710: 74 20 74 6f 20 74 68 65 0a 23 20 6c 65 67 61 63 t to the.# legac 2720: 79 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 y default value 2730: 27 63 73 63 2e 65 78 65 27 2e 0a 23 0a 21 49 46 'csc.exe'..#.!IF 2740: 4e 44 45 46 20 43 53 43 0a 43 53 43 20 3d 20 63 NDEF CSC.CSC = c 2750: 73 63 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 sc.exe.!ENDIF..# 2760: 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 63 Check for the c 2770: 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4c 44 2e ommand macro LD. 2780: 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f This should po 2790: 69 6e 74 20 74 6f 20 74 68 65 20 6c 69 6e 6b 65 int to the linke 27a0: 72 20 62 69 6e 61 72 79 20 66 6f 72 0a 23 20 74 r binary for.# t 27b0: 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f he target platfo 27c0: 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f rm. If it is no 27d0: 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c t defined, simpl 27e0: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 74 y define it to t 27f0: 68 65 20 6c 65 67 61 63 79 0a 23 20 64 65 66 61 he legacy.# defa 2800: 75 6c 74 20 76 61 6c 75 65 20 27 6c 69 6e 6b 2e ult value 'link. 2810: 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 exe'..#.!IFNDEF 2820: 4c 44 0a 4c 44 20 3d 20 6c 69 6e 6b 2e 65 78 65 LD.LD = link.exe 2830: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b .!ENDIF..# Check 2840: 20 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69 for the predefi 2850: 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 ned command macr 2860: 6f 20 52 43 2e 20 20 54 68 69 73 20 73 68 6f 75 o RC. This shou 2870: 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 ld point to the 2880: 72 65 73 6f 75 72 63 65 0a 23 20 63 6f 6d 70 69 resource.# compi 2890: 6c 65 72 20 62 69 6e 61 72 79 20 66 6f 72 20 74 ler binary for t 28a0: 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f he target platfo 28b0: 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f rm. If it is no 28c0: 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c t defined, simpl 28d0: 79 20 64 65 66 69 6e 65 0a 23 20 69 74 20 74 6f y define.# it to 28e0: 20 74 68 65 20 6c 65 67 61 63 79 20 64 65 66 61 the legacy defa 28f0: 75 6c 74 20 76 61 6c 75 65 20 27 72 63 2e 65 78 ult value 'rc.ex 2900: 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 52 43 e'..#.!IFNDEF RC 2910: 0a 52 43 20 3d 20 72 63 2e 65 78 65 0a 21 45 4e .RC = rc.exe.!EN 2920: 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 DIF..# Check for 2930: 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69 6d the MSVC runtim 2940: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d e library path m 2950: 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65 acro. Otherwise 2960: 2c 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c , this value wil 2970: 6c 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 74 l.# default to t 2980: 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74 6f he 'lib' directo 2990: 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 ry underneath th 29a0: 65 20 4d 53 56 43 20 69 6e 73 74 61 6c 6c 61 74 e MSVC installat 29b0: 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 ion directory..# 29c0: 0a 21 49 46 4e 44 45 46 20 43 52 54 4c 49 42 50 .!IFNDEF CRTLIBP 29d0: 41 54 48 0a 43 52 54 4c 49 42 50 41 54 48 20 3d ATH.CRTLIBPATH = 29e0: 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29$(VCINSTALLDIR)
29f0: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 43 52 54  \lib.!ENDIF..CRT
2a00: 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c  LIBPATH = $(CRTL 2a10: 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 IBPATH:\\=\)..# 2a20: 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 63 6f Check for the co 2a30: 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4e 43 43 2e mmand macro NCC. 2a40: 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f This should po 2a50: 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 int to the compi 2a60: 6c 65 72 20 62 69 6e 61 72 79 0a 23 20 66 6f 72 ler binary.# for 2a70: 20 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 74 68 the platform th 2a80: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 e compilation pr 2a90: 6f 63 65 73 73 20 69 73 20 74 61 6b 69 6e 67 20 ocess is taking 2aa0: 70 6c 61 63 65 20 6f 6e 2e 20 20 49 66 20 69 74 place on. If it 2ab0: 20 69 73 20 6e 6f 74 0a 23 20 64 65 66 69 6e 65 is not.# define 2ac0: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 d, simply define 2ad0: 20 69 74 20 74 6f 20 68 61 76 65 20 74 68 65 20 it to have the 2ae0: 73 61 6d 65 20 76 61 6c 75 65 20 61 73 20 74 68 same value as th 2af0: 65 20 43 43 20 6d 61 63 72 6f 2e 20 20 57 68 65 e CC macro. Whe 2b00: 6e 0a 23 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c n.# cross-compil 2b10: 69 6e 67 2c 20 69 74 20 69 73 20 73 75 67 67 65 ing, it is sugge 2b20: 73 74 65 64 20 74 68 61 74 20 74 68 69 73 20 6d sted that this m 2b30: 61 63 72 6f 20 62 65 20 6d 6f 64 69 66 69 65 64 acro be modified 2b40: 20 76 69 61 20 74 68 65 20 63 6f 6d 6d 61 6e 64 via the command 2b50: 0a 23 20 6c 69 6e 65 20 28 73 69 6e 63 65 20 6e .# line (since n 2b60: 6d 61 6b 65 20 69 74 73 65 6c 66 20 64 6f 65 73 make itself does 2b70: 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 20 62 not provide a b 2b80: 75 69 6c 74 2d 69 6e 20 6d 65 74 68 6f 64 20 74 uilt-in method t 2b90: 6f 20 67 75 65 73 73 20 69 74 29 2e 0a 23 20 46 o guess it)..# F 2ba0: 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 75 or example, to u 2bb0: 73 65 20 74 68 65 20 78 38 36 20 63 6f 6d 70 69 se the x86 compi 2bc0: 6c 65 72 20 77 68 65 6e 20 63 72 6f 73 73 2d 63 ler when cross-c 2bd0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 78 36 34 ompiling for x64 2be0: 2c 20 61 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 , a command.# li 2bf0: 6e 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 ne similar to th 2c00: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 75 6c e following coul 2c10: 64 20 62 65 20 75 73 65 64 20 28 61 6c 6c 20 6f d be used (all o 2c20: 6e 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 n one line):.#.# 2c30: 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 nmake /f Ma 2c40: 6b 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c 69 74 kefile.msc sqlit 2c50: 65 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20 20 20 e3.dll.# 2c60: 20 20 20 58 43 4f 4d 50 49 4c 45 3d 31 20 55 53 XCOMPILE=1 US 2c70: 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 E_NATIVE_LIBPATH 2c80: 53 3d 31 0a 23 0a 23 20 41 6c 74 65 72 6e 61 74 S=1.#.# Alternat 2c90: 69 76 65 6c 79 2c 20 74 68 65 20 66 75 6c 6c 20 ively, the full 2ca0: 70 61 74 68 20 61 6e 64 20 66 69 6c 65 20 6e 61 path and file na 2cb0: 6d 65 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c me to the compil 2cc0: 65 72 20 62 69 6e 61 72 79 20 66 6f 72 20 74 68 er binary for th 2cd0: 65 0a 23 20 70 6c 61 74 66 6f 72 6d 20 74 68 65 e.# platform the 2ce0: 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f compilation pro 2cf0: 63 65 73 73 20 69 73 20 74 61 6b 69 6e 67 20 70 cess is taking p 2d00: 6c 61 63 65 20 6d 61 79 20 62 65 20 73 70 65 63 lace may be spec 2d10: 69 66 69 65 64 20 28 61 6c 6c 20 6f 6e 0a 23 20 ified (all on.# 2d20: 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 20 20 one line):.#.# 2d30: 20 20 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65 nmake /f Make 2d40: 66 69 6c 65 2e 6d 73 63 20 73 71 6c 69 74 65 33 file.msc sqlite3 2d50: 2e 64 6c 6c 0a 23 20 20 20 20 20 20 20 20 20 20 .dll.# 2d60: 20 22 4e 43 43 3d 22 22 25 56 43 49 4e 53 54 41 "NCC=""%VCINSTA 2d70: 4c 4c 44 49 52 25 5c 62 69 6e 5c 63 6c 2e 65 78 LLDIR%\bin\cl.ex 2d80: 65 22 22 22 0a 23 20 20 20 20 20 20 20 20 20 20 e""".# 2d90: 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 USE_NATIVE_LIBP 2da0: 41 54 48 53 3d 31 0a 23 0a 21 49 46 44 45 46 20 ATHS=1.#.!IFDEF 2db0: 4e 43 43 0a 4e 43 43 20 3d 20 24 28 4e 43 43 3a NCC.NCC =$(NCC:
2dc0: 5c 5c 3d 5c 29 0a 21 45 4c 53 45 49 46 20 24 28  \\=\).!ELSEIF $( 2dd0: 58 43 4f 4d 50 49 4c 45 29 21 3d 30 0a 4e 43 43 XCOMPILE)!=0.NCC 2de0: 20 3d 20 22 24 28 56 43 49 4e 53 54 41 4c 4c 44 = "$(VCINSTALLD
2df0: 49 52 29 5c 62 69 6e 5c 24 28 43 43 29 22 0a 4e  IR)\bin\$(CC)".N 2e00: 43 43 20 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 CC =$(NCC:\\=\)
2e10: 0a 21 45 4c 53 45 0a 4e 43 43 20 3d 20 24 28 43  .!ELSE.NCC = $(C 2e20: 43 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 C).!ENDIF..# Che 2e30: 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 43 20 ck for the MSVC 2e40: 6e 61 74 69 76 65 20 72 75 6e 74 69 6d 65 20 6c native runtime l 2e50: 69 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 ibrary path macr 2e60: 6f 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 0a 23 o. Otherwise,.# 2e70: 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c 6c this value will 2e80: 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 default to the 2e90: 27 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 'lib' directory 2ea0: 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 4d underneath the M 2eb0: 53 56 43 0a 23 20 69 6e 73 74 61 6c 6c 61 74 69 SVC.# installati 2ec0: 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a on directory..#. 2ed0: 21 49 46 4e 44 45 46 20 4e 43 52 54 4c 49 42 50 !IFNDEF NCRTLIBP 2ee0: 41 54 48 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 ATH.NCRTLIBPATH 2ef0: 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 =$(VCINSTALLDIR
2f00: 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 43  )\lib.!ENDIF..NC
2f10: 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 4e 43  RTLIBPATH = $(NC 2f20: 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a RTLIBPATH:\\=\). 2f30: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 .# Check for the 2f40: 20 50 6c 61 74 66 6f 72 6d 20 53 44 4b 20 6c 69 Platform SDK li 2f50: 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f brary path macro 2f60: 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 . Otherwise, th 2f70: 69 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c 20 is.# value will 2f80: 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27 default to the ' 2f90: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75 lib' directory u 2fa0: 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 57 69 nderneath the Wi 2fb0: 6e 64 6f 77 73 0a 23 20 53 44 4b 20 69 6e 73 74 ndows.# SDK inst 2fc0: 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f allation directo 2fd0: 72 79 20 28 74 68 65 20 65 6e 76 69 72 6f 6e 6d ry (the environm 2fe0: 65 6e 74 20 76 61 72 69 61 62 6c 65 20 75 73 65 ent variable use 2ff0: 64 20 61 70 70 65 61 72 73 0a 23 20 74 6f 20 62 d appears.# to b 3000: 65 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e e available when 3010: 20 75 73 69 6e 67 20 56 69 73 75 61 6c 20 43 2b using Visual C+ 3020: 2b 20 32 30 30 38 20 6f 72 20 6c 61 74 65 72 20 + 2008 or later 3030: 76 69 61 20 74 68 65 0a 23 20 63 6f 6d 6d 61 6e via the.# comman 3040: 64 20 6c 69 6e 65 29 2e 0a 23 0a 21 49 46 4e 44 d line)..#.!IFND 3050: 45 46 20 4e 53 44 4b 4c 49 42 50 41 54 48 0a 4e EF NSDKLIBPATH.N 3060: 53 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 57 SDKLIBPATH =$(W
3070: 49 4e 44 4f 57 53 53 44 4b 44 49 52 29 5c 6c 69  INDOWSSDKDIR)\li
3080: 62 0a 21 45 4e 44 49 46 0a 0a 4e 53 44 4b 4c 49  b.!ENDIF..NSDKLI
3090: 42 50 41 54 48 20 3d 20 24 28 4e 53 44 4b 4c 49  BPATH = $(NSDKLI 30a0: 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 BPATH:\\=\)..# C 30b0: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 55 43 52 heck for the UCR 30c0: 54 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d T library path m 30d0: 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65 acro. Otherwise 30e0: 2c 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c , this value wil 30f0: 6c 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 74 l.# default to t 3100: 68 65 20 76 65 72 73 69 6f 6e 2d 73 70 65 63 69 he version-speci 3110: 66 69 63 2c 20 70 6c 61 74 66 6f 72 6d 2d 73 70 fic, platform-sp 3120: 65 63 69 66 69 63 20 27 6c 69 62 27 20 64 69 72 ecific 'lib' dir 3130: 65 63 74 6f 72 79 0a 23 20 75 6e 64 65 72 6e 65 ectory.# underne 3140: 61 74 68 20 74 68 65 20 57 69 6e 64 6f 77 73 20 ath the Windows 3150: 53 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e SDK installation 3160: 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21 49 directory..#.!I 3170: 46 4e 44 45 46 20 55 43 52 54 4c 49 42 50 41 54 FNDEF UCRTLIBPAT 3180: 48 0a 55 43 52 54 4c 49 42 50 41 54 48 20 3d 20 H.UCRTLIBPATH = 3190: 24 28 57 49 4e 44 4f 57 53 53 44 4b 44 49 52 29$(WINDOWSSDKDIR)
31a0: 5c 6c 69 62 5c 24 28 57 49 4e 44 4f 57 53 53 44  \lib\$(WINDOWSSD 31b0: 4b 4c 49 42 56 45 52 53 49 4f 4e 29 5c 75 63 72 KLIBVERSION)\ucr 31c0: 74 5c 24 28 50 4c 41 54 46 4f 52 4d 29 0a 21 45 t\$(PLATFORM).!E
31d0: 4e 44 49 46 0a 0a 55 43 52 54 4c 49 42 50 41 54  NDIF..UCRTLIBPAT
31e0: 48 20 3d 20 24 28 55 43 52 54 4c 49 42 50 41 54  H = $(UCRTLIBPAT 31f0: 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 20 63 6f 6d H:\\=\)..# C com 3200: 70 69 6c 65 72 20 61 6e 64 20 6f 70 74 69 6f 6e piler and option 3210: 73 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75 69 s for use in bui 3220: 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 lding executable 3230: 73 20 74 68 61 74 0a 23 20 77 69 6c 6c 20 72 75 s that.# will ru 3240: 6e 20 6f 6e 20 74 68 65 20 70 6c 61 74 66 6f 72 n on the platfor 3250: 6d 20 74 68 61 74 20 69 73 20 64 6f 69 6e 67 20 m that is doing 3260: 74 68 65 20 62 75 69 6c 64 2e 0a 23 0a 21 49 46 the build..#.!IF 3270: 20 24 28 55 53 45 5f 46 55 4c 4c 57 41 52 4e 29$(USE_FULLWARN)
3280: 21 3d 30 0a 42 43 43 20 3d 20 24 28 4e 43 43 29  !=0.BCC = $(NCC) 3290: 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 24 28 43 -nologo -W4$(C
32a0: 43 4f 50 54 53 29 20 24 28 42 43 43 4f 50 54 53  COPTS) $(BCCOPTS 32b0: 29 0a 21 45 4c 53 45 0a 42 43 43 20 3d 20 24 28 ).!ELSE.BCC =$(
32c0: 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 33  NCC) -nologo -W3
32d0: 20 24 28 43 43 4f 50 54 53 29 20 24 28 42 43 43   $(CCOPTS)$(BCC
32e0: 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20  OPTS).!ENDIF..#
32f0: 43 68 65 63 6b 20 69 66 20 61 73 73 65 6d 62 6c  Check if assembl
3300: 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67 73 20  y code listings
3310: 73 68 6f 75 6c 64 20 62 65 20 67 65 6e 65 72 61  should be genera
3320: 74 65 64 20 66 6f 72 20 74 68 65 20 73 6f 75 72  ted for the sour
3330: 63 65 0a 23 20 63 6f 64 65 20 66 69 6c 65 73 20  ce.# code files
3340: 74 6f 20 62 65 20 63 6f 6d 70 69 6c 65 64 2e 0a  to be compiled..
3350: 23 0a 21 49 46 20 24 28 55 53 45 5f 4c 49 53 54  #.!IF $(USE_LIST 3360: 49 4e 47 53 29 21 3d 30 0a 42 43 43 20 3d 20 24 INGS)!=0.BCC =$
3370: 28 42 43 43 29 20 2d 46 41 63 73 0a 21 45 4e 44  (BCC) -FAcs.!END
3380: 49 46 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 74  IF..# Check if t
3390: 68 65 20 6e 61 74 69 76 65 20 6c 69 62 72 61 72  he native librar
33a0: 79 20 70 61 74 68 73 20 73 68 6f 75 6c 64 20 62  y paths should b
33b0: 65 20 75 73 65 64 20 77 68 65 6e 20 63 6f 6d 70  e used when comp
33c0: 69 6c 69 6e 67 0a 23 20 74 68 65 20 63 6f 6d 6d  iling.# the comm
33d0: 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c 73 20 75  and line tools u
33e0: 73 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 63  sed during the c
33f0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65  ompilation proce
3400: 73 73 2e 20 20 49 66 0a 23 20 73 6f 2c 20 73 65  ss.  If.# so, se
3410: 74 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20  t the necessary
3420: 6d 61 63 72 6f 20 6e 6f 77 2e 0a 23 0a 21 49 46  macro now..#.!IF
3430: 20 24 28 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49   $(USE_NATIVE_LI 3440: 42 50 41 54 48 53 29 21 3d 30 0a 4e 4c 54 4c 49 BPATHS)!=0.NLTLI 3450: 42 50 41 54 48 53 20 3d 20 22 2f 4c 49 42 50 41 BPATHS = "/LIBPA 3460: 54 48 3a 24 28 4e 43 52 54 4c 49 42 50 41 54 48 TH:$(NCRTLIBPATH
3470: 29 22 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e  )" "/LIBPATH:$(N 3480: 53 44 4b 4c 49 42 50 41 54 48 29 22 0a 0a 21 49 SDKLIBPATH)"..!I 3490: 46 44 45 46 20 4e 55 43 52 54 4c 49 42 50 41 54 FDEF NUCRTLIBPAT 34a0: 48 0a 4e 55 43 52 54 4c 49 42 50 41 54 48 20 3d H.NUCRTLIBPATH = 34b0: 20 24 28 4e 55 43 52 54 4c 49 42 50 41 54 48 3a$(NUCRTLIBPATH:
34c0: 5c 5c 3d 5c 29 0a 4e 4c 54 4c 49 42 50 41 54 48  \\=\).NLTLIBPATH
34d0: 53 20 3d 20 24 28 4e 4c 54 4c 49 42 50 41 54 48  S = $(NLTLIBPATH 34e0: 53 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e S) "/LIBPATH:$(N
34f0: 55 43 52 54 4c 49 42 50 41 54 48 29 22 0a 21 45  UCRTLIBPATH)".!E
3500: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 43  NDIF.!ENDIF..# C
3510: 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70   compiler and op
3520: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e  tions for use in
3530: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74   building execut
3540: 61 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c  ables that.# wil
3550: 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 74 61 72  l run on the tar
3560: 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 28  get platform.  (
3570: 42 43 43 20 61 6e 64 20 54 43 43 20 61 72 65 20  BCC and TCC are
3580: 75 73 75 61 6c 6c 79 20 74 68 65 0a 23 20 73 61  usually the.# sa
3590: 6d 65 20 75 6e 6c 65 73 73 20 79 6f 75 72 20 61  me unless your a
35a0: 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69  re cross-compili
35b0: 6e 67 2e 29 0a 23 0a 21 49 46 20 24 28 55 53 45  ng.).#.!IF $(USE 35c0: 5f 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 54 43 _FULLWARN)!=0.TC 35d0: 43 20 3d 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 C =$(CC) -nolog
35e0: 6f 20 2d 57 34 20 2d 44 49 4e 43 4c 55 44 45 5f  o -W4 -DINCLUDE_
35f0: 4d 53 56 43 5f 48 3d 31 20 24 28 43 43 4f 50 54  MSVC_H=1 $(CCOPT 3600: 53 29 20 24 28 54 43 43 4f 50 54 53 29 0a 21 45 S)$(TCCOPTS).!E
3610: 4c 53 45 0a 54 43 43 20 3d 20 24 28 43 43 29 20  LSE.TCC = $(CC) 3620: 2d 6e 6f 6c 6f 67 6f 20 2d 57 33 20 24 28 43 43 -nologo -W3$(CC
3630: 4f 50 54 53 29 20 24 28 54 43 43 4f 50 54 53 29  OPTS) $(TCCOPTS) 3640: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b .!ENDIF..# Check 3650: 20 69 66 20 77 61 72 6e 69 6e 67 73 20 73 68 6f if warnings sho 3660: 75 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 uld be treated a 3670: 73 20 65 72 72 6f 72 73 20 77 68 65 6e 20 63 6f s errors when co 3680: 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21 49 46 20 24 mpiling..#.!IF$
3690: 28 55 53 45 5f 46 41 54 41 4c 5f 57 41 52 4e 29  (USE_FATAL_WARN)
36a0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29  !=0.TCC = $(TCC) 36b0: 20 2d 57 58 0a 21 45 4e 44 49 46 0a 0a 54 43 43 -WX.!ENDIF..TCC 36c0: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 =$(TCC) -DSQLI
36d0: 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20  TE_OS_WIN=1 -I.
36e0: 2d 49 24 28 54 4f 50 29 20 2d 49 24 28 54 4f 50  -I$(TOP) -I$(TOP
36f0: 29 5c 73 72 63 20 2d 66 70 3a 70 72 65 63 69 73  )\src -fp:precis
3700: 65 0a 52 43 43 20 3d 20 24 28 52 43 29 20 2d 44  e.RCC = $(RC) -D 3710: 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 SQLITE_OS_WIN=1 3720: 2d 49 2e 20 2d 49 24 28 54 4f 50 29 20 2d 49 24 -I. -I$(TOP) -I$3730: 28 54 4f 50 29 5c 73 72 63 20 24 28 52 43 4f 50 (TOP)\src$(RCOP
3740: 54 53 29 20 24 28 52 43 43 4f 50 54 53 29 0a 0a  TS) $(RCCOPTS).. 3750: 23 20 43 68 65 63 6b 20 69 66 20 77 65 20 77 61 # Check if we wa 3760: 6e 74 20 74 6f 20 75 73 65 20 74 68 65 20 22 73 nt to use the "s 3770: 74 64 63 61 6c 6c 22 20 63 61 6c 6c 69 6e 67 20 tdcall" calling 3780: 63 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 65 6e 20 convention when 3790: 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 20 54 68 69 compiling..# Thi 37a0: 73 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 s is not support 37b0: 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c ed by the compil 37c0: 65 72 73 20 66 6f 72 20 6e 6f 6e 2d 78 38 36 20 ers for non-x86 37d0: 70 6c 61 74 66 6f 72 6d 73 2e 20 20 49 74 20 73 platforms. It s 37e0: 68 6f 75 6c 64 0a 23 20 61 6c 73 6f 20 62 65 20 hould.# also be 37f0: 6e 6f 74 65 64 20 68 65 72 65 20 74 68 61 74 20 noted here that 3800: 62 75 69 6c 64 69 6e 67 20 61 6e 79 20 74 61 72 building any tar 3810: 67 65 74 20 77 69 74 68 20 74 68 65 73 65 20 22 get with these " 3820: 73 74 64 63 61 6c 6c 22 20 6f 70 74 69 6f 6e 73 stdcall" options 3830: 0a 23 20 77 69 6c 6c 20 6d 6f 73 74 20 6c 69 6b .# will most lik 3840: 65 6c 79 20 66 61 69 6c 20 69 66 20 74 68 65 20 ely fail if the 3850: 54 63 6c 20 6c 69 62 72 61 72 79 20 69 73 20 61 Tcl library is a 3860: 6c 73 6f 20 72 65 71 75 69 72 65 64 2e 20 20 54 lso required. T 3870: 68 69 73 20 69 73 20 64 75 65 0a 23 20 74 6f 20 his is due.# to 3880: 68 6f 77 20 74 68 65 20 54 63 6c 20 6c 69 62 72 how the Tcl libr 3890: 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 ary functions ar 38a0: 65 20 64 65 63 6c 61 72 65 64 20 61 6e 64 20 65 e declared and e 38b0: 78 70 6f 72 74 65 64 20 28 69 2e 65 2e 20 77 69 xported (i.e. wi 38c0: 74 68 6f 75 74 0a 23 20 61 6e 20 65 78 70 6c 69 thout.# an expli 38d0: 63 69 74 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 cit calling conv 38e0: 65 6e 74 69 6f 6e 2c 20 77 68 69 63 68 20 72 65 ention, which re 38f0: 73 75 6c 74 73 20 69 6e 20 22 63 64 65 63 6c 22 sults in "cdecl" 3900: 29 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 53 )..#.!IF$(USE_S
3910: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28  TDCALL)!=0 || $( 3920: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49 FOR_WIN10)!=0.!I 3930: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d F "$(PLATFORM)"=
3940: 3d 22 78 38 36 22 0a 43 4f 52 45 5f 43 43 4f 4e  ="x86".CORE_CCON
3950: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53  V_OPTS = -Gz -DS
3960: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64  QLITE_CDECL=__cd
3970: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49  ecl -DSQLITE_API
3980: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  CALL=__stdcall -
3990: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b  DSQLITE_CALLBACK
39a0: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c  =__stdcall -DSQL
39b0: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64  ITE_SYSAPI=__std
39c0: 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56  call.SHELL_CCONV
39d0: 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51  _OPTS = -Gz -DSQ
39e0: 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65  LITE_CDECL=__cde
39f0: 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43  cl -DSQLITE_APIC
3a00: 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44  ALL=__stdcall -D
3a10: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d  SQLITE_CALLBACK=
3a20: 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49  __stdcall -DSQLI
3a30: 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63  TE_SYSAPI=__stdc
3a40: 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54  all.# <<mark>>.T
3a50: 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  EST_CCONV_OPTS =
3a60: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44   -Gz -DSQLITE_CD
3a70: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51  ECL=__cdecl -DSQ
3a80: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73  LITE_APICALL=__s
3a90: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f  tdcall -DSQLITE_
3aa0: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61  CALLBACK=__stdca
3ab0: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41  ll -DSQLITE_SYSA
3ac0: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 49  PI=__stdcall -DI
3ad0: 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f 54 43  NCLUDE_SQLITE_TC
3ae0: 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54  L_H=1 -DSQLITE_T
3af0: 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a 23 20  CLAPI=__cdecl.#
3b00: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 0a  <</mark>>.!ELSE.
3b10: 21 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d  !IFNDEF PLATFORM
3b20: 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53  .CORE_CCONV_OPTS
3b30: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f   = -Gz -DSQLITE_
3b40: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44  CDECL=__cdecl -D
3b50: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f  SQLITE_APICALL=_
3b60: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54  _stdcall -DSQLIT
3b70: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64  E_CALLBACK=__std
3b80: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59  call -DSQLITE_SY
3b90: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53  SAPI=__stdcall.S
3ba0: 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20  HELL_CCONV_OPTS
3bb0: 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43  = -Gz -DSQLITE_C
3bc0: 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53  DECL=__cdecl -DS
3bd0: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f  QLITE_APICALL=__
3be0: 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45  stdcall -DSQLITE
3bf0: 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63  _CALLBACK=__stdc
3c00: 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53  all -DSQLITE_SYS
3c10: 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20  API=__stdcall.#
3c20: 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43  <<mark>>.TEST_CC
3c30: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d  ONV_OPTS = -Gz -
3c40: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f  DSQLITE_CDECL=__
3c50: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41  cdecl -DSQLITE_A
3c60: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c  PICALL=__stdcall
3c70: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41   -DSQLITE_CALLBA
3c80: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53  CK=__stdcall -DS
3c90: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73  QLITE_SYSAPI=__s
3ca0: 74 64 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45  tdcall -DINCLUDE
3cb0: 5f 53 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20  _SQLITE_TCL_H=1
3cc0: 2d 44 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d  -DSQLITE_TCLAPI=
3cd0: 5f 5f 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72  __cdecl.# <</mar
3ce0: 6b 3e 3e 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 43  k>>.!ELSE.CORE_C
3cf0: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 45 4c  CONV_OPTS =.SHEL
3d00: 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23  L_CCONV_OPTS =.#
3d10: 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43   <<mark>>.TEST_C
3d20: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c  CONV_OPTS =.# <<
3d30: 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 0a 21  /mark>>.!ENDIF.!
3d40: 45 4e 44 49 46 0a 21 45 4c 53 45 0a 43 4f 52 45  ENDIF.!ELSE.CORE
3d50: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48  _CCONV_OPTS =.SH
3d60: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  ELL_CCONV_OPTS =
3d70: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54  .# <<mark>>.TEST
3d80: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20  _CCONV_OPTS =.#
3d90: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46  <</mark>>.!ENDIF
3da0: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 61 64  ..# These are ad
3db0: 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65  ditional compile
3dc0: 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66  r options used f
3dd0: 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72  or the core libr
3de0: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43  ary..#.!IFNDEF C
3df0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
3e00: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S 3e10: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f HELL)!=0 ||$(FO
3e20: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 43 4f 52 45  R_WIN10)!=0.CORE
3e30: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20  _COMPILE_OPTS =
3e40: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  $(CORE_CCONV_OPT 3e50: 53 29 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d S) -DSQLITE_API= 3e60: 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c 65 78 __declspec(dllex 3e70: 70 6f 72 74 29 0a 21 45 4c 53 45 0a 43 4f 52 45 port).!ELSE.CORE 3e80: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 _COMPILE_OPTS = 3e90: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54$(CORE_CCONV_OPT
3ea0: 53 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  S).!ENDIF.!ENDIF
3eb0: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68  ..# These are th
3ec0: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72  e additional tar
3ed0: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 63 6f  gets that the co
3ee0: 72 65 20 6c 69 62 72 61 72 79 20 73 68 6f 75 6c  re library shoul
3ef0: 64 20 64 65 70 65 6e 64 20 6f 6e 0a 23 20 77 68  d depend on.# wh
3f00: 65 6e 20 6c 69 6e 6b 69 6e 67 2e 0a 23 0a 21 49  en linking..#.!I
3f10: 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e 4b 5f  FNDEF CORE_LINK_
3f20: 44 45 50 0a 21 49 46 20 24 28 44 59 4e 41 4d 49  DEP.!IF $(DYNAMI 3f30: 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 4f 52 45 C_SHELL)!=0.CORE 3f40: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 4c 53 _LINK_DEP =.!ELS 3f50: 45 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 EIF$(FOR_WIN10)
3f60: 3d 3d 30 20 7c 7c 20 22 24 28 50 4c 41 54 46 4f  ==0 || "$(PLATFO 3f70: 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43 4f 52 45 RM)"=="x86".CORE 3f80: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 20 73 71 6c 69 _LINK_DEP = sqli 3f90: 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a 43 4f te3.def.!ELSE.CO 3fa0: 52 45 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 RE_LINK_DEP =.!E 3fb0: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 NDIF.!ENDIF..# T 3fc0: 68 65 73 65 20 61 72 65 20 61 64 64 69 74 69 6f hese are additio 3fd0: 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f nal linker optio 3fe0: 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 ns used for the 3ff0: 63 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a core library..#. 4000: 21 49 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e !IFNDEF CORE_LIN 4010: 4b 5f 4f 50 54 53 0a 21 49 46 20 24 28 44 59 4e K_OPTS.!IF$(DYN
4020: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43  AMIC_SHELL)!=0.C
4030: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 0a  ORE_LINK_OPTS =.
4040: 21 45 4c 53 45 49 46 20 24 28 46 4f 52 5f 57 49  !ELSEIF $(FOR_WI 4050: 4e 31 30 29 3d 3d 30 20 7c 7c 20 22 24 28 50 4c N10)==0 || "$(PL
4060: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a  ATFORM)"=="x86".
4070: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d  CORE_LINK_OPTS =
4080: 20 2f 44 45 46 3a 73 71 6c 69 74 65 33 2e 64 65   /DEF:sqlite3.de
4090: 66 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e  f.!ELSE.CORE_LIN
40a0: 4b 5f 4f 50 54 53 20 3d 0a 21 45 4e 44 49 46 0a  K_OPTS =.!ENDIF.
40b0: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20  !ENDIF..# These
40c0: 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 63  are additional c
40d0: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20  ompiler options
40e0: 75 73 65 64 20 66 6f 72 20 74 68 65 20 73 68 65  used for the she
40f0: 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 23  ll executable..#
4100: 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43  .!IFNDEF SHELL_C
4110: 4f 4d 50 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20  OMPILE_OPTS.!IF
4120: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29  $(DYNAMIC_SHELL) 4130: 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e !=0 ||$(FOR_WIN
4140: 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d  10)!=0.SHELL_COM
4150: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48  PILE_OPTS = $(SH 4160: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 20 ELL_CCONV_OPTS) 4170: 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d 5f 5f 64 -DSQLITE_API=__d 4180: 65 63 6c 73 70 65 63 28 64 6c 6c 69 6d 70 6f 72 eclspec(dllimpor 4190: 74 29 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 t).!ELSE.SHELL_C 41a0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 OMPILE_OPTS =$(
41b0: 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53  SHELL_CCONV_OPTS
41c0: 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a  ).!ENDIF.!ENDIF.
41d0: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 73  .# This is the s
41e0: 6f 75 72 63 65 20 63 6f 64 65 20 74 68 61 74 20  ource code that
41f0: 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74  the shell execut
4200: 61 62 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 63  able should be c
4210: 6f 6d 70 69 6c 65 64 0a 23 20 77 69 74 68 2e 0a  ompiled.# with..
4220: 23 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f  #.!IFNDEF SHELL_
4230: 43 4f 52 45 5f 53 52 43 0a 21 49 46 20 24 28 44  CORE_SRC.!IF $(D 4240: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 YNAMIC_SHELL)!=0 4250: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 ||$(FOR_WIN10)
4260: 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53  !=0.SHELL_CORE_S
4270: 52 43 20 3d 0a 21 45 4c 53 45 0a 53 48 45 4c 4c  RC =.!ELSE.SHELL
4280: 5f 43 4f 52 45 5f 53 52 43 20 3d 20 24 28 53 51  _CORE_SRC = $(SQ 4290: 4c 49 54 45 33 43 29 0a 21 45 4e 44 49 46 0a 21 LITE3C).!ENDIF.! 42a0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 42b0: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 the core librar 42c0: 79 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c y that the shell 42d0: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 executable shou 42e0: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 2e 0a 23 0a ld depend on..#. 42f0: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f !IFNDEF SHELL_CO 4300: 52 45 5f 44 45 50 0a 21 49 46 20 24 28 44 59 4e RE_DEP.!IF$(DYN
4310: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c  AMIC_SHELL)!=0 |
4320: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  | $(FOR_WIN10)!= 4330: 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 0.SHELL_CORE_DEP 4340: 20 3d 20 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 =$(SQLITE3DLL)
4350: 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52  .!ELSE.SHELL_COR
4360: 45 5f 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21  E_DEP =.!ENDIF.!
4370: 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e  ENDIF..# <<mark>
4380: 3e 0a 23 20 49 66 20 7a 6c 69 62 20 73 75 70 70  >.# If zlib supp
4390: 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c 20  ort is enabled,
43a0: 61 64 64 20 74 68 65 20 64 65 70 65 6e 64 65 6e  add the dependen
43b0: 63 69 65 73 20 66 6f 72 20 69 74 2e 0a 23 0a 21  cies for it..#.!
43c0: 49 46 20 24 28 55 53 45 5f 5a 4c 49 42 29 21 3d  IF $(USE_ZLIB)!= 43d0: 30 20 26 26 20 24 28 42 55 49 4c 44 5f 5a 4c 49 0 &&$(BUILD_ZLI
43e0: 42 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45  B)!=0.SHELL_CORE
43f0: 5f 44 45 50 20 3d 20 7a 6c 69 62 20 24 28 53 48  _DEP = zlib $(SH 4400: 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 29 0a 54 45 ELL_CORE_DEP).TE 4410: 53 54 46 49 58 54 55 52 45 5f 44 45 50 20 3d 20 STFIXTURE_DEP = 4420: 7a 6c 69 62 20 24 28 54 45 53 54 46 49 58 54 55 zlib$(TESTFIXTU
4430: 52 45 5f 44 45 50 29 0a 21 45 4e 44 49 46 0a 23  RE_DEP).!ENDIF.#
4440: 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68   <</mark>>..# Th
4450: 69 73 20 69 73 20 74 68 65 20 63 6f 72 65 20 6c  is is the core l
4460: 69 62 72 61 72 79 20 74 68 61 74 20 74 68 65 20  ibrary that the
4470: 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65  shell executable
4480: 20 73 68 6f 75 6c 64 20 6c 69 6e 6b 20 77 69 74   should link wit
4490: 68 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 48 45  h..#.!IFNDEF SHE
44a0: 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0a 21 49 46 20  LL_CORE_LIB.!IF
44b0: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29  $(DYNAMIC_SHELL) 44c0: 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e !=0 ||$(FOR_WIN
44d0: 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52  10)!=0.SHELL_COR
44e0: 45 5f 4c 49 42 20 3d 20 24 28 53 51 4c 49 54 45  E_LIB = $(SQLITE 44f0: 33 4c 49 42 29 0a 21 45 4c 53 45 0a 53 48 45 4c 3LIB).!ELSE.SHEL 4500: 4c 5f 43 4f 52 45 5f 4c 49 42 20 3d 0a 21 45 4e L_CORE_LIB =.!EN 4510: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 DIF.!ENDIF..# Th 4520: 65 73 65 20 61 72 65 20 61 64 64 69 74 69 6f 6e ese are addition 4530: 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e al linker option 4540: 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 73 s used for the s 4550: 68 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 2e hell executable. 4560: 0a 23 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c .#.!IFNDEF SHELL 4570: 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 53 48 45 4c 4c _LINK_OPTS.SHELL 4580: 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 20 24 28 53 _LINK_OPTS =$(S
4590: 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 29 0a 21  HELL_CORE_LIB).!
45a0: 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 69  ENDIF..# Check i
45b0: 66 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20  f assembly code
45c0: 6c 69 73 74 69 6e 67 73 20 73 68 6f 75 6c 64 20  listings should
45d0: 62 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72  be generated for
45e0: 20 74 68 65 20 73 6f 75 72 63 65 0a 23 20 63 6f   the source.# co
45f0: 64 65 20 66 69 6c 65 73 20 74 6f 20 62 65 20 63  de files to be c
4600: 6f 6d 70 69 6c 65 64 2e 0a 23 0a 21 49 46 20 24  ompiled..#.!IF $4610: 28 55 53 45 5f 4c 49 53 54 49 4e 47 53 29 21 3d (USE_LISTINGS)!= 4620: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 0.TCC =$(TCC) -
4630: 46 41 63 73 0a 21 45 4e 44 49 46 0a 0a 23 20 57  FAcs.!ENDIF..# W
4640: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68  hen compiling th
4650: 65 20 6c 69 62 72 61 72 79 20 66 6f 72 20 75 73  e library for us
4660: 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54 20 65  e in the WinRT e
4670: 6e 76 69 72 6f 6e 6d 65 6e 74 2c 0a 23 20 74 68  nvironment,.# th
4680: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 6d 70  e following comp
4690: 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69 6f 6e 73  ile-time options
46a0: 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 61 73   must be used as
46b0: 20 77 65 6c 6c 20 74 6f 0a 23 20 64 69 73 61 62   well to.# disab
46c0: 6c 65 20 75 73 65 20 6f 66 20 57 69 6e 33 32 20  le use of Win32
46d0: 41 50 49 73 20 74 68 61 74 20 61 72 65 20 6e 6f  APIs that are no
46e0: 74 20 61 76 61 69 6c 61 62 6c 65 20 61 6e 64 20  t available and
46f0: 74 6f 20 65 6e 61 62 6c 65 0a 23 20 75 73 65 20  to enable.# use
4700: 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 74 68  of Win32 APIs th
4710: 61 74 20 61 72 65 20 73 70 65 63 69 66 69 63 20  at are specific
4720: 74 6f 20 57 69 6e 64 6f 77 73 20 38 20 61 6e 64  to Windows 8 and
4730: 2f 6f 72 20 57 69 6e 52 54 2e 0a 23 0a 21 49 46  /or WinRT..#.!IF
4740: 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30   $(FOR_WINRT)!=0 4750: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 .TCC =$(TCC) -D
4760: 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 52 54 3d  SQLITE_OS_WINRT=
4770: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 4780: 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 52 54 DSQLITE_OS_WINRT 4790: 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 =1.TCC =$(TCC)
47a0: 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 3d  -DWINAPI_FAMILY=
47b0: 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 5f 41 50  WINAPI_FAMILY_AP
47c0: 50 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  P.RCC = $(RCC) - 47d0: 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 3d 57 DWINAPI_FAMILY=W 47e0: 49 4e 41 50 49 5f 46 41 4d 49 4c 59 5f 41 50 50 INAPI_FAMILY_APP 47f0: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 20 63 6f 6d .!ENDIF..# C com 4800: 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f piler options fo 4810: 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31 30 r the Windows 10 4820: 20 70 6c 61 74 66 6f 72 6d 20 28 6e 65 65 64 73 platform (needs 4830: 20 4d 53 56 43 20 32 30 31 35 29 2e 0a 23 0a 21 MSVC 2015)..#.! 4840: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 IF$(FOR_WIN10)!
4850: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 4860: 2f 64 32 67 75 61 72 64 34 20 2d 44 5f 41 52 4d /d2guard4 -D_ARM 4870: 5f 57 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f _WINAPI_PARTITIO 4880: 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b 5f 41 56 N_DESKTOP_SDK_AV 4890: 41 49 4c 41 42 4c 45 0a 42 43 43 20 3d 20 24 28 AILABLE.BCC =$(
48a0: 42 43 43 29 20 2f 64 32 67 75 61 72 64 34 20 2d  BCC) /d2guard4 -
48b0: 44 5f 41 52 4d 5f 57 49 4e 41 50 49 5f 50 41 52  D_ARM_WINAPI_PAR
48c0: 54 49 54 49 4f 4e 5f 44 45 53 4b 54 4f 50 5f 53  TITION_DESKTOP_S
48d0: 44 4b 5f 41 56 41 49 4c 41 42 4c 45 0a 21 45 4e  DK_AVAILABLE.!EN
48e0: 44 49 46 0a 0a 23 20 41 6c 73 6f 2c 20 77 65 20  DIF..# Also, we
48f0: 6e 65 65 64 20 74 6f 20 64 79 6e 61 6d 69 63 61  need to dynamica
4900: 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20  lly link to the
4910: 63 6f 72 72 65 63 74 20 4d 53 56 43 20 72 75 6e  correct MSVC run
4920: 74 69 6d 65 0a 23 20 77 68 65 6e 20 63 6f 6d 70  time.# when comp
4930: 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e 52 54 20  iling for WinRT
4940: 28 65 2e 67 2e 20 64 65 62 75 67 20 6f 72 20 72  (e.g. debug or r
4950: 65 6c 65 61 73 65 29 20 4f 52 20 69 66 20 74 68  elease) OR if th
4960: 65 0a 23 20 55 53 45 5f 43 52 54 5f 44 4c 4c 20  e.# USE_CRT_DLL
4970: 6f 70 74 69 6f 6e 20 69 73 20 73 65 74 20 74 6f  option is set to
4980: 20 66 6f 72 63 65 20 64 79 6e 61 6d 69 63 61 6c   force dynamical
4990: 6c 79 20 6c 69 6e 6b 69 6e 67 20 74 6f 20 74 68  ly linking to th
49a0: 65 0a 23 20 4d 53 56 43 20 72 75 6e 74 69 6d 65  e.# MSVC runtime
49b0: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 20   library..#.!IF
49c0: 24 28 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 20  $(FOR_WINRT)!=0 49d0: 7c 7c 20 24 28 55 53 45 5f 43 52 54 5f 44 4c 4c ||$(USE_CRT_DLL
49e0: 29 21 3d 30 0a 21 49 46 20 24 28 44 45 42 55 47  )!=0.!IF $(DEBUG 49f0: 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 )>1.TCC =$(TCC)
4a00: 20 2d 4d 44 64 0a 42 43 43 20 3d 20 24 28 42 43   -MDd.BCC = $(BC 4a10: 43 29 20 2d 4d 44 64 0a 21 45 4c 53 45 0a 54 43 C) -MDd.!ELSE.TC 4a20: 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 0a 42 C =$(TCC) -MD.B
4a30: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 44 0a  CC = $(BCC) -MD. 4a40: 21 45 4e 44 49 46 0a 21 45 4c 53 45 0a 21 49 46 !ENDIF.!ELSE.!IF 4a50: 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 20$(DEBUG)>1.TCC
4a60: 3d 20 24 28 54 43 43 29 20 2d 4d 54 64 0a 42 43  = $(TCC) -MTd.BC 4a70: 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 54 64 0a C =$(BCC) -MTd.
4a80: 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 54 43  !ELSE.TCC = $(TC 4a90: 43 29 20 2d 4d 54 0a 42 43 43 20 3d 20 24 28 42 C) -MT.BCC =$(B
4aa0: 43 43 29 20 2d 4d 54 0a 21 45 4e 44 49 46 0a 21  CC) -MT.!ENDIF.!
4ab0: 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e  ENDIF..# <<mark>
4ac0: 3e 0a 23 20 54 68 65 20 6d 6b 73 71 6c 69 74 65  >.# The mksqlite
4ad0: 33 63 2e 74 63 6c 20 61 6e 64 20 6d 6b 73 71 6c  3c.tcl and mksql
4ae0: 69 74 65 33 68 2e 74 63 6c 20 73 63 72 69 70 74  ite3h.tcl script
4af0: 73 20 77 69 6c 6c 20 70 75 6c 6c 20 69 6e 0a 23  s will pull in.#
4b00: 20 61 6e 79 20 65 78 74 65 6e 73 69 6f 6e 20 68   any extension h
4b10: 65 61 64 65 72 20 66 69 6c 65 73 20 62 79 20 64  eader files by d
4b20: 65 66 61 75 6c 74 2e 20 20 46 6f 72 20 6e 6f 6e  efault.  For non
4b30: 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 20  -amalgamation.#
4b40: 62 75 69 6c 64 73 2c 20 77 65 20 6e 65 65 64 20  builds, we need
4b50: 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65  to make sure the
4b60: 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e 20 66 69   compiler can fi
4b70: 6e 64 20 74 68 65 73 65 2e 0a 23 0a 21 49 46 20  nd these..#.!IF
4b80: 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49  $(USE_AMALGAMATI 4b90: 4f 4e 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 ON)==0.TCC =$(T
4ba0: 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74  CC) -I$(TOP)\ext 4bb0: 5c 66 74 73 33 0a 52 43 43 20 3d 20 24 28 52 43 \fts3.RCC =$(RC
4bc0: 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c  C) -I$(TOP)\ext\ 4bd0: 66 74 73 33 0a 54 43 43 20 3d 20 24 28 54 43 43 fts3.TCC =$(TCC
4be0: 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 72  ) -I$(TOP)\ext\r 4bf0: 74 72 65 65 0a 52 43 43 20 3d 20 24 28 52 43 43 tree.RCC =$(RCC
4c00: 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 72  ) -I$(TOP)\ext\r 4c10: 74 72 65 65 0a 54 43 43 20 3d 20 24 28 54 43 43 tree.TCC =$(TCC
4c20: 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c 73  ) -I$(TOP)\ext\s 4c30: 65 73 73 69 6f 6e 0a 52 43 43 20 3d 20 24 28 52 ession.RCC =$(R
4c40: 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74  CC) -I$(TOP)\ext 4c50: 5c 73 65 73 73 69 6f 6e 0a 21 45 4e 44 49 46 0a \session.!ENDIF. 4c60: 0a 23 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 .# The mksqlite3 4c70: 63 2e 74 63 6c 20 73 63 72 69 70 74 20 61 63 63 c.tcl script acc 4c80: 65 70 74 73 20 73 6f 6d 65 20 6f 70 74 69 6f 6e epts some option 4c90: 73 20 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 s on the command 4ca0: 0a 23 20 6c 69 6e 65 2e 20 20 57 68 65 6e 20 63 .# line. When c 4cb0: 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68 20 64 65 ompiling with de 4cc0: 62 75 67 67 69 6e 67 20 65 6e 61 62 6c 65 64 2c bugging enabled, 4cd0: 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 65 0a 23 some of these.# 4ce0: 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 6e 65 63 options are nec 4cf0: 65 73 73 61 72 79 20 69 6e 20 6f 72 64 65 72 20 essary in order 4d00: 74 6f 20 61 6c 6c 6f 77 20 64 65 62 75 67 67 69 to allow debuggi 4d10: 6e 67 20 73 79 6d 62 6f 6c 73 20 74 6f 0a 23 20 ng symbols to.# 4d20: 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c 79 20 77 work correctly w 4d30: 69 74 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 ith Visual Studi 4d40: 6f 20 77 68 65 6e 20 75 73 69 6e 67 20 74 68 65 o when using the 4d50: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 0a 23 amalgamation..# 4d60: 0a 21 49 46 4e 44 45 46 20 4d 4b 53 51 4c 49 54 .!IFNDEF MKSQLIT 4d70: 45 33 43 5f 54 4f 4f 4c 0a 21 49 46 20 24 28 4d E3C_TOOL.!IF$(M
4d80: 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41 54  INIMAL_AMALGAMAT
4d90: 49 4f 4e 29 21 3d 30 0a 4d 4b 53 51 4c 49 54 45  ION)!=0.MKSQLITE
4da0: 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54 4f 50 29  3C_TOOL = $(TOP) 4db0: 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 \tool\mksqlite3c 4dc0: 2d 6e 6f 65 78 74 2e 74 63 6c 0a 21 45 4c 53 45 -noext.tcl.!ELSE 4dd0: 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c .MKSQLITE3C_TOOL 4de0: 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d =$(TOP)\tool\m
4df0: 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 21 45  ksqlite3c.tcl.!E
4e00: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 21 49 46  NDIF.!ENDIF..!IF
4e10: 4e 44 45 46 20 4d 4b 53 51 4c 49 54 45 33 43 5f  NDEF MKSQLITE3C_
4e20: 41 52 47 53 0a 21 49 46 20 24 28 44 45 42 55 47  ARGS.!IF $(DEBUG 4e30: 29 3e 31 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41 )>1.MKSQLITE3C_A 4e40: 52 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d 61 63 72 RGS = --linemacr 4e50: 6f 73 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c 49 54 os.!ELSE.MKSQLIT 4e60: 45 33 43 5f 41 52 47 53 20 3d 0a 21 45 4e 44 49 E3C_ARGS =.!ENDI 4e70: 46 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 43 F.!IF$(USE_STDC
4e80: 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52  ALL)!=0 || $(FOR 4e90: 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b 53 51 4c _WIN10)!=0.MKSQL 4ea0: 49 54 45 33 43 5f 41 52 47 53 20 3d 20 24 28 4d ITE3C_ARGS =$(M
4eb0: 4b 53 51 4c 49 54 45 33 43 5f 41 52 47 53 29 20  KSQLITE3C_ARGS)
4ec0: 2d 2d 75 73 65 61 70 69 63 61 6c 6c 0a 21 45 4e  --useapicall.!EN
4ed0: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  DIF.!ENDIF..# Th
4ee0: 65 20 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c  e mksqlite3h.tcl
4ef0: 20 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20   script accepts
4f00: 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20  some options on
4f10: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  the command line
4f20: 2e 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
4f30: 6e 67 20 77 69 74 68 20 73 74 64 63 61 6c 6c 20  ng with stdcall
4f40: 73 75 70 70 6f 72 74 2c 20 73 6f 6d 65 20 6f 66  support, some of
4f50: 20 74 68 65 73 65 20 6f 70 74 69 6f 6e 73 20 61   these options a
4f60: 72 65 0a 23 20 6e 65 63 65 73 73 61 72 79 2e 0a  re.# necessary..
4f70: 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53 51 4c 49  #.!IFNDEF MKSQLI
4f80: 54 45 33 48 5f 41 52 47 53 0a 21 49 46 20 24 28  TE3H_ARGS.!IF $( 4f90: 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 USE_STDCALL)!=0 4fa0: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 ||$(FOR_WIN10)!
4fb0: 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 48 5f 41 52  =0.MKSQLITE3H_AR
4fc0: 47 53 20 3d 20 2d 2d 75 73 65 61 70 69 63 61 6c  GS = --useapical
4fd0: 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c 49 54 45  l.!ELSE.MKSQLITE
4fe0: 33 48 5f 41 52 47 53 20 3d 0a 21 45 4e 44 49 46  3H_ARGS =.!ENDIF
4ff0: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
5000: 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65 20 2d 44  k>>..# Define -D
5010: 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d 70 69 6c  NDEBUG to compil
5020: 65 20 77 69 74 68 6f 75 74 20 64 65 62 75 67 67  e without debugg
5030: 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f 72 20 70  ing (i.e., for p
5040: 72 6f 64 75 63 74 69 6f 6e 20 75 73 61 67 65 29  roduction usage)
5050: 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74 68 65 20  .# Omitting the
5060: 64 65 66 69 6e 65 20 77 69 6c 6c 20 63 61 75 73  define will caus
5070: 65 20 65 78 74 72 61 20 64 65 62 75 67 67 69 6e  e extra debuggin
5080: 67 20 63 6f 64 65 20 74 6f 20 62 65 20 69 6e 73  g code to be ins
5090: 65 72 74 65 64 20 61 6e 64 0a 23 20 69 6e 63 6c  erted and.# incl
50a0: 75 64 65 73 20 65 78 74 72 61 20 63 6f 6d 6d 65  udes extra comme
50b0: 6e 74 73 20 77 68 65 6e 20 22 45 58 50 4c 41 49  nts when "EXPLAI
50c0: 4e 20 73 74 6d 74 22 20 69 73 20 75 73 65 64 2e  N stmt" is used.
50d0: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3d  .#.!IF $(DEBUG)= 50e0: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 =0.TCC =$(TCC)
50f0: 2d 44 4e 44 45 42 55 47 0a 42 43 43 20 3d 20 24  -DNDEBUG.BCC = $5100: 28 42 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 52 (BCC) -DNDEBUG.R 5110: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 4e 44 CC =$(RCC) -DND
5120: 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a 21 49 46  EBUG.!ENDIF..!IF
5130: 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c 20 24   $(DEBUG)>0 ||$
5140: 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d 30 20 7c  (API_ARMOR)!=0 |
5150: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  | $(FOR_WIN10)!= 5160: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 0.TCC =$(TCC) -
5170: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41  DSQLITE_ENABLE_A
5180: 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43 43 20 3d  PI_ARMOR=1.RCC =
5190: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45   $(RCC) -DSQLITE 51a0: 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d 4f _ENABLE_API_ARMO 51b0: 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 R=1.!ENDIF..!IF 51c0: 24 28 44 45 42 55 47 29 3e 32 0a 54 43 43 20 3d$(DEBUG)>2.TCC =
51d0: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE 51e0: 5f 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20 24 _DEBUG=1.RCC =$
51f0: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 44  (RCC) -DSQLITE_D
5200: 45 42 55 47 3d 31 0a 21 49 46 20 24 28 44 59 4e  EBUG=1.!IF $(DYN 5210: 41 4d 49 43 5f 53 48 45 4c 4c 29 3d 3d 30 0a 54 AMIC_SHELL)==0.T 5220: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 CC =$(TCC) -DSQ
5230: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52  LITE_ENABLE_WHER
5240: 45 54 52 41 43 45 20 2d 44 53 51 4c 49 54 45 5f  ETRACE -DSQLITE_
5250: 45 4e 41 42 4c 45 5f 53 45 4c 45 43 54 54 52 41  ENABLE_SELECTTRA
5260: 43 45 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20  CE.RCC = $(RCC) 5270: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 5280: 57 48 45 52 45 54 52 41 43 45 20 2d 44 53 51 4c WHERETRACE -DSQL 5290: 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 4c 45 43 ITE_ENABLE_SELEC 52a0: 54 54 52 41 43 45 0a 21 45 4e 44 49 46 0a 21 45 TTRACE.!ENDIF.!E 52b0: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 NDIF..!IF$(DEBU
52c0: 47 29 3e 34 20 7c 7c 20 24 28 4f 53 54 52 41 43  G)>4 || $(OSTRAC 52d0: 45 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 E)!=0.TCC =$(TC
52e0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52 43  C) -DSQLITE_FORC
52f0: 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44 53  E_OS_TRACE=1 -DS
5300: 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54  QLITE_DEBUG_OS_T
5310: 52 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52  RACE=1.RCC = $(R 5320: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52 CC) -DSQLITE_FOR 5330: 43 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44 CE_OS_TRACE=1 -D 5340: 53 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f SQLITE_DEBUG_OS_ 5350: 54 52 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a TRACE=1.!ENDIF.. 5360: 21 49 46 20 24 28 44 45 42 55 47 29 3e 35 0a 54 !IF$(DEBUG)>5.T
5370: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ 5380: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 LITE_ENABLE_IOTR 5390: 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 ACE=1.RCC =$(RC
53a0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  C) -DSQLITE_ENAB
53b0: 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 21 45 4e  LE_IOTRACE=1.!EN
53c0: 44 49 46 0a 0a 23 20 50 72 65 76 65 6e 74 20 77  DIF..# Prevent w
53d0: 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20 22 69  arnings about "i
53e0: 6e 73 65 63 75 72 65 22 20 4d 53 56 43 20 72 75  nsecure" MSVC ru
53f0: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 66 75  ntime library fu
5400: 6e 63 74 69 6f 6e 73 0a 23 20 62 65 69 6e 67 20  nctions.# being
5410: 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28  used..#.TCC = $( 5420: 54 43 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 TCC) -D_CRT_SECU 5430: 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 RE_NO_DEPRECATE 5440: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f -D_CRT_SECURE_NO 5450: 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 _WARNINGS.BCC = 5460: 24 28 42 43 43 29 20 2d 44 5f 43 52 54 5f 53 45$(BCC) -D_CRT_SE
5470: 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54  CURE_NO_DEPRECAT
5480: 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  E -D_CRT_SECURE_
5490: 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20  NO_WARNINGS.RCC
54a0: 3d 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f  = $(RCC) -D_CRT_ 54b0: 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 SECURE_NO_DEPREC 54c0: 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 ATE -D_CRT_SECUR 54d0: 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a 23 E_NO_WARNINGS..# 54e0: 20 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 Prevent warning 54f0: 73 20 61 62 6f 75 74 20 22 64 65 70 72 65 63 61 s about "depreca 5500: 74 65 64 22 20 50 4f 53 49 58 20 66 75 6e 63 74 ted" POSIX funct 5510: 69 6f 6e 73 20 62 65 69 6e 67 20 75 73 65 64 2e ions being used. 5520: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 .#.TCC =$(TCC)
5530: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e  -D_CRT_NONSTDC_N
5540: 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43  O_DEPRECATE -D_C
5550: 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41  RT_NONSTDC_NO_WA
5560: 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 24 28 42  RNINGS.BCC = $(B 5570: 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 CC) -D_CRT_NONST 5580: 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 DC_NO_DEPRECATE 5590: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e -D_CRT_NONSTDC_N 55a0: 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20 3d O_WARNINGS.RCC = 55b0: 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f 4e$(RCC) -D_CRT_N
55c0: 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43  ONSTDC_NO_DEPREC
55d0: 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  ATE -D_CRT_NONST
55e0: 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a  DC_NO_WARNINGS..
55f0: 23 20 55 73 65 20 74 68 65 20 53 51 4c 69 74 65  # Use the SQLite
5600: 20 64 65 62 75 67 67 69 6e 67 20 68 65 61 70 20   debugging heap
5610: 73 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46  subsystem?.#.!IF
5620: 20 24 28 4d 45 4d 44 45 42 55 47 29 21 3d 30 0a   $(MEMDEBUG)!=0. 5630: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
5640: 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d 31  QLITE_MEMDEBUG=1
5650: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 5660: 53 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d SQLITE_MEMDEBUG= 5670: 31 0a 0a 23 20 55 73 65 20 6e 61 74 69 76 65 20 1..# Use native 5680: 57 69 6e 33 32 20 68 65 61 70 20 73 75 62 73 79 Win32 heap subsy 5690: 73 74 65 6d 20 69 6e 73 74 65 61 64 20 6f 66 20 stem instead of 56a0: 6d 61 6c 6c 6f 63 2f 66 72 65 65 3f 0a 23 0a 21 malloc/free?.#.! 56b0: 45 4c 53 45 49 46 20 24 28 57 49 4e 33 32 48 45 ELSEIF$(WIN32HE
56c0: 41 50 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54  AP)!=0.TCC = $(T 56d0: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e CC) -DSQLITE_WIN 56e0: 33 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 52 43 43 20 32_MALLOC=1.RCC 56f0: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 =$(RCC) -DSQLIT
5700: 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d 31  E_WIN32_MALLOC=1
5710: 0a 0a 23 20 56 61 6c 69 64 61 74 65 20 74 68 65  ..# Validate the
5720: 20 68 65 61 70 20 6f 6e 20 65 76 65 72 79 20 63   heap on every c
5730: 61 6c 6c 20 69 6e 74 6f 20 74 68 65 20 6e 61 74  all into the nat
5740: 69 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 73  ive Win32 heap s
5750: 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46 20  ubsystem?.#.!IF
5760: 24 28 44 45 42 55 47 29 3e 33 0a 54 43 43 20 3d  $(DEBUG)>3.TCC = 5770: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
5780: 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41  _WIN32_MALLOC_VA
5790: 4c 49 44 41 54 45 3d 31 0a 52 43 43 20 3d 20 24  LIDATE=1.RCC = $57a0: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 (RCC) -DSQLITE_W 57b0: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49 IN32_MALLOC_VALI 57c0: 44 41 54 45 3d 31 0a 21 45 4e 44 49 46 0a 21 45 DATE=1.!ENDIF.!E 57d0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e NDIF..# <<mark>> 57e0: 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 .# The locations 57f0: 20 6f 66 20 74 68 65 20 54 63 6c 20 68 65 61 64 of the Tcl head 5800: 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 er and library f 5810: 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65 iles. Also, the 5820: 20 6c 69 62 72 61 72 79 20 74 68 61 74 0a 23 20 library that.# 5830: 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61 62 6c 65 non-stubs enable 5840: 64 20 70 72 6f 67 72 61 6d 73 20 75 73 69 6e 67 d programs using 5850: 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e 6b 20 61 Tcl must link a 5860: 67 61 69 6e 73 74 2e 20 20 54 68 65 73 65 20 76 gainst. These v 5870: 61 72 69 61 62 6c 65 73 0a 23 20 28 54 43 4c 49 ariables.# (TCLI 5880: 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42 44 49 52 NCDIR, TCLLIBDIR 5890: 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29 20 6d 61 , and LIBTCL) ma 58a0: 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 y be overridden 58b0: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d via the environm 58c0: 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 ent.# prior to r 58d0: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 unning nmake in 58e0: 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74 order to match t 58f0: 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c he actual instal 5900: 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 61 6e 64 led location and 5910: 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e 20 74 68 .# version on th 5920: 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49 is machine..#.!I 5930: 46 4e 44 45 46 20 54 43 4c 44 49 52 0a 54 43 4c FNDEF TCLDIR.TCL 5940: 44 49 52 20 3d 20 24 28 54 4f 50 29 5c 63 6f 6d DIR =$(TOP)\com
5950: 70 61 74 5c 74 63 6c 0a 21 45 4e 44 49 46 0a 0a  pat\tcl.!ENDIF..
5960: 21 49 46 4e 44 45 46 20 54 43 4c 49 4e 43 44 49  !IFNDEF TCLINCDI
5970: 52 0a 54 43 4c 49 4e 43 44 49 52 20 3d 20 24 28  R.TCLINCDIR = $( 5980: 54 43 4c 44 49 52 29 5c 69 6e 63 6c 75 64 65 0a TCLDIR)\include. 5990: 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 !ENDIF..!IFNDEF 59a0: 54 43 4c 4c 49 42 44 49 52 0a 54 43 4c 4c 49 42 TCLLIBDIR.TCLLIB 59b0: 44 49 52 20 3d 20 24 28 54 43 4c 44 49 52 29 5c DIR =$(TCLDIR)\
59c0: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e  lib.!ENDIF..!IFN
59d0: 44 45 46 20 4c 49 42 54 43 4c 0a 4c 49 42 54 43  DEF LIBTCL.LIBTC
59e0: 4c 20 3d 20 74 63 6c 38 36 2e 6c 69 62 0a 21 45  L = tcl86.lib.!E
59f0: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49  NDIF..!IFNDEF LI
5a00: 42 54 43 4c 53 54 55 42 0a 4c 49 42 54 43 4c 53  BTCLSTUB.LIBTCLS
5a10: 54 55 42 20 3d 20 74 63 6c 73 74 75 62 38 36 2e  TUB = tclstub86.
5a20: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e  lib.!ENDIF..!IFN
5a30: 44 45 46 20 4c 49 42 54 43 4c 50 41 54 48 0a 4c  DEF LIBTCLPATH.L
5a40: 49 42 54 43 4c 50 41 54 48 20 3d 20 24 28 54 43  IBTCLPATH = $(TC 5a50: 4c 44 49 52 29 5c 62 69 6e 0a 21 45 4e 44 49 46 LDIR)\bin.!ENDIF 5a60: 0a 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e ..# The location 5a70: 73 20 6f 66 20 74 68 65 20 7a 6c 69 62 20 68 65 s of the zlib he 5a80: 61 64 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 ader and library 5a90: 20 66 69 6c 65 73 2e 20 20 54 68 65 73 65 20 76 files. These v 5aa0: 61 72 69 61 62 6c 65 73 0a 23 20 28 5a 4c 49 42 ariables.# (ZLIB 5ab0: 49 4e 43 44 49 52 2c 20 5a 4c 49 42 4c 49 42 44 INCDIR, ZLIBLIBD 5ac0: 49 52 2c 20 61 6e 64 20 5a 4c 49 42 4c 49 42 29 IR, and ZLIBLIB) 5ad0: 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69 64 64 may be overridd 5ae0: 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 72 en via the envir 5af0: 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 onment.# prior t 5b00: 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 o running nmake 5b10: 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 in order to matc 5b20: 68 20 74 68 65 20 61 63 74 75 61 6c 20 69 6e 73 h the actual ins 5b30: 74 61 6c 6c 65 64 20 28 6f 72 20 73 6f 75 72 63 talled (or sourc 5b40: 65 0a 23 20 63 6f 64 65 29 20 6c 6f 63 61 74 69 e.# code) locati 5b50: 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61 63 68 69 on on this machi 5b60: 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 5a 4c ne..#.!IFNDEF ZL 5b70: 49 42 44 49 52 0a 5a 4c 49 42 44 49 52 20 3d 20 IBDIR.ZLIBDIR = 5b80: 24 28 54 4f 50 29 5c 63 6f 6d 70 61 74 5c 7a 6c$(TOP)\compat\zl
5b90: 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44  ib.!ENDIF..!IFND
5ba0: 45 46 20 5a 4c 49 42 49 4e 43 44 49 52 0a 5a 4c  EF ZLIBINCDIR.ZL
5bb0: 49 42 49 4e 43 44 49 52 20 3d 20 24 28 5a 4c 49  IBINCDIR = $(ZLI 5bc0: 42 44 49 52 29 0a 21 45 4e 44 49 46 0a 0a 21 49 BDIR).!ENDIF..!I 5bd0: 46 4e 44 45 46 20 5a 4c 49 42 4c 49 42 44 49 52 FNDEF ZLIBLIBDIR 5be0: 0a 5a 4c 49 42 4c 49 42 44 49 52 20 3d 20 24 28 .ZLIBLIBDIR =$(
5bf0: 5a 4c 49 42 44 49 52 29 0a 21 45 4e 44 49 46 0a  ZLIBDIR).!ENDIF.
5c00: 0a 21 49 46 4e 44 45 46 20 5a 4c 49 42 4c 49 42  .!IFNDEF ZLIBLIB
5c10: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S 5c20: 48 45 4c 4c 29 21 3d 30 0a 5a 4c 49 42 4c 49 42 HELL)!=0.ZLIBLIB 5c30: 20 3d 20 7a 64 6c 6c 2e 6c 69 62 0a 21 45 4c 53 = zdll.lib.!ELS 5c40: 45 0a 5a 4c 49 42 4c 49 42 20 3d 20 7a 6c 69 62 E.ZLIBLIB = zlib 5c50: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 .lib.!ENDIF.!END 5c60: 49 46 0a 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 IF..# The locati 5c70: 6f 6e 73 20 6f 66 20 74 68 65 20 49 43 55 20 68 ons of the ICU h 5c80: 65 61 64 65 72 20 61 6e 64 20 6c 69 62 72 61 72 eader and librar 5c90: 79 20 66 69 6c 65 73 2e 20 20 54 68 65 73 65 20 y files. These 5ca0: 76 61 72 69 61 62 6c 65 73 0a 23 20 28 49 43 55 variables.# (ICU 5cb0: 49 4e 43 44 49 52 2c 20 49 43 55 4c 49 42 44 49 INCDIR, ICULIBDI 5cc0: 52 2c 20 61 6e 64 20 4c 49 42 49 43 55 29 20 6d R, and LIBICU) m 5cd0: 61 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e ay be overridden 5ce0: 20 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e via the environ 5cf0: 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 ment.# prior to 5d00: 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e running nmake in 5d10: 20 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 order to match 5d20: 74 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 the actual insta 5d30: 6c 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e lled location on 5d40: 0a 23 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e .# this machine. 5d50: 0a 23 0a 21 49 46 4e 44 45 46 20 49 43 55 44 49 .#.!IFNDEF ICUDI 5d60: 52 0a 49 43 55 44 49 52 20 3d 20 24 28 54 4f 50 R.ICUDIR =$(TOP
5d70: 29 5c 63 6f 6d 70 61 74 5c 69 63 75 0a 21 45 4e  )\compat\icu.!EN
5d80: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 43 55  DIF..!IFNDEF ICU
5d90: 49 4e 43 44 49 52 0a 49 43 55 49 4e 43 44 49 52  INCDIR.ICUINCDIR
5da0: 20 3d 20 24 28 49 43 55 44 49 52 29 5c 69 6e 63   = $(ICUDIR)\inc 5db0: 6c 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46 lude.!ENDIF..!IF 5dc0: 4e 44 45 46 20 49 43 55 4c 49 42 44 49 52 0a 49 NDEF ICULIBDIR.I 5dd0: 43 55 4c 49 42 44 49 52 20 3d 20 24 28 49 43 55 CULIBDIR =$(ICU
5de0: 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a  DIR)\lib.!ENDIF.
5df0: 0a 21 49 46 4e 44 45 46 20 4c 49 42 49 43 55 0a  .!IFNDEF LIBICU.
5e00: 4c 49 42 49 43 55 20 3d 20 69 63 75 75 63 2e 6c  LIBICU = icuuc.l
5e10: 69 62 20 69 63 75 69 6e 2e 6c 69 62 0a 21 45 4e  ib icuin.lib.!EN
5e20: 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 20 74  DIF..# This is t
5e30: 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 75 73  he command to us
5e40: 65 20 66 6f 72 20 74 63 6c 73 68 20 2d 20 6e 6f  e for tclsh - no
5e50: 72 6d 61 6c 6c 79 20 6a 75 73 74 20 22 74 63 6c  rmally just "tcl
5e60: 73 68 22 2c 20 62 75 74 20 77 65 20 6d 61 79 0a  sh", but we may.
5e70: 23 20 6b 6e 6f 77 20 74 68 65 20 73 70 65 63 69  # know the speci
5e80: 66 69 63 20 76 65 72 73 69 6f 6e 20 77 65 20 77  fic version we w
5e90: 61 6e 74 20 74 6f 20 75 73 65 2e 20 20 54 68 69  ant to use.  Thi
5ea0: 73 20 76 61 72 69 61 62 6c 65 20 28 54 43 4c 53  s variable (TCLS
5eb0: 48 5f 43 4d 44 29 20 6d 61 79 20 62 65 0a 23 20  H_CMD) may be.#
5ec0: 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74  overridden via t
5ed0: 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 70  he environment p
5ee0: 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20  rior to running
5ef0: 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74  nmake in order t
5f00: 6f 20 73 65 6c 65 63 74 20 61 0a 23 20 73 70 65  o select a.# spe
5f10: 63 69 66 69 63 20 54 63 6c 20 73 68 65 6c 6c 20  cific Tcl shell
5f20: 74 6f 20 75 73 65 2e 0a 23 0a 21 49 46 4e 44 45  to use..#.!IFNDE
5f30: 46 20 54 43 4c 53 48 5f 43 4d 44 0a 21 49 46 20  F TCLSH_CMD.!IF
5f40: 24 28 55 53 45 5f 54 43 4c 53 48 5f 49 4e 5f 50  $(USE_TCLSH_IN_P 5f50: 41 54 48 29 21 3d 30 20 7c 7c 20 21 45 58 49 53 ATH)!=0 || !EXIS 5f60: 54 28 22 24 28 54 43 4c 44 49 52 29 5c 62 69 6e T("$(TCLDIR)\bin
5f70: 5c 74 63 6c 73 68 2e 65 78 65 22 29 0a 54 43 4c  \tclsh.exe").TCL
5f80: 53 48 5f 43 4d 44 20 3d 20 74 63 6c 73 68 0a 21  SH_CMD = tclsh.!
5f90: 45 4c 53 45 0a 54 43 4c 53 48 5f 43 4d 44 20 3d  ELSE.TCLSH_CMD =
5fa0: 20 24 28 54 43 4c 44 49 52 29 5c 62 69 6e 5c 74   $(TCLDIR)\bin\t 5fb0: 63 6c 73 68 2e 65 78 65 0a 21 45 4e 44 49 46 0a clsh.exe.!ENDIF. 5fc0: 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b !ENDIF.# <</mark 5fd0: 3e 3e 0a 0a 23 20 43 6f 6d 70 69 6c 65 72 20 6f >>..# Compiler o 5fe0: 70 74 69 6f 6e 73 20 6e 65 65 64 65 64 20 66 6f ptions needed fo 5ff0: 72 20 70 72 6f 67 72 61 6d 73 20 74 68 61 74 20 r programs that 6000: 75 73 65 20 74 68 65 20 72 65 61 64 6c 69 6e 65 use the readline 6010: 28 29 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 () library..#.!I 6020: 46 4e 44 45 46 20 52 45 41 44 4c 49 4e 45 5f 46 FNDEF READLINE_F 6030: 4c 41 47 53 0a 52 45 41 44 4c 49 4e 45 5f 46 4c LAGS.READLINE_FL 6040: 41 47 53 20 3d 20 2d 44 48 41 56 45 5f 52 45 41 AGS = -DHAVE_REA 6050: 44 4c 49 4e 45 3d 30 0a 21 45 4e 44 49 46 0a 0a DLINE=0.!ENDIF.. 6060: 23 20 54 68 65 20 6c 69 62 72 61 72 79 20 74 68 # The library th 6070: 61 74 20 70 72 6f 67 72 61 6d 73 20 75 73 69 6e at programs usin 6080: 67 20 72 65 61 64 6c 69 6e 65 28 29 20 6d 75 73 g readline() mus 6090: 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e 0a t link against.. 60a0: 23 0a 21 49 46 4e 44 45 46 20 4c 49 42 52 45 41 #.!IFNDEF LIBREA 60b0: 44 4c 49 4e 45 0a 4c 49 42 52 45 41 44 4c 49 4e DLINE.LIBREADLIN 60c0: 45 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 53 68 E =.!ENDIF..# Sh 60d0: 6f 75 6c 64 20 74 68 65 20 64 61 74 61 62 61 73 ould the databas 60e0: 65 20 65 6e 67 69 6e 65 20 62 65 20 63 6f 6d 70 e engine be comp 60f0: 69 6c 65 64 20 74 68 72 65 61 64 73 61 66 65 0a iled threadsafe. 6100: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d #.TCC =$(TCC) -
6110: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
6120: 46 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  FE=1.RCC = $(RCC 6130: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 ) -DSQLITE_THREA 6140: 44 53 41 46 45 3d 31 0a 0a 23 20 44 6f 20 74 68 DSAFE=1..# Do th 6150: 72 65 61 64 73 20 6f 76 65 72 72 69 64 65 20 65 reads override e 6160: 61 63 68 20 6f 74 68 65 72 73 20 6c 6f 63 6b 73 ach others locks 6170: 20 62 79 20 64 65 66 61 75 6c 74 20 28 31 29 2c by default (1), 6180: 20 6f 72 20 64 6f 20 77 65 20 74 65 73 74 20 28 or do we test ( 6190: 2d 31 29 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 -1).#.TCC =$(TC
61a0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45  C) -DSQLITE_THRE
61b0: 41 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f 43 4b  AD_OVERRIDE_LOCK
61c0: 3d 2d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29  =-1.RCC = $(RCC) 61d0: 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 -DSQLITE_THREAD 61e0: 5f 4f 56 45 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d _OVERRIDE_LOCK=- 61f0: 31 0a 0a 23 20 41 6e 79 20 74 61 72 67 65 74 20 1..# Any target 6200: 6c 69 62 72 61 72 69 65 73 20 77 68 69 63 68 20 libraries which 6210: 6c 69 62 73 71 6c 69 74 65 20 6d 75 73 74 20 62 libsqlite must b 6220: 65 20 6c 69 6e 6b 65 64 20 61 67 61 69 6e 73 74 e linked against 6230: 0a 23 0a 21 49 46 4e 44 45 46 20 54 4c 49 42 53 .#.!IFNDEF TLIBS 6240: 0a 54 4c 49 42 53 20 3d 0a 21 45 4e 44 49 46 0a .TLIBS =.!ENDIF. 6250: 0a 23 20 46 6c 61 67 73 20 63 6f 6e 74 72 6f 6c .# Flags control 6260: 6c 69 6e 67 20 75 73 65 20 6f 66 20 74 68 65 20 ling use of the 6270: 69 6e 20 6d 65 6d 6f 72 79 20 62 74 72 65 65 20 in memory btree 6280: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 0a 23 implementation.# 6290: 0a 23 20 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 .# SQLITE_TEMP_S 62a0: 54 4f 52 45 20 69 73 20 30 20 74 6f 20 66 6f 72 TORE is 0 to for 62b0: 63 65 20 74 65 6d 70 6f 72 61 72 79 20 74 61 62 ce temporary tab 62c0: 6c 65 73 20 74 6f 20 62 65 20 69 6e 20 61 20 66 les to be in a f 62d0: 69 6c 65 2c 20 31 20 74 6f 0a 23 20 64 65 66 61 ile, 1 to.# defa 62e0: 75 6c 74 20 74 6f 20 66 69 6c 65 2c 20 32 20 74 ult to file, 2 t 62f0: 6f 20 64 65 66 61 75 6c 74 20 74 6f 20 6d 65 6d o default to mem 6300: 6f 72 79 2c 20 61 6e 64 20 33 20 74 6f 20 66 6f ory, and 3 to fo 6310: 72 63 65 20 74 65 6d 70 6f 72 61 72 79 0a 23 20 rce temporary.# 6320: 74 61 62 6c 65 73 20 74 6f 20 61 6c 77 61 79 73 tables to always 6330: 20 62 65 20 69 6e 20 6d 65 6d 6f 72 79 2e 0a 23 be in memory..# 6340: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 .TCC =$(TCC) -D
6350: 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52  SQLITE_TEMP_STOR
6360: 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29  E=1.RCC = $(RCC) 6370: 20 2d 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 -DSQLITE_TEMP_S 6380: 54 4f 52 45 3d 31 0a 0a 23 20 45 6e 61 62 6c 65 TORE=1..# Enable 6390: 2f 64 69 73 61 62 6c 65 20 6c 6f 61 64 61 62 6c /disable loadabl 63a0: 65 20 65 78 74 65 6e 73 69 6f 6e 73 2c 20 61 6e e extensions, an 63b0: 64 20 6f 74 68 65 72 20 6f 70 74 69 6f 6e 61 6c d other optional 63c0: 20 66 65 61 74 75 72 65 73 0a 23 20 62 61 73 65 features.# base 63d0: 64 20 6f 6e 20 63 6f 6e 66 69 67 75 72 61 74 69 d on configurati 63e0: 6f 6e 2e 20 28 2d 44 53 51 4c 49 54 45 5f 4f 4d on. (-DSQLITE_OM 63f0: 49 54 2a 2c 20 2d 44 53 51 4c 49 54 45 5f 45 4e IT*, -DSQLITE_EN 6400: 41 42 4c 45 2a 29 2e 0a 23 20 54 68 65 20 73 61 ABLE*)..# The sa 6410: 6d 65 20 73 65 74 20 6f 66 20 4f 4d 49 54 20 61 me set of OMIT a 6420: 6e 64 20 45 4e 41 42 4c 45 20 66 6c 61 67 73 20 nd ENABLE flags 6430: 73 68 6f 75 6c 64 20 62 65 20 70 61 73 73 65 64 should be passed 6440: 20 74 6f 20 74 68 65 0a 23 20 4c 45 4d 4f 4e 20 to the.# LEMON 6450: 70 61 72 73 65 72 20 67 65 6e 65 72 61 74 6f 72 parser generator 6460: 20 61 6e 64 20 74 68 65 20 6d 6b 6b 65 79 77 6f and the mkkeywo 6470: 72 64 68 61 73 68 20 74 6f 6f 6c 20 61 73 20 77 rdhash tool as w 6480: 65 6c 6c 2e 0a 0a 23 20 54 68 65 73 65 20 61 72 ell...# These ar 6490: 65 20 74 68 65 20 72 65 71 75 69 72 65 64 20 53 e the required S 64a0: 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f QLite compilatio 64b0: 6e 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 77 n options used w 64c0: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 64d0: 72 0a 23 20 74 68 65 20 57 69 6e 64 6f 77 73 20 r.# the Windows 64e0: 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 52 45 51 5f platform..#.REQ_ 64f0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 FEATURE_FLAGS = 6500: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c$(REQ_FEATURE_FL
6510: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 4d 41  AGS) -DSQLITE_MA
6520: 58 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 3d  X_TRIGGER_DEPTH=
6530: 31 30 30 0a 0a 23 20 49 66 20 77 65 20 61 72 65  100..# If we are
6540: 20 6c 69 6e 6b 69 6e 67 20 74 6f 20 74 68 65 20   linking to the
6550: 52 50 43 52 54 34 20 6c 69 62 72 61 72 79 2c 20  RPCRT4 library,
6560: 65 6e 61 62 6c 65 20 66 65 61 74 75 72 65 73 20  enable features
6570: 74 68 61 74 20 6e 65 65 64 20 69 74 2e 0a 23 0a  that need it..#.
6580: 21 49 46 20 24 28 55 53 45 5f 52 50 43 52 54 34  !IF $(USE_RPCRT4 6590: 5f 4c 49 42 29 21 3d 30 0a 52 45 51 5f 46 45 41 _LIB)!=0.REQ_FEA 65a0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 52 TURE_FLAGS =$(R
65b0: 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  EQ_FEATURE_FLAGS
65c0: 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32  ) -DSQLITE_WIN32
65d0: 5f 55 53 45 5f 55 55 49 44 3d 31 0a 21 45 4e 44  _USE_UUID=1.!END
65e0: 49 46 0a 0a 23 20 41 64 64 20 74 68 65 20 72 65  IF..# Add the re
65f0: 71 75 69 72 65 64 20 61 6e 64 20 6f 70 74 69 6f  quired and optio
6600: 6e 61 6c 20 53 51 4c 69 74 65 20 63 6f 6d 70 69  nal SQLite compi
6610: 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 69  lation options i
6620: 6e 74 6f 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a  nto the command.
6630: 23 20 6c 69 6e 65 73 20 75 73 65 64 20 74 6f 20  # lines used to
6640: 69 6e 76 6f 6b 65 20 74 68 65 20 4d 53 56 43 20  invoke the MSVC
6650: 63 6f 64 65 20 61 6e 64 20 72 65 73 6f 75 72 63  code and resourc
6660: 65 20 63 6f 6d 70 69 6c 65 72 73 2e 0a 23 0a 54  e compilers..#.T
6670: 43 43 20 3d 20 24 28 54 43 43 29 20 24 28 52 45  CC = $(TCC)$(RE
6680: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
6690: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F 66a0: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
66b0: 55 52 45 5f 46 4c 41 47 53 29 0a 52 43 43 20 3d  URE_FLAGS).RCC =
66c0: 20 24 28 52 43 43 29 20 24 28 52 45 51 5f 46 45   $(RCC)$(REQ_FE
66d0: 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f  ATURE_FLAGS) $(O 66e0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 66f0: 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f )$(EXT_FEATURE_
6700: 46 4c 41 47 53 29 0a 0a 23 20 41 64 64 20 69 6e  FLAGS)..# Add in
6710: 20 61 6e 79 20 6f 70 74 69 6f 6e 61 6c 20 70 61   any optional pa
6720: 72 61 6d 65 74 65 72 73 20 73 70 65 63 69 66 69  rameters specifi
6730: 65 64 20 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e  ed on the comman
6740: 65 20 6c 69 6e 65 2c 20 65 2e 67 2e 0a 23 20 6e  e line, e.g..# n
6750: 6d 61 6b 65 20 2f 66 20 4d 61 6b 65 66 69 6c 65  make /f Makefile
6760: 2e 6d 73 63 20 61 6c 6c 20 22 4f 50 54 53 3d 2d  .msc all "OPTS=-
6770: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46  DSQLITE_ENABLE_F
6780: 4f 4f 3d 31 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  OO=1 -DSQLITE_OM
6790: 49 54 5f 46 4f 4f 3d 31 22 0a 23 0a 54 43 43 20  IT_FOO=1".#.TCC
67a0: 3d 20 24 28 54 43 43 29 20 24 28 4f 50 54 53 29  = $(TCC)$(OPTS)
67b0: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 24 28  .RCC = $(RCC)$(
67c0: 4f 50 54 53 29 0a 0a 23 20 49 66 20 63 6f 6d 70  OPTS)..# If comp
67d0: 69 6c 69 6e 67 20 66 6f 72 20 64 65 62 75 67 67  iling for debugg
67e0: 69 6e 67 2c 20 61 64 64 20 73 6f 6d 65 20 64 65  ing, add some de
67f0: 66 69 6e 65 73 2e 0a 23 0a 21 49 46 20 24 28 44  fines..#.!IF $(D 6800: 45 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 EBUG)>1.TCC =$(
6810: 54 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 42 43  TCC) -D_DEBUG.BC
6820: 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f 44 45  C = $(BCC) -D_DE 6830: 42 55 47 0a 52 43 43 20 3d 20 24 28 52 43 43 29 BUG.RCC =$(RCC)
6840: 20 2d 44 5f 44 45 42 55 47 0a 21 45 4e 44 49 46   -D_DEBUG.!ENDIF
6850: 0a 0a 23 20 49 66 20 6f 70 74 69 6d 69 7a 61 74  ..# If optimizat
6860: 69 6f 6e 73 20 61 72 65 20 65 6e 61 62 6c 65 64  ions are enabled
6870: 20 6f 72 20 64 69 73 61 62 6c 65 64 20 28 65 69   or disabled (ei
6880: 74 68 65 72 20 69 6d 70 6c 69 63 69 74 6c 79 20  ther implicitly
6890: 6f 72 0a 23 20 65 78 70 6c 69 63 69 74 6c 79 29  or.# explicitly)
68a0: 2c 20 61 64 64 20 74 68 65 20 6e 65 63 65 73 73  , add the necess
68b0: 61 72 79 20 66 6c 61 67 73 2e 0a 23 0a 21 49 46  ary flags..#.!IF
68c0: 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c 20 24   $(DEBUG)>1 ||$
68d0: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d  (OPTIMIZATIONS)=
68e0: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 68f0: 2d 4f 64 0a 42 43 43 20 3d 20 24 28 42 43 43 29 -Od.BCC =$(BCC)
6900: 20 2d 4f 64 0a 21 49 46 20 24 28 55 53 45 5f 52   -Od.!IF $(USE_R 6910: 55 4e 54 49 4d 45 5f 43 48 45 43 4b 53 29 21 3d UNTIME_CHECKS)!= 6920: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 0.TCC =$(TCC) -
6930: 52 54 43 31 0a 42 43 43 20 3d 20 24 28 42 43 43  RTC1.BCC = $(BCC 6940: 29 20 2d 52 54 43 31 0a 21 45 4e 44 49 46 0a 21 ) -RTC1.!ENDIF.! 6950: 45 4c 53 45 49 46 20 24 28 4f 50 54 49 4d 49 5a ELSEIF$(OPTIMIZ
6960: 41 54 49 4f 4e 53 29 3e 3d 33 0a 54 43 43 20 3d  ATIONS)>=3.TCC =
6970: 20 24 28 54 43 43 29 20 2d 4f 78 0a 42 43 43 20   $(TCC) -Ox.BCC 6980: 3d 20 24 28 42 43 43 29 20 2d 4f 78 0a 21 45 4c =$(BCC) -Ox.!EL
6990: 53 45 49 46 20 24 28 4f 50 54 49 4d 49 5a 41 54  SEIF $(OPTIMIZAT 69a0: 49 4f 4e 53 29 3d 3d 32 0a 54 43 43 20 3d 20 24 IONS)==2.TCC =$
69b0: 28 54 43 43 29 20 2d 4f 32 0a 42 43 43 20 3d 20  (TCC) -O2.BCC =
69c0: 24 28 42 43 43 29 20 2d 4f 32 0a 21 45 4c 53 45  $(BCC) -O2.!ELSE 69d0: 49 46 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f IF$(OPTIMIZATIO
69e0: 4e 53 29 3d 3d 31 0a 54 43 43 20 3d 20 24 28 54  NS)==1.TCC = $(T 69f0: 43 43 29 20 2d 4f 31 0a 42 43 43 20 3d 20 24 28 CC) -O1.BCC =$(
6a00: 42 43 43 29 20 2d 4f 31 0a 21 45 4e 44 49 46 0a  BCC) -O1.!ENDIF.
6a10: 0a 23 20 49 66 20 73 79 6d 62 6f 6c 73 20 61 72  .# If symbols ar
6a20: 65 20 65 6e 61 62 6c 65 64 20 28 6f 72 20 63 6f  e enabled (or co
6a30: 6d 70 69 6c 69 6e 67 20 66 6f 72 20 64 65 62 75  mpiling for debu
6a40: 67 67 69 6e 67 29 2c 20 65 6e 61 62 6c 65 20 50  gging), enable P
6a50: 44 42 73 2e 0a 23 0a 21 49 46 20 24 28 44 45 42  DBs..#.!IF $(DEB 6a60: 55 47 29 3e 31 20 7c 7c 20 24 28 53 59 4d 42 4f UG)>1 ||$(SYMBO
6a70: 4c 53 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54  LS)!=0.TCC = $(T 6a80: 43 43 29 20 2d 5a 69 0a 42 43 43 20 3d 20 24 28 CC) -Zi.BCC =$(
6a90: 42 43 43 29 20 2d 5a 69 0a 21 45 4e 44 49 46 0a  BCC) -Zi.!ENDIF.
6aa0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 49 66  .# <<mark>>.# If
6ab0: 20 7a 6c 69 62 20 73 75 70 70 6f 72 74 20 69 73   zlib support is
6ac0: 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68   enabled, add th
6ad0: 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f  e compiler optio
6ae0: 6e 73 20 66 6f 72 20 69 74 2e 0a 23 0a 21 49 46  ns for it..#.!IF
6af0: 20 24 28 55 53 45 5f 5a 4c 49 42 29 21 3d 30 0a   $(USE_ZLIB)!=0. 6b00: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
6b10: 51 4c 49 54 45 5f 48 41 56 45 5f 5a 4c 49 42 3d  QLITE_HAVE_ZLIB=
6b20: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 6b30: 44 53 51 4c 49 54 45 5f 48 41 56 45 5f 5a 4c 49 DSQLITE_HAVE_ZLI 6b40: 42 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 B=1.TCC =$(TCC)
6b50: 20 2d 49 24 28 5a 4c 49 42 49 4e 43 44 49 52 29   -I$(ZLIBINCDIR) 6b60: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 .RCC =$(RCC) -I
6b70: 24 28 5a 4c 49 42 49 4e 43 44 49 52 29 0a 21 45  $(ZLIBINCDIR).!E 6b80: 4e 44 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 NDIF..# If ICU s 6b90: 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 upport is enable 6ba0: 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70 69 d, add the compi 6bb0: 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 ler options for 6bc0: 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f it..#.!IF$(USE_
6bd0: 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28  ICU)!=0.TCC = $( 6be0: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 6bf0: 41 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43 20 3d ABLE_ICU=1.RCC = 6c00: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
6c10: 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43  _ENABLE_ICU=1.TC
6c20: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54  C = $(TCC) -I$(T
6c30: 4f 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 43 20  OP)\ext\icu.RCC
6c40: 3d 20 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50  = $(RCC) -I$(TOP
6c50: 29 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20  )\ext\icu.TCC =
6c60: 24 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e  $(TCC) -I$(ICUIN
6c70: 43 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43  CDIR).RCC = $(RC 6c80: 43 29 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 C) -I$(ICUINCDIR
6c90: 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  ).!ENDIF.# <</ma
6ca0: 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20  rk>>..# Command
6cb0: 6c 69 6e 65 20 70 72 65 66 69 78 65 73 20 66 6f  line prefixes fo
6cc0: 72 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65  r compiling code
6cd0: 2c 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 73 6f  , compiling reso
6ce0: 75 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67  urces,.# linking
6cf0: 2c 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49  , etc..#.LTCOMPI
6d00: 4c 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24  LE = $(TCC) -Fo$
6d10: 40 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d 20 24  @.LTRCOMPILE = $6d20: 28 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42 20 3d (RCC) -r.LTLIB = 6d30: 20 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 lib.exe.LTLINK 6d40: 3d 20 24 28 54 43 43 29 20 2d 46 65 24 40 0a 0a =$(TCC) -Fe$@.. 6d50: 23 20 49 66 20 72 65 71 75 65 73 74 65 64 2c 20 # If requested, 6d60: 6c 69 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 link to the RPCR 6d70: 54 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 T4 library..#.!I 6d80: 46 20 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c F$(USE_RPCRT4_L
6d90: 49 42 29 21 3d 30 0a 4c 54 4c 49 42 53 20 3d 20  IB)!=0.LTLIBS =
6da0: 24 28 4c 54 4c 49 42 53 29 20 72 70 63 72 74 34  $(LTLIBS) rpcrt4 6db0: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 49 .lib.!ENDIF..# I 6dc0: 66 20 61 20 70 6c 61 74 66 6f 72 6d 20 77 61 73 f a platform was 6dd0: 20 73 65 74 2c 20 66 6f 72 63 65 20 74 68 65 20 set, force the 6de0: 6c 69 6e 6b 65 72 20 74 6f 20 74 61 72 67 65 74 linker to target 6df0: 20 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20 74 68 that..# Note th 6e00: 61 74 20 74 68 65 20 76 63 76 61 72 73 2a 2e 62 at the vcvars*.b 6e10: 61 74 20 66 61 6d 69 6c 79 20 6f 66 20 62 61 74 at family of bat 6e20: 63 68 20 66 69 6c 65 73 20 74 79 70 69 63 61 6c ch files typical 6e30: 6c 79 0a 23 20 73 65 74 20 74 68 69 73 20 66 6f ly.# set this fo 6e40: 72 20 79 6f 75 2e 20 20 4f 74 68 65 72 77 69 73 r you. Otherwis 6e50: 65 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20 77 69 e, the linker wi 6e60: 6c 6c 20 61 74 74 65 6d 70 74 0a 23 20 74 6f 20 ll attempt.# to 6e70: 64 65 64 75 63 65 20 74 68 65 20 62 69 6e 61 72 deduce the binar 6e80: 79 20 74 79 70 65 20 62 61 73 65 64 20 6f 6e 20 y type based on 6e90: 74 68 65 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 the object files 6ea0: 2e 0a 21 49 46 44 45 46 20 50 4c 41 54 46 4f 52 ..!IFDEF PLATFOR 6eb0: 4d 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f M.LTLINKOPTS = / 6ec0: 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a NOLOGO /MACHINE: 6ed0: 24 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49$(PLATFORM).LTLI
6ee0: 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 20  BOPTS = /NOLOGO
6ef0: 2f 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 46  /MACHINE:$(PLATF 6f00: 4f 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e ORM).!ELSE.LTLIN 6f10: 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a KOPTS = /NOLOGO. 6f20: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c LTLIBOPTS = /NOL 6f30: 4f 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 OGO.!ENDIF..# Wh 6f40: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 6f50: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52 use in the WinR 6f60: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 T environment, t 6f70: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c he following.# l 6f80: 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 inker option mus 6f90: 74 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 72 t be used to mar 6fa0: 6b 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 k the executable 6fb0: 20 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f as runnable.# o 6fc0: 6e 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 nly in the conte 6fd0: 78 74 20 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 xt of an applica 6fe0: 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a tion container.. 6ff0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 #.!IF$(FOR_WINR
7000: 54 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53  T)!=0.LTLINKOPTS
7010: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS) 7020: 20 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 /APPCONTAINER.! 7030: 49 46 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 IF "$(VISUALSTUD
7040: 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32  IOVERSION)"=="12
7050: 2e 30 22 20 7c 7c 20 22 24 28 56 49 53 55 41 4c  .0" || "$(VISUAL 7060: 53 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d STUDIOVERSION)"= 7070: 3d 22 31 34 2e 30 22 0a 21 49 46 4e 44 45 46 20 ="14.0".!IFNDEF 7080: 53 54 4f 52 45 4c 49 42 50 41 54 48 0a 21 49 46 STORELIBPATH.!IF 7090: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
70a0: 22 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x86".STORELIBPA
70b0: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 70c0: 48 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45 49 46 H)\store.!ELSEIF 70d0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
70e0: 22 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x64".STORELIBPA
70f0: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 7100: 48 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34 0a 21 H)\store\amd64.! 7110: 45 4c 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f ELSEIF "$(PLATFO
7120: 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 4f 52  RM)"=="ARM".STOR
7130: 45 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54  ELIBPATH = $(CRT 7140: 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 LIBPATH)\store\a 7150: 72 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45 4c 49 rm.!ELSE.STORELI 7160: 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 BPATH =$(CRTLIB
7170: 50 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4e 44  PATH)\store.!END
7180: 49 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 45 4c  IF.!ENDIF.STOREL
7190: 49 42 50 41 54 48 20 3d 20 24 28 53 54 4f 52 45  IBPATH = $(STORE 71a0: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4c 54 LIBPATH:\\=\).LT 71b0: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c LINKOPTS =$(LTL
71c0: 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 50 41  INKOPTS) "/LIBPA
71d0: 54 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 41 54  TH:$(STORELIBPAT 71e0: 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 H)".!ENDIF.!ENDI 71f0: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 7200: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 7210: 50 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20 65 78 Phone 8.1, an ex 7220: 74 72 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 tra library path 7230: 20 69 73 0a 23 20 72 65 71 75 69 72 65 64 2e 0a is.# required.. 7240: 23 0a 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 #.!IF$(USE_WP81
7250: 5f 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 44 45  _OPTS)!=0.!IFNDE
7260: 46 20 57 50 38 31 4c 49 42 50 41 54 48 0a 21 49  F WP81LIBPATH.!I
7270: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  F "$(PLATFORM)"= 7280: 3d 22 78 38 36 22 0a 57 50 38 31 4c 49 42 50 41 ="x86".WP81LIBPA 7290: 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 TH =$(PROGRAMFI
72a0: 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73  LES_X86)\Windows
72b0: 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c   Phone Kits\8.1\
72c0: 6c 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 46 20  lib\x86.!ELSEIF
72d0: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"==" 72e0: 41 52 4d 22 0a 57 50 38 31 4c 49 42 50 41 54 48 ARM".WP81LIBPATH 72f0: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 =$(PROGRAMFILE
7300: 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50  S_X86)\Windows P
7310: 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69  hone Kits\8.1\li
7320: 62 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 38 31  b\ARM.!ELSE.WP81
7330: 4c 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47  LIBPATH = $(PROG 7340: 52 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 RAMFILES_X86)\Wi 7350: 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 ndows Phone Kits 7360: 5c 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4e \8.1\lib\x86.!EN 7370: 44 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 DIF.!ENDIF.!ENDI 7380: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 7390: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 73a0: 50 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d 65 20 Phone 8.1, some 73b0: 65 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 extra linker opt 73c0: 69 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73 6f 20 ions.# are also 73d0: 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 required..#.!IF 73e0: 24 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29$(USE_WP81_OPTS)
73f0: 21 3d 30 0a 21 49 46 44 45 46 20 57 50 38 31 4c  !=0.!IFDEF WP81L
7400: 49 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54  IBPATH.LTLINKOPT
7410: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 7420: 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 57 50 ) "/LIBPATH:$(WP
7430: 38 31 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44  81LIBPATH)".!END
7440: 49 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  IF.LTLINKOPTS =
7450: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44  $(LTLINKOPTS) /D 7460: 59 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c 49 4e YNAMICBASE.LTLIN 7470: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
7480: 4f 50 54 53 29 20 57 69 6e 64 6f 77 73 50 68 6f  OPTS) WindowsPho
7490: 6e 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e 74 69  neCore.lib Runti
74a0: 6d 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 68 6f  meObject.lib Pho
74b0: 6e 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 2e 6c  neAppModelHost.l
74c0: 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  ib.LTLINKOPTS =
74d0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e  $(LTLINKOPTS) /N 74e0: 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e ODEFAULTLIB:kern 74f0: 65 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45 46 41 el32.lib /NODEFA 7500: 55 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c 69 62 ULTLIB:ole32.lib 7510: 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 .!ENDIF..# When 7520: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 55 57 compiling for UW 7530: 50 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 P or the Windows 7540: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 73 6f 10 platform, so 7550: 6d 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 0a me extra linker. 7560: 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 6c # options are al 7570: 73 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 so required..#.! 7580: 49 46 20 24 28 46 4f 52 5f 55 57 50 29 21 3d 30 IF$(FOR_UWP)!=0
7590: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 75a0: 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d !=0.LTLINKOPTS = 75b0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f$(LTLINKOPTS) /
75c0: 44 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e 4f 44  DYNAMICBASE /NOD
75d0: 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c  EFAULTLIB:kernel
75e0: 33 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54  32.lib.LTLINKOPT
75f0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 7600: 29 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a 21 49 ) mincore.lib.!I 7610: 46 44 45 46 20 50 53 44 4b 4c 49 42 50 41 54 48 FDEF PSDKLIBPATH 7620: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 .LTLINKOPTS =$(
7630: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49  LTLINKOPTS) "/LI
7640: 42 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 42 50  BPATH:$(PSDKLIBP 7650: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e ATH)".!ENDIF.!EN 7660: 44 49 46 0a 0a 21 49 46 20 24 28 46 4f 52 5f 57 DIF..!IF$(FOR_W
7670: 49 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f  IN10)!=0.LTLINKO
7680: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 7690: 54 53 29 20 2f 67 75 61 72 64 3a 63 66 20 22 2f TS) /guard:cf "/ 76a0: 4c 49 42 50 41 54 48 3a 24 28 55 43 52 54 4c 49 LIBPATH:$(UCRTLI
76b0: 42 50 41 54 48 29 22 0a 21 49 46 20 24 28 44 45  BPATH)".!IF $(DE 76c0: 42 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f 50 54 BUG)>1.LTLINKOPT 76d0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 S =$(LTLINKOPTS
76e0: 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a  ) /NODEFAULTLIB:
76f0: 6c 69 62 75 63 72 74 64 2e 6c 69 62 20 2f 44 45  libucrtd.lib /DE
7700: 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 2e 6c  FAULTLIB:ucrtd.l
7710: 69 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f  ib.!ELSE.LTLINKO
7720: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 7730: 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 TS) /NODEFAULTLI 7740: 42 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20 2f 44 B:libucrt.lib /D 7750: 45 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 2e 6c EFAULTLIB:ucrt.l 7760: 69 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 ib.!ENDIF.!ENDIF 7770: 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 ..# If either de 7780: 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f bugging or symbo 7790: 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 ls are enabled, 77a0: 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 enable PDBs..#.! 77b0: 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c IF$(DEBUG)>1 ||
77c0: 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c   $(SYMBOLS)!=0.L 77d0: 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 20 DFLAGS = /DEBUG 77e0: 24 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53 45 0a$(LDOPTS).!ELSE.
77f0: 4c 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 4f 50  LDFLAGS = $(LDOP 7800: 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c TS).!ENDIF..# << 7810: 6d 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74 20 77 mark>>.# Start w 7820: 69 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c 61 ith the Tcl rela 7830: 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f ted linker optio 7840: 6e 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 ns..#.!IF$(NO_T
7850: 43 4c 29 3d 3d 30 0a 54 43 4c 4c 49 42 50 41 54  CL)==0.TCLLIBPAT
7860: 48 53 20 3d 20 24 28 54 43 4c 4c 49 42 50 41 54  HS = $(TCLLIBPAT 7870: 48 53 29 20 2f 4c 49 42 50 41 54 48 3a 24 28 54 HS) /LIBPATH:$(T
7880: 43 4c 4c 49 42 44 49 52 29 0a 54 43 4c 4c 49 42  CLLIBDIR).TCLLIB
7890: 53 20 3d 20 24 28 54 43 4c 4c 49 42 53 29 20 24  S = $(TCLLIBS)$
78a0: 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44 49 46 0a  (LIBTCL).!ENDIF.
78b0: 0a 23 20 49 66 20 7a 6c 69 62 20 73 75 70 70 6f  .# If zlib suppo
78c0: 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61  rt is enabled, a
78d0: 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 20 6f 70  dd the linker op
78e0: 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a 23 0a  tions for it..#.
78f0: 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 42 29 21  !IF $(USE_ZLIB)! 7900: 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 =0.LTLIBPATHS = 7910: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4c$(LTLIBPATHS) /L
7920: 49 42 50 41 54 48 3a 24 28 5a 4c 49 42 4c 49 42  IBPATH:$(ZLIBLIB 7930: 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28 DIR).LTLIBS =$(
7940: 4c 54 4c 49 42 53 29 20 24 28 5a 4c 49 42 4c 49  LTLIBS) $(ZLIBLI 7950: 42 29 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 B).!ENDIF..# If 7960: 49 43 55 20 73 75 70 70 6f 72 74 20 69 73 20 65 ICU support is e 7970: 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68 65 20 nabled, add the 7980: 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 20 66 linker options f 7990: 6f 72 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 or it..#.!IF$(U
79a0: 53 45 5f 49 43 55 29 21 3d 30 0a 4c 54 4c 49 42  SE_ICU)!=0.LTLIB
79b0: 50 41 54 48 53 20 3d 20 24 28 4c 54 4c 49 42 50  PATHS = $(LTLIBP 79c0: 41 54 48 53 29 20 2f 4c 49 42 50 41 54 48 3a 24 ATHS) /LIBPATH:$
79d0: 28 49 43 55 4c 49 42 44 49 52 29 0a 4c 54 4c 49  (ICULIBDIR).LTLI
79e0: 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 29 20 24  BS = $(LTLIBS)$
79f0: 28 4c 49 42 49 43 55 29 0a 21 45 4e 44 49 46 0a  (LIBICU).!ENDIF.
7a00: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 59  # <</mark>>..# Y
7a10: 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 20 68 61  ou should not ha
7a20: 76 65 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 79  ve to change any
7a30: 74 68 69 6e 67 20 62 65 6c 6f 77 20 74 68 69 73  thing below this
7a40: 20 6c 69 6e 65 0a 23 23 23 23 23 23 23 23 23 23   line.##########
7a50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7a60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7a70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7a80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7a90: 23 23 23 23 23 0a 0a 23 20 3c 3c 6d 61 72 6b 3e  #####..# <<mark>
7aa0: 3e 0a 23 20 4f 62 6a 65 63 74 20 66 69 6c 65 73  >.# Object files
7ab0: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20   for the SQLite
7ac0: 6c 69 62 72 61 72 79 20 28 6e 6f 6e 2d 61 6d 61  library (non-ama
7ad0: 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a 23 0a 4c 49  lgamation)..#.LI
7ae0: 42 4f 42 4a 53 30 20 3d 20 76 64 62 65 2e 6c 6f  BOBJS0 = vdbe.lo
7af0: 20 70 61 72 73 65 2e 6c 6f 20 61 6c 74 65 72 2e   parse.lo alter.
7b00: 6c 6f 20 61 6e 61 6c 79 7a 65 2e 6c 6f 20 61 74  lo analyze.lo at
7b10: 74 61 63 68 2e 6c 6f 20 61 75 74 68 2e 6c 6f 20  tach.lo auth.lo
7b20: 5c 0a 20 20 20 20 20 20 20 20 20 62 61 63 6b 75  \.         backu
7b30: 70 2e 6c 6f 20 62 69 74 76 65 63 2e 6c 6f 20 62  p.lo bitvec.lo b
7b40: 74 6d 75 74 65 78 2e 6c 6f 20 62 74 72 65 65 2e  tmutex.lo btree.
7b50: 6c 6f 20 62 75 69 6c 64 2e 6c 6f 20 5c 0a 20 20  lo build.lo \.
7b60: 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63 6b 2e         callback.
7b70: 6c 6f 20 63 6f 6d 70 6c 65 74 65 2e 6c 6f 20 63  lo complete.lo c
7b80: 74 69 6d 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  time.lo \.
7b90: 20 20 20 64 61 74 65 2e 6c 6f 20 64 62 70 61 67     date.lo dbpag
7ba0: 65 2e 6c 6f 20 64 62 73 74 61 74 2e 6c 6f 20 64  e.lo dbstat.lo d
7bb0: 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20 20 20 20 20  elete.lo \.
7bc0: 20 20 20 20 65 78 70 72 2e 6c 6f 20 66 61 75 6c      expr.lo faul
7bd0: 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f 20 5c 0a 20  t.lo fkey.lo \.
7be0: 20 20 20 20 20 20 20 20 66 74 73 33 2e 6c 6f 20          fts3.lo
7bf0: 66 74 73 33 5f 61 75 78 2e 6c 6f 20 66 74 73 33  fts3_aux.lo fts3
7c00: 5f 65 78 70 72 2e 6c 6f 20 66 74 73 33 5f 68 61  _expr.lo fts3_ha
7c10: 73 68 2e 6c 6f 20 66 74 73 33 5f 69 63 75 2e 6c  sh.lo fts3_icu.l
7c20: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73  o \.         fts
7c30: 33 5f 70 6f 72 74 65 72 2e 6c 6f 20 66 74 73 33  3_porter.lo fts3
7c40: 5f 73 6e 69 70 70 65 74 2e 6c 6f 20 66 74 73 33  _snippet.lo fts3
7c50: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 20 66 74  _tokenizer.lo ft
7c60: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f  s3_tokenizer1.lo
7c70: 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 33   \.         fts3
7c80: 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 6c  _tokenize_vtab.l
7c90: 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c  o fts3_unicode.l
7ca0: 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e  o fts3_unicode2.
7cb0: 6c 6f 20 66 74 73 33 5f 77 72 69 74 65 2e 6c 6f  lo fts3_write.lo
7cc0: 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 35   \.         fts5
7cd0: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66  .lo \.         f
7ce0: 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61 6c 2e 6c 6f  unc.lo global.lo
7cf0: 20 68 61 73 68 2e 6c 6f 20 5c 0a 20 20 20 20 20   hash.lo \.
7d00: 20 20 20 20 69 63 75 2e 6c 6f 20 69 6e 73 65 72      icu.lo inser
7d10: 74 2e 6c 6f 20 6c 65 67 61 63 79 2e 6c 6f 20 6c  t.lo legacy.lo l
7d20: 6f 61 64 65 78 74 2e 6c 6f 20 5c 0a 20 20 20 20  oadext.lo \.
7d30: 20 20 20 20 20 6d 61 69 6e 2e 6c 6f 20 6d 61 6c       main.lo mal
7d40: 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 2e 6c 6f 20 6d  loc.lo mem0.lo m
7d50: 65 6d 31 2e 6c 6f 20 6d 65 6d 32 2e 6c 6f 20 6d  em1.lo mem2.lo m
7d60: 65 6d 33 2e 6c 6f 20 6d 65 6d 35 2e 6c 6f 20 5c  em3.lo mem5.lo \
7d70: 0a 20 20 20 20 20 20 20 20 20 6d 65 6d 64 62 2e  .         memdb.
7d80: 6c 6f 20 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f  lo memjournal.lo
7d90: 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 75 74 65   \.         mute
7da0: 78 2e 6c 6f 20 6d 75 74 65 78 5f 6e 6f 6f 70 2e  x.lo mutex_noop.
7db0: 6c 6f 20 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f  lo mutex_unix.lo
7dc0: 20 6d 75 74 65 78 5f 77 33 32 2e 6c 6f 20 5c 0a   mutex_w32.lo \.
7dd0: 20 20 20 20 20 20 20 20 20 6e 6f 74 69 66 79 2e           notify.
7de0: 6c 6f 20 6f 70 63 6f 64 65 73 2e 6c 6f 20 6f 73  lo opcodes.lo os
7df0: 2e 6c 6f 20 6f 73 5f 75 6e 69 78 2e 6c 6f 20 6f  .lo os_unix.lo o
7e00: 73 5f 77 69 6e 2e 6c 6f 20 5c 0a 20 20 20 20 20  s_win.lo \.
7e10: 20 20 20 20 70 61 67 65 72 2e 6c 6f 20 70 63 61      pager.lo pca
7e20: 63 68 65 2e 6c 6f 20 70 63 61 63 68 65 31 2e 6c  che.lo pcache1.l
7e30: 6f 20 70 72 61 67 6d 61 2e 6c 6f 20 70 72 65 70  o pragma.lo prep
7e40: 61 72 65 2e 6c 6f 20 70 72 69 6e 74 66 2e 6c 6f  are.lo printf.lo
7e50: 20 5c 0a 20 20 20 20 20 20 20 20 20 72 61 6e 64   \.         rand
7e60: 6f 6d 2e 6c 6f 20 72 65 73 6f 6c 76 65 2e 6c 6f  om.lo resolve.lo
7e70: 20 72 6f 77 73 65 74 2e 6c 6f 20 72 74 72 65 65   rowset.lo rtree
7e80: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 73  .lo \.         s
7e90: 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f  qlite3session.lo
7ea0: 20 73 65 6c 65 63 74 2e 6c 6f 20 73 71 6c 69 74   select.lo sqlit
7eb0: 65 33 72 62 75 2e 6c 6f 20 73 74 61 74 75 73 2e  e3rbu.lo status.
7ec0: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 74 61  lo \.         ta
7ed0: 62 6c 65 2e 6c 6f 20 74 68 72 65 61 64 73 2e 6c  ble.lo threads.l
7ee0: 6f 20 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72  o tokenize.lo tr
7ef0: 65 65 76 69 65 77 2e 6c 6f 20 74 72 69 67 67 65  eeview.lo trigge
7f00: 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  r.lo \.
7f10: 75 70 64 61 74 65 2e 6c 6f 20 75 70 73 65 72 74  update.lo upsert
7f20: 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63 75  .lo util.lo vacu
7f30: 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  um.lo \.
7f40: 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62 65   vdbeapi.lo vdbe
7f50: 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62 2e  aux.lo vdbeblob.
7f60: 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76 64  lo vdbemem.lo vd
7f70: 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20 20  besort.lo \.
7f80: 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e 6c       vdbetrace.l
7f90: 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72 2e  o wal.lo walker.
7fa0: 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 65 72  lo where.lo wher
7fb0: 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 65 78  ecode.lo whereex
7fc0: 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  pr.lo \.
7fd0: 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c 6f 0a   utf.lo vtab.lo.
7fe0: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 4f  # <</mark>>..# O
7ff0: 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20  bject files for
8000: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  the amalgamation
8010: 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20 73  ..#.LIBOBJS1 = s
8020: 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65 74  qlite3.lo..# Det
8030: 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c 20  ermine the real
8040: 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a 20  value of LIBOBJ
8050: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63 6f  based on the 'co
8060: 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74 0a  nfigure' script.
8070: 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 49 46  #.# <<mark>>.!IF
8080: 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54   $(USE_AMALGAMAT 8090: 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a 20 3d ION)==0.LIBOBJ = 80a0: 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21 45 4c$(LIBOBJS0).!EL
80b0: 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 4c  SE.# <</mark>>.L
80c0: 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a  IBOBJ = $(LIBOBJ 80d0: 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 S1).# <<mark>>.! 80e0: 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e ENDIF.# <</mark> 80f0: 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65 20 69 >..# Determine i 8100: 66 20 65 6d 62 65 64 64 65 64 20 72 65 73 6f 75 f embedded resou 8110: 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 rce compilation 8120: 61 6e 64 20 75 73 61 67 65 20 61 72 65 20 65 6e and usage are en 8130: 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 abled..#.!IF$(U
8140: 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 45 53  SE_RC)!=0.LIBRES
8150: 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 72 65  OBJS = sqlite3re
8160: 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 52 45  s.lo.!ELSE.LIBRE
8170: 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 0a 0a  SOBJS =.!ENDIF..
8180: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 6f 72  # <<mark>>.# Cor
8190: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69  e source code fi
81a0: 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53  les, part 1..#.S
81b0: 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 4f 50  RC00 = \.  $(TOP 81c0: 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 5c 0a )\src\alter.c \. 81d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61$(TOP)\src\ana
81e0: 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lyze.c \.  $(TOP 81f0: 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 20 5c )\src\attach.c \ 8200: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 .$(TOP)\src\au
8210: 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  th.c \.  $(TOP)\ 8220: 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a 20 src\backup.c \. 8230: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76$(TOP)\src\bitv
8240: 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ec.c \.  $(TOP)\ 8250: 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 20 5c 0a src\btmutex.c \. 8260: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72$(TOP)\src\btr
8270: 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ee.c \.  $(TOP)\ 8280: 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a 20 20 src\build.c \. 8290: 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62$(TOP)\src\callb
82a0: 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ack.c \.  $(TOP) 82b0: 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 20 \src\complete.c 82c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 \.$(TOP)\src\c
82d0: 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  time.c \.  $(TOP 82e0: 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c 0a 20 )\src\date.c \. 82f0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 70 61$(TOP)\src\dbpa
8300: 67 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ge.c \.  $(TOP)\ 8310: 73 72 63 5c 64 62 73 74 61 74 2e 63 20 5c 0a 20 src\dbstat.c \. 8320: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65$(TOP)\src\dele
8330: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\ 8340: 73 72 63 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 src\expr.c \.$
8350: 28 54 4f 50 29 5c 73 72 63 5c 66 61 75 6c 74 2e  (TOP)\src\fault.
8360: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8370: 5c 66 6b 65 79 2e 63 20 5c 0a 20 20 24 28 54 4f \fkey.c \.$(TO
8380: 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a  P)\src\func.c \.
8390: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f    $(TOP)\src\glo 83a0: 62 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 bal.c \.$(TOP)
83b0: 5c 73 72 63 5c 68 61 73 68 2e 63 20 5c 0a 20 20  \src\hash.c \.
83c0: 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72  $(TOP)\src\inser 83d0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 t.c \.$(TOP)\s
83e0: 72 63 5c 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20  rc\legacy.c \.
83f0: 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65  $(TOP)\src\loade 8400: 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c xt.c \.$(TOP)\
8410: 73 72 63 5c 6d 61 69 6e 2e 63 20 5c 0a 20 20 24  src\main.c \.  $8420: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 (TOP)\src\malloc 8430: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8440: 63 5c 6d 65 6d 30 2e 63 20 5c 0a 20 20 24 28 54  c\mem0.c \.  $(T 8450: 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 5c OP)\src\mem1.c \ 8460: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 .$(TOP)\src\me
8470: 6d 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  m2.c \.  $(TOP)\ 8480: 73 72 63 5c 6d 65 6d 33 2e 63 20 5c 0a 20 20 24 src\mem3.c \.$
8490: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63  (TOP)\src\mem5.c
84a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 84b0: 6d 65 6d 64 62 2e 63 20 5c 0a 20 20 24 28 54 4f memdb.c \.$(TO
84c0: 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61  P)\src\memjourna
84d0: 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  l.c \.  $(TOP)\s 84e0: 72 63 5c 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24 rc\mutex.c \.$
84f0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
8500: 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50  noop.c \.  $(TOP 8510: 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 )\src\mutex_unix 8520: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8530: 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 5c 0a  c\mutex_w32.c \.
8540: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74    $(TOP)\src\not 8550: 69 66 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ify.c \.$(TOP)
8560: 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 20 24 28  \src\os.c \.  $( 8570: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 TOP)\src\os_unix 8580: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8590: 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 23 20 43 6f  c\os_win.c..# Co
85a0: 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  re source code f
85b0: 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a  iles, part 2..#.
85c0: 53 52 43 30 31 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC01 = \.  $(TO 85d0: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 5c P)\src\pager.c \ 85e0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 .$(TOP)\src\pc
85f0: 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ache.c \.  $(TOP 8600: 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 )\src\pcache1.c 8610: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 \.$(TOP)\src\p
8620: 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f  ragma.c \.  $(TO 8630: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 P)\src\prepare.c 8640: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8650: 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24 28 54  printf.c \.  $(T 8660: 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 OP)\src\random.c 8670: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8680: 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20 20 24 28  resolve.c \.  $( 8690: 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 2e TOP)\src\rowset. 86a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
86b0: 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 20 24 28  \select.c \.  $( 86c0: 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75 73 2e TOP)\src\status. 86d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
86e0: 5c 74 61 62 6c 65 2e 63 20 5c 0a 20 20 24 28 54  \table.c \.  $(T 86f0: 4f 50 29 5c 73 72 63 5c 74 68 72 65 61 64 73 2e OP)\src\threads. 8700: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8710: 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 5c 0a 20  \tclsqlite.c \.
8720: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65   $(TOP)\src\toke 8730: 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 nize.c \.$(TOP
8740: 29 5c 73 72 63 5c 74 72 65 65 76 69 65 77 2e 63  )\src\treeview.c
8750: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8760: 74 72 69 67 67 65 72 2e 63 20 5c 0a 20 20 24 28 trigger.c \.$(
8770: 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 20 5c  TOP)\src\utf.c \
8780: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 70  .  $(TOP)\src\up 8790: 64 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 date.c \.$(TOP
87a0: 29 5c 73 72 63 5c 75 70 73 65 72 74 2e 63 20 5c  )\src\upsert.c \
87b0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74  .  $(TOP)\src\ut 87c0: 69 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c il.c \.$(TOP)\
87d0: 73 72 63 5c 76 61 63 75 75 6d 2e 63 20 5c 0a 20  src\vacuum.c \.
87e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe 87f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8800: 63 5c 76 64 62 65 61 70 69 2e 63 20 5c 0a 20 20  c\vdbeapi.c \.
8810: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61  $(TOP)\src\vdbea 8820: 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ux.c \.$(TOP)\
8830: 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 5c  src\vdbeblob.c \
8840: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd 8850: 62 65 6d 65 6d 2e 63 20 5c 0a 20 20 24 28 54 4f bemem.c \.$(TO
8860: 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e  P)\src\vdbesort.
8870: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8880: 5c 76 64 62 65 74 72 61 63 65 2e 63 20 5c 0a 20 \vdbetrace.c \. 8890: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62$(TOP)\src\vtab
88a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 88b0: 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f c\wal.c \.$(TO
88c0: 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20  P)\src\walker.c
88d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77  \.  $(TOP)\src\w 88e0: 68 65 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 here.c \.$(TOP
88f0: 29 5c 73 72 63 5c 77 68 65 72 65 63 6f 64 65 2e  )\src\wherecode.
8900: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8910: 5c 77 68 65 72 65 65 78 70 72 2e 63 0a 0a 23 20 \whereexpr.c..# 8920: 43 6f 72 65 20 6d 69 73 63 65 6c 6c 61 6e 65 6f Core miscellaneo 8930: 75 73 20 66 69 6c 65 73 2e 0a 23 0a 53 52 43 30 us files..#.SRC0 8940: 33 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 3 = \.$(TOP)\s
8950: 72 63 5c 70 61 72 73 65 2e 79 0a 0a 23 20 43 6f  rc\parse.y..# Co
8960: 72 65 20 68 65 61 64 65 72 20 66 69 6c 65 73 2c  re header files,
8970: 20 70 61 72 74 20 31 2e 0a 23 0a 53 52 43 30 34   part 1..#.SRC04
8980: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72   = \.  $(TOP)\sr 8990: 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20 24 28 c\btree.h \.$(
89a0: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 49 6e  TOP)\src\btreeIn
89b0: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.h \.  $(TOP)\s 89c0: 72 63 5c 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 rc\hash.h \.$(
89d0: 54 4f 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e  TOP)\src\hwtime.
89e0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 89f0: 5c 6d 73 76 63 2e 68 20 5c 0a 20 20 24 28 54 4f \msvc.h \.$(TO
8a00: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c  P)\src\mutex.h \
8a10: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  .  $(TOP)\src\os 8a20: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .h \.$(TOP)\sr
8a30: 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a  c\os_common.h \.
8a40: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_ 8a50: 73 65 74 75 70 2e 68 20 5c 0a 20 20 24 28 54 4f setup.h \.$(TO
8a60: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 0a  P)\src\os_win.h.
8a70: 0a 23 20 43 6f 72 65 20 68 65 61 64 65 72 20 66  .# Core header f
8a80: 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a  iles, part 2..#.
8a90: 53 52 43 30 35 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC05 = \.  $(TO 8aa0: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20 5c P)\src\pager.h \ 8ab0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 .$(TOP)\src\pc
8ac0: 61 63 68 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50  ache.h \.  $(TOP 8ad0: 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 68 20 5c )\src\pragma.h \ 8ae0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 .$(TOP)\src\sq
8af0: 6c 69 74 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28  lite.h.in \.  $( 8b00: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 TOP)\src\sqlite3 8b10: 65 78 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ext.h \.$(TOP)
8b20: 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68  \src\sqliteInt.h
8b30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8b40: 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a sqliteLimit.h \. 8b50: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62$(TOP)\src\vdb
8b60: 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.h \.  $(TOP)\s 8b70: 72 63 5c 76 64 62 65 49 6e 74 2e 68 20 5c 0a 20 rc\vdbeInt.h \. 8b80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 78 77 6f$(TOP)\src\vxwo
8b90: 72 6b 73 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  rks.h \.  $(TOP) 8ba0: 5c 73 72 63 5c 77 61 6c 2e 68 20 5c 0a 20 20 24 \src\wal.h \.$
8bb0: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 49  (TOP)\src\whereI
8bc0: 6e 74 2e 68 0a 0a 23 20 45 78 74 65 6e 73 69 6f  nt.h..# Extensio
8bd0: 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69  n source code fi
8be0: 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53  les, part 1..#.S
8bf0: 52 43 30 36 20 3d 20 5c 0a 20 20 24 28 54 4f 50  RC06 = \.  $(TOP 8c00: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e )\ext\fts1\fts1. 8c10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
8c20: 5c 66 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e  \fts1\fts1_hash.
8c30: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 8c40: 5c 66 74 73 31 5c 66 74 73 31 5f 70 6f 72 74 65 \fts1\fts1_porte 8c50: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 r.c \.$(TOP)\e
8c60: 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b  xt\fts1\fts1_tok
8c70: 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20 24 28  enizer1.c \.  $( 8c80: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 8c90: 73 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c s2.c \.$(TOP)\
8ca0: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61  ext\fts2\fts2_ha
8cb0: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.c \.  $(TOP)\ 8cc0: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 ext\fts2\fts2_ic 8cd0: 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 u.c \.$(TOP)\e
8ce0: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72  xt\fts2\fts2_por
8cf0: 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ter.c \.  $(TOP) 8d00: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 \ext\fts2\fts2_t 8d10: 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24 okenizer.c \.$
8d20: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
8d30: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63  ts2_tokenizer1.c
8d40: 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20 73 6f  ..# Extension so
8d50: 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 2c  urce code files,
8d60: 20 70 61 72 74 20 32 2e 0a 23 0a 53 52 43 30 37   part 2..#.SRC07
8d70: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78   = \.  $(TOP)\ex 8d80: 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 5c 0a t\fts3\fts3.c \. 8d90: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8da0: 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 5c 0a 20  3\fts3_aux.c \.
8db0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 8dc0: 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 5c 0a 20 \fts3_expr.c \. 8dd0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
8de0: 5c 66 74 73 33 5f 68 61 73 68 2e 63 20 5c 0a 20  \fts3_hash.c \.
8df0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 8e00: 5c 66 74 73 33 5f 69 63 75 2e 63 20 5c 0a 20 20 \fts3_icu.c \. 8e10: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
8e20: 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 20 5c 0a  fts3_porter.c \.
8e30: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8e40: 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 63 3\fts3_snippet.c 8e50: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
8e60: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
8e70: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  zer.c \.  $(TOP) 8e80: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 \ext\fts3\fts3_t 8e90: 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20 okenizer1.c \. 8ea0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
8eb0: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74  fts3_tokenize_vt
8ec0: 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ab.c \.  $(TOP)\ 8ed0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e ext\fts3\fts3_un 8ee0: 69 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f icode.c \.$(TO
8ef0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
8f00: 5f 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20  _unicode2.c \.
8f10: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 8f20: 66 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 fts3_write.c \. 8f30: 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c$(TOP)\ext\icu\
8f40: 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  icu.c \.  $(TOP) 8f50: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree 8f60: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
8f70: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65  t\session\sqlite
8f80: 33 73 65 73 73 69 6f 6e 2e 63 20 5c 0a 20 20 24  3session.c \.  $8f90: 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71 (TOP)\ext\rbu\sq 8fa0: 6c 69 74 65 33 72 62 75 2e 63 20 5c 0a 20 20 24 lite3rbu.c \.$
8fb0: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6a  (TOP)\ext\misc\j
8fc0: 73 6f 6e 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50  son1.c \.  $(TOP 8fd0: 29 5c 65 78 74 5c 6d 69 73 63 5c 73 74 6d 74 2e )\ext\misc\stmt. 8fe0: 63 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 c..# Extension h 8ff0: 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 72 eader files, par 9000: 74 20 31 2e 0a 23 0a 53 52 43 30 38 20 3d 20 5c t 1..#.SRC08 = \ 9010: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
9020: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $( 9030: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 9040: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 s1_hash.h \.$(
9050: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
9060: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c  s1_tokenizer.h \
9070: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 9080: 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 s2\fts2.h \.$(
9090: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
90a0: 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  s2_hash.h \.  $( 90b0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 90c0: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a s2_tokenizer.h.. 90d0: 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 # Extension head 90e0: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 er files, part 2 90f0: 2e 0a 23 0a 53 52 43 30 39 20 3d 20 5c 0a 20 20 ..#.SRC09 = \. 9100: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
9110: 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts3.h \.  $(TOP 9120: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49 )\ext\fts3\fts3I 9130: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c nt.h \.$(TOP)\
9140: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61  ext\fts3\fts3_ha
9150: 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.h \.  $(TOP)\ 9160: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f ext\fts3\fts3_to 9170: 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 kenizer.h \.$(
9180: 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c  TOP)\ext\icu\sql
9190: 69 74 65 69 63 75 2e 68 20 5c 0a 20 20 24 28 54  iteicu.h \.  $(T 91a0: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 OP)\ext\rtree\rt 91b0: 72 65 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ree.h \.$(TOP)
91c0: 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33  \ext\rbu\sqlite3
91d0: 72 62 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  rbu.h \.  $(TOP) 91e0: 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c \ext\session\sql 91f0: 69 74 65 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 ite3session.h..# 9200: 20 47 65 6e 65 72 61 74 65 64 20 73 6f 75 72 63 Generated sourc 9210: 65 20 63 6f 64 65 20 66 69 6c 65 73 0a 23 0a 53 e code files.#.S 9220: 52 43 31 30 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 RC10 = \. opcod 9230: 65 73 2e 63 20 5c 0a 20 20 70 61 72 73 65 2e 63 es.c \. parse.c 9240: 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 68 65 ..# Generated he 9250: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 53 52 43 ader files.#.SRC 9260: 31 31 20 3d 20 5c 0a 20 20 6b 65 79 77 6f 72 64 11 = \. keyword 9270: 68 61 73 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 hash.h \. opcod 9280: 65 73 2e 68 20 5c 0a 20 20 70 61 72 73 65 2e 68 es.h \. parse.h 9290: 20 5c 0a 20 20 73 68 65 6c 6c 2e 63 20 5c 0a 20 \. shell.c \. 92a0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23 20$(SQLITE3H)..#
92b0: 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68 65  Generated Tcl he
92c0: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 21 49 46  ader files.#.!IF
92d0: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)! 92e0: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
92f0: 30 29 21 3d 30 0a 53 52 43 31 32 20 3d 20 5c 0a  0)!=0.SRC12 = \.
9300: 20 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29 20    $(SQLITETCLH) 9310: 5c 0a 20 20 24 28 53 51 4c 49 54 45 54 43 4c 44 \.$(SQLITETCLD
9320: 45 43 4c 53 48 29 0a 21 45 4c 53 45 0a 53 52 43  ECLSH).!ELSE.SRC
9330: 31 32 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 41  12 =.!ENDIF..# A
9340: 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  ll source code f
9350: 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24 28  iles..#.SRC = $( 9360: 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 20 SRC00)$(SRC01)
9370: 24 28 53 52 43 30 33 29 20 24 28 53 52 43 30 34  $(SRC03)$(SRC04
9380: 29 20 24 28 53 52 43 30 35 29 20 24 28 53 52 43  ) $(SRC05)$(SRC
9390: 30 36 29 20 24 28 53 52 43 30 37 29 20 24 28 53  06) $(SRC07)$(S
93a0: 52 43 30 38 29 20 24 28 53 52 43 30 39 29 20 24  RC08) $(SRC09)$
93b0: 28 53 52 43 31 30 29 20 24 28 53 52 43 31 31 29  (SRC10) $(SRC11) 93c0: 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64 65 20 ..# Source code 93d0: 74 6f 20 74 68 65 20 74 65 73 74 20 66 69 6c 65 to the test file 93e0: 73 2e 0a 23 0a 54 45 53 54 53 52 43 20 3d 20 5c s..#.TESTSRC = \ 93f0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
9400: 73 74 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  st1.c \.  $(TOP) 9410: 5c 73 72 63 5c 74 65 73 74 32 2e 63 20 5c 0a 20 \src\test2.c \. 9420: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
9430: 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  3.c \.  $(TOP)\s 9440: 72 63 5c 74 65 73 74 34 2e 63 20 5c 0a 20 20 24 rc\test4.c \.$
9450: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 35 2e  (TOP)\src\test5.
9460: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 9470: 5c 74 65 73 74 36 2e 63 20 5c 0a 20 20 24 28 54 \test6.c \.$(T
9480: 4f 50 29 5c 73 72 63 5c 74 65 73 74 37 2e 63 20  OP)\src\test7.c
9490: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 94a0: 65 73 74 38 2e 63 20 5c 0a 20 20 24 28 54 4f 50 est8.c \.$(TOP
94b0: 29 5c 73 72 63 5c 74 65 73 74 39 2e 63 20 5c 0a  )\src\test9.c \.
94c0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 94d0: 74 5f 61 75 74 6f 65 78 74 2e 63 20 5c 0a 20 20 t_autoext.c \. 94e0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
94f0: 61 73 79 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f  async.c \.  $(TO 9500: 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 61 63 6b P)\src\test_back 9510: 75 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c up.c \.$(TOP)\
9520: 73 72 63 5c 74 65 73 74 5f 62 65 73 74 69 6e 64  src\test_bestind
9530: 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ex.c \.  $(TOP)\ 9540: 73 72 63 5c 74 65 73 74 5f 62 6c 6f 62 2e 63 20 src\test_blob.c 9550: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9560: 65 73 74 5f 62 74 72 65 65 2e 63 20 5c 0a 20 20  est_btree.c \.
9570: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9580: 63 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 24 28 54 config.c \.$(T
9590: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 64 65 6c  OP)\src\test_del
95a0: 65 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ete.c \.  $(TOP) 95b0: 5c 73 72 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66 \src\test_demovf 95c0: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 s.c \.$(TOP)\s
95d0: 72 63 5c 74 65 73 74 5f 64 65 76 73 79 6d 2e 63  rc\test_devsym.c
95e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 95f0: 74 65 73 74 5f 66 73 2e 63 20 5c 0a 20 20 24 28 test_fs.c \.$(
9600: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 75  TOP)\src\test_fu
9610: 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nc.c \.  $(TOP)\ 9620: 73 72 63 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63 src\test_hexio.c 9630: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
9640: 74 65 73 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20  test_init.c \.
9650: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9660: 69 6e 74 61 72 72 61 79 2e 63 20 5c 0a 20 20 24 intarray.c \.$
9670: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a  (TOP)\src\test_j
9680: 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54  ournal.c \.  $(T 9690: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c OP)\src\test_mal 96a0: 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 loc.c \.$(TOP)
96b0: 5c 73 72 63 5c 74 65 73 74 5f 6d 64 35 2e 63 20  \src\test_md5.c
96c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 96d0: 65 73 74 5f 6d 75 6c 74 69 70 6c 65 78 2e 63 20 est_multiplex.c 96e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
96f0: 65 73 74 5f 6d 75 74 65 78 2e 63 20 5c 0a 20 20  est_mutex.c \.
9700: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9710: 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a 20 20 24 28 onefile.c \.$(
9720: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 73  TOP)\src\test_os
9730: 69 6e 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  inst.c \.  $(TOP 9740: 29 5c 73 72 63 5c 74 65 73 74 5f 70 63 61 63 68 )\src\test_pcach 9750: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
9760: 72 63 5c 74 65 73 74 5f 71 75 6f 74 61 2e 63 20  rc\test_quota.c
9770: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 9780: 65 73 74 5f 72 74 72 65 65 2e 63 20 5c 0a 20 20 est_rtree.c \. 9790: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
97a0: 73 63 68 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54  schema.c \.  $(T 97b0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 65 72 OP)\src\test_ser 97c0: 76 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ver.c \.$(TOP)
97d0: 5c 73 72 63 5c 74 65 73 74 5f 73 75 70 65 72 6c  \src\test_superl
97e0: 6f 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ock.c \.  $(TOP) 97f0: 5c 73 72 63 5c 74 65 73 74 5f 73 79 73 63 61 6c \src\test_syscal 9800: 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 l.c \.$(TOP)\s
9810: 72 63 5c 74 65 73 74 5f 74 63 6c 73 68 2e 63 20  rc\test_tclsh.c
9820: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 9830: 65 73 74 5f 74 63 6c 76 61 72 2e 63 20 5c 0a 20 est_tclvar.c \. 9840: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
9850: 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20 20 24 28  _thread.c \.  $( 9860: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 76 66 TOP)\src\test_vf 9870: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 s.c \.$(TOP)\s
9880: 72 63 5c 74 65 73 74 5f 77 69 6e 64 69 72 65 6e  rc\test_windiren
9890: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s 98a0: 72 63 5c 74 65 73 74 5f 77 73 64 2e 63 20 5c 0a rc\test_wsd.c \. 98b0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
98c0: 33 5c 66 74 73 33 5f 74 65 72 6d 2e 63 20 5c 0a  3\fts3_term.c \.
98d0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 98e0: 33 5c 66 74 73 33 5f 74 65 73 74 2e 63 20 5c 0a 3\fts3_test.c \. 98f0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75$(TOP)\ext\rbu
9900: 5c 74 65 73 74 5f 72 62 75 2e 63 20 5c 0a 20 20  \test_rbu.c \.
9910: 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69  $(TOP)\ext\sessi 9920: 6f 6e 5c 74 65 73 74 5f 73 65 73 73 69 6f 6e 2e on\test_session. 9930: 63 0a 0a 23 20 53 74 61 74 69 63 61 6c 6c 79 20 c..# Statically 9940: 6c 69 6e 6b 65 64 20 65 78 74 65 6e 73 69 6f 6e linked extension 9950: 73 2e 0a 23 0a 54 45 53 54 45 58 54 20 3d 20 5c s..#.TESTEXT = \ 9960: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 .$(TOP)\ext\ex
9970: 70 65 72 74 5c 73 71 6c 69 74 65 33 65 78 70 65  pert\sqlite3expe
9980: 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  rt.c \.  $(TOP)\ 9990: 65 78 74 5c 65 78 70 65 72 74 5c 74 65 73 74 5f ext\expert\test_ 99a0: 65 78 70 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 expert.c \.$(T
99b0: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 61 6d 61  OP)\ext\misc\ama
99c0: 74 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tch.c \.  $(TOP) 99d0: 5c 65 78 74 5c 6d 69 73 63 5c 63 61 72 72 61 79 \ext\misc\carray 99e0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
99f0: 74 5c 6d 69 73 63 5c 63 6c 6f 73 75 72 65 2e 63  t\misc\closure.c
9a00: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 9a10: 6d 69 73 63 5c 63 73 76 2e 63 20 5c 0a 20 20 24 misc\csv.c \.$
9a20: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 65  (TOP)\ext\misc\e
9a30: 76 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  val.c \.  $(TOP) 9a40: 5c 65 78 74 5c 6d 69 73 63 5c 66 69 6c 65 69 6f \ext\misc\fileio 9a50: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9a60: 74 5c 6d 69 73 63 5c 66 75 7a 7a 65 72 2e 63 20  t\misc\fuzzer.c
9a70: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 9a80: 74 73 35 5c 66 74 73 35 5f 74 63 6c 2e 63 20 5c ts5\fts5_tcl.c \ 9a90: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
9aa0: 73 35 5c 66 74 73 35 5f 74 65 73 74 5f 6d 69 2e  s5\fts5_test_mi.
9ab0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 9ac0: 5c 66 74 73 35 5c 66 74 73 35 5f 74 65 73 74 5f \fts5\fts5_test_ 9ad0: 74 6f 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 tok.c \.$(TOP)
9ae0: 5c 65 78 74 5c 6d 69 73 63 5c 69 65 65 65 37 35  \ext\misc\ieee75
9af0: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  4.c \.  $(TOP)\e 9b00: 78 74 5c 6d 69 73 63 5c 6d 6d 61 70 77 61 72 6d xt\misc\mmapwarm 9b10: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9b20: 74 5c 6d 69 73 63 5c 6e 65 78 74 63 68 61 72 2e  t\misc\nextchar.
9b30: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 9b40: 5c 6d 69 73 63 5c 6e 6f 72 6d 61 6c 69 7a 65 2e \misc\normalize. 9b50: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
9b60: 5c 6d 69 73 63 5c 70 65 72 63 65 6e 74 69 6c 65  \misc\percentile
9b70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9b80: 74 5c 6d 69 73 63 5c 72 65 67 65 78 70 2e 63 20 t\misc\regexp.c 9b90: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
9ba0: 69 73 63 5c 72 65 6d 65 6d 62 65 72 2e 63 20 5c  isc\remember.c \
9bb0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 9bc0: 73 63 5c 73 65 72 69 65 73 2e 63 20 5c 0a 20 20 sc\series.c \. 9bd0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
9be0: 73 70 65 6c 6c 66 69 78 2e 63 20 5c 0a 20 20 24  spellfix.c \.  $9bf0: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 74 (TOP)\ext\misc\t 9c00: 6f 74 79 70 65 2e 63 20 5c 0a 20 20 24 28 54 4f otype.c \.$(TO
9c10: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 75 6e 69 6f  P)\ext\misc\unio
9c20: 6e 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f  nvtab.c \.  $(TO 9c30: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 77 68 6f 6c P)\ext\misc\whol 9c40: 65 6e 75 6d 62 65 72 2e 63 0a 0a 23 20 49 66 20 enumber.c..# If 9c50: 75 73 65 20 6f 66 20 7a 6c 69 62 20 69 73 20 65 use of zlib is e 9c60: 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68 65 20 nabled, add the 9c70: 22 7a 69 70 66 69 6c 65 2e 63 22 20 73 6f 75 72 "zipfile.c" sour 9c80: 63 65 20 66 69 6c 65 2e 0a 23 0a 21 49 46 20 24 ce file..#.!IF$
9c90: 28 55 53 45 5f 5a 4c 49 42 29 21 3d 30 0a 54 45  (USE_ZLIB)!=0.TE
9ca0: 53 54 45 58 54 20 3d 20 24 28 54 45 53 54 45 58  STEXT = $(TESTEX 9cb0: 54 29 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 T)$(TOP)\ext\mi
9cc0: 73 63 5c 7a 69 70 66 69 6c 65 2e 63 0a 21 45 4e  sc\zipfile.c.!EN
9cd0: 44 49 46 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  DIF..# Source co
9ce0: 64 65 20 74 6f 20 74 68 65 20 6c 69 62 72 61 72  de to the librar
9cf0: 79 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 62  y files needed b
9d00: 79 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75  y the test fixtu
9d10: 72 65 0a 23 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61  re.# (non-amalga
9d20: 6d 61 74 69 6f 6e 29 0a 23 0a 54 45 53 54 53 52  mation).#.TESTSR
9d30: 43 32 20 3d 20 5c 0a 20 20 24 28 53 52 43 30 30  C2 = \.  $(SRC00 9d40: 29 20 5c 0a 20 20 24 28 53 52 43 30 31 29 20 5c ) \.$(SRC01) \
9d50: 0a 20 20 24 28 53 52 43 30 36 29 20 5c 0a 20 20  .  $(SRC06) \. 9d60: 24 28 53 52 43 30 37 29 20 5c 0a 20 20 24 28 53$(SRC07) \.  $(S 9d70: 52 43 31 30 29 20 5c 0a 20 20 24 28 54 4f 50 29 RC10) \.$(TOP)
9d80: 5c 65 78 74 5c 61 73 79 6e 63 5c 73 71 6c 69 74  \ext\async\sqlit
9d90: 65 33 61 73 79 6e 63 2e 63 0a 0a 23 20 48 65 61  e3async.c..# Hea
9da0: 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20 62  der files used b
9db0: 79 20 61 6c 6c 20 6c 69 62 72 61 72 79 20 73 6f  y all library so
9dc0: 75 72 63 65 20 66 69 6c 65 73 2e 0a 23 0a 48 44  urce files..#.HD
9dd0: 52 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  R = \.   $(TOP)\ 9de0: 73 72 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20 src\btree.h \. 9df0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65$(TOP)\src\btre
9e00: 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  eInt.h \.   $(TO 9e10: 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 20 5c 0a P)\src\hash.h \. 9e20: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 77$(TOP)\src\hw
9e30: 74 69 6d 65 2e 68 20 5c 0a 20 20 20 6b 65 79 77  time.h \.   keyw
9e40: 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 20 24  ordhash.h \.   $9e50: 28 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 (TOP)\src\msvc.h 9e60: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
9e70: 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 6f 70  \mutex.h \.   op
9e80: 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 28 54  codes.h \.   $(T 9e90: 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 OP)\src\os.h \. 9ea0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f$(TOP)\src\os_
9eb0: 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 24 28  common.h \.   $( 9ec0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65 74 75 TOP)\src\os_setu 9ed0: 70 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c p.h \.$(TOP)\
9ee0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 20 5c 0a 20  src\os_win.h \.
9ef0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67    $(TOP)\src\pag 9f00: 65 72 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 er.h \.$(TOP)
9f10: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a  \src\pcache.h \.
9f20: 20 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 20 20     parse.h \.
9f30: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d  $(TOP)\src\pragm 9f40: 61 2e 68 20 5c 0a 20 20 20 24 28 53 51 4c 49 54 a.h \.$(SQLIT
9f50: 45 33 48 29 20 5c 0a 20 20 20 73 71 6c 69 74 65  E3H) \.   sqlite
9f60: 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  3ext.h \.   $(TO 9f70: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 P)\src\sqliteInt 9f80: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
9f90: 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68  rc\sqliteLimit.h
9fa0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 9fb0: 5c 76 64 62 65 2e 68 20 5c 0a 20 20 20 24 28 54 \vdbe.h \.$(T
9fc0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e  OP)\src\vdbeInt.
9fd0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 9fe0: 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20 20 c\vxworks.h \. 9ff0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72$(TOP)\src\wher
a000: 65 49 6e 74 2e 68 0a 0a 23 20 48 65 61 64 65 72  eInt.h..# Header
a010: 20 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 65   files used by e
a020: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45 58 54 48  xtensions.#.EXTH
a030: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \ a040: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
a050: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $( a060: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft a070: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 s1_hash.h \.$(
a080: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
a090: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45  s1_tokenizer.h.E
a0a0: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR a0b0: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 ) \.$(TOP)\ext
a0c0: 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20  \fts2\fts2.h \.
a0d0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 a0e0: 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 \fts2_hash.h \. a0f0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
a100: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
a110: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT a120: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c HDR) \.$(TOP)\
a130: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 68 20  ext\fts3\fts3.h
a140: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f a150: 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 20 5c 0a ts3\fts3Int.h \. a160: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
a170: 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 20 5c 0a  3\fts3_hash.h \.
a180: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts a190: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer a1a0: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
a1b0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) a1c0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree a1d0: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
a1e0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) a1f0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69 \ext\icu\sqlitei a200: 63 75 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 cu.h.EXTHDR =$(
a210: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO a220: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 73 71 6c P)\ext\rtree\sql a230: 69 74 65 33 72 74 72 65 65 2e 68 0a 45 58 54 48 ite3rtree.h.EXTH a240: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c DR =$(EXTHDR) \
a250: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  .  $(TOP)\ext\se a260: 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 ssion\sqlite3ses a270: 73 69 6f 6e 2e 68 0a 0a 23 20 65 78 65 63 75 74 sion.h..# execut a280: 61 62 6c 65 73 20 6e 65 65 64 65 64 20 66 6f 72 ables needed for a290: 20 74 65 73 74 69 6e 67 0a 23 0a 54 45 53 54 50 testing.#.TESTP a2a0: 52 4f 47 53 20 3d 20 5c 0a 20 20 74 65 73 74 66 ROGS = \. testf a2b0: 69 78 74 75 72 65 2e 65 78 65 20 5c 0a 20 20 24 ixture.exe \.$
a2c0: 28 53 51 4c 49 54 45 33 45 58 45 29 20 5c 0a 20  (SQLITE3EXE) \.
a2d0: 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
a2e0: 72 2e 65 78 65 20 5c 0a 20 20 73 71 6c 69 74 65  r.exe \.  sqlite
a2f0: 33 5f 63 68 65 63 6b 65 72 2e 65 78 65 20 5c 0a  3_checker.exe \.
a300: 20 20 73 71 6c 64 69 66 66 2e 65 78 65 20 5c 0a    sqldiff.exe \.
a310: 20 20 64 62 68 61 73 68 2e 65 78 65 20 5c 0a 20    dbhash.exe \.
a320: 20 73 71 6c 74 63 6c 73 68 2e 65 78 65 0a 0a 23   sqltclsh.exe..#
a330: 20 44 61 74 61 62 61 73 65 73 20 63 6f 6e 74 61   Databases conta
a340: 69 6e 69 6e 67 20 66 75 7a 7a 65 72 20 74 65 73  ining fuzzer tes
a350: 74 20 63 61 73 65 73 0a 23 0a 46 55 5a 5a 44 41  t cases.#.FUZZDA
a360: 54 41 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c  TA = \.  $(TOP)\ a370: 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 31 2e 64 test\fuzzdata1.d a380: 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 b \.$(TOP)\tes
a390: 74 5c 66 75 7a 7a 64 61 74 61 32 2e 64 62 20 5c  t\fuzzdata2.db \
a3a0: 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66  .  $(TOP)\test\f a3b0: 75 7a 7a 64 61 74 61 33 2e 64 62 20 5c 0a 20 20 uzzdata3.db \. a3c0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a$(TOP)\test\fuzz
a3d0: 64 61 74 61 34 2e 64 62 20 5c 0a 20 20 24 28 54  data4.db \.  $(T a3e0: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 OP)\test\fuzzdat a3f0: 61 35 2e 64 62 0a 23 20 3c 3c 2f 6d 61 72 6b 3e a5.db.# <</mark> a400: 3e 0a 0a 23 20 41 64 64 69 74 69 6f 6e 61 6c 20 >..# Additional a410: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 compiler options a420: 20 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 2e 20 for the shell. a430: 20 54 68 65 73 65 20 61 72 65 20 6f 6e 6c 79 20 These are only a440: 65 66 66 65 63 74 69 76 65 0a 23 20 77 68 65 6e effective.# when a450: 20 74 68 65 20 73 68 65 6c 6c 20 69 73 20 6e 6f the shell is no a460: 74 20 62 65 69 6e 67 20 64 79 6e 61 6d 69 63 61 t being dynamica a470: 6c 6c 79 20 6c 69 6e 6b 65 64 2e 0a 23 0a 21 49 lly linked..#.!I a480: 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c F$(DYNAMIC_SHEL
a490: 4c 29 3d 3d 30 20 26 26 20 24 28 46 4f 52 5f 57  L)==0 && $(FOR_W a4a0: 49 4e 31 30 29 3d 3d 30 0a 53 48 45 4c 4c 5f 43 IN10)==0.SHELL_C a4b0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 OMPILE_OPTS =$(
a4c0: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50  SHELL_COMPILE_OP
a4d0: 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  TS) -DSQLITE_ENA
a4e0: 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49  BLE_JSON1 -DSQLI
a4f0: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 34 20 2d  TE_ENABLE_FTS4 -
a500: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 45  DSQLITE_ENABLE_E
a510: 58 50 4c 41 49 4e 5f 43 4f 4d 4d 45 4e 54 53 20  XPLAIN_COMMENTS
a520: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
a530: 53 54 4d 54 56 54 41 42 0a 53 48 45 4c 4c 5f 43  STMTVTAB.SHELL_C
a540: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28  OMPILE_OPTS = $( a550: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 SHELL_COMPILE_OP a560: 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 TS) -DSQLITE_ENA a570: 42 4c 45 5f 44 42 50 41 47 45 5f 56 54 41 42 20 BLE_DBPAGE_VTAB a580: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ a590: 44 42 53 54 41 54 5f 56 54 41 42 0a 53 48 45 4c DBSTAT_VTAB.SHEL a5a0: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d L_COMPILE_OPTS = a5b0: 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45$(SHELL_COMPILE
a5c0: 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f  _OPTS) -DSQLITE_
a5d0: 45 4e 41 42 4c 45 5f 55 4e 4b 4e 4f 57 4e 5f 53  ENABLE_UNKNOWN_S
a5e0: 51 4c 5f 46 55 4e 43 54 49 4f 4e 0a 53 48 45 4c  QL_FUNCTION.SHEL
a5f0: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d  L_COMPILE_OPTS =
a600: 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45   $(SHELL_COMPILE a610: 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f _OPTS) -DSQLITE_ a620: 45 4e 41 42 4c 45 5f 4f 46 46 53 45 54 5f 53 51 ENABLE_OFFSET_SQ a630: 4c 5f 46 55 4e 43 20 2d 44 53 51 4c 49 54 45 5f L_FUNC -DSQLITE_ a640: 49 4e 54 52 4f 53 50 45 43 54 49 4f 4e 5f 50 52 INTROSPECTION_PR a650: 41 47 4d 41 53 0a 53 48 45 4c 4c 5f 43 4f 4d 50 AGMAS.SHELL_COMP a660: 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 ILE_OPTS =$(SHE
a670: 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  LL_COMPILE_OPTS)
a680: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
a690: 5f 52 54 52 45 45 0a 21 45 4e 44 49 46 0a 0a 23  _RTREE.!ENDIF..#
a6a0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78 74 72   <<mark>>.# Extr
a6b0: 61 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f  a compiler optio
a6c0: 6e 73 20 66 6f 72 20 76 61 72 69 6f 75 73 20 74  ns for various t
a6d0: 65 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d 50 54  est tools..#.MPT
a6e0: 45 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50  ESTER_COMPILE_OP
a6f0: 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 45 4e  TS = -DSQLITE_EN
a700: 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c  ABLE_JSON1 -DSQL
a710: 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a  ITE_ENABLE_FTS5.
a720: 46 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d 50  FUZZERSHELL_COMP
a730: 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c  ILE_OPTS = -DSQL
a740: 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31  ITE_ENABLE_JSON1
a750: 0a 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49  .FUZZCHECK_COMPI
a760: 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49  LE_OPTS = -DSQLI
a770: 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20  TE_ENABLE_JSON1
a780: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
a790: 4d 45 4d 53 59 53 35 20 2d 44 53 51 4c 49 54 45  MEMSYS5 -DSQLITE
a7a0: 5f 4f 53 53 5f 46 55 5a 5a 20 2d 44 53 51 4c 49  _OSS_FUZZ -DSQLI
a7b0: 54 45 5f 4d 41 58 5f 4d 45 4d 4f 52 59 3d 35 30  TE_MAX_MEMORY=50
a7c0: 30 30 30 30 30 30 20 2d 44 53 51 4c 49 54 45 5f  000000 -DSQLITE_
a7d0: 50 52 49 4e 54 46 5f 50 52 45 43 49 53 49 4f 4e  PRINTF_PRECISION
a7e0: 5f 4c 49 4d 49 54 3d 31 30 30 30 0a 46 55 5a 5a  _LIMIT=1000.FUZZ
a7f0: 43 48 45 43 4b 5f 53 52 43 20 3d 20 24 28 54 4f  CHECK_SRC = $(TO a800: 50 29 5c 74 65 73 74 5c 66 75 7a 7a 63 68 65 63 P)\test\fuzzchec a810: 6b 2e 63 20 24 28 54 4f 50 29 5c 74 65 73 74 5c k.c$(TOP)\test\
a820: 6f 73 73 66 75 7a 7a 2e 63 0a 4f 53 53 53 48 45  ossfuzz.c.OSSSHE
a830: 4c 4c 5f 53 52 43 20 3d 20 24 28 54 4f 50 29 5c  LL_SRC = $(TOP)\ a840: 74 65 73 74 5c 6f 73 73 73 68 65 6c 6c 2e 63 20 test\ossshell.c a850: 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f 73 73 66$(TOP)\test\ossf
a860: 75 7a 7a 2e 63 0a 44 42 46 55 5a 5a 5f 43 4f 4d  uzz.c.DBFUZZ_COM
a870: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51  PILE_OPTS = -DSQ
a880: 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
a890: 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
a8a0: 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 0a 4b  LOAD_EXTENSION.K
a8b0: 56 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d  V_COMPILE_OPTS =
a8c0: 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44   -DSQLITE_THREAD
a8d0: 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f  SAFE=0 -DSQLITE_
a8e0: 44 49 52 45 43 54 5f 4f 56 45 52 46 4c 4f 57 5f  DIRECT_OVERFLOW_
a8f0: 52 45 41 44 0a 53 54 5f 43 4f 4d 50 49 4c 45 5f  READ.ST_COMPILE_
a900: 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f  OPTS = -DSQLITE_
a910: 54 48 52 45 41 44 53 41 46 45 3d 30 0a 0a 23 20  THREADSAFE=0..#
a920: 53 74 61 6e 64 61 72 64 20 6f 70 74 69 6f 6e 73  Standard options
a930: 20 74 6f 20 74 65 73 74 66 69 78 74 75 72 65 2e   to testfixture.
a940: 0a 23 0a 54 45 53 54 4f 50 54 53 20 3d 20 2d 2d  .#.TESTOPTS = --
a950: 76 65 72 62 6f 73 65 3d 66 69 6c 65 20 2d 2d 6f  verbose=file --o
a960: 75 74 70 75 74 3d 74 65 73 74 2d 6f 75 74 2e 74  utput=test-out.t
a970: 78 74 0a 0a 23 20 45 78 74 72 61 20 74 61 72 67  xt..# Extra targ
a980: 65 74 73 20 66 6f 72 20 74 68 65 20 22 61 6c 6c  ets for the "all
a990: 22 20 74 61 72 67 65 74 20 74 68 61 74 20 72 65  " target that re
a9a0: 71 75 69 72 65 20 54 63 6c 2e 0a 23 0a 21 49 46  quire Tcl..#.!IF
a9b0: 20 24 28 4e 4f 5f 54 43 4c 29 3d 3d 30 0a 41 4c   $(NO_TCL)==0.AL a9c0: 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 20 3d 20 L_TCL_TARGETS = a9d0: 6c 69 62 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 libtclsqlite3.li a9e0: 62 0a 21 45 4c 53 45 0a 41 4c 4c 5f 54 43 4c 5f b.!ELSE.ALL_TCL_ a9f0: 54 41 52 47 45 54 53 20 3d 0a 21 45 4e 44 49 46 TARGETS =.!ENDIF aa00: 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 .# <</mark>>..# aa10: 54 68 69 73 20 69 73 20 74 68 65 20 64 65 66 61 This is the defa aa20: 75 6c 74 20 4d 61 6b 65 66 69 6c 65 20 74 61 72 ult Makefile tar aa30: 67 65 74 2e 20 20 54 68 65 20 6f 62 6a 65 63 74 get. The object aa40: 73 20 6c 69 73 74 65 64 20 68 65 72 65 0a 23 20 s listed here.# aa50: 61 72 65 20 77 68 61 74 20 67 65 74 20 62 75 69 are what get bui aa60: 6c 64 20 77 68 65 6e 20 79 6f 75 20 74 79 70 65 ld when you type aa70: 20 6a 75 73 74 20 22 6d 61 6b 65 22 20 77 69 74 just "make" wit aa80: 68 20 6e 6f 20 61 72 67 75 6d 65 6e 74 73 2e 0a h no arguments.. aa90: 23 0a 63 6f 72 65 3a 09 64 6c 6c 20 6c 69 62 73 #.core:.dll libs aaa0: 71 6c 69 74 65 33 2e 6c 69 62 20 73 68 65 6c 6c qlite3.lib shell aab0: 0a 0a 23 20 54 61 72 67 65 74 73 20 74 68 61 74 ..# Targets that aac0: 20 72 65 71 75 69 72 65 20 74 68 65 20 54 63 6c require the Tcl aad0: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 74 63 6c 3a library..#.tcl: aae0: 09 24 28 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 .$(ALL_TCL_TARGE
aaf0: 54 53 29 0a 0a 23 20 54 68 69 73 20 4d 61 6b 65  TS)..# This Make
ab00: 66 69 6c 65 20 74 61 72 67 65 74 20 62 75 69 6c  file target buil
ab10: 64 73 20 61 6c 6c 20 6f 66 20 74 68 65 20 73 74  ds all of the st
ab20: 61 6e 64 61 72 64 20 62 69 6e 61 72 69 65 73 2e  andard binaries.
ab30: 0a 23 0a 61 6c 6c 3a 09 63 6f 72 65 20 74 63 6c  .#.all:.core tcl
ab40: 0a 0a 23 20 44 79 6e 61 6d 69 63 20 6c 69 6e 6b  ..# Dynamic link
ab50: 20 6c 69 62 72 61 72 79 20 73 65 63 74 69 6f 6e   library section
ab60: 2e 0a 23 0a 64 6c 6c 3a 09 24 28 53 51 4c 49 54  ..#.dll:.$(SQLIT ab70: 45 33 44 4c 4c 29 0a 0a 23 20 53 68 65 6c 6c 20 E3DLL)..# Shell ab80: 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 73 68 executable..#.sh ab90: 65 6c 6c 3a 09 24 28 53 51 4c 49 54 45 33 45 58 ell:.$(SQLITE3EX
aba0: 45 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 6c  E)..# <<mark>>.l
abb0: 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 24  ibsqlite3.lib:.$abc0: 28 4c 49 42 4f 42 4a 29 0a 09 24 28 4c 54 4c 49 (LIBOBJ)..$(LTLI
abd0: 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20  B) $(LTLIBOPTS) abe0: 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a /OUT:$@ $(LIBOBJ abf0: 29 20 24 28 54 4c 49 42 53 29 0a 0a 6c 69 62 74 )$(TLIBS)..libt
ac00: 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 74  clsqlite3.lib:.t
ac10: 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62 73  clsqlite.lo libs
ac20: 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c 54  qlite3.lib..$(LT ac30: 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 LIB)$(LTLIBOPTS
ac40: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  ) $(LTLIBPATHS) ac50: 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 74 /OUT:$@ tclsqlit
ac60: 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e  e.lo libsqlite3.
ac70: 6c 69 62 20 24 28 4c 49 42 54 43 4c 53 54 55 42  lib $(LIBTCLSTUB ac80: 29 20 24 28 54 4c 49 42 53 29 0a 23 20 3c 3c 2f )$(TLIBS).# <</
ac90: 6d 61 72 6b 3e 3e 0a 0a 24 28 53 51 4c 49 54 45  mark>>..$(SQLITE aca0: 33 44 4c 4c 29 3a 09 24 28 4c 49 42 4f 42 4a 29 3DLL):.$(LIBOBJ)
acb0: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
acc0: 28 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 50 29 0a  (CORE_LINK_DEP).
acd0: 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53  .$(LD)$(LDFLAGS
ace0: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20  ) $(LTLINKOPTS) acf0: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44$(LTLIBPATHS) /D
ad00: 4c 4c 20 24 28 43 4f 52 45 5f 4c 49 4e 4b 5f 4f  LL $(CORE_LINK_O ad10: 50 54 53 29 20 2f 4f 55 54 3a 24 40 20 24 28 4c PTS) /OUT:$@ $(L ad20: 49 42 4f 42 4a 29 20 24 28 4c 49 42 52 45 53 4f IBOBJ)$(LIBRESO
ad30: 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24  BJS) $(LTLIBS)$
ad40: 28 54 4c 49 42 53 29 0a 0a 23 20 3c 3c 62 6c 6f  (TLIBS)..# <<blo
ad50: 63 6b 32 3e 3e 0a 73 71 6c 69 74 65 33 2e 64 65  ck2>>.sqlite3.de
ad60: 66 3a 09 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69  f:.libsqlite3.li
ad70: 62 0a 09 65 63 68 6f 20 45 58 50 4f 52 54 53 20  b..echo EXPORTS
ad80: 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 09 64  > sqlite3.def..d
ad90: 75 6d 70 62 69 6e 20 2f 61 6c 6c 20 6c 69 62 73  umpbin /all libs
ada0: 71 6c 69 74 65 33 2e 6c 69 62 20 5c 0a 09 09 7c  qlite3.lib \...|
adb0: 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28   $(TCLSH_CMD)$(
adc0: 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63  TOP)\tool\replac
add0: 65 2e 74 63 6c 20 69 6e 63 6c 75 64 65 20 22 5e  e.tcl include "^
ade0: 5c 73 2b 31 20 5f 3f 28 73 71 6c 69 74 65 33 28  \s+1 _?(sqlite3(
adf0: 3f 3a 73 65 73 73 69 6f 6e 7c 63 68 61 6e 67 65  ?:session|change
ae00: 73 65 74 7c 63 68 61 6e 67 65 67 72 6f 75 70 7c  set|changegroup|
ae10: 72 65 62 61 73 65 72 29 3f 5f 5b 5e 40 5d 2a 29  rebaser)?_[^@]*)
ae20: 28 3f 3a 40 5c 64 2b 29 3f 24 24 22 20 5c 31 20  (?:@\d+)?" \1
ae30: 5c 0a 09 09 7c 20 73 6f 72 74 20 3e 3e 20 73 71  \...| sort >> sq
ae40: 6c 69 74 65 33 2e 64 65 66 0a 23 20 3c 3c 2f 62  lite3.def.# <</b
ae50: 6c 6f 63 6b 32 3e 3e 0a 0a 24 28 53 51 4c 49 54  lock2>>..$(SQLIT ae60: 45 33 45 58 45 29 3a 09 73 68 65 6c 6c 2e 63 20 E3EXE):.shell.c ae70: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50$(SHELL_CORE_DEP
ae80: 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20  ) $(LIBRESOBJS) ae90: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43$(SHELL_CORE_SRC
aea0: 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  ) $(SQLITE3H)..$
aeb0: 28 4c 54 4c 49 4e 4b 29 20 24 28 53 48 45 4c 4c  (LTLINK) $(SHELL aec0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
aed0: 28 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 29  (READLINE_FLAGS)
aee0: 20 73 68 65 6c 6c 2e 63 20 24 28 53 48 45 4c 4c   shell.c $(SHELL aef0: 5f 43 4f 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f _CORE_SRC) \.../ af00: 6c 69 6e 6b 20 24 28 53 51 4c 49 54 45 33 45 58 link$(SQLITE3EX
af10: 45 50 44 42 29 20 24 28 4c 44 46 4c 41 47 53 29  EPDB) $(LDFLAGS) af20: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24$(LTLINKOPTS) $af30: 28 53 48 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 (SHELL_LINK_OPTS af40: 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 )$(LTLIBPATHS)
af50: 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28  $(LIBRESOBJS)$(
af60: 4c 49 42 52 45 41 44 4c 49 4e 45 29 20 24 28 4c  LIBREADLINE) $(L af70: 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a TLIBS)$(TLIBS).
af80: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 73 71 6c 64  .# <<mark>>.sqld
af90: 69 66 66 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  iff.exe:.$(TOP)\ afa0: 74 6f 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20 24 tool\sqldiff.c$
afb0: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL afc0: 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
afd0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54  ) $(NO_WARN)$(T
afe0: 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66 66  OP)\tool\sqldiff
aff0: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f  .c $(SQLITE3C) / b000: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 link$(LDFLAGS)
b010: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64  $(LTLINKOPTS)..d b020: 62 68 61 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 bhash.exe:.$(TOP
b030: 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20  )\tool\dbhash.c
b040: 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51  $(SQLITE3C)$(SQ
b050: 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e  LITE3H)..$(LTLIN b060: 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 K)$(NO_WARN) $( b070: 54 4f 50 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 TOP)\tool\dbhash b080: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f .c$(SQLITE3C) /
b090: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) b0a0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73$(LTLINKOPTS)..s
b0b0: 63 72 75 62 2e 65 78 65 3a 09 24 28 54 4f 50 29  crub.exe:.$(TOP) b0c0: 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72 75 62 2e \ext\misc\scrub. b0d0: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 c$(SQLITE3C) $( b0e0: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
b0f0: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) b100: 2d 44 53 43 52 55 42 5f 53 54 41 4e 44 41 4c 4f -DSCRUB_STANDALO b110: 4e 45 3d 31 20 24 28 54 4f 50 29 5c 65 78 74 5c NE=1$(TOP)\ext\
b120: 6d 69 73 63 5c 73 63 72 75 62 2e 63 20 24 28 53  misc\scrub.c $(S b130: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
b140: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI b150: 4e 4b 4f 50 54 53 29 0a 0a 73 72 63 63 6b 31 2e NKOPTS)..srcck1. b160: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
b170: 5c 73 72 63 63 6b 31 2e 63 0a 09 24 28 42 43 43  \srcck1.c..$(BCC b180: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 )$(NO_WARN) -Fe
b190: 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  $@$(TOP)\tool\s
b1a0: 72 63 63 6b 31 2e 63 0a 0a 73 6f 75 72 63 65 74  rcck1.c..sourcet
b1b0: 65 73 74 3a 09 73 72 63 63 6b 31 2e 65 78 65 20  est:.srcck1.exe
b1c0: 73 71 6c 69 74 65 33 2e 63 0a 09 73 72 63 63 6b  sqlite3.c..srcck
b1d0: 31 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 63 0a  1.exe sqlite3.c.
b1e0: 0a 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65  .fuzzershell.exe
b1f0: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75  :.$(TOP)\tool\fu b200: 7a 7a 65 72 73 68 65 6c 6c 2e 63 20 24 28 53 51 zzershell.c$(SQ
b210: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE b220: 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 3H)..$(LTLINK) $b230: 28 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55 5a 5a (NO_WARN)$(FUZZ
b240: 45 52 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f  ERSHELL_COMPILE_
b250: 4f 50 54 53 29 20 24 28 54 4f 50 29 5c 74 6f 6f  OPTS) $(TOP)\too b260: 6c 5c 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 63 20 l\fuzzershell.c b270: 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e$(SQLITE3C) /lin
b280: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
b290: 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 66 75  TLINKOPTS)..dbfu
b2a0: 7a 7a 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  zz.exe:.$(TOP)\t b2b0: 65 73 74 5c 64 62 66 75 7a 7a 2e 63 20 24 28 53 est\dbfuzz.c$(S
b2c0: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT b2d0: 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
b2e0: 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 44 42 46  $(NO_WARN)$(DBF
b2f0: 55 5a 5a 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  UZZ_COMPILE_OPTS
b300: 29 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 64 62  ) $(TOP)\test\db b310: 66 75 7a 7a 2e 63 20 24 28 53 51 4c 49 54 45 33 fuzz.c$(SQLITE3
b320: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA b330: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
b340: 29 0a 0a 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65  )..fuzzcheck.exe
b350: 3a 09 24 28 46 55 5a 5a 43 48 45 43 4b 5f 53 52  :.$(FUZZCHECK_SR b360: 43 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 C)$(SQLITE3C) $b370: 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
b380: 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) b390: 20 24 28 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d$(FUZZCHECK_COM
b3a0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 46 55 5a  PILE_OPTS) $(FUZ b3b0: 5a 43 48 45 43 4b 5f 53 52 43 29 20 24 28 53 51 ZCHECK_SRC)$(SQ
b3c0: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( b3d0: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
b3e0: 4b 4f 50 54 53 29 0a 0a 6f 73 73 73 68 65 6c 6c  KOPTS)..ossshell
b3f0: 2e 65 78 65 3a 09 24 28 4f 53 53 53 48 45 4c 4c  .exe:.$(OSSSHELL b400: 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 33 43 _SRC)$(SQLITE3C
b410: 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  ) $(SQLITE3H)..$
b420: 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41  (LTLINK) $(NO_WA b430: 52 4e 29 20 24 28 46 55 5a 5a 43 48 45 43 4b 5f RN)$(FUZZCHECK_
b440: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( b450: 4f 53 53 53 48 45 4c 4c 5f 53 52 43 29 20 24 28 OSSSHELL_SRC)$(
b460: 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20  SQLITE3C) /link
b470: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS)$(LTL
b480: 49 4e 4b 4f 50 54 53 29 0a 0a 73 65 73 73 69 6f  INKOPTS)..sessio
b490: 6e 66 75 7a 7a 2e 65 78 65 3a 09 7a 6c 69 62 20  nfuzz.exe:.zlib
b4a0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 65 73 73  $(TOP)\test\sess b4b0: 69 6f 6e 66 75 7a 7a 2e 63 20 24 28 53 51 4c 49 ionfuzz.c$(SQLI
b4c0: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H b4d0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N b4e0: 4f 5f 57 41 52 4e 29 20 2d 49 24 28 5a 4c 49 42 O_WARN) -I$(ZLIB
b4f0: 49 4e 43 44 49 52 29 20 24 28 54 4f 50 29 5c 74  INCDIR) $(TOP)\t b500: 65 73 74 5c 73 65 73 73 69 6f 6e 66 75 7a 7a 2e est\sessionfuzz. b510: 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 c /link$(LDFLAG
b520: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) b530: 20 2f 4c 49 42 50 41 54 48 3a 24 28 5a 4c 49 42 /LIBPATH:$(ZLIB
b540: 4c 49 42 44 49 52 29 20 24 28 5a 4c 49 42 4c 49  LIBDIR) $(ZLIBLI b550: 42 29 0a 0a 6d 70 74 65 73 74 65 72 2e 65 78 65 B)..mptester.exe b560: 3a 09 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c :.$(TOP)\mptest\
b570: 6d 70 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54  mptest.c $(SQLIT b580: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
b590: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
b5a0: 5f 57 41 52 4e 29 20 24 28 4d 50 54 45 53 54 45  _WARN) $(MPTESTE b5b0: 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 R_COMPILE_OPTS) b5c0: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70$(TOP)\mptest\mp
b5d0: 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33  test.c $(SQLITE3 b5e0: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
b5f0: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS b600: 29 0a 0a 4d 50 54 45 53 54 31 20 3d 20 6d 70 74 )..MPTEST1 = mpt b610: 65 73 74 65 72 20 6d 70 74 65 73 74 2e 64 62 20 ester mptest.db b620: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 63 72$(TOP)\mptest\cr
b630: 61 73 68 30 31 2e 74 65 73 74 20 2d 2d 72 65 70  ash01.test --rep
b640: 65 61 74 20 32 30 0a 4d 50 54 45 53 54 32 20 3d  eat 20.MPTEST2 =
b650: 20 6d 70 74 65 73 74 65 72 20 6d 70 74 65 73 74   mptester mptest
b660: 2e 64 62 20 24 28 54 4f 50 29 5c 6d 70 74 65 73  .db $(TOP)\mptes b670: 74 5c 6d 75 6c 74 69 77 72 69 74 65 30 31 2e 74 t\multiwrite01.t b680: 65 73 74 20 2d 2d 72 65 70 65 61 74 20 32 30 0a est --repeat 20. b690: 0a 6d 70 74 65 73 74 3a 09 6d 70 74 65 73 74 65 .mptest:.mpteste b6a0: 72 2e 65 78 65 0a 09 64 65 6c 20 2f 51 20 6d 70 r.exe..del /Q mp b6b0: 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 24 test.db 2>NUL..$
b6c0: 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72  (MPTEST1) --jour
b6d0: 6e 61 6c 6d 6f 64 65 20 44 45 4c 45 54 45 0a 09  nalmode DELETE..
b6e0: 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75  $(MPTEST2) --jou b6f0: 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 rnalmode WAL..$(
b700: 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e  MPTEST1) --journ
b710: 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50  almode WAL..$(MP b720: 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c TEST2) --journal b730: 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09 24 28 mode PERSIST..$(
b740: 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e  MPTEST1) --journ
b750: 61 6c 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09  almode PERSIST..
b760: 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75  $(MPTEST2) --jou b770: 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41 54 rnalmode TRUNCAT b780: 45 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d E..$(MPTEST1) --
b790: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e  journalmode TRUN
b7a0: 43 41 54 45 0a 09 24 28 4d 50 54 45 53 54 32 29  CATE..$(MPTEST2) b7b0: 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 --journalmode D b7c0: 45 4c 45 54 45 0a 0a 23 20 54 68 69 73 20 74 61 ELETE..# This ta b7d0: 72 67 65 74 20 63 72 65 61 74 65 73 20 61 20 64 rget creates a d b7e0: 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 64 20 22 irectory named " b7f0: 74 73 72 63 22 20 61 6e 64 20 66 69 6c 6c 73 20 tsrc" and fills b800: 69 74 20 77 69 74 68 0a 23 20 63 6f 70 69 65 73 it with.# copies b810: 20 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 43 of all of the C b820: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 source code and b830: 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 6e 65 header files ne b840: 65 64 65 64 20 74 6f 0a 23 20 62 75 69 6c 64 20 eded to.# build b850: 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 73 79 on the target sy b860: 73 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20 74 stem. Some of t b870: 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65 he C source code b880: 20 61 6e 64 20 68 65 61 64 65 72 0a 23 20 66 69 and header.# fi b890: 6c 65 73 20 61 72 65 20 61 75 74 6f 6d 61 74 69 les are automati b8a0: 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e cally generated. b8b0: 20 20 54 68 69 73 20 74 61 72 67 65 74 20 74 61 This target ta b8c0: 6b 65 73 20 63 61 72 65 20 6f 66 0a 23 20 61 6c kes care of.# al b8d0: 6c 20 74 68 61 74 20 61 75 74 6f 6d 61 74 69 63 l that automatic b8e0: 20 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a 2e generation..#.. b8f0: 74 61 72 67 65 74 5f 73 6f 75 72 63 65 3a 09 24 target_source:.$
b900: 28 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f 6f  (SRC) $(TOP)\too b910: 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e l\vdbe-compress. b920: 74 63 6c 20 66 74 73 35 2e 63 20 24 28 53 51 4c tcl fts5.c$(SQL
b930: 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 2d 72  ITE_TCL_DEP)..-r
b940: 6d 64 69 72 20 2f 51 2f 53 20 74 73 72 63 20 32  mdir /Q/S tsrc 2
b950: 3e 4e 55 4c 0a 09 2d 6d 6b 64 69 72 20 74 73 72  >NUL..-mkdir tsr
b960: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28  c..for %i in ($( b970: 53 52 43 30 30 29 29 20 64 6f 20 63 6f 70 79 20 SRC00)) do copy b980: 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 /Y %i tsrc..for b990: 25 69 20 69 6e 20 28 24 28 53 52 43 30 31 29 29 %i in ($(SRC01))
b9a0: 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74   do copy /Y %i t
b9b0: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
b9c0: 24 28 53 52 43 30 33 29 29 20 64 6f 20 63 6f 70  $(SRC03)) do cop b9d0: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f y /Y %i tsrc..fo b9e0: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 34 r %i in ($(SRC04
b9f0: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
ba00: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
ba10: 20 28 24 28 53 52 43 30 35 29 29 20 64 6f 20 63   ($(SRC05)) do c ba20: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. ba30: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
ba40: 30 36 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  06)) do copy /Y
ba50: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
ba60: 69 6e 20 28 24 28 53 52 43 30 37 29 29 20 64 6f  in ($(SRC07)) do ba70: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc ba80: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
ba90: 52 43 30 38 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC08)) do copy /
baa0: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
bab0: 69 20 69 6e 20 28 24 28 53 52 43 30 39 29 29 20  i in ($(SRC09)) bac0: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts bad0: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 rc..for %i in ($
bae0: 28 53 52 43 31 30 29 29 20 64 6f 20 63 6f 70 79  (SRC10)) do copy
baf0: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72   /Y %i tsrc..for
bb00: 20 25 69 20 69 6e 20 28 24 28 53 52 43 31 31 29   %i in ($(SRC11) bb10: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 ) do copy /Y %i bb20: 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 tsrc..for %i in bb30: 28 24 28 53 52 43 31 32 29 29 20 64 6f 20 63 6f ($(SRC12)) do co
bb40: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 63  py /Y %i tsrc..c
bb50: 6f 70 79 20 2f 59 20 66 74 73 35 2e 63 20 74 73  opy /Y fts5.c ts
bb60: 72 63 0a 09 63 6f 70 79 20 2f 59 20 66 74 73 35  rc..copy /Y fts5
bb70: 2e 68 20 74 73 72 63 0a 09 64 65 6c 20 2f 51 20  .h tsrc..del /Q
bb80: 74 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e  tsrc\sqlite.h.in
bb90: 20 74 73 72 63 5c 70 61 72 73 65 2e 79 20 32 3e   tsrc\parse.y 2>
bba0: 4e 55 4c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44  NUL..$(TCLSH_CMD bbb0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 )$(TOP)\tool\vd
bbc0: 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20  be-compress.tcl
bbd0: 24 28 4f 50 54 53 29 20 3c 20 74 73 72 63 5c 76  $(OPTS) < tsrc\v bbe0: 64 62 65 2e 63 20 3e 20 76 64 62 65 2e 6e 65 77 dbe.c > vdbe.new bbf0: 0a 09 6d 6f 76 65 20 76 64 62 65 2e 6e 65 77 20 ..move vdbe.new bc00: 74 73 72 63 5c 76 64 62 65 2e 63 0a 09 65 63 68 tsrc\vdbe.c..ech bc10: 6f 20 3e 20 2e 74 61 72 67 65 74 5f 73 6f 75 72 o > .target_sour bc20: 63 65 0a 0a 73 71 6c 69 74 65 33 2e 63 3a 09 2e ce..sqlite3.c:.. bc30: 74 61 72 67 65 74 5f 73 6f 75 72 63 65 20 73 71 target_source sq bc40: 6c 69 74 65 33 65 78 74 2e 68 20 24 28 4d 4b 53 lite3ext.h$(MKS
bc50: 51 4c 49 54 45 33 43 5f 54 4f 4f 4c 29 0a 09 24  QLITE3C_TOOL)..$bc60: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 4d 4b (TCLSH_CMD)$(MK
bc70: 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c 29 20 24  SQLITE3C_TOOL) $bc80: 28 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47 53 (MKSQLITE3C_ARGS bc90: 29 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 )..copy$(TOP)\e
bca0: 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74  xt\session\sqlit
bcb0: 65 33 73 65 73 73 69 6f 6e 2e 68 20 2e 0a 0a 73  e3session.h ...s
bcc0: 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 3a 09 73 71  qlite3-all.c:.sq
bcd0: 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 5c 74  lite3.c $(TOP)\t bce0: 6f 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69 74 65 ool\split-sqlite bcf0: 33 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 3c.tcl..$(TCLSH_
bd00: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool bd10: 5c 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 2e \split-sqlite3c. bd20: 74 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a tcl.# <</mark>>. bd30: 0a 23 20 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 .# Rule to build bd40: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f the amalgamatio bd50: 6e 0a 23 0a 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 n.#.sqlite3.lo:. bd60: 24 28 53 51 4c 49 54 45 33 43 29 0a 09 24 28 4c$(SQLITE3C)..$(L bd70: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
bd80: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
bd90: 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 0a 23  c $(SQLITE3C)..# bda0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 <<mark>>.# Rule bdb0: 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 4c s to build the L bdc0: 45 4d 4f 4e 20 63 6f 6d 70 69 6c 65 72 20 67 65 EMON compiler ge bdd0: 6e 65 72 61 74 6f 72 0a 23 0a 6c 65 6d 70 61 72 nerator.#.lempar bde0: 2e 63 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c .c:.$(TOP)\tool\
bdf0: 6c 65 6d 70 61 72 2e 63 0a 09 63 6f 70 79 20 24  lempar.c..copy $be00: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 (TOP)\tool\lempa be10: 72 2e 63 20 2e 0a 0a 6c 65 6d 6f 6e 2e 65 78 65 r.c ...lemon.exe be20: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 :.$(TOP)\tool\le
be30: 6d 6f 6e 2e 63 20 6c 65 6d 70 61 72 2e 63 0a 09  mon.c lempar.c..
be40: 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e  $(BCC)$(NO_WARN
be50: 29 20 2d 44 61 63 63 65 73 73 3d 5f 61 63 63 65  ) -Daccess=_acce
be60: 73 73 20 5c 0a 09 09 2d 46 65 24 40 20 24 28 54  ss \...-Fe$@$(T
be70: 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63  OP)\tool\lemon.c
be80: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53   /link $(LDFLAGS be90: 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 )$(NLTLINKOPTS)
bea0: 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a   $(NLTLIBPATHS). beb0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 .# <<mark>>.# Ru bec0: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 les to build the bed0: 20 73 6f 75 72 63 65 2d 69 64 20 67 65 6e 65 72 source-id gener bee0: 61 74 6f 72 20 74 6f 6f 6c 0a 23 0a 6d 6b 73 6f ator tool.#.mkso bef0: 75 72 63 65 69 64 2e 65 78 65 3a 09 24 28 54 4f urceid.exe:.$(TO
bf00: 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 6f 75 72 63 65  P)\tool\mksource
bf10: 69 64 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e  id.c..$(BCC)$(N
bf20: 4f 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28  O_WARN) -Fe$@$(
bf30: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 6f 75 72  TOP)\tool\mksour
bf40: 63 65 69 64 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c  ceid.c /link $(L bf50: 44 46 4c 41 47 53 29 20 24 28 4e 4c 54 4c 49 4e DFLAGS)$(NLTLIN
bf60: 4b 4f 50 54 53 29 20 24 28 4e 4c 54 4c 49 42 50  KOPTS) $(NLTLIBP bf70: 41 54 48 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 ATHS)..# Rules t bf80: 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 69 64 75 o build individu bf90: 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 20 66 72 al *.lo files fr bfa0: 6f 6d 20 67 65 6e 65 72 61 74 65 64 20 2a 2e 63 om generated *.c bfb0: 20 66 69 6c 65 73 2e 20 54 68 69 73 0a 23 20 61 files. This.# a bfc0: 70 70 6c 69 65 73 20 74 6f 3a 0a 23 0a 23 20 20 pplies to:.#.# bfd0: 20 20 20 70 61 72 73 65 2e 6c 6f 0a 23 20 20 20 parse.lo.# bfe0: 20 20 6f 70 63 6f 64 65 73 2e 6c 6f 0a 23 0a 70 opcodes.lo.#.p bff0: 61 72 73 65 2e 6c 6f 3a 09 70 61 72 73 65 2e 63 arse.lo:.parse.c c000: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c010: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c020: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 70 61  PILE_OPTS) -c pa
c030: 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65 73 2e 6c  rse.c..opcodes.l
c040: 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a 09 24 28  o:.opcodes.c..$( c050: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
c060: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
c070: 2d 63 20 6f 70 63 6f 64 65 73 2e 63 0a 23 20 3c  -c opcodes.c.# <
c080: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52 75 6c 65  </mark>>..# Rule
c090: 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 57 69   to build the Wi
c0a0: 6e 33 32 20 72 65 73 6f 75 72 63 65 73 20 6f 62  n32 resources ob
c0b0: 6a 65 63 74 20 66 69 6c 65 2e 0a 23 0a 21 49 46  ject file..#.!IF
c0c0: 20 24 28 55 53 45 5f 52 43 29 21 3d 30 0a 23 20   $(USE_RC)!=0.# c0d0: 3c 3c 62 6c 6f 63 6b 31 3e 3e 0a 24 28 4c 49 42 <<block1>>.$(LIB
c0e0: 52 45 53 4f 42 4a 53 29 3a 09 24 28 54 4f 50 29  RESOBJS):.$(TOP) c0f0: 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 20 \src\sqlite3.rc c100: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 65 63 68$(SQLITE3H)..ech
c110: 6f 20 23 69 66 6e 64 65 66 20 53 51 4c 49 54 45  o #ifndef SQLITE
c120: 5f 52 45 53 4f 55 52 43 45 5f 56 45 52 53 49 4f  _RESOURCE_VERSIO
c130: 4e 20 3e 20 73 71 6c 69 74 65 33 72 63 2e 68 0a  N > sqlite3rc.h.
c140: 09 66 6f 72 20 2f 46 20 25 25 56 20 69 6e 20 28  .for /F %%V in (
c150: 27 74 79 70 65 20 22 24 28 54 4f 50 29 5c 56 45  'type "$(TOP)\VE c160: 52 53 49 4f 4e 22 27 29 20 64 6f 20 28 20 5c 0a RSION"') do ( \. c170: 09 09 65 63 68 6f 20 23 64 65 66 69 6e 65 20 53 ..echo #define S c180: 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 45 5f 56 QLITE_RESOURCE_V c190: 45 52 53 49 4f 4e 20 25 25 56 20 5c 0a 09 09 09 ERSION %%V \.... c1a0: 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 |$(TCLSH_CMD) $c1b0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 (TOP)\tool\repla c1c0: 63 65 2e 74 63 6c 20 65 78 61 63 74 20 2e 20 5e ce.tcl exact . ^ c1d0: 2c 20 3e 3e 20 73 71 6c 69 74 65 33 72 63 2e 68 , >> sqlite3rc.h c1e0: 20 5c 0a 09 29 0a 09 65 63 68 6f 20 23 65 6e 64 \..)..echo #end c1f0: 69 66 20 3e 3e 20 73 71 6c 69 74 65 33 72 63 2e if >> sqlite3rc. c200: 68 0a 09 24 28 4c 54 52 43 4f 4d 50 49 4c 45 29 h..$(LTRCOMPILE)
c210: 20 2d 66 6f 20 24 28 4c 49 42 52 45 53 4f 42 4a   -fo $(LIBRESOBJ c220: 53 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 S)$(TOP)\src\sq
c230: 6c 69 74 65 33 2e 72 63 0a 23 20 3c 3c 2f 62 6c  lite3.rc.# <</bl
c240: 6f 63 6b 31 3e 3e 0a 21 45 4e 44 49 46 0a 0a 23  ock1>>.!ENDIF..#
c250: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 6c 65   <<mark>>.# Rule
c260: 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 76  s to build indiv
c270: 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73  idual *.lo files
c280: 20 66 72 6f 6d 20 66 69 6c 65 73 20 69 6e 20 74   from files in t
c290: 68 65 20 73 72 63 20 64 69 72 65 63 74 6f 72 79  he src directory
c2a0: 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a 09 24 28  ..#.alter.lo:.$( c2b0: 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 TOP)\src\alter.c c2c0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c2d0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c2e0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c2f0: 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 TOP)\src\alter.c c300: 0a 0a 61 6e 61 6c 79 7a 65 2e 6c 6f 3a 09 24 28 ..analyze.lo:.$(
c310: 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65  TOP)\src\analyze
c320: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
c330: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C c340: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c c350: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79$(TOP)\src\analy
c360: 7a 65 2e 63 0a 0a 61 74 74 61 63 68 2e 6c 6f 3a  ze.c..attach.lo:
c370: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61  .$(TOP)\src\atta c380: 63 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ch.c$(HDR)..$(L c390: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
c3a0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
c3b0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74  c $(TOP)\src\att c3c0: 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c 6f 3a 09 ach.c..auth.lo:. c3d0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e$(TOP)\src\auth.
c3e0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c3f0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c400: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c410: 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68 2e 63  (TOP)\src\auth.c
c420: 0a 0a 62 61 63 6b 75 70 2e 6c 6f 3a 09 24 28 54  ..backup.lo:.$(T c430: 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 OP)\src\backup.c c440: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c450: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c460: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c470: 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e TOP)\src\backup. c480: 63 0a 0a 62 69 74 76 65 63 2e 6c 6f 3a 09 24 28 c..bitvec.lo:.$(
c490: 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65 63 2e  TOP)\src\bitvec.
c4a0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c4b0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c4c0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c4d0: 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65 63  (TOP)\src\bitvec
c4e0: 2e 63 0a 0a 62 74 6d 75 74 65 78 2e 6c 6f 3a 09  .c..btmutex.lo:.
c4f0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74  $(TOP)\src\btmut c500: 65 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ex.c$(HDR)..$(L c510: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
c520: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
c530: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d  c $(TOP)\src\btm c540: 75 74 65 78 2e 63 0a 0a 62 74 72 65 65 2e 6c 6f utex.c..btree.lo c550: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 :.$(TOP)\src\btr
c560: 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f  ee.c $(HDR)$(TO
c570: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09  P)\src\pager.h..
c580: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
c590: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c5a0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ c5b0: 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c 64 2e 6c btree.c..build.l c5c0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 o:.$(TOP)\src\bu
c5d0: 69 6c 64 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ild.c $(HDR)..$(
c5e0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR c5f0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) c600: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 75 -c$(TOP)\src\bu
c610: 69 6c 64 2e 63 0a 0a 63 61 6c 6c 62 61 63 6b 2e  ild.c..callback.
c620: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63  lo:.$(TOP)\src\c c630: 61 6c 6c 62 61 63 6b 2e 63 20 24 28 48 44 52 29 allback.c$(HDR)
c640: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
c650: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c660: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr c670: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f c\callback.c..co c680: 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 mplete.lo:.$(TOP
c690: 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63  )\src\complete.c
c6a0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c6b0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c6c0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c6d0: 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74  TOP)\src\complet
c6e0: 65 2e 63 0a 0a 63 74 69 6d 65 2e 6c 6f 3a 09 24  e.c..ctime.lo:.$c6f0: 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e (TOP)\src\ctime. c700: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO c710: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c720: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $c730: 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 6d 65 2e (TOP)\src\ctime. c740: 63 0a 0a 64 61 74 65 2e 6c 6f 3a 09 24 28 54 4f c..date.lo:.$(TO
c750: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 24 28  P)\src\date.c $( c760: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c770: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c780: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c790: 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a 0a 64 62  )\src\date.c..db
c7a0: 70 61 67 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  page.lo:.$(TOP)\ c7b0: 73 72 63 5c 64 62 70 61 67 65 2e 63 20 24 28 48 src\dbpage.c$(H
c7c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c7d0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c7e0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c7f0: 5c 73 72 63 5c 64 62 70 61 67 65 2e 63 0a 0a 64 \src\dbpage.c..d c800: 62 73 74 61 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 bstat.lo:.$(TOP)
c810: 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 20 24 28  \src\dbstat.c $( c820: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c830: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c840: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c850: 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 0a 0a  )\src\dbstat.c..
c860: 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50  delete.lo:.$(TOP c870: 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 24 )\src\delete.c$
c880: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI c890: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
c8a0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO c8b0: 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 0a P)\src\delete.c. c8c0: 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 .expr.lo:.$(TOP)
c8d0: 5c 73 72 63 5c 65 78 70 72 2e 63 20 24 28 48 44  \src\expr.c $(HD c8e0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
c8f0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ c900: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
c910: 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66 61 75 6c  src\expr.c..faul
c920: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  t.lo:.$(TOP)\src c930: 5c 66 61 75 6c 74 2e 63 20 24 28 48 44 52 29 0a \fault.c$(HDR).
c940: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
c950: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
c960: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src c970: 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c \fault.c..fkey.l c980: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b o:.$(TOP)\src\fk
c990: 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ey.c $(HDR)..$(L
c9a0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c9b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c9c0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 c$(TOP)\src\fke
c9d0: 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a 09 24 28  y.c..func.lo:.$( c9e0: 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 TOP)\src\func.c c9f0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP ca00: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
ca10: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T ca20: 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 0a 0a OP)\src\func.c.. ca30: 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 global.lo:.$(TOP
ca40: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 24  )\src\global.c $ca50: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
ca60: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI ca70: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
ca80: 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 0a  P)\src\global.c.
ca90: 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29  .hash.lo:.$(TOP) caa0: 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28 48 44 \src\hash.c$(HD
cab0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cac0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cad0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cae0: 73 72 63 5c 68 61 73 68 2e 63 0a 0a 69 6e 73 65 src\hash.c..inse caf0: 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 rt.lo:.$(TOP)\sr
cb00: 63 5c 69 6e 73 65 72 74 2e 63 20 24 28 48 44 52  c\insert.c $(HDR cb10: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
cb20: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O cb30: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
cb40: 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a 6c 65 67  rc\insert.c..leg
cb50: 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  acy.lo:.$(TOP)\s cb60: 72 63 5c 6c 65 67 61 63 79 2e 63 20 24 28 48 44 rc\legacy.c$(HD
cb70: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cb80: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cb90: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cba0: 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c 6f src\legacy.c..lo cbb0: 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 adext.lo:.$(TOP)
cbc0: 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 24  \src\loadext.c $cbd0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
cbe0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI cbf0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
cc00: 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63  P)\src\loadext.c
cc10: 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50  ..main.lo:.$(TOP cc20: 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 24 28 48 )\src\main.c$(H
cc30: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE cc40: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
cc50: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) cc60: 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a 6d 61 6c \src\main.c..mal cc70: 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 loc.lo:.$(TOP)\s
cc80: 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 28 48 44  rc\malloc.c $(HD cc90: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
cca0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ ccb0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
ccc0: 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a 6d 65  src\malloc.c..me
ccd0: 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  m0.lo:.$(TOP)\sr cce0: 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52 29 0a c\mem0.c$(HDR).
ccf0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
cd00: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
cd10: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src cd20: 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f \mem0.c..mem1.lo cd30: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d :.$(TOP)\src\mem
cd40: 31 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  1.c $(HDR)..$(LT
cd50: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ cd60: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c cd70: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31$(TOP)\src\mem1
cd80: 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09 24 28 54  .c..mem2.lo:.$(T cd90: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 24 OP)\src\mem2.c$
cda0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI cdb0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
cdc0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO cdd0: 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 0a 0a 6d P)\src\mem2.c..m cde0: 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 em3.lo:.$(TOP)\s
cdf0: 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48 44 52 29  rc\mem3.c $(HDR) ce00: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $ce10: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP ce20: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
ce30: 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c  c\mem3.c..mem5.l
ce40: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  o:.$(TOP)\src\me ce50: 6d 35 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c m5.c$(HDR)..$(L ce60: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
ce70: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
ce80: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  c $(TOP)\src\mem ce90: 35 2e 63 0a 0a 6d 65 6d 64 62 2e 6c 6f 3a 09 24 5.c..memdb.lo:.$
cea0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 64 62 2e  (TOP)\src\memdb.
ceb0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
cec0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO ced0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
cee0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 64 62 2e  (TOP)\src\memdb.
cef0: 63 0a 0a 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f  c..memjournal.lo
cf00: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  :.$(TOP)\src\mem cf10: 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 48 44 52 29 journal.c$(HDR)
cf20: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
cf30: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
cf40: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr cf50: 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 0a 0a c\memjournal.c.. cf60: 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 mutex.lo:.$(TOP)
cf70: 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 24 28 48  \src\mutex.c $(H cf80: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
cf90: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE cfa0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
cfb0: 5c 73 72 63 5c 6d 75 74 65 78 2e 63 0a 0a 6d 75  \src\mutex.c..mu
cfc0: 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24 28 54  tex_noop.lo:.$(T cfd0: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f OP)\src\mutex_no cfe0: 6f 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c op.c$(HDR)..$(L cff0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
d000: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d010: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74  c $(TOP)\src\mut d020: 65 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d 75 74 65 78 ex_noop.c..mutex d030: 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 _unix.lo:.$(TOP)
d040: 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e  \src\mutex_unix.
d050: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
d060: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO d070: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
d080: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
d090: 75 6e 69 78 2e 63 0a 0a 6d 75 74 65 78 5f 77 33  unix.c..mutex_w3
d0a0: 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  2.lo:.$(TOP)\src d0b0: 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 24 28 48 \mutex_w32.c$(H
d0c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE d0d0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
d0e0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) d0f0: 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 \src\mutex_w32.c d100: 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24 28 54 ..notify.lo:.$(T
d110: 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63  OP)\src\notify.c
d120: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
d130: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM d140: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
d150: 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e  TOP)\src\notify.
d160: 63 0a 0a 70 61 67 65 72 2e 6c 6f 3a 09 24 28 54  c..pager.lo:.$(T d170: 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 20 OP)\src\pager.c d180: 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72$(HDR) $(TOP)\sr d190: 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c 54 43 c\pager.h..$(LTC
d1a0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d1b0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d1c0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72$(TOP)\src\pager
d1d0: 2e 63 0a 0a 70 63 61 63 68 65 2e 6c 6f 3a 09 24  .c..pcache.lo:.$d1e0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 (TOP)\src\pcache d1f0: 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 .c$(HDR) $(TOP) d200: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 0a 09 24 \src\pcache.h..$
d210: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO d220: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) d230: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 -c$(TOP)\src\p
d240: 63 61 63 68 65 2e 63 0a 0a 70 63 61 63 68 65 31  cache.c..pcache1
d250: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ d260: 70 63 61 63 68 65 31 2e 63 20 24 28 48 44 52 29 pcache1.c$(HDR)
d270: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63   $(TOP)\src\pcac d280: 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c he.h..$(LTCOMPIL
d290: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d2a0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
d2b0: 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 0a  )\src\pcache1.c.
d2c0: 0a 6f 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  .os.lo:.$(TOP)\s d2d0: 72 63 5c 6f 73 2e 63 20 24 28 48 44 52 29 0a 09 rc\os.c$(HDR)..
d2e0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
d2f0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
d300: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ d310: 6f 73 2e 63 0a 0a 6f 73 5f 75 6e 69 78 2e 6c 6f os.c..os_unix.lo d320: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f :.$(TOP)\src\os_
d330: 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a 09 24  unix.c $(HDR)..$
d340: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO d350: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) d360: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f -c$(TOP)\src\o
d370: 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73 5f 77 69 6e  s_unix.c..os_win
d380: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ d390: 6f 73 5f 77 69 6e 2e 63 20 24 28 48 44 52 29 0a os_win.c$(HDR).
d3a0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
d3b0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
d3c0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src d3d0: 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61 67 6d \os_win.c..pragm d3e0: 61 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 a.lo:.$(TOP)\src
d3f0: 5c 70 72 61 67 6d 61 2e 63 20 24 28 48 44 52 29  \pragma.c $(HDR) d400: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d410: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d420: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
d430: 63 5c 70 72 61 67 6d 61 2e 63 0a 0a 70 72 65 70  c\pragma.c..prep
d440: 61 72 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  are.lo:.$(TOP)\s d450: 72 63 5c 70 72 65 70 61 72 65 2e 63 20 24 28 48 rc\prepare.c$(H
d460: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE d470: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
d480: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) d490: 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 0a 0a \src\prepare.c.. d4a0: 70 72 69 6e 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 printf.lo:.$(TOP
d4b0: 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 20 24  )\src\printf.c $d4c0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
d4d0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI d4e0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
d4f0: 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 0a  P)\src\printf.c.
d500: 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24 28 54 4f  .random.lo:.$(TO d510: 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 P)\src\random.c d520: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP d530: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
d540: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T d550: 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 OP)\src\random.c d560: 0a 0a 72 65 73 6f 6c 76 65 2e 6c 6f 3a 09 24 28 ..resolve.lo:.$(
d570: 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65  TOP)\src\resolve
d580: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
d590: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d5a0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d5b0: 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c$(TOP)\src\resol
d5c0: 76 65 2e 63 0a 0a 72 6f 77 73 65 74 2e 6c 6f 3a  ve.c..rowset.lo:
d5d0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73  .$(TOP)\src\rows d5e0: 65 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c et.c$(HDR)..$(L d5f0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
d600: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d610: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77  c $(TOP)\src\row d620: 73 65 74 2e 63 0a 0a 73 65 6c 65 63 74 2e 6c 6f set.c..select.lo d630: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c :.$(TOP)\src\sel
d640: 65 63 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ect.c $(HDR)..$(
d650: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d660: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d670: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65 -c$(TOP)\src\se
d680: 6c 65 63 74 2e 63 0a 0a 73 74 61 74 75 73 2e 6c  lect.c..status.l
d690: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 74  o:.$(TOP)\src\st d6a0: 61 74 75 73 2e 63 20 24 28 48 44 52 29 0a 09 24 atus.c$(HDR)..$d6b0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
d6c0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
d6d0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 73   -c $(TOP)\src\s d6e0: 74 61 74 75 73 2e 63 0a 0a 74 61 62 6c 65 2e 6c tatus.c..table.l d6f0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 o:.$(TOP)\src\ta
d700: 62 6c 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ble.c $(HDR)..$(
d710: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d720: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d730: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 -c$(TOP)\src\ta
d740: 62 6c 65 2e 63 0a 0a 74 68 72 65 61 64 73 2e 6c  ble.c..threads.l
d750: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 68  o:.$(TOP)\src\th d760: 72 65 61 64 73 2e 63 20 24 28 48 44 52 29 0a 09 reads.c$(HDR)..
d770: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
d780: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
d790: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ d7a0: 74 68 72 65 61 64 73 2e 63 0a 0a 74 6f 6b 65 6e threads.c..token d7b0: 69 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 ize.lo:.$(TOP)\s
d7c0: 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20 6b 65  rc\tokenize.c ke
d7d0: 79 77 6f 72 64 68 61 73 68 2e 68 20 24 28 48 44  ywordhash.h $(HD d7e0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
d7f0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ d800: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
d810: 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 0a 0a  src\tokenize.c..
d820: 74 72 65 65 76 69 65 77 2e 6c 6f 3a 09 24 28 54  treeview.lo:.$(T d830: 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 77 OP)\src\treeview d840: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC d850: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
d860: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
d870: 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76  $(TOP)\src\treev d880: 69 65 77 2e 63 0a 0a 74 72 69 67 67 65 72 2e 6c iew.c..trigger.l d890: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 o:.$(TOP)\src\tr
d8a0: 69 67 67 65 72 2e 63 20 24 28 48 44 52 29 0a 09  igger.c $(HDR).. d8b0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C d8c0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS d8d0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
d8e0: 74 72 69 67 67 65 72 2e 63 0a 0a 75 70 64 61 74  trigger.c..updat
d8f0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src d900: 5c 75 70 64 61 74 65 2e 63 20 24 28 48 44 52 29 \update.c$(HDR)
d910: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
d920: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
d930: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr d940: 63 5c 75 70 64 61 74 65 2e 63 0a 0a 75 70 73 65 c\update.c..upse d950: 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 rt.lo:.$(TOP)\sr
d960: 63 5c 75 70 73 65 72 74 2e 63 20 24 28 48 44 52  c\upsert.c $(HDR d970: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
d980: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O d990: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
d9a0: 72 63 5c 75 70 73 65 72 74 2e 63 0a 0a 75 74 66  rc\upsert.c..utf
d9b0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ d9c0: 75 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 utf.c$(HDR)..$( d9d0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
d9e0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
d9f0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74  -c $(TOP)\src\ut da00: 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a 09 24 28 f.c..util.lo:.$(
da10: 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20  TOP)\src\util.c
da20: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
da30: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP da40: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
da50: 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 0a 0a  OP)\src\util.c..
da60: 76 61 63 75 75 6d 2e 6c 6f 3a 09 24 28 54 4f 50  vacuum.lo:.$(TOP da70: 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 20 24 )\src\vacuum.c$
da80: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI da90: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
daa0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO dab0: 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 0a P)\src\vacuum.c. dac0: 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 .vdbe.lo:.$(TOP)
dad0: 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 48 44  \src\vdbe.c $(HD dae0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
daf0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ db00: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
db10: 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76 64 62 65  src\vdbe.c..vdbe
db20: 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  api.lo:.$(TOP)\s db30: 72 63 5c 76 64 62 65 61 70 69 2e 63 20 24 28 48 rc\vdbeapi.c$(H
db40: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE db50: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
db60: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) db70: 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 0a 0a \src\vdbeapi.c.. db80: 76 64 62 65 61 75 78 2e 6c 6f 3a 09 24 28 54 4f vdbeaux.lo:.$(TO
db90: 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63  P)\src\vdbeaux.c
dba0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
dbb0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM dbc0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
dbd0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78  TOP)\src\vdbeaux
dbe0: 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 2e 6c 6f 3a  .c..vdbeblob.lo:
dbf0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65  .$(TOP)\src\vdbe dc00: 62 6c 6f 62 2e 63 20 24 28 48 44 52 29 0a 09 24 blob.c$(HDR)..$dc10: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
dc20: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
dc30: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76   -c $(TOP)\src\v dc40: 64 62 65 62 6c 6f 62 2e 63 0a 0a 76 64 62 65 6d dbeblob.c..vdbem dc50: 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 em.lo:.$(TOP)\sr
dc60: 63 5c 76 64 62 65 6d 65 6d 2e 63 20 24 28 48 44  c\vdbemem.c $(HD dc70: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
dc80: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ dc90: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
dca0: 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a 76  src\vdbemem.c..v
dcb0: 64 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54 4f  dbesort.lo:.$(TO dcc0: 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e P)\src\vdbesort. dcd0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO dce0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
dcf0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $dd00: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f (TOP)\src\vdbeso dd10: 72 74 2e 63 0a 0a 76 64 62 65 74 72 61 63 65 2e rt.c..vdbetrace. dd20: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 lo:.$(TOP)\src\v
dd30: 64 62 65 74 72 61 63 65 2e 63 20 24 28 48 44 52  dbetrace.c $(HDR dd40: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
dd50: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O dd60: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
dd70: 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 0a 0a  rc\vdbetrace.c..
dd80: 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  vtab.lo:.$(TOP)\ dd90: 73 72 63 5c 76 74 61 62 2e 63 20 24 28 48 44 52 src\vtab.c$(HDR
dda0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) ddb0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
ddc0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s ddd0: 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c 2e 6c rc\vtab.c..wal.l dde0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 o:.$(TOP)\src\wa
ddf0: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  l.c $(HDR)..$(LT
de00: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ de10: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c de20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e$(TOP)\src\wal.
de30: 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f 3a 09 24 28  c..walker.lo:.$( de40: 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e TOP)\src\walker. de50: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO de60: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
de70: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $de80: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 (TOP)\src\walker de90: 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f 3a 09 24 28 .c..where.lo:.$(
dea0: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63  TOP)\src\where.c
deb0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
dec0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM ded0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
dee0: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63  TOP)\src\where.c
def0: 0a 0a 77 68 65 72 65 63 6f 64 65 2e 6c 6f 3a 09  ..wherecode.lo:.
df00: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65  $(TOP)\src\where df10: 63 6f 64 65 2e 63 20 24 28 48 44 52 29 0a 09 24 code.c$(HDR)..$df20: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
df30: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
df40: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77   -c $(TOP)\src\w df50: 68 65 72 65 63 6f 64 65 2e 63 0a 0a 77 68 65 72 herecode.c..wher df60: 65 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 eexpr.lo:.$(TOP)
df70: 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e 63  \src\whereexpr.c
df80: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
df90: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM dfa0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
dfb0: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 65 78  TOP)\src\whereex
dfc0: 70 72 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2e  pr.c..tclsqlite.
dfd0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74  lo:.$(TOP)\src\t dfe0: 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44 52 clsqlite.c$(HDR
dff0: 29 20 24 28 53 51 4c 49 54 45 5f 54 43 4c 5f 44  ) $(SQLITE_TCL_D e000: 45 50 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 EP)..$(LTCOMPILE
e010: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 55  ) $(NO_WARN) -DU e020: 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d SE_TCL_STUBS=1 - e030: 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 DBUILD_sqlite -I e040: 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 20$(TCLINCDIR) -c
e050: 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71  $(TOP)\src\tclsq e060: 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 lite.c..tclsqlit e070: 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54 4f e-shell.lo:.$(TO
e080: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
e090: 2e 63 20 24 28 48 44 52 29 20 24 28 53 51 4c 49  .c $(HDR)$(SQLI
e0a0: 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 4c  TE_TCL_DEP)..$(L e0b0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 TCOMPILE)$(NO_W
e0c0: 41 52 4e 29 20 2d 44 54 43 4c 53 48 20 2d 44 42  ARN) -DTCLSH -DB
e0d0: 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28  UILD_sqlite -I$( e0e0: 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 20 24 28 TCLINCDIR) -c$(
e0f0: 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69  TOP)\src\tclsqli
e100: 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 33  te.c..tclsqlite3
e110: 2e 65 78 65 3a 09 74 63 6c 73 71 6c 69 74 65 2d  .exe:.tclsqlite-
e120: 73 68 65 6c 6c 2e 6c 6f 20 24 28 53 51 4c 49 54  shell.lo $(SQLIT e130: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
e140: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09   $(LIBRESOBJS).. e150: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53 51 4c 49$(LTLINK) $(SQLI e160: 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 TE3C) /link$(LD
e170: 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO e180: 50 54 53 29 20 24 28 54 43 4c 4c 49 42 50 41 54 PTS)$(TCLLIBPAT
e190: 48 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53  HS) $(LTLIBPATHS e1a0: 29 20 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c ) /OUT:$@ tclsql
e1b0: 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 4c  ite-shell.lo $(L e1c0: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 54 43 4c IBRESOBJS)$(TCL
e1d0: 4c 49 42 53 29 20 24 28 4c 54 4c 49 42 53 29 20  LIBS) $(LTLIBS) e1e0: 24 28 54 4c 49 42 53 29 0a 0a 23 20 52 75 6c 65$(TLIBS)..# Rule
e1f0: 73 20 74 6f 20 62 75 69 6c 64 20 6f 70 63 6f 64  s to build opcod
e200: 65 73 2e 63 20 61 6e 64 20 6f 70 63 6f 64 65 73  es.c and opcodes
e210: 2e 68 0a 23 0a 6f 70 63 6f 64 65 73 2e 63 3a 09  .h.#.opcodes.c:.
e220: 6f 70 63 6f 64 65 73 2e 68 20 24 28 54 4f 50 29  opcodes.h $(TOP) e230: 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e \tool\mkopcodec. e240: 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 tcl..$(TCLSH_CMD
e250: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b  ) $(TOP)\tool\mk e260: 6f 70 63 6f 64 65 63 2e 74 63 6c 20 6f 70 63 6f opcodec.tcl opco e270: 64 65 73 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e des.h > opcodes. e280: 63 0a 0a 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61 c..opcodes.h:.pa e290: 72 73 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 rse.h$(TOP)\src
e2a0: 5c 76 64 62 65 2e 63 20 24 28 54 4f 50 29 5c 74  \vdbe.c $(TOP)\t e2b0: 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 ool\mkopcodeh.tc e2c0: 6c 0a 09 74 79 70 65 20 70 61 72 73 65 2e 68 20 l..type parse.h e2d0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e$(TOP)\src\vdbe.
e2e0: 63 20 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29  c | $(TCLSH_CMD) e2f0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f$(TOP)\tool\mko
e300: 70 63 6f 64 65 68 2e 74 63 6c 20 3e 20 6f 70 63  pcodeh.tcl > opc
e310: 6f 64 65 73 2e 68 0a 0a 23 20 52 75 6c 65 73 20  odes.h..# Rules
e320: 74 6f 20 62 75 69 6c 64 20 70 61 72 73 65 2e 63  to build parse.c
e330: 20 61 6e 64 20 70 61 72 73 65 2e 68 20 2d 20 74   and parse.h - t
e340: 68 65 20 6f 75 74 70 75 74 73 20 6f 66 20 6c 65  he outputs of le
e350: 6d 6f 6e 2e 0a 23 0a 70 61 72 73 65 2e 68 3a 09  mon..#.parse.h:.
e360: 70 61 72 73 65 2e 63 0a 0a 70 61 72 73 65 2e 63  parse.c..parse.c
e370: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72  :.$(TOP)\src\par e380: 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 se.y lemon.exe$
e390: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70  (TOP)\tool\addop
e3a0: 63 6f 64 65 73 2e 74 63 6c 0a 09 64 65 6c 20 2f  codes.tcl..del /
e3b0: 51 20 70 61 72 73 65 2e 79 20 70 61 72 73 65 2e  Q parse.y parse.
e3c0: 68 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 20 32  h parse.h.temp 2
e3d0: 3e 4e 55 4c 0a 09 63 6f 70 79 20 24 28 54 4f 50  >NUL..copy $(TOP e3e0: 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 2e 0a )\src\parse.y .. e3f0: 09 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 52 ..\lemon.exe$(R
e400: 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  EQ_FEATURE_FLAGS
e410: 29 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f  ) $(OPT_FEATURE_ e420: 46 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 FLAGS)$(EXT_FEA
e430: 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50  TURE_FLAGS) $(OP e440: 54 53 29 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 TS) parse.y..mov e450: 65 20 70 61 72 73 65 2e 68 20 70 61 72 73 65 2e e parse.h parse. e460: 68 2e 74 65 6d 70 0a 09 24 28 54 43 4c 53 48 5f h.temp..$(TCLSH_
e470: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool e480: 5c 61 64 64 6f 70 63 6f 64 65 73 2e 74 63 6c 20 \addopcodes.tcl e490: 70 61 72 73 65 2e 68 2e 74 65 6d 70 20 3e 20 70 parse.h.temp > p e4a0: 61 72 73 65 2e 68 0a 0a 24 28 53 51 4c 49 54 45 arse.h..$(SQLITE
e4b0: 33 48 29 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  3H):.$(TOP)\src\ e4c0: 73 71 6c 69 74 65 2e 68 2e 69 6e 20 24 28 54 4f sqlite.h.in$(TO
e4d0: 50 29 5c 6d 61 6e 69 66 65 73 74 20 6d 6b 73 6f  P)\manifest mkso
e4e0: 75 72 63 65 69 64 2e 65 78 65 20 24 28 54 4f 50  urceid.exe $(TOP e4f0: 29 5c 56 45 52 53 49 4f 4e 0a 09 24 28 54 43 4c )\VERSION..$(TCL
e500: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74  SH_CMD) $(TOP)\t e510: 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 68 2e 74 ool\mksqlite3h.t e520: 63 6c 20 24 28 54 4f 50 3a 5c 3d 2f 29 20 3e 20 cl$(TOP:\=/) >
e530: 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 4d 4b  $(SQLITE3H)$(MK
e540: 53 51 4c 49 54 45 33 48 5f 41 52 47 53 29 0a 0a  SQLITE3H_ARGS)..
e550: 73 71 6c 69 74 65 33 65 78 74 2e 68 3a 09 2e 74  sqlite3ext.h:..t
e560: 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 21 49 46  arget_source.!IF
e570: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)! e580: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
e590: 30 29 21 3d 30 0a 09 74 79 70 65 20 74 73 72 63  0)!=0..type tsrc
e5a0: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 7c 20  \sqlite3ext.h |
e5b0: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
e5c0: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
e5d0: 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c  .tcl regsub "$$\ e5e0: 2a 5c 29 22 20 22 28 53 51 4c 49 54 45 5f 43 41 *$$" "(SQLITE_CA
e5f0: 4c 4c 42 41 43 4b 20 2a 29 22 20 5c 0a 09 09 7c  LLBACK *)" \...|
e600: 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28   $(TCLSH_CMD)$(
e610: 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63  TOP)\tool\replac
e620: 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28  e.tcl regsub "\(
e630: 5c 2a 22 20 22 28 53 51 4c 49 54 45 5f 41 50 49  \*" "(SQLITE_API
e640: 43 41 4c 4c 20 2a 22 20 3e 20 73 71 6c 69 74 65  CALL *" > sqlite
e650: 33 65 78 74 2e 68 0a 09 63 6f 70 79 20 2f 59 20  3ext.h..copy /Y
e660: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 74 73 72  sqlite3ext.h tsr
e670: 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 0a 21  c\sqlite3ext.h.!
e680: 45 4c 53 45 0a 09 63 6f 70 79 20 2f 59 20 74 73  ELSE..copy /Y ts
e690: 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20  rc\sqlite3ext.h
e6a0: 73 71 6c 69 74 65 33 65 78 74 2e 68 0a 21 45 4e  sqlite3ext.h.!EN
e6b0: 44 49 46 0a 0a 6d 6b 6b 65 79 77 6f 72 64 68 61  DIF..mkkeywordha
e6c0: 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  sh.exe:.$(TOP)\t e6d0: 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 ool\mkkeywordhas e6e0: 68 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f h.c..$(BCC) $(NO e6f0: 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 52 _WARN) -Fe$@ $(R e700: 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 EQ_FEATURE_FLAGS e710: 29 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f )$(OPT_FEATURE_
e720: 46 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41  FLAGS) $(EXT_FEA e730: 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 TURE_FLAGS)$(OP
e740: 54 53 29 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74  TS) \...$(TOP)\t e750: 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 ool\mkkeywordhas e760: 68 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c h.c /link$(LDFL
e770: 41 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50  AGS) $(NLTLINKOP e780: 54 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 TS)$(NLTLIBPATH
e790: 53 29 0a 0a 6b 65 79 77 6f 72 64 68 61 73 68 2e  S)..keywordhash.
e7a0: 68 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  h:.$(TOP)\tool\m e7b0: 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20 6d kkeywordhash.c m e7c0: 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 kkeywordhash.exe e7d0: 0a 09 2e 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 ...\mkkeywordhas e7e0: 68 2e 65 78 65 20 3e 20 6b 65 79 77 6f 72 64 68 h.exe > keywordh e7f0: 61 73 68 2e 68 0a 0a 23 20 53 6f 75 72 63 65 20 ash.h..# Source e800: 66 69 6c 65 73 20 74 68 61 74 20 67 6f 20 69 6e files that go in e810: 74 6f 20 6d 61 6b 69 6e 67 20 73 68 65 6c 6c 2e to making shell. e820: 63 0a 53 48 45 4c 4c 5f 53 52 43 20 3d 20 5c 0a c.SHELL_SRC = \. e830: 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c .$(TOP)\src\shel
e840: 6c 2e 63 2e 69 6e 20 5c 0a 09 24 28 54 4f 50 29  l.c.in \..$(TOP) e850: 5c 65 78 74 5c 6d 69 73 63 5c 61 70 70 65 6e 64 \ext\misc\append e860: 76 66 73 2e 63 20 5c 0a 09 24 28 54 4f 50 29 5c vfs.c \..$(TOP)\
e870: 65 78 74 5c 6d 69 73 63 5c 73 68 61 74 68 72 65  ext\misc\shathre
e880: 65 2e 63 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78  e.c \..$(TOP)\ex e890: 74 5c 6d 69 73 63 5c 66 69 6c 65 69 6f 2e 63 20 t\misc\fileio.c e8a0: 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 \..$(TOP)\ext\mi
e8b0: 73 63 5c 63 6f 6d 70 6c 65 74 69 6f 6e 2e 63 20  sc\completion.c
e8c0: 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c 65 78  \..$(TOP)\ext\ex e8d0: 70 65 72 74 5c 73 71 6c 69 74 65 33 65 78 70 65 pert\sqlite3expe e8e0: 72 74 2e 63 20 5c 0a 09 24 28 54 4f 50 29 5c 65 rt.c \..$(TOP)\e
e8f0: 78 74 5c 65 78 70 65 72 74 5c 73 71 6c 69 74 65  xt\expert\sqlite
e900: 33 65 78 70 65 72 74 2e 68 20 5c 0a 09 24 28 54  3expert.h \..$(T e910: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 69 6e OP)\src\test_win e920: 64 69 72 65 6e 74 2e 63 0a 0a 23 20 49 66 20 75 dirent.c..# If u e930: 73 65 20 6f 66 20 7a 6c 69 62 20 69 73 20 65 6e se of zlib is en e940: 61 62 6c 65 64 2c 20 61 64 64 20 74 68 65 20 22 abled, add the " e950: 7a 69 70 66 69 6c 65 2e 63 22 20 73 6f 75 72 63 zipfile.c" sourc e960: 65 20 66 69 6c 65 2e 0a 23 0a 21 49 46 20 24 28 e file..#.!IF$(
e970: 55 53 45 5f 5a 4c 49 42 29 21 3d 30 0a 53 48 45  USE_ZLIB)!=0.SHE
e980: 4c 4c 5f 53 52 43 20 3d 20 24 28 53 48 45 4c 4c  LL_SRC = $(SHELL e990: 5f 53 52 43 29 20 24 28 54 4f 50 29 5c 65 78 74 _SRC)$(TOP)\ext
e9a0: 5c 6d 69 73 63 5c 73 71 6c 61 72 2e 63 0a 53 48  \misc\sqlar.c.SH
e9b0: 45 4c 4c 5f 53 52 43 20 3d 20 24 28 53 48 45 4c  ELL_SRC = $(SHEL e9c0: 4c 5f 53 52 43 29 20 24 28 54 4f 50 29 5c 65 78 L_SRC)$(TOP)\ex
e9d0: 74 5c 6d 69 73 63 5c 7a 69 70 66 69 6c 65 2e 63  t\misc\zipfile.c
e9e0: 0a 21 45 4e 44 49 46 0a 0a 73 68 65 6c 6c 2e 63  .!ENDIF..shell.c
e9f0: 3a 09 24 28 53 48 45 4c 4c 5f 53 52 43 29 20 24  :.$(SHELL_SRC)$
ea00: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 68 65  (TOP)\tool\mkshe
ea10: 6c 6c 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48  llc.tcl..$(TCLSH ea20: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
ea30: 6c 5c 6d 6b 73 68 65 6c 6c 63 2e 74 63 6c 20 3e  l\mkshellc.tcl >
ea40: 20 73 68 65 6c 6c 2e 63 0a 0a 7a 6c 69 62 3a 0a   shell.c..zlib:.
ea50: 09 70 75 73 68 64 20 24 28 5a 4c 49 42 44 49 52  .pushd $(ZLIBDIR ea60: 29 20 26 26 20 24 28 4d 41 4b 45 29 20 2f 66 20 ) &&$(MAKE) /f
ea70: 77 69 6e 33 32 5c 4d 61 6b 65 66 69 6c 65 2e 6d  win32\Makefile.m
ea80: 73 63 20 63 6c 65 61 6e 20 24 28 5a 4c 49 42 4c  sc clean $(ZLIBL ea90: 49 42 29 20 26 26 20 70 6f 70 64 0a 0a 23 20 52 IB) && popd..# R eaa0: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 ules to build th eab0: 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65 e extension obje eac0: 63 74 73 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24 cts..#.icu.lo:.$
ead0: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63  (TOP)\ext\icu\ic
eae0: 75 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  u.c $(HDR)$(EXT
eaf0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL eb00: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
eb10: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR eb20: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 N) -DSQLITE_CORE eb30: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 -c$(TOP)\ext\i
eb40: 63 75 5c 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c  cu\icu.c..fts2.l
eb50: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft eb60: 73 32 5c 66 74 73 32 2e 63 20 24 28 48 44 52 29 s2\fts2.c$(HDR)
eb70: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
eb80: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ eb90: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 COMPILE_OPTS)$(
eba0: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
ebb0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP) ebc0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 \ext\fts2\fts2.c ebd0: 0a 0a 66 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09 ..fts2_hash.lo:. ebe0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
ebf0: 66 74 73 32 5f 68 61 73 68 2e 63 20 24 28 48 44  fts2_hash.c $(HD ec00: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( ec10: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
ec20: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
ec30: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL ec40: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
ec50: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
ec60: 5f 68 61 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63  _hash.c..fts2_ic
ec70: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  u.lo:.$(TOP)\ext ec80: 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 \fts2\fts2_icu.c ec90: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR eca0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
ecb0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O ecc0: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
ecd0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
ece0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 ecf0: 5c 66 74 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73 \fts2_icu.c..fts ed00: 32 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 2_porter.lo:.$(T
ed10: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
ed20: 32 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52  2_porter.c $(HDR ed30: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L ed40: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
ed50: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $ed60: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI ed70: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
ed80: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
ed90: 70 6f 72 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74  porter.c..fts2_t
eda0: 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54  okenizer.lo:.$(T edb0: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts edc0: 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 2_tokenizer.c$(
edd0: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR).. ede0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C edf0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS ee00: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 )$(NO_WARN) -DS
ee10: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $( ee20: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft ee30: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a s2_tokenizer.c.. ee40: 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e fts2_tokenizer1. ee50: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
ee60: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  ts2\fts2_tokeniz
ee70: 65 72 31 2e 63 20 24 28 48 44 52 29 20 24 28 45  er1.c $(HDR)$(E
ee80: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP ee90: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
eea0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W eeb0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO eec0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
eed0: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e  \fts2\fts2_token
eee0: 69 7a 65 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f  izer1.c..fts3.lo
eef0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts ef00: 33 5c 66 74 73 33 2e 63 20 24 28 48 44 52 29 20 3\fts3.c$(HDR)
ef10: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
ef20: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C ef30: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e OMPILE_OPTS)$(N
ef40: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
ef50: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\ ef60: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a ext\fts3\fts3.c. ef70: 0a 66 74 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28 .fts3_aux.lo:.$(
ef80: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
ef90: 73 33 5f 61 75 78 2e 63 20 24 28 48 44 52 29 20  s3_aux.c $(HDR) efa0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC efb0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
efc0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N efd0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE efe0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
eff0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75  ext\fts3\fts3_au
f000: 78 2e 63 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c  x.c..fts3_expr.l
f010: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft f020: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 24 s3\fts3_expr.c$
f030: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). f040: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( f050: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT f060: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 S)$(NO_WARN) -D
f070: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $f080: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f f090: 74 73 33 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33 ts3_expr.c..fts3 f0a0: 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 _hash.lo:.$(TOP)
f0b0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68  \ext\fts3\fts3_h
f0c0: 61 73 68 2e 63 20 24 28 48 44 52 29 20 24 28 45  ash.c $(HDR)$(E
f0d0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP f0e0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
f0f0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W f100: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO f110: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
f120: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e  \fts3\fts3_hash.
f130: 63 0a 0a 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09  c..fts3_icu.lo:.
f140: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ f150: 66 74 73 33 5f 69 63 75 2e 63 20 24 28 48 44 52 fts3_icu.c$(HDR
f160: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
f170: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE f180: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
f190: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
f1a0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP f1b0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ f1c0: 69 63 75 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70 icu.c..fts3_snip f1d0: 70 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 pet.lo:.$(TOP)\e
f1e0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69  xt\fts3\fts3_sni
f1f0: 70 70 65 74 2e 63 20 24 28 48 44 52 29 20 24 28  ppet.c $(HDR)$(
f200: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM f210: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
f220: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ f230: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C f240: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
f250: 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70  t\fts3\fts3_snip
f260: 70 65 74 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74  pet.c..fts3_port
f270: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  er.lo:.$(TOP)\ex f280: 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 t\fts3\fts3_port f290: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 er.c$(HDR) $(EX f2a0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
f2b0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI f2c0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
f2d0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
f2e0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ f2f0: 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 fts3\fts3_porter f300: 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a .c..fts3_tokeniz f310: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 er.lo:.$(TOP)\ex
f320: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
f330: 6e 69 7a 65 72 2e 63 20 24 28 48 44 52 29 20 24  nizer.c $(HDR)$
f340: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO f350: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
f360: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO f370: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ f380: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
f390: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
f3a0: 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74  enizer.c..fts3_t
f3b0: 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28  okenizer1.lo:.$( f3c0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft f3d0: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 s3_tokenizer1.c f3e0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) f3f0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $f400: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP f410: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d TS)$(NO_WARN) -
f420: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
f430: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ f440: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e fts3_tokenizer1. f450: 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 c..fts3_tokenize f460: 5f 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 _vtab.lo:.$(TOP)
f470: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
f480: 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 24  okenize_vtab.c $f490: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a (HDR)$(EXTHDR).
f4a0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
f4b0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
f4c0: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D f4d0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 SQLITE_CORE -c$
f4e0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
f4f0: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61  ts3_tokenize_vta
f500: 62 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64  b.c..fts3_unicod
f510: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  e.lo:.$(TOP)\ext f520: 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f \fts3\fts3_unico f530: 64 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 de.c$(HDR) $(EX f540: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
f550: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI f560: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
f570: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
f580: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ f590: 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 fts3\fts3_unicod f5a0: 65 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 e.c..fts3_unicod f5b0: 65 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 e2.lo:.$(TOP)\ex
f5c0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63  t\fts3\fts3_unic
f5d0: 6f 64 65 32 2e 63 20 24 28 48 44 52 29 20 24 28  ode2.c $(HDR)$(
f5e0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM f5f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
f600: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ f610: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C f620: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
f630: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63  t\fts3\fts3_unic
f640: 6f 64 65 32 2e 63 0a 0a 66 74 73 33 5f 77 72 69  ode2.c..fts3_wri
f650: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  te.lo:.$(TOP)\ex f660: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74 t\fts3\fts3_writ f670: 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 e.c$(HDR) $(EXT f680: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
f690: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL f6a0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
f6b0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
f6c0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f f6d0: 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 ts3\fts3_write.c f6e0: 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f ..rtree.lo:.$(TO
f6f0: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72  P)\ext\rtree\rtr
f700: 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  ee.c $(HDR)$(EX
f710: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI f720: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
f730: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA f740: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR f750: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
f760: 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a 73  rtree\rtree.c..s
f770: 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f  qlite3session.lo
f780: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73  :.$(TOP)\ext\ses f790: 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 sion\sqlite3sess f7a0: 69 6f 6e 2e 63 20 24 28 48 44 52 29 20 24 28 45 ion.c$(HDR) $(E f7b0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
f7c0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP f7d0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
f7e0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
f7f0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext f800: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 \session\sqlite3 f810: 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 46 54 53 session.c..# FTS f820: 35 20 74 68 69 6e 67 73 0a 23 0a 46 54 53 35 5f 5 things.#.FTS5_ f830: 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 SRC = \.$(TOP
f840: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 2e  )\ext\fts5\fts5.
f850: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  h \.   $(TOP)\ex f860: 74 5c 66 74 73 35 5c 66 74 73 35 49 6e 74 2e 68 t\fts5\fts5Int.h f870: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
f880: 5c 66 74 73 35 5c 66 74 73 35 5f 61 75 78 2e 63  \fts5\fts5_aux.c
f890: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext f8a0: 5c 66 74 73 35 5c 66 74 73 35 5f 62 75 66 66 65 \fts5\fts5_buffe f8b0: 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c r.c \.$(TOP)\
f8c0: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 6d 61  ext\fts5\fts5_ma
f8d0: 69 6e 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  in.c \.   $(TOP) f8e0: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 63 \ext\fts5\fts5_c f8f0: 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 20 24 28 54 onfig.c \.$(T
f900: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
f910: 35 5f 65 78 70 72 2e 63 20 5c 0a 20 20 20 24 28  5_expr.c \.   $( f920: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 TOP)\ext\fts5\ft f930: 73 35 5f 68 61 73 68 2e 63 20 5c 0a 20 20 20 24 s5_hash.c \.$
f940: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66  (TOP)\ext\fts5\f
f950: 74 73 35 5f 69 6e 64 65 78 2e 63 20 5c 0a 20 20  ts5_index.c \.
f960: 20 66 74 73 35 70 61 72 73 65 2e 63 20 66 74 73   fts5parse.c fts
f970: 35 70 61 72 73 65 2e 68 20 5c 0a 20 20 20 24 28  5parse.h \.   $( f980: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 TOP)\ext\fts5\ft f990: 73 35 5f 73 74 6f 72 61 67 65 2e 63 20 5c 0a 20 s5_storage.c \. f9a0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
f9b0: 35 5c 66 74 73 35 5f 74 6f 6b 65 6e 69 7a 65 2e  5\fts5_tokenize.
f9c0: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex f9d0: 74 5c 66 74 73 35 5c 66 74 73 35 5f 75 6e 69 63 t\fts5\fts5_unic f9e0: 6f 64 65 32 2e 63 20 5c 0a 20 20 20 24 28 54 4f ode2.c \.$(TO
f9f0: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
fa00: 5f 76 61 72 69 6e 74 2e 63 20 5c 0a 20 20 20 24  _varint.c \.   $fa10: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f fa20: 74 73 35 5f 76 6f 63 61 62 2e 63 0a 0a 4c 53 4d ts5_vocab.c..LSM fa30: 31 5f 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54 1_SRC = \.$(T
fa40: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d  OP)\ext\lsm1\lsm
fa50: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .h \.   $(TOP)\e fa60: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 49 6e 74 2e 68 xt\lsm1\lsmInt.h fa70: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
fa80: 5c 6c 73 6d 31 5c 6c 73 6d 5f 63 6b 70 74 2e 63  \lsm1\lsm_ckpt.c
fa90: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext faa0: 5c 6c 73 6d 31 5c 6c 73 6d 5f 66 69 6c 65 2e 63 \lsm1\lsm_file.c fab0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
fac0: 5c 6c 73 6d 31 5c 6c 73 6d 5f 6c 6f 67 2e 63 20  \lsm1\lsm_log.c
fad0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ fae0: 6c 73 6d 31 5c 6c 73 6d 5f 6d 61 69 6e 2e 63 20 lsm1\lsm_main.c faf0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
fb00: 6c 73 6d 31 5c 6c 73 6d 5f 6d 65 6d 2e 63 20 5c  lsm1\lsm_mem.c \
fb10: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c  .   $(TOP)\ext\l fb20: 73 6d 31 5c 6c 73 6d 5f 6d 75 74 65 78 2e 63 20 sm1\lsm_mutex.c fb30: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
fb40: 6c 73 6d 31 5c 6c 73 6d 5f 73 68 61 72 65 64 2e  lsm1\lsm_shared.
fb50: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex fb60: 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 6f 72 74 65 t\lsm1\lsm_sorte fb70: 64 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c d.c \.$(TOP)\
fb80: 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 74 72  ext\lsm1\lsm_str
fb90: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e fba0: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 74 72 65 65 xt\lsm1\lsm_tree fbb0: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .c \.$(TOP)\e
fbc0: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 75 6e 69 78  xt\lsm1\lsm_unix
fbd0: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e fbe0: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 61 72 69 xt\lsm1\lsm_vari fbf0: 6e 74 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 nt.c \.$(TOP)
fc00: 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 74  \ext\lsm1\lsm_vt
fc10: 61 62 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  ab.c \.   $(TOP) fc20: 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 77 69 \ext\lsm1\lsm_wi fc30: 6e 33 32 2e 63 0a 0a 66 74 73 35 70 61 72 73 65 n32.c..fts5parse fc40: 2e 63 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 .c:.$(TOP)\ext\f
fc50: 74 73 35 5c 66 74 73 35 70 61 72 73 65 2e 79 20  ts5\fts5parse.y
fc60: 6c 65 6d 6f 6e 2e 65 78 65 0a 09 63 6f 70 79 20  lemon.exe..copy
fc70: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\ fc80: 66 74 73 35 70 61 72 73 65 2e 79 20 2e 0a 09 64 fts5parse.y ...d fc90: 65 6c 20 2f 51 20 66 74 73 35 70 61 72 73 65 2e el /Q fts5parse. fca0: 68 20 32 3e 4e 55 4c 0a 09 2e 5c 6c 65 6d 6f 6e h 2>NUL...\lemon fcb0: 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54 55 .exe$(REQ_FEATU
fcc0: 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f  RE_FLAGS) $(OPT_ fcd0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 FEATURE_FLAGS)$
fce0: 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (EXT_FEATURE_FLA
fcf0: 47 53 29 20 24 28 4f 50 54 53 29 20 66 74 73 35  GS) $(OPTS) fts5 fd00: 70 61 72 73 65 2e 79 0a 0a 66 74 73 35 70 61 72 parse.y..fts5par fd10: 73 65 2e 68 3a 09 66 74 73 35 70 61 72 73 65 2e se.h:.fts5parse. fd20: 63 0a 0a 66 74 73 35 2e 63 3a 09 24 28 46 54 53 c..fts5.c:.$(FTS
fd30: 35 5f 53 52 43 29 0a 09 24 28 54 43 4c 53 48 5f  5_SRC)..$(TCLSH_ fd40: 43 4d 44 29 20 24 28 54 4f 50 29 5c 65 78 74 5c CMD)$(TOP)\ext\
fd50: 66 74 73 35 5c 74 6f 6f 6c 5c 6d 6b 66 74 73 35  fts5\tool\mkfts5
fd60: 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 28 54 4f  c.tcl..copy $(TO fd70: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 P)\ext\fts5\fts5 fd80: 2e 68 20 2e 0a 0a 6c 73 6d 31 2e 63 3a 09 24 28 .h ...lsm1.c:.$(
fd90: 4c 53 4d 31 5f 53 52 43 29 0a 09 24 28 54 43 4c  LSM1_SRC)..$(TCL fda0: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 65 SH_CMD)$(TOP)\e
fdb0: 78 74 5c 6c 73 6d 31 5c 74 6f 6f 6c 5c 6d 6b 6c  xt\lsm1\tool\mkl
fdc0: 73 6d 31 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24  sm1c.tcl..copy $fdd0: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c (TOP)\ext\lsm1\l fde0: 73 6d 2e 68 20 2e 0a 0a 66 74 73 35 2e 6c 6f 3a sm.h ...fts5.lo: fdf0: 09 66 74 73 35 2e 63 20 24 28 48 44 52 29 20 24 .fts5.c$(HDR) $fe00: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
fe10: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO fe20: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f MPILE_OPTS)$(NO
fe30: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
fe40: 43 4f 52 45 20 2d 63 20 66 74 73 35 2e 63 0a 0a  CORE -c fts5.c..
fe50: 66 74 73 35 5f 65 78 74 2e 6c 6f 3a 09 66 74 73  fts5_ext.lo:.fts
fe60: 35 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  5.c $(HDR)$(EXT
fe70: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL fe80: 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63 E)$(NO_WARN) -c
fe90: 20 66 74 73 35 2e 63 0a 0a 66 74 73 35 2e 64 6c   fts5.c..fts5.dl
fea0: 6c 3a 09 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 09  l:.fts5_ext.lo..
feb0: 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53 29  $(LD)$(LDFLAGS)
fec0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24   $(LTLINKOPTS)$
fed0: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44 4c  (LTLIBPATHS) /DL
fee0: 4c 20 2f 4f 55 54 3a 24 40 20 66 74 73 35 5f 65  L /OUT:$@ fts5_e fef0: 78 74 2e 6c 6f 0a 0a 73 71 6c 69 74 65 33 72 62 xt.lo..sqlite3rb ff00: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 u.lo:.$(TOP)\ext
ff10: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e  \rbu\sqlite3rbu.
ff20: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
ff30: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) ff40: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - ff50: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 c$(TOP)\ext\rbu
ff60: 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 0a 0a 23  \sqlite3rbu.c..#
ff70: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build
ff80: 74 68 65 20 27 74 65 73 74 66 69 78 74 75 72 65  the 'testfixture
ff90: 27 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 23  ' application..#
ffa0: 0a 23 20 49 66 20 75 73 69 6e 67 20 74 68 65 20  .# If using the
ffb0: 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c 20 75 73  amalgamation, us
ffc0: 65 20 73 71 6c 69 74 65 33 2e 63 20 64 69 72 65  e sqlite3.c dire
ffd0: 63 74 6c 79 20 74 6f 20 62 75 69 6c 64 20 74 68  ctly to build th
ffe0: 65 20 74 65 73 74 0a 23 20 66 69 78 74 75 72 65  e test.# fixture
fff0: 2e 20 20 4f 74 68 65 72 77 69 73 65 20 6c 69 6e  .  Otherwise lin
10000 6b 20 61 67 61 69 6e 73 74 20 6c 69 62 73 71 6c  k against libsql
10010 69 74 65 33 2e 6c 69 62 2e 20 20 28 54 68 69 73  ite3.lib.  (This
10020 20 64 69 73 74 69 6e 63 74 69 6f 6e 20 69 73 0a   distinction is.
10030 23 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61  # necessary beca
10040 75 73 65 20 74 68 65 20 74 65 73 74 20 66 69 78  use the test fix
10050 74 75 72 65 20 72 65 71 75 69 72 65 73 20 6e 6f  ture requires no
10060 6e 2d 41 50 49 20 73 79 6d 62 6f 6c 73 20 77 68  n-API symbols wh
10070 69 63 68 20 61 72 65 0a 23 20 68 69 64 64 65 6e  ich are.# hidden
10080 20 77 68 65 6e 20 74 68 65 20 6c 69 62 72 61 72   when the librar
10090 79 20 69 73 20 62 75 69 6c 74 20 76 69 61 20 74  y is built via t
100a0 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29  he amalgamation)
100b0 2e 0a 23 0a 54 45 53 54 46 49 58 54 55 52 45 5f  ..#.TESTFIXTURE_
100c0 46 4c 41 47 53 20 3d 20 2d 44 54 43 4c 53 48 5f  FLAGS = -DTCLSH_
100d0 49 4e 49 54 5f 50 52 4f 43 3d 73 71 6c 69 74 65  INIT_PROC=sqlite
100e0 33 54 65 73 74 49 6e 69 74 20 2d 44 53 51 4c 49  3TestInit -DSQLI
100f0 54 45 5f 54 45 53 54 3d 31 20 2d 44 53 51 4c 49  TE_TEST=1 -DSQLI
10100 54 45 5f 43 52 41 53 48 5f 54 45 53 54 3d 31 0a  TE_CRASH_TEST=1.
10110 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
10120 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52  S = $(TESTFIXTUR 10130 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 E_FLAGS) -DSQLIT 10140 45 5f 53 45 52 56 45 52 3d 31 20 2d 44 53 51 4c E_SERVER=1 -DSQL 10150 49 54 45 5f 50 52 49 56 41 54 45 3d 22 22 0a 54 ITE_PRIVATE="".T 10160 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 ESTFIXTURE_FLAGS 10170 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 =$(TESTFIXTURE
10180 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45  _FLAGS) -DSQLITE
10190 5f 43 4f 52 45 20 24 28 4e 4f 5f 57 41 52 4e 29  _CORE $(NO_WARN) 101a0 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 .TESTFIXTURE_FLA 101b0 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 GS =$(TESTFIXTU
101c0 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
101d0 54 45 5f 53 45 52 49 45 53 5f 43 4f 4e 53 54 52  TE_SERIES_CONSTR
101e0 41 49 4e 54 5f 56 45 52 49 46 59 3d 31 0a 54 45  AINT_VERIFY=1.TE
101f0 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20  STFIXTURE_FLAGS
10200 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  = $(TESTFIXTURE_ 10210 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f FLAGS) -DSQLITE_ 10220 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a DEFAULT_PAGE_SIZ 10230 45 3d 31 30 32 34 0a 54 45 53 54 46 49 58 54 55 E=1024.TESTFIXTU 10240 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 RE_FLAGS =$(TES
10250 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20  TFIXTURE_FLAGS)
10260 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
10270 53 54 4d 54 56 54 41 42 0a 54 45 53 54 46 49 58  STMTVTAB.TESTFIX
10280 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54  TURE_FLAGS = $(T 10290 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 ESTFIXTURE_FLAGS 102a0 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c ) -DSQLITE_ENABL 102b0 45 5f 44 42 50 41 47 45 5f 56 54 41 42 0a 54 45 E_DBPAGE_VTAB.TE 102c0 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 STFIXTURE_FLAGS 102d0 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f =$(TESTFIXTURE_
102e0 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
102f0 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a 54 45 53  ENABLE_JSON1.TES
10300 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d  TFIXTURE_FLAGS =
10310 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 46   $(TESTFIXTURE_F 10320 4c 41 47 53 29 20 24 28 54 45 53 54 5f 43 43 4f LAGS)$(TEST_CCO
10330 4e 56 5f 4f 50 54 53 29 0a 0a 54 45 53 54 46 49  NV_OPTS)..TESTFI
10340 58 54 55 52 45 5f 53 52 43 30 20 3d 20 24 28 54  XTURE_SRC0 = $(T 10350 45 53 54 45 58 54 29 20 24 28 54 45 53 54 53 52 ESTEXT)$(TESTSR
10360 43 32 29 0a 54 45 53 54 46 49 58 54 55 52 45 5f  C2).TESTFIXTURE_
10370 53 52 43 31 20 3d 20 24 28 54 45 53 54 45 58 54  SRC1 = $(TESTEXT 10380 29 20 24 28 53 51 4c 49 54 45 33 43 29 0a 21 49 )$(SQLITE3C).!I
10390 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41  F $(USE_AMALGAMA 103a0 54 49 4f 4e 29 3d 3d 30 0a 54 45 53 54 46 49 58 TION)==0.TESTFIX 103b0 54 55 52 45 5f 53 52 43 20 3d 20 24 28 54 45 53 TURE_SRC =$(TES
103c0 54 53 52 43 29 20 24 28 54 4f 50 29 5c 73 72 63  TSRC) $(TOP)\src 103d0 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 \tclsqlite.c$(T
103e0 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 30 29  ESTFIXTURE_SRC0)
103f0 0a 21 45 4c 53 45 0a 54 45 53 54 46 49 58 54 55  .!ELSE.TESTFIXTU
10400 52 45 5f 53 52 43 20 3d 20 24 28 54 45 53 54 53  RE_SRC = $(TESTS 10410 52 43 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 RC)$(TOP)\src\t
10420 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 45 53  clsqlite.c $(TES 10430 54 46 49 58 54 55 52 45 5f 53 52 43 31 29 0a 21 TFIXTURE_SRC1).! 10440 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 55 53 45 ENDIF..!IF$(USE
10450 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20  _STDCALL)!=0 ||
10460 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a  $(FOR_WIN10)!=0. 10470 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e sqlite_tclDecls. 10480 68 3a 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 66 h:..echo #ifndef 10490 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 3e SQLITE_TCLAPI > 104a0 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c$(SQLITETCLDECL
104b0 53 48 29 0a 09 65 63 68 6f 20 23 20 20 64 65 66  SH)..echo #  def
104c0 69 6e 65 20 53 51 4c 49 54 45 5f 54 43 4c 41 50  ine SQLITE_TCLAP
104d0 49 20 3e 3e 20 24 28 53 51 4c 49 54 45 54 43 4c  I >> $(SQLITETCL 104e0 44 45 43 4c 53 48 29 0a 09 65 63 68 6f 20 23 65 DECLSH)..echo #e 104f0 6e 64 69 66 20 3e 3e 20 24 28 53 51 4c 49 54 45 ndif >>$(SQLITE
10500 54 43 4c 44 45 43 4c 53 48 29 0a 09 74 79 70 65  TCLDECLSH)..type
10510 20 22 24 28 54 43 4c 49 4e 43 44 49 52 29 5c 74   "$(TCLINCDIR)\t 10520 63 6c 44 65 63 6c 73 2e 68 22 20 5c 0a 09 09 7c clDecls.h" \...| 10530 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28$(TCLSH_CMD) $( 10540 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 TOP)\tool\replac 10550 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5e 28 e.tcl regsub "^( 10560 45 58 54 45 52 4e 28 3f 3a 20 43 4f 4e 53 54 5c EXTERN(?: CONST\ 10570 64 2b 3f 29 3f 5c 73 2b 3f 5b 5e 5c 28 5d 2a 3f d+?)?\s+?[^\(]*? 10580 5c 73 2b 3f 29 54 63 6c 5f 22 20 22 5c 31 20 53 \s+?)Tcl_" "\1 S 10590 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c QLITE_TCLAPI Tcl 105a0 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 _" \...|$(TCLSH
105b0 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too 105c0 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re 105d0 67 73 75 62 20 22 5e 28 45 58 54 45 52 4e 5c 73 gsub "^(EXTERN\s 105e0 2b 3f 28 3f 3a 76 6f 69 64 7c 56 4f 49 44 29 5c +?(?:void|VOID)\ 105f0 73 2b 3f 29 54 63 6c 46 72 65 65 4f 62 6a 22 20 s+?)TclFreeObj" 10600 22 5c 31 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 "\1 SQLITE_TCLAP 10610 49 20 54 63 6c 46 72 65 65 4f 62 6a 22 20 5c 0a I TclFreeObj" \. 10620 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 ..|$(TCLSH_CMD)
10630 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70   $(TOP)\tool\rep 10640 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 lace.tcl regsub 10650 22 5c 28 5c 2a 74 63 6c 5f 22 20 22 28 53 51 4c "\(\*tcl_" "(SQL 10660 49 54 45 5f 54 43 4c 41 50 49 20 2a 74 63 6c 5f ITE_TCLAPI *tcl_ 10670 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f " \...|$(TCLSH_
10680 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool 10690 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 \replace.tcl reg 106a0 73 75 62 20 22 5c 28 5c 2a 74 63 6c 46 72 65 65 sub "\(\*tclFree 106b0 4f 62 6a 22 20 22 28 53 51 4c 49 54 45 5f 54 43 Obj" "(SQLITE_TC 106c0 4c 41 50 49 20 2a 74 63 6c 46 72 65 65 4f 62 6a LAPI *tclFreeObj 106d0 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f " \...|$(TCLSH_
106e0 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool 106f0 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 \replace.tcl reg 10700 73 75 62 20 22 5c 28 5c 2a 22 20 22 28 53 51 4c sub "\(\*" "(SQL 10710 49 54 45 5f 54 43 4c 41 50 49 20 2a 22 20 3e 3e ITE_TCLAPI *" >> 10720 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c$(SQLITETCLDECL
10730 53 48 29 0a 0a 73 71 6c 69 74 65 5f 74 63 6c 2e  SH)..sqlite_tcl.
10740 68 3a 0a 09 74 79 70 65 20 22 24 28 54 43 4c 49  h:..type "$(TCLI 10750 4e 43 44 49 52 29 5c 74 63 6c 2e 68 22 20 7c 20 NCDIR)\tcl.h" | 10760 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54$(TCLSH_CMD) $(T 10770 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 OP)\tool\replace 10780 2e 74 63 6c 20 65 78 61 63 74 20 74 63 6c 44 65 .tcl exact tclDe 10790 63 6c 73 2e 68 20 73 71 6c 69 74 65 5f 74 63 6c cls.h sqlite_tcl 107a0 44 65 63 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 28 Decls.h \...|$(
107b0 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP 107c0 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t 107d0 63 6c 20 72 65 67 73 75 62 20 22 74 79 70 65 64 cl regsub "typed 107e0 65 66 20 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 20 ef (.*?)\(Tcl_" 107f0 22 74 79 70 65 64 65 66 20 5c 31 20 28 53 51 4c "typedef \1 (SQL 10800 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22 ITE_TCLAPI Tcl_" 10810 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 \...|$(TCLSH_C
10820 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\ 10830 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 replace.tcl exac 10840 74 20 22 76 6f 69 64 20 28 2a 66 72 65 65 50 72 t "void (*freePr 10850 6f 63 29 22 20 22 76 6f 69 64 20 28 53 51 4c 49 oc)" "void (SQLI 10860 54 45 5f 54 43 4c 41 50 49 20 2a 66 72 65 65 50 TE_TCLAPI *freeP 10870 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54 43 roc)" \...|$(TC
10880 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\ 10890 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c tool\replace.tcl 108a0 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73 68 exact "Tcl_Hash 108b0 45 6e 74 72 79 20 2a 28 2a 66 69 6e 64 50 72 6f Entry *(*findPro 108c0 63 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 c)" "Tcl_HashEnt 108d0 72 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c 41 ry *(SQLITE_TCLA 108e0 50 49 20 2a 66 69 6e 64 50 72 6f 63 29 22 20 5c PI *findProc)" \ 108f0 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
10900 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re 10910 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 place.tcl exact 10920 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a "Tcl_HashEntry * 10930 28 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20 22 (*createProc)" " 10940 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a 28 Tcl_HashEntry *( 10950 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 63 SQLITE_TCLAPI *c 10960 72 65 61 74 65 50 72 6f 63 29 22 20 3e 3e 20 24 reateProc)" >>$
10970 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45 4e  (SQLITETCLH).!EN
10980 44 49 46 0a 0a 74 65 73 74 66 69 78 74 75 72 65  DIF..testfixture
10990 2e 65 78 65 3a 09 24 28 54 45 53 54 46 49 58 54  .exe:.$(TESTFIXT 109a0 55 52 45 5f 53 52 43 29 20 24 28 54 45 53 54 46 URE_SRC)$(TESTF
109b0 49 58 54 55 52 45 5f 44 45 50 29 20 24 28 53 51  IXTURE_DEP) $(SQ 109c0 4c 49 54 45 33 48 29 20 24 28 4c 49 42 52 45 53 LITE3H)$(LIBRES
109d0 4f 42 4a 53 29 20 24 28 48 44 52 29 20 24 28 53  OBJS) $(HDR)$(S
109e0 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09  QLITE_TCL_DEP)..
109f0 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49  $(LTLINK) -DSQLI 10a00 54 45 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 TE_NO_SYNC=1$(T
10a10 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
10a20 29 20 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71  ) \...-DBUILD_sq
10a30 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44  lite -I$(TCLINCD 10a40 49 52 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 IR) \...$(TESTFI
10a50 58 54 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f  XTURE_SRC) \.../
10a60 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) 10a70 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( 10a80 54 43 4c 4c 49 42 50 41 54 48 53 29 20 24 28 4c TCLLIBPATHS)$(L
10a90 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42  TLIBPATHS) $(LIB 10aa0 52 45 53 4f 42 4a 53 29 20 24 28 54 43 4c 4c 49 RESOBJS)$(TCLLI
10ab0 42 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28  BS) $(LTLIBS)$(
10ac0 54 4c 49 42 53 29 0a 0a 65 78 74 65 6e 73 69 6f  TLIBS)..extensio
10ad0 6e 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75  ntest:.testfixtu
10ae0 72 65 2e 65 78 65 20 74 65 73 74 6c 6f 61 64 65  re.exe testloade
10af0 78 74 2e 64 6c 6c 0a 09 40 73 65 74 20 50 41 54  xt.dll..@set PAT
10b00 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH); 10b10 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66$(PATH)...\testf
10b20 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP 10b30 29 5c 74 65 73 74 5c 6c 6f 61 64 65 78 74 2e 74 )\test\loadext.t 10b40 65 73 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a est$(TESTOPTS).
10b50 0a 66 75 6c 6c 74 65 73 74 3a 09 24 28 54 45 53  .fulltest:.$(TES 10b60 54 50 52 4f 47 53 29 20 66 75 7a 7a 74 65 73 74 TPROGS) fuzztest 10b70 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 ..@set PATH=$(LI
10b80 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48  BTCLPATH);$(PATH 10b90 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 )...\testfixture 10ba0 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 .exe$(TOP)\test
10bb0 5c 61 6c 6c 2e 74 65 73 74 20 24 28 54 45 53 54  \all.test $(TEST 10bc0 4f 50 54 53 29 0a 0a 73 6f 61 6b 74 65 73 74 3a OPTS)..soaktest: 10bd0 09 24 28 54 45 53 54 50 52 4f 47 53 29 0a 09 40 .$(TESTPROGS)..@
10be0 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43  set PATH=$(LIBTC 10bf0 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 LPATH);$(PATH)..
10c00 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  .\testfixture.ex
10c10 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 61 6c  e $(TOP)\test\al 10c20 6c 2e 74 65 73 74 20 2d 73 6f 61 6b 3d 31 20 24 l.test -soak=1$
10c30 28 54 45 53 54 4f 50 54 53 29 0a 0a 66 75 6c 6c  (TESTOPTS)..full
10c40 74 65 73 74 6f 6e 6c 79 3a 09 24 28 54 45 53 54  testonly:.$(TEST 10c50 50 52 4f 47 53 29 20 66 75 7a 7a 74 65 73 74 0a PROGS) fuzztest. 10c60 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 .@set PATH=$(LIB
10c70 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29  TCLPATH);$(PATH) 10c80 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e ...\testfixture. 10c90 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c exe$(TOP)\test\
10ca0 66 75 6c 6c 2e 74 65 73 74 0a 0a 71 75 65 72 79  full.test..query
10cb0 70 6c 61 6e 74 65 73 74 3a 09 74 65 73 74 66 69  plantest:.testfi
10cc0 78 74 75 72 65 2e 65 78 65 20 73 68 65 6c 6c 0a  xture.exe shell.
10cd0 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42  .@set PATH=$(LIB 10ce0 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 TCLPATH);$(PATH)
10cf0 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e  ...\testfixture.
10d00 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c  exe $(TOP)\test\ 10d10 70 65 72 6d 75 74 61 74 69 6f 6e 73 2e 74 65 73 permutations.tes 10d20 74 20 71 75 65 72 79 70 6c 61 6e 6e 65 72 20 24 t queryplanner$
10d30 28 54 45 53 54 4f 50 54 53 29 0a 0a 66 75 7a 7a  (TESTOPTS)..fuzz
10d40 74 65 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e  test:.fuzzcheck.
10d50 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b  exe...\fuzzcheck
10d60 2e 65 78 65 20 24 28 46 55 5a 5a 44 41 54 41 29  .exe $(FUZZDATA) 10d70 0a 0a 66 61 73 74 66 75 7a 7a 74 65 73 74 3a 09 ..fastfuzztest:. 10d80 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 0a 09 2e fuzzcheck.exe... 10d90 5c 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 2d \fuzzcheck.exe - 10da0 2d 6c 69 6d 69 74 2d 6d 65 6d 20 31 30 30 4d 20 -limit-mem 100M 10db0 24 28 46 55 5a 5a 44 41 54 41 29 0a 0a 23 20 4d$(FUZZDATA)..# M
10dc0 69 6e 69 6d 61 6c 20 74 65 73 74 69 6e 67 20 74  inimal testing t
10dd0 68 61 74 20 72 75 6e 73 20 69 6e 20 6c 65 73 73  hat runs in less
10de0 20 74 68 61 6e 20 33 20 6d 69 6e 75 74 65 73 20   than 3 minutes
10df0 28 6f 6e 20 61 20 66 61 73 74 20 6d 61 63 68 69  (on a fast machi
10e00 6e 65 29 0a 23 0a 71 75 69 63 6b 74 65 73 74 3a  ne).#.quicktest:
10e10 09 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65  .testfixture.exe
10e20 20 73 6f 75 72 63 65 74 65 73 74 0a 09 40 73 65   sourcetest..@se
10e30 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50  t PATH=$(LIBTCLP 10e40 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c ATH);$(PATH)...\
10e50 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
10e60 24 28 54 4f 50 29 5c 74 65 73 74 5c 65 78 74 72  $(TOP)\test\extr 10e70 61 71 75 69 63 6b 2e 74 65 73 74 20 24 28 54 45 aquick.test$(TE
10e80 53 54 4f 50 54 53 29 0a 0a 23 20 54 68 69 73 20  STOPTS)..# This
10e90 69 73 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 63 61  is the common ca
10ea0 73 65 2e 20 20 52 75 6e 20 6d 61 6e 79 20 74 65  se.  Run many te
10eb0 73 74 73 20 74 68 61 74 20 64 6f 20 6e 6f 74 20  sts that do not
10ec0 74 61 6b 65 20 74 6f 6f 20 6c 6f 6e 67 2c 0a 23  take too long,.#
10ed0 20 69 6e 63 6c 75 64 69 6e 67 20 66 75 7a 7a 63   including fuzzc
10ee0 68 65 63 6b 2c 20 73 71 6c 69 74 65 33 5f 61 6e  heck, sqlite3_an
10ef0 61 6c 79 7a 65 72 2c 20 61 6e 64 20 73 71 6c 64  alyzer, and sqld
10f00 69 66 66 20 74 65 73 74 73 2e 0a 23 0a 74 65 73  iff tests..#.tes
10f10 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53 29 20  t:.$(TESTPROGS) 10f20 73 6f 75 72 63 65 74 65 73 74 20 66 61 73 74 66 sourcetest fastf 10f30 75 7a 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 uzztest..@set PA 10f40 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 TH=$(LIBTCLPATH)
10f50 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74  ;$(PATH)...\test 10f60 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f fixture.exe$(TO
10f70 50 29 5c 74 65 73 74 5c 76 65 72 79 71 75 69 63  P)\test\veryquic
10f80 6b 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50 54  k.test $(TESTOPT 10f90 53 29 0a 0a 73 6d 6f 6b 65 74 65 73 74 3a 09 24 S)..smoketest:.$
10fa0 28 54 45 53 54 50 52 4f 47 53 29 0a 09 40 73 65  (TESTPROGS)..@se
10fb0 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50  t PATH=$(LIBTCLP 10fc0 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c ATH);$(PATH)...\
10fd0 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
10fe0 24 28 54 4f 50 29 5c 74 65 73 74 5c 6d 61 69 6e  $(TOP)\test\main 10ff0 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50 54 53 .test$(TESTOPTS
11000 29 0a 0a 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79  )..sqlite3_analy
11010 7a 65 72 2e 63 3a 09 24 28 53 51 4c 49 54 45 33  zer.c:.$(SQLITE3 11020 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 C)$(SQLITE3H) $11030 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c (TOP)\src\tclsql 11040 69 74 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f ite.c$(TOP)\too
11050 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20  l\spaceanal.tcl
11060 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 63 63  $(TOP)\tool\mkcc 11070 6f 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 5c 74 ode.tcl$(TOP)\t
11080 6f 6f 6c 5c 73 71 6c 69 74 65 33 5f 61 6e 61 6c  ool\sqlite3_anal
11090 79 7a 65 72 2e 63 2e 69 6e 20 24 28 53 51 4c 49  yzer.c.in $(SQLI 110a0 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 54 TE_TCL_DEP)..$(T
110b0 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) 110c0 5c 74 6f 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 \tool\mkccode.tc 110d0 6c 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 l$(TOP)\tool\sq
110e0 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63  lite3_analyzer.c
110f0 2e 69 6e 20 3e 20 24 40 0a 0a 73 71 6c 69 74 65  .in > $@..sqlite 11100 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 3_analyzer.exe:. 11110 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 sqlite3_analyzer 11120 2e 63 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 .c$(LIBRESOBJS)
11130 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
11140 5f 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73  _WARN) -DBUILD_s
11150 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43  qlite -I$(TCLINC 11160 44 49 52 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 DIR) sqlite3_ana 11170 6c 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e lyzer.c \.../lin 11180 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c k$(LDFLAGS) $(L 11190 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 54 43 4c TLINKOPTS)$(TCL
111a0 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c 49  LIBPATHS) $(LTLI 111b0 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53 BPATHS)$(LIBRES
111c0 4f 42 4a 53 29 20 24 28 54 43 4c 4c 49 42 53 29  OBJS) $(TCLLIBS) 111d0 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49$(LTLIBS) $(TLI 111e0 42 53 29 0a 0a 73 71 6c 74 63 6c 73 68 2e 63 3a BS)..sqltclsh.c: 111f0 20 73 71 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 sqlite3.c$(TOP
11200 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
11210 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71  c $(TOP)\tool\sq 11220 6c 74 63 6c 73 68 2e 74 63 6c 20 24 28 54 4f 50 ltclsh.tcl$(TOP
11230 29 5c 65 78 74 5c 6d 69 73 63 5c 61 70 70 65 6e  )\ext\misc\appen
11240 64 76 66 73 2e 63 20 24 28 54 4f 50 29 5c 74 6f  dvfs.c $(TOP)\to 11250 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 ol\mkccode.tcl$
11260 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63  (TOP)\tool\sqltc
11270 6c 73 68 2e 63 2e 69 6e 0a 09 24 28 54 43 4c 53  lsh.c.in..$(TCLS 11280 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
11290 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24  ol\mkccode.tcl $112a0 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63 (TOP)\tool\sqltc 112b0 6c 73 68 2e 63 2e 69 6e 20 3e 73 71 6c 74 63 6c lsh.c.in >sqltcl 112c0 73 68 2e 63 0a 0a 73 71 6c 74 63 6c 73 68 2e 65 sh.c..sqltclsh.e 112d0 78 65 3a 20 73 71 6c 74 63 6c 73 68 2e 63 20 20 xe: sqltclsh.c 112e0 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50$(SHELL_CORE_DEP
112f0 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a  ) $(LIBRESOBJS). 11300 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ 11310 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71 WARN) -DBUILD_sq 11320 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 lite -I$(TCLINCD
11330 49 52 29 20 73 71 6c 74 63 6c 73 68 2e 63 20 5c  IR) sqltclsh.c \
11340 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  .../link $(LDFLA 11350 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
11360 29 20 24 28 54 43 4c 4c 49 42 50 41 54 48 53 29  ) $(TCLLIBPATHS) 11370 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24$(LTLIBPATHS) $11380 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 54 (LIBRESOBJS)$(T
11390 43 4c 4c 49 42 53 29 20 24 28 4c 54 4c 49 42 53  CLLIBS) $(LTLIBS 113a0 29 20 24 28 54 4c 49 42 53 29 0a 0a 73 71 6c 69 )$(TLIBS)..sqli
113b0 74 65 33 5f 65 78 70 65 72 74 2e 65 78 65 3a 20  te3_expert.exe:
113c0 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 54 4f  $(SQLITE3C)$(TO
113d0 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71  P)\ext\expert\sq
113e0 6c 69 74 65 33 65 78 70 65 72 74 2e 68 20 24 28  lite3expert.h $( 113f0 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c TOP)\ext\expert\ 11400 73 71 6c 69 74 65 33 65 78 70 65 72 74 2e 63 20 sqlite3expert.c 11410 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72$(TOP)\ext\exper
11420 74 5c 65 78 70 65 72 74 2e 63 0a 09 24 28 4c 54  t\expert.c..$(LT 11430 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 LINK)$(NO_WARN)
11440 09 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65  .$(TOP)\ext\expe 11450 72 74 5c 73 71 6c 69 74 65 33 65 78 70 65 72 74 rt\sqlite3expert 11460 2e 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 .c$(TOP)\ext\ex
11470 70 65 72 74 5c 65 78 70 65 72 74 2e 63 20 24 28  pert\expert.c $( 11480 53 51 4c 49 54 45 33 43 29 20 24 28 54 4c 49 42 SQLITE3C)$(TLIB
11490 53 29 0a 0a 43 48 45 43 4b 45 52 5f 44 45 50 53  S)..CHECKER_DEPS
114a0 20 3d 5c 0a 20 20 24 28 54 4f 50 29 2f 74 6f 6f   =\.  $(TOP)/too 114b0 6c 2f 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 5c 0a l/mkccode.tcl \. 114c0 20 20 73 71 6c 69 74 65 33 2e 63 20 5c 0a 20 20 sqlite3.c \. 114d0 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71$(TOP)/src/tclsq
114e0 6c 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lite.c \.  $(TOP 114f0 29 2f 65 78 74 2f 72 65 70 61 69 72 2f 73 71 6c )/ext/repair/sql 11500 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 74 63 6c ite3_checker.tcl 11510 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f \.$(TOP)/ext/
11520 72 65 70 61 69 72 2f 63 68 65 63 6b 69 6e 64 65  repair/checkinde
11530 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65  x.c \.  $(TOP)/e 11540 78 74 2f 72 65 70 61 69 72 2f 63 68 65 63 6b 66 xt/repair/checkf 11550 72 65 65 6c 69 73 74 2e 63 20 5c 0a 20 20 24 28 reelist.c \.$(
11560 54 4f 50 29 2f 65 78 74 2f 6d 69 73 63 2f 62 74  TOP)/ext/misc/bt
11570 72 65 65 69 6e 66 6f 2e 63 20 5c 0a 20 20 24 28  reeinfo.c \.  $( 11580 54 4f 50 29 2f 65 78 74 2f 72 65 70 61 69 72 2f TOP)/ext/repair/ 11590 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e sqlite3_checker. 115a0 63 2e 69 6e 0a 0a 73 71 6c 69 74 65 33 5f 63 68 c.in..sqlite3_ch 115b0 65 63 6b 65 72 2e 63 3a 09 24 28 43 48 45 43 4b ecker.c:.$(CHECK
115c0 45 52 5f 44 45 50 53 29 0a 09 24 28 54 43 4c 53  ER_DEPS)..$(TCLS 115d0 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
115e0 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24  ol\mkccode.tcl $115f0 28 54 4f 50 29 5c 65 78 74 5c 72 65 70 61 69 72 (TOP)\ext\repair 11600 5c 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 \sqlite3_checker 11610 2e 63 2e 69 6e 20 3e 20 24 40 0a 0a 73 71 6c 69 .c.in >$@..sqli
11620 74 65 33 5f 63 68 65 63 6b 65 72 2e 65 78 65 3a  te3_checker.exe:
11630 09 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72  .sqlite3_checker
11640 2e 63 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29  .c $(LIBRESOBJS) 11650 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO 11660 5f 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 _WARN) -DBUILD_s 11670 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 qlite -I$(TCLINC
11680 44 49 52 29 20 73 71 6c 69 74 65 33 5f 63 68 65  DIR) sqlite3_che
11690 63 6b 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b  cker.c \.../link
116a0 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS)$(LT
116b0 4c 49 4e 4b 4f 50 54 53 29 20 24 28 54 43 4c 4c  LINKOPTS) $(TCLL 116c0 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c 49 42 IBPATHS)$(LTLIB
116d0 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53 4f  PATHS) $(LIBRESO 116e0 42 4a 53 29 20 24 28 54 43 4c 4c 49 42 53 29 20 BJS)$(TCLLIBS)
116f0 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42  $(LTLIBS)$(TLIB
11700 53 29 0a 0a 64 62 64 75 6d 70 2e 65 78 65 3a 09  S)..dbdump.exe:.
11710 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\ 11720 64 62 64 75 6d 70 2e 63 20 24 28 53 51 4c 49 54 dbdump.c$(SQLIT
11730 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29  E3C) $(SQLITE3H) 11740 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09$(LIBRESOBJS)..
11750 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
11760 41 52 4e 29 20 2d 44 44 42 44 55 4d 50 5f 53 54  ARN) -DDBDUMP_ST
11770 41 4e 44 41 4c 4f 4e 45 20 24 28 54 4f 50 29 5c  ANDALONE $(TOP)\ 11780 65 78 74 5c 6d 69 73 63 5c 64 62 64 75 6d 70 2e ext\misc\dbdump. 11790 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 5c 0a c$(SQLITE3C) \.
117a0 09 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ../link $(LDFLAG 117b0 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
117c0 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24   $(LTLIBPATHS)$
117d0 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c  (LIBRESOBJS) $(L 117e0 54 4c 49 42 53 29 0a 0a 74 65 73 74 6c 6f 61 64 TLIBS)..testload 117f0 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 ext.lo:.$(TOP)\s
11800 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e  rc\test_loadext.
11810 63 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  c $(SQLITE3H)..$
11820 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f  (LTCOMPILE) $(NO 11830 5f 57 41 52 4e 29 20 2d 63 20 24 28 54 4f 50 29 _WARN) -c$(TOP)
11840 5c 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78  \src\test_loadex
11850 74 2e 63 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74  t.c..testloadext
11860 2e 64 6c 6c 3a 09 74 65 73 74 6c 6f 61 64 65 78  .dll:.testloadex
11870 74 2e 6c 6f 0a 09 24 28 4c 44 29 20 24 28 4c 44  t.lo..$(LD)$(LD
11880 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 11890 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 PTS)$(LTLIBPATH
118a0 53 29 20 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40 20  S) /DLL /OUT:$@ 118b0 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a testloadext.lo.. 118c0 73 68 6f 77 64 62 2e 65 78 65 3a 09 24 28 54 4f showdb.exe:.$(TO
118d0 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63  P)\tool\showdb.c
118e0 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
118f0 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI 11900 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d NK)$(NO_WARN) -
11910 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
11920 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
11930 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
11940 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f  N \...$(TOP)\too 11950 6c 5c 73 68 6f 77 64 62 2e 63 20 24 28 53 51 4c l\showdb.c$(SQL
11960 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c  ITE3C) /link $(L 11970 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b DFLAGS)$(LTLINK
11980 4f 50 54 53 29 0a 0a 73 68 6f 77 73 74 61 74 34  OPTS)..showstat4
11990 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too 119a0 6c 5c 73 68 6f 77 73 74 61 74 34 2e 63 20 24 28 l\showstat4.c$(
119b0 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI 119c0 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
119d0 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ 119e0 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d LITE_THREADSAFE= 119f0 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 0 -DSQLITE_OMIT_ 11a00 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c LOAD_EXTENSION \ 11a10 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 ...$(TOP)\tool\s
11a20 68 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c  howstat4.c $(SQL 11a30 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c ITE3C) /link$(L
11a40 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK 11a50 4f 50 54 53 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e OPTS)..showjourn 11a60 61 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 al.exe:.$(TOP)\t
11a70 6f 6f 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e  ool\showjournal.
11a80 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28  c $(SQLITE3C)$(
11a90 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c  SQLITE3H)..$(LTL 11aa0 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 INK)$(NO_WARN)
11ab0 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53  -DSQLITE_THREADS
11ac0 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f  AFE=0 -DSQLITE_O
11ad0 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49  MIT_LOAD_EXTENSI
11ae0 4f 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f  ON \...$(TOP)\to 11af0 6f 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 ol\showjournal.c 11b00 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
11b10 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
11b20 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f  LTLINKOPTS)..sho
11b30 77 77 61 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29  wwal.exe:.$(TOP) 11b40 5c 74 6f 6f 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 \tool\showwal.c 11b50 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51$(SQLITE3C) $(SQ 11b60 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e LITE3H)..$(LTLIN
11b70 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  K) $(NO_WARN) -D 11b80 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 SQLITE_THREADSAF 11b90 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 E=0 -DSQLITE_OMI 11ba0 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e T_LOAD_EXTENSION 11bb0 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c \...$(TOP)\tool
11bc0 5c 73 68 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c  \showwal.c $(SQL 11bd0 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c ITE3C) /link$(L
11be0 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK 11bf0 4f 50 54 53 29 0a 0a 73 68 6f 77 73 68 6d 2e 65 OPTS)..showshm.e 11c00 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c xe:.$(TOP)\tool\
11c10 73 68 6f 77 73 68 6d 2e 63 0a 09 24 28 4c 54 4c  showshm.c..$(LTL 11c20 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 09 INK)$(NO_WARN).
11c30 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77  $(TOP)\tool\show 11c40 73 68 6d 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 shm.c /link$(LD
11c50 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 11c60 50 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 74 2e PTS)..changeset. 11c70 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c exe:.$(TOP)\ext\
11c80 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65  session\changese
11c90 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  t.c $(SQLITE3C) 11ca0 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c$(SQLITE3H)..$(L 11cb0 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e TLINK)$(NO_WARN
11cc0 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
11cd0 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45  DSAFE=0 -DSQLITE
11ce0 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e  _OMIT_LOAD_EXTEN
11cf0 53 49 4f 4e 20 5c 0a 09 09 2d 44 53 51 4c 49 54  SION \...-DSQLIT
11d00 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e  E_ENABLE_SESSION
11d10 3d 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  =1 -DSQLITE_ENAB
11d20 4c 45 5f 50 52 45 55 50 44 41 54 45 5f 48 4f 4f  LE_PREUPDATE_HOO
11d30 4b 3d 31 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65  K=1 \...$(TOP)\e 11d40 78 74 5c 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 xt\session\chang 11d50 65 73 65 74 2e 63 20 24 28 53 51 4c 49 54 45 33 eset.c$(SQLITE3
11d60 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA 11d70 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
11d80 29 0a 0a 66 74 73 33 76 69 65 77 2e 65 78 65 3a  )..fts3view.exe:
11d90 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3 11da0 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77 2e 63 \tool\fts3view.c 11db0 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S 11dc0 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
11dd0 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) - 11de0 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 DSQLITE_THREADSA 11df0 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d FE=0 -DSQLITE_OM 11e00 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f IT_LOAD_EXTENSIO 11e10 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 N \...$(TOP)\ext
11e20 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76  \fts3\tool\fts3v
11e30 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33 43  iew.c $(SQLITE3C 11e40 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 ) /link$(LDFLAG
11e50 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) 11e60 0a 0a 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e ..rollback-test. 11e70 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
11e80 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63  \rollback-test.c
11e90 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
11ea0 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI 11eb0 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d NK)$(NO_WARN) -
11ec0 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
11ed0 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
11ee0 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
11ef0 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f  N \...$(TOP)\too 11f00 6c 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e l\rollback-test. 11f10 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c c$(SQLITE3C) /l
11f20 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24  ink $(LDFLAGS)$
11f30 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4c 6f  (LTLINKOPTS)..Lo
11f40 67 45 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 29  gEst.exe:.$(TOP) 11f50 5c 74 6f 6f 6c 5c 6c 6f 67 65 73 74 2e 63 20 24 \tool\logest.c$
11f60 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54  (SQLITE3H)..$(LT 11f70 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 LINK)$(NO_WARN)
11f80 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67   $(TOP)\tool\Log 11f90 45 73 74 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 Est.c /link$(LD
11fa0 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 11fb0 50 54 53 29 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e PTS)..wordcount. 11fc0 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 exe:.$(TOP)\test
11fd0 5c 77 6f 72 64 63 6f 75 6e 74 2e 63 20 24 28 53  \wordcount.c $(S 11fe0 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
11ff0 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 12000 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
12010 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
12020 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
12030 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a  OAD_EXTENSION \.
12040 09 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f  ..$(TOP)\test\wo 12050 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 rdcount.c$(SQLI
12060 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD 12070 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
12080 50 54 53 29 0a 0a 73 70 65 65 64 74 65 73 74 31  PTS)..speedtest1
12090 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73  .exe:.$(TOP)\tes 120a0 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 20 24 t\speedtest1.c$
120b0 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL 120c0 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
120d0 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 53  ) $(NO_WARN)$(S
120e0 54 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  T_COMPILE_OPTS)
120f0 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f  -DSQLITE_OMIT_LO
12100 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09  AD_EXTENSION \..
12110 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 70 65  .$(TOP)\test\spe 12120 65 64 74 65 73 74 31 2e 63 20 24 28 53 51 4c 49 edtest1.c$(SQLI
12130 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD 12140 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
12150 50 54 53 29 0a 0a 6b 76 74 65 73 74 2e 65 78 65  PTS)..kvtest.exe
12160 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 6b 76  :.$(TOP)\test\kv 12170 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 test.c$(SQLITE3
12180 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. 12190 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W 121a0 41 52 4e 29 20 24 28 4b 56 5f 43 4f 4d 50 49 4c ARN)$(KV_COMPIL
121b0 45 5f 4f 50 54 53 29 20 5c 0a 09 09 24 28 54 4f  E_OPTS) \...$(TO 121c0 50 29 5c 74 65 73 74 5c 6b 76 74 65 73 74 2e 63 P)\test\kvtest.c 121d0 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
121e0 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
121f0 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72 62 75  LTLINKOPTS)..rbu
12200 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74  .exe:.$(TOP)\ext 12210 5c 72 62 75 5c 72 62 75 2e 63 20 24 28 54 4f 50 \rbu\rbu.c$(TOP
12220 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65  )\ext\rbu\sqlite
12230 33 72 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33  3rbu.c $(SQLITE3 12240 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 C)$(SQLITE3H)..
12250 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
12260 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  ARN) -DSQLITE_EN
12270 41 42 4c 45 5f 52 42 55 20 5c 0a 09 09 24 28 54  ABLE_RBU \...$(T 12280 4f 50 29 5c 65 78 74 5c 72 62 75 5c 72 62 75 2e OP)\ext\rbu\rbu. 12290 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c c$(SQLITE3C) /l
122a0 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24  ink $(LDFLAGS)$
122b0 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4c 53  (LTLINKOPTS)..LS
122c0 4d 44 49 52 3d 24 28 54 4f 50 29 5c 65 78 74 5c  MDIR=$(TOP)\ext\ 122d0 6c 73 6d 31 0a 21 49 4e 43 4c 55 44 45 20 24 28 lsm1.!INCLUDE$(
122e0 4c 53 4d 44 49 52 29 5c 4d 61 6b 65 66 69 6c 65  LSMDIR)\Makefile
122f0 2e 6d 73 63 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a  .msc..moreclean:
12300 09 63 6c 65 61 6e 0a 09 64 65 6c 20 2f 51 20 24  .clean..del /Q $12310 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c (SQLITE3C)$(SQL
12320 49 54 45 33 48 29 20 32 3e 4e 55 4c 0a 23 20 3c  ITE3H) 2>NUL.# <
12330 3c 2f 6d 61 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a  </mark>>..clean:
12340 0a 09 64 65 6c 20 2f 51 20 2a 2e 65 78 70 20 2a  ..del /Q *.exp *
12350 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20  .lo *.ilk *.lib
12360 2a 2e 6f 62 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64  *.obj *.ncb *.pd
12370 62 20 2a 2e 73 64 66 20 2a 2e 73 75 6f 20 32 3e  b *.sdf *.suo 2>
12380 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 2a 2e 62 73  NUL..del /Q *.bs
12390 63 20 2a 2e 64 65 66 20 2a 2e 63 6f 64 20 2a 2e  c *.def *.cod *.
123a0 64 61 20 2a 2e 62 62 20 2a 2e 62 62 67 20 2a 2e  da *.bb *.bbg *.
123b0 76 63 20 67 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55  vc gmon.out 2>NU
123c0 4c 0a 09 64 65 6c 20 2f 51 20 24 28 53 51 4c 49  L..del /Q $(SQLI 123d0 54 45 33 45 58 45 29 20 24 28 53 51 4c 49 54 45 TE3EXE)$(SQLITE
123e0 33 44 4c 4c 29 20 52 65 70 6c 61 63 65 2e 65 78  3DLL) Replace.ex
123f0 65 20 32 3e 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b  e 2>NUL.# <<mark
12400 3e 3e 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74  >>..del /Q sqlit
12410 65 33 2e 63 20 73 71 6c 69 74 65 33 2e 68 20 32  e3.c sqlite3.h 2
12420 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6f 70 63  >NUL..del /Q opc
12430 6f 64 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68  odes.c opcodes.h
12440 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6c   2>NUL..del /Q l
12450 65 6d 6f 6e 2e 2a 20 6c 65 6d 70 61 72 2e 63 20  emon.* lempar.c
12460 70 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64  parse.* 2>NUL..d
12470 65 6c 20 2f 51 20 6d 6b 73 6f 75 72 63 65 69 64  el /Q mksourceid
12480 2e 2a 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  .* mkkeywordhash
12490 2e 2a 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68  .* keywordhash.h
124a0 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6e   2>NUL..del /Q n
124b0 6f 74 61 73 68 61 72 65 64 6c 69 62 2e 2a 20 32  otasharedlib.* 2
124c0 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f  >NUL..-rmdir /Q/
124d0 53 20 2e 64 65 70 73 20 32 3e 4e 55 4c 0a 09 2d  S .deps 2>NUL..-
124e0 72 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73  rmdir /Q/S .libs
124f0 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f   2>NUL..-rmdir /
12500 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a 09  Q/S tsrc 2>NUL..
12510 64 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73  del /Q .target_s
12520 6f 75 72 63 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  ource 2>NUL..del
12530 20 2f 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65   /Q tclsqlite3.e
12540 78 65 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29  xe $(SQLITETCLH) 12550 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c$(SQLITETCLDECL
12560 53 48 29 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  SH) 2>NUL..del /
12570 51 20 6c 73 6d 2e 64 6c 6c 20 6c 73 6d 74 65 73  Q lsm.dll lsmtes
12580 74 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  t.exe 2>NUL..del
12590 20 2f 51 20 74 65 73 74 6c 6f 61 64 65 78 74 2e   /Q testloadext.
125a0 64 6c 6c 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  dll 2>NUL..del /
125b0 51 20 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  Q testfixture.ex
125c0 65 20 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a  e test.db 2>NUL.
125d0 09 64 65 6c 20 2f 51 20 4c 6f 67 45 73 74 2e 65  .del /Q LogEst.e
125e0 78 65 20 66 74 73 33 76 69 65 77 2e 65 78 65 20  xe fts3view.exe
125f0 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78  rollback-test.ex
12600 65 20 73 68 6f 77 64 62 2e 65 78 65 20 64 62 64  e showdb.exe dbd
12610 75 6d 70 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  ump.exe 2>NUL..d
12620 65 6c 20 2f 51 20 63 68 61 6e 67 65 73 65 74 2e  el /Q changeset.
12630 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  exe 2>NUL..del /
12640 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 78  Q showjournal.ex
12650 65 20 73 68 6f 77 73 74 61 74 34 2e 65 78 65 20  e showstat4.exe
12660 73 68 6f 77 77 61 6c 2e 65 78 65 20 73 70 65 65  showwal.exe spee
12670 64 74 65 73 74 31 2e 65 78 65 20 32 3e 4e 55 4c  dtest1.exe 2>NUL
12680 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 65  ..del /Q mpteste
12690 72 2e 65 78 65 20 77 6f 72 64 63 6f 75 6e 74 2e  r.exe wordcount.
126a0 65 78 65 20 72 62 75 2e 65 78 65 20 73 72 63 63  exe rbu.exe srcc
126b0 6b 31 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  k1.exe 2>NUL..de
126c0 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63 20 73  l /Q sqlite3.c s
126d0 71 6c 69 74 65 33 2d 2a 2e 63 20 32 3e 4e 55 4c  qlite3-*.c 2>NUL
126e0 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33  ..del /Q sqlite3
126f0 72 63 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  rc.h 2>NUL..del
12700 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69 74  /Q shell.c sqlit
12710 65 33 65 78 74 2e 68 20 73 71 6c 69 74 65 33 73  e3ext.h sqlite3s
12720 65 73 73 69 6f 6e 2e 68 20 32 3e 4e 55 4c 0a 09  ession.h 2>NUL..
12730 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 5f 61  del /Q sqlite3_a
12740 6e 61 6c 79 7a 65 72 2e 65 78 65 20 73 71 6c 69  nalyzer.exe sqli
12750 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 32  te3_analyzer.c 2
12760 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c  >NUL..del /Q sql
12770 69 74 65 2d 2a 2d 6f 75 74 70 75 74 2e 76 73 69  ite-*-output.vsi
12780 78 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  x 2>NUL..del /Q
12790 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65 20  fuzzershell.exe
127a0 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73 71  fuzzcheck.exe sq
127b0 6c 64 69 66 66 2e 65 78 65 20 64 62 68 61 73 68  ldiff.exe dbhash
127c0 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
127d0 2f 51 20 73 71 6c 74 63 6c 73 68 2e 2a 20 32 3e  /Q sqltclsh.* 2>
127e0 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 64 62 66 75  NUL..del /Q dbfu
127f0 7a 7a 2e 65 78 65 20 73 65 73 73 69 6f 6e 66 75  zz.exe sessionfu
12800 7a 7a 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  zz.exe 2>NUL..de
12810 6c 20 2f 51 20 6b 76 74 65 73 74 2e 65 78 65 20  l /Q kvtest.exe
12820 6f 73 73 73 68 65 6c 6c 2e 65 78 65 20 73 63 72  ossshell.exe scr
12830 75 62 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  ub.exe 2>NUL..de
12840 6c 20 2f 51 20 73 68 6f 77 73 68 6d 2e 65 78 65  l /Q showshm.exe
12850 20 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72   sqlite3_checker
12860 2e 2a 20 73 71 6c 69 74 65 33 5f 65 78 70 65 72  .* sqlite3_exper
12870 74 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  t.exe 2>NUL..del
12880 20 2f 51 20 66 74 73 35 2e 2a 20 66 74 73 35 70   /Q fts5.* fts5p
12890 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65  arse.* 2>NUL..de
128a0 6c 20 2f 51 20 6c 73 6d 2e 68 20 6c 73 6d 31 2e  l /Q lsm.h lsm1.
128b0 63 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d 61 72  c 2>NUL.# <</mar
128c0 6b 3e 3e 0a                                      k>>.