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

• File Makefile.msc — part of check-in [1e4b9e7c] at 2017-03-14 15:27:56 on branch trunk — Updates to the MSVC makefiles. (user: mistachkin size: 69273) [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 30  USE_FULLWARN = 0
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 75 73 65 20  is non-0 to use
0900: 74 68 65 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61  the Internationa
0910: 6c 20 43 6f 6d 70 6f 6e 65 6e 74 73 20 66 6f 72  l Components for
0920: 20 55 6e 69 63 6f 64 65 20 28 49 43 55 29 2e 0a   Unicode (ICU)..
0930: 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 49 43  #.!IFNDEF USE_IC
0940: 55 0a 55 53 45 5f 49 43 55 20 3d 20 30 0a 21 45  U.USE_ICU = 0.!E
0950: 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  NDIF.# <</mark>>
0960: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0970: 2d 30 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c  -0 to dynamicall
0980: 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 4d 53  y link to the MS
0990: 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  VC runtime libra
09a0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53  ry..#.!IFNDEF US
09b0: 45 5f 43 52 54 5f 44 4c 4c 0a 55 53 45 5f 43 52  E_CRT_DLL.USE_CR
09c0: 54 5f 44 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46  T_DLL = 0.!ENDIF
09d0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
09e0: 2d 30 20 74 6f 20 6c 69 6e 6b 20 74 6f 20 74 68  -0 to link to th
09f0: 65 20 52 50 43 52 54 34 20 6c 69 62 72 61 72 79  e RPCRT4 library
0a00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0a10: 52 50 43 52 54 34 5f 4c 49 42 0a 55 53 45 5f 52  RPCRT4_LIB.USE_R
0a20: 50 43 52 54 34 5f 4c 49 42 20 3d 20 30 0a 21 45  PCRT4_LIB = 0.!E
0a30: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
0a40: 20 6e 6f 6e 2d 30 20 74 6f 20 67 65 6e 65 72 61   non-0 to genera
0a50: 74 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65  te assembly code
0a60: 20 6c 69 73 74 69 6e 67 73 20 66 6f 72 20 74 68   listings for th
0a70: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 23 20  e source code.#
0a80: 66 69 6c 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  files..#.!IFNDEF
0a90: 20 55 53 45 5f 4c 49 53 54 49 4e 47 53 0a 55 53   USE_LISTINGS.US
0aa0: 45 5f 4c 49 53 54 49 4e 47 53 20 3d 20 30 0a 21  E_LISTINGS = 0.!
0ab0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0ac0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 61 74 74 65 6d  s non-0 to attem
0ad0: 70 74 20 73 65 74 74 69 6e 67 20 74 68 65 20 6e  pt setting the n
0ae0: 61 74 69 76 65 20 63 6f 6d 70 69 6c 65 72 20 61  ative compiler a
0af0: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 23 20 66  utomatically.# f
0b00: 6f 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69  or cross-compili
0b10: 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  ng the command l
0b20: 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65 64  ine tools needed
0b30: 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70   during the comp
0b40: 69 6c 61 74 69 6f 6e 0a 23 20 70 72 6f 63 65 73  ilation.# proces
0b50: 73 2e 0a 23 0a 21 49 46 4e 44 45 46 20 58 43 4f  s..#.!IFNDEF XCO
0b60: 4d 50 49 4c 45 0a 58 43 4f 4d 50 49 4c 45 20 3d  MPILE.XCOMPILE =
0b70: 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   0.!ENDIF..# Set
0b80: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75   this non-0 to u
0b90: 73 65 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69  se the native li
0ba0: 62 72 61 72 69 65 73 20 70 61 74 68 73 20 66 6f  braries paths fo
0bb0: 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e  r cross-compilin
0bc0: 67 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20  g.# the command
0bd0: 6c 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65  line tools neede
0be0: 64 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d  d during the com
0bf0: 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73  pilation process
0c00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0c10: 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 0a  NATIVE_LIBPATHS.
0c20: 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41  USE_NATIVE_LIBPA
0c30: 54 48 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  THS = 0.!ENDIF..
0c40: 23 20 53 65 74 20 74 68 69 73 20 30 20 74 6f 20  # Set this 0 to
0c50: 73 6b 69 70 20 74 68 65 20 63 6f 6d 70 69 6c 69  skip the compili
0c60: 6e 67 20 61 6e 64 20 65 6d 62 65 64 64 69 6e 67  ng and embedding
0c70: 20 6f 66 20 76 65 72 73 69 6f 6e 20 72 65 73 6f   of version reso
0c80: 75 72 63 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  urces..#.!IFNDEF
0c90: 20 55 53 45 5f 52 43 0a 55 53 45 5f 52 43 20 3d   USE_RC.USE_RC =
0ca0: 20 31 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   1.!ENDIF..# Set
0cb0: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63   this non-0 to c
0cc0: 6f 6d 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20  ompile binaries
0cd0: 73 75 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65  suitable for the
0ce0: 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65   WinRT environme
0cf0: 6e 74 2e 0a 23 20 54 68 69 73 20 73 65 74 74 69  nt..# This setti
0d00: 6e 67 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c  ng does not appl
0d10: 79 20 74 6f 20 61 6e 79 20 62 69 6e 61 72 69 65  y to any binarie
0d20: 73 20 74 68 61 74 20 72 65 71 75 69 72 65 20 54  s that require T
0d30: 63 6c 20 74 6f 20 6f 70 65 72 61 74 65 0a 23 20  cl to operate.#
0d40: 70 72 6f 70 65 72 6c 79 20 28 69 2e 65 2e 20 74  properly (i.e. t
0d50: 68 65 20 74 65 78 74 20 66 69 78 74 75 72 65 2c  he text fixture,
0d60: 20 65 74 63 29 2e 0a 23 0a 21 49 46 4e 44 45 46   etc)..#.!IFNDEF
0d70: 20 46 4f 52 5f 57 49 4e 52 54 0a 46 4f 52 5f 57   FOR_WINRT.FOR_W
0d80: 49 4e 52 54 20 3d 20 30 0a 21 45 4e 44 49 46 0a  INRT = 0.!ENDIF.
0d90: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0da0: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0db0: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0dc0: 6f 72 20 74 68 65 20 55 57 50 20 65 6e 76 69 72  or the UWP envir
0dd0: 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68 69 73 20 73  onment..# This s
0de0: 65 74 74 69 6e 67 20 64 6f 65 73 20 6e 6f 74 20  etting does not
0df0: 61 70 70 6c 79 20 74 6f 20 61 6e 79 20 62 69 6e  apply to any bin
0e00: 61 72 69 65 73 20 74 68 61 74 20 72 65 71 75 69  aries that requi
0e10: 72 65 20 54 63 6c 20 74 6f 20 6f 70 65 72 61 74  re Tcl to operat
0e20: 65 0a 23 20 70 72 6f 70 65 72 6c 79 20 28 69 2e  e.# properly (i.
0e30: 65 2e 20 74 68 65 20 74 65 78 74 20 66 69 78 74  e. the text fixt
0e40: 75 72 65 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46  ure, etc)..#.!IF
0e50: 4e 44 45 46 20 46 4f 52 5f 55 57 50 0a 46 4f 52  NDEF FOR_UWP.FOR
0e60: 5f 55 57 50 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _UWP = 0.!ENDIF.
0e70: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0e80: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0e90: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0ea0: 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31  or the Windows 1
0eb0: 30 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 49  0 platform..#.!I
0ec0: 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e 31 30 0a  FNDEF FOR_WIN10.
0ed0: 46 4f 52 5f 57 49 4e 31 30 20 3d 20 30 0a 21 45  FOR_WIN10 = 0.!E
0ee0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
0ef0: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0f00: 30 20 74 6f 20 73 6b 69 70 20 61 74 74 65 6d 70  0 to skip attemp
0f10: 74 69 6e 67 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72  ting to look for
0f20: 20 61 6e 64 2f 6f 72 20 6c 69 6e 6b 20 77 69 74   and/or link wit
0f30: 68 20 74 68 65 20 54 63 6c 0a 23 20 72 75 6e 74  h the Tcl.# runt
0f40: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
0f50: 49 46 4e 44 45 46 20 4e 4f 5f 54 43 4c 0a 4e 4f  IFNDEF NO_TCL.NO
0f60: 5f 54 43 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _TCL = 0.!ENDIF.
0f70: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53  # <</mark>>..# S
0f80: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
0f90: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
0fa0: 73 65 20 50 44 42 73 2e 0a 23 0a 21 49 46 4e 44  se PDBs..#.!IFND
0fb0: 45 46 20 53 59 4d 42 4f 4c 53 0a 53 59 4d 42 4f  EF SYMBOLS.SYMBO
0fc0: 4c 53 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a 23  LS = 1.!ENDIF..#
0fd0: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0fe0: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 53 51  -0 to use the SQ
0ff0: 4c 69 74 65 20 64 65 62 75 67 67 69 6e 67 20 68  Lite debugging h
1000: 65 61 70 20 73 75 62 73 79 73 74 65 6d 2e 0a 23  eap subsystem..#
1010: 0a 21 49 46 4e 44 45 46 20 4d 45 4d 44 45 42 55  .!IFNDEF MEMDEBU
1020: 47 0a 4d 45 4d 44 45 42 55 47 20 3d 20 30 0a 21  G.MEMDEBUG = 0.!
1030: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
1040: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
1050: 65 20 74 68 65 20 57 69 6e 33 32 20 6e 61 74 69  e the Win32 nati
1060: 76 65 20 68 65 61 70 20 73 75 62 73 79 73 74 65  ve heap subsyste
1070: 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 57 49 4e  m..#.!IFNDEF WIN
1080: 33 32 48 45 41 50 0a 57 49 4e 33 32 48 45 41 50  32HEAP.WIN32HEAP
1090: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53   = 0.!ENDIF..# S
10a0: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
10b0: 20 74 6f 20 65 6e 61 62 6c 65 20 4f 53 54 52 41   to enable OSTRA
10c0: 43 45 28 29 20 6d 61 63 72 6f 73 2c 20 77 68 69  CE() macros, whi
10d0: 63 68 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c  ch can be useful
10e0: 20 77 68 65 6e 0a 23 20 64 65 62 75 67 67 69 6e   when.# debuggin
10f0: 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4f 53 54  g..#.!IFNDEF OST
1100: 52 41 43 45 0a 4f 53 54 52 41 43 45 20 3d 20 30  RACE.OSTRACE = 0
1110: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1120: 68 69 73 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68  his to one of th
1130: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75  e following valu
1140: 65 73 20 74 6f 20 65 6e 61 62 6c 65 20 76 61 72  es to enable var
1150: 69 6f 75 73 20 64 65 62 75 67 67 69 6e 67 0a 23  ious debugging.#
1160: 20 66 65 61 74 75 72 65 73 2e 20 20 45 61 63 68   features.  Each
1170: 20 6c 65 76 65 6c 20 69 6e 63 6c 75 64 65 73 20   level includes
1180: 74 68 65 20 64 65 62 75 67 67 69 6e 67 20 6f 70  the debugging op
1190: 74 69 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 70  tions from the p
11a0: 72 65 76 69 6f 75 73 0a 23 20 6c 65 76 65 6c 73  revious.# levels
11b0: 2e 20 20 43 75 72 72 65 6e 74 6c 79 2c 20 74 68  .  Currently, th
11c0: 65 20 72 65 63 6f 67 6e 69 7a 65 64 20 76 61 6c  e recognized val
11d0: 75 65 73 20 66 6f 72 20 44 45 42 55 47 20 61 72  ues for DEBUG ar
11e0: 65 3a 0a 23 0a 23 20 30 20 3d 3d 20 4e 44 45 42  e:.#.# 0 == NDEB
11f0: 55 47 3a 20 44 69 73 61 62 6c 65 73 20 61 73 73  UG: Disables ass
1200: 65 72 74 28 29 20 61 6e 64 20 6f 74 68 65 72 20  ert() and other
1210: 72 75 6e 74 69 6d 65 20 64 69 61 67 6e 6f 73 74  runtime diagnost
1220: 69 63 73 2e 0a 23 20 31 20 3d 3d 20 53 51 4c 49  ics..# 1 == SQLI
1230: 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52  TE_ENABLE_API_AR
1240: 4d 4f 52 3a 20 65 78 74 72 61 20 61 74 74 65 6d  MOR: extra attem
1250: 70 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69  pts to detect mi
1260: 73 75 73 65 20 6f 66 20 74 68 65 20 41 50 49 2e  suse of the API.
1270: 0a 23 20 32 20 3d 3d 20 44 69 73 61 62 6c 65 73  .# 2 == Disables
1280: 20 4e 44 45 42 55 47 20 61 6e 64 20 61 6c 6c 20   NDEBUG and all
1290: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 6e  optimizations an
12a0: 64 20 74 68 65 6e 20 65 6e 61 62 6c 65 73 20 50  d then enables P
12b0: 44 42 73 2e 0a 23 20 33 20 3d 3d 20 53 51 4c 49  DBs..# 3 == SQLI
12c0: 54 45 5f 44 45 42 55 47 3a 20 45 6e 61 62 6c 65  TE_DEBUG: Enable
12d0: 73 20 76 61 72 69 6f 75 73 20 64 69 61 67 6e 6f  s various diagno
12e0: 73 74 69 63 73 20 6d 65 73 73 61 67 65 73 20 61  stics messages a
12f0: 6e 64 20 63 6f 64 65 2e 0a 23 20 34 20 3d 3d 20  nd code..# 4 ==
1300: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c  SQLITE_WIN32_MAL
1310: 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3a 20 56 61  LOC_VALIDATE: Va
1320: 6c 69 64 61 74 65 20 74 68 65 20 57 69 6e 33 32  lidate the Win32
1330: 20 6e 61 74 69 76 65 20 68 65 61 70 20 70 65 72   native heap per
1340: 20 63 61 6c 6c 2e 0a 23 20 35 20 3d 3d 20 53 51   call..# 5 == SQ
1350: 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54 52  LITE_DEBUG_OS_TR
1360: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
1370: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 4f 53 54  put from the OST
1380: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
1390: 20 36 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41   6 == SQLITE_ENA
13a0: 42 4c 45 5f 49 4f 54 52 41 43 45 3a 20 45 6e 61  BLE_IOTRACE: Ena
13b0: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
13c0: 20 74 68 65 20 49 4f 54 52 41 43 45 28 29 20 6d   the IOTRACE() m
13d0: 61 63 72 6f 73 2e 0a 23 0a 21 49 46 4e 44 45 46  acros..#.!IFNDEF
13e0: 20 44 45 42 55 47 0a 44 45 42 55 47 20 3d 20 30   DEBUG.DEBUG = 0
13f0: 0a 21 45 4e 44 49 46 0a 0a 23 20 45 6e 61 62 6c  .!ENDIF..# Enabl
1400: 65 20 75 73 65 20 6f 66 20 61 76 61 69 6c 61 62  e use of availab
1410: 6c 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  le compiler opti
1420: 6d 69 7a 61 74 69 6f 6e 73 3f 20 20 4e 6f 72 6d  mizations?  Norm
1430: 61 6c 6c 79 2c 20 74 68 69 73 20 73 68 6f 75 6c  ally, this shoul
1440: 64 20 62 65 0a 23 20 6e 6f 6e 2d 7a 65 72 6f 2e  d be.# non-zero.
1450: 20 20 53 65 74 74 69 6e 67 20 74 68 69 73 20 74    Setting this t
1460: 6f 20 7a 65 72 6f 2c 20 74 68 75 73 20 64 69 73  o zero, thus dis
1470: 61 62 6c 69 6e 67 20 61 6c 6c 20 63 6f 6d 70 69  abling all compi
1480: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
1490: 73 2c 0a 23 20 63 61 6e 20 62 65 20 75 73 65 66  s,.# can be usef
14a0: 75 6c 20 66 6f 72 20 74 65 73 74 69 6e 67 2e 0a  ul for testing..
14b0: 23 0a 21 49 46 4e 44 45 46 20 4f 50 54 49 4d 49  #.!IFNDEF OPTIMI
14c0: 5a 41 54 49 4f 4e 53 0a 4f 50 54 49 4d 49 5a 41  ZATIONS.OPTIMIZA
14d0: 54 49 4f 4e 53 20 3d 20 32 0a 21 45 4e 44 49 46  TIONS = 2.!ENDIF
14e0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20  ..# Set this to
14f0: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable
1500: 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68 65 20  support for the
1510: 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f  session extensio
1520: 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 45 53  n..#.!IFNDEF SES
1530: 53 49 4f 4e 0a 53 45 53 53 49 4f 4e 20 3d 20 30  SION.SESSION = 0
1540: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1550: 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  he source code f
1560: 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 20 62  ile to be used b
1570: 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 61 6e  y executables an
1580: 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 65 6e  d libraries when
1590: 0a 23 20 74 68 65 79 20 6e 65 65 64 20 74 68 65  .# they need the
15a0: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 0a 23   amalgamation..#
15b0: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33  .!IFNDEF SQLITE3
15c0: 43 0a 21 49 46 20 24 28 53 50 4c 49 54 5f 41 4d  C.!IF $(SPLIT_AM 15d0: 41 4c 47 41 4d 41 54 49 4f 4e 29 21 3d 30 0a 53 ALGAMATION)!=0.S 15e0: 51 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65 QLITE3C = sqlite 15f0: 33 2d 61 6c 6c 2e 63 0a 21 45 4c 53 45 0a 53 51 3-all.c.!ELSE.SQ 1600: 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65 33 LITE3C = sqlite3 1610: 2e 63 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 .c.!ENDIF.!ENDIF 1620: 0a 0a 23 20 53 65 74 20 74 68 65 20 69 6e 63 6c ..# Set the incl 1630: 75 64 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f ude code file to 1640: 20 62 65 20 75 73 65 64 20 62 79 20 65 78 65 63 be used by exec 1650: 75 74 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 utables and libr 1660: 61 72 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 aries when.# the 1670: 79 20 6e 65 65 64 20 53 51 4c 69 74 65 2e 0a 23 y need SQLite..# 1680: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 .!IFNDEF SQLITE3 1690: 48 0a 53 51 4c 49 54 45 33 48 20 3d 20 73 71 6c H.SQLITE3H = sql 16a0: 69 74 65 33 2e 68 0a 21 45 4e 44 49 46 0a 0a 23 ite3.h.!ENDIF..# 16b0: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d This is the nam 16c0: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65 e to use for the 16d0: 20 53 51 4c 69 74 65 20 64 79 6e 61 6d 69 63 20 SQLite dynamic 16e0: 6c 69 6e 6b 20 6c 69 62 72 61 72 79 20 28 44 4c link library (DL 16f0: 4c 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 L)..#.!IFNDEF SQ 1700: 4c 49 54 45 33 44 4c 4c 0a 21 49 46 20 24 28 46 LITE3DLL.!IF$(F
1710: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c  OR_WIN10)!=0.SQL
1720: 49 54 45 33 44 4c 4c 20 3d 20 77 69 6e 73 71 6c  ITE3DLL = winsql
1730: 69 74 65 33 2e 64 6c 6c 0a 21 45 4c 53 45 0a 53  ite3.dll.!ELSE.S
1740: 51 4c 49 54 45 33 44 4c 4c 20 3d 20 73 71 6c 69  QLITE3DLL = sqli
1750: 74 65 33 2e 64 6c 6c 0a 21 45 4e 44 49 46 0a 21  te3.dll.!ENDIF.!
1760: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
1770: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65   the name to use
1780: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20   for the SQLite
1790: 69 6d 70 6f 72 74 20 6c 69 62 72 61 72 79 20 28  import library (
17a0: 4c 49 42 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  LIB)..#.!IFNDEF
17b0: 53 51 4c 49 54 45 33 4c 49 42 0a 21 49 46 20 24  SQLITE3LIB.!IF $17c0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 (FOR_WIN10)!=0.S 17d0: 51 4c 49 54 45 33 4c 49 42 20 3d 20 77 69 6e 73 QLITE3LIB = wins 17e0: 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45 qlite3.lib.!ELSE 17f0: 0a 53 51 4c 49 54 45 33 4c 49 42 20 3d 20 73 71 .SQLITE3LIB = sq 1800: 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4e 44 49 46 lite3.lib.!ENDIF 1810: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 .!ENDIF..# This 1820: 69 73 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 is the name to u 1830: 73 65 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 se for the SQLit 1840: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 e shell executab 1850: 6c 65 20 28 45 58 45 29 2e 0a 23 0a 21 49 46 4e le (EXE)..#.!IFN 1860: 44 45 46 20 53 51 4c 49 54 45 33 45 58 45 0a 21 DEF SQLITE3EXE.! 1870: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 IF$(FOR_WIN10)!
1880: 3d 30 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20  =0.SQLITE3EXE =
1890: 77 69 6e 73 71 6c 69 74 65 33 73 68 65 6c 6c 2e  winsqlite3shell.
18a0: 65 78 65 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45  exe.!ELSE.SQLITE
18b0: 33 45 58 45 20 3d 20 73 71 6c 69 74 65 33 2e 65  3EXE = sqlite3.e
18c0: 78 65 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  xe.!ENDIF.!ENDIF
18d0: 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20  ..# This is the
18e0: 61 72 67 75 6d 65 6e 74 20 75 73 65 64 20 74 6f  argument used to
18f0: 20 73 65 74 20 74 68 65 20 70 72 6f 67 72 61 6d   set the program
1900: 20 64 61 74 61 62 61 73 65 20 28 50 44 42 29 20   database (PDB)
1910: 66 69 6c 65 20 66 6f 72 20 74 68 65 0a 23 20 53  file for the.# S
1920: 51 4c 69 74 65 20 73 68 65 6c 6c 20 65 78 65 63  QLite shell exec
1930: 75 74 61 62 6c 65 20 28 45 58 45 29 2e 0a 23 0a  utable (EXE)..#.
1940: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 45  !IFNDEF SQLITE3E
1950: 58 45 50 44 42 0a 21 49 46 20 24 28 46 4f 52 5f  XEPDB.!IF $(FOR_ 1960: 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 WIN10)!=0.SQLITE 1970: 33 45 58 45 50 44 42 20 3d 0a 21 45 4c 53 45 0a 3EXEPDB =.!ELSE. 1980: 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 3d 20 SQLITE3EXEPDB = 1990: 2f 70 64 62 3a 73 71 6c 69 74 65 33 73 68 2e 70 /pdb:sqlite3sh.p 19a0: 64 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 db.!ENDIF.!ENDIF 19b0: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 ..# <<mark>>.# T 19c0: 68 65 73 65 20 61 72 65 20 74 68 65 20 6e 61 6d hese are the nam 19d0: 65 73 20 6f 66 20 74 68 65 20 63 75 73 74 6f 6d es of the custom 19e0: 69 7a 65 64 20 54 63 6c 20 68 65 61 64 65 72 20 ized Tcl header 19f0: 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 76 61 files used by va 1a00: 72 69 6f 75 73 20 70 61 72 74 73 0a 23 20 6f 66 rious parts.# of 1a10: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 77 this makefile w 1a20: 68 65 6e 20 74 68 65 20 73 74 64 63 61 6c 6c 20 hen the stdcall 1a30: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 calling conventi 1a40: 6f 6e 20 69 73 20 69 6e 20 75 73 65 2e 20 20 49 on is in use. I 1a50: 74 20 69 73 20 6e 6f 74 0a 23 20 75 73 65 64 20 t is not.# used 1a60: 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 70 75 for any other pu 1a70: 72 70 6f 73 65 2e 0a 23 0a 21 49 46 4e 44 45 46 rpose..#.!IFNDEF 1a80: 20 53 51 4c 49 54 45 54 43 4c 48 0a 53 51 4c 49 SQLITETCLH.SQLI 1a90: 54 45 54 43 4c 48 20 3d 20 73 71 6c 69 74 65 5f TETCLH = sqlite_ 1aa0: 74 63 6c 2e 68 0a 21 45 4e 44 49 46 0a 0a 21 49 tcl.h.!ENDIF..!I 1ab0: 46 4e 44 45 46 20 53 51 4c 49 54 45 54 43 4c 44 FNDEF SQLITETCLD 1ac0: 45 43 4c 53 48 0a 53 51 4c 49 54 45 54 43 4c 44 ECLSH.SQLITETCLD 1ad0: 45 43 4c 53 48 20 3d 20 73 71 6c 69 74 65 5f 74 ECLSH = sqlite_t 1ae0: 63 6c 44 65 63 6c 73 2e 68 0a 21 45 4e 44 49 46 clDecls.h.!ENDIF 1af0: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 ..# These are th 1b00: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72 e additional tar 1b10: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 74 61 gets that the ta 1b20: 72 67 65 74 73 20 74 68 61 74 20 69 6e 74 65 67 rgets that integ 1b30: 72 61 74 65 20 77 69 74 68 20 74 68 65 0a 23 20 rate with the.# 1b40: 54 63 6c 20 6c 69 62 72 61 72 79 20 73 68 6f 75 Tcl library shou 1b50: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 20 77 68 65 ld depend on whe 1b60: 6e 20 63 6f 6d 70 69 6c 69 6e 67 2c 20 65 74 63 n compiling, etc 1b70: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1b80: 54 45 5f 54 43 4c 5f 44 45 50 0a 21 49 46 20 24 TE_TCL_DEP.!IF$
1b90: 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30  (USE_STDCALL)!=0
1ba0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 1bb0: 21 3d 30 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44 !=0.SQLITE_TCL_D 1bc0: 45 50 20 3d 20 24 28 53 51 4c 49 54 45 54 43 4c EP =$(SQLITETCL
1bd0: 44 45 43 4c 53 48 29 20 24 28 53 51 4c 49 54 45  DECLSH) $(SQLITE 1be0: 54 43 4c 48 29 0a 21 45 4c 53 45 0a 53 51 4c 49 TCLH).!ELSE.SQLI 1bf0: 54 45 5f 54 43 4c 5f 44 45 50 20 3d 0a 21 45 4e TE_TCL_DEP =.!EN 1c00: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f DIF.!ENDIF.# <</ 1c10: 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68 65 73 65 20 mark>>..# These 1c20: 61 72 65 20 74 68 65 20 22 73 74 61 6e 64 61 72 are the "standar 1c30: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c d" SQLite compil 1c40: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 ation options us 1c50: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e ed when compilin 1c60: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 g for.# the Wind 1c70: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a ows platform..#. 1c80: 21 49 46 4e 44 45 46 20 4f 50 54 5f 46 45 41 54 !IFNDEF OPT_FEAT 1c90: 55 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 24 28 URE_FLAGS.!IF$(
1ca0: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
1cb0: 54 49 4f 4e 29 3d 3d 30 0a 4f 50 54 5f 46 45 41  TION)==0.OPT_FEA
1cc0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O 1cd0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 1ce0: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c ) -DSQLITE_ENABL 1cf0: 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f 46 45 41 E_FTS3=1.OPT_FEA 1d00: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f TURE_FLAGS =$(O
1d10: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
1d20: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
1d30: 45 5f 52 54 52 45 45 3d 31 0a 21 45 4e 44 49 46  E_RTREE=1.!ENDIF
1d40: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
1d50: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU 1d60: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1d70: 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e TE_ENABLE_COLUMN 1d80: 5f 4d 45 54 41 44 41 54 41 3d 31 0a 21 45 4e 44 _METADATA=1.!END 1d90: 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68 65 IF..# Should the 1da0: 20 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 session extensi 1db0: 6f 6e 20 62 65 20 65 6e 61 62 6c 65 64 3f 20 20 on be enabled? 1dc0: 49 66 20 73 6f 2c 20 61 64 64 20 63 6f 6d 70 69 If so, add compi 1dd0: 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23 lation options.# 1de0: 20 74 6f 20 65 6e 61 62 6c 65 20 69 74 2e 0a 23 to enable it..# 1df0: 0a 21 49 46 20 24 28 53 45 53 53 49 4f 4e 29 21 .!IF$(SESSION)!
1e00: 3d 30 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46  =0.OPT_FEATURE_F
1e10: 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41  LAGS = $(OPT_FEA 1e20: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 TURE_FLAGS) -DSQ 1e30: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 LITE_ENABLE_SESS 1e40: 49 4f 4e 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52 ION=1.OPT_FEATUR 1e50: 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f E_FLAGS =$(OPT_
1e60: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d  FEATURE_FLAGS) -
1e70: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 50  DSQLITE_ENABLE_P
1e80: 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a  REUPDATE_HOOK=1.
1e90: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20  !ENDIF..# These
1ea0: 61 72 65 20 74 68 65 20 22 65 78 74 65 6e 64 65  are the "extende
1eb0: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c  d" SQLite compil
1ec0: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73  ation options us
1ed0: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ed when compilin
1ee0: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64  g for.# the Wind
1ef0: 6f 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d 2e  ows 10 platform.
1f00: 0a 23 0a 21 49 46 4e 44 45 46 20 45 58 54 5f 46  .#.!IFNDEF EXT_F
1f10: 45 41 54 55 52 45 5f 46 4c 41 47 53 0a 21 49 46  EATURE_FLAGS.!IF
1f20: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 1f30: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 .EXT_FEATURE_FLA 1f40: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 GS =$(EXT_FEATU
1f50: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1f60: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 34 3d 31  TE_ENABLE_FTS4=1
1f70: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .EXT_FEATURE_FLA
1f80: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55  GS = $(EXT_FEATU 1f90: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1fa0: 54 45 5f 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43 TE_SYSTEM_MALLOC 1fb0: 3d 31 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 =1.EXT_FEATURE_F 1fc0: 4c 41 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 LAGS =$(EXT_FEA
1fd0: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
1fe0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54  LITE_OMIT_LOCALT
1ff0: 49 4d 45 3d 31 0a 21 45 4c 53 45 0a 45 58 54 5f  IME=1.!ELSE.EXT_
2000: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 0a  FEATURE_FLAGS =.
2010: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
2020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
2070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 45  ############## E
2090: 4e 44 20 4f 46 20 4f 50 54 49 4f 4e 53 20 23 23  ND OF OPTIONS ##
20a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
20c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a  ##############..
2110: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
2120: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73   for the Windows
2130: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 74 68   10 platform, th
2140: 65 20 50 4c 41 54 46 4f 52 4d 20 6d 61 63 72 6f  e PLATFORM macro
2150: 20 6d 75 73 74 20 62 65 20 73 65 74 0a 23 20 74   must be set.# t
2160: 6f 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65  o an appropriate
2170: 20 76 61 6c 75 65 20 28 65 2e 67 2e 20 78 38 36   value (e.g. x86
2180: 2c 20 78 36 34 2c 20 61 72 6d 2c 20 61 72 6d 36  , x64, arm, arm6
2190: 34 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46 20 24  4, etc)..#.!IF $21a0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 (FOR_WIN10)!=0.! 21b0: 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a IFNDEF PLATFORM. 21c0: 21 45 52 52 4f 52 20 55 73 69 6e 67 20 74 68 65 !ERROR Using the 21d0: 20 46 4f 52 5f 57 49 4e 31 30 20 6f 70 74 69 6f FOR_WIN10 optio 21e0: 6e 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c n requires a val 21f0: 75 65 20 66 6f 72 20 50 4c 41 54 46 4f 52 4d 2e ue for PLATFORM. 2200: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 2210: 23 20 54 68 69 73 20 61 73 73 75 6d 65 73 20 74 # This assumes t 2220: 68 61 74 20 4d 53 56 43 20 69 73 20 61 6c 77 61 hat MSVC is alwa 2230: 79 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 20 ys installed in 2240: 33 32 2d 62 69 74 20 50 72 6f 67 72 61 6d 20 46 32-bit Program F 2250: 69 6c 65 73 20 64 69 72 65 63 74 6f 72 79 0a 23 iles directory.# 2260: 20 61 6e 64 20 73 65 74 73 20 74 68 65 20 76 61 and sets the va 2270: 72 69 61 62 6c 65 20 66 6f 72 20 75 73 65 20 69 riable for use i 2280: 6e 20 6c 6f 63 61 74 69 6e 67 20 6f 74 68 65 72 n locating other 2290: 20 33 32 2d 62 69 74 20 69 6e 73 74 61 6c 6c 73 32-bit installs 22a0: 20 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a accordingly..#. 22b0: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 PROGRAMFILES_X86 22c0: 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 =$(VCINSTALLDI
22d0: 52 29 5c 2e 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d  R)\..\...PROGRAM
22e0: 46 49 4c 45 53 5f 58 38 36 20 3d 20 24 28 50 52  FILES_X86 = $(PR 22f0: 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 3a 5c OGRAMFILES_X86:\ 2300: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f \=\)..# Check fo 2310: 72 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64 r the predefined 2320: 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 command macro C 2330: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 C. This should 2340: 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d point to the com 2350: 70 69 6c 65 72 0a 23 20 62 69 6e 61 72 79 20 66 piler.# binary f 2360: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c or the target pl 2370: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 atform. If it i 2380: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 s not defined, s 2390: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20 imply define it 23a0: 74 6f 0a 23 20 74 68 65 20 6c 65 67 61 63 79 20 to.# the legacy 23b0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 63 default value 'c 23c0: 6c 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 l.exe'..#.!IFNDE 23d0: 46 20 43 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65 F CC.CC = cl.exe 23e0: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b .!ENDIF..# Check 23f0: 20 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69 for the predefi 2400: 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 ned command macr 2410: 6f 20 43 53 43 2e 20 20 54 68 69 73 20 73 68 6f o CSC. This sho 2420: 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 61 20 77 uld point to a w 2430: 6f 72 6b 69 6e 67 0a 23 20 43 20 53 68 61 72 70 orking.# C Sharp 2440: 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 compiler binary 2450: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20 . If it is not 2460: 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 defined, simply 2470: 64 65 66 69 6e 65 20 69 74 20 74 6f 20 74 68 65 define it to the 2480: 0a 23 20 6c 65 67 61 63 79 20 64 65 66 61 75 6c .# legacy defaul 2490: 74 20 76 61 6c 75 65 20 27 63 73 63 2e 65 78 65 t value 'csc.exe 24a0: 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 53 43 '..#.!IFNDEF CSC 24b0: 0a 43 53 43 20 3d 20 63 73 63 2e 65 78 65 0a 21 .CSC = csc.exe.! 24c0: 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 ENDIF..# Check f 24d0: 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d or the command m 24e0: 61 63 72 6f 20 4c 44 2e 20 20 54 68 69 73 20 73 acro LD. This s 24f0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 hould point to t 2500: 68 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61 72 79 he linker binary 2510: 20 66 6f 72 0a 23 20 74 68 65 20 74 61 72 67 65 for.# the targe 2520: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 t platform. If 2530: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 it is not define 2540: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 d, simply define 2550: 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 it to the legac 2560: 79 0a 23 20 64 65 66 61 75 6c 74 20 76 61 6c 75 y.# default valu 2570: 65 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a e 'link.exe'..#. 2580: 21 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20 3d 20 !IFNDEF LD.LD = 2590: 6c 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49 46 0a link.exe.!ENDIF. 25a0: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 .# Check for the 25b0: 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d predefined comm 25c0: 61 6e 64 20 6d 61 63 72 6f 20 52 43 2e 20 20 54 and macro RC. T 25d0: 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 his should point 25e0: 20 74 6f 20 74 68 65 20 72 65 73 6f 75 72 63 65 to the resource 25f0: 0a 23 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 .# compiler bina 2600: 72 79 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 ry for the targe 2610: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 t platform. If 2620: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 it is not define 2630: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 d, simply define 2640: 0a 23 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 .# it to the leg 2650: 61 63 79 20 64 65 66 61 75 6c 74 20 76 61 6c 75 acy default valu 2660: 65 20 27 72 63 2e 65 78 65 27 2e 0a 23 0a 21 49 e 'rc.exe'..#.!I 2670: 46 4e 44 45 46 20 52 43 0a 52 43 20 3d 20 72 63 FNDEF RC.RC = rc 2680: 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43 .exe.!ENDIF..# C 2690: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 heck for the MSV 26a0: 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 C runtime librar 26b0: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f y path macro. O 26c0: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 therwise, this v 26d0: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 alue will.# defa 26e0: 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27 ult to the 'lib' 26f0: 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72 directory under 2700: 6e 65 61 74 68 20 74 68 65 20 4d 53 56 43 20 69 neath the MSVC i 2710: 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 nstallation dire 2720: 63 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 ctory..#.!IFNDEF 2730: 20 43 52 54 4c 49 42 50 41 54 48 0a 43 52 54 4c CRTLIBPATH.CRTL 2740: 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e 53 IBPATH =$(VCINS
2750: 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e  TALLDIR)\lib.!EN
2760: 44 49 46 0a 0a 43 52 54 4c 49 42 50 41 54 48 20  DIF..CRTLIBPATH
2770: 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 3a 5c  = $(CRTLIBPATH:\ 2780: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f \=\)..# Check fo 2790: 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 r the command ma 27a0: 63 72 6f 20 4e 43 43 2e 20 20 54 68 69 73 20 73 cro NCC. This s 27b0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 hould point to t 27c0: 68 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 he compiler bina 27d0: 72 79 0a 23 20 66 6f 72 20 74 68 65 20 70 6c 61 ry.# for the pla 27e0: 74 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c tform the compil 27f0: 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 ation process is 2800: 20 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6f 6e taking place on 2810: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 0a . If it is not. 2820: 23 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c # defined, simpl 2830: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 68 y define it to h 2840: 61 76 65 20 74 68 65 20 73 61 6d 65 20 76 61 6c ave the same val 2850: 75 65 20 61 73 20 74 68 65 20 43 43 20 6d 61 63 ue as the CC mac 2860: 72 6f 2e 20 20 57 68 65 6e 0a 23 20 63 72 6f 73 ro. When.# cros 2870: 73 2d 63 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20 s-compiling, it 2880: 69 73 20 73 75 67 67 65 73 74 65 64 20 74 68 61 is suggested tha 2890: 74 20 74 68 69 73 20 6d 61 63 72 6f 20 62 65 20 t this macro be 28a0: 6d 6f 64 69 66 69 65 64 20 76 69 61 20 74 68 65 modified via the 28b0: 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 command.# line 28c0: 28 73 69 6e 63 65 20 6e 6d 61 6b 65 20 69 74 73 (since nmake its 28d0: 65 6c 66 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f elf does not pro 28e0: 76 69 64 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 vide a built-in 28f0: 6d 65 74 68 6f 64 20 74 6f 20 67 75 65 73 73 20 method to guess 2900: 69 74 29 2e 0a 23 20 46 6f 72 20 65 78 61 6d 70 it)..# For examp 2910: 6c 65 2c 20 74 6f 20 75 73 65 20 74 68 65 20 78 le, to use the x 2920: 38 36 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 6e 86 compiler when 2930: 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 cross-compiling 2940: 20 66 6f 72 20 78 36 34 2c 20 61 20 63 6f 6d 6d for x64, a comm 2950: 61 6e 64 0a 23 20 6c 69 6e 65 20 73 69 6d 69 6c and.# line simil 2960: 61 72 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 ar to the follow 2970: 69 6e 67 20 63 6f 75 6c 64 20 62 65 20 75 73 65 ing could be use 2980: 64 20 28 61 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 d (all on one li 2990: 6e 65 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 ne):.#.# nma 29a0: 6b 65 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d ke /f Makefile.m 29b0: 73 63 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 sc sqlite3.dll.# 29c0: 20 20 20 20 20 20 20 20 20 20 20 58 43 4f 4d 50 XCOMP 29d0: 49 4c 45 3d 31 20 55 53 45 5f 4e 41 54 49 56 45 ILE=1 USE_NATIVE 29e0: 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 23 20 _LIBPATHS=1.#.# 29f0: 41 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 Alternatively, t 2a00: 68 65 20 66 75 6c 6c 20 70 61 74 68 20 61 6e 64 he full path and 2a10: 20 66 69 6c 65 20 6e 61 6d 65 20 74 6f 20 74 68 file name to th 2a20: 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 e compiler binar 2a30: 79 20 66 6f 72 20 74 68 65 0a 23 20 70 6c 61 74 y for the.# plat 2a40: 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 form the compila 2a50: 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20 tion process is 2a60: 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6d 61 79 taking place may 2a70: 20 62 65 20 73 70 65 63 69 66 69 65 64 20 28 61 be specified (a 2a80: 6c 6c 20 6f 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 ll on.# one line 2a90: 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 ):.#.# nmake 2aa0: 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 /f Makefile.msc 2ab0: 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 sqlite3.dll.# 2ac0: 20 20 20 20 20 20 20 20 20 22 4e 43 43 3d 22 22 "NCC="" 2ad0: 25 56 43 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62 %VCINSTALLDIR%\b 2ae0: 69 6e 5c 63 6c 2e 65 78 65 22 22 22 0a 23 20 20 in\cl.exe""".# 2af0: 20 20 20 20 20 20 20 20 20 55 53 45 5f 4e 41 54 USE_NAT 2b00: 49 56 45 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 IVE_LIBPATHS=1.# 2b10: 0a 21 49 46 44 45 46 20 4e 43 43 0a 4e 43 43 20 .!IFDEF NCC.NCC 2b20: 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 =$(NCC:\\=\).!E
2b30: 4c 53 45 49 46 20 24 28 58 43 4f 4d 50 49 4c 45  LSEIF $(XCOMPILE 2b40: 29 21 3d 30 0a 4e 43 43 20 3d 20 22 24 28 56 43 )!=0.NCC = "$(VC
2b50: 49 4e 53 54 41 4c 4c 44 49 52 29 5c 62 69 6e 5c  INSTALLDIR)\bin\
2b60: 24 28 43 43 29 22 0a 4e 43 43 20 3d 20 24 28 4e  $(CC)".NCC =$(N
2b70: 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e  CC:\\=\).!ELSE.N
2b80: 43 43 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49  CC = $(CC).!ENDI 2b90: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 F..# Check for t 2ba0: 68 65 20 4d 53 56 43 20 6e 61 74 69 76 65 20 72 he MSVC native r 2bb0: 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70 untime library p 2bc0: 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 ath macro. Othe 2bd0: 72 77 69 73 65 2c 0a 23 20 74 68 69 73 20 76 61 rwise,.# this va 2be0: 6c 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 lue will default 2bf0: 20 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 to the 'lib' di 2c00: 72 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 rectory undernea 2c10: 74 68 20 74 68 65 20 4d 53 56 43 0a 23 20 69 6e th the MSVC.# in 2c20: 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 stallation direc 2c30: 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 tory..#.!IFNDEF 2c40: 4e 43 52 54 4c 49 42 50 41 54 48 0a 4e 43 52 54 NCRTLIBPATH.NCRT 2c50: 4c 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e LIBPATH =$(VCIN
2c60: 53 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45  STALLDIR)\lib.!E
2c70: 4e 44 49 46 0a 0a 4e 43 52 54 4c 49 42 50 41 54  NDIF..NCRTLIBPAT
2c80: 48 20 3d 20 24 28 4e 43 52 54 4c 49 42 50 41 54  H = $(NCRTLIBPAT 2c90: 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b H:\\=\)..# Check 2ca0: 20 66 6f 72 20 74 68 65 20 50 6c 61 74 66 6f 72 for the Platfor 2cb0: 6d 20 53 44 4b 20 6c 69 62 72 61 72 79 20 70 61 m SDK library pa 2cc0: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 th macro. Other 2cd0: 77 69 73 65 2c 20 74 68 69 73 0a 23 20 76 61 6c wise, this.# val 2ce0: 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 ue will default 2cf0: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72 to the 'lib' dir 2d00: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 ectory underneat 2d10: 68 20 74 68 65 20 57 69 6e 64 6f 77 73 0a 23 20 h the Windows.# 2d20: 53 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e SDK installation 2d30: 20 64 69 72 65 63 74 6f 72 79 20 28 74 68 65 20 directory (the 2d40: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 environment vari 2d50: 61 62 6c 65 20 75 73 65 64 20 61 70 70 65 61 72 able used appear 2d60: 73 0a 23 20 74 6f 20 62 65 20 61 76 61 69 6c 61 s.# to be availa 2d70: 62 6c 65 20 77 68 65 6e 20 75 73 69 6e 67 20 56 ble when using V 2d80: 69 73 75 61 6c 20 43 2b 2b 20 32 30 30 38 20 6f isual C++ 2008 o 2d90: 72 20 6c 61 74 65 72 20 76 69 61 20 74 68 65 0a r later via the. 2da0: 23 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e # command line). 2db0: 0a 23 0a 21 49 46 4e 44 45 46 20 4e 53 44 4b 4c .#.!IFNDEF NSDKL 2dc0: 49 42 50 41 54 48 0a 4e 53 44 4b 4c 49 42 50 41 IBPATH.NSDKLIBPA 2dd0: 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44 TH =$(WINDOWSSD
2de0: 4b 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46  KDIR)\lib.!ENDIF
2df0: 0a 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d 20  ..NSDKLIBPATH =
2e00: 24 28 4e 53 44 4b 4c 49 42 50 41 54 48 3a 5c 5c  $(NSDKLIBPATH:\\ 2e10: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 =\)..# Check for 2e20: 20 74 68 65 20 55 43 52 54 20 6c 69 62 72 61 72 the UCRT librar 2e30: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f y path macro. O 2e40: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 therwise, this v 2e50: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 alue will.# defa 2e60: 75 6c 74 20 74 6f 20 74 68 65 20 76 65 72 73 69 ult to the versi 2e70: 6f 6e 2d 73 70 65 63 69 66 69 63 2c 20 70 6c 61 on-specific, pla 2e80: 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 27 tform-specific ' 2e90: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 0a 23 lib' directory.# 2ea0: 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 underneath the 2eb0: 57 69 6e 64 6f 77 73 20 53 44 4b 20 69 6e 73 74 Windows SDK inst 2ec0: 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f allation directo 2ed0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 43 ry..#.!IFNDEF UC 2ee0: 52 54 4c 49 42 50 41 54 48 0a 55 43 52 54 4c 49 RTLIBPATH.UCRTLI 2ef0: 42 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 BPATH =$(WINDOW
2f00: 53 53 44 4b 44 49 52 29 5c 6c 69 62 5c 24 28 57  SSDKDIR)\lib\$(W 2f10: 49 4e 44 4f 57 53 53 44 4b 4c 49 42 56 45 52 53 INDOWSSDKLIBVERS 2f20: 49 4f 4e 29 5c 75 63 72 74 5c 24 28 50 4c 41 54 ION)\ucrt\$(PLAT
2f30: 46 4f 52 4d 29 0a 21 45 4e 44 49 46 0a 0a 55 43  FORM).!ENDIF..UC
2f40: 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 55 43  RTLIBPATH = $(UC 2f50: 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a RTLIBPATH:\\=\). 2f60: 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e .# C compiler an 2f70: 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 d options for us 2f80: 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 e in building ex 2f90: 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 ecutables that.# 2fa0: 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 will run on the 2fb0: 20 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 20 69 platform that i 2fc0: 73 20 64 6f 69 6e 67 20 74 68 65 20 62 75 69 6c s doing the buil 2fd0: 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 d..#.!IF$(USE_F
2fe0: 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 42 43 43 20  ULLWARN)!=0.BCC
2ff0: 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f  = $(NCC) -nologo 3000: 20 2d 57 34 20 24 28 43 43 4f 50 54 53 29 20 24 -W4$(CCOPTS) $3010: 28 42 43 43 4f 50 54 53 29 0a 21 45 4c 53 45 0a (BCCOPTS).!ELSE. 3020: 42 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 6e 6f BCC =$(NCC) -no
3030: 6c 6f 67 6f 20 2d 57 33 20 24 28 43 43 4f 50 54  logo -W3 $(CCOPT 3040: 53 29 20 24 28 42 43 43 4f 50 54 53 29 0a 21 45 S)$(BCCOPTS).!E
3050: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 69 66  NDIF..# Check if
3060: 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 6c   assembly code l
3070: 69 73 74 69 6e 67 73 20 73 68 6f 75 6c 64 20 62  istings should b
3080: 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20  e generated for
3090: 74 68 65 20 73 6f 75 72 63 65 0a 23 20 63 6f 64  the source.# cod
30a0: 65 20 66 69 6c 65 73 20 74 6f 20 62 65 20 63 6f  e files to be co
30b0: 6d 70 69 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28  mpiled..#.!IF $( 30c0: 55 53 45 5f 4c 49 53 54 49 4e 47 53 29 21 3d 30 USE_LISTINGS)!=0 30d0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 46 .BCC =$(BCC) -F
30e0: 41 63 73 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68  Acs.!ENDIF..# Ch
30f0: 65 63 6b 20 69 66 20 74 68 65 20 6e 61 74 69 76  eck if the nativ
3100: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths
3110: 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 77  should be used w
3120: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 23 20  hen compiling.#
3130: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  the command line
3140: 20 74 6f 6f 6c 73 20 75 73 65 64 20 64 75 72 69   tools used duri
3150: 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  ng the compilati
3160: 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20 49 66 0a  on process.  If.
3170: 23 20 73 6f 2c 20 73 65 74 20 74 68 65 20 6e 65  # so, set the ne
3180: 63 65 73 73 61 72 79 20 6d 61 63 72 6f 20 6e 6f  cessary macro no
3190: 77 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4e  w..#.!IF $(USE_N 31a0: 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 29 21 ATIVE_LIBPATHS)! 31b0: 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48 53 20 3d =0.NLTLIBPATHS = 31c0: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 43 52 "/LIBPATH:$(NCR
31d0: 54 4c 49 42 50 41 54 48 29 22 20 22 2f 4c 49 42  TLIBPATH)" "/LIB
31e0: 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49 42 50 41  PATH:$(NSDKLIBPA 31f0: 54 48 29 22 0a 0a 21 49 46 44 45 46 20 4e 55 43 TH)"..!IFDEF NUC 3200: 52 54 4c 49 42 50 41 54 48 0a 4e 55 43 52 54 4c RTLIBPATH.NUCRTL 3210: 49 42 50 41 54 48 20 3d 20 24 28 4e 55 43 52 54 IBPATH =$(NUCRT
3220: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c  LIBPATH:\\=\).NL
3230: 54 4c 49 42 50 41 54 48 53 20 3d 20 24 28 4e 4c  TLIBPATHS = $(NL 3240: 54 4c 49 42 50 41 54 48 53 29 20 22 2f 4c 49 42 TLIBPATHS) "/LIB 3250: 50 41 54 48 3a 24 28 4e 55 43 52 54 4c 49 42 50 PATH:$(NUCRTLIBP
3260: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e  ATH)".!ENDIF.!EN
3270: 44 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65  DIF..# C compile
3280: 72 20 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f  r and options fo
3290: 72 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e  r use in buildin
32a0: 67 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 68  g executables th
32b0: 61 74 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f 6e  at.# will run on
32c0: 20 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74   the target plat
32d0: 66 6f 72 6d 2e 20 20 28 42 43 43 20 61 6e 64 20  form.  (BCC and
32e0: 54 43 43 20 61 72 65 20 75 73 75 61 6c 6c 79 20  TCC are usually
32f0: 74 68 65 0a 23 20 73 61 6d 65 20 75 6e 6c 65 73  the.# same unles
3300: 73 20 79 6f 75 72 20 61 72 65 20 63 72 6f 73 73  s your are cross
3310: 2d 63 6f 6d 70 69 6c 69 6e 67 2e 29 0a 23 0a 21  -compiling.).#.!
3320: 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57 41 52  IF $(USE_FULLWAR 3330: 4e 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 43 43 N)!=0.TCC =$(CC
3340: 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44  ) -nologo -W4 -D
3350: 49 4e 43 4c 55 44 45 5f 4d 53 56 43 5f 48 3d 31  INCLUDE_MSVC_H=1
3360: 20 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43   $(CCOPTS)$(TCC
3370: 4f 50 54 53 29 0a 21 45 4c 53 45 0a 54 43 43 20  OPTS).!ELSE.TCC
3380: 3d 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20  = $(CC) -nologo 3390: 2d 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 28 -W3$(CCOPTS) $( 33a0: 54 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a TCCOPTS).!ENDIF. 33b0: 0a 23 20 43 68 65 63 6b 20 69 66 20 77 61 72 6e .# Check if warn 33c0: 69 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 74 ings should be t 33d0: 72 65 61 74 65 64 20 61 73 20 65 72 72 6f 72 73 reated as errors 33e0: 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 2e when compiling. 33f0: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 41 54 .#.!IF$(USE_FAT
3400: 41 4c 5f 57 41 52 4e 29 21 3d 30 0a 54 43 43 20  AL_WARN)!=0.TCC
3410: 3d 20 24 28 54 43 43 29 20 2d 57 58 0a 21 45 4e  = $(TCC) -WX.!EN 3420: 44 49 46 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 DIF..TCC =$(TCC
3430: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49  ) -DSQLITE_OS_WI
3440: 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 54 4f 50 29  N=1 -I. -I$(TOP) 3450: 20 2d 49 24 28 54 4f 50 29 5c 73 72 63 20 2d 66 -I$(TOP)\src -f
3460: 70 3a 70 72 65 63 69 73 65 0a 52 43 43 20 3d 20  p:precise.RCC =
3470: 24 28 52 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f  $(RC) -DSQLITE_O 3480: 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 S_WIN=1 -I. -I$(
3490: 54 4f 50 29 20 2d 49 24 28 54 4f 50 29 5c 73 72  TOP) -I$(TOP)\sr 34a0: 63 20 24 28 52 43 4f 50 54 53 29 20 24 28 52 43 c$(RCOPTS) $(RC 34b0: 43 4f 50 54 53 29 0a 0a 23 20 43 68 65 63 6b 20 COPTS)..# Check 34c0: 69 66 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73 if we want to us 34d0: 65 20 74 68 65 20 22 73 74 64 63 61 6c 6c 22 20 e the "stdcall" 34e0: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 calling conventi 34f0: 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e on when compilin 3500: 67 2e 0a 23 20 54 68 69 73 20 69 73 20 6e 6f 74 g..# This is not 3510: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 supported by th 3520: 65 20 63 6f 6d 70 69 6c 65 72 73 20 66 6f 72 20 e compilers for 3530: 6e 6f 6e 2d 78 38 36 20 70 6c 61 74 66 6f 72 6d non-x86 platform 3540: 73 2e 20 20 49 74 20 73 68 6f 75 6c 64 0a 23 20 s. It should.# 3550: 61 6c 73 6f 20 62 65 20 6e 6f 74 65 64 20 68 65 also be noted he 3560: 72 65 20 74 68 61 74 20 62 75 69 6c 64 69 6e 67 re that building 3570: 20 61 6e 79 20 74 61 72 67 65 74 20 77 69 74 68 any target with 3580: 20 74 68 65 73 65 20 22 73 74 64 63 61 6c 6c 22 these "stdcall" 3590: 20 6f 70 74 69 6f 6e 73 0a 23 20 77 69 6c 6c 20 options.# will 35a0: 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 66 61 69 6c most likely fail 35b0: 20 69 66 20 74 68 65 20 54 63 6c 20 6c 69 62 72 if the Tcl libr 35c0: 61 72 79 20 69 73 20 61 6c 73 6f 20 72 65 71 75 ary is also requ 35d0: 69 72 65 64 2e 20 20 54 68 69 73 20 69 73 20 64 ired. This is d 35e0: 75 65 0a 23 20 74 6f 20 68 6f 77 20 74 68 65 20 ue.# to how the 35f0: 54 63 6c 20 6c 69 62 72 61 72 79 20 66 75 6e 63 Tcl library func 3600: 74 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72 tions are declar 3610: 65 64 20 61 6e 64 20 65 78 70 6f 72 74 65 64 20 ed and exported 3620: 28 69 2e 65 2e 20 77 69 74 68 6f 75 74 0a 23 20 (i.e. without.# 3630: 61 6e 20 65 78 70 6c 69 63 69 74 20 63 61 6c 6c an explicit call 3640: 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 ing convention, 3650: 77 68 69 63 68 20 72 65 73 75 6c 74 73 20 69 6e which results in 3660: 20 22 63 64 65 63 6c 22 29 2e 0a 23 0a 21 49 46 "cdecl")..#.!IF 3670: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21$(USE_STDCALL)!
3680: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1 3690: 30 29 21 3d 30 0a 21 49 46 20 22 24 28 50 4c 41 0)!=0.!IF "$(PLA
36a0: 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43  TFORM)"=="x86".C
36b0: 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  ORE_CCONV_OPTS =
36c0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44   -Gz -DSQLITE_CD
36d0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51  ECL=__cdecl -DSQ
36e0: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73  LITE_APICALL=__s
36f0: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f  tdcall -DSQLITE_
3700: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61  CALLBACK=__stdca
3710: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41  ll -DSQLITE_SYSA
3720: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 48 45  PI=__stdcall.SHE
3730: 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20  LL_CCONV_OPTS =
3740: 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45  -Gz -DSQLITE_CDE
3750: 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c  CL=__cdecl -DSQL
3760: 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74  ITE_APICALL=__st
3770: 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43  dcall -DSQLITE_C
3780: 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c  ALLBACK=__stdcal
3790: 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50  l -DSQLITE_SYSAP
37a0: 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 3c 3c  I=__stdcall.# <<
37b0: 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e  mark>>.TEST_CCON
37c0: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53  V_OPTS = -Gz -DS
37d0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64  QLITE_CDECL=__cd
37e0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49  ecl -DSQLITE_API
37f0: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  CALL=__stdcall -
3800: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b  DSQLITE_CALLBACK
3810: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c  =__stdcall -DSQL
3820: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64  ITE_SYSAPI=__std
3830: 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 5f 53  call -DINCLUDE_S
3840: 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 2d 44  QLITE_TCL_H=1 -D
3850: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d 5f 5f  SQLITE_TCLAPI=__
3860: 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  cdecl.# <</mark>
3870: 3e 0a 21 45 4c 53 45 0a 21 49 46 4e 44 45 46 20  >.!ELSE.!IFNDEF
3880: 50 4c 41 54 46 4f 52 4d 0a 43 4f 52 45 5f 43 43  PLATFORM.CORE_CC
3890: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d  ONV_OPTS = -Gz -
38a0: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f  DSQLITE_CDECL=__
38b0: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41  cdecl -DSQLITE_A
38c0: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c  PICALL=__stdcall
38d0: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41   -DSQLITE_CALLBA
38e0: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53  CK=__stdcall -DS
38f0: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73  QLITE_SYSAPI=__s
3900: 74 64 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f  tdcall.SHELL_CCO
3910: 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44  NV_OPTS = -Gz -D
3920: 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63  SQLITE_CDECL=__c
3930: 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50  decl -DSQLITE_AP
3940: 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20  ICALL=__stdcall
3950: 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43  -DSQLITE_CALLBAC
3960: 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51  K=__stdcall -DSQ
3970: 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74  LITE_SYSAPI=__st
3980: 64 63 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  dcall.# <<mark>>
3990: 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53  .TEST_CCONV_OPTS
39a0: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f   = -Gz -DSQLITE_
39b0: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44  CDECL=__cdecl -D
39c0: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f  SQLITE_APICALL=_
39d0: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54  _stdcall -DSQLIT
39e0: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64  E_CALLBACK=__std
39f0: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59  call -DSQLITE_SY
3a00: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  SAPI=__stdcall -
3a10: 44 49 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f  DINCLUDE_SQLITE_
3a20: 54 43 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45  TCL_H=1 -DSQLITE
3a30: 5f 54 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a  _TCLAPI=__cdecl.
3a40: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53  # <</mark>>.!ELS
3a50: 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  E.CORE_CCONV_OPT
3a60: 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f  S =.SHELL_CCONV_
3a70: 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72 6b 3e  OPTS =.# <<mark>
3a80: 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54  >.TEST_CCONV_OPT
3a90: 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  S =.# <</mark>>.
3aa0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 45  !ENDIF.!ENDIF.!E
3ab0: 4c 53 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f  LSE.CORE_CCONV_O
3ac0: 50 54 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e  PTS =.SHELL_CCON
3ad0: 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72  V_OPTS =.# <<mar
3ae0: 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f  k>>.TEST_CCONV_O
3af0: 50 54 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  PTS =.# <</mark>
3b00: 3e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  >.!ENDIF..# Thes
3b10: 65 20 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c  e are additional
3b20: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
3b30: 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 63  s used for the c
3b40: 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ore library..#.!
3b50: 49 46 4e 44 45 46 20 43 4f 52 45 5f 43 4f 4d 50  IFNDEF CORE_COMP
3b60: 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 24 28 44  ILE_OPTS.!IF $(D 3b70: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 YNAMIC_SHELL)!=0 3b80: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 ||$(FOR_WIN10)
3b90: 21 3d 30 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  !=0.CORE_COMPILE
3ba0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43  _OPTS = $(CORE_C 3bb0: 43 4f 4e 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c CONV_OPTS) -DSQL 3bc0: 49 54 45 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 ITE_API=__declsp 3bd0: 65 63 28 64 6c 6c 65 78 70 6f 72 74 29 0a 21 45 ec(dllexport).!E 3be0: 4c 53 45 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 LSE.CORE_COMPILE 3bf0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43 _OPTS =$(CORE_C
3c00: 43 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49  CONV_OPTS).!ENDI
3c10: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  F.!ENDIF..# Thes
3c20: 65 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69  e are the additi
3c30: 6f 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61  onal targets tha
3c40: 74 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  t the core libra
3c50: 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e 64  ry should depend
3c60: 20 6f 6e 0a 23 20 77 68 65 6e 20 6c 69 6e 6b 69   on.# when linki
3c70: 6e 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 4f  ng..#.!IFNDEF CO
3c80: 52 45 5f 4c 49 4e 4b 5f 44 45 50 0a 21 49 46 20  RE_LINK_DEP.!IF
3c90: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29  $(DYNAMIC_SHELL) 3ca0: 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 !=0.CORE_LINK_DE 3cb0: 50 20 3d 0a 21 45 4c 53 45 49 46 20 24 28 46 4f P =.!ELSEIF$(FO
3cc0: 52 5f 57 49 4e 31 30 29 3d 3d 30 20 7c 7c 20 22  R_WIN10)==0 || "
3cd0: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78  $(PLATFORM)"=="x 3ce0: 38 36 22 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 86".CORE_LINK_DE 3cf0: 50 20 3d 20 73 71 6c 69 74 65 33 2e 64 65 66 0a P = sqlite3.def. 3d00: 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e 4b 5f !ELSE.CORE_LINK_ 3d10: 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e DEP =.!ENDIF.!EN 3d20: 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65 DIF..# These are 3d30: 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b additional link 3d40: 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 er options used 3d50: 66 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 for the core lib 3d60: 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 rary..#.!IFNDEF 3d70: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 21 CORE_LINK_OPTS.! 3d80: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 IF$(DYNAMIC_SHE
3d90: 4c 4c 29 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b  LL)!=0.CORE_LINK
3da0: 5f 4f 50 54 53 20 3d 0a 21 45 4c 53 45 49 46 20  _OPTS =.!ELSEIF
3db0: 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 20  $(FOR_WIN10)==0 3dc0: 7c 7c 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 || "$(PLATFORM)"
3dd0: 3d 3d 22 78 38 36 22 0a 43 4f 52 45 5f 4c 49 4e  =="x86".CORE_LIN
3de0: 4b 5f 4f 50 54 53 20 3d 20 2f 44 45 46 3a 73 71  K_OPTS = /DEF:sq
3df0: 6c 69 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a  lite3.def.!ELSE.
3e00: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d  CORE_LINK_OPTS =
3e10: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
3e20: 23 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69  # These are addi
3e30: 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20  tional compiler
3e40: 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 6f 72  options used for
3e50: 20 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75   the shell execu
3e60: 74 61 62 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46  table..#.!IFNDEF
3e70: 20 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f   SHELL_COMPILE_O
3e80: 50 54 53 0a 21 49 46 20 24 28 44 59 4e 41 4d 49  PTS.!IF $(DYNAMI 3e90: 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 C_SHELL)!=0 ||$
3ea0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53  (FOR_WIN10)!=0.S
3eb0: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HELL_COMPILE_OPT
3ec0: 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 4f 4e  S = $(SHELL_CCON 3ed0: 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 V_OPTS) -DSQLITE 3ee0: 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 65 63 28 _API=__declspec( 3ef0: 64 6c 6c 69 6d 70 6f 72 74 29 0a 21 45 4c 53 45 dllimport).!ELSE 3f00: 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f .SHELL_COMPILE_O 3f10: 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 PTS =$(SHELL_CC
3f20: 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49 46  ONV_OPTS).!ENDIF
3f30: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20  .!ENDIF..# This
3f40: 69 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f  is the source co
3f50: 64 65 20 74 68 61 74 20 74 68 65 20 73 68 65 6c  de that the shel
3f60: 6c 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f  l executable sho
3f70: 75 6c 64 20 62 65 20 63 6f 6d 70 69 6c 65 64 0a  uld be compiled.
3f80: 23 20 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45  # with..#.!IFNDE
3f90: 46 20 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43  F SHELL_CORE_SRC
3fa0: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S 3fb0: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f HELL)!=0 ||$(FO
3fc0: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c  R_WIN10)!=0.SHEL
3fd0: 4c 5f 43 4f 52 45 5f 53 52 43 20 3d 0a 21 45 4c  L_CORE_SRC =.!EL
3fe0: 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52  SE.SHELL_CORE_SR
3ff0: 43 20 3d 20 24 28 53 51 4c 49 54 45 33 43 29 0a  C = $(SQLITE3C). 4000: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 4010: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72 This is the cor 4020: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74 e library that t 4030: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 he shell executa 4040: 62 6c 65 20 73 68 6f 75 6c 64 20 64 65 70 65 6e ble should depen 4050: 64 20 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20 d on..#.!IFNDEF 4060: 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 0a 21 SHELL_CORE_DEP.! 4070: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 IF$(DYNAMIC_SHE
4080: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f  LL)!=0 || $(FOR_ 4090: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f WIN10)!=0.SHELL_ 40a0: 43 4f 52 45 5f 44 45 50 20 3d 20 24 28 53 51 4c CORE_DEP =$(SQL
40b0: 49 54 45 33 44 4c 4c 29 0a 21 45 4c 53 45 0a 53  ITE3DLL).!ELSE.S
40c0: 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 20 3d 0a  HELL_CORE_DEP =.
40d0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
40e0: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72   This is the cor
40f0: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74  e library that t
4100: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61  he shell executa
4110: 62 6c 65 20 73 68 6f 75 6c 64 20 6c 69 6e 6b 20  ble should link
4120: 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45 46 20  with..#.!IFNDEF
4130: 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0a 21  SHELL_CORE_LIB.!
4140: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45  IF $(DYNAMIC_SHE 4150: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f LL)!=0 ||$(FOR_
4160: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f  WIN10)!=0.SHELL_
4170: 43 4f 52 45 5f 4c 49 42 20 3d 20 24 28 53 51 4c  CORE_LIB = $(SQL 4180: 49 54 45 33 4c 49 42 29 0a 21 45 4c 53 45 0a 53 ITE3LIB).!ELSE.S 4190: 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 20 3d 0a HELL_CORE_LIB =. 41a0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 41b0: 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69 74 These are addit 41c0: 69 6f 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 ional linker opt 41d0: 69 6f 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68 ions used for th 41e0: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 e shell executab 41f0: 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 48 le..#.!IFNDEF SH 4200: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 53 48 ELL_LINK_OPTS.SH 4210: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 20 ELL_LINK_OPTS = 4220: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42$(SHELL_CORE_LIB
4230: 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63  ).!ENDIF..# Chec
4240: 6b 20 69 66 20 61 73 73 65 6d 62 6c 79 20 63 6f  k if assembly co
4250: 64 65 20 6c 69 73 74 69 6e 67 73 20 73 68 6f 75  de listings shou
4260: 6c 64 20 62 65 20 67 65 6e 65 72 61 74 65 64 20  ld be generated
4270: 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 0a 23  for the source.#
4280: 20 63 6f 64 65 20 66 69 6c 65 73 20 74 6f 20 62   code files to b
4290: 65 20 63 6f 6d 70 69 6c 65 64 2e 0a 23 0a 21 49  e compiled..#.!I
42a0: 46 20 24 28 55 53 45 5f 4c 49 53 54 49 4e 47 53  F $(USE_LISTINGS 42b0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 )!=0.TCC =$(TCC
42c0: 29 20 2d 46 41 63 73 0a 21 45 4e 44 49 46 0a 0a  ) -FAcs.!ENDIF..
42d0: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
42e0: 20 74 68 65 20 6c 69 62 72 61 72 79 20 66 6f 72   the library for
42f0: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52   use in the WinR
4300: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 0a 23  T environment,.#
4310: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63   the following c
4320: 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69  ompile-time opti
4330: 6f 6e 73 20 6d 75 73 74 20 62 65 20 75 73 65 64  ons must be used
4340: 20 61 73 20 77 65 6c 6c 20 74 6f 0a 23 20 64 69   as well to.# di
4350: 73 61 62 6c 65 20 75 73 65 20 6f 66 20 57 69 6e  sable use of Win
4360: 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65  32 APIs that are
4370: 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 61   not available a
4380: 6e 64 20 74 6f 20 65 6e 61 62 6c 65 0a 23 20 75  nd to enable.# u
4390: 73 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73  se of Win32 APIs
43a0: 20 74 68 61 74 20 61 72 65 20 73 70 65 63 69 66   that are specif
43b0: 69 63 20 74 6f 20 57 69 6e 64 6f 77 73 20 38 20  ic to Windows 8
43c0: 61 6e 64 2f 6f 72 20 57 69 6e 52 54 2e 0a 23 0a  and/or WinRT..#.
43d0: 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29  !IF $(FOR_WINRT) 43e0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 !=0.TCC =$(TCC)
43f0: 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e   -DSQLITE_OS_WIN
4400: 52 54 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  RT=1.RCC = $(RCC 4410: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 ) -DSQLITE_OS_WI 4420: 4e 52 54 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 NRT=1.TCC =$(TC
4430: 43 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49  C) -DWINAPI_FAMI
4440: 4c 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59  LY=WINAPI_FAMILY
4450: 5f 41 50 50 0a 52 43 43 20 3d 20 24 28 52 43 43  _APP.RCC = $(RCC 4460: 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c ) -DWINAPI_FAMIL 4470: 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 5f Y=WINAPI_FAMILY_ 4480: 41 50 50 0a 21 45 4e 44 49 46 0a 0a 23 20 43 20 APP.!ENDIF..# C 4490: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 compiler options 44a0: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 for the Windows 44b0: 20 31 30 20 70 6c 61 74 66 6f 72 6d 20 28 6e 65 10 platform (ne 44c0: 65 64 73 20 4d 53 56 43 20 32 30 31 35 29 2e 0a eds MSVC 2015).. 44d0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 #.!IF$(FOR_WIN1
44e0: 30 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  0)!=0.TCC = $(TC 44f0: 43 29 20 2f 64 32 67 75 61 72 64 34 20 2d 44 5f C) /d2guard4 -D_ 4500: 41 52 4d 5f 57 49 4e 41 50 49 5f 50 41 52 54 49 ARM_WINAPI_PARTI 4510: 54 49 4f 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b TION_DESKTOP_SDK 4520: 5f 41 56 41 49 4c 41 42 4c 45 0a 42 43 43 20 3d _AVAILABLE.BCC = 4530: 20 24 28 42 43 43 29 20 2f 64 32 67 75 61 72 64$(BCC) /d2guard
4540: 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41 50 49 5f  4 -D_ARM_WINAPI_
4550: 50 41 52 54 49 54 49 4f 4e 5f 44 45 53 4b 54 4f  PARTITION_DESKTO
4560: 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42 4c 45 0a  P_SDK_AVAILABLE.
4570: 21 45 4e 44 49 46 0a 0a 23 20 41 6c 73 6f 2c 20  !ENDIF..# Also,
4580: 77 65 20 6e 65 65 64 20 74 6f 20 64 79 6e 61 6d  we need to dynam
4590: 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74  ically link to t
45a0: 68 65 20 63 6f 72 72 65 63 74 20 4d 53 56 43 20  he correct MSVC
45b0: 72 75 6e 74 69 6d 65 0a 23 20 77 68 65 6e 20 63  runtime.# when c
45c0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e  ompiling for Win
45d0: 52 54 20 28 65 2e 67 2e 20 64 65 62 75 67 20 6f  RT (e.g. debug o
45e0: 72 20 72 65 6c 65 61 73 65 29 20 4f 52 20 69 66  r release) OR if
45f0: 20 74 68 65 0a 23 20 55 53 45 5f 43 52 54 5f 44   the.# USE_CRT_D
4600: 4c 4c 20 6f 70 74 69 6f 6e 20 69 73 20 73 65 74  LL option is set
4610: 20 74 6f 20 66 6f 72 63 65 20 64 79 6e 61 6d 69   to force dynami
4620: 63 61 6c 6c 79 20 6c 69 6e 6b 69 6e 67 20 74 6f  cally linking to
4630: 20 74 68 65 0a 23 20 4d 53 56 43 20 72 75 6e 74   the.# MSVC runt
4640: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
4650: 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21  IF $(FOR_WINRT)! 4660: 3d 30 20 7c 7c 20 24 28 55 53 45 5f 43 52 54 5f =0 ||$(USE_CRT_
4670: 44 4c 4c 29 21 3d 30 0a 21 49 46 20 24 28 44 45  DLL)!=0.!IF $(DE 4680: 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 BUG)>1.TCC =$(T
4690: 43 43 29 20 2d 4d 44 64 0a 42 43 43 20 3d 20 24  CC) -MDd.BCC = $46a0: 28 42 43 43 29 20 2d 4d 44 64 0a 21 45 4c 53 45 (BCC) -MDd.!ELSE 46b0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d .TCC =$(TCC) -M
46c0: 44 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  D.BCC = $(BCC) - 46d0: 4d 44 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 0a MD.!ENDIF.!ELSE. 46e0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 !IF$(DEBUG)>1.T
46f0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 64  CC = $(TCC) -MTd 4700: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d .BCC =$(BCC) -M
4710: 54 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  Td.!ELSE.TCC = $4720: 28 54 43 43 29 20 2d 4d 54 0a 42 43 43 20 3d 20 (TCC) -MT.BCC = 4730: 24 28 42 43 43 29 20 2d 4d 54 0a 21 45 4e 44 49$(BCC) -MT.!ENDI
4740: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61  F.!ENDIF..# <<ma
4750: 72 6b 3e 3e 0a 23 20 54 68 65 20 6d 6b 73 71 6c  rk>>.# The mksql
4760: 69 74 65 33 63 2e 74 63 6c 20 61 6e 64 20 6d 6b  ite3c.tcl and mk
4770: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 73 63 72  sqlite3h.tcl scr
4780: 69 70 74 73 20 77 69 6c 6c 20 70 75 6c 6c 20 69  ipts will pull i
4790: 6e 0a 23 20 61 6e 79 20 65 78 74 65 6e 73 69 6f  n.# any extensio
47a0: 6e 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 62  n header files b
47b0: 79 20 64 65 66 61 75 6c 74 2e 20 20 46 6f 72 20  y default.  For
47c0: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  non-amalgamation
47d0: 0a 23 20 62 75 69 6c 64 73 2c 20 77 65 20 6e 65  .# builds, we ne
47e0: 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20  ed to make sure
47f0: 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e  the compiler can
4800: 20 66 69 6e 64 20 74 68 65 73 65 2e 0a 23 0a 21   find these..#.!
4810: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM 4820: 41 54 49 4f 4e 29 3d 3d 30 0a 54 43 43 20 3d 20 ATION)==0.TCC = 4830: 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c$(TCC) -I$(TOP)\ 4840: 65 78 74 5c 66 74 73 33 0a 52 43 43 20 3d 20 24 ext\fts3.RCC =$
4850: 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65  (RCC) -I$(TOP)\e 4860: 78 74 5c 66 74 73 33 0a 54 43 43 20 3d 20 24 28 xt\fts3.TCC =$(
4870: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex 4880: 74 5c 72 74 72 65 65 0a 52 43 43 20 3d 20 24 28 t\rtree.RCC =$(
4890: 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  RCC) -I$(TOP)\ex 48a0: 74 5c 72 74 72 65 65 0a 54 43 43 20 3d 20 24 28 t\rtree.TCC =$(
48b0: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex 48c0: 74 5c 73 65 73 73 69 6f 6e 0a 52 43 43 20 3d 20 t\session.RCC = 48d0: 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c$(RCC) -I$(TOP)\ 48e0: 65 78 74 5c 73 65 73 73 69 6f 6e 0a 21 45 4e 44 ext\session.!END 48f0: 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71 6c 69 IF..# The mksqli 4900: 74 65 33 63 2e 74 63 6c 20 73 63 72 69 70 74 20 te3c.tcl script 4910: 61 63 63 65 70 74 73 20 73 6f 6d 65 20 6f 70 74 accepts some opt 4920: 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d 6d ions on the comm 4930: 61 6e 64 0a 23 20 6c 69 6e 65 2e 20 20 57 68 65 and.# line. Whe 4940: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68 n compiling with 4950: 20 64 65 62 75 67 67 69 6e 67 20 65 6e 61 62 6c debugging enabl 4960: 65 64 2c 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 ed, some of thes 4970: 65 0a 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 e.# options are 4980: 6e 65 63 65 73 73 61 72 79 20 69 6e 20 6f 72 64 necessary in ord 4990: 65 72 20 74 6f 20 61 6c 6c 6f 77 20 64 65 62 75 er to allow debu 49a0: 67 67 69 6e 67 20 73 79 6d 62 6f 6c 73 20 74 6f gging symbols to 49b0: 0a 23 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c .# work correctl 49c0: 79 20 77 69 74 68 20 56 69 73 75 61 6c 20 53 74 y with Visual St 49d0: 75 64 69 6f 20 77 68 65 6e 20 75 73 69 6e 67 20 udio when using 49e0: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e the amalgamation 49f0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53 51 ..#.!IFNDEF MKSQ 4a00: 4c 49 54 45 33 43 5f 54 4f 4f 4c 0a 21 49 46 20 LITE3C_TOOL.!IF 4a10: 24 28 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41$(MINIMAL_AMALGA
4a20: 4d 41 54 49 4f 4e 29 21 3d 30 0a 4d 4b 53 51 4c  MATION)!=0.MKSQL
4a30: 49 54 45 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54  ITE3C_TOOL = $(T 4a40: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 OP)\tool\mksqlit 4a50: 65 33 63 2d 6e 6f 65 78 74 2e 74 63 6c 0a 21 45 e3c-noext.tcl.!E 4a60: 4c 53 45 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54 LSE.MKSQLITE3C_T 4a70: 4f 4f 4c 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f OOL =$(TOP)\too
4a80: 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  l\mksqlite3c.tcl
4a90: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
4aa0: 21 49 46 4e 44 45 46 20 4d 4b 53 51 4c 49 54 45  !IFNDEF MKSQLITE
4ab0: 33 43 5f 41 52 47 53 0a 21 49 46 20 24 28 44 45  3C_ARGS.!IF $(DE 4ac0: 42 55 47 29 3e 31 0a 4d 4b 53 51 4c 49 54 45 33 BUG)>1.MKSQLITE3 4ad0: 43 5f 41 52 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d C_ARGS = --linem 4ae0: 61 63 72 6f 73 0a 21 45 4c 53 45 0a 4d 4b 53 51 acros.!ELSE.MKSQ 4af0: 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 0a 21 45 LITE3C_ARGS =.!E 4b00: 4e 44 49 46 0a 21 49 46 20 24 28 55 53 45 5f 53 NDIF.!IF$(USE_S
4b10: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28  TDCALL)!=0 || $( 4b20: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b FOR_WIN10)!=0.MK 4b30: 53 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 20 SQLITE3C_ARGS = 4b40: 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47$(MKSQLITE3C_ARG
4b50: 53 29 20 2d 2d 75 73 65 61 70 69 63 61 6c 6c 0a  S) --useapicall.
4b60: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
4b70: 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 68 2e   The mksqlite3h.
4b80: 74 63 6c 20 73 63 72 69 70 74 20 61 63 63 65 70  tcl script accep
4b90: 74 73 20 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20  ts some options
4ba0: 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  on the command l
4bb0: 69 6e 65 2e 0a 23 20 57 68 65 6e 20 63 6f 6d 70  ine..# When comp
4bc0: 69 6c 69 6e 67 20 77 69 74 68 20 73 74 64 63 61  iling with stdca
4bd0: 6c 6c 20 73 75 70 70 6f 72 74 2c 20 73 6f 6d 65  ll support, some
4be0: 20 6f 66 20 74 68 65 73 65 20 6f 70 74 69 6f 6e   of these option
4bf0: 73 20 61 72 65 0a 23 20 6e 65 63 65 73 73 61 72  s are.# necessar
4c00: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53  y..#.!IFNDEF MKS
4c10: 51 4c 49 54 45 33 48 5f 41 52 47 53 0a 21 49 46  QLITE3H_ARGS.!IF
4c20: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)! 4c30: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
4c40: 30 29 21 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 48  0)!=0.MKSQLITE3H
4c50: 5f 41 52 47 53 20 3d 20 2d 2d 75 73 65 61 70 69  _ARGS = --useapi
4c60: 63 61 6c 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c  call.!ELSE.MKSQL
4c70: 49 54 45 33 48 5f 41 52 47 53 20 3d 0a 21 45 4e  ITE3H_ARGS =.!EN
4c80: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f  DIF.!ENDIF.# <</
4c90: 6d 61 72 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65  mark>>..# Define
4ca0: 20 2d 44 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d   -DNDEBUG to com
4cb0: 70 69 6c 65 20 77 69 74 68 6f 75 74 20 64 65 62  pile without deb
4cc0: 75 67 67 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f  ugging (i.e., fo
4cd0: 72 20 70 72 6f 64 75 63 74 69 6f 6e 20 75 73 61  r production usa
4ce0: 67 65 29 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74  ge).# Omitting t
4cf0: 68 65 20 64 65 66 69 6e 65 20 77 69 6c 6c 20 63  he define will c
4d00: 61 75 73 65 20 65 78 74 72 61 20 64 65 62 75 67  ause extra debug
4d10: 67 69 6e 67 20 63 6f 64 65 20 74 6f 20 62 65 20  ging code to be
4d20: 69 6e 73 65 72 74 65 64 20 61 6e 64 0a 23 20 69  inserted and.# i
4d30: 6e 63 6c 75 64 65 73 20 65 78 74 72 61 20 63 6f  ncludes extra co
4d40: 6d 6d 65 6e 74 73 20 77 68 65 6e 20 22 45 58 50  mments when "EXP
4d50: 4c 41 49 4e 20 73 74 6d 74 22 20 69 73 20 75 73  LAIN stmt" is us
4d60: 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55  ed..#.!IF $(DEBU 4d70: 47 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 G)==0.TCC =$(TC
4d80: 43 29 20 2d 44 4e 44 45 42 55 47 0a 42 43 43 20  C) -DNDEBUG.BCC
4d90: 3d 20 24 28 42 43 43 29 20 2d 44 4e 44 45 42 55  = $(BCC) -DNDEBU 4da0: 47 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d G.RCC =$(RCC) -
4db0: 44 4e 44 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a  DNDEBUG.!ENDIF..
4dc0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c  !IF $(DEBUG)>0 | 4dd0: 7c 20 24 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d |$(API_ARMOR)!=
4de0: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30  0 || $(FOR_WIN10 4df0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 )!=0.TCC =$(TCC
4e00: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
4e10: 45 5f 41 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43  E_API_ARMOR=1.RC
4e20: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 4e30: 49 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 ITE_ENABLE_API_A 4e40: 52 4d 4f 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 RMOR=1.!ENDIF..! 4e50: 49 46 20 24 28 44 45 42 55 47 29 3e 32 0a 54 43 IF$(DEBUG)>2.TC
4e60: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c  C = $(TCC) -DSQL 4e70: 49 54 45 5f 44 45 42 55 47 3d 31 0a 54 43 43 20 ITE_DEBUG=1.TCC 4e80: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 =$(TCC) -DSQLIT
4e90: 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52 45 54 52  E_ENABLE_WHERETR
4ea0: 41 43 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  ACE -DSQLITE_ENA
4eb0: 42 4c 45 5f 53 45 4c 45 43 54 54 52 41 43 45 0a  BLE_SELECTTRACE.
4ec0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS 4ed0: 51 4c 49 54 45 5f 44 45 42 55 47 3d 31 0a 21 45 QLITE_DEBUG=1.!E 4ee0: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 NDIF..!IF$(DEBU
4ef0: 47 29 3e 34 20 7c 7c 20 24 28 4f 53 54 52 41 43  G)>4 || $(OSTRAC 4f00: 45 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 E)!=0.TCC =$(TC
4f10: 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52 43  C) -DSQLITE_FORC
4f20: 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44 53  E_OS_TRACE=1 -DS
4f30: 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54  QLITE_DEBUG_OS_T
4f40: 52 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52  RACE=1.RCC = $(R 4f50: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52 CC) -DSQLITE_FOR 4f60: 43 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44 CE_OS_TRACE=1 -D 4f70: 53 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f SQLITE_DEBUG_OS_ 4f80: 54 52 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a TRACE=1.!ENDIF.. 4f90: 21 49 46 20 24 28 44 45 42 55 47 29 3e 35 0a 54 !IF$(DEBUG)>5.T
4fa0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ 4fb0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 LITE_ENABLE_IOTR 4fc0: 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 ACE=1.RCC =$(RC
4fd0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  C) -DSQLITE_ENAB
4fe0: 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 21 45 4e  LE_IOTRACE=1.!EN
4ff0: 44 49 46 0a 0a 23 20 50 72 65 76 65 6e 74 20 77  DIF..# Prevent w
5000: 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20 22 69  arnings about "i
5010: 6e 73 65 63 75 72 65 22 20 4d 53 56 43 20 72 75  nsecure" MSVC ru
5020: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 66 75  ntime library fu
5030: 6e 63 74 69 6f 6e 73 0a 23 20 62 65 69 6e 67 20  nctions.# being
5040: 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28  used..#.TCC = $( 5050: 54 43 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 TCC) -D_CRT_SECU 5060: 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 RE_NO_DEPRECATE 5070: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f -D_CRT_SECURE_NO 5080: 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 _WARNINGS.BCC = 5090: 24 28 42 43 43 29 20 2d 44 5f 43 52 54 5f 53 45$(BCC) -D_CRT_SE
50a0: 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54  CURE_NO_DEPRECAT
50b0: 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  E -D_CRT_SECURE_
50c0: 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20  NO_WARNINGS.RCC
50d0: 3d 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f  = $(RCC) -D_CRT_ 50e0: 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 SECURE_NO_DEPREC 50f0: 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 ATE -D_CRT_SECUR 5100: 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a 23 E_NO_WARNINGS..# 5110: 20 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 Prevent warning 5120: 73 20 61 62 6f 75 74 20 22 64 65 70 72 65 63 61 s about "depreca 5130: 74 65 64 22 20 50 4f 53 49 58 20 66 75 6e 63 74 ted" POSIX funct 5140: 69 6f 6e 73 20 62 65 69 6e 67 20 75 73 65 64 2e ions being used. 5150: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 .#.TCC =$(TCC)
5160: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e  -D_CRT_NONSTDC_N
5170: 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43  O_DEPRECATE -D_C
5180: 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41  RT_NONSTDC_NO_WA
5190: 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 24 28 42  RNINGS.BCC = $(B 51a0: 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 CC) -D_CRT_NONST 51b0: 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 DC_NO_DEPRECATE 51c0: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e -D_CRT_NONSTDC_N 51d0: 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20 3d O_WARNINGS.RCC = 51e0: 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f 4e$(RCC) -D_CRT_N
51f0: 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43  ONSTDC_NO_DEPREC
5200: 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  ATE -D_CRT_NONST
5210: 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a  DC_NO_WARNINGS..
5220: 23 20 55 73 65 20 74 68 65 20 53 51 4c 69 74 65  # Use the SQLite
5230: 20 64 65 62 75 67 67 69 6e 67 20 68 65 61 70 20   debugging heap
5240: 73 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46  subsystem?.#.!IF
5250: 20 24 28 4d 45 4d 44 45 42 55 47 29 21 3d 30 0a   $(MEMDEBUG)!=0. 5260: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
5270: 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d 31  QLITE_MEMDEBUG=1
5280: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 5290: 53 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d SQLITE_MEMDEBUG= 52a0: 31 0a 0a 23 20 55 73 65 20 6e 61 74 69 76 65 20 1..# Use native 52b0: 57 69 6e 33 32 20 68 65 61 70 20 73 75 62 73 79 Win32 heap subsy 52c0: 73 74 65 6d 20 69 6e 73 74 65 61 64 20 6f 66 20 stem instead of 52d0: 6d 61 6c 6c 6f 63 2f 66 72 65 65 3f 0a 23 0a 21 malloc/free?.#.! 52e0: 45 4c 53 45 49 46 20 24 28 57 49 4e 33 32 48 45 ELSEIF$(WIN32HE
52f0: 41 50 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54  AP)!=0.TCC = $(T 5300: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e CC) -DSQLITE_WIN 5310: 33 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 52 43 43 20 32_MALLOC=1.RCC 5320: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 =$(RCC) -DSQLIT
5330: 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d 31  E_WIN32_MALLOC=1
5340: 0a 0a 23 20 56 61 6c 69 64 61 74 65 20 74 68 65  ..# Validate the
5350: 20 68 65 61 70 20 6f 6e 20 65 76 65 72 79 20 63   heap on every c
5360: 61 6c 6c 20 69 6e 74 6f 20 74 68 65 20 6e 61 74  all into the nat
5370: 69 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 73  ive Win32 heap s
5380: 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46 20  ubsystem?.#.!IF
5390: 24 28 44 45 42 55 47 29 3e 33 0a 54 43 43 20 3d  $(DEBUG)>3.TCC = 53a0: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
53b0: 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41  _WIN32_MALLOC_VA
53c0: 4c 49 44 41 54 45 3d 31 0a 52 43 43 20 3d 20 24  LIDATE=1.RCC = $53d0: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 (RCC) -DSQLITE_W 53e0: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49 IN32_MALLOC_VALI 53f0: 44 41 54 45 3d 31 0a 21 45 4e 44 49 46 0a 21 45 DATE=1.!ENDIF.!E 5400: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e NDIF..# <<mark>> 5410: 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 .# The locations 5420: 20 6f 66 20 74 68 65 20 54 63 6c 20 68 65 61 64 of the Tcl head 5430: 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 er and library f 5440: 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65 iles. Also, the 5450: 20 6c 69 62 72 61 72 79 20 74 68 61 74 0a 23 20 library that.# 5460: 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61 62 6c 65 non-stubs enable 5470: 64 20 70 72 6f 67 72 61 6d 73 20 75 73 69 6e 67 d programs using 5480: 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e 6b 20 61 Tcl must link a 5490: 67 61 69 6e 73 74 2e 20 20 54 68 65 73 65 20 76 gainst. These v 54a0: 61 72 69 61 62 6c 65 73 0a 23 20 28 54 43 4c 49 ariables.# (TCLI 54b0: 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42 44 49 52 NCDIR, TCLLIBDIR 54c0: 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29 20 6d 61 , and LIBTCL) ma 54d0: 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 y be overridden 54e0: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d via the environm 54f0: 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 ent.# prior to r 5500: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 unning nmake in 5510: 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74 order to match t 5520: 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c he actual instal 5530: 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 61 6e 64 led location and 5540: 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e 20 74 68 .# version on th 5550: 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49 is machine..#.!I 5560: 46 4e 44 45 46 20 54 43 4c 49 4e 43 44 49 52 0a FNDEF TCLINCDIR. 5570: 54 43 4c 49 4e 43 44 49 52 20 3d 20 63 3a 5c 74 TCLINCDIR = c:\t 5580: 63 6c 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49 cl\include.!ENDI 5590: 46 0a 0a 21 49 46 4e 44 45 46 20 54 43 4c 4c 49 F..!IFNDEF TCLLI 55a0: 42 44 49 52 0a 54 43 4c 4c 49 42 44 49 52 20 3d BDIR.TCLLIBDIR = 55b0: 20 63 3a 5c 74 63 6c 5c 6c 69 62 0a 21 45 4e 44 c:\tcl\lib.!END 55c0: 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 54 IF..!IFNDEF LIBT 55d0: 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 63 6c 38 CL.LIBTCL = tcl8 55e0: 36 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 6.lib.!ENDIF..!I 55f0: 46 4e 44 45 46 20 4c 49 42 54 43 4c 53 54 55 42 FNDEF LIBTCLSTUB 5600: 0a 4c 49 42 54 43 4c 53 54 55 42 20 3d 20 74 63 .LIBTCLSTUB = tc 5610: 6c 73 74 75 62 38 36 2e 6c 69 62 0a 21 45 4e 44 lstub86.lib.!END 5620: 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 54 IF..!IFNDEF LIBT 5630: 43 4c 50 41 54 48 0a 4c 49 42 54 43 4c 50 41 54 CLPATH.LIBTCLPAT 5640: 48 20 3d 20 63 3a 5c 74 63 6c 5c 62 69 6e 0a 21 H = c:\tcl\bin.! 5650: 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c 6f 63 ENDIF..# The loc 5660: 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 49 43 ations of the IC 5670: 55 20 68 65 61 64 65 72 20 61 6e 64 20 6c 69 62 U header and lib 5680: 72 61 72 79 20 66 69 6c 65 73 2e 20 20 54 68 65 rary files. The 5690: 73 65 20 76 61 72 69 61 62 6c 65 73 0a 23 20 28 se variables.# ( 56a0: 49 43 55 49 4e 43 44 49 52 2c 20 49 43 55 4c 49 ICUINCDIR, ICULI 56b0: 42 44 49 52 2c 20 61 6e 64 20 4c 49 42 49 43 55 BDIR, and LIBICU 56c0: 29 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69 64 ) may be overrid 56d0: 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 den via the envi 56e0: 72 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20 ronment.# prior 56f0: 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 to running nmake 5700: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 74 in order to mat 5710: 63 68 20 74 68 65 20 61 63 74 75 61 6c 20 69 6e ch the actual in 5720: 73 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69 6f 6e stalled location 5730: 20 6f 6e 0a 23 20 74 68 69 73 20 6d 61 63 68 69 on.# this machi 5740: 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 49 43 ne..#.!IFNDEF IC 5750: 55 49 4e 43 44 49 52 0a 49 43 55 49 4e 43 44 49 UINCDIR.ICUINCDI 5760: 52 20 3d 20 63 3a 5c 69 63 75 5c 69 6e 63 6c 75 R = c:\icu\inclu 5770: 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 de.!ENDIF..!IFND 5780: 45 46 20 49 43 55 4c 49 42 44 49 52 0a 49 43 55 EF ICULIBDIR.ICU 5790: 4c 49 42 44 49 52 20 3d 20 63 3a 5c 69 63 75 5c LIBDIR = c:\icu\ 57a0: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e lib.!ENDIF..!IFN 57b0: 44 45 46 20 4c 49 42 49 43 55 0a 4c 49 42 49 43 DEF LIBICU.LIBIC 57c0: 55 20 3d 20 69 63 75 75 63 2e 6c 69 62 20 69 63 U = icuuc.lib ic 57d0: 75 69 6e 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a uin.lib.!ENDIF.. 57e0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f # This is the co 57f0: 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 66 6f 72 mmand to use for 5800: 20 74 63 6c 73 68 20 2d 20 6e 6f 72 6d 61 6c 6c tclsh - normall 5810: 79 20 6a 75 73 74 20 22 74 63 6c 73 68 22 2c 20 y just "tclsh", 5820: 62 75 74 20 77 65 20 6d 61 79 0a 23 20 6b 6e 6f but we may.# kno 5830: 77 20 74 68 65 20 73 70 65 63 69 66 69 63 20 76 w the specific v 5840: 65 72 73 69 6f 6e 20 77 65 20 77 61 6e 74 20 74 ersion we want t 5850: 6f 20 75 73 65 2e 20 20 54 68 69 73 20 76 61 72 o use. This var 5860: 69 61 62 6c 65 20 28 54 43 4c 53 48 5f 43 4d 44 iable (TCLSH_CMD 5870: 29 20 6d 61 79 20 62 65 0a 23 20 6f 76 65 72 72 ) may be.# overr 5880: 69 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e idden via the en 5890: 76 69 72 6f 6e 6d 65 6e 74 20 70 72 69 6f 72 20 vironment prior 58a0: 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 to running nmake 58b0: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 73 65 6c in order to sel 58c0: 65 63 74 20 61 0a 23 20 73 70 65 63 69 66 69 63 ect a.# specific 58d0: 20 54 63 6c 20 73 68 65 6c 6c 20 74 6f 20 75 73 Tcl shell to us 58e0: 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54 43 4c e..#.!IFNDEF TCL 58f0: 53 48 5f 43 4d 44 0a 54 43 4c 53 48 5f 43 4d 44 SH_CMD.TCLSH_CMD 5900: 20 3d 20 74 63 6c 73 68 0a 21 45 4e 44 49 46 0a = tclsh.!ENDIF. 5910: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 43 # <</mark>>..# C 5920: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options 5930: 6e 65 65 64 65 64 20 66 6f 72 20 70 72 6f 67 72 needed for progr 5940: 61 6d 73 20 74 68 61 74 20 75 73 65 20 74 68 65 ams that use the 5950: 20 72 65 61 64 6c 69 6e 65 28 29 20 6c 69 62 72 readline() libr 5960: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 52 ary..#.!IFNDEF R 5970: 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 0a 52 45 EADLINE_FLAGS.RE 5980: 41 44 4c 49 4e 45 5f 46 4c 41 47 53 20 3d 20 2d ADLINE_FLAGS = - 5990: 44 48 41 56 45 5f 52 45 41 44 4c 49 4e 45 3d 30 DHAVE_READLINE=0 59a0: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c .!ENDIF..# The l 59b0: 69 62 72 61 72 79 20 74 68 61 74 20 70 72 6f 67 ibrary that prog 59c0: 72 61 6d 73 20 75 73 69 6e 67 20 72 65 61 64 6c rams using readl 59d0: 69 6e 65 28 29 20 6d 75 73 74 20 6c 69 6e 6b 20 ine() must link 59e0: 61 67 61 69 6e 73 74 2e 0a 23 0a 21 49 46 4e 44 against..#.!IFND 59f0: 45 46 20 4c 49 42 52 45 41 44 4c 49 4e 45 0a 4c EF LIBREADLINE.L 5a00: 49 42 52 45 41 44 4c 49 4e 45 20 3d 0a 21 45 4e IBREADLINE =.!EN 5a10: 44 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68 DIF..# Should th 5a20: 65 20 64 61 74 61 62 61 73 65 20 65 6e 67 69 6e e database engin 5a30: 65 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 74 68 e be compiled th 5a40: 72 65 61 64 73 61 66 65 0a 23 0a 54 43 43 20 3d readsafe.#.TCC = 5a50: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
5a60: 5f 54 48 52 45 41 44 53 41 46 45 3d 31 0a 52 43  _THREADSAFE=1.RC
5a70: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 5a80: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 31 ITE_THREADSAFE=1 5a90: 0a 0a 23 20 44 6f 20 74 68 72 65 61 64 73 20 6f ..# Do threads o 5aa0: 76 65 72 72 69 64 65 20 65 61 63 68 20 6f 74 68 verride each oth 5ab0: 65 72 73 20 6c 6f 63 6b 73 20 62 79 20 64 65 66 ers locks by def 5ac0: 61 75 6c 74 20 28 31 29 2c 20 6f 72 20 64 6f 20 ault (1), or do 5ad0: 77 65 20 74 65 73 74 20 28 2d 31 29 0a 23 0a 54 we test (-1).#.T 5ae0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 CC =$(TCC) -DSQ
5af0: 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 52  LITE_THREAD_OVER
5b00: 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 52 43 43  RIDE_LOCK=-1.RCC
5b10: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI 5b20: 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 52 52 49 TE_THREAD_OVERRI 5b30: 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 0a 23 20 41 6e DE_LOCK=-1..# An 5b40: 79 20 74 61 72 67 65 74 20 6c 69 62 72 61 72 69 y target librari 5b50: 65 73 20 77 68 69 63 68 20 6c 69 62 73 71 6c 69 es which libsqli 5b60: 74 65 20 6d 75 73 74 20 62 65 20 6c 69 6e 6b 65 te must be linke 5b70: 64 20 61 67 61 69 6e 73 74 0a 23 0a 21 49 46 4e d against.#.!IFN 5b80: 44 45 46 20 54 4c 49 42 53 0a 54 4c 49 42 53 20 DEF TLIBS.TLIBS 5b90: 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 46 6c 61 67 =.!ENDIF..# Flag 5ba0: 73 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 75 73 s controlling us 5bb0: 65 20 6f 66 20 74 68 65 20 69 6e 20 6d 65 6d 6f e of the in memo 5bc0: 72 79 20 62 74 72 65 65 20 69 6d 70 6c 65 6d 65 ry btree impleme 5bd0: 6e 74 61 74 69 6f 6e 0a 23 0a 23 20 53 51 4c 49 ntation.#.# SQLI 5be0: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 20 69 73 TE_TEMP_STORE is 5bf0: 20 30 20 74 6f 20 66 6f 72 63 65 20 74 65 6d 70 0 to force temp 5c00: 6f 72 61 72 79 20 74 61 62 6c 65 73 20 74 6f 20 orary tables to 5c10: 62 65 20 69 6e 20 61 20 66 69 6c 65 2c 20 31 20 be in a file, 1 5c20: 74 6f 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 to.# default to 5c30: 66 69 6c 65 2c 20 32 20 74 6f 20 64 65 66 61 75 file, 2 to defau 5c40: 6c 74 20 74 6f 20 6d 65 6d 6f 72 79 2c 20 61 6e lt to memory, an 5c50: 64 20 33 20 74 6f 20 66 6f 72 63 65 20 74 65 6d d 3 to force tem 5c60: 70 6f 72 61 72 79 0a 23 20 74 61 62 6c 65 73 20 porary.# tables 5c70: 74 6f 20 61 6c 77 61 79 73 20 62 65 20 69 6e 20 to always be in 5c80: 6d 65 6d 6f 72 79 2e 0a 23 0a 54 43 43 20 3d 20 memory..#.TCC = 5c90: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
5ca0: 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a 52 43 43  TEMP_STORE=1.RCC
5cb0: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI 5cc0: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a TE_TEMP_STORE=1. 5cd0: 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 61 62 6c .# Enable/disabl 5ce0: 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 74 65 6e e loadable exten 5cf0: 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 68 65 72 sions, and other 5d00: 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 74 75 72 optional featur 5d10: 65 73 0a 23 20 62 61 73 65 64 20 6f 6e 20 63 6f es.# based on co 5d20: 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 28 2d 44 nfiguration. (-D 5d30: 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c 20 2d 44 SQLITE_OMIT*, -D 5d40: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 2a 29 2e SQLITE_ENABLE*). 5d50: 0a 23 20 54 68 65 20 73 61 6d 65 20 73 65 74 20 .# The same set 5d60: 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 4e 41 42 of OMIT and ENAB 5d70: 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 6c 64 20 LE flags should 5d80: 62 65 20 70 61 73 73 65 64 20 74 6f 20 74 68 65 be passed to the 5d90: 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 65 72 20 .# LEMON parser 5da0: 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 20 74 68 generator and th 5db0: 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 20 e mkkeywordhash 5dc0: 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e 0a 0a 23 tool as well...# 5dd0: 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 72 These are the r 5de0: 65 71 75 69 72 65 64 20 53 51 4c 69 74 65 20 63 equired SQLite c 5df0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f ompilation optio 5e00: 6e 73 20 75 73 65 64 20 77 68 65 6e 20 63 6f 6d ns used when com 5e10: 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 74 68 65 piling for.# the 5e20: 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 Windows platfor 5e30: 6d 2e 0a 23 0a 52 45 51 5f 46 45 41 54 55 52 45 m..#.REQ_FEATURE 5e40: 5f 46 4c 41 47 53 20 3d 20 24 28 52 45 51 5f 46 _FLAGS =$(REQ_F
5e50: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  EATURE_FLAGS) -D
5e60: 53 51 4c 49 54 45 5f 4d 41 58 5f 54 52 49 47 47  SQLITE_MAX_TRIGG
5e70: 45 52 5f 44 45 50 54 48 3d 31 30 30 0a 0a 23 20  ER_DEPTH=100..#
5e80: 49 66 20 77 65 20 61 72 65 20 6c 69 6e 6b 69 6e  If we are linkin
5e90: 67 20 74 6f 20 74 68 65 20 52 50 43 52 54 34 20  g to the RPCRT4
5ea0: 6c 69 62 72 61 72 79 2c 20 65 6e 61 62 6c 65 20  library, enable
5eb0: 66 65 61 74 75 72 65 73 20 74 68 61 74 20 6e 65  features that ne
5ec0: 65 64 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 55  ed it..#.!IF $(U 5ed0: 53 45 5f 52 50 43 52 54 34 5f 4c 49 42 29 21 3d SE_RPCRT4_LIB)!= 5ee0: 30 0a 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 0.REQ_FEATURE_FL 5ef0: 41 47 53 20 3d 20 24 28 52 45 51 5f 46 45 41 54 AGS =$(REQ_FEAT
5f00: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c  URE_FLAGS) -DSQL
5f10: 49 54 45 5f 57 49 4e 33 32 5f 55 53 45 5f 55 55  ITE_WIN32_USE_UU
5f20: 49 44 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20 41  ID=1.!ENDIF..# A
5f30: 64 64 20 74 68 65 20 72 65 71 75 69 72 65 64 20  dd the required
5f40: 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 20 53 51 4c  and optional SQL
5f50: 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  ite compilation
5f60: 6f 70 74 69 6f 6e 73 20 69 6e 74 6f 20 74 68 65  options into the
5f70: 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 73   command.# lines
5f80: 20 75 73 65 64 20 74 6f 20 69 6e 76 6f 6b 65 20   used to invoke
5f90: 74 68 65 20 4d 53 56 43 20 63 6f 64 65 20 61 6e  the MSVC code an
5fa0: 64 20 72 65 73 6f 75 72 63 65 20 63 6f 6d 70 69  d resource compi
5fb0: 6c 65 72 73 2e 0a 23 0a 54 43 43 20 3d 20 24 28  lers..#.TCC = $( 5fc0: 54 43 43 29 20 24 28 52 45 51 5f 46 45 41 54 55 TCC)$(REQ_FEATU
5fd0: 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f  RE_FLAGS) $(OPT_ 5fe0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 FEATURE_FLAGS)$
5ff0: 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (EXT_FEATURE_FLA
6000: 47 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43 29  GS).RCC = $(RCC) 6010: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46$(REQ_FEATURE_F
6020: 4c 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54  LAGS) $(OPT_FEAT 6030: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 URE_FLAGS)$(EXT
6040: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a  _FEATURE_FLAGS).
6050: 0a 23 20 41 64 64 20 69 6e 20 61 6e 79 20 6f 70  .# Add in any op
6060: 74 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72  tional parameter
6070: 73 20 73 70 65 63 69 66 69 65 64 20 6f 6e 20 74  s specified on t
6080: 68 65 20 63 6f 6d 6d 61 6e 65 20 6c 69 6e 65 2c  he commane line,
6090: 20 65 2e 67 2e 0a 23 20 6e 6d 61 6b 65 20 2f 66   e.g..# nmake /f
60a0: 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 61 6c   Makefile.msc al
60b0: 6c 20 22 4f 50 54 53 3d 2d 44 53 51 4c 49 54 45  l "OPTS=-DSQLITE
60c0: 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d 31 20 2d 44  _ENABLE_FOO=1 -D
60d0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46 4f 4f 3d  SQLITE_OMIT_FOO=
60e0: 31 22 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43  1".#.TCC = $(TCC 60f0: 29 20 24 28 4f 50 54 53 29 0a 52 43 43 20 3d 20 )$(OPTS).RCC =
6100: 24 28 52 43 43 29 20 24 28 4f 50 54 53 29 0a 0a  $(RCC)$(OPTS)..
6110: 23 20 49 66 20 63 6f 6d 70 69 6c 69 6e 67 20 66  # If compiling f
6120: 6f 72 20 64 65 62 75 67 67 69 6e 67 2c 20 61 64  or debugging, ad
6130: 64 20 73 6f 6d 65 20 64 65 66 69 6e 65 73 2e 0a  d some defines..
6140: 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31  #.!IF $(DEBUG)>1 6150: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 .TCC =$(TCC) -D
6160: 5f 44 45 42 55 47 0a 42 43 43 20 3d 20 24 28 42  _DEBUG.BCC = $(B 6170: 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 52 43 43 CC) -D_DEBUG.RCC 6180: 20 3d 20 24 28 52 43 43 29 20 2d 44 5f 44 45 42 =$(RCC) -D_DEB
6190: 55 47 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20  UG.!ENDIF..# If
61a0: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72  optimizations ar
61b0: 65 20 65 6e 61 62 6c 65 64 20 6f 72 20 64 69 73  e enabled or dis
61c0: 61 62 6c 65 64 20 28 65 69 74 68 65 72 20 69 6d  abled (either im
61d0: 70 6c 69 63 69 74 6c 79 20 6f 72 0a 23 20 65 78  plicitly or.# ex
61e0: 70 6c 69 63 69 74 6c 79 29 2c 20 61 64 64 20 74  plicitly), add t
61f0: 68 65 20 6e 65 63 65 73 73 61 72 79 20 66 6c 61  he necessary fla
6200: 67 73 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55  gs..#.!IF $(DEBU 6210: 47 29 3e 31 20 7c 7c 20 24 28 4f 50 54 49 4d 49 G)>1 ||$(OPTIMI
6220: 5a 41 54 49 4f 4e 53 29 3d 3d 30 0a 54 43 43 20  ZATIONS)==0.TCC
6230: 3d 20 24 28 54 43 43 29 20 2d 4f 64 0a 42 43 43  = $(TCC) -Od.BCC 6240: 20 3d 20 24 28 42 43 43 29 20 2d 4f 64 0a 21 49 =$(BCC) -Od.!I
6250: 46 20 24 28 55 53 45 5f 52 55 4e 54 49 4d 45 5f  F $(USE_RUNTIME_ 6260: 43 48 45 43 4b 53 29 21 3d 30 0a 54 43 43 20 3d CHECKS)!=0.TCC = 6270: 20 24 28 54 43 43 29 20 2d 52 54 43 31 0a 42 43$(TCC) -RTC1.BC
6280: 43 20 3d 20 24 28 42 43 43 29 20 2d 52 54 43 31  C = $(BCC) -RTC1 6290: 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 49 46 20 .!ENDIF.!ELSEIF 62a0: 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29$(OPTIMIZATIONS)
62b0: 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29  >=3.TCC = $(TCC) 62c0: 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 42 43 43 -Ox.BCC =$(BCC
62d0: 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46 20 24 28  ) -Ox.!ELSEIF $( 62e0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d OPTIMIZATIONS)== 62f0: 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 2.TCC =$(TCC) -
6300: 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  O2.BCC = $(BCC) 6310: 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 28 4f 50 -O2.!ELSEIF$(OP
6320: 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 31 0a  TIMIZATIONS)==1.
6330: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f 31  TCC = $(TCC) -O1 6340: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4f .BCC =$(BCC) -O
6350: 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 73  1.!ENDIF..# If s
6360: 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 6c  ymbols are enabl
6370: 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c 69 6e 67  ed (or compiling
6380: 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 29 2c   for debugging),
6390: 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a   enable PDBs..#.
63a0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c  !IF $(DEBUG)>1 | 63b0: 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a |$(SYMBOLS)!=0.
63c0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 5a 69  TCC = $(TCC) -Zi 63d0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 5a .BCC =$(BCC) -Z
63e0: 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61  i.!ENDIF..# <<ma
63f0: 72 6b 3e 3e 0a 23 20 49 66 20 49 43 55 20 73 75  rk>>.# If ICU su
6400: 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64  pport is enabled
6410: 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70 69 6c  , add the compil
6420: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69  er options for i
6430: 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49  t..#.!IF $(USE_I 6440: 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 CU)!=0.TCC =$(T
6450: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  CC) -DSQLITE_ENA
6460: 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43 20 3d 20  BLE_ICU=1.RCC =
6470: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(RCC) -DSQLITE_ 6480: 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43 43 ENABLE_ICU=1.TCC 6490: 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f =$(TCC) -I$(TO 64a0: 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 43 20 3d P)\ext\icu.RCC = 64b0: 20 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29$(RCC) -I$(TOP) 64c0: 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20 24 \ext\icu.TCC =$
64d0: 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e 43  (TCC) -I$(ICUINC 64e0: 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43 43 DIR).RCC =$(RCC
64f0: 29 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 29  ) -I$(ICUINCDIR) 6500: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 .!ENDIF.# <</mar 6510: 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20 6c k>>..# Command l 6520: 69 6e 65 20 70 72 65 66 69 78 65 73 20 66 6f 72 ine prefixes for 6530: 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65 2c compiling code, 6540: 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 73 6f 75 compiling resou 6550: 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67 2c rces,.# linking, 6560: 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49 4c etc..#.LTCOMPIL 6570: 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24 40 E =$(TCC) -Fo$@ 6580: 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d 20 24 28 .LTRCOMPILE =$(
6590: 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42 20 3d 20  RCC) -r.LTLIB =
65a0: 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 3d  lib.exe.LTLINK =
65b0: 20 24 28 54 43 43 29 20 2d 46 65 24 40 0a 0a 23   $(TCC) -Fe$@..#
65c0: 20 49 66 20 72 65 71 75 65 73 74 65 64 2c 20 6c   If requested, l
65d0: 69 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54  ink to the RPCRT
65e0: 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46  4 library..#.!IF
65f0: 20 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c 49   $(USE_RPCRT4_LI 6600: 42 29 21 3d 30 0a 4c 54 4c 49 4e 4b 20 3d 20 24 B)!=0.LTLINK =$
6610: 28 4c 54 4c 49 4e 4b 29 20 72 70 63 72 74 34 2e  (LTLINK) rpcrt4.
6620: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66  lib.!ENDIF..# If
6630: 20 61 20 70 6c 61 74 66 6f 72 6d 20 77 61 73 20   a platform was
6640: 73 65 74 2c 20 66 6f 72 63 65 20 74 68 65 20 6c  set, force the l
6650: 69 6e 6b 65 72 20 74 6f 20 74 61 72 67 65 74 20  inker to target
6660: 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20 74 68 61  that..# Note tha
6670: 74 20 74 68 65 20 76 63 76 61 72 73 2a 2e 62 61  t the vcvars*.ba
6680: 74 20 66 61 6d 69 6c 79 20 6f 66 20 62 61 74 63  t family of batc
6690: 68 20 66 69 6c 65 73 20 74 79 70 69 63 61 6c 6c  h files typicall
66a0: 79 0a 23 20 73 65 74 20 74 68 69 73 20 66 6f 72  y.# set this for
66b0: 20 79 6f 75 2e 20 20 4f 74 68 65 72 77 69 73 65   you.  Otherwise
66c0: 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20 77 69 6c  , the linker wil
66d0: 6c 20 61 74 74 65 6d 70 74 0a 23 20 74 6f 20 64  l attempt.# to d
66e0: 65 64 75 63 65 20 74 68 65 20 62 69 6e 61 72 79  educe the binary
66f0: 20 74 79 70 65 20 62 61 73 65 64 20 6f 6e 20 74   type based on t
6700: 68 65 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 2e  he object files.
6710: 0a 21 49 46 44 45 46 20 50 4c 41 54 46 4f 52 4d  .!IFDEF PLATFORM
6720: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f 4e  .LTLINKOPTS = /N
6730: 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a 24  OLOGO /MACHINE:$6740: 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49 42 (PLATFORM).LTLIB 6750: 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 20 2f OPTS = /NOLOGO / 6760: 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 46 4f MACHINE:$(PLATFO
6770: 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b  RM).!ELSE.LTLINK
6780: 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a 4c  OPTS = /NOLOGO.L
6790: 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f  TLIBOPTS = /NOLO
67a0: 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65  GO.!ENDIF..# Whe
67b0: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20  n compiling for
67c0: 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54  use in the WinRT
67d0: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 68   environment, th
67e0: 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c 69  e following.# li
67f0: 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 74  nker option must
6800: 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 72 6b   be used to mark
6810: 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20   the executable
6820: 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f 6e  as runnable.# on
6830: 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78  ly in the contex
6840: 74 20 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 74  t of an applicat
6850: 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a 23  ion container..#
6860: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54  .!IF $(FOR_WINRT 6870: 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 )!=0.LTLINKOPTS 6880: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 =$(LTLINKOPTS)
6890: 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 49  /APPCONTAINER.!I
68a0: 46 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 49  F "$(VISUALSTUDI 68b0: 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32 2e OVERSION)"=="12. 68c0: 30 22 20 7c 7c 20 22 24 28 56 49 53 55 41 4c 53 0" || "$(VISUALS
68d0: 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d  TUDIOVERSION)"==
68e0: 22 31 34 2e 30 22 0a 21 49 46 4e 44 45 46 20 53  "14.0".!IFNDEF S
68f0: 54 4f 52 45 4c 49 42 50 41 54 48 0a 21 49 46 20  TORELIBPATH.!IF
6900: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"==" 6910: 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 50 41 54 x86".STORELIBPAT 6920: 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 H =$(CRTLIBPATH
6930: 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45 49 46 20  )\store.!ELSEIF
6940: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"==" 6950: 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 50 41 54 x64".STORELIBPAT 6960: 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 H =$(CRTLIBPATH
6970: 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34 0a 21 45  )\store\amd64.!E
6980: 4c 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f 52  LSEIF "$(PLATFOR 6990: 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 4f 52 45 M)"=="ARM".STORE 69a0: 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c LIBPATH =$(CRTL
69b0: 49 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 72  IBPATH)\store\ar
69c0: 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45 4c 49 42  m.!ELSE.STORELIB
69d0: 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50  PATH = $(CRTLIBP 69e0: 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4e 44 49 ATH)\store.!ENDI 69f0: 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 45 4c 49 F.!ENDIF.STORELI 6a00: 42 50 41 54 48 20 3d 20 24 28 53 54 4f 52 45 4c BPATH =$(STOREL
6a10: 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4c 54 4c  IBPATH:\\=\).LTL
6a20: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 6a30: 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 50 41 54 NKOPTS) "/LIBPAT 6a40: 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 41 54 48 H:$(STORELIBPATH
6a50: 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  )".!ENDIF.!ENDIF
6a60: 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
6a70: 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 50  ng for Windows P
6a80: 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20 65 78 74  hone 8.1, an ext
6a90: 72 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 20  ra library path
6aa0: 69 73 0a 23 20 72 65 71 75 69 72 65 64 2e 0a 23  is.# required..#
6ab0: 0a 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 5f  .!IF $(USE_WP81_ 6ac0: 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 44 45 46 OPTS)!=0.!IFNDEF 6ad0: 20 57 50 38 31 4c 49 42 50 41 54 48 0a 21 49 46 WP81LIBPATH.!IF 6ae0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
6af0: 22 78 38 36 22 0a 57 50 38 31 4c 49 42 50 41 54  "x86".WP81LIBPAT
6b00: 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c  H = $(PROGRAMFIL 6b10: 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 ES_X86)\Windows 6b20: 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c Phone Kits\8.1\l 6b30: 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 46 20 22 ib\x86.!ELSEIF " 6b40: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 41$(PLATFORM)"=="A
6b50: 52 4d 22 0a 57 50 38 31 4c 49 42 50 41 54 48 20  RM".WP81LIBPATH
6b60: 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 53  = $(PROGRAMFILES 6b70: 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50 68 _X86)\Windows Ph 6b80: 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69 62 one Kits\8.1\lib 6b90: 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 38 31 4c \ARM.!ELSE.WP81L 6ba0: 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47 52 IBPATH =$(PROGR
6bb0: 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 6e  AMFILES_X86)\Win
6bc0: 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 5c  dows Phone Kits\
6bd0: 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4e 44  8.1\lib\x86.!END
6be0: 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  IF.!ENDIF.!ENDIF
6bf0: 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
6c00: 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 50  ng for Windows P
6c10: 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d 65 20 65  hone 8.1, some e
6c20: 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 69  xtra linker opti
6c30: 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73 6f 20 72  ons.# are also r
6c40: 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 24  equired..#.!IF $6c50: 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29 21 (USE_WP81_OPTS)! 6c60: 3d 30 0a 21 49 46 44 45 46 20 57 50 38 31 4c 49 =0.!IFDEF WP81LI 6c70: 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54 53 BPATH.LTLINKOPTS 6c80: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 =$(LTLINKOPTS)
6c90: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 57 50 38   "/LIBPATH:$(WP8 6ca0: 31 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44 49 1LIBPATH)".!ENDI 6cb0: 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 F.LTLINKOPTS =$
6cc0: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44 59  (LTLINKOPTS) /DY
6cd0: 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c 49 4e 4b  NAMICBASE.LTLINK
6ce0: 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f  OPTS = $(LTLINKO 6cf0: 50 54 53 29 20 57 69 6e 64 6f 77 73 50 68 6f 6e PTS) WindowsPhon 6d00: 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e 74 69 6d eCore.lib Runtim 6d10: 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 68 6f 6e eObject.lib Phon 6d20: 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 2e 6c 69 eAppModelHost.li 6d30: 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 b.LTLINKOPTS =$
6d40: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e 4f  (LTLINKOPTS) /NO
6d50: 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65  DEFAULTLIB:kerne
6d60: 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45 46 41 55  l32.lib /NODEFAU
6d70: 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c 69 62 0a  LTLIB:ole32.lib.
6d80: 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63  !ENDIF..# When c
6d90: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 55 57 50  ompiling for UWP
6da0: 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20   or the Windows
6db0: 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 73 6f 6d  10 platform, som
6dc0: 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 0a 23  e extra linker.#
6dd0: 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 6c 73   options are als
6de0: 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49  o required..#.!I
6df0: 46 20 24 28 46 4f 52 5f 55 57 50 29 21 3d 30 20  F $(FOR_UWP)!=0 6e00: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 ||$(FOR_WIN10)!
6e10: 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  =0.LTLINKOPTS =
6e20: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44  $(LTLINKOPTS) /D 6e30: 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e 4f 44 45 YNAMICBASE /NODE 6e40: 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c 33 FAULTLIB:kernel3 6e50: 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 2.lib.LTLINKOPTS 6e60: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 =$(LTLINKOPTS)
6e70: 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a 21 49 46   mincore.lib.!IF
6e80: 44 45 46 20 50 53 44 4b 4c 49 42 50 41 54 48 0a  DEF PSDKLIBPATH.
6e90: 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c  LTLINKOPTS = $(L 6ea0: 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 TLINKOPTS) "/LIB 6eb0: 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 42 50 41 PATH:$(PSDKLIBPA
6ec0: 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44  TH)".!ENDIF.!END
6ed0: 49 46 0a 0a 21 49 46 20 24 28 46 4f 52 5f 57 49  IF..!IF $(FOR_WI 6ee0: 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 N10)!=0.LTLINKOP 6ef0: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 TS =$(LTLINKOPT
6f00: 53 29 20 2f 67 75 61 72 64 3a 63 66 20 22 2f 4c  S) /guard:cf "/L
6f10: 49 42 50 41 54 48 3a 24 28 55 43 52 54 4c 49 42  IBPATH:$(UCRTLIB 6f20: 50 41 54 48 29 22 0a 21 49 46 20 24 28 44 45 42 PATH)".!IF$(DEB
6f30: 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f 50 54 53  UG)>1.LTLINKOPTS
6f40: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS) 6f50: 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6c /NODEFAULTLIB:l 6f60: 69 62 75 63 72 74 64 2e 6c 69 62 20 2f 44 45 46 ibucrtd.lib /DEF 6f70: 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 2e 6c 69 AULTLIB:ucrtd.li 6f80: 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f 50 b.!ELSE.LTLINKOP 6f90: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 TS =$(LTLINKOPT
6fa0: 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42  S) /NODEFAULTLIB
6fb0: 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20 2f 44 45  :libucrt.lib /DE
6fc0: 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 2e 6c 69  FAULTLIB:ucrt.li
6fd0: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a  b.!ENDIF.!ENDIF.
6fe0: 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 62  .# If either deb
6ff0: 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f 6c  ugging or symbol
7000: 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 65  s are enabled, e
7010: 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 49  nable PDBs..#.!I
7020: 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c 20  F $(DEBUG)>1 || 7030: 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c 44$(SYMBOLS)!=0.LD
7040: 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 20 24  FLAGS = /DEBUG $7050: 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53 45 0a 4c (LDOPTS).!ELSE.L 7060: 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 4f 50 54 DFLAGS =$(LDOPT
7070: 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d  S).!ENDIF..# <<m
7080: 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74 20 77 69  ark>>.# Start wi
7090: 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c 61 74  th the Tcl relat
70a0: 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e  ed linker option
70b0: 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 43  s..#.!IF $(NO_TC 70c0: 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 L)==0.LTLIBPATHS 70d0: 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28 54 43 = /LIBPATH:$(TC
70e0: 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 20  LLIBDIR).LTLIBS
70f0: 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44  = $(LIBTCL).!END 7100: 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75 70 IF..# If ICU sup 7110: 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c port is enabled, 7120: 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 20 add the linker 7130: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a options for it.. 7140: 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55 29 #.!IF$(USE_ICU)
7150: 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d  !=0.LTLIBPATHS =
7160: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) / 7170: 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49 42 LIBPATH:$(ICULIB
7180: 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28  DIR).LTLIBS = $( 7190: 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43 55 LTLIBS)$(LIBICU
71a0: 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  ).!ENDIF.# <</ma
71b0: 72 6b 3e 3e 0a 0a 23 20 59 6f 75 20 73 68 6f 75  rk>>..# You shou
71c0: 6c 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 63  ld not have to c
71d0: 68 61 6e 67 65 20 61 6e 79 74 68 69 6e 67 20 62  hange anything b
71e0: 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 0a 23  elow this line.#
71f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7200: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7210: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7220: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7230: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a  ##############..
7240: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62 6a  # <<mark>>.# Obj
7250: 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 68  ect files for th
7260: 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79  e SQLite library
7270: 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69   (non-amalgamati
7280: 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 20  on)..#.LIBOBJS0
7290: 3d 20 76 64 62 65 2e 6c 6f 20 70 61 72 73 65 2e  = vdbe.lo parse.
72a0: 6c 6f 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 6c  lo alter.lo anal
72b0: 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c 6f  yze.lo attach.lo
72c0: 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 20   auth.lo \.
72d0: 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62 69      backup.lo bi
72e0: 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78 2e  tvec.lo btmutex.
72f0: 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69 6c  lo btree.lo buil
7300: 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  d.lo \.
7310: 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d 70  callback.lo comp
7320: 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c 6f  lete.lo ctime.lo
7330: 20 64 61 74 65 2e 6c 6f 20 64 62 73 74 61 74 2e   date.lo dbstat.
7340: 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20  lo delete.lo \.
7350: 20 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f 20          expr.lo
7360: 66 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f  fault.lo fkey.lo
7370: 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 33   \.         fts3
7380: 2e 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 20  .lo fts3_aux.lo
7390: 66 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 73  fts3_expr.lo fts
73a0: 33 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f 69  3_hash.lo fts3_i
73b0: 63 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  cu.lo \.
73c0: 20 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 20   fts3_porter.lo
73d0: 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 20  fts3_snippet.lo
73e0: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c  fts3_tokenizer.l
73f0: 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  o fts3_tokenizer
7400: 31 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  1.lo \.
7410: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74  fts3_tokenize_vt
7420: 61 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f  ab.lo fts3_unico
7430: 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f  de.lo fts3_unico
7440: 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 74  de2.lo fts3_writ
7450: 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  e.lo \.
7460: 66 74 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  fts5.lo \.
7470: 20 20 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61     func.lo globa
7480: 6c 2e 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a 20  l.lo hash.lo \.
7490: 20 20 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 69          icu.lo i
74a0: 6e 73 65 72 74 2e 6c 6f 20 6c 65 67 61 63 79 2e  nsert.lo legacy.
74b0: 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c 0a  lo loadext.lo \.
74c0: 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c 6f           main.lo
74d0: 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 2e   malloc.lo mem0.
74e0: 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 2e  lo mem1.lo mem2.
74f0: 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 2e  lo mem3.lo mem5.
7500: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 65  lo \.         me
7510: 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20 20  mjournal.lo \.
7520: 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f 20         mutex.lo
7530: 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d 75  mutex_noop.lo mu
7540: 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74 65  tex_unix.lo mute
7550: 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20 20  x_w32.lo \.
7560: 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f 70      notify.lo op
7570: 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20 6f  codes.lo os.lo o
7580: 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69 6e  s_unix.lo os_win
7590: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 70  .lo \.         p
75a0: 61 67 65 72 2e 6c 6f 20 70 63 61 63 68 65 2e 6c  ager.lo pcache.l
75b0: 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 61  o pcache1.lo pra
75c0: 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e 6c  gma.lo prepare.l
75d0: 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 20  o printf.lo \.
75e0: 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c 6f         random.lo
75f0: 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 73   resolve.lo rows
7600: 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 5c  et.lo rtree.lo \
7610: 0a 20 20 20 20 20 20 20 20 20 73 71 6c 69 74 65  .         sqlite
7620: 33 73 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 6c 65  3session.lo sele
7630: 63 74 2e 6c 6f 20 73 71 6c 69 74 65 33 72 62 75  ct.lo sqlite3rbu
7640: 2e 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c 0a  .lo status.lo \.
7650: 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e 6c           table.l
7660: 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f 6b  o threads.lo tok
7670: 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 65  enize.lo treevie
7680: 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20  w.lo trigger.lo
7690: 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 74  \.         updat
76a0: 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63  e.lo util.lo vac
76b0: 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  uum.lo \.
76c0: 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62    vdbeapi.lo vdb
76d0: 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62  eaux.lo vdbeblob
76e0: 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76  .lo vdbemem.lo v
76f0: 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20  dbesort.lo \.
7700: 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e        vdbetrace.
7710: 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72  lo wal.lo walker
7720: 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 65  .lo where.lo whe
7730: 72 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 65  recode.lo wheree
7740: 78 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  xpr.lo \.
7750: 20 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c 6f    utf.lo vtab.lo
7760: 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20  .# <</mark>>..#
7770: 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72  Object files for
7780: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f   the amalgamatio
7790: 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20  n..#.LIBOBJS1 =
77a0: 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65  sqlite3.lo..# De
77b0: 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c  termine the real
77c0: 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a   value of LIBOBJ
77d0: 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63   based on the 'c
77e0: 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74  onfigure' script
77f0: 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 49  .#.# <<mark>>.!I
7800: 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41  F $(USE_AMALGAMA 7810: 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a 20 TION)==0.LIBOBJ 7820: 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21 45 =$(LIBOBJS0).!E
7830: 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  LSE.# <</mark>>.
7840: 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42  LIBOBJ = $(LIBOB 7850: 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a JS1).# <<mark>>. 7860: 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b !ENDIF.# <</mark 7870: 3e 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65 20 >>..# Determine 7880: 69 66 20 65 6d 62 65 64 64 65 64 20 72 65 73 6f if embedded reso 7890: 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e urce compilation 78a0: 20 61 6e 64 20 75 73 61 67 65 20 61 72 65 20 65 and usage are e 78b0: 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28 nabled..#.!IF$(
78c0: 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 45  USE_RC)!=0.LIBRE
78d0: 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 72  SOBJS = sqlite3r
78e0: 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 52  es.lo.!ELSE.LIBR
78f0: 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 0a  ESOBJS =.!ENDIF.
7900: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 6f  .# <<mark>>.# Co
7910: 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  re source code f
7920: 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a  iles, part 1..#.
7930: 53 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC00 = \.  $(TO 7940: 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 5c P)\src\alter.c \ 7950: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e .$(TOP)\src\an
7960: 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f  alyze.c \.  $(TO 7970: 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 20 P)\src\attach.c 7980: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 \.$(TOP)\src\a
7990: 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  uth.c \.  $(TOP) 79a0: 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a \src\backup.c \. 79b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74$(TOP)\src\bit
79c0: 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  vec.c \.  $(TOP) 79d0: 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 20 5c \src\btmutex.c \ 79e0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 .$(TOP)\src\bt
79f0: 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ree.c \.  $(TOP) 7a00: 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a 20 \src\build.c \. 7a10: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c$(TOP)\src\call
7a20: 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50  back.c \.  $(TOP 7a30: 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 )\src\complete.c 7a40: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7a50: 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 4f  ctime.c \.  $(TO 7a60: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c 0a P)\src\date.c \. 7a70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 73$(TOP)\src\dbs
7a80: 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tat.c \.  $(TOP) 7a90: 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c 0a \src\delete.c \. 7aa0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70$(TOP)\src\exp
7ab0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  r.c \.  $(TOP)\s 7ac0: 72 63 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20 24 rc\fault.c \.$
7ad0: 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63  (TOP)\src\fkey.c
7ae0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 7af0: 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 func.c \.$(TOP
7b00: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c  )\src\global.c \
7b10: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61  .  $(TOP)\src\ha 7b20: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sh.c \.$(TOP)\
7b30: 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 5c 0a 20  src\insert.c \.
7b40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61   $(TOP)\src\lega 7b50: 63 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c cy.c \.$(TOP)\
7b60: 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 5c 0a  src\loadext.c \.
7b70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69    $(TOP)\src\mai 7b80: 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 n.c \.$(TOP)\s
7b90: 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20  rc\malloc.c \.
7ba0: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30 2e  $(TOP)\src\mem0. 7bb0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7bc0: 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20 24 28 54 4f  \mem1.c \.  $(TO 7bd0: 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 5c 0a P)\src\mem2.c \. 7be0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d$(TOP)\src\mem
7bf0: 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  3.c \.  $(TOP)\s 7c00: 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a 20 20 24 28 rc\mem5.c \.$(
7c10: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72  TOP)\src\memjour
7c20: 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nal.c \.  $(TOP) 7c30: 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 5c 0a 20 \src\mutex.c \. 7c40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65$(TOP)\src\mute
7c50: 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 54  x_noop.c \.  $(T 7c60: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e OP)\src\mutex_un 7c70: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ix.c \.$(TOP)\
7c80: 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20  src\mutex_w32.c
7c90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e  \.  $(TOP)\src\n 7ca0: 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 28 54 4f otify.c \.$(TO
7cb0: 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 20  P)\src\os.c \.
7cc0: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e  $(TOP)\src\os_un 7cd0: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ix.c \.$(TOP)\
7ce0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 23 20  src\os_win.c..#
7cf0: 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65  Core source code
7d00: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a   files, part 2..
7d10: 23 0a 53 52 43 30 31 20 3d 20 5c 0a 20 20 24 28  #.SRC01 = \.  $( 7d20: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 TOP)\src\pager.c 7d30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7d40: 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54  pcache.c \.  $(T 7d50: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e OP)\src\pcache1. 7d60: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7d70: 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 28  \pragma.c \.  $( 7d80: 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 TOP)\src\prepare 7d90: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7da0: 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24  c\printf.c \.  $7db0: 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d (TOP)\src\random 7dc0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7dd0: 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20 20  c\resolve.c \.
7de0: 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65  $(TOP)\src\rowse 7df0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 t.c \.$(TOP)\s
7e00: 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 20  rc\select.c \.
7e10: 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75  $(TOP)\src\statu 7e20: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 s.c \.$(TOP)\s
7e30: 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a 20 20 24  rc\table.c \.  $7e40: 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61 64 (TOP)\src\thread 7e50: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 s.c \.$(TOP)\s
7e60: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 5c  rc\tclsqlite.c \
7e70: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f  .  $(TOP)\src\to 7e80: 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28 54 kenize.c \.$(T
7e90: 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 77  OP)\src\treeview
7ea0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7eb0: 63 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20 20 c\trigger.c \. 7ec0: 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63$(TOP)\src\utf.c
7ed0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 7ee0: 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28 54 update.c \.$(T
7ef0: 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c  OP)\src\util.c \
7f00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61  .  $(TOP)\src\va 7f10: 63 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 cuum.c \.$(TOP
7f20: 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a 20  )\src\vdbe.c \.
7f30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe 7f40: 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 api.c \.$(TOP)
7f50: 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 5c  \src\vdbeaux.c \
7f60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd 7f70: 62 65 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28 54 beblob.c \.$(T
7f80: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e  OP)\src\vdbemem.
7f90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 7fa0: 5c 76 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20 20 \vdbesort.c \. 7fb0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74$(TOP)\src\vdbet
7fc0: 72 61 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  race.c \.  $(TOP 7fd0: 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a 20 )\src\vtab.c \. 7fe0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e$(TOP)\src\wal.
7ff0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8000: 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20 20 24 28 \walker.c \.$(
8010: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63  TOP)\src\where.c
8020: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8030: 77 68 65 72 65 63 6f 64 65 2e 63 20 5c 0a 20 20 wherecode.c \. 8040: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65$(TOP)\src\where
8050: 65 78 70 72 2e 63 0a 0a 23 20 53 68 65 6c 6c 20  expr.c..# Shell
8060: 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65  source code file
8070: 73 2e 0a 23 0a 53 52 43 30 32 20 3d 20 5c 0a 20  s..#.SRC02 = \.
8080: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c   $(TOP)\src\shel 8090: 6c 2e 63 0a 0a 23 20 43 6f 72 65 20 6d 69 73 63 l.c..# Core misc 80a0: 65 6c 6c 61 6e 65 6f 75 73 20 66 69 6c 65 73 2e ellaneous files. 80b0: 0a 23 0a 53 52 43 30 33 20 3d 20 5c 0a 20 20 24 .#.SRC03 = \.$
80c0: 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e  (TOP)\src\parse.
80d0: 79 0a 0a 23 20 43 6f 72 65 20 68 65 61 64 65 72  y..# Core header
80e0: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a   files, part 1..
80f0: 23 0a 53 52 43 30 34 20 3d 20 5c 0a 20 20 24 28  #.SRC04 = \.  $( 8100: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 TOP)\src\btree.h 8110: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8120: 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 24  btreeInt.h \.  $8130: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 (TOP)\src\hash.h 8140: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8150: 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 24 28 54  hwtime.h \.  $(T 8160: 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 20 5c OP)\src\msvc.h \ 8170: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 .$(TOP)\src\mu
8180: 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  tex.h \.  $(TOP) 8190: 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 24 28 \src\os.h \.$(
81a0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d 6d  TOP)\src\os_comm
81b0: 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  on.h \.  $(TOP)\ 81c0: 73 72 63 5c 6f 73 5f 73 65 74 75 70 2e 68 20 5c src\os_setup.h \ 81d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 .$(TOP)\src\os
81e0: 5f 77 69 6e 2e 68 0a 0a 23 20 43 6f 72 65 20 68  _win.h..# Core h
81f0: 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 72  eader files, par
8200: 74 20 32 2e 0a 23 0a 53 52 43 30 35 20 3d 20 5c  t 2..#.SRC05 = \
8210: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61  .  $(TOP)\src\pa 8220: 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ger.h \.$(TOP)
8230: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a  \src\pcache.h \.
8240: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61    $(TOP)\src\pra 8250: 67 6d 61 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 gma.h \.$(TOP)
8260: 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e  \src\sqlite.h.in
8270: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8280: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a 20 sqlite3ext.h \. 8290: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69$(TOP)\src\sqli
82a0: 74 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f  teInt.h \.  $(TO 82b0: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69 6d P)\src\sqliteLim 82c0: 69 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c it.h \.$(TOP)\
82d0: 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 24  src\vdbe.h \.  $82e0: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e (TOP)\src\vdbeIn 82f0: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 t.h \.$(TOP)\s
8300: 72 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20  rc\vxworks.h \.
8310: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e   $(TOP)\src\wal. 8320: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 h \.$(TOP)\src
8330: 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 45  \whereInt.h..# E
8340: 78 74 65 6e 73 69 6f 6e 20 73 6f 75 72 63 65 20  xtension source
8350: 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 72 74  code files, part
8360: 20 31 2e 0a 23 0a 53 52 43 30 36 20 3d 20 5c 0a   1..#.SRC06 = \.
8370: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8380: 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20 24 28 54 1\fts1.c \.$(T
8390: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
83a0: 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54  1_hash.c \.  $(T 83b0: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 OP)\ext\fts1\fts 83c0: 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 1_porter.c \.$
83d0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66  (TOP)\ext\fts1\f
83e0: 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63  ts1_tokenizer1.c
83f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8400: 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20 20 fts2\fts2.c \. 8410: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
8420: 66 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20  fts2_hash.c \.
8430: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 8440: 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20 24 fts2_icu.c \.$
8450: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
8460: 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20  ts2_porter.c \.
8470: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 8480: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e \fts2_tokenizer. 8490: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
84a0: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e  \fts2\fts2_token
84b0: 69 7a 65 72 31 2e 63 0a 0a 23 20 45 78 74 65 6e  izer1.c..# Exten
84c0: 73 69 6f 6e 20 73 6f 75 72 63 65 20 63 6f 64 65  sion source code
84d0: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a   files, part 2..
84e0: 23 0a 53 52 43 30 37 20 3d 20 5c 0a 20 20 24 28  #.SRC07 = \.  $( 84f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft 8500: 73 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c s3.c \.$(TOP)\
8510: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75  ext\fts3\fts3_au
8520: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  x.c \.  $(TOP)\e 8530: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 xt\fts3\fts3_exp 8540: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 r.c \.$(TOP)\e
8550: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73  xt\fts3\fts3_has
8560: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  h.c \.  $(TOP)\e 8570: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75 xt\fts3\fts3_icu 8580: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
8590: 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74  t\fts3\fts3_port
85a0: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\ 85b0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e ext\fts3\fts3_sn 85c0: 69 70 70 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f ippet.c \.$(TO
85d0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
85e0: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20  _tokenizer.c \.
85f0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 8600: 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 \fts3_tokenizer1 8610: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
8620: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
8630: 6e 69 7a 65 5f 76 74 61 62 2e 63 20 5c 0a 20 20  nize_vtab.c \.
8640: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 8650: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20 5c fts3_unicode.c \ 8660: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
8670: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32  s3\fts3_unicode2
8680: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8690: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74 t\fts3\fts3_writ 86a0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 e.c \.$(TOP)\e
86b0: 78 74 5c 69 63 75 5c 69 63 75 2e 63 20 5c 0a 20  xt\icu\icu.c \.
86c0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65   $(TOP)\ext\rtre 86d0: 65 5c 72 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 e\rtree.c \.$(
86e0: 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e  TOP)\ext\session
86f0: 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e  \sqlite3session.
8700: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 8710: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e \rbu\sqlite3rbu. 8720: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
8730: 5c 6d 69 73 63 5c 6a 73 6f 6e 31 2e 63 0a 0a 23  \misc\json1.c..#
8740: 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65   Extension heade
8750: 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e  r files, part 1.
8760: 0a 23 0a 53 52 43 30 38 20 3d 20 5c 0a 20 20 24  .#.SRC08 = \.  $8770: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 (TOP)\ext\fts1\f 8780: 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ts1.h \.$(TOP)
8790: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 68  \ext\fts1\fts1_h
87a0: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ash.h \.  $(TOP) 87b0: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 \ext\fts1\fts1_t 87c0: 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24 okenizer.h \.$
87d0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
87e0: 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts2.h \.  $(TOP) 87f0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 \ext\fts2\fts2_h 8800: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ash.h \.$(TOP)
8810: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
8820: 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a 23 20 45 78  okenizer.h..# Ex
8830: 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20 66  tension header f
8840: 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a  iles, part 2..#.
8850: 53 52 43 30 39 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC09 = \.  $(TO 8860: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 8870: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .h \.$(TOP)\ex
8880: 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e 68  t\fts3\fts3Int.h
8890: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 88a0: 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 fts3\fts3_hash.h 88b0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
88c0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
88d0: 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  zer.h \.  $(TOP) 88e0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69 \ext\icu\sqlitei 88f0: 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c cu.h \.$(TOP)\
8900: 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e  ext\rtree\rtree.
8910: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 8920: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e \rbu\sqlite3rbu. 8930: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
8940: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33  \session\sqlite3
8950: 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 47 65 6e  session.h..# Gen
8960: 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 63 6f  erated source co
8970: 64 65 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 30  de files.#.SRC10
8980: 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63   = \.  opcodes.c
8990: 20 5c 0a 20 20 70 61 72 73 65 2e 63 0a 0a 23 20   \.  parse.c..#
89a0: 47 65 6e 65 72 61 74 65 64 20 68 65 61 64 65 72  Generated header
89b0: 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 31 20 3d   files.#.SRC11 =
89c0: 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68   \.  keywordhash
89d0: 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 68  .h \.  opcodes.h
89e0: 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a 20   \.  parse.h \.
89f0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23 20   $(SQLITE3H)..# 8a00: 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68 65 Generated Tcl he 8a10: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 21 49 46 ader files.#.!IF 8a20: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21$(USE_STDCALL)!
8a30: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1 8a40: 30 29 21 3d 30 0a 53 52 43 31 32 20 3d 20 5c 0a 0)!=0.SRC12 = \. 8a50: 20 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29 20$(SQLITETCLH)
8a60: 5c 0a 20 20 24 28 53 51 4c 49 54 45 54 43 4c 44  \.  $(SQLITETCLD 8a70: 45 43 4c 53 48 29 0a 21 45 4c 53 45 0a 53 52 43 ECLSH).!ELSE.SRC 8a80: 31 32 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 41 12 =.!ENDIF..# A 8a90: 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 ll source code f 8aa0: 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24 28 iles..#.SRC =$(
8ab0: 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 20  SRC00) $(SRC01) 8ac0: 24 28 53 52 43 30 32 29 20 24 28 53 52 43 30 33$(SRC02) $(SRC03 8ad0: 29 20 24 28 53 52 43 30 34 29 20 24 28 53 52 43 )$(SRC04) $(SRC 8ae0: 30 35 29 20 24 28 53 52 43 30 36 29 20 24 28 53 05)$(SRC06) $(S 8af0: 52 43 30 37 29 20 24 28 53 52 43 30 38 29 20 24 RC07)$(SRC08) $8b00: 28 53 52 43 30 39 29 20 24 28 53 52 43 31 30 29 (SRC09)$(SRC10)
8b10: 20 24 28 53 52 43 31 31 29 0a 0a 23 20 53 6f 75   $(SRC11)..# Sou 8b20: 72 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 rce code to the 8b30: 74 65 73 74 20 66 69 6c 65 73 2e 0a 23 0a 54 45 test files..#.TE 8b40: 53 54 53 52 43 20 3d 20 5c 0a 20 20 24 28 54 4f STSRC = \.$(TO
8b50: 50 29 5c 73 72 63 5c 74 65 73 74 31 2e 63 20 5c  P)\src\test1.c \
8b60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 8b70: 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 st2.c \.$(TOP)
8b80: 5c 73 72 63 5c 74 65 73 74 33 2e 63 20 5c 0a 20  \src\test3.c \.
8b90: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8ba0: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 4.c \.$(TOP)\s
8bb0: 72 63 5c 74 65 73 74 35 2e 63 20 5c 0a 20 20 24  rc\test5.c \.  $8bc0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 36 2e (TOP)\src\test6. 8bd0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8be0: 5c 74 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 54  \test7.c \.  $(T 8bf0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 38 2e 63 20 OP)\src\test8.c 8c00: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8c10: 65 73 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est9.c \.  $(TOP 8c20: 29 5c 73 72 63 5c 74 65 73 74 5f 61 75 74 6f 65 )\src\test_autoe 8c30: 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c xt.c \.$(TOP)\
8c40: 73 72 63 5c 74 65 73 74 5f 61 73 79 6e 63 2e 63  src\test_async.c
8c50: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8c60: 74 65 73 74 5f 62 61 63 6b 75 70 2e 63 20 5c 0a test_backup.c \. 8c70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
8c80: 74 5f 62 65 73 74 69 6e 64 65 78 2e 63 20 5c 0a  t_bestindex.c \.
8c90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8ca0: 74 5f 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28 54 t_blob.c \.$(T
8cb0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 72  OP)\src\test_btr
8cc0: 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ee.c \.  $(TOP)\ 8cd0: 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67 2e src\test_config. 8ce0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8cf0: 5c 74 65 73 74 5f 64 65 6c 65 74 65 2e 63 20 5c  \test_delete.c \
8d00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 8d10: 73 74 5f 64 65 6d 6f 76 66 73 2e 63 20 5c 0a 20 st_demovfs.c \. 8d20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
8d30: 5f 64 65 76 73 79 6d 2e 63 20 5c 0a 20 20 24 28  _devsym.c \.  $( 8d40: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 73 TOP)\src\test_fs 8d50: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8d60: 63 5c 74 65 73 74 5f 66 75 6e 63 2e 63 20 5c 0a  c\test_func.c \.
8d70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8d80: 74 5f 68 65 78 69 6f 2e 63 20 5c 0a 20 20 24 28 t_hexio.c \.$(
8d90: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e  TOP)\src\test_in
8da0: 69 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  it.c \.  $(TOP)\ 8db0: 73 72 63 5c 74 65 73 74 5f 69 6e 74 61 72 72 61 src\test_intarra 8dc0: 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 y.c \.$(TOP)\s
8dd0: 72 63 5c 74 65 73 74 5f 6a 6f 75 72 6e 61 6c 2e  rc\test_journal.
8de0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8df0: 5c 74 65 73 74 5f 6d 61 6c 6c 6f 63 2e 63 20 5c \test_malloc.c \ 8e00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
8e10: 73 74 5f 6d 75 6c 74 69 70 6c 65 78 2e 63 20 5c  st_multiplex.c \
8e20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 8e30: 73 74 5f 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24 st_mutex.c \.$
8e40: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f  (TOP)\src\test_o
8e50: 6e 65 66 69 6c 65 2e 63 20 5c 0a 20 20 24 28 54  nefile.c \.  $(T 8e60: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 73 69 OP)\src\test_osi 8e70: 6e 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 nst.c \.$(TOP)
8e80: 5c 73 72 63 5c 74 65 73 74 5f 70 63 61 63 68 65  \src\test_pcache
8e90: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8ea0: 63 5c 74 65 73 74 5f 71 75 6f 74 61 2e 63 20 5c c\test_quota.c \ 8eb0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
8ec0: 73 74 5f 72 74 72 65 65 2e 63 20 5c 0a 20 20 24  st_rtree.c \.  $8ed0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 (TOP)\src\test_s 8ee0: 63 68 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f chema.c \.$(TO
8ef0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 65 72 76  P)\src\test_serv
8f00: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\ 8f10: 73 72 63 5c 74 65 73 74 5f 73 75 70 65 72 6c 6f src\test_superlo 8f20: 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ck.c \.$(TOP)\
8f30: 73 72 63 5c 74 65 73 74 5f 73 79 73 63 61 6c 6c  src\test_syscall
8f40: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8f50: 63 5c 74 65 73 74 5f 74 63 6c 76 61 72 2e 63 20 c\test_tclvar.c 8f60: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8f70: 65 73 74 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20  est_thread.c \.
8f80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8f90: 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 _vfs.c \.$(TOP
8fa0: 29 5c 73 72 63 5c 74 65 73 74 5f 77 69 6e 64 69  )\src\test_windi
8fb0: 72 65 6e 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  rent.c \.  $(TOP 8fc0: 29 5c 73 72 63 5c 74 65 73 74 5f 77 73 64 2e 63 )\src\test_wsd.c 8fd0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
8fe0: 66 74 73 33 5c 66 74 73 33 5f 74 65 72 6d 2e 63  fts3\fts3_term.c
8ff0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 9000: 66 74 73 33 5c 66 74 73 33 5f 74 65 73 74 2e 63 fts3\fts3_test.c 9010: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
9020: 72 62 75 5c 74 65 73 74 5f 72 62 75 2e 63 20 5c  rbu\test_rbu.c \
9030: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  .  $(TOP)\ext\se 9040: 73 73 69 6f 6e 5c 74 65 73 74 5f 73 65 73 73 69 ssion\test_sessi 9050: 6f 6e 2e 63 0a 0a 23 20 53 74 61 74 69 63 61 6c on.c..# Statical 9060: 6c 79 20 6c 69 6e 6b 65 64 20 65 78 74 65 6e 73 ly linked extens 9070: 69 6f 6e 73 2e 0a 23 0a 54 45 53 54 45 58 54 20 ions..#.TESTEXT 9080: 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 = \.$(TOP)\ext
9090: 5c 6d 69 73 63 5c 61 6d 61 74 63 68 2e 63 20 5c  \misc\amatch.c \
90a0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 90b0: 73 63 5c 63 61 72 72 61 79 2e 63 20 5c 0a 20 20 sc\carray.c \. 90c0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
90d0: 63 6c 6f 73 75 72 65 2e 63 20 5c 0a 20 20 24 28  closure.c \.  $( 90e0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 63 73 TOP)\ext\misc\cs 90f0: 76 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 v.c \.$(TOP)\e
9100: 78 74 5c 6d 69 73 63 5c 65 76 61 6c 2e 63 20 5c  xt\misc\eval.c \
9110: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 9120: 73 63 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 20 20 sc\fileio.c \. 9130: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
9140: 66 75 7a 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54  fuzzer.c \.  $(T 9150: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts 9160: 35 5f 74 63 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 5_tcl.c \.$(TO
9170: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
9180: 5f 74 65 73 74 5f 6d 69 2e 63 20 5c 0a 20 20 24  _test_mi.c \.  $9190: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f 91a0: 74 73 35 5f 74 65 73 74 5f 74 6f 6b 2e 63 20 5c ts5_test_tok.c \ 91b0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 .$(TOP)\ext\mi
91c0: 73 63 5c 69 65 65 65 37 35 34 2e 63 20 5c 0a 20  sc\ieee754.c \.
91d0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc 91e0: 5c 6e 65 78 74 63 68 61 72 2e 63 20 5c 0a 20 20 \nextchar.c \. 91f0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
9200: 70 65 72 63 65 6e 74 69 6c 65 2e 63 20 5c 0a 20  percentile.c \.
9210: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc 9220: 5c 72 65 67 65 78 70 2e 63 20 5c 0a 20 20 24 28 \regexp.c \.$(
9230: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 72 65  TOP)\ext\misc\re
9240: 6d 65 6d 62 65 72 2e 63 20 5c 0a 20 20 24 28 54  member.c \.  $(T 9250: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 65 72 OP)\ext\misc\ser 9260: 69 65 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ies.c \.$(TOP)
9270: 5c 65 78 74 5c 6d 69 73 63 5c 73 70 65 6c 6c 66  \ext\misc\spellf
9280: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ix.c \.  $(TOP)\ 9290: 65 78 74 5c 6d 69 73 63 5c 74 6f 74 79 70 65 2e ext\misc\totype. 92a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
92b0: 5c 6d 69 73 63 5c 77 68 6f 6c 65 6e 75 6d 62 65  \misc\wholenumbe
92c0: 72 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  r.c..# Source co
92d0: 64 65 20 74 6f 20 74 68 65 20 6c 69 62 72 61 72  de to the librar
92e0: 79 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 62  y files needed b
92f0: 79 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75  y the test fixtu
9300: 72 65 0a 23 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61  re.# (non-amalga
9310: 6d 61 74 69 6f 6e 29 0a 23 0a 54 45 53 54 53 52  mation).#.TESTSR
9320: 43 32 20 3d 20 5c 0a 20 20 24 28 53 52 43 30 30  C2 = \.  $(SRC00 9330: 29 20 5c 0a 20 20 24 28 53 52 43 30 31 29 20 5c ) \.$(SRC01) \
9340: 0a 20 20 24 28 53 52 43 30 36 29 20 5c 0a 20 20  .  $(SRC06) \. 9350: 24 28 53 52 43 30 37 29 20 5c 0a 20 20 24 28 53$(SRC07) \.  $(S 9360: 52 43 31 30 29 20 5c 0a 20 20 24 28 54 4f 50 29 RC10) \.$(TOP)
9370: 5c 65 78 74 5c 61 73 79 6e 63 5c 73 71 6c 69 74  \ext\async\sqlit
9380: 65 33 61 73 79 6e 63 2e 63 0a 0a 23 20 48 65 61  e3async.c..# Hea
9390: 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20 62  der files used b
93a0: 79 20 61 6c 6c 20 6c 69 62 72 61 72 79 20 73 6f  y all library so
93b0: 75 72 63 65 20 66 69 6c 65 73 2e 0a 23 0a 48 44  urce files..#.HD
93c0: 52 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  R = \.   $(TOP)\ 93d0: 73 72 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20 src\btree.h \. 93e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65$(TOP)\src\btre
93f0: 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  eInt.h \.   $(TO 9400: 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 20 5c 0a P)\src\hash.h \. 9410: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 77$(TOP)\src\hw
9420: 74 69 6d 65 2e 68 20 5c 0a 20 20 20 6b 65 79 77  time.h \.   keyw
9430: 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 20 24  ordhash.h \.   $9440: 28 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 (TOP)\src\msvc.h 9450: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
9460: 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 6f 70  \mutex.h \.   op
9470: 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 28 54  codes.h \.   $(T 9480: 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 OP)\src\os.h \. 9490: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f$(TOP)\src\os_
94a0: 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 24 28  common.h \.   $( 94b0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65 74 75 TOP)\src\os_setu 94c0: 70 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c p.h \.$(TOP)\
94d0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 20 5c 0a 20  src\os_win.h \.
94e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67    $(TOP)\src\pag 94f0: 65 72 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 er.h \.$(TOP)
9500: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a  \src\pcache.h \.
9510: 20 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 20 20     parse.h \.
9520: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d  $(TOP)\src\pragm 9530: 61 2e 68 20 5c 0a 20 20 20 24 28 53 51 4c 49 54 a.h \.$(SQLIT
9540: 45 33 48 29 20 5c 0a 20 20 20 73 71 6c 69 74 65  E3H) \.   sqlite
9550: 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  3ext.h \.   $(TO 9560: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 P)\src\sqliteInt 9570: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
9580: 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68  rc\sqliteLimit.h
9590: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 95a0: 5c 76 64 62 65 2e 68 20 5c 0a 20 20 20 24 28 54 \vdbe.h \.$(T
95b0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e  OP)\src\vdbeInt.
95c0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 95d0: 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20 20 c\vxworks.h \. 95e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72$(TOP)\src\wher
95f0: 65 49 6e 74 2e 68 0a 0a 23 20 48 65 61 64 65 72  eInt.h..# Header
9600: 20 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 65   files used by e
9610: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45 58 54 48  xtensions.#.EXTH
9620: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \ 9630: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
9640: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $( 9650: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 9660: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 s1_hash.h \.$(
9670: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
9680: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45  s1_tokenizer.h.E
9690: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR 96a0: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 ) \.$(TOP)\ext
96b0: 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20  \fts2\fts2.h \.
96c0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 96d0: 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 \fts2_hash.h \. 96e0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
96f0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
9700: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT 9710: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c HDR) \.$(TOP)\
9720: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 68 20  ext\fts3\fts3.h
9730: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 9740: 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 20 5c 0a ts3\fts3Int.h \. 9750: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
9760: 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 20 5c 0a  3\fts3_hash.h \.
9770: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 9780: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer 9790: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
97a0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) 97b0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree 97c0: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
97d0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) 97e0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69 \ext\icu\sqlitei 97f0: 63 75 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 cu.h.EXTHDR =$(
9800: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO 9810: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 73 71 6c P)\ext\rtree\sql 9820: 69 74 65 33 72 74 72 65 65 2e 68 0a 45 58 54 48 ite3rtree.h.EXTH 9830: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c DR =$(EXTHDR) \
9840: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  .  $(TOP)\ext\se 9850: 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 ssion\sqlite3ses 9860: 73 69 6f 6e 2e 68 0a 0a 23 20 65 78 65 63 75 74 sion.h..# execut 9870: 61 62 6c 65 73 20 6e 65 65 64 65 64 20 66 6f 72 ables needed for 9880: 20 74 65 73 74 69 6e 67 0a 23 0a 54 45 53 54 50 testing.#.TESTP 9890: 52 4f 47 53 20 3d 20 5c 0a 20 20 74 65 73 74 66 ROGS = \. testf 98a0: 69 78 74 75 72 65 2e 65 78 65 20 5c 0a 20 20 24 ixture.exe \.$
98b0: 28 53 51 4c 49 54 45 33 45 58 45 29 20 5c 0a 20  (SQLITE3EXE) \.
98c0: 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
98d0: 72 2e 65 78 65 20 5c 0a 20 20 73 71 6c 64 69 66  r.exe \.  sqldif
98e0: 66 2e 65 78 65 20 5c 0a 20 20 64 62 68 61 73 68  f.exe \.  dbhash
98f0: 2e 65 78 65 0a 0a 23 20 44 61 74 61 62 61 73 65  .exe..# Database
9900: 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 66 75 7a  s containing fuz
9910: 7a 65 72 20 74 65 73 74 20 63 61 73 65 73 0a 23  zer test cases.#
9920: 0a 46 55 5a 5a 44 41 54 41 20 3d 20 5c 0a 20 20  .FUZZDATA = \.
9930: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz 9940: 64 61 74 61 31 2e 64 62 20 5c 0a 20 20 24 28 54 data1.db \.$(T
9950: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74  OP)\test\fuzzdat
9960: 61 32 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29  a2.db \.  $(TOP) 9970: 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 33 2e \test\fuzzdata3. 9980: 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 db \.$(TOP)\te
9990: 73 74 5c 66 75 7a 7a 64 61 74 61 34 2e 64 62 20  st\fuzzdata4.db
99a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c  \.  $(TOP)\test\ 99b0: 66 75 7a 7a 64 61 74 61 35 2e 64 62 0a 23 20 3c fuzzdata5.db.# < 99c0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 41 64 64 69 </mark>>..# Addi 99d0: 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20 tional compiler 99e0: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 options for the 99f0: 73 68 65 6c 6c 2e 20 20 54 68 65 73 65 20 61 72 shell. These ar 9a00: 65 20 6f 6e 6c 79 20 65 66 66 65 63 74 69 76 65 e only effective 9a10: 0a 23 20 77 68 65 6e 20 74 68 65 20 73 68 65 6c .# when the shel 9a20: 6c 20 69 73 20 6e 6f 74 20 62 65 69 6e 67 20 64 l is not being d 9a30: 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 ynamically linke 9a40: 64 2e 0a 23 0a 21 49 46 20 24 28 44 59 4e 41 4d d..#.!IF$(DYNAM
9a50: 49 43 5f 53 48 45 4c 4c 29 3d 3d 30 20 26 26 20  IC_SHELL)==0 &&
9a60: 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 0a  $(FOR_WIN10)==0. 9a70: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 SHELL_COMPILE_OP 9a80: 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 4f 4d TS =$(SHELL_COM
9a90: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53 51 4c  PILE_OPTS) -DSQL
9aa0: 49 54 45 5f 53 48 45 4c 4c 5f 4a 53 4f 4e 31 20  ITE_SHELL_JSON1
9ab0: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
9ac0: 46 54 53 34 20 2d 44 53 51 4c 49 54 45 5f 45 4e  FTS4 -DSQLITE_EN
9ad0: 41 42 4c 45 5f 45 58 50 4c 41 49 4e 5f 43 4f 4d  ABLE_EXPLAIN_COM
9ae0: 4d 45 4e 54 53 0a 21 45 4e 44 49 46 0a 0a 23 20  MENTS.!ENDIF..#
9af0: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78 74 72 61  <<mark>>.# Extra
9b00: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
9b10: 73 20 66 6f 72 20 76 61 72 69 6f 75 73 20 74 65  s for various te
9b20: 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d 50 54 45  st tools..#.MPTE
9b30: 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  STER_COMPILE_OPT
9b40: 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 53 48 45  S = -DSQLITE_SHE
9b50: 4c 4c 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49 54  LL_JSON1 -DSQLIT
9b60: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a 46 55  E_ENABLE_FTS5.FU
9b70: 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c  ZZERSHELL_COMPIL
9b80: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
9b90: 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a 46  E_ENABLE_JSON1.F
9ba0: 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45  UZZCHECK_COMPILE
9bb0: 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45  _OPTS = -DSQLITE
9bc0: 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44  _ENABLE_JSON1 -D
9bd0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d 45  SQLITE_ENABLE_ME
9be0: 4d 53 59 53 35 20 2d 44 53 51 4c 49 54 45 5f 4f  MSYS5 -DSQLITE_O
9bf0: 53 53 5f 46 55 5a 5a 20 2d 44 53 51 4c 49 54 45  SS_FUZZ -DSQLITE
9c00: 5f 4d 41 58 5f 4d 45 4d 4f 52 59 3d 35 30 30 30  _MAX_MEMORY=5000
9c10: 30 30 30 30 0a 46 55 5a 5a 43 48 45 43 4b 5f 53  0000.FUZZCHECK_S
9c20: 52 43 20 3d 20 24 28 54 4f 50 29 5c 74 65 73 74  RC = $(TOP)\test 9c30: 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 20 24 28 54 \fuzzcheck.c$(T
9c40: 4f 50 29 5c 74 65 73 74 5c 6f 73 73 66 75 7a 7a  OP)\test\ossfuzz
9c50: 2e 63 0a 4f 53 53 53 48 45 4c 4c 5f 53 52 43 20  .c.OSSSHELL_SRC
9c60: 3d 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f 73  = $(TOP)\test\os 9c70: 73 73 68 65 6c 6c 2e 63 20 24 28 54 4f 50 29 5c sshell.c$(TOP)\
9c80: 74 65 73 74 5c 6f 73 73 66 75 7a 7a 2e 63 0a 44  test\ossfuzz.c.D
9c90: 42 46 55 5a 5a 5f 43 4f 4d 50 49 4c 45 5f 4f 50  BFUZZ_COMPILE_OP
9ca0: 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 54 48  TS = -DSQLITE_TH
9cb0: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c  READSAFE=0 -DSQL
9cc0: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
9cd0: 54 45 4e 53 49 4f 4e 0a 4b 56 5f 43 4f 4d 50 49  TENSION.KV_COMPI
9ce0: 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49  LE_OPTS = -DSQLI
9cf0: 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20  TE_THREADSAFE=0
9d00: 2d 44 53 51 4c 49 54 45 5f 44 49 52 45 43 54 5f  -DSQLITE_DIRECT_
9d10: 4f 56 45 52 46 4c 4f 57 5f 52 45 41 44 0a 44 42  OVERFLOW_READ.DB
9d20: 53 45 4c 46 54 45 53 54 5f 43 4f 4d 50 49 4c 45  SELFTEST_COMPILE
9d30: 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45  _OPTS = -DSQLITE
9d40: 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
9d50: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
9d60: 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 44 53 51 4c  _EXTENSION -DSQL
9d70: 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45 45  ITE_ENABLE_RTREE
9d80: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
9d90: 5f 46 54 53 34 20 2d 44 53 51 4c 49 54 45 5f 45  _FTS4 -DSQLITE_E
9da0: 4e 41 42 4c 45 5f 46 54 53 35 0a 53 54 5f 43 4f  NABLE_FTS5.ST_CO
9db0: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53  MPILE_OPTS = -DS
9dc0: 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45  QLITE_THREADSAFE
9dd0: 3d 30 0a 0a 23 20 53 74 61 6e 64 61 72 64 20 6f  =0..# Standard o
9de0: 70 74 69 6f 6e 73 20 74 6f 20 74 65 73 74 66 69  ptions to testfi
9df0: 78 74 75 72 65 2e 0a 23 0a 54 45 53 54 4f 50 54  xture..#.TESTOPT
9e00: 53 20 3d 20 2d 2d 76 65 72 62 6f 73 65 3d 66 69  S = --verbose=fi
9e10: 6c 65 20 2d 2d 6f 75 74 70 75 74 3d 74 65 73 74  le --output=test
9e20: 2d 6f 75 74 2e 74 78 74 0a 0a 23 20 45 78 74 72  -out.txt..# Extr
9e30: 61 20 74 61 72 67 65 74 73 20 66 6f 72 20 74 68  a targets for th
9e40: 65 20 22 61 6c 6c 22 20 74 61 72 67 65 74 20 74  e "all" target t
9e50: 68 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 2e  hat require Tcl.
9e60: 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 43 4c 29  .#.!IF $(NO_TCL) 9e70: 3d 3d 30 0a 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 ==0.ALL_TCL_TARG 9e80: 45 54 53 20 3d 20 6c 69 62 74 63 6c 73 71 6c 69 ETS = libtclsqli 9e90: 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45 0a 41 4c te3.lib.!ELSE.AL 9ea0: 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 20 3d 0a L_TCL_TARGETS =. 9eb0: 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b !ENDIF.# <</mark 9ec0: 3e 3e 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 >>..# This is th 9ed0: 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 66 69 e default Makefi 9ee0: 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68 65 20 le target. The 9ef0: 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64 20 68 objects listed h 9f00: 65 72 65 0a 23 20 61 72 65 20 77 68 61 74 20 67 ere.# are what g 9f10: 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20 79 6f et build when yo 9f20: 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d 61 6b u type just "mak 9f30: 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67 75 6d e" with no argum 9f40: 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64 6c 6c ents..#.all:.dll 9f50: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 libsqlite3.lib 9f60: 73 68 65 6c 6c 20 24 28 41 4c 4c 5f 54 43 4c 5f shell$(ALL_TCL_
9f70: 54 41 52 47 45 54 53 29 0a 0a 23 20 44 79 6e 61  TARGETS)..# Dyna
9f80: 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 72 61 72 79  mic link library
9f90: 20 73 65 63 74 69 6f 6e 2e 0a 23 0a 64 6c 6c 3a   section..#.dll:
9fa0: 09 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 0a 0a  .$(SQLITE3DLL).. 9fb0: 23 20 53 68 65 6c 6c 20 65 78 65 63 75 74 61 62 # Shell executab 9fc0: 6c 65 2e 0a 23 0a 73 68 65 6c 6c 3a 09 24 28 53 le..#.shell:.$(S
9fd0: 51 4c 49 54 45 33 45 58 45 29 0a 0a 23 20 3c 3c  QLITE3EXE)..# <<
9fe0: 6d 61 72 6b 3e 3e 0a 6c 69 62 73 71 6c 69 74 65  mark>>.libsqlite
9ff0: 33 2e 6c 69 62 3a 09 24 28 4c 49 42 4f 42 4a 29  3.lib:.$(LIBOBJ) a000: 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c 54 4c ..$(LTLIB) $(LTL a010: 49 42 4f 50 54 53 29 20 2f 4f 55 54 3a 24 40 20 IBOPTS) /OUT:$@
a020: 24 28 4c 49 42 4f 42 4a 29 20 24 28 54 4c 49 42  $(LIBOBJ)$(TLIB
a030: 53 29 0a 0a 6c 69 62 74 63 6c 73 71 6c 69 74 65  S)..libtclsqlite
a040: 33 2e 6c 69 62 3a 09 74 63 6c 73 71 6c 69 74 65  3.lib:.tclsqlite
a050: 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  .lo libsqlite3.l
a060: 69 62 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c  ib..$(LTLIB)$(L
a070: 54 4c 49 42 4f 50 54 53 29 20 24 28 4c 54 4c 49  TLIBOPTS) $(LTLI a080: 42 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 20 BPATHS) /OUT:$@
a090: 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62  tclsqlite.lo lib
a0a0: 73 71 6c 69 74 65 33 2e 6c 69 62 20 24 28 4c 49  sqlite3.lib $(LI a0b0: 42 54 43 4c 53 54 55 42 29 20 24 28 54 4c 49 42 BTCLSTUB)$(TLIB
a0c0: 53 29 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a  S).# <</mark>>..
a0d0: 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 3a 09 24  $(SQLITE3DLL):.$
a0e0: 28 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52 45  (LIBOBJ) $(LIBRE a0f0: 53 4f 42 4a 53 29 20 24 28 43 4f 52 45 5f 4c 49 SOBJS)$(CORE_LI
a100: 4e 4b 5f 44 45 50 29 0a 09 24 28 4c 44 29 20 24  NK_DEP)..$(LD)$
a110: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI a120: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 NKOPTS)$(LTLIBP
a130: 41 54 48 53 29 20 2f 44 4c 4c 20 24 28 43 4f 52  ATHS) /DLL $(COR a140: 45 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 2f 4f 55 E_LINK_OPTS) /OU a150: 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 T:$@ $(LIBOBJ)$
a160: 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c  (LIBRESOBJS) $(L a170: 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a TLIBS)$(TLIBS).
a180: 0a 23 20 3c 3c 62 6c 6f 63 6b 32 3e 3e 0a 73 71  .# <<block2>>.sq
a190: 6c 69 74 65 33 2e 64 65 66 3a 09 6c 69 62 73 71  lite3.def:.libsq
a1a0: 6c 69 74 65 33 2e 6c 69 62 0a 09 65 63 68 6f 20  lite3.lib..echo
a1b0: 45 58 50 4f 52 54 53 20 3e 20 73 71 6c 69 74 65  EXPORTS > sqlite
a1c0: 33 2e 64 65 66 0a 09 64 75 6d 70 62 69 6e 20 2f  3.def..dumpbin /
a1d0: 61 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  all libsqlite3.l
a1e0: 69 62 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48  ib \...| $(TCLSH a1f0: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
a200: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 69 6e  l\replace.tcl in
a210: 63 6c 75 64 65 20 22 5e 5c 73 2b 31 20 5f 3f 28  clude "^\s+1 _?(
a220: 73 71 6c 69 74 65 33 28 3f 3a 73 65 73 73 69 6f  sqlite3(?:sessio
a230: 6e 7c 63 68 61 6e 67 65 73 65 74 29 3f 5f 5b 5e  n|changeset)?_[^
a240: 40 5d 2a 29 28 3f 3a 40 5c 64 2b 29 3f 24 24 22  @]*)(?:@\d+)?"
a250: 20 5c 31 20 5c 0a 09 09 7c 20 73 6f 72 74 20 3e   \1 \...| sort >
a260: 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 23 20  > sqlite3.def.#
a270: 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e 0a 0a 24 28 53  <</block2>>..$(S a280: 51 4c 49 54 45 33 45 58 45 29 3a 09 24 28 54 4f QLITE3EXE):.$(TO
a290: 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20 24  P)\src\shell.c $a2a0: 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 29 (SHELL_CORE_DEP) a2b0: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24$(LIBRESOBJS) $a2c0: 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43 29 (SHELL_CORE_SRC) a2d0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28$(SQLITE3H)..$( a2e0: 4c 54 4c 49 4e 4b 29 20 24 28 53 48 45 4c 4c 5f LTLINK)$(SHELL_
a2f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( a300: 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 29 20 READLINE_FLAGS) a310: 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c$(TOP)\src\shell
a320: 2e 63 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f  .c $(SHELL_CORE_ a330: 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 SRC) \.../link$
a340: 28 53 51 4c 49 54 45 33 45 58 45 50 44 42 29 20  (SQLITE3EXEPDB)
a350: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS)$(LTL
a360: 49 4e 4b 4f 50 54 53 29 20 24 28 53 48 45 4c 4c  INKOPTS) $(SHELL a370: 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 24 28 4c 54 _LINK_OPTS)$(LT
a380: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52  LIBPATHS) $(LIBR a390: 45 53 4f 42 4a 53 29 20 24 28 4c 49 42 52 45 41 ESOBJS)$(LIBREA
a3a0: 44 4c 49 4e 45 29 20 24 28 4c 54 4c 49 42 53 29  DLINE) $(LTLIBS) a3b0: 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 3c 3c 6d$(TLIBS)..# <<m
a3c0: 61 72 6b 3e 3e 0a 73 71 6c 64 69 66 66 2e 65 78  ark>>.sqldiff.ex
a3d0: 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  e:.$(TOP)\tool\s a3e0: 71 6c 64 69 66 66 2e 63 20 24 28 53 51 4c 49 54 qldiff.c$(SQLIT
a3f0: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29  E3C) $(SQLITE3H) a400: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO a410: 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 6f _WARN)$(TOP)\to
a420: 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20 24 28 53  ol\sqldiff.c $(S a430: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
a440: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI a450: 4e 4b 4f 50 54 53 29 0a 0a 64 62 68 61 73 68 2e NKOPTS)..dbhash. a460: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
a470: 5c 64 62 68 61 73 68 2e 63 20 24 28 53 51 4c 49  \dbhash.c $(SQLI a480: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 TE3C)$(SQLITE3H
a490: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e  )..$(LTLINK)$(N
a4a0: 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74  O_WARN) $(TOP)\t a4b0: 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20 24 28 53 ool\dbhash.c$(S
a4c0: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $a4d0: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
a4e0: 4e 4b 4f 50 54 53 29 0a 0a 73 63 72 75 62 2e 65  NKOPTS)..scrub.e
a4f0: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d  xe:.$(TOP)\ext\m a500: 69 73 63 5c 73 63 72 75 62 2e 63 20 24 28 53 51 isc\scrub.c$(SQ
a510: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE a520: 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 3H)..$(LTLINK) $a530: 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 (NO_WARN)$(TOP)
a540: 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72 75 62 2e  \ext\misc\scrub.
a550: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c  c $(SQLITE3C) /l a560: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $a570: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 72 (LTLINKOPTS)..sr a580: 63 63 6b 31 2e 65 78 65 3a 09 24 28 54 4f 50 29 cck1.exe:.$(TOP)
a590: 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a 09  \tool\srcck1.c..
a5a0: 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e  $(BCC)$(NO_WARN
a5b0: 29 20 2d 46 65 24 40 20 24 28 54 4f 50 29 5c 74  ) -Fe$@$(TOP)\t
a5c0: 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a 0a 73 6f  ool\srcck1.c..so
a5d0: 75 72 63 65 74 65 73 74 3a 09 73 72 63 63 6b 31  urcetest:.srcck1
a5e0: 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 63 0a 09  .exe sqlite3.c..
a5f0: 73 72 63 63 6b 31 2e 65 78 65 20 73 71 6c 69 74  srcck1.exe sqlit
a600: 65 33 2e 63 0a 0a 66 75 7a 7a 65 72 73 68 65 6c  e3.c..fuzzershel
a610: 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f  l.exe:.$(TOP)\to a620: 6f 6c 5c 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 63 ol\fuzzershell.c a630: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S a640: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
a650: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24  NK) $(NO_WARN)$
a660: 28 46 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d  (FUZZERSHELL_COM
a670: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f 50  PILE_OPTS) $(TOP a680: 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 73 68 65 )\tool\fuzzershe a690: 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 ll.c$(SQLITE3C)
a6a0: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53   /link $(LDFLAGS a6b0: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a )$(LTLINKOPTS).
a6c0: 0a 64 62 66 75 7a 7a 2e 65 78 65 3a 09 24 28 54  .dbfuzz.exe:.$(T a6d0: 4f 50 29 5c 74 65 73 74 5c 64 62 66 75 7a 7a 2e OP)\test\dbfuzz. a6e0: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 c$(SQLITE3C) $( a6f0: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
a700: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) a710: 24 28 44 42 46 55 5a 5a 5f 43 4f 4d 50 49 4c 45$(DBFUZZ_COMPILE
a720: 5f 4f 50 54 53 29 20 24 28 54 4f 50 29 5c 74 65  _OPTS) $(TOP)\te a730: 73 74 5c 64 62 66 75 7a 7a 2e 63 20 24 28 53 51 st\dbfuzz.c$(SQ
a740: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( a750: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
a760: 4b 4f 50 54 53 29 0a 0a 66 75 7a 7a 63 68 65 63  KOPTS)..fuzzchec
a770: 6b 2e 65 78 65 3a 09 24 28 46 55 5a 5a 43 48 45  k.exe:.$(FUZZCHE a780: 43 4b 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 CK_SRC)$(SQLITE
a790: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  3C) $(SQLITE3H). a7a0: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ a7b0: 57 41 52 4e 29 20 24 28 46 55 5a 5a 43 48 45 43 WARN)$(FUZZCHEC
a7c0: 4b 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  K_COMPILE_OPTS)
a7d0: 24 28 46 55 5a 5a 43 48 45 43 4b 5f 53 52 43 29  $(FUZZCHECK_SRC) a7e0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
a7f0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
a800: 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 6f 73 73  LTLINKOPTS)..oss
a810: 73 68 65 6c 6c 2e 65 78 65 3a 09 24 28 4f 53 53  shell.exe:.$(OSS a820: 53 48 45 4c 4c 5f 53 52 43 29 20 24 28 53 51 4c SHELL_SRC)$(SQL
a830: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 a840: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( a850: 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55 5a 5a 43 NO_WARN)$(FUZZC
a860: 48 45 43 4b 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HECK_COMPILE_OPT
a870: 53 29 20 24 28 4f 53 53 53 48 45 4c 4c 5f 53 52  S) $(OSSSHELL_SR a880: 43 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f C)$(SQLITE3C) /
a890: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) a8a0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 6d$(LTLINKOPTS)..m
a8b0: 70 74 65 73 74 65 72 2e 65 78 65 3a 09 24 28 54  ptester.exe:.$(T a8c0: 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70 74 65 73 OP)\mptest\mptes a8d0: 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 t.c$(SQLITE3C)
a8e0: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c  $(SQLITE3H)..$(L
a8f0: 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN a900: 29 20 24 28 4d 50 54 45 53 54 45 52 5f 43 4f 4d )$(MPTESTER_COM
a910: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f 50  PILE_OPTS) $(TOP a920: 29 5c 6d 70 74 65 73 74 5c 6d 70 74 65 73 74 2e )\mptest\mptest. a930: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c c$(SQLITE3C) /l
a940: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24  ink $(LDFLAGS)$
a950: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4d 50  (LTLINKOPTS)..MP
a960: 54 45 53 54 31 20 3d 20 6d 70 74 65 73 74 65 72  TEST1 = mptester
a970: 20 6d 70 74 65 73 74 2e 64 62 20 24 28 54 4f 50   mptest.db $(TOP a980: 29 5c 6d 70 74 65 73 74 5c 63 72 61 73 68 30 31 )\mptest\crash01 a990: 2e 74 65 73 74 20 2d 2d 72 65 70 65 61 74 20 32 .test --repeat 2 a9a0: 30 0a 4d 50 54 45 53 54 32 20 3d 20 6d 70 74 65 0.MPTEST2 = mpte a9b0: 73 74 65 72 20 6d 70 74 65 73 74 2e 64 62 20 24 ster mptest.db$
a9c0: 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 75 6c  (TOP)\mptest\mul
a9d0: 74 69 77 72 69 74 65 30 31 2e 74 65 73 74 20 2d  tiwrite01.test -
a9e0: 2d 72 65 70 65 61 74 20 32 30 0a 0a 6d 70 74 65  -repeat 20..mpte
a9f0: 73 74 3a 09 6d 70 74 65 73 74 65 72 2e 65 78 65  st:.mptester.exe
aa00: 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 2e  ..del /Q mptest.
aa10: 64 62 20 32 3e 4e 55 4c 0a 09 24 28 4d 50 54 45  db 2>NUL..$(MPTE aa20: 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f ST1) --journalmo aa30: 64 65 20 44 45 4c 45 54 45 0a 09 24 28 4d 50 54 de DELETE..$(MPT
aa40: 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d  EST2) --journalm
aa50: 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50 54 45 53  ode WAL..$(MPTES aa60: 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 T1) --journalmod aa70: 65 20 57 41 4c 0a 09 24 28 4d 50 54 45 53 54 32 e WAL..$(MPTEST2
aa80: 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20  ) --journalmode
aa90: 50 45 52 53 49 53 54 0a 09 24 28 4d 50 54 45 53  PERSIST..$(MPTES aaa0: 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 T1) --journalmod aab0: 65 20 50 45 52 53 49 53 54 0a 09 24 28 4d 50 54 e PERSIST..$(MPT
aac0: 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d  EST2) --journalm
aad0: 6f 64 65 20 54 52 55 4e 43 41 54 45 0a 09 24 28  ode TRUNCATE..$( aae0: 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e MPTEST1) --journ aaf0: 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41 54 45 0a almode TRUNCATE. ab00: 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f .$(MPTEST2) --jo
ab10: 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c 45 54 45  urnalmode DELETE
ab20: 0a 0a 23 20 54 68 69 73 20 74 61 72 67 65 74 20  ..# This target
ab30: 63 72 65 61 74 65 73 20 61 20 64 69 72 65 63 74  creates a direct
ab40: 6f 72 79 20 6e 61 6d 65 64 20 22 74 73 72 63 22  ory named "tsrc"
ab50: 20 61 6e 64 20 66 69 6c 6c 73 20 69 74 20 77 69   and fills it wi
ab60: 74 68 0a 23 20 63 6f 70 69 65 73 20 6f 66 20 61  th.# copies of a
ab70: 6c 6c 20 6f 66 20 74 68 65 20 43 20 73 6f 75 72  ll of the C sour
ab80: 63 65 20 63 6f 64 65 20 61 6e 64 20 68 65 61 64  ce code and head
ab90: 65 72 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20  er files needed
aba0: 74 6f 0a 23 20 62 75 69 6c 64 20 6f 6e 20 74 68  to.# build on th
abb0: 65 20 74 61 72 67 65 74 20 73 79 73 74 65 6d 2e  e target system.
abc0: 20 20 53 6f 6d 65 20 6f 66 20 74 68 65 20 43 20    Some of the C
abd0: 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 20  source code and
abe0: 68 65 61 64 65 72 0a 23 20 66 69 6c 65 73 20 61  header.# files a
abf0: 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79  re automatically
ac00: 20 67 65 6e 65 72 61 74 65 64 2e 20 20 54 68 69   generated.  Thi
ac10: 73 20 74 61 72 67 65 74 20 74 61 6b 65 73 20 63  s target takes c
ac20: 61 72 65 20 6f 66 0a 23 20 61 6c 6c 20 74 68 61  are of.# all tha
ac30: 74 20 61 75 74 6f 6d 61 74 69 63 20 67 65 6e 65  t automatic gene
ac40: 72 61 74 69 6f 6e 2e 0a 23 0a 2e 74 61 72 67 65  ration..#..targe
ac50: 74 5f 73 6f 75 72 63 65 3a 09 24 28 53 52 43 29  t_source:.$(SRC) ac60: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62$(TOP)\tool\vdb
ac70: 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20 66  e-compress.tcl f
ac80: 74 73 35 2e 63 20 24 28 53 51 4c 49 54 45 5f 54  ts5.c $(SQLITE_T ac90: 43 4c 5f 44 45 50 29 0a 09 2d 72 6d 64 69 72 20 CL_DEP)..-rmdir aca0: 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a /Q/S tsrc 2>NUL. acb0: 09 2d 6d 6b 64 69 72 20 74 73 72 63 0a 09 66 6f .-mkdir tsrc..fo acc0: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 30 r %i in ($(SRC00
acd0: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
ace0: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
acf0: 20 28 24 28 53 52 43 30 31 29 29 20 64 6f 20 63   ($(SRC01)) do c ad00: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. ad10: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
ad20: 30 32 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  02)) do copy /Y
ad30: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
ad40: 69 6e 20 28 24 28 53 52 43 30 33 29 29 20 64 6f  in ($(SRC03)) do ad50: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc ad60: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
ad70: 52 43 30 34 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC04)) do copy /
ad80: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
ad90: 69 20 69 6e 20 28 24 28 53 52 43 30 35 29 29 20  i in ($(SRC05)) ada0: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts adb0: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 rc..for %i in ($
adc0: 28 53 52 43 30 36 29 29 20 64 6f 20 63 6f 70 79  (SRC06)) do copy
add0: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72   /Y %i tsrc..for
ade0: 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 37 29   %i in ($(SRC07) adf0: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 ) do copy /Y %i ae00: 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 tsrc..for %i in ae10: 28 24 28 53 52 43 30 38 29 29 20 64 6f 20 63 6f ($(SRC08)) do co
ae20: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66  py /Y %i tsrc..f
ae30: 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30  or %i in ($(SRC0 ae40: 39 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 9)) do copy /Y % ae50: 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 i tsrc..for %i i ae60: 6e 20 28 24 28 53 52 43 31 30 29 29 20 64 6f 20 n ($(SRC10)) do
ae70: 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a  copy /Y %i tsrc.
ae80: 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52  .for %i in ($(SR ae90: 43 31 31 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 C11)) do copy /Y aea0: 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 %i tsrc..for %i aeb0: 20 69 6e 20 28 24 28 53 52 43 31 32 29 29 20 64 in ($(SRC12)) d
aec0: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72  o copy /Y %i tsr
aed0: 63 0a 09 63 6f 70 79 20 2f 59 20 66 74 73 35 2e  c..copy /Y fts5.
aee0: 63 20 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 20  c tsrc..copy /Y
aef0: 66 74 73 35 2e 68 20 74 73 72 63 0a 09 64 65 6c  fts5.h tsrc..del
af00: 20 2f 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e   /Q tsrc\sqlite.
af10: 68 2e 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e  h.in tsrc\parse.
af20: 79 20 32 3e 4e 55 4c 0a 09 24 28 54 43 4c 53 48  y 2>NUL..$(TCLSH af30: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
af40: 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e  l\vdbe-compress.
af50: 74 63 6c 20 24 28 4f 50 54 53 29 20 3c 20 74 73  tcl $(OPTS) < ts af60: 72 63 5c 76 64 62 65 2e 63 20 3e 20 76 64 62 65 rc\vdbe.c > vdbe af70: 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64 62 65 2e .new..move vdbe. af80: 6e 65 77 20 74 73 72 63 5c 76 64 62 65 2e 63 0a new tsrc\vdbe.c. af90: 09 65 63 68 6f 20 3e 20 2e 74 61 72 67 65 74 5f .echo > .target_ afa0: 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74 65 33 2e source..sqlite3. afb0: 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 c:..target_sourc afc0: 65 20 73 71 6c 69 74 65 33 65 78 74 2e 68 20 24 e sqlite3ext.h$
afd0: 28 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c  (MKSQLITE3C_TOOL
afe0: 29 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20  )..$(TCLSH_CMD) aff0: 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f$(MKSQLITE3C_TOO
b000: 4c 29 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f  L) $(MKSQLITE3C_ b010: 41 52 47 53 29 0a 09 63 6f 70 79 20 74 73 72 63 ARGS)..copy tsrc b020: 5c 73 68 65 6c 6c 2e 63 20 2e 0a 09 63 6f 70 79 \shell.c ...copy b030: 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73$(TOP)\ext\sess
b040: 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69  ion\sqlite3sessi
b050: 6f 6e 2e 68 20 2e 0a 0a 73 71 6c 69 74 65 33 2d  on.h ...sqlite3-
b060: 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65 33 2e 63  all.c:.sqlite3.c
b070: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c   $(TOP)\tool\spl b080: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a it-sqlite3c.tcl. b090: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 .$(TCLSH_CMD) $( b0a0: 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d TOP)\tool\split- b0b0: 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 23 20 3c sqlite3c.tcl.# < b0c0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52 75 6c 65 </mark>>..# Rule b0d0: 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 61 6d to build the am b0e0: 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 0a 73 71 6c algamation.#.sql b0f0: 69 74 65 33 2e 6c 6f 3a 09 24 28 53 51 4c 49 54 ite3.lo:.$(SQLIT
b100: 45 33 43 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  E3C)..$(LTCOMPIL b110: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
b120: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 53 51 4c  E_OPTS) -c $(SQL b130: 49 54 45 33 43 29 0a 0a 23 20 3c 3c 6d 61 72 6b ITE3C)..# <<mark b140: 3e 3e 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 >>.# Rules to bu b150: 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e 20 63 6f ild the LEMON co b160: 6d 70 69 6c 65 72 20 67 65 6e 65 72 61 74 6f 72 mpiler generator b170: 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09 24 28 54 .#.lempar.c:.$(T
b180: 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e  OP)\tool\lempar.
b190: 63 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 74  c..copy $(TOP)\t b1a0: 6f 6f 6c 5c 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a ool\lempar.c ... b1b0: 6c 65 6d 6f 6e 2e 65 78 65 3a 09 24 28 54 4f 50 lemon.exe:.$(TOP
b1c0: 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c  )\tool\lemon.c l
b1d0: 65 6d 70 61 72 2e 63 0a 09 24 28 42 43 43 29 20  empar.c..$(BCC) b1e0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 61 63 63$(NO_WARN) -Dacc
b1f0: 65 73 73 3d 5f 61 63 63 65 73 73 20 5c 0a 09 09  ess=_access \...
b200: 2d 46 65 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f  -Fe$@$(TOP)\too
b210: 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20  l\lemon.c /link
b220: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4e 4c 54  $(LDFLAGS)$(NLT
b230: 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c 54 4c  LINKOPTS) $(NLTL b240: 49 42 50 41 54 48 53 29 0a 0a 23 20 52 75 6c 65 IBPATHS)..# Rule b250: 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 s to build indiv b260: 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 idual *.lo files b270: 20 66 72 6f 6d 20 67 65 6e 65 72 61 74 65 64 20 from generated b280: 2a 2e 63 20 66 69 6c 65 73 2e 20 54 68 69 73 0a *.c files. This. b290: 23 20 61 70 70 6c 69 65 73 20 74 6f 3a 0a 23 0a # applies to:.#. b2a0: 23 20 20 20 20 20 70 61 72 73 65 2e 6c 6f 0a 23 # parse.lo.# b2b0: 20 20 20 20 20 6f 70 63 6f 64 65 73 2e 6c 6f 0a opcodes.lo. b2c0: 23 0a 70 61 72 73 65 2e 6c 6f 3a 09 70 61 72 73 #.parse.lo:.pars b2d0: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 e.c$(HDR)..$(LT b2e0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b2f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b300: 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65   parse.c..opcode
b310: 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a  s.lo:.opcodes.c.
b320: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
b330: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
b340: 53 29 20 2d 63 20 6f 70 63 6f 64 65 73 2e 63 0a  S) -c opcodes.c.
b350: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52  # <</mark>>..# R
b360: 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68 65  ule to build the
b370: 20 57 69 6e 33 32 20 72 65 73 6f 75 72 63 65 73   Win32 resources
b380: 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 23 0a   object file..#.
b390: 21 49 46 20 24 28 55 53 45 5f 52 43 29 21 3d 30  !IF $(USE_RC)!=0 b3a0: 0a 23 20 3c 3c 62 6c 6f 63 6b 31 3e 3e 0a 24 28 .# <<block1>>.$(
b3b0: 4c 49 42 52 45 53 4f 42 4a 53 29 3a 09 24 28 54  LIBRESOBJS):.$(T b3c0: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e OP)\src\sqlite3. b3d0: 72 63 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 rc$(SQLITE3H)..
b3e0: 65 63 68 6f 20 23 69 66 6e 64 65 66 20 53 51 4c  echo #ifndef SQL
b3f0: 49 54 45 5f 52 45 53 4f 55 52 43 45 5f 56 45 52  ITE_RESOURCE_VER
b400: 53 49 4f 4e 20 3e 20 73 71 6c 69 74 65 33 72 63  SION > sqlite3rc
b410: 2e 68 0a 09 66 6f 72 20 2f 46 20 25 25 56 20 69  .h..for /F %%V i
b420: 6e 20 28 27 74 79 70 65 20 22 24 28 54 4f 50 29  n ('type "$(TOP) b430: 5c 56 45 52 53 49 4f 4e 22 27 29 20 64 6f 20 28 \VERSION"') do ( b440: 20 5c 0a 09 09 65 63 68 6f 20 23 64 65 66 69 6e \...echo #defin b450: 65 20 53 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 e SQLITE_RESOURC b460: 45 5f 56 45 52 53 49 4f 4e 20 25 25 56 20 5c 0a E_VERSION %%V \. b470: 09 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
b480: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re b490: 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 place.tcl exact b4a0: 2e 20 5e 2c 20 3e 3e 20 73 71 6c 69 74 65 33 72 . ^, >> sqlite3r b4b0: 63 2e 68 20 5c 0a 09 29 0a 09 65 63 68 6f 20 23 c.h \..)..echo # b4c0: 65 6e 64 69 66 20 3e 3e 20 73 71 6c 69 74 65 33 endif >> sqlite3 b4d0: 72 63 2e 68 0a 09 24 28 4c 54 52 43 4f 4d 50 49 rc.h..$(LTRCOMPI
b4e0: 4c 45 29 20 2d 66 6f 20 24 28 4c 49 42 52 45 53  LE) -fo $(LIBRES b4f0: 4f 42 4a 53 29 20 24 28 54 4f 50 29 5c 73 72 63 OBJS)$(TOP)\src
b500: 5c 73 71 6c 69 74 65 33 2e 72 63 0a 23 20 3c 3c  \sqlite3.rc.# <<
b510: 2f 62 6c 6f 63 6b 31 3e 3e 0a 21 45 4e 44 49 46  /block1>>.!ENDIF
b520: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52  ..# <<mark>>.# R
b530: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e  ules to build in
b540: 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69  dividual *.lo fi
b550: 6c 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 20 69  les from files i
b560: 6e 20 74 68 65 20 73 72 63 20 64 69 72 65 63 74  n the src direct
b570: 6f 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a  ory..#.alter.lo:
b580: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65  .$(TOP)\src\alte b590: 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 r.c$(HDR)..$(LT b5a0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b5b0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b5c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65   $(TOP)\src\alte b5d0: 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6c 6f 3a r.c..analyze.lo: b5e0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c .$(TOP)\src\anal
b5f0: 79 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  yze.c $(HDR)..$(
b600: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR b610: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) b620: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e -c$(TOP)\src\an
b630: 61 6c 79 7a 65 2e 63 0a 0a 61 74 74 61 63 68 2e  alyze.c..attach.
b640: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61  lo:.$(TOP)\src\a b650: 74 74 61 63 68 2e 63 20 24 28 48 44 52 29 0a 09 ttach.c$(HDR)..
b660: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
b670: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b680: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ b690: 61 74 74 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c attach.c..auth.l b6a0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 o:.$(TOP)\src\au
b6b0: 74 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  th.c $(HDR)..$(L
b6c0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE b6d0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - b6e0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 c$(TOP)\src\aut
b6f0: 68 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c 6f 3a 09  h.c..backup.lo:.
b700: 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75  $(TOP)\src\backu b710: 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 p.c$(HDR)..$(LT b720: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b730: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b740: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b   $(TOP)\src\back b750: 75 70 2e 63 0a 0a 62 69 74 76 65 63 2e 6c 6f 3a up.c..bitvec.lo: b760: 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 .$(TOP)\src\bitv
b770: 65 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ec.c $(HDR)..$(L
b780: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE b790: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - b7a0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 c$(TOP)\src\bit
b7b0: 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 2e 6c  vec.c..btmutex.l
b7c0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74  o:.$(TOP)\src\bt b7d0: 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a 09 mutex.c$(HDR)..
b7e0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
b7f0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b800: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ b810: 62 74 6d 75 74 65 78 2e 63 0a 0a 62 74 72 65 65 btmutex.c..btree b820: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
b830: 62 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24  btree.c $(HDR)$
b840: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e  (TOP)\src\pager.
b850: 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  h..$(LTCOMPILE) b860: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
b870: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s b880: 72 63 5c 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c rc\btree.c..buil b890: 64 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 d.lo:.$(TOP)\src
b8a0: 5c 62 75 69 6c 64 2e 63 20 24 28 48 44 52 29 0a  \build.c $(HDR). b8b0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( b8c0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT b8d0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
b8e0: 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c 62 61  \build.c..callba
b8f0: 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ck.lo:.$(TOP)\sr b900: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24 28 48 c\callback.c$(H
b910: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE b920: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
b930: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) b940: 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a \src\callback.c. b950: 0a 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 .complete.lo:.$(
b960: 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74  TOP)\src\complet
b970: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
b980: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ b990: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c b9a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70$(TOP)\src\comp
b9b0: 6c 65 74 65 2e 63 0a 0a 63 74 69 6d 65 2e 6c 6f  lete.c..ctime.lo
b9c0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69  :.$(TOP)\src\cti b9d0: 6d 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c me.c$(HDR)..$(L b9e0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
b9f0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
ba00: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69  c $(TOP)\src\cti ba10: 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f 3a 09 24 me.c..date.lo:.$
ba20: 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63  (TOP)\src\date.c
ba30: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
ba40: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM ba50: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
ba60: 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a  TOP)\src\date.c.
ba70: 0a 64 62 73 74 61 74 2e 6c 6f 3a 09 24 28 54 4f  .dbstat.lo:.$(TO ba80: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 24 28 P)\src\date.c$(
ba90: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL baa0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
bab0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP bac0: 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 0a 0a )\src\dbstat.c.. bad0: 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 delete.lo:.$(TOP
bae0: 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 24  )\src\delete.c $baf0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
bb00: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI bb10: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
bb20: 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 0a  P)\src\delete.c.
bb30: 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  .expr.lo:.$(TOP) bb40: 5c 73 72 63 5c 65 78 70 72 2e 63 20 24 28 48 44 \src\expr.c$(HD
bb50: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) bb60: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
bb70: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ bb80: 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66 61 75 6c src\expr.c..faul bb90: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
bba0: 5c 66 61 75 6c 74 2e 63 20 24 28 48 44 52 29 0a  \fault.c $(HDR). bbb0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( bbc0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT bbd0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
bbe0: 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c  \fault.c..fkey.l
bbf0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b  o:.$(TOP)\src\fk bc00: 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ey.c$(HDR)..$(L bc10: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
bc20: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
bc30: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65  c $(TOP)\src\fke bc40: 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a 09 24 28 y.c..func.lo:.$(
bc50: 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20  TOP)\src\func.c
bc60: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
bc70: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP bc80: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
bc90: 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 0a 0a  OP)\src\func.c..
bca0: 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50  global.lo:.$(TOP bcb0: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 24 )\src\global.c$
bcc0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI bcd0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
bce0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO bcf0: 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 0a P)\src\global.c. bd00: 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 .hash.lo:.$(TOP)
bd10: 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28 48 44  \src\hash.c $(HD bd20: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
bd30: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ bd40: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
bd50: 73 72 63 5c 68 61 73 68 2e 63 0a 0a 69 6e 73 65  src\hash.c..inse
bd60: 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  rt.lo:.$(TOP)\sr bd70: 63 5c 69 6e 73 65 72 74 2e 63 20 24 28 48 44 52 c\insert.c$(HDR
bd80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) bd90: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
bda0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s bdb0: 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a 6c 65 67 rc\insert.c..leg bdc0: 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 acy.lo:.$(TOP)\s
bdd0: 72 63 5c 6c 65 67 61 63 79 2e 63 20 24 28 48 44  rc\legacy.c $(HD bde0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
bdf0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ be00: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
be10: 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c 6f  src\legacy.c..lo
be20: 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  adext.lo:.$(TOP) be30: 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 24 \src\loadext.c$
be40: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI be50: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
be60: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO be70: 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 P)\src\loadext.c be80: 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 ..main.lo:.$(TOP
be90: 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 24 28 48  )\src\main.c $(H bea0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
beb0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE bec0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
bed0: 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a 6d 61 6c  \src\main.c..mal
bee0: 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  loc.lo:.$(TOP)\s bef0: 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 28 48 44 rc\malloc.c$(HD
bf00: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) bf10: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
bf20: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ bf30: 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a 6d 65 src\malloc.c..me bf40: 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 m0.lo:.$(TOP)\sr
bf50: 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52 29 0a  c\mem0.c $(HDR). bf60: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( bf70: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT bf80: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
bf90: 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f  \mem0.c..mem1.lo
bfa0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  :.$(TOP)\src\mem bfb0: 31 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 1.c$(HDR)..$(LT bfc0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
bfd0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
bfe0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31   $(TOP)\src\mem1 bff0: 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09 24 28 54 .c..mem2.lo:.$(T
c000: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 24  OP)\src\mem2.c $c010: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
c020: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI c030: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
c040: 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 0a 0a 6d  P)\src\mem2.c..m
c050: 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  em3.lo:.$(TOP)\s c060: 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48 44 52 29 rc\mem3.c$(HDR)
c070: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
c080: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c090: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr c0a0: 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c c\mem3.c..mem5.l c0b0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 o:.$(TOP)\src\me
c0c0: 6d 35 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  m5.c $(HDR)..$(L
c0d0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c0e0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c0f0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d c$(TOP)\src\mem
c100: 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 72 6e 61 6c 2e  5.c..memjournal.
c110: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d  lo:.$(TOP)\src\m c120: 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 48 44 emjournal.c$(HD
c130: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) c140: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
c150: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ c160: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 src\memjournal.c c170: 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f ..mutex.lo:.$(TO
c180: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 24  P)\src\mutex.c $c190: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
c1a0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI c1b0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
c1c0: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 0a 0a  P)\src\mutex.c..
c1d0: 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24  mutex_noop.lo:.$c1e0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f (TOP)\src\mutex_ c1f0: 6e 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a 09 24 noop.c$(HDR)..$c200: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
c210: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
c220: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m c230: 75 74 65 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d 75 74 utex_noop.c..mut c240: 65 78 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f ex_unix.lo:.$(TO
c250: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69  P)\src\mutex_uni
c260: 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  x.c $(HDR)..$(LT
c270: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ c280: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c c290: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65$(TOP)\src\mute
c2a0: 78 5f 75 6e 69 78 2e 63 0a 0a 6d 75 74 65 78 5f  x_unix.c..mutex_
c2b0: 77 33 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  w32.lo:.$(TOP)\s c2c0: 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 24 rc\mutex_w32.c$
c2d0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI c2e0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
c2f0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO c300: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 P)\src\mutex_w32 c310: 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24 .c..notify.lo:.$
c320: 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79  (TOP)\src\notify
c330: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
c340: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C c350: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c c360: 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66$(TOP)\src\notif
c370: 79 2e 63 0a 0a 70 61 67 65 72 2e 6c 6f 3a 09 24  y.c..pager.lo:.$c380: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e (TOP)\src\pager. c390: 63 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c c$(HDR) $(TOP)\ c3a0: 73 72 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c src\pager.h..$(L
c3b0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c3c0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c3d0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 c$(TOP)\src\pag
c3e0: 65 72 2e 63 0a 0a 70 63 61 63 68 65 2e 6c 6f 3a  er.c..pcache.lo:
c3f0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63  .$(TOP)\src\pcac c400: 68 65 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f he.c$(HDR) $(TO c410: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 0a P)\src\pcache.h. c420: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( c430: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT c440: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
c450: 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63 61 63 68  \pcache.c..pcach
c460: 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  e1.lo:.$(TOP)\sr c470: 63 5c 70 63 61 63 68 65 31 2e 63 20 24 28 48 44 c\pcache1.c$(HD
c480: 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  R) $(TOP)\src\pc c490: 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 ache.h..$(LTCOMP
c4a0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP c4b0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
c4c0: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e  OP)\src\pcache1.
c4d0: 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 28 54 4f 50 29  c..os.lo:.$(TOP) c4e0: 5c 73 72 63 5c 6f 73 2e 63 20 24 28 48 44 52 29 \src\os.c$(HDR)
c4f0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
c500: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c510: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr c520: 63 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e 69 78 2e c\os.c..os_unix. c530: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f lo:.$(TOP)\src\o
c540: 73 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a  s_unix.c $(HDR). c550: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( c560: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT c570: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
c580: 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73 5f 77  \os_unix.c..os_w
c590: 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  in.lo:.$(TOP)\sr c5a0: 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28 48 44 52 c\os_win.c$(HDR
c5b0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) c5c0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
c5d0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s c5e0: 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61 rc\os_win.c..pra c5f0: 67 6d 61 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 gma.lo:.$(TOP)\s
c600: 72 63 5c 70 72 61 67 6d 61 2e 63 20 24 28 48 44  rc\pragma.c $(HD c610: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
c620: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ c630: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
c640: 73 72 63 5c 70 72 61 67 6d 61 2e 63 0a 0a 70 72  src\pragma.c..pr
c650: 65 70 61 72 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  epare.lo:.$(TOP) c660: 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 24 \src\prepare.c$
c670: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI c680: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
c690: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO c6a0: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 P)\src\prepare.c c6b0: 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09 24 28 54 ..printf.lo:.$(T
c6c0: 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63  OP)\src\printf.c
c6d0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c6e0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c6f0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c700: 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e  TOP)\src\printf.
c710: 63 0a 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24 28  c..random.lo:.$( c720: 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e TOP)\src\random. c730: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO c740: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c750: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $c760: 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d (TOP)\src\random c770: 2e 63 0a 0a 72 65 73 6f 6c 76 65 2e 6c 6f 3a 09 .c..resolve.lo:. c780: 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c$(TOP)\src\resol
c790: 76 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ve.c $(HDR)..$(L
c7a0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c7b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c7c0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 c$(TOP)\src\res
c7d0: 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73 65 74 2e 6c  olve.c..rowset.l
c7e0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  o:.$(TOP)\src\ro c7f0: 77 73 65 74 2e 63 20 24 28 48 44 52 29 0a 09 24 wset.c$(HDR)..$c800: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
c810: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
c820: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72   -c $(TOP)\src\r c830: 6f 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63 74 2e owset.c..select. c840: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 lo:.$(TOP)\src\s
c850: 65 6c 65 63 74 2e 63 20 24 28 48 44 52 29 0a 09  elect.c $(HDR).. c860: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C c870: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS c880: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
c890: 73 65 6c 65 63 74 2e 63 0a 0a 73 74 61 74 75 73  select.c..status
c8a0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ c8b0: 73 74 61 74 75 73 2e 63 20 24 28 48 44 52 29 0a status.c$(HDR).
c8c0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
c8d0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
c8e0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src c8f0: 5c 73 74 61 74 75 73 2e 63 0a 0a 74 61 62 6c 65 \status.c..table c900: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
c910: 74 61 62 6c 65 2e 63 20 24 28 48 44 52 29 0a 09  table.c $(HDR).. c920: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C c930: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS c940: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
c950: 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65 61 64 73  table.c..threads
c960: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ c970: 74 68 72 65 61 64 73 2e 63 20 24 28 48 44 52 29 threads.c$(HDR)
c980: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
c990: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c9a0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr c9b0: 63 5c 74 68 72 65 61 64 73 2e 63 0a 0a 74 6f 6b c\threads.c..tok c9c0: 65 6e 69 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 enize.lo:.$(TOP)
c9d0: 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20  \src\tokenize.c
c9e0: 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 24 28  keywordhash.h $( c9f0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
ca00: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL ca10: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
ca20: 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63  )\src\tokenize.c
ca30: 0a 0a 74 72 65 65 76 69 65 77 2e 6c 6f 3a 09 24  ..treeview.lo:.$ca40: 28 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 (TOP)\src\treevi ca50: 65 77 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ew.c$(HDR)..$(L ca60: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
ca70: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
ca80: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65  c $(TOP)\src\tre ca90: 65 76 69 65 77 2e 63 0a 0a 74 72 69 67 67 65 72 eview.c..trigger caa0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
cab0: 74 72 69 67 67 65 72 2e 63 20 24 28 48 44 52 29  trigger.c $(HDR) cac0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $cad0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP cae0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
caf0: 63 5c 74 72 69 67 67 65 72 2e 63 0a 0a 75 70 64  c\trigger.c..upd
cb00: 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ate.lo:.$(TOP)\s cb10: 72 63 5c 75 70 64 61 74 65 2e 63 20 24 28 48 44 rc\update.c$(HD
cb20: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cb30: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cb40: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cb50: 73 72 63 5c 75 70 64 61 74 65 2e 63 0a 0a 75 74 src\update.c..ut cb60: 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 f.lo:.$(TOP)\src
cb70: 5c 75 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24  \utf.c $(HDR)..$
cb80: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO cb90: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) cba0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 -c$(TOP)\src\u
cbb0: 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a 09 24  tf.c..util.lo:.$cbc0: 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 (TOP)\src\util.c cbd0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM cbe0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
cbf0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( cc00: 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 0a TOP)\src\util.c. cc10: 0a 76 61 63 75 75 6d 2e 6c 6f 3a 09 24 28 54 4f .vacuum.lo:.$(TO
cc20: 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 20  P)\src\vacuum.c
cc30: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
cc40: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP cc50: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
cc60: 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63  OP)\src\vacuum.c
cc70: 0a 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54 4f 50  ..vdbe.lo:.$(TOP cc80: 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 48 )\src\vdbe.c$(H
cc90: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE cca0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
ccb0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) ccc0: 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76 64 62 \src\vdbe.c..vdb ccd0: 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c eapi.lo:.$(TOP)\
cce0: 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20 24 28  src\vdbeapi.c $( ccf0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
cd00: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL cd10: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
cd20: 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 0a  )\src\vdbeapi.c.
cd30: 0a 76 64 62 65 61 75 78 2e 6c 6f 3a 09 24 28 54  .vdbeaux.lo:.$(T cd40: 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e OP)\src\vdbeaux. cd50: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO cd60: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
cd70: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $cd80: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 (TOP)\src\vdbeau cd90: 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 2e 6c 6f x.c..vdbeblob.lo cda0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 :.$(TOP)\src\vdb
cdb0: 65 62 6c 6f 62 2e 63 20 24 28 48 44 52 29 0a 09  eblob.c $(HDR).. cdc0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C cdd0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS cde0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
cdf0: 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76 64 62 65  vdbeblob.c..vdbe
ce00: 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  mem.lo:.$(TOP)\s ce10: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 24 28 48 rc\vdbemem.c$(H
ce20: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE ce30: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
ce40: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) ce50: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a \src\vdbemem.c.. ce60: 76 64 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54 vdbesort.lo:.$(T
ce70: 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74  OP)\src\vdbesort
ce80: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
ce90: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C cea0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c ceb0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73$(TOP)\src\vdbes
cec0: 6f 72 74 2e 63 0a 0a 76 64 62 65 74 72 61 63 65  ort.c..vdbetrace
ced0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ cee0: 76 64 62 65 74 72 61 63 65 2e 63 20 24 28 48 44 vdbetrace.c$(HD
cef0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cf00: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cf10: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cf20: 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 0a src\vdbetrace.c. cf30: 0a 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 .vtab.lo:.$(TOP)
cf40: 5c 73 72 63 5c 76 74 61 62 2e 63 20 24 28 48 44  \src\vtab.c $(HD cf50: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
cf60: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ cf70: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
cf80: 73 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c 2e  src\vtab.c..wal.
cf90: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w cfa0: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c al.c$(HDR)..$(L cfb0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
cfc0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
cfd0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c  c $(TOP)\src\wal cfe0: 2e 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f 3a 09 24 .c..walker.lo:.$
cff0: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72  (TOP)\src\walker
d000: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
d010: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d020: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d030: 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65$(TOP)\src\walke
d040: 72 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f 3a 09 24  r.c..where.lo:.$d050: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. d060: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO d070: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d080: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $d090: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. d0a0: 63 0a 0a 77 68 65 72 65 63 6f 64 65 2e 6c 6f 3a c..wherecode.lo: d0b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 .$(TOP)\src\wher
d0c0: 65 63 6f 64 65 2e 63 20 24 28 48 44 52 29 0a 09  ecode.c $(HDR).. d0d0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C d0e0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS d0f0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
d100: 77 68 65 72 65 63 6f 64 65 2e 63 0a 0a 77 68 65  wherecode.c..whe
d110: 72 65 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50  reexpr.lo:.$(TOP d120: 29 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e )\src\whereexpr. d130: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO d140: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d150: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $d160: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 65 (TOP)\src\wheree d170: 78 70 72 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 xpr.c..tclsqlite d180: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
d190: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44  tclsqlite.c $(HD d1a0: 52 29 20 24 28 53 51 4c 49 54 45 5f 54 43 4c 5f R)$(SQLITE_TCL_
d1b0: 44 45 50 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  DEP)..$(LTCOMPIL d1c0: 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 E)$(NO_WARN) -D
d1d0: 55 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20  USE_TCL_STUBS=1
d1e0: 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d  -DBUILD_sqlite -
d1f0: 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63  I$(TCLINCDIR) -c d200: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73$(TOP)\src\tcls
d210: 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69  qlite.c..tclsqli
d220: 74 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54  te-shell.lo:.$(T d230: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 OP)\src\tclsqlit d240: 65 2e 63 20 24 28 48 44 52 29 20 24 28 53 51 4c e.c$(HDR) $(SQL d250: 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 ITE_TCL_DEP)..$(
d260: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f  LTCOMPILE) $(NO_ d270: 57 41 52 4e 29 20 2d 44 54 43 4c 53 48 3d 31 20 WARN) -DTCLSH=1 d280: 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d -DBUILD_sqlite - d290: 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 I$(TCLINCDIR) -c
d2a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls d2b0: 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 qlite.c..tclsqli d2c0: 74 65 33 2e 65 78 65 3a 09 74 63 6c 73 71 6c 69 te3.exe:.tclsqli d2d0: 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 53 51 te-shell.lo$(SQ
d2e0: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE d2f0: 33 48 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 3H)$(LIBRESOBJS
d300: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53  )..$(LTLINK)$(S
d310: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $d320: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
d330: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP d340: 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 20 74 63 ATHS) /OUT:$@ tc
d350: 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f  lsqlite-shell.lo
d360: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
d370: 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53  (LTLIBS) $(TLIBS d380: 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 )..# Rules to bu d390: 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63 20 61 6e ild opcodes.c an d3a0: 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23 0a 6f 70 d opcodes.h.#.op d3b0: 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f 64 65 73 codes.c:.opcodes d3c0: 2e 68 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d .h$(TOP)\tool\m
d3d0: 6b 6f 70 63 6f 64 65 63 2e 74 63 6c 0a 09 24 28  kopcodec.tcl..$( d3e0: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 TCLSH_CMD)$(TOP
d3f0: 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 63  )\tool\mkopcodec
d400: 2e 74 63 6c 20 6f 70 63 6f 64 65 73 2e 68 20 3e  .tcl opcodes.h >
d410: 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 6f 70 63 6f   opcodes.c..opco
d420: 64 65 73 2e 68 3a 09 70 61 72 73 65 2e 68 20 24  des.h:.parse.h $d430: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 (TOP)\src\vdbe.c d440: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f$(TOP)\tool\mko
d450: 70 63 6f 64 65 68 2e 74 63 6c 0a 09 74 79 70 65  pcodeh.tcl..type
d460: 20 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 5c   parse.h $(TOP)\ d470: 73 72 63 5c 76 64 62 65 2e 63 20 7c 20 24 28 54 src\vdbe.c |$(T
d480: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) d490: 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 68 2e \tool\mkopcodeh. d4a0: 74 63 6c 20 3e 20 6f 70 63 6f 64 65 73 2e 68 0a tcl > opcodes.h. d4b0: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c .# Rules to buil d4c0: 64 20 70 61 72 73 65 2e 63 20 61 6e 64 20 70 61 d parse.c and pa d4d0: 72 73 65 2e 68 20 2d 20 74 68 65 20 6f 75 74 70 rse.h - the outp d4e0: 75 74 73 20 6f 66 20 6c 65 6d 6f 6e 2e 0a 23 0a uts of lemon..#. d4f0: 70 61 72 73 65 2e 68 3a 09 70 61 72 73 65 2e 63 parse.h:.parse.c d500: 0a 0a 70 61 72 73 65 2e 63 3a 09 24 28 54 4f 50 ..parse.c:.$(TOP
d510: 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 6c 65  )\src\parse.y le
d520: 6d 6f 6e 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  mon.exe $(TOP)\t d530: 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 65 73 2e 74 ool\addopcodes.t d540: 63 6c 0a 09 64 65 6c 20 2f 51 20 70 61 72 73 65 cl..del /Q parse d550: 2e 79 20 70 61 72 73 65 2e 68 20 70 61 72 73 65 .y parse.h parse d560: 2e 68 2e 74 65 6d 70 20 32 3e 4e 55 4c 0a 09 63 .h.temp 2>NUL..c d570: 6f 70 79 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 opy$(TOP)\src\p
d580: 61 72 73 65 2e 79 20 2e 0a 09 2e 5c 6c 65 6d 6f  arse.y ....\lemo
d590: 6e 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54  n.exe $(REQ_FEAT d5a0: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 URE_FLAGS)$(OPT
d5b0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20  _FEATURE_FLAGS)
d5c0: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(EXT_FEATURE_FL d5d0: 41 47 53 29 20 24 28 4f 50 54 53 29 20 70 61 72 AGS)$(OPTS) par
d5e0: 73 65 2e 79 0a 09 6d 6f 76 65 20 70 61 72 73 65  se.y..move parse
d5f0: 2e 68 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 0a  .h parse.h.temp.
d600: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
d610: 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63  TOP)\tool\addopc
d620: 6f 64 65 73 2e 74 63 6c 20 70 61 72 73 65 2e 68  odes.tcl parse.h
d630: 2e 74 65 6d 70 20 3e 20 70 61 72 73 65 2e 68 0a  .temp > parse.h.
d640: 0a 24 28 53 51 4c 49 54 45 33 48 29 3a 09 24 28  .$(SQLITE3H):.$(
d650: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e  TOP)\src\sqlite.
d660: 68 2e 69 6e 20 24 28 54 4f 50 29 5c 6d 61 6e 69  h.in $(TOP)\mani d670: 66 65 73 74 2e 75 75 69 64 20 24 28 54 4f 50 29 fest.uuid$(TOP)
d680: 5c 56 45 52 53 49 4f 4e 0a 09 24 28 54 43 4c 53  \VERSION..$(TCLS d690: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
d6a0: 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63  ol\mksqlite3h.tc
d6b0: 6c 20 24 28 54 4f 50 3a 5c 3d 2f 29 20 3e 20 24  l $(TOP:\=/) >$
d6c0: 28 53 51 4c 49 54 45 33 48 29 20 24 28 4d 4b 53  (SQLITE3H) $(MKS d6d0: 51 4c 49 54 45 33 48 5f 41 52 47 53 29 0a 0a 73 QLITE3H_ARGS)..s d6e0: 71 6c 69 74 65 33 65 78 74 2e 68 3a 09 2e 74 61 qlite3ext.h:..ta d6f0: 72 67 65 74 5f 73 6f 75 72 63 65 0a 21 49 46 20 rget_source.!IF d700: 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d$(USE_STDCALL)!=
d710: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30  0 || $(FOR_WIN10 d720: 29 21 3d 30 0a 09 74 79 70 65 20 74 73 72 63 5c )!=0..type tsrc\ d730: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 7c 20 24 sqlite3ext.h |$
d740: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO d750: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. d760: 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a tcl regsub "$$\* d770: 5c 29 22 20 22 28 53 51 4c 49 54 45 5f 43 41 4c$$" "(SQLITE_CAL d780: 4c 42 41 43 4b 20 2a 29 22 20 5c 0a 09 09 7c 20 LBACK *)" \...| d790: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54$(TCLSH_CMD) $(T d7a0: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 OP)\tool\replace d7b0: 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c .tcl regsub "\(\ d7c0: 2a 22 20 22 28 53 51 4c 49 54 45 5f 41 50 49 43 *" "(SQLITE_APIC d7d0: 41 4c 4c 20 2a 22 20 3e 20 73 71 6c 69 74 65 33 ALL *" > sqlite3 d7e0: 65 78 74 2e 68 0a 09 63 6f 70 79 20 2f 59 20 73 ext.h..copy /Y s d7f0: 71 6c 69 74 65 33 65 78 74 2e 68 20 74 73 72 63 qlite3ext.h tsrc d800: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 0a 21 45 \sqlite3ext.h.!E d810: 4c 53 45 0a 09 63 6f 70 79 20 2f 59 20 74 73 72 LSE..copy /Y tsr d820: 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 73 c\sqlite3ext.h s d830: 71 6c 69 74 65 33 65 78 74 2e 68 0a 21 45 4e 44 qlite3ext.h.!END d840: 49 46 0a 0a 6d 6b 6b 65 79 77 6f 72 64 68 61 73 IF..mkkeywordhas d850: 68 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f h.exe:.$(TOP)\to
d860: 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  ol\mkkeywordhash
d870: 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f  .c..$(BCC)$(NO_
d880: 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 52 45  WARN) -Fe$@$(RE
d890: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
d8a0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F d8b0: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
d8c0: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT d8d0: 53 29 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f S) \...$(TOP)\to
d8e0: 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  ol\mkkeywordhash
d8f0: 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  .c /link $(LDFLA d900: 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 GS)$(NLTLINKOPT
d910: 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53  S) $(NLTLIBPATHS d920: 29 0a 0a 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 )..keywordhash.h d930: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b :.$(TOP)\tool\mk
d940: 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20 6d 6b  keywordhash.c mk
d950: 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 0a  keywordhash.exe.
d960: 09 2e 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  ..\mkkeywordhash
d970: 2e 65 78 65 20 3e 20 6b 65 79 77 6f 72 64 68 61  .exe > keywordha
d980: 73 68 2e 68 0a 0a 0a 0a 23 20 52 75 6c 65 73 20  sh.h....# Rules
d990: 74 6f 20 62 75 69 6c 64 20 74 68 65 20 65 78 74  to build the ext
d9a0: 65 6e 73 69 6f 6e 20 6f 62 6a 65 63 74 73 2e 0a  ension objects..
d9b0: 23 0a 69 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 29  #.icu.lo:.$(TOP) d9c0: 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 20 24 \ext\icu\icu.c$
d9d0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). d9e0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( d9f0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT da00: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 S)$(NO_WARN) -D
da10: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $da20: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 (TOP)\ext\icu\ic da30: 75 2e 63 0a 0a 66 74 73 32 2e 6c 6f 3a 09 24 28 u.c..fts2.lo:.$(
da40: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
da50: 73 32 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  s2.c $(HDR)$(EX
da60: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI da70: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
da80: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA da90: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR daa0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
dab0: 66 74 73 32 5c 66 74 73 32 2e 63 0a 0a 66 74 73  fts2\fts2.c..fts
dac0: 32 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50  2_hash.lo:.$(TOP dad0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ dae0: 68 61 73 68 2e 63 20 24 28 48 44 52 29 20 24 28 hash.c$(HDR) $( daf0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
db00: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM db10: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f PILE_OPTS)$(NO_
db20: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
db30: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex db40: 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 t\fts2\fts2_hash db50: 2e 63 0a 0a 66 74 73 32 5f 69 63 75 2e 6c 6f 3a .c..fts2_icu.lo: db60: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 .$(TOP)\ext\fts2
db70: 5c 66 74 73 32 5f 69 63 75 2e 63 20 24 28 48 44  \fts2_icu.c $(HD db80: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( db90: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
dba0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
dbb0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL dbc0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
dbd0: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
dbe0: 5f 69 63 75 2e 63 0a 0a 66 74 73 32 5f 70 6f 72  _icu.c..fts2_por
dbf0: 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ter.lo:.$(TOP)\e dc00: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 xt\fts2\fts2_por dc10: 74 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 ter.c$(HDR) $(E dc20: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
dc30: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP dc40: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
dc50: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
dc60: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext dc70: 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 74 65 \fts2\fts2_porte dc80: 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 6e 69 r.c..fts2_tokeni dc90: 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 zer.lo:.$(TOP)\e
dca0: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b  xt\fts2\fts2_tok
dcb0: 65 6e 69 7a 65 72 2e 63 20 24 28 48 44 52 29 20  enizer.c $(HDR) dcc0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC dcd0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
dce0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N dcf0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE dd00: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
dd10: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f  ext\fts2\fts2_to
dd20: 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73 32 5f  kenizer.c..fts2_
dd30: 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24  tokenizer1.lo:.$dd40: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 (TOP)\ext\fts2\f dd50: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 ts2_tokenizer1.c dd60: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR dd70: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
dd80: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O dd90: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
dda0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
ddb0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 ddc0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 \fts2_tokenizer1 ddd0: 2e 63 0a 0a 66 74 73 33 2e 6c 6f 3a 09 24 28 54 .c..fts3.lo:.$(T
dde0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
ddf0: 33 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  3.c $(HDR)$(EXT
de00: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL de10: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
de20: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR de30: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 N) -DSQLITE_CORE de40: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 -c$(TOP)\ext\f
de50: 74 73 33 5c 66 74 73 33 2e 63 0a 0a 66 74 73 33  ts3\fts3.c..fts3
de60: 5f 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  _aux.lo:.$(TOP)\ de70: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 ext\fts3\fts3_au de80: 78 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 x.c$(HDR) $(EXT de90: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
dea0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL deb0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
dec0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
ded0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f dee0: 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 0a 0a ts3\fts3_aux.c.. def0: 66 74 73 33 5f 65 78 70 72 2e 6c 6f 3a 09 24 28 fts3_expr.lo:.$(
df00: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
df10: 73 33 5f 65 78 70 72 2e 63 20 24 28 48 44 52 29  s3_expr.c $(HDR) df20: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT df30: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
df40: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( df50: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT df60: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
df70: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65  \ext\fts3\fts3_e
df80: 78 70 72 2e 63 0a 0a 66 74 73 33 5f 68 61 73 68  xpr.c..fts3_hash
df90: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ dfa0: 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 fts3\fts3_hash.c dfb0: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR dfc0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
dfd0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O dfe0: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
dff0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
e000: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 e010: 5c 66 74 73 33 5f 68 61 73 68 2e 63 0a 0a 66 74 \fts3_hash.c..ft e020: 73 33 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 s3_icu.lo:.$(TOP
e030: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
e040: 69 63 75 2e 63 20 24 28 48 44 52 29 20 24 28 45  icu.c $(HDR)$(E
e050: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP e060: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
e070: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W e080: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO e090: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
e0a0: 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63  \fts3\fts3_icu.c
e0b0: 0a 0a 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c  ..fts3_snippet.l
e0c0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft e0d0: 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 2e s3\fts3_snippet. e0e0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD e0f0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
e100: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ e110: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 OPTS)$(NO_WARN)
e120: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
e130: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts e140: 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 63 3\fts3_snippet.c e150: 0a 0a 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f ..fts3_porter.lo e160: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
e170: 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 20  3\fts3_porter.c
e180: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
e190: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
e1a0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
e1b0: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - e1c0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c e1d0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
e1e0: 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 0a 0a 66  fts3_porter.c..f
e1f0: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f  ts3_tokenizer.lo
e200: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts e210: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer e220: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH e230: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
e240: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE e250: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e _OPTS)$(NO_WARN
e260: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE
e270: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft e280: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 s3\fts3_tokenize e290: 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 r.c..fts3_tokeni e2a0: 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c zer1.lo:.$(TOP)\
e2b0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f  ext\fts3\fts3_to
e2c0: 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48 44 52  kenizer1.c $(HDR e2d0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L e2e0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
e2f0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $e300: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI e310: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
e320: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
e330: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 66 74  tokenizer1.c..ft
e340: 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62  s3_tokenize_vtab
e350: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ e360: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni e370: 7a 65 5f 76 74 61 62 2e 63 20 24 28 48 44 52 29 ze_vtab.c$(HDR)
e380: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
e390: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ e3a0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 COMPILE_OPTS)$(
e3b0: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
e3c0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP) e3d0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 \ext\fts3\fts3_t e3e0: 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 0a 0a okenize_vtab.c.. e3f0: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c 6f 3a fts3_unicode.lo: e400: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 .$(TOP)\ext\fts3
e410: 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20  \fts3_unicode.c
e420: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
e430: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
e440: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
e450: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - e460: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c e470: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
e480: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 0a 0a  fts3_unicode.c..
e490: 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 6c 6f  fts3_unicode2.lo
e4a0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts e4b0: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 3\fts3_unicode2. e4c0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD e4d0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
e4e0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ e4f0: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 OPTS)$(NO_WARN)
e500: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
e510: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts e520: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 3\fts3_unicode2. e530: 63 0a 0a 66 74 73 33 5f 77 72 69 74 65 2e 6c 6f c..fts3_write.lo e540: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
e550: 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 20 24  3\fts3_write.c $e560: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a (HDR)$(EXTHDR).
e570: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
e580: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
e590: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D e5a0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 SQLITE_CORE -c$
e5b0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
e5c0: 74 73 33 5f 77 72 69 74 65 2e 63 0a 0a 72 74 72  ts3_write.c..rtr
e5d0: 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  ee.lo:.$(TOP)\ex e5e0: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 20 t\rtree\rtree.c e5f0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) e600: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $e610: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP e620: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d TS)$(NO_WARN) -
e630: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
e640: 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65  $(TOP)\ext\rtree e650: 5c 72 74 72 65 65 2e 63 0a 0a 73 71 6c 69 74 65 \rtree.c..sqlite e660: 33 73 65 73 73 69 6f 6e 2e 6c 6f 3a 09 24 28 54 3session.lo:.$(T
e670: 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c  OP)\ext\session\
e680: 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 63  sqlite3session.c
e690: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR)$(EXTHDR
e6a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) e6b0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
e6c0: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  PTS) $(NO_WARN) e6d0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 -DSQLITE_CORE -c e6e0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73$(TOP)\ext\sess
e6f0: 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69  ion\sqlite3sessi
e700: 6f 6e 2e 63 0a 0a 23 20 46 54 53 35 20 74 68 69  on.c..# FTS5 thi
e710: 6e 67 73 0a 23 0a 46 54 53 35 5f 53 52 43 20 3d  ngs.#.FTS5_SRC =
e720: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext e730: 5c 66 74 73 35 5c 66 74 73 35 2e 68 20 5c 0a 20 \fts5\fts5.h \. e740: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
e750: 35 5c 66 74 73 35 49 6e 74 2e 68 20 5c 0a 20 20  5\fts5Int.h \.
e760: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35   $(TOP)\ext\fts5 e770: 5c 66 74 73 35 5f 61 75 78 2e 63 20 5c 0a 20 20 \fts5_aux.c \. e780: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35$(TOP)\ext\fts5
e790: 5c 66 74 73 35 5f 62 75 66 66 65 72 2e 63 20 5c  \fts5_buffer.c \
e7a0: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  .   $(TOP)\ext\f e7b0: 74 73 35 5c 66 74 73 35 5f 6d 61 69 6e 2e 63 20 ts5\fts5_main.c e7c0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
e7d0: 66 74 73 35 5c 66 74 73 35 5f 63 6f 6e 66 69 67  fts5\fts5_config
e7e0: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e e7f0: 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 65 78 70 xt\fts5\fts5_exp e800: 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c r.c \.$(TOP)\
e810: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 68 61  ext\fts5\fts5_ha
e820: 73 68 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  sh.c \.   $(TOP) e830: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 69 \ext\fts5\fts5_i e840: 6e 64 65 78 2e 63 20 5c 0a 20 20 20 66 74 73 35 ndex.c \. fts5 e850: 70 61 72 73 65 2e 63 20 66 74 73 35 70 61 72 73 parse.c fts5pars e860: 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c e.h \.$(TOP)\
e870: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 73 74  ext\fts5\fts5_st
e880: 6f 72 61 67 65 2e 63 20 5c 0a 20 20 20 24 28 54  orage.c \.   $(T e890: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts e8a0: 35 5f 74 6f 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 5_tokenize.c \. e8b0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
e8c0: 35 5c 66 74 73 35 5f 75 6e 69 63 6f 64 65 32 2e  5\fts5_unicode2.
e8d0: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex e8e0: 74 5c 66 74 73 35 5c 66 74 73 35 5f 76 61 72 69 t\fts5\fts5_vari e8f0: 6e 74 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 nt.c \.$(TOP)
e900: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 76  \ext\fts5\fts5_v
e910: 6f 63 61 62 2e 63 0a 0a 66 74 73 35 70 61 72 73  ocab.c..fts5pars
e920: 65 2e 63 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  e.c:.$(TOP)\ext\ e930: 66 74 73 35 5c 66 74 73 35 70 61 72 73 65 2e 79 fts5\fts5parse.y e940: 20 6c 65 6d 6f 6e 2e 65 78 65 0a 09 63 6f 70 79 lemon.exe..copy e950: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35$(TOP)\ext\fts5
e960: 5c 66 74 73 35 70 61 72 73 65 2e 79 20 2e 0a 09  \fts5parse.y ...
e970: 64 65 6c 20 2f 51 20 66 74 73 35 70 61 72 73 65  del /Q fts5parse
e980: 2e 68 20 32 3e 4e 55 4c 0a 09 2e 5c 6c 65 6d 6f  .h 2>NUL...\lemo
e990: 6e 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54  n.exe $(REQ_FEAT e9a0: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 URE_FLAGS)$(OPT
e9b0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20  _FEATURE_FLAGS)
e9c0: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(EXT_FEATURE_FL e9d0: 41 47 53 29 20 24 28 4f 50 54 53 29 20 66 74 73 AGS)$(OPTS) fts
e9e0: 35 70 61 72 73 65 2e 79 0a 0a 66 74 73 35 70 61  5parse.y..fts5pa
e9f0: 72 73 65 2e 68 3a 09 66 74 73 35 70 61 72 73 65  rse.h:.fts5parse
ea00: 2e 63 0a 0a 66 74 73 35 2e 63 3a 09 24 28 46 54  .c..fts5.c:.$(FT ea10: 53 35 5f 53 52 43 29 0a 09 24 28 54 43 4c 53 48 S5_SRC)..$(TCLSH
ea20: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 65 78 74  _CMD) $(TOP)\ext ea30: 5c 66 74 73 35 5c 74 6f 6f 6c 5c 6d 6b 66 74 73 \fts5\tool\mkfts ea40: 35 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 28 54 5c.tcl..copy$(T
ea50: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
ea60: 35 2e 68 20 2e 0a 0a 66 74 73 35 2e 6c 6f 3a 09  5.h ...fts5.lo:.
ea70: 66 74 73 35 2e 63 20 24 28 48 44 52 29 20 24 28  fts5.c $(HDR)$(
ea80: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM ea90: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
eaa0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ eab0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C eac0: 4f 52 45 20 2d 63 20 66 74 73 35 2e 63 0a 0a 66 ORE -c fts5.c..f ead0: 74 73 35 5f 65 78 74 2e 6c 6f 3a 09 66 74 73 35 ts5_ext.lo:.fts5 eae0: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH eaf0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
eb00: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63 20  ) $(NO_WARN) -c eb10: 66 74 73 35 2e 63 0a 0a 66 74 73 35 2e 64 6c 6c fts5.c..fts5.dll eb20: 3a 09 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 09 24 :.fts5_ext.lo..$
eb30: 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53 29 20  (LD) $(LDFLAGS) eb40: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( eb50: 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44 4c 4c LTLIBPATHS) /DLL eb60: 20 2f 4f 55 54 3a 24 40 20 66 74 73 35 5f 65 78 /OUT:$@ fts5_ex
eb70: 74 2e 6c 6f 0a 0a 73 71 6c 69 74 65 33 72 62 75  t.lo..sqlite3rbu
eb80: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ eb90: 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 rbu\sqlite3rbu.c eba0: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR ebb0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
ebc0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
ebd0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c   $(TOP)\ext\rbu\ ebe0: 73 71 6c 69 74 65 33 72 62 75 2e 63 0a 0a 23 20 sqlite3rbu.c..# ebf0: 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 Rules to build t ec00: 68 65 20 27 74 65 73 74 66 69 78 74 75 72 65 27 he 'testfixture' ec10: 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 23 0a application..#. ec20: 23 20 49 66 20 75 73 69 6e 67 20 74 68 65 20 61 # If using the a ec30: 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c 20 75 73 65 malgamation, use ec40: 20 73 71 6c 69 74 65 33 2e 63 20 64 69 72 65 63 sqlite3.c direc ec50: 74 6c 79 20 74 6f 20 62 75 69 6c 64 20 74 68 65 tly to build the ec60: 20 74 65 73 74 0a 23 20 66 69 78 74 75 72 65 2e test.# fixture. ec70: 20 20 4f 74 68 65 72 77 69 73 65 20 6c 69 6e 6b Otherwise link ec80: 20 61 67 61 69 6e 73 74 20 6c 69 62 73 71 6c 69 against libsqli ec90: 74 65 33 2e 6c 69 62 2e 20 20 28 54 68 69 73 20 te3.lib. (This eca0: 64 69 73 74 69 6e 63 74 69 6f 6e 20 69 73 0a 23 distinction is.# ecb0: 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 75 necessary becau ecc0: 73 65 20 74 68 65 20 74 65 73 74 20 66 69 78 74 se the test fixt ecd0: 75 72 65 20 72 65 71 75 69 72 65 73 20 6e 6f 6e ure requires non ece0: 2d 41 50 49 20 73 79 6d 62 6f 6c 73 20 77 68 69 -API symbols whi ecf0: 63 68 20 61 72 65 0a 23 20 68 69 64 64 65 6e 20 ch are.# hidden ed00: 77 68 65 6e 20 74 68 65 20 6c 69 62 72 61 72 79 when the library ed10: 20 69 73 20 62 75 69 6c 74 20 76 69 61 20 74 68 is built via th ed20: 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e e amalgamation). ed30: 0a 23 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 .#.TESTFIXTURE_F ed40: 4c 41 47 53 20 3d 20 2d 44 54 43 4c 53 48 3d 31 LAGS = -DTCLSH=1 ed50: 20 2d 44 53 51 4c 49 54 45 5f 54 45 53 54 3d 31 -DSQLITE_TEST=1 ed60: 20 2d 44 53 51 4c 49 54 45 5f 43 52 41 53 48 5f -DSQLITE_CRASH_ ed70: 54 45 53 54 3d 31 0a 54 45 53 54 46 49 58 54 55 TEST=1.TESTFIXTU ed80: 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 RE_FLAGS =$(TES
ed90: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20  TFIXTURE_FLAGS)
eda0: 2d 44 53 51 4c 49 54 45 5f 53 45 52 56 45 52 3d  -DSQLITE_SERVER=
edb0: 31 20 2d 44 53 51 4c 49 54 45 5f 50 52 49 56 41  1 -DSQLITE_PRIVA
edc0: 54 45 3d 22 22 0a 54 45 53 54 46 49 58 54 55 52  TE="".TESTFIXTUR
edd0: 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54  E_FLAGS = $(TEST ede0: 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d FIXTURE_FLAGS) - edf0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 24 28 4e DSQLITE_CORE$(N
ee00: 4f 5f 57 41 52 4e 29 0a 54 45 53 54 46 49 58 54  O_WARN).TESTFIXT
ee10: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45  URE_FLAGS = $(TE ee20: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 STFIXTURE_FLAGS) ee30: 20 2d 44 53 51 4c 49 54 45 5f 53 45 52 49 45 53 -DSQLITE_SERIES ee40: 5f 43 4f 4e 53 54 52 41 49 4e 54 5f 56 45 52 49 _CONSTRAINT_VERI ee50: 46 59 3d 31 0a 54 45 53 54 46 49 58 54 55 52 45 FY=1.TESTFIXTURE ee60: 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 _FLAGS =$(TESTF
ee70: 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  IXTURE_FLAGS) -D
ee80: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 50  SQLITE_DEFAULT_P
ee90: 41 47 45 5f 53 49 5a 45 3d 31 30 32 34 0a 54 45  AGE_SIZE=1024.TE
eea0: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20  STFIXTURE_FLAGS
eeb0: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  = $(TESTFIXTURE_ eec0: 46 4c 41 47 53 29 20 24 28 54 45 53 54 5f 43 43 FLAGS)$(TEST_CC
eed0: 4f 4e 56 5f 4f 50 54 53 29 0a 0a 54 45 53 54 46  ONV_OPTS)..TESTF
eee0: 49 58 54 55 52 45 5f 53 52 43 30 20 3d 20 24 28  IXTURE_SRC0 = $( eef0: 54 45 53 54 45 58 54 29 20 24 28 54 45 53 54 53 TESTEXT)$(TESTS
ef00: 52 43 32 29 0a 54 45 53 54 46 49 58 54 55 52 45  RC2).TESTFIXTURE
ef10: 5f 53 52 43 31 20 3d 20 24 28 54 45 53 54 45 58  _SRC1 = $(TESTEX ef20: 54 29 20 24 28 53 51 4c 49 54 45 33 43 29 0a 21 T)$(SQLITE3C).!
ef30: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM ef40: 41 54 49 4f 4e 29 3d 3d 30 0a 54 45 53 54 46 49 ATION)==0.TESTFI ef50: 58 54 55 52 45 5f 53 52 43 20 3d 20 24 28 54 45 XTURE_SRC =$(TE
ef60: 53 54 53 52 43 29 20 24 28 54 4f 50 29 5c 73 72  STSRC) $(TOP)\sr ef70: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 c\tclsqlite.c$(
ef80: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 30  TESTFIXTURE_SRC0
ef90: 29 0a 21 45 4c 53 45 0a 54 45 53 54 46 49 58 54  ).!ELSE.TESTFIXT
efa0: 55 52 45 5f 53 52 43 20 3d 20 24 28 54 45 53 54  URE_SRC = $(TEST efb0: 53 52 43 29 20 24 28 54 4f 50 29 5c 73 72 63 5c SRC)$(TOP)\src\
efc0: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 45  tclsqlite.c $(TE efd0: 53 54 46 49 58 54 55 52 45 5f 53 52 43 31 29 0a STFIXTURE_SRC1). efe0: 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 55 53 !ENDIF..!IF$(US
eff0: 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c  E_STDCALL)!=0 ||
f000: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 f010: 0a 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 .sqlite_tclDecls f020: 2e 68 3a 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 .h:..echo #ifnde f030: 66 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 f SQLITE_TCLAPI f040: 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 >$(SQLITETCLDEC
f050: 4c 53 48 29 0a 09 65 63 68 6f 20 23 20 20 64 65  LSH)..echo #  de
f060: 66 69 6e 65 20 53 51 4c 49 54 45 5f 54 43 4c 41  fine SQLITE_TCLA
f070: 50 49 20 3e 3e 20 24 28 53 51 4c 49 54 45 54 43  PI >> $(SQLITETC f080: 4c 44 45 43 4c 53 48 29 0a 09 65 63 68 6f 20 23 LDECLSH)..echo # f090: 65 6e 64 69 66 20 3e 3e 20 24 28 53 51 4c 49 54 endif >>$(SQLIT
f0a0: 45 54 43 4c 44 45 43 4c 53 48 29 0a 09 74 79 70  ETCLDECLSH)..typ
f0b0: 65 20 22 24 28 54 43 4c 49 4e 43 44 49 52 29 5c  e "$(TCLINCDIR)\ f0c0: 74 63 6c 44 65 63 6c 73 2e 68 22 20 5c 0a 09 09 tclDecls.h" \... f0d0: 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 |$(TCLSH_CMD) $f0e0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 (TOP)\tool\repla f0f0: 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5e ce.tcl regsub "^ f100: 28 45 58 54 45 52 4e 28 3f 3a 20 43 4f 4e 53 54 (EXTERN(?: CONST f110: 5c 64 2b 3f 29 3f 5c 73 2b 3f 5b 5e 5c 28 5d 2a \d+?)?\s+?[^\(]* f120: 3f 5c 73 2b 3f 29 54 63 6c 5f 22 20 22 5c 31 20 ?\s+?)Tcl_" "\1 f130: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 SQLITE_TCLAPI Tc f140: 6c 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 l_" \...|$(TCLS
f150: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f  H_CMD) $(TOP)\to f160: 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 ol\replace.tcl r f170: 65 67 73 75 62 20 22 5e 28 45 58 54 45 52 4e 5c egsub "^(EXTERN\ f180: 73 2b 3f 28 3f 3a 76 6f 69 64 7c 56 4f 49 44 29 s+?(?:void|VOID) f190: 5c 73 2b 3f 29 54 63 6c 46 72 65 65 4f 62 6a 22 \s+?)TclFreeObj" f1a0: 20 22 5c 31 20 53 51 4c 49 54 45 5f 54 43 4c 41 "\1 SQLITE_TCLA f1b0: 50 49 20 54 63 6c 46 72 65 65 4f 62 6a 22 20 5c PI TclFreeObj" \ f1c0: 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
f1d0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re f1e0: 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 place.tcl regsub f1f0: 20 22 5c 28 5c 2a 74 63 6c 5f 22 20 22 28 53 51 "\(\*tcl_" "(SQ f200: 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 74 63 6c LITE_TCLAPI *tcl f210: 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 _" \...|$(TCLSH
f220: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too f230: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re f240: 67 73 75 62 20 22 5c 28 5c 2a 74 63 6c 46 72 65 gsub "\(\*tclFre f250: 65 4f 62 6a 22 20 22 28 53 51 4c 49 54 45 5f 54 eObj" "(SQLITE_T f260: 43 4c 41 50 49 20 2a 74 63 6c 46 72 65 65 4f 62 CLAPI *tclFreeOb f270: 6a 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 j" \...|$(TCLSH
f280: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too f290: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re f2a0: 67 73 75 62 20 22 5c 28 5c 2a 22 20 22 28 53 51 gsub "\(\*" "(SQ f2b0: 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 22 20 3e LITE_TCLAPI *" > f2c0: 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 >$(SQLITETCLDEC
f2d0: 4c 53 48 29 0a 0a 73 71 6c 69 74 65 5f 74 63 6c  LSH)..sqlite_tcl
f2e0: 2e 68 3a 0a 09 74 79 70 65 20 22 24 28 54 43 4c  .h:..type "$(TCL f2f0: 49 4e 43 44 49 52 29 5c 74 63 6c 2e 68 22 20 7c INCDIR)\tcl.h" | f300: 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28$(TCLSH_CMD) $( f310: 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 TOP)\tool\replac f320: 65 2e 74 63 6c 20 65 78 61 63 74 20 74 63 6c 44 e.tcl exact tclD f330: 65 63 6c 73 2e 68 20 73 71 6c 69 74 65 5f 74 63 ecls.h sqlite_tc f340: 6c 44 65 63 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 lDecls.h \...|$
f350: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO f360: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. f370: 74 63 6c 20 72 65 67 73 75 62 20 22 74 79 70 65 tcl regsub "type f380: 64 65 66 20 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 def (.*?)\(Tcl_" f390: 20 22 74 79 70 65 64 65 66 20 5c 31 20 28 53 51 "typedef \1 (SQ f3a0: 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f LITE_TCLAPI Tcl_ f3b0: 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f " \...|$(TCLSH_
f3c0: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool f3d0: 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 \replace.tcl exa f3e0: 63 74 20 22 76 6f 69 64 20 28 2a 66 72 65 65 50 ct "void (*freeP f3f0: 72 6f 63 29 22 20 22 76 6f 69 64 20 28 53 51 4c roc)" "void (SQL f400: 49 54 45 5f 54 43 4c 41 50 49 20 2a 66 72 65 65 ITE_TCLAPI *free f410: 50 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54 Proc)" \...|$(T
f420: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) f430: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 \tool\replace.tc f440: 6c 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73 l exact "Tcl_Has f450: 68 45 6e 74 72 79 20 2a 28 2a 66 69 6e 64 50 72 hEntry *(*findPr f460: 6f 63 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e oc)" "Tcl_HashEn f470: 74 72 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c try *(SQLITE_TCL f480: 41 50 49 20 2a 66 69 6e 64 50 72 6f 63 29 22 20 API *findProc)" f490: 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d \...|$(TCLSH_CM
f4a0: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72  D) $(TOP)\tool\r f4b0: 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 eplace.tcl exact f4c0: 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 "Tcl_HashEntry f4d0: 2a 28 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20 *(*createProc)" f4e0: 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a "Tcl_HashEntry * f4f0: 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a (SQLITE_TCLAPI * f500: 63 72 65 61 74 65 50 72 6f 63 29 22 20 3e 3e 20 createProc)" >> f510: 24 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45$(SQLITETCLH).!E
f520: 4e 44 49 46 0a 0a 74 65 73 74 66 69 78 74 75 72  NDIF..testfixtur
f530: 65 2e 65 78 65 3a 09 24 28 54 45 53 54 46 49 58  e.exe:.$(TESTFIX f540: 54 55 52 45 5f 53 52 43 29 20 24 28 53 51 4c 49 TURE_SRC)$(SQLI
f550: 54 45 33 48 29 20 24 28 4c 49 42 52 45 53 4f 42  TE3H) $(LIBRESOB f560: 4a 53 29 20 24 28 48 44 52 29 20 24 28 53 51 4c JS)$(HDR) $(SQL f570: 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 ITE_TCL_DEP)..$(
f580: 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45  LTLINK) -DSQLITE
f590: 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53  _NO_SYNC=1 $(TES f5a0: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) f5b0: 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69 \...-DBUILD_sqli f5c0: 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 te -I$(TCLINCDIR
f5d0: 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54  ) \...$(TESTFIXT f5e0: 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 URE_SRC) \.../li f5f0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 nk$(LDFLAGS) $( f600: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 LTLINKOPTS)$(LT
f610: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52  LIBPATHS) $(LIBR f620: 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 ESOBJS)$(LTLIBS
f630: 29 20 24 28 54 4c 49 42 53 29 0a 0a 65 78 74 65  ) $(TLIBS)..exte f640: 6e 73 69 6f 6e 74 65 73 74 3a 09 74 65 73 74 66 nsiontest:.testf f650: 69 78 74 75 72 65 2e 65 78 65 20 74 65 73 74 6c ixture.exe testl f660: 6f 61 64 65 78 74 2e 64 6c 6c 0a 09 40 73 65 74 oadext.dll..@set f670: 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 PATH=$(LIBTCLPA
f680: 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74  TH);$(PATH)...\t f690: 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 estfixture.exe$
f6a0: 28 54 4f 50 29 5c 74 65 73 74 5c 6c 6f 61 64 65  (TOP)\test\loade
f6b0: 78 74 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50  xt.test $(TESTOP f6c0: 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74 3a 09 24 TS)..fulltest:.$
f6d0: 28 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a 7a  (TESTPROGS) fuzz
f6e0: 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d  test..@set PATH=
f6f0: 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28  $(LIBTCLPATH);$(
f700: 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78  PATH)...\testfix
f710: 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\ f720: 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 24 28 test\all.test$(
f730: 54 45 53 54 4f 50 54 53 29 0a 0a 73 6f 61 6b 74  TESTOPTS)..soakt
f740: 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53  est:.$(TESTPROGS f750: 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c )..@set PATH=$(L
f760: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54  IBTCLPATH);$(PAT f770: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 H)...\testfixtur f780: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
f790: 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f 61 6b  t\all.test -soak
f7a0: 3d 31 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  =1 $(TESTOPTS).. f7b0: 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a 09 24 28 fulltestonly:.$(
f7c0: 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a 7a 74  TESTPROGS) fuzzt
f7d0: 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24  est..@set PATH=$f7e0: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 (LIBTCLPATH);$(P
f7f0: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74  ATH)...\testfixt
f800: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  ure.exe $(TOP)\t f810: 65 73 74 5c 66 75 6c 6c 2e 74 65 73 74 0a 0a 71 est\full.test..q f820: 75 65 72 79 70 6c 61 6e 74 65 73 74 3a 09 74 65 ueryplantest:.te f830: 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 73 68 stfixture.exe sh f840: 65 6c 6c 0a 09 40 73 65 74 20 50 41 54 48 3d 24 ell..@set PATH=$
f850: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50  (LIBTCLPATH);$(P f860: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 ATH)...\testfixt f870: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 ure.exe$(TOP)\t
f880: 65 73 74 5c 70 65 72 6d 75 74 61 74 69 6f 6e 73  est\permutations
f890: 2e 74 65 73 74 20 71 75 65 72 79 70 6c 61 6e 6e  .test queryplann
f8a0: 65 72 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  er $(TESTOPTS).. f8b0: 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a 7a 63 68 fuzztest:.fuzzch f8c0: 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 eck.exe...\fuzzc f8d0: 68 65 63 6b 2e 65 78 65 20 24 28 46 55 5a 5a 44 heck.exe$(FUZZD
f8e0: 41 54 41 29 0a 0a 66 61 73 74 66 75 7a 7a 74 65  ATA)..fastfuzzte
f8f0: 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e 65 78  st:.fuzzcheck.ex
f900: 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b 2e 65  e...\fuzzcheck.e
f910: 78 65 20 2d 2d 6c 69 6d 69 74 2d 6d 65 6d 20 31  xe --limit-mem 1
f920: 30 30 4d 20 24 28 46 55 5a 5a 44 41 54 41 29 0a  00M $(FUZZDATA). f930: 0a 23 20 4d 69 6e 69 6d 61 6c 20 74 65 73 74 69 .# Minimal testi f940: 6e 67 20 74 68 61 74 20 72 75 6e 73 20 69 6e 20 ng that runs in f950: 6c 65 73 73 20 74 68 61 6e 20 33 20 6d 69 6e 75 less than 3 minu f960: 74 65 73 20 28 6f 6e 20 61 20 66 61 73 74 20 6d tes (on a fast m f970: 61 63 68 69 6e 65 29 0a 23 0a 71 75 69 63 6b 74 achine).#.quickt f980: 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 72 65 est:.testfixture f990: 2e 65 78 65 20 73 6f 75 72 63 65 74 65 73 74 0a .exe sourcetest. f9a0: 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 .@set PATH=$(LIB
f9b0: 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29  TCLPATH);$(PATH) f9c0: 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e ...\testfixture. f9d0: 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c exe$(TOP)\test\
f9e0: 65 78 74 72 61 71 75 69 63 6b 2e 74 65 73 74 20  extraquick.test
f9f0: 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 23 20 54  $(TESTOPTS)..# T fa00: 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d 6d 6f his is the commo fa10: 6e 20 63 61 73 65 2e 20 20 52 75 6e 20 6d 61 6e n case. Run man fa20: 79 20 74 65 73 74 73 20 74 68 61 74 20 64 6f 20 y tests that do fa30: 6e 6f 74 20 74 61 6b 65 20 74 6f 6f 20 6c 6f 6e not take too lon fa40: 67 2c 0a 23 20 69 6e 63 6c 75 64 69 6e 67 20 66 g,.# including f fa50: 75 7a 7a 63 68 65 63 6b 2c 20 73 71 6c 69 74 65 uzzcheck, sqlite fa60: 33 5f 61 6e 61 6c 79 7a 65 72 2c 20 61 6e 64 20 3_analyzer, and fa70: 73 71 6c 64 69 66 66 20 74 65 73 74 73 2e 0a 23 sqldiff tests..# fa80: 0a 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f .test:.$(TESTPRO
fa90: 47 53 29 20 73 6f 75 72 63 65 74 65 73 74 20 66  GS) sourcetest f
faa0: 61 73 74 66 75 7a 7a 74 65 73 74 0a 09 40 73 65  astfuzztest..@se
fab0: 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50  t PATH=$(LIBTCLP fac0: 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c ATH);$(PATH)...\
fad0: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
fae0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 76 65 72 79  $(TOP)\test\very faf0: 71 75 69 63 6b 2e 74 65 73 74 20 24 28 54 45 53 quick.test$(TES
fb00: 54 4f 50 54 53 29 0a 0a 73 6d 6f 6b 65 74 65 73  TOPTS)..smoketes
fb10: 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53 29 0a  t:.$(TESTPROGS). fb20: 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 .@set PATH=$(LIB
fb30: 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29  TCLPATH);$(PATH) fb40: 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e ...\testfixture. fb50: 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c exe$(TOP)\test\
fb60: 6d 61 69 6e 2e 74 65 73 74 20 24 28 54 45 53 54  main.test $(TEST fb70: 4f 50 54 53 29 0a 0a 73 71 6c 69 74 65 33 5f 61 OPTS)..sqlite3_a fb80: 6e 61 6c 79 7a 65 72 2e 63 3a 09 24 28 53 51 4c nalyzer.c:.$(SQL
fb90: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 fba0: 48 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 H)$(TOP)\src\tc
fbb0: 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 4f 50 29  lsqlite.c $(TOP) fbc0: 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61 6c 2e \tool\spaceanal. fbd0: 74 63 6c 20 24 28 53 51 4c 49 54 45 5f 54 43 4c tcl$(SQLITE_TCL
fbe0: 5f 44 45 50 29 0a 09 65 63 68 6f 20 23 64 65 66  _DEP)..echo #def
fbf0: 69 6e 65 20 54 43 4c 53 48 20 32 20 3e 20 24 40  ine TCLSH 2 > $@ fc00: 0a 09 65 63 68 6f 20 23 64 65 66 69 6e 65 20 53 ..echo #define S fc10: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 QLITE_ENABLE_DBS fc20: 54 41 54 5f 56 54 41 42 20 31 20 3e 3e 20 24 40 TAT_VTAB 1 >>$@
fc30: 0a 09 63 6f 70 79 20 24 40 20 2b 20 24 28 53 51  ..copy $@ +$(SQ
fc40: 4c 49 54 45 33 43 29 20 2b 20 24 28 54 4f 50 29  LITE3C) + $(TOP) fc50: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 \src\tclsqlite.c fc60: 20 24 40 0a 09 65 63 68 6f 20 73 74 61 74 69 63$@..echo static
fc70: 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 74 63 6c   const char *tcl
fc80: 73 68 5f 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69  sh_main_loop(voi
fc90: 64 29 7b 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20  d){ >> $@..echo fca0: 73 74 61 74 69 63 20 63 6f 6e 73 74 20 63 68 61 static const cha fcb0: 72 20 2a 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e r *zMainloop = > fcc0: 3e 20 24 40 0a 09 24 28 54 43 4c 53 48 5f 43 4d >$@..$(TCLSH_CM fcd0: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 74 D)$(TOP)\tool\t
fce0: 6f 73 74 72 2e 74 63 6c 20 24 28 54 4f 50 29 5c  ostr.tcl $(TOP)\ fcf0: 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 tool\spaceanal.t fd00: 63 6c 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 3b cl >>$@..echo ;
fd10: 20 72 65 74 75 72 6e 20 7a 4d 61 69 6e 6c 6f 6f   return zMainloo
fd20: 70 3b 20 7d 20 3e 3e 20 24 40 0a 0a 73 71 6c 69  p; } >> $@..sqli fd30: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 te3_analyzer.exe fd40: 3a 09 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a :.sqlite3_analyz fd50: 65 72 2e 63 20 24 28 4c 49 42 52 45 53 4f 42 4a er.c$(LIBRESOBJ
fd60: 53 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28  S)..$(LTLINK)$(
fd70: 4e 4f 5f 57 41 52 4e 29 20 2d 44 42 55 49 4c 44  NO_WARN) -DBUILD
fd80: 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49  _sqlite -I$(TCLI fd90: 4e 43 44 49 52 29 20 73 71 6c 69 74 65 33 5f 61 NCDIR) sqlite3_a fda0: 6e 61 6c 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c nalyzer.c \.../l fdb0: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $fdc0: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c (LTLINKOPTS)$(L
fdd0: 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42  TLIBPATHS) $(LIB fde0: 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 RESOBJS)$(LTLIB
fdf0: 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 64 62 64  S) $(TLIBS)..dbd fe00: 75 6d 70 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c ump.exe:.$(TOP)\
fe10: 65 78 74 5c 6d 69 73 63 5c 64 62 64 75 6d 70 2e  ext\misc\dbdump.
fe20: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28  c $(SQLITE3C)$(
fe30: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c  SQLITE3H)..$(LTL fe40: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 INK)$(NO_WARN)
fe50: 2d 44 44 42 44 55 4d 50 5f 53 54 41 4e 44 41 4c  -DDBDUMP_STANDAL
fe60: 4f 4e 45 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d  ONE $(TOP)\ext\m fe70: 69 73 63 5c 64 62 64 75 6d 70 2e 63 20 24 28 53 isc\dbdump.c$(S
fe80: 51 4c 49 54 45 33 43 29 20 5c 0a 09 09 2f 6c 69  QLITE3C) \.../li
fe90: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
fea0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54  LTLINKOPTS) $(LT feb0: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 LIBPATHS)$(LIBR
fec0: 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53  ESOBJS) $(LTLIBS fed0: 29 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c )..testloadext.l fee0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 o:.$(TOP)\src\te
fef0: 73 74 5f 6c 6f 61 64 65 78 74 2e 63 0a 09 24 28  st_loadext.c..$( ff00: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f LTCOMPILE)$(NO_
ff10: 57 41 52 4e 29 20 2d 63 20 24 28 54 4f 50 29 5c  WARN) -c $(TOP)\ ff20: 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 src\test_loadext ff30: 2e 63 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e .c..testloadext. ff40: 64 6c 6c 3a 09 74 65 73 74 6c 6f 61 64 65 78 74 dll:.testloadext ff50: 2e 6c 6f 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 .lo..$(LD) $(LDF ff60: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 LAGS)$(LTLINKOP
ff70: 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53  TS) $(LTLIBPATHS ff80: 29 20 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 74 ) /DLL /OUT:$@ t
ff90: 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a 73  estloadext.lo..s
ffa0: 68 6f 77 64 62 2e 65 78 65 3a 09 24 28 54 4f 50  howdb.exe:.$(TOP ffb0: 29 5c 74 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63 20 )\tool\showdb.c ffc0: 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51$(SQLITE3C) $(SQ ffd0: 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e LITE3H)..$(LTLIN
ffe0: 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  K) $(NO_WARN) -D fff0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 SQLITE_THREADSAF 10000 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 E=0 -DSQLITE_OMI 10010 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e T_LOAD_EXTENSION 10020 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c \...$(TOP)\tool
10030 5c 73 68 6f 77 64 62 2e 63 20 24 28 53 51 4c 49  \showdb.c $(SQLI 10040 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 TE3C) /link$(LD
10050 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 10060 50 54 53 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e PTS)..showstat4. 10070 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
10080 5c 73 68 6f 77 73 74 61 74 34 2e 63 20 24 28 53  \showstat4.c $(S 10090 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
100a0 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 100b0 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
100c0 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
100d0 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
100e0 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a  OAD_EXTENSION \.
100f0 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  ..$(TOP)\tool\sh 10100 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49 owstat4.c$(SQLI
10110 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD 10120 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
10130 50 54 53 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e 61  PTS)..showjourna
10140 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f  l.exe:.$(TOP)\to 10150 6f 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 ol\showjournal.c 10160 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S 10170 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
10180 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) - 10190 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 DSQLITE_THREADSA 101a0 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d FE=0 -DSQLITE_OM 101b0 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f IT_LOAD_EXTENSIO 101c0 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f N \...$(TOP)\too
101d0 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20  l\showjournal.c
101e0 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin 101f0 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c k$(LDFLAGS) $(L 10200 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 TLINKOPTS)..show 10210 77 61 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c wal.exe:.$(TOP)\
10220 74 6f 6f 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 24  tool\showwal.c $10230 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c (SQLITE3C)$(SQL
10240 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK 10250 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 )$(NO_WARN) -DS
10260 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45  QLITE_THREADSAFE
10270 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54  =0 -DSQLITE_OMIT
10280 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20  _LOAD_EXTENSION
10290 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  \...$(TOP)\tool\ 102a0 73 68 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 showwal.c$(SQLI
102b0 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD 102c0 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
102d0 50 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 74 2e  PTS)..changeset.
102e0 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  exe:.$(TOP)\ext\ 102f0 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 session\changese 10300 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 t.c$(SQLITE3C)
10310 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c  $(SQLITE3H)..$(L
10320 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN 10330 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 ) -DSQLITE_THREA 10340 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 DSAFE=0 -DSQLITE 10350 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e _OMIT_LOAD_EXTEN 10360 53 49 4f 4e 20 5c 0a 09 09 2d 44 53 51 4c 49 54 SION \...-DSQLIT 10370 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e E_ENABLE_SESSION 10380 3d 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 =1 -DSQLITE_ENAB 10390 4c 45 5f 50 52 45 55 50 44 41 54 45 5f 48 4f 4f LE_PREUPDATE_HOO 103a0 4b 3d 31 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 K=1 \...$(TOP)\e
103b0 78 74 5c 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67  xt\session\chang
103c0 65 73 65 74 2e 63 20 24 28 53 51 4c 49 54 45 33  eset.c $(SQLITE3 103d0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
103e0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 103f0 29 0a 0a 66 74 73 33 76 69 65 77 2e 65 78 65 3a )..fts3view.exe: 10400 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 .$(TOP)\ext\fts3
10410 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77 2e 63  \tool\fts3view.c
10420 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
10430 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI 10440 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d NK)$(NO_WARN) -
10450 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
10460 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
10470 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
10480 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74  N \...$(TOP)\ext 10490 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76 \fts3\tool\fts3v 104a0 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33 43 iew.c$(SQLITE3C
104b0 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 104c0 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
104d0 0a 0a 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e  ..rollback-test.
104e0 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c  exe:.$(TOP)\tool 104f0 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63 \rollback-test.c 10500 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S 10510 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
10520 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) - 10530 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 DSQLITE_THREADSA 10540 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d FE=0 -DSQLITE_OM 10550 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f IT_LOAD_EXTENSIO 10560 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f N \...$(TOP)\too
10570 6c 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e  l\rollback-test.
10580 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c  c $(SQLITE3C) /l 10590 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $105a0 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4c 6f (LTLINKOPTS)..Lo 105b0 67 45 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 29 gEst.exe:.$(TOP)
105c0 5c 74 6f 6f 6c 5c 6c 6f 67 65 73 74 2e 63 20 24  \tool\logest.c $105d0 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
105e0 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) 105f0 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67$(TOP)\tool\Log
10600 45 73 74 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44  Est.c /link $(LD 10610 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
10620 50 54 53 29 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e  PTS)..wordcount.
10630 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74  exe:.$(TOP)\test 10640 5c 77 6f 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 \wordcount.c$(S
10650 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 10660 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
10670 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL 10680 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 ITE_THREADSAFE=0 10690 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c -DSQLITE_OMIT_L 106a0 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a OAD_EXTENSION \. 106b0 09 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f ..$(TOP)\test\wo
106c0 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49  rdcount.c $(SQLI 106d0 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 TE3C) /link$(LD
106e0 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 106f0 50 54 53 29 0a 0a 73 70 65 65 64 74 65 73 74 31 PTS)..speedtest1 10700 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 .exe:.$(TOP)\tes
10710 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 20 24  t\speedtest1.c $10720 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c (SQLITE3C)$(SQL
10730 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK 10740 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 53 )$(NO_WARN) $(S 10750 54 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 T_COMPILE_OPTS) 10760 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f -DSQLITE_OMIT_LO 10770 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 AD_EXTENSION \.. 10780 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 70 65 .$(TOP)\test\spe
10790 65 64 74 65 73 74 31 2e 63 20 24 28 53 51 4c 49  edtest1.c $(SQLI 107a0 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 TE3C) /link$(LD
107b0 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 107c0 50 54 53 29 0a 0a 6b 76 74 65 73 74 2e 65 78 65 PTS)..kvtest.exe 107d0 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 6b 76 :.$(TOP)\test\kv
107e0 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33  test.c $(SQLITE3 107f0 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 C)$(SQLITE3H)..
10800 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
10810 41 52 4e 29 20 24 28 4b 56 5f 43 4f 4d 50 49 4c  ARN) $(KV_COMPIL 10820 45 5f 4f 50 54 53 29 20 5c 0a 09 09 24 28 54 4f E_OPTS) \...$(TO
10830 50 29 5c 74 65 73 74 5c 6b 76 74 65 73 74 2e 63  P)\test\kvtest.c
10840 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69   $(SQLITE3C) /li 10850 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 nk$(LDFLAGS) $( 10860 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 73 LTLINKOPTS)..dbs 10870 65 6c 66 74 65 73 74 2e 65 78 65 3a 09 24 28 54 elftest.exe:.$(T
10880 4f 50 29 5c 74 65 73 74 5c 64 62 73 65 6c 66 74  OP)\test\dbselft
10890 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43  est.c $(SQLITE3C 108a0 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 )$(SQLITE3H)..$108b0 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 (LTLINK)$(NO_WA
108c0 52 4e 29 20 24 28 44 42 53 45 4c 46 54 45 53 54  RN) $(DBSELFTEST 108d0 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
108e0 28 54 4f 50 29 5c 74 65 73 74 5c 64 62 73 65 6c  (TOP)\test\dbsel
108f0 66 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45  ftest.c $(SQLITE 10900 33 43 29 0a 0a 72 62 75 2e 65 78 65 3a 09 24 28 3C)..rbu.exe:.$(
10910 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 72 62 75  TOP)\ext\rbu\rbu
10920 2e 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62  .c $(TOP)\ext\rb 10930 75 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 20 24 u\sqlite3rbu.c$
10940 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL 10950 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
10960 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS 10970 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 42 55 QLITE_ENABLE_RBU 10980 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 5c \...$(TOP)\ext\
10990 72 62 75 5c 72 62 75 2e 63 20 24 28 53 51 4c 49  rbu\rbu.c $(SQLI 109a0 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 TE3C) /link$(LD
109b0 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f  FLAGS) $(LTLINKO 109c0 50 54 53 29 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a PTS)..moreclean: 109d0 09 63 6c 65 61 6e 0a 09 64 65 6c 20 2f 51 20 24 .clean..del /Q$
109e0 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL 109f0 49 54 45 33 48 29 20 32 3e 4e 55 4c 0a 23 20 3c ITE3H) 2>NUL.# < 10a00 3c 2f 6d 61 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a </mark>>..clean: 10a10 0a 09 64 65 6c 20 2f 51 20 2a 2e 65 78 70 20 2a ..del /Q *.exp * 10a20 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 .lo *.ilk *.lib 10a30 2a 2e 6f 62 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 *.obj *.ncb *.pd 10a40 62 20 2a 2e 73 64 66 20 2a 2e 73 75 6f 20 32 3e b *.sdf *.suo 2> 10a50 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 2a 2e 62 73 NUL..del /Q *.bs 10a60 63 20 2a 2e 64 65 66 20 2a 2e 63 6f 64 20 2a 2e c *.def *.cod *. 10a70 64 61 20 2a 2e 62 62 20 2a 2e 62 62 67 20 2a 2e da *.bb *.bbg *. 10a80 76 63 20 67 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 vc gmon.out 2>NU 10a90 4c 0a 09 64 65 6c 20 2f 51 20 24 28 53 51 4c 49 L..del /Q$(SQLI
10aa0 54 45 33 45 58 45 29 20 24 28 53 51 4c 49 54 45  TE3EXE) $(SQLITE 10ab0 33 44 4c 4c 29 20 52 65 70 6c 61 63 65 2e 65 78 3DLL) Replace.ex 10ac0 65 20 32 3e 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b e 2>NUL.# <<mark 10ad0 3e 3e 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 >>..del /Q sqlit 10ae0 65 33 2e 63 20 73 71 6c 69 74 65 33 2e 68 20 32 e3.c sqlite3.h 2 10af0 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6f 70 63 >NUL..del /Q opc 10b00 6f 64 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68 odes.c opcodes.h 10b10 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 2>NUL..del /Q l 10b20 65 6d 6f 6e 2e 2a 20 6c 65 6d 70 61 72 2e 63 20 emon.* lempar.c 10b30 70 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 parse.* 2>NUL..d 10b40 65 6c 20 2f 51 20 6d 6b 6b 65 79 77 6f 72 64 68 el /Q mkkeywordh 10b50 61 73 68 2e 2a 20 6b 65 79 77 6f 72 64 68 61 73 ash.* keywordhas 10b60 68 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f h.h 2>NUL..del / 10b70 51 20 6e 6f 74 61 73 68 61 72 65 64 6c 69 62 2e Q notasharedlib. 10b80 2a 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 * 2>NUL..-rmdir 10b90 2f 51 2f 53 20 2e 64 65 70 73 20 32 3e 4e 55 4c /Q/S .deps 2>NUL 10ba0 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 2e 6c ..-rmdir /Q/S .l 10bb0 69 62 73 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 ibs 2>NUL..-rmdi 10bc0 72 20 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 r /Q/S tsrc 2>NU 10bd0 4c 0a 09 64 65 6c 20 2f 51 20 2e 74 61 72 67 65 L..del /Q .targe 10be0 74 5f 73 6f 75 72 63 65 20 32 3e 4e 55 4c 0a 09 t_source 2>NUL.. 10bf0 64 65 6c 20 2f 51 20 74 63 6c 73 71 6c 69 74 65 del /Q tclsqlite 10c00 33 2e 65 78 65 20 24 28 53 51 4c 49 54 45 54 43 3.exe$(SQLITETC
10c10 4c 48 29 20 24 28 53 51 4c 49 54 45 54 43 4c 44  LH) \$(SQLITETCLD
10c20 45 43 4c 53 48 29 20 32 3e 4e 55 4c 0a 09 64 65  ECLSH) 2>NUL..de
10c30 6c 20 2f 51 20 74 65 73 74 6c 6f 61 64 65 78 74  l /Q testloadext
10c40 2e 64 6c 6c 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .dll 2>NUL..del
10c50 2f 51 20 74 65 73 74 66 69 78 74 75 72 65 2e 65  /Q testfixture.e
10c60 78 65 20 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c  xe test.db 2>NUL
10c70 0a 09 64 65 6c 20 2f 51 20 4c 6f 67 45 73 74 2e  ..del /Q LogEst.
10c80 65 78 65 20 66 74 73 33 76 69 65 77 2e 65 78 65  exe fts3view.exe
10c90 20 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65   rollback-test.e
10ca0 78 65 20 73 68 6f 77 64 62 2e 65 78 65 20 64 62  xe showdb.exe db
10cb0 64 75 6d 70 2e 65 78 65 20 32 3e 4e 55 4c 0a 09  dump.exe 2>NUL..
10cc0 64 65 6c 20 2f 51 20 63 68 61 6e 67 65 73 65 74  del /Q changeset
10cd0 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
10ce0 2f 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65  /Q showjournal.e
10cf0 78 65 20 73 68 6f 77 73 74 61 74 34 2e 65 78 65  xe showstat4.exe
10d00 20 73 68 6f 77 77 61 6c 2e 65 78 65 20 73 70 65   showwal.exe spe
10d10 65 64 74 65 73 74 31 2e 65 78 65 20 32 3e 4e 55  edtest1.exe 2>NU
10d20 4c 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74  L..del /Q mptest
10d30 65 72 2e 65 78 65 20 77 6f 72 64 63 6f 75 6e 74  er.exe wordcount
10d40 2e 65 78 65 20 72 62 75 2e 65 78 65 20 73 72 63  .exe rbu.exe src
10d50 63 6b 31 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  ck1.exe 2>NUL..d
10d60 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63 20  el /Q sqlite3.c
10d70 73 71 6c 69 74 65 33 2d 2a 2e 63 20 32 3e 4e 55  sqlite3-*.c 2>NU
10d80 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65  L..del /Q sqlite
10d90 33 72 63 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c  3rc.h 2>NUL..del
10da0 20 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69   /Q shell.c sqli
10db0 74 65 33 65 78 74 2e 68 20 73 71 6c 69 74 65 33  te3ext.h sqlite3
10dc0 73 65 73 73 69 6f 6e 2e 68 20 32 3e 4e 55 4c 0a  session.h 2>NUL.
10dd0 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 5f  .del /Q sqlite3_
10de0 61 6e 61 6c 79 7a 65 72 2e 65 78 65 20 73 71 6c  analyzer.exe sql
10df0 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20  ite3_analyzer.c
10e00 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71  2>NUL..del /Q sq
10e10 6c 69 74 65 2d 2a 2d 6f 75 74 70 75 74 2e 76 73  lite-*-output.vs
10e20 69 78 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  ix 2>NUL..del /Q
10e30 20 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65   fuzzershell.exe
10e40 20 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73   fuzzcheck.exe s
10e50 71 6c 64 69 66 66 2e 65 78 65 20 64 62 68 61 73  qldiff.exe dbhas
10e60 68 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  h.exe 2>NUL..del
10e70 20 2f 51 20 66 74 73 35 2e 2a 20 66 74 73 35 70   /Q fts5.* fts5p
10e80 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 23 20 3c  arse.* 2>NUL.# <
10e90 3c 2f 6d 61 72 6b 3e 3e 0a                       </mark>>.