/ Hex Artifact Content

## Artifact e8b973cd249b0db11c221c1bd7e9f738e8dac369275160342e1011f3932074c9:

• File Makefile.msc — part of check-in [0bc3b76e] at 2018-01-05 01:00:17 on branch sqlar-shell-support — Enhance the 'zlib' build target for MSVC. (user: mistachkin size: 74177)

0000: 23 0a 23 20 6e 6d 61 6b 65 20 4d 61 6b 65 66 69  #.# nmake Makefi
0010: 6c 65 20 66 6f 72 20 53 51 4c 69 74 65 0a 23 0a  le for SQLite.#.
0020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 53  ############## S
0090: 54 41 52 54 20 4f 46 20 4f 50 54 49 4f 4e 53 20  TART OF OPTIONS
00a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
00c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0110: 0a 23 20 54 68 65 20 74 6f 70 6c 65 76 65 6c 20  .# The toplevel
0120: 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65  directory of the
0130: 20 73 6f 75 72 63 65 20 74 72 65 65 2e 20 20 54   source tree.  T
0140: 68 69 73 20 69 73 20 74 68 65 20 64 69 72 65 63  his is the direc
0150: 74 6f 72 79 0a 23 20 74 68 61 74 20 63 6f 6e 74  tory.# that cont
0160: 61 69 6e 73 20 74 68 69 73 20 22 4d 61 6b 65 66  ains this "Makef
0170: 69 6c 65 2e 6d 73 63 22 2e 0a 23 0a 54 4f 50 20  ile.msc"..#.TOP
0180: 3d 20 2e 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  = ...# <<mark>>.
0190: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
01a0: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
01b0: 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 61 6d  se the SQLite am
01c0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 2e  algamation file.
01d0: 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 41  .#.!IFNDEF USE_A
01e0: 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 55 53 45 5f  MALGAMATION.USE_
01f0: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 20 3d 20 31  AMALGAMATION = 1
0200: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
0210: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
0220: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable
0230: 66 75 6c 6c 20 77 61 72 6e 69 6e 67 73 20 28 2d  full warnings (-
0240: 57 34 2c 20 65 74 63 29 20 77 68 65 6e 20 63 6f  W4, etc) when co
0250: 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21 49 46 4e 44  mpiling..#.!IFND
0260: 45 46 20 55 53 45 5f 46 55 4c 4c 57 41 52 4e 0a  EF USE_FULLWARN.
0270: 55 53 45 5f 46 55 4c 4c 57 41 52 4e 20 3d 20 31  USE_FULLWARN = 1
0280: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0290: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61  his non-0 to ena
02a0: 62 6c 65 20 74 72 65 61 74 69 6e 67 20 77 61 72  ble treating war
02b0: 6e 69 6e 67 73 20 61 73 20 65 72 72 6f 72 73 20  nings as errors
02c0: 28 2d 57 58 2c 20 65 74 63 29 20 77 68 65 6e 0a  (-WX, etc) when.
02d0: 23 20 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21  # compiling..#.!
02e0: 49 46 4e 44 45 46 20 55 53 45 5f 46 41 54 41 4c  IFNDEF USE_FATAL
02f0: 5f 57 41 52 4e 0a 55 53 45 5f 46 41 54 41 4c 5f  _WARN.USE_FATAL_
0300: 57 41 52 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  WARN = 0.!ENDIF.
0310: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0320: 30 20 74 6f 20 65 6e 61 62 6c 65 20 66 75 6c 6c  0 to enable full
0330: 20 72 75 6e 74 69 6d 65 20 65 72 72 6f 72 20 63   runtime error c
0340: 68 65 63 6b 73 20 28 2d 52 54 43 31 2c 20 65 74  hecks (-RTC1, et
0350: 63 29 2e 20 20 54 68 69 73 0a 23 20 68 61 73 20  c).  This.# has
0360: 6e 6f 20 65 66 66 65 63 74 20 69 66 20 28 61 6e  no effect if (an
0370: 79 29 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73  y) optimizations
0380: 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 23 0a   are enabled..#.
0390: 21 49 46 4e 44 45 46 20 55 53 45 5f 52 55 4e 54  !IFNDEF USE_RUNT
03a0: 49 4d 45 5f 43 48 45 43 4b 53 0a 55 53 45 5f 52  IME_CHECKS.USE_R
03b0: 55 4e 54 49 4d 45 5f 43 48 45 43 4b 53 20 3d 20  UNTIME_CHECKS =
03c0: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
03d0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 72  this non-0 to cr
03e0: 65 61 74 65 20 61 20 53 51 4c 69 74 65 20 61 6d  eate a SQLite am
03f0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 20  algamation file
0400: 74 68 61 74 20 65 78 63 6c 75 64 65 73 20 74 68  that excludes th
0410: 65 0a 23 20 76 61 72 69 6f 75 73 20 62 75 69 6c  e.# various buil
0420: 74 2d 69 6e 20 65 78 74 65 6e 73 69 6f 6e 73 2e  t-in extensions.
0430: 0a 23 0a 21 49 46 4e 44 45 46 20 4d 49 4e 49 4d  .#.!IFNDEF MINIM
0440: 41 4c 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a  AL_AMALGAMATION.
0450: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
0460: 54 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  TION = 0.!ENDIF.
0470: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0480: 30 20 74 6f 20 75 73 65 20 22 73 74 64 63 61 6c  0 to use "stdcal
0490: 6c 22 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65  l" calling conve
04a0: 6e 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 6f  ntion for the co
04b0: 72 65 20 6c 69 62 72 61 72 79 0a 23 20 61 6e 64  re library.# and
04c0: 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 6c   shell executabl
04d0: 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45  e..#.!IFNDEF USE
04e0: 5f 53 54 44 43 41 4c 4c 0a 55 53 45 5f 53 54 44  _STDCALL.USE_STD
04f0: 43 41 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  CALL = 0.!ENDIF.
0500: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0510: 30 20 74 6f 20 68 61 76 65 20 74 68 65 20 73 68  0 to have the sh
0520: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 6c  ell executable l
0530: 69 6e 6b 20 61 67 61 69 6e 73 74 20 74 68 65 20  ink against the
0540: 63 6f 72 65 20 64 79 6e 61 6d 69 63 0a 23 20 6c  core dynamic.# l
0550: 69 6e 6b 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ink library..#.!
0560: 49 46 4e 44 45 46 20 44 59 4e 41 4d 49 43 5f 53  IFNDEF DYNAMIC_S
0570: 48 45 4c 4c 0a 44 59 4e 41 4d 49 43 5f 53 48 45  HELL.DYNAMIC_SHE
0580: 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  LL = 0.!ENDIF..#
0590: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
05a0: 74 6f 20 65 6e 61 62 6c 65 20 65 78 74 72 61 20  to enable extra
05b0: 63 6f 64 65 20 74 68 61 74 20 61 74 74 65 6d 70  code that attemp
05c0: 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69 73  ts to detect mis
05d0: 75 73 65 20 6f 66 20 74 68 65 0a 23 20 53 51 4c  use of the.# SQL
05e0: 69 74 65 20 41 50 49 2e 0a 23 0a 21 49 46 4e 44  ite API..#.!IFND
05f0: 45 46 20 41 50 49 5f 41 52 4d 4f 52 0a 41 50 49  EF API_ARMOR.API
0600: 5f 41 52 4d 4f 52 20 3d 20 30 0a 21 45 4e 44 49  _ARMOR = 0.!ENDI
0610: 46 0a 0a 23 20 49 66 20 6e 65 63 65 73 73 61 72  F..# If necessar
0620: 79 2c 20 63 72 65 61 74 65 20 61 20 6c 69 73 74  y, create a list
0630: 20 6f 66 20 68 61 72 6d 6c 65 73 73 20 63 6f 6d   of harmless com
0640: 70 69 6c 65 72 20 77 61 72 6e 69 6e 67 73 20 74  piler warnings t
0650: 6f 20 64 69 73 61 62 6c 65 20 77 68 65 6e 0a 23  o disable when.#
0660: 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 76   compiling the v
0670: 61 72 69 6f 75 73 20 74 6f 6f 6c 73 2e 20 20 46  arious tools.  F
0680: 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 73 6f  or the SQLite so
0690: 75 72 63 65 20 63 6f 64 65 20 69 74 73 65 6c 66  urce code itself
06a0: 2c 20 77 61 72 6e 69 6e 67 73 2c 0a 23 20 69 66  , warnings,.# if
06b0: 20 61 6e 79 2c 20 77 69 6c 6c 20 62 65 20 64 69   any, will be di
06c0: 73 61 62 6c 65 64 20 66 72 6f 6d 20 77 69 74 68  sabled from with
06d0: 69 6e 20 69 74 2e 0a 23 0a 21 49 46 4e 44 45 46  in it..#.!IFNDEF
06e0: 20 4e 4f 5f 57 41 52 4e 0a 21 49 46 20 24 28 55   NO_WARN.!IF $(U 06f0: 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a SE_FULLWARN)!=0. 0700: 4e 4f 5f 57 41 52 4e 20 3d 20 2d 77 64 34 30 35 NO_WARN = -wd405 0710: 34 20 2d 77 64 34 30 35 35 20 2d 77 64 34 31 30 4 -wd4055 -wd410 0720: 30 20 2d 77 64 34 31 32 37 20 2d 77 64 34 31 33 0 -wd4127 -wd413 0730: 30 20 2d 77 64 34 31 35 32 20 2d 77 64 34 31 38 0 -wd4152 -wd418 0740: 39 20 2d 77 64 34 32 30 36 0a 4e 4f 5f 57 41 52 9 -wd4206.NO_WAR 0750: 4e 20 3d 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d N =$(NO_WARN) -
0760: 77 64 34 32 31 30 20 2d 77 64 34 32 33 32 20 2d  wd4210 -wd4232 -
0770: 77 64 34 33 30 35 20 2d 77 64 34 33 30 36 20 2d  wd4305 -wd4306 -
0780: 77 64 34 37 30 32 20 2d 77 64 34 37 30 36 0a 21  wd4702 -wd4706.!
0790: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20  ENDIF.!ENDIF..#
07a0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
07b0: 6f 20 75 73 65 20 74 68 65 20 6c 69 62 72 61 72  o use the librar
07c0: 79 20 70 61 74 68 73 20 61 6e 64 20 6f 74 68 65  y paths and othe
07d0: 72 20 6f 70 74 69 6f 6e 73 20 6e 65 63 65 73 73  r options necess
07e0: 61 72 79 20 66 6f 72 0a 23 20 57 69 6e 64 6f 77  ary for.# Window
07f0: 73 20 50 68 6f 6e 65 20 38 2e 31 2e 0a 23 0a 21  s Phone 8.1..#.!
0800: 49 46 4e 44 45 46 20 55 53 45 5f 57 50 38 31 5f  IFNDEF USE_WP81_
0810: 4f 50 54 53 0a 55 53 45 5f 57 50 38 31 5f 4f 50  OPTS.USE_WP81_OP
0820: 54 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  TS = 0.!ENDIF..#
0830: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0840: 74 6f 20 73 70 6c 69 74 20 74 68 65 20 53 51 4c  to split the SQL
0850: 69 74 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  ite amalgamation
0860: 20 66 69 6c 65 20 69 6e 74 6f 20 63 68 75 6e 6b   file into chunk
0870: 73 20 74 6f 0a 23 20 62 65 20 75 73 65 64 20 66  s to.# be used f
0880: 6f 72 20 64 65 62 75 67 67 69 6e 67 20 77 69 74  or debugging wit
0890: 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e  h Visual Studio.
08a0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 50 4c 49 54  .#.!IFNDEF SPLIT
08b0: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 53 50  _AMALGAMATION.SP
08c0: 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  LIT_AMALGAMATION
08d0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 3c   = 0.!ENDIF..# <
08e0: 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74 68  <mark>>.# Set th
08f0: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 68 61 76 65  is non-0 to have
0900: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 61   this makefile a
0910: 73 73 75 6d 65 20 74 68 65 20 54 63 6c 20 73 68  ssume the Tcl sh
0920: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 0a 23  ell executable.#
0930: 20 28 74 63 6c 73 68 2a 2e 65 78 65 29 20 69 73   (tclsh*.exe) is
0940: 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68   available in th
0950: 65 20 50 41 54 48 2e 20 20 42 79 20 64 65 66 61  e PATH.  By defa
0960: 75 6c 74 2c 20 74 68 69 73 20 69 73 20 65 6e 61  ult, this is ena
0970: 62 6c 65 64 0a 23 20 66 6f 72 20 63 6f 6d 70 61  bled.# for compa
0980: 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6f 6c  tibility with ol
0990: 64 65 72 20 62 75 69 6c 64 20 65 6e 76 69 72 6f  der build enviro
09a0: 6e 6d 65 6e 74 73 2e 20 20 54 68 69 73 20 73 65  nments.  This se
09b0: 74 74 69 6e 67 20 6f 6e 6c 79 0a 23 20 61 70 70  tting only.# app
09c0: 6c 69 65 73 20 69 66 20 54 43 4c 53 48 5f 43 4d  lies if TCLSH_CM
09d0: 44 20 69 73 20 6e 6f 74 20 73 65 74 20 6d 61 6e  D is not set man
09e0: 75 61 6c 6c 79 2e 0a 23 0a 21 49 46 4e 44 45 46  ually..#.!IFNDEF
09f0: 20 55 53 45 5f 54 43 4c 53 48 5f 49 4e 5f 50 41   USE_TCLSH_IN_PA
0a00: 54 48 0a 55 53 45 5f 54 43 4c 53 48 5f 49 4e 5f  TH.USE_TCLSH_IN_
0a10: 50 41 54 48 20 3d 20 31 0a 21 45 4e 44 49 46 0a  PATH = 1.!ENDIF.
0a20: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0a30: 30 20 74 6f 20 75 73 65 20 7a 6c 69 62 2c 20 70  0 to use zlib, p
0a40: 6f 73 73 69 62 6c 79 20 63 6f 6d 70 69 6c 69 6e  ossibly compilin
0a50: 67 20 69 74 20 66 72 6f 6d 20 73 6f 75 72 63 65  g it from source
0a60: 20 63 6f 64 65 2e 0a 23 0a 21 49 46 4e 44 45 46   code..#.!IFNDEF
0a70: 20 55 53 45 5f 5a 4c 49 42 0a 55 53 45 5f 5a 4c   USE_ZLIB.USE_ZL
0a80: 49 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  IB = 0.!ENDIF..#
0a90: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0aa0: 74 6f 20 62 75 69 6c 64 20 7a 6c 69 62 20 66 72  to build zlib fr
0ab0: 6f 6d 20 73 6f 75 72 63 65 20 63 6f 64 65 2e 20  om source code.
0ac0: 20 54 68 69 73 20 69 73 20 65 6e 61 62 6c 65 64   This is enabled
0ad0: 20 62 79 0a 23 20 64 65 66 61 75 6c 74 20 61 6e   by.# default an
0ae0: 64 20 69 6e 20 74 68 61 74 20 63 61 73 65 20 69  d in that case i
0af0: 74 20 77 69 6c 6c 20 62 65 20 61 73 73 75 6d 65  t will be assume
0b00: 64 20 74 68 61 74 20 74 68 65 20 5a 4c 49 42 44  d that the ZLIBD
0b10: 49 52 20 6d 61 63 72 6f 0a 23 20 70 6f 69 6e 74  IR macro.# point
0b20: 73 20 74 6f 20 74 68 65 20 74 6f 70 2d 6c 65 76  s to the top-lev
0b30: 65 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64  el source code d
0b40: 69 72 65 63 74 6f 72 79 20 66 6f 72 20 7a 6c 69  irectory for zli
0b50: 62 2e 0a 23 0a 21 49 46 4e 44 45 46 20 42 55 49  b..#.!IFNDEF BUI
0b60: 4c 44 5f 5a 4c 49 42 0a 42 55 49 4c 44 5f 5a 4c  LD_ZLIB.BUILD_ZL
0b70: 49 42 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a 23  IB = 1.!ENDIF..#
0b80: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0b90: 74 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65 72  to use the Inter
0ba0: 6e 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e 65  national Compone
0bb0: 6e 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65 20  nts for Unicode
0bc0: 28 49 43 55 29 2e 0a 23 0a 21 49 46 4e 44 45 46  (ICU)..#.!IFNDEF
0bd0: 20 55 53 45 5f 49 43 55 0a 55 53 45 5f 49 43 55   USE_ICU.USE_ICU
0be0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 23 20 3c 3c   = 0.!ENDIF.# <<
0bf0: 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53 65 74 20 74  /mark>>..# Set t
0c00: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79 6e  his non-0 to dyn
0c10: 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f  amically link to
0c20: 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69 6d   the MSVC runtim
0c30: 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46  e library..#.!IF
0c40: 4e 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c 4c  NDEF USE_CRT_DLL
0c50: 0a 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20 30  .USE_CRT_DLL = 0
0c60: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0c70: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69 6e  his non-0 to lin
0c80: 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54 34 20  k to the RPCRT4
0c90: 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44  library..#.!IFND
0ca0: 45 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c 49  EF USE_RPCRT4_LI
0cb0: 42 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42  B.USE_RPCRT4_LIB
0cc0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53   = 0.!ENDIF..# S
0cd0: 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f  et this non-0 to
0ce0: 20 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d 62   generate assemb
0cf0: 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67 73  ly code listings
0d00: 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 20   for the source
0d10: 63 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23 0a  code.# files..#.
0d20: 21 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53 54  !IFNDEF USE_LIST
0d30: 49 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e 47  INGS.USE_LISTING
0d40: 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  S = 0.!ENDIF..#
0d50: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0d60: 6f 20 61 74 74 65 6d 70 74 20 73 65 74 74 69 6e  o attempt settin
0d70: 67 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f 6d  g the native com
0d80: 70 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63 61  piler automatica
0d90: 6c 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73 2d  lly.# for cross-
0da0: 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63 6f  compiling the co
0db0: 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c 73  mmand line tools
0dc0: 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20 74   needed during t
0dd0: 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a 23  he compilation.#
0de0: 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e   process..#.!IFN
0df0: 44 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43 4f  DEF XCOMPILE.XCO
0e00: 4d 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49 46  MPILE = 0.!ENDIF
0e10: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0e20: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e 61  -0 to use the na
0e30: 74 69 76 65 20 6c 69 62 72 61 72 69 65 73 20 70  tive libraries p
0e40: 61 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d 63  aths for cross-c
0e50: 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20 63  ompiling.# the c
0e60: 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c  ommand line tool
0e70: 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20  s needed during
0e80: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  the compilation
0e90: 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e 44  process..#.!IFND
0ea0: 45 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49  EF USE_NATIVE_LI
0eb0: 42 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49 56  BPATHS.USE_NATIV
0ec0: 45 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a 21  E_LIBPATHS = 0.!
0ed0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0ee0: 73 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65 20  s 0 to skip the
0ef0: 63 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65 6d  compiling and em
0f00: 62 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73 69  bedding of versi
0f10: 6f 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23 0a  on resources..#.
0f20: 21 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a 55  !IFNDEF USE_RC.U
0f30: 53 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49 46  SE_RC = 1.!ENDIF
0f40: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0f50: 2d 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69  -0 to compile bi
0f60: 6e 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20  naries suitable
0f70: 66 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65 6e  for the WinRT en
0f80: 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68 69  vironment..# Thi
0f90: 73 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20 6e  s setting does n
0fa0: 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79 20  ot apply to any
0fb0: 62 69 6e 61 72 69 65 73 20 74 68 61 74 20 72 65  binaries that re
0fc0: 71 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70 65  quire Tcl to ope
0fd0: 72 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79 20  rate.# properly
0fe0: 28 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20 66  (i.e. the text f
0ff0: 69 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23 0a  ixture, etc)..#.
1000: 21 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e 52  !IFNDEF FOR_WINR
1010: 54 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30 0a  T.FOR_WINRT = 0.
1020: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
1030: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d 70  is non-0 to comp
1040: 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75 69  ile binaries sui
1050: 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 55 57  table for the UW
1060: 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23  P environment..#
1070: 20 54 68 69 73 20 73 65 74 74 69 6e 67 20 64 6f   This setting do
1080: 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20  es not apply to
1090: 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74 68 61  any binaries tha
10a0: 74 20 72 65 71 75 69 72 65 20 54 63 6c 20 74 6f  t require Tcl to
10b0: 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f 70 65   operate.# prope
10c0: 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20 74 65  rly (i.e. the te
10d0: 78 74 20 66 69 78 74 75 72 65 2c 20 65 74 63 29  xt fixture, etc)
10e0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52 5f  ..#.!IFNDEF FOR_
10f0: 55 57 50 0a 46 4f 52 5f 55 57 50 20 3d 20 30 0a  UWP.FOR_UWP = 0.
1100: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
1110: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d 70  is non-0 to comp
1120: 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75 69  ile binaries sui
1130: 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57 69  table for the Wi
1140: 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f 72  ndows 10 platfor
1150: 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52  m..#.!IFNDEF FOR
1160: 5f 57 49 4e 31 30 0a 46 4f 52 5f 57 49 4e 31 30  _WIN10.FOR_WIN10
1170: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 3c   = 0.!ENDIF..# <
1180: 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74 68  <mark>>.# Set th
1190: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69 70  is non-0 to skip
11a0: 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20 6c   attempting to l
11b0: 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20 6c  ook for and/or l
11c0: 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63 6c  ink with the Tcl
11d0: 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  .# runtime libra
11e0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 4f  ry..#.!IFNDEF NO
11f0: 5f 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30 0a  _TCL.NO_TCL = 0.
1200: 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b  !ENDIF.# <</mark
1210: 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74  >>..# Set this t
1220: 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61 74  o non-0 to creat
1230: 65 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e 0a  e and use PDBs..
1240: 23 0a 21 49 46 4e 44 45 46 20 53 59 4d 42 4f 4c  #.!IFNDEF SYMBOL
1250: 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 21 45  S.SYMBOLS = 1.!E
1260: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
1270: 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73 65   to non-0 to use
1280: 20 74 68 65 20 53 51 4c 69 74 65 20 64 65 62 75   the SQLite debu
1290: 67 67 69 6e 67 20 68 65 61 70 20 73 75 62 73 79  gging heap subsy
12a0: 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20  stem..#.!IFNDEF
12b0: 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44 45 42 55  MEMDEBUG.MEMDEBU
12c0: 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  G = 0.!ENDIF..#
12d0: 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d  Set this to non-
12e0: 30 20 74 6f 20 75 73 65 20 74 68 65 20 57 69 6e  0 to use the Win
12f0: 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20 73  32 native heap s
1300: 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e  ubsystem..#.!IFN
1310: 44 45 46 20 57 49 4e 33 32 48 45 41 50 0a 57 49  DEF WIN32HEAP.WI
1320: 4e 33 32 48 45 41 50 20 3d 20 30 0a 21 45 4e 44  N32HEAP = 0.!END
1330: 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74  IF..# Set this t
1340: 6f 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c  o non-0 to enabl
1350: 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61 63 72  e OSTRACE() macr
1360: 6f 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65  os, which can be
1370: 20 75 73 65 66 75 6c 20 77 68 65 6e 0a 23 20 64   useful when.# d
1380: 65 62 75 67 67 69 6e 67 2e 0a 23 0a 21 49 46 4e  ebugging..#.!IFN
1390: 44 45 46 20 4f 53 54 52 41 43 45 0a 4f 53 54 52  DEF OSTRACE.OSTR
13a0: 41 43 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  ACE = 0.!ENDIF..
13b0: 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6f 6e  # Set this to on
13c0: 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69  e of the followi
13d0: 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 65 6e 61  ng values to ena
13e0: 62 6c 65 20 76 61 72 69 6f 75 73 20 64 65 62 75  ble various debu
13f0: 67 67 69 6e 67 0a 23 20 66 65 61 74 75 72 65 73  gging.# features
1400: 2e 20 20 45 61 63 68 20 6c 65 76 65 6c 20 69 6e  .  Each level in
1410: 63 6c 75 64 65 73 20 74 68 65 20 64 65 62 75 67  cludes the debug
1420: 67 69 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72 6f  ging options fro
1430: 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a 23  m the previous.#
1440: 20 6c 65 76 65 6c 73 2e 20 20 43 75 72 72 65 6e   levels.  Curren
1450: 74 6c 79 2c 20 74 68 65 20 72 65 63 6f 67 6e 69  tly, the recogni
1460: 7a 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20 44  zed values for D
1470: 45 42 55 47 20 61 72 65 3a 0a 23 0a 23 20 30 20  EBUG are:.#.# 0
1480: 3d 3d 20 4e 44 45 42 55 47 3a 20 44 69 73 61 62  == NDEBUG: Disab
1490: 6c 65 73 20 61 73 73 65 72 74 28 29 20 61 6e 64  les assert() and
14a0: 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 20 64   other runtime d
14b0: 69 61 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31 20  iagnostics..# 1
14c0: 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  == SQLITE_ENABLE
14d0: 5f 41 50 49 5f 41 52 4d 4f 52 3a 20 65 78 74 72  _API_ARMOR: extr
14e0: 61 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64 65  a attempts to de
14f0: 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20 74  tect misuse of t
1500: 68 65 20 41 50 49 2e 0a 23 20 32 20 3d 3d 20 44  he API..# 2 == D
1510: 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47 20 61  isables NDEBUG a
1520: 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a 61 74  nd all optimizat
1530: 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20 65 6e  ions and then en
1540: 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20 33 20  ables PDBs..# 3
1550: 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55 47 3a  == SQLITE_DEBUG:
1560: 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f 75 73   Enables various
1570: 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d 65 73   diagnostics mes
1580: 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65 2e 0a  sages and code..
1590: 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 57 49  # 4 == SQLITE_WI
15a0: 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44  N32_MALLOC_VALID
15b0: 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20 74 68  ATE: Validate th
15c0: 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65 20 68  e Win32 native h
15d0: 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a 23 20  eap per call..#
15e0: 35 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55  5 == SQLITE_DEBU
15f0: 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e 61 62  G_OS_TRACE: Enab
1600: 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d 20  les output from
1610: 74 68 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61  the OSTRACE() ma
1620: 63 72 6f 73 2e 0a 23 20 36 20 3d 3d 20 53 51 4c  cros..# 6 == SQL
1630: 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 41  ITE_ENABLE_IOTRA
1640: 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74 70  CE: Enables outp
1650: 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f 54 52  ut from the IOTR
1660: 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23 0a  ACE() macros..#.
1670: 21 49 46 4e 44 45 46 20 44 45 42 55 47 0a 44 45  !IFNDEF DEBUG.DE
1680: 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  BUG = 0.!ENDIF..
1690: 23 20 45 6e 61 62 6c 65 20 75 73 65 20 6f 66 20  # Enable use of
16a0: 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 70 69 6c  available compil
16b0: 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73  er optimizations
16c0: 3f 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68 69  ?  Normally, thi
16d0: 73 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 6e 6f  s should be.# no
16e0: 6e 2d 7a 65 72 6f 2e 20 20 53 65 74 74 69 6e 67  n-zero.  Setting
16f0: 20 74 68 69 73 20 74 6f 20 7a 65 72 6f 2c 20 74   this to zero, t
1700: 68 75 73 20 64 69 73 61 62 6c 69 6e 67 20 61 6c  hus disabling al
1710: 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6d  l compiler optim
1720: 69 7a 61 74 69 6f 6e 73 2c 0a 23 20 63 61 6e 20  izations,.# can
1730: 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 74 65  be useful for te
1740: 73 74 69 6e 67 2e 0a 23 0a 21 49 46 4e 44 45 46  sting..#.!IFNDEF
1750: 20 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 0a 4f   OPTIMIZATIONS.O
1760: 50 54 49 4d 49 5a 41 54 49 4f 4e 53 20 3d 20 32  PTIMIZATIONS = 2
1770: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1780: 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20  his to non-0 to
1790: 65 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 20 66  enable support f
17a0: 6f 72 20 74 68 65 20 73 65 73 73 69 6f 6e 20 65  or the session e
17b0: 78 74 65 6e 73 69 6f 6e 2e 0a 23 0a 21 49 46 4e  xtension..#.!IFN
17c0: 44 45 46 20 53 45 53 53 49 4f 4e 0a 53 45 53 53  DEF SESSION.SESS
17d0: 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  ION = 0.!ENDIF..
17e0: 23 20 53 65 74 20 74 68 65 20 73 6f 75 72 63 65  # Set the source
17f0: 20 63 6f 64 65 20 66 69 6c 65 20 74 6f 20 62 65   code file to be
1800: 20 75 73 65 64 20 62 79 20 65 78 65 63 75 74 61   used by executa
1810: 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 61 72 69  bles and librari
1820: 65 73 20 77 68 65 6e 0a 23 20 74 68 65 79 20 6e  es when.# they n
1830: 65 65 64 20 74 68 65 20 61 6d 61 6c 67 61 6d 61  eed the amalgama
1840: 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20  tion..#.!IFNDEF
1850: 53 51 4c 49 54 45 33 43 0a 21 49 46 20 24 28 53  SQLITE3C.!IF $(S 1860: 50 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 4f PLIT_AMALGAMATIO 1870: 4e 29 21 3d 30 0a 53 51 4c 49 54 45 33 43 20 3d N)!=0.SQLITE3C = 1880: 20 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 0a 21 sqlite3-all.c.! 1890: 45 4c 53 45 0a 53 51 4c 49 54 45 33 43 20 3d 20 ELSE.SQLITE3C = 18a0: 73 71 6c 69 74 65 33 2e 63 0a 21 45 4e 44 49 46 sqlite3.c.!ENDIF 18b0: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 .!ENDIF..# Set t 18c0: 68 65 20 69 6e 63 6c 75 64 65 20 63 6f 64 65 20 he include code 18d0: 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 20 file to be used 18e0: 62 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 61 by executables a 18f0: 6e 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 65 nd libraries whe 1900: 6e 0a 23 20 74 68 65 79 20 6e 65 65 64 20 53 51 n.# they need SQ 1910: 4c 69 74 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 Lite..#.!IFNDEF 1920: 53 51 4c 49 54 45 33 48 0a 53 51 4c 49 54 45 33 SQLITE3H.SQLITE3 1930: 48 20 3d 20 73 71 6c 69 74 65 33 2e 68 0a 21 45 H = sqlite3.h.!E 1940: 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 20 NDIF..# This is 1950: 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 20 the name to use 1960: 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 64 for the SQLite d 1970: 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 72 ynamic link libr 1980: 61 72 79 20 28 44 4c 4c 29 2e 0a 23 0a 21 49 46 ary (DLL)..#.!IF 1990: 4e 44 45 46 20 53 51 4c 49 54 45 33 44 4c 4c 0a NDEF SQLITE3DLL. 19a0: 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 !IF$(FOR_WIN10)
19b0: 21 3d 30 0a 53 51 4c 49 54 45 33 44 4c 4c 20 3d  !=0.SQLITE3DLL =
19c0: 20 77 69 6e 73 71 6c 69 74 65 33 2e 64 6c 6c 0a   winsqlite3.dll.
19d0: 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 44 4c 4c  !ELSE.SQLITE3DLL
19e0: 20 3d 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 21   = sqlite3.dll.!
19f0: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20  ENDIF.!ENDIF..#
1a00: 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d 65  This is the name
1a10: 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65 20   to use for the
1a20: 53 51 4c 69 74 65 20 69 6d 70 6f 72 74 20 6c 69  SQLite import li
1a30: 62 72 61 72 79 20 28 4c 49 42 29 2e 0a 23 0a 21  brary (LIB)..#.!
1a40: 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 4c 49  IFNDEF SQLITE3LI
1a50: 42 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31  B.!IF $(FOR_WIN1 1a60: 30 29 21 3d 30 0a 53 51 4c 49 54 45 33 4c 49 42 0)!=0.SQLITE3LIB 1a70: 20 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 6c 69 = winsqlite3.li 1a80: 62 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 4c b.!ELSE.SQLITE3L 1a90: 49 42 20 3d 20 73 71 6c 69 74 65 33 2e 6c 69 62 IB = sqlite3.lib 1aa0: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 1ab0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 # This is the na 1ac0: 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 me to use for th 1ad0: 65 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 20 65 e SQLite shell e 1ae0: 78 65 63 75 74 61 62 6c 65 20 28 45 58 45 29 2e xecutable (EXE). 1af0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 .#.!IFNDEF SQLIT 1b00: 45 33 45 58 45 0a 21 49 46 20 24 28 46 4f 52 5f E3EXE.!IF$(FOR_
1b10: 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54 45  WIN10)!=0.SQLITE
1b20: 33 45 58 45 20 3d 20 77 69 6e 73 71 6c 69 74 65  3EXE = winsqlite
1b30: 33 73 68 65 6c 6c 2e 65 78 65 0a 21 45 4c 53 45  3shell.exe.!ELSE
1b40: 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20 73 71  .SQLITE3EXE = sq
1b50: 6c 69 74 65 33 2e 65 78 65 0a 21 45 4e 44 49 46  lite3.exe.!ENDIF
1b60: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20  .!ENDIF..# This
1b70: 69 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74 20  is the argument
1b80: 75 73 65 64 20 74 6f 20 73 65 74 20 74 68 65 20  used to set the
1b90: 70 72 6f 67 72 61 6d 20 64 61 74 61 62 61 73 65  program database
1ba0: 20 28 50 44 42 29 20 66 69 6c 65 20 66 6f 72 20   (PDB) file for
1bb0: 74 68 65 0a 23 20 53 51 4c 69 74 65 20 73 68 65  the.# SQLite she
1bc0: 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 28 45  ll executable (E
1bd0: 58 45 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53  XE)..#.!IFNDEF S
1be0: 51 4c 49 54 45 33 45 58 45 50 44 42 0a 21 49 46  QLITE3EXEPDB.!IF
1bf0: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 1c00: 0a 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 3d .SQLITE3EXEPDB = 1c10: 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 45 58 .!ELSE.SQLITE3EX 1c20: 45 50 44 42 20 3d 20 2f 70 64 62 3a 73 71 6c 69 EPDB = /pdb:sqli 1c30: 74 65 33 73 68 2e 70 64 62 0a 21 45 4e 44 49 46 te3sh.pdb.!ENDIF 1c40: 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 .!ENDIF..# <<mar 1c50: 6b 3e 3e 0a 23 20 54 68 65 73 65 20 61 72 65 20 k>>.# These are 1c60: 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 74 68 65 the names of the 1c70: 20 63 75 73 74 6f 6d 69 7a 65 64 20 54 63 6c 20 customized Tcl 1c80: 68 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 65 header files use 1c90: 64 20 62 79 20 76 61 72 69 6f 75 73 20 70 61 72 d by various par 1ca0: 74 73 0a 23 20 6f 66 20 74 68 69 73 20 6d 61 6b ts.# of this mak 1cb0: 65 66 69 6c 65 20 77 68 65 6e 20 74 68 65 20 73 efile when the s 1cc0: 74 64 63 61 6c 6c 20 63 61 6c 6c 69 6e 67 20 63 tdcall calling c 1cd0: 6f 6e 76 65 6e 74 69 6f 6e 20 69 73 20 69 6e 20 onvention is in 1ce0: 75 73 65 2e 20 20 49 74 20 69 73 20 6e 6f 74 0a use. It is not. 1cf0: 23 20 75 73 65 64 20 66 6f 72 20 61 6e 79 20 6f # used for any o 1d00: 74 68 65 72 20 70 75 72 70 6f 73 65 2e 0a 23 0a ther purpose..#. 1d10: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 54 43 !IFNDEF SQLITETC 1d20: 4c 48 0a 53 51 4c 49 54 45 54 43 4c 48 20 3d 20 LH.SQLITETCLH = 1d30: 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 21 45 4e sqlite_tcl.h.!EN 1d40: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 53 51 4c DIF..!IFNDEF SQL 1d50: 49 54 45 54 43 4c 44 45 43 4c 53 48 0a 53 51 4c ITETCLDECLSH.SQL 1d60: 49 54 45 54 43 4c 44 45 43 4c 53 48 20 3d 20 73 ITETCLDECLSH = s 1d70: 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68 qlite_tclDecls.h 1d80: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 .!ENDIF..# These 1d90: 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69 6f are the additio 1da0: 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61 74 nal targets that 1db0: 20 74 68 65 20 74 61 72 67 65 74 73 20 74 68 61 the targets tha 1dc0: 74 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 68 t integrate with 1dd0: 20 74 68 65 0a 23 20 54 63 6c 20 6c 69 62 72 61 the.# Tcl libra 1de0: 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e 64 ry should depend 1df0: 20 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 on when compili 1e00: 6e 67 2c 20 65 74 63 2e 0a 23 0a 21 49 46 4e 44 ng, etc..#.!IFND 1e10: 45 46 20 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 EF SQLITE_TCL_DE 1e20: 50 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 43 P.!IF$(USE_STDC
1e30: 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52  ALL)!=0 || $(FOR 1e40: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54 _WIN10)!=0.SQLIT 1e50: 45 5f 54 43 4c 5f 44 45 50 20 3d 20 24 28 53 51 E_TCL_DEP =$(SQ
1e60: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29 20 24  LITETCLDECLSH) $1e70: 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45 4c (SQLITETCLH).!EL 1e80: 53 45 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 SE.SQLITE_TCL_DE 1e90: 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 P =.!ENDIF.!ENDI 1ea0: 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 F.# <</mark>>..# 1eb0: 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 22 These are the " 1ec0: 73 74 61 6e 64 61 72 64 22 20 53 51 4c 69 74 65 standard" SQLite 1ed0: 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 compilation opt 1ee0: 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 63 ions used when c 1ef0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 74 ompiling for.# t 1f00: 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 he Windows platf 1f10: 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4f orm..#.!IFNDEF O 1f20: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 1f30: 0a 21 49 46 20 24 28 4d 49 4e 49 4d 41 4c 5f 41 .!IF$(MINIMAL_A
1f40: 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a  MALGAMATION)==0.
1f50: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
1f60: 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52  S = $(OPT_FEATUR 1f70: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 E_FLAGS) -DSQLIT 1f80: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 33 3d 31 0a E_ENABLE_FTS3=1. 1f90: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG 1fa0: 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 S =$(OPT_FEATUR
1fb0: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
1fc0: 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45 45 3d 31  E_ENABLE_RTREE=1
1fd0: 0a 21 45 4e 44 49 46 0a 4f 50 54 5f 46 45 41 54  .!ENDIF.OPT_FEAT
1fe0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50  URE_FLAGS = $(OP 1ff0: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 T_FEATURE_FLAGS) 2000: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE 2010: 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44 41 54 41 _COLUMN_METADATA 2020: 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20 53 68 6f =1.!ENDIF..# Sho 2030: 75 6c 64 20 74 68 65 20 73 65 73 73 69 6f 6e 20 uld the session 2040: 65 78 74 65 6e 73 69 6f 6e 20 62 65 20 65 6e 61 extension be ena 2050: 62 6c 65 64 3f 20 20 49 66 20 73 6f 2c 20 61 64 bled? If so, ad 2060: 64 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 d compilation op 2070: 74 69 6f 6e 73 0a 23 20 74 6f 20 65 6e 61 62 6c tions.# to enabl 2080: 65 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 53 45 e it..#.!IF$(SE
2090: 53 53 49 4f 4e 29 21 3d 30 0a 4f 50 54 5f 46 45  SSION)!=0.OPT_FE
20a0: 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28  ATURE_FLAGS = $( 20b0: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG 20c0: 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 S) -DSQLITE_ENAB 20d0: 4c 45 5f 53 45 53 53 49 4f 4e 3d 31 0a 4f 50 54 LE_SESSION=1.OPT 20e0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 20f0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46$(OPT_FEATURE_F
2100: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  LAGS) -DSQLITE_E
2110: 4e 41 42 4c 45 5f 50 52 45 55 50 44 41 54 45 5f  NABLE_PREUPDATE_
2120: 48 4f 4f 4b 3d 31 0a 21 45 4e 44 49 46 0a 0a 23  HOOK=1.!ENDIF..#
2130: 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 22   These are the "
2140: 65 78 74 65 6e 64 65 64 22 20 53 51 4c 69 74 65  extended" SQLite
2150: 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74   compilation opt
2160: 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 63  ions used when c
2170: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 74  ompiling for.# t
2180: 68 65 20 57 69 6e 64 6f 77 73 20 31 30 20 70 6c  he Windows 10 pl
2190: 61 74 66 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44 45  atform..#.!IFNDE
21a0: 46 20 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c  F EXT_FEATURE_FL
21b0: 41 47 53 0a 21 49 46 20 24 28 46 4f 52 5f 57 49  AGS.!IF $(FOR_WI 21c0: 4e 31 30 29 21 3d 30 0a 45 58 54 5f 46 45 41 54 N10)!=0.EXT_FEAT 21d0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 45 58 URE_FLAGS =$(EX
21e0: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  T_FEATURE_FLAGS)
21f0: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
2200: 5f 46 54 53 34 3d 31 0a 45 58 54 5f 46 45 41 54  _FTS4=1.EXT_FEAT
2210: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 45 58  URE_FLAGS = $(EX 2220: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 T_FEATURE_FLAGS) 2230: 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 54 45 4d -DSQLITE_SYSTEM 2240: 5f 4d 41 4c 4c 4f 43 3d 31 0a 45 58 54 5f 46 45 _MALLOC=1.EXT_FE 2250: 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 ATURE_FLAGS =$(
2260: 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  EXT_FEATURE_FLAG
2270: 53 29 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54  S) -DSQLITE_OMIT
2280: 5f 4c 4f 43 41 4c 54 49 4d 45 3d 31 0a 21 45 4c  _LOCALTIME=1.!EL
2290: 53 45 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46  SE.EXT_FEATURE_F
22a0: 4c 41 47 53 20 3d 0a 21 45 4e 44 49 46 0a 21 45  LAGS =.!ENDIF.!E
22b0: 4e 44 49 46 0a 0a 23 23 23 23 23 23 23 23 23 23  NDIF..##########
22c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
22f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2300: 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23  #####.##########
2310: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2320: 23 23 23 23 23 20 45 4e 44 20 4f 46 20 4f 50 54  ##### END OF OPT
2330: 49 4f 4e 53 20 23 23 23 23 23 23 23 23 23 23 23  IONS ###########
2340: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2350: 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23  #####.##########
2360: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2370: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2380: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2390: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
23a0: 23 23 23 23 23 0a 0a 23 20 57 68 65 6e 20 63 6f  #####..# When co
23b0: 6d 70 69 6c 69 6e 67 20 66 6f 72 20 74 68 65 20  mpiling for the
23c0: 57 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66  Windows 10 platf
23d0: 6f 72 6d 2c 20 74 68 65 20 50 4c 41 54 46 4f 52  orm, the PLATFOR
23e0: 4d 20 6d 61 63 72 6f 20 6d 75 73 74 20 62 65 20  M macro must be
23f0: 73 65 74 0a 23 20 74 6f 20 61 6e 20 61 70 70 72  set.# to an appr
2400: 6f 70 72 69 61 74 65 20 76 61 6c 75 65 20 28 65  opriate value (e
2410: 2e 67 2e 20 78 38 36 2c 20 78 36 34 2c 20 61 72  .g. x86, x64, ar
2420: 6d 2c 20 61 72 6d 36 34 2c 20 65 74 63 29 2e 0a  m, arm64, etc)..
2430: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31  #.!IF $(FOR_WIN1 2440: 30 29 21 3d 30 0a 21 49 46 4e 44 45 46 20 50 4c 0)!=0.!IFNDEF PL 2450: 41 54 46 4f 52 4d 0a 21 45 52 52 4f 52 20 55 73 ATFORM.!ERROR Us 2460: 69 6e 67 20 74 68 65 20 46 4f 52 5f 57 49 4e 31 ing the FOR_WIN1 2470: 30 20 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 65 0 option require 2480: 73 20 61 20 76 61 6c 75 65 20 66 6f 72 20 50 4c s a value for PL 2490: 41 54 46 4f 52 4d 2e 0a 21 45 4e 44 49 46 0a 21 ATFORM..!ENDIF.! 24a0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 61 73 ENDIF..# This as 24b0: 73 75 6d 65 73 20 74 68 61 74 20 4d 53 56 43 20 sumes that MSVC 24c0: 69 73 20 61 6c 77 61 79 73 20 69 6e 73 74 61 6c is always instal 24d0: 6c 65 64 20 69 6e 20 33 32 2d 62 69 74 20 50 72 led in 32-bit Pr 24e0: 6f 67 72 61 6d 20 46 69 6c 65 73 20 64 69 72 65 ogram Files dire 24f0: 63 74 6f 72 79 0a 23 20 61 6e 64 20 73 65 74 73 ctory.# and sets 2500: 20 74 68 65 20 76 61 72 69 61 62 6c 65 20 66 6f the variable fo 2510: 72 20 75 73 65 20 69 6e 20 6c 6f 63 61 74 69 6e r use in locatin 2520: 67 20 6f 74 68 65 72 20 33 32 2d 62 69 74 20 69 g other 32-bit i 2530: 6e 73 74 61 6c 6c 73 20 61 63 63 6f 72 64 69 6e nstalls accordin 2540: 67 6c 79 2e 0a 23 0a 50 52 4f 47 52 41 4d 46 49 gly..#.PROGRAMFI 2550: 4c 45 53 5f 58 38 36 20 3d 20 24 28 56 43 49 4e LES_X86 =$(VCIN
2560: 53 54 41 4c 4c 44 49 52 29 5c 2e 2e 5c 2e 2e 0a  STALLDIR)\..\...
2570: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36  PROGRAMFILES_X86
2580: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45   = $(PROGRAMFILE 2590: 53 5f 58 38 36 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 S_X86:\\=\)..# C 25a0: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 65 heck for the pre 25b0: 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 defined command 25c0: 6d 61 63 72 6f 20 43 43 2e 20 20 54 68 69 73 20 macro CC. This 25d0: 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 should point to 25e0: 74 68 65 20 63 6f 6d 70 69 6c 65 72 0a 23 20 62 the compiler.# b 25f0: 69 6e 61 72 79 20 66 6f 72 20 74 68 65 20 74 61 inary for the ta 2600: 72 67 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 rget platform. 2610: 49 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66 If it is not def 2620: 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 ined, simply def 2630: 69 6e 65 20 69 74 20 74 6f 0a 23 20 74 68 65 20 ine it to.# the 2640: 6c 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 76 legacy default v 2650: 61 6c 75 65 20 27 63 6c 2e 65 78 65 27 2e 0a 23 alue 'cl.exe'..# 2660: 0a 21 49 46 4e 44 45 46 20 43 43 0a 43 43 20 3d .!IFNDEF CC.CC = 2670: 20 63 6c 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a cl.exe.!ENDIF.. 2680: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 # Check for the 2690: 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 predefined comma 26a0: 6e 64 20 6d 61 63 72 6f 20 43 53 43 2e 20 20 54 nd macro CSC. T 26b0: 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 his should point 26c0: 20 74 6f 20 61 20 77 6f 72 6b 69 6e 67 0a 23 20 to a working.# 26d0: 43 20 53 68 61 72 70 20 63 6f 6d 70 69 6c 65 72 C Sharp compiler 26e0: 20 62 69 6e 61 72 79 2e 20 20 49 66 20 69 74 20 binary. If it 26f0: 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 is not defined, 2700: 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 simply define it 2710: 20 74 6f 20 74 68 65 0a 23 20 6c 65 67 61 63 79 to the.# legacy 2720: 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 default value ' 2730: 63 73 63 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e csc.exe'..#.!IFN 2740: 44 45 46 20 43 53 43 0a 43 53 43 20 3d 20 63 73 DEF CSC.CSC = cs 2750: 63 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 c.exe.!ENDIF..# 2760: 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 63 6f Check for the co 2770: 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 4c 44 2e 20 mmand macro LD. 2780: 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 This should poi 2790: 6e 74 20 74 6f 20 74 68 65 20 6c 69 6e 6b 65 72 nt to the linker 27a0: 20 62 69 6e 61 72 79 20 66 6f 72 0a 23 20 74 68 binary for.# th 27b0: 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 e target platfor 27c0: 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 m. If it is not 27d0: 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 defined, simply 27e0: 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 74 68 define it to th 27f0: 65 20 6c 65 67 61 63 79 0a 23 20 64 65 66 61 75 e legacy.# defau 2800: 6c 74 20 76 61 6c 75 65 20 27 6c 69 6e 6b 2e 65 lt value 'link.e 2810: 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4c xe'..#.!IFNDEF L 2820: 44 0a 4c 44 20 3d 20 6c 69 6e 6b 2e 65 78 65 0a D.LD = link.exe. 2830: 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 !ENDIF..# Check 2840: 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69 6e for the predefin 2850: 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f ed command macro 2860: 20 52 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c RC. This shoul 2870: 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 72 d point to the r 2880: 65 73 6f 75 72 63 65 0a 23 20 63 6f 6d 70 69 6c esource.# compil 2890: 65 72 20 62 69 6e 61 72 79 20 66 6f 72 20 74 68 er binary for th 28a0: 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 e target platfor 28b0: 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 m. If it is not 28c0: 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 defined, simply 28d0: 20 64 65 66 69 6e 65 0a 23 20 69 74 20 74 6f 20 define.# it to 28e0: 74 68 65 20 6c 65 67 61 63 79 20 64 65 66 61 75 the legacy defau 28f0: 6c 74 20 76 61 6c 75 65 20 27 72 63 2e 65 78 65 lt value 'rc.exe 2900: 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 52 43 0a '..#.!IFNDEF RC. 2910: 52 43 20 3d 20 72 63 2e 65 78 65 0a 21 45 4e 44 RC = rc.exe.!END 2920: 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 IF..# Check for 2930: 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 the MSVC runtime 2940: 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d 61 library path ma 2950: 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65 2c cro. Otherwise, 2960: 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c 6c this value will 2970: 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 .# default to th 2980: 65 20 27 6c 69 62 27 20 64 69 72 65 63 74 6f 72 e 'lib' director 2990: 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 y underneath the 29a0: 20 4d 53 56 43 20 69 6e 73 74 61 6c 6c 61 74 69 MSVC installati 29b0: 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a on directory..#. 29c0: 21 49 46 4e 44 45 46 20 43 52 54 4c 49 42 50 41 !IFNDEF CRTLIBPA 29d0: 54 48 0a 43 52 54 4c 49 42 50 41 54 48 20 3d 20 TH.CRTLIBPATH = 29e0: 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29 5c$(VCINSTALLDIR)\
29f0: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 43 52 54 4c  lib.!ENDIF..CRTL
2a00: 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49  IBPATH = $(CRTLI 2a10: 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 BPATH:\\=\)..# C 2a20: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 63 6f 6d heck for the com 2a30: 6d 61 6e 64 20 6d 61 63 72 6f 20 4e 43 43 2e 20 mand macro NCC. 2a40: 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 This should poi 2a50: 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c nt to the compil 2a60: 65 72 20 62 69 6e 61 72 79 0a 23 20 66 6f 72 20 er binary.# for 2a70: 74 68 65 20 70 6c 61 74 66 6f 72 6d 20 74 68 65 the platform the 2a80: 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f compilation pro 2a90: 63 65 73 73 20 69 73 20 74 61 6b 69 6e 67 20 70 cess is taking p 2aa0: 6c 61 63 65 20 6f 6e 2e 20 20 49 66 20 69 74 20 lace on. If it 2ab0: 69 73 20 6e 6f 74 0a 23 20 64 65 66 69 6e 65 64 is not.# defined 2ac0: 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 , simply define 2ad0: 69 74 20 74 6f 20 68 61 76 65 20 74 68 65 20 73 it to have the s 2ae0: 61 6d 65 20 76 61 6c 75 65 20 61 73 20 74 68 65 ame value as the 2af0: 20 43 43 20 6d 61 63 72 6f 2e 20 20 57 68 65 6e CC macro. When 2b00: 0a 23 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 .# cross-compili 2b10: 6e 67 2c 20 69 74 20 69 73 20 73 75 67 67 65 73 ng, it is sugges 2b20: 74 65 64 20 74 68 61 74 20 74 68 69 73 20 6d 61 ted that this ma 2b30: 63 72 6f 20 62 65 20 6d 6f 64 69 66 69 65 64 20 cro be modified 2b40: 76 69 61 20 74 68 65 20 63 6f 6d 6d 61 6e 64 0a via the command. 2b50: 23 20 6c 69 6e 65 20 28 73 69 6e 63 65 20 6e 6d # line (since nm 2b60: 61 6b 65 20 69 74 73 65 6c 66 20 64 6f 65 73 20 ake itself does 2b70: 6e 6f 74 20 70 72 6f 76 69 64 65 20 61 20 62 75 not provide a bu 2b80: 69 6c 74 2d 69 6e 20 6d 65 74 68 6f 64 20 74 6f ilt-in method to 2b90: 20 67 75 65 73 73 20 69 74 29 2e 0a 23 20 46 6f guess it)..# Fo 2ba0: 72 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 75 73 r example, to us 2bb0: 65 20 74 68 65 20 78 38 36 20 63 6f 6d 70 69 6c e the x86 compil 2bc0: 65 72 20 77 68 65 6e 20 63 72 6f 73 73 2d 63 6f er when cross-co 2bd0: 6d 70 69 6c 69 6e 67 20 66 6f 72 20 78 36 34 2c mpiling for x64, 2be0: 20 61 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e a command.# lin 2bf0: 65 20 73 69 6d 69 6c 61 72 20 74 6f 20 74 68 65 e similar to the 2c00: 20 66 6f 6c 6c 6f 77 69 6e 67 20 63 6f 75 6c 64 following could 2c10: 20 62 65 20 75 73 65 64 20 28 61 6c 6c 20 6f 6e be used (all on 2c20: 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 20 one line):.#.# 2c30: 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b nmake /f Mak 2c40: 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c 69 74 65 efile.msc sqlite 2c50: 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20 20 20 20 3.dll.# 2c60: 20 20 58 43 4f 4d 50 49 4c 45 3d 31 20 55 53 45 XCOMPILE=1 USE 2c70: 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 _NATIVE_LIBPATHS 2c80: 3d 31 0a 23 0a 23 20 41 6c 74 65 72 6e 61 74 69 =1.#.# Alternati 2c90: 76 65 6c 79 2c 20 74 68 65 20 66 75 6c 6c 20 70 vely, the full p 2ca0: 61 74 68 20 61 6e 64 20 66 69 6c 65 20 6e 61 6d ath and file nam 2cb0: 65 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65 e to the compile 2cc0: 72 20 62 69 6e 61 72 79 20 66 6f 72 20 74 68 65 r binary for the 2cd0: 0a 23 20 70 6c 61 74 66 6f 72 6d 20 74 68 65 20 .# platform the 2ce0: 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 compilation proc 2cf0: 65 73 73 20 69 73 20 74 61 6b 69 6e 67 20 70 6c ess is taking pl 2d00: 61 63 65 20 6d 61 79 20 62 65 20 73 70 65 63 69 ace may be speci 2d10: 66 69 65 64 20 28 61 6c 6c 20 6f 6e 0a 23 20 6f fied (all on.# o 2d20: 6e 65 20 6c 69 6e 65 29 3a 0a 23 0a 23 20 20 20 ne line):.#.# 2d30: 20 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65 66 nmake /f Makef 2d40: 69 6c 65 2e 6d 73 63 20 73 71 6c 69 74 65 33 2e ile.msc sqlite3. 2d50: 64 6c 6c 0a 23 20 20 20 20 20 20 20 20 20 20 20 dll.# 2d60: 22 4e 43 43 3d 22 22 25 56 43 49 4e 53 54 41 4c "NCC=""%VCINSTAL 2d70: 4c 44 49 52 25 5c 62 69 6e 5c 63 6c 2e 65 78 65 LDIR%\bin\cl.exe 2d80: 22 22 22 0a 23 20 20 20 20 20 20 20 20 20 20 20 """.# 2d90: 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41 USE_NATIVE_LIBPA 2da0: 54 48 53 3d 31 0a 23 0a 21 49 46 44 45 46 20 4e THS=1.#.!IFDEF N 2db0: 43 43 0a 4e 43 43 20 3d 20 24 28 4e 43 43 3a 5c CC.NCC =$(NCC:\
2dc0: 5c 3d 5c 29 0a 21 45 4c 53 45 49 46 20 24 28 58  \=\).!ELSEIF $(X 2dd0: 43 4f 4d 50 49 4c 45 29 21 3d 30 0a 4e 43 43 20 COMPILE)!=0.NCC 2de0: 3d 20 22 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 = "$(VCINSTALLDI
2df0: 52 29 5c 62 69 6e 5c 24 28 43 43 29 22 0a 4e 43  R)\bin\$(CC)".NC 2e00: 43 20 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 0a C =$(NCC:\\=\).
2e10: 21 45 4c 53 45 0a 4e 43 43 20 3d 20 24 28 43 43  !ELSE.NCC = $(CC 2e20: 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 ).!ENDIF..# Chec 2e30: 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 43 20 6e k for the MSVC n 2e40: 61 74 69 76 65 20 72 75 6e 74 69 6d 65 20 6c 69 ative runtime li 2e50: 62 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f brary path macro 2e60: 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 0a 23 20 . Otherwise,.# 2e70: 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c 6c 20 this value will 2e80: 64 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27 default to the ' 2e90: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75 lib' directory u 2ea0: 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 4d 53 nderneath the MS 2eb0: 56 43 0a 23 20 69 6e 73 74 61 6c 6c 61 74 69 6f VC.# installatio 2ec0: 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21 n directory..#.! 2ed0: 49 46 4e 44 45 46 20 4e 43 52 54 4c 49 42 50 41 IFNDEF NCRTLIBPA 2ee0: 54 48 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 3d TH.NCRTLIBPATH = 2ef0: 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29$(VCINSTALLDIR)
2f00: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 43 52  \lib.!ENDIF..NCR
2f10: 54 4c 49 42 50 41 54 48 20 3d 20 24 28 4e 43 52  TLIBPATH = $(NCR 2f20: 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a TLIBPATH:\\=\).. 2f30: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 # Check for the 2f40: 50 6c 61 74 66 6f 72 6d 20 53 44 4b 20 6c 69 62 Platform SDK lib 2f50: 72 61 72 79 20 70 61 74 68 20 6d 61 63 72 6f 2e rary path macro. 2f60: 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 69 Otherwise, thi 2f70: 73 0a 23 20 76 61 6c 75 65 20 77 69 6c 6c 20 64 s.# value will d 2f80: 65 66 61 75 6c 74 20 74 6f 20 74 68 65 20 27 6c efault to the 'l 2f90: 69 62 27 20 64 69 72 65 63 74 6f 72 79 20 75 6e ib' directory un 2fa0: 64 65 72 6e 65 61 74 68 20 74 68 65 20 57 69 6e derneath the Win 2fb0: 64 6f 77 73 0a 23 20 53 44 4b 20 69 6e 73 74 61 dows.# SDK insta 2fc0: 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 llation director 2fd0: 79 20 28 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 y (the environme 2fe0: 6e 74 20 76 61 72 69 61 62 6c 65 20 75 73 65 64 nt variable used 2ff0: 20 61 70 70 65 61 72 73 0a 23 20 74 6f 20 62 65 appears.# to be 3000: 20 61 76 61 69 6c 61 62 6c 65 20 77 68 65 6e 20 available when 3010: 75 73 69 6e 67 20 56 69 73 75 61 6c 20 43 2b 2b using Visual C++ 3020: 20 32 30 30 38 20 6f 72 20 6c 61 74 65 72 20 76 2008 or later v 3030: 69 61 20 74 68 65 0a 23 20 63 6f 6d 6d 61 6e 64 ia the.# command 3040: 20 6c 69 6e 65 29 2e 0a 23 0a 21 49 46 4e 44 45 line)..#.!IFNDE 3050: 46 20 4e 53 44 4b 4c 49 42 50 41 54 48 0a 4e 53 F NSDKLIBPATH.NS 3060: 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 57 49 DKLIBPATH =$(WI
3070: 4e 44 4f 57 53 53 44 4b 44 49 52 29 5c 6c 69 62  NDOWSSDKDIR)\lib
3080: 0a 21 45 4e 44 49 46 0a 0a 4e 53 44 4b 4c 49 42  .!ENDIF..NSDKLIB
3090: 50 41 54 48 20 3d 20 24 28 4e 53 44 4b 4c 49 42  PATH = $(NSDKLIB 30a0: 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 68 PATH:\\=\)..# Ch 30b0: 65 63 6b 20 66 6f 72 20 74 68 65 20 55 43 52 54 eck for the UCRT 30c0: 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d 61 library path ma 30d0: 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65 2c cro. Otherwise, 30e0: 20 74 68 69 73 20 76 61 6c 75 65 20 77 69 6c 6c this value will 30f0: 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20 74 68 .# default to th 3100: 65 20 76 65 72 73 69 6f 6e 2d 73 70 65 63 69 66 e version-specif 3110: 69 63 2c 20 70 6c 61 74 66 6f 72 6d 2d 73 70 65 ic, platform-spe 3120: 63 69 66 69 63 20 27 6c 69 62 27 20 64 69 72 65 cific 'lib' dire 3130: 63 74 6f 72 79 0a 23 20 75 6e 64 65 72 6e 65 61 ctory.# undernea 3140: 74 68 20 74 68 65 20 57 69 6e 64 6f 77 73 20 53 th the Windows S 3150: 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 DK installation 3160: 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a 21 49 46 directory..#.!IF 3170: 4e 44 45 46 20 55 43 52 54 4c 49 42 50 41 54 48 NDEF UCRTLIBPATH 3180: 0a 55 43 52 54 4c 49 42 50 41 54 48 20 3d 20 24 .UCRTLIBPATH =$
3190: 28 57 49 4e 44 4f 57 53 53 44 4b 44 49 52 29 5c  (WINDOWSSDKDIR)\
31a0: 6c 69 62 5c 24 28 57 49 4e 44 4f 57 53 53 44 4b  lib\$(WINDOWSSDK 31b0: 4c 49 42 56 45 52 53 49 4f 4e 29 5c 75 63 72 74 LIBVERSION)\ucrt 31c0: 5c 24 28 50 4c 41 54 46 4f 52 4d 29 0a 21 45 4e \$(PLATFORM).!EN
31d0: 44 49 46 0a 0a 55 43 52 54 4c 49 42 50 41 54 48  DIF..UCRTLIBPATH
31e0: 20 3d 20 24 28 55 43 52 54 4c 49 42 50 41 54 48   = $(UCRTLIBPATH 31f0: 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 20 63 6f 6d 70 :\\=\)..# C comp 3200: 69 6c 65 72 20 61 6e 64 20 6f 70 74 69 6f 6e 73 iler and options 3210: 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75 69 6c for use in buil 3220: 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 73 ding executables 3230: 20 74 68 61 74 0a 23 20 77 69 6c 6c 20 72 75 6e that.# will run 3240: 20 6f 6e 20 74 68 65 20 70 6c 61 74 66 6f 72 6d on the platform 3250: 20 74 68 61 74 20 69 73 20 64 6f 69 6e 67 20 74 that is doing t 3260: 68 65 20 62 75 69 6c 64 2e 0a 23 0a 21 49 46 20 he build..#.!IF 3270: 24 28 55 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21$(USE_FULLWARN)!
3280: 3d 30 0a 42 43 43 20 3d 20 24 28 4e 43 43 29 20  =0.BCC = $(NCC) 3290: 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 24 28 43 43 -nologo -W4$(CC
32a0: 4f 50 54 53 29 20 24 28 42 43 43 4f 50 54 53 29  OPTS) $(BCCOPTS) 32b0: 0a 21 45 4c 53 45 0a 42 43 43 20 3d 20 24 28 4e .!ELSE.BCC =$(N
32c0: 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 33 20  CC) -nologo -W3
32d0: 24 28 43 43 4f 50 54 53 29 20 24 28 42 43 43 4f  $(CCOPTS)$(BCCO
32e0: 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43  PTS).!ENDIF..# C
32f0: 68 65 63 6b 20 69 66 20 61 73 73 65 6d 62 6c 79  heck if assembly
3300: 20 63 6f 64 65 20 6c 69 73 74 69 6e 67 73 20 73   code listings s
3310: 68 6f 75 6c 64 20 62 65 20 67 65 6e 65 72 61 74  hould be generat
3320: 65 64 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63  ed for the sourc
3330: 65 0a 23 20 63 6f 64 65 20 66 69 6c 65 73 20 74  e.# code files t
3340: 6f 20 62 65 20 63 6f 6d 70 69 6c 65 64 2e 0a 23  o be compiled..#
3350: 0a 21 49 46 20 24 28 55 53 45 5f 4c 49 53 54 49  .!IF $(USE_LISTI 3360: 4e 47 53 29 21 3d 30 0a 42 43 43 20 3d 20 24 28 NGS)!=0.BCC =$(
3370: 42 43 43 29 20 2d 46 41 63 73 0a 21 45 4e 44 49  BCC) -FAcs.!ENDI
3380: 46 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 74 68  F..# Check if th
3390: 65 20 6e 61 74 69 76 65 20 6c 69 62 72 61 72 79  e native library
33a0: 20 70 61 74 68 73 20 73 68 6f 75 6c 64 20 62 65   paths should be
33b0: 20 75 73 65 64 20 77 68 65 6e 20 63 6f 6d 70 69   used when compi
33c0: 6c 69 6e 67 0a 23 20 74 68 65 20 63 6f 6d 6d 61  ling.# the comma
33d0: 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c 73 20 75 73  nd line tools us
33e0: 65 64 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f  ed during the co
33f0: 6d 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73  mpilation proces
3400: 73 2e 20 20 49 66 0a 23 20 73 6f 2c 20 73 65 74  s.  If.# so, set
3410: 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 6d   the necessary m
3420: 61 63 72 6f 20 6e 6f 77 2e 0a 23 0a 21 49 46 20  acro now..#.!IF
3430: 24 28 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42  $(USE_NATIVE_LIB 3440: 50 41 54 48 53 29 21 3d 30 0a 4e 4c 54 4c 49 42 PATHS)!=0.NLTLIB 3450: 50 41 54 48 53 20 3d 20 22 2f 4c 49 42 50 41 54 PATHS = "/LIBPAT 3460: 48 3a 24 28 4e 43 52 54 4c 49 42 50 41 54 48 29 H:$(NCRTLIBPATH)
3470: 22 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 53  " "/LIBPATH:$(NS 3480: 44 4b 4c 49 42 50 41 54 48 29 22 0a 0a 21 49 46 DKLIBPATH)"..!IF 3490: 44 45 46 20 4e 55 43 52 54 4c 49 42 50 41 54 48 DEF NUCRTLIBPATH 34a0: 0a 4e 55 43 52 54 4c 49 42 50 41 54 48 20 3d 20 .NUCRTLIBPATH = 34b0: 24 28 4e 55 43 52 54 4c 49 42 50 41 54 48 3a 5c$(NUCRTLIBPATH:\
34c0: 5c 3d 5c 29 0a 4e 4c 54 4c 49 42 50 41 54 48 53  \=\).NLTLIBPATHS
34d0: 20 3d 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53   = $(NLTLIBPATHS 34e0: 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 55 ) "/LIBPATH:$(NU
34f0: 43 52 54 4c 49 42 50 41 54 48 29 22 0a 21 45 4e  CRTLIBPATH)".!EN
3500: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 43 20  DIF.!ENDIF..# C
3510: 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70 74  compiler and opt
3520: 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e 20  ions for use in
3530: 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74 61  building executa
3540: 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c 6c  bles that.# will
3550: 20 72 75 6e 20 6f 6e 20 74 68 65 20 74 61 72 67   run on the targ
3560: 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 28 42  et platform.  (B
3570: 43 43 20 61 6e 64 20 54 43 43 20 61 72 65 20 75  CC and TCC are u
3580: 73 75 61 6c 6c 79 20 74 68 65 0a 23 20 73 61 6d  sually the.# sam
3590: 65 20 75 6e 6c 65 73 73 20 79 6f 75 72 20 61 72  e unless your ar
35a0: 65 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e  e cross-compilin
35b0: 67 2e 29 0a 23 0a 21 49 46 20 24 28 55 53 45 5f  g.).#.!IF $(USE_ 35c0: 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 54 43 43 FULLWARN)!=0.TCC 35d0: 20 3d 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 6f =$(CC) -nologo
35e0: 20 2d 57 34 20 2d 44 49 4e 43 4c 55 44 45 5f 4d   -W4 -DINCLUDE_M
35f0: 53 56 43 5f 48 3d 31 20 24 28 43 43 4f 50 54 53  SVC_H=1 $(CCOPTS 3600: 29 20 24 28 54 43 43 4f 50 54 53 29 0a 21 45 4c )$(TCCOPTS).!EL
3610: 53 45 0a 54 43 43 20 3d 20 24 28 43 43 29 20 2d  SE.TCC = $(CC) - 3620: 6e 6f 6c 6f 67 6f 20 2d 57 33 20 24 28 43 43 4f nologo -W3$(CCO
3630: 50 54 53 29 20 24 28 54 43 43 4f 50 54 53 29 0a  PTS) $(TCCOPTS). 3640: 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 !ENDIF..# Check 3650: 69 66 20 77 61 72 6e 69 6e 67 73 20 73 68 6f 75 if warnings shou 3660: 6c 64 20 62 65 20 74 72 65 61 74 65 64 20 61 73 ld be treated as 3670: 20 65 72 72 6f 72 73 20 77 68 65 6e 20 63 6f 6d errors when com 3680: 70 69 6c 69 6e 67 2e 0a 23 0a 21 49 46 20 24 28 piling..#.!IF$(
3690: 55 53 45 5f 46 41 54 41 4c 5f 57 41 52 4e 29 21  USE_FATAL_WARN)!
36a0: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 36b0: 2d 57 58 0a 21 45 4e 44 49 46 0a 0a 54 43 43 20 -WX.!ENDIF..TCC 36c0: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 =$(TCC) -DSQLIT
36d0: 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d  E_OS_WIN=1 -I. -
36e0: 49 24 28 54 4f 50 29 20 2d 49 24 28 54 4f 50 29  I$(TOP) -I$(TOP)
36f0: 5c 73 72 63 20 2d 66 70 3a 70 72 65 63 69 73 65  \src -fp:precise
3700: 0a 52 43 43 20 3d 20 24 28 52 43 29 20 2d 44 53  .RCC = $(RC) -DS 3710: 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d QLITE_OS_WIN=1 - 3720: 49 2e 20 2d 49 24 28 54 4f 50 29 20 2d 49 24 28 I. -I$(TOP) -I$( 3730: 54 4f 50 29 5c 73 72 63 20 24 28 52 43 4f 50 54 TOP)\src$(RCOPT
3740: 53 29 20 24 28 52 43 43 4f 50 54 53 29 0a 0a 23  S) $(RCCOPTS)..# 3750: 20 43 68 65 63 6b 20 69 66 20 77 65 20 77 61 6e Check if we wan 3760: 74 20 74 6f 20 75 73 65 20 74 68 65 20 22 73 74 t to use the "st 3770: 64 63 61 6c 6c 22 20 63 61 6c 6c 69 6e 67 20 63 dcall" calling c 3780: 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 65 6e 20 63 onvention when c 3790: 6f 6d 70 69 6c 69 6e 67 2e 0a 23 20 54 68 69 73 ompiling..# This 37a0: 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74 65 is not supporte 37b0: 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c 65 d by the compile 37c0: 72 73 20 66 6f 72 20 6e 6f 6e 2d 78 38 36 20 70 rs for non-x86 p 37d0: 6c 61 74 66 6f 72 6d 73 2e 20 20 49 74 20 73 68 latforms. It sh 37e0: 6f 75 6c 64 0a 23 20 61 6c 73 6f 20 62 65 20 6e ould.# also be n 37f0: 6f 74 65 64 20 68 65 72 65 20 74 68 61 74 20 62 oted here that b 3800: 75 69 6c 64 69 6e 67 20 61 6e 79 20 74 61 72 67 uilding any targ 3810: 65 74 20 77 69 74 68 20 74 68 65 73 65 20 22 73 et with these "s 3820: 74 64 63 61 6c 6c 22 20 6f 70 74 69 6f 6e 73 0a tdcall" options. 3830: 23 20 77 69 6c 6c 20 6d 6f 73 74 20 6c 69 6b 65 # will most like 3840: 6c 79 20 66 61 69 6c 20 69 66 20 74 68 65 20 54 ly fail if the T 3850: 63 6c 20 6c 69 62 72 61 72 79 20 69 73 20 61 6c cl library is al 3860: 73 6f 20 72 65 71 75 69 72 65 64 2e 20 20 54 68 so required. Th 3870: 69 73 20 69 73 20 64 75 65 0a 23 20 74 6f 20 68 is is due.# to h 3880: 6f 77 20 74 68 65 20 54 63 6c 20 6c 69 62 72 61 ow the Tcl libra 3890: 72 79 20 66 75 6e 63 74 69 6f 6e 73 20 61 72 65 ry functions are 38a0: 20 64 65 63 6c 61 72 65 64 20 61 6e 64 20 65 78 declared and ex 38b0: 70 6f 72 74 65 64 20 28 69 2e 65 2e 20 77 69 74 ported (i.e. wit 38c0: 68 6f 75 74 0a 23 20 61 6e 20 65 78 70 6c 69 63 hout.# an explic 38d0: 69 74 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 it calling conve 38e0: 6e 74 69 6f 6e 2c 20 77 68 69 63 68 20 72 65 73 ntion, which res 38f0: 75 6c 74 73 20 69 6e 20 22 63 64 65 63 6c 22 29 ults in "cdecl") 3900: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 53 54 ..#.!IF$(USE_ST
3910: 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46  DCALL)!=0 || $(F 3920: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49 46 OR_WIN10)!=0.!IF 3930: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
3940: 22 78 38 36 22 0a 43 4f 52 45 5f 43 43 4f 4e 56  "x86".CORE_CCONV
3950: 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51  _OPTS = -Gz -DSQ
3960: 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65  LITE_CDECL=__cde
3970: 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43  cl -DSQLITE_APIC
3980: 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44  ALL=__stdcall -D
3990: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d  SQLITE_CALLBACK=
39a0: 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49  __stdcall -DSQLI
39b0: 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63  TE_SYSAPI=__stdc
39c0: 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f  all.SHELL_CCONV_
39d0: 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51 4c  OPTS = -Gz -DSQL
39e0: 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65 63  ITE_CDECL=__cdec
39f0: 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43 41  l -DSQLITE_APICA
3a00: 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53  LL=__stdcall -DS
3a10: 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f  QLITE_CALLBACK=_
3a20: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54  _stdcall -DSQLIT
3a30: 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63 61  E_SYSAPI=__stdca
3a40: 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45  ll.# <<mark>>.TE
3a50: 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20  ST_CCONV_OPTS =
3a60: 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45  -Gz -DSQLITE_CDE
3a70: 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c  CL=__cdecl -DSQL
3a80: 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74  ITE_APICALL=__st
3a90: 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43  dcall -DSQLITE_C
3aa0: 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c  ALLBACK=__stdcal
3ab0: 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50  l -DSQLITE_SYSAP
3ac0: 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 49 4e  I=__stdcall -DIN
3ad0: 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f 54 43 4c  CLUDE_SQLITE_TCL
3ae0: 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54 43  _H=1 -DSQLITE_TC
3af0: 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a 23 20 3c  LAPI=__cdecl.# <
3b00: 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 0a 21  </mark>>.!ELSE.!
3b10: 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a  IFNDEF PLATFORM.
3b20: 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 20  CORE_CCONV_OPTS
3b30: 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43  = -Gz -DSQLITE_C
3b40: 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53  DECL=__cdecl -DS
3b50: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f  QLITE_APICALL=__
3b60: 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45  stdcall -DSQLITE
3b70: 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63  _CALLBACK=__stdc
3b80: 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53  all -DSQLITE_SYS
3b90: 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 48  API=__stdcall.SH
3ba0: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  ELL_CCONV_OPTS =
3bb0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44   -Gz -DSQLITE_CD
3bc0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51  ECL=__cdecl -DSQ
3bd0: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73  LITE_APICALL=__s
3be0: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f  tdcall -DSQLITE_
3bf0: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61  CALLBACK=__stdca
3c00: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41  ll -DSQLITE_SYSA
3c10: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 3c  PI=__stdcall.# <
3c20: 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f  <mark>>.TEST_CCO
3c30: 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44  NV_OPTS = -Gz -D
3c40: 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63  SQLITE_CDECL=__c
3c50: 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50  decl -DSQLITE_AP
3c60: 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20  ICALL=__stdcall
3c70: 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43  -DSQLITE_CALLBAC
3c80: 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51  K=__stdcall -DSQ
3c90: 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74  LITE_SYSAPI=__st
3ca0: 64 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 5f  dcall -DINCLUDE_
3cb0: 53 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 2d  SQLITE_TCL_H=1 -
3cc0: 44 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d 5f  DSQLITE_TCLAPI=_
3cd0: 5f 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b  _cdecl.# <</mark
3ce0: 3e 3e 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 43 43  >>.!ELSE.CORE_CC
3cf0: 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 45 4c 4c  ONV_OPTS =.SHELL
3d00: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20  _CCONV_OPTS =.#
3d10: 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43  <<mark>>.TEST_CC
3d20: 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c 2f  ONV_OPTS =.# <</
3d30: 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 0a 21 45  mark>>.!ENDIF.!E
3d40: 4e 44 49 46 0a 21 45 4c 53 45 0a 43 4f 52 45 5f  NDIF.!ELSE.CORE_
3d50: 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 45  CCONV_OPTS =.SHE
3d60: 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a  LL_CCONV_OPTS =.
3d70: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f  # <<mark>>.TEST_
3d80: 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 3c  CCONV_OPTS =.# <
3d90: 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 0a  </mark>>.!ENDIF.
3da0: 0a 23 20 54 68 65 73 65 20 61 72 65 20 61 64 64  .# These are add
3db0: 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72  itional compiler
3dc0: 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 6f   options used fo
3dd0: 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  r the core libra
3de0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 4f  ry..#.!IFNDEF CO
3df0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 0a  RE_COMPILE_OPTS.
3e00: 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48  !IF $(DYNAMIC_SH 3e10: 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 ELL)!=0 ||$(FOR
3e20: 5f 57 49 4e 31 30 29 21 3d 30 0a 43 4f 52 45 5f  _WIN10)!=0.CORE_
3e30: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24  COMPILE_OPTS = $3e40: 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 (CORE_CCONV_OPTS 3e50: 29 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d 5f ) -DSQLITE_API=_ 3e60: 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c 65 78 70 _declspec(dllexp 3e70: 6f 72 74 29 0a 21 45 4c 53 45 0a 43 4f 52 45 5f ort).!ELSE.CORE_ 3e80: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 COMPILE_OPTS =$
3e90: 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53  (CORE_CCONV_OPTS
3ea0: 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a  ).!ENDIF.!ENDIF.
3eb0: 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65  .# These are the
3ec0: 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72 67   additional targ
3ed0: 65 74 73 20 74 68 61 74 20 74 68 65 20 63 6f 72  ets that the cor
3ee0: 65 20 6c 69 62 72 61 72 79 20 73 68 6f 75 6c 64  e library should
3ef0: 20 64 65 70 65 6e 64 20 6f 6e 0a 23 20 77 68 65   depend on.# whe
3f00: 6e 20 6c 69 6e 6b 69 6e 67 2e 0a 23 0a 21 49 46  n linking..#.!IF
3f10: 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e 4b 5f 44  NDEF CORE_LINK_D
3f20: 45 50 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43  EP.!IF $(DYNAMIC 3f30: 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 4f 52 45 5f _SHELL)!=0.CORE_ 3f40: 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 4c 53 45 LINK_DEP =.!ELSE 3f50: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d IF$(FOR_WIN10)=
3f60: 3d 30 20 7c 7c 20 22 24 28 50 4c 41 54 46 4f 52  =0 || "$(PLATFOR 3f70: 4d 29 22 3d 3d 22 78 38 36 22 0a 43 4f 52 45 5f M)"=="x86".CORE_ 3f80: 4c 49 4e 4b 5f 44 45 50 20 3d 20 73 71 6c 69 74 LINK_DEP = sqlit 3f90: 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a 43 4f 52 e3.def.!ELSE.COR 3fa0: 45 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 4e E_LINK_DEP =.!EN 3fb0: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 DIF.!ENDIF..# Th 3fc0: 65 73 65 20 61 72 65 20 61 64 64 69 74 69 6f 6e ese are addition 3fd0: 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e al linker option 3fe0: 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 63 s used for the c 3ff0: 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 ore library..#.! 4000: 49 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e 4b IFNDEF CORE_LINK 4010: 5f 4f 50 54 53 0a 21 49 46 20 24 28 44 59 4e 41 _OPTS.!IF$(DYNA
4020: 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 4f  MIC_SHELL)!=0.CO
4030: 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 0a 21  RE_LINK_OPTS =.!
4040: 45 4c 53 45 49 46 20 24 28 46 4f 52 5f 57 49 4e  ELSEIF $(FOR_WIN 4050: 31 30 29 3d 3d 30 20 7c 7c 20 22 24 28 50 4c 41 10)==0 || "$(PLA
4060: 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43  TFORM)"=="x86".C
4070: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 20  ORE_LINK_OPTS =
4080: 2f 44 45 46 3a 73 71 6c 69 74 65 33 2e 64 65 66  /DEF:sqlite3.def
4090: 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e 4b  .!ELSE.CORE_LINK
40a0: 5f 4f 50 54 53 20 3d 0a 21 45 4e 44 49 46 0a 21  _OPTS =.!ENDIF.!
40b0: 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61  ENDIF..# These a
40c0: 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 6f  re additional co
40d0: 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 75  mpiler options u
40e0: 73 65 64 20 66 6f 72 20 74 68 65 20 73 68 65 6c  sed for the shel
40f0: 6c 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a  l executable..#.
4100: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f  !IFNDEF SHELL_CO
4110: 4d 50 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 24  MPILE_OPTS.!IF $4120: 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 (DYNAMIC_SHELL)! 4130: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
4140: 30 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d 50  0)!=0.SHELL_COMP
4150: 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48 45  ILE_OPTS = $(SHE 4160: 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 20 2d LL_CCONV_OPTS) - 4170: 44 53 51 4c 49 54 45 5f 41 50 49 3d 5f 5f 64 65 DSQLITE_API=__de 4180: 63 6c 73 70 65 63 28 64 6c 6c 69 6d 70 6f 72 74 clspec(dllimport 4190: 29 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f ).!ELSE.SHELL_CO 41a0: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 MPILE_OPTS =$(S
41b0: 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 29  HELL_CCONV_OPTS)
41c0: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
41d0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 73 6f  # This is the so
41e0: 75 72 63 65 20 63 6f 64 65 20 74 68 61 74 20 74  urce code that t
41f0: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61  he shell executa
4200: 62 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 63 6f  ble should be co
4210: 6d 70 69 6c 65 64 0a 23 20 77 69 74 68 2e 0a 23  mpiled.# with..#
4220: 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43  .!IFNDEF SHELL_C
4230: 4f 52 45 5f 53 52 43 0a 21 49 46 20 24 28 44 59  ORE_SRC.!IF $(DY 4240: 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 NAMIC_SHELL)!=0 4250: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 ||$(FOR_WIN10)!
4260: 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52  =0.SHELL_CORE_SR
4270: 43 20 3d 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f  C =.!ELSE.SHELL_
4280: 43 4f 52 45 5f 53 52 43 20 3d 20 24 28 53 51 4c  CORE_SRC = $(SQL 4290: 49 54 45 33 43 29 0a 21 45 4e 44 49 46 0a 21 45 ITE3C).!ENDIF.!E 42a0: 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 20 NDIF..# This is 42b0: 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 79 the core library 42c0: 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c 20 that the shell 42d0: 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 6c executable shoul 42e0: 64 20 64 65 70 65 6e 64 20 6f 6e 2e 0a 23 0a 21 d depend on..#.! 42f0: 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f 52 IFNDEF SHELL_COR 4300: 45 5f 44 45 50 0a 21 49 46 20 24 28 44 59 4e 41 E_DEP.!IF$(DYNA
4310: 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c  MIC_SHELL)!=0 ||
4320: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 4330: 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 20 .SHELL_CORE_DEP 4340: 3d 20 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 0a =$(SQLITE3DLL).
4350: 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45  !ELSE.SHELL_CORE
4360: 5f 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45  _DEP =.!ENDIF.!E
4370: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
4380: 0a 23 20 49 66 20 7a 6c 69 62 20 73 75 70 70 6f  .# If zlib suppo
4390: 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61  rt is enabled, a
43a0: 64 64 20 74 68 65 20 73 68 65 6c 6c 20 64 65 70  dd the shell dep
43b0: 65 6e 64 65 6e 63 79 20 66 6f 72 20 69 74 2e 0a  endency for it..
43c0: 23 0a 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 42  #.!IF $(USE_ZLIB 43d0: 29 21 3d 30 20 26 26 20 24 28 42 55 49 4c 44 5f )!=0 &&$(BUILD_
43e0: 5a 4c 49 42 29 21 3d 30 0a 53 48 45 4c 4c 5f 43  ZLIB)!=0.SHELL_C
43f0: 4f 52 45 5f 44 45 50 20 3d 20 7a 6c 69 62 20 24  ORE_DEP = zlib $4400: 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 29 (SHELL_CORE_DEP) 4410: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 .!ENDIF.# <</mar 4420: 6b 3e 3e 0a 0a 23 20 54 68 69 73 20 69 73 20 74 k>>..# This is t 4430: 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 79 20 he core library 4440: 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c 20 65 that the shell e 4450: 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 6c 64 xecutable should 4460: 20 6c 69 6e 6b 20 77 69 74 68 2e 0a 23 0a 21 49 link with..#.!I 4470: 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f 52 45 FNDEF SHELL_CORE 4480: 5f 4c 49 42 0a 21 49 46 20 24 28 44 59 4e 41 4d _LIB.!IF$(DYNAM
4490: 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20  IC_SHELL)!=0 ||
44a0: 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a  $(FOR_WIN10)!=0. 44b0: 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 20 3d SHELL_CORE_LIB = 44c0: 20 24 28 53 51 4c 49 54 45 33 4c 49 42 29 0a 21$(SQLITE3LIB).!
44d0: 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f  ELSE.SHELL_CORE_
44e0: 4c 49 42 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e  LIB =.!ENDIF.!EN
44f0: 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65  DIF..# These are
4500: 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b   additional link
4510: 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20  er options used
4520: 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 20 65 78  for the shell ex
4530: 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49 46 4e  ecutable..#.!IFN
4540: 44 45 46 20 53 48 45 4c 4c 5f 4c 49 4e 4b 5f 4f  DEF SHELL_LINK_O
4550: 50 54 53 0a 53 48 45 4c 4c 5f 4c 49 4e 4b 5f 4f  PTS.SHELL_LINK_O
4560: 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 4f  PTS = $(SHELL_CO 4570: 52 45 5f 4c 49 42 29 0a 21 45 4e 44 49 46 0a 0a RE_LIB).!ENDIF.. 4580: 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 65 6d # Check if assem 4590: 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67 bly code listing 45a0: 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 6e 65 s should be gene 45b0: 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 73 6f rated for the so 45c0: 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 6c 65 urce.# code file 45d0: 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c 65 64 s to be compiled 45e0: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4c 49 ..#.!IF$(USE_LI
45f0: 53 54 49 4e 47 53 29 21 3d 30 0a 54 43 43 20 3d  STINGS)!=0.TCC =
4600: 20 24 28 54 43 43 29 20 2d 46 41 63 73 0a 21 45   $(TCC) -FAcs.!E 4610: 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d NDIF..# When com 4620: 70 69 6c 69 6e 67 20 74 68 65 20 6c 69 62 72 61 piling the libra 4630: 72 79 20 66 6f 72 20 75 73 65 20 69 6e 20 74 68 ry for use in th 4640: 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d e WinRT environm 4650: 65 6e 74 2c 0a 23 20 74 68 65 20 66 6f 6c 6c 6f ent,.# the follo 4660: 77 69 6e 67 20 63 6f 6d 70 69 6c 65 2d 74 69 6d wing compile-tim 4670: 65 20 6f 70 74 69 6f 6e 73 20 6d 75 73 74 20 62 e options must b 4680: 65 20 75 73 65 64 20 61 73 20 77 65 6c 6c 20 74 e used as well t 4690: 6f 0a 23 20 64 69 73 61 62 6c 65 20 75 73 65 20 o.# disable use 46a0: 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 74 68 of Win32 APIs th 46b0: 61 74 20 61 72 65 20 6e 6f 74 20 61 76 61 69 6c at are not avail 46c0: 61 62 6c 65 20 61 6e 64 20 74 6f 20 65 6e 61 62 able and to enab 46d0: 6c 65 0a 23 20 75 73 65 20 6f 66 20 57 69 6e 33 le.# use of Win3 46e0: 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65 20 2 APIs that are 46f0: 73 70 65 63 69 66 69 63 20 74 6f 20 57 69 6e 64 specific to Wind 4700: 6f 77 73 20 38 20 61 6e 64 2f 6f 72 20 57 69 6e ows 8 and/or Win 4710: 52 54 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f RT..#.!IF$(FOR_
4720: 57 49 4e 52 54 29 21 3d 30 0a 54 43 43 20 3d 20  WINRT)!=0.TCC =
4730: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(TCC) -DSQLITE_ 4740: 4f 53 5f 57 49 4e 52 54 3d 31 0a 52 43 43 20 3d OS_WINRT=1.RCC = 4750: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
4760: 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 54 43 43 20  _OS_WINRT=1.TCC
4770: 3d 20 24 28 54 43 43 29 20 2d 44 57 49 4e 41 50  = $(TCC) -DWINAP 4780: 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49 5f I_FAMILY=WINAPI_ 4790: 46 41 4d 49 4c 59 5f 41 50 50 0a 52 43 43 20 3d FAMILY_APP.RCC = 47a0: 20 24 28 52 43 43 29 20 2d 44 57 49 4e 41 50 49$(RCC) -DWINAPI
47b0: 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49 5f 46  _FAMILY=WINAPI_F
47c0: 41 4d 49 4c 59 5f 41 50 50 0a 21 45 4e 44 49 46  AMILY_APP.!ENDIF
47d0: 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 6f  ..# C compiler o
47e0: 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 57  ptions for the W
47f0: 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f  indows 10 platfo
4800: 72 6d 20 28 6e 65 65 64 73 20 4d 53 56 43 20 32  rm (needs MSVC 2
4810: 30 31 35 29 2e 0a 23 0a 21 49 46 20 24 28 46 4f  015)..#.!IF $(FO 4820: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 43 20 R_WIN10)!=0.TCC 4830: 3d 20 24 28 54 43 43 29 20 2f 64 32 67 75 61 72 =$(TCC) /d2guar
4840: 64 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41 50 49  d4 -D_ARM_WINAPI
4850: 5f 50 41 52 54 49 54 49 4f 4e 5f 44 45 53 4b 54  _PARTITION_DESKT
4860: 4f 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42 4c 45  OP_SDK_AVAILABLE
4870: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2f 64  .BCC = $(BCC) /d 4880: 32 67 75 61 72 64 34 20 2d 44 5f 41 52 4d 5f 57 2guard4 -D_ARM_W 4890: 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f 4e 5f INAPI_PARTITION_ 48a0: 44 45 53 4b 54 4f 50 5f 53 44 4b 5f 41 56 41 49 DESKTOP_SDK_AVAI 48b0: 4c 41 42 4c 45 0a 21 45 4e 44 49 46 0a 0a 23 20 LABLE.!ENDIF..# 48c0: 41 6c 73 6f 2c 20 77 65 20 6e 65 65 64 20 74 6f Also, we need to 48d0: 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e dynamically lin 48e0: 6b 20 74 6f 20 74 68 65 20 63 6f 72 72 65 63 74 k to the correct 48f0: 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 0a 23 20 MSVC runtime.# 4900: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 when compiling f 4910: 6f 72 20 57 69 6e 52 54 20 28 65 2e 67 2e 20 64 or WinRT (e.g. d 4920: 65 62 75 67 20 6f 72 20 72 65 6c 65 61 73 65 29 ebug or release) 4930: 20 4f 52 20 69 66 20 74 68 65 0a 23 20 55 53 45 OR if the.# USE 4940: 5f 43 52 54 5f 44 4c 4c 20 6f 70 74 69 6f 6e 20 _CRT_DLL option 4950: 69 73 20 73 65 74 20 74 6f 20 66 6f 72 63 65 20 is set to force 4960: 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b dynamically link 4970: 69 6e 67 20 74 6f 20 74 68 65 0a 23 20 4d 53 56 ing to the.# MSV 4980: 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 C runtime librar 4990: 79 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 y..#.!IF$(FOR_W
49a0: 49 4e 52 54 29 21 3d 30 20 7c 7c 20 24 28 55 53  INRT)!=0 || $(US 49b0: 45 5f 43 52 54 5f 44 4c 4c 29 21 3d 30 0a 21 49 E_CRT_DLL)!=0.!I 49c0: 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 F$(DEBUG)>1.TCC
49d0: 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 64 0a 42   = $(TCC) -MDd.B 49e0: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 44 64 CC =$(BCC) -MDd
49f0: 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 54  .!ELSE.TCC = $(T 4a00: 43 43 29 20 2d 4d 44 0a 42 43 43 20 3d 20 24 28 CC) -MD.BCC =$(
4a10: 42 43 43 29 20 2d 4d 44 0a 21 45 4e 44 49 46 0a  BCC) -MD.!ENDIF.
4a20: 21 45 4c 53 45 0a 21 49 46 20 24 28 44 45 42 55  !ELSE.!IF $(DEBU 4a30: 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43 43 G)>1.TCC =$(TCC
4a40: 29 20 2d 4d 54 64 0a 42 43 43 20 3d 20 24 28 42  ) -MTd.BCC = $(B 4a50: 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 0a 54 CC) -MTd.!ELSE.T 4a60: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 0a CC =$(TCC) -MT.
4a70: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 54  BCC = $(BCC) -MT 4a80: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 4a90: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68 65 # <<mark>>.# The 4aa0: 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 20 mksqlite3c.tcl 4ab0: 61 6e 64 20 6d 6b 73 71 6c 69 74 65 33 68 2e 74 and mksqlite3h.t 4ac0: 63 6c 20 73 63 72 69 70 74 73 20 77 69 6c 6c 20 cl scripts will 4ad0: 70 75 6c 6c 20 69 6e 0a 23 20 61 6e 79 20 65 78 pull in.# any ex 4ae0: 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20 66 tension header f 4af0: 69 6c 65 73 20 62 79 20 64 65 66 61 75 6c 74 2e iles by default. 4b00: 20 20 46 6f 72 20 6e 6f 6e 2d 61 6d 61 6c 67 61 For non-amalga 4b10: 6d 61 74 69 6f 6e 0a 23 20 62 75 69 6c 64 73 2c mation.# builds, 4b20: 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 we need to make 4b30: 20 73 75 72 65 20 74 68 65 20 63 6f 6d 70 69 6c sure the compil 4b40: 65 72 20 63 61 6e 20 66 69 6e 64 20 74 68 65 73 er can find thes 4b50: 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 41 e..#.!IF$(USE_A
4b60: 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a  MALGAMATION)==0.
4b70: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
4b80: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a 52  (TOP)\ext\fts3.R
4b90: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 28  CC = $(RCC) -I$(
4ba0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a 54 43  TOP)\ext\fts3.TC
4bb0: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54  C = $(TCC) -I$(T
4bc0: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a 52 43  OP)\ext\rtree.RC
4bd0: 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 28 54  C = $(RCC) -I$(T
4be0: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a 54 43  OP)\ext\rtree.TC
4bf0: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54  C = $(TCC) -I$(T
4c00: 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 0a  OP)\ext\session.
4c10: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24  RCC = $(RCC) -I$
4c20: 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f  (TOP)\ext\sessio
4c30: 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20  n.!ENDIF..# The
4c40: 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 20 73  mksqlite3c.tcl s
4c50: 63 72 69 70 74 20 61 63 63 65 70 74 73 20 73 6f  cript accepts so
4c60: 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20 74 68  me options on th
4c70: 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65  e command.# line
4c80: 2e 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  .  When compilin
4c90: 67 20 77 69 74 68 20 64 65 62 75 67 67 69 6e 67  g with debugging
4ca0: 20 65 6e 61 62 6c 65 64 2c 20 73 6f 6d 65 20 6f   enabled, some o
4cb0: 66 20 74 68 65 73 65 0a 23 20 6f 70 74 69 6f 6e  f these.# option
4cc0: 73 20 61 72 65 20 6e 65 63 65 73 73 61 72 79 20  s are necessary
4cd0: 69 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c 6f  in order to allo
4ce0: 77 20 64 65 62 75 67 67 69 6e 67 20 73 79 6d 62  w debugging symb
4cf0: 6f 6c 73 20 74 6f 0a 23 20 77 6f 72 6b 20 63 6f  ols to.# work co
4d00: 72 72 65 63 74 6c 79 20 77 69 74 68 20 56 69 73  rrectly with Vis
4d10: 75 61 6c 20 53 74 75 64 69 6f 20 77 68 65 6e 20  ual Studio when
4d20: 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c 67 61  using the amalga
4d30: 6d 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45  mation..#.!IFNDE
4d40: 46 20 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f  F MKSQLITE3C_TOO
4d50: 4c 0a 21 49 46 20 24 28 4d 49 4e 49 4d 41 4c 5f  L.!IF $(MINIMAL_ 4d60: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 21 3d 30 AMALGAMATION)!=0 4d70: 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c .MKSQLITE3C_TOOL 4d80: 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d =$(TOP)\tool\m
4d90: 6b 73 71 6c 69 74 65 33 63 2d 6e 6f 65 78 74 2e  ksqlite3c-noext.
4da0: 74 63 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c 49  tcl.!ELSE.MKSQLI
4db0: 54 45 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54 4f  TE3C_TOOL = $(TO 4dc0: 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 P)\tool\mksqlite 4dd0: 33 63 2e 74 63 6c 0a 21 45 4e 44 49 46 0a 21 45 3c.tcl.!ENDIF.!E 4de0: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4d 4b NDIF..!IFNDEF MK 4df0: 53 51 4c 49 54 45 33 43 5f 41 52 47 53 0a 21 49 SQLITE3C_ARGS.!I 4e00: 46 20 24 28 44 45 42 55 47 29 3e 31 0a 4d 4b 53 F$(DEBUG)>1.MKS
4e10: 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 20 2d  QLITE3C_ARGS = -
4e20: 2d 6c 69 6e 65 6d 61 63 72 6f 73 0a 21 45 4c 53  -linemacros.!ELS
4e30: 45 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47  E.MKSQLITE3C_ARG
4e40: 53 20 3d 0a 21 45 4e 44 49 46 0a 21 49 46 20 24  S =.!ENDIF.!IF $4e50: 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 (USE_STDCALL)!=0 4e60: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 ||$(FOR_WIN10)
4e70: 21 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41  !=0.MKSQLITE3C_A
4e80: 52 47 53 20 3d 20 24 28 4d 4b 53 51 4c 49 54 45  RGS = $(MKSQLITE 4e90: 33 43 5f 41 52 47 53 29 20 2d 2d 75 73 65 61 70 3C_ARGS) --useap 4ea0: 69 63 61 6c 6c 0a 21 45 4e 44 49 46 0a 21 45 4e icall.!ENDIF.!EN 4eb0: 44 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71 6c DIF..# The mksql 4ec0: 69 74 65 33 68 2e 74 63 6c 20 73 63 72 69 70 74 ite3h.tcl script 4ed0: 20 61 63 63 65 70 74 73 20 73 6f 6d 65 20 6f 70 accepts some op 4ee0: 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d tions on the com 4ef0: 6d 61 6e 64 20 6c 69 6e 65 2e 0a 23 20 57 68 65 mand line..# Whe 4f00: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68 n compiling with 4f10: 20 73 74 64 63 61 6c 6c 20 73 75 70 70 6f 72 74 stdcall support 4f20: 2c 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 65 20 , some of these 4f30: 6f 70 74 69 6f 6e 73 20 61 72 65 0a 23 20 6e 65 options are.# ne 4f40: 63 65 73 73 61 72 79 2e 0a 23 0a 21 49 46 4e 44 cessary..#.!IFND 4f50: 45 46 20 4d 4b 53 51 4c 49 54 45 33 48 5f 41 52 EF MKSQLITE3H_AR 4f60: 47 53 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 GS.!IF$(USE_STD
4f70: 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  CALL)!=0 || $(FO 4f80: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b 53 51 R_WIN10)!=0.MKSQ 4f90: 4c 49 54 45 33 48 5f 41 52 47 53 20 3d 20 2d 2d LITE3H_ARGS = -- 4fa0: 75 73 65 61 70 69 63 61 6c 6c 0a 21 45 4c 53 45 useapicall.!ELSE 4fb0: 0a 4d 4b 53 51 4c 49 54 45 33 48 5f 41 52 47 53 .MKSQLITE3H_ARGS 4fc0: 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 =.!ENDIF.!ENDIF 4fd0: 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 .# <</mark>>..# 4fe0: 44 65 66 69 6e 65 20 2d 44 4e 44 45 42 55 47 20 Define -DNDEBUG 4ff0: 74 6f 20 63 6f 6d 70 69 6c 65 20 77 69 74 68 6f to compile witho 5000: 75 74 20 64 65 62 75 67 67 69 6e 67 20 28 69 2e ut debugging (i. 5010: 65 2e 2c 20 66 6f 72 20 70 72 6f 64 75 63 74 69 e., for producti 5020: 6f 6e 20 75 73 61 67 65 29 0a 23 20 4f 6d 69 74 on usage).# Omit 5030: 74 69 6e 67 20 74 68 65 20 64 65 66 69 6e 65 20 ting the define 5040: 77 69 6c 6c 20 63 61 75 73 65 20 65 78 74 72 61 will cause extra 5050: 20 64 65 62 75 67 67 69 6e 67 20 63 6f 64 65 20 debugging code 5060: 74 6f 20 62 65 20 69 6e 73 65 72 74 65 64 20 61 to be inserted a 5070: 6e 64 0a 23 20 69 6e 63 6c 75 64 65 73 20 65 78 nd.# includes ex 5080: 74 72 61 20 63 6f 6d 6d 65 6e 74 73 20 77 68 65 tra comments whe 5090: 6e 20 22 45 58 50 4c 41 49 4e 20 73 74 6d 74 22 n "EXPLAIN stmt" 50a0: 20 69 73 20 75 73 65 64 2e 0a 23 0a 21 49 46 20 is used..#.!IF 50b0: 24 28 44 45 42 55 47 29 3d 3d 30 0a 54 43 43 20$(DEBUG)==0.TCC
50c0: 3d 20 24 28 54 43 43 29 20 2d 44 4e 44 45 42 55  = $(TCC) -DNDEBU 50d0: 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d G.BCC =$(BCC) -
50e0: 44 4e 44 45 42 55 47 0a 52 43 43 20 3d 20 24 28  DNDEBUG.RCC = $( 50f0: 52 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 21 45 RCC) -DNDEBUG.!E 5100: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 NDIF..!IF$(DEBU
5110: 47 29 3e 30 20 7c 7c 20 24 28 41 50 49 5f 41 52  G)>0 || $(API_AR 5120: 4d 4f 52 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 MOR)!=0 ||$(FOR
5130: 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 43 20 3d  _WIN10)!=0.TCC =
5140: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE 5150: 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d 4f _ENABLE_API_ARMO 5160: 52 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 R=1.RCC =$(RCC)
5170: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
5180: 5f 41 50 49 5f 41 52 4d 4f 52 3d 31 0a 21 45 4e  _API_ARMOR=1.!EN
5190: 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47  DIF..!IF $(DEBUG 51a0: 29 3e 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 )>2.TCC =$(TCC)
51b0: 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 3d   -DSQLITE_DEBUG=
51c0: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 51d0: 44 53 51 4c 49 54 45 5f 44 45 42 55 47 3d 31 0a DSQLITE_DEBUG=1. 51e0: 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 !IF$(DYNAMIC_SH
51f0: 45 4c 4c 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28  ELL)==0.TCC = $( 5200: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 5210: 41 42 4c 45 5f 57 48 45 52 45 54 52 41 43 45 20 ABLE_WHERETRACE 5220: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 5230: 53 45 4c 45 43 54 54 52 41 43 45 0a 52 43 43 20 SELECTTRACE.RCC 5240: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 =$(RCC) -DSQLIT
5250: 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52 45 54 52  E_ENABLE_WHERETR
5260: 41 43 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  ACE -DSQLITE_ENA
5270: 42 4c 45 5f 53 45 4c 45 43 54 54 52 41 43 45 0a  BLE_SELECTTRACE.
5280: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 21  !ENDIF.!ENDIF..!
5290: 49 46 20 24 28 44 45 42 55 47 29 3e 34 20 7c 7c  IF $(DEBUG)>4 || 52a0: 20 24 28 4f 53 54 52 41 43 45 29 21 3d 30 0a 54$(OSTRACE)!=0.T
52b0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ 52c0: 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54 52 LITE_FORCE_OS_TR 52d0: 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f 44 ACE=1 -DSQLITE_D 52e0: 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 0a EBUG_OS_TRACE=1. 52f0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 RCC =$(RCC) -DS
5300: 51 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54  QLITE_FORCE_OS_T
5310: 52 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f  RACE=1 -DSQLITE_
5320: 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31  DEBUG_OS_TRACE=1
5330: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44  .!ENDIF..!IF $(D 5340: 45 42 55 47 29 3e 35 0a 54 43 43 20 3d 20 24 28 EBUG)>5.TCC =$(
5350: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  TCC) -DSQLITE_EN
5360: 41 42 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 52  ABLE_IOTRACE=1.R
5370: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51  CC = $(RCC) -DSQ 5380: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52 LITE_ENABLE_IOTR 5390: 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20 ACE=1.!ENDIF..# 53a0: 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 73 Prevent warnings 53b0: 20 61 62 6f 75 74 20 22 69 6e 73 65 63 75 72 65 about "insecure 53c0: 22 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c " MSVC runtime l 53d0: 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 ibrary functions 53e0: 0a 23 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23 .# being used..# 53f0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 .TCC =$(TCC) -D
5400: 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44  _CRT_SECURE_NO_D
5410: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f  EPRECATE -D_CRT_
5420: 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e  SECURE_NO_WARNIN
5430: 47 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  GS.BCC = $(BCC) 5440: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f -D_CRT_SECURE_NO 5450: 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 _DEPRECATE -D_CR 5460: 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e T_SECURE_NO_WARN 5470: 49 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43 INGS.RCC =$(RCC
5480: 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  ) -D_CRT_SECURE_
5490: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f  NO_DEPRECATE -D_
54a0: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41  CRT_SECURE_NO_WA
54b0: 52 4e 49 4e 47 53 0a 0a 23 20 50 72 65 76 65 6e  RNINGS..# Preven
54c0: 74 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 74  t warnings about
54d0: 20 22 64 65 70 72 65 63 61 74 65 64 22 20 50 4f   "deprecated" PO
54e0: 53 49 58 20 66 75 6e 63 74 69 6f 6e 73 20 62 65  SIX functions be
54f0: 69 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 20  ing used..#.TCC
5500: 3d 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 5f  = $(TCC) -D_CRT_ 5510: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 NONSTDC_NO_DEPRE 5520: 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 CATE -D_CRT_NONS 5530: 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a TDC_NO_WARNINGS. 5540: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f BCC =$(BCC) -D_
5550: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44  CRT_NONSTDC_NO_D
5560: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f  EPRECATE -D_CRT_
5570: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49  NONSTDC_NO_WARNI
5580: 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43 29  NGS.RCC = $(RCC) 5590: 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f -D_CRT_NONSTDC_ 55a0: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f NO_DEPRECATE -D_ 55b0: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 CRT_NONSTDC_NO_W 55c0: 41 52 4e 49 4e 47 53 0a 0a 23 20 55 73 65 20 74 ARNINGS..# Use t 55d0: 68 65 20 53 51 4c 69 74 65 20 64 65 62 75 67 67 he SQLite debugg 55e0: 69 6e 67 20 68 65 61 70 20 73 75 62 73 79 73 74 ing heap subsyst 55f0: 65 6d 3f 0a 23 0a 21 49 46 20 24 28 4d 45 4d 44 em?.#.!IF$(MEMD
5600: 45 42 55 47 29 21 3d 30 0a 54 43 43 20 3d 20 24  EBUG)!=0.TCC = $5610: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 4d (TCC) -DSQLITE_M 5620: 45 4d 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20 EMDEBUG=1.RCC = 5630: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(RCC) -DSQLITE_
5640: 4d 45 4d 44 45 42 55 47 3d 31 0a 0a 23 20 55 73  MEMDEBUG=1..# Us
5650: 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68  e native Win32 h
5660: 65 61 70 20 73 75 62 73 79 73 74 65 6d 20 69 6e  eap subsystem in
5670: 73 74 65 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 2f  stead of malloc/
5680: 66 72 65 65 3f 0a 23 0a 21 45 4c 53 45 49 46 20  free?.#.!ELSEIF
5690: 24 28 57 49 4e 33 32 48 45 41 50 29 21 3d 30 0a  $(WIN32HEAP)!=0. 56a0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
56b0: 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c  QLITE_WIN32_MALL
56c0: 4f 43 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  OC=1.RCC = $(RCC 56d0: 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 ) -DSQLITE_WIN32 56e0: 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a 23 20 56 61 6c _MALLOC=1..# Val 56f0: 69 64 61 74 65 20 74 68 65 20 68 65 61 70 20 6f idate the heap o 5700: 6e 20 65 76 65 72 79 20 63 61 6c 6c 20 69 6e 74 n every call int 5710: 6f 20 74 68 65 20 6e 61 74 69 76 65 20 57 69 6e o the native Win 5720: 33 32 20 68 65 61 70 20 73 75 62 73 79 73 74 65 32 heap subsyste 5730: 6d 3f 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 m?.#.!IF$(DEBUG
5740: 29 3e 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29  )>3.TCC = $(TCC) 5750: 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f -DSQLITE_WIN32_ 5760: 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d MALLOC_VALIDATE= 5770: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 1.RCC =$(RCC) -
5780: 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41  DSQLITE_WIN32_MA
5790: 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a  LLOC_VALIDATE=1.
57a0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
57b0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68 65 20   <<mark>>.# The
57c0: 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 65  locations of the
57d0: 20 54 63 6c 20 68 65 61 64 65 72 20 61 6e 64 20   Tcl header and
57e0: 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 20  library files.
57f0: 41 6c 73 6f 2c 20 74 68 65 20 6c 69 62 72 61 72  Also, the librar
5800: 79 20 74 68 61 74 0a 23 20 6e 6f 6e 2d 73 74 75  y that.# non-stu
5810: 62 73 20 65 6e 61 62 6c 65 64 20 70 72 6f 67 72  bs enabled progr
5820: 61 6d 73 20 75 73 69 6e 67 20 54 63 6c 20 6d 75  ams using Tcl mu
5830: 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e  st link against.
5840: 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65    These variable
5850: 73 0a 23 20 28 54 43 4c 49 4e 43 44 49 52 2c 20  s.# (TCLINCDIR,
5860: 54 43 4c 4c 49 42 44 49 52 2c 20 61 6e 64 20 4c  TCLLIBDIR, and L
5870: 49 42 54 43 4c 29 20 6d 61 79 20 62 65 20 6f 76  IBTCL) may be ov
5880: 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 65  erridden via the
5890: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 70   environment.# p
58a0: 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20  rior to running
58b0: 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74  nmake in order t
58c0: 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 74 75  o match the actu
58d0: 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f 63  al installed loc
58e0: 61 74 69 6f 6e 20 61 6e 64 0a 23 20 76 65 72 73  ation and.# vers
58f0: 69 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61 63 68  ion on this mach
5900: 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54  ine..#.!IFNDEF T
5910: 43 4c 44 49 52 0a 54 43 4c 44 49 52 20 3d 20 24  CLDIR.TCLDIR = $5920: 28 54 4f 50 29 5c 63 6f 6d 70 61 74 5c 74 63 6c (TOP)\compat\tcl 5930: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 .!ENDIF..!IFNDEF 5940: 20 54 43 4c 49 4e 43 44 49 52 0a 54 43 4c 49 4e TCLINCDIR.TCLIN 5950: 43 44 49 52 20 3d 20 24 28 54 43 4c 44 49 52 29 CDIR =$(TCLDIR)
5960: 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49 46 0a  \include.!ENDIF.
5970: 0a 21 49 46 4e 44 45 46 20 54 43 4c 4c 49 42 44  .!IFNDEF TCLLIBD
5980: 49 52 0a 54 43 4c 4c 49 42 44 49 52 20 3d 20 24  IR.TCLLIBDIR = $5990: 28 54 43 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e (TCLDIR)\lib.!EN 59a0: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 DIF..!IFNDEF LIB 59b0: 54 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 63 6c TCL.LIBTCL = tcl 59c0: 38 36 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 86.lib.!ENDIF..! 59d0: 49 46 4e 44 45 46 20 4c 49 42 54 43 4c 53 54 55 IFNDEF LIBTCLSTU 59e0: 42 0a 4c 49 42 54 43 4c 53 54 55 42 20 3d 20 74 B.LIBTCLSTUB = t 59f0: 63 6c 73 74 75 62 38 36 2e 6c 69 62 0a 21 45 4e clstub86.lib.!EN 5a00: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 DIF..!IFNDEF LIB 5a10: 54 43 4c 50 41 54 48 0a 4c 49 42 54 43 4c 50 41 TCLPATH.LIBTCLPA 5a20: 54 48 20 3d 20 24 28 54 43 4c 44 49 52 29 5c 62 TH =$(TCLDIR)\b
5a30: 69 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65  in.!ENDIF..# The
5a40: 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68   locations of th
5a50: 65 20 7a 6c 69 62 20 68 65 61 64 65 72 20 61 6e  e zlib header an
5a60: 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e  d library files.
5a70: 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65    These variable
5a80: 73 0a 23 20 28 5a 4c 49 42 49 4e 43 44 49 52 2c  s.# (ZLIBINCDIR,
5a90: 20 5a 4c 49 42 4c 49 42 44 49 52 2c 20 61 6e 64   ZLIBLIBDIR, and
5aa0: 20 5a 4c 49 42 4c 49 42 29 20 6d 61 79 20 62 65   ZLIBLIB) may be
5ab0: 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20   overridden via
5ac0: 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a  the environment.
5ad0: 23 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69  # prior to runni
5ae0: 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65  ng nmake in orde
5af0: 72 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61  r to match the a
5b00: 63 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20  ctual installed
5b10: 28 6f 72 20 73 6f 75 72 63 65 0a 23 20 63 6f 64  (or source.# cod
5b20: 65 29 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 20 74  e) location on t
5b30: 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21  his machine..#.!
5b40: 49 46 4e 44 45 46 20 5a 4c 49 42 44 49 52 0a 5a  IFNDEF ZLIBDIR.Z
5b50: 4c 49 42 44 49 52 20 3d 20 24 28 54 4f 50 29 5c  LIBDIR = $(TOP)\ 5b60: 63 6f 6d 70 61 74 5c 7a 6c 69 62 0a 21 45 4e 44 compat\zlib.!END 5b70: 49 46 0a 0a 21 49 46 4e 44 45 46 20 5a 4c 49 42 IF..!IFNDEF ZLIB 5b80: 49 4e 43 44 49 52 0a 5a 4c 49 42 49 4e 43 44 49 INCDIR.ZLIBINCDI 5b90: 52 20 3d 20 24 28 5a 4c 49 42 44 49 52 29 0a 21 R =$(ZLIBDIR).!
5ba0: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 5a  ENDIF..!IFNDEF Z
5bb0: 4c 49 42 4c 49 42 44 49 52 0a 5a 4c 49 42 4c 49  LIBLIBDIR.ZLIBLI
5bc0: 42 44 49 52 20 3d 20 24 28 5a 4c 49 42 44 49 52  BDIR = $(ZLIBDIR 5bd0: 29 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 ).!ENDIF..!IFNDE 5be0: 46 20 5a 4c 49 42 4c 49 42 0a 21 49 46 20 24 28 F ZLIBLIB.!IF$(
5bf0: 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d  DYNAMIC_SHELL)!=
5c00: 30 0a 5a 4c 49 42 4c 49 42 20 3d 20 7a 64 6c 6c  0.ZLIBLIB = zdll
5c10: 2e 6c 69 62 0a 21 45 4c 53 45 0a 5a 4c 49 42 4c  .lib.!ELSE.ZLIBL
5c20: 49 42 20 3d 20 7a 6c 69 62 2e 6c 69 62 0a 21 45  IB = zlib.lib.!E
5c30: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54  NDIF.!ENDIF..# T
5c40: 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20  he locations of
5c50: 74 68 65 20 49 43 55 20 68 65 61 64 65 72 20 61  the ICU header a
5c60: 6e 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73  nd library files
5c70: 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c  .  These variabl
5c80: 65 73 0a 23 20 28 49 43 55 49 4e 43 44 49 52 2c  es.# (ICUINCDIR,
5c90: 20 49 43 55 4c 49 42 44 49 52 2c 20 61 6e 64 20   ICULIBDIR, and
5ca0: 4c 49 42 49 43 55 29 20 6d 61 79 20 62 65 20 6f  LIBICU) may be o
5cb0: 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68  verridden via th
5cc0: 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20  e environment.#
5cd0: 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67  prior to running
5ce0: 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20   nmake in order
5cf0: 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 74  to match the act
5d00: 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f  ual installed lo
5d10: 63 61 74 69 6f 6e 20 6f 6e 0a 23 20 74 68 69 73  cation on.# this
5d20: 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49 46 4e   machine..#.!IFN
5d30: 44 45 46 20 49 43 55 44 49 52 0a 49 43 55 44 49  DEF ICUDIR.ICUDI
5d40: 52 20 3d 20 24 28 54 4f 50 29 5c 63 6f 6d 70 61  R = $(TOP)\compa 5d50: 74 5c 69 63 75 0a 21 45 4e 44 49 46 0a 0a 21 49 t\icu.!ENDIF..!I 5d60: 46 4e 44 45 46 20 49 43 55 49 4e 43 44 49 52 0a FNDEF ICUINCDIR. 5d70: 49 43 55 49 4e 43 44 49 52 20 3d 20 24 28 49 43 ICUINCDIR =$(IC
5d80: 55 44 49 52 29 5c 69 6e 63 6c 75 64 65 0a 21 45  UDIR)\include.!E
5d90: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 43  NDIF..!IFNDEF IC
5da0: 55 4c 49 42 44 49 52 0a 49 43 55 4c 49 42 44 49  ULIBDIR.ICULIBDI
5db0: 52 20 3d 20 24 28 49 43 55 44 49 52 29 5c 6c 69  R = $(ICUDIR)\li 5dc0: 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 b.!ENDIF..!IFNDE 5dd0: 46 20 4c 49 42 49 43 55 0a 4c 49 42 49 43 55 20 F LIBICU.LIBICU 5de0: 3d 20 69 63 75 75 63 2e 6c 69 62 20 69 63 75 69 = icuuc.lib icui 5df0: 6e 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 n.lib.!ENDIF..# 5e00: 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d 6d This is the comm 5e10: 61 6e 64 20 74 6f 20 75 73 65 20 66 6f 72 20 74 and to use for t 5e20: 63 6c 73 68 20 2d 20 6e 6f 72 6d 61 6c 6c 79 20 clsh - normally 5e30: 6a 75 73 74 20 22 74 63 6c 73 68 22 2c 20 62 75 just "tclsh", bu 5e40: 74 20 77 65 20 6d 61 79 0a 23 20 6b 6e 6f 77 20 t we may.# know 5e50: 74 68 65 20 73 70 65 63 69 66 69 63 20 76 65 72 the specific ver 5e60: 73 69 6f 6e 20 77 65 20 77 61 6e 74 20 74 6f 20 sion we want to 5e70: 75 73 65 2e 20 20 54 68 69 73 20 76 61 72 69 61 use. This varia 5e80: 62 6c 65 20 28 54 43 4c 53 48 5f 43 4d 44 29 20 ble (TCLSH_CMD) 5e90: 6d 61 79 20 62 65 0a 23 20 6f 76 65 72 72 69 64 may be.# overrid 5ea0: 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 den via the envi 5eb0: 72 6f 6e 6d 65 6e 74 20 70 72 69 6f 72 20 74 6f ronment prior to 5ec0: 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 running nmake i 5ed0: 6e 20 6f 72 64 65 72 20 74 6f 20 73 65 6c 65 63 n order to selec 5ee0: 74 20 61 0a 23 20 73 70 65 63 69 66 69 63 20 54 t a.# specific T 5ef0: 63 6c 20 73 68 65 6c 6c 20 74 6f 20 75 73 65 2e cl shell to use. 5f00: 0a 23 0a 21 49 46 4e 44 45 46 20 54 43 4c 53 48 .#.!IFNDEF TCLSH 5f10: 5f 43 4d 44 0a 21 49 46 20 24 28 55 53 45 5f 54 _CMD.!IF$(USE_T
5f20: 43 4c 53 48 5f 49 4e 5f 50 41 54 48 29 21 3d 30  CLSH_IN_PATH)!=0
5f30: 0a 54 43 4c 53 48 5f 43 4d 44 20 3d 20 74 63 6c  .TCLSH_CMD = tcl
5f40: 73 68 0a 21 45 4c 53 45 0a 54 43 4c 53 48 5f 43  sh.!ELSE.TCLSH_C
5f50: 4d 44 20 3d 20 24 28 54 43 4c 44 49 52 29 5c 62  MD = $(TCLDIR)\b 5f60: 69 6e 5c 74 63 6c 73 68 2e 65 78 65 0a 21 45 4e in\tclsh.exe.!EN 5f70: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f DIF.!ENDIF.# <</ 5f80: 6d 61 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 70 69 6c mark>>..# Compil 5f90: 65 72 20 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 er options neede 5fa0: 64 20 66 6f 72 20 70 72 6f 67 72 61 6d 73 20 74 d for programs t 5fb0: 68 61 74 20 75 73 65 20 74 68 65 20 72 65 61 64 hat use the read 5fc0: 6c 69 6e 65 28 29 20 6c 69 62 72 61 72 79 2e 0a line() library.. 5fd0: 23 0a 21 49 46 4e 44 45 46 20 52 45 41 44 4c 49 #.!IFNDEF READLI 5fe0: 4e 45 5f 46 4c 41 47 53 0a 52 45 41 44 4c 49 4e NE_FLAGS.READLIN 5ff0: 45 5f 46 4c 41 47 53 20 3d 20 2d 44 48 41 56 45 E_FLAGS = -DHAVE 6000: 5f 52 45 41 44 4c 49 4e 45 3d 30 0a 21 45 4e 44 _READLINE=0.!END 6010: 49 46 0a 0a 23 20 54 68 65 20 6c 69 62 72 61 72 IF..# The librar 6020: 79 20 74 68 61 74 20 70 72 6f 67 72 61 6d 73 20 y that programs 6030: 75 73 69 6e 67 20 72 65 61 64 6c 69 6e 65 28 29 using readline() 6040: 20 6d 75 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e must link again 6050: 73 74 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4c 49 st..#.!IFNDEF LI 6060: 42 52 45 41 44 4c 49 4e 45 0a 4c 49 42 52 45 41 BREADLINE.LIBREA 6070: 44 4c 49 4e 45 20 3d 0a 21 45 4e 44 49 46 0a 0a DLINE =.!ENDIF.. 6080: 23 20 53 68 6f 75 6c 64 20 74 68 65 20 64 61 74 # Should the dat 6090: 61 62 61 73 65 20 65 6e 67 69 6e 65 20 62 65 20 abase engine be 60a0: 63 6f 6d 70 69 6c 65 64 20 74 68 72 65 61 64 73 compiled threads 60b0: 61 66 65 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 afe.#.TCC =$(TC
60c0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45  C) -DSQLITE_THRE
60d0: 41 44 53 41 46 45 3d 31 0a 52 43 43 20 3d 20 24  ADSAFE=1.RCC = $60e0: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 (RCC) -DSQLITE_T 60f0: 48 52 45 41 44 53 41 46 45 3d 31 0a 0a 23 20 44 HREADSAFE=1..# D 6100: 6f 20 74 68 72 65 61 64 73 20 6f 76 65 72 72 69 o threads overri 6110: 64 65 20 65 61 63 68 20 6f 74 68 65 72 73 20 6c de each others l 6120: 6f 63 6b 73 20 62 79 20 64 65 66 61 75 6c 74 20 ocks by default 6130: 28 31 29 2c 20 6f 72 20 64 6f 20 77 65 20 74 65 (1), or do we te 6140: 73 74 20 28 2d 31 29 0a 23 0a 54 43 43 20 3d 20 st (-1).#.TCC = 6150: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
6160: 54 48 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f  THREAD_OVERRIDE_
6170: 4c 4f 43 4b 3d 2d 31 0a 52 43 43 20 3d 20 24 28  LOCK=-1.RCC = $( 6180: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 RCC) -DSQLITE_TH 6190: 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f READ_OVERRIDE_LO 61a0: 43 4b 3d 2d 31 0a 0a 23 20 41 6e 79 20 74 61 72 CK=-1..# Any tar 61b0: 67 65 74 20 6c 69 62 72 61 72 69 65 73 20 77 68 get libraries wh 61c0: 69 63 68 20 6c 69 62 73 71 6c 69 74 65 20 6d 75 ich libsqlite mu 61d0: 73 74 20 62 65 20 6c 69 6e 6b 65 64 20 61 67 61 st be linked aga 61e0: 69 6e 73 74 0a 23 0a 21 49 46 4e 44 45 46 20 54 inst.#.!IFNDEF T 61f0: 4c 49 42 53 0a 54 4c 49 42 53 20 3d 0a 21 45 4e LIBS.TLIBS =.!EN 6200: 44 49 46 0a 0a 23 20 46 6c 61 67 73 20 63 6f 6e DIF..# Flags con 6210: 74 72 6f 6c 6c 69 6e 67 20 75 73 65 20 6f 66 20 trolling use of 6220: 74 68 65 20 69 6e 20 6d 65 6d 6f 72 79 20 62 74 the in memory bt 6230: 72 65 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 ree implementati 6240: 6f 6e 0a 23 0a 23 20 53 51 4c 49 54 45 5f 54 45 on.#.# SQLITE_TE 6250: 4d 50 5f 53 54 4f 52 45 20 69 73 20 30 20 74 6f MP_STORE is 0 to 6260: 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 79 force temporary 6270: 20 74 61 62 6c 65 73 20 74 6f 20 62 65 20 69 6e tables to be in 6280: 20 61 20 66 69 6c 65 2c 20 31 20 74 6f 0a 23 20 a file, 1 to.# 6290: 64 65 66 61 75 6c 74 20 74 6f 20 66 69 6c 65 2c default to file, 62a0: 20 32 20 74 6f 20 64 65 66 61 75 6c 74 20 74 6f 2 to default to 62b0: 20 6d 65 6d 6f 72 79 2c 20 61 6e 64 20 33 20 74 memory, and 3 t 62c0: 6f 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 o force temporar 62d0: 79 0a 23 20 74 61 62 6c 65 73 20 74 6f 20 61 6c y.# tables to al 62e0: 77 61 79 73 20 62 65 20 69 6e 20 6d 65 6d 6f 72 ways be in memor 62f0: 79 2e 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 y..#.TCC =$(TCC
6300: 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f  ) -DSQLITE_TEMP_
6310: 53 54 4f 52 45 3d 31 0a 52 43 43 20 3d 20 24 28  STORE=1.RCC = $( 6320: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 RCC) -DSQLITE_TE 6330: 4d 50 5f 53 54 4f 52 45 3d 31 0a 0a 23 20 45 6e MP_STORE=1..# En 6340: 61 62 6c 65 2f 64 69 73 61 62 6c 65 20 6c 6f 61 able/disable loa 6350: 64 61 62 6c 65 20 65 78 74 65 6e 73 69 6f 6e 73 dable extensions 6360: 2c 20 61 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 , and other opti 6370: 6f 6e 61 6c 20 66 65 61 74 75 72 65 73 0a 23 20 onal features.# 6380: 62 61 73 65 64 20 6f 6e 20 63 6f 6e 66 69 67 75 based on configu 6390: 72 61 74 69 6f 6e 2e 20 28 2d 44 53 51 4c 49 54 ration. (-DSQLIT 63a0: 45 5f 4f 4d 49 54 2a 2c 20 2d 44 53 51 4c 49 54 E_OMIT*, -DSQLIT 63b0: 45 5f 45 4e 41 42 4c 45 2a 29 2e 0a 23 20 54 68 E_ENABLE*)..# Th 63c0: 65 20 73 61 6d 65 20 73 65 74 20 6f 66 20 4f 4d e same set of OM 63d0: 49 54 20 61 6e 64 20 45 4e 41 42 4c 45 20 66 6c IT and ENABLE fl 63e0: 61 67 73 20 73 68 6f 75 6c 64 20 62 65 20 70 61 ags should be pa 63f0: 73 73 65 64 20 74 6f 20 74 68 65 0a 23 20 4c 45 ssed to the.# LE 6400: 4d 4f 4e 20 70 61 72 73 65 72 20 67 65 6e 65 72 MON parser gener 6410: 61 74 6f 72 20 61 6e 64 20 74 68 65 20 6d 6b 6b ator and the mkk 6420: 65 79 77 6f 72 64 68 61 73 68 20 74 6f 6f 6c 20 eywordhash tool 6430: 61 73 20 77 65 6c 6c 2e 0a 0a 23 20 54 68 65 73 as well...# Thes 6440: 65 20 61 72 65 20 74 68 65 20 72 65 71 75 69 72 e are the requir 6450: 65 64 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c ed SQLite compil 6460: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 ation options us 6470: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e ed when compilin 6480: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 g for.# the Wind 6490: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a ows platform..#. 64a0: 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 REQ_FEATURE_FLAG 64b0: 53 20 3d 20 24 28 52 45 51 5f 46 45 41 54 55 52 S =$(REQ_FEATUR
64c0: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
64d0: 45 5f 4d 41 58 5f 54 52 49 47 47 45 52 5f 44 45  E_MAX_TRIGGER_DE
64e0: 50 54 48 3d 31 30 30 0a 0a 23 20 49 66 20 77 65  PTH=100..# If we
64f0: 20 61 72 65 20 6c 69 6e 6b 69 6e 67 20 74 6f 20   are linking to
6500: 74 68 65 20 52 50 43 52 54 34 20 6c 69 62 72 61  the RPCRT4 libra
6510: 72 79 2c 20 65 6e 61 62 6c 65 20 66 65 61 74 75  ry, enable featu
6520: 72 65 73 20 74 68 61 74 20 6e 65 65 64 20 69 74  res that need it
6530: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 52 50  ..#.!IF $(USE_RP 6540: 43 52 54 34 5f 4c 49 42 29 21 3d 30 0a 52 45 51 CRT4_LIB)!=0.REQ 6550: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 6560: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46$(REQ_FEATURE_F
6570: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 57  LAGS) -DSQLITE_W
6580: 49 4e 33 32 5f 55 53 45 5f 55 55 49 44 3d 31 0a  IN32_USE_UUID=1.
6590: 21 45 4e 44 49 46 0a 0a 23 20 41 64 64 20 74 68  !ENDIF..# Add th
65a0: 65 20 72 65 71 75 69 72 65 64 20 61 6e 64 20 6f  e required and o
65b0: 70 74 69 6f 6e 61 6c 20 53 51 4c 69 74 65 20 63  ptional SQLite c
65c0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
65d0: 6e 73 20 69 6e 74 6f 20 74 68 65 20 63 6f 6d 6d  ns into the comm
65e0: 61 6e 64 0a 23 20 6c 69 6e 65 73 20 75 73 65 64  and.# lines used
65f0: 20 74 6f 20 69 6e 76 6f 6b 65 20 74 68 65 20 4d   to invoke the M
6600: 53 56 43 20 63 6f 64 65 20 61 6e 64 20 72 65 73  SVC code and res
6610: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 65 72 73 2e  ource compilers.
6620: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 6630: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c$(REQ_FEATURE_FL
6640: 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55  AGS) $(OPT_FEATU 6650: 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 5f RE_FLAGS)$(EXT_
6660: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a 52  FEATURE_FLAGS).R
6670: 43 43 20 3d 20 24 28 52 43 43 29 20 24 28 52 45  CC = $(RCC)$(RE
6680: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
6690: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F 66a0: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
66b0: 55 52 45 5f 46 4c 41 47 53 29 0a 0a 23 20 41 64  URE_FLAGS)..# Ad
66c0: 64 20 69 6e 20 61 6e 79 20 6f 70 74 69 6f 6e 61  d in any optiona
66d0: 6c 20 70 61 72 61 6d 65 74 65 72 73 20 73 70 65  l parameters spe
66e0: 63 69 66 69 65 64 20 6f 6e 20 74 68 65 20 63 6f  cified on the co
66f0: 6d 6d 61 6e 65 20 6c 69 6e 65 2c 20 65 2e 67 2e  mmane line, e.g.
6700: 0a 23 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65  .# nmake /f Make
6710: 66 69 6c 65 2e 6d 73 63 20 61 6c 6c 20 22 4f 50  file.msc all "OP
6720: 54 53 3d 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  TS=-DSQLITE_ENAB
6730: 4c 45 5f 46 4f 4f 3d 31 20 2d 44 53 51 4c 49 54  LE_FOO=1 -DSQLIT
6740: 45 5f 4f 4d 49 54 5f 46 4f 4f 3d 31 22 0a 23 0a  E_OMIT_FOO=1".#.
6750: 54 43 43 20 3d 20 24 28 54 43 43 29 20 24 28 4f  TCC = $(TCC)$(O
6760: 50 54 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43  PTS).RCC = $(RCC 6770: 29 20 24 28 4f 50 54 53 29 0a 0a 23 20 49 66 20 )$(OPTS)..# If
6780: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 64 65  compiling for de
6790: 62 75 67 67 69 6e 67 2c 20 61 64 64 20 73 6f 6d  bugging, add som
67a0: 65 20 64 65 66 69 6e 65 73 2e 0a 23 0a 21 49 46  e defines..#.!IF
67b0: 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 20   $(DEBUG)>1.TCC 67c0: 3d 20 24 28 54 43 43 29 20 2d 44 5f 44 45 42 55 =$(TCC) -D_DEBU
67d0: 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  G.BCC = $(BCC) - 67e0: 44 5f 44 45 42 55 47 0a 52 43 43 20 3d 20 24 28 D_DEBUG.RCC =$(
67f0: 52 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 21 45  RCC) -D_DEBUG.!E
6800: 4e 44 49 46 0a 0a 23 20 49 66 20 6f 70 74 69 6d  NDIF..# If optim
6810: 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 65 6e 61  izations are ena
6820: 62 6c 65 64 20 6f 72 20 64 69 73 61 62 6c 65 64  bled or disabled
6830: 20 28 65 69 74 68 65 72 20 69 6d 70 6c 69 63 69   (either implici
6840: 74 6c 79 20 6f 72 0a 23 20 65 78 70 6c 69 63 69  tly or.# explici
6850: 74 6c 79 29 2c 20 61 64 64 20 74 68 65 20 6e 65  tly), add the ne
6860: 63 65 73 73 61 72 79 20 66 6c 61 67 73 2e 0a 23  cessary flags..#
6870: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20  .!IF $(DEBUG)>1 6880: 7c 7c 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f ||$(OPTIMIZATIO
6890: 4e 53 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54  NS)==0.TCC = $(T 68a0: 43 43 29 20 2d 4f 64 0a 42 43 43 20 3d 20 24 28 CC) -Od.BCC =$(
68b0: 42 43 43 29 20 2d 4f 64 0a 21 49 46 20 24 28 55  BCC) -Od.!IF $(U 68c0: 53 45 5f 52 55 4e 54 49 4d 45 5f 43 48 45 43 4b SE_RUNTIME_CHECK 68d0: 53 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 S)!=0.TCC =$(TC
68e0: 43 29 20 2d 52 54 43 31 0a 42 43 43 20 3d 20 24  C) -RTC1.BCC = $68f0: 28 42 43 43 29 20 2d 52 54 43 31 0a 21 45 4e 44 (BCC) -RTC1.!END 6900: 49 46 0a 21 45 4c 53 45 49 46 20 24 28 4f 50 54 IF.!ELSEIF$(OPT
6910: 49 4d 49 5a 41 54 49 4f 4e 53 29 3e 3d 33 0a 54  IMIZATIONS)>=3.T
6920: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f 78 0a  CC = $(TCC) -Ox. 6930: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4f 78 BCC =$(BCC) -Ox
6940: 0a 21 45 4c 53 45 49 46 20 24 28 4f 50 54 49 4d  .!ELSEIF $(OPTIM 6950: 49 5a 41 54 49 4f 4e 53 29 3d 3d 32 0a 54 43 43 IZATIONS)==2.TCC 6960: 20 3d 20 24 28 54 43 43 29 20 2d 4f 32 0a 42 43 =$(TCC) -O2.BC
6970: 43 20 3d 20 24 28 42 43 43 29 20 2d 4f 32 0a 21  C = $(BCC) -O2.! 6980: 45 4c 53 45 49 46 20 24 28 4f 50 54 49 4d 49 5a ELSEIF$(OPTIMIZ
6990: 41 54 49 4f 4e 53 29 3d 3d 31 0a 54 43 43 20 3d  ATIONS)==1.TCC =
69a0: 20 24 28 54 43 43 29 20 2d 4f 31 0a 42 43 43 20   $(TCC) -O1.BCC 69b0: 3d 20 24 28 42 43 43 29 20 2d 4f 31 0a 21 45 4e =$(BCC) -O1.!EN
69c0: 44 49 46 0a 0a 23 20 49 66 20 73 79 6d 62 6f 6c  DIF..# If symbol
69d0: 73 20 61 72 65 20 65 6e 61 62 6c 65 64 20 28 6f  s are enabled (o
69e0: 72 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20  r compiling for
69f0: 64 65 62 75 67 67 69 6e 67 29 2c 20 65 6e 61 62  debugging), enab
6a00: 6c 65 20 50 44 42 73 2e 0a 23 0a 21 49 46 20 24  le PDBs..#.!IF $6a10: 28 44 45 42 55 47 29 3e 31 20 7c 7c 20 24 28 53 (DEBUG)>1 ||$(S
6a20: 59 4d 42 4f 4c 53 29 21 3d 30 0a 54 43 43 20 3d  YMBOLS)!=0.TCC =
6a30: 20 24 28 54 43 43 29 20 2d 5a 69 0a 42 43 43 20   $(TCC) -Zi.BCC 6a40: 3d 20 24 28 42 43 43 29 20 2d 5a 69 0a 21 45 4e =$(BCC) -Zi.!EN
6a50: 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  DIF..# <<mark>>.
6a60: 23 20 49 66 20 7a 6c 69 62 20 73 75 70 70 6f 72  # If zlib suppor
6a70: 74 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61 64  t is enabled, ad
6a80: 64 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6f  d the compiler o
6a90: 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a 23  ptions for it..#
6aa0: 0a 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 42 29  .!IF $(USE_ZLIB) 6ab0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 !=0.TCC =$(TCC)
6ac0: 20 2d 44 53 51 4c 49 54 45 5f 48 41 56 45 5f 5a   -DSQLITE_HAVE_Z
6ad0: 4c 49 42 3d 31 0a 52 43 43 20 3d 20 24 28 52 43  LIB=1.RCC = $(RC 6ae0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 48 41 56 45 C) -DSQLITE_HAVE 6af0: 5f 5a 4c 49 42 3d 31 0a 54 43 43 20 3d 20 24 28 _ZLIB=1.TCC =$(
6b00: 54 43 43 29 20 2d 49 24 28 5a 4c 49 42 49 4e 43  TCC) -I$(ZLIBINC 6b10: 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43 43 DIR).RCC =$(RCC
6b20: 29 20 2d 49 24 28 5a 4c 49 42 49 4e 43 44 49 52  ) -I$(ZLIBINCDIR 6b30: 29 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 49 ).!ENDIF..# If I 6b40: 43 55 20 73 75 70 70 6f 72 74 20 69 73 20 65 6e CU support is en 6b50: 61 62 6c 65 64 2c 20 61 64 64 20 74 68 65 20 63 abled, add the c 6b60: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options 6b70: 66 6f 72 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 for it..#.!IF$(
6b80: 55 53 45 5f 49 43 55 29 21 3d 30 0a 54 43 43 20  USE_ICU)!=0.TCC
6b90: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54  = $(TCC) -DSQLIT 6ba0: 45 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 52 E_ENABLE_ICU=1.R 6bb0: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 CC =$(RCC) -DSQ
6bc0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 43 55 3d  LITE_ENABLE_ICU=
6bd0: 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  1.TCC = $(TCC) - 6be0: 49 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 0a I$(TOP)\ext\icu.
6bf0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24  RCC = $(RCC) -I$
6c00: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 0a 54 43  (TOP)\ext\icu.TC
6c10: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 49  C = $(TCC) -I$(I
6c20: 43 55 49 4e 43 44 49 52 29 0a 52 43 43 20 3d 20  CUINCDIR).RCC =
6c30: 24 28 52 43 43 29 20 2d 49 24 28 49 43 55 49 4e  $(RCC) -I$(ICUIN
6c40: 43 44 49 52 29 0a 21 45 4e 44 49 46 0a 23 20 3c  CDIR).!ENDIF.# <
6c50: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d  </mark>>..# Comm
6c60: 61 6e 64 20 6c 69 6e 65 20 70 72 65 66 69 78 65  and line prefixe
6c70: 73 20 66 6f 72 20 63 6f 6d 70 69 6c 69 6e 67 20  s for compiling
6c80: 63 6f 64 65 2c 20 63 6f 6d 70 69 6c 69 6e 67 20  code, compiling
6c90: 72 65 73 6f 75 72 63 65 73 2c 0a 23 20 6c 69 6e  resources,.# lin
6ca0: 6b 69 6e 67 2c 20 65 74 63 2e 0a 23 0a 4c 54 43  king, etc..#.LTC
6cb0: 4f 4d 50 49 4c 45 20 3d 20 24 28 54 43 43 29 20  OMPILE = $(TCC) 6cc0: 2d 46 6f 24 40 0a 4c 54 52 43 4f 4d 50 49 4c 45 -Fo$@.LTRCOMPILE
6cd0: 20 3d 20 24 28 52 43 43 29 20 2d 72 0a 4c 54 4c   = $(RCC) -r.LTL 6ce0: 49 42 20 3d 20 6c 69 62 2e 65 78 65 0a 4c 54 4c IB = lib.exe.LTL 6cf0: 49 4e 4b 20 3d 20 24 28 54 43 43 29 20 2d 46 65 INK =$(TCC) -Fe
6d00: 24 40 0a 0a 23 20 49 66 20 72 65 71 75 65 73 74  $@..# If request 6d10: 65 64 2c 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 ed, link to the 6d20: 52 50 43 52 54 34 20 6c 69 62 72 61 72 79 2e 0a RPCRT4 library.. 6d30: 23 0a 21 49 46 20 24 28 55 53 45 5f 52 50 43 52 #.!IF$(USE_RPCR
6d40: 54 34 5f 4c 49 42 29 21 3d 30 0a 4c 54 4c 49 42  T4_LIB)!=0.LTLIB
6d50: 53 20 3d 20 24 28 4c 54 4c 49 42 53 29 20 72 70  S = $(LTLIBS) rp 6d60: 63 72 74 34 2e 6c 69 62 0a 21 45 4e 44 49 46 0a crt4.lib.!ENDIF. 6d70: 0a 23 20 49 66 20 61 20 70 6c 61 74 66 6f 72 6d .# If a platform 6d80: 20 77 61 73 20 73 65 74 2c 20 66 6f 72 63 65 20 was set, force 6d90: 74 68 65 20 6c 69 6e 6b 65 72 20 74 6f 20 74 61 the linker to ta 6da0: 72 67 65 74 20 74 68 61 74 2e 0a 23 20 4e 6f 74 rget that..# Not 6db0: 65 20 74 68 61 74 20 74 68 65 20 76 63 76 61 72 e that the vcvar 6dc0: 73 2a 2e 62 61 74 20 66 61 6d 69 6c 79 20 6f 66 s*.bat family of 6dd0: 20 62 61 74 63 68 20 66 69 6c 65 73 20 74 79 70 batch files typ 6de0: 69 63 61 6c 6c 79 0a 23 20 73 65 74 20 74 68 69 ically.# set thi 6df0: 73 20 66 6f 72 20 79 6f 75 2e 20 20 4f 74 68 65 s for you. Othe 6e00: 72 77 69 73 65 2c 20 74 68 65 20 6c 69 6e 6b 65 rwise, the linke 6e10: 72 20 77 69 6c 6c 20 61 74 74 65 6d 70 74 0a 23 r will attempt.# 6e20: 20 74 6f 20 64 65 64 75 63 65 20 74 68 65 20 62 to deduce the b 6e30: 69 6e 61 72 79 20 74 79 70 65 20 62 61 73 65 64 inary type based 6e40: 20 6f 6e 20 74 68 65 20 6f 62 6a 65 63 74 20 66 on the object f 6e50: 69 6c 65 73 2e 0a 21 49 46 44 45 46 20 50 4c 41 iles..!IFDEF PLA 6e60: 54 46 4f 52 4d 0a 4c 54 4c 49 4e 4b 4f 50 54 53 TFORM.LTLINKOPTS 6e70: 20 3d 20 2f 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 = /NOLOGO /MACH 6e80: 49 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 0a INE:$(PLATFORM).
6e90: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c  LTLIBOPTS = /NOL
6ea0: 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a 24 28 50  OGO /MACHINE:$(P 6eb0: 4c 41 54 46 4f 52 4d 29 0a 21 45 4c 53 45 0a 4c LATFORM).!ELSE.L 6ec0: 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c TLINKOPTS = /NOL 6ed0: 4f 47 4f 0a 4c 54 4c 49 42 4f 50 54 53 20 3d 20 OGO.LTLIBOPTS = 6ee0: 2f 4e 4f 4c 4f 47 4f 0a 21 45 4e 44 49 46 0a 0a /NOLOGO.!ENDIF.. 6ef0: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 # When compiling 6f00: 20 66 6f 72 20 75 73 65 20 69 6e 20 74 68 65 20 for use in the 6f10: 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65 6e WinRT environmen 6f20: 74 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 t, the following 6f30: 0a 23 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e .# linker option 6f40: 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f must be used to 6f50: 20 6d 61 72 6b 20 74 68 65 20 65 78 65 63 75 74 mark the execut 6f60: 61 62 6c 65 20 61 73 20 72 75 6e 6e 61 62 6c 65 able as runnable 6f70: 0a 23 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 63 .# only in the c 6f80: 6f 6e 74 65 78 74 20 6f 66 20 61 6e 20 61 70 70 ontext of an app 6f90: 6c 69 63 61 74 69 6f 6e 20 63 6f 6e 74 61 69 6e lication contain 6fa0: 65 72 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f er..#.!IF$(FOR_
6fb0: 57 49 4e 52 54 29 21 3d 30 0a 4c 54 4c 49 4e 4b  WINRT)!=0.LTLINK
6fc0: 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f  OPTS = $(LTLINKO 6fd0: 50 54 53 29 20 2f 41 50 50 43 4f 4e 54 41 49 4e PTS) /APPCONTAIN 6fe0: 45 52 0a 21 49 46 20 22 24 28 56 49 53 55 41 4c ER.!IF "$(VISUAL
6ff0: 53 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d  STUDIOVERSION)"=
7000: 3d 22 31 32 2e 30 22 20 7c 7c 20 22 24 28 56 49  ="12.0" || "$(VI 7010: 53 55 41 4c 53 54 55 44 49 4f 56 45 52 53 49 4f SUALSTUDIOVERSIO 7020: 4e 29 22 3d 3d 22 31 34 2e 30 22 0a 21 49 46 4e N)"=="14.0".!IFN 7030: 44 45 46 20 53 54 4f 52 45 4c 49 42 50 41 54 48 DEF STORELIBPATH 7040: 0a 21 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d .!IF "$(PLATFORM
7050: 29 22 3d 3d 22 78 38 36 22 0a 53 54 4f 52 45 4c  )"=="x86".STOREL
7060: 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49  IBPATH = $(CRTLI 7070: 42 50 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4c BPATH)\store.!EL 7080: 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d SEIF "$(PLATFORM
7090: 29 22 3d 3d 22 78 36 34 22 0a 53 54 4f 52 45 4c  )"=="x64".STOREL
70a0: 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49  IBPATH = $(CRTLI 70b0: 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 6d 64 BPATH)\store\amd 70c0: 36 34 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c 64.!ELSEIF "$(PL
70d0: 41 54 46 4f 52 4d 29 22 3d 3d 22 41 52 4d 22 0a  ATFORM)"=="ARM".
70e0: 53 54 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24  STORELIBPATH = $70f0: 28 43 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f (CRTLIBPATH)\sto 7100: 72 65 5c 61 72 6d 0a 21 45 4c 53 45 0a 53 54 4f re\arm.!ELSE.STO 7110: 52 45 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 RELIBPATH =$(CR
7120: 54 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 65 0a  TLIBPATH)\store.
7130: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 53 54  !ENDIF.!ENDIF.ST
7140: 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24 28 53  ORELIBPATH = $(S 7150: 54 4f 52 45 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c TORELIBPATH:\\=\ 7160: 29 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 ).LTLINKOPTS =$
7170: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c  (LTLINKOPTS) "/L
7180: 49 42 50 41 54 48 3a 24 28 53 54 4f 52 45 4c 49  IBPATH:$(STORELI 7190: 42 50 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 BPATH)".!ENDIF.! 71a0: 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f ENDIF..# When co 71b0: 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e 64 mpiling for Wind 71c0: 6f 77 73 20 50 68 6f 6e 65 20 38 2e 31 2c 20 61 ows Phone 8.1, a 71d0: 6e 20 65 78 74 72 61 20 6c 69 62 72 61 72 79 20 n extra library 71e0: 70 61 74 68 20 69 73 0a 23 20 72 65 71 75 69 72 path is.# requir 71f0: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
7200: 57 50 38 31 5f 4f 50 54 53 29 21 3d 30 0a 21 49  WP81_OPTS)!=0.!I
7210: 46 4e 44 45 46 20 57 50 38 31 4c 49 42 50 41 54  FNDEF WP81LIBPAT
7220: 48 0a 21 49 46 20 22 24 28 50 4c 41 54 46 4f 52  H.!IF "$(PLATFOR 7230: 4d 29 22 3d 3d 22 78 38 36 22 0a 57 50 38 31 4c M)"=="x86".WP81L 7240: 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47 52 IBPATH =$(PROGR
7250: 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 6e  AMFILES_X86)\Win
7260: 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 5c  dows Phone Kits\
7270: 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4c 53  8.1\lib\x86.!ELS
7280: 45 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29  EIF "$(PLATFORM) 7290: 22 3d 3d 22 41 52 4d 22 0a 57 50 38 31 4c 49 42 "=="ARM".WP81LIB 72a0: 50 41 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d PATH =$(PROGRAM
72b0: 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f  FILES_X86)\Windo
72c0: 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e  ws Phone Kits\8.
72d0: 31 5c 6c 69 62 5c 41 52 4d 0a 21 45 4c 53 45 0a  1\lib\ARM.!ELSE.
72e0: 57 50 38 31 4c 49 42 50 41 54 48 20 3d 20 24 28  WP81LIBPATH = $( 72f0: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 PROGRAMFILES_X86 7300: 29 5c 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 )\Windows Phone 7310: 4b 69 74 73 5c 38 2e 31 5c 6c 69 62 5c 78 38 36 Kits\8.1\lib\x86 7320: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 .!ENDIF.!ENDIF.! 7330: 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f ENDIF..# When co 7340: 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e 64 mpiling for Wind 7350: 6f 77 73 20 50 68 6f 6e 65 20 38 2e 31 2c 20 73 ows Phone 8.1, s 7360: 6f 6d 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 ome extra linker 7370: 20 6f 70 74 69 6f 6e 73 0a 23 20 61 72 65 20 61 options.# are a 7380: 6c 73 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a lso required..#. 7390: 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 5f 4f !IF$(USE_WP81_O
73a0: 50 54 53 29 21 3d 30 0a 21 49 46 44 45 46 20 57  PTS)!=0.!IFDEF W
73b0: 50 38 31 4c 49 42 50 41 54 48 0a 4c 54 4c 49 4e  P81LIBPATH.LTLIN
73c0: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b  KOPTS = $(LTLINK 73d0: 4f 50 54 53 29 20 22 2f 4c 49 42 50 41 54 48 3a OPTS) "/LIBPATH: 73e0: 24 28 57 50 38 31 4c 49 42 50 41 54 48 29 22 0a$(WP81LIBPATH)".
73f0: 21 45 4e 44 49 46 0a 4c 54 4c 49 4e 4b 4f 50 54  !ENDIF.LTLINKOPT
7400: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 7410: 29 20 2f 44 59 4e 41 4d 49 43 42 41 53 45 0a 4c ) /DYNAMICBASE.L 7420: 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 TLINKOPTS =$(LT
7430: 4c 49 4e 4b 4f 50 54 53 29 20 57 69 6e 64 6f 77  LINKOPTS) Window
7440: 73 50 68 6f 6e 65 43 6f 72 65 2e 6c 69 62 20 52  sPhoneCore.lib R
7450: 75 6e 74 69 6d 65 4f 62 6a 65 63 74 2e 6c 69 62  untimeObject.lib
7460: 20 50 68 6f 6e 65 41 70 70 4d 6f 64 65 6c 48 6f   PhoneAppModelHo
7470: 73 74 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54  st.lib.LTLINKOPT
7480: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 7490: 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a ) /NODEFAULTLIB: 74a0: 6b 65 72 6e 65 6c 33 32 2e 6c 69 62 20 2f 4e 4f kernel32.lib /NO 74b0: 44 45 46 41 55 4c 54 4c 49 42 3a 6f 6c 65 33 32 DEFAULTLIB:ole32 74c0: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 57 .lib.!ENDIF..# W 74d0: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 74e0: 72 20 55 57 50 20 6f 72 20 74 68 65 20 57 69 6e r UWP or the Win 74f0: 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d dows 10 platform 7500: 2c 20 73 6f 6d 65 20 65 78 74 72 61 20 6c 69 6e , some extra lin 7510: 6b 65 72 0a 23 20 6f 70 74 69 6f 6e 73 20 61 72 ker.# options ar 7520: 65 20 61 6c 73 6f 20 72 65 71 75 69 72 65 64 2e e also required. 7530: 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 55 57 50 .#.!IF$(FOR_UWP
7540: 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49  )!=0 || $(FOR_WI 7550: 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 N10)!=0.LTLINKOP 7560: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 TS =$(LTLINKOPT
7570: 53 29 20 2f 44 59 4e 41 4d 49 43 42 41 53 45 20  S) /DYNAMICBASE
7580: 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65  /NODEFAULTLIB:ke
7590: 72 6e 65 6c 33 32 2e 6c 69 62 0a 4c 54 4c 49 4e  rnel32.lib.LTLIN
75a0: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b  KOPTS = $(LTLINK 75b0: 4f 50 54 53 29 20 6d 69 6e 63 6f 72 65 2e 6c 69 OPTS) mincore.li 75c0: 62 0a 21 49 46 44 45 46 20 50 53 44 4b 4c 49 42 b.!IFDEF PSDKLIB 75d0: 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 PATH.LTLINKOPTS 75e0: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 =$(LTLINKOPTS)
75f0: 22 2f 4c 49 42 50 41 54 48 3a 24 28 50 53 44 4b  "/LIBPATH:$(PSDK 7600: 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44 49 46 LIBPATH)".!ENDIF 7610: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 46 .!ENDIF..!IF$(F
7620: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4c 54 4c  OR_WIN10)!=0.LTL
7630: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 7640: 4e 4b 4f 50 54 53 29 20 2f 67 75 61 72 64 3a 63 NKOPTS) /guard:c 7650: 66 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 55 43 f "/LIBPATH:$(UC
7660: 52 54 4c 49 42 50 41 54 48 29 22 0a 21 49 46 20  RTLIBPATH)".!IF
7670: 24 28 44 45 42 55 47 29 3e 31 0a 4c 54 4c 49 4e  $(DEBUG)>1.LTLIN 7680: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
7690: 4f 50 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54  OPTS) /NODEFAULT
76a0: 4c 49 42 3a 6c 69 62 75 63 72 74 64 2e 6c 69 62  LIB:libucrtd.lib
76b0: 20 2f 44 45 46 41 55 4c 54 4c 49 42 3a 75 63 72   /DEFAULTLIB:ucr
76c0: 74 64 2e 6c 69 62 0a 21 45 4c 53 45 0a 4c 54 4c  td.lib.!ELSE.LTL
76d0: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 76e0: 4e 4b 4f 50 54 53 29 20 2f 4e 4f 44 45 46 41 55 NKOPTS) /NODEFAU 76f0: 4c 54 4c 49 42 3a 6c 69 62 75 63 72 74 2e 6c 69 LTLIB:libucrt.li 7700: 62 20 2f 44 45 46 41 55 4c 54 4c 49 42 3a 75 63 b /DEFAULTLIB:uc 7710: 72 74 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 21 45 rt.lib.!ENDIF.!E 7720: 4e 44 49 46 0a 0a 23 20 49 66 20 65 69 74 68 65 NDIF..# If eithe 7730: 72 20 64 65 62 75 67 67 69 6e 67 20 6f 72 20 73 r debugging or s 7740: 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 6c ymbols are enabl 7750: 65 64 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e ed, enable PDBs. 7760: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e .#.!IF$(DEBUG)>
7770: 31 20 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21  1 || $(SYMBOLS)! 7780: 3d 30 0a 4c 44 46 4c 41 47 53 20 3d 20 2f 44 45 =0.LDFLAGS = /DE 7790: 42 55 47 20 24 28 4c 44 4f 50 54 53 29 0a 21 45 BUG$(LDOPTS).!E
77a0: 4c 53 45 0a 4c 44 46 4c 41 47 53 20 3d 20 24 28  LSE.LDFLAGS = $( 77b0: 4c 44 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a LDOPTS).!ENDIF.. 77c0: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 74 61 # <<mark>>.# Sta 77d0: 72 74 20 77 69 74 68 20 74 68 65 20 54 63 6c 20 rt with the Tcl 77e0: 72 65 6c 61 74 65 64 20 6c 69 6e 6b 65 72 20 6f related linker o 77f0: 70 74 69 6f 6e 73 2e 0a 23 0a 21 49 46 20 24 28 ptions..#.!IF$(
7800: 4e 4f 5f 54 43 4c 29 3d 3d 30 0a 4c 54 4c 49 42  NO_TCL)==0.LTLIB
7810: 50 41 54 48 53 20 3d 20 2f 4c 49 42 50 41 54 48  PATHS = /LIBPATH
7820: 3a 24 28 54 43 4c 4c 49 42 44 49 52 29 0a 4c 54  :$(TCLLIBDIR).LT 7830: 4c 49 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 29 LIBS =$(LTLIBS)
7840: 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44 49   $(LIBTCL).!ENDI 7850: 46 0a 0a 23 20 49 66 20 7a 6c 69 62 20 73 75 70 F..# If zlib sup 7860: 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c port is enabled, 7870: 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 20 add the linker 7880: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a options for it.. 7890: 23 0a 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 42 #.!IF$(USE_ZLIB
78a0: 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20  )!=0.LTLIBPATHS
78b0: 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  = $(LTLIBPATHS) 78c0: 2f 4c 49 42 50 41 54 48 3a 24 28 5a 4c 49 42 4c /LIBPATH:$(ZLIBL
78d0: 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20  IBDIR).LTLIBS =
78e0: 24 28 4c 54 4c 49 42 53 29 20 24 28 5a 4c 49 42  $(LTLIBS)$(ZLIB
78f0: 4c 49 42 29 0a 21 45 4e 44 49 46 0a 0a 23 20 49  LIB).!ENDIF..# I
7900: 66 20 49 43 55 20 73 75 70 70 6f 72 74 20 69 73  f ICU support is
7910: 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68   enabled, add th
7920: 65 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73  e linker options
7930: 20 66 6f 72 20 69 74 2e 0a 23 0a 21 49 46 20 24   for it..#.!IF $7940: 28 55 53 45 5f 49 43 55 29 21 3d 30 0a 4c 54 4c (USE_ICU)!=0.LTL 7950: 49 42 50 41 54 48 53 20 3d 20 24 28 4c 54 4c 49 IBPATHS =$(LTLI
7960: 42 50 41 54 48 53 29 20 2f 4c 49 42 50 41 54 48  BPATHS) /LIBPATH
7970: 3a 24 28 49 43 55 4c 49 42 44 49 52 29 0a 4c 54  :$(ICULIBDIR).LT 7980: 4c 49 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 29 LIBS =$(LTLIBS)
7990: 20 24 28 4c 49 42 49 43 55 29 0a 21 45 4e 44 49   $(LIBICU).!ENDI 79a0: 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 F.# <</mark>>..# 79b0: 20 59 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 20 You should not 79c0: 68 61 76 65 20 74 6f 20 63 68 61 6e 67 65 20 61 have to change a 79d0: 6e 79 74 68 69 6e 67 20 62 65 6c 6f 77 20 74 68 nything below th 79e0: 69 73 20 6c 69 6e 65 0a 23 23 23 23 23 23 23 23 is line.######## 79f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7a00: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7a10: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7a20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7a30: 23 23 23 23 23 23 23 0a 0a 23 20 3c 3c 6d 61 72 #######..# <<mar 7a40: 6b 3e 3e 0a 23 20 4f 62 6a 65 63 74 20 66 69 6c k>>.# Object fil 7a50: 65 73 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 es for the SQLit 7a60: 65 20 6c 69 62 72 61 72 79 20 28 6e 6f 6e 2d 61 e library (non-a 7a70: 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 2e 0a 23 0a malgamation)..#. 7a80: 4c 49 42 4f 42 4a 53 30 20 3d 20 76 64 62 65 2e LIBOBJS0 = vdbe. 7a90: 6c 6f 20 70 61 72 73 65 2e 6c 6f 20 61 6c 74 65 lo parse.lo alte 7aa0: 72 2e 6c 6f 20 61 6e 61 6c 79 7a 65 2e 6c 6f 20 r.lo analyze.lo 7ab0: 61 74 74 61 63 68 2e 6c 6f 20 61 75 74 68 2e 6c attach.lo auth.l 7ac0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 62 61 63 o \. bac 7ad0: 6b 75 70 2e 6c 6f 20 62 69 74 76 65 63 2e 6c 6f kup.lo bitvec.lo 7ae0: 20 62 74 6d 75 74 65 78 2e 6c 6f 20 62 74 72 65 btmutex.lo btre 7af0: 65 2e 6c 6f 20 62 75 69 6c 64 2e 6c 6f 20 5c 0a e.lo build.lo \. 7b00: 20 20 20 20 20 20 20 20 20 63 61 6c 6c 62 61 63 callbac 7b10: 6b 2e 6c 6f 20 63 6f 6d 70 6c 65 74 65 2e 6c 6f k.lo complete.lo 7b20: 20 63 74 69 6d 65 2e 6c 6f 20 5c 0a 20 20 20 20 ctime.lo \. 7b30: 20 20 20 20 20 64 61 74 65 2e 6c 6f 20 64 62 70 date.lo dbp 7b40: 61 67 65 2e 6c 6f 20 64 62 73 74 61 74 2e 6c 6f age.lo dbstat.lo 7b50: 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20 20 20 delete.lo \. 7b60: 20 20 20 20 20 20 65 78 70 72 2e 6c 6f 20 66 61 expr.lo fa 7b70: 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f 20 5c ult.lo fkey.lo \ 7b80: 0a 20 20 20 20 20 20 20 20 20 66 74 73 33 2e 6c . fts3.l 7b90: 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 20 66 74 o fts3_aux.lo ft 7ba0: 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 73 33 5f s3_expr.lo fts3_ 7bb0: 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f 69 63 75 hash.lo fts3_icu 7bc0: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 .lo \. f 7bd0: 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 20 66 74 ts3_porter.lo ft 7be0: 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 20 66 74 s3_snippet.lo ft 7bf0: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 20 s3_tokenizer.lo 7c00: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e fts3_tokenizer1. 7c10: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 lo \. ft 7c20: 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 s3_tokenize_vtab 7c30: 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 65 .lo fts3_unicode 7c40: 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f 64 65 .lo fts3_unicode 7c50: 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 74 65 2e 2.lo fts3_write. 7c60: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 lo \. ft 7c70: 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 s5.lo \. 7c80: 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61 6c 2e func.lo global. 7c90: 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a 20 20 20 lo hash.lo \. 7ca0: 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 69 6e 73 icu.lo ins 7cb0: 65 72 74 2e 6c 6f 20 6c 65 67 61 63 79 2e 6c 6f ert.lo legacy.lo 7cc0: 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c 0a 20 20 loadext.lo \. 7cd0: 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c 6f 20 6d main.lo m 7ce0: 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 2e 6c 6f alloc.lo mem0.lo 7cf0: 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 2e 6c 6f mem1.lo mem2.lo 7d00: 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 2e 6c 6f mem3.lo mem5.lo 7d10: 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 65 6d 6a \. memj 7d20: 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20 20 20 20 ournal.lo \. 7d30: 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f 20 6d 75 mutex.lo mu 7d40: 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d 75 74 65 tex_noop.lo mute 7d50: 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74 65 78 5f x_unix.lo mutex_ 7d60: 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 w32.lo \. 7d70: 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f 70 63 6f notify.lo opco 7d80: 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20 6f 73 5f des.lo os.lo os_ 7d90: 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69 6e 2e 6c unix.lo os_win.l 7da0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 70 61 67 o \. pag 7db0: 65 72 2e 6c 6f 20 70 63 61 63 68 65 2e 6c 6f 20 er.lo pcache.lo 7dc0: 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 61 67 6d pcache1.lo pragm 7dd0: 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e 6c 6f 20 a.lo prepare.lo 7de0: 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 20 20 20 printf.lo \. 7df0: 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c 6f 20 72 random.lo r 7e00: 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 73 65 74 esolve.lo rowset 7e10: 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 5c 0a 20 .lo rtree.lo \. 7e20: 20 20 20 20 20 20 20 20 73 71 6c 69 74 65 33 73 sqlite3s 7e30: 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 6c 65 63 74 ession.lo select 7e40: 2e 6c 6f 20 73 71 6c 69 74 65 33 72 62 75 2e 6c .lo sqlite3rbu.l 7e50: 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c 0a 20 20 o status.lo \. 7e60: 20 20 20 20 20 20 20 74 61 62 6c 65 2e 6c 6f 20 table.lo 7e70: 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f 6b 65 6e threads.lo token 7e80: 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 65 77 2e ize.lo treeview. 7e90: 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20 5c 0a lo trigger.lo \. 7ea0: 20 20 20 20 20 20 20 20 20 75 70 64 61 74 65 2e update. 7eb0: 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63 75 75 lo util.lo vacuu 7ec0: 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 m.lo \. 7ed0: 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62 65 61 vdbeapi.lo vdbea 7ee0: 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62 2e 6c ux.lo vdbeblob.l 7ef0: 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76 64 62 o vdbemem.lo vdb 7f00: 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20 20 20 esort.lo \. 7f10: 20 20 20 20 76 64 62 65 74 72 61 63 65 2e 6c 6f vdbetrace.lo 7f20: 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72 2e 6c wal.lo walker.l 7f30: 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 65 72 65 o where.lo where 7f40: 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 65 78 70 code.lo whereexp 7f50: 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 r.lo \. 7f60: 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c 6f 0a 23 utf.lo vtab.lo.# 7f70: 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 4f 62 <</mark>>..# Ob 7f80: 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 ject files for t 7f90: 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e he amalgamation. 7fa0: 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20 73 71 .#.LIBOBJS1 = sq 7fb0: 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65 74 65 lite3.lo..# Dete 7fc0: 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c 20 76 rmine the real v 7fd0: 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a 20 62 alue of LIBOBJ b 7fe0: 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63 6f 6e ased on the 'con 7ff0: 66 69 67 75 72 65 27 20 73 63 72 69 70 74 0a 23 figure' script.# 8000: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 49 46 20 .# <<mark>>.!IF 8010: 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49$(USE_AMALGAMATI
8020: 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a 20 3d 20  ON)==0.LIBOBJ =
8030: 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21 45 4c 53  $(LIBOBJS0).!ELS 8040: 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 4c 49 E.# <</mark>>.LI 8050: 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 BOBJ =$(LIBOBJS
8060: 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 45  1).# <<mark>>.!E
8070: 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  NDIF.# <</mark>>
8080: 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65 20 69 66  ..# Determine if
8090: 20 65 6d 62 65 64 64 65 64 20 72 65 73 6f 75 72   embedded resour
80a0: 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 61  ce compilation a
80b0: 6e 64 20 75 73 61 67 65 20 61 72 65 20 65 6e 61  nd usage are ena
80c0: 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53  bled..#.!IF $(US 80d0: 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 45 53 4f E_RC)!=0.LIBRESO 80e0: 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 72 65 73 BJS = sqlite3res 80f0: 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 52 45 53 .lo.!ELSE.LIBRES 8100: 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 OBJS =.!ENDIF..# 8110: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 6f 72 65 <<mark>>.# Core 8120: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c source code fil 8130: 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53 52 es, part 1..#.SR 8140: 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 C00 = \.$(TOP)
8150: 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 5c 0a 20  \src\alter.c \.
8160: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c   $(TOP)\src\anal 8170: 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 yze.c \.$(TOP)
8180: 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 20 5c 0a  \src\attach.c \.
8190: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74    $(TOP)\src\aut 81a0: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 h.c \.$(TOP)\s
81b0: 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20  rc\backup.c \.
81c0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65  $(TOP)\src\bitve 81d0: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 c.c \.$(TOP)\s
81e0: 72 63 5c 62 74 6d 75 74 65 78 2e 63 20 5c 0a 20  rc\btmutex.c \.
81f0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65   $(TOP)\src\btre 8200: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
8210: 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a 20 20 24  rc\build.c \.  $8220: 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 (TOP)\src\callba 8230: 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ck.c \.$(TOP)\
8240: 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 20 5c  src\complete.c \
8250: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74  .  $(TOP)\src\ct 8260: 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ime.c \.$(TOP)
8270: 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c 0a 20 20  \src\date.c \.
8280: 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 70 61 67  $(TOP)\src\dbpag 8290: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
82a0: 72 63 5c 64 62 73 74 61 74 2e 63 20 5c 0a 20 20  rc\dbstat.c \.
82b0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74  $(TOP)\src\delet 82c0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.c \.$(TOP)\s
82d0: 72 63 5c 65 78 70 72 2e 63 20 5c 0a 20 20 24 28  rc\expr.c \.  $( 82e0: 54 4f 50 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 TOP)\src\fault.c 82f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8300: 66 6b 65 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50  fkey.c \.  $(TOP 8310: 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20 5c 0a 20 )\src\func.c \. 8320: 20 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62$(TOP)\src\glob
8330: 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  al.c \.  $(TOP)\ 8340: 73 72 63 5c 68 61 73 68 2e 63 20 5c 0a 20 20 24 src\hash.c \.$
8350: 28 54 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74  (TOP)\src\insert
8360: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8370: 63 5c 6c 65 67 61 63 79 2e 63 20 5c 0a 20 20 24 c\legacy.c \.$
8380: 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78  (TOP)\src\loadex
8390: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s 83a0: 72 63 5c 6d 61 69 6e 2e 63 20 5c 0a 20 20 24 28 rc\main.c \.$(
83b0: 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e  TOP)\src\malloc.
83c0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 83d0: 5c 6d 65 6d 30 2e 63 20 5c 0a 20 20 24 28 54 4f \mem0.c \.$(TO
83e0: 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20 5c 0a  P)\src\mem1.c \.
83f0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem 8400: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 2.c \.$(TOP)\s
8410: 72 63 5c 6d 65 6d 33 2e 63 20 5c 0a 20 20 24 28  rc\mem3.c \.  $( 8420: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 20 TOP)\src\mem5.c 8430: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d \.$(TOP)\src\m
8440: 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20  emjournal.c \.
8450: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex 8460: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8470: 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 5c  c\mutex_noop.c \
8480: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75  .  $(TOP)\src\mu 8490: 74 65 78 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 tex_unix.c \.$
84a0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
84b0: 77 33 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  w32.c \.  $(TOP) 84c0: 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63 20 5c 0a \src\notify.c \. 84d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e$(TOP)\src\os.
84e0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 84f0: 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 \os_unix.c \.$
8500: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e  (TOP)\src\os_win
8510: 2e 63 0a 0a 23 20 43 6f 72 65 20 73 6f 75 72 63  .c..# Core sourc
8520: 65 20 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61  e code files, pa
8530: 72 74 20 32 2e 0a 23 0a 53 52 43 30 31 20 3d 20  rt 2..#.SRC01 =
8540: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  \.  $(TOP)\src\p 8550: 61 67 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 ager.c \.$(TOP
8560: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 20 5c  )\src\pcache.c \
8570: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  .  $(TOP)\src\pc 8580: 61 63 68 65 31 2e 63 20 5c 0a 20 20 24 28 54 4f ache1.c \.$(TO
8590: 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 20  P)\src\pragma.c
85a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  \.  $(TOP)\src\p 85b0: 72 65 70 61 72 65 2e 63 20 5c 0a 20 20 24 28 54 repare.c \.$(T
85c0: 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63  OP)\src\printf.c
85d0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 85e0: 72 61 6e 64 6f 6d 2e 63 20 5c 0a 20 20 24 28 54 random.c \.$(T
85f0: 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e  OP)\src\resolve.
8600: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8610: 5c 72 6f 77 73 65 74 2e 63 20 5c 0a 20 20 24 28 \rowset.c \.$(
8620: 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e  TOP)\src\select.
8630: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8640: 5c 73 74 61 74 75 73 2e 63 20 5c 0a 20 20 24 28 \status.c \.$(
8650: 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e 63  TOP)\src\table.c
8660: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8670: 74 68 72 65 61 64 73 2e 63 20 5c 0a 20 20 24 28 threads.c \.$(
8680: 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69  TOP)\src\tclsqli
8690: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\ 86a0: 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20 5c src\tokenize.c \ 86b0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 .$(TOP)\src\tr
86c0: 65 65 76 69 65 77 2e 63 20 5c 0a 20 20 24 28 54  eeview.c \.  $(T 86d0: 4f 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 2e OP)\src\trigger. 86e0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
86f0: 5c 75 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50  \utf.c \.  $(TOP 8700: 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 20 5c )\src\update.c \ 8710: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 .$(TOP)\src\ut
8720: 69 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  il.c \.  $(TOP)\ 8730: 73 72 63 5c 76 61 63 75 75 6d 2e 63 20 5c 0a 20 src\vacuum.c \. 8740: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65$(TOP)\src\vdbe
8750: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8760: 63 5c 76 64 62 65 61 70 69 2e 63 20 5c 0a 20 20 c\vdbeapi.c \. 8770: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61$(TOP)\src\vdbea
8780: 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ux.c \.  $(TOP)\ 8790: 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 5c src\vdbeblob.c \ 87a0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 .$(TOP)\src\vd
87b0: 62 65 6d 65 6d 2e 63 20 5c 0a 20 20 24 28 54 4f  bemem.c \.  $(TO 87c0: 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e P)\src\vdbesort. 87d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
87e0: 5c 76 64 62 65 74 72 61 63 65 2e 63 20 5c 0a 20  \vdbetrace.c \.
87f0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62   $(TOP)\src\vtab 8800: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8810: 63 5c 77 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  c\wal.c \.  $(TO 8820: 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 P)\src\walker.c 8830: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 \.$(TOP)\src\w
8840: 68 65 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  here.c \.  $(TOP 8850: 29 5c 73 72 63 5c 77 68 65 72 65 63 6f 64 65 2e )\src\wherecode. 8860: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8870: 5c 77 68 65 72 65 65 78 70 72 2e 63 0a 0a 23 20  \whereexpr.c..#
8880: 43 6f 72 65 20 6d 69 73 63 65 6c 6c 61 6e 65 6f  Core miscellaneo
8890: 75 73 20 66 69 6c 65 73 2e 0a 23 0a 53 52 43 30  us files..#.SRC0
88a0: 33 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  3 = \.  $(TOP)\s 88b0: 72 63 5c 70 61 72 73 65 2e 79 0a 0a 23 20 43 6f rc\parse.y..# Co 88c0: 72 65 20 68 65 61 64 65 72 20 66 69 6c 65 73 2c re header files, 88d0: 20 70 61 72 74 20 31 2e 0a 23 0a 53 52 43 30 34 part 1..#.SRC04 88e0: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 = \.$(TOP)\sr
88f0: 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20 24 28  c\btree.h \.  $( 8900: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 49 6e TOP)\src\btreeIn 8910: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 t.h \.$(TOP)\s
8920: 72 63 5c 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  rc\hash.h \.  $( 8930: 54 4f 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e TOP)\src\hwtime. 8940: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 h \.$(TOP)\src
8950: 5c 6d 73 76 63 2e 68 20 5c 0a 20 20 24 28 54 4f  \msvc.h \.  $(TO 8960: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c P)\src\mutex.h \ 8970: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 .$(TOP)\src\os
8980: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 8990: 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a c\os_common.h \. 89a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f$(TOP)\src\os_
89b0: 73 65 74 75 70 2e 68 20 5c 0a 20 20 24 28 54 4f  setup.h \.  $(TO 89c0: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 0a P)\src\os_win.h. 89d0: 0a 23 20 43 6f 72 65 20 68 65 61 64 65 72 20 66 .# Core header f 89e0: 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a iles, part 2..#. 89f0: 53 52 43 30 35 20 3d 20 5c 0a 20 20 24 28 54 4f SRC05 = \.$(TO
8a00: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20 5c  P)\src\pager.h \
8a10: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  .  $(TOP)\src\pc 8a20: 61 63 68 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 ache.h \.$(TOP
8a30: 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 68 20 5c  )\src\pragma.h \
8a40: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71  .  $(TOP)\src\sq 8a50: 6c 69 74 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28 lite.h.in \.$(
8a60: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33  TOP)\src\sqlite3
8a70: 65 78 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ext.h \.  $(TOP) 8a80: 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 \src\sqliteInt.h 8a90: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8aa0: 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a  sqliteLimit.h \.
8ab0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62    $(TOP)\src\vdb 8ac0: 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.h \.$(TOP)\s
8ad0: 72 63 5c 76 64 62 65 49 6e 74 2e 68 20 5c 0a 20  rc\vdbeInt.h \.
8ae0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 78 77 6f   $(TOP)\src\vxwo 8af0: 72 6b 73 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 rks.h \.$(TOP)
8b00: 5c 73 72 63 5c 77 61 6c 2e 68 20 5c 0a 20 20 24  \src\wal.h \.  $8b10: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 49 (TOP)\src\whereI 8b20: 6e 74 2e 68 0a 0a 23 20 45 78 74 65 6e 73 69 6f nt.h..# Extensio 8b30: 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 n source code fi 8b40: 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53 les, part 1..#.S 8b50: 52 43 30 36 20 3d 20 5c 0a 20 20 24 28 54 4f 50 RC06 = \.$(TOP
8b60: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e  )\ext\fts1\fts1.
8b70: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 8b80: 5c 66 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e \fts1\fts1_hash. 8b90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
8ba0: 5c 66 74 73 31 5c 66 74 73 31 5f 70 6f 72 74 65  \fts1\fts1_porte
8bb0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.c \.  $(TOP)\e 8bc0: 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b xt\fts1\fts1_tok 8bd0: 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20 24 28 enizer1.c \.$(
8be0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
8bf0: 73 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  s2.c \.  $(TOP)\ 8c00: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 ext\fts2\fts2_ha 8c10: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sh.c \.$(TOP)\
8c20: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 69 63  ext\fts2\fts2_ic
8c30: 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  u.c \.  $(TOP)\e 8c40: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 xt\fts2\fts2_por 8c50: 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ter.c \.$(TOP)
8c60: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
8c70: 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24  okenizer.c \.  $8c80: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 (TOP)\ext\fts2\f 8c90: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 ts2_tokenizer1.c 8ca0: 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20 73 6f ..# Extension so 8cb0: 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 2c urce code files, 8cc0: 20 70 61 72 74 20 32 2e 0a 23 0a 53 52 43 30 37 part 2..#.SRC07 8cd0: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 = \.$(TOP)\ex
8ce0: 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 5c 0a  t\fts3\fts3.c \.
8cf0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8d00: 33 5c 66 74 73 33 5f 61 75 78 2e 63 20 5c 0a 20 3\fts3_aux.c \. 8d10: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
8d20: 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 5c 0a 20  \fts3_expr.c \.
8d30: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 8d40: 5c 66 74 73 33 5f 68 61 73 68 2e 63 20 5c 0a 20 \fts3_hash.c \. 8d50: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
8d60: 5c 66 74 73 33 5f 69 63 75 2e 63 20 5c 0a 20 20  \fts3_icu.c \.
8d70: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 8d80: 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 20 5c 0a fts3_porter.c \. 8d90: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8da0: 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 63  3\fts3_snippet.c
8db0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8dc0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni 8dd0: 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 zer.c \.$(TOP)
8de0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74  \ext\fts3\fts3_t
8df0: 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20  okenizer1.c \.
8e00: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 8e10: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 fts3_tokenize_vt 8e20: 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ab.c \.$(TOP)\
8e30: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e  ext\fts3\fts3_un
8e40: 69 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f  icode.c \.  $(TO 8e50: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 8e60: 5f 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 _unicode2.c \. 8e70: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
8e80: 66 74 73 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20  fts3_write.c \.
8e90: 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c   $(TOP)\ext\icu\ 8ea0: 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 icu.c \.$(TOP)
8eb0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
8ec0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8ed0: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 t\session\sqlite 8ee0: 33 73 65 73 73 69 6f 6e 2e 63 20 5c 0a 20 20 24 3session.c \.$
8ef0: 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71  (TOP)\ext\rbu\sq
8f00: 6c 69 74 65 33 72 62 75 2e 63 20 5c 0a 20 20 24  lite3rbu.c \.  $8f10: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6a (TOP)\ext\misc\j 8f20: 73 6f 6e 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 son1.c \.$(TOP
8f30: 29 5c 65 78 74 5c 6d 69 73 63 5c 73 74 6d 74 2e  )\ext\misc\stmt.
8f40: 63 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20 68  c..# Extension h
8f50: 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 72  eader files, par
8f60: 74 20 31 2e 0a 23 0a 53 52 43 30 38 20 3d 20 5c  t 1..#.SRC08 = \
8f70: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 8f80: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 s1\fts1.h \.$(
8f90: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
8fa0: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  s1_hash.h \.  $( 8fb0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 8fc0: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c s1_tokenizer.h \ 8fd0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
8fe0: 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20 20 24 28  s2\fts2.h \.  $( 8ff0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft 9000: 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 s2_hash.h \.$(
9010: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
9020: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a  s2_tokenizer.h..
9030: 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64  # Extension head
9040: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32  er files, part 2
9050: 2e 0a 23 0a 53 52 43 30 39 20 3d 20 5c 0a 20 20  ..#.SRC09 = \.
9060: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 9070: 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 fts3.h \.$(TOP
9080: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49  )\ext\fts3\fts3I
9090: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nt.h \.  $(TOP)\ 90a0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 ext\fts3\fts3_ha 90b0: 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c sh.h \.$(TOP)\
90c0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f  ext\fts3\fts3_to
90d0: 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28  kenizer.h \.  $( 90e0: 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c TOP)\ext\icu\sql 90f0: 69 74 65 69 63 75 2e 68 20 5c 0a 20 20 24 28 54 iteicu.h \.$(T
9100: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74  OP)\ext\rtree\rt
9110: 72 65 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ree.h \.  $(TOP) 9120: 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 \ext\rbu\sqlite3 9130: 72 62 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 rbu.h \.$(TOP)
9140: 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c  \ext\session\sql
9150: 69 74 65 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23  ite3session.h..#
9160: 20 47 65 6e 65 72 61 74 65 64 20 73 6f 75 72 63   Generated sourc
9170: 65 20 63 6f 64 65 20 66 69 6c 65 73 0a 23 0a 53  e code files.#.S
9180: 52 43 31 30 20 3d 20 5c 0a 20 20 6f 70 63 6f 64  RC10 = \.  opcod
9190: 65 73 2e 63 20 5c 0a 20 20 70 61 72 73 65 2e 63  es.c \.  parse.c
91a0: 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 68 65  ..# Generated he
91b0: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 53 52 43  ader files.#.SRC
91c0: 31 31 20 3d 20 5c 0a 20 20 6b 65 79 77 6f 72 64  11 = \.  keyword
91d0: 68 61 73 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64  hash.h \.  opcod
91e0: 65 73 2e 68 20 5c 0a 20 20 70 61 72 73 65 2e 68  es.h \.  parse.h
91f0: 20 5c 0a 20 20 73 68 65 6c 6c 2e 63 20 5c 0a 20   \.  shell.c \.
9200: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23 20   $(SQLITE3H)..# 9210: 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68 65 Generated Tcl he 9220: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 21 49 46 ader files.#.!IF 9230: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21$(USE_STDCALL)!
9240: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1 9250: 30 29 21 3d 30 0a 53 52 43 31 32 20 3d 20 5c 0a 0)!=0.SRC12 = \. 9260: 20 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29 20$(SQLITETCLH)
9270: 5c 0a 20 20 24 28 53 51 4c 49 54 45 54 43 4c 44  \.  $(SQLITETCLD 9280: 45 43 4c 53 48 29 0a 21 45 4c 53 45 0a 53 52 43 ECLSH).!ELSE.SRC 9290: 31 32 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 41 12 =.!ENDIF..# A 92a0: 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 ll source code f 92b0: 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24 28 iles..#.SRC =$(
92c0: 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 20  SRC00) $(SRC01) 92d0: 24 28 53 52 43 30 33 29 20 24 28 53 52 43 30 34$(SRC03) $(SRC04 92e0: 29 20 24 28 53 52 43 30 35 29 20 24 28 53 52 43 )$(SRC05) $(SRC 92f0: 30 36 29 20 24 28 53 52 43 30 37 29 20 24 28 53 06)$(SRC07) $(S 9300: 52 43 30 38 29 20 24 28 53 52 43 30 39 29 20 24 RC08)$(SRC09) $9310: 28 53 52 43 31 30 29 20 24 28 53 52 43 31 31 29 (SRC10)$(SRC11)
9320: 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f 64 65 20  ..# Source code
9330: 74 6f 20 74 68 65 20 74 65 73 74 20 66 69 6c 65  to the test file
9340: 73 2e 0a 23 0a 54 45 53 54 53 52 43 20 3d 20 5c  s..#.TESTSRC = \
9350: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 9360: 73 74 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 st1.c \.$(TOP)
9370: 5c 73 72 63 5c 74 65 73 74 32 2e 63 20 5c 0a 20  \src\test2.c \.
9380: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 9390: 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 3.c \.$(TOP)\s
93a0: 72 63 5c 74 65 73 74 34 2e 63 20 5c 0a 20 20 24  rc\test4.c \.  $93b0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 35 2e (TOP)\src\test5. 93c0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
93d0: 5c 74 65 73 74 36 2e 63 20 5c 0a 20 20 24 28 54  \test6.c \.  $(T 93e0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 37 2e 63 20 OP)\src\test7.c 93f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9400: 65 73 74 38 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est8.c \.  $(TOP 9410: 29 5c 73 72 63 5c 74 65 73 74 39 2e 63 20 5c 0a )\src\test9.c \. 9420: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
9430: 74 5f 61 75 74 6f 65 78 74 2e 63 20 5c 0a 20 20  t_autoext.c \.
9440: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9450: 61 73 79 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f async.c \.$(TO
9460: 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 61 63 6b  P)\src\test_back
9470: 75 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  up.c \.  $(TOP)\ 9480: 73 72 63 5c 74 65 73 74 5f 62 65 73 74 69 6e 64 src\test_bestind 9490: 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ex.c \.$(TOP)\
94a0: 73 72 63 5c 74 65 73 74 5f 62 6c 6f 62 2e 63 20  src\test_blob.c
94b0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 94c0: 65 73 74 5f 62 74 72 65 65 2e 63 20 5c 0a 20 20 est_btree.c \. 94d0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
94e0: 63 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 24 28 54  config.c \.  $(T 94f0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 64 65 6c OP)\src\test_del 9500: 65 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ete.c \.$(TOP)
9510: 5c 73 72 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66  \src\test_demovf
9520: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  s.c \.  $(TOP)\s 9530: 72 63 5c 74 65 73 74 5f 64 65 76 73 79 6d 2e 63 rc\test_devsym.c 9540: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
9550: 74 65 73 74 5f 66 73 2e 63 20 5c 0a 20 20 24 28  test_fs.c \.  $( 9560: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 75 TOP)\src\test_fu 9570: 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c nc.c \.$(TOP)\
9580: 73 72 63 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63  src\test_hexio.c
9590: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 95a0: 74 65 73 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 test_init.c \. 95b0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
95c0: 69 6e 74 61 72 72 61 79 2e 63 20 5c 0a 20 20 24  intarray.c \.  $95d0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a (TOP)\src\test_j 95e0: 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 ournal.c \.$(T
95f0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c  OP)\src\test_mal
9600: 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  loc.c \.  $(TOP) 9610: 5c 73 72 63 5c 74 65 73 74 5f 6d 64 35 2e 63 20 \src\test_md5.c 9620: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9630: 65 73 74 5f 6d 75 6c 74 69 70 6c 65 78 2e 63 20  est_multiplex.c
9640: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 9650: 65 73 74 5f 6d 75 74 65 78 2e 63 20 5c 0a 20 20 est_mutex.c \. 9660: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
9670: 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a 20 20 24 28  onefile.c \.  $( 9680: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 73 TOP)\src\test_os 9690: 69 6e 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 inst.c \.$(TOP
96a0: 29 5c 73 72 63 5c 74 65 73 74 5f 70 63 61 63 68  )\src\test_pcach
96b0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 96c0: 72 63 5c 74 65 73 74 5f 71 75 6f 74 61 2e 63 20 rc\test_quota.c 96d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
96e0: 65 73 74 5f 72 74 72 65 65 2e 63 20 5c 0a 20 20  est_rtree.c \.
96f0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9700: 73 63 68 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54 schema.c \.$(T
9710: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 65 72  OP)\src\test_ser
9720: 76 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ver.c \.  $(TOP) 9730: 5c 73 72 63 5c 74 65 73 74 5f 73 75 70 65 72 6c \src\test_superl 9740: 6f 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ock.c \.$(TOP)
9750: 5c 73 72 63 5c 74 65 73 74 5f 73 79 73 63 61 6c  \src\test_syscal
9760: 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  l.c \.  $(TOP)\s 9770: 72 63 5c 74 65 73 74 5f 74 63 6c 73 68 2e 63 20 rc\test_tclsh.c 9780: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9790: 65 73 74 5f 74 63 6c 76 61 72 2e 63 20 5c 0a 20  est_tclvar.c \.
97a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 97b0: 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20 20 24 28 _thread.c \.$(
97c0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 76 66  TOP)\src\test_vf
97d0: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  s.c \.  $(TOP)\s 97e0: 72 63 5c 74 65 73 74 5f 77 69 6e 64 69 72 65 6e rc\test_windiren 97f0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 t.c \.$(TOP)\s
9800: 72 63 5c 74 65 73 74 5f 77 73 64 2e 63 20 5c 0a  rc\test_wsd.c \.
9810: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 9820: 33 5c 66 74 73 33 5f 74 65 72 6d 2e 63 20 5c 0a 3\fts3_term.c \. 9830: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
9840: 33 5c 66 74 73 33 5f 74 65 73 74 2e 63 20 5c 0a  3\fts3_test.c \.
9850: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75    $(TOP)\ext\rbu 9860: 5c 74 65 73 74 5f 72 62 75 2e 63 20 5c 0a 20 20 \test_rbu.c \. 9870: 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69$(TOP)\ext\sessi
9880: 6f 6e 5c 74 65 73 74 5f 73 65 73 73 69 6f 6e 2e  on\test_session.
9890: 63 0a 0a 23 20 53 74 61 74 69 63 61 6c 6c 79 20  c..# Statically
98a0: 6c 69 6e 6b 65 64 20 65 78 74 65 6e 73 69 6f 6e  linked extension
98b0: 73 2e 0a 23 0a 54 45 53 54 45 58 54 20 3d 20 5c  s..#.TESTEXT = \
98c0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 65 78  .  $(TOP)\ext\ex 98d0: 70 65 72 74 5c 73 71 6c 69 74 65 33 65 78 70 65 pert\sqlite3expe 98e0: 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c rt.c \.$(TOP)\
98f0: 65 78 74 5c 65 78 70 65 72 74 5c 74 65 73 74 5f  ext\expert\test_
9900: 65 78 70 65 72 74 2e 63 20 5c 0a 20 20 24 28 54  expert.c \.  $(T 9910: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 61 6d 61 OP)\ext\misc\ama 9920: 74 63 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 tch.c \.$(TOP)
9930: 5c 65 78 74 5c 6d 69 73 63 5c 63 61 72 72 61 79  \ext\misc\carray
9940: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9950: 74 5c 6d 69 73 63 5c 63 6c 6f 73 75 72 65 2e 63 t\misc\closure.c 9960: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
9970: 6d 69 73 63 5c 63 73 76 2e 63 20 5c 0a 20 20 24  misc\csv.c \.  $9980: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 65 (TOP)\ext\misc\e 9990: 76 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 val.c \.$(TOP)
99a0: 5c 65 78 74 5c 6d 69 73 63 5c 66 69 6c 65 69 6f  \ext\misc\fileio
99b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 99c0: 74 5c 6d 69 73 63 5c 66 75 7a 7a 65 72 2e 63 20 t\misc\fuzzer.c 99d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
99e0: 74 73 35 5c 66 74 73 35 5f 74 63 6c 2e 63 20 5c  ts5\fts5_tcl.c \
99f0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 9a00: 73 35 5c 66 74 73 35 5f 74 65 73 74 5f 6d 69 2e s5\fts5_test_mi. 9a10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
9a20: 5c 66 74 73 35 5c 66 74 73 35 5f 74 65 73 74 5f  \fts5\fts5_test_
9a30: 74 6f 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tok.c \.  $(TOP) 9a40: 5c 65 78 74 5c 6d 69 73 63 5c 69 65 65 65 37 35 \ext\misc\ieee75 9a50: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 4.c \.$(TOP)\e
9a60: 78 74 5c 6d 69 73 63 5c 6d 6d 61 70 77 61 72 6d  xt\misc\mmapwarm
9a70: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9a80: 74 5c 6d 69 73 63 5c 6e 65 78 74 63 68 61 72 2e t\misc\nextchar. 9a90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
9aa0: 5c 6d 69 73 63 5c 70 65 72 63 65 6e 74 69 6c 65  \misc\percentile
9ab0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9ac0: 74 5c 6d 69 73 63 5c 72 65 67 65 78 70 2e 63 20 t\misc\regexp.c 9ad0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
9ae0: 69 73 63 5c 72 65 6d 65 6d 62 65 72 2e 63 20 5c  isc\remember.c \
9af0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 9b00: 73 63 5c 73 65 72 69 65 73 2e 63 20 5c 0a 20 20 sc\series.c \. 9b10: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
9b20: 73 70 65 6c 6c 66 69 78 2e 63 20 5c 0a 20 20 24  spellfix.c \.  $9b30: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 74 (TOP)\ext\misc\t 9b40: 6f 74 79 70 65 2e 63 20 5c 0a 20 20 24 28 54 4f otype.c \.$(TO
9b50: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 75 6e 69 6f  P)\ext\misc\unio
9b60: 6e 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f  nvtab.c \.  $(TO 9b70: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 77 68 6f 6c P)\ext\misc\whol 9b80: 65 6e 75 6d 62 65 72 2e 63 20 5c 0a 20 20 24 28 enumber.c \.$(
9b90: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 7a 69  TOP)\ext\misc\zi
9ba0: 70 66 69 6c 65 2e 63 0a 0a 23 20 53 6f 75 72 63  pfile.c..# Sourc
9bb0: 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6c 69  e code to the li
9bc0: 62 72 61 72 79 20 66 69 6c 65 73 20 6e 65 65 64  brary files need
9bd0: 65 64 20 62 79 20 74 68 65 20 74 65 73 74 20 66  ed by the test f
9be0: 69 78 74 75 72 65 0a 23 20 28 6e 6f 6e 2d 61 6d  ixture.# (non-am
9bf0: 61 6c 67 61 6d 61 74 69 6f 6e 29 0a 23 0a 54 45  algamation).#.TE
9c00: 53 54 53 52 43 32 20 3d 20 5c 0a 20 20 24 28 53  STSRC2 = \.  $(S 9c10: 52 43 30 30 29 20 5c 0a 20 20 24 28 53 52 43 30 RC00) \.$(SRC0
9c20: 31 29 20 5c 0a 20 20 24 28 53 52 43 30 36 29 20  1) \.  $(SRC06) 9c30: 5c 0a 20 20 24 28 53 52 43 30 37 29 20 5c 0a 20 \.$(SRC07) \.
9c40: 20 24 28 53 52 43 31 30 29 20 5c 0a 20 20 24 28   $(SRC10) \.$(
9c50: 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63 5c 73  TOP)\ext\async\s
9c60: 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 0a 0a 23  qlite3async.c..#
9c70: 20 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 73   Header files us
9c80: 65 64 20 62 79 20 61 6c 6c 20 6c 69 62 72 61 72  ed by all librar
9c90: 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e 0a  y source files..
9ca0: 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24 28 54  #.HDR = \.   $(T 9cb0: 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 20 OP)\src\btree.h 9cc0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
9cd0: 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 20  btreeInt.h \.
9ce0: 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e  $(TOP)\src\hash. 9cf0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 h \.$(TOP)\sr
9d00: 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 20  c\hwtime.h \.
9d10: 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 5c 0a  keywordhash.h \.
9d20: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 73     $(TOP)\src\ms 9d30: 76 63 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 vc.h \.$(TOP)
9d40: 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20  \src\mutex.h \.
9d50: 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 20    opcodes.h \.
9d60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68   $(TOP)\src\os.h 9d70: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
9d80: 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20  \os_common.h \.
9d90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_ 9da0: 73 65 74 75 70 2e 68 20 5c 0a 20 20 20 24 28 54 setup.h \.$(T
9db0: 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 68  OP)\src\os_win.h
9dc0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 9dd0: 5c 70 61 67 65 72 2e 68 20 5c 0a 20 20 20 24 28 \pager.h \.$(
9de0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e  TOP)\src\pcache.
9df0: 68 20 5c 0a 20 20 20 70 61 72 73 65 2e 68 20 5c  h \.   parse.h \
9e00: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  .   $(TOP)\src\p 9e10: 72 61 67 6d 61 2e 68 20 5c 0a 20 20 20 24 28 53 ragma.h \.$(S
9e20: 51 4c 49 54 45 33 48 29 20 5c 0a 20 20 20 73 71  QLITE3H) \.   sq
9e30: 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a 20 20 20  lite3ext.h \.
9e40: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74  $(TOP)\src\sqlit 9e50: 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f eInt.h \.$(TO
9e60: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69 6d  P)\src\sqliteLim
9e70: 69 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  it.h \.   $(TOP) 9e80: 5c 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 \src\vdbe.h \. 9e90: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65$(TOP)\src\vdbe
9ea0: 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  Int.h \.   $(TOP 9eb0: 29 5c 73 72 63 5c 76 78 77 6f 72 6b 73 2e 68 20 )\src\vxworks.h 9ec0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
9ed0: 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 48 65  whereInt.h..# He
9ee0: 61 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20  ader files used
9ef0: 62 79 20 65 78 74 65 6e 73 69 6f 6e 73 0a 23 0a  by extensions.#.
9f00: 45 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44  EXTHDR = $(EXTHD 9f10: 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 R) \.$(TOP)\ex
9f20: 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20 5c 0a  t\fts1\fts1.h \.
9f30: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 9f40: 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20 5c 0a 1\fts1_hash.h \. 9f50: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
9f60: 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72  1\fts1_tokenizer
9f70: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58  .h.EXTHDR = $(EX 9f80: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 THDR) \.$(TOP)
9f90: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 68  \ext\fts2\fts2.h
9fa0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 9fb0: 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 68 fts2\fts2_hash.h 9fc0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
9fd0: 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69  fts2\fts2_tokeni
9fe0: 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24  zer.h.EXTHDR = $9ff0: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 (EXTHDR) \.$(T
a000: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
a010: 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  3.h \.  $(TOP)\e a020: 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e xt\fts3\fts3Int. a030: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
a040: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e  \fts3\fts3_hash.
a050: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext a060: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e \fts3\fts3_token a070: 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 izer.h.EXTHDR = a080: 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28$(EXTHDR) \.  $( a090: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 TOP)\ext\rtree\r a0a0: 74 72 65 65 2e 68 0a 45 58 54 48 44 52 20 3d 20 tree.h.EXTHDR = a0b0: 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28$(EXTHDR) \.  $( a0c0: 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c TOP)\ext\icu\sql a0d0: 69 74 65 69 63 75 2e 68 0a 45 58 54 48 44 52 20 iteicu.h.EXTHDR a0e0: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 =$(EXTHDR) \.
a0f0: 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65  $(TOP)\ext\rtree a100: 5c 73 71 6c 69 74 65 33 72 74 72 65 65 2e 68 0a \sqlite3rtree.h. a110: 45 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 EXTHDR =$(EXTHD
a120: 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  R) \.  $(TOP)\ex a130: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 t\session\sqlite a140: 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 65 78 3session.h..# ex a150: 65 63 75 74 61 62 6c 65 73 20 6e 65 65 64 65 64 ecutables needed a160: 20 66 6f 72 20 74 65 73 74 69 6e 67 0a 23 0a 54 for testing.#.T a170: 45 53 54 50 52 4f 47 53 20 3d 20 5c 0a 20 20 74 ESTPROGS = \. t a180: 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 5c estfixture.exe \ a190: 0a 20 20 24 28 53 51 4c 49 54 45 33 45 58 45 29 .$(SQLITE3EXE)
a1a0: 20 5c 0a 20 20 73 71 6c 69 74 65 33 5f 61 6e 61   \.  sqlite3_ana
a1b0: 6c 79 7a 65 72 2e 65 78 65 20 5c 0a 20 20 73 71  lyzer.exe \.  sq
a1c0: 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 65 78  lite3_checker.ex
a1d0: 65 20 5c 0a 20 20 73 71 6c 64 69 66 66 2e 65 78  e \.  sqldiff.ex
a1e0: 65 20 5c 0a 20 20 64 62 68 61 73 68 2e 65 78 65  e \.  dbhash.exe
a1f0: 0a 0a 23 20 44 61 74 61 62 61 73 65 73 20 63 6f  ..# Databases co
a200: 6e 74 61 69 6e 69 6e 67 20 66 75 7a 7a 65 72 20  ntaining fuzzer
a210: 74 65 73 74 20 63 61 73 65 73 0a 23 0a 46 55 5a  test cases.#.FUZ
a220: 5a 44 41 54 41 20 3d 20 5c 0a 20 20 24 28 54 4f  ZDATA = \.  $(TO a230: 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 P)\test\fuzzdata a240: 31 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 1.db \.$(TOP)\
a250: 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 32 2e 64  test\fuzzdata2.d
a260: 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73  b \.  $(TOP)\tes a270: 74 5c 66 75 7a 7a 64 61 74 61 33 2e 64 62 20 5c t\fuzzdata3.db \ a280: 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 .$(TOP)\test\f
a290: 75 7a 7a 64 61 74 61 34 2e 64 62 20 5c 0a 20 20  uzzdata4.db \.
a2a0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz a2b0: 64 61 74 61 35 2e 64 62 0a 23 20 3c 3c 2f 6d 61 data5.db.# <</ma a2c0: 72 6b 3e 3e 0a 0a 23 20 41 64 64 69 74 69 6f 6e rk>>..# Addition a2d0: 61 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 al compiler opti a2e0: 6f 6e 73 20 66 6f 72 20 74 68 65 20 73 68 65 6c ons for the shel a2f0: 6c 2e 20 20 54 68 65 73 65 20 61 72 65 20 6f 6e l. These are on a300: 6c 79 20 65 66 66 65 63 74 69 76 65 0a 23 20 77 ly effective.# w a310: 68 65 6e 20 74 68 65 20 73 68 65 6c 6c 20 69 73 hen the shell is a320: 20 6e 6f 74 20 62 65 69 6e 67 20 64 79 6e 61 6d not being dynam a330: 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 2e 0a 23 ically linked..# a340: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 .!IF$(DYNAMIC_S
a350: 48 45 4c 4c 29 3d 3d 30 20 26 26 20 24 28 46 4f  HELL)==0 && $(FO a360: 52 5f 57 49 4e 31 30 29 3d 3d 30 0a 53 48 45 4c R_WIN10)==0.SHEL a370: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d L_COMPILE_OPTS = a380: 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45$(SHELL_COMPILE
a390: 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f  _OPTS) -DSQLITE_
a3a0: 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44 53  ENABLE_JSON1 -DS
a3b0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53  QLITE_ENABLE_FTS
a3c0: 34 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  4 -DSQLITE_ENABL
a3d0: 45 5f 45 58 50 4c 41 49 4e 5f 43 4f 4d 4d 45 4e  E_EXPLAIN_COMMEN
a3e0: 54 53 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  TS -DSQLITE_ENAB
a3f0: 4c 45 5f 53 54 4d 54 56 54 41 42 0a 53 48 45 4c  LE_STMTVTAB.SHEL
a400: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d  L_COMPILE_OPTS =
a410: 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45   $(SHELL_COMPILE a420: 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f _OPTS) -DSQLITE_ a430: 45 4e 41 42 4c 45 5f 44 42 50 41 47 45 5f 56 54 ENABLE_DBPAGE_VT a440: 41 42 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 AB -DSQLITE_ENAB a450: 4c 45 5f 44 42 53 54 41 54 5f 56 54 41 42 0a 53 LE_DBSTAT_VTAB.S a460: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 HELL_COMPILE_OPT a470: 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 S =$(SHELL_COMP
a480: 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49  ILE_OPTS) -DSQLI
a490: 54 45 5f 45 4e 41 42 4c 45 5f 4f 46 46 53 45 54  TE_ENABLE_OFFSET
a4a0: 5f 53 51 4c 5f 46 55 4e 43 20 2d 44 53 51 4c 49  _SQL_FUNC -DSQLI
a4b0: 54 45 5f 49 4e 54 52 4f 53 50 45 43 54 49 4f 4e  TE_INTROSPECTION
a4c0: 5f 50 52 41 47 4d 41 53 0a 21 45 4e 44 49 46 0a  _PRAGMAS.!ENDIF.
a4d0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78  .# <<mark>>.# Ex
a4e0: 74 72 61 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74  tra compiler opt
a4f0: 69 6f 6e 73 20 66 6f 72 20 76 61 72 69 6f 75 73  ions for various
a500: 20 74 65 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d   test tools..#.M
a510: 50 54 45 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f  PTESTER_COMPILE_
a520: 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f  OPTS = -DSQLITE_
a530: 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44 53  ENABLE_JSON1 -DS
a540: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53  QLITE_ENABLE_FTS
a550: 35 0a 46 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f  5.FUZZERSHELL_CO
a560: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53  MPILE_OPTS = -DS
a570: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f  QLITE_ENABLE_JSO
a580: 4e 31 0a 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d  N1.FUZZCHECK_COM
a590: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51  PILE_OPTS = -DSQ
a5a0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e  LITE_ENABLE_JSON
a5b0: 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  1 -DSQLITE_ENABL
a5c0: 45 5f 4d 45 4d 53 59 53 35 20 2d 44 53 51 4c 49  E_MEMSYS5 -DSQLI
a5d0: 54 45 5f 4f 53 53 5f 46 55 5a 5a 20 2d 44 53 51  TE_OSS_FUZZ -DSQ
a5e0: 4c 49 54 45 5f 4d 41 58 5f 4d 45 4d 4f 52 59 3d  LITE_MAX_MEMORY=
a5f0: 35 30 30 30 30 30 30 30 0a 46 55 5a 5a 43 48 45  50000000.FUZZCHE
a600: 43 4b 5f 53 52 43 20 3d 20 24 28 54 4f 50 29 5c  CK_SRC = $(TOP)\ a610: 74 65 73 74 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 test\fuzzcheck.c a620: 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f 73 73$(TOP)\test\oss
a630: 66 75 7a 7a 2e 63 0a 4f 53 53 53 48 45 4c 4c 5f  fuzz.c.OSSSHELL_
a640: 53 52 43 20 3d 20 24 28 54 4f 50 29 5c 74 65 73  SRC = $(TOP)\tes a650: 74 5c 6f 73 73 73 68 65 6c 6c 2e 63 20 24 28 54 t\ossshell.c$(T
a660: 4f 50 29 5c 74 65 73 74 5c 6f 73 73 66 75 7a 7a  OP)\test\ossfuzz
a670: 2e 63 0a 44 42 46 55 5a 5a 5f 43 4f 4d 50 49 4c  .c.DBFUZZ_COMPIL
a680: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
a690: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
a6a0: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
a6b0: 44 5f 45 58 54 45 4e 53 49 4f 4e 0a 4b 56 5f 43  D_EXTENSION.KV_C
a6c0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44  OMPILE_OPTS = -D
a6d0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46  SQLITE_THREADSAF
a6e0: 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 44 49 52  E=0 -DSQLITE_DIR
a6f0: 45 43 54 5f 4f 56 45 52 46 4c 4f 57 5f 52 45 41  ECT_OVERFLOW_REA
a700: 44 0a 44 42 53 45 4c 46 54 45 53 54 5f 43 4f 4d  D.DBSELFTEST_COM
a710: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51  PILE_OPTS = -DSQ
a720: 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
a730: 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
a740: 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d  LOAD_EXTENSION -
a750: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52  DSQLITE_ENABLE_R
a760: 54 52 45 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e  TREE -DSQLITE_EN
a770: 41 42 4c 45 5f 46 54 53 34 20 2d 44 53 51 4c 49  ABLE_FTS4 -DSQLI
a780: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a 53  TE_ENABLE_FTS5.S
a790: 54 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d  T_COMPILE_OPTS =
a7a0: 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44   -DSQLITE_THREAD
a7b0: 53 41 46 45 3d 30 0a 0a 23 20 53 74 61 6e 64 61  SAFE=0..# Standa
a7c0: 72 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 65  rd options to te
a7d0: 73 74 66 69 78 74 75 72 65 2e 0a 23 0a 54 45 53  stfixture..#.TES
a7e0: 54 4f 50 54 53 20 3d 20 2d 2d 76 65 72 62 6f 73  TOPTS = --verbos
a7f0: 65 3d 66 69 6c 65 20 2d 2d 6f 75 74 70 75 74 3d  e=file --output=
a800: 74 65 73 74 2d 6f 75 74 2e 74 78 74 0a 0a 23 20  test-out.txt..#
a810: 45 78 74 72 61 20 74 61 72 67 65 74 73 20 66 6f  Extra targets fo
a820: 72 20 74 68 65 20 22 61 6c 6c 22 20 74 61 72 67  r the "all" targ
a830: 65 74 20 74 68 61 74 20 72 65 71 75 69 72 65 20  et that require
a840: 54 63 6c 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f  Tcl..#.!IF $(NO_ a850: 54 43 4c 29 3d 3d 30 0a 41 4c 4c 5f 54 43 4c 5f TCL)==0.ALL_TCL_ a860: 54 41 52 47 45 54 53 20 3d 20 6c 69 62 74 63 6c TARGETS = libtcl a870: 73 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 sqlite3.lib.!ELS a880: 45 0a 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 54 E.ALL_TCL_TARGET a890: 53 20 3d 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f S =.!ENDIF.# <</ a8a0: 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68 69 73 20 69 mark>>..# This i a8b0: 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 4d 61 s the default Ma a8c0: 6b 65 66 69 6c 65 20 74 61 72 67 65 74 2e 20 20 kefile target. a8d0: 54 68 65 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 The objects list a8e0: 65 64 20 68 65 72 65 0a 23 20 61 72 65 20 77 68 ed here.# are wh a8f0: 61 74 20 67 65 74 20 62 75 69 6c 64 20 77 68 65 at get build whe a900: 6e 20 79 6f 75 20 74 79 70 65 20 6a 75 73 74 20 n you type just a910: 22 6d 61 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 "make" with no a a920: 72 67 75 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a rguments..#.all: a930: 09 64 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e .dll libsqlite3. a940: 6c 69 62 20 73 68 65 6c 6c 20 24 28 41 4c 4c 5f lib shell$(ALL_
a950: 54 43 4c 5f 54 41 52 47 45 54 53 29 0a 0a 23 20  TCL_TARGETS)..#
a960: 44 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62  Dynamic link lib
a970: 72 61 72 79 20 73 65 63 74 69 6f 6e 2e 0a 23 0a  rary section..#.
a980: 64 6c 6c 3a 09 24 28 53 51 4c 49 54 45 33 44 4c  dll:.$(SQLITE3DL a990: 4c 29 0a 0a 23 20 53 68 65 6c 6c 20 65 78 65 63 L)..# Shell exec a9a0: 75 74 61 62 6c 65 2e 0a 23 0a 73 68 65 6c 6c 3a utable..#.shell: a9b0: 09 24 28 53 51 4c 49 54 45 33 45 58 45 29 0a 0a .$(SQLITE3EXE)..
a9c0: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 6c 69 62 73 71  # <<mark>>.libsq
a9d0: 6c 69 74 65 33 2e 6c 69 62 3a 09 24 28 4c 49 42  lite3.lib:.$(LIB a9e0: 4f 42 4a 29 0a 09 24 28 4c 54 4c 49 42 29 20 24 OBJ)..$(LTLIB) $a9f0: 28 4c 54 4c 49 42 4f 50 54 53 29 20 2f 4f 55 54 (LTLIBOPTS) /OUT aa00: 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 28 :$@ $(LIBOBJ)$(
aa10: 54 4c 49 42 53 29 0a 0a 6c 69 62 74 63 6c 73 71  TLIBS)..libtclsq
aa20: 6c 69 74 65 33 2e 6c 69 62 3a 09 74 63 6c 73 71  lite3.lib:.tclsq
aa30: 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74  lite.lo libsqlit
aa40: 65 33 2e 6c 69 62 0a 09 24 28 4c 54 4c 49 42 29  e3.lib..$(LTLIB) aa50: 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20 24 28$(LTLIBOPTS) $( aa60: 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4f 55 54 LTLIBPATHS) /OUT aa70: 3a 24 40 20 74 63 6c 73 71 6c 69 74 65 2e 6c 6f :$@ tclsqlite.lo
aa80: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20   libsqlite3.lib
aa90: 24 28 4c 49 42 54 43 4c 53 54 55 42 29 20 24 28  $(LIBTCLSTUB)$(
aaa0: 54 4c 49 42 53 29 0a 23 20 3c 3c 2f 6d 61 72 6b  TLIBS).# <</mark
aab0: 3e 3e 0a 0a 24 28 53 51 4c 49 54 45 33 44 4c 4c  >>..$(SQLITE3DLL aac0: 29 3a 09 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c ):.$(LIBOBJ) $(L aad0: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 43 4f 52 IBRESOBJS)$(COR
aae0: 45 5f 4c 49 4e 4b 5f 44 45 50 29 0a 09 24 28 4c  E_LINK_DEP)..$(L aaf0: 44 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 D)$(LDFLAGS) $( ab00: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 LTLINKOPTS)$(LT
ab10: 4c 49 42 50 41 54 48 53 29 20 2f 44 4c 4c 20 24  LIBPATHS) /DLL $ab20: 28 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 29 (CORE_LINK_OPTS) ab30: 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 /OUT:$@ $(LIBOB ab40: 4a 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 J)$(LIBRESOBJS)
ab50: 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49   $(LTLIBS)$(TLI
ab60: 42 53 29 0a 0a 23 20 3c 3c 62 6c 6f 63 6b 32 3e  BS)..# <<block2>
ab70: 3e 0a 73 71 6c 69 74 65 33 2e 64 65 66 3a 09 6c  >.sqlite3.def:.l
ab80: 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 65  ibsqlite3.lib..e
ab90: 63 68 6f 20 45 58 50 4f 52 54 53 20 3e 20 73 71  cho EXPORTS > sq
aba0: 6c 69 74 65 33 2e 64 65 66 0a 09 64 75 6d 70 62  lite3.def..dumpb
abb0: 69 6e 20 2f 61 6c 6c 20 6c 69 62 73 71 6c 69 74  in /all libsqlit
abc0: 65 33 2e 6c 69 62 20 5c 0a 09 09 7c 20 24 28 54  e3.lib \...| $(T abd0: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 CLSH_CMD)$(TOP)
abe0: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63  \tool\replace.tc
abf0: 6c 20 69 6e 63 6c 75 64 65 20 22 5e 5c 73 2b 31  l include "^\s+1
ac00: 20 5f 3f 28 73 71 6c 69 74 65 33 28 3f 3a 73 65   _?(sqlite3(?:se
ac10: 73 73 69 6f 6e 7c 63 68 61 6e 67 65 73 65 74 7c  ssion|changeset|
ac20: 63 68 61 6e 67 65 67 72 6f 75 70 29 3f 5f 5b 5e  changegroup)?_[^
ac30: 40 5d 2a 29 28 3f 3a 40 5c 64 2b 29 3f 24 24 22  @]*)(?:@\d+)?"
ac40: 20 5c 31 20 5c 0a 09 09 7c 20 73 6f 72 74 20 3e   \1 \...| sort >
ac50: 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 23 20  > sqlite3.def.#
ac60: 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e 0a 0a 24 28 53  <</block2>>..$(S ac70: 51 4c 49 54 45 33 45 58 45 29 3a 09 73 68 65 6c QLITE3EXE):.shel ac80: 6c 2e 63 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 l.c$(SHELL_CORE
ac90: 5f 44 45 50 29 20 24 28 4c 49 42 52 45 53 4f 42  _DEP) $(LIBRESOB aca0: 4a 53 29 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 JS)$(SHELL_CORE
acb0: 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 33 48  _SRC) $(SQLITE3H acc0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53 )..$(LTLINK) $(S acd0: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 HELL_COMPILE_OPT ace0: 53 29 20 24 28 52 45 41 44 4c 49 4e 45 5f 46 4c S)$(READLINE_FL
acf0: 41 47 53 29 20 73 68 65 6c 6c 2e 63 20 24 28 53  AGS) shell.c $(S ad00: 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43 29 20 5c HELL_CORE_SRC) \ ad10: 0a 09 09 2f 6c 69 6e 6b 20 24 28 53 51 4c 49 54 .../link$(SQLIT
ad20: 45 33 45 58 45 50 44 42 29 20 24 28 4c 44 46 4c  E3EXEPDB) $(LDFL ad30: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
ad40: 53 29 20 24 28 53 48 45 4c 4c 5f 4c 49 4e 4b 5f  S) $(SHELL_LINK_ ad50: 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 OPTS)$(LTLIBPAT
ad60: 48 53 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  HS) $(LIBRESOBJS ad70: 29 20 24 28 4c 49 42 52 45 41 44 4c 49 4e 45 29 )$(LIBREADLINE)
ad80: 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49   $(LTLIBS)$(TLI
ad90: 42 53 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  BS)..# <<mark>>.
ada0: 73 71 6c 64 69 66 66 2e 65 78 65 3a 09 24 28 54  sqldiff.exe:.$(T adb0: 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66 66 OP)\tool\sqldiff adc0: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 .c$(SQLITE3C) $add0: 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
ade0: 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) adf0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c$(TOP)\tool\sql
ae00: 64 69 66 66 2e 63 20 24 28 53 51 4c 49 54 45 33  diff.c $(SQLITE3 ae10: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
ae20: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS ae30: 29 0a 0a 64 62 68 61 73 68 2e 65 78 65 3a 09 24 )..dbhash.exe:.$
ae40: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 64 62 68 61 73  (TOP)\tool\dbhas
ae50: 68 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  h.c $(SQLITE3C) ae60: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c$(SQLITE3H)..$(L ae70: 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e TLINK)$(NO_WARN
ae80: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 64 62  ) $(TOP)\tool\db ae90: 68 61 73 68 2e 63 20 24 28 53 51 4c 49 54 45 33 hash.c$(SQLITE3
aea0: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA aeb0: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
aec0: 29 0a 0a 73 63 72 75 62 2e 65 78 65 3a 09 24 28  )..scrub.exe:.$( aed0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 63 TOP)\ext\misc\sc aee0: 72 75 62 2e 63 20 24 28 53 51 4c 49 54 45 33 43 rub.c$(SQLITE3C
aef0: 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  ) $(SQLITE3H)..$
af00: 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41  (LTLINK) $(NO_WA af10: 52 4e 29 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d RN)$(TOP)\ext\m
af20: 69 73 63 5c 73 63 72 75 62 2e 63 20 24 28 53 51  isc\scrub.c $(SQ af30: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 LITE3C) /link$(
af40: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e  LDFLAGS) $(LTLIN af50: 4b 4f 50 54 53 29 0a 0a 73 72 63 63 6b 31 2e 65 KOPTS)..srcck1.e af60: 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c xe:.$(TOP)\tool\
af70: 73 72 63 63 6b 31 2e 63 0a 09 24 28 42 43 43 29  srcck1.c..$(BCC) af80: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 24$(NO_WARN) -Fe$af90: 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 72 @$(TOP)\tool\sr
afa0: 63 63 6b 31 2e 63 0a 0a 73 6f 75 72 63 65 74 65  cck1.c..sourcete
afb0: 73 74 3a 09 73 72 63 63 6b 31 2e 65 78 65 20 73  st:.srcck1.exe s
afc0: 71 6c 69 74 65 33 2e 63 0a 09 73 72 63 63 6b 31  qlite3.c..srcck1
afd0: 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 63 0a 0a  .exe sqlite3.c..
afe0: 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65 3a  fuzzershell.exe:
aff0: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75 7a  .$(TOP)\tool\fuz b000: 7a 65 72 73 68 65 6c 6c 2e 63 20 24 28 53 51 4c zershell.c$(SQL
b010: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 b020: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( b030: 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55 5a 5a 45 NO_WARN)$(FUZZE
b040: 52 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f  RSHELL_COMPILE_O
b050: 50 54 53 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  PTS) $(TOP)\tool b060: 5c 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 63 20 24 \fuzzershell.c$
b070: 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b  (SQLITE3C) /link
b080: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS)$(LT
b090: 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 66 75 7a  LINKOPTS)..dbfuz
b0a0: 7a 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 65  z.exe:.$(TOP)\te b0b0: 73 74 5c 64 62 66 75 7a 7a 2e 63 20 24 28 53 51 st\dbfuzz.c$(SQ
b0c0: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE b0d0: 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 3H)..$(LTLINK) $b0e0: 28 4e 4f 5f 57 41 52 4e 29 20 24 28 44 42 46 55 (NO_WARN)$(DBFU
b0f0: 5a 5a 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  ZZ_COMPILE_OPTS)
b100: 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 64 62 66   $(TOP)\test\dbf b110: 75 7a 7a 2e 63 20 24 28 53 51 4c 49 54 45 33 43 uzz.c$(SQLITE3C
b120: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG b130: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
b140: 0a 0a 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 3a  ..fuzzcheck.exe:
b150: 09 24 28 46 55 5a 5a 43 48 45 43 4b 5f 53 52 43  .$(FUZZCHECK_SRC b160: 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 )$(SQLITE3C) $( b170: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
b180: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) b190: 24 28 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50$(FUZZCHECK_COMP
b1a0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 46 55 5a 5a  ILE_OPTS) $(FUZZ b1b0: 43 48 45 43 4b 5f 53 52 43 29 20 24 28 53 51 4c CHECK_SRC)$(SQL
b1c0: 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c  ITE3C) /link $(L b1d0: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b DFLAGS)$(LTLINK
b1e0: 4f 50 54 53 29 0a 0a 6f 73 73 73 68 65 6c 6c 2e  OPTS)..ossshell.
b1f0: 65 78 65 3a 09 24 28 4f 53 53 53 48 45 4c 4c 5f  exe:.$(OSSSHELL_ b200: 53 52 43 29 20 24 28 53 51 4c 49 54 45 33 43 29 SRC)$(SQLITE3C)
b210: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28   $(SQLITE3H)..$(
b220: 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52  LTLINK) $(NO_WAR b230: 4e 29 20 24 28 46 55 5a 5a 43 48 45 43 4b 5f 43 N)$(FUZZCHECK_C
b240: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4f  OMPILE_OPTS) $(O b250: 53 53 53 48 45 4c 4c 5f 53 52 43 29 20 24 28 53 SSSHELL_SRC)$(S
b260: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $b270: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
b280: 4e 4b 4f 50 54 53 29 0a 0a 6d 70 74 65 73 74 65  NKOPTS)..mpteste
b290: 72 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 6d 70  r.exe:.$(TOP)\mp b2a0: 74 65 73 74 5c 6d 70 74 65 73 74 2e 63 20 24 28 test\mptest.c$(
b2b0: 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI b2c0: 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
b2d0: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 4d 50   $(NO_WARN)$(MP
b2e0: 54 45 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f  TESTER_COMPILE_O
b2f0: 50 54 53 29 20 24 28 54 4f 50 29 5c 6d 70 74 65  PTS) $(TOP)\mpte b300: 73 74 5c 6d 70 74 65 73 74 2e 63 20 24 28 53 51 st\mptest.c$(SQ
b310: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( b320: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
b330: 4b 4f 50 54 53 29 0a 0a 4d 50 54 45 53 54 31 20  KOPTS)..MPTEST1
b340: 3d 20 6d 70 74 65 73 74 65 72 20 6d 70 74 65 73  = mptester mptes
b350: 74 2e 64 62 20 24 28 54 4f 50 29 5c 6d 70 74 65  t.db $(TOP)\mpte b360: 73 74 5c 63 72 61 73 68 30 31 2e 74 65 73 74 20 st\crash01.test b370: 2d 2d 72 65 70 65 61 74 20 32 30 0a 4d 50 54 45 --repeat 20.MPTE b380: 53 54 32 20 3d 20 6d 70 74 65 73 74 65 72 20 6d ST2 = mptester m b390: 70 74 65 73 74 2e 64 62 20 24 28 54 4f 50 29 5c ptest.db$(TOP)\
b3a0: 6d 70 74 65 73 74 5c 6d 75 6c 74 69 77 72 69 74  mptest\multiwrit
b3b0: 65 30 31 2e 74 65 73 74 20 2d 2d 72 65 70 65 61  e01.test --repea
b3c0: 74 20 32 30 0a 0a 6d 70 74 65 73 74 3a 09 6d 70  t 20..mptest:.mp
b3d0: 74 65 73 74 65 72 2e 65 78 65 0a 09 64 65 6c 20  tester.exe..del
b3e0: 2f 51 20 6d 70 74 65 73 74 2e 64 62 20 32 3e 4e  /Q mptest.db 2>N
b3f0: 55 4c 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d  UL..$(MPTEST1) - b400: 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c -journalmode DEL b410: 45 54 45 0a 09 24 28 4d 50 54 45 53 54 32 29 20 ETE..$(MPTEST2)
b420: 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 57 41  --journalmode WA
b430: 4c 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d  L..$(MPTEST1) -- b440: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a journalmode WAL. b450: 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f .$(MPTEST2) --jo
b460: 75 72 6e 61 6c 6d 6f 64 65 20 50 45 52 53 49 53  urnalmode PERSIS
b470: 54 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d  T..$(MPTEST1) -- b480: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 50 45 52 53 journalmode PERS b490: 49 53 54 0a 09 24 28 4d 50 54 45 53 54 32 29 20 IST..$(MPTEST2)
b4a0: 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52  --journalmode TR
b4b0: 55 4e 43 41 54 45 0a 09 24 28 4d 50 54 45 53 54  UNCATE..$(MPTEST b4c0: 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 1) --journalmode b4d0: 20 54 52 55 4e 43 41 54 45 0a 09 24 28 4d 50 54 TRUNCATE..$(MPT
b4e0: 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d  EST2) --journalm
b4f0: 6f 64 65 20 44 45 4c 45 54 45 0a 0a 23 20 54 68  ode DELETE..# Th
b500: 69 73 20 74 61 72 67 65 74 20 63 72 65 61 74 65  is target create
b510: 73 20 61 20 64 69 72 65 63 74 6f 72 79 20 6e 61  s a directory na
b520: 6d 65 64 20 22 74 73 72 63 22 20 61 6e 64 20 66  med "tsrc" and f
b530: 69 6c 6c 73 20 69 74 20 77 69 74 68 0a 23 20 63  ills it with.# c
b540: 6f 70 69 65 73 20 6f 66 20 61 6c 6c 20 6f 66 20  opies of all of
b550: 74 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64  the C source cod
b560: 65 20 61 6e 64 20 68 65 61 64 65 72 20 66 69 6c  e and header fil
b570: 65 73 20 6e 65 65 64 65 64 20 74 6f 0a 23 20 62  es needed to.# b
b580: 75 69 6c 64 20 6f 6e 20 74 68 65 20 74 61 72 67  uild on the targ
b590: 65 74 20 73 79 73 74 65 6d 2e 20 20 53 6f 6d 65  et system.  Some
b5a0: 20 6f 66 20 74 68 65 20 43 20 73 6f 75 72 63 65   of the C source
b5b0: 20 63 6f 64 65 20 61 6e 64 20 68 65 61 64 65 72   code and header
b5c0: 0a 23 20 66 69 6c 65 73 20 61 72 65 20 61 75 74  .# files are aut
b5d0: 6f 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72  omatically gener
b5e0: 61 74 65 64 2e 20 20 54 68 69 73 20 74 61 72 67  ated.  This targ
b5f0: 65 74 20 74 61 6b 65 73 20 63 61 72 65 20 6f 66  et takes care of
b600: 0a 23 20 61 6c 6c 20 74 68 61 74 20 61 75 74 6f  .# all that auto
b610: 6d 61 74 69 63 20 67 65 6e 65 72 61 74 69 6f 6e  matic generation
b620: 2e 0a 23 0a 2e 74 61 72 67 65 74 5f 73 6f 75 72  ..#..target_sour
b630: 63 65 3a 09 24 28 53 52 43 29 20 24 28 54 4f 50  ce:.$(SRC)$(TOP
b640: 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70  )\tool\vdbe-comp
b650: 72 65 73 73 2e 74 63 6c 20 66 74 73 35 2e 63 20  ress.tcl fts5.c
b660: 24 28 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50  $(SQLITE_TCL_DEP b670: 29 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 74 )..-rmdir /Q/S t b680: 73 72 63 20 32 3e 4e 55 4c 0a 09 2d 6d 6b 64 69 src 2>NUL..-mkdi b690: 72 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 r tsrc..for %i i b6a0: 6e 20 28 24 28 53 52 43 30 30 29 29 20 64 6f 20 n ($(SRC00)) do
b6b0: 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a  copy /Y %i tsrc.
b6c0: 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52  .for %i in ($(SR b6d0: 43 30 31 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 C01)) do copy /Y b6e0: 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 %i tsrc..for %i b6f0: 20 69 6e 20 28 24 28 53 52 43 30 33 29 29 20 64 in ($(SRC03)) d
b700: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72  o copy /Y %i tsr
b710: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28  c..for %i in ($( b720: 53 52 43 30 34 29 29 20 64 6f 20 63 6f 70 79 20 SRC04)) do copy b730: 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 /Y %i tsrc..for b740: 25 69 20 69 6e 20 28 24 28 53 52 43 30 35 29 29 %i in ($(SRC05))
b750: 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74   do copy /Y %i t
b760: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
b770: 24 28 53 52 43 30 36 29 29 20 64 6f 20 63 6f 70  $(SRC06)) do cop b780: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f y /Y %i tsrc..fo b790: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 37 r %i in ($(SRC07
b7a0: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
b7b0: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
b7c0: 20 28 24 28 53 52 43 30 38 29 29 20 64 6f 20 63   ($(SRC08)) do c b7d0: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. b7e0: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
b7f0: 30 39 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  09)) do copy /Y
b800: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
b810: 69 6e 20 28 24 28 53 52 43 31 30 29 29 20 64 6f  in ($(SRC10)) do b820: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc b830: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
b840: 52 43 31 31 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC11)) do copy /
b850: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
b860: 69 20 69 6e 20 28 24 28 53 52 43 31 32 29 29 20  i in ($(SRC12)) b870: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts b880: 72 63 0a 09 63 6f 70 79 20 2f 59 20 66 74 73 35 rc..copy /Y fts5 b890: 2e 63 20 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 .c tsrc..copy /Y b8a0: 20 66 74 73 35 2e 68 20 74 73 72 63 0a 09 64 65 fts5.h tsrc..de b8b0: 6c 20 2f 51 20 74 73 72 63 5c 73 71 6c 69 74 65 l /Q tsrc\sqlite b8c0: 2e 68 2e 69 6e 20 74 73 72 63 5c 70 61 72 73 65 .h.in tsrc\parse b8d0: 2e 79 20 32 3e 4e 55 4c 0a 09 24 28 54 43 4c 53 .y 2>NUL..$(TCLS
b8e0: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f  H_CMD) $(TOP)\to b8f0: 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 ol\vdbe-compress b900: 2e 74 63 6c 20 24 28 4f 50 54 53 29 20 3c 20 74 .tcl$(OPTS) < t
b910: 73 72 63 5c 76 64 62 65 2e 63 20 3e 20 76 64 62  src\vdbe.c > vdb
b920: 65 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64 62 65  e.new..move vdbe
b930: 2e 6e 65 77 20 74 73 72 63 5c 76 64 62 65 2e 63  .new tsrc\vdbe.c
b940: 0a 09 65 63 68 6f 20 3e 20 2e 74 61 72 67 65 74  ..echo > .target
b950: 5f 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74 65 33  _source..sqlite3
b960: 2e 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 72  .c:..target_sour
b970: 63 65 20 73 71 6c 69 74 65 33 65 78 74 2e 68 20  ce sqlite3ext.h
b980: 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f  $(MKSQLITE3C_TOO b990: 4c 29 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 L)..$(TCLSH_CMD)
b9a0: 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f   $(MKSQLITE3C_TO b9b0: 4f 4c 29 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 OL)$(MKSQLITE3C
b9c0: 5f 41 52 47 53 29 0a 09 63 6f 70 79 20 24 28 54  _ARGS)..copy $(T b9d0: 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c OP)\ext\session\ b9e0: 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 68 sqlite3session.h b9f0: 20 2e 0a 0a 73 71 6c 69 74 65 33 2d 61 6c 6c 2e ...sqlite3-all. ba00: 63 3a 09 73 71 6c 69 74 65 33 2e 63 20 24 28 54 c:.sqlite3.c$(T
ba10: 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d 73  OP)\tool\split-s
ba20: 71 6c 69 74 65 33 63 2e 74 63 6c 0a 09 24 28 54  qlite3c.tcl..$(T ba30: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 CLSH_CMD)$(TOP)
ba40: 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69  \tool\split-sqli
ba50: 74 65 33 63 2e 74 63 6c 0a 23 20 3c 3c 2f 6d 61  te3c.tcl.# <</ma
ba60: 72 6b 3e 3e 0a 0a 23 20 52 75 6c 65 20 74 6f 20  rk>>..# Rule to
ba70: 62 75 69 6c 64 20 74 68 65 20 61 6d 61 6c 67 61  build the amalga
ba80: 6d 61 74 69 6f 6e 0a 23 0a 73 71 6c 69 74 65 33  mation.#.sqlite3
ba90: 2e 6c 6f 3a 09 24 28 53 51 4c 49 54 45 33 43 29  .lo:.$(SQLITE3C) baa0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $bab0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP bac0: 54 53 29 20 2d 63 20 24 28 53 51 4c 49 54 45 33 TS) -c$(SQLITE3
bad0: 43 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23  C)..# <<mark>>.#
bae0: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20   Rules to build
baf0: 74 68 65 20 4c 45 4d 4f 4e 20 63 6f 6d 70 69 6c  the LEMON compil
bb00: 65 72 20 67 65 6e 65 72 61 74 6f 72 0a 23 0a 6c  er generator.#.l
bb10: 65 6d 70 61 72 2e 63 3a 09 24 28 54 4f 50 29 5c  empar.c:.$(TOP)\ bb20: 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e 63 0a 09 63 tool\lempar.c..c bb30: 6f 70 79 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c opy$(TOP)\tool\
bb40: 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a 6c 65 6d 6f  lempar.c ...lemo
bb50: 6e 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f  n.exe:.$(TOP)\to bb60: 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c 65 6d 70 61 ol\lemon.c lempa bb70: 72 2e 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f r.c..$(BCC) $(NO bb80: 5f 57 41 52 4e 29 20 2d 44 61 63 63 65 73 73 3d _WARN) -Daccess= bb90: 5f 61 63 63 65 73 73 20 5c 0a 09 09 2d 46 65 24 _access \...-Fe$
bba0: 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65  @ $(TOP)\tool\le bbb0: 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 mon.c /link$(LD
bbc0: 46 4c 41 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b  FLAGS) $(NLTLINK bbd0: 4f 50 54 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 OPTS)$(NLTLIBPA
bbe0: 54 48 53 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  THS)..# <<mark>>
bbf0: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c  .# Rules to buil
bc00: 64 20 74 68 65 20 73 6f 75 72 63 65 2d 69 64 20  d the source-id
bc10: 67 65 6e 65 72 61 74 6f 72 20 74 6f 6f 6c 0a 23  generator tool.#
bc20: 0a 6d 6b 73 6f 75 72 63 65 69 64 2e 65 78 65 3a  .mksourceid.exe:
bc30: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73  .$(TOP)\tool\mks bc40: 6f 75 72 63 65 69 64 2e 63 0a 09 24 28 42 43 43 ourceid.c..$(BCC
bc50: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 46 65  ) $(NO_WARN) -Fe bc60: 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d$@ $(TOP)\tool\m bc70: 6b 73 6f 75 72 63 65 69 64 2e 63 20 2f 6c 69 6e ksourceid.c /lin bc80: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4e k$(LDFLAGS) $(N bc90: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c LTLINKOPTS)$(NL
bca0: 54 4c 49 42 50 41 54 48 53 29 0a 0a 23 20 52 75  TLIBPATHS)..# Ru
bcb0: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64  les to build ind
bcc0: 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c  ividual *.lo fil
bcd0: 65 73 20 66 72 6f 6d 20 67 65 6e 65 72 61 74 65  es from generate
bce0: 64 20 2a 2e 63 20 66 69 6c 65 73 2e 20 54 68 69  d *.c files. Thi
bcf0: 73 0a 23 20 61 70 70 6c 69 65 73 20 74 6f 3a 0a  s.# applies to:.
bd00: 23 0a 23 20 20 20 20 20 70 61 72 73 65 2e 6c 6f  #.#     parse.lo
bd10: 0a 23 20 20 20 20 20 6f 70 63 6f 64 65 73 2e 6c  .#     opcodes.l
bd20: 6f 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a 09 70 61  o.#.parse.lo:.pa
bd30: 72 73 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  rse.c $(HDR)..$(
bd40: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR bd50: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) bd60: 2d 63 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f -c parse.c..opco bd70: 64 65 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e des.lo:.opcodes. bd80: 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 c..$(LTCOMPILE)
bd90: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O bda0: 50 54 53 29 20 2d 63 20 6f 70 63 6f 64 65 73 2e PTS) -c opcodes. bdb0: 63 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 c.# <</mark>>..# bdc0: 20 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 Rule to build t bdd0: 68 65 20 57 69 6e 33 32 20 72 65 73 6f 75 72 63 he Win32 resourc bde0: 65 73 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a es object file.. bdf0: 23 0a 21 49 46 20 24 28 55 53 45 5f 52 43 29 21 #.!IF$(USE_RC)!
be00: 3d 30 0a 23 20 3c 3c 62 6c 6f 63 6b 31 3e 3e 0a  =0.# <<block1>>.
be10: 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 3a 09 24  $(LIBRESOBJS):.$
be20: 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65  (TOP)\src\sqlite
be30: 33 2e 72 63 20 24 28 53 51 4c 49 54 45 33 48 29  3.rc $(SQLITE3H) be40: 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 66 20 53 ..echo #ifndef S be50: 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 45 5f 56 QLITE_RESOURCE_V be60: 45 52 53 49 4f 4e 20 3e 20 73 71 6c 69 74 65 33 ERSION > sqlite3 be70: 72 63 2e 68 0a 09 66 6f 72 20 2f 46 20 25 25 56 rc.h..for /F %%V be80: 20 69 6e 20 28 27 74 79 70 65 20 22 24 28 54 4f in ('type "$(TO
be90: 50 29 5c 56 45 52 53 49 4f 4e 22 27 29 20 64 6f  P)\VERSION"') do
bea0: 20 28 20 5c 0a 09 09 65 63 68 6f 20 23 64 65 66   ( \...echo #def
beb0: 69 6e 65 20 53 51 4c 49 54 45 5f 52 45 53 4f 55  ine SQLITE_RESOU
bec0: 52 43 45 5f 56 45 52 53 49 4f 4e 20 25 25 56 20  RCE_VERSION %%V
bed0: 5c 0a 09 09 09 7c 20 24 28 54 43 4c 53 48 5f 43  \....| $(TCLSH_C bee0: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
bef0: 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63  replace.tcl exac
bf00: 74 20 2e 20 5e 2c 20 3e 3e 20 73 71 6c 69 74 65  t . ^, >> sqlite
bf10: 33 72 63 2e 68 20 5c 0a 09 29 0a 09 65 63 68 6f  3rc.h \..)..echo
bf20: 20 23 65 6e 64 69 66 20 3e 3e 20 73 71 6c 69 74   #endif >> sqlit
bf30: 65 33 72 63 2e 68 0a 09 24 28 4c 54 52 43 4f 4d  e3rc.h..$(LTRCOM bf40: 50 49 4c 45 29 20 2d 66 6f 20 24 28 4c 49 42 52 PILE) -fo$(LIBR
bf50: 45 53 4f 42 4a 53 29 20 24 28 54 4f 50 29 5c 73  ESOBJS) $(TOP)\s bf60: 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 0a 23 20 rc\sqlite3.rc.# bf70: 3c 3c 2f 62 6c 6f 63 6b 31 3e 3e 0a 21 45 4e 44 <</block1>>.!END bf80: 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 IF..# <<mark>>.# bf90: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 Rules to build bfa0: 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 individual *.lo bfb0: 66 69 6c 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 files from files bfc0: 20 69 6e 20 74 68 65 20 73 72 63 20 64 69 72 65 in the src dire bfd0: 63 74 6f 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c ctory..#.alter.l bfe0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c o:.$(TOP)\src\al
bff0: 74 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ter.c $(HDR)..$(
c000: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR c010: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) c020: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c -c$(TOP)\src\al
c030: 74 65 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6c  ter.c..analyze.l
c040: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e  o:.$(TOP)\src\an c050: 61 6c 79 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 alyze.c$(HDR)..
c060: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
c070: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c080: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ c090: 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74 74 61 63 analyze.c..attac c0a0: 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 h.lo:.$(TOP)\src
c0b0: 5c 61 74 74 61 63 68 2e 63 20 24 28 48 44 52 29  \attach.c $(HDR) c0c0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $c0d0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP c0e0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
c0f0: 63 5c 61 74 74 61 63 68 2e 63 0a 0a 61 75 74 68  c\attach.c..auth
c100: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ c110: 61 75 74 68 2e 63 20 24 28 48 44 52 29 0a 09 24 auth.c$(HDR)..$c120: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
c130: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
c140: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61   -c $(TOP)\src\a c150: 75 74 68 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c 6f uth.c..backup.lo c160: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 :.$(TOP)\src\bac
c170: 6b 75 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28  kup.c $(HDR)..$(
c180: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR c190: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) c1a0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 -c$(TOP)\src\ba
c1b0: 63 6b 75 70 2e 63 0a 0a 62 69 74 76 65 63 2e 6c  ckup.c..bitvec.l
c1c0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  o:.$(TOP)\src\bi c1d0: 74 76 65 63 2e 63 20 24 28 48 44 52 29 0a 09 24 tvec.c$(HDR)..$c1e0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
c1f0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
c200: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62   -c $(TOP)\src\b c210: 69 74 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 itvec.c..btmutex c220: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
c230: 62 74 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29  btmutex.c $(HDR) c240: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $c250: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP c260: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
c270: 63 5c 62 74 6d 75 74 65 78 2e 63 0a 0a 62 74 72  c\btmutex.c..btr
c280: 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ee.lo:.$(TOP)\sr c290: 63 5c 62 74 72 65 65 2e 63 20 24 28 48 44 52 29 c\btree.c$(HDR)
c2a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65   $(TOP)\src\page c2b0: 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 r.h..$(LTCOMPILE
c2c0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE c2d0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
c2e0: 5c 73 72 63 5c 62 74 72 65 65 2e 63 0a 0a 62 75  \src\btree.c..bu
c2f0: 69 6c 64 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ild.lo:.$(TOP)\s c300: 72 63 5c 62 75 69 6c 64 2e 63 20 24 28 48 44 52 rc\build.c$(HDR
c310: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) c320: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
c330: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s c340: 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c rc\build.c..call c350: 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c back.lo:.$(TOP)\
c360: 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24  src\callback.c $c370: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
c380: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI c390: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
c3a0: 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e  P)\src\callback.
c3b0: 63 0a 0a 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a 09  c..complete.lo:.
c3c0: 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c  $(TOP)\src\compl c3d0: 65 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 ete.c$(HDR)..$( c3e0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
c3f0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
c400: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f  -c $(TOP)\src\co c410: 6d 70 6c 65 74 65 2e 63 0a 0a 63 74 69 6d 65 2e mplete.c..ctime. c420: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 lo:.$(TOP)\src\c
c430: 74 69 6d 65 2e 63 20 24 28 48 44 52 29 0a 09 24  time.c $(HDR)..$
c440: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c450: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c460: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 -c$(TOP)\src\c
c470: 74 69 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f 3a  time.c..date.lo:
c480: 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65  .$(TOP)\src\date c490: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC c4a0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
c4b0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
c4c0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e  $(TOP)\src\date. c4d0: 63 0a 0a 64 62 70 61 67 65 2e 6c 6f 3a 09 24 28 c..dbpage.lo:.$(
c4e0: 54 4f 50 29 5c 73 72 63 5c 64 62 70 61 67 65 2e  TOP)\src\dbpage.
c4f0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c500: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c510: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c520: 28 54 4f 50 29 5c 73 72 63 5c 64 62 70 61 67 65  (TOP)\src\dbpage
c530: 2e 63 0a 0a 64 62 73 74 61 74 2e 6c 6f 3a 09 24  .c..dbstat.lo:.$c540: 28 54 4f 50 29 5c 73 72 63 5c 64 62 73 74 61 74 (TOP)\src\dbstat c550: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC c560: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
c570: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
c580: 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 73 74 61  $(TOP)\src\dbsta c590: 74 2e 63 0a 0a 64 65 6c 65 74 65 2e 6c 6f 3a 09 t.c..delete.lo:. c5a0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74$(TOP)\src\delet
c5b0: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
c5c0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ c5d0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c c5e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65$(TOP)\src\dele
c5f0: 74 65 2e 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09 24  te.c..expr.lo:.$c600: 28 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 (TOP)\src\expr.c c610: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c620: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c630: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c640: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a TOP)\src\expr.c. c650: 0a 66 61 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50 .fault.lo:.$(TOP
c660: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 20 24 28  )\src\fault.c $( c670: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c680: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c690: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c6a0: 29 5c 73 72 63 5c 66 61 75 6c 74 2e 63 0a 0a 66  )\src\fault.c..f
c6b0: 6b 65 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  key.lo:.$(TOP)\s c6c0: 72 63 5c 66 6b 65 79 2e 63 20 24 28 48 44 52 29 rc\fkey.c$(HDR)
c6d0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
c6e0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c6f0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr c700: 63 5c 66 6b 65 79 2e 63 0a 0a 66 75 6e 63 2e 6c c\fkey.c..func.l c710: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 o:.$(TOP)\src\fu
c720: 6e 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  nc.c $(HDR)..$(L
c730: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c740: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c750: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e c$(TOP)\src\fun
c760: 63 2e 63 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a 09  c.c..global.lo:.
c770: 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61  $(TOP)\src\globa c780: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 l.c$(HDR)..$(LT c790: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
c7a0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
c7b0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62   $(TOP)\src\glob c7c0: 61 6c 2e 63 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 al.c..hash.lo:.$
c7d0: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63  (TOP)\src\hash.c
c7e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c7f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c800: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c810: 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 0a  TOP)\src\hash.c.
c820: 0a 69 6e 73 65 72 74 2e 6c 6f 3a 09 24 28 54 4f  .insert.lo:.$(TO c830: 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 P)\src\insert.c c840: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP c850: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
c860: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T c870: 4f 50 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 OP)\src\insert.c c880: 0a 0a 6c 65 67 61 63 79 2e 6c 6f 3a 09 24 28 54 ..legacy.lo:.$(T
c890: 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63  OP)\src\legacy.c
c8a0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c8b0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c8c0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c8d0: 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e  TOP)\src\legacy.
c8e0: 63 0a 0a 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24  c..loadext.lo:.$c8f0: 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 (TOP)\src\loadex c900: 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 t.c$(HDR)..$(LT c910: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
c920: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
c930: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64   $(TOP)\src\load c940: 65 78 74 2e 63 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 ext.c..main.lo:. c950: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e$(TOP)\src\main.
c960: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c970: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c980: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c990: 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63  (TOP)\src\main.c
c9a0: 0a 0a 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24 28 54  ..malloc.lo:.$(T c9b0: 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 OP)\src\malloc.c c9c0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c9d0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c9e0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c9f0: 54 4f 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e TOP)\src\malloc. ca00: 63 0a 0a 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f c..mem0.lo:.$(TO
ca10: 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28  P)\src\mem0.c $( ca20: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
ca30: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL ca40: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
ca50: 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 0a 0a 6d 65  )\src\mem0.c..me
ca60: 6d 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  m1.lo:.$(TOP)\sr ca70: 63 5c 6d 65 6d 31 2e 63 20 24 28 48 44 52 29 0a c\mem1.c$(HDR).
ca80: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
ca90: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
caa0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src cab0: 5c 6d 65 6d 31 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f \mem1.c..mem2.lo cac0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d :.$(TOP)\src\mem
cad0: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  2.c $(HDR)..$(LT
cae0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ caf0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c cb00: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32$(TOP)\src\mem2
cb10: 2e 63 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54  .c..mem3.lo:.$(T cb20: 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24 OP)\src\mem3.c$
cb30: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI cb40: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
cb50: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO cb60: 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 0a 0a 6d P)\src\mem3.c..m cb70: 65 6d 35 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 em5.lo:.$(TOP)\s
cb80: 72 63 5c 6d 65 6d 35 2e 63 20 24 28 48 44 52 29  rc\mem5.c $(HDR) cb90: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $cba0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP cbb0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
cbc0: 63 5c 6d 65 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75  c\mem5.c..memjou
cbd0: 72 6e 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  rnal.lo:.$(TOP)\ cbe0: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 src\memjournal.c cbf0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM cc00: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
cc10: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( cc20: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 TOP)\src\memjour cc30: 6e 61 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a nal.c..mutex.lo: cc40: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 .$(TOP)\src\mute
cc50: 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  x.c $(HDR)..$(LT
cc60: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ cc70: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c cc80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65$(TOP)\src\mute
cc90: 78 2e 63 0a 0a 6d 75 74 65 78 5f 6e 6f 6f 70 2e  x.c..mutex_noop.
cca0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d  lo:.$(TOP)\src\m ccb0: 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 24 28 48 44 utex_noop.c$(HD
ccc0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) ccd0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cce0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ ccf0: 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 src\mutex_noop.c cd00: 0a 0a 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 3a ..mutex_unix.lo: cd10: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 .$(TOP)\src\mute
cd20: 78 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a  x_unix.c $(HDR). cd30: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( cd40: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT cd50: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
cd60: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d  \mutex_unix.c..m
cd70: 75 74 65 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54  utex_w32.lo:.$(T cd80: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 OP)\src\mutex_w3 cd90: 32 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 2.c$(HDR)..$(LT cda0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
cdb0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
cdc0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute cdd0: 78 5f 77 33 32 2e 63 0a 0a 6e 6f 74 69 66 79 2e x_w32.c..notify. cde0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6e lo:.$(TOP)\src\n
cdf0: 6f 74 69 66 79 2e 63 20 24 28 48 44 52 29 0a 09  otify.c $(HDR).. ce00: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C ce10: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS ce20: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
ce30: 6e 6f 74 69 66 79 2e 63 0a 0a 70 61 67 65 72 2e  notify.c..pager.
ce40: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70  lo:.$(TOP)\src\p ce50: 61 67 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 ager.c$(HDR) $( ce60: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 TOP)\src\pager.h ce70: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $ce80: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP ce90: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
cea0: 63 5c 70 61 67 65 72 2e 63 0a 0a 70 63 61 63 68  c\pager.c..pcach
ceb0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  e.lo:.$(TOP)\src cec0: 5c 70 63 61 63 68 65 2e 63 20 24 28 48 44 52 29 \pcache.c$(HDR)
ced0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63   $(TOP)\src\pcac cee0: 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c he.h..$(LTCOMPIL
cef0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL cf00: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
cf10: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 0a 0a  )\src\pcache.c..
cf20: 70 63 61 63 68 65 31 2e 6c 6f 3a 09 24 28 54 4f  pcache1.lo:.$(TO cf30: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 P)\src\pcache1.c cf40: 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73$(HDR) $(TOP)\s cf50: 72 63 5c 70 63 61 63 68 65 2e 68 0a 09 24 28 4c rc\pcache.h..$(L
cf60: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE cf70: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - cf80: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 c$(TOP)\src\pca
cf90: 63 68 65 31 2e 63 0a 0a 6f 73 2e 6c 6f 3a 09 24  che1.c..os.lo:.$cfa0: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 24 (TOP)\src\os.c$
cfb0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI cfc0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
cfd0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO cfe0: 50 29 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f 73 5f P)\src\os.c..os_ cff0: 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c unix.lo:.$(TOP)\
d000: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 24 28  src\os_unix.c $( d010: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
d020: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d030: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
d040: 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a  )\src\os_unix.c.
d050: 0a 6f 73 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f  .os_win.lo:.$(TO d060: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20 P)\src\os_win.c d070: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP d080: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
d090: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T d0a0: 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 OP)\src\os_win.c d0b0: 0a 0a 70 72 61 67 6d 61 2e 6c 6f 3a 09 24 28 54 ..pragma.lo:.$(T
d0c0: 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63  OP)\src\pragma.c
d0d0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
d0e0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM d0f0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
d100: 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e  TOP)\src\pragma.
d110: 63 0a 0a 70 72 65 70 61 72 65 2e 6c 6f 3a 09 24  c..prepare.lo:.$d120: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 (TOP)\src\prepar d130: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 e.c$(HDR)..$(LT d140: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d150: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
d160: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70   $(TOP)\src\prep d170: 61 72 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f are.c..printf.lo d180: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 :.$(TOP)\src\pri
d190: 6e 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ntf.c $(HDR)..$(
d1a0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d1b0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d1c0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 -c$(TOP)\src\pr
d1d0: 69 6e 74 66 2e 63 0a 0a 72 61 6e 64 6f 6d 2e 6c  intf.c..random.l
d1e0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 61  o:.$(TOP)\src\ra d1f0: 6e 64 6f 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 ndom.c$(HDR)..$d200: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
d210: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
d220: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72   -c $(TOP)\src\r d230: 61 6e 64 6f 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65 andom.c..resolve d240: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
d250: 72 65 73 6f 6c 76 65 2e 63 20 24 28 48 44 52 29  resolve.c $(HDR) d260: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d270: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d280: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
d290: 63 5c 72 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77  c\resolve.c..row
d2a0: 73 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  set.lo:.$(TOP)\s d2b0: 72 63 5c 72 6f 77 73 65 74 2e 63 20 24 28 48 44 rc\rowset.c$(HD
d2c0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) d2d0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
d2e0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ d2f0: 73 72 63 5c 72 6f 77 73 65 74 2e 63 0a 0a 73 65 src\rowset.c..se d300: 6c 65 63 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c lect.lo:.$(TOP)\
d310: 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 24 28 48  src\select.c $(H d320: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
d330: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE d340: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
d350: 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 0a 0a 73  \src\select.c..s
d360: 74 61 74 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 29  tatus.lo:.$(TOP) d370: 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 20 24 28 \src\status.c$(
d380: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL d390: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
d3a0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP d3b0: 29 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a )\src\status.c.. d3c0: 74 61 62 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 table.lo:.$(TOP)
d3d0: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 24 28 48  \src\table.c $(H d3e0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
d3f0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE d400: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
d410: 5c 73 72 63 5c 74 61 62 6c 65 2e 63 0a 0a 74 68  \src\table.c..th
d420: 72 65 61 64 73 2e 6c 6f 3a 09 24 28 54 4f 50 29  reads.lo:.$(TOP) d430: 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63 20 24 \src\threads.c$
d440: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI d450: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
d460: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO d470: 50 29 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63 P)\src\threads.c d480: 0a 0a 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a 09 24 ..tokenize.lo:.$
d490: 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69  (TOP)\src\tokeni
d4a0: 7a 65 2e 63 20 6b 65 79 77 6f 72 64 68 61 73 68  ze.c keywordhash
d4b0: 2e 68 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .h $(HDR)..$(LTC
d4c0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d4d0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d4e0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e$(TOP)\src\token
d4f0: 69 7a 65 2e 63 0a 0a 74 72 65 65 76 69 65 77 2e  ize.c..treeview.
d500: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74  lo:.$(TOP)\src\t d510: 72 65 65 76 69 65 77 2e 63 20 24 28 48 44 52 29 reeview.c$(HDR)
d520: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
d530: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
d540: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr d550: 63 5c 74 72 65 65 76 69 65 77 2e 63 0a 0a 74 72 c\treeview.c..tr d560: 69 67 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 igger.lo:.$(TOP)
d570: 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 20 24  \src\trigger.c $d580: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
d590: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI d5a0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
d5b0: 50 29 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63  P)\src\trigger.c
d5c0: 0a 0a 75 70 64 61 74 65 2e 6c 6f 3a 09 24 28 54  ..update.lo:.$(T d5d0: 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 OP)\src\update.c d5e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM d5f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d600: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( d610: 54 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e TOP)\src\update. d620: 63 0a 0a 75 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 c..utf.lo:.$(TOP
d630: 29 5c 73 72 63 5c 75 74 66 2e 63 20 24 28 48 44  )\src\utf.c $(HD d640: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
d650: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ d660: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
d670: 73 72 63 5c 75 74 66 2e 63 0a 0a 75 74 69 6c 2e  src\utf.c..util.
d680: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75  lo:.$(TOP)\src\u d690: 74 69 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 til.c$(HDR)..$( d6a0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
d6b0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
d6c0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74  -c $(TOP)\src\ut d6d0: 69 6c 2e 63 0a 0a 76 61 63 75 75 6d 2e 6c 6f 3a il.c..vacuum.lo: d6e0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 .$(TOP)\src\vacu
d6f0: 75 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  um.c $(HDR)..$(L
d700: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE d710: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - d720: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 c$(TOP)\src\vac
d730: 75 75 6d 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a 09  uum.c..vdbe.lo:.
d740: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e  $(TOP)\src\vdbe. d750: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO d760: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d770: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $d780: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 (TOP)\src\vdbe.c d790: 0a 0a 76 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28 ..vdbeapi.lo:.$(
d7a0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69  TOP)\src\vdbeapi
d7b0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
d7c0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d7d0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d7e0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61$(TOP)\src\vdbea
d7f0: 70 69 2e 63 0a 0a 76 64 62 65 61 75 78 2e 6c 6f  pi.c..vdbeaux.lo
d800: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  :.$(TOP)\src\vdb d810: 65 61 75 78 2e 63 20 24 28 48 44 52 29 0a 09 24 eaux.c$(HDR)..$d820: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
d830: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
d840: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76   -c $(TOP)\src\v d850: 64 62 65 61 75 78 2e 63 0a 0a 76 64 62 65 62 6c dbeaux.c..vdbebl d860: 6f 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 ob.lo:.$(TOP)\sr
d870: 63 5c 76 64 62 65 62 6c 6f 62 2e 63 20 24 28 48  c\vdbeblob.c $(H d880: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
d890: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE d8a0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
d8b0: 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a  \src\vdbeblob.c.
d8c0: 0a 76 64 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54  .vdbemem.lo:.$(T d8d0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e OP)\src\vdbemem. d8e0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO d8f0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d900: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $d910: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 (TOP)\src\vdbeme d920: 6d 2e 63 0a 0a 76 64 62 65 73 6f 72 74 2e 6c 6f m.c..vdbesort.lo d930: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 :.$(TOP)\src\vdb
d940: 65 73 6f 72 74 2e 63 20 24 28 48 44 52 29 0a 09  esort.c $(HDR).. d950: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C d960: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS d970: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
d980: 76 64 62 65 73 6f 72 74 2e 63 0a 0a 76 64 62 65  vdbesort.c..vdbe
d990: 74 72 61 63 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  trace.lo:.$(TOP) d9a0: 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 \src\vdbetrace.c d9b0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM d9c0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d9d0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( d9e0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 TOP)\src\vdbetra d9f0: 63 65 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24 ce.c..vtab.lo:.$
da00: 28 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63  (TOP)\src\vtab.c
da10: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
da20: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM da30: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
da40: 54 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 0a  TOP)\src\vtab.c.
da50: 0a 77 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  .wal.lo:.$(TOP)\ da60: 73 72 63 5c 77 61 6c 2e 63 20 24 28 48 44 52 29 src\wal.c$(HDR)
da70: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
da80: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
da90: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr daa0: 63 5c 77 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e c\wal.c..walker. dab0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 lo:.$(TOP)\src\w
dac0: 61 6c 6b 65 72 2e 63 20 24 28 48 44 52 29 0a 09  alker.c $(HDR).. dad0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C dae0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS daf0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
db00: 77 61 6c 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e  walker.c..where.
db10: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w db20: 68 65 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24 here.c$(HDR)..$db30: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
db40: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
db50: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77   -c $(TOP)\src\w db60: 68 65 72 65 2e 63 0a 0a 77 68 65 72 65 63 6f 64 here.c..wherecod db70: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 e.lo:.$(TOP)\src
db80: 5c 77 68 65 72 65 63 6f 64 65 2e 63 20 24 28 48  \wherecode.c $(H db90: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
dba0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE dbb0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
dbc0: 5c 73 72 63 5c 77 68 65 72 65 63 6f 64 65 2e 63  \src\wherecode.c
dbd0: 0a 0a 77 68 65 72 65 65 78 70 72 2e 6c 6f 3a 09  ..whereexpr.lo:.
dbe0: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65  $(TOP)\src\where dbf0: 65 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24 expr.c$(HDR)..$dc00: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
dc10: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
dc20: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77   -c $(TOP)\src\w dc30: 68 65 72 65 65 78 70 72 2e 63 0a 0a 74 63 6c 73 hereexpr.c..tcls dc40: 71 6c 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 qlite.lo:.$(TOP)
dc50: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63  \src\tclsqlite.c
dc60: 20 24 28 48 44 52 29 20 24 28 53 51 4c 49 54 45   $(HDR)$(SQLITE
dc70: 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 4c 54 43  _TCL_DEP)..$(LTC dc80: 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 OMPILE)$(NO_WAR
dc90: 4e 29 20 2d 44 55 53 45 5f 54 43 4c 5f 53 54 55  N) -DUSE_TCL_STU
dca0: 42 53 3d 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c  BS=1 -DBUILD_sql
dcb0: 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49  ite -I$(TCLINCDI dcc0: 52 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 R) -c$(TOP)\src
dcd0: 5c 74 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63  \tclsqlite.c..tc
dce0: 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f  lsqlite-shell.lo
dcf0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c  :.$(TOP)\src\tcl dd00: 73 71 6c 69 74 65 2e 63 20 24 28 48 44 52 29 20 sqlite.c$(HDR)
dd10: 24 28 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50  $(SQLITE_TCL_DEP dd20: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
dd30: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 54 43 4c  $(NO_WARN) -DTCL dd40: 53 48 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 SH -DBUILD_sqlit dd50: 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 e -I$(TCLINCDIR)
dd60: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t dd70: 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 clsqlite.c..tcls dd80: 71 6c 69 74 65 33 2e 65 78 65 3a 09 74 63 6c 73 qlite3.exe:.tcls dd90: 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 qlite-shell.lo$
dda0: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL ddb0: 49 54 45 33 48 29 20 24 28 4c 49 42 52 45 53 4f ITE3H)$(LIBRESO
ddc0: 42 4a 53 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  BJS)..$(LTLINK) ddd0: 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e$(SQLITE3C) /lin
dde0: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
ddf0: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL de00: 49 42 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 IBPATHS) /OUT:$@
de10: 20 74 63 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c   tclsqlite-shell
de20: 2e 6c 6f 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  .lo $(LIBRESOBJS de30: 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c )$(LTLIBS) $(TL de40: 49 42 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f IBS)..# Rules to de50: 20 62 75 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63 build opcodes.c de60: 20 61 6e 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23 and opcodes.h.# de70: 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f .opcodes.c:.opco de80: 64 65 73 2e 68 20 24 28 54 4f 50 29 5c 74 6f 6f des.h$(TOP)\too
de90: 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e 74 63 6c 0a  l\mkopcodec.tcl.
dea0: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
deb0: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f  TOP)\tool\mkopco
dec0: 64 65 63 2e 74 63 6c 20 6f 70 63 6f 64 65 73 2e  dec.tcl opcodes.
ded0: 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 6f  h > opcodes.c..o
dee0: 70 63 6f 64 65 73 2e 68 3a 09 70 61 72 73 65 2e  pcodes.h:.parse.
def0: 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  h $(TOP)\src\vdb df00: 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c e.c$(TOP)\tool\
df10: 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 6c 0a 09 74  mkopcodeh.tcl..t
df20: 79 70 65 20 70 61 72 73 65 2e 68 20 24 28 54 4f  ype parse.h $(TO df30: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 7c 20 P)\src\vdbe.c | df40: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54$(TCLSH_CMD) $(T df50: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 OP)\tool\mkopcod df60: 65 68 2e 74 63 6c 20 3e 20 6f 70 63 6f 64 65 73 eh.tcl > opcodes df70: 2e 68 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 .h..# Rules to b df80: 75 69 6c 64 20 70 61 72 73 65 2e 63 20 61 6e 64 uild parse.c and df90: 20 70 61 72 73 65 2e 68 20 2d 20 74 68 65 20 6f parse.h - the o dfa0: 75 74 70 75 74 73 20 6f 66 20 6c 65 6d 6f 6e 2e utputs of lemon. dfb0: 0a 23 0a 70 61 72 73 65 2e 68 3a 09 70 61 72 73 .#.parse.h:.pars dfc0: 65 2e 63 0a 0a 70 61 72 73 65 2e 63 3a 09 24 28 e.c..parse.c:.$(
dfd0: 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79  TOP)\src\parse.y
dfe0: 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 54 4f 50   lemon.exe $(TOP dff0: 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 65 )\tool\addopcode e000: 73 2e 74 63 6c 0a 09 64 65 6c 20 2f 51 20 70 61 s.tcl..del /Q pa e010: 72 73 65 2e 79 20 70 61 72 73 65 2e 68 20 70 61 rse.y parse.h pa e020: 72 73 65 2e 68 2e 74 65 6d 70 20 32 3e 4e 55 4c rse.h.temp 2>NUL e030: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 72 ..copy$(TOP)\sr
e040: 63 5c 70 61 72 73 65 2e 79 20 2e 0a 09 2e 5c 6c  c\parse.y ....\l
e050: 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 51 5f 46  emon.exe $(REQ_F e060: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 EATURE_FLAGS)$(
e070: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
e080: 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45  S) $(EXT_FEATURE e090: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20 _FLAGS)$(OPTS)
e0a0: 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20 70 61  parse.y..move pa
e0b0: 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74 65  rse.h parse.h.te
e0c0: 6d 70 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  mp..$(TCLSH_CMD) e0d0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64$(TOP)\tool\add
e0e0: 6f 70 63 6f 64 65 73 2e 74 63 6c 20 70 61 72 73  opcodes.tcl pars
e0f0: 65 2e 68 2e 74 65 6d 70 20 3e 20 70 61 72 73 65  e.h.temp > parse
e100: 2e 68 0a 0a 24 28 53 51 4c 49 54 45 33 48 29 3a  .h..$(SQLITE3H): e110: 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 .$(TOP)\src\sqli
e120: 74 65 2e 68 2e 69 6e 20 24 28 54 4f 50 29 5c 6d  te.h.in $(TOP)\m e130: 61 6e 69 66 65 73 74 20 6d 6b 73 6f 75 72 63 65 anifest mksource e140: 69 64 2e 65 78 65 20 24 28 54 4f 50 29 5c 56 45 id.exe$(TOP)\VE
e150: 52 53 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43  RSION..$(TCLSH_C e160: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
e170: 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 24  mksqlite3h.tcl $e180: 28 54 4f 50 3a 5c 3d 2f 29 20 3e 20 24 28 53 51 (TOP:\=/) >$(SQ
e190: 4c 49 54 45 33 48 29 20 24 28 4d 4b 53 51 4c 49  LITE3H) $(MKSQLI e1a0: 54 45 33 48 5f 41 52 47 53 29 0a 0a 73 71 6c 69 TE3H_ARGS)..sqli e1b0: 74 65 33 65 78 74 2e 68 3a 09 2e 74 61 72 67 65 te3ext.h:..targe e1c0: 74 5f 73 6f 75 72 63 65 0a 21 49 46 20 24 28 55 t_source.!IF$(U
e1d0: 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c  SE_STDCALL)!=0 |
e1e0: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  | $(FOR_WIN10)!= e1f0: 30 0a 09 74 79 70 65 20 74 73 72 63 5c 73 71 6c 0..type tsrc\sql e200: 69 74 65 33 65 78 74 2e 68 20 7c 20 24 28 54 43 ite3ext.h |$(TC
e210: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\ e220: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c tool\replace.tcl e230: 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 5c 29 22 regsub "$$\*$$" e240: 20 22 28 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 "(SQLITE_CALLBA e250: 43 4b 20 2a 29 22 20 5c 0a 09 09 7c 20 24 28 54 CK *)" \...|$(T
e260: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) e270: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 \tool\replace.tc e280: 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 22 20 l regsub "\(\*" e290: 22 28 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c "(SQLITE_APICALL e2a0: 20 2a 22 20 3e 20 73 71 6c 69 74 65 33 65 78 74 *" > sqlite3ext e2b0: 2e 68 0a 09 63 6f 70 79 20 2f 59 20 73 71 6c 69 .h..copy /Y sqli e2c0: 74 65 33 65 78 74 2e 68 20 74 73 72 63 5c 73 71 te3ext.h tsrc\sq e2d0: 6c 69 74 65 33 65 78 74 2e 68 0a 21 45 4c 53 45 lite3ext.h.!ELSE e2e0: 0a 09 63 6f 70 79 20 2f 59 20 74 73 72 63 5c 73 ..copy /Y tsrc\s e2f0: 71 6c 69 74 65 33 65 78 74 2e 68 20 73 71 6c 69 qlite3ext.h sqli e300: 74 65 33 65 78 74 2e 68 0a 21 45 4e 44 49 46 0a te3ext.h.!ENDIF. e310: 0a 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 .mkkeywordhash.e e320: 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c xe:.$(TOP)\tool\
e330: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 0a  mkkeywordhash.c.
e340: 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41 52  .$(BCC)$(NO_WAR
e350: 4e 29 20 2d 46 65 24 40 20 24 28 52 45 51 5f 46  N) -Fe$@$(REQ_F
e360: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28  EATURE_FLAGS) $( e370: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG e380: 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 S)$(EXT_FEATURE
e390: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20  _FLAGS) $(OPTS) e3a0: 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c \...$(TOP)\tool\
e3b0: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63 20  mkkeywordhash.c
e3c0: 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS) e3d0: 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20$(NLTLINKOPTS)
e3e0: 24 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a  $(NLTLIBPATHS).. e3f0: 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 keywordhash.h:.$
e400: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79  (TOP)\tool\mkkey
e410: 77 6f 72 64 68 61 73 68 2e 63 20 6d 6b 6b 65 79  wordhash.c mkkey
e420: 77 6f 72 64 68 61 73 68 2e 65 78 65 0a 09 2e 5c  wordhash.exe...\
e430: 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78  mkkeywordhash.ex
e440: 65 20 3e 20 6b 65 79 77 6f 72 64 68 61 73 68 2e  e > keywordhash.
e450: 68 0a 0a 23 20 53 6f 75 72 63 65 20 66 69 6c 65  h..# Source file
e460: 73 20 74 68 61 74 20 67 6f 20 69 6e 74 6f 20 6d  s that go into m
e470: 61 6b 69 6e 67 20 73 68 65 6c 6c 2e 63 0a 53 48  aking shell.c.SH
e480: 45 4c 4c 5f 53 52 43 20 3d 20 5c 0a 09 24 28 54  ELL_SRC = \..$(T e490: 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 2e OP)\src\shell.c. e4a0: 69 6e 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 in \..$(TOP)\ext
e4b0: 5c 6d 69 73 63 5c 73 68 61 74 68 72 65 65 2e 63  \misc\shathree.c
e4c0: 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d   \..$(TOP)\ext\m e4d0: 69 73 63 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 09 isc\fileio.c \.. e4e0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
e4f0: 63 6f 6d 70 6c 65 74 69 6f 6e 2e 63 20 5c 0a 09  completion.c \..
e500: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\ e510: 73 71 6c 61 72 2e 63 20 5c 0a 09 24 28 54 4f 50 sqlar.c \..$(TOP
e520: 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71 6c  )\ext\expert\sql
e530: 69 74 65 33 65 78 70 65 72 74 2e 63 20 5c 0a 09  ite3expert.c \..
e540: 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72  $(TOP)\ext\exper e550: 74 5c 73 71 6c 69 74 65 33 65 78 70 65 72 74 2e t\sqlite3expert. e560: 68 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c h \..$(TOP)\ext\
e570: 6d 69 73 63 5c 7a 69 70 66 69 6c 65 2e 63 0a 0a  misc\zipfile.c..
e580: 73 68 65 6c 6c 2e 63 3a 09 24 28 53 48 45 4c 4c  shell.c:.$(SHELL e590: 5f 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f 6f _SRC)$(TOP)\too
e5a0: 6c 5c 6d 6b 73 68 65 6c 6c 63 2e 74 63 6c 0a 09  l\mkshellc.tcl..
e5b0: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
e5c0: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 68 65 6c 6c  OP)\tool\mkshell
e5d0: 63 2e 74 63 6c 20 3e 20 73 68 65 6c 6c 2e 63 0a  c.tcl > shell.c.
e5e0: 0a 7a 6c 69 62 3a 0a 09 70 75 73 68 64 20 24 28  .zlib:..pushd $( e5f0: 5a 4c 49 42 44 49 52 29 20 26 26 20 24 28 4d 41 ZLIBDIR) &&$(MA
e600: 4b 45 29 20 2f 66 20 77 69 6e 33 32 5c 4d 61 6b  KE) /f win32\Mak
e610: 65 66 69 6c 65 2e 6d 73 63 20 63 6c 65 61 6e 20  efile.msc clean
e620: 24 28 5a 4c 49 42 4c 49 42 29 20 26 26 20 70 6f  $(ZLIBLIB) && po e630: 70 64 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 pd..# Rules to b e640: 75 69 6c 64 20 74 68 65 20 65 78 74 65 6e 73 69 uild the extensi e650: 6f 6e 20 6f 62 6a 65 63 74 73 2e 0a 23 0a 69 63 on objects..#.ic e660: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 u.lo:.$(TOP)\ext
e670: 5c 69 63 75 5c 69 63 75 2e 63 20 24 28 48 44 52  \icu\icu.c $(HDR e680: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L e690: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
e6a0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $e6b0: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI e6c0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
e6d0: 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 0a  )\ext\icu\icu.c.
e6e0: 0a 66 74 73 32 2e 6c 6f 3a 09 24 28 54 4f 50 29  .fts2.lo:.$(TOP) e6f0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 \ext\fts2\fts2.c e700: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR e710: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
e720: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O e730: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
e740: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
e750: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 e760: 5c 66 74 73 32 2e 63 0a 0a 66 74 73 32 5f 68 61 \fts2.c..fts2_ha e770: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 sh.lo:.$(TOP)\ex
e780: 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68  t\fts2\fts2_hash
e790: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR)$(EXTH
e7a0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE e7b0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
e7c0: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e  _OPTS) $(NO_WARN e7d0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 ) -DSQLITE_CORE e7e0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 -c$(TOP)\ext\ft
e7f0: 73 32 5c 66 74 73 32 5f 68 61 73 68 2e 63 0a 0a  s2\fts2_hash.c..
e800: 66 74 73 32 5f 69 63 75 2e 6c 6f 3a 09 24 28 54  fts2_icu.lo:.$(T e810: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts e820: 32 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20 24 2_icu.c$(HDR) $e830: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
e840: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO e850: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f MPILE_OPTS)$(NO
e860: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
e870: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e e880: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 xt\fts2\fts2_icu e890: 2e 63 0a 0a 66 74 73 32 5f 70 6f 72 74 65 72 2e .c..fts2_porter. e8a0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
e8b0: 74 73 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e  ts2\fts2_porter.
e8c0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
e8d0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) e8e0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
e8f0: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29  OPTS) $(NO_WARN) e900: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - e910: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 c$(TOP)\ext\fts
e920: 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 0a  2\fts2_porter.c.
e930: 0a 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  .fts2_tokenizer.
e940: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f e950: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a ts2\fts2_tokeniz e960: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 er.c$(HDR) $(EX e970: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
e980: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI e990: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
e9a0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
e9b0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ e9c0: 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 fts2\fts2_tokeni e9d0: 7a 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 zer.c..fts2_toke e9e0: 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 nizer1.lo:.$(TOP
e9f0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
ea00: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48  tokenizer1.c $(H ea10: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 DR)$(EXTHDR)..$ea20: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
ea30: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
ea40: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ ea50: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 LITE_CORE -c$(T
ea60: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
ea70: 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a  2_tokenizer1.c..
ea80: 66 74 73 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  fts3.lo:.$(TOP)\ ea90: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 20 ext\fts3\fts3.c eaa0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) eab0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $eac0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP ead0: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d TS)$(NO_WARN) -
eae0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
eaf0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ eb00: 66 74 73 33 2e 63 0a 0a 66 74 73 33 5f 61 75 78 fts3.c..fts3_aux eb10: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c .lo:.$(TOP)\ext\
eb20: 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 20  fts3\fts3_aux.c
eb30: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
eb40: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
eb50: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
eb60: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - eb70: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c eb80: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
eb90: 66 74 73 33 5f 61 75 78 2e 63 0a 0a 66 74 73 33  fts3_aux.c..fts3
eba0: 5f 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  _expr.lo:.$(TOP) ebb0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 \ext\fts3\fts3_e ebc0: 78 70 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 xpr.c$(HDR) $(E ebd0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
ebe0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP ebf0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
ec00: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
ec10: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext ec20: 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e \fts3\fts3_expr. ec30: 63 0a 0a 66 74 73 33 5f 68 61 73 68 2e 6c 6f 3a c..fts3_hash.lo: ec40: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 .$(TOP)\ext\fts3
ec50: 5c 66 74 73 33 5f 68 61 73 68 2e 63 20 24 28 48  \fts3_hash.c $(H ec60: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 DR)$(EXTHDR)..$ec70: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
ec80: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
ec90: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ eca0: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 LITE_CORE -c$(T
ecb0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
ecc0: 33 5f 68 61 73 68 2e 63 0a 0a 66 74 73 33 5f 69  3_hash.c..fts3_i
ecd0: 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  cu.lo:.$(TOP)\ex ece0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e t\fts3\fts3_icu. ecf0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD ed00: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
ed10: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ ed20: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 OPTS)$(NO_WARN)
ed30: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
ed40: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts ed50: 33 5c 66 74 73 33 5f 69 63 75 2e 63 0a 0a 66 74 3\fts3_icu.c..ft ed60: 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 3a 09 24 s3_snippet.lo:.$
ed70: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
ed80: 74 73 33 5f 73 6e 69 70 70 65 74 2e 63 20 24 28  ts3_snippet.c $( ed90: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
eda0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
edb0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
edc0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS edd0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
ede0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
edf0: 73 33 5f 73 6e 69 70 70 65 74 2e 63 0a 0a 66 74  s3_snippet.c..ft
ee00: 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28  s3_porter.lo:.$( ee10: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft ee20: 73 33 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44 s3_porter.c$(HD
ee30: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
ee40: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR ee50: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) ee60: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
ee70: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO ee80: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 ee90: 5f 70 6f 72 74 65 72 2e 63 0a 0a 66 74 73 33 5f _porter.c..fts3_ eea0: 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 tokenizer.lo:.$(
eeb0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
eec0: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24  s3_tokenizer.c $eed0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a (HDR)$(EXTHDR).
eee0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
eef0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
ef00: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D ef10: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 SQLITE_CORE -c$
ef20: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
ef30: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a  ts3_tokenizer.c.
ef40: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31  .fts3_tokenizer1
ef50: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ ef60: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni ef70: 7a 65 72 31 2e 63 20 24 28 48 44 52 29 20 24 28 zer1.c$(HDR) $( ef80: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
ef90: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM efa0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f PILE_OPTS)$(NO_
efb0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
efc0: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex efd0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 t\fts3\fts3_toke efe0: 6e 69 7a 65 72 31 2e 63 0a 0a 66 74 73 33 5f 74 nizer1.c..fts3_t eff0: 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 6c 6f 3a okenize_vtab.lo: f000: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 .$(TOP)\ext\fts3
f010: 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76  \fts3_tokenize_v
f020: 74 61 62 2e 63 20 24 28 48 44 52 29 20 24 28 45  tab.c $(HDR)$(E
f030: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP f040: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
f050: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W f060: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO f070: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
f080: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e  \fts3\fts3_token
f090: 69 7a 65 5f 76 74 61 62 2e 63 0a 0a 66 74 73 33  ize_vtab.c..fts3
f0a0: 5f 75 6e 69 63 6f 64 65 2e 6c 6f 3a 09 24 28 54  _unicode.lo:.$(T f0b0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts f0c0: 33 5f 75 6e 69 63 6f 64 65 2e 63 20 24 28 48 44 3_unicode.c$(HD
f0d0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
f0e0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR f0f0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) f100: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
f110: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO f120: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 f130: 5f 75 6e 69 63 6f 64 65 2e 63 0a 0a 66 74 73 33 _unicode.c..fts3 f140: 5f 75 6e 69 63 6f 64 65 32 2e 6c 6f 3a 09 24 28 _unicode2.lo:.$(
f150: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
f160: 73 33 5f 75 6e 69 63 6f 64 65 32 2e 63 20 24 28  s3_unicode2.c $( f170: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
f180: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
f190: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
f1a0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS f1b0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
f1c0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
f1d0: 73 33 5f 75 6e 69 63 6f 64 65 32 2e 63 0a 0a 66  s3_unicode2.c..f
f1e0: 74 73 33 5f 77 72 69 74 65 2e 6c 6f 3a 09 24 28  ts3_write.lo:.$( f1f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft f200: 73 33 5f 77 72 69 74 65 2e 63 20 24 28 48 44 52 s3_write.c$(HDR
f210: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
f220: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE f230: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
f240: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
f250: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP f260: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ f270: 77 72 69 74 65 2e 63 0a 0a 72 74 72 65 65 2e 6c write.c..rtree.l f280: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 o:.$(TOP)\ext\rt
f290: 72 65 65 5c 72 74 72 65 65 2e 63 20 24 28 48 44  ree\rtree.c $(HD f2a0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( f2b0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
f2c0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
f2d0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL f2e0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
f2f0: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72  P)\ext\rtree\rtr
f300: 65 65 2e 63 0a 0a 73 71 6c 69 74 65 33 73 65 73  ee.c..sqlite3ses
f310: 73 69 6f 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  sion.lo:.$(TOP)\ f320: 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 ext\session\sqli f330: 74 65 33 73 65 73 73 69 6f 6e 2e 63 20 24 28 48 te3session.c$(H
f340: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
f350: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO f360: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) f370: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51$(NO_WARN) -DSQ
f380: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T f390: 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c OP)\ext\session\ f3a0: 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 63 sqlite3session.c f3b0: 0a 0a 23 20 46 54 53 35 20 74 68 69 6e 67 73 0a ..# FTS5 things. f3c0: 23 0a 46 54 53 35 5f 53 52 43 20 3d 20 5c 0a 20 #.FTS5_SRC = \. f3d0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
f3e0: 35 5c 66 74 73 35 2e 68 20 5c 0a 20 20 20 24 28  5\fts5.h \.   $( f3f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 TOP)\ext\fts5\ft f400: 73 35 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 s5Int.h \.$(T
f410: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
f420: 35 5f 61 75 78 2e 63 20 5c 0a 20 20 20 24 28 54  5_aux.c \.   $(T f430: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts f440: 35 5f 62 75 66 66 65 72 2e 63 20 5c 0a 20 20 20 5_buffer.c \. f450: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
f460: 66 74 73 35 5f 6d 61 69 6e 2e 63 20 5c 0a 20 20  fts5_main.c \.
f470: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35   $(TOP)\ext\fts5 f480: 5c 66 74 73 35 5f 63 6f 6e 66 69 67 2e 63 20 5c \fts5_config.c \ f490: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 .$(TOP)\ext\f
f4a0: 74 73 35 5c 66 74 73 35 5f 65 78 70 72 2e 63 20  ts5\fts5_expr.c
f4b0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ f4c0: 66 74 73 35 5c 66 74 73 35 5f 68 61 73 68 2e 63 fts5\fts5_hash.c f4d0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
f4e0: 5c 66 74 73 35 5c 66 74 73 35 5f 69 6e 64 65 78  \fts5\fts5_index
f4f0: 2e 63 20 5c 0a 20 20 20 66 74 73 35 70 61 72 73  .c \.   fts5pars
f500: 65 2e 63 20 66 74 73 35 70 61 72 73 65 2e 68 20  e.c fts5parse.h
f510: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ f520: 66 74 73 35 5c 66 74 73 35 5f 73 74 6f 72 61 67 fts5\fts5_storag f530: 65 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c e.c \.$(TOP)\
f540: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 74 6f  ext\fts5\fts5_to
f550: 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 20 24 28  kenize.c \.   $( f560: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 TOP)\ext\fts5\ft f570: 73 35 5f 75 6e 69 63 6f 64 65 32 2e 63 20 5c 0a s5_unicode2.c \. f580: 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74$(TOP)\ext\ft
f590: 73 35 5c 66 74 73 35 5f 76 61 72 69 6e 74 2e 63  s5\fts5_varint.c
f5a0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext f5b0: 5c 66 74 73 35 5c 66 74 73 35 5f 76 6f 63 61 62 \fts5\fts5_vocab f5c0: 2e 63 0a 0a 4c 53 4d 31 5f 53 52 43 20 3d 20 5c .c..LSM1_SRC = \ f5d0: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c .$(TOP)\ext\l
f5e0: 73 6d 31 5c 6c 73 6d 2e 68 20 5c 0a 20 20 20 24  sm1\lsm.h \.   $f5f0: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c (TOP)\ext\lsm1\l f600: 73 6d 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 smInt.h \.$(T
f610: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d  OP)\ext\lsm1\lsm
f620: 5f 63 6b 70 74 2e 63 20 5c 0a 20 20 20 24 28 54  _ckpt.c \.   $(T f630: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d OP)\ext\lsm1\lsm f640: 5f 66 69 6c 65 2e 63 20 5c 0a 20 20 20 24 28 54 _file.c \.$(T
f650: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d  OP)\ext\lsm1\lsm
f660: 5f 6c 6f 67 2e 63 20 5c 0a 20 20 20 24 28 54 4f  _log.c \.   $(TO f670: 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f P)\ext\lsm1\lsm_ f680: 6d 61 69 6e 2e 63 20 5c 0a 20 20 20 24 28 54 4f main.c \.$(TO
f690: 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f  P)\ext\lsm1\lsm_
f6a0: 6d 65 6d 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50  mem.c \.   $(TOP f6b0: 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 6d )\ext\lsm1\lsm_m f6c0: 75 74 65 78 2e 63 20 5c 0a 20 20 20 24 28 54 4f utex.c \.$(TO
f6d0: 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f  P)\ext\lsm1\lsm_
f6e0: 73 68 61 72 65 64 2e 63 20 5c 0a 20 20 20 24 28  shared.c \.   $( f6f0: 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 TOP)\ext\lsm1\ls f700: 6d 5f 73 6f 72 74 65 64 2e 63 20 5c 0a 20 20 20 m_sorted.c \. f710: 24 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c$(TOP)\ext\lsm1\
f720: 6c 73 6d 5f 73 74 72 2e 63 20 5c 0a 20 20 20 24  lsm_str.c \.   $f730: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c (TOP)\ext\lsm1\l f740: 73 6d 5f 74 72 65 65 2e 63 20 5c 0a 20 20 20 24 sm_tree.c \.$
f750: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c  (TOP)\ext\lsm1\l
f760: 73 6d 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 20 24  sm_unix.c \.   $f770: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c (TOP)\ext\lsm1\l f780: 73 6d 5f 76 61 72 69 6e 74 2e 63 20 5c 0a 20 20 sm_varint.c \. f790: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31$(TOP)\ext\lsm1
f7a0: 5c 6c 73 6d 5f 76 74 61 62 2e 63 20 5c 0a 20 20  \lsm_vtab.c \.
f7b0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31   $(TOP)\ext\lsm1 f7c0: 5c 6c 73 6d 5f 77 69 6e 33 32 2e 63 0a 0a 66 74 \lsm_win32.c..ft f7d0: 73 35 70 61 72 73 65 2e 63 3a 09 24 28 54 4f 50 s5parse.c:.$(TOP
f7e0: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 70  )\ext\fts5\fts5p
f7f0: 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65  arse.y lemon.exe
f800: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 78  ..copy $(TOP)\ex f810: 74 5c 66 74 73 35 5c 66 74 73 35 70 61 72 73 65 t\fts5\fts5parse f820: 2e 79 20 2e 0a 09 64 65 6c 20 2f 51 20 66 74 73 .y ...del /Q fts f830: 35 70 61 72 73 65 2e 68 20 32 3e 4e 55 4c 0a 09 5parse.h 2>NUL.. f840: 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 .\lemon.exe$(RE
f850: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
f860: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F f870: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
f880: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT f890: 53 29 20 66 74 73 35 70 61 72 73 65 2e 79 0a 0a S) fts5parse.y.. f8a0: 66 74 73 35 70 61 72 73 65 2e 68 3a 09 66 74 73 fts5parse.h:.fts f8b0: 35 70 61 72 73 65 2e 63 0a 0a 66 74 73 35 2e 63 5parse.c..fts5.c f8c0: 3a 09 24 28 46 54 53 35 5f 53 52 43 29 0a 09 24 :.$(FTS5_SRC)..$f8d0: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f (TCLSH_CMD)$(TO
f8e0: 50 29 5c 65 78 74 5c 66 74 73 35 5c 74 6f 6f 6c  P)\ext\fts5\tool
f8f0: 5c 6d 6b 66 74 73 35 63 2e 74 63 6c 0a 09 63 6f  \mkfts5c.tcl..co
f900: 70 79 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  py $(TOP)\ext\ft f910: 73 35 5c 66 74 73 35 2e 68 20 2e 0a 0a 6c 73 6d s5\fts5.h ...lsm f920: 31 2e 63 3a 09 24 28 4c 53 4d 31 5f 53 52 43 29 1.c:.$(LSM1_SRC)
f930: 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  ..$(TCLSH_CMD)$
f940: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 74  (TOP)\ext\lsm1\t
f950: 6f 6f 6c 5c 6d 6b 6c 73 6d 31 63 2e 74 63 6c 0a  ool\mklsm1c.tcl.
f960: 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 74  .copy $(TOP)\ext f970: 5c 6c 73 6d 31 5c 6c 73 6d 2e 68 20 2e 0a 0a 66 \lsm1\lsm.h ...f f980: 74 73 35 2e 6c 6f 3a 09 66 74 73 35 2e 63 20 24 ts5.lo:.fts5.c$
f990: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). f9a0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( f9b0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT f9c0: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 S)$(NO_WARN) -D
f9d0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 66  SQLITE_CORE -c f
f9e0: 74 73 35 2e 63 0a 0a 66 74 73 35 5f 65 78 74 2e  ts5.c..fts5_ext.
f9f0: 6c 6f 3a 09 66 74 73 35 2e 63 20 24 28 48 44 52  lo:.fts5.c $(HDR fa00: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L fa10: 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 TCOMPILE)$(NO_W
fa20: 41 52 4e 29 20 2d 63 20 66 74 73 35 2e 63 0a 0a  ARN) -c fts5.c..
fa30: 66 74 73 35 2e 64 6c 6c 3a 09 66 74 73 35 5f 65  fts5.dll:.fts5_e
fa40: 78 74 2e 6c 6f 0a 09 24 28 4c 44 29 20 24 28 4c  xt.lo..$(LD)$(L
fa50: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK fa60: 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 OPTS)$(LTLIBPAT
fa70: 48 53 29 20 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40  HS) /DLL /OUT:$@ fa80: 20 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 0a 73 71 fts5_ext.lo..sq fa90: 6c 69 74 65 33 72 62 75 2e 6c 6f 3a 09 24 28 54 lite3rbu.lo:.$(T
faa0: 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69  OP)\ext\rbu\sqli
fab0: 74 65 33 72 62 75 2e 63 20 24 28 48 44 52 29 20  te3rbu.c $(HDR) fac0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC fad0: 4f 4d 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 OMPILE) -DSQLITE fae0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
faf0: 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72  ext\rbu\sqlite3r
fb00: 62 75 2e 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f  bu.c..# Rules to
fb10: 20 62 75 69 6c 64 20 74 68 65 20 27 74 65 73 74   build the 'test
fb20: 66 69 78 74 75 72 65 27 20 61 70 70 6c 69 63 61  fixture' applica
fb30: 74 69 6f 6e 2e 0a 23 0a 23 20 49 66 20 75 73 69  tion..#.# If usi
fb40: 6e 67 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74  ng the amalgamat
fb50: 69 6f 6e 2c 20 75 73 65 20 73 71 6c 69 74 65 33  ion, use sqlite3
fb60: 2e 63 20 64 69 72 65 63 74 6c 79 20 74 6f 20 62  .c directly to b
fb70: 75 69 6c 64 20 74 68 65 20 74 65 73 74 0a 23 20  uild the test.#
fb80: 66 69 78 74 75 72 65 2e 20 20 4f 74 68 65 72 77  fixture.  Otherw
fb90: 69 73 65 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74  ise link against
fba0: 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 2e   libsqlite3.lib.
fbb0: 20 20 28 54 68 69 73 20 64 69 73 74 69 6e 63 74    (This distinct
fbc0: 69 6f 6e 20 69 73 0a 23 20 6e 65 63 65 73 73 61  ion is.# necessa
fbd0: 72 79 20 62 65 63 61 75 73 65 20 74 68 65 20 74  ry because the t
fbe0: 65 73 74 20 66 69 78 74 75 72 65 20 72 65 71 75  est fixture requ
fbf0: 69 72 65 73 20 6e 6f 6e 2d 41 50 49 20 73 79 6d  ires non-API sym
fc00: 62 6f 6c 73 20 77 68 69 63 68 20 61 72 65 0a 23  bols which are.#
fc10: 20 68 69 64 64 65 6e 20 77 68 65 6e 20 74 68 65   hidden when the
fc20: 20 6c 69 62 72 61 72 79 20 69 73 20 62 75 69 6c   library is buil
fc30: 74 20 76 69 61 20 74 68 65 20 61 6d 61 6c 67 61  t via the amalga
fc40: 6d 61 74 69 6f 6e 29 2e 0a 23 0a 54 45 53 54 46  mation)..#.TESTF
fc50: 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 2d  IXTURE_FLAGS = -
fc60: 44 54 43 4c 53 48 5f 49 4e 49 54 5f 50 52 4f 43  DTCLSH_INIT_PROC
fc70: 3d 73 71 6c 69 74 65 33 54 65 73 74 49 6e 69 74  =sqlite3TestInit
fc80: 20 2d 44 53 51 4c 49 54 45 5f 54 45 53 54 3d 31   -DSQLITE_TEST=1
fc90: 20 2d 44 53 51 4c 49 54 45 5f 43 52 41 53 48 5f   -DSQLITE_CRASH_
fca0: 54 45 53 54 3d 31 0a 54 45 53 54 46 49 58 54 55  TEST=1.TESTFIXTU
fcb0: 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53  RE_FLAGS = $(TES fcc0: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) fcd0: 2d 44 53 51 4c 49 54 45 5f 53 45 52 56 45 52 3d -DSQLITE_SERVER= fce0: 31 20 2d 44 53 51 4c 49 54 45 5f 50 52 49 56 41 1 -DSQLITE_PRIVA fcf0: 54 45 3d 22 22 0a 54 45 53 54 46 49 58 54 55 52 TE="".TESTFIXTUR fd00: 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 E_FLAGS =$(TEST
fd10: 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d  FIXTURE_FLAGS) -
fd20: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 24 28 4e  DSQLITE_CORE $(N fd30: 4f 5f 57 41 52 4e 29 0a 54 45 53 54 46 49 58 54 O_WARN).TESTFIXT fd40: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 URE_FLAGS =$(TE
fd50: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29  STFIXTURE_FLAGS)
fd60: 20 2d 44 53 51 4c 49 54 45 5f 53 45 52 49 45 53   -DSQLITE_SERIES
fd70: 5f 43 4f 4e 53 54 52 41 49 4e 54 5f 56 45 52 49  _CONSTRAINT_VERI
fd80: 46 59 3d 31 0a 54 45 53 54 46 49 58 54 55 52 45  FY=1.TESTFIXTURE
fd90: 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46  _FLAGS = $(TESTF fda0: 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 IXTURE_FLAGS) -D fdb0: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 50 SQLITE_DEFAULT_P fdc0: 41 47 45 5f 53 49 5a 45 3d 31 30 32 34 0a 54 45 AGE_SIZE=1024.TE fdd0: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 STFIXTURE_FLAGS fde0: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f =$(TESTFIXTURE_
fdf0: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
fe00: 45 4e 41 42 4c 45 5f 53 54 4d 54 56 54 41 42 0a  ENABLE_STMTVTAB.
fe10: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
fe20: 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52  S = $(TESTFIXTUR fe30: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 E_FLAGS) -DSQLIT fe40: 45 5f 45 4e 41 42 4c 45 5f 44 42 50 41 47 45 5f E_ENABLE_DBPAGE_ fe50: 56 54 41 42 0a 54 45 53 54 46 49 58 54 55 52 45 VTAB.TESTFIXTURE fe60: 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 _FLAGS =$(TESTF
fe70: 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28  IXTURE_FLAGS) $( fe80: 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 TEST_CCONV_OPTS) fe90: 0a 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 ..TESTFIXTURE_SR fea0: 43 30 20 3d 20 24 28 54 45 53 54 45 58 54 29 20 C0 =$(TESTEXT)
feb0: 24 28 54 45 53 54 53 52 43 32 29 0a 54 45 53 54  $(TESTSRC2).TEST fec0: 46 49 58 54 55 52 45 5f 53 52 43 31 20 3d 20 24 FIXTURE_SRC1 =$
fed0: 28 54 45 53 54 45 58 54 29 20 24 28 53 51 4c 49  (TESTEXT) $(SQLI fee0: 54 45 33 43 29 0a 21 49 46 20 24 28 55 53 45 5f TE3C).!IF$(USE_
fef0: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30  AMALGAMATION)==0
ff00: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43  .TESTFIXTURE_SRC
ff10: 20 3d 20 24 28 54 45 53 54 53 52 43 29 20 24 28   = $(TESTSRC)$(
ff20: 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69  TOP)\src\tclsqli
ff30: 74 65 2e 63 20 24 28 54 45 53 54 46 49 58 54 55  te.c $(TESTFIXTU ff40: 52 45 5f 53 52 43 30 29 0a 21 45 4c 53 45 0a 54 RE_SRC0).!ELSE.T ff50: 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d ESTFIXTURE_SRC = ff60: 20 24 28 54 45 53 54 53 52 43 29 20 24 28 54 4f$(TESTSRC) $(TO ff70: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 P)\src\tclsqlite ff80: 2e 63 20 24 28 54 45 53 54 46 49 58 54 55 52 45 .c$(TESTFIXTURE
ff90: 5f 53 52 43 31 29 0a 21 45 4e 44 49 46 0a 0a 21  _SRC1).!ENDIF..!
ffa0: 49 46 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c  IF $(USE_STDCALL ffb0: 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 )!=0 ||$(FOR_WI
ffc0: 4e 31 30 29 21 3d 30 0a 73 71 6c 69 74 65 5f 74  N10)!=0.sqlite_t
ffd0: 63 6c 44 65 63 6c 73 2e 68 3a 0a 09 65 63 68 6f  clDecls.h:..echo
ffe0: 20 23 69 66 6e 64 65 66 20 53 51 4c 49 54 45 5f   #ifndef SQLITE_
fff0: 54 43 4c 41 50 49 20 3e 20 24 28 53 51 4c 49 54  TCLAPI > $(SQLIT 10000 45 54 43 4c 44 45 43 4c 53 48 29 0a 09 65 63 68 ETCLDECLSH)..ech 10010 6f 20 23 20 20 64 65 66 69 6e 65 20 53 51 4c 49 o # define SQLI 10020 54 45 5f 54 43 4c 41 50 49 20 3e 3e 20 24 28 53 TE_TCLAPI >>$(S
10030 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29 0a  QLITETCLDECLSH).
10040 09 65 63 68 6f 20 23 65 6e 64 69 66 20 3e 3e 20  .echo #endif >>
10050 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c 53  $(SQLITETCLDECLS 10060 48 29 0a 09 74 79 70 65 20 22 24 28 54 43 4c 49 H)..type "$(TCLI
10070 4e 43 44 49 52 29 5c 74 63 6c 44 65 63 6c 73 2e  NCDIR)\tclDecls.
10080 68 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48  h" \...| $(TCLSH 10090 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
100a0 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65  l\replace.tcl re
100b0 67 73 75 62 20 22 5e 28 45 58 54 45 52 4e 28 3f  gsub "^(EXTERN(?
100c0 3a 20 43 4f 4e 53 54 5c 64 2b 3f 29 3f 5c 73 2b  : CONST\d+?)?\s+
100d0 3f 5b 5e 5c 28 5d 2a 3f 5c 73 2b 3f 29 54 63 6c  ?[^\(]*?\s+?)Tcl
100e0 5f 22 20 22 5c 31 20 53 51 4c 49 54 45 5f 54 43  _" "\1 SQLITE_TC
100f0 4c 41 50 49 20 54 63 6c 5f 22 20 5c 0a 09 09 7c  LAPI Tcl_" \...|
10100 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28   $(TCLSH_CMD)$(
10110 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63  TOP)\tool\replac
10120 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5e 28  e.tcl regsub "^(
10130 45 58 54 45 52 4e 5c 73 2b 3f 28 3f 3a 76 6f 69  EXTERN\s+?(?:voi
10140 64 7c 56 4f 49 44 29 5c 73 2b 3f 29 54 63 6c 46  d|VOID)\s+?)TclF
10150 72 65 65 4f 62 6a 22 20 22 5c 31 20 53 51 4c 49  reeObj" "\1 SQLI
10160 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 46 72 65  TE_TCLAPI TclFre
10170 65 4f 62 6a 22 20 5c 0a 09 09 7c 20 24 28 54 43  eObj" \...| $(TC 10180 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c LSH_CMD)$(TOP)\
10190 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c  tool\replace.tcl
101a0 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 74 63 6c   regsub "\(\*tcl
101b0 5f 22 20 22 28 53 51 4c 49 54 45 5f 54 43 4c 41  _" "(SQLITE_TCLA
101c0 50 49 20 2a 74 63 6c 5f 22 20 5c 0a 09 09 7c 20  PI *tcl_" \...|
101d0 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
101e0 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
101f0 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c  .tcl regsub "\(\
10200 2a 74 63 6c 46 72 65 65 4f 62 6a 22 20 22 28 53  *tclFreeObj" "(S
10210 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 74 63  QLITE_TCLAPI *tc
10220 6c 46 72 65 65 4f 62 6a 22 20 5c 0a 09 09 7c 20  lFreeObj" \...|
10230 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
10240 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
10250 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c  .tcl regsub "\(\
10260 2a 22 20 22 28 53 51 4c 49 54 45 5f 54 43 4c 41  *" "(SQLITE_TCLA
10270 50 49 20 2a 22 20 3e 3e 20 24 28 53 51 4c 49 54  PI *" >> $(SQLIT 10280 45 54 43 4c 44 45 43 4c 53 48 29 0a 0a 73 71 6c ETCLDECLSH)..sql 10290 69 74 65 5f 74 63 6c 2e 68 3a 0a 09 74 79 70 65 ite_tcl.h:..type 102a0 20 22 24 28 54 43 4c 49 4e 43 44 49 52 29 5c 74 "$(TCLINCDIR)\t
102b0 63 6c 2e 68 22 20 7c 20 24 28 54 43 4c 53 48 5f  cl.h" | $(TCLSH_ 102c0 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c CMD)$(TOP)\tool
102d0 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61  \replace.tcl exa
102e0 63 74 20 74 63 6c 44 65 63 6c 73 2e 68 20 73 71  ct tclDecls.h sq
102f0 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68 20  lite_tclDecls.h
10300 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d  \...| $(TCLSH_CM 10310 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 D)$(TOP)\tool\r
10320 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75  eplace.tcl regsu
10330 62 20 22 74 79 70 65 64 65 66 20 28 2e 2a 3f 29  b "typedef (.*?)
10340 5c 28 54 63 6c 5f 22 20 22 74 79 70 65 64 65 66  \(Tcl_" "typedef
10350 20 5c 31 20 28 53 51 4c 49 54 45 5f 54 43 4c 41   \1 (SQLITE_TCLA
10360 50 49 20 54 63 6c 5f 22 20 5c 0a 09 09 7c 20 24  PI Tcl_" \...| $10370 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f (TCLSH_CMD)$(TO
10380 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e  P)\tool\replace.
10390 74 63 6c 20 65 78 61 63 74 20 22 76 6f 69 64 20  tcl exact "void
103a0 28 2a 66 72 65 65 50 72 6f 63 29 22 20 22 76 6f  (*freeProc)" "vo
103b0 69 64 20 28 53 51 4c 49 54 45 5f 54 43 4c 41 50  id (SQLITE_TCLAP
103c0 49 20 2a 66 72 65 65 50 72 6f 63 29 22 20 5c 0a  I *freeProc)" \.
103d0 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29  ..| $(TCLSH_CMD) 103e0 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70$(TOP)\tool\rep
103f0 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 22  lace.tcl exact "
10400 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a 28  Tcl_HashEntry *(
10410 2a 66 69 6e 64 50 72 6f 63 29 22 20 22 54 63 6c  *findProc)" "Tcl
10420 5f 48 61 73 68 45 6e 74 72 79 20 2a 28 53 51 4c  _HashEntry *(SQL
10430 49 54 45 5f 54 43 4c 41 50 49 20 2a 66 69 6e 64  ITE_TCLAPI *find
10440 50 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54  Proc)" \...| $(T 10450 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 CLSH_CMD)$(TOP)
10460 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63  \tool\replace.tc
10470 6c 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73  l exact "Tcl_Has
10480 68 45 6e 74 72 79 20 2a 28 2a 63 72 65 61 74 65  hEntry *(*create
10490 50 72 6f 63 29 22 20 22 54 63 6c 5f 48 61 73 68  Proc)" "Tcl_Hash
104a0 45 6e 74 72 79 20 2a 28 53 51 4c 49 54 45 5f 54  Entry *(SQLITE_T
104b0 43 4c 41 50 49 20 2a 63 72 65 61 74 65 50 72 6f  CLAPI *createPro
104c0 63 29 22 20 3e 3e 20 24 28 53 51 4c 49 54 45 54  c)" >> $(SQLITET 104d0 43 4c 48 29 0a 21 45 4e 44 49 46 0a 0a 74 65 73 CLH).!ENDIF..tes 104e0 74 66 69 78 74 75 72 65 2e 65 78 65 3a 09 24 28 tfixture.exe:.$(
104f0 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 29  TESTFIXTURE_SRC)
10500 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 4c   $(SQLITE3H)$(L
10510 49 42 52 45 53 4f 42 4a 53 29 20 24 28 48 44 52  IBRESOBJS) $(HDR 10520 29 20 24 28 53 51 4c 49 54 45 5f 54 43 4c 5f 44 )$(SQLITE_TCL_D
10530 45 50 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 2d  EP)..$(LTLINK) - 10540 44 53 51 4c 49 54 45 5f 4e 4f 5f 53 59 4e 43 3d DSQLITE_NO_SYNC= 10550 31 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 1$(TESTFIXTURE_
10560 46 4c 41 47 53 29 20 5c 0a 09 09 2d 44 42 55 49  FLAGS) \...-DBUI
10570 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43  LD_sqlite -I$(TC 10580 4c 49 4e 43 44 49 52 29 20 5c 0a 09 09 24 28 54 LINCDIR) \...$(T
10590 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 29 20  ESTFIXTURE_SRC)
105a0 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  \.../link $(LDFL 105b0 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
105c0 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29  S) $(LTLIBPATHS) 105d0 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24$(LIBRESOBJS) $105e0 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 (LTLIBS)$(TLIBS
105f0 29 0a 0a 65 78 74 65 6e 73 69 6f 6e 74 65 73 74  )..extensiontest
10600 3a 09 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  :.testfixture.ex
10610 65 20 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c  e testloadext.dl
10620 6c 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c  l..@set PATH=$(L 10630 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 IBTCLPATH);$(PAT
10640 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72  H)...\testfixtur
10650 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73  e.exe $(TOP)\tes 10660 74 5c 6c 6f 61 64 65 78 74 2e 74 65 73 74 20 24 t\loadext.test$
10670 28 54 45 53 54 4f 50 54 53 29 0a 0a 66 75 6c 6c  (TESTOPTS)..full
10680 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47  test:.$(TESTPROG 10690 53 29 20 66 75 7a 7a 74 65 73 74 0a 09 40 73 65 S) fuzztest..@se 106a0 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 t PATH=$(LIBTCLP
106b0 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c  ATH);$(PATH)...\ 106c0 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 testfixture.exe 106d0 24 28 54 4f 50 29 5c 74 65 73 74 5c 61 6c 6c 2e$(TOP)\test\all.
106e0 74 65 73 74 20 24 28 54 45 53 54 4f 50 54 53 29  test $(TESTOPTS) 106f0 0a 0a 73 6f 61 6b 74 65 73 74 3a 09 24 28 54 45 ..soaktest:.$(TE
10700 53 54 50 52 4f 47 53 29 0a 09 40 73 65 74 20 50  STPROGS)..@set P
10710 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48  ATH=$(LIBTCLPATH 10720 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 );$(PATH)...\tes
10730 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54  tfixture.exe $(T 10740 4f 50 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 OP)\test\all.tes 10750 74 20 2d 73 6f 61 6b 3d 31 20 24 28 54 45 53 54 t -soak=1$(TEST
10760 4f 50 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74 6f  OPTS)..fulltesto
10770 6e 6c 79 3a 09 24 28 54 45 53 54 50 52 4f 47 53  nly:.$(TESTPROGS 10780 29 20 66 75 7a 7a 74 65 73 74 0a 09 40 73 65 74 ) fuzztest..@set 10790 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 PATH=$(LIBTCLPA
107a0 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74  TH);$(PATH)...\t 107b0 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 estfixture.exe$
107c0 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 6c 6c 2e  (TOP)\test\full.
107d0 74 65 73 74 0a 0a 71 75 65 72 79 70 6c 61 6e 74  test..queryplant
107e0 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 72 65  est:.testfixture
107f0 2e 65 78 65 20 73 68 65 6c 6c 0a 09 40 73 65 74  .exe shell..@set
10800 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41   PATH=$(LIBTCLPA 10810 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 TH);$(PATH)...\t
10820 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24  estfixture.exe $10830 28 54 4f 50 29 5c 74 65 73 74 5c 70 65 72 6d 75 (TOP)\test\permu 10840 74 61 74 69 6f 6e 73 2e 74 65 73 74 20 71 75 65 tations.test que 10850 72 79 70 6c 61 6e 6e 65 72 20 24 28 54 45 53 54 ryplanner$(TEST
10860 4f 50 54 53 29 0a 0a 66 75 7a 7a 74 65 73 74 3a  OPTS)..fuzztest:
10870 09 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 0a 09  .fuzzcheck.exe..
10880 2e 5c 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20  .\fuzzcheck.exe
10890 24 28 46 55 5a 5a 44 41 54 41 29 0a 0a 66 61 73  $(FUZZDATA)..fas 108a0 74 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a 7a 63 tfuzztest:.fuzzc 108b0 68 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75 7a 7a heck.exe...\fuzz 108c0 63 68 65 63 6b 2e 65 78 65 20 2d 2d 6c 69 6d 69 check.exe --limi 108d0 74 2d 6d 65 6d 20 31 30 30 4d 20 24 28 46 55 5a t-mem 100M$(FUZ
108e0 5a 44 41 54 41 29 0a 0a 23 20 4d 69 6e 69 6d 61  ZDATA)..# Minima
108f0 6c 20 74 65 73 74 69 6e 67 20 74 68 61 74 20 72  l testing that r
10900 75 6e 73 20 69 6e 20 6c 65 73 73 20 74 68 61 6e  uns in less than
10910 20 33 20 6d 69 6e 75 74 65 73 20 28 6f 6e 20 61   3 minutes (on a
10920 20 66 61 73 74 20 6d 61 63 68 69 6e 65 29 0a 23   fast machine).#
10930 0a 71 75 69 63 6b 74 65 73 74 3a 09 74 65 73 74  .quicktest:.test
10940 66 69 78 74 75 72 65 2e 65 78 65 20 73 6f 75 72  fixture.exe sour
10950 63 65 74 65 73 74 0a 09 40 73 65 74 20 50 41 54  cetest..@set PAT
10960 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH); 10970 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66$(PATH)...\testf
10980 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP 10990 29 5c 74 65 73 74 5c 65 78 74 72 61 71 75 69 63 )\test\extraquic 109a0 6b 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50 54 k.test$(TESTOPT
109b0 53 29 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68  S)..# This is th
109c0 65 20 63 6f 6d 6d 6f 6e 20 63 61 73 65 2e 20 20  e common case.
109d0 52 75 6e 20 6d 61 6e 79 20 74 65 73 74 73 20 74  Run many tests t
109e0 68 61 74 20 64 6f 20 6e 6f 74 20 74 61 6b 65 20  hat do not take
109f0 74 6f 6f 20 6c 6f 6e 67 2c 0a 23 20 69 6e 63 6c  too long,.# incl
10a00 75 64 69 6e 67 20 66 75 7a 7a 63 68 65 63 6b 2c  uding fuzzcheck,
10a10 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
10a20 72 2c 20 61 6e 64 20 73 71 6c 64 69 66 66 20 74  r, and sqldiff t
10a30 65 73 74 73 2e 0a 23 0a 74 65 73 74 3a 09 24 28  ests..#.test:.$( 10a40 54 45 53 54 50 52 4f 47 53 29 20 73 6f 75 72 63 TESTPROGS) sourc 10a50 65 74 65 73 74 20 66 61 73 74 66 75 7a 7a 74 65 etest fastfuzzte 10a60 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 st..@set PATH=$(
10a70 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41  LIBTCLPATH);$(PA 10a80 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 TH)...\testfixtu 10a90 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 re.exe$(TOP)\te
10aa0 73 74 5c 76 65 72 79 71 75 69 63 6b 2e 74 65 73  st\veryquick.tes
10ab0 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 73  t $(TESTOPTS)..s 10ac0 6d 6f 6b 65 74 65 73 74 3a 09 24 28 54 45 53 54 moketest:.$(TEST
10ad0 50 52 4f 47 53 29 0a 09 40 73 65 74 20 50 41 54  PROGS)..@set PAT
10ae0 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH); 10af0 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66$(PATH)...\testf
10b00 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP 10b10 29 5c 74 65 73 74 5c 6d 61 69 6e 2e 74 65 73 74 )\test\main.test 10b20 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 73 71$(TESTOPTS)..sq
10b30 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63  lite3_analyzer.c
10b40 3a 09 24 28 53 51 4c 49 54 45 33 43 29 20 24 28  :.$(SQLITE3C)$(
10b50 53 51 4c 49 54 45 33 48 29 20 24 28 54 4f 50 29  SQLITE3H) $(TOP) 10b60 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 \src\tclsqlite.c 10b70 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 61$(TOP)\tool\spa
10b80 63 65 61 6e 61 6c 2e 74 63 6c 20 24 28 54 4f 50  ceanal.tcl $(TOP 10b90 29 5c 74 6f 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 )\tool\mkccode.t 10ba0 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 cl$(TOP)\tool\s
10bb0 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
10bc0 63 2e 69 6e 20 24 28 53 51 4c 49 54 45 5f 54 43  c.in $(SQLITE_TC 10bd0 4c 5f 44 45 50 29 0a 09 24 28 54 43 4c 53 48 5f L_DEP)..$(TCLSH_
10be0 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool 10bf0 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 \mkccode.tcl$(T
10c00 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 69 74 65 33  OP)\tool\sqlite3
10c10 5f 61 6e 61 6c 79 7a 65 72 2e 63 2e 69 6e 20 3e  _analyzer.c.in >
10c20 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 61 6e 61   $@..sqlite3_ana 10c30 6c 79 7a 65 72 2e 65 78 65 3a 09 73 71 6c 69 74 lyzer.exe:.sqlit 10c40 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 24 28 e3_analyzer.c$(
10c50 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28 4c  LIBRESOBJS)..$(L 10c60 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e TLINK)$(NO_WARN
10c70 29 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65  ) -DBUILD_sqlite
10c80 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20   -I$(TCLINCDIR) 10c90 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 sqlite3_analyzer 10ca0 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c .c \.../link$(L
10cb0 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK 10cc0 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 OPTS)$(LTLIBPAT
10cd0 48 53 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  HS) $(LIBRESOBJS 10ce0 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c )$(LTLIBS) $(TL 10cf0 49 42 53 29 0a 0a 73 71 6c 69 74 65 33 5f 65 78 IBS)..sqlite3_ex 10d00 70 65 72 74 2e 65 78 65 3a 20 24 28 53 51 4c 49 pert.exe:$(SQLI
10d10 54 45 33 43 29 20 24 28 54 4f 50 29 5c 65 78 74  TE3C) $(TOP)\ext 10d20 5c 65 78 70 65 72 74 5c 73 71 6c 69 74 65 33 65 \expert\sqlite3e 10d30 78 70 65 72 74 2e 68 20 24 28 54 4f 50 29 5c 65 xpert.h$(TOP)\e
10d40 78 74 5c 65 78 70 65 72 74 5c 73 71 6c 69 74 65  xt\expert\sqlite
10d50 33 65 78 70 65 72 74 2e 63 20 24 28 54 4f 50 29  3expert.c $(TOP) 10d60 5c 65 78 74 5c 65 78 70 65 72 74 5c 65 78 70 65 \ext\expert\expe 10d70 72 74 2e 63 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 rt.c..$(LTLINK)
10d80 24 28 4e 4f 5f 57 41 52 4e 29 09 24 28 54 4f 50  $(NO_WARN).$(TOP
10d90 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71 6c  )\ext\expert\sql
10da0 69 74 65 33 65 78 70 65 72 74 2e 63 20 24 28 54  ite3expert.c $(T 10db0 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 65 OP)\ext\expert\e 10dc0 78 70 65 72 74 2e 63 20 24 28 53 51 4c 49 54 45 xpert.c$(SQLITE
10dd0 33 43 29 20 24 28 54 4c 49 42 53 29 0a 0a 43 48  3C) $(TLIBS)..CH 10de0 45 43 4b 45 52 5f 44 45 50 53 20 3d 5c 0a 20 20 ECKER_DEPS =\. 10df0 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 6d 6b 63 63$(TOP)/tool/mkcc
10e00 6f 64 65 2e 74 63 6c 20 5c 0a 20 20 73 71 6c 69  ode.tcl \.  sqli
10e10 74 65 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  te3.c \.  $(TOP) 10e20 2f 73 72 63 2f 74 63 6c 73 71 6c 69 74 65 2e 63 /src/tclsqlite.c 10e30 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f \.$(TOP)/ext/
10e40 72 65 70 61 69 72 2f 73 71 6c 69 74 65 33 5f 63  repair/sqlite3_c
10e50 68 65 63 6b 65 72 2e 74 63 6c 20 5c 0a 20 20 24  hecker.tcl \.  $10e60 28 54 4f 50 29 2f 65 78 74 2f 72 65 70 61 69 72 (TOP)/ext/repair 10e70 2f 63 68 65 63 6b 69 6e 64 65 78 2e 63 20 5c 0a /checkindex.c \. 10e80 20 20 24 28 54 4f 50 29 2f 65 78 74 2f 72 65 70$(TOP)/ext/rep
10e90 61 69 72 2f 63 68 65 63 6b 66 72 65 65 6c 69 73  air/checkfreelis
10ea0 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65  t.c \.  $(TOP)/e 10eb0 78 74 2f 6d 69 73 63 2f 62 74 72 65 65 69 6e 66 xt/misc/btreeinf 10ec0 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 o.c \.$(TOP)/e
10ed0 78 74 2f 72 65 70 61 69 72 2f 73 71 6c 69 74 65  xt/repair/sqlite
10ee0 33 5f 63 68 65 63 6b 65 72 2e 63 2e 69 6e 0a 0a  3_checker.c.in..
10ef0 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e  sqlite3_checker.
10f00 63 3a 09 24 28 43 48 45 43 4b 45 52 5f 44 45 50  c:.$(CHECKER_DEP 10f10 53 29 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 S)..$(TCLSH_CMD)
10f20 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 63   $(TOP)\tool\mkc 10f30 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 5c code.tcl$(TOP)\
10f40 65 78 74 5c 72 65 70 61 69 72 5c 73 71 6c 69 74  ext\repair\sqlit
10f50 65 33 5f 63 68 65 63 6b 65 72 2e 63 2e 69 6e 20  e3_checker.c.in
10f60 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 63 68  > $@..sqlite3_ch 10f70 65 63 6b 65 72 2e 65 78 65 3a 09 73 71 6c 69 74 ecker.exe:.sqlit 10f80 65 33 5f 63 68 65 63 6b 65 72 2e 63 20 24 28 4c e3_checker.c$(L
10f90 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28 4c 54  IBRESOBJS)..$(LT 10fa0 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 LINK)$(NO_WARN)
10fb0 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20   -DBUILD_sqlite
10fc0 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 73  -I$(TCLINCDIR) s 10fd0 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 63 qlite3_checker.c 10fe0 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 \.../link$(LDF
10ff0 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50  LAGS) $(LTLINKOP 11000 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 TS)$(LTLIBPATHS
11010 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20  ) $(LIBRESOBJS) 11020 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42$(LTLIBS) $(TLIB 11030 53 29 0a 0a 64 62 64 75 6d 70 2e 65 78 65 3a 09 S)..dbdump.exe:. 11040 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
11050 64 62 64 75 6d 70 2e 63 20 24 28 53 51 4c 49 54  dbdump.c $(SQLIT 11060 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
11070 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
11080 5f 57 41 52 4e 29 20 2d 44 44 42 44 55 4d 50 5f  _WARN) -DDBDUMP_
11090 53 54 41 4e 44 41 4c 4f 4e 45 20 24 28 54 4f 50  STANDALONE $(TOP 110a0 29 5c 65 78 74 5c 6d 69 73 63 5c 64 62 64 75 6d )\ext\misc\dbdum 110b0 70 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 p.c$(SQLITE3C)
110c0 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  \.../link $(LDFL 110d0 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
110e0 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29  S) $(LTLIBPATHS) 110f0 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24$(LIBRESOBJS) $11100 28 4c 54 4c 49 42 53 29 0a 0a 74 65 73 74 6c 6f (LTLIBS)..testlo 11110 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 adext.lo:.$(TOP)
11120 5c 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78  \src\test_loadex
11130 74 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  t.c..$(LTCOMPILE 11140 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63 20 )$(NO_WARN) -c
11150 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 11160 6c 6f 61 64 65 78 74 2e 63 0a 0a 74 65 73 74 6c loadext.c..testl 11170 6f 61 64 65 78 74 2e 64 6c 6c 3a 09 74 65 73 74 oadext.dll:.test 11180 6c 6f 61 64 65 78 74 2e 6c 6f 0a 09 24 28 4c 44 loadext.lo..$(LD
11190 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  ) $(LDFLAGS)$(L
111a0 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL 111b0 49 42 50 41 54 48 53 29 20 2f 44 4c 4c 20 2f 4f IBPATHS) /DLL /O 111c0 55 54 3a 24 40 20 74 65 73 74 6c 6f 61 64 65 78 UT:$@ testloadex
111d0 74 2e 6c 6f 0a 0a 73 68 6f 77 64 62 2e 65 78 65  t.lo..showdb.exe
111e0 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh 111f0 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33 owdb.c$(SQLITE3
11200 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. 11210 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W 11220 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 ARN) -DSQLITE_TH 11230 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c READSAFE=0 -DSQL 11240 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 ITE_OMIT_LOAD_EX 11250 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f TENSION \...$(TO
11260 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63  P)\tool\showdb.c
11270 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69   $(SQLITE3C) /li 11280 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 nk$(LDFLAGS) $( 11290 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f LTLINKOPTS)..sho 112a0 77 73 74 61 74 34 2e 65 78 65 3a 09 24 28 54 4f wstat4.exe:.$(TO
112b0 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73 74 61 74  P)\tool\showstat
112c0 34 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  4.c $(SQLITE3C) 112d0 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c$(SQLITE3H)..$(L 112e0 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e TLINK)$(NO_WARN
112f0 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41  ) -DSQLITE_THREA
11300 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45  DSAFE=0 -DSQLITE
11310 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e  _OMIT_LOAD_EXTEN
11320 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c  SION \...$(TOP)\ 11330 74 6f 6f 6c 5c 73 68 6f 77 73 74 61 74 34 2e 63 tool\showstat4.c 11340 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
11350 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
11360 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f  LTLINKOPTS)..sho
11370 77 6a 6f 75 72 6e 61 6c 2e 65 78 65 3a 09 24 28  wjournal.exe:.$( 11380 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 6a 6f TOP)\tool\showjo 11390 75 72 6e 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 urnal.c$(SQLITE
113a0 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  3C) $(SQLITE3H). 113b0 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ 113c0 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 WARN) -DSQLITE_T 113d0 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 HREADSAFE=0 -DSQ 113e0 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 LITE_OMIT_LOAD_E 113f0 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 XTENSION \...$(T
11400 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 6a 6f 75  OP)\tool\showjou
11410 72 6e 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33  rnal.c $(SQLITE3 11420 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
11430 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 11440 29 0a 0a 73 68 6f 77 77 61 6c 2e 65 78 65 3a 09 )..showwal.exe:. 11450 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77$(TOP)\tool\show
11460 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43  wal.c $(SQLITE3C 11470 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 )$(SQLITE3H)..$11480 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 (LTLINK)$(NO_WA
11490 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52  RN) -DSQLITE_THR
114a0 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49  EADSAFE=0 -DSQLI
114b0 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54  TE_OMIT_LOAD_EXT
114c0 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f 50  ENSION \...$(TOP 114d0 29 5c 74 6f 6f 6c 5c 73 68 6f 77 77 61 6c 2e 63 )\tool\showwal.c 114e0 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
114f0 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
11500 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f  LTLINKOPTS)..sho
11510 77 73 68 6d 2e 65 78 65 3a 09 24 28 54 4f 50 29  wshm.exe:.$(TOP) 11520 5c 74 6f 6f 6c 5c 73 68 6f 77 73 68 6d 2e 63 0a \tool\showshm.c. 11530 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ 11540 57 41 52 4e 29 09 24 28 54 4f 50 29 5c 74 6f 6f WARN).$(TOP)\too
11550 6c 5c 73 68 6f 77 73 68 6d 2e 63 20 2f 6c 69 6e  l\showshm.c /lin
11560 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
11570 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 63 68 61 6e  TLINKOPTS)..chan
11580 67 65 73 65 74 2e 65 78 65 3a 09 24 28 54 4f 50  geset.exe:.$(TOP 11590 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 63 68 )\ext\session\ch 115a0 61 6e 67 65 73 65 74 2e 63 20 24 28 53 51 4c 49 angeset.c$(SQLI
115b0 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H 115c0 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N 115d0 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE 115e0 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 _THREADSAFE=0 -D 115f0 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 SQLITE_OMIT_LOAD 11600 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 2d _EXTENSION \...- 11610 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 DSQLITE_ENABLE_S 11620 45 53 53 49 4f 4e 3d 31 20 2d 44 53 51 4c 49 54 ESSION=1 -DSQLIT 11630 45 5f 45 4e 41 42 4c 45 5f 50 52 45 55 50 44 41 E_ENABLE_PREUPDA 11640 54 45 5f 48 4f 4f 4b 3d 31 20 5c 0a 09 09 24 28 TE_HOOK=1 \...$(
11650 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e  TOP)\ext\session
11660 5c 63 68 61 6e 67 65 73 65 74 2e 63 20 24 28 53  \changeset.c $(S 11670 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
11680 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI 11690 4e 4b 4f 50 54 53 29 0a 0a 66 74 73 33 76 69 65 NKOPTS)..fts3vie 116a0 77 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 w.exe:.$(TOP)\ex
116b0 74 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33  t\fts3\tool\fts3
116c0 76 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33  view.c $(SQLITE3 116d0 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 C)$(SQLITE3H)..
116e0 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
116f0 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48  ARN) -DSQLITE_TH
11700 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c  READSAFE=0 -DSQL
11710 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
11720 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f  TENSION \...$(TO 11730 50 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f 6f 6c P)\ext\fts3\tool 11740 5c 66 74 73 33 76 69 65 77 2e 63 20 24 28 53 51 \fts3view.c$(SQ
11750 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( 11760 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
11770 4b 4f 50 54 53 29 0a 0a 72 6f 6c 6c 62 61 63 6b  KOPTS)..rollback
11780 2d 74 65 73 74 2e 65 78 65 3a 09 24 28 54 4f 50  -test.exe:.$(TOP 11790 29 5c 74 6f 6f 6c 5c 72 6f 6c 6c 62 61 63 6b 2d )\tool\rollback- 117a0 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 test.c$(SQLITE3
117b0 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. 117c0 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W 117d0 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 ARN) -DSQLITE_TH 117e0 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c READSAFE=0 -DSQL 117f0 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 ITE_OMIT_LOAD_EX 11800 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f TENSION \...$(TO
11810 50 29 5c 74 6f 6f 6c 5c 72 6f 6c 6c 62 61 63 6b  P)\tool\rollback
11820 2d 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45  -test.c $(SQLITE 11830 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 3C) /link$(LDFL
11840 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT 11850 53 29 0a 0a 4c 6f 67 45 73 74 2e 65 78 65 3a 09 S)..LogEst.exe:. 11860 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 6f 67 65$(TOP)\tool\loge
11870 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 48 29  st.c $(SQLITE3H) 11880 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO 11890 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 6f _WARN)$(TOP)\to
118a0 6f 6c 5c 4c 6f 67 45 73 74 2e 63 20 2f 6c 69 6e  ol\LogEst.c /lin
118b0 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
118c0 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 77 6f 72 64  TLINKOPTS)..word
118d0 63 6f 75 6e 74 2e 65 78 65 3a 09 24 28 54 4f 50  count.exe:.$(TOP 118e0 29 5c 74 65 73 74 5c 77 6f 72 64 63 6f 75 6e 74 )\test\wordcount 118f0 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 .c$(SQLITE3C) $11900 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
11910 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) 11920 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 -DSQLITE_THREAD 11930 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f SAFE=0 -DSQLITE_ 11940 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 OMIT_LOAD_EXTENS 11950 49 4f 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 ION \...$(TOP)\t
11960 65 73 74 5c 77 6f 72 64 63 6f 75 6e 74 2e 63 20  est\wordcount.c
11970 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin 11980 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c k$(LDFLAGS) $(L 11990 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 70 65 65 TLINKOPTS)..spee 119a0 64 74 65 73 74 31 2e 65 78 65 3a 09 24 28 54 4f dtest1.exe:.$(TO
119b0 50 29 5c 74 65 73 74 5c 73 70 65 65 64 74 65 73  P)\test\speedtes
119c0 74 31 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  t1.c $(SQLITE3C) 119d0 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28$(SQLITE3H)..$( 119e0 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 LTLINK)$(NO_WAR
119f0 4e 29 20 24 28 53 54 5f 43 4f 4d 50 49 4c 45 5f  N) $(ST_COMPILE_ 11a00 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 4f OPTS) -DSQLITE_O 11a10 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 MIT_LOAD_EXTENSI 11a20 4f 4e 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 65 ON \...$(TOP)\te
11a30 73 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 20  st\speedtest1.c
11a40 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin 11a50 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c k$(LDFLAGS) $(L 11a60 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 6b 76 74 65 TLINKOPTS)..kvte 11a70 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 st.exe:.$(TOP)\t
11a80 65 73 74 5c 6b 76 74 65 73 74 2e 63 20 24 28 53  est\kvtest.c $(S 11a90 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
11aa0 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 11ab0 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 4b 56 5f$(NO_WARN) $(KV_ 11ac0 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 5c 0a COMPILE_OPTS) \. 11ad0 09 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 6b 76 ..$(TOP)\test\kv
11ae0 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33  test.c $(SQLITE3 11af0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
11b00 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 11b10 29 0a 0a 64 62 73 65 6c 66 74 65 73 74 2e 65 78 )..dbselftest.ex 11b20 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 64 e:.$(TOP)\test\d
11b30 62 73 65 6c 66 74 65 73 74 2e 63 20 24 28 53 51  bselftest.c $(SQ 11b40 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 LITE3C)$(SQLITE
11b50 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK)$
11b60 28 4e 4f 5f 57 41 52 4e 29 20 24 28 44 42 53 45  (NO_WARN) $(DBSE 11b70 4c 46 54 45 53 54 5f 43 4f 4d 50 49 4c 45 5f 4f LFTEST_COMPILE_O 11b80 50 54 53 29 20 24 28 54 4f 50 29 5c 74 65 73 74 PTS)$(TOP)\test
11b90 5c 64 62 73 65 6c 66 74 65 73 74 2e 63 20 24 28  \dbselftest.c $( 11ba0 53 51 4c 49 54 45 33 43 29 0a 0a 72 62 75 2e 65 SQLITE3C)..rbu.e 11bb0 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 xe:.$(TOP)\ext\r
11bc0 62 75 5c 72 62 75 2e 63 20 24 28 54 4f 50 29 5c  bu\rbu.c $(TOP)\ 11bd0 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 ext\rbu\sqlite3r 11be0 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 bu.c$(SQLITE3C)
11bf0 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28   $(SQLITE3H)..$(
11c00 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52  LTLINK) $(NO_WAR 11c10 4e 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 N) -DSQLITE_ENAB 11c20 4c 45 5f 52 42 55 20 5c 0a 09 09 24 28 54 4f 50 LE_RBU \...$(TOP
11c30 29 5c 65 78 74 5c 72 62 75 5c 72 62 75 2e 63 20  )\ext\rbu\rbu.c
11c40 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin 11c50 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c k$(LDFLAGS) $(L 11c60 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4c 53 4d 44 TLINKOPTS)..LSMD 11c70 49 52 3d 24 28 54 4f 50 29 5c 65 78 74 5c 6c 73 IR=$(TOP)\ext\ls
11c80 6d 31 0a 21 49 4e 43 4c 55 44 45 20 24 28 4c 53  m1.!INCLUDE $(LS 11c90 4d 44 49 52 29 5c 4d 61 6b 65 66 69 6c 65 2e 6d MDIR)\Makefile.m 11ca0 73 63 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a 09 63 sc..moreclean:.c 11cb0 6c 65 61 6e 0a 09 64 65 6c 20 2f 51 20 24 28 53 lean..del /Q$(S
11cc0 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 11cd0 45 33 48 29 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f E3H) 2>NUL.# <</ 11ce0 6d 61 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a 0a 09 mark>>..clean:.. 11cf0 64 65 6c 20 2f 51 20 2a 2e 65 78 70 20 2a 2e 6c del /Q *.exp *.l 11d00 6f 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e o *.ilk *.lib *. 11d10 6f 62 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 62 20 obj *.ncb *.pdb 11d20 2a 2e 73 64 66 20 2a 2e 73 75 6f 20 32 3e 4e 55 *.sdf *.suo 2>NU 11d30 4c 0a 09 64 65 6c 20 2f 51 20 2a 2e 62 73 63 20 L..del /Q *.bsc 11d40 2a 2e 64 65 66 20 2a 2e 63 6f 64 20 2a 2e 64 61 *.def *.cod *.da 11d50 20 2a 2e 62 62 20 2a 2e 62 62 67 20 2a 2e 76 63 *.bb *.bbg *.vc 11d60 20 67 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 4c 0a gmon.out 2>NUL. 11d70 09 64 65 6c 20 2f 51 20 24 28 53 51 4c 49 54 45 .del /Q$(SQLITE
11d80 33 45 58 45 29 20 24 28 53 51 4c 49 54 45 33 44  3EXE) $(SQLITE3D 11d90 4c 4c 29 20 52 65 70 6c 61 63 65 2e 65 78 65 20 LL) Replace.exe 11da0 32 3e 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 2>NUL.# <<mark>> 11db0 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 ..del /Q sqlite3 11dc0 2e 63 20 73 71 6c 69 74 65 33 2e 68 20 32 3e 4e .c sqlite3.h 2>N 11dd0 55 4c 0a 09 64 65 6c 20 2f 51 20 6f 70 63 6f 64 UL..del /Q opcod 11de0 65 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68 20 32 es.c opcodes.h 2 11df0 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 65 6d >NUL..del /Q lem 11e00 6f 6e 2e 2a 20 6c 65 6d 70 61 72 2e 63 20 70 61 on.* lempar.c pa 11e10 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c rse.* 2>NUL..del 11e20 20 2f 51 20 6d 6b 73 6f 75 72 63 65 69 64 2e 2a /Q mksourceid.* 11e30 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 2a mkkeywordhash.* 11e40 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 32 keywordhash.h 2 11e50 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6e 6f 74 >NUL..del /Q not 11e60 61 73 68 61 72 65 64 6c 69 62 2e 2a 20 32 3e 4e asharedlib.* 2>N 11e70 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 UL..-rmdir /Q/S 11e80 2e 64 65 70 73 20 32 3e 4e 55 4c 0a 09 2d 72 6d .deps 2>NUL..-rm 11e90 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73 20 32 dir /Q/S .libs 2 11ea0 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f >NUL..-rmdir /Q/ 11eb0 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a 09 64 65 S tsrc 2>NUL..de 11ec0 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73 6f 75 l /Q .target_sou 11ed0 72 63 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f rce 2>NUL..del / 11ee0 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65 78 65 Q tclsqlite3.exe 11ef0 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29 20 24$(SQLITETCLH) \$
11f00 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48  (SQLITETCLDECLSH
11f10 29 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  ) 2>NUL..del /Q
11f20 6c 73 6d 2e 64 6c 6c 20 6c 73 6d 74 65 73 74 2e  lsm.dll lsmtest.
11f30 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  exe 2>NUL..del /
11f40 51 20 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c  Q testloadext.dl
11f50 6c 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  l 2>NUL..del /Q
11f60 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
11f70 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 64  test.db 2>NUL..d
11f80 65 6c 20 2f 51 20 4c 6f 67 45 73 74 2e 65 78 65  el /Q LogEst.exe
11f90 20 66 74 73 33 76 69 65 77 2e 65 78 65 20 72 6f   fts3view.exe ro
11fa0 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65 20  llback-test.exe
11fb0 73 68 6f 77 64 62 2e 65 78 65 20 64 62 64 75 6d  showdb.exe dbdum
11fc0 70 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  p.exe 2>NUL..del
11fd0 20 2f 51 20 63 68 61 6e 67 65 73 65 74 2e 65 78   /Q changeset.ex
11fe0 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  e 2>NUL..del /Q
11ff0 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 78 65 20  showjournal.exe
12000 73 68 6f 77 73 74 61 74 34 2e 65 78 65 20 73 68  showstat4.exe sh
12010 6f 77 77 61 6c 2e 65 78 65 20 73 70 65 65 64 74  owwal.exe speedt
12020 65 73 74 31 2e 65 78 65 20 32 3e 4e 55 4c 0a 09  est1.exe 2>NUL..
12030 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 65 72 2e  del /Q mptester.
12040 65 78 65 20 77 6f 72 64 63 6f 75 6e 74 2e 65 78  exe wordcount.ex
12050 65 20 72 62 75 2e 65 78 65 20 73 72 63 63 6b 31  e rbu.exe srcck1
12060 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
12070 2f 51 20 73 71 6c 69 74 65 33 2e 63 20 73 71 6c  /Q sqlite3.c sql
12080 69 74 65 33 2d 2a 2e 63 20 32 3e 4e 55 4c 0a 09  ite3-*.c 2>NUL..
12090 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 72 63  del /Q sqlite3rc
120a0 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  .h 2>NUL..del /Q
120b0 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69 74 65 33   shell.c sqlite3
120c0 65 78 74 2e 68 20 73 71 6c 69 74 65 33 73 65 73  ext.h sqlite3ses
120d0 73 69 6f 6e 2e 68 20 32 3e 4e 55 4c 0a 09 64 65  sion.h 2>NUL..de
120e0 6c 20 2f 51 20 73 71 6c 69 74 65 33 5f 61 6e 61  l /Q sqlite3_ana
120f0 6c 79 7a 65 72 2e 65 78 65 20 73 71 6c 69 74 65  lyzer.exe sqlite
12100 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 32 3e 4e  3_analyzer.c 2>N
12110 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74  UL..del /Q sqlit
12120 65 2d 2a 2d 6f 75 74 70 75 74 2e 76 73 69 78 20  e-*-output.vsix
12130 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 66 75  2>NUL..del /Q fu
12140 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65 20 66 75  zzershell.exe fu
12150 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73 71 6c 64  zzcheck.exe sqld
12160 69 66 66 2e 65 78 65 20 64 62 68 61 73 68 2e 65  iff.exe dbhash.e
12170 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  xe 2>NUL..del /Q
12180 20 66 74 73 35 2e 2a 20 66 74 73 35 70 61 72 73   fts5.* fts5pars
12190 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  e.* 2>NUL..del /
121a0 51 20 6c 73 6d 2e 68 20 6c 73 6d 31 2e 63 20 32  Q lsm.h lsm1.c 2
121b0 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  >NUL.# <</mark>>
121c0 0a                                               .