/ Hex Artifact Content

## Artifact eefec7a26bf73bb04f2241058e23a3ec8a43f656:

• File Makefile.msc — part of check-in [cbe1de47] at 2016-07-28 19:28:35 on branch trunk — The 'sqlite3ext.h' content should be processed before being included in the amalgamation. (user: mistachkin size: 65608)

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 75 73 65  his non-0 to use
02a0: 20 22 73 74 64 63 61 6c 6c 22 20 63 61 6c 6c 69   "stdcall" calli
02b0: 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 66 6f  ng convention fo
02c0: 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  r the core libra
02d0: 72 79 0a 23 20 61 6e 64 20 73 68 65 6c 6c 20 65  ry.# and shell e
02e0: 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49 46  xecutable..#.!IF
02f0: 4e 44 45 46 20 55 53 45 5f 53 54 44 43 41 4c 4c  NDEF USE_STDCALL
0300: 0a 55 53 45 5f 53 54 44 43 41 4c 4c 20 3d 20 30  .USE_STDCALL = 0
0310: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0320: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 68 61 76  his non-0 to hav
0330: 65 20 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63  e the shell exec
0340: 75 74 61 62 6c 65 20 6c 69 6e 6b 20 61 67 61 69  utable link agai
0350: 6e 73 74 20 74 68 65 20 63 6f 72 65 20 64 79 6e  nst the core dyn
0360: 61 6d 69 63 0a 23 20 6c 69 6e 6b 20 6c 69 62 72  amic.# link libr
0370: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 44  ary..#.!IFNDEF D
0380: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 0a 44 59 4e  YNAMIC_SHELL.DYN
0390: 41 4d 49 43 5f 53 48 45 4c 4c 20 3d 20 30 0a 21  AMIC_SHELL = 0.!
03a0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
03b0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c  s non-0 to enabl
03c0: 65 20 65 78 74 72 61 20 63 6f 64 65 20 74 68 61  e extra code tha
03d0: 74 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64 65  t attempts to de
03e0: 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20 74  tect misuse of t
03f0: 68 65 0a 23 20 53 51 4c 69 74 65 20 41 50 49 2e  he.# SQLite API.
0400: 0a 23 0a 21 49 46 4e 44 45 46 20 41 50 49 5f 41  .#.!IFNDEF API_A
0410: 52 4d 4f 52 0a 41 50 49 5f 41 52 4d 4f 52 20 3d  RMOR.API_ARMOR =
0420: 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20   0.!ENDIF..# If
0430: 6e 65 63 65 73 73 61 72 79 2c 20 63 72 65 61 74  necessary, creat
0440: 65 20 61 20 6c 69 73 74 20 6f 66 20 68 61 72 6d  e a list of harm
0450: 6c 65 73 73 20 63 6f 6d 70 69 6c 65 72 20 77 61  less compiler wa
0460: 72 6e 69 6e 67 73 20 74 6f 20 64 69 73 61 62 6c  rnings to disabl
0470: 65 20 77 68 65 6e 0a 23 20 63 6f 6d 70 69 6c 69  e when.# compili
0480: 6e 67 20 74 68 65 20 76 61 72 69 6f 75 73 20 74  ng the various t
0490: 6f 6f 6c 73 2e 20 20 46 6f 72 20 74 68 65 20 53  ools.  For the S
04a0: 51 4c 69 74 65 20 73 6f 75 72 63 65 20 63 6f 64  QLite source cod
04b0: 65 20 69 74 73 65 6c 66 2c 20 77 61 72 6e 69 6e  e itself, warnin
04c0: 67 73 2c 0a 23 20 69 66 20 61 6e 79 2c 20 77 69  gs,.# if any, wi
04d0: 6c 6c 20 62 65 20 64 69 73 61 62 6c 65 64 20 66  ll be disabled f
04e0: 72 6f 6d 20 77 69 74 68 69 6e 20 69 74 2e 0a 23  rom within it..#
04f0: 0a 21 49 46 4e 44 45 46 20 4e 4f 5f 57 41 52 4e  .!IFNDEF NO_WARN
0500: 0a 21 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57  .!IF $(USE_FULLW 0510: 41 52 4e 29 21 3d 30 0a 4e 4f 5f 57 41 52 4e 20 ARN)!=0.NO_WARN 0520: 3d 20 2d 77 64 34 30 35 34 20 2d 77 64 34 30 35 = -wd4054 -wd405 0530: 35 20 2d 77 64 34 31 30 30 20 2d 77 64 34 31 32 5 -wd4100 -wd412 0540: 37 20 2d 77 64 34 31 33 30 20 2d 77 64 34 31 35 7 -wd4130 -wd415 0550: 32 20 2d 77 64 34 31 38 39 20 2d 77 64 34 32 30 2 -wd4189 -wd420 0560: 36 0a 4e 4f 5f 57 41 52 4e 20 3d 20 24 28 4e 4f 6.NO_WARN =$(NO
0570: 5f 57 41 52 4e 29 20 2d 77 64 34 32 31 30 20 2d  _WARN) -wd4210 -
0580: 77 64 34 32 33 32 20 2d 77 64 34 33 30 35 20 2d  wd4232 -wd4305 -
0590: 77 64 34 33 30 36 20 2d 77 64 34 37 30 32 20 2d  wd4306 -wd4702 -
05a0: 77 64 34 37 30 36 0a 21 45 4e 44 49 46 0a 21 45  wd4706.!ENDIF.!E
05b0: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
05c0: 20 6e 6f 6e 2d 30 20 74 6f 20 75 73 65 20 74 68   non-0 to use th
05d0: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths
05e0: 61 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 6f 6e  and other option
05f0: 73 20 6e 65 63 65 73 73 61 72 79 20 66 6f 72 0a  s necessary for.
0600: 23 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20  # Windows Phone
0610: 38 2e 31 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55  8.1..#.!IFNDEF U
0620: 53 45 5f 57 50 38 31 5f 4f 50 54 53 0a 55 53 45  SE_WP81_OPTS.USE
0630: 5f 57 50 38 31 5f 4f 50 54 53 20 3d 20 30 0a 21  _WP81_OPTS = 0.!
0640: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0650: 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 70 6c 69 74  s non-0 to split
0660: 20 74 68 65 20 53 51 4c 69 74 65 20 61 6d 61 6c   the SQLite amal
0670: 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 20 69 6e  gamation file in
0680: 74 6f 20 63 68 75 6e 6b 73 20 74 6f 0a 23 20 62  to chunks to.# b
0690: 65 20 75 73 65 64 20 66 6f 72 20 64 65 62 75 67  e used for debug
06a0: 67 69 6e 67 20 77 69 74 68 20 56 69 73 75 61 6c  ging with Visual
06b0: 20 53 74 75 64 69 6f 2e 0a 23 0a 21 49 46 4e 44   Studio..#.!IFND
06c0: 45 46 20 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d  EF SPLIT_AMALGAM
06d0: 41 54 49 4f 4e 0a 53 50 4c 49 54 5f 41 4d 41 4c  ATION.SPLIT_AMAL
06e0: 47 41 4d 41 54 49 4f 4e 20 3d 20 30 0a 21 45 4e  GAMATION = 0.!EN
06f0: 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  DIF..# <<mark>>.
0700: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0710: 20 74 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65   to use the Inte
0720: 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e  rnational Compon
0730: 65 6e 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65  ents for Unicode
0740: 20 28 49 43 55 29 2e 0a 23 0a 21 49 46 4e 44 45   (ICU)..#.!IFNDE
0750: 46 20 55 53 45 5f 49 43 55 0a 55 53 45 5f 49 43  F USE_ICU.USE_IC
0760: 55 20 3d 20 30 0a 21 45 4e 44 49 46 0a 23 20 3c  U = 0.!ENDIF.# <
0770: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53 65 74 20  </mark>>..# Set
0780: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79  this non-0 to dy
0790: 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74  namically link t
07a0: 6f 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69  o the MSVC runti
07b0: 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49  me library..#.!I
07c0: 46 4e 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c  FNDEF USE_CRT_DL
07d0: 4c 0a 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20  L.USE_CRT_DLL =
07e0: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
07f0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69  this non-0 to li
0800: 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54 34  nk to the RPCRT4
0810: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e   library..#.!IFN
0820: 44 45 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c  DEF USE_RPCRT4_L
0830: 49 42 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49  IB.USE_RPCRT4_LI
0840: 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  B = 0.!ENDIF..#
0850: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0860: 6f 20 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d  o generate assem
0870: 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67  bly code listing
0880: 73 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65  s for the source
0890: 20 63 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23   code.# files..#
08a0: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53  .!IFNDEF USE_LIS
08b0: 54 49 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e  TINGS.USE_LISTIN
08c0: 47 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  GS = 0.!ENDIF..#
08d0: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
08e0: 74 6f 20 61 74 74 65 6d 70 74 20 73 65 74 74 69  to attempt setti
08f0: 6e 67 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f  ng the native co
0900: 6d 70 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63  mpiler automatic
0910: 61 6c 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73  ally.# for cross
0920: 2d 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63  -compiling the c
0930: 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c  ommand line tool
0940: 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20  s needed during
0950: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a  the compilation.
0960: 23 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46  # process..#.!IF
0970: 4e 44 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43  NDEF XCOMPILE.XC
0980: 4f 4d 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49  OMPILE = 0.!ENDI
0990: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
09a0: 6e 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e  n-0 to use the n
09b0: 61 74 69 76 65 20 6c 69 62 72 61 72 69 65 73 20  ative libraries
09c0: 70 61 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d  paths for cross-
09d0: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20  compiling.# the
09e0: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f  command line too
09f0: 6c 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67  ls needed during
0a00: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
0a10: 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e   process..#.!IFN
0a20: 44 45 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c  DEF USE_NATIVE_L
0a30: 49 42 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49  IBPATHS.USE_NATI
0a40: 56 45 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a  VE_LIBPATHS = 0.
0a50: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
0a60: 69 73 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65  is 0 to skip the
0a70: 20 63 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65   compiling and e
0a80: 6d 62 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73  mbedding of vers
0a90: 69 6f 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23  ion resources..#
0aa0: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a  .!IFNDEF USE_RC.
0ab0: 55 53 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49  USE_RC = 1.!ENDI
0ac0: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0ad0: 6e 2d 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62  n-0 to compile b
0ae0: 69 6e 61 72 69 65 73 20 73 75 69 74 61 62 6c 65  inaries suitable
0af0: 20 66 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65   for the WinRT e
0b00: 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68  nvironment..# Th
0b10: 69 73 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20  is setting does
0b20: 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79  not apply to any
0b30: 20 62 69 6e 61 72 69 65 73 20 74 68 61 74 20 72   binaries that r
0b40: 65 71 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70  equire Tcl to op
0b50: 65 72 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79  erate.# properly
0b60: 20 28 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20   (i.e. the text
0b70: 66 69 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23  fixture, etc)..#
0b80: 0a 21 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e  .!IFNDEF FOR_WIN
0b90: 52 54 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30  RT.FOR_WINRT = 0
0ba0: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0bb0: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
0bc0: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
0bd0: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 55  itable for the U
0be0: 57 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a  WP environment..
0bf0: 23 20 54 68 69 73 20 73 65 74 74 69 6e 67 20 64  # This setting d
0c00: 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f  oes not apply to
0c10: 20 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74 68   any binaries th
0c20: 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 20 74  at require Tcl t
0c30: 6f 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f 70  o operate.# prop
0c40: 65 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20 74  erly (i.e. the t
0c50: 65 78 74 20 66 69 78 74 75 72 65 2c 20 65 74 63  ext fixture, etc
0c60: 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52  )..#.!IFNDEF FOR
0c70: 5f 55 57 50 0a 46 4f 52 5f 55 57 50 20 3d 20 30  _UWP.FOR_UWP = 0
0c80: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0c90: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
0ca0: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
0cb0: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57  itable for the W
0cc0: 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f  indows 10 platfo
0cd0: 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f  rm..#.!IFNDEF FO
0ce0: 52 5f 57 49 4e 31 30 0a 46 4f 52 5f 57 49 4e 31  R_WIN10.FOR_WIN1
0cf0: 30 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  0 = 0.!ENDIF..#
0d00: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74  <<mark>>.# Set t
0d10: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69  his non-0 to ski
0d20: 70 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20  p attempting to
0d30: 6c 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20  look for and/or
0d40: 6c 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63  link with the Tc
0d50: 6c 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72  l.# runtime libr
0d60: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ary..#.!IFNDEF N
0d70: 4f 5f 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30  O_TCL.NO_TCL = 0
0d80: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
0d90: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
0da0: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61  to non-0 to crea
0db0: 74 65 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e  te and use PDBs.
0dc0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 59 4d 42 4f  .#.!IFNDEF SYMBO
0dd0: 4c 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 21  LS.SYMBOLS = 1.!
0de0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0df0: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
0e00: 65 20 74 68 65 20 53 51 4c 69 74 65 20 64 65 62  e the SQLite deb
0e10: 75 67 67 69 6e 67 20 68 65 61 70 20 73 75 62 73  ugging heap subs
0e20: 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44 45 46  ystem..#.!IFNDEF
0e30: 20 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44 45 42   MEMDEBUG.MEMDEB
0e40: 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  UG = 0.!ENDIF..#
0e50: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0e60: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 57 69  -0 to use the Wi
0e70: 6e 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20  n32 native heap
0e80: 73 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46  subsystem..#.!IF
0e90: 4e 44 45 46 20 57 49 4e 33 32 48 45 41 50 0a 57  NDEF WIN32HEAP.W
0ea0: 49 4e 33 32 48 45 41 50 20 3d 20 30 0a 21 45 4e  IN32HEAP = 0.!EN
0eb0: 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20  DIF..# Set this
0ec0: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62  to non-0 to enab
0ed0: 6c 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61 63  le OSTRACE() mac
0ee0: 72 6f 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62  ros, which can b
0ef0: 65 20 75 73 65 66 75 6c 20 77 68 65 6e 0a 23 20  e useful when.#
0f00: 64 65 62 75 67 67 69 6e 67 2e 0a 23 0a 21 49 46  debugging..#.!IF
0f10: 4e 44 45 46 20 4f 53 54 52 41 43 45 0a 4f 53 54  NDEF OSTRACE.OST
0f20: 52 41 43 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a  RACE = 0.!ENDIF.
0f30: 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6f  .# Set this to o
0f40: 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77  ne of the follow
0f50: 69 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 65 6e  ing values to en
0f60: 61 62 6c 65 20 76 61 72 69 6f 75 73 20 64 65 62  able various deb
0f70: 75 67 67 69 6e 67 0a 23 20 66 65 61 74 75 72 65  ugging.# feature
0f80: 73 2e 20 20 45 61 63 68 20 6c 65 76 65 6c 20 69  s.  Each level i
0f90: 6e 63 6c 75 64 65 73 20 74 68 65 20 64 65 62 75  ncludes the debu
0fa0: 67 67 69 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72  gging options fr
0fb0: 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a  om the previous.
0fc0: 23 20 6c 65 76 65 6c 73 2e 20 20 43 75 72 72 65  # levels.  Curre
0fd0: 6e 74 6c 79 2c 20 74 68 65 20 72 65 63 6f 67 6e  ntly, the recogn
0fe0: 69 7a 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20  ized values for
0ff0: 44 45 42 55 47 20 61 72 65 3a 0a 23 0a 23 20 30  DEBUG are:.#.# 0
1000: 20 3d 3d 20 4e 44 45 42 55 47 3a 20 44 69 73 61   == NDEBUG: Disa
1010: 62 6c 65 73 20 61 73 73 65 72 74 28 29 20 61 6e  bles assert() an
1020: 64 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 20  d other runtime
1030: 64 69 61 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31  diagnostics..# 1
1040: 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c   == SQLITE_ENABL
1050: 45 5f 41 50 49 5f 41 52 4d 4f 52 3a 20 65 78 74  E_API_ARMOR: ext
1060: 72 61 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64  ra attempts to d
1070: 65 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20  etect misuse of
1080: 74 68 65 20 41 50 49 2e 0a 23 20 32 20 3d 3d 20  the API..# 2 ==
1090: 44 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47 20  Disables NDEBUG
10a0: 61 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a 61  and all optimiza
10b0: 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20 65  tions and then e
10c0: 6e 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20 33  nables PDBs..# 3
10d0: 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55 47   == SQLITE_DEBUG
10e0: 3a 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f 75  : Enables variou
10f0: 73 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d 65  s diagnostics me
1100: 73 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65 2e  ssages and code.
1110: 0a 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 57  .# 4 == SQLITE_W
1120: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49  IN32_MALLOC_VALI
1130: 44 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20 74  DATE: Validate t
1140: 68 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65 20  he Win32 native
1150: 68 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a 23  heap per call..#
1160: 20 35 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42   5 == SQLITE_DEB
1170: 55 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e 61  UG_OS_TRACE: Ena
1180: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
1190: 20 74 68 65 20 4f 53 54 52 41 43 45 28 29 20 6d   the OSTRACE() m
11a0: 61 63 72 6f 73 2e 0a 23 20 36 20 3d 3d 20 53 51  acros..# 6 == SQ
11b0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
11c0: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
11d0: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f 54  put from the IOT
11e0: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
11f0: 0a 21 49 46 4e 44 45 46 20 44 45 42 55 47 0a 44  .!IFNDEF DEBUG.D
1200: 45 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a  EBUG = 0.!ENDIF.
1210: 0a 23 20 45 6e 61 62 6c 65 20 75 73 65 20 6f 66  .# Enable use of
1220: 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 70 69   available compi
1230: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
1240: 73 3f 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68  s?  Normally, th
1250: 69 73 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 6e  is should be.# n
1260: 6f 6e 2d 7a 65 72 6f 2e 20 20 53 65 74 74 69 6e  on-zero.  Settin
1270: 67 20 74 68 69 73 20 74 6f 20 7a 65 72 6f 2c 20  g this to zero,
1280: 74 68 75 73 20 64 69 73 61 62 6c 69 6e 67 20 61  thus disabling a
1290: 6c 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  ll compiler opti
12a0: 6d 69 7a 61 74 69 6f 6e 73 2c 0a 23 20 63 61 6e  mizations,.# can
12b0: 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 74   be useful for t
12c0: 65 73 74 69 6e 67 2e 0a 23 0a 21 49 46 4e 44 45  esting..#.!IFNDE
12d0: 46 20 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 0a  F OPTIMIZATIONS.
12e0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 20 3d 20  OPTIMIZATIONS =
12f0: 32 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  2.!ENDIF..# Set
1300: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
1310: 20 65 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 20   enable support
1320: 66 6f 72 20 74 68 65 20 73 65 73 73 69 6f 6e 20  for the session
1330: 65 78 74 65 6e 73 69 6f 6e 2e 0a 23 0a 21 49 46  extension..#.!IF
1340: 4e 44 45 46 20 53 45 53 53 49 4f 4e 0a 53 45 53  NDEF SESSION.SES
1350: 53 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  SION = 0.!ENDIF.
1360: 0a 23 20 53 65 74 20 74 68 65 20 73 6f 75 72 63  .# Set the sourc
1370: 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f 20 62  e code file to b
1380: 65 20 75 73 65 64 20 62 79 20 65 78 65 63 75 74  e used by execut
1390: 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 61 72  ables and librar
13a0: 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 79 20  ies when.# they
13b0: 6e 65 65 64 20 74 68 65 20 61 6d 61 6c 67 61 6d  need the amalgam
13c0: 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46  ation..#.!IFNDEF
13d0: 20 53 51 4c 49 54 45 33 43 0a 21 49 46 20 24 28   SQLITE3C.!IF $( 13e0: 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 SPLIT_AMALGAMATI 13f0: 4f 4e 29 21 3d 30 0a 53 51 4c 49 54 45 33 43 20 ON)!=0.SQLITE3C 1400: 3d 20 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 0a = sqlite3-all.c. 1410: 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 43 20 3d !ELSE.SQLITE3C = 1420: 20 73 71 6c 69 74 65 33 2e 63 0a 21 45 4e 44 49 sqlite3.c.!ENDI 1430: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 F.!ENDIF..# Set 1440: 74 68 65 20 69 6e 63 6c 75 64 65 20 63 6f 64 65 the include code 1450: 20 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 file to be used 1460: 20 62 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 by executables 1470: 61 6e 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 and libraries wh 1480: 65 6e 0a 23 20 74 68 65 79 20 6e 65 65 64 20 53 en.# they need S 1490: 51 4c 69 74 65 2e 0a 23 0a 21 49 46 4e 44 45 46 QLite..#.!IFNDEF 14a0: 20 53 51 4c 49 54 45 33 48 0a 53 51 4c 49 54 45 SQLITE3H.SQLITE 14b0: 33 48 20 3d 20 73 71 6c 69 74 65 33 2e 68 0a 21 3H = sqlite3.h.! 14c0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 14d0: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 the name to use 14e0: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 for the SQLite 14f0: 64 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 dynamic link lib 1500: 72 61 72 79 20 28 44 4c 4c 29 2e 0a 23 0a 21 49 rary (DLL)..#.!I 1510: 46 4e 44 45 46 20 53 51 4c 49 54 45 33 44 4c 4c FNDEF SQLITE3DLL 1520: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 .!IF$(FOR_WIN10
1530: 29 21 3d 30 0a 53 51 4c 49 54 45 33 44 4c 4c 20  )!=0.SQLITE3DLL
1540: 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 64 6c 6c  = winsqlite3.dll
1550: 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 44 4c  .!ELSE.SQLITE3DL
1560: 4c 20 3d 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a  L = sqlite3.dll.
1570: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
1580: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d   This is the nam
1590: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65  e to use for the
15a0: 20 53 51 4c 69 74 65 20 69 6d 70 6f 72 74 20 6c   SQLite import l
15b0: 69 62 72 61 72 79 20 28 4c 49 42 29 2e 0a 23 0a  ibrary (LIB)..#.
15c0: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 4c  !IFNDEF SQLITE3L
15d0: 49 42 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  IB.!IF $(FOR_WIN 15e0: 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 33 4c 49 10)!=0.SQLITE3LI 15f0: 42 20 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 6c B = winsqlite3.l 1600: 69 62 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 ib.!ELSE.SQLITE3 1610: 4c 49 42 20 3d 20 73 71 6c 69 74 65 33 2e 6c 69 LIB = sqlite3.li 1620: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a b.!ENDIF.!ENDIF. 1630: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 6e .# This is the n 1640: 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 ame to use for t 1650: 68 65 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 20 he SQLite shell 1660: 65 78 65 63 75 74 61 62 6c 65 20 28 45 58 45 29 executable (EXE) 1670: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1680: 54 45 33 45 58 45 0a 21 49 46 20 24 28 46 4f 52 TE3EXE.!IF$(FOR
1690: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54  _WIN10)!=0.SQLIT
16a0: 45 33 45 58 45 20 3d 20 77 69 6e 73 71 6c 69 74  E3EXE = winsqlit
16b0: 65 33 73 68 65 6c 6c 2e 65 78 65 0a 21 45 4c 53  e3shell.exe.!ELS
16c0: 45 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20 73  E.SQLITE3EXE = s
16d0: 71 6c 69 74 65 33 2e 65 78 65 0a 21 45 4e 44 49  qlite3.exe.!ENDI
16e0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73  F.!ENDIF..# This
16f0: 20 69 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74   is the argument
1700: 20 75 73 65 64 20 74 6f 20 73 65 74 20 74 68 65   used to set the
1710: 20 70 72 6f 67 72 61 6d 20 64 61 74 61 62 61 73   program databas
1720: 65 20 28 50 44 42 29 20 66 69 6c 65 20 66 6f 72  e (PDB) file for
1730: 20 74 68 65 0a 23 20 53 51 4c 69 74 65 20 73 68   the.# SQLite sh
1740: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 28  ell executable (
1750: 45 58 45 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  EXE)..#.!IFNDEF
1760: 53 51 4c 49 54 45 33 45 58 45 50 44 42 0a 21 49  SQLITE3EXEPDB.!I
1770: 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  F $(FOR_WIN10)!= 1780: 30 0a 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 0.SQLITE3EXEPDB 1790: 3d 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 45 =.!ELSE.SQLITE3E 17a0: 58 45 50 44 42 20 3d 20 2f 70 64 62 3a 73 71 6c XEPDB = /pdb:sql 17b0: 69 74 65 33 73 68 2e 70 64 62 0a 21 45 4e 44 49 ite3sh.pdb.!ENDI 17c0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 F.!ENDIF..# Thes 17d0: 65 20 61 72 65 20 74 68 65 20 22 73 74 61 6e 64 e are the "stand 17e0: 61 72 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 ard" SQLite comp 17f0: 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 ilation options 1800: 75 73 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c used when compil 1810: 69 6e 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 ing for.# the Wi 1820: 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a ndows platform.. 1830: 23 0a 21 49 46 4e 44 45 46 20 4f 50 54 5f 46 45 #.!IFNDEF OPT_FE 1840: 41 54 55 52 45 5f 46 4c 41 47 53 0a 4f 50 54 5f ATURE_FLAGS.OPT_ 1850: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 FEATURE_FLAGS = 1860: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c$(OPT_FEATURE_FL
1870: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  AGS) -DSQLITE_EN
1880: 41 42 4c 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f  ABLE_FTS3=1.OPT_
1890: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20  FEATURE_FLAGS =
18a0: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL 18b0: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e AGS) -DSQLITE_EN 18c0: 41 42 4c 45 5f 52 54 52 45 45 3d 31 0a 4f 50 54 ABLE_RTREE=1.OPT 18d0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 18e0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46$(OPT_FEATURE_F
18f0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  LAGS) -DSQLITE_E
1900: 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54  NABLE_COLUMN_MET
1910: 41 44 41 54 41 3d 31 0a 21 45 4e 44 49 46 0a 0a  ADATA=1.!ENDIF..
1920: 23 20 53 68 6f 75 6c 64 20 74 68 65 20 73 65 73  # Should the ses
1930: 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f 6e 20 62  sion extension b
1940: 65 20 65 6e 61 62 6c 65 64 3f 20 20 49 66 20 73  e enabled?  If s
1950: 6f 2c 20 61 64 64 20 63 6f 6d 70 69 6c 61 74 69  o, add compilati
1960: 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23 20 74 6f 20  on options.# to
1970: 65 6e 61 62 6c 65 20 69 74 2e 0a 23 0a 21 49 46  enable it..#.!IF
1980: 20 24 28 53 45 53 53 49 4f 4e 29 21 3d 30 0a 4f   $(SESSION)!=0.O 1990: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 19a0: 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 =$(OPT_FEATURE
19b0: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45  _FLAGS) -DSQLITE
19c0: 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e 3d  _ENABLE_SESSION=
19d0: 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  1.OPT_FEATURE_FL
19e0: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54  AGS = $(OPT_FEAT 19f0: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 1a00: 49 54 45 5f 45 4e 41 42 4c 45 5f 50 52 45 55 50 ITE_ENABLE_PREUP 1a10: 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a 21 45 4e 44 DATE_HOOK=1.!END 1a20: 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 IF..# These are 1a30: 74 68 65 20 22 65 78 74 65 6e 64 65 64 22 20 53 the "extended" S 1a40: 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f QLite compilatio 1a50: 6e 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 77 n options used w 1a60: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 1a70: 72 0a 23 20 74 68 65 20 57 69 6e 64 6f 77 73 20 r.# the Windows 1a80: 31 30 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 10 platform..#.! 1a90: 49 46 4e 44 45 46 20 45 58 54 5f 46 45 41 54 55 IFNDEF EXT_FEATU 1aa0: 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 24 28 46 RE_FLAGS.!IF$(F
1ab0: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 45 58 54  OR_WIN10)!=0.EXT
1ac0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d  _FEATURE_FLAGS =
1ad0: 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46   $(EXT_FEATURE_F 1ae0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 LAGS) -DSQLITE_E 1af0: 4e 41 42 4c 45 5f 46 54 53 34 3d 31 0a 45 58 54 NABLE_FTS4=1.EXT 1b00: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 1b10: 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46$(EXT_FEATURE_F
1b20: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53  LAGS) -DSQLITE_S
1b30: 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43 3d 31 0a 45  YSTEM_MALLOC=1.E
1b40: 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  XT_FEATURE_FLAGS
1b50: 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 52 45   = $(EXT_FEATURE 1b60: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 _FLAGS) -DSQLITE 1b70: 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54 49 4d 45 3d _OMIT_LOCALTIME= 1b80: 31 0a 21 45 4c 53 45 0a 45 58 54 5f 46 45 41 54 1.!ELSE.EXT_FEAT 1b90: 55 52 45 5f 46 4c 41 47 53 20 3d 0a 21 45 4e 44 URE_FLAGS =.!END 1ba0: 49 46 0a 21 45 4e 44 49 46 0a 0a 23 23 23 23 23 IF.!ENDIF..##### 1bb0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bc0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bd0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1be0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bf0: 23 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 ##########.##### 1c00: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c10: 23 23 23 23 23 23 23 23 23 23 20 45 4e 44 20 4f ########## END O 1c20: 46 20 4f 50 54 49 4f 4e 53 20 23 23 23 23 23 23 F OPTIONS ###### 1c30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c40: 23 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 ##########.##### 1c50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c90: 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 57 68 ##########..# Wh 1ca0: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 1cb0: 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31 30 20 the Windows 10 1cc0: 70 6c 61 74 66 6f 72 6d 2c 20 74 68 65 20 50 4c platform, the PL 1cd0: 41 54 46 4f 52 4d 20 6d 61 63 72 6f 20 6d 75 73 ATFORM macro mus 1ce0: 74 20 62 65 20 73 65 74 0a 23 20 74 6f 20 61 6e t be set.# to an 1cf0: 20 61 70 70 72 6f 70 72 69 61 74 65 20 76 61 6c appropriate val 1d00: 75 65 20 28 65 2e 67 2e 20 78 38 36 2c 20 78 36 ue (e.g. x86, x6 1d10: 34 2c 20 61 72 6d 2c 20 61 72 6d 36 34 2c 20 65 4, arm, arm64, e 1d20: 74 63 29 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 tc)..#.!IF$(FOR
1d30: 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49 46 4e 44  _WIN10)!=0.!IFND
1d40: 45 46 20 50 4c 41 54 46 4f 52 4d 0a 21 45 52 52  EF PLATFORM.!ERR
1d50: 4f 52 20 55 73 69 6e 67 20 74 68 65 20 46 4f 52  OR Using the FOR
1d60: 5f 57 49 4e 31 30 20 6f 70 74 69 6f 6e 20 72 65  _WIN10 option re
1d70: 71 75 69 72 65 73 20 61 20 76 61 6c 75 65 20 66  quires a value f
1d80: 6f 72 20 50 4c 41 54 46 4f 52 4d 2e 0a 21 45 4e  or PLATFORM..!EN
1d90: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  DIF.!ENDIF..# Th
1da0: 69 73 20 61 73 73 75 6d 65 73 20 74 68 61 74 20  is assumes that
1db0: 4d 53 56 43 20 69 73 20 61 6c 77 61 79 73 20 69  MSVC is always i
1dc0: 6e 73 74 61 6c 6c 65 64 20 69 6e 20 33 32 2d 62  nstalled in 32-b
1dd0: 69 74 20 50 72 6f 67 72 61 6d 20 46 69 6c 65 73  it Program Files
1de0: 20 64 69 72 65 63 74 6f 72 79 0a 23 20 61 6e 64   directory.# and
1df0: 20 73 65 74 73 20 74 68 65 20 76 61 72 69 61 62   sets the variab
1e00: 6c 65 20 66 6f 72 20 75 73 65 20 69 6e 20 6c 6f  le for use in lo
1e10: 63 61 74 69 6e 67 20 6f 74 68 65 72 20 33 32 2d  cating other 32-
1e20: 62 69 74 20 69 6e 73 74 61 6c 6c 73 20 61 63 63  bit installs acc
1e30: 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a 50 52 4f 47  ordingly..#.PROG
1e40: 52 41 4d 46 49 4c 45 53 5f 58 38 36 20 3d 20 24  RAMFILES_X86 = $1e50: 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29 5c 2e (VCINSTALLDIR)\. 1e60: 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d 46 49 4c 45 .\...PROGRAMFILE 1e70: 53 5f 58 38 36 20 3d 20 24 28 50 52 4f 47 52 41 S_X86 =$(PROGRA
1e80: 4d 46 49 4c 45 53 5f 58 38 36 3a 5c 5c 3d 5c 29  MFILES_X86:\\=\)
1e90: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68  ..# Check for th
1ea0: 65 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d  e predefined com
1eb0: 6d 61 6e 64 20 6d 61 63 72 6f 20 43 43 2e 20 20  mand macro CC.
1ec0: 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e  This should poin
1ed0: 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65  t to the compile
1ee0: 72 0a 23 20 62 69 6e 61 72 79 20 66 6f 72 20 74  r.# binary for t
1ef0: 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f  he target platfo
1f00: 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f  rm.  If it is no
1f10: 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c  t defined, simpl
1f20: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 0a 23  y define it to.#
1f30: 20 74 68 65 20 6c 65 67 61 63 79 20 64 65 66 61   the legacy defa
1f40: 75 6c 74 20 76 61 6c 75 65 20 27 63 6c 2e 65 78  ult value 'cl.ex
1f50: 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 43  e'..#.!IFNDEF CC
1f60: 0a 43 43 20 3d 20 63 6c 2e 65 78 65 0a 21 45 4e  .CC = cl.exe.!EN
1f70: 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  DIF..# Check for
1f80: 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64 20   the predefined
1f90: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 53  command macro CS
1fa0: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  C.  This should
1fb0: 70 6f 69 6e 74 20 74 6f 20 61 20 77 6f 72 6b 69  point to a worki
1fc0: 6e 67 0a 23 20 43 20 53 68 61 72 70 20 63 6f 6d  ng.# C Sharp com
1fd0: 70 69 6c 65 72 20 62 69 6e 61 72 79 2e 20 20 49  piler binary.  I
1fe0: 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69  f it is not defi
1ff0: 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69  ned, simply defi
2000: 6e 65 20 69 74 20 74 6f 20 74 68 65 0a 23 20 6c  ne it to the.# l
2010: 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 76 61  egacy default va
2020: 6c 75 65 20 27 63 73 63 2e 65 78 65 27 2e 0a 23  lue 'csc.exe'..#
2030: 0a 21 49 46 4e 44 45 46 20 43 53 43 0a 43 53 43  .!IFNDEF CSC.CSC
2040: 20 3d 20 63 73 63 2e 65 78 65 0a 21 45 4e 44 49   = csc.exe.!ENDI
2050: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74  F..# Check for t
2060: 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f  he command macro
2070: 20 4c 44 2e 20 20 54 68 69 73 20 73 68 6f 75 6c   LD.  This shoul
2080: 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c  d point to the l
2090: 69 6e 6b 65 72 20 62 69 6e 61 72 79 20 66 6f 72  inker binary for
20a0: 0a 23 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  .# the target pl
20b0: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
20c0: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
20d0: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20  imply define it
20e0: 74 6f 20 74 68 65 20 6c 65 67 61 63 79 0a 23 20  to the legacy.#
20f0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 6c  default value 'l
2100: 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e  ink.exe'..#.!IFN
2110: 44 45 46 20 4c 44 0a 4c 44 20 3d 20 6c 69 6e 6b  DEF LD.LD = link
2120: 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43  .exe.!ENDIF..# C
2130: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 65  heck for the pre
2140: 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20  defined command
2150: 6d 61 63 72 6f 20 52 43 2e 20 20 54 68 69 73 20  macro RC.  This
2160: 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20  should point to
2170: 74 68 65 20 72 65 73 6f 75 72 63 65 0a 23 20 63  the resource.# c
2180: 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 20 66  ompiler binary f
2190: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  or the target pl
21a0: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
21b0: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
21c0: 69 6d 70 6c 79 20 64 65 66 69 6e 65 0a 23 20 69  imply define.# i
21d0: 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 79 20  t to the legacy
21e0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 72  default value 'r
21f0: 63 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45  c.exe'..#.!IFNDE
2200: 46 20 52 43 0a 52 43 20 3d 20 72 63 2e 65 78 65  F RC.RC = rc.exe
2210: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b  .!ENDIF..# Check
2220: 20 66 6f 72 20 74 68 65 20 4d 53 56 43 20 72 75   for the MSVC ru
2230: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70 61  ntime library pa
2240: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
2250: 77 69 73 65 2c 20 74 68 69 73 20 76 61 6c 75 65  wise, this value
2260: 20 77 69 6c 6c 0a 23 20 64 65 66 61 75 6c 74 20   will.# default
2270: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72  to the 'lib' dir
2280: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74  ectory underneat
2290: 68 20 74 68 65 20 4d 53 56 43 20 69 6e 73 74 61  h the MSVC insta
22a0: 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72  llation director
22b0: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 52 54  y..#.!IFNDEF CRT
22c0: 4c 49 42 50 41 54 48 0a 43 52 54 4c 49 42 50 41  LIBPATH.CRTLIBPA
22d0: 54 48 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c  TH = $(VCINSTALL 22e0: 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a DIR)\lib.!ENDIF. 22f0: 0a 43 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 .CRTLIBPATH =$(
2300: 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29  CRTLIBPATH:\\=\)
2310: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68  ..# Check for th
2320: 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20  e command macro
2330: 4e 43 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c  NCC.  This shoul
2340: 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63  d point to the c
2350: 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 0a 23  ompiler binary.#
2360: 20 66 6f 72 20 74 68 65 20 70 6c 61 74 66 6f 72   for the platfor
2370: 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f  m the compilatio
2380: 6e 20 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b  n process is tak
2390: 69 6e 67 20 70 6c 61 63 65 20 6f 6e 2e 20 20 49  ing place on.  I
23a0: 66 20 69 74 20 69 73 20 6e 6f 74 0a 23 20 64 65  f it is not.# de
23b0: 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65  fined, simply de
23c0: 66 69 6e 65 20 69 74 20 74 6f 20 68 61 76 65 20  fine it to have
23d0: 74 68 65 20 73 61 6d 65 20 76 61 6c 75 65 20 61  the same value a
23e0: 73 20 74 68 65 20 43 43 20 6d 61 63 72 6f 2e 20  s the CC macro.
23f0: 20 57 68 65 6e 0a 23 20 63 72 6f 73 73 2d 63 6f   When.# cross-co
2400: 6d 70 69 6c 69 6e 67 2c 20 69 74 20 69 73 20 73  mpiling, it is s
2410: 75 67 67 65 73 74 65 64 20 74 68 61 74 20 74 68  uggested that th
2420: 69 73 20 6d 61 63 72 6f 20 62 65 20 6d 6f 64 69  is macro be modi
2430: 66 69 65 64 20 76 69 61 20 74 68 65 20 63 6f 6d  fied via the com
2440: 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 28 73 69 6e  mand.# line (sin
2450: 63 65 20 6e 6d 61 6b 65 20 69 74 73 65 6c 66 20  ce nmake itself
2460: 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76 69 64 65  does not provide
2470: 20 61 20 62 75 69 6c 74 2d 69 6e 20 6d 65 74 68   a built-in meth
2480: 6f 64 20 74 6f 20 67 75 65 73 73 20 69 74 29 2e  od to guess it).
2490: 0a 23 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20  .# For example,
24a0: 74 6f 20 75 73 65 20 74 68 65 20 78 38 36 20 63  to use the x86 c
24b0: 6f 6d 70 69 6c 65 72 20 77 68 65 6e 20 63 72 6f  ompiler when cro
24c0: 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72  ss-compiling for
24d0: 20 78 36 34 2c 20 61 20 63 6f 6d 6d 61 6e 64 0a   x64, a command.
24e0: 23 20 6c 69 6e 65 20 73 69 6d 69 6c 61 72 20 74  # line similar t
24f0: 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20  o the following
2500: 63 6f 75 6c 64 20 62 65 20 75 73 65 64 20 28 61  could be used (a
2510: 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 6e 65 29 3a  ll on one line):
2520: 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f  .#.#     nmake /
2530: 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73  f Makefile.msc s
2540: 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20  qlite3.dll.#
2550: 20 20 20 20 20 20 20 58 43 4f 4d 50 49 4c 45 3d         XCOMPILE=
2560: 31 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42  1 USE_NATIVE_LIB
2570: 50 41 54 48 53 3d 31 0a 23 0a 23 20 41 6c 74 65  PATHS=1.#.# Alte
2580: 72 6e 61 74 69 76 65 6c 79 2c 20 74 68 65 20 66  rnatively, the f
2590: 75 6c 6c 20 70 61 74 68 20 61 6e 64 20 66 69 6c  ull path and fil
25a0: 65 20 6e 61 6d 65 20 74 6f 20 74 68 65 20 63 6f  e name to the co
25b0: 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 20 66 6f  mpiler binary fo
25c0: 72 20 74 68 65 0a 23 20 70 6c 61 74 66 6f 72 6d  r the.# platform
25d0: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
25e0: 20 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b 69   process is taki
25f0: 6e 67 20 70 6c 61 63 65 20 6d 61 79 20 62 65 20  ng place may be
2600: 73 70 65 63 69 66 69 65 64 20 28 61 6c 6c 20 6f  specified (all o
2610: 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23  n.# one line):.#
2620: 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20  .#     nmake /f
2630: 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c  Makefile.msc sql
2640: 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20  ite3.dll.#
2650: 20 20 20 20 20 22 4e 43 43 3d 22 22 25 56 43 49       "NCC=""%VCI
2660: 4e 53 54 41 4c 4c 44 49 52 25 5c 62 69 6e 5c 63  NSTALLDIR%\bin\c
2670: 6c 2e 65 78 65 22 22 22 0a 23 20 20 20 20 20 20  l.exe""".#
2680: 20 20 20 20 20 55 53 45 5f 4e 41 54 49 56 45 5f       USE_NATIVE_
2690: 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 21 49 46  LIBPATHS=1.#.!IF
26a0: 44 45 46 20 4e 43 43 0a 4e 43 43 20 3d 20 24 28  DEF NCC.NCC = $( 26b0: 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 49 NCC:\\=\).!ELSEI 26c0: 46 20 24 28 58 43 4f 4d 50 49 4c 45 29 21 3d 30 F$(XCOMPILE)!=0
26d0: 0a 4e 43 43 20 3d 20 22 24 28 56 43 49 4e 53 54  .NCC = "$(VCINST 26e0: 41 4c 4c 44 49 52 29 5c 62 69 6e 5c 24 28 43 43 ALLDIR)\bin\$(CC
26f0: 29 22 0a 4e 43 43 20 3d 20 24 28 4e 43 43 3a 5c  )".NCC = $(NCC:\ 2700: 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e 43 43 20 3d \=\).!ELSE.NCC = 2710: 20 24 28 43 43 29 0a 21 45 4e 44 49 46 0a 0a 23$(CC).!ENDIF..#
2720: 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d   Check for the M
2730: 53 56 43 20 6e 61 74 69 76 65 20 72 75 6e 74 69  SVC native runti
2740: 6d 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 20  me library path
2750: 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73  macro.  Otherwis
2760: 65 2c 0a 23 20 74 68 69 73 20 76 61 6c 75 65 20  e,.# this value
2770: 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 74 6f 20  will default to
2780: 74 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74  the 'lib' direct
2790: 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74  ory underneath t
27a0: 68 65 20 4d 53 56 43 0a 23 20 69 6e 73 74 61 6c  he MSVC.# instal
27b0: 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79  lation directory
27c0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 43 52 54  ..#.!IFNDEF NCRT
27d0: 4c 49 42 50 41 54 48 0a 4e 43 52 54 4c 49 42 50  LIBPATH.NCRTLIBP
27e0: 41 54 48 20 3d 20 24 28 56 43 49 4e 53 54 41 4c  ATH = $(VCINSTAL 27f0: 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 LDIR)\lib.!ENDIF 2800: 0a 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 3d 20 ..NCRTLIBPATH = 2810: 24 28 4e 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c$(NCRTLIBPATH:\\
2820: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  =\)..# Check for
2830: 20 74 68 65 20 50 6c 61 74 66 6f 72 6d 20 53 44   the Platform SD
2840: 4b 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d  K library path m
2850: 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65  acro.  Otherwise
2860: 2c 20 74 68 69 73 0a 23 20 76 61 6c 75 65 20 77  , this.# value w
2870: 69 6c 6c 20 64 65 66 61 75 6c 74 20 74 6f 20 74  ill default to t
2880: 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74 6f  he 'lib' directo
2890: 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68  ry underneath th
28a0: 65 20 57 69 6e 64 6f 77 73 0a 23 20 53 44 4b 20  e Windows.# SDK
28b0: 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72  installation dir
28c0: 65 63 74 6f 72 79 20 28 74 68 65 20 65 6e 76 69  ectory (the envi
28d0: 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65  ronment variable
28e0: 20 75 73 65 64 20 61 70 70 65 61 72 73 0a 23 20   used appears.#
28f0: 74 6f 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20  to be available
2900: 77 68 65 6e 20 75 73 69 6e 67 20 56 69 73 75 61  when using Visua
2910: 6c 20 43 2b 2b 20 32 30 30 38 20 6f 72 20 6c 61  l C++ 2008 or la
2920: 74 65 72 20 76 69 61 20 74 68 65 0a 23 20 63 6f  ter via the.# co
2930: 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e 0a 23 0a 21  mmand line)..#.!
2940: 49 46 4e 44 45 46 20 4e 53 44 4b 4c 49 42 50 41  IFNDEF NSDKLIBPA
2950: 54 48 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d  TH.NSDKLIBPATH =
2960: 20 24 28 57 49 4e 44 4f 57 53 53 44 4b 44 49 52   $(WINDOWSSDKDIR 2970: 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 53 )\lib.!ENDIF..NS 2980: 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 4e 53 DKLIBPATH =$(NS
2990: 44 4b 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a  DKLIBPATH:\\=\).
29a0: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65  .# Check for the
29b0: 20 55 43 52 54 20 6c 69 62 72 61 72 79 20 70 61   UCRT library pa
29c0: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
29d0: 77 69 73 65 2c 20 74 68 69 73 20 76 61 6c 75 65  wise, this value
29e0: 20 77 69 6c 6c 0a 23 20 64 65 66 61 75 6c 74 20   will.# default
29f0: 74 6f 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73  to the version-s
2a00: 70 65 63 69 66 69 63 2c 20 70 6c 61 74 66 6f 72  pecific, platfor
2a10: 6d 2d 73 70 65 63 69 66 69 63 20 27 6c 69 62 27  m-specific 'lib'
2a20: 20 64 69 72 65 63 74 6f 72 79 0a 23 20 75 6e 64   directory.# und
2a30: 65 72 6e 65 61 74 68 20 74 68 65 20 57 69 6e 64  erneath the Wind
2a40: 6f 77 73 20 53 44 4b 20 69 6e 73 74 61 6c 6c 61  ows SDK installa
2a50: 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a  tion directory..
2a60: 23 0a 21 49 46 4e 44 45 46 20 55 43 52 54 4c 49  #.!IFNDEF UCRTLI
2a70: 42 50 41 54 48 0a 55 43 52 54 4c 49 42 50 41 54  BPATH.UCRTLIBPAT
2a80: 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44 4b  H = $(WINDOWSSDK 2a90: 44 49 52 29 5c 6c 69 62 5c 24 28 57 49 4e 44 4f DIR)\lib\$(WINDO
2aa0: 57 53 53 44 4b 4c 49 42 56 45 52 53 49 4f 4e 29  WSSDKLIBVERSION)
2ab0: 5c 75 63 72 74 5c 24 28 50 4c 41 54 46 4f 52 4d  \ucrt\$(PLATFORM 2ac0: 29 0a 21 45 4e 44 49 46 0a 0a 55 43 52 54 4c 49 ).!ENDIF..UCRTLI 2ad0: 42 50 41 54 48 20 3d 20 24 28 55 43 52 54 4c 49 BPATH =$(UCRTLI
2ae0: 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43  BPATH:\\=\)..# C
2af0: 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70   compiler and op
2b00: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e  tions for use in
2b10: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74   building execut
2b20: 61 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c  ables that.# wil
2b30: 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 70 6c 61  l run on the pla
2b40: 74 66 6f 72 6d 20 74 68 61 74 20 69 73 20 64 6f  tform that is do
2b50: 69 6e 67 20 74 68 65 20 62 75 69 6c 64 2e 0a 23  ing the build..#
2b60: 0a 21 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57  .!IF $(USE_FULLW 2b70: 41 52 4e 29 21 3d 30 0a 42 43 43 20 3d 20 24 28 ARN)!=0.BCC =$(
2b80: 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34  NCC) -nologo -W4
2b90: 20 24 28 43 43 4f 50 54 53 29 20 24 28 42 43 43   $(CCOPTS)$(BCC
2ba0: 4f 50 54 53 29 0a 21 45 4c 53 45 0a 42 43 43 20  OPTS).!ELSE.BCC
2bb0: 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f  = $(NCC) -nologo 2bc0: 20 2d 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 -W3$(CCOPTS) $2bd0: 28 42 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 (BCCOPTS).!ENDIF 2be0: 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 ..# Check if ass 2bf0: 65 6d 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 embly code listi 2c00: 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 ngs should be ge 2c10: 6e 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 nerated for the 2c20: 73 6f 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 source.# code fi 2c30: 6c 65 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c les to be compil 2c40: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
2c50: 4c 49 53 54 49 4e 47 53 29 21 3d 30 0a 42 43 43  LISTINGS)!=0.BCC
2c60: 20 3d 20 24 28 42 43 43 29 20 2d 46 41 63 73 0a   = $(BCC) -FAcs. 2c70: 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 !ENDIF..# Check 2c80: 69 66 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69 if the native li 2c90: 62 72 61 72 79 20 70 61 74 68 73 20 73 68 6f 75 brary paths shou 2ca0: 6c 64 20 62 65 20 75 73 65 64 20 77 68 65 6e 20 ld be used when 2cb0: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20 compiling.# the 2cc0: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f command line too 2cd0: 6c 73 20 75 73 65 64 20 64 75 72 69 6e 67 20 74 ls used during t 2ce0: 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 he compilation p 2cf0: 72 6f 63 65 73 73 2e 20 20 49 66 0a 23 20 73 6f rocess. If.# so 2d00: 2c 20 73 65 74 20 74 68 65 20 6e 65 63 65 73 73 , set the necess 2d10: 61 72 79 20 6d 61 63 72 6f 20 6e 6f 77 2e 0a 23 ary macro now..# 2d20: 0a 21 49 46 20 24 28 55 53 45 5f 4e 41 54 49 56 .!IF$(USE_NATIV
2d30: 45 5f 4c 49 42 50 41 54 48 53 29 21 3d 30 0a 4e  E_LIBPATHS)!=0.N
2d40: 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 22 2f 4c  LTLIBPATHS = "/L
2d50: 49 42 50 41 54 48 3a 24 28 4e 43 52 54 4c 49 42  IBPATH:$(NCRTLIB 2d60: 50 41 54 48 29 22 20 22 2f 4c 49 42 50 41 54 48 PATH)" "/LIBPATH 2d70: 3a 24 28 4e 53 44 4b 4c 49 42 50 41 54 48 29 22 :$(NSDKLIBPATH)"
2d80: 0a 0a 21 49 46 44 45 46 20 4e 55 43 52 54 4c 49  ..!IFDEF NUCRTLI
2d90: 42 50 41 54 48 0a 4e 55 43 52 54 4c 49 42 50 41  BPATH.NUCRTLIBPA
2da0: 54 48 20 3d 20 24 28 4e 55 43 52 54 4c 49 42 50  TH = $(NUCRTLIBP 2db0: 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c 54 4c 49 42 ATH:\\=\).NLTLIB 2dc0: 50 41 54 48 53 20 3d 20 24 28 4e 4c 54 4c 49 42 PATHS =$(NLTLIB
2dd0: 50 41 54 48 53 29 20 22 2f 4c 49 42 50 41 54 48  PATHS) "/LIBPATH
2de0: 3a 24 28 4e 55 43 52 54 4c 49 42 50 41 54 48 29  :$(NUCRTLIBPATH) 2df0: 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a ".!ENDIF.!ENDIF. 2e00: 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e .# C compiler an 2e10: 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 d options for us 2e20: 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 e in building ex 2e30: 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 ecutables that.# 2e40: 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 will run on the 2e50: 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d target platform 2e60: 2e 20 20 28 42 43 43 20 61 6e 64 20 54 43 43 20 . (BCC and TCC 2e70: 61 72 65 20 75 73 75 61 6c 6c 79 20 74 68 65 0a are usually the. 2e80: 23 20 73 61 6d 65 20 75 6e 6c 65 73 73 20 79 6f # same unless yo 2e90: 75 72 20 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d ur are cross-com 2ea0: 70 69 6c 69 6e 67 2e 29 0a 23 0a 21 49 46 20 24 piling.).#.!IF$
2eb0: 28 55 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d  (USE_FULLWARN)!=
2ec0: 30 0a 54 43 43 20 3d 20 24 28 43 43 29 20 2d 6e  0.TCC = $(CC) -n 2ed0: 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44 49 4e 43 4c ologo -W4 -DINCL 2ee0: 55 44 45 5f 4d 53 56 43 5f 48 3d 31 20 24 28 43 UDE_MSVC_H=1$(C
2ef0: 43 4f 50 54 53 29 20 24 28 54 43 43 4f 50 54 53  COPTS) $(TCCOPTS 2f00: 29 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 ).!ELSE.TCC =$(
2f10: 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 33 20  CC) -nologo -W3
2f20: 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43 4f  $(CCOPTS)$(TCCO
2f30: 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a 54 43 43  PTS).!ENDIF..TCC
2f40: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49   = $(TCC) -DSQLI 2f50: 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 TE_OS_WIN=1 -I. 2f60: 2d 49 24 28 54 4f 50 29 20 2d 49 24 28 54 4f 50 -I$(TOP) -I$(TOP 2f70: 29 5c 73 72 63 20 2d 66 70 3a 70 72 65 63 69 73 )\src -fp:precis 2f80: 65 0a 52 43 43 20 3d 20 24 28 52 43 29 20 2d 44 e.RCC =$(RC) -D
2f90: 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 20  SQLITE_OS_WIN=1
2fa0: 2d 49 2e 20 2d 49 24 28 54 4f 50 29 20 2d 49 24  -I. -I$(TOP) -I$
2fb0: 28 54 4f 50 29 5c 73 72 63 20 24 28 52 43 4f 50  (TOP)\src $(RCOP 2fc0: 54 53 29 20 24 28 52 43 43 4f 50 54 53 29 0a 0a TS)$(RCCOPTS)..
2fd0: 23 20 43 68 65 63 6b 20 69 66 20 77 65 20 77 61  # Check if we wa
2fe0: 6e 74 20 74 6f 20 75 73 65 20 74 68 65 20 22 73  nt to use the "s
2ff0: 74 64 63 61 6c 6c 22 20 63 61 6c 6c 69 6e 67 20  tdcall" calling
3000: 63 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 65 6e 20  convention when
3010: 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 20 54 68 69  compiling..# Thi
3020: 73 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74  s is not support
3030: 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c  ed by the compil
3040: 65 72 73 20 66 6f 72 20 6e 6f 6e 2d 78 38 36 20  ers for non-x86
3050: 70 6c 61 74 66 6f 72 6d 73 2e 20 20 49 74 20 73  platforms.  It s
3060: 68 6f 75 6c 64 0a 23 20 61 6c 73 6f 20 62 65 20  hould.# also be
3070: 6e 6f 74 65 64 20 68 65 72 65 20 74 68 61 74 20  noted here that
3080: 62 75 69 6c 64 69 6e 67 20 61 6e 79 20 74 61 72  building any tar
3090: 67 65 74 20 77 69 74 68 20 74 68 65 73 65 20 22  get with these "
30a0: 73 74 64 63 61 6c 6c 22 20 6f 70 74 69 6f 6e 73  stdcall" options
30b0: 0a 23 20 77 69 6c 6c 20 6d 6f 73 74 20 6c 69 6b  .# will most lik
30c0: 65 6c 79 20 66 61 69 6c 20 69 66 20 74 68 65 20  ely fail if the
30d0: 54 63 6c 20 6c 69 62 72 61 72 79 20 69 73 20 61  Tcl library is a
30e0: 6c 73 6f 20 72 65 71 75 69 72 65 64 2e 20 20 54  lso required.  T
30f0: 68 69 73 20 69 73 20 64 75 65 0a 23 20 74 6f 20  his is due.# to
3100: 68 6f 77 20 74 68 65 20 54 63 6c 20 6c 69 62 72  how the Tcl libr
3110: 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 20 61 72  ary functions ar
3120: 65 20 64 65 63 6c 61 72 65 64 20 61 6e 64 20 65  e declared and e
3130: 78 70 6f 72 74 65 64 20 28 69 2e 65 2e 20 77 69  xported (i.e. wi
3140: 74 68 6f 75 74 0a 23 20 61 6e 20 65 78 70 6c 69  thout.# an expli
3150: 63 69 74 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76  cit calling conv
3160: 65 6e 74 69 6f 6e 2c 20 77 68 69 63 68 20 72 65  ention, which re
3170: 73 75 6c 74 73 20 69 6e 20 22 63 64 65 63 6c 22  sults in "cdecl"
3180: 29 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 53  )..#.!IF $(USE_S 3190: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 TDCALL)!=0 ||$(
31a0: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49  FOR_WIN10)!=0.!I
31b0: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  F "$(PLATFORM)"= 31c0: 3d 22 78 38 36 22 0a 43 4f 52 45 5f 43 43 4f 4e ="x86".CORE_CCON 31d0: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 V_OPTS = -Gz -DS 31e0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 QLITE_CDECL=__cd 31f0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 ecl -DSQLITE_API 3200: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d CALL=__stdcall - 3210: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b DSQLITE_CALLBACK 3220: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c =__stdcall -DSQL 3230: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 ITE_SYSAPI=__std 3240: 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 call.SHELL_CCONV 3250: 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51 _OPTS = -Gz -DSQ 3260: 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65 LITE_CDECL=__cde 3270: 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43 cl -DSQLITE_APIC 3280: 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 ALL=__stdcall -D 3290: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d SQLITE_CALLBACK= 32a0: 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 __stdcall -DSQLI 32b0: 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63 TE_SYSAPI=__stdc 32c0: 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 all.# <<mark>>.T 32d0: 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d EST_CCONV_OPTS = 32e0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 -Gz -DSQLITE_CD 32f0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 ECL=__cdecl -DSQ 3300: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 LITE_APICALL=__s 3310: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f tdcall -DSQLITE_ 3320: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 CALLBACK=__stdca 3330: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 ll -DSQLITE_SYSA 3340: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 49 PI=__stdcall -DI 3350: 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f 54 43 NCLUDE_SQLITE_TC 3360: 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54 L_H=1 -DSQLITE_T 3370: 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a 23 20 CLAPI=__cdecl.# 3380: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 0a <</mark>>.!ELSE. 3390: 21 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d !IFNDEF PLATFORM 33a0: 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 .CORE_CCONV_OPTS 33b0: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f = -Gz -DSQLITE_ 33c0: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 CDECL=__cdecl -D 33d0: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f SQLITE_APICALL=_ 33e0: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 _stdcall -DSQLIT 33f0: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 E_CALLBACK=__std 3400: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 call -DSQLITE_SY 3410: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 SAPI=__stdcall.S 3420: 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 HELL_CCONV_OPTS 3430: 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 = -Gz -DSQLITE_C 3440: 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 DECL=__cdecl -DS 3450: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f QLITE_APICALL=__ 3460: 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 stdcall -DSQLITE 3470: 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 _CALLBACK=__stdc 3480: 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 all -DSQLITE_SYS 3490: 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 API=__stdcall.# 34a0: 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 <<mark>>.TEST_CC 34b0: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d ONV_OPTS = -Gz - 34c0: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f DSQLITE_CDECL=__ 34d0: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 cdecl -DSQLITE_A 34e0: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c PICALL=__stdcall 34f0: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 -DSQLITE_CALLBA 3500: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 CK=__stdcall -DS 3510: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 QLITE_SYSAPI=__s 3520: 74 64 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 tdcall -DINCLUDE 3530: 5f 53 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 _SQLITE_TCL_H=1 3540: 2d 44 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d -DSQLITE_TCLAPI= 3550: 5f 5f 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 __cdecl.# <</mar 3560: 6b 3e 3e 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 43 k>>.!ELSE.CORE_C 3570: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 45 4c CONV_OPTS =.SHEL 3580: 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 L_CCONV_OPTS =.# 3590: 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 <<mark>>.TEST_C 35a0: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c CONV_OPTS =.# << 35b0: 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 0a 21 /mark>>.!ENDIF.! 35c0: 45 4e 44 49 46 0a 21 45 4c 53 45 0a 43 4f 52 45 ENDIF.!ELSE.CORE 35d0: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 _CCONV_OPTS =.SH 35e0: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d ELL_CCONV_OPTS = 35f0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 .# <<mark>>.TEST 3600: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 _CCONV_OPTS =.# 3610: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 <</mark>>.!ENDIF 3620: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 61 64 ..# These are ad 3630: 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 ditional compile 3640: 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 r options used f 3650: 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 or the core libr 3660: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 ary..#.!IFNDEF C 3670: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS 3680: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 .!IF$(DYNAMIC_S
3690: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  HELL)!=0 || $(FO 36a0: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 43 4f 52 45 R_WIN10)!=0.CORE 36b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 _COMPILE_OPTS = 36c0: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54$(CORE_CCONV_OPT
36d0: 53 29 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d  S) -DSQLITE_API=
36e0: 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c 65 78  __declspec(dllex
36f0: 70 6f 72 74 29 0a 21 45 4c 53 45 0a 43 4f 52 45  port).!ELSE.CORE
3700: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20  _COMPILE_OPTS =
3710: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  $(CORE_CCONV_OPT 3720: 53 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 S).!ENDIF.!ENDIF 3730: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 ..# These are th 3740: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72 e additional tar 3750: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 63 6f gets that the co 3760: 72 65 20 6c 69 62 72 61 72 79 20 73 68 6f 75 6c re library shoul 3770: 64 20 64 65 70 65 6e 64 20 6f 6e 0a 23 20 77 68 d depend on.# wh 3780: 65 6e 20 6c 69 6e 6b 69 6e 67 2e 0a 23 0a 21 49 en linking..#.!I 3790: 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e 4b 5f FNDEF CORE_LINK_ 37a0: 44 45 50 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 DEP.!IF$(DYNAMI
37b0: 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 4f 52 45  C_SHELL)!=0.CORE
37c0: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 4c 53  _LINK_DEP =.!ELS
37d0: 45 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29  EIF $(FOR_WIN10) 37e0: 3d 3d 30 20 7c 7c 20 22 24 28 50 4c 41 54 46 4f ==0 || "$(PLATFO
37f0: 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43 4f 52 45  RM)"=="x86".CORE
3800: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 20 73 71 6c 69  _LINK_DEP = sqli
3810: 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a 43 4f  te3.def.!ELSE.CO
3820: 52 45 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45  RE_LINK_DEP =.!E
3830: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54  NDIF.!ENDIF..# T
3840: 68 65 73 65 20 61 72 65 20 61 64 64 69 74 69 6f  hese are additio
3850: 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f  nal linker optio
3860: 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20  ns used for the
3870: 63 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a  core library..#.
3880: 21 49 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e  !IFNDEF CORE_LIN
3890: 4b 5f 4f 50 54 53 0a 21 49 46 20 24 28 44 59 4e  K_OPTS.!IF $(DYN 38a0: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 AMIC_SHELL)!=0.C 38b0: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 0a ORE_LINK_OPTS =. 38c0: 21 45 4c 53 45 49 46 20 24 28 46 4f 52 5f 57 49 !ELSEIF$(FOR_WI
38d0: 4e 31 30 29 3d 3d 30 20 7c 7c 20 22 24 28 50 4c  N10)==0 || "$(PL 38e0: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a ATFORM)"=="x86". 38f0: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d CORE_LINK_OPTS = 3900: 20 2f 44 45 46 3a 73 71 6c 69 74 65 33 2e 64 65 /DEF:sqlite3.de 3910: 66 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e f.!ELSE.CORE_LIN 3920: 4b 5f 4f 50 54 53 20 3d 0a 21 45 4e 44 49 46 0a K_OPTS =.!ENDIF. 3930: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 !ENDIF..# These 3940: 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 are additional c 3950: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options 3960: 75 73 65 64 20 66 6f 72 20 74 68 65 20 73 68 65 used for the she 3970: 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 ll executable..# 3980: 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 .!IFNDEF SHELL_C 3990: 4f 4d 50 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 OMPILE_OPTS.!IF 39a0: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29$(DYNAMIC_SHELL)
39b0: 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e  !=0 || $(FOR_WIN 39c0: 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d 10)!=0.SHELL_COM 39d0: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48 PILE_OPTS =$(SH
39e0: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 20  ELL_CCONV_OPTS)
39f0: 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d 5f 5f 64  -DSQLITE_API=__d
3a00: 65 63 6c 73 70 65 63 28 64 6c 6c 69 6d 70 6f 72  eclspec(dllimpor
3a10: 74 29 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43  t).!ELSE.SHELL_C
3a20: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28  OMPILE_OPTS = $( 3a30: 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 SHELL_CCONV_OPTS 3a40: 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a ).!ENDIF.!ENDIF. 3a50: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 73 .# This is the s 3a60: 6f 75 72 63 65 20 63 6f 64 65 20 74 68 61 74 20 ource code that 3a70: 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 the shell execut 3a80: 61 62 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 63 able should be c 3a90: 6f 6d 70 69 6c 65 64 0a 23 20 77 69 74 68 2e 0a ompiled.# with.. 3aa0: 23 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f #.!IFNDEF SHELL_ 3ab0: 43 4f 52 45 5f 53 52 43 0a 21 49 46 20 24 28 44 CORE_SRC.!IF$(D
3ac0: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30  YNAMIC_SHELL)!=0
3ad0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 3ae0: 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 !=0.SHELL_CORE_S 3af0: 52 43 20 3d 0a 21 45 4c 53 45 0a 53 48 45 4c 4c RC =.!ELSE.SHELL 3b00: 5f 43 4f 52 45 5f 53 52 43 20 3d 20 24 28 53 51 _CORE_SRC =$(SQ
3b10: 4c 49 54 45 33 43 29 0a 21 45 4e 44 49 46 0a 21  LITE3C).!ENDIF.!
3b20: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
3b30: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72   the core librar
3b40: 79 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c  y that the shell
3b50: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75   executable shou
3b60: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 2e 0a 23 0a  ld depend on..#.
3b70: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f  !IFNDEF SHELL_CO
3b80: 52 45 5f 44 45 50 0a 21 49 46 20 24 28 44 59 4e  RE_DEP.!IF $(DYN 3b90: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c AMIC_SHELL)!=0 | 3ba0: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d |$(FOR_WIN10)!=
3bb0: 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50  0.SHELL_CORE_DEP
3bc0: 20 3d 20 24 28 53 51 4c 49 54 45 33 44 4c 4c 29   = $(SQLITE3DLL) 3bd0: 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 .!ELSE.SHELL_COR 3be0: 45 5f 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 E_DEP =.!ENDIF.! 3bf0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 3c00: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 the core librar 3c10: 79 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c y that the shell 3c20: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 executable shou 3c30: 6c 64 20 6c 69 6e 6b 20 77 69 74 68 2e 0a 23 0a ld link with..#. 3c40: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f !IFNDEF SHELL_CO 3c50: 52 45 5f 4c 49 42 0a 21 49 46 20 24 28 44 59 4e RE_LIB.!IF$(DYN
3c60: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c  AMIC_SHELL)!=0 |
3c70: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  | $(FOR_WIN10)!= 3c80: 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0.SHELL_CORE_LIB 3c90: 20 3d 20 24 28 53 51 4c 49 54 45 33 4c 49 42 29 =$(SQLITE3LIB)
3ca0: 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52  .!ELSE.SHELL_COR
3cb0: 45 5f 4c 49 42 20 3d 0a 21 45 4e 44 49 46 0a 21  E_LIB =.!ENDIF.!
3cc0: 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61  ENDIF..# These a
3cd0: 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69  re additional li
3ce0: 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65  nker options use
3cf0: 64 20 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 20  d for the shell
3d00: 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49  executable..#.!I
3d10: 46 4e 44 45 46 20 53 48 45 4c 4c 5f 4c 49 4e 4b  FNDEF SHELL_LINK
3d20: 5f 4f 50 54 53 0a 53 48 45 4c 4c 5f 4c 49 4e 4b  _OPTS.SHELL_LINK
3d30: 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f  _OPTS = $(SHELL_ 3d40: 43 4f 52 45 5f 4c 49 42 29 0a 21 45 4e 44 49 46 CORE_LIB).!ENDIF 3d50: 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 ..# Check if ass 3d60: 65 6d 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 embly code listi 3d70: 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 ngs should be ge 3d80: 6e 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 nerated for the 3d90: 73 6f 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 source.# code fi 3da0: 6c 65 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c les to be compil 3db0: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
3dc0: 4c 49 53 54 49 4e 47 53 29 21 3d 30 0a 54 43 43  LISTINGS)!=0.TCC
3dd0: 20 3d 20 24 28 54 43 43 29 20 2d 46 41 63 73 0a   = $(TCC) -FAcs. 3de0: 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 !ENDIF..# When c 3df0: 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 6c 69 62 ompiling the lib 3e00: 72 61 72 79 20 66 6f 72 20 75 73 65 20 69 6e 20 rary for use in 3e10: 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f the WinRT enviro 3e20: 6e 6d 65 6e 74 2c 0a 23 20 74 68 65 20 66 6f 6c nment,.# the fol 3e30: 6c 6f 77 69 6e 67 20 63 6f 6d 70 69 6c 65 2d 74 lowing compile-t 3e40: 69 6d 65 20 6f 70 74 69 6f 6e 73 20 6d 75 73 74 ime options must 3e50: 20 62 65 20 75 73 65 64 20 61 73 20 77 65 6c 6c be used as well 3e60: 20 74 6f 0a 23 20 64 69 73 61 62 6c 65 20 75 73 to.# disable us 3e70: 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 e of Win32 APIs 3e80: 74 68 61 74 20 61 72 65 20 6e 6f 74 20 61 76 61 that are not ava 3e90: 69 6c 61 62 6c 65 20 61 6e 64 20 74 6f 20 65 6e ilable and to en 3ea0: 61 62 6c 65 0a 23 20 75 73 65 20 6f 66 20 57 69 able.# use of Wi 3eb0: 6e 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 n32 APIs that ar 3ec0: 65 20 73 70 65 63 69 66 69 63 20 74 6f 20 57 69 e specific to Wi 3ed0: 6e 64 6f 77 73 20 38 20 61 6e 64 2f 6f 72 20 57 ndows 8 and/or W 3ee0: 69 6e 52 54 2e 0a 23 0a 21 49 46 20 24 28 46 4f inRT..#.!IF$(FO
3ef0: 52 5f 57 49 4e 52 54 29 21 3d 30 0a 54 43 43 20  R_WINRT)!=0.TCC
3f00: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54  = $(TCC) -DSQLIT 3f10: 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 52 43 43 E_OS_WINRT=1.RCC 3f20: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 =$(RCC) -DSQLI
3f30: 54 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 54 43  TE_OS_WINRT=1.TC
3f40: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 57 49 4e  C = $(TCC) -DWIN 3f50: 41 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 API_FAMILY=WINAP 3f60: 49 5f 46 41 4d 49 4c 59 5f 41 50 50 0a 52 43 43 I_FAMILY_APP.RCC 3f70: 20 3d 20 24 28 52 43 43 29 20 2d 44 57 49 4e 41 =$(RCC) -DWINA
3f80: 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49  PI_FAMILY=WINAPI
3f90: 5f 46 41 4d 49 4c 59 5f 41 50 50 0a 21 45 4e 44  _FAMILY_APP.!END
3fa0: 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72  IF..# C compiler
3fb0: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65   options for the
3fc0: 20 57 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74   Windows 10 plat
3fd0: 66 6f 72 6d 20 28 6e 65 65 64 73 20 4d 53 56 43  form (needs MSVC
3fe0: 20 32 30 31 35 29 2e 0a 23 0a 21 49 46 20 24 28   2015)..#.!IF $( 3ff0: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 FOR_WIN10)!=0.TC 4000: 43 20 3d 20 24 28 54 43 43 29 20 2f 64 32 67 75 C =$(TCC) /d2gu
4010: 61 72 64 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41  ard4 -D_ARM_WINA
4020: 50 49 5f 50 41 52 54 49 54 49 4f 4e 5f 44 45 53  PI_PARTITION_DES
4030: 4b 54 4f 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42  KTOP_SDK_AVAILAB
4040: 4c 45 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  LE.BCC = $(BCC) 4050: 2f 64 32 67 75 61 72 64 34 20 2d 44 5f 41 52 4d /d2guard4 -D_ARM 4060: 5f 57 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f _WINAPI_PARTITIO 4070: 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b 5f 41 56 N_DESKTOP_SDK_AV 4080: 41 49 4c 41 42 4c 45 0a 21 45 4e 44 49 46 0a 0a AILABLE.!ENDIF.. 4090: 23 20 41 6c 73 6f 2c 20 77 65 20 6e 65 65 64 20 # Also, we need 40a0: 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c to dynamically l 40b0: 69 6e 6b 20 74 6f 20 74 68 65 20 63 6f 72 72 65 ink to the corre 40c0: 63 74 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 0a ct MSVC runtime. 40d0: 23 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 # when compiling 40e0: 20 66 6f 72 20 57 69 6e 52 54 20 28 65 2e 67 2e for WinRT (e.g. 40f0: 20 64 65 62 75 67 20 6f 72 20 72 65 6c 65 61 73 debug or releas 4100: 65 29 20 4f 52 20 69 66 20 74 68 65 0a 23 20 55 e) OR if the.# U 4110: 53 45 5f 43 52 54 5f 44 4c 4c 20 6f 70 74 69 6f SE_CRT_DLL optio 4120: 6e 20 69 73 20 73 65 74 20 74 6f 20 66 6f 72 63 n is set to forc 4130: 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 e dynamically li 4140: 6e 6b 69 6e 67 20 74 6f 20 74 68 65 0a 23 20 4d nking to the.# M 4150: 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 SVC runtime libr 4160: 61 72 79 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 ary..#.!IF$(FOR
4170: 5f 57 49 4e 52 54 29 21 3d 30 20 7c 7c 20 24 28  _WINRT)!=0 || $( 4180: 55 53 45 5f 43 52 54 5f 44 4c 4c 29 21 3d 30 0a USE_CRT_DLL)!=0. 4190: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 !IF$(DEBUG)>1.T
41a0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 64  CC = $(TCC) -MDd 41b0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d .BCC =$(BCC) -M
41c0: 44 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  Dd.!ELSE.TCC = $41d0: 28 54 43 43 29 20 2d 4d 44 0a 42 43 43 20 3d 20 (TCC) -MD.BCC = 41e0: 24 28 42 43 43 29 20 2d 4d 44 0a 21 45 4e 44 49$(BCC) -MD.!ENDI
41f0: 46 0a 21 45 4c 53 45 0a 21 49 46 20 24 28 44 45  F.!ELSE.!IF $(DE 4200: 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 BUG)>1.TCC =$(T
4210: 43 43 29 20 2d 4d 54 64 0a 42 43 43 20 3d 20 24  CC) -MTd.BCC = $4220: 28 42 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 (BCC) -MTd.!ELSE 4230: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d .TCC =$(TCC) -M
4240: 54 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  T.BCC = $(BCC) - 4250: 4d 54 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 MT.!ENDIF.!ENDIF 4260: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 ..# <<mark>>.# T 4270: 68 65 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 he mksqlite3c.tc 4280: 6c 20 61 6e 64 20 6d 6b 73 71 6c 69 74 65 33 68 l and mksqlite3h 4290: 2e 74 63 6c 20 73 63 72 69 70 74 73 20 77 69 6c .tcl scripts wil 42a0: 6c 20 70 75 6c 6c 20 69 6e 0a 23 20 61 6e 79 20 l pull in.# any 42b0: 65 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 extension header 42c0: 20 66 69 6c 65 73 20 62 79 20 64 65 66 61 75 6c files by defaul 42d0: 74 2e 20 20 46 6f 72 20 6e 6f 6e 2d 61 6d 61 6c t. For non-amal 42e0: 67 61 6d 61 74 69 6f 6e 0a 23 20 62 75 69 6c 64 gamation.# build 42f0: 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 s, we need to ma 4300: 6b 65 20 73 75 72 65 20 74 68 65 20 63 6f 6d 70 ke sure the comp 4310: 69 6c 65 72 20 63 61 6e 20 66 69 6e 64 20 74 68 iler can find th 4320: 65 73 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 ese..#.!IF$(USE
4330: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d  _AMALGAMATION)==
4340: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 4350: 49 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 I$(TOP)\ext\fts3
4360: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49  .RCC = $(RCC) -I 4370: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a$(TOP)\ext\fts3.
4380: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
4390: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a  (TOP)\ext\rtree.
43a0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24  RCC = $(RCC) -I$
43b0: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a  (TOP)\ext\rtree.
43c0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
43d0: 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f  (TOP)\ext\sessio
43e0: 6e 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  n.RCC = $(RCC) - 43f0: 49 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 I$(TOP)\ext\sess
4400: 69 6f 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  ion.!ENDIF..# Th
4410: 65 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  e mksqlite3c.tcl
4420: 20 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20   script accepts
4430: 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20  some options on
4440: 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69  the command.# li
4450: 6e 65 2e 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c  ne.  When compil
4460: 69 6e 67 20 77 69 74 68 20 64 65 62 75 67 67 69  ing with debuggi
4470: 6e 67 20 65 6e 61 62 6c 65 64 2c 20 73 6f 6d 65  ng enabled, some
4480: 20 6f 66 20 74 68 65 73 65 0a 23 20 6f 70 74 69   of these.# opti
4490: 6f 6e 73 20 61 72 65 20 6e 65 63 65 73 73 61 72  ons are necessar
44a0: 79 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c  y in order to al
44b0: 6c 6f 77 20 64 65 62 75 67 67 69 6e 67 20 73 79  low debugging sy
44c0: 6d 62 6f 6c 73 20 74 6f 0a 23 20 77 6f 72 6b 20  mbols to.# work
44d0: 63 6f 72 72 65 63 74 6c 79 20 77 69 74 68 20 56  correctly with V
44e0: 69 73 75 61 6c 20 53 74 75 64 69 6f 20 77 68 65  isual Studio whe
44f0: 6e 20 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c  n using the amal
4500: 67 61 6d 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e  gamation..#.!IFN
4510: 44 45 46 20 4d 4b 53 51 4c 49 54 45 33 43 5f 41  DEF MKSQLITE3C_A
4520: 52 47 53 0a 21 49 46 20 24 28 44 45 42 55 47 29  RGS.!IF $(DEBUG) 4530: 3e 31 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 >1.MKSQLITE3C_AR 4540: 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d 61 63 72 6f GS = --linemacro 4550: 73 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c 49 54 45 s.!ELSE.MKSQLITE 4560: 33 43 5f 41 52 47 53 20 3d 0a 21 45 4e 44 49 46 3C_ARGS =.!ENDIF 4570: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 .!ENDIF.# <</mar 4580: 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65 20 2d 44 k>>..# Define -D 4590: 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d 70 69 6c NDEBUG to compil 45a0: 65 20 77 69 74 68 6f 75 74 20 64 65 62 75 67 67 e without debugg 45b0: 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f 72 20 70 ing (i.e., for p 45c0: 72 6f 64 75 63 74 69 6f 6e 20 75 73 61 67 65 29 roduction usage) 45d0: 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74 68 65 20 .# Omitting the 45e0: 64 65 66 69 6e 65 20 77 69 6c 6c 20 63 61 75 73 define will caus 45f0: 65 20 65 78 74 72 61 20 64 65 62 75 67 67 69 6e e extra debuggin 4600: 67 20 63 6f 64 65 20 74 6f 20 62 65 20 69 6e 73 g code to be ins 4610: 65 72 74 65 64 20 61 6e 64 0a 23 20 69 6e 63 6c erted and.# incl 4620: 75 64 65 73 20 65 78 74 72 61 20 63 6f 6d 6d 65 udes extra comme 4630: 6e 74 73 20 77 68 65 6e 20 22 45 58 50 4c 41 49 nts when "EXPLAI 4640: 4e 20 73 74 6d 74 22 20 69 73 20 75 73 65 64 2e N stmt" is used. 4650: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3d .#.!IF$(DEBUG)=
4660: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 4670: 2d 44 4e 44 45 42 55 47 0a 42 43 43 20 3d 20 24 -DNDEBUG.BCC =$
4680: 28 42 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 52  (BCC) -DNDEBUG.R
4690: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 4e 44  CC = $(RCC) -DND 46a0: 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a 21 49 46 EBUG.!ENDIF..!IF 46b0: 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c 20 24$(DEBUG)>0 || $46c0: 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d 30 20 7c (API_ARMOR)!=0 | 46d0: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d |$(FOR_WIN10)!=
46e0: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 46f0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 DSQLITE_ENABLE_A 4700: 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43 43 20 3d PI_ARMOR=1.RCC = 4710: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
4720: 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d 4f  _ENABLE_API_ARMO
4730: 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20  R=1.!ENDIF..!IF
4740: 24 28 44 45 42 55 47 29 3e 32 0a 54 43 43 20 3d  $(DEBUG)>2.TCC = 4750: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
4760: 5f 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20 24  _DEBUG=1.RCC = $4770: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 44 (RCC) -DSQLITE_D 4780: 45 42 55 47 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 EBUG=1.!ENDIF..! 4790: 49 46 20 24 28 44 45 42 55 47 29 3e 34 20 7c 7c IF$(DEBUG)>4 ||
47a0: 20 24 28 4f 53 54 52 41 43 45 29 21 3d 30 0a 54   $(OSTRACE)!=0.T 47b0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 CC =$(TCC) -DSQ
47c0: 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54 52  LITE_FORCE_OS_TR
47d0: 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f 44  ACE=1 -DSQLITE_D
47e0: 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 0a  EBUG_OS_TRACE=1.
47f0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS 4800: 51 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54 QLITE_FORCE_OS_T 4810: 52 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f RACE=1 -DSQLITE_ 4820: 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 DEBUG_OS_TRACE=1 4830: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 .!ENDIF..!IF$(D
4840: 45 42 55 47 29 3e 35 0a 54 43 43 20 3d 20 24 28  EBUG)>5.TCC = $( 4850: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 4860: 41 42 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 52 ABLE_IOTRACE=1.R 4870: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 CC =$(RCC) -DSQ
4880: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
4890: 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20  ACE=1.!ENDIF..#
48a0: 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 73  Prevent warnings
48b0: 20 61 62 6f 75 74 20 22 69 6e 73 65 63 75 72 65   about "insecure
48c0: 22 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c  " MSVC runtime l
48d0: 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 73  ibrary functions
48e0: 0a 23 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23  .# being used..#
48f0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D 4900: 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 _CRT_SECURE_NO_D 4910: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f EPRECATE -D_CRT_ 4920: 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e SECURE_NO_WARNIN 4930: 47 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 GS.BCC =$(BCC)
4940: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f  -D_CRT_SECURE_NO
4950: 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52  _DEPRECATE -D_CR
4960: 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e  T_SECURE_NO_WARN
4970: 49 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43  INGS.RCC = $(RCC 4980: 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f ) -D_CRT_SECURE_ 4990: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f NO_DEPRECATE -D_ 49a0: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 CRT_SECURE_NO_WA 49b0: 52 4e 49 4e 47 53 0a 0a 23 20 50 72 65 76 65 6e RNINGS..# Preven 49c0: 74 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 t warnings about 49d0: 20 22 64 65 70 72 65 63 61 74 65 64 22 20 50 4f "deprecated" PO 49e0: 53 49 58 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 SIX functions be 49f0: 69 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 20 ing used..#.TCC 4a00: 3d 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 5f =$(TCC) -D_CRT_
4a10: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45  NONSTDC_NO_DEPRE
4a20: 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53  CATE -D_CRT_NONS
4a30: 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a  TDC_NO_WARNINGS.
4a40: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f  BCC = $(BCC) -D_ 4a50: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 CRT_NONSTDC_NO_D 4a60: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f EPRECATE -D_CRT_ 4a70: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 NONSTDC_NO_WARNI 4a80: 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43 29 NGS.RCC =$(RCC)
4a90: 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f   -D_CRT_NONSTDC_
4aa0: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f  NO_DEPRECATE -D_
4ab0: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57  CRT_NONSTDC_NO_W
4ac0: 41 52 4e 49 4e 47 53 0a 0a 23 20 55 73 65 20 74  ARNINGS..# Use t
4ad0: 68 65 20 53 51 4c 69 74 65 20 64 65 62 75 67 67  he SQLite debugg
4ae0: 69 6e 67 20 68 65 61 70 20 73 75 62 73 79 73 74  ing heap subsyst
4af0: 65 6d 3f 0a 23 0a 21 49 46 20 24 28 4d 45 4d 44  em?.#.!IF $(MEMD 4b00: 45 42 55 47 29 21 3d 30 0a 54 43 43 20 3d 20 24 EBUG)!=0.TCC =$
4b10: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 4d  (TCC) -DSQLITE_M
4b20: 45 4d 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20  EMDEBUG=1.RCC =
4b30: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(RCC) -DSQLITE_ 4b40: 4d 45 4d 44 45 42 55 47 3d 31 0a 0a 23 20 55 73 MEMDEBUG=1..# Us 4b50: 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68 e native Win32 h 4b60: 65 61 70 20 73 75 62 73 79 73 74 65 6d 20 69 6e eap subsystem in 4b70: 73 74 65 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 2f stead of malloc/ 4b80: 66 72 65 65 3f 0a 23 0a 21 45 4c 53 45 49 46 20 free?.#.!ELSEIF 4b90: 24 28 57 49 4e 33 32 48 45 41 50 29 21 3d 30 0a$(WIN32HEAP)!=0.
4ba0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS 4bb0: 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c QLITE_WIN32_MALL 4bc0: 4f 43 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 OC=1.RCC =$(RCC
4bd0: 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32  ) -DSQLITE_WIN32
4be0: 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a 23 20 56 61 6c  _MALLOC=1..# Val
4bf0: 69 64 61 74 65 20 74 68 65 20 68 65 61 70 20 6f  idate the heap o
4c00: 6e 20 65 76 65 72 79 20 63 61 6c 6c 20 69 6e 74  n every call int
4c10: 6f 20 74 68 65 20 6e 61 74 69 76 65 20 57 69 6e  o the native Win
4c20: 33 32 20 68 65 61 70 20 73 75 62 73 79 73 74 65  32 heap subsyste
4c30: 6d 3f 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47  m?.#.!IF $(DEBUG 4c40: 29 3e 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29 )>3.TCC =$(TCC)
4c50: 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f   -DSQLITE_WIN32_
4c60: 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d  MALLOC_VALIDATE=
4c70: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 4c80: 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 DSQLITE_WIN32_MA 4c90: 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a LLOC_VALIDATE=1. 4ca0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 4cb0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68 65 20 <<mark>>.# The 4cc0: 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 locations of the 4cd0: 20 54 63 6c 20 68 65 61 64 65 72 20 61 6e 64 20 Tcl header and 4ce0: 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 20 library files. 4cf0: 41 6c 73 6f 2c 20 74 68 65 20 6c 69 62 72 61 72 Also, the librar 4d00: 79 20 74 68 61 74 0a 23 20 6e 6f 6e 2d 73 74 75 y that.# non-stu 4d10: 62 73 20 65 6e 61 62 6c 65 64 20 70 72 6f 67 72 bs enabled progr 4d20: 61 6d 73 20 75 73 69 6e 67 20 54 63 6c 20 6d 75 ams using Tcl mu 4d30: 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e st link against. 4d40: 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65 These variable 4d50: 73 0a 23 20 28 54 43 4c 49 4e 43 44 49 52 2c 20 s.# (TCLINCDIR, 4d60: 54 43 4c 4c 49 42 44 49 52 2c 20 61 6e 64 20 4c TCLLIBDIR, and L 4d70: 49 42 54 43 4c 29 20 6d 61 79 20 62 65 20 6f 76 IBTCL) may be ov 4d80: 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 65 erridden via the 4d90: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 70 environment.# p 4da0: 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 rior to running 4db0: 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 nmake in order t 4dc0: 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 74 75 o match the actu 4dd0: 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f 63 al installed loc 4de0: 61 74 69 6f 6e 20 61 6e 64 0a 23 20 76 65 72 73 ation and.# vers 4df0: 69 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61 63 68 ion on this mach 4e00: 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54 ine..#.!IFNDEF T 4e10: 43 4c 49 4e 43 44 49 52 0a 54 43 4c 49 4e 43 44 CLINCDIR.TCLINCD 4e20: 49 52 20 3d 20 63 3a 5c 74 63 6c 5c 69 6e 63 6c IR = c:\tcl\incl 4e30: 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e ude.!ENDIF..!IFN 4e40: 44 45 46 20 54 43 4c 4c 49 42 44 49 52 0a 54 43 DEF TCLLIBDIR.TC 4e50: 4c 4c 49 42 44 49 52 20 3d 20 63 3a 5c 74 63 6c LLIBDIR = c:\tcl 4e60: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 \lib.!ENDIF..!IF 4e70: 4e 44 45 46 20 4c 49 42 54 43 4c 0a 4c 49 42 54 NDEF LIBTCL.LIBT 4e80: 43 4c 20 3d 20 74 63 6c 38 35 2e 6c 69 62 0a 21 CL = tcl85.lib.! 4e90: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c ENDIF..!IFNDEF L 4ea0: 49 42 54 43 4c 53 54 55 42 0a 4c 49 42 54 43 4c IBTCLSTUB.LIBTCL 4eb0: 53 54 55 42 20 3d 20 74 63 6c 73 74 75 62 38 35 STUB = tclstub85 4ec0: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 .lib.!ENDIF..!IF 4ed0: 4e 44 45 46 20 4c 49 42 54 43 4c 50 41 54 48 0a NDEF LIBTCLPATH. 4ee0: 4c 49 42 54 43 4c 50 41 54 48 20 3d 20 63 3a 5c LIBTCLPATH = c:\ 4ef0: 74 63 6c 5c 62 69 6e 0a 21 45 4e 44 49 46 0a 0a tcl\bin.!ENDIF.. 4f00: 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 # The locations 4f10: 6f 66 20 74 68 65 20 49 43 55 20 68 65 61 64 65 of the ICU heade 4f20: 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 69 r and library fi 4f30: 6c 65 73 2e 20 20 54 68 65 73 65 20 76 61 72 69 les. These vari 4f40: 61 62 6c 65 73 0a 23 20 28 49 43 55 49 4e 43 44 ables.# (ICUINCD 4f50: 49 52 2c 20 49 43 55 4c 49 42 44 49 52 2c 20 61 IR, ICULIBDIR, a 4f60: 6e 64 20 4c 49 42 49 43 55 29 20 6d 61 79 20 62 nd LIBICU) may b 4f70: 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 e overridden via 4f80: 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 the environment 4f90: 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e .# prior to runn 4fa0: 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 ing nmake in ord 4fb0: 65 72 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 er to match the 4fc0: 61 63 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 actual installed 4fd0: 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 0a 23 20 74 location on.# t 4fe0: 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 his machine..#.! 4ff0: 49 46 4e 44 45 46 20 49 43 55 49 4e 43 44 49 52 IFNDEF ICUINCDIR 5000: 0a 49 43 55 49 4e 43 44 49 52 20 3d 20 63 3a 5c .ICUINCDIR = c:\ 5010: 69 63 75 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 icu\include.!END 5020: 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 43 55 4c IF..!IFNDEF ICUL 5030: 49 42 44 49 52 0a 49 43 55 4c 49 42 44 49 52 20 IBDIR.ICULIBDIR 5040: 3d 20 63 3a 5c 69 63 75 5c 6c 69 62 0a 21 45 4e = c:\icu\lib.!EN 5050: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 DIF..!IFNDEF LIB 5060: 49 43 55 0a 4c 49 42 49 43 55 20 3d 20 69 63 75 ICU.LIBICU = icu 5070: 75 63 2e 6c 69 62 20 69 63 75 69 6e 2e 6c 69 62 uc.lib icuin.lib 5080: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 .!ENDIF..# This 5090: 69 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 is the command t 50a0: 6f 20 75 73 65 20 66 6f 72 20 74 63 6c 73 68 20 o use for tclsh 50b0: 2d 20 6e 6f 72 6d 61 6c 6c 79 20 6a 75 73 74 20 - normally just 50c0: 22 74 63 6c 73 68 22 2c 20 62 75 74 20 77 65 20 "tclsh", but we 50d0: 6d 61 79 0a 23 20 6b 6e 6f 77 20 74 68 65 20 73 may.# know the s 50e0: 70 65 63 69 66 69 63 20 76 65 72 73 69 6f 6e 20 pecific version 50f0: 77 65 20 77 61 6e 74 20 74 6f 20 75 73 65 2e 20 we want to use. 5100: 20 54 68 69 73 20 76 61 72 69 61 62 6c 65 20 28 This variable ( 5110: 54 43 4c 53 48 5f 43 4d 44 29 20 6d 61 79 20 62 TCLSH_CMD) may b 5120: 65 0a 23 20 6f 76 65 72 72 69 64 64 65 6e 20 76 e.# overridden v 5130: 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 ia the environme 5140: 6e 74 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e nt prior to runn 5150: 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 ing nmake in ord 5160: 65 72 20 74 6f 20 73 65 6c 65 63 74 20 61 0a 23 er to select a.# 5170: 20 73 70 65 63 69 66 69 63 20 54 63 6c 20 73 68 specific Tcl sh 5180: 65 6c 6c 20 74 6f 20 75 73 65 2e 0a 23 0a 21 49 ell to use..#.!I 5190: 46 4e 44 45 46 20 54 43 4c 53 48 5f 43 4d 44 0a FNDEF TCLSH_CMD. 51a0: 54 43 4c 53 48 5f 43 4d 44 20 3d 20 74 63 6c 73 TCLSH_CMD = tcls 51b0: 68 38 35 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f h85.!ENDIF.# <</ 51c0: 6d 61 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 70 69 6c mark>>..# Compil 51d0: 65 72 20 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 er options neede 51e0: 64 20 66 6f 72 20 70 72 6f 67 72 61 6d 73 20 74 d for programs t 51f0: 68 61 74 20 75 73 65 20 74 68 65 20 72 65 61 64 hat use the read 5200: 6c 69 6e 65 28 29 20 6c 69 62 72 61 72 79 2e 0a line() library.. 5210: 23 0a 21 49 46 4e 44 45 46 20 52 45 41 44 4c 49 #.!IFNDEF READLI 5220: 4e 45 5f 46 4c 41 47 53 0a 52 45 41 44 4c 49 4e NE_FLAGS.READLIN 5230: 45 5f 46 4c 41 47 53 20 3d 20 2d 44 48 41 56 45 E_FLAGS = -DHAVE 5240: 5f 52 45 41 44 4c 49 4e 45 3d 30 0a 21 45 4e 44 _READLINE=0.!END 5250: 49 46 0a 0a 23 20 54 68 65 20 6c 69 62 72 61 72 IF..# The librar 5260: 79 20 74 68 61 74 20 70 72 6f 67 72 61 6d 73 20 y that programs 5270: 75 73 69 6e 67 20 72 65 61 64 6c 69 6e 65 28 29 using readline() 5280: 20 6d 75 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e must link again 5290: 73 74 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4c 49 st..#.!IFNDEF LI 52a0: 42 52 45 41 44 4c 49 4e 45 0a 4c 49 42 52 45 41 BREADLINE.LIBREA 52b0: 44 4c 49 4e 45 20 3d 0a 21 45 4e 44 49 46 0a 0a DLINE =.!ENDIF.. 52c0: 23 20 53 68 6f 75 6c 64 20 74 68 65 20 64 61 74 # Should the dat 52d0: 61 62 61 73 65 20 65 6e 67 69 6e 65 20 62 65 20 abase engine be 52e0: 63 6f 6d 70 69 6c 65 64 20 74 68 72 65 61 64 73 compiled threads 52f0: 61 66 65 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 afe.#.TCC =$(TC
5300: 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45  C) -DSQLITE_THRE
5310: 41 44 53 41 46 45 3d 31 0a 52 43 43 20 3d 20 24  ADSAFE=1.RCC = $5320: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 (RCC) -DSQLITE_T 5330: 48 52 45 41 44 53 41 46 45 3d 31 0a 0a 23 20 44 HREADSAFE=1..# D 5340: 6f 20 74 68 72 65 61 64 73 20 6f 76 65 72 72 69 o threads overri 5350: 64 65 20 65 61 63 68 20 6f 74 68 65 72 73 20 6c de each others l 5360: 6f 63 6b 73 20 62 79 20 64 65 66 61 75 6c 74 20 ocks by default 5370: 28 31 29 2c 20 6f 72 20 64 6f 20 77 65 20 74 65 (1), or do we te 5380: 73 74 20 28 2d 31 29 0a 23 0a 54 43 43 20 3d 20 st (-1).#.TCC = 5390: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
53a0: 54 48 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f  THREAD_OVERRIDE_
53b0: 4c 4f 43 4b 3d 2d 31 0a 52 43 43 20 3d 20 24 28  LOCK=-1.RCC = $( 53c0: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 RCC) -DSQLITE_TH 53d0: 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f READ_OVERRIDE_LO 53e0: 43 4b 3d 2d 31 0a 0a 23 20 41 6e 79 20 74 61 72 CK=-1..# Any tar 53f0: 67 65 74 20 6c 69 62 72 61 72 69 65 73 20 77 68 get libraries wh 5400: 69 63 68 20 6c 69 62 73 71 6c 69 74 65 20 6d 75 ich libsqlite mu 5410: 73 74 20 62 65 20 6c 69 6e 6b 65 64 20 61 67 61 st be linked aga 5420: 69 6e 73 74 0a 23 0a 21 49 46 4e 44 45 46 20 54 inst.#.!IFNDEF T 5430: 4c 49 42 53 0a 54 4c 49 42 53 20 3d 0a 21 45 4e LIBS.TLIBS =.!EN 5440: 44 49 46 0a 0a 23 20 46 6c 61 67 73 20 63 6f 6e DIF..# Flags con 5450: 74 72 6f 6c 6c 69 6e 67 20 75 73 65 20 6f 66 20 trolling use of 5460: 74 68 65 20 69 6e 20 6d 65 6d 6f 72 79 20 62 74 the in memory bt 5470: 72 65 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 ree implementati 5480: 6f 6e 0a 23 0a 23 20 53 51 4c 49 54 45 5f 54 45 on.#.# SQLITE_TE 5490: 4d 50 5f 53 54 4f 52 45 20 69 73 20 30 20 74 6f MP_STORE is 0 to 54a0: 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 79 force temporary 54b0: 20 74 61 62 6c 65 73 20 74 6f 20 62 65 20 69 6e tables to be in 54c0: 20 61 20 66 69 6c 65 2c 20 31 20 74 6f 0a 23 20 a file, 1 to.# 54d0: 64 65 66 61 75 6c 74 20 74 6f 20 66 69 6c 65 2c default to file, 54e0: 20 32 20 74 6f 20 64 65 66 61 75 6c 74 20 74 6f 2 to default to 54f0: 20 6d 65 6d 6f 72 79 2c 20 61 6e 64 20 33 20 74 memory, and 3 t 5500: 6f 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 o force temporar 5510: 79 0a 23 20 74 61 62 6c 65 73 20 74 6f 20 61 6c y.# tables to al 5520: 77 61 79 73 20 62 65 20 69 6e 20 6d 65 6d 6f 72 ways be in memor 5530: 79 2e 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 y..#.TCC =$(TCC
5540: 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f  ) -DSQLITE_TEMP_
5550: 53 54 4f 52 45 3d 31 0a 52 43 43 20 3d 20 24 28  STORE=1.RCC = $( 5560: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 RCC) -DSQLITE_TE 5570: 4d 50 5f 53 54 4f 52 45 3d 31 0a 0a 23 20 45 6e MP_STORE=1..# En 5580: 61 62 6c 65 2f 64 69 73 61 62 6c 65 20 6c 6f 61 able/disable loa 5590: 64 61 62 6c 65 20 65 78 74 65 6e 73 69 6f 6e 73 dable extensions 55a0: 2c 20 61 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 , and other opti 55b0: 6f 6e 61 6c 20 66 65 61 74 75 72 65 73 0a 23 20 onal features.# 55c0: 62 61 73 65 64 20 6f 6e 20 63 6f 6e 66 69 67 75 based on configu 55d0: 72 61 74 69 6f 6e 2e 20 28 2d 44 53 51 4c 49 54 ration. (-DSQLIT 55e0: 45 5f 4f 4d 49 54 2a 2c 20 2d 44 53 51 4c 49 54 E_OMIT*, -DSQLIT 55f0: 45 5f 45 4e 41 42 4c 45 2a 29 2e 0a 23 20 54 68 E_ENABLE*)..# Th 5600: 65 20 73 61 6d 65 20 73 65 74 20 6f 66 20 4f 4d e same set of OM 5610: 49 54 20 61 6e 64 20 45 4e 41 42 4c 45 20 66 6c IT and ENABLE fl 5620: 61 67 73 20 73 68 6f 75 6c 64 20 62 65 20 70 61 ags should be pa 5630: 73 73 65 64 20 74 6f 20 74 68 65 0a 23 20 4c 45 ssed to the.# LE 5640: 4d 4f 4e 20 70 61 72 73 65 72 20 67 65 6e 65 72 MON parser gener 5650: 61 74 6f 72 20 61 6e 64 20 74 68 65 20 6d 6b 6b ator and the mkk 5660: 65 79 77 6f 72 64 68 61 73 68 20 74 6f 6f 6c 20 eywordhash tool 5670: 61 73 20 77 65 6c 6c 2e 0a 0a 23 20 54 68 65 73 as well...# Thes 5680: 65 20 61 72 65 20 74 68 65 20 72 65 71 75 69 72 e are the requir 5690: 65 64 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c ed SQLite compil 56a0: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 ation options us 56b0: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e ed when compilin 56c0: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 g for.# the Wind 56d0: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a ows platform..#. 56e0: 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 REQ_FEATURE_FLAG 56f0: 53 20 3d 20 24 28 52 45 51 5f 46 45 41 54 55 52 S =$(REQ_FEATUR
5700: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
5710: 45 5f 4d 41 58 5f 54 52 49 47 47 45 52 5f 44 45  E_MAX_TRIGGER_DE
5720: 50 54 48 3d 31 30 30 0a 0a 23 20 49 66 20 77 65  PTH=100..# If we
5730: 20 61 72 65 20 6c 69 6e 6b 69 6e 67 20 74 6f 20   are linking to
5740: 74 68 65 20 52 50 43 52 54 34 20 6c 69 62 72 61  the RPCRT4 libra
5750: 72 79 2c 20 65 6e 61 62 6c 65 20 66 65 61 74 75  ry, enable featu
5760: 72 65 73 20 74 68 61 74 20 6e 65 65 64 20 69 74  res that need it
5770: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 52 50  ..#.!IF $(USE_RP 5780: 43 52 54 34 5f 4c 49 42 29 21 3d 30 0a 52 45 51 CRT4_LIB)!=0.REQ 5790: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 57a0: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46$(REQ_FEATURE_F
57b0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 57  LAGS) -DSQLITE_W
57c0: 49 4e 33 32 5f 55 53 45 5f 55 55 49 44 3d 31 0a  IN32_USE_UUID=1.
57d0: 21 45 4e 44 49 46 0a 0a 23 20 41 64 64 20 74 68  !ENDIF..# Add th
57e0: 65 20 72 65 71 75 69 72 65 64 20 61 6e 64 20 6f  e required and o
57f0: 70 74 69 6f 6e 61 6c 20 53 51 4c 69 74 65 20 63  ptional SQLite c
5800: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
5810: 6e 73 20 69 6e 74 6f 20 74 68 65 20 63 6f 6d 6d  ns into the comm
5820: 61 6e 64 0a 23 20 6c 69 6e 65 73 20 75 73 65 64  and.# lines used
5830: 20 74 6f 20 69 6e 76 6f 6b 65 20 74 68 65 20 4d   to invoke the M
5840: 53 56 43 20 63 6f 64 65 20 61 6e 64 20 72 65 73  SVC code and res
5850: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 65 72 73 2e  ource compilers.
5860: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 5870: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c$(REQ_FEATURE_FL
5880: 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55  AGS) $(OPT_FEATU 5890: 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 5f RE_FLAGS)$(EXT_
58a0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a 52  FEATURE_FLAGS).R
58b0: 43 43 20 3d 20 24 28 52 43 43 29 20 24 28 52 45  CC = $(RCC)$(RE
58c0: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
58d0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F 58e0: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
58f0: 55 52 45 5f 46 4c 41 47 53 29 0a 0a 23 20 41 64  URE_FLAGS)..# Ad
5900: 64 20 69 6e 20 61 6e 79 20 6f 70 74 69 6f 6e 61  d in any optiona
5910: 6c 20 70 61 72 61 6d 65 74 65 72 73 20 73 70 65  l parameters spe
5920: 63 69 66 69 65 64 20 6f 6e 20 74 68 65 20 63 6f  cified on the co
5930: 6d 6d 61 6e 65 20 6c 69 6e 65 2c 20 65 2e 67 2e  mmane line, e.g.
5940: 0a 23 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65  .# nmake /f Make
5950: 66 69 6c 65 2e 6d 73 63 20 61 6c 6c 20 22 4f 50  file.msc all "OP
5960: 54 53 3d 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  TS=-DSQLITE_ENAB
5970: 4c 45 5f 46 4f 4f 3d 31 20 2d 44 53 51 4c 49 54  LE_FOO=1 -DSQLIT
5980: 45 5f 4f 4d 49 54 5f 46 4f 4f 3d 31 22 0a 23 0a  E_OMIT_FOO=1".#.
5990: 54 43 43 20 3d 20 24 28 54 43 43 29 20 24 28 4f  TCC = $(TCC)$(O
59a0: 50 54 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43  PTS).RCC = $(RCC 59b0: 29 20 24 28 4f 50 54 53 29 0a 0a 23 20 49 66 20 )$(OPTS)..# If
59c0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 64 65  compiling for de
59d0: 62 75 67 67 69 6e 67 2c 20 61 64 64 20 73 6f 6d  bugging, add som
59e0: 65 20 64 65 66 69 6e 65 73 2e 0a 23 0a 21 49 46  e defines..#.!IF
59f0: 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 20   $(DEBUG)>1.TCC 5a00: 3d 20 24 28 54 43 43 29 20 2d 44 5f 44 45 42 55 =$(TCC) -D_DEBU
5a10: 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  G.BCC = $(BCC) - 5a20: 44 5f 44 45 42 55 47 0a 52 43 43 20 3d 20 24 28 D_DEBUG.RCC =$(
5a30: 52 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 21 45  RCC) -D_DEBUG.!E
5a40: 4e 44 49 46 0a 0a 23 20 49 66 20 6f 70 74 69 6d  NDIF..# If optim
5a50: 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 65 6e 61  izations are ena
5a60: 62 6c 65 64 20 6f 72 20 64 69 73 61 62 6c 65 64  bled or disabled
5a70: 20 28 65 69 74 68 65 72 20 69 6d 70 6c 69 63 69   (either implici
5a80: 74 6c 79 20 6f 72 0a 23 20 65 78 70 6c 69 63 69  tly or.# explici
5a90: 74 6c 79 29 2c 20 61 64 64 20 74 68 65 20 6e 65  tly), add the ne
5aa0: 63 65 73 73 61 72 79 20 66 6c 61 67 73 2e 0a 23  cessary flags..#
5ab0: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20  .!IF $(DEBUG)>1 5ac0: 7c 7c 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f ||$(OPTIMIZATIO
5ad0: 4e 53 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54  NS)==0.TCC = $(T 5ae0: 43 43 29 20 2d 4f 64 0a 42 43 43 20 3d 20 24 28 CC) -Od.BCC =$(
5af0: 42 43 43 29 20 2d 4f 64 0a 21 45 4c 53 45 49 46  BCC) -Od.!ELSEIF
5b00: 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53   $(OPTIMIZATIONS 5b10: 29 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54 43 43 )>=3.TCC =$(TCC
5b20: 29 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 42 43  ) -Ox.BCC = $(BC 5b30: 43 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46 20 24 C) -Ox.!ELSEIF$
5b40: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d  (OPTIMIZATIONS)=
5b50: 3d 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =2.TCC = $(TCC) 5b60: 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 29 -O2.BCC =$(BCC)
5b70: 20 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 28 4f   -O2.!ELSEIF $(O 5b80: 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 31 PTIMIZATIONS)==1 5b90: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f .TCC =$(TCC) -O
5ba0: 31 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  1.BCC = $(BCC) - 5bb0: 4f 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 O1.!ENDIF..# If 5bc0: 73 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 symbols are enab 5bd0: 6c 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c 69 6e led (or compilin 5be0: 67 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 29 g for debugging) 5bf0: 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 , enable PDBs..# 5c00: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 .!IF$(DEBUG)>1
5c10: 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30  || $(SYMBOLS)!=0 5c20: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 5a .TCC =$(TCC) -Z
5c30: 69 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  i.BCC = $(BCC) - 5c40: 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d Zi.!ENDIF..# <<m 5c50: 61 72 6b 3e 3e 0a 23 20 49 66 20 49 43 55 20 73 ark>>.# If ICU s 5c60: 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 upport is enable 5c70: 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70 69 d, add the compi 5c80: 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 ler options for 5c90: 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f it..#.!IF$(USE_
5ca0: 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28  ICU)!=0.TCC = $( 5cb0: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 5cc0: 41 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43 20 3d ABLE_ICU=1.RCC = 5cd0: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
5ce0: 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43  _ENABLE_ICU=1.TC
5cf0: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54  C = $(TCC) -I$(T
5d00: 4f 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 43 20  OP)\ext\icu.RCC
5d10: 3d 20 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50  = $(RCC) -I$(TOP
5d20: 29 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20  )\ext\icu.TCC =
5d30: 24 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e  $(TCC) -I$(ICUIN
5d40: 43 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43  CDIR).RCC = $(RC 5d50: 43 29 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 C) -I$(ICUINCDIR
5d60: 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  ).!ENDIF.# <</ma
5d70: 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20  rk>>..# Command
5d80: 6c 69 6e 65 20 70 72 65 66 69 78 65 73 20 66 6f  line prefixes fo
5d90: 72 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65  r compiling code
5da0: 2c 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 73 6f  , compiling reso
5db0: 75 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67  urces,.# linking
5dc0: 2c 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49  , etc..#.LTCOMPI
5dd0: 4c 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24  LE = $(TCC) -Fo$
5de0: 40 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d 20 24  @.LTRCOMPILE = $5df0: 28 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42 20 3d (RCC) -r.LTLIB = 5e00: 20 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 lib.exe.LTLINK 5e10: 3d 20 24 28 54 43 43 29 20 2d 46 65 24 40 0a 0a =$(TCC) -Fe$@.. 5e20: 23 20 49 66 20 72 65 71 75 65 73 74 65 64 2c 20 # If requested, 5e30: 6c 69 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 link to the RPCR 5e40: 54 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 T4 library..#.!I 5e50: 46 20 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c F$(USE_RPCRT4_L
5e60: 49 42 29 21 3d 30 0a 4c 54 4c 49 4e 4b 20 3d 20  IB)!=0.LTLINK =
5e70: 24 28 4c 54 4c 49 4e 4b 29 20 72 70 63 72 74 34  $(LTLINK) rpcrt4 5e80: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 49 .lib.!ENDIF..# I 5e90: 66 20 61 20 70 6c 61 74 66 6f 72 6d 20 77 61 73 f a platform was 5ea0: 20 73 65 74 2c 20 66 6f 72 63 65 20 74 68 65 20 set, force the 5eb0: 6c 69 6e 6b 65 72 20 74 6f 20 74 61 72 67 65 74 linker to target 5ec0: 20 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20 74 68 that..# Note th 5ed0: 61 74 20 74 68 65 20 76 63 76 61 72 73 2a 2e 62 at the vcvars*.b 5ee0: 61 74 20 66 61 6d 69 6c 79 20 6f 66 20 62 61 74 at family of bat 5ef0: 63 68 20 66 69 6c 65 73 20 74 79 70 69 63 61 6c ch files typical 5f00: 6c 79 0a 23 20 73 65 74 20 74 68 69 73 20 66 6f ly.# set this fo 5f10: 72 20 79 6f 75 2e 20 20 4f 74 68 65 72 77 69 73 r you. Otherwis 5f20: 65 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20 77 69 e, the linker wi 5f30: 6c 6c 20 61 74 74 65 6d 70 74 0a 23 20 74 6f 20 ll attempt.# to 5f40: 64 65 64 75 63 65 20 74 68 65 20 62 69 6e 61 72 deduce the binar 5f50: 79 20 74 79 70 65 20 62 61 73 65 64 20 6f 6e 20 y type based on 5f60: 74 68 65 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 the object files 5f70: 2e 0a 21 49 46 44 45 46 20 50 4c 41 54 46 4f 52 ..!IFDEF PLATFOR 5f80: 4d 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f M.LTLINKOPTS = / 5f90: 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a NOLOGO /MACHINE: 5fa0: 24 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49$(PLATFORM).LTLI
5fb0: 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 20  BOPTS = /NOLOGO
5fc0: 2f 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 46  /MACHINE:$(PLATF 5fd0: 4f 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e ORM).!ELSE.LTLIN 5fe0: 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a KOPTS = /NOLOGO. 5ff0: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c LTLIBOPTS = /NOL 6000: 4f 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 OGO.!ENDIF..# Wh 6010: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 6020: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52 use in the WinR 6030: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 T environment, t 6040: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c he following.# l 6050: 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 inker option mus 6060: 74 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 72 t be used to mar 6070: 6b 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 k the executable 6080: 20 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f as runnable.# o 6090: 6e 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 nly in the conte 60a0: 78 74 20 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 xt of an applica 60b0: 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a tion container.. 60c0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 #.!IF$(FOR_WINR
60d0: 54 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53  T)!=0.LTLINKOPTS
60e0: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS) 60f0: 20 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 /APPCONTAINER.! 6100: 49 46 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 IF "$(VISUALSTUD
6110: 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32  IOVERSION)"=="12
6120: 2e 30 22 20 7c 7c 20 22 24 28 56 49 53 55 41 4c  .0" || "$(VISUAL 6130: 53 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d STUDIOVERSION)"= 6140: 3d 22 31 34 2e 30 22 0a 21 49 46 4e 44 45 46 20 ="14.0".!IFNDEF 6150: 53 54 4f 52 45 4c 49 42 50 41 54 48 0a 21 49 46 STORELIBPATH.!IF 6160: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
6170: 22 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x86".STORELIBPA
6180: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 6190: 48 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45 49 46 H)\store.!ELSEIF 61a0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
61b0: 22 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x64".STORELIBPA
61c0: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 61d0: 48 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34 0a 21 H)\store\amd64.! 61e0: 45 4c 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f ELSEIF "$(PLATFO
61f0: 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 4f 52  RM)"=="ARM".STOR
6200: 45 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54  ELIBPATH = $(CRT 6210: 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 LIBPATH)\store\a 6220: 72 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45 4c 49 rm.!ELSE.STORELI 6230: 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 BPATH =$(CRTLIB
6240: 50 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4e 44  PATH)\store.!END
6250: 49 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 45 4c  IF.!ENDIF.STOREL
6260: 49 42 50 41 54 48 20 3d 20 24 28 53 54 4f 52 45  IBPATH = $(STORE 6270: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4c 54 LIBPATH:\\=\).LT 6280: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c LINKOPTS =$(LTL
6290: 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 50 41  INKOPTS) "/LIBPA
62a0: 54 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 41 54  TH:$(STORELIBPAT 62b0: 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 H)".!ENDIF.!ENDI 62c0: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 62d0: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 62e0: 50 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20 65 78 Phone 8.1, an ex 62f0: 74 72 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 tra library path 6300: 20 69 73 0a 23 20 72 65 71 75 69 72 65 64 2e 0a is.# required.. 6310: 23 0a 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 #.!IF$(USE_WP81
6320: 5f 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 44 45  _OPTS)!=0.!IFNDE
6330: 46 20 57 50 38 31 4c 49 42 50 41 54 48 0a 21 49  F WP81LIBPATH.!I
6340: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  F "$(PLATFORM)"= 6350: 3d 22 78 38 36 22 0a 57 50 38 31 4c 49 42 50 41 ="x86".WP81LIBPA 6360: 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 TH =$(PROGRAMFI
6370: 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73  LES_X86)\Windows
6380: 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c   Phone Kits\8.1\
6390: 6c 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 46 20  lib\x86.!ELSEIF
63a0: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"==" 63b0: 41 52 4d 22 0a 57 50 38 31 4c 49 42 50 41 54 48 ARM".WP81LIBPATH 63c0: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 =$(PROGRAMFILE
63d0: 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50  S_X86)\Windows P
63e0: 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69  hone Kits\8.1\li
63f0: 62 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 38 31  b\ARM.!ELSE.WP81
6400: 4c 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47  LIBPATH = $(PROG 6410: 52 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 RAMFILES_X86)\Wi 6420: 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 ndows Phone Kits 6430: 5c 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4e \8.1\lib\x86.!EN 6440: 44 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 DIF.!ENDIF.!ENDI 6450: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 6460: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 6470: 50 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d 65 20 Phone 8.1, some 6480: 65 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 extra linker opt 6490: 69 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73 6f 20 ions.# are also 64a0: 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 required..#.!IF 64b0: 24 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29$(USE_WP81_OPTS)
64c0: 21 3d 30 0a 21 49 46 44 45 46 20 57 50 38 31 4c  !=0.!IFDEF WP81L
64d0: 49 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54  IBPATH.LTLINKOPT
64e0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 64f0: 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 57 50 ) "/LIBPATH:$(WP
6500: 38 31 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44  81LIBPATH)".!END
6510: 49 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  IF.LTLINKOPTS =
6520: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44  $(LTLINKOPTS) /D 6530: 59 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c 49 4e YNAMICBASE.LTLIN 6540: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
6550: 4f 50 54 53 29 20 57 69 6e 64 6f 77 73 50 68 6f  OPTS) WindowsPho
6560: 6e 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e 74 69  neCore.lib Runti
6570: 6d 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 68 6f  meObject.lib Pho
6580: 6e 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 2e 6c  neAppModelHost.l
6590: 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  ib.LTLINKOPTS =
65a0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e  $(LTLINKOPTS) /N 65b0: 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e ODEFAULTLIB:kern 65c0: 65 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45 46 41 el32.lib /NODEFA 65d0: 55 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c 69 62 ULTLIB:ole32.lib 65e0: 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 .!ENDIF..# When 65f0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 55 57 compiling for UW 6600: 50 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 P or the Windows 6610: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 73 6f 10 platform, so 6620: 6d 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 0a me extra linker. 6630: 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 6c # options are al 6640: 73 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 so required..#.! 6650: 49 46 20 24 28 46 4f 52 5f 55 57 50 29 21 3d 30 IF$(FOR_UWP)!=0
6660: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 6670: 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d !=0.LTLINKOPTS = 6680: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f$(LTLINKOPTS) /
6690: 44 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e 4f 44  DYNAMICBASE /NOD
66a0: 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c  EFAULTLIB:kernel
66b0: 33 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54  32.lib.LTLINKOPT
66c0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 66d0: 29 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a 21 49 ) mincore.lib.!I 66e0: 46 44 45 46 20 50 53 44 4b 4c 49 42 50 41 54 48 FDEF PSDKLIBPATH 66f0: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 .LTLINKOPTS =$(
6700: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49  LTLINKOPTS) "/LI
6710: 42 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 42 50  BPATH:$(PSDKLIBP 6720: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e ATH)".!ENDIF.!EN 6730: 44 49 46 0a 0a 21 49 46 20 24 28 46 4f 52 5f 57 DIF..!IF$(FOR_W
6740: 49 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f  IN10)!=0.LTLINKO
6750: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 6760: 54 53 29 20 2f 67 75 61 72 64 3a 63 66 20 22 2f TS) /guard:cf "/ 6770: 4c 49 42 50 41 54 48 3a 24 28 55 43 52 54 4c 49 LIBPATH:$(UCRTLI
6780: 42 50 41 54 48 29 22 0a 21 49 46 20 24 28 44 45  BPATH)".!IF $(DE 6790: 42 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f 50 54 BUG)>1.LTLINKOPT 67a0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 S =$(LTLINKOPTS
67b0: 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a  ) /NODEFAULTLIB:
67c0: 6c 69 62 75 63 72 74 64 2e 6c 69 62 20 2f 44 45  libucrtd.lib /DE
67d0: 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 2e 6c  FAULTLIB:ucrtd.l
67e0: 69 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f  ib.!ELSE.LTLINKO
67f0: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 6800: 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 TS) /NODEFAULTLI 6810: 42 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20 2f 44 B:libucrt.lib /D 6820: 45 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 2e 6c EFAULTLIB:ucrt.l 6830: 69 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 ib.!ENDIF.!ENDIF 6840: 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 ..# If either de 6850: 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f bugging or symbo 6860: 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 ls are enabled, 6870: 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 enable PDBs..#.! 6880: 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c IF$(DEBUG)>1 ||
6890: 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c   $(SYMBOLS)!=0.L 68a0: 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 20 DFLAGS = /DEBUG 68b0: 24 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53 45 0a$(LDOPTS).!ELSE.
68c0: 4c 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 4f 50  LDFLAGS = $(LDOP 68d0: 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c TS).!ENDIF..# << 68e0: 6d 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74 20 77 mark>>.# Start w 68f0: 69 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c 61 ith the Tcl rela 6900: 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f ted linker optio 6910: 6e 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 ns..#.!IF$(NO_T
6920: 43 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54 48  CL)==0.LTLIBPATH
6930: 53 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28 54  S = /LIBPATH:$(T 6940: 43 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 CLLIBDIR).LTLIBS 6950: 20 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e =$(LIBTCL).!EN
6960: 44 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75  DIF..# If ICU su
6970: 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64  pport is enabled
6980: 2c 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72  , add the linker
6990: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e   options for it.
69a0: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55  .#.!IF $(USE_ICU 69b0: 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 )!=0.LTLIBPATHS 69c0: 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 =$(LTLIBPATHS)
69d0: 2f 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49  /LIBPATH:$(ICULI 69e0: 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 BDIR).LTLIBS =$
69f0: 28 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43  (LTLIBS) $(LIBIC 6a00: 55 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d U).!ENDIF.# <</m 6a10: 61 72 6b 3e 3e 0a 0a 23 20 59 6f 75 20 73 68 6f ark>>..# You sho 6a20: 75 6c 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 uld not have to 6a30: 63 68 61 6e 67 65 20 61 6e 79 74 68 69 6e 67 20 change anything 6a40: 62 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 0a below this line. 6a50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a ###############. 6aa0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62 .# <<mark>>.# Ob 6ab0: 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 ject files for t 6ac0: 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 he SQLite librar 6ad0: 79 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 y (non-amalgamat 6ae0: 69 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 ion)..#.LIBOBJS0 6af0: 20 3d 20 76 64 62 65 2e 6c 6f 20 70 61 72 73 65 = vdbe.lo parse 6b00: 2e 6c 6f 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 .lo alter.lo ana 6b10: 6c 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c lyze.lo attach.l 6b20: 6f 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 o auth.lo \. 6b30: 20 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62 backup.lo b 6b40: 69 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78 itvec.lo btmutex 6b50: 2e 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69 .lo btree.lo bui 6b60: 6c 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 ld.lo \. 6b70: 20 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d callback.lo com 6b80: 70 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c plete.lo ctime.l 6b90: 6f 20 64 61 74 65 2e 6c 6f 20 64 62 73 74 61 74 o date.lo dbstat 6ba0: 2e 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a .lo delete.lo \. 6bb0: 20 20 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f expr.lo 6bc0: 20 66 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c fault.lo fkey.l 6bd0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 o \. fts 6be0: 33 2e 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 3.lo fts3_aux.lo 6bf0: 20 66 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 fts3_expr.lo ft 6c00: 73 33 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f s3_hash.lo fts3_ 6c10: 69 63 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 icu.lo \. 6c20: 20 20 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f fts3_porter.lo 6c30: 20 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f fts3_snippet.lo 6c40: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e fts3_tokenizer. 6c50: 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 lo fts3_tokenize 6c60: 72 31 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 r1.lo \. 6c70: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 fts3_tokenize_v 6c80: 74 61 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 tab.lo fts3_unic 6c90: 6f 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 ode.lo fts3_unic 6ca0: 6f 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 ode2.lo fts3_wri 6cb0: 74 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 te.lo \. 6cc0: 20 66 74 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 fts5.lo \. 6cd0: 20 20 20 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 func.lo glob 6ce0: 61 6c 2e 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a al.lo hash.lo \. 6cf0: 20 20 20 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 icu.lo 6d00: 69 6e 73 65 72 74 2e 6c 6f 20 6c 65 67 61 63 79 insert.lo legacy 6d10: 2e 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c .lo loadext.lo \ 6d20: 0a 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c . main.l 6d30: 6f 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 o malloc.lo mem0 6d40: 2e 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 .lo mem1.lo mem2 6d50: 2e 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 .lo mem3.lo mem5 6d60: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d .lo \. m 6d70: 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20 emjournal.lo \. 6d80: 20 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f mutex.lo 6d90: 20 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d mutex_noop.lo m 6da0: 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74 utex_unix.lo mut 6db0: 65 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20 ex_w32.lo \. 6dc0: 20 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f notify.lo o 6dd0: 70 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20 pcodes.lo os.lo 6de0: 6f 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69 os_unix.lo os_wi 6df0: 6e 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 n.lo \. 6e00: 70 61 67 65 72 2e 6c 6f 20 70 63 61 63 68 65 2e pager.lo pcache. 6e10: 6c 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 lo pcache1.lo pr 6e20: 61 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e agma.lo prepare. 6e30: 6c 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 lo printf.lo \. 6e40: 20 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c random.l 6e50: 6f 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 o resolve.lo row 6e60: 73 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 set.lo rtree.lo 6e70: 5c 0a 20 20 20 20 20 20 20 20 20 73 71 6c 69 74 \. sqlit 6e80: 65 33 73 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 6c e3session.lo sel 6e90: 65 63 74 2e 6c 6f 20 73 71 6c 69 74 65 33 72 62 ect.lo sqlite3rb 6ea0: 75 2e 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c u.lo status.lo \ 6eb0: 0a 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e . table. 6ec0: 6c 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f lo threads.lo to 6ed0: 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 kenize.lo treevi 6ee0: 65 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f ew.lo trigger.lo 6ef0: 20 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 \. upda 6f00: 74 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 te.lo util.lo va 6f10: 63 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 cuum.lo \. 6f20: 20 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 vdbeapi.lo vd 6f30: 62 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f beaux.lo vdbeblo 6f40: 62 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 b.lo vdbemem.lo 6f50: 76 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 vdbesort.lo \. 6f60: 20 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 vdbetrace 6f70: 2e 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 .lo wal.lo walke 6f80: 72 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 r.lo where.lo wh 6f90: 65 72 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 erecode.lo where 6fa0: 65 78 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 expr.lo \. 6fb0: 20 20 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c utf.lo vtab.l 6fc0: 6f 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 o.# <</mark>>..# 6fd0: 20 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f Object files fo 6fe0: 72 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 r the amalgamati 6ff0: 6f 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d on..#.LIBOBJS1 = 7000: 20 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 sqlite3.lo..# D 7010: 65 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 etermine the rea 7020: 6c 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 l value of LIBOB 7030: 4a 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 J based on the ' 7040: 63 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 configure' scrip 7050: 74 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 t.#.# <<mark>>.! 7060: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d IF$(USE_AMALGAM
7070: 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a  ATION)==0.LIBOBJ
7080: 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21   = $(LIBOBJS0).! 7090: 45 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e ELSE.# <</mark>> 70a0: 0a 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f .LIBOBJ =$(LIBO
70b0: 42 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  BJS1).# <<mark>>
70c0: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
70d0: 6b 3e 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65  k>>..# Determine
70e0: 20 69 66 20 65 6d 62 65 64 64 65 64 20 72 65 73   if embedded res
70f0: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f  ource compilatio
7100: 6e 20 61 6e 64 20 75 73 61 67 65 20 61 72 65 20  n and usage are
7110: 65 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24  enabled..#.!IF $7120: 28 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 (USE_RC)!=0.LIBR 7130: 45 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 ESOBJS = sqlite3 7140: 72 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 res.lo.!ELSE.LIB 7150: 52 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 RESOBJS =.!ENDIF 7160: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 ..# <<mark>>.# C 7170: 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 ore source code 7180: 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 files, part 1..# 7190: 0a 53 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 .SRC00 = \.$(T
71a0: 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20  OP)\src\alter.c
71b0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61  \.  $(TOP)\src\a 71c0: 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 nalyze.c \.$(T
71d0: 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63  OP)\src\attach.c
71e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 71f0: 61 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 auth.c \.$(TOP
7200: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c  )\src\backup.c \
7210: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  .  $(TOP)\src\bi 7220: 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 tvec.c \.$(TOP
7230: 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 20  )\src\btmutex.c
7240: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62  \.  $(TOP)\src\b 7250: 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 tree.c \.$(TOP
7260: 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a  )\src\build.c \.
7270: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c    $(TOP)\src\cal 7280: 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f lback.c \.$(TO
7290: 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e  P)\src\complete.
72a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 72b0: 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 \ctime.c \.$(T
72c0: 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c  OP)\src\date.c \
72d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 62  .  $(TOP)\src\db 72e0: 73 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 stat.c \.$(TOP
72f0: 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c  )\src\delete.c \
7300: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78  .  $(TOP)\src\ex 7310: 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c pr.c \.$(TOP)\
7320: 73 72 63 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20  src\fault.c \.
7330: 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e  $(TOP)\src\fkey. 7340: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7350: 5c 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f  \func.c \.  $(TO 7360: 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 P)\src\global.c 7370: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 \.$(TOP)\src\h
7380: 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ash.c \.  $(TOP) 7390: 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 5c 0a \src\insert.c \. 73a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67$(TOP)\src\leg
73b0: 61 63 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  acy.c \.  $(TOP) 73c0: 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 5c \src\loadext.c \ 73d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 .$(TOP)\src\ma
73e0: 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  in.c \.  $(TOP)\ 73f0: 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 src\malloc.c \. 7400: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30$(TOP)\src\mem0
7410: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7420: 63 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20 24 28 54 c\mem1.c \.$(T
7430: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 5c  OP)\src\mem2.c \
7440: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  .  $(TOP)\src\me 7450: 6d 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c m3.c \.$(TOP)\
7460: 73 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a 20 20 24  src\mem5.c \.  $7470: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 (TOP)\src\memjou 7480: 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 rnal.c \.$(TOP
7490: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 5c 0a  )\src\mutex.c \.
74a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74    $(TOP)\src\mut 74b0: 65 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 ex_noop.c \.$(
74c0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75  TOP)\src\mutex_u
74d0: 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nix.c \.  $(TOP) 74e0: 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 \src\mutex_w32.c 74f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7500: 6e 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 28 54  notify.c \.  $(T 7510: 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 OP)\src\os.c \. 7520: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75$(TOP)\src\os_u
7530: 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nix.c \.  $(TOP) 7540: 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 23 \src\os_win.c..# 7550: 20 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 Core source cod 7560: 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e e files, part 2. 7570: 0a 23 0a 53 52 43 30 31 20 3d 20 5c 0a 20 20 24 .#.SRC01 = \.$
7580: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e  (TOP)\src\pager.
7590: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 75a0: 5c 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 \pcache.c \.$(
75b0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31  TOP)\src\pcache1
75c0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 75d0: 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 c\pragma.c \.$
75e0: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
75f0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 7600: 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 rc\printf.c \. 7610: 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f$(TOP)\src\rando
7620: 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  m.c \.  $(TOP)\s 7630: 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20 rc\resolve.c \. 7640: 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73$(TOP)\src\rows
7650: 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  et.c \.  $(TOP)\ 7660: 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 src\select.c \. 7670: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74$(TOP)\src\stat
7680: 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  us.c \.  $(TOP)\ 7690: 73 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a 20 20 src\table.c \. 76a0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61$(TOP)\src\threa
76b0: 64 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ds.c \.  $(TOP)\ 76c0: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c 76d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
76e0: 6f 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28  okenize.c \.  $( 76f0: 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 TOP)\src\treevie 7700: 77 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 w.c \.$(TOP)\s
7710: 72 63 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20  rc\trigger.c \.
7720: 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e   $(TOP)\src\utf. 7730: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7740: 5c 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28  \update.c \.  $( 7750: 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 TOP)\src\util.c 7760: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
7770: 61 63 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f  acuum.c \.  $(TO 7780: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a P)\src\vdbe.c \. 7790: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62$(TOP)\src\vdb
77a0: 65 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50  eapi.c \.  $(TOP 77b0: 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 )\src\vdbeaux.c 77c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
77d0: 64 62 65 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28  dbeblob.c \.  $( 77e0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d TOP)\src\vdbemem 77f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7800: 63 5c 76 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20  c\vdbesort.c \.
7810: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe 7820: 74 72 61 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f trace.c \.$(TO
7830: 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a  P)\src\vtab.c \.
7840: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c    $(TOP)\src\wal 7850: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7860: 63 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20 20 24  c\walker.c \.  $7870: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. 7880: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7890: 5c 77 68 65 72 65 63 6f 64 65 2e 63 20 5c 0a 20  \wherecode.c \.
78a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher 78b0: 65 65 78 70 72 2e 63 0a 0a 23 20 53 68 65 6c 6c eexpr.c..# Shell 78c0: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c source code fil 78d0: 65 73 2e 0a 23 0a 53 52 43 30 32 20 3d 20 5c 0a es..#.SRC02 = \. 78e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65$(TOP)\src\she
78f0: 6c 6c 2e 63 0a 0a 23 20 43 6f 72 65 20 6d 69 73  ll.c..# Core mis
7900: 63 65 6c 6c 61 6e 65 6f 75 73 20 66 69 6c 65 73  cellaneous files
7910: 2e 0a 23 0a 53 52 43 30 33 20 3d 20 5c 0a 20 20  ..#.SRC03 = \.
7920: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65  $(TOP)\src\parse 7930: 2e 79 0a 0a 23 20 43 6f 72 65 20 68 65 61 64 65 .y..# Core heade 7940: 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e r files, part 1. 7950: 0a 23 0a 53 52 43 30 34 20 3d 20 5c 0a 20 20 24 .#.SRC04 = \.$
7960: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
7970: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 7980: 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 \btreeInt.h \. 7990: 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e$(TOP)\src\hash.
79a0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 79b0: 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 24 28 \hwtime.h \.$(
79c0: 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 20  TOP)\src\msvc.h
79d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m 79e0: 75 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 4f 50 utex.h \.$(TOP
79f0: 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 24  )\src\os.h \.  $7a00: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d (TOP)\src\os_com 7a10: 6d 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 mon.h \.$(TOP)
7a20: 5c 73 72 63 5c 6f 73 5f 73 65 74 75 70 2e 68 20  \src\os_setup.h
7a30: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  \.  $(TOP)\src\o 7a40: 73 5f 77 69 6e 2e 68 0a 0a 23 20 43 6f 72 65 20 s_win.h..# Core 7a50: 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 header files, pa 7a60: 72 74 20 32 2e 0a 23 0a 53 52 43 30 35 20 3d 20 rt 2..#.SRC05 = 7a70: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 \.$(TOP)\src\p
7a80: 61 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50  ager.h \.  $(TOP 7a90: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c )\src\pcache.h \ 7aa0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 .$(TOP)\src\pr
7ab0: 61 67 6d 61 2e 68 20 5c 0a 20 20 24 28 54 4f 50  agma.h \.  $(TOP 7ac0: 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 )\src\sqlite.h.i 7ad0: 6e 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 n \.$(TOP)\src
7ae0: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a  \sqlite3ext.h \.
7af0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c    $(TOP)\src\sql 7b00: 69 74 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 iteInt.h \.$(T
7b10: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69  OP)\src\sqliteLi
7b20: 6d 69 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  mit.h \.  $(TOP) 7b30: 5c 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 \src\vdbe.h \. 7b40: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49$(TOP)\src\vdbeI
7b50: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nt.h \.  $(TOP)\ 7b60: 73 72 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a src\vxworks.h \. 7b70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c$(TOP)\src\wal
7b80: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 7b90: 63 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 c\whereInt.h..# 7ba0: 45 78 74 65 6e 73 69 6f 6e 20 73 6f 75 72 63 65 Extension source 7bb0: 20 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 72 code files, par 7bc0: 74 20 31 2e 0a 23 0a 53 52 43 30 36 20 3d 20 5c t 1..#.SRC06 = \ 7bd0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
7be0: 73 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20 24 28  s1\fts1.c \.  $( 7bf0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 7c00: 73 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 s1_hash.c \.$(
7c10: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
7c20: 73 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20  s1_porter.c \.
7c30: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\ 7c40: 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e fts1_tokenizer1. 7c50: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
7c60: 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20  \fts2\fts2.c \.
7c70: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 7c80: 5c 66 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 \fts2_hash.c \. 7c90: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
7ca0: 5c 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20  \fts2_icu.c \.
7cb0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 7cc0: 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a fts2_porter.c \. 7cd0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
7ce0: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
7cf0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 7d00: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 t\fts2\fts2_toke 7d10: 6e 69 7a 65 72 31 2e 63 0a 0a 23 20 45 78 74 65 nizer1.c..# Exte 7d20: 6e 73 69 6f 6e 20 73 6f 75 72 63 65 20 63 6f 64 nsion source cod 7d30: 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e e files, part 2. 7d40: 0a 23 0a 53 52 43 30 37 20 3d 20 5c 0a 20 20 24 .#.SRC07 = \.$
7d50: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
7d60: 74 73 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ts3.c \.  $(TOP) 7d70: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 \ext\fts3\fts3_a 7d80: 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ux.c \.$(TOP)\
7d90: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78  ext\fts3\fts3_ex
7da0: 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pr.c \.  $(TOP)\ 7db0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 ext\fts3\fts3_ha 7dc0: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sh.c \.$(TOP)\
7dd0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63  ext\fts3\fts3_ic
7de0: 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  u.c \.  $(TOP)\e 7df0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 xt\fts3\fts3_por 7e00: 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ter.c \.$(TOP)
7e10: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73  \ext\fts3\fts3_s
7e20: 6e 69 70 70 65 74 2e 63 20 5c 0a 20 20 24 28 54  nippet.c \.  $(T 7e30: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 7e40: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 3_tokenizer.c \. 7e50: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
7e60: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  3\fts3_tokenizer
7e70: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  1.c \.  $(TOP)\e 7e80: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b xt\fts3\fts3_tok 7e90: 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 5c 0a 20 enize_vtab.c \. 7ea0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
7eb0: 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20  \fts3_unicode.c
7ec0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 7ed0: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 ts3\fts3_unicode 7ee0: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 2.c \.$(TOP)\e
7ef0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69  xt\fts3\fts3_wri
7f00: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\ 7f10: 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 20 5c 0a ext\icu\icu.c \. 7f20: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72$(TOP)\ext\rtr
7f30: 65 65 5c 72 74 72 65 65 2e 63 20 5c 0a 20 20 24  ee\rtree.c \.  $7f40: 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f (TOP)\ext\sessio 7f50: 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e n\sqlite3session 7f60: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
7f70: 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
7f80: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 7f90: 74 5c 6d 69 73 63 5c 6a 73 6f 6e 31 2e 63 0a 0a t\misc\json1.c.. 7fa0: 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 # Extension head 7fb0: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 er files, part 1 7fc0: 2e 0a 23 0a 53 52 43 30 38 20 3d 20 5c 0a 20 20 ..#.SRC08 = \. 7fd0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c$(TOP)\ext\fts1\
7fe0: 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts1.h \.  $(TOP 7ff0: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f )\ext\fts1\fts1_ 8000: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 hash.h \.$(TOP
8010: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
8020: 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20  tokenizer.h \.
8030: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 8040: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 fts2.h \.$(TOP
8050: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
8060: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 8070: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ 8080: 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a 23 20 45 tokenizer.h..# E 8090: 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20 xtension header 80a0: 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 files, part 2..# 80b0: 0a 53 52 43 30 39 20 3d 20 5c 0a 20 20 24 28 54 .SRC09 = \.$(T
80c0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
80d0: 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  3.h \.  $(TOP)\e 80e0: 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e xt\fts3\fts3Int. 80f0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
8100: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e  \fts3\fts3_hash.
8110: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 8120: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e \fts3\fts3_token 8130: 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 izer.h \.$(TOP
8140: 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65  )\ext\icu\sqlite
8150: 69 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  icu.h \.  $(TOP) 8160: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree 8170: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .h \.$(TOP)\ex
8180: 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
8190: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 81a0: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 t\session\sqlite 81b0: 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 47 65 3session.h..# Ge 81c0: 6e 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 63 nerated source c 81d0: 6f 64 65 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 ode files.#.SRC1 81e0: 30 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 0 = \. opcodes. 81f0: 63 20 5c 0a 20 20 70 61 72 73 65 2e 63 0a 0a 23 c \. parse.c..# 8200: 20 47 65 6e 65 72 61 74 65 64 20 68 65 61 64 65 Generated heade 8210: 72 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 31 20 r files.#.SRC11 8220: 3d 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 = \. keywordhas 8230: 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e h.h \. opcodes. 8240: 68 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a h \. parse.h \. 8250: 20 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23$(SQLITE3H)..#
8260: 20 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68   Generated Tcl h
8270: 65 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 53 52  eader files.#.SR
8280: 43 31 32 20 3d 20 5c 0a 20 20 73 71 6c 69 74 65  C12 = \.  sqlite
8290: 5f 74 63 6c 2e 68 20 5c 0a 20 20 73 71 6c 69 74  _tcl.h \.  sqlit
82a0: 65 5f 74 63 6c 44 65 63 6c 73 2e 68 0a 0a 23 20  e_tclDecls.h..#
82b0: 41 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20  All source code
82c0: 66 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24  files..#.SRC = $82d0: 28 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 (SRC00)$(SRC01)
82e0: 20 24 28 53 52 43 30 32 29 20 24 28 53 52 43 30   $(SRC02)$(SRC0
82f0: 33 29 20 24 28 53 52 43 30 34 29 20 24 28 53 52  3) $(SRC04)$(SR
8300: 43 30 35 29 20 24 28 53 52 43 30 36 29 20 24 28  C05) $(SRC06)$(
8310: 53 52 43 30 37 29 20 24 28 53 52 43 30 38 29 20  SRC07) $(SRC08) 8320: 24 28 53 52 43 30 39 29 20 24 28 53 52 43 31 30$(SRC09) $(SRC10 8330: 29 20 24 28 53 52 43 31 31 29 0a 0a 23 20 53 6f )$(SRC11)..# So
8340: 75 72 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65  urce code to the
8350: 20 74 65 73 74 20 66 69 6c 65 73 2e 0a 23 0a 54   test files..#.T
8360: 45 53 54 53 52 43 20 3d 20 5c 0a 20 20 24 28 54  ESTSRC = \.  $(T 8370: 4f 50 29 5c 73 72 63 5c 74 65 73 74 31 2e 63 20 OP)\src\test1.c 8380: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8390: 65 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est2.c \.  $(TOP 83a0: 29 5c 73 72 63 5c 74 65 73 74 33 2e 63 20 5c 0a )\src\test3.c \. 83b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
83c0: 74 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  t4.c \.  $(TOP)\ 83d0: 73 72 63 5c 74 65 73 74 35 2e 63 20 5c 0a 20 20 src\test5.c \. 83e0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 36$(TOP)\src\test6
83f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8400: 63 5c 74 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 c\test7.c \.$(
8410: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 38 2e 63  TOP)\src\test8.c
8420: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8430: 74 65 73 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f test9.c \.$(TO
8440: 50 29 5c 73 72 63 5c 74 65 73 74 5f 61 75 74 6f  P)\src\test_auto
8450: 65 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ext.c \.  $(TOP) 8460: 5c 73 72 63 5c 74 65 73 74 5f 61 73 79 6e 63 2e \src\test_async. 8470: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8480: 5c 74 65 73 74 5f 62 61 63 6b 75 70 2e 63 20 5c  \test_backup.c \
8490: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 84a0: 73 74 5f 62 65 73 74 69 6e 64 65 78 2e 63 20 5c st_bestindex.c \ 84b0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
84c0: 73 74 5f 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28  st_blob.c \.  $( 84d0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 TOP)\src\test_bt 84e0: 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ree.c \.$(TOP)
84f0: 5c 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67  \src\test_config
8500: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8510: 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63 c\test_demovfs.c 8520: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8530: 74 65 73 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a  test_devsym.c \.
8540: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8550: 74 5f 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 t_fs.c \.$(TOP
8560: 29 5c 73 72 63 5c 74 65 73 74 5f 66 75 6e 63 2e  )\src\test_func.
8570: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8580: 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63 20 5c 0a \test_hexio.c \. 8590: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
85a0: 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 24 28 54  t_init.c \.  $(T 85b0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e 74 OP)\src\test_int 85c0: 61 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54 4f array.c \.$(TO
85d0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a 6f 75 72  P)\src\test_jour
85e0: 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nal.c \.  $(TOP) 85f0: 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c 6c 6f 63 \src\test_malloc 8600: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8610: 63 5c 74 65 73 74 5f 6d 75 6c 74 69 70 6c 65 78  c\test_multiplex
8620: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8630: 63 5c 74 65 73 74 5f 6d 75 74 65 78 2e 63 20 5c c\test_mutex.c \ 8640: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
8650: 73 74 5f 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a 20  st_onefile.c \.
8660: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8670: 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a 20 20 24 28 _osinst.c \.$(
8680: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 70 63  TOP)\src\test_pc
8690: 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ache.c \.  $(TOP 86a0: 29 5c 73 72 63 5c 74 65 73 74 5f 71 75 6f 74 61 )\src\test_quota 86b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
86c0: 63 5c 74 65 73 74 5f 72 74 72 65 65 2e 63 20 5c  c\test_rtree.c \
86d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 86e0: 73 74 5f 73 63 68 65 6d 61 2e 63 20 5c 0a 20 20 st_schema.c \. 86f0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
8700: 73 65 72 76 65 72 2e 63 20 5c 0a 20 20 24 28 54  server.c \.  $(T 8710: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 75 70 OP)\src\test_sup 8720: 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20 20 24 28 54 erlock.c \.$(T
8730: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 79 73  OP)\src\test_sys
8740: 63 61 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50  call.c \.  $(TOP 8750: 29 5c 73 72 63 5c 74 65 73 74 5f 74 63 6c 76 61 )\src\test_tclva 8760: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 r.c \.$(TOP)\s
8770: 72 63 5c 74 65 73 74 5f 74 68 72 65 61 64 2e 63  rc\test_thread.c
8780: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8790: 74 65 73 74 5f 76 66 73 2e 63 20 5c 0a 20 20 24 test_vfs.c \.$
87a0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77  (TOP)\src\test_w
87b0: 69 6e 64 69 72 65 6e 74 2e 63 20 5c 0a 20 20 24  indirent.c \.  $87c0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 (TOP)\src\test_w 87d0: 73 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sd.c \.$(TOP)\
87e0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65  ext\fts3\fts3_te
87f0: 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  rm.c \.  $(TOP)\ 8800: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 ext\fts3\fts3_te 8810: 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c st.c \.$(TOP)\
8820: 65 78 74 5c 72 62 75 5c 74 65 73 74 5f 72 62 75  ext\rbu\test_rbu
8830: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8840: 74 5c 73 65 73 73 69 6f 6e 5c 74 65 73 74 5f 73 t\session\test_s 8850: 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 53 74 61 74 ession.c..# Stat 8860: 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20 65 78 ically linked ex 8870: 74 65 6e 73 69 6f 6e 73 2e 0a 23 0a 54 45 53 54 tensions..#.TEST 8880: 45 58 54 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 EXT = \.$(TOP)
8890: 5c 65 78 74 5c 6d 69 73 63 5c 61 6d 61 74 63 68  \ext\misc\amatch
88a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 88b0: 74 5c 6d 69 73 63 5c 63 61 72 72 61 79 2e 63 20 t\misc\carray.c 88c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
88d0: 69 73 63 5c 63 6c 6f 73 75 72 65 2e 63 20 5c 0a  isc\closure.c \.
88e0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73    $(TOP)\ext\mis 88f0: 63 5c 63 73 76 2e 63 20 5c 0a 20 20 24 28 54 4f c\csv.c \.$(TO
8900: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 65 76 61 6c  P)\ext\misc\eval
8910: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8920: 74 5c 6d 69 73 63 5c 66 69 6c 65 69 6f 2e 63 20 t\misc\fileio.c 8930: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
8940: 69 73 63 5c 66 75 7a 7a 65 72 2e 63 20 5c 0a 20  isc\fuzzer.c \.
8950: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35   $(TOP)\ext\fts5 8960: 5c 66 74 73 35 5f 74 63 6c 2e 63 20 5c 0a 20 20 \fts5_tcl.c \. 8970: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
8980: 66 74 73 35 5f 74 65 73 74 5f 6d 69 2e 63 20 5c  fts5_test_mi.c \
8990: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 89a0: 73 35 5c 66 74 73 35 5f 74 65 73 74 5f 74 6f 6b s5\fts5_test_tok 89b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
89c0: 74 5c 6d 69 73 63 5c 69 65 65 65 37 35 34 2e 63  t\misc\ieee754.c
89d0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 89e0: 6d 69 73 63 5c 6e 65 78 74 63 68 61 72 2e 63 20 misc\nextchar.c 89f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
8a00: 69 73 63 5c 70 65 72 63 65 6e 74 69 6c 65 2e 63  isc\percentile.c
8a10: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8a20: 6d 69 73 63 5c 72 65 67 65 78 70 2e 63 20 5c 0a misc\regexp.c \. 8a30: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73$(TOP)\ext\mis
8a40: 63 5c 73 65 72 69 65 73 2e 63 20 5c 0a 20 20 24  c\series.c \.  $8a50: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 (TOP)\ext\misc\s 8a60: 70 65 6c 6c 66 69 78 2e 63 20 5c 0a 20 20 24 28 pellfix.c \.$(
8a70: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 74 6f  TOP)\ext\misc\to
8a80: 74 79 70 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  type.c \.  $(TOP 8a90: 29 5c 65 78 74 5c 6d 69 73 63 5c 77 68 6f 6c 65 )\ext\misc\whole 8aa0: 6e 75 6d 62 65 72 2e 63 0a 0a 23 20 53 6f 75 72 number.c..# Sour 8ab0: 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6c ce code to the l 8ac0: 69 62 72 61 72 79 20 66 69 6c 65 73 20 6e 65 65 ibrary files nee 8ad0: 64 65 64 20 62 79 20 74 68 65 20 74 65 73 74 20 ded by the test 8ae0: 66 69 78 74 75 72 65 0a 23 20 28 6e 6f 6e 2d 61 fixture.# (non-a 8af0: 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 0a 23 0a 54 malgamation).#.T 8b00: 45 53 54 53 52 43 32 20 3d 20 5c 0a 20 20 24 28 ESTSRC2 = \.$(
8b10: 53 52 43 30 30 29 20 5c 0a 20 20 24 28 53 52 43  SRC00) \.  $(SRC 8b20: 30 31 29 20 5c 0a 20 20 24 28 53 52 43 30 36 29 01) \.$(SRC06)
8b30: 20 5c 0a 20 20 24 28 53 52 43 30 37 29 20 5c 0a   \.  $(SRC07) \. 8b40: 20 20 24 28 53 52 43 31 30 29 20 5c 0a 20 20 24$(SRC10) \.  $8b50: 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63 5c (TOP)\ext\async\ 8b60: 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 0a 0a sqlite3async.c.. 8b70: 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 # Header files u 8b80: 73 65 64 20 62 79 20 61 6c 6c 20 6c 69 62 72 61 sed by all libra 8b90: 72 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e ry source files. 8ba0: 0a 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24 28 .#.HDR = \.$(
8bb0: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68  TOP)\src\btree.h
8bc0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 8bd0: 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 \btreeInt.h \. 8be0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68$(TOP)\src\hash
8bf0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s 8c00: 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 rc\hwtime.h \. 8c10: 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 5c keywordhash.h \ 8c20: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d .$(TOP)\src\m
8c30: 73 76 63 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  svc.h \.   $(TOP 8c40: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a )\src\mutex.h \. 8c50: 20 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 opcodes.h \. 8c60: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e$(TOP)\src\os.
8c70: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 8c80: 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a c\os_common.h \. 8c90: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73$(TOP)\src\os
8ca0: 5f 73 65 74 75 70 2e 68 20 5c 0a 20 20 20 24 28  _setup.h \.   $( 8cb0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e TOP)\src\os_win. 8cc0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 h \.$(TOP)\sr
8cd0: 63 5c 70 61 67 65 72 2e 68 20 5c 0a 20 20 20 24  c\pager.h \.   $8ce0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 (TOP)\src\pcache 8cf0: 2e 68 20 5c 0a 20 20 20 70 61 72 73 65 2e 68 20 .h \. parse.h 8d00: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8d10: 70 72 61 67 6d 61 2e 68 20 5c 0a 20 20 20 24 28  pragma.h \.   $( 8d20: 53 51 4c 49 54 45 33 48 29 20 5c 0a 20 20 20 73 SQLITE3H) \. s 8d30: 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a 20 20 qlite3ext.h \. 8d40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69$(TOP)\src\sqli
8d50: 74 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54  teInt.h \.   $(T 8d60: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69 OP)\src\sqliteLi 8d70: 6d 69 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 mit.h \.$(TOP
8d80: 29 5c 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20  )\src\vdbe.h \.
8d90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb 8da0: 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f eInt.h \.$(TO
8db0: 50 29 5c 73 72 63 5c 76 78 77 6f 72 6b 73 2e 68  P)\src\vxworks.h
8dc0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 8dd0: 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 48 \whereInt.h..# H 8de0: 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 eader files used 8df0: 20 62 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a 23 by extensions.# 8e00: 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 .EXTHDR =$(EXTH
8e10: 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  DR) \.  $(TOP)\e 8e20: 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20 5c xt\fts1\fts1.h \ 8e30: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
8e40: 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20 5c  s1\fts1_hash.h \
8e50: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 8e60: 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 s1\fts1_tokenize 8e70: 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 r.h.EXTHDR =$(E
8e80: 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50  XTHDR) \.  $(TOP 8e90: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e )\ext\fts2\fts2. 8ea0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
8eb0: 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e  \fts2\fts2_hash.
8ec0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 8ed0: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e \fts2\fts2_token 8ee0: 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 izer.h.EXTHDR = 8ef0: 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28$(EXTHDR) \.  $( 8f00: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft 8f10: 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c s3.h \.$(TOP)\
8f20: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74  ext\fts3\fts3Int
8f30: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 8f40: 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 t\fts3\fts3_hash 8f50: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .h \.$(TOP)\ex
8f60: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
8f70: 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d  nizer.h.EXTHDR =
8f80: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24   $(EXTHDR) \.$
8f90: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c  (TOP)\ext\rtree\
8fa0: 72 74 72 65 65 2e 68 0a 45 58 54 48 44 52 20 3d  rtree.h.EXTHDR =
8fb0: 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24   $(EXTHDR) \.$
8fc0: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71  (TOP)\ext\icu\sq
8fd0: 6c 69 74 65 69 63 75 2e 68 0a 45 58 54 48 44 52  liteicu.h.EXTHDR
8fe0: 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20   = $(EXTHDR) \. 8ff0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65$(TOP)\ext\rtre
9000: 65 5c 73 71 6c 69 74 65 33 72 74 72 65 65 2e 68  e\sqlite3rtree.h
9010: 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54 48  .EXTHDR = $(EXTH 9020: 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 DR) \.$(TOP)\e
9030: 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74  xt\session\sqlit
9040: 65 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 65  e3session.h..# e
9050: 78 65 63 75 74 61 62 6c 65 73 20 6e 65 65 64 65  xecutables neede
9060: 64 20 66 6f 72 20 74 65 73 74 69 6e 67 0a 23 0a  d for testing.#.
9070: 54 45 53 54 50 52 4f 47 53 20 3d 20 5c 0a 20 20  TESTPROGS = \.
9080: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
9090: 5c 0a 20 20 24 28 53 51 4c 49 54 45 33 45 58 45  \.  $(SQLITE3EXE 90a0: 29 20 5c 0a 20 20 73 71 6c 69 74 65 33 5f 61 6e ) \. sqlite3_an 90b0: 61 6c 79 7a 65 72 2e 65 78 65 20 5c 0a 20 20 73 alyzer.exe \. s 90c0: 71 6c 64 69 66 66 2e 65 78 65 20 5c 0a 20 20 64 qldiff.exe \. d 90d0: 62 68 61 73 68 2e 65 78 65 0a 0a 23 20 44 61 74 bhash.exe..# Dat 90e0: 61 62 61 73 65 73 20 63 6f 6e 74 61 69 6e 69 6e abases containin 90f0: 67 20 66 75 7a 7a 65 72 20 74 65 73 74 20 63 61 g fuzzer test ca 9100: 73 65 73 0a 23 0a 46 55 5a 5a 44 41 54 41 20 3d ses.#.FUZZDATA = 9110: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 \.$(TOP)\test
9120: 5c 66 75 7a 7a 64 61 74 61 31 2e 64 62 20 5c 0a  \fuzzdata1.db \.
9130: 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75    $(TOP)\test\fu 9140: 7a 7a 64 61 74 61 32 2e 64 62 20 5c 0a 20 20 24 zzdata2.db \.$
9150: 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64  (TOP)\test\fuzzd
9160: 61 74 61 33 2e 64 62 20 5c 0a 20 20 24 28 54 4f  ata3.db \.  $(TO 9170: 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 P)\test\fuzzdata 9180: 34 2e 64 62 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 4.db.# <</mark>> 9190: 0a 0a 23 20 41 64 64 69 74 69 6f 6e 61 6c 20 63 ..# Additional c 91a0: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options 91b0: 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 2e 20 20 for the shell. 91c0: 54 68 65 73 65 20 61 72 65 20 6f 6e 6c 79 20 65 These are only e 91d0: 66 66 65 63 74 69 76 65 0a 23 20 77 68 65 6e 20 ffective.# when 91e0: 74 68 65 20 73 68 65 6c 6c 20 69 73 20 6e 6f 74 the shell is not 91f0: 20 62 65 69 6e 67 20 64 79 6e 61 6d 69 63 61 6c being dynamical 9200: 6c 79 20 6c 69 6e 6b 65 64 2e 0a 23 0a 21 49 46 ly linked..#.!IF 9210: 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c$(DYNAMIC_SHELL
9220: 29 3d 3d 30 20 26 26 20 24 28 46 4f 52 5f 57 49  )==0 && $(FOR_WI 9230: 4e 31 30 29 3d 3d 30 0a 53 48 45 4c 4c 5f 43 4f N10)==0.SHELL_CO 9240: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 MPILE_OPTS =$(S
9250: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HELL_COMPILE_OPT
9260: 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 48 45 4c  S) -DSQLITE_SHEL
9270: 4c 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49 54 45  L_JSON1 -DSQLITE
9280: 5f 45 4e 41 42 4c 45 5f 46 54 53 34 20 2d 44 53  _ENABLE_FTS4 -DS
9290: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 45 58 50  QLITE_ENABLE_EXP
92a0: 4c 41 49 4e 5f 43 4f 4d 4d 45 4e 54 53 0a 21 45  LAIN_COMMENTS.!E
92b0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
92c0: 0a 23 20 45 78 74 72 61 20 63 6f 6d 70 69 6c 65  .# Extra compile
92d0: 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 76 61  r options for va
92e0: 72 69 6f 75 73 20 74 65 73 74 20 74 6f 6f 6c 73  rious test tools
92f0: 2e 0a 23 0a 4d 50 54 45 53 54 45 52 5f 43 4f 4d  ..#.MPTESTER_COM
9300: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51  PILE_OPTS = -DSQ
9310: 4c 49 54 45 5f 53 48 45 4c 4c 5f 4a 53 4f 4e 31  LITE_SHELL_JSON1
9320: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
9330: 5f 46 54 53 35 0a 46 55 5a 5a 45 52 53 48 45 4c  _FTS5.FUZZERSHEL
9340: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d  L_COMPILE_OPTS =
9350: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
9360: 5f 4a 53 4f 4e 31 0a 46 55 5a 5a 43 48 45 43 4b  _JSON1.FUZZCHECK
9370: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20  _COMPILE_OPTS =
9380: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
9390: 4a 53 4f 4e 31 20 2d 44 53 51 4c 49 54 45 5f 45  JSON1 -DSQLITE_E
93a0: 4e 41 42 4c 45 5f 4d 45 4d 53 59 53 35 0a 0a 23  NABLE_MEMSYS5..#
93b0: 20 53 74 61 6e 64 61 72 64 20 6f 70 74 69 6f 6e   Standard option
93c0: 73 20 74 6f 20 74 65 73 74 66 69 78 74 75 72 65  s to testfixture
93d0: 2e 0a 23 0a 54 45 53 54 4f 50 54 53 20 3d 20 2d  ..#.TESTOPTS = -
93e0: 2d 76 65 72 62 6f 73 65 3d 66 69 6c 65 20 2d 2d  -verbose=file --
93f0: 6f 75 74 70 75 74 3d 74 65 73 74 2d 6f 75 74 2e  output=test-out.
9400: 74 78 74 0a 0a 23 20 45 78 74 72 61 20 74 61 72  txt..# Extra tar
9410: 67 65 74 73 20 66 6f 72 20 74 68 65 20 22 61 6c  gets for the "al
9420: 6c 22 20 74 61 72 67 65 74 20 74 68 61 74 20 72  l" target that r
9430: 65 71 75 69 72 65 20 54 63 6c 2e 0a 23 0a 21 49  equire Tcl..#.!I
9440: 46 20 24 28 4e 4f 5f 54 43 4c 29 3d 3d 30 0a 41  F $(NO_TCL)==0.A 9450: 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 20 3d LL_TCL_TARGETS = 9460: 20 6c 69 62 74 63 6c 73 71 6c 69 74 65 33 2e 6c libtclsqlite3.l 9470: 69 62 0a 21 45 4c 53 45 0a 41 4c 4c 5f 54 43 4c ib.!ELSE.ALL_TCL 9480: 5f 54 41 52 47 45 54 53 20 3d 0a 21 45 4e 44 49 _TARGETS =.!ENDI 9490: 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 F.# <</mark>>..# 94a0: 20 54 68 69 73 20 69 73 20 74 68 65 20 64 65 66 This is the def 94b0: 61 75 6c 74 20 4d 61 6b 65 66 69 6c 65 20 74 61 ault Makefile ta 94c0: 72 67 65 74 2e 20 20 54 68 65 20 6f 62 6a 65 63 rget. The objec 94d0: 74 73 20 6c 69 73 74 65 64 20 68 65 72 65 0a 23 ts listed here.# 94e0: 20 61 72 65 20 77 68 61 74 20 67 65 74 20 62 75 are what get bu 94f0: 69 6c 64 20 77 68 65 6e 20 79 6f 75 20 74 79 70 ild when you typ 9500: 65 20 6a 75 73 74 20 22 6d 61 6b 65 22 20 77 69 e just "make" wi 9510: 74 68 20 6e 6f 20 61 72 67 75 6d 65 6e 74 73 2e th no arguments. 9520: 0a 23 0a 61 6c 6c 3a 09 64 6c 6c 20 6c 69 62 73 .#.all:.dll libs 9530: 71 6c 69 74 65 33 2e 6c 69 62 20 73 68 65 6c 6c qlite3.lib shell 9540: 20 24 28 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 45$(ALL_TCL_TARGE
9550: 54 53 29 0a 0a 23 20 44 79 6e 61 6d 69 63 20 6c  TS)..# Dynamic l
9560: 69 6e 6b 20 6c 69 62 72 61 72 79 20 73 65 63 74  ink library sect
9570: 69 6f 6e 2e 0a 23 0a 64 6c 6c 3a 09 24 28 53 51  ion..#.dll:.$(SQ 9580: 4c 49 54 45 33 44 4c 4c 29 0a 0a 23 20 53 68 65 LITE3DLL)..# She 9590: 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 ll executable..# 95a0: 0a 73 68 65 6c 6c 3a 09 24 28 53 51 4c 49 54 45 .shell:.$(SQLITE
95b0: 33 45 58 45 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e  3EXE)..# <<mark>
95c0: 3e 0a 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62  >.libsqlite3.lib
95d0: 3a 09 24 28 4c 49 42 4f 42 4a 29 0a 09 24 28 4c  :.$(LIBOBJ)..$(L
95e0: 54 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f 50 54  TLIB) $(LTLIBOPT 95f0: 53 29 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 S) /OUT:$@ $(LIB 9600: 4f 42 4a 29 20 24 28 54 4c 49 42 53 29 0a 0a 6c OBJ)$(TLIBS)..l
9610: 69 62 74 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62  ibtclsqlite3.lib
9620: 3a 09 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c  :.tclsqlite.lo l
9630: 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 24  ibsqlite3.lib..$9640: 28 4c 54 4c 49 42 29 20 24 28 4c 54 4c 49 42 4f (LTLIB)$(LTLIBO
9650: 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48  PTS) $(LTLIBPATH 9660: 53 29 20 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 S) /OUT:$@ tclsq
9670: 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74  lite.lo libsqlit
9680: 65 33 2e 6c 69 62 20 24 28 4c 49 42 54 43 4c 53  e3.lib $(LIBTCLS 9690: 54 55 42 29 20 24 28 54 4c 49 42 53 29 0a 23 20 TUB)$(TLIBS).#
96a0: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 24 28 53 51 4c  <</mark>>..$(SQL 96b0: 49 54 45 33 44 4c 4c 29 3a 09 24 28 4c 49 42 4f ITE3DLL):.$(LIBO
96c0: 42 4a 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  BJ) $(LIBRESOBJS 96d0: 29 20 24 28 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 )$(CORE_LINK_DE
96e0: 50 29 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c  P)..$(LD)$(LDFL
96f0: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT 9700: 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 S)$(LTLIBPATHS)
9710: 20 2f 44 4c 4c 20 24 28 43 4f 52 45 5f 4c 49 4e   /DLL $(CORE_LIN 9720: 4b 5f 4f 50 54 53 29 20 2f 4f 55 54 3a 24 40 20 K_OPTS) /OUT:$@
9730: 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52  $(LIBOBJ)$(LIBR
9740: 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53  ESOBJS) $(LTLIBS 9750: 29 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 3c 3c )$(TLIBS)..# <<
9760: 62 6c 6f 63 6b 32 3e 3e 0a 73 71 6c 69 74 65 33  block2>>.sqlite3
9770: 2e 64 65 66 3a 09 6c 69 62 73 71 6c 69 74 65 33  .def:.libsqlite3
9780: 2e 6c 69 62 0a 09 65 63 68 6f 20 45 58 50 4f 52  .lib..echo EXPOR
9790: 54 53 20 3e 20 73 71 6c 69 74 65 33 2e 64 65 66  TS > sqlite3.def
97a0: 0a 09 64 75 6d 70 62 69 6e 20 2f 61 6c 6c 20 6c  ..dumpbin /all l
97b0: 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 5c 0a  ibsqlite3.lib \.
97c0: 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29  ..| $(TCLSH_CMD) 97d0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70$(TOP)\tool\rep
97e0: 6c 61 63 65 2e 74 63 6c 20 69 6e 63 6c 75 64 65  lace.tcl include
97f0: 20 22 5e 5c 73 2b 31 20 5f 3f 28 73 71 6c 69 74   "^\s+1 _?(sqlit
9800: 65 33 5f 5b 5e 40 5d 2a 29 28 3f 3a 40 5c 64 2b  e3_[^@]*)(?:@\d+
9810: 29 3f 24 24 22 20 5c 31 20 5c 0a 09 09 7c 20 73  )?" \1 \...| s
9820: 6f 72 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64  ort >> sqlite3.d
9830: 65 66 0a 23 20 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e  ef.# <</block2>>
9840: 0a 0a 24 28 53 51 4c 49 54 45 33 45 58 45 29 3a  ..$(SQLITE3EXE): 9850: 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c .$(TOP)\src\shel
9860: 6c 2e 63 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45  l.c $(SHELL_CORE 9870: 5f 44 45 50 29 20 24 28 4c 49 42 52 45 53 4f 42 _DEP)$(LIBRESOB
9880: 4a 53 29 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45  JS) $(SHELL_CORE 9890: 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 33 48 _SRC)$(SQLITE3H
98a0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53  )..$(LTLINK)$(S
98b0: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HELL_COMPILE_OPT
98c0: 53 29 20 24 28 52 45 41 44 4c 49 4e 45 5f 46 4c  S) $(READLINE_FL 98d0: 41 47 53 29 20 24 28 54 4f 50 29 5c 73 72 63 5c AGS)$(TOP)\src\
98e0: 73 68 65 6c 6c 2e 63 20 24 28 53 48 45 4c 4c 5f  shell.c $(SHELL_ 98f0: 43 4f 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c CORE_SRC) \.../l 9900: 69 6e 6b 20 24 28 53 51 4c 49 54 45 33 45 58 45 ink$(SQLITE3EXE
9910: 50 44 42 29 20 24 28 4c 44 46 4c 41 47 53 29 20  PDB) $(LDFLAGS) 9920: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( 9930: 53 48 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 29 SHELL_LINK_OPTS) 9940: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24$(LTLIBPATHS) $9950: 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c (LIBRESOBJS)$(L
9960: 49 42 52 45 41 44 4c 49 4e 45 29 20 24 28 4c 54  IBREADLINE) $(LT 9970: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a LIBS)$(TLIBS)..
9980: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 73 71 6c 64 69  # <<mark>>.sqldi
9990: 66 66 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  ff.exe:.$(TOP)\t 99a0: 6f 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20 24 28 ool\sqldiff.c$(
99b0: 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI 99c0: 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
99d0: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 4f   $(NO_WARN)$(TO
99e0: 50 29 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66 66 2e  P)\tool\sqldiff.
99f0: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c  c $(SQLITE3C) /l 9a00: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $9a10: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 (LTLINKOPTS)..db 9a20: 68 61 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 29 hash.exe:.$(TOP)
9a30: 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20 24  \tool\dbhash.c $9a40: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c (SQLITE3C)$(SQL
9a50: 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK 9a60: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 )$(NO_WARN) $(T 9a70: 4f 50 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 2e OP)\tool\dbhash. 9a80: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c c$(SQLITE3C) /l
9a90: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24  ink $(LDFLAGS)$
9aa0: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 63  (LTLINKOPTS)..sc
9ab0: 72 75 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  rub.exe:.$(TOP)\ 9ac0: 65 78 74 5c 6d 69 73 63 5c 73 63 72 75 62 2e 63 ext\misc\scrub.c 9ad0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S 9ae0: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
9af0: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24  NK) $(NO_WARN)$
9b00: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73  (TOP)\ext\misc\s
9b10: 63 72 75 62 2e 63 20 24 28 53 51 4c 49 54 45 33  crub.c $(SQLITE3 9b20: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
9b30: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 9b40: 29 0a 0a 73 72 63 63 6b 31 2e 65 78 65 3a 09 24 )..srcck1.exe:.$
9b50: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b  (TOP)\tool\srcck
9b60: 31 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f  1.c..$(BCC)$(NO
9b70: 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 54  _WARN) -Fe$@$(T
9b80: 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e  OP)\tool\srcck1.
9b90: 63 0a 0a 73 6f 75 72 63 65 74 65 73 74 3a 09 73  c..sourcetest:.s
9ba0: 72 63 63 6b 31 2e 65 78 65 20 73 71 6c 69 74 65  rcck1.exe sqlite
9bb0: 33 2e 63 0a 09 73 72 63 63 6b 31 2e 65 78 65 20  3.c..srcck1.exe
9bc0: 73 71 6c 69 74 65 33 2e 63 0a 0a 66 75 7a 7a 65  sqlite3.c..fuzze
9bd0: 72 73 68 65 6c 6c 2e 65 78 65 3a 09 24 28 54 4f  rshell.exe:.$(TO 9be0: 50 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 73 68 P)\tool\fuzzersh 9bf0: 65 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 ell.c$(SQLITE3C
9c00: 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  ) $(SQLITE3H)..$
9c10: 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41  (LTLINK) $(NO_WA 9c20: 52 4e 29 20 24 28 46 55 5a 5a 45 52 53 48 45 4c RN)$(FUZZERSHEL
9c30: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  L_COMPILE_OPTS)
9c40: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75 7a 7a  $(TOP)\tool\fuzz 9c50: 65 72 73 68 65 6c 6c 2e 63 20 24 28 53 51 4c 49 ershell.c$(SQLI
9c60: 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD 9c70: 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
9c80: 50 54 53 29 0a 0a 66 75 7a 7a 63 68 65 63 6b 2e  PTS)..fuzzcheck.
9c90: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74  exe:.$(TOP)\test 9ca0: 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 20 24 28 53 \fuzzcheck.c$(S
9cb0: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 9cc0: 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
9cd0: 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55 5a  $(NO_WARN)$(FUZ
9ce0: 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45 5f 4f  ZCHECK_COMPILE_O
9cf0: 50 54 53 29 20 24 28 54 4f 50 29 5c 74 65 73 74  PTS) $(TOP)\test 9d00: 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 20 24 28 53 \fuzzcheck.c$(S
9d10: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $9d20: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
9d30: 4e 4b 4f 50 54 53 29 0a 0a 6d 70 74 65 73 74 65  NKOPTS)..mpteste
9d40: 72 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 6d 70  r.exe:.$(TOP)\mp 9d50: 74 65 73 74 5c 6d 70 74 65 73 74 2e 63 20 24 28 test\mptest.c$(
9d60: 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI 9d70: 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
9d80: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 4d 50   $(NO_WARN)$(MP
9d90: 54 45 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f  TESTER_COMPILE_O
9da0: 50 54 53 29 20 24 28 54 4f 50 29 5c 6d 70 74 65  PTS) $(TOP)\mpte 9db0: 73 74 5c 6d 70 74 65 73 74 2e 63 20 24 28 53 51 st\mptest.c$(SQ
9dc0: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( 9dd0: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
9de0: 4b 4f 50 54 53 29 0a 0a 4d 50 54 45 53 54 31 20  KOPTS)..MPTEST1
9df0: 3d 20 6d 70 74 65 73 74 65 72 20 6d 70 74 65 73  = mptester mptes
9e00: 74 2e 64 62 20 24 28 54 4f 50 29 5c 6d 70 74 65  t.db $(TOP)\mpte 9e10: 73 74 5c 63 72 61 73 68 30 31 2e 74 65 73 74 20 st\crash01.test 9e20: 2d 2d 72 65 70 65 61 74 20 32 30 0a 4d 50 54 45 --repeat 20.MPTE 9e30: 53 54 32 20 3d 20 6d 70 74 65 73 74 65 72 20 6d ST2 = mptester m 9e40: 70 74 65 73 74 2e 64 62 20 24 28 54 4f 50 29 5c ptest.db$(TOP)\
9e50: 6d 70 74 65 73 74 5c 6d 75 6c 74 69 77 72 69 74  mptest\multiwrit
9e60: 65 30 31 2e 74 65 73 74 20 2d 2d 72 65 70 65 61  e01.test --repea
9e70: 74 20 32 30 0a 0a 6d 70 74 65 73 74 3a 09 6d 70  t 20..mptest:.mp
9e80: 74 65 73 74 65 72 2e 65 78 65 0a 09 64 65 6c 20  tester.exe..del
9e90: 2f 51 20 6d 70 74 65 73 74 2e 64 62 20 32 3e 4e  /Q mptest.db 2>N
9ea0: 55 4c 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d  UL..$(MPTEST1) - 9eb0: 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c -journalmode DEL 9ec0: 45 54 45 0a 09 24 28 4d 50 54 45 53 54 32 29 20 ETE..$(MPTEST2)
9ed0: 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 57 41  --journalmode WA
9ee0: 4c 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d  L..$(MPTEST1) -- 9ef0: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a journalmode WAL. 9f00: 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f .$(MPTEST2) --jo
9f10: 75 72 6e 61 6c 6d 6f 64 65 20 50 45 52 53 49 53  urnalmode PERSIS
9f20: 54 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d  T..$(MPTEST1) -- 9f30: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 50 45 52 53 journalmode PERS 9f40: 49 53 54 0a 09 24 28 4d 50 54 45 53 54 32 29 20 IST..$(MPTEST2)
9f50: 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52  --journalmode TR
9f60: 55 4e 43 41 54 45 0a 09 24 28 4d 50 54 45 53 54  UNCATE..$(MPTEST 9f70: 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 1) --journalmode 9f80: 20 54 52 55 4e 43 41 54 45 0a 09 24 28 4d 50 54 TRUNCATE..$(MPT
9f90: 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d  EST2) --journalm
9fa0: 6f 64 65 20 44 45 4c 45 54 45 0a 0a 23 20 54 68  ode DELETE..# Th
9fb0: 69 73 20 74 61 72 67 65 74 20 63 72 65 61 74 65  is target create
9fc0: 73 20 61 20 64 69 72 65 63 74 6f 72 79 20 6e 61  s a directory na
9fd0: 6d 65 64 20 22 74 73 72 63 22 20 61 6e 64 20 66  med "tsrc" and f
9fe0: 69 6c 6c 73 20 69 74 20 77 69 74 68 0a 23 20 63  ills it with.# c
9ff0: 6f 70 69 65 73 20 6f 66 20 61 6c 6c 20 6f 66 20  opies of all of
a000: 74 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64  the C source cod
a010: 65 20 61 6e 64 20 68 65 61 64 65 72 20 66 69 6c  e and header fil
a020: 65 73 20 6e 65 65 64 65 64 20 74 6f 0a 23 20 62  es needed to.# b
a030: 75 69 6c 64 20 6f 6e 20 74 68 65 20 74 61 72 67  uild on the targ
a040: 65 74 20 73 79 73 74 65 6d 2e 20 20 53 6f 6d 65  et system.  Some
a050: 20 6f 66 20 74 68 65 20 43 20 73 6f 75 72 63 65   of the C source
a060: 20 63 6f 64 65 20 61 6e 64 20 68 65 61 64 65 72   code and header
a070: 0a 23 20 66 69 6c 65 73 20 61 72 65 20 61 75 74  .# files are aut
a080: 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72  omatically gener
a090: 61 74 65 64 2e 20 20 54 68 69 73 20 74 61 72 67  ated.  This targ
a0a0: 65 74 20 74 61 6b 65 73 20 63 61 72 65 20 6f 66  et takes care of
a0b0: 0a 23 20 61 6c 6c 20 74 68 61 74 20 61 75 74 6f  .# all that auto
a0c0: 6d 61 74 69 63 20 67 65 6e 65 72 61 74 69 6f 6e  matic generation
a0d0: 2e 0a 23 0a 2e 74 61 72 67 65 74 5f 73 6f 75 72  ..#..target_sour
a0e0: 63 65 3a 09 24 28 53 52 43 29 20 24 28 54 4f 50  ce:.$(SRC)$(TOP
a0f0: 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70  )\tool\vdbe-comp
a100: 72 65 73 73 2e 74 63 6c 20 66 74 73 35 2e 63 20  ress.tcl fts5.c
a110: 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 09 2d 72  sqlite_tcl.h..-r
a120: 6d 64 69 72 20 2f 51 2f 53 20 74 73 72 63 20 32  mdir /Q/S tsrc 2
a130: 3e 4e 55 4c 0a 09 2d 6d 6b 64 69 72 20 74 73 72  >NUL..-mkdir tsr
a140: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28  c..for %i in ($( a150: 53 52 43 30 30 29 29 20 64 6f 20 63 6f 70 79 20 SRC00)) do copy a160: 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 /Y %i tsrc..for a170: 25 69 20 69 6e 20 28 24 28 53 52 43 30 31 29 29 %i in ($(SRC01))
a180: 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74   do copy /Y %i t
a190: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
a1a0: 24 28 53 52 43 30 32 29 29 20 64 6f 20 63 6f 70  $(SRC02)) do cop a1b0: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f y /Y %i tsrc..fo a1c0: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 33 r %i in ($(SRC03
a1d0: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
a1e0: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
a1f0: 20 28 24 28 53 52 43 30 34 29 29 20 64 6f 20 63   ($(SRC04)) do c a200: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. a210: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
a220: 30 35 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  05)) do copy /Y
a230: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
a240: 69 6e 20 28 24 28 53 52 43 30 36 29 29 20 64 6f  in ($(SRC06)) do a250: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc a260: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
a270: 52 43 30 37 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC07)) do copy /
a280: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
a290: 69 20 69 6e 20 28 24 28 53 52 43 30 38 29 29 20  i in ($(SRC08)) a2a0: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts a2b0: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 rc..for %i in ($
a2c0: 28 53 52 43 30 39 29 29 20 64 6f 20 63 6f 70 79  (SRC09)) do copy
a2d0: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72   /Y %i tsrc..for
a2e0: 20 25 69 20 69 6e 20 28 24 28 53 52 43 31 30 29   %i in ($(SRC10) a2f0: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 ) do copy /Y %i a300: 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 tsrc..for %i in a310: 28 24 28 53 52 43 31 31 29 29 20 64 6f 20 63 6f ($(SRC11)) do co
a320: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66  py /Y %i tsrc..f
a330: 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 31  or %i in ($(SRC1 a340: 32 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 2)) do copy /Y % a350: 69 20 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 20 i tsrc..copy /Y a360: 66 74 73 35 2e 63 20 74 73 72 63 0a 09 63 6f 70 fts5.c tsrc..cop a370: 79 20 2f 59 20 66 74 73 35 2e 68 20 74 73 72 63 y /Y fts5.h tsrc a380: 0a 09 64 65 6c 20 2f 51 20 74 73 72 63 5c 73 71 ..del /Q tsrc\sq a390: 6c 69 74 65 2e 68 2e 69 6e 20 74 73 72 63 5c 70 lite.h.in tsrc\p a3a0: 61 72 73 65 2e 79 20 32 3e 4e 55 4c 0a 09 24 28 arse.y 2>NUL..$(
a3b0: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP a3c0: 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 )\tool\vdbe-comp a3d0: 72 65 73 73 2e 74 63 6c 20 24 28 4f 50 54 53 29 ress.tcl$(OPTS)
a3e0: 20 3c 20 74 73 72 63 5c 76 64 62 65 2e 63 20 3e   < tsrc\vdbe.c >
a3f0: 20 76 64 62 65 2e 6e 65 77 0a 09 6d 6f 76 65 20   vdbe.new..move
a400: 76 64 62 65 2e 6e 65 77 20 74 73 72 63 5c 76 64  vdbe.new tsrc\vd
a410: 62 65 2e 63 0a 09 65 63 68 6f 20 3e 20 2e 74 61  be.c..echo > .ta
a420: 72 67 65 74 5f 73 6f 75 72 63 65 0a 0a 73 71 6c  rget_source..sql
a430: 69 74 65 33 2e 63 3a 09 2e 74 61 72 67 65 74 5f  ite3.c:..target_
a440: 73 6f 75 72 63 65 20 73 71 6c 69 74 65 33 65 78  source sqlite3ex
a450: 74 2e 68 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  t.h $(TOP)\tool\ a460: 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 09 mksqlite3c.tcl.. a470: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54$(TCLSH_CMD) $(T a480: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 OP)\tool\mksqlit a490: 65 33 63 2e 74 63 6c 20 24 28 4d 4b 53 51 4c 49 e3c.tcl$(MKSQLI
a4a0: 54 45 33 43 5f 41 52 47 53 29 0a 09 63 6f 70 79  TE3C_ARGS)..copy
a4b0: 20 74 73 72 63 5c 73 68 65 6c 6c 2e 63 20 2e 0a   tsrc\shell.c ..
a4c0: 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 74  .copy $(TOP)\ext a4d0: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 \session\sqlite3 a4e0: 73 65 73 73 69 6f 6e 2e 68 20 2e 0a 0a 73 71 6c session.h ...sql a4f0: 69 74 65 33 2d 61 6c 6c 2e 63 3a 09 73 71 6c 69 ite3-all.c:.sqli a500: 74 65 33 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f te3.c$(TOP)\too
a510: 6c 5c 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63  l\split-sqlite3c
a520: 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d  .tcl..$(TCLSH_CM a530: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 D)$(TOP)\tool\s
a540: 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63  plit-sqlite3c.tc
a550: 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23  l.# <</mark>>..#
a560: 20 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74   Rule to build t
a570: 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a  he amalgamation.
a580: 23 0a 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 24 28  #.sqlite3.lo:.$( a590: 53 51 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 43 SQLITE3C)..$(LTC
a5a0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C a5b0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c a5c0: 24 28 53 51 4c 49 54 45 33 43 29 0a 0a 23 20 3c$(SQLITE3C)..# <
a5d0: 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 73 20  <mark>>.# Rules
a5e0: 74 6f 20 62 75 69 6c 64 20 74 68 65 20 4c 45 4d  to build the LEM
a5f0: 4f 4e 20 63 6f 6d 70 69 6c 65 72 20 67 65 6e 65  ON compiler gene
a600: 72 61 74 6f 72 0a 23 0a 6c 65 6d 70 61 72 2e 63  rator.#.lempar.c
a610: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65  :.$(TOP)\tool\le a620: 6d 70 61 72 2e 63 0a 09 63 6f 70 79 20 24 28 54 mpar.c..copy$(T
a630: 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e  OP)\tool\lempar.
a640: 63 20 2e 0a 0a 6c 65 6d 6f 6e 2e 65 78 65 3a 09  c ...lemon.exe:.
a650: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f  $(TOP)\tool\lemo a660: 6e 2e 63 20 6c 65 6d 70 61 72 2e 63 0a 09 24 28 n.c lempar.c..$(
a670: 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  BCC) $(NO_WARN) a680: 2d 44 61 63 63 65 73 73 3d 5f 61 63 63 65 73 73 -Daccess=_access a690: 20 5c 0a 09 09 2d 46 65 24 40 20 24 28 54 4f 50 \...-Fe$@ $(TOP a6a0: 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f )\tool\lemon.c / a6b0: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 link$(LDFLAGS)
a6c0: 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24  $(NLTLINKOPTS)$
a6d0: 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 23  (NLTLIBPATHS)..#
a6e0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build
a6f0: 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20  individual *.lo
a700: 66 69 6c 65 73 20 66 72 6f 6d 20 67 65 6e 65 72  files from gener
a710: 61 74 65 64 20 2a 2e 63 20 66 69 6c 65 73 2e 20  ated *.c files.
a720: 54 68 69 73 0a 23 20 61 70 70 6c 69 65 73 20 74  This.# applies t
a730: 6f 3a 0a 23 0a 23 20 20 20 20 20 70 61 72 73 65  o:.#.#     parse
a740: 2e 6c 6f 0a 23 20 20 20 20 20 6f 70 63 6f 64 65  .lo.#     opcode
a750: 73 2e 6c 6f 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a  s.lo.#.parse.lo:
a760: 09 70 61 72 73 65 2e 63 20 24 28 48 44 52 29 0a  .parse.c $(HDR). a770: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( a780: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT a790: 53 29 20 2d 63 20 70 61 72 73 65 2e 63 0a 0a 6f S) -c parse.c..o a7a0: 70 63 6f 64 65 73 2e 6c 6f 3a 09 6f 70 63 6f 64 pcodes.lo:.opcod a7b0: 65 73 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c es.c..$(LTCOMPIL
a7c0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL a7d0: 45 5f 4f 50 54 53 29 20 2d 63 20 6f 70 63 6f 64 E_OPTS) -c opcod a7e0: 65 73 2e 63 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e es.c.# <</mark>> a7f0: 0a 0a 23 20 52 75 6c 65 20 74 6f 20 62 75 69 6c ..# Rule to buil a800: 64 20 74 68 65 20 57 69 6e 33 32 20 72 65 73 6f d the Win32 reso a810: 75 72 63 65 73 20 6f 62 6a 65 63 74 20 66 69 6c urces object fil a820: 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 52 e..#.!IF$(USE_R
a830: 43 29 21 3d 30 0a 23 20 3c 3c 62 6c 6f 63 6b 31  C)!=0.# <<block1
a840: 3e 3e 0a 24 28 4c 49 42 52 45 53 4f 42 4a 53 29  >>.$(LIBRESOBJS) a850: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c :.$(TOP)\src\sql
a860: 69 74 65 33 2e 72 63 20 24 28 53 51 4c 49 54 45  ite3.rc $(SQLITE a870: 33 48 29 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 3H)..echo #ifnde a880: 66 20 53 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 f SQLITE_RESOURC a890: 45 5f 56 45 52 53 49 4f 4e 20 3e 20 73 71 6c 69 E_VERSION > sqli a8a0: 74 65 33 72 63 2e 68 0a 09 66 6f 72 20 2f 46 20 te3rc.h..for /F a8b0: 25 25 56 20 69 6e 20 28 27 74 79 70 65 20 22 24 %%V in ('type "$
a8c0: 28 54 4f 50 29 5c 56 45 52 53 49 4f 4e 22 27 29  (TOP)\VERSION"')
a8d0: 20 64 6f 20 28 20 5c 0a 09 09 65 63 68 6f 20 23   do ( \...echo #
a8e0: 64 65 66 69 6e 65 20 53 51 4c 49 54 45 5f 52 45  define SQLITE_RE
a8f0: 53 4f 55 52 43 45 5f 56 45 52 53 49 4f 4e 20 25  SOURCE_VERSION %
a900: 25 56 20 5c 0a 09 09 09 7c 20 24 28 54 43 4c 53  %V \....| $(TCLS a910: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
a920: 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65  ol\replace.tcl e
a930: 78 61 63 74 20 2e 20 5e 2c 20 3e 3e 20 73 71 6c  xact . ^, >> sql
a940: 69 74 65 33 72 63 2e 68 20 5c 0a 09 29 0a 09 65  ite3rc.h \..)..e
a950: 63 68 6f 20 23 65 6e 64 69 66 20 3e 3e 20 73 71  cho #endif >> sq
a960: 6c 69 74 65 33 72 63 2e 68 0a 09 24 28 4c 54 52  lite3rc.h..$(LTR a970: 43 4f 4d 50 49 4c 45 29 20 2d 66 6f 20 24 28 4c COMPILE) -fo$(L
a980: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 54 4f 50  IBRESOBJS) $(TOP a990: 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 )\src\sqlite3.rc a9a0: 0a 23 20 3c 3c 2f 62 6c 6f 63 6b 31 3e 3e 0a 21 .# <</block1>>.! a9b0: 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e ENDIF..# <<mark> a9c0: 3e 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 >.# Rules to bui a9d0: 6c 64 20 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e ld individual *. a9e0: 6c 6f 20 66 69 6c 65 73 20 66 72 6f 6d 20 66 69 lo files from fi a9f0: 6c 65 73 20 69 6e 20 74 68 65 20 73 72 63 20 64 les in the src d aa00: 69 72 65 63 74 6f 72 79 2e 0a 23 0a 61 6c 74 65 irectory..#.alte aa10: 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 r.lo:.$(TOP)\src
aa20: 5c 61 6c 74 65 72 2e 63 20 24 28 48 44 52 29 0a  \alter.c $(HDR). aa30: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( aa40: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT aa50: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
aa60: 5c 61 6c 74 65 72 2e 63 0a 0a 61 6e 61 6c 79 7a  \alter.c..analyz
aa70: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src aa80: 5c 61 6e 61 6c 79 7a 65 2e 63 20 24 28 48 44 52 \analyze.c$(HDR
aa90: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) aaa0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
aab0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s aac0: 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74 rc\analyze.c..at aad0: 74 61 63 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c tach.lo:.$(TOP)\
aae0: 73 72 63 5c 61 74 74 61 63 68 2e 63 20 24 28 48  src\attach.c $(H aaf0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
ab00: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE ab10: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
ab20: 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 0a 0a 61  \src\attach.c..a
ab30: 75 74 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  uth.lo:.$(TOP)\s ab40: 72 63 5c 61 75 74 68 2e 63 20 24 28 48 44 52 29 rc\auth.c$(HDR)
ab50: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
ab60: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
ab70: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr ab80: 63 5c 61 75 74 68 2e 63 0a 0a 62 61 63 6b 75 70 c\auth.c..backup ab90: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
aba0: 62 61 63 6b 75 70 2e 63 20 24 28 48 44 52 29 0a  backup.c $(HDR). abb0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( abc0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT abd0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
abe0: 5c 62 61 63 6b 75 70 2e 63 0a 0a 62 69 74 76 65  \backup.c..bitve
abf0: 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  c.lo:.$(TOP)\src ac00: 5c 62 69 74 76 65 63 2e 63 20 24 28 48 44 52 29 \bitvec.c$(HDR)
ac10: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
ac20: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
ac30: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr ac40: 63 5c 62 69 74 76 65 63 2e 63 0a 0a 62 74 6d 75 c\bitvec.c..btmu ac50: 74 65 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 tex.lo:.$(TOP)\s
ac60: 72 63 5c 62 74 6d 75 74 65 78 2e 63 20 24 28 48  rc\btmutex.c $(H ac70: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
ac80: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE ac90: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
aca0: 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 0a 0a  \src\btmutex.c..
acb0: 62 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  btree.lo:.$(TOP) acc0: 5c 73 72 63 5c 62 74 72 65 65 2e 63 20 24 28 48 \src\btree.c$(H
acd0: 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  DR) $(TOP)\src\p ace0: 61 67 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 ager.h..$(LTCOMP
acf0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP ad00: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
ad10: 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 0a  OP)\src\btree.c.
ad20: 0a 62 75 69 6c 64 2e 6c 6f 3a 09 24 28 54 4f 50  .build.lo:.$(TOP ad30: 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 24 28 )\src\build.c$(
ad40: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL ad50: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
ad60: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP ad70: 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63 )\src\build.c..c ad80: 61 6c 6c 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f allback.lo:.$(TO
ad90: 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e  P)\src\callback.
ada0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
adb0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO adc0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
add0: 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61  (TOP)\src\callba
ade0: 63 6b 2e 63 0a 0a 63 6f 6d 70 6c 65 74 65 2e 6c  ck.c..complete.l
adf0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f  o:.$(TOP)\src\co ae00: 6d 70 6c 65 74 65 2e 63 20 24 28 48 44 52 29 0a mplete.c$(HDR).
ae10: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
ae20: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
ae30: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src ae40: 5c 63 6f 6d 70 6c 65 74 65 2e 63 0a 0a 63 74 69 \complete.c..cti ae50: 6d 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 me.lo:.$(TOP)\sr
ae60: 63 5c 63 74 69 6d 65 2e 63 20 24 28 48 44 52 29  c\ctime.c $(HDR) ae70: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $ae80: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP ae90: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
aea0: 63 5c 63 74 69 6d 65 2e 63 0a 0a 64 61 74 65 2e  c\ctime.c..date.
aeb0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 64  lo:.$(TOP)\src\d aec0: 61 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 ate.c$(HDR)..$( aed0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
aee0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
aef0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 61  -c $(TOP)\src\da af00: 74 65 2e 63 0a 0a 64 62 73 74 61 74 2e 6c 6f 3a te.c..dbstat.lo: af10: 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 .$(TOP)\src\date
af20: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
af30: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C af40: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c af50: 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 73 74 61$(TOP)\src\dbsta
af60: 74 2e 63 0a 0a 64 65 6c 65 74 65 2e 6c 6f 3a 09  t.c..delete.lo:.
af70: 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74  $(TOP)\src\delet af80: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 e.c$(HDR)..$(LT af90: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
afa0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
afb0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65   $(TOP)\src\dele afc0: 74 65 2e 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09 24 te.c..expr.lo:.$
afd0: 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63  (TOP)\src\expr.c
afe0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
aff0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM b000: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
b010: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a  TOP)\src\expr.c.
b020: 0a 66 61 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50  .fault.lo:.$(TOP b030: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 20 24 28 )\src\fault.c$(
b040: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL b050: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
b060: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP b070: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 0a 0a 66 )\src\fault.c..f b080: 6b 65 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 key.lo:.$(TOP)\s
b090: 72 63 5c 66 6b 65 79 2e 63 20 24 28 48 44 52 29  rc\fkey.c $(HDR) b0a0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $b0b0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP b0c0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
b0d0: 63 5c 66 6b 65 79 2e 63 0a 0a 66 75 6e 63 2e 6c  c\fkey.c..func.l
b0e0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 75  o:.$(TOP)\src\fu b0f0: 6e 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c nc.c$(HDR)..$(L b100: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
b110: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
b120: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e  c $(TOP)\src\fun b130: 63 2e 63 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 c.c..global.lo:. b140: 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61$(TOP)\src\globa
b150: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  l.c $(HDR)..$(LT
b160: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ b170: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c b180: 20 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62$(TOP)\src\glob
b190: 61 6c 2e 63 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24  al.c..hash.lo:.$b1a0: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 (TOP)\src\hash.c b1b0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM b1c0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
b1d0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( b1e0: 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 0a TOP)\src\hash.c. b1f0: 0a 69 6e 73 65 72 74 2e 6c 6f 3a 09 24 28 54 4f .insert.lo:.$(TO
b200: 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20  P)\src\insert.c
b210: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
b220: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP b230: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
b240: 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63  OP)\src\insert.c
b250: 0a 0a 6c 65 67 61 63 79 2e 6c 6f 3a 09 24 28 54  ..legacy.lo:.$(T b260: 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 OP)\src\legacy.c b270: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM b280: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
b290: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( b2a0: 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e TOP)\src\legacy. b2b0: 63 0a 0a 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 c..loadext.lo:.$
b2c0: 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78  (TOP)\src\loadex
b2d0: 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  t.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 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64$(TOP)\src\load
b310: 65 78 74 2e 63 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09  ext.c..main.lo:.
b320: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e  $(TOP)\src\main. b330: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO b340: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
b350: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $b360: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 (TOP)\src\main.c b370: 0a 0a 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24 28 54 ..malloc.lo:.$(T
b380: 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63  OP)\src\malloc.c
b390: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
b3a0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM b3b0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
b3c0: 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e  TOP)\src\malloc.
b3d0: 63 0a 0a 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f  c..mem0.lo:.$(TO b3e0: 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28 P)\src\mem0.c$(
b3f0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL b400: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
b410: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP b420: 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 )\src\mem0.c..me b430: 6d 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 m1.lo:.$(TOP)\sr
b440: 63 5c 6d 65 6d 31 2e 63 20 24 28 48 44 52 29 0a  c\mem1.c $(HDR). b450: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( b460: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT b470: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
b480: 5c 6d 65 6d 31 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f  \mem1.c..mem2.lo
b490: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  :.$(TOP)\src\mem b4a0: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 2.c$(HDR)..$(LT b4b0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b4c0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b4d0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32   $(TOP)\src\mem2 b4e0: 2e 63 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54 .c..mem3.lo:.$(T
b4f0: 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24  OP)\src\mem3.c $b500: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
b510: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI b520: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
b530: 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 0a 0a 6d  P)\src\mem3.c..m
b540: 65 6d 35 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  em5.lo:.$(TOP)\s b550: 72 63 5c 6d 65 6d 35 2e 63 20 24 28 48 44 52 29 rc\mem5.c$(HDR)
b560: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
b570: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
b580: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr b590: 63 5c 6d 65 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 c\mem5.c..memjou b5a0: 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c rnal.lo:.$(TOP)\
b5b0: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63  src\memjournal.c
b5c0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
b5d0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM b5e0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
b5f0: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72  TOP)\src\memjour
b600: 6e 61 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a  nal.c..mutex.lo:
b610: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65  .$(TOP)\src\mute b620: 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 x.c$(HDR)..$(LT b630: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b640: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b650: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute b660: 78 2e 63 0a 0a 6d 75 74 65 78 5f 6e 6f 6f 70 2e x.c..mutex_noop. b670: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d lo:.$(TOP)\src\m
b680: 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 24 28 48 44  utex_noop.c $(HD b690: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
b6a0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ b6b0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
b6c0: 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63  src\mutex_noop.c
b6d0: 0a 0a 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 3a  ..mutex_unix.lo:
b6e0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65  .$(TOP)\src\mute b6f0: 78 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a x_unix.c$(HDR).
b700: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
b710: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
b720: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src b730: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d \mutex_unix.c..m b740: 75 74 65 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54 utex_w32.lo:.$(T
b750: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33  OP)\src\mutex_w3
b760: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  2.c $(HDR)..$(LT
b770: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ b780: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c b790: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65$(TOP)\src\mute
b7a0: 78 5f 77 33 32 2e 63 0a 0a 6e 6f 74 69 66 79 2e  x_w32.c..notify.
b7b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6e  lo:.$(TOP)\src\n b7c0: 6f 74 69 66 79 2e 63 20 24 28 48 44 52 29 0a 09 otify.c$(HDR)..
b7d0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
b7e0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b7f0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ b800: 6e 6f 74 69 66 79 2e 63 0a 0a 70 61 67 65 72 2e notify.c..pager. b810: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 lo:.$(TOP)\src\p
b820: 61 67 65 72 2e 63 20 24 28 48 44 52 29 20 24 28  ager.c $(HDR)$(
b830: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68  TOP)\src\pager.h
b840: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
b850: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
b860: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr b870: 63 5c 70 61 67 65 72 2e 63 0a 0a 70 63 61 63 68 c\pager.c..pcach b880: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 e.lo:.$(TOP)\src
b890: 5c 70 63 61 63 68 65 2e 63 20 24 28 48 44 52 29  \pcache.c $(HDR) b8a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63$(TOP)\src\pcac
b8b0: 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  he.h..$(LTCOMPIL b8c0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
b8d0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP b8e0: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 0a 0a )\src\pcache.c.. b8f0: 70 63 61 63 68 65 31 2e 6c 6f 3a 09 24 28 54 4f pcache1.lo:.$(TO
b900: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63  P)\src\pcache1.c
b910: 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73   $(HDR)$(TOP)\s
b920: 72 63 5c 70 63 61 63 68 65 2e 68 0a 09 24 28 4c  rc\pcache.h..$(L b930: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
b940: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
b950: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61  c $(TOP)\src\pca b960: 63 68 65 31 2e 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 che1.c..os.lo:.$
b970: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 24  (TOP)\src\os.c $b980: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
b990: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI b9a0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
b9b0: 50 29 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f 73 5f  P)\src\os.c..os_
b9c0: 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  unix.lo:.$(TOP)\ b9d0: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 24 28 src\os_unix.c$(
b9e0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL b9f0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
ba00: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP ba10: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a )\src\os_unix.c. ba20: 0a 6f 73 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f .os_win.lo:.$(TO
ba30: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20  P)\src\os_win.c
ba40: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
ba50: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP ba60: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
ba70: 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63  OP)\src\os_win.c
ba80: 0a 0a 70 72 61 67 6d 61 2e 6c 6f 3a 09 24 28 54  ..pragma.lo:.$(T ba90: 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 OP)\src\pragma.c baa0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM bab0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
bac0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( bad0: 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e TOP)\src\pragma. bae0: 63 0a 0a 70 72 65 70 61 72 65 2e 6c 6f 3a 09 24 c..prepare.lo:.$
baf0: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
bb00: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
bb10: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ bb20: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c bb30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70$(TOP)\src\prep
bb40: 61 72 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f  are.c..printf.lo
bb50: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69  :.$(TOP)\src\pri bb60: 6e 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 ntf.c$(HDR)..$( bb70: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
bb80: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
bb90: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72  -c $(TOP)\src\pr bba0: 69 6e 74 66 2e 63 0a 0a 72 61 6e 64 6f 6d 2e 6c intf.c..random.l bbb0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 o:.$(TOP)\src\ra
bbc0: 6e 64 6f 6d 2e 63 20 24 28 48 44 52 29 0a 09 24  ndom.c $(HDR)..$
bbd0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO bbe0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) bbf0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 -c$(TOP)\src\r
bc00: 61 6e 64 6f 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65  andom.c..resolve
bc10: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ bc20: 72 65 73 6f 6c 76 65 2e 63 20 24 28 48 44 52 29 resolve.c$(HDR)
bc30: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
bc40: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
bc50: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr bc60: 63 5c 72 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77 c\resolve.c..row bc70: 73 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 set.lo:.$(TOP)\s
bc80: 72 63 5c 72 6f 77 73 65 74 2e 63 20 24 28 48 44  rc\rowset.c $(HD bc90: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
bca0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ bcb0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
bcc0: 73 72 63 5c 72 6f 77 73 65 74 2e 63 0a 0a 73 65  src\rowset.c..se
bcd0: 6c 65 63 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  lect.lo:.$(TOP)\ bce0: 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 24 28 48 src\select.c$(H
bcf0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE bd00: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
bd10: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) bd20: 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 0a 0a 73 \src\select.c..s bd30: 74 61 74 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 tatus.lo:.$(TOP)
bd40: 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 20 24 28  \src\status.c $( bd50: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
bd60: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL bd70: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
bd80: 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a  )\src\status.c..
bd90: 74 61 62 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  table.lo:.$(TOP) bda0: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 24 28 48 \src\table.c$(H
bdb0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE bdc0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
bdd0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) bde0: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 0a 0a 74 68 \src\table.c..th bdf0: 72 65 61 64 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 reads.lo:.$(TOP)
be00: 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63 20 24  \src\threads.c $be10: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
be20: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI be30: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
be40: 50 29 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63  P)\src\threads.c
be50: 0a 0a 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a 09 24  ..tokenize.lo:.$be60: 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 (TOP)\src\tokeni be70: 7a 65 2e 63 20 6b 65 79 77 6f 72 64 68 61 73 68 ze.c keywordhash be80: 2e 68 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .h$(HDR)..$(LTC be90: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
bea0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
beb0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e  $(TOP)\src\token bec0: 69 7a 65 2e 63 0a 0a 74 72 65 65 76 69 65 77 2e ize.c..treeview. bed0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 lo:.$(TOP)\src\t
bee0: 72 65 65 76 69 65 77 2e 63 20 24 28 48 44 52 29  reeview.c $(HDR) bef0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $bf00: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP bf10: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
bf20: 63 5c 74 72 65 65 76 69 65 77 2e 63 0a 0a 74 72  c\treeview.c..tr
bf30: 69 67 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  igger.lo:.$(TOP) bf40: 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 20 24 \src\trigger.c$
bf50: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI bf60: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
bf70: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO bf80: 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 P)\src\trigger.c bf90: 0a 0a 75 70 64 61 74 65 2e 6c 6f 3a 09 24 28 54 ..update.lo:.$(T
bfa0: 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63  OP)\src\update.c
bfb0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
bfc0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM bfd0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
bfe0: 54 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e  TOP)\src\update.
bff0: 63 0a 0a 75 74 66 2e 6c 6f 3a 09 24 28 54 4f 50  c..utf.lo:.$(TOP c000: 29 5c 73 72 63 5c 75 74 66 2e 63 20 24 28 48 44 )\src\utf.c$(HD
c010: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) c020: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
c030: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ c040: 73 72 63 5c 75 74 66 2e 63 0a 0a 75 74 69 6c 2e src\utf.c..util. c050: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 lo:.$(TOP)\src\u
c060: 74 69 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28  til.c $(HDR)..$(
c070: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR c080: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) c090: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 -c$(TOP)\src\ut
c0a0: 69 6c 2e 63 0a 0a 76 61 63 75 75 6d 2e 6c 6f 3a  il.c..vacuum.lo:
c0b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75  .$(TOP)\src\vacu c0c0: 75 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c um.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 76 61 63  c $(TOP)\src\vac c100: 75 75 6d 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a 09 uum.c..vdbe.lo:. c110: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e$(TOP)\src\vdbe.
c120: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c130: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c140: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c150: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63  (TOP)\src\vdbe.c
c160: 0a 0a 76 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28  ..vdbeapi.lo:.$( c170: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69 TOP)\src\vdbeapi c180: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC c190: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
c1a0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
c1b0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61  $(TOP)\src\vdbea c1c0: 70 69 2e 63 0a 0a 76 64 62 65 61 75 78 2e 6c 6f pi.c..vdbeaux.lo c1d0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 :.$(TOP)\src\vdb
c1e0: 65 61 75 78 2e 63 20 24 28 48 44 52 29 0a 09 24  eaux.c $(HDR)..$
c1f0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c200: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c210: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 -c$(TOP)\src\v
c220: 64 62 65 61 75 78 2e 63 0a 0a 76 64 62 65 62 6c  dbeaux.c..vdbebl
c230: 6f 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ob.lo:.$(TOP)\sr c240: 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 24 28 48 c\vdbeblob.c$(H
c250: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c260: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c270: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c280: 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a \src\vdbeblob.c. c290: 0a 76 64 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54 .vdbemem.lo:.$(T
c2a0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e  OP)\src\vdbemem.
c2b0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c2c0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c2d0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c2e0: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65  (TOP)\src\vdbeme
c2f0: 6d 2e 63 0a 0a 76 64 62 65 73 6f 72 74 2e 6c 6f  m.c..vdbesort.lo
c300: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  :.$(TOP)\src\vdb c310: 65 73 6f 72 74 2e 63 20 24 28 48 44 52 29 0a 09 esort.c$(HDR)..
c320: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
c330: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c340: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ c350: 76 64 62 65 73 6f 72 74 2e 63 0a 0a 76 64 62 65 vdbesort.c..vdbe c360: 74 72 61 63 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 trace.lo:.$(TOP)
c370: 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63  \src\vdbetrace.c
c380: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c390: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c3a0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c3b0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61  TOP)\src\vdbetra
c3c0: 63 65 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24  ce.c..vtab.lo:.$c3d0: 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 (TOP)\src\vtab.c c3e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c3f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c400: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c410: 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 0a TOP)\src\vtab.c. c420: 0a 77 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c .wal.lo:.$(TOP)\
c430: 73 72 63 5c 77 61 6c 2e 63 20 24 28 48 44 52 29  src\wal.c $(HDR) c440: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $c450: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP c460: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
c470: 63 5c 77 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e  c\wal.c..walker.
c480: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w c490: 61 6c 6b 65 72 2e 63 20 24 28 48 44 52 29 0a 09 alker.c$(HDR)..
c4a0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
c4b0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c4c0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ c4d0: 77 61 6c 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e walker.c..where. c4e0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 lo:.$(TOP)\src\w
c4f0: 68 65 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24  here.c $(HDR)..$
c500: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c510: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c520: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 -c$(TOP)\src\w
c530: 68 65 72 65 2e 63 0a 0a 77 68 65 72 65 63 6f 64  here.c..wherecod
c540: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src c550: 5c 77 68 65 72 65 63 6f 64 65 2e 63 20 24 28 48 \wherecode.c$(H
c560: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c570: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c580: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c590: 5c 73 72 63 5c 77 68 65 72 65 63 6f 64 65 2e 63 \src\wherecode.c c5a0: 0a 0a 77 68 65 72 65 65 78 70 72 2e 6c 6f 3a 09 ..whereexpr.lo:. c5b0: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65$(TOP)\src\where
c5c0: 65 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24  expr.c $(HDR)..$
c5d0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c5e0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c5f0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 -c$(TOP)\src\w
c600: 68 65 72 65 65 78 70 72 2e 63 0a 0a 74 63 6c 73  hereexpr.c..tcls
c610: 71 6c 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  qlite.lo:.$(TOP) c620: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 \src\tclsqlite.c c630: 20 24 28 48 44 52 29 20 73 71 6c 69 74 65 5f 74$(HDR) sqlite_t
c640: 63 6c 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  cl.h..$(LTCOMPIL c650: 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 E)$(NO_WARN) -D
c660: 55 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20  USE_TCL_STUBS=1
c670: 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d  -DBUILD_sqlite -
c680: 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63  I$(TCLINCDIR) -c c690: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73$(TOP)\src\tcls
c6a0: 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69  qlite.c..tclsqli
c6b0: 74 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54  te-shell.lo:.$(T c6c0: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 OP)\src\tclsqlit c6d0: 65 2e 63 20 24 28 48 44 52 29 20 73 71 6c 69 74 e.c$(HDR) sqlit
c6e0: 65 5f 74 63 6c 2e 68 0a 09 24 28 4c 54 43 4f 4d  e_tcl.h..$(LTCOM c6f0: 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 PILE)$(NO_WARN)
c700: 20 2d 44 54 43 4c 53 48 3d 31 20 2d 44 42 55 49   -DTCLSH=1 -DBUI
c710: 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43  LD_sqlite -I$(TC c720: 4c 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 4f LINCDIR) -c$(TO
c730: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
c740: 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 33 2e 65  .c..tclsqlite3.e
c750: 78 65 3a 09 74 63 6c 73 71 6c 69 74 65 2d 73 68  xe:.tclsqlite-sh
c760: 65 6c 6c 2e 6c 6f 20 24 28 53 51 4c 49 54 45 33  ell.lo $(SQLITE3 c770: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 C)$(SQLITE3H) $c780: 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28 (LIBRESOBJS)..$(
c790: 4c 54 4c 49 4e 4b 29 20 24 28 53 51 4c 49 54 45  LTLINK) $(SQLITE c7a0: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 3C) /link$(LDFL
c7b0: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT c7c0: 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 S)$(LTLIBPATHS)
c7d0: 20 2f 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69   /OUT:$@ tclsqli c7e0: 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 4c 49 te-shell.lo$(LI
c7f0: 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49  BRESOBJS) $(LTLI c800: 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 BS)$(TLIBS)..#
c810: 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 6f  Rules to build o
c820: 70 63 6f 64 65 73 2e 63 20 61 6e 64 20 6f 70 63  pcodes.c and opc
c830: 6f 64 65 73 2e 68 0a 23 0a 6f 70 63 6f 64 65 73  odes.h.#.opcodes
c840: 2e 63 3a 09 6f 70 63 6f 64 65 73 2e 68 20 24 28  .c:.opcodes.h $( c850: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f TOP)\tool\mkopco c860: 64 65 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 dec.tcl..$(TCLSH
c870: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too c880: 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e 74 63 6c 20 l\mkopcodec.tcl c890: 6f 70 63 6f 64 65 73 2e 68 20 3e 20 6f 70 63 6f opcodes.h > opco c8a0: 64 65 73 2e 63 0a 0a 6f 70 63 6f 64 65 73 2e 68 des.c..opcodes.h c8b0: 3a 09 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 :.parse.h$(TOP)
c8c0: 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 54 4f  \src\vdbe.c $(TO c8d0: 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 P)\tool\mkopcode c8e0: 68 2e 74 63 6c 0a 09 74 79 70 65 20 70 61 72 73 h.tcl..type pars c8f0: 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 e.h$(TOP)\src\v
c900: 64 62 65 2e 63 20 7c 20 24 28 54 43 4c 53 48 5f  dbe.c | $(TCLSH_ c910: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c CMD)$(TOP)\tool
c920: 5c 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 6c 20 3e  \mkopcodeh.tcl >
c930: 20 6f 70 63 6f 64 65 73 2e 68 0a 0a 23 20 52 75   opcodes.h..# Ru
c940: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 70 61 72  les to build par
c950: 73 65 2e 63 20 61 6e 64 20 70 61 72 73 65 2e 68  se.c and parse.h
c960: 20 2d 20 74 68 65 20 6f 75 74 70 75 74 73 20 6f   - the outputs o
c970: 66 20 6c 65 6d 6f 6e 2e 0a 23 0a 70 61 72 73 65  f lemon..#.parse
c980: 2e 68 3a 09 70 61 72 73 65 2e 63 0a 0a 70 61 72  .h:.parse.c..par
c990: 73 65 2e 63 3a 09 24 28 54 4f 50 29 5c 73 72 63  se.c:.$(TOP)\src c9a0: 5c 70 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 \parse.y lemon.e c9b0: 78 65 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 61 xe$(TOP)\tool\a
c9c0: 64 64 6f 70 63 6f 64 65 73 2e 74 63 6c 0a 09 64  ddopcodes.tcl..d
c9d0: 65 6c 20 2f 51 20 70 61 72 73 65 2e 79 20 70 61  el /Q parse.y pa
c9e0: 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74 65  rse.h parse.h.te
c9f0: 6d 70 20 32 3e 4e 55 4c 0a 09 63 6f 70 79 20 24  mp 2>NUL..copy $ca00: 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e (TOP)\src\parse. ca10: 79 20 2e 0a 09 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 y ....\lemon.exe ca20: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46$(REQ_FEATURE_F
ca30: 4c 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54  LAGS) $(OPT_FEAT ca40: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 URE_FLAGS)$(EXT
ca50: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20  _FEATURE_FLAGS)
ca60: 24 28 4f 50 54 53 29 20 70 61 72 73 65 2e 79 0a  $(OPTS) parse.y. ca70: 09 6d 6f 76 65 20 70 61 72 73 65 2e 68 20 70 61 .move parse.h pa ca80: 72 73 65 2e 68 2e 74 65 6d 70 0a 09 24 28 54 43 rse.h.temp..$(TC
ca90: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\ caa0: 74 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 65 73 2e tool\addopcodes. cab0: 74 63 6c 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 tcl parse.h.temp cac0: 20 3e 20 70 61 72 73 65 2e 68 0a 0a 24 28 53 51 > parse.h..$(SQ
cad0: 4c 49 54 45 33 48 29 3a 09 24 28 54 4f 50 29 5c  LITE3H):.$(TOP)\ cae0: 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e 20 src\sqlite.h.in caf0: 24 28 54 4f 50 29 5c 6d 61 6e 69 66 65 73 74 2e$(TOP)\manifest.
cb00: 75 75 69 64 20 24 28 54 4f 50 29 5c 56 45 52 53  uuid $(TOP)\VERS cb10: 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 ION..$(TCLSH_CMD
cb20: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b  ) $(TOP)\tool\mk cb30: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 24 28 54 sqlite3h.tcl$(T
cb40: 4f 50 3a 5c 3d 2f 29 20 3e 20 24 28 53 51 4c 49  OP:\=/) > $(SQLI cb50: 54 45 33 48 29 0a 0a 73 71 6c 69 74 65 33 65 78 TE3H)..sqlite3ex cb60: 74 2e 68 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 t.h:..target_sou cb70: 72 63 65 0a 09 74 79 70 65 20 74 73 72 63 5c 73 rce..type tsrc\s cb80: 71 6c 69 74 65 33 65 78 74 2e 68 20 7c 20 24 28 qlite3ext.h |$(
cb90: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP cba0: 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t cbb0: 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 5c cl regsub "\(\*\ cbc0: 29 22 20 22 28 53 51 4c 49 54 45 5f 43 41 4c 4c )" "(SQLITE_CALL cbd0: 42 41 43 4b 20 2a 29 22 20 5c 0a 09 09 7c 20 24 BACK *)" \...|$
cbe0: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO cbf0: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. cc00: 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a tcl regsub "\(\* cc10: 22 20 22 28 53 51 4c 49 54 45 5f 41 50 49 43 41 " "(SQLITE_APICA cc20: 4c 4c 20 2a 22 20 3e 20 73 71 6c 69 74 65 33 65 LL *" > sqlite3e cc30: 78 74 2e 68 0a 09 63 6f 70 79 20 2f 59 20 73 71 xt.h..copy /Y sq cc40: 6c 69 74 65 33 65 78 74 2e 68 20 74 73 72 63 5c lite3ext.h tsrc\ cc50: 73 71 6c 69 74 65 33 65 78 74 2e 68 0a 0a 6d 6b sqlite3ext.h..mk cc60: 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 3a keywordhash.exe: cc70: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b .$(TOP)\tool\mkk
cc80: 65 79 77 6f 72 64 68 61 73 68 2e 63 0a 09 24 28  eywordhash.c..$( cc90: 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 BCC)$(NO_WARN)
cca0: 2d 46 65 24 40 20 24 28 52 45 51 5f 46 45 41 54  -Fe$@$(REQ_FEAT
ccb0: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT ccc0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 _FEATURE_FLAGS) ccd0: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c$(EXT_FEATURE_FL
cce0: 41 47 53 29 20 24 28 4f 50 54 53 29 20 5c 0a 09  AGS) $(OPTS) \.. ccf0: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b .$(TOP)\tool\mkk
cd00: 65 79 77 6f 72 64 68 61 73 68 2e 63 20 2f 6c 69  eywordhash.c /li
cd10: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
cd20: 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e  NLTLINKOPTS) $(N cd30: 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 6b 65 79 LTLIBPATHS)..key cd40: 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 28 54 4f wordhash.h:.$(TO
cd50: 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72  P)\tool\mkkeywor
cd60: 64 68 61 73 68 2e 63 20 6d 6b 6b 65 79 77 6f 72  dhash.c mkkeywor
cd70: 64 68 61 73 68 2e 65 78 65 0a 09 2e 5c 6d 6b 6b  dhash.exe...\mkk
cd80: 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 20 3e  eywordhash.exe >
cd90: 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 0a 0a   keywordhash.h..
cda0: 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69  ..# Rules to bui
cdb0: 6c 64 20 74 68 65 20 65 78 74 65 6e 73 69 6f 6e  ld the extension
cdc0: 20 6f 62 6a 65 63 74 73 2e 0a 23 0a 69 63 75 2e   objects..#.icu.
cdd0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 69  lo:.$(TOP)\ext\i cde0: 63 75 5c 69 63 75 2e 63 20 24 28 48 44 52 29 20 cu\icu.c$(HDR)
cdf0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
ce00: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C ce10: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e OMPILE_OPTS)$(N
ce20: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
ce30: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\ ce40: 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 0a 0a 66 ext\icu\icu.c..f ce50: 74 73 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 ts2.lo:.$(TOP)\e
ce60: 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 24  xt\fts2\fts2.c $ce70: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a (HDR)$(EXTHDR).
ce80: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
ce90: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
cea0: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D ceb0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 SQLITE_CORE -c$
cec0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
ced0: 74 73 32 2e 63 0a 0a 66 74 73 32 5f 68 61 73 68  ts2.c..fts2_hash
cee0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ cef0: 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63 fts2\fts2_hash.c cf00: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR cf10: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
cf20: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O cf30: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
cf40: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
cf50: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 cf60: 5c 66 74 73 32 5f 68 61 73 68 2e 63 0a 0a 66 74 \fts2_hash.c..ft cf70: 73 32 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 s2_icu.lo:.$(TOP
cf80: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
cf90: 69 63 75 2e 63 20 24 28 48 44 52 29 20 24 28 45  icu.c $(HDR)$(E
cfa0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP cfb0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
cfc0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W cfd0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO cfe0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
cff0: 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63  \fts2\fts2_icu.c
d000: 0a 0a 66 74 73 32 5f 70 6f 72 74 65 72 2e 6c 6f  ..fts2_porter.lo
d010: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts d020: 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 2\fts2_porter.c d030: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) d040: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d050: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d060: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d TS)$(NO_WARN) -
d070: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
d080: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ d090: 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 0a 0a 66 fts2_porter.c..f d0a0: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f ts2_tokenizer.lo d0b0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
d0c0: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
d0d0: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR)$(EXTH
d0e0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE d0f0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
d100: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e  _OPTS) $(NO_WARN d110: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 ) -DSQLITE_CORE d120: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 -c$(TOP)\ext\ft
d130: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65  s2\fts2_tokenize
d140: 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 6e 69  r.c..fts2_tokeni
d150: 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  zer1.lo:.$(TOP)\ d160: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f ext\fts2\fts2_to d170: 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48 44 52 kenizer1.c$(HDR
d180: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
d190: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE d1a0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
d1b0: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
d1c0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP d1d0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ d1e0: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 66 74 tokenizer1.c..ft d1f0: 73 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 s3.lo:.$(TOP)\ex
d200: 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 24 28  t\fts3\fts3.c $( d210: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
d220: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
d230: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
d240: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS d250: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
d260: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
d270: 73 33 2e 63 0a 0a 66 74 73 33 5f 61 75 78 2e 6c  s3.c..fts3_aux.l
d280: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft d290: 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 24 28 s3\fts3_aux.c$(
d2a0: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR).. d2b0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C d2c0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS d2d0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 )$(NO_WARN) -DS
d2e0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $( d2f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft d300: 73 33 5f 61 75 78 2e 63 0a 0a 66 74 73 33 5f 65 s3_aux.c..fts3_e d310: 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 xpr.lo:.$(TOP)\e
d320: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70  xt\fts3\fts3_exp
d330: 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  r.c $(HDR)$(EXT
d340: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL d350: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
d360: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR d370: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 N) -DSQLITE_CORE d380: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 -c$(TOP)\ext\f
d390: 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 0a  ts3\fts3_expr.c.
d3a0: 0a 66 74 73 33 5f 68 61 73 68 2e 6c 6f 3a 09 24  .fts3_hash.lo:.$d3b0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f d3c0: 74 73 33 5f 68 61 73 68 2e 63 20 24 28 48 44 52 ts3_hash.c$(HDR
d3d0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
d3e0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE d3f0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
d400: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
d410: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP d420: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ d430: 68 61 73 68 2e 63 0a 0a 66 74 73 33 5f 69 63 75 hash.c..fts3_icu d440: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c .lo:.$(TOP)\ext\
d450: 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63 20  fts3\fts3_icu.c
d460: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
d470: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
d480: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
d490: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - d4a0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c d4b0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
d4c0: 66 74 73 33 5f 69 63 75 2e 63 0a 0a 66 74 73 33  fts3_icu.c..fts3
d4d0: 5f 73 6e 69 70 70 65 74 2e 6c 6f 3a 09 24 28 54  _snippet.lo:.$(T d4e0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts d4f0: 33 5f 73 6e 69 70 70 65 74 2e 63 20 24 28 48 44 3_snippet.c$(HD
d500: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
d510: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d520: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d530: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
d540: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO d550: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 d560: 5f 73 6e 69 70 70 65 74 2e 63 0a 0a 66 74 73 33 _snippet.c..fts3 d570: 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f _porter.lo:.$(TO
d580: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
d590: 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29  _porter.c $(HDR) d5a0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT d5b0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d5c0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( d5d0: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT d5e0: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
d5f0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70  \ext\fts3\fts3_p
d600: 6f 72 74 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f  orter.c..fts3_to
d610: 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f  kenizer.lo:.$(TO d620: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 d630: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 _tokenizer.c$(H
d640: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
d650: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO d660: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) d670: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51$(NO_WARN) -DSQ
d680: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T d690: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts d6a0: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 3_tokenizer.c..f d6b0: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c ts3_tokenizer1.l d6c0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
d6d0: 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  s3\fts3_tokenize
d6e0: 72 31 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  r1.c $(HDR)$(EX
d6f0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI d700: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
d710: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA d720: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR d730: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
d740: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
d750: 7a 65 72 31 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b  zer1.c..fts3_tok
d760: 65 6e 69 7a 65 5f 76 74 61 62 2e 6c 6f 3a 09 24  enize_vtab.lo:.$d770: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f d780: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 ts3_tokenize_vta d790: 62 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 b.c$(HDR) $(EXT d7a0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
d7b0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d7c0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
d7d0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
d7e0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f d7f0: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a ts3\fts3_tokeniz d800: 65 5f 76 74 61 62 2e 63 0a 0a 66 74 73 33 5f 75 e_vtab.c..fts3_u d810: 6e 69 63 6f 64 65 2e 6c 6f 3a 09 24 28 54 4f 50 nicode.lo:.$(TOP
d820: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
d830: 75 6e 69 63 6f 64 65 2e 63 20 24 28 48 44 52 29  unicode.c $(HDR) d840: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT d850: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d860: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( d870: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT d880: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
d890: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75  \ext\fts3\fts3_u
d8a0: 6e 69 63 6f 64 65 2e 63 0a 0a 66 74 73 33 5f 75  nicode.c..fts3_u
d8b0: 6e 69 63 6f 64 65 32 2e 6c 6f 3a 09 24 28 54 4f  nicode2.lo:.$(TO d8c0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 d8d0: 5f 75 6e 69 63 6f 64 65 32 2e 63 20 24 28 48 44 _unicode2.c$(HD
d8e0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
d8f0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d900: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d910: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
d920: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO d930: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 d940: 5f 75 6e 69 63 6f 64 65 32 2e 63 0a 0a 66 74 73 _unicode2.c..fts d950: 33 5f 77 72 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 3_write.lo:.$(TO
d960: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
d970: 5f 77 72 69 74 65 2e 63 20 24 28 48 44 52 29 20  _write.c $(HDR) d980: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC d990: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
d9a0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N d9b0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE d9c0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
d9d0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72  ext\fts3\fts3_wr
d9e0: 69 74 65 2e 63 0a 0a 72 74 72 65 65 2e 6c 6f 3a  ite.c..rtree.lo:
d9f0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65  .$(TOP)\ext\rtre da00: 65 5c 72 74 72 65 65 2e 63 20 24 28 48 44 52 29 e\rtree.c$(HDR)
da10: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
da20: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ da30: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 COMPILE_OPTS)$(
da40: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
da50: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP) da60: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree da70: 2e 63 0a 0a 73 71 6c 69 74 65 33 73 65 73 73 69 .c..sqlite3sessi da80: 6f 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 on.lo:.$(TOP)\ex
da90: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65  t\session\sqlite
daa0: 33 73 65 73 73 69 6f 6e 2e 63 20 24 28 48 44 52  3session.c $(HDR dab0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L dac0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
dad0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $dae0: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI daf0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
db00: 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71  )\ext\session\sq
db10: 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 63 0a 0a  lite3session.c..
db20: 23 20 46 54 53 35 20 74 68 69 6e 67 73 0a 23 0a  # FTS5 things.#.
db30: 46 54 53 35 5f 53 52 43 20 3d 20 5c 0a 20 20 20  FTS5_SRC = \.
db40: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\ db50: 66 74 73 35 2e 68 20 5c 0a 20 20 20 24 28 54 4f fts5.h \.$(TO
db60: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
db70: 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  Int.h \.   $(TOP db80: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f )\ext\fts5\fts5_ db90: 61 75 78 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 aux.c \.$(TOP
dba0: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f  )\ext\fts5\fts5_
dbb0: 62 75 66 66 65 72 2e 63 20 5c 0a 20 20 20 24 28  buffer.c \.   $( dbc0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 TOP)\ext\fts5\ft dbd0: 73 35 5f 6d 61 69 6e 2e 63 20 5c 0a 20 20 20 24 s5_main.c \.$
dbe0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66  (TOP)\ext\fts5\f
dbf0: 74 73 35 5f 63 6f 6e 66 69 67 2e 63 20 5c 0a 20  ts5_config.c \.
dc00: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts dc10: 35 5c 66 74 73 35 5f 65 78 70 72 2e 63 20 5c 0a 5\fts5_expr.c \. dc20: 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74$(TOP)\ext\ft
dc30: 73 35 5c 66 74 73 35 5f 68 61 73 68 2e 63 20 5c  s5\fts5_hash.c \
dc40: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  .   $(TOP)\ext\f dc50: 74 73 35 5c 66 74 73 35 5f 69 6e 64 65 78 2e 63 ts5\fts5_index.c dc60: 20 5c 0a 20 20 20 66 74 73 35 70 61 72 73 65 2e \. fts5parse. dc70: 63 20 66 74 73 35 70 61 72 73 65 2e 68 20 5c 0a c fts5parse.h \. dc80: 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74$(TOP)\ext\ft
dc90: 73 35 5c 66 74 73 35 5f 73 74 6f 72 61 67 65 2e  s5\fts5_storage.
dca0: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex dcb0: 74 5c 66 74 73 35 5c 66 74 73 35 5f 74 6f 6b 65 t\fts5\fts5_toke dcc0: 6e 69 7a 65 2e 63 20 5c 0a 20 20 20 24 28 54 4f nize.c \.$(TO
dcd0: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
dce0: 5f 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20  _unicode2.c \.
dcf0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35   $(TOP)\ext\fts5 dd00: 5c 66 74 73 35 5f 76 61 72 69 6e 74 2e 63 20 5c \fts5_varint.c \ dd10: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 .$(TOP)\ext\f
dd20: 74 73 35 5c 66 74 73 35 5f 76 6f 63 61 62 2e 63  ts5\fts5_vocab.c
dd30: 0a 0a 66 74 73 35 70 61 72 73 65 2e 63 3a 09 24  ..fts5parse.c:.$dd40: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f dd50: 74 73 35 70 61 72 73 65 2e 79 20 6c 65 6d 6f 6e ts5parse.y lemon dd60: 2e 65 78 65 0a 09 63 6f 70 79 20 24 28 54 4f 50 .exe..copy$(TOP
dd70: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 70  )\ext\fts5\fts5p
dd80: 61 72 73 65 2e 79 20 2e 0a 09 64 65 6c 20 2f 51  arse.y ...del /Q
dd90: 20 66 74 73 35 70 61 72 73 65 2e 68 20 32 3e 4e   fts5parse.h 2>N
dda0: 55 4c 0a 09 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20  UL...\lemon.exe
ddb0: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c  $(REQ_FEATURE_FL ddc0: 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55 AGS)$(OPT_FEATU
ddd0: 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 5f  RE_FLAGS) $(EXT_ dde0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 FEATURE_FLAGS)$
ddf0: 28 4f 50 54 53 29 20 66 74 73 35 70 61 72 73 65  (OPTS) fts5parse
de00: 2e 79 0a 0a 66 74 73 35 70 61 72 73 65 2e 68 3a  .y..fts5parse.h:
de10: 09 66 74 73 35 70 61 72 73 65 2e 63 0a 0a 66 74  .fts5parse.c..ft
de20: 73 35 2e 63 3a 09 24 28 46 54 53 35 5f 53 52 43  s5.c:.$(FTS5_SRC de30: 29 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 )..$(TCLSH_CMD)
de40: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\ de50: 74 6f 6f 6c 5c 6d 6b 66 74 73 35 63 2e 74 63 6c tool\mkfts5c.tcl de60: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 ..copy$(TOP)\ex
de70: 74 5c 66 74 73 35 5c 66 74 73 35 2e 68 20 2e 0a  t\fts5\fts5.h ..
de80: 0a 66 74 73 35 2e 6c 6f 3a 09 66 74 73 35 2e 63  .fts5.lo:.fts5.c
de90: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR)$(EXTHDR
dea0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) deb0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
dec0: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  PTS) $(NO_WARN) ded0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 -DSQLITE_CORE -c dee0: 20 66 74 73 35 2e 63 0a 0a 66 74 73 35 5f 65 78 fts5.c..fts5_ex def0: 74 2e 6c 6f 3a 09 66 74 73 35 2e 63 20 24 28 48 t.lo:.fts5.c$(H
df00: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
df10: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f  (LTCOMPILE) $(NO df20: 5f 57 41 52 4e 29 20 2d 63 20 66 74 73 35 2e 63 _WARN) -c fts5.c df30: 0a 0a 66 74 73 35 2e 64 6c 6c 3a 09 66 74 73 35 ..fts5.dll:.fts5 df40: 5f 65 78 74 2e 6c 6f 0a 09 24 28 4c 44 29 20 24 _ext.lo..$(LD) $df50: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
df60: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP df70: 41 54 48 53 29 20 2f 44 4c 4c 20 2f 4f 55 54 3a ATHS) /DLL /OUT: df80: 24 40 20 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 0a$@ fts5_ext.lo..
df90: 73 71 6c 69 74 65 33 72 62 75 2e 6c 6f 3a 09 24  sqlite3rbu.lo:.$dfa0: 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71 (TOP)\ext\rbu\sq dfb0: 6c 69 74 65 33 72 62 75 2e 63 20 24 28 48 44 52 lite3rbu.c$(HDR
dfc0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
dfd0: 54 43 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49  TCOMPILE) -DSQLI
dfe0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP dff0: 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 )\ext\rbu\sqlite e000: 33 72 62 75 2e 63 0a 0a 23 20 52 75 6c 65 73 20 3rbu.c..# Rules e010: 74 6f 20 62 75 69 6c 64 20 74 68 65 20 27 74 65 to build the 'te e020: 73 74 66 69 78 74 75 72 65 27 20 61 70 70 6c 69 stfixture' appli e030: 63 61 74 69 6f 6e 2e 0a 23 0a 23 20 49 66 20 75 cation..#.# If u e040: 73 69 6e 67 20 74 68 65 20 61 6d 61 6c 67 61 6d sing the amalgam e050: 61 74 69 6f 6e 2c 20 75 73 65 20 73 71 6c 69 74 ation, use sqlit e060: 65 33 2e 63 20 64 69 72 65 63 74 6c 79 20 74 6f e3.c directly to e070: 20 62 75 69 6c 64 20 74 68 65 20 74 65 73 74 0a build the test. e080: 23 20 66 69 78 74 75 72 65 2e 20 20 4f 74 68 65 # fixture. Othe e090: 72 77 69 73 65 20 6c 69 6e 6b 20 61 67 61 69 6e rwise link again e0a0: 73 74 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 st libsqlite3.li e0b0: 62 2e 20 20 28 54 68 69 73 20 64 69 73 74 69 6e b. (This distin e0c0: 63 74 69 6f 6e 20 69 73 0a 23 20 6e 65 63 65 73 ction is.# neces e0d0: 73 61 72 79 20 62 65 63 61 75 73 65 20 74 68 65 sary because the e0e0: 20 74 65 73 74 20 66 69 78 74 75 72 65 20 72 65 test fixture re e0f0: 71 75 69 72 65 73 20 6e 6f 6e 2d 41 50 49 20 73 quires non-API s e100: 79 6d 62 6f 6c 73 20 77 68 69 63 68 20 61 72 65 ymbols which are e110: 0a 23 20 68 69 64 64 65 6e 20 77 68 65 6e 20 74 .# hidden when t e120: 68 65 20 6c 69 62 72 61 72 79 20 69 73 20 62 75 he library is bu e130: 69 6c 74 20 76 69 61 20 74 68 65 20 61 6d 61 6c ilt via the amal e140: 67 61 6d 61 74 69 6f 6e 29 2e 0a 23 0a 54 45 53 gamation)..#.TES e150: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d TFIXTURE_FLAGS = e160: 20 2d 44 54 43 4c 53 48 3d 31 20 2d 44 53 51 4c -DTCLSH=1 -DSQL e170: 49 54 45 5f 54 45 53 54 3d 31 20 2d 44 53 51 4c ITE_TEST=1 -DSQL e180: 49 54 45 5f 43 52 41 53 48 5f 54 45 53 54 3d 31 ITE_CRASH_TEST=1 e190: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 .TESTFIXTURE_FLA e1a0: 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 GS =$(TESTFIXTU
e1b0: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
e1c0: 54 45 5f 53 45 52 56 45 52 3d 31 20 2d 44 53 51  TE_SERVER=1 -DSQ
e1d0: 4c 49 54 45 5f 50 52 49 56 41 54 45 3d 22 22 0a  LITE_PRIVATE="".
e1e0: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
e1f0: 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52  S = $(TESTFIXTUR e200: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 E_FLAGS) -DSQLIT e210: 45 5f 43 4f 52 45 20 24 28 4e 4f 5f 57 41 52 4e E_CORE$(NO_WARN
e220: 29 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c  ).TESTFIXTURE_FL
e230: 41 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54  AGS = $(TESTFIXT e240: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL e250: 49 54 45 5f 53 45 52 49 45 53 5f 43 4f 4e 53 54 ITE_SERIES_CONST e260: 52 41 49 4e 54 5f 56 45 52 49 46 59 3d 31 0a 54 RAINT_VERIFY=1.T e270: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 ESTFIXTURE_FLAGS e280: 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 =$(TESTFIXTURE
e290: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45  _FLAGS) -DSQLITE
e2a0: 5f 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49  _DEFAULT_PAGE_SI
e2b0: 5a 45 3d 31 30 32 34 0a 54 45 53 54 46 49 58 54  ZE=1024.TESTFIXT
e2c0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45  URE_FLAGS = $(TE e2d0: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 STFIXTURE_FLAGS) e2e0: 20 24 28 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50$(TEST_CCONV_OP
e2f0: 54 53 29 0a 0a 54 45 53 54 46 49 58 54 55 52 45  TS)..TESTFIXTURE
e300: 5f 53 52 43 30 20 3d 20 24 28 54 45 53 54 45 58  _SRC0 = $(TESTEX e310: 54 29 20 24 28 54 45 53 54 53 52 43 32 29 0a 54 T)$(TESTSRC2).T
e320: 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 31 20  ESTFIXTURE_SRC1
e330: 3d 20 24 28 54 45 53 54 45 58 54 29 20 24 28 53  = $(TESTEXT)$(S
e340: 51 4c 49 54 45 33 43 29 0a 21 49 46 20 24 28 55  QLITE3C).!IF $(U e350: 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 SE_AMALGAMATION) e360: 3d 3d 30 0a 54 45 53 54 46 49 58 54 55 52 45 5f ==0.TESTFIXTURE_ e370: 53 52 43 20 3d 20 24 28 54 45 53 54 53 52 43 29 SRC =$(TESTSRC)
e380: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls e390: 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54 46 49 qlite.c$(TESTFI
e3a0: 58 54 55 52 45 5f 53 52 43 30 29 0a 21 45 4c 53  XTURE_SRC0).!ELS
e3b0: 45 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52  E.TESTFIXTURE_SR
e3c0: 43 20 3d 20 24 28 54 45 53 54 53 52 43 29 20 24  C = $(TESTSRC)$
e3d0: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c  (TOP)\src\tclsql
e3e0: 69 74 65 2e 63 20 24 28 54 45 53 54 46 49 58 54  ite.c $(TESTFIXT e3f0: 55 52 45 5f 53 52 43 31 29 0a 21 45 4e 44 49 46 URE_SRC1).!ENDIF e400: 0a 0a 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c ..sqlite_tclDecl e410: 73 2e 68 3a 0a 09 65 63 68 6f 20 23 69 66 6e 64 s.h:..echo #ifnd e420: 65 66 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 ef SQLITE_TCLAPI e430: 20 3e 20 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 > sqlite_tclDec e440: 6c 73 2e 68 0a 09 65 63 68 6f 20 23 20 20 64 65 ls.h..echo # de e450: 66 69 6e 65 20 53 51 4c 49 54 45 5f 54 43 4c 41 fine SQLITE_TCLA e460: 50 49 20 3e 3e 20 73 71 6c 69 74 65 5f 74 63 6c PI >> sqlite_tcl e470: 44 65 63 6c 73 2e 68 0a 09 65 63 68 6f 20 23 65 Decls.h..echo #e e480: 6e 64 69 66 20 3e 3e 20 73 71 6c 69 74 65 5f 74 ndif >> sqlite_t e490: 63 6c 44 65 63 6c 73 2e 68 0a 09 74 79 70 65 20 clDecls.h..type e4a0: 22 24 28 54 43 4c 49 4e 43 44 49 52 29 5c 74 63 "$(TCLINCDIR)\tc
e4b0: 6c 44 65 63 6c 73 2e 68 22 20 5c 0a 09 09 7c 20  lDecls.h" \...|
e4c0: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
e4d0: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
e4e0: 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5e 28 45  .tcl regsub "^(E
e4f0: 58 54 45 52 4e 28 3f 3a 20 43 4f 4e 53 54 5c 64  XTERN(?: CONST\d
e500: 2b 3f 29 3f 5c 73 2b 3f 5b 5e 5c 28 5d 2a 3f 5c  +?)?\s+?[^\(]*?\
e510: 73 2b 3f 29 54 63 6c 5f 22 20 22 5c 31 20 53 51  s+?)Tcl_" "\1 SQ
e520: 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f  LITE_TCLAPI Tcl_
e530: 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f  " \...| $(TCLSH_ e540: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c CMD)$(TOP)\tool
e550: 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67  \replace.tcl reg
e560: 73 75 62 20 22 5e 28 45 58 54 45 52 4e 5c 73 2b  sub "^(EXTERN\s+
e570: 3f 28 3f 3a 76 6f 69 64 7c 56 4f 49 44 29 5c 73  ?(?:void|VOID)\s
e580: 2b 3f 29 54 63 6c 46 72 65 65 4f 62 6a 22 20 22  +?)TclFreeObj" "
e590: 5c 31 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49  \1 SQLITE_TCLAPI
e5a0: 20 54 63 6c 46 72 65 65 4f 62 6a 22 20 5c 0a 09   TclFreeObj" \..
e5b0: 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20  .| $(TCLSH_CMD) e5c0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c$(TOP)\tool\repl
e5d0: 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22  ace.tcl regsub "
e5e0: 5c 28 5c 2a 74 63 6c 5f 22 20 22 28 53 51 4c 49  \(\*tcl_" "(SQLI
e5f0: 54 45 5f 54 43 4c 41 50 49 20 2a 74 63 6c 5f 22  TE_TCLAPI *tcl_"
e600: 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43   \...| $(TCLSH_C e610: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
e620: 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73  replace.tcl regs
e630: 75 62 20 22 5c 28 5c 2a 74 63 6c 46 72 65 65 4f  ub "\(\*tclFreeO
e640: 62 6a 22 20 22 28 53 51 4c 49 54 45 5f 54 43 4c  bj" "(SQLITE_TCL
e650: 41 50 49 20 2a 74 63 6c 46 72 65 65 4f 62 6a 22  API *tclFreeObj"
e660: 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43   \...| $(TCLSH_C e670: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
e680: 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73  replace.tcl regs
e690: 75 62 20 22 5c 28 5c 2a 22 20 22 28 53 51 4c 49  ub "\(\*" "(SQLI
e6a0: 54 45 5f 54 43 4c 41 50 49 20 2a 22 20 3e 3e 20  TE_TCLAPI *" >>
e6b0: 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e  sqlite_tclDecls.
e6c0: 68 0a 0a 73 71 6c 69 74 65 5f 74 63 6c 2e 68 3a  h..sqlite_tcl.h:
e6d0: 09 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73  .sqlite_tclDecls
e6e0: 2e 68 0a 09 74 79 70 65 20 22 24 28 54 43 4c 49  .h..type "$(TCLI e6f0: 4e 43 44 49 52 29 5c 74 63 6c 2e 68 22 20 7c 20 NCDIR)\tcl.h" | e700: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54$(TCLSH_CMD) $(T e710: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 OP)\tool\replace e720: 2e 74 63 6c 20 65 78 61 63 74 20 74 63 6c 44 65 .tcl exact tclDe e730: 63 6c 73 2e 68 20 73 71 6c 69 74 65 5f 74 63 6c cls.h sqlite_tcl e740: 44 65 63 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 28 Decls.h \...|$(
e750: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP e760: 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t e770: 63 6c 20 72 65 67 73 75 62 20 22 74 79 70 65 64 cl regsub "typed e780: 65 66 20 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 20 ef (.*?)\(Tcl_" e790: 22 74 79 70 65 64 65 66 20 5c 31 20 28 53 51 4c "typedef \1 (SQL e7a0: 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22 ITE_TCLAPI Tcl_" e7b0: 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 \...|$(TCLSH_C
e7c0: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\ e7d0: 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 replace.tcl exac e7e0: 74 20 22 76 6f 69 64 20 28 2a 66 72 65 65 50 72 t "void (*freePr e7f0: 6f 63 29 22 20 22 76 6f 69 64 20 28 53 51 4c 49 oc)" "void (SQLI e800: 54 45 5f 54 43 4c 41 50 49 20 2a 66 72 65 65 50 TE_TCLAPI *freeP e810: 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54 43 roc)" \...|$(TC
e820: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\ e830: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c tool\replace.tcl e840: 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73 68 exact "Tcl_Hash e850: 45 6e 74 72 79 20 2a 28 2a 66 69 6e 64 50 72 6f Entry *(*findPro e860: 63 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 c)" "Tcl_HashEnt e870: 72 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c 41 ry *(SQLITE_TCLA e880: 50 49 20 2a 66 69 6e 64 50 72 6f 63 29 22 20 5c PI *findProc)" \ e890: 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
e8a0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re e8b0: 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 place.tcl exact e8c0: 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a "Tcl_HashEntry * e8d0: 28 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20 22 (*createProc)" " e8e0: 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a 28 Tcl_HashEntry *( e8f0: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 63 SQLITE_TCLAPI *c e900: 72 65 61 74 65 50 72 6f 63 29 22 20 3e 3e 20 73 reateProc)" >> s e910: 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 0a 74 65 73 qlite_tcl.h..tes e920: 74 66 69 78 74 75 72 65 2e 65 78 65 3a 09 24 28 tfixture.exe:.$(
e930: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 29  TESTFIXTURE_SRC)
e940: 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 4c   $(SQLITE3H)$(L
e950: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 48 44 52  IBRESOBJS) $(HDR e960: 29 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 09 ) sqlite_tcl.h.. e970: 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49$(LTLINK) -DSQLI
e980: 54 45 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54  TE_NO_SYNC=1 $(T e990: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 ESTFIXTURE_FLAGS e9a0: 29 20 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 ) \...-DBUILD_sq e9b0: 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 lite -I$(TCLINCD
e9c0: 49 52 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49  IR) \...$(TESTFI e9d0: 58 54 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f XTURE_SRC) \.../ e9e0: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 link$(LDFLAGS)
e9f0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28  $(LTLINKOPTS)$(
ea00: 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49  LTLIBPATHS) $(LI ea10: 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 BRESOBJS)$(LTLI
ea20: 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 65 78  BS) $(TLIBS)..ex ea30: 74 65 6e 73 69 6f 6e 74 65 73 74 3a 09 74 65 73 tensiontest:.tes ea40: 74 66 69 78 74 75 72 65 2e 65 78 65 20 74 65 73 tfixture.exe tes ea50: 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 0a 09 40 73 tloadext.dll..@s ea60: 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c et PATH=$(LIBTCL
ea70: 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e  PATH);$(PATH)... ea80: 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 \testfixture.exe ea90: 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6c 6f 61$(TOP)\test\loa
eaa0: 64 65 78 74 2e 74 65 73 74 20 24 28 54 45 53 54  dext.test $(TEST eab0: 4f 50 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74 3a OPTS)..fulltest: eac0: 09 24 28 54 45 53 54 50 52 4f 47 53 29 20 66 75 .$(TESTPROGS) fu
ead0: 7a 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 54  zztest..@set PAT
eae0: 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH); eaf0: 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66$(PATH)...\testf
eb00: 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP eb10: 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 )\test\all.test eb20: 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 73 6f 61$(TESTOPTS)..soa
eb30: 6b 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f  ktest:.$(TESTPRO eb40: 47 53 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 GS)..@set PATH=$
eb50: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50  (LIBTCLPATH);$(P eb60: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 ATH)...\testfixt eb70: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 ure.exe$(TOP)\t
eb80: 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f  est\all.test -so
eb90: 61 6b 3d 31 20 24 28 54 45 53 54 4f 50 54 53 29  ak=1 $(TESTOPTS) eba0: 0a 0a 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a 09 ..fulltestonly:. ebb0: 24 28 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a$(TESTPROGS) fuz
ebc0: 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 48  ztest..@set PATH
ebd0: 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24  =$(LIBTCLPATH);$
ebe0: 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69  (PATH)...\testfi
ebf0: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29  xture.exe $(TOP) ec00: 5c 74 65 73 74 5c 66 75 6c 6c 2e 74 65 73 74 0a \test\full.test. ec10: 0a 71 75 65 72 79 70 6c 61 6e 74 65 73 74 3a 09 .queryplantest:. ec20: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 testfixture.exe ec30: 73 68 65 6c 6c 0a 09 40 73 65 74 20 50 41 54 48 shell..@set PATH ec40: 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 =$(LIBTCLPATH);$ec50: 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 (PATH)...\testfi ec60: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 xture.exe$(TOP)
ec70: 5c 74 65 73 74 5c 70 65 72 6d 75 74 61 74 69 6f  \test\permutatio
ec80: 6e 73 2e 74 65 73 74 20 71 75 65 72 79 70 6c 61  ns.test querypla
ec90: 6e 6e 65 72 20 24 28 54 45 53 54 4f 50 54 53 29  nner $(TESTOPTS) eca0: 0a 0a 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a 7a ..fuzztest:.fuzz ecb0: 63 68 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75 7a check.exe...\fuz ecc0: 7a 63 68 65 63 6b 2e 65 78 65 20 24 28 46 55 5a zcheck.exe$(FUZ
ecd0: 5a 44 41 54 41 29 0a 0a 66 61 73 74 66 75 7a 7a  ZDATA)..fastfuzz
ece0: 74 65 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e  test:.fuzzcheck.
ecf0: 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b  exe...\fuzzcheck
ed00: 2e 65 78 65 20 2d 2d 6c 69 6d 69 74 2d 6d 65 6d  .exe --limit-mem
ed10: 20 31 30 30 4d 20 24 28 46 55 5a 5a 44 41 54 41   100M $(FUZZDATA ed20: 29 0a 0a 23 20 4d 69 6e 69 6d 61 6c 20 74 65 73 )..# Minimal tes ed30: 74 69 6e 67 20 74 68 61 74 20 72 75 6e 73 20 69 ting that runs i ed40: 6e 20 6c 65 73 73 20 74 68 61 6e 20 33 20 6d 69 n less than 3 mi ed50: 6e 75 74 65 73 20 28 6f 6e 20 61 20 66 61 73 74 nutes (on a fast ed60: 20 6d 61 63 68 69 6e 65 29 0a 23 0a 71 75 69 63 machine).#.quic ed70: 6b 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 ktest:.testfixtu ed80: 72 65 2e 65 78 65 20 73 6f 75 72 63 65 74 65 73 re.exe sourcetes ed90: 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c t..@set PATH=$(L
eda0: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54  IBTCLPATH);$(PAT edb0: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 H)...\testfixtur edc0: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
edd0: 74 5c 65 78 74 72 61 71 75 69 63 6b 2e 74 65 73  t\extraquick.tes
ede0: 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 23  t $(TESTOPTS)..# edf0: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d This is the com ee00: 6d 6f 6e 20 63 61 73 65 2e 20 20 52 75 6e 20 6d mon case. Run m ee10: 61 6e 79 20 74 65 73 74 73 20 74 68 61 74 20 64 any tests that d ee20: 6f 20 6e 6f 74 20 74 61 6b 65 20 74 6f 6f 20 6c o not take too l ee30: 6f 6e 67 2c 0a 23 20 69 6e 63 6c 75 64 69 6e 67 ong,.# including ee40: 20 66 75 7a 7a 63 68 65 63 6b 2c 20 73 71 6c 69 fuzzcheck, sqli ee50: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2c 20 61 6e te3_analyzer, an ee60: 64 20 73 71 6c 64 69 66 66 20 74 65 73 74 73 2e d sqldiff tests. ee70: 0a 23 0a 74 65 73 74 3a 09 24 28 54 45 53 54 50 .#.test:.$(TESTP
ee80: 52 4f 47 53 29 20 73 6f 75 72 63 65 74 65 73 74  ROGS) sourcetest
ee90: 20 66 61 73 74 66 75 7a 7a 74 65 73 74 0a 09 40   fastfuzztest..@
eea0: 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43  set PATH=$(LIBTC eeb0: 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 LPATH);$(PATH)..
eec0: 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  .\testfixture.ex
eed0: 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 76 65  e $(TOP)\test\ve eee0: 72 79 71 75 69 63 6b 2e 74 65 73 74 20 24 28 54 ryquick.test$(T
eef0: 45 53 54 4f 50 54 53 29 0a 0a 73 6d 6f 6b 65 74  ESTOPTS)..smoket
ef00: 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53  est:.$(TESTPROGS ef10: 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c )..@set PATH=$(L
ef20: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54  IBTCLPATH);$(PAT ef30: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 H)...\testfixtur ef40: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
ef50: 74 5c 6d 61 69 6e 2e 74 65 73 74 20 24 28 54 45  t\main.test $(TE ef60: 53 54 4f 50 54 53 29 0a 0a 73 71 6c 69 74 65 33 STOPTS)..sqlite3 ef70: 5f 61 6e 61 6c 79 7a 65 72 2e 63 3a 09 24 28 53 _analyzer.c:.$(S
ef80: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT ef90: 45 33 48 29 20 24 28 54 4f 50 29 5c 73 72 63 5c E3H)$(TOP)\src\
efa0: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 4f  tclsqlite.c $(TO efb0: 50 29 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61 P)\tool\spaceana efc0: 6c 2e 74 63 6c 20 73 71 6c 69 74 65 5f 74 63 6c l.tcl sqlite_tcl efd0: 2e 68 0a 09 65 63 68 6f 20 23 64 65 66 69 6e 65 .h..echo #define efe0: 20 54 43 4c 53 48 20 32 20 3e 20 24 40 0a 09 65 TCLSH 2 >$@..e
eff0: 63 68 6f 20 23 64 65 66 69 6e 65 20 53 51 4c 49  cho #define SQLI
f000: 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 54 41 54  TE_ENABLE_DBSTAT
f010: 5f 56 54 41 42 20 31 20 3e 3e 20 24 40 0a 09 63  _VTAB 1 >> $@..c f020: 6f 70 79 20 24 40 20 2b 20 24 28 53 51 4c 49 54 opy$@ + $(SQLIT f030: 45 33 43 29 20 2b 20 24 28 54 4f 50 29 5c 73 72 E3C) +$(TOP)\sr
f040: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 40  c\tclsqlite.c $@ f050: 0a 09 65 63 68 6f 20 73 74 61 74 69 63 20 63 6f ..echo static co f060: 6e 73 74 20 63 68 61 72 20 2a 74 63 6c 73 68 5f nst char *tclsh_ f070: 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64 29 7b main_loop(void){ f080: 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73 74 61 >>$@..echo sta
f090: 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a  tic const char *
f0a0: 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e 20 24  zMainloop = >> $f0b0: 40 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 @..$(TCLSH_CMD)
f0c0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74  $(TOP)\tool\tost f0d0: 72 2e 74 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f r.tcl$(TOP)\too
f0e0: 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20  l\spaceanal.tcl
f0f0: 3e 3e 20 24 40 0a 09 65 63 68 6f 20 3b 20 72 65  >> $@..echo ; re f100: 74 75 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20 turn zMainloop; f110: 7d 20 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 } >>$@..sqlite3
f120: 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73  _analyzer.exe:.s
f130: 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
f140: 63 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a  c $(LIBRESOBJS). f150: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ f160: 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71 WARN) -DBUILD_sq f170: 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 lite -I$(TCLINCD
f180: 49 52 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c  IR) sqlite3_anal
f190: 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b  yzer.c \.../link
f1a0: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS)$(LT
f1b0: 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49  LINKOPTS) $(LTLI f1c0: 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53 BPATHS)$(LIBRES
f1d0: 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20  OBJS) $(LTLIBS) f1e0: 24 28 54 4c 49 42 53 29 0a 0a 74 65 73 74 6c 6f$(TLIBS)..testlo
f1f0: 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  adext.lo:.$(TOP) f200: 5c 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78 \src\test_loadex f210: 74 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 t.c..$(LTCOMPILE
f220: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63 20  ) $(NO_WARN) -c f230: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
f240: 6c 6f 61 64 65 78 74 2e 63 0a 0a 74 65 73 74 6c  loadext.c..testl
f250: 6f 61 64 65 78 74 2e 64 6c 6c 3a 09 74 65 73 74  oadext.dll:.test
f260: 6c 6f 61 64 65 78 74 2e 6c 6f 0a 09 24 28 4c 44  loadext.lo..$(LD f270: 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c )$(LDFLAGS) $(L f280: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c TLINKOPTS)$(LTL
f290: 49 42 50 41 54 48 53 29 20 2f 44 4c 4c 20 2f 4f  IBPATHS) /DLL /O
f2a0: 55 54 3a 24 40 20 74 65 73 74 6c 6f 61 64 65 78  UT:$@ testloadex f2b0: 74 2e 6c 6f 0a 0a 73 68 6f 77 64 62 2e 65 78 65 t.lo..showdb.exe f2c0: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 :.$(TOP)\tool\sh
f2d0: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33  owdb.c $(SQLITE3 f2e0: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 C)$(SQLITE3H)..
f2f0: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
f300: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48  ARN) -DSQLITE_TH
f310: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c  READSAFE=0 -DSQL
f320: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
f330: 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a  TENSION -Fe$@ \. f340: 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 ..$(TOP)\tool\sh
f350: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33  owdb.c $(SQLITE3 f360: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
f370: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS f380: 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 65 )..showstat4.exe f390: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 :.$(TOP)\tool\sh
f3a0: 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49  owstat4.c $(SQLI f3b0: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 TE3C)$(SQLITE3H
f3c0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e  )..$(LTLINK)$(N
f3d0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
f3e0: 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
f3f0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
f400: 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40  _EXTENSION -Fe$@ f410: 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c \...$(TOP)\tool
f420: 5c 73 68 6f 77 73 74 61 74 34 2e 63 20 24 28 53  \showstat4.c $(S f430: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
f440: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI f450: 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 6a 6f 75 NKOPTS)..showjou f460: 72 6e 61 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 rnal.exe:.$(TOP)
f470: 5c 74 6f 6f 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61  \tool\showjourna
f480: 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  l.c $(SQLITE3C) f490: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c$(SQLITE3H)..$(L f4a0: 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e TLINK)$(NO_WARN
f4b0: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
f4c0: 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45  DSAFE=0 -DSQLITE
f4d0: 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e  _OMIT_LOAD_EXTEN
f4e0: 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24  SION -Fe$@ \...$
f4f0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 6a  (TOP)\tool\showj
f500: 6f 75 72 6e 61 6c 2e 63 20 24 28 53 51 4c 49 54  ournal.c $(SQLIT f510: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 E3C) /link$(LDF
f520: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50  LAGS) $(LTLINKOP f530: 54 53 29 0a 0a 73 68 6f 77 77 61 6c 2e 65 78 65 TS)..showwal.exe f540: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 :.$(TOP)\tool\sh
f550: 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45  owwal.c $(SQLITE f560: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 3C)$(SQLITE3H).
f570: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f  .$(LTLINK)$(NO_
f580: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54  WARN) -DSQLITE_T
f590: 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51  HREADSAFE=0 -DSQ
f5a0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45  LITE_OMIT_LOAD_E
f5b0: 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c  XTENSION -Fe$@ \ f5c0: 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 ...$(TOP)\tool\s
f5d0: 68 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54  howwal.c $(SQLIT f5e0: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 E3C) /link$(LDF
f5f0: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50  LAGS) $(LTLINKOP f600: 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 74 2e 65 TS)..changeset.e f610: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 xe:.$(TOP)\ext\s
f620: 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74  ession\changeset
f630: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 09  .c $(SQLITE3C).. f640: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W f650: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 ARN) -DSQLITE_TH f660: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c READSAFE=0 -DSQL f670: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 ITE_OMIT_LOAD_EX f680: 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a TENSION -Fe$@ \.
f690: 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73  ..$(TOP)\ext\ses f6a0: 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 2e 63 sion\changeset.c f6b0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
f6c0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
f6d0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66 74 73  LTLINKOPTS)..fts
f6e0: 33 76 69 65 77 2e 65 78 65 3a 09 24 28 54 4f 50  3view.exe:.$(TOP f6f0: 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f 6f 6c 5c )\ext\fts3\tool\ f700: 66 74 73 33 76 69 65 77 2e 63 20 24 28 53 51 4c fts3view.c$(SQL
f710: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 f720: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( f730: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT f740: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d E_THREADSAFE=0 - f750: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 DSQLITE_OMIT_LOA f760: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 D_EXTENSION -Fe$
f770: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74  @ \...$(TOP)\ext f780: 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76 \fts3\tool\fts3v f790: 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33 43 iew.c$(SQLITE3C
f7a0: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG f7b0: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
f7c0: 0a 0a 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e  ..rollback-test.
f7d0: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c  exe:.$(TOP)\tool f7e0: 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63 \rollback-test.c f7f0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S f800: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
f810: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) - f820: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 DSQLITE_THREADSA f830: 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d FE=0 -DSQLITE_OM f840: 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f IT_LOAD_EXTENSIO f850: 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24 28 54 4f N -Fe$@ \...$(TO f860: 50 29 5c 74 6f 6f 6c 5c 72 6f 6c 6c 62 61 63 6b P)\tool\rollback f870: 2d 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 -test.c$(SQLITE
f880: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  3C) /link $(LDFL f890: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
f8a0: 53 29 0a 0a 4c 6f 67 45 73 74 2e 65 78 65 3a 09  S)..LogEst.exe:.
f8b0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 6f 67 65  $(TOP)\tool\loge f8c0: 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 48 29 st.c$(SQLITE3H)
f8d0: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
f8e0: 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 54  _WARN) -Fe$@$(T
f8f0: 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74 2e  OP)\tool\LogEst.
f900: 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  c /link $(LDFLAG f910: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
f920: 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 3a  ..wordcount.exe:
f930: 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72  .$(TOP)\test\wor f940: 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54 dcount.c$(SQLIT
f950: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29  E3C) $(SQLITE3H) f960: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO f970: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ f980: 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 THREADSAFE=0 -DS f990: 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f QLITE_OMIT_LOAD_ f9a0: 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 EXTENSION -Fe$@
f9b0: 5c 0a 09 09 24 28 54 4f 50 29 5c 74 65 73 74 5c  \...$(TOP)\test\ f9c0: 77 6f 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 wordcount.c$(SQ
f9d0: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( f9e0: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
f9f0: 4b 4f 50 54 53 29 0a 0a 73 70 65 65 64 74 65 73  KOPTS)..speedtes
fa00: 74 31 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  t1.exe:.$(TOP)\t fa10: 65 73 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 est\speedtest1.c fa20: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53$(SQLITE3C) $(S fa30: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 QLITE3H)..$(LTLI
fa40: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) - fa50: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 DSQLITE_OMIT_LOA fa60: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 D_EXTENSION -Fe$
fa70: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 65 73  @ \...$(TOP)\tes fa80: 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 20 24 t\speedtest1.c$
fa90: 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b  (SQLITE3C) /link
faa0: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS)$(LT
fab0: 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72 62 75 2e 65  LINKOPTS)..rbu.e
fac0: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 72  xe:.$(TOP)\ext\r fad0: 62 75 5c 72 62 75 2e 63 20 24 28 54 4f 50 29 5c bu\rbu.c$(TOP)\
fae0: 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72  ext\rbu\sqlite3r
faf0: 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  bu.c $(SQLITE3C) fb00: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28$(SQLITE3H)..$( fb10: 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 LTLINK)$(NO_WAR
fb20: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  N) -DSQLITE_ENAB
fb30: 4c 45 5f 52 42 55 20 2d 46 65 24 40 20 5c 0a 09  LE_RBU -Fe$@ \.. fb40: 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c .$(TOP)\ext\rbu\
fb50: 72 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43  rbu.c $(SQLITE3C fb60: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 ) /link$(LDFLAG
fb70: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) fb80: 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a 09 63 6c 65 ..moreclean:.cle fb90: 61 6e 0a 09 64 65 6c 20 2f 51 20 24 28 53 51 4c an..del /Q$(SQL
fba0: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 fbb0: 48 29 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d 61 H) 2>NUL.# <</ma fbc0: 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a 0a 09 64 65 rk>>..clean:..de fbd0: 6c 20 2f 51 20 2a 2e 65 78 70 20 2a 2e 6c 6f 20 l /Q *.exp *.lo fbe0: 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e 6f 62 *.ilk *.lib *.ob fbf0: 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 62 20 2a 2e j *.ncb *.pdb *. fc00: 73 64 66 20 2a 2e 73 75 6f 20 32 3e 4e 55 4c 0a sdf *.suo 2>NUL. fc10: 09 64 65 6c 20 2f 51 20 2a 2e 62 73 63 20 2a 2e .del /Q *.bsc *. fc20: 64 65 66 20 2a 2e 63 6f 64 20 2a 2e 64 61 20 2a def *.cod *.da * fc30: 2e 62 62 20 2a 2e 62 62 67 20 2a 2e 76 63 20 67 .bb *.bbg *.vc g fc40: 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 4c 0a 09 64 mon.out 2>NUL..d fc50: 65 6c 20 2f 51 20 24 28 53 51 4c 49 54 45 33 45 el /Q$(SQLITE3E
fc60: 58 45 29 20 24 28 53 51 4c 49 54 45 33 44 4c 4c  XE) \$(SQLITE3DLL
fc70: 29 20 52 65 70 6c 61 63 65 2e 65 78 65 20 32 3e  ) Replace.exe 2>
fc80: 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 09  NUL.# <<mark>>..
fc90: 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63  del /Q sqlite3.c
fca0: 20 73 71 6c 69 74 65 33 2e 68 20 32 3e 4e 55 4c   sqlite3.h 2>NUL
fcb0: 0a 09 64 65 6c 20 2f 51 20 6f 70 63 6f 64 65 73  ..del /Q opcodes
fcc0: 2e 63 20 6f 70 63 6f 64 65 73 2e 68 20 32 3e 4e  .c opcodes.h 2>N
fcd0: 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e  UL..del /Q lemon
fce0: 2e 2a 20 6c 65 6d 70 61 72 2e 63 20 70 61 72 73  .* lempar.c pars
fcf0: 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  e.* 2>NUL..del /
fd00: 51 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e  Q mkkeywordhash.
fd10: 2a 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20  * keywordhash.h
fd20: 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6e 6f  2>NUL..del /Q no
fd30: 74 61 73 68 61 72 65 64 6c 69 62 2e 2a 20 32 3e  tasharedlib.* 2>
fd40: 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53  NUL..-rmdir /Q/S
fd50: 20 2e 64 65 70 73 20 32 3e 4e 55 4c 0a 09 2d 72   .deps 2>NUL..-r
fd60: 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73 20  mdir /Q/S .libs
fd70: 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51  2>NUL..-rmdir /Q
fd80: 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a 09 64  /S tsrc 2>NUL..d
fd90: 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73 6f  el /Q .target_so
fda0: 75 72 63 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  urce 2>NUL..del
fdb0: 2f 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65 78  /Q tclsqlite3.ex
fdc0: 65 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 20 73  e sqlite_tcl.h s
fdd0: 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68  qlite_tclDecls.h
fde0: 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74   2>NUL..del /Q t
fdf0: 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 20 32  estloadext.dll 2
fe00: 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74 65 73  >NUL..del /Q tes
fe10: 74 66 69 78 74 75 72 65 2e 65 78 65 20 74 65 73  tfixture.exe tes
fe20: 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  t.db 2>NUL..del
fe30: 2f 51 20 4c 6f 67 45 73 74 2e 65 78 65 20 66 74  /Q LogEst.exe ft
fe40: 73 33 76 69 65 77 2e 65 78 65 20 72 6f 6c 6c 62  s3view.exe rollb
fe50: 61 63 6b 2d 74 65 73 74 2e 65 78 65 20 73 68 6f  ack-test.exe sho
fe60: 77 64 62 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  wdb.exe 2>NUL..d
fe70: 65 6c 20 2f 51 20 63 68 61 6e 67 65 73 65 74 2e  el /Q changeset.
fe80: 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  exe 2>NUL..del /
fe90: 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 78  Q showjournal.ex
fea0: 65 20 73 68 6f 77 73 74 61 74 34 2e 65 78 65 20  e showstat4.exe
feb0: 73 68 6f 77 77 61 6c 2e 65 78 65 20 73 70 65 65  showwal.exe spee
fec0: 64 74 65 73 74 31 2e 65 78 65 20 32 3e 4e 55 4c  dtest1.exe 2>NUL
fed0: 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 65  ..del /Q mpteste
fee0: 72 2e 65 78 65 20 77 6f 72 64 63 6f 75 6e 74 2e  r.exe wordcount.
fef0: 65 78 65 20 72 62 75 2e 65 78 65 20 73 72 63 63  exe rbu.exe srcc
ff00: 6b 31 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  k1.exe 2>NUL..de
ff10: 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63 20 73  l /Q sqlite3.c s
ff20: 71 6c 69 74 65 33 2d 2a 2e 63 20 32 3e 4e 55 4c  qlite3-*.c 2>NUL
ff30: 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33  ..del /Q sqlite3
ff40: 72 63 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  rc.h 2>NUL..del
ff50: 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69 74  /Q shell.c sqlit
ff60: 65 33 65 78 74 2e 68 20 73 71 6c 69 74 65 33 73  e3ext.h sqlite3s
ff70: 65 73 73 69 6f 6e 2e 68 20 32 3e 4e 55 4c 0a 09  ession.h 2>NUL..
ff80: 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 5f 61  del /Q sqlite3_a
ff90: 6e 61 6c 79 7a 65 72 2e 65 78 65 20 73 71 6c 69  nalyzer.exe sqli
ffa0: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 32  te3_analyzer.c 2
ffb0: 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c  >NUL..del /Q sql
ffc0: 69 74 65 2d 2a 2d 6f 75 74 70 75 74 2e 76 73 69  ite-*-output.vsi
ffd0: 78 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  x 2>NUL..del /Q
ffe0: 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65 20  fuzzershell.exe
fff0: 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73 71  fuzzcheck.exe sq
10000 6c 64 69 66 66 2e 65 78 65 20 64 62 68 61 73 68  ldiff.exe dbhash
10010 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
10020 2f 51 20 66 74 73 35 2e 2a 20 66 74 73 35 70 61  /Q fts5.* fts5pa
10030 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 23 20 3c 3c  rse.* 2>NUL.# <<
10040 2f 6d 61 72 6b 3e 3e 0a                          /mark>>.