/ Hex Artifact Content

## Artifact 80cca5fd5760cb3e26aaedaf6ef0df155cab3761a98efd0aa819973713839ca9:

• File Makefile.msc — part of check-in [a6d5c7c2] at 2018-01-06 04:34:05 on branch appendvfs — Add sqltclsh.exe to the windows makefile. (user: drh size: 72311)

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 75 73 65 20  is non-0 to use
0900: 74 68 65 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61  the Internationa
0910: 6c 20 43 6f 6d 70 6f 6e 65 6e 74 73 20 66 6f 72  l Components for
0920: 20 55 6e 69 63 6f 64 65 20 28 49 43 55 29 2e 0a   Unicode (ICU)..
0930: 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 49 43  #.!IFNDEF USE_IC
0940: 55 0a 55 53 45 5f 49 43 55 20 3d 20 30 0a 21 45  U.USE_ICU = 0.!E
0950: 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  NDIF.# <</mark>>
0960: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0970: 2d 30 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c  -0 to dynamicall
0980: 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 4d 53  y link to the MS
0990: 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  VC runtime libra
09a0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53  ry..#.!IFNDEF US
09b0: 45 5f 43 52 54 5f 44 4c 4c 0a 55 53 45 5f 43 52  E_CRT_DLL.USE_CR
09c0: 54 5f 44 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46  T_DLL = 0.!ENDIF
09d0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
09e0: 2d 30 20 74 6f 20 6c 69 6e 6b 20 74 6f 20 74 68  -0 to link to th
09f0: 65 20 52 50 43 52 54 34 20 6c 69 62 72 61 72 79  e RPCRT4 library
0a00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0a10: 52 50 43 52 54 34 5f 4c 49 42 0a 55 53 45 5f 52  RPCRT4_LIB.USE_R
0a20: 50 43 52 54 34 5f 4c 49 42 20 3d 20 30 0a 21 45  PCRT4_LIB = 0.!E
0a30: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
0a40: 20 6e 6f 6e 2d 30 20 74 6f 20 67 65 6e 65 72 61   non-0 to genera
0a50: 74 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65  te assembly code
0a60: 20 6c 69 73 74 69 6e 67 73 20 66 6f 72 20 74 68   listings for th
0a70: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 23 20  e source code.#
0a80: 66 69 6c 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  files..#.!IFNDEF
0a90: 20 55 53 45 5f 4c 49 53 54 49 4e 47 53 0a 55 53   USE_LISTINGS.US
0aa0: 45 5f 4c 49 53 54 49 4e 47 53 20 3d 20 30 0a 21  E_LISTINGS = 0.!
0ab0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0ac0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 61 74 74 65 6d  s non-0 to attem
0ad0: 70 74 20 73 65 74 74 69 6e 67 20 74 68 65 20 6e  pt setting the n
0ae0: 61 74 69 76 65 20 63 6f 6d 70 69 6c 65 72 20 61  ative compiler a
0af0: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 23 20 66  utomatically.# f
0b00: 6f 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69  or cross-compili
0b10: 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  ng the command l
0b20: 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65 64  ine tools needed
0b30: 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70   during the comp
0b40: 69 6c 61 74 69 6f 6e 0a 23 20 70 72 6f 63 65 73  ilation.# proces
0b50: 73 2e 0a 23 0a 21 49 46 4e 44 45 46 20 58 43 4f  s..#.!IFNDEF XCO
0b60: 4d 50 49 4c 45 0a 58 43 4f 4d 50 49 4c 45 20 3d  MPILE.XCOMPILE =
0b70: 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   0.!ENDIF..# Set
0b80: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75   this non-0 to u
0b90: 73 65 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69  se the native li
0ba0: 62 72 61 72 69 65 73 20 70 61 74 68 73 20 66 6f  braries paths fo
0bb0: 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e  r cross-compilin
0bc0: 67 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20  g.# the command
0bd0: 6c 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65  line tools neede
0be0: 64 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d  d during the com
0bf0: 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73  pilation process
0c00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0c10: 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 0a  NATIVE_LIBPATHS.
0c20: 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41  USE_NATIVE_LIBPA
0c30: 54 48 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  THS = 0.!ENDIF..
0c40: 23 20 53 65 74 20 74 68 69 73 20 30 20 74 6f 20  # Set this 0 to
0c50: 73 6b 69 70 20 74 68 65 20 63 6f 6d 70 69 6c 69  skip the compili
0c60: 6e 67 20 61 6e 64 20 65 6d 62 65 64 64 69 6e 67  ng and embedding
0c70: 20 6f 66 20 76 65 72 73 69 6f 6e 20 72 65 73 6f   of version reso
0c80: 75 72 63 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  urces..#.!IFNDEF
0c90: 20 55 53 45 5f 52 43 0a 55 53 45 5f 52 43 20 3d   USE_RC.USE_RC =
0ca0: 20 31 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   1.!ENDIF..# Set
0cb0: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63   this non-0 to c
0cc0: 6f 6d 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20  ompile binaries
0cd0: 73 75 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65  suitable for the
0ce0: 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65   WinRT environme
0cf0: 6e 74 2e 0a 23 20 54 68 69 73 20 73 65 74 74 69  nt..# This setti
0d00: 6e 67 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c  ng does not appl
0d10: 79 20 74 6f 20 61 6e 79 20 62 69 6e 61 72 69 65  y to any binarie
0d20: 73 20 74 68 61 74 20 72 65 71 75 69 72 65 20 54  s that require T
0d30: 63 6c 20 74 6f 20 6f 70 65 72 61 74 65 0a 23 20  cl to operate.#
0d40: 70 72 6f 70 65 72 6c 79 20 28 69 2e 65 2e 20 74  properly (i.e. t
0d50: 68 65 20 74 65 78 74 20 66 69 78 74 75 72 65 2c  he text fixture,
0d60: 20 65 74 63 29 2e 0a 23 0a 21 49 46 4e 44 45 46   etc)..#.!IFNDEF
0d70: 20 46 4f 52 5f 57 49 4e 52 54 0a 46 4f 52 5f 57   FOR_WINRT.FOR_W
0d80: 49 4e 52 54 20 3d 20 30 0a 21 45 4e 44 49 46 0a  INRT = 0.!ENDIF.
0d90: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0da0: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0db0: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0dc0: 6f 72 20 74 68 65 20 55 57 50 20 65 6e 76 69 72  or the UWP envir
0dd0: 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68 69 73 20 73  onment..# This s
0de0: 65 74 74 69 6e 67 20 64 6f 65 73 20 6e 6f 74 20  etting does not
0df0: 61 70 70 6c 79 20 74 6f 20 61 6e 79 20 62 69 6e  apply to any bin
0e00: 61 72 69 65 73 20 74 68 61 74 20 72 65 71 75 69  aries that requi
0e10: 72 65 20 54 63 6c 20 74 6f 20 6f 70 65 72 61 74  re Tcl to operat
0e20: 65 0a 23 20 70 72 6f 70 65 72 6c 79 20 28 69 2e  e.# properly (i.
0e30: 65 2e 20 74 68 65 20 74 65 78 74 20 66 69 78 74  e. the text fixt
0e40: 75 72 65 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46  ure, etc)..#.!IF
0e50: 4e 44 45 46 20 46 4f 52 5f 55 57 50 0a 46 4f 52  NDEF FOR_UWP.FOR
0e60: 5f 55 57 50 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _UWP = 0.!ENDIF.
0e70: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0e80: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0e90: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0ea0: 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31  or the Windows 1
0eb0: 30 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 49  0 platform..#.!I
0ec0: 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e 31 30 0a  FNDEF FOR_WIN10.
0ed0: 46 4f 52 5f 57 49 4e 31 30 20 3d 20 30 0a 21 45  FOR_WIN10 = 0.!E
0ee0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
0ef0: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0f00: 30 20 74 6f 20 73 6b 69 70 20 61 74 74 65 6d 70  0 to skip attemp
0f10: 74 69 6e 67 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72  ting to look for
0f20: 20 61 6e 64 2f 6f 72 20 6c 69 6e 6b 20 77 69 74   and/or link wit
0f30: 68 20 74 68 65 20 54 63 6c 0a 23 20 72 75 6e 74  h the Tcl.# runt
0f40: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
0f50: 49 46 4e 44 45 46 20 4e 4f 5f 54 43 4c 0a 4e 4f  IFNDEF NO_TCL.NO
0f60: 5f 54 43 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _TCL = 0.!ENDIF.
0f70: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53  # <</mark>>..# S
0f80: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
0f90: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
0fa0: 73 65 20 50 44 42 73 2e 0a 23 0a 21 49 46 4e 44  se PDBs..#.!IFND
0fb0: 45 46 20 53 59 4d 42 4f 4c 53 0a 53 59 4d 42 4f  EF SYMBOLS.SYMBO
0fc0: 4c 53 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a 23  LS = 1.!ENDIF..#
0fd0: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0fe0: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 53 51  -0 to use the SQ
0ff0: 4c 69 74 65 20 64 65 62 75 67 67 69 6e 67 20 68  Lite debugging h
1000: 65 61 70 20 73 75 62 73 79 73 74 65 6d 2e 0a 23  eap subsystem..#
1010: 0a 21 49 46 4e 44 45 46 20 4d 45 4d 44 45 42 55  .!IFNDEF MEMDEBU
1020: 47 0a 4d 45 4d 44 45 42 55 47 20 3d 20 30 0a 21  G.MEMDEBUG = 0.!
1030: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
1040: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
1050: 65 20 74 68 65 20 57 69 6e 33 32 20 6e 61 74 69  e the Win32 nati
1060: 76 65 20 68 65 61 70 20 73 75 62 73 79 73 74 65  ve heap subsyste
1070: 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 57 49 4e  m..#.!IFNDEF WIN
1080: 33 32 48 45 41 50 0a 57 49 4e 33 32 48 45 41 50  32HEAP.WIN32HEAP
1090: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53   = 0.!ENDIF..# S
10a0: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
10b0: 20 74 6f 20 65 6e 61 62 6c 65 20 4f 53 54 52 41   to enable OSTRA
10c0: 43 45 28 29 20 6d 61 63 72 6f 73 2c 20 77 68 69  CE() macros, whi
10d0: 63 68 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c  ch can be useful
10e0: 20 77 68 65 6e 0a 23 20 64 65 62 75 67 67 69 6e   when.# debuggin
10f0: 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4f 53 54  g..#.!IFNDEF OST
1100: 52 41 43 45 0a 4f 53 54 52 41 43 45 20 3d 20 30  RACE.OSTRACE = 0
1110: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1120: 68 69 73 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68  his to one of th
1130: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75  e following valu
1140: 65 73 20 74 6f 20 65 6e 61 62 6c 65 20 76 61 72  es to enable var
1150: 69 6f 75 73 20 64 65 62 75 67 67 69 6e 67 0a 23  ious debugging.#
1160: 20 66 65 61 74 75 72 65 73 2e 20 20 45 61 63 68   features.  Each
1170: 20 6c 65 76 65 6c 20 69 6e 63 6c 75 64 65 73 20   level includes
1180: 74 68 65 20 64 65 62 75 67 67 69 6e 67 20 6f 70  the debugging op
1190: 74 69 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 70  tions from the p
11a0: 72 65 76 69 6f 75 73 0a 23 20 6c 65 76 65 6c 73  revious.# levels
11b0: 2e 20 20 43 75 72 72 65 6e 74 6c 79 2c 20 74 68  .  Currently, th
11c0: 65 20 72 65 63 6f 67 6e 69 7a 65 64 20 76 61 6c  e recognized val
11d0: 75 65 73 20 66 6f 72 20 44 45 42 55 47 20 61 72  ues for DEBUG ar
11e0: 65 3a 0a 23 0a 23 20 30 20 3d 3d 20 4e 44 45 42  e:.#.# 0 == NDEB
11f0: 55 47 3a 20 44 69 73 61 62 6c 65 73 20 61 73 73  UG: Disables ass
1200: 65 72 74 28 29 20 61 6e 64 20 6f 74 68 65 72 20  ert() and other
1210: 72 75 6e 74 69 6d 65 20 64 69 61 67 6e 6f 73 74  runtime diagnost
1220: 69 63 73 2e 0a 23 20 31 20 3d 3d 20 53 51 4c 49  ics..# 1 == SQLI
1230: 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52  TE_ENABLE_API_AR
1240: 4d 4f 52 3a 20 65 78 74 72 61 20 61 74 74 65 6d  MOR: extra attem
1250: 70 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69  pts to detect mi
1260: 73 75 73 65 20 6f 66 20 74 68 65 20 41 50 49 2e  suse of the API.
1270: 0a 23 20 32 20 3d 3d 20 44 69 73 61 62 6c 65 73  .# 2 == Disables
1280: 20 4e 44 45 42 55 47 20 61 6e 64 20 61 6c 6c 20   NDEBUG and all
1290: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 6e  optimizations an
12a0: 64 20 74 68 65 6e 20 65 6e 61 62 6c 65 73 20 50  d then enables P
12b0: 44 42 73 2e 0a 23 20 33 20 3d 3d 20 53 51 4c 49  DBs..# 3 == SQLI
12c0: 54 45 5f 44 45 42 55 47 3a 20 45 6e 61 62 6c 65  TE_DEBUG: Enable
12d0: 73 20 76 61 72 69 6f 75 73 20 64 69 61 67 6e 6f  s various diagno
12e0: 73 74 69 63 73 20 6d 65 73 73 61 67 65 73 20 61  stics messages a
12f0: 6e 64 20 63 6f 64 65 2e 0a 23 20 34 20 3d 3d 20  nd code..# 4 ==
1300: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c  SQLITE_WIN32_MAL
1310: 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3a 20 56 61  LOC_VALIDATE: Va
1320: 6c 69 64 61 74 65 20 74 68 65 20 57 69 6e 33 32  lidate the Win32
1330: 20 6e 61 74 69 76 65 20 68 65 61 70 20 70 65 72   native heap per
1340: 20 63 61 6c 6c 2e 0a 23 20 35 20 3d 3d 20 53 51   call..# 5 == SQ
1350: 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54 52  LITE_DEBUG_OS_TR
1360: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
1370: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 4f 53 54  put from the OST
1380: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
1390: 20 36 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41   6 == SQLITE_ENA
13a0: 42 4c 45 5f 49 4f 54 52 41 43 45 3a 20 45 6e 61  BLE_IOTRACE: Ena
13b0: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
13c0: 20 74 68 65 20 49 4f 54 52 41 43 45 28 29 20 6d   the IOTRACE() m
13d0: 61 63 72 6f 73 2e 0a 23 0a 21 49 46 4e 44 45 46  acros..#.!IFNDEF
13e0: 20 44 45 42 55 47 0a 44 45 42 55 47 20 3d 20 30   DEBUG.DEBUG = 0
13f0: 0a 21 45 4e 44 49 46 0a 0a 23 20 45 6e 61 62 6c  .!ENDIF..# Enabl
1400: 65 20 75 73 65 20 6f 66 20 61 76 61 69 6c 61 62  e use of availab
1410: 6c 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  le compiler opti
1420: 6d 69 7a 61 74 69 6f 6e 73 3f 20 20 4e 6f 72 6d  mizations?  Norm
1430: 61 6c 6c 79 2c 20 74 68 69 73 20 73 68 6f 75 6c  ally, this shoul
1440: 64 20 62 65 0a 23 20 6e 6f 6e 2d 7a 65 72 6f 2e  d be.# non-zero.
1450: 20 20 53 65 74 74 69 6e 67 20 74 68 69 73 20 74    Setting this t
1460: 6f 20 7a 65 72 6f 2c 20 74 68 75 73 20 64 69 73  o zero, thus dis
1470: 61 62 6c 69 6e 67 20 61 6c 6c 20 63 6f 6d 70 69  abling all compi
1480: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
1490: 73 2c 0a 23 20 63 61 6e 20 62 65 20 75 73 65 66  s,.# can be usef
14a0: 75 6c 20 66 6f 72 20 74 65 73 74 69 6e 67 2e 0a  ul for testing..
14b0: 23 0a 21 49 46 4e 44 45 46 20 4f 50 54 49 4d 49  #.!IFNDEF OPTIMI
14c0: 5a 41 54 49 4f 4e 53 0a 4f 50 54 49 4d 49 5a 41  ZATIONS.OPTIMIZA
14d0: 54 49 4f 4e 53 20 3d 20 32 0a 21 45 4e 44 49 46  TIONS = 2.!ENDIF
14e0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20  ..# Set this to
14f0: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable
1500: 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68 65 20  support for the
1510: 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f  session extensio
1520: 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 45 53  n..#.!IFNDEF SES
1530: 53 49 4f 4e 0a 53 45 53 53 49 4f 4e 20 3d 20 30  SION.SESSION = 0
1540: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1550: 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  he source code f
1560: 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 20 62  ile to be used b
1570: 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 61 6e  y executables an
1580: 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 65 6e  d libraries when
1590: 0a 23 20 74 68 65 79 20 6e 65 65 64 20 74 68 65  .# they need the
15a0: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 0a 23   amalgamation..#
15b0: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33  .!IFNDEF SQLITE3
15c0: 43 0a 21 49 46 20 24 28 53 50 4c 49 54 5f 41 4d  C.!IF $(SPLIT_AM 15d0: 41 4c 47 41 4d 41 54 49 4f 4e 29 21 3d 30 0a 53 ALGAMATION)!=0.S 15e0: 51 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65 QLITE3C = sqlite 15f0: 33 2d 61 6c 6c 2e 63 0a 21 45 4c 53 45 0a 53 51 3-all.c.!ELSE.SQ 1600: 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65 33 LITE3C = sqlite3 1610: 2e 63 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 .c.!ENDIF.!ENDIF 1620: 0a 0a 23 20 53 65 74 20 74 68 65 20 69 6e 63 6c ..# Set the incl 1630: 75 64 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f ude code file to 1640: 20 62 65 20 75 73 65 64 20 62 79 20 65 78 65 63 be used by exec 1650: 75 74 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 utables and libr 1660: 61 72 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 aries when.# the 1670: 79 20 6e 65 65 64 20 53 51 4c 69 74 65 2e 0a 23 y need SQLite..# 1680: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 .!IFNDEF SQLITE3 1690: 48 0a 53 51 4c 49 54 45 33 48 20 3d 20 73 71 6c H.SQLITE3H = sql 16a0: 69 74 65 33 2e 68 0a 21 45 4e 44 49 46 0a 0a 23 ite3.h.!ENDIF..# 16b0: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d This is the nam 16c0: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65 e to use for the 16d0: 20 53 51 4c 69 74 65 20 64 79 6e 61 6d 69 63 20 SQLite dynamic 16e0: 6c 69 6e 6b 20 6c 69 62 72 61 72 79 20 28 44 4c link library (DL 16f0: 4c 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 L)..#.!IFNDEF SQ 1700: 4c 49 54 45 33 44 4c 4c 0a 21 49 46 20 24 28 46 LITE3DLL.!IF$(F
1710: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c  OR_WIN10)!=0.SQL
1720: 49 54 45 33 44 4c 4c 20 3d 20 77 69 6e 73 71 6c  ITE3DLL = winsql
1730: 69 74 65 33 2e 64 6c 6c 0a 21 45 4c 53 45 0a 53  ite3.dll.!ELSE.S
1740: 51 4c 49 54 45 33 44 4c 4c 20 3d 20 73 71 6c 69  QLITE3DLL = sqli
1750: 74 65 33 2e 64 6c 6c 0a 21 45 4e 44 49 46 0a 21  te3.dll.!ENDIF.!
1760: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
1770: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65   the name to use
1780: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20   for the SQLite
1790: 69 6d 70 6f 72 74 20 6c 69 62 72 61 72 79 20 28  import library (
17a0: 4c 49 42 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  LIB)..#.!IFNDEF
17b0: 53 51 4c 49 54 45 33 4c 49 42 0a 21 49 46 20 24  SQLITE3LIB.!IF $17c0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 (FOR_WIN10)!=0.S 17d0: 51 4c 49 54 45 33 4c 49 42 20 3d 20 77 69 6e 73 QLITE3LIB = wins 17e0: 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45 qlite3.lib.!ELSE 17f0: 0a 53 51 4c 49 54 45 33 4c 49 42 20 3d 20 73 71 .SQLITE3LIB = sq 1800: 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4e 44 49 46 lite3.lib.!ENDIF 1810: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 .!ENDIF..# This 1820: 69 73 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 is the name to u 1830: 73 65 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 se for the SQLit 1840: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 e shell executab 1850: 6c 65 20 28 45 58 45 29 2e 0a 23 0a 21 49 46 4e le (EXE)..#.!IFN 1860: 44 45 46 20 53 51 4c 49 54 45 33 45 58 45 0a 21 DEF SQLITE3EXE.! 1870: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 IF$(FOR_WIN10)!
1880: 3d 30 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20  =0.SQLITE3EXE =
1890: 77 69 6e 73 71 6c 69 74 65 33 73 68 65 6c 6c 2e  winsqlite3shell.
18a0: 65 78 65 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45  exe.!ELSE.SQLITE
18b0: 33 45 58 45 20 3d 20 73 71 6c 69 74 65 33 2e 65  3EXE = sqlite3.e
18c0: 78 65 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  xe.!ENDIF.!ENDIF
18d0: 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20  ..# This is the
18e0: 61 72 67 75 6d 65 6e 74 20 75 73 65 64 20 74 6f  argument used to
18f0: 20 73 65 74 20 74 68 65 20 70 72 6f 67 72 61 6d   set the program
1900: 20 64 61 74 61 62 61 73 65 20 28 50 44 42 29 20   database (PDB)
1910: 66 69 6c 65 20 66 6f 72 20 74 68 65 0a 23 20 53  file for the.# S
1920: 51 4c 69 74 65 20 73 68 65 6c 6c 20 65 78 65 63  QLite shell exec
1930: 75 74 61 62 6c 65 20 28 45 58 45 29 2e 0a 23 0a  utable (EXE)..#.
1940: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 45  !IFNDEF SQLITE3E
1950: 58 45 50 44 42 0a 21 49 46 20 24 28 46 4f 52 5f  XEPDB.!IF $(FOR_ 1960: 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 WIN10)!=0.SQLITE 1970: 33 45 58 45 50 44 42 20 3d 0a 21 45 4c 53 45 0a 3EXEPDB =.!ELSE. 1980: 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 3d 20 SQLITE3EXEPDB = 1990: 2f 70 64 62 3a 73 71 6c 69 74 65 33 73 68 2e 70 /pdb:sqlite3sh.p 19a0: 64 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 db.!ENDIF.!ENDIF 19b0: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 ..# <<mark>>.# T 19c0: 68 65 73 65 20 61 72 65 20 74 68 65 20 6e 61 6d hese are the nam 19d0: 65 73 20 6f 66 20 74 68 65 20 63 75 73 74 6f 6d es of the custom 19e0: 69 7a 65 64 20 54 63 6c 20 68 65 61 64 65 72 20 ized Tcl header 19f0: 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 76 61 files used by va 1a00: 72 69 6f 75 73 20 70 61 72 74 73 0a 23 20 6f 66 rious parts.# of 1a10: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 77 this makefile w 1a20: 68 65 6e 20 74 68 65 20 73 74 64 63 61 6c 6c 20 hen the stdcall 1a30: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 calling conventi 1a40: 6f 6e 20 69 73 20 69 6e 20 75 73 65 2e 20 20 49 on is in use. I 1a50: 74 20 69 73 20 6e 6f 74 0a 23 20 75 73 65 64 20 t is not.# used 1a60: 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 70 75 for any other pu 1a70: 72 70 6f 73 65 2e 0a 23 0a 21 49 46 4e 44 45 46 rpose..#.!IFNDEF 1a80: 20 53 51 4c 49 54 45 54 43 4c 48 0a 53 51 4c 49 SQLITETCLH.SQLI 1a90: 54 45 54 43 4c 48 20 3d 20 73 71 6c 69 74 65 5f TETCLH = sqlite_ 1aa0: 74 63 6c 2e 68 0a 21 45 4e 44 49 46 0a 0a 21 49 tcl.h.!ENDIF..!I 1ab0: 46 4e 44 45 46 20 53 51 4c 49 54 45 54 43 4c 44 FNDEF SQLITETCLD 1ac0: 45 43 4c 53 48 0a 53 51 4c 49 54 45 54 43 4c 44 ECLSH.SQLITETCLD 1ad0: 45 43 4c 53 48 20 3d 20 73 71 6c 69 74 65 5f 74 ECLSH = sqlite_t 1ae0: 63 6c 44 65 63 6c 73 2e 68 0a 21 45 4e 44 49 46 clDecls.h.!ENDIF 1af0: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 ..# These are th 1b00: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72 e additional tar 1b10: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 74 61 gets that the ta 1b20: 72 67 65 74 73 20 74 68 61 74 20 69 6e 74 65 67 rgets that integ 1b30: 72 61 74 65 20 77 69 74 68 20 74 68 65 0a 23 20 rate with the.# 1b40: 54 63 6c 20 6c 69 62 72 61 72 79 20 73 68 6f 75 Tcl library shou 1b50: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 20 77 68 65 ld depend on whe 1b60: 6e 20 63 6f 6d 70 69 6c 69 6e 67 2c 20 65 74 63 n compiling, etc 1b70: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1b80: 54 45 5f 54 43 4c 5f 44 45 50 0a 21 49 46 20 24 TE_TCL_DEP.!IF$
1b90: 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30  (USE_STDCALL)!=0
1ba0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 1bb0: 21 3d 30 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44 !=0.SQLITE_TCL_D 1bc0: 45 50 20 3d 20 24 28 53 51 4c 49 54 45 54 43 4c EP =$(SQLITETCL
1bd0: 44 45 43 4c 53 48 29 20 24 28 53 51 4c 49 54 45  DECLSH) $(SQLITE 1be0: 54 43 4c 48 29 0a 21 45 4c 53 45 0a 53 51 4c 49 TCLH).!ELSE.SQLI 1bf0: 54 45 5f 54 43 4c 5f 44 45 50 20 3d 0a 21 45 4e TE_TCL_DEP =.!EN 1c00: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f DIF.!ENDIF.# <</ 1c10: 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68 65 73 65 20 mark>>..# These 1c20: 61 72 65 20 74 68 65 20 22 73 74 61 6e 64 61 72 are the "standar 1c30: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c d" SQLite compil 1c40: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 ation options us 1c50: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e ed when compilin 1c60: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 g for.# the Wind 1c70: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a ows platform..#. 1c80: 21 49 46 4e 44 45 46 20 4f 50 54 5f 46 45 41 54 !IFNDEF OPT_FEAT 1c90: 55 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 24 28 URE_FLAGS.!IF$(
1ca0: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
1cb0: 54 49 4f 4e 29 3d 3d 30 0a 4f 50 54 5f 46 45 41  TION)==0.OPT_FEA
1cc0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O 1cd0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 1ce0: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c ) -DSQLITE_ENABL 1cf0: 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f 46 45 41 E_FTS3=1.OPT_FEA 1d00: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f TURE_FLAGS =$(O
1d10: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
1d20: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
1d30: 45 5f 52 54 52 45 45 3d 31 0a 21 45 4e 44 49 46  E_RTREE=1.!ENDIF
1d40: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
1d50: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU 1d60: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1d70: 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e TE_ENABLE_COLUMN 1d80: 5f 4d 45 54 41 44 41 54 41 3d 31 0a 21 45 4e 44 _METADATA=1.!END 1d90: 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68 65 IF..# Should the 1da0: 20 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 session extensi 1db0: 6f 6e 20 62 65 20 65 6e 61 62 6c 65 64 3f 20 20 on be enabled? 1dc0: 49 66 20 73 6f 2c 20 61 64 64 20 63 6f 6d 70 69 If so, add compi 1dd0: 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23 lation options.# 1de0: 20 74 6f 20 65 6e 61 62 6c 65 20 69 74 2e 0a 23 to enable it..# 1df0: 0a 21 49 46 20 24 28 53 45 53 53 49 4f 4e 29 21 .!IF$(SESSION)!
1e00: 3d 30 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46  =0.OPT_FEATURE_F
1e10: 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41  LAGS = $(OPT_FEA 1e20: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 TURE_FLAGS) -DSQ 1e30: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 LITE_ENABLE_SESS 1e40: 49 4f 4e 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52 ION=1.OPT_FEATUR 1e50: 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f E_FLAGS =$(OPT_
1e60: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d  FEATURE_FLAGS) -
1e70: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 50  DSQLITE_ENABLE_P
1e80: 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a  REUPDATE_HOOK=1.
1e90: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20  !ENDIF..# These
1ea0: 61 72 65 20 74 68 65 20 22 65 78 74 65 6e 64 65  are the "extende
1eb0: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c  d" SQLite compil
1ec0: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73  ation options us
1ed0: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ed when compilin
1ee0: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64  g for.# the Wind
1ef0: 6f 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d 2e  ows 10 platform.
1f00: 0a 23 0a 21 49 46 4e 44 45 46 20 45 58 54 5f 46  .#.!IFNDEF EXT_F
1f10: 45 41 54 55 52 45 5f 46 4c 41 47 53 0a 21 49 46  EATURE_FLAGS.!IF
1f20: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 1f30: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 .EXT_FEATURE_FLA 1f40: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 GS =$(EXT_FEATU
1f50: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1f60: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 34 3d 31  TE_ENABLE_FTS4=1
1f70: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .EXT_FEATURE_FLA
1f80: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55  GS = $(EXT_FEATU 1f90: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1fa0: 54 45 5f 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43 TE_SYSTEM_MALLOC 1fb0: 3d 31 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 =1.EXT_FEATURE_F 1fc0: 4c 41 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 LAGS =$(EXT_FEA
1fd0: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
1fe0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54  LITE_OMIT_LOCALT
1ff0: 49 4d 45 3d 31 0a 21 45 4c 53 45 0a 45 58 54 5f  IME=1.!ELSE.EXT_
2000: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 0a  FEATURE_FLAGS =.
2010: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
2020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
2070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 45  ############## E
2090: 4e 44 20 4f 46 20 4f 50 54 49 4f 4e 53 20 23 23  ND OF OPTIONS ##
20a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
20c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a  ##############..
2110: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
2120: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73   for the Windows
2130: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 74 68   10 platform, th
2140: 65 20 50 4c 41 54 46 4f 52 4d 20 6d 61 63 72 6f  e PLATFORM macro
2150: 20 6d 75 73 74 20 62 65 20 73 65 74 0a 23 20 74   must be set.# t
2160: 6f 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65  o an appropriate
2170: 20 76 61 6c 75 65 20 28 65 2e 67 2e 20 78 38 36   value (e.g. x86
2180: 2c 20 78 36 34 2c 20 61 72 6d 2c 20 61 72 6d 36  , x64, arm, arm6
2190: 34 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46 20 24  4, etc)..#.!IF $21a0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 (FOR_WIN10)!=0.! 21b0: 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a IFNDEF PLATFORM. 21c0: 21 45 52 52 4f 52 20 55 73 69 6e 67 20 74 68 65 !ERROR Using the 21d0: 20 46 4f 52 5f 57 49 4e 31 30 20 6f 70 74 69 6f FOR_WIN10 optio 21e0: 6e 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c n requires a val 21f0: 75 65 20 66 6f 72 20 50 4c 41 54 46 4f 52 4d 2e ue for PLATFORM. 2200: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 2210: 23 20 54 68 69 73 20 61 73 73 75 6d 65 73 20 74 # This assumes t 2220: 68 61 74 20 4d 53 56 43 20 69 73 20 61 6c 77 61 hat MSVC is alwa 2230: 79 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 20 ys installed in 2240: 33 32 2d 62 69 74 20 50 72 6f 67 72 61 6d 20 46 32-bit Program F 2250: 69 6c 65 73 20 64 69 72 65 63 74 6f 72 79 0a 23 iles directory.# 2260: 20 61 6e 64 20 73 65 74 73 20 74 68 65 20 76 61 and sets the va 2270: 72 69 61 62 6c 65 20 66 6f 72 20 75 73 65 20 69 riable for use i 2280: 6e 20 6c 6f 63 61 74 69 6e 67 20 6f 74 68 65 72 n locating other 2290: 20 33 32 2d 62 69 74 20 69 6e 73 74 61 6c 6c 73 32-bit installs 22a0: 20 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a accordingly..#. 22b0: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 PROGRAMFILES_X86 22c0: 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 =$(VCINSTALLDI
22d0: 52 29 5c 2e 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d  R)\..\...PROGRAM
22e0: 46 49 4c 45 53 5f 58 38 36 20 3d 20 24 28 50 52  FILES_X86 = $(PR 22f0: 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 3a 5c OGRAMFILES_X86:\ 2300: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f \=\)..# Check fo 2310: 72 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64 r the predefined 2320: 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 command macro C 2330: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 C. This should 2340: 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d point to the com 2350: 70 69 6c 65 72 0a 23 20 62 69 6e 61 72 79 20 66 piler.# binary f 2360: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c or the target pl 2370: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 atform. If it i 2380: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 s not defined, s 2390: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20 imply define it 23a0: 74 6f 0a 23 20 74 68 65 20 6c 65 67 61 63 79 20 to.# the legacy 23b0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 63 default value 'c 23c0: 6c 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 l.exe'..#.!IFNDE 23d0: 46 20 43 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65 F CC.CC = cl.exe 23e0: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b .!ENDIF..# Check 23f0: 20 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69 for the predefi 2400: 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 ned command macr 2410: 6f 20 43 53 43 2e 20 20 54 68 69 73 20 73 68 6f o CSC. This sho 2420: 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 61 20 77 uld point to a w 2430: 6f 72 6b 69 6e 67 0a 23 20 43 20 53 68 61 72 70 orking.# C Sharp 2440: 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 compiler binary 2450: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20 . If it is not 2460: 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 defined, simply 2470: 64 65 66 69 6e 65 20 69 74 20 74 6f 20 74 68 65 define it to the 2480: 0a 23 20 6c 65 67 61 63 79 20 64 65 66 61 75 6c .# legacy defaul 2490: 74 20 76 61 6c 75 65 20 27 63 73 63 2e 65 78 65 t value 'csc.exe 24a0: 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 53 43 '..#.!IFNDEF CSC 24b0: 0a 43 53 43 20 3d 20 63 73 63 2e 65 78 65 0a 21 .CSC = csc.exe.! 24c0: 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 ENDIF..# Check f 24d0: 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d or the command m 24e0: 61 63 72 6f 20 4c 44 2e 20 20 54 68 69 73 20 73 acro LD. This s 24f0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 hould point to t 2500: 68 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61 72 79 he linker binary 2510: 20 66 6f 72 0a 23 20 74 68 65 20 74 61 72 67 65 for.# the targe 2520: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 t platform. If 2530: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 it is not define 2540: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 d, simply define 2550: 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 it to the legac 2560: 79 0a 23 20 64 65 66 61 75 6c 74 20 76 61 6c 75 y.# default valu 2570: 65 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a e 'link.exe'..#. 2580: 21 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20 3d 20 !IFNDEF LD.LD = 2590: 6c 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49 46 0a link.exe.!ENDIF. 25a0: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 .# Check for the 25b0: 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d predefined comm 25c0: 61 6e 64 20 6d 61 63 72 6f 20 52 43 2e 20 20 54 and macro RC. T 25d0: 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 his should point 25e0: 20 74 6f 20 74 68 65 20 72 65 73 6f 75 72 63 65 to the resource 25f0: 0a 23 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 .# compiler bina 2600: 72 79 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 ry for the targe 2610: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 t platform. If 2620: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 it is not define 2630: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 d, simply define 2640: 0a 23 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 .# it to the leg 2650: 61 63 79 20 64 65 66 61 75 6c 74 20 76 61 6c 75 acy default valu 2660: 65 20 27 72 63 2e 65 78 65 27 2e 0a 23 0a 21 49 e 'rc.exe'..#.!I 2670: 46 4e 44 45 46 20 52 43 0a 52 43 20 3d 20 72 63 FNDEF RC.RC = rc 2680: 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43 .exe.!ENDIF..# C 2690: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 heck for the MSV 26a0: 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 C runtime librar 26b0: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f y path macro. O 26c0: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 therwise, this v 26d0: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 alue will.# defa 26e0: 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27 ult to the 'lib' 26f0: 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72 directory under 2700: 6e 65 61 74 68 20 74 68 65 20 4d 53 56 43 20 69 neath the MSVC i 2710: 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 nstallation dire 2720: 63 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 ctory..#.!IFNDEF 2730: 20 43 52 54 4c 49 42 50 41 54 48 0a 43 52 54 4c CRTLIBPATH.CRTL 2740: 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e 53 IBPATH =$(VCINS
2750: 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e  TALLDIR)\lib.!EN
2760: 44 49 46 0a 0a 43 52 54 4c 49 42 50 41 54 48 20  DIF..CRTLIBPATH
2770: 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 3a 5c  = $(CRTLIBPATH:\ 2780: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f \=\)..# Check fo 2790: 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 r the command ma 27a0: 63 72 6f 20 4e 43 43 2e 20 20 54 68 69 73 20 73 cro NCC. This s 27b0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 hould point to t 27c0: 68 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 he compiler bina 27d0: 72 79 0a 23 20 66 6f 72 20 74 68 65 20 70 6c 61 ry.# for the pla 27e0: 74 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c tform the compil 27f0: 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 ation process is 2800: 20 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6f 6e taking place on 2810: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 0a . If it is not. 2820: 23 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c # defined, simpl 2830: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 68 y define it to h 2840: 61 76 65 20 74 68 65 20 73 61 6d 65 20 76 61 6c ave the same val 2850: 75 65 20 61 73 20 74 68 65 20 43 43 20 6d 61 63 ue as the CC mac 2860: 72 6f 2e 20 20 57 68 65 6e 0a 23 20 63 72 6f 73 ro. When.# cros 2870: 73 2d 63 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20 s-compiling, it 2880: 69 73 20 73 75 67 67 65 73 74 65 64 20 74 68 61 is suggested tha 2890: 74 20 74 68 69 73 20 6d 61 63 72 6f 20 62 65 20 t this macro be 28a0: 6d 6f 64 69 66 69 65 64 20 76 69 61 20 74 68 65 modified via the 28b0: 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 command.# line 28c0: 28 73 69 6e 63 65 20 6e 6d 61 6b 65 20 69 74 73 (since nmake its 28d0: 65 6c 66 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f elf does not pro 28e0: 76 69 64 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 vide a built-in 28f0: 6d 65 74 68 6f 64 20 74 6f 20 67 75 65 73 73 20 method to guess 2900: 69 74 29 2e 0a 23 20 46 6f 72 20 65 78 61 6d 70 it)..# For examp 2910: 6c 65 2c 20 74 6f 20 75 73 65 20 74 68 65 20 78 le, to use the x 2920: 38 36 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 6e 86 compiler when 2930: 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 cross-compiling 2940: 20 66 6f 72 20 78 36 34 2c 20 61 20 63 6f 6d 6d for x64, a comm 2950: 61 6e 64 0a 23 20 6c 69 6e 65 20 73 69 6d 69 6c and.# line simil 2960: 61 72 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 ar to the follow 2970: 69 6e 67 20 63 6f 75 6c 64 20 62 65 20 75 73 65 ing could be use 2980: 64 20 28 61 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 d (all on one li 2990: 6e 65 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 ne):.#.# nma 29a0: 6b 65 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d ke /f Makefile.m 29b0: 73 63 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 sc sqlite3.dll.# 29c0: 20 20 20 20 20 20 20 20 20 20 20 58 43 4f 4d 50 XCOMP 29d0: 49 4c 45 3d 31 20 55 53 45 5f 4e 41 54 49 56 45 ILE=1 USE_NATIVE 29e0: 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 23 20 _LIBPATHS=1.#.# 29f0: 41 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 Alternatively, t 2a00: 68 65 20 66 75 6c 6c 20 70 61 74 68 20 61 6e 64 he full path and 2a10: 20 66 69 6c 65 20 6e 61 6d 65 20 74 6f 20 74 68 file name to th 2a20: 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 e compiler binar 2a30: 79 20 66 6f 72 20 74 68 65 0a 23 20 70 6c 61 74 y for the.# plat 2a40: 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 form the compila 2a50: 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20 tion process is 2a60: 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6d 61 79 taking place may 2a70: 20 62 65 20 73 70 65 63 69 66 69 65 64 20 28 61 be specified (a 2a80: 6c 6c 20 6f 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 ll on.# one line 2a90: 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 ):.#.# nmake 2aa0: 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 /f Makefile.msc 2ab0: 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 sqlite3.dll.# 2ac0: 20 20 20 20 20 20 20 20 20 22 4e 43 43 3d 22 22 "NCC="" 2ad0: 25 56 43 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62 %VCINSTALLDIR%\b 2ae0: 69 6e 5c 63 6c 2e 65 78 65 22 22 22 0a 23 20 20 in\cl.exe""".# 2af0: 20 20 20 20 20 20 20 20 20 55 53 45 5f 4e 41 54 USE_NAT 2b00: 49 56 45 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 IVE_LIBPATHS=1.# 2b10: 0a 21 49 46 44 45 46 20 4e 43 43 0a 4e 43 43 20 .!IFDEF NCC.NCC 2b20: 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 =$(NCC:\\=\).!E
2b30: 4c 53 45 49 46 20 24 28 58 43 4f 4d 50 49 4c 45  LSEIF $(XCOMPILE 2b40: 29 21 3d 30 0a 4e 43 43 20 3d 20 22 24 28 56 43 )!=0.NCC = "$(VC
2b50: 49 4e 53 54 41 4c 4c 44 49 52 29 5c 62 69 6e 5c  INSTALLDIR)\bin\
2b60: 24 28 43 43 29 22 0a 4e 43 43 20 3d 20 24 28 4e  $(CC)".NCC =$(N
2b70: 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e  CC:\\=\).!ELSE.N
2b80: 43 43 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49  CC = $(CC).!ENDI 2b90: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 F..# Check for t 2ba0: 68 65 20 4d 53 56 43 20 6e 61 74 69 76 65 20 72 he MSVC native r 2bb0: 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70 untime library p 2bc0: 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 ath macro. Othe 2bd0: 72 77 69 73 65 2c 0a 23 20 74 68 69 73 20 76 61 rwise,.# this va 2be0: 6c 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 lue will default 2bf0: 20 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 to the 'lib' di 2c00: 72 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 rectory undernea 2c10: 74 68 20 74 68 65 20 4d 53 56 43 0a 23 20 69 6e th the MSVC.# in 2c20: 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 stallation direc 2c30: 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 tory..#.!IFNDEF 2c40: 4e 43 52 54 4c 49 42 50 41 54 48 0a 4e 43 52 54 NCRTLIBPATH.NCRT 2c50: 4c 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e LIBPATH =$(VCIN
2c60: 53 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45  STALLDIR)\lib.!E
2c70: 4e 44 49 46 0a 0a 4e 43 52 54 4c 49 42 50 41 54  NDIF..NCRTLIBPAT
2c80: 48 20 3d 20 24 28 4e 43 52 54 4c 49 42 50 41 54  H = $(NCRTLIBPAT 2c90: 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b H:\\=\)..# Check 2ca0: 20 66 6f 72 20 74 68 65 20 50 6c 61 74 66 6f 72 for the Platfor 2cb0: 6d 20 53 44 4b 20 6c 69 62 72 61 72 79 20 70 61 m SDK library pa 2cc0: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 th macro. Other 2cd0: 77 69 73 65 2c 20 74 68 69 73 0a 23 20 76 61 6c wise, this.# val 2ce0: 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 ue will default 2cf0: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72 to the 'lib' dir 2d00: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 ectory underneat 2d10: 68 20 74 68 65 20 57 69 6e 64 6f 77 73 0a 23 20 h the Windows.# 2d20: 53 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e SDK installation 2d30: 20 64 69 72 65 63 74 6f 72 79 20 28 74 68 65 20 directory (the 2d40: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 environment vari 2d50: 61 62 6c 65 20 75 73 65 64 20 61 70 70 65 61 72 able used appear 2d60: 73 0a 23 20 74 6f 20 62 65 20 61 76 61 69 6c 61 s.# to be availa 2d70: 62 6c 65 20 77 68 65 6e 20 75 73 69 6e 67 20 56 ble when using V 2d80: 69 73 75 61 6c 20 43 2b 2b 20 32 30 30 38 20 6f isual C++ 2008 o 2d90: 72 20 6c 61 74 65 72 20 76 69 61 20 74 68 65 0a r later via the. 2da0: 23 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e # command line). 2db0: 0a 23 0a 21 49 46 4e 44 45 46 20 4e 53 44 4b 4c .#.!IFNDEF NSDKL 2dc0: 49 42 50 41 54 48 0a 4e 53 44 4b 4c 49 42 50 41 IBPATH.NSDKLIBPA 2dd0: 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44 TH =$(WINDOWSSD
2de0: 4b 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46  KDIR)\lib.!ENDIF
2df0: 0a 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d 20  ..NSDKLIBPATH =
2e00: 24 28 4e 53 44 4b 4c 49 42 50 41 54 48 3a 5c 5c  $(NSDKLIBPATH:\\ 2e10: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 =\)..# Check for 2e20: 20 74 68 65 20 55 43 52 54 20 6c 69 62 72 61 72 the UCRT librar 2e30: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f y path macro. O 2e40: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 therwise, this v 2e50: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 alue will.# defa 2e60: 75 6c 74 20 74 6f 20 74 68 65 20 76 65 72 73 69 ult to the versi 2e70: 6f 6e 2d 73 70 65 63 69 66 69 63 2c 20 70 6c 61 on-specific, pla 2e80: 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 27 tform-specific ' 2e90: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 0a 23 lib' directory.# 2ea0: 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 underneath the 2eb0: 57 69 6e 64 6f 77 73 20 53 44 4b 20 69 6e 73 74 Windows SDK inst 2ec0: 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f allation directo 2ed0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 43 ry..#.!IFNDEF UC 2ee0: 52 54 4c 49 42 50 41 54 48 0a 55 43 52 54 4c 49 RTLIBPATH.UCRTLI 2ef0: 42 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 BPATH =$(WINDOW
2f00: 53 53 44 4b 44 49 52 29 5c 6c 69 62 5c 24 28 57  SSDKDIR)\lib\$(W 2f10: 49 4e 44 4f 57 53 53 44 4b 4c 49 42 56 45 52 53 INDOWSSDKLIBVERS 2f20: 49 4f 4e 29 5c 75 63 72 74 5c 24 28 50 4c 41 54 ION)\ucrt\$(PLAT
2f30: 46 4f 52 4d 29 0a 21 45 4e 44 49 46 0a 0a 55 43  FORM).!ENDIF..UC
2f40: 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 55 43  RTLIBPATH = $(UC 2f50: 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a RTLIBPATH:\\=\). 2f60: 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e .# C compiler an 2f70: 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 d options for us 2f80: 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 e in building ex 2f90: 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 ecutables that.# 2fa0: 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 will run on the 2fb0: 20 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 20 69 platform that i 2fc0: 73 20 64 6f 69 6e 67 20 74 68 65 20 62 75 69 6c s doing the buil 2fd0: 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 d..#.!IF$(USE_F
2fe0: 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 42 43 43 20  ULLWARN)!=0.BCC
2ff0: 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f  = $(NCC) -nologo 3000: 20 2d 57 34 20 24 28 43 43 4f 50 54 53 29 20 24 -W4$(CCOPTS) $3010: 28 42 43 43 4f 50 54 53 29 0a 21 45 4c 53 45 0a (BCCOPTS).!ELSE. 3020: 42 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 6e 6f BCC =$(NCC) -no
3030: 6c 6f 67 6f 20 2d 57 33 20 24 28 43 43 4f 50 54  logo -W3 $(CCOPT 3040: 53 29 20 24 28 42 43 43 4f 50 54 53 29 0a 21 45 S)$(BCCOPTS).!E
3050: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 69 66  NDIF..# Check if
3060: 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 6c   assembly code l
3070: 69 73 74 69 6e 67 73 20 73 68 6f 75 6c 64 20 62  istings should b
3080: 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20  e generated for
3090: 74 68 65 20 73 6f 75 72 63 65 0a 23 20 63 6f 64  the source.# cod
30a0: 65 20 66 69 6c 65 73 20 74 6f 20 62 65 20 63 6f  e files to be co
30b0: 6d 70 69 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28  mpiled..#.!IF $( 30c0: 55 53 45 5f 4c 49 53 54 49 4e 47 53 29 21 3d 30 USE_LISTINGS)!=0 30d0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 46 .BCC =$(BCC) -F
30e0: 41 63 73 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68  Acs.!ENDIF..# Ch
30f0: 65 63 6b 20 69 66 20 74 68 65 20 6e 61 74 69 76  eck if the nativ
3100: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths
3110: 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 77  should be used w
3120: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 23 20  hen compiling.#
3130: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  the command line
3140: 20 74 6f 6f 6c 73 20 75 73 65 64 20 64 75 72 69   tools used duri
3150: 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  ng the compilati
3160: 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20 49 66 0a  on process.  If.
3170: 23 20 73 6f 2c 20 73 65 74 20 74 68 65 20 6e 65  # so, set the ne
3180: 63 65 73 73 61 72 79 20 6d 61 63 72 6f 20 6e 6f  cessary macro no
3190: 77 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4e  w..#.!IF $(USE_N 31a0: 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 29 21 ATIVE_LIBPATHS)! 31b0: 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48 53 20 3d =0.NLTLIBPATHS = 31c0: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 43 52 "/LIBPATH:$(NCR
31d0: 54 4c 49 42 50 41 54 48 29 22 20 22 2f 4c 49 42  TLIBPATH)" "/LIB
31e0: 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49 42 50 41  PATH:$(NSDKLIBPA 31f0: 54 48 29 22 0a 0a 21 49 46 44 45 46 20 4e 55 43 TH)"..!IFDEF NUC 3200: 52 54 4c 49 42 50 41 54 48 0a 4e 55 43 52 54 4c RTLIBPATH.NUCRTL 3210: 49 42 50 41 54 48 20 3d 20 24 28 4e 55 43 52 54 IBPATH =$(NUCRT
3220: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c  LIBPATH:\\=\).NL
3230: 54 4c 49 42 50 41 54 48 53 20 3d 20 24 28 4e 4c  TLIBPATHS = $(NL 3240: 54 4c 49 42 50 41 54 48 53 29 20 22 2f 4c 49 42 TLIBPATHS) "/LIB 3250: 50 41 54 48 3a 24 28 4e 55 43 52 54 4c 49 42 50 PATH:$(NUCRTLIBP
3260: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e  ATH)".!ENDIF.!EN
3270: 44 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65  DIF..# C compile
3280: 72 20 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f  r and options fo
3290: 72 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e  r use in buildin
32a0: 67 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 68  g executables th
32b0: 61 74 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f 6e  at.# will run on
32c0: 20 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74   the target plat
32d0: 66 6f 72 6d 2e 20 20 28 42 43 43 20 61 6e 64 20  form.  (BCC and
32e0: 54 43 43 20 61 72 65 20 75 73 75 61 6c 6c 79 20  TCC are usually
32f0: 74 68 65 0a 23 20 73 61 6d 65 20 75 6e 6c 65 73  the.# same unles
3300: 73 20 79 6f 75 72 20 61 72 65 20 63 72 6f 73 73  s your are cross
3310: 2d 63 6f 6d 70 69 6c 69 6e 67 2e 29 0a 23 0a 21  -compiling.).#.!
3320: 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57 41 52  IF $(USE_FULLWAR 3330: 4e 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 43 43 N)!=0.TCC =$(CC
3340: 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44  ) -nologo -W4 -D
3350: 49 4e 43 4c 55 44 45 5f 4d 53 56 43 5f 48 3d 31  INCLUDE_MSVC_H=1
3360: 20 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43   $(CCOPTS)$(TCC
3370: 4f 50 54 53 29 0a 21 45 4c 53 45 0a 54 43 43 20  OPTS).!ELSE.TCC
3380: 3d 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20  = $(CC) -nologo 3390: 2d 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 28 -W3$(CCOPTS) $( 33a0: 54 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a TCCOPTS).!ENDIF. 33b0: 0a 23 20 43 68 65 63 6b 20 69 66 20 77 61 72 6e .# Check if warn 33c0: 69 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 74 ings should be t 33d0: 72 65 61 74 65 64 20 61 73 20 65 72 72 6f 72 73 reated as errors 33e0: 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 2e when compiling. 33f0: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 41 54 .#.!IF$(USE_FAT
3400: 41 4c 5f 57 41 52 4e 29 21 3d 30 0a 54 43 43 20  AL_WARN)!=0.TCC
3410: 3d 20 24 28 54 43 43 29 20 2d 57 58 0a 21 45 4e  = $(TCC) -WX.!EN 3420: 44 49 46 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 DIF..TCC =$(TCC
3430: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49  ) -DSQLITE_OS_WI
3440: 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 54 4f 50 29  N=1 -I. -I$(TOP) 3450: 20 2d 49 24 28 54 4f 50 29 5c 73 72 63 20 2d 66 -I$(TOP)\src -f
3460: 70 3a 70 72 65 63 69 73 65 0a 52 43 43 20 3d 20  p:precise.RCC =
3470: 24 28 52 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f  $(RC) -DSQLITE_O 3480: 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 S_WIN=1 -I. -I$(
3490: 54 4f 50 29 20 2d 49 24 28 54 4f 50 29 5c 73 72  TOP) -I$(TOP)\sr 34a0: 63 20 24 28 52 43 4f 50 54 53 29 20 24 28 52 43 c$(RCOPTS) $(RC 34b0: 43 4f 50 54 53 29 0a 0a 23 20 43 68 65 63 6b 20 COPTS)..# Check 34c0: 69 66 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73 if we want to us 34d0: 65 20 74 68 65 20 22 73 74 64 63 61 6c 6c 22 20 e the "stdcall" 34e0: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 calling conventi 34f0: 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e on when compilin 3500: 67 2e 0a 23 20 54 68 69 73 20 69 73 20 6e 6f 74 g..# This is not 3510: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 supported by th 3520: 65 20 63 6f 6d 70 69 6c 65 72 73 20 66 6f 72 20 e compilers for 3530: 6e 6f 6e 2d 78 38 36 20 70 6c 61 74 66 6f 72 6d non-x86 platform 3540: 73 2e 20 20 49 74 20 73 68 6f 75 6c 64 0a 23 20 s. It should.# 3550: 61 6c 73 6f 20 62 65 20 6e 6f 74 65 64 20 68 65 also be noted he 3560: 72 65 20 74 68 61 74 20 62 75 69 6c 64 69 6e 67 re that building 3570: 20 61 6e 79 20 74 61 72 67 65 74 20 77 69 74 68 any target with 3580: 20 74 68 65 73 65 20 22 73 74 64 63 61 6c 6c 22 these "stdcall" 3590: 20 6f 70 74 69 6f 6e 73 0a 23 20 77 69 6c 6c 20 options.# will 35a0: 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 66 61 69 6c most likely fail 35b0: 20 69 66 20 74 68 65 20 54 63 6c 20 6c 69 62 72 if the Tcl libr 35c0: 61 72 79 20 69 73 20 61 6c 73 6f 20 72 65 71 75 ary is also requ 35d0: 69 72 65 64 2e 20 20 54 68 69 73 20 69 73 20 64 ired. This is d 35e0: 75 65 0a 23 20 74 6f 20 68 6f 77 20 74 68 65 20 ue.# to how the 35f0: 54 63 6c 20 6c 69 62 72 61 72 79 20 66 75 6e 63 Tcl library func 3600: 74 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72 tions are declar 3610: 65 64 20 61 6e 64 20 65 78 70 6f 72 74 65 64 20 ed and exported 3620: 28 69 2e 65 2e 20 77 69 74 68 6f 75 74 0a 23 20 (i.e. without.# 3630: 61 6e 20 65 78 70 6c 69 63 69 74 20 63 61 6c 6c an explicit call 3640: 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 ing convention, 3650: 77 68 69 63 68 20 72 65 73 75 6c 74 73 20 69 6e which results in 3660: 20 22 63 64 65 63 6c 22 29 2e 0a 23 0a 21 49 46 "cdecl")..#.!IF 3670: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21$(USE_STDCALL)!
3680: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1 3690: 30 29 21 3d 30 0a 21 49 46 20 22 24 28 50 4c 41 0)!=0.!IF "$(PLA
36a0: 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43  TFORM)"=="x86".C
36b0: 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  ORE_CCONV_OPTS =
36c0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44   -Gz -DSQLITE_CD
36d0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51  ECL=__cdecl -DSQ
36e0: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73  LITE_APICALL=__s
36f0: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f  tdcall -DSQLITE_
3700: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61  CALLBACK=__stdca
3710: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41  ll -DSQLITE_SYSA
3720: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 48 45  PI=__stdcall.SHE
3730: 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20  LL_CCONV_OPTS =
3740: 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45  -Gz -DSQLITE_CDE
3750: 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c  CL=__cdecl -DSQL
3760: 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74  ITE_APICALL=__st
3770: 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43  dcall -DSQLITE_C
3780: 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c  ALLBACK=__stdcal
3790: 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50  l -DSQLITE_SYSAP
37a0: 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 3c 3c  I=__stdcall.# <<
37b0: 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e  mark>>.TEST_CCON
37c0: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53  V_OPTS = -Gz -DS
37d0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64  QLITE_CDECL=__cd
37e0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49  ecl -DSQLITE_API
37f0: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  CALL=__stdcall -
3800: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b  DSQLITE_CALLBACK
3810: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c  =__stdcall -DSQL
3820: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64  ITE_SYSAPI=__std
3830: 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 5f 53  call -DINCLUDE_S
3840: 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 2d 44  QLITE_TCL_H=1 -D
3850: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d 5f 5f  SQLITE_TCLAPI=__
3860: 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  cdecl.# <</mark>
3870: 3e 0a 21 45 4c 53 45 0a 21 49 46 4e 44 45 46 20  >.!ELSE.!IFNDEF
3880: 50 4c 41 54 46 4f 52 4d 0a 43 4f 52 45 5f 43 43  PLATFORM.CORE_CC
3890: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d  ONV_OPTS = -Gz -
38a0: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f  DSQLITE_CDECL=__
38b0: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41  cdecl -DSQLITE_A
38c0: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c  PICALL=__stdcall
38d0: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41   -DSQLITE_CALLBA
38e0: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53  CK=__stdcall -DS
38f0: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73  QLITE_SYSAPI=__s
3900: 74 64 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f  tdcall.SHELL_CCO
3910: 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44  NV_OPTS = -Gz -D
3920: 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63  SQLITE_CDECL=__c
3930: 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50  decl -DSQLITE_AP
3940: 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20  ICALL=__stdcall
3950: 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43  -DSQLITE_CALLBAC
3960: 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51  K=__stdcall -DSQ
3970: 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74  LITE_SYSAPI=__st
3980: 64 63 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  dcall.# <<mark>>
3990: 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53  .TEST_CCONV_OPTS
39a0: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f   = -Gz -DSQLITE_
39b0: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44  CDECL=__cdecl -D
39c0: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f  SQLITE_APICALL=_
39d0: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54  _stdcall -DSQLIT
39e0: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64  E_CALLBACK=__std
39f0: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59  call -DSQLITE_SY
3a00: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  SAPI=__stdcall -
3a10: 44 49 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f  DINCLUDE_SQLITE_
3a20: 54 43 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45  TCL_H=1 -DSQLITE
3a30: 5f 54 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a  _TCLAPI=__cdecl.
3a40: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53  # <</mark>>.!ELS
3a50: 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  E.CORE_CCONV_OPT
3a60: 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f  S =.SHELL_CCONV_
3a70: 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72 6b 3e  OPTS =.# <<mark>
3a80: 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54  >.TEST_CCONV_OPT
3a90: 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  S =.# <</mark>>.
3aa0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 45  !ENDIF.!ENDIF.!E
3ab0: 4c 53 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f  LSE.CORE_CCONV_O
3ac0: 50 54 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e  PTS =.SHELL_CCON
3ad0: 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72  V_OPTS =.# <<mar
3ae0: 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f  k>>.TEST_CCONV_O
3af0: 50 54 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  PTS =.# <</mark>
3b00: 3e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  >.!ENDIF..# Thes
3b10: 65 20 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c  e are additional
3b20: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
3b30: 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 63  s used for the c
3b40: 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ore library..#.!
3b50: 49 46 4e 44 45 46 20 43 4f 52 45 5f 43 4f 4d 50  IFNDEF CORE_COMP
3b60: 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 24 28 44  ILE_OPTS.!IF $(D 3b70: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 YNAMIC_SHELL)!=0 3b80: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 ||$(FOR_WIN10)
3b90: 21 3d 30 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  !=0.CORE_COMPILE
3ba0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43  _OPTS = $(CORE_C 3bb0: 43 4f 4e 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c CONV_OPTS) -DSQL 3bc0: 49 54 45 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 ITE_API=__declsp 3bd0: 65 63 28 64 6c 6c 65 78 70 6f 72 74 29 0a 21 45 ec(dllexport).!E 3be0: 4c 53 45 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 LSE.CORE_COMPILE 3bf0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43 _OPTS =$(CORE_C
3c00: 43 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49  CONV_OPTS).!ENDI
3c10: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  F.!ENDIF..# Thes
3c20: 65 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69  e are the additi
3c30: 6f 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61  onal targets tha
3c40: 74 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  t the core libra
3c50: 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e 64  ry should depend
3c60: 20 6f 6e 0a 23 20 77 68 65 6e 20 6c 69 6e 6b 69   on.# when linki
3c70: 6e 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 4f  ng..#.!IFNDEF CO
3c80: 52 45 5f 4c 49 4e 4b 5f 44 45 50 0a 21 49 46 20  RE_LINK_DEP.!IF
3c90: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29  $(DYNAMIC_SHELL) 3ca0: 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 !=0.CORE_LINK_DE 3cb0: 50 20 3d 0a 21 45 4c 53 45 49 46 20 24 28 46 4f P =.!ELSEIF$(FO
3cc0: 52 5f 57 49 4e 31 30 29 3d 3d 30 20 7c 7c 20 22  R_WIN10)==0 || "
3cd0: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78  $(PLATFORM)"=="x 3ce0: 38 36 22 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 86".CORE_LINK_DE 3cf0: 50 20 3d 20 73 71 6c 69 74 65 33 2e 64 65 66 0a P = sqlite3.def. 3d00: 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e 4b 5f !ELSE.CORE_LINK_ 3d10: 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e DEP =.!ENDIF.!EN 3d20: 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65 DIF..# These are 3d30: 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b additional link 3d40: 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 er options used 3d50: 66 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 for the core lib 3d60: 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 rary..#.!IFNDEF 3d70: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 21 CORE_LINK_OPTS.! 3d80: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 IF$(DYNAMIC_SHE
3d90: 4c 4c 29 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b  LL)!=0.CORE_LINK
3da0: 5f 4f 50 54 53 20 3d 0a 21 45 4c 53 45 49 46 20  _OPTS =.!ELSEIF
3db0: 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 20  $(FOR_WIN10)==0 3dc0: 7c 7c 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 || "$(PLATFORM)"
3dd0: 3d 3d 22 78 38 36 22 0a 43 4f 52 45 5f 4c 49 4e  =="x86".CORE_LIN
3de0: 4b 5f 4f 50 54 53 20 3d 20 2f 44 45 46 3a 73 71  K_OPTS = /DEF:sq
3df0: 6c 69 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a  lite3.def.!ELSE.
3e00: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d  CORE_LINK_OPTS =
3e10: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
3e20: 23 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69  # These are addi
3e30: 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20  tional compiler
3e40: 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 6f 72  options used for
3e50: 20 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75   the shell execu
3e60: 74 61 62 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46  table..#.!IFNDEF
3e70: 20 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f   SHELL_COMPILE_O
3e80: 50 54 53 0a 21 49 46 20 24 28 44 59 4e 41 4d 49  PTS.!IF $(DYNAMI 3e90: 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 C_SHELL)!=0 ||$
3ea0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53  (FOR_WIN10)!=0.S
3eb0: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HELL_COMPILE_OPT
3ec0: 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 4f 4e  S = $(SHELL_CCON 3ed0: 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 V_OPTS) -DSQLITE 3ee0: 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 65 63 28 _API=__declspec( 3ef0: 64 6c 6c 69 6d 70 6f 72 74 29 0a 21 45 4c 53 45 dllimport).!ELSE 3f00: 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f .SHELL_COMPILE_O 3f10: 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 PTS =$(SHELL_CC
3f20: 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49 46  ONV_OPTS).!ENDIF
3f30: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20  .!ENDIF..# This
3f40: 69 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f  is the source co
3f50: 64 65 20 74 68 61 74 20 74 68 65 20 73 68 65 6c  de that the shel
3f60: 6c 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f  l executable sho
3f70: 75 6c 64 20 62 65 20 63 6f 6d 70 69 6c 65 64 0a  uld be compiled.
3f80: 23 20 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45  # with..#.!IFNDE
3f90: 46 20 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43  F SHELL_CORE_SRC
3fa0: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S 3fb0: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f HELL)!=0 ||$(FO
3fc0: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c  R_WIN10)!=0.SHEL
3fd0: 4c 5f 43 4f 52 45 5f 53 52 43 20 3d 0a 21 45 4c  L_CORE_SRC =.!EL
3fe0: 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52  SE.SHELL_CORE_SR
3ff0: 43 20 3d 20 24 28 53 51 4c 49 54 45 33 43 29 0a  C = $(SQLITE3C). 4000: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 4010: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72 This is the cor 4020: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74 e library that t 4030: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 he shell executa 4040: 62 6c 65 20 73 68 6f 75 6c 64 20 64 65 70 65 6e ble should depen 4050: 64 20 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20 d on..#.!IFNDEF 4060: 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 0a 21 SHELL_CORE_DEP.! 4070: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 IF$(DYNAMIC_SHE
4080: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f  LL)!=0 || $(FOR_ 4090: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f WIN10)!=0.SHELL_ 40a0: 43 4f 52 45 5f 44 45 50 20 3d 20 24 28 53 51 4c CORE_DEP =$(SQL
40b0: 49 54 45 33 44 4c 4c 29 0a 21 45 4c 53 45 0a 53  ITE3DLL).!ELSE.S
40c0: 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 20 3d 0a  HELL_CORE_DEP =.
40d0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
40e0: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72   This is the cor
40f0: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74  e library that t
4100: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61  he shell executa
4110: 62 6c 65 20 73 68 6f 75 6c 64 20 6c 69 6e 6b 20  ble should link
4120: 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45 46 20  with..#.!IFNDEF
4130: 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0a 21  SHELL_CORE_LIB.!
4140: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45  IF $(DYNAMIC_SHE 4150: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f LL)!=0 ||$(FOR_
4160: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f  WIN10)!=0.SHELL_
4170: 43 4f 52 45 5f 4c 49 42 20 3d 20 24 28 53 51 4c  CORE_LIB = $(SQL 4180: 49 54 45 33 4c 49 42 29 0a 21 45 4c 53 45 0a 53 ITE3LIB).!ELSE.S 4190: 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 20 3d 0a HELL_CORE_LIB =. 41a0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 41b0: 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69 74 These are addit 41c0: 69 6f 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 ional linker opt 41d0: 69 6f 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68 ions used for th 41e0: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 e shell executab 41f0: 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 48 le..#.!IFNDEF SH 4200: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 53 48 ELL_LINK_OPTS.SH 4210: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 20 ELL_LINK_OPTS = 4220: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42$(SHELL_CORE_LIB
4230: 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63  ).!ENDIF..# Chec
4240: 6b 20 69 66 20 61 73 73 65 6d 62 6c 79 20 63 6f  k if assembly co
4250: 64 65 20 6c 69 73 74 69 6e 67 73 20 73 68 6f 75  de listings shou
4260: 6c 64 20 62 65 20 67 65 6e 65 72 61 74 65 64 20  ld be generated
4270: 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 0a 23  for the source.#
4280: 20 63 6f 64 65 20 66 69 6c 65 73 20 74 6f 20 62   code files to b
4290: 65 20 63 6f 6d 70 69 6c 65 64 2e 0a 23 0a 21 49  e compiled..#.!I
42a0: 46 20 24 28 55 53 45 5f 4c 49 53 54 49 4e 47 53  F $(USE_LISTINGS 42b0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 )!=0.TCC =$(TCC
42c0: 29 20 2d 46 41 63 73 0a 21 45 4e 44 49 46 0a 0a  ) -FAcs.!ENDIF..
42d0: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
42e0: 20 74 68 65 20 6c 69 62 72 61 72 79 20 66 6f 72   the library for
42f0: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52   use in the WinR
4300: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 0a 23  T environment,.#
4310: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63   the following c
4320: 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69  ompile-time opti
4330: 6f 6e 73 20 6d 75 73 74 20 62 65 20 75 73 65 64  ons must be used
4340: 20 61 73 20 77 65 6c 6c 20 74 6f 0a 23 20 64 69   as well to.# di
4350: 73 61 62 6c 65 20 75 73 65 20 6f 66 20 57 69 6e  sable use of Win
4360: 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65  32 APIs that are
4370: 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 61   not available a
4380: 6e 64 20 74 6f 20 65 6e 61 62 6c 65 0a 23 20 75  nd to enable.# u
4390: 73 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73  se of Win32 APIs
43a0: 20 74 68 61 74 20 61 72 65 20 73 70 65 63 69 66   that are specif
43b0: 69 63 20 74 6f 20 57 69 6e 64 6f 77 73 20 38 20  ic to Windows 8
43c0: 61 6e 64 2f 6f 72 20 57 69 6e 52 54 2e 0a 23 0a  and/or WinRT..#.
43d0: 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29  !IF $(FOR_WINRT) 43e0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 !=0.TCC =$(TCC)
43f0: 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e   -DSQLITE_OS_WIN
4400: 52 54 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  RT=1.RCC = $(RCC 4410: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 ) -DSQLITE_OS_WI 4420: 4e 52 54 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 NRT=1.TCC =$(TC
4430: 43 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49  C) -DWINAPI_FAMI
4440: 4c 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59  LY=WINAPI_FAMILY
4450: 5f 41 50 50 0a 52 43 43 20 3d 20 24 28 52 43 43  _APP.RCC = $(RCC 4460: 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c ) -DWINAPI_FAMIL 4470: 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 5f Y=WINAPI_FAMILY_ 4480: 41 50 50 0a 21 45 4e 44 49 46 0a 0a 23 20 43 20 APP.!ENDIF..# C 4490: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 compiler options 44a0: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 for the Windows 44b0: 20 31 30 20 70 6c 61 74 66 6f 72 6d 20 28 6e 65 10 platform (ne 44c0: 65 64 73 20 4d 53 56 43 20 32 30 31 35 29 2e 0a eds MSVC 2015).. 44d0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 #.!IF$(FOR_WIN1
44e0: 30 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  0)!=0.TCC = $(TC 44f0: 43 29 20 2f 64 32 67 75 61 72 64 34 20 2d 44 5f C) /d2guard4 -D_ 4500: 41 52 4d 5f 57 49 4e 41 50 49 5f 50 41 52 54 49 ARM_WINAPI_PARTI 4510: 54 49 4f 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b TION_DESKTOP_SDK 4520: 5f 41 56 41 49 4c 41 42 4c 45 0a 42 43 43 20 3d _AVAILABLE.BCC = 4530: 20 24 28 42 43 43 29 20 2f 64 32 67 75 61 72 64$(BCC) /d2guard
4540: 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41 50 49 5f  4 -D_ARM_WINAPI_
4550: 50 41 52 54 49 54 49 4f 4e 5f 44 45 53 4b 54 4f  PARTITION_DESKTO
4560: 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42 4c 45 0a  P_SDK_AVAILABLE.
4570: 21 45 4e 44 49 46 0a 0a 23 20 41 6c 73 6f 2c 20  !ENDIF..# Also,
4580: 77 65 20 6e 65 65 64 20 74 6f 20 64 79 6e 61 6d  we need to dynam
4590: 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74  ically link to t
45a0: 68 65 20 63 6f 72 72 65 63 74 20 4d 53 56 43 20  he correct MSVC
45b0: 72 75 6e 74 69 6d 65 0a 23 20 77 68 65 6e 20 63  runtime.# when c
45c0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e  ompiling for Win
45d0: 52 54 20 28 65 2e 67 2e 20 64 65 62 75 67 20 6f  RT (e.g. debug o
45e0: 72 20 72 65 6c 65 61 73 65 29 20 4f 52 20 69 66  r release) OR if
45f0: 20 74 68 65 0a 23 20 55 53 45 5f 43 52 54 5f 44   the.# USE_CRT_D
4600: 4c 4c 20 6f 70 74 69 6f 6e 20 69 73 20 73 65 74  LL option is set
4610: 20 74 6f 20 66 6f 72 63 65 20 64 79 6e 61 6d 69   to force dynami
4620: 63 61 6c 6c 79 20 6c 69 6e 6b 69 6e 67 20 74 6f  cally linking to
4630: 20 74 68 65 0a 23 20 4d 53 56 43 20 72 75 6e 74   the.# MSVC runt
4640: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
4650: 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21  IF $(FOR_WINRT)! 4660: 3d 30 20 7c 7c 20 24 28 55 53 45 5f 43 52 54 5f =0 ||$(USE_CRT_
4670: 44 4c 4c 29 21 3d 30 0a 21 49 46 20 24 28 44 45  DLL)!=0.!IF $(DE 4680: 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 BUG)>1.TCC =$(T
4690: 43 43 29 20 2d 4d 44 64 0a 42 43 43 20 3d 20 24  CC) -MDd.BCC = $46a0: 28 42 43 43 29 20 2d 4d 44 64 0a 21 45 4c 53 45 (BCC) -MDd.!ELSE 46b0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d .TCC =$(TCC) -M
46c0: 44 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  D.BCC = $(BCC) - 46d0: 4d 44 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 0a MD.!ENDIF.!ELSE. 46e0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 !IF$(DEBUG)>1.T
46f0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 64  CC = $(TCC) -MTd 4700: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d .BCC =$(BCC) -M
4710: 54 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  Td.!ELSE.TCC = $4720: 28 54 43 43 29 20 2d 4d 54 0a 42 43 43 20 3d 20 (TCC) -MT.BCC = 4730: 24 28 42 43 43 29 20 2d 4d 54 0a 21 45 4e 44 49$(BCC) -MT.!ENDI
4740: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61  F.!ENDIF..# <<ma
4750: 72 6b 3e 3e 0a 23 20 54 68 65 20 6d 6b 73 71 6c  rk>>.# The mksql
4760: 69 74 65 33 63 2e 74 63 6c 20 61 6e 64 20 6d 6b  ite3c.tcl and mk
4770: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 73 63 72  sqlite3h.tcl scr
4780: 69 70 74 73 20 77 69 6c 6c 20 70 75 6c 6c 20 69  ipts will pull i
4790: 6e 0a 23 20 61 6e 79 20 65 78 74 65 6e 73 69 6f  n.# any extensio
47a0: 6e 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 62  n header files b
47b0: 79 20 64 65 66 61 75 6c 74 2e 20 20 46 6f 72 20  y default.  For
47c0: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  non-amalgamation
47d0: 0a 23 20 62 75 69 6c 64 73 2c 20 77 65 20 6e 65  .# builds, we ne
47e0: 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20  ed to make sure
47f0: 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e  the compiler can
4800: 20 66 69 6e 64 20 74 68 65 73 65 2e 0a 23 0a 21   find these..#.!
4810: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM 4820: 41 54 49 4f 4e 29 3d 3d 30 0a 54 43 43 20 3d 20 ATION)==0.TCC = 4830: 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c$(TCC) -I$(TOP)\ 4840: 65 78 74 5c 66 74 73 33 0a 52 43 43 20 3d 20 24 ext\fts3.RCC =$
4850: 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65  (RCC) -I$(TOP)\e 4860: 78 74 5c 66 74 73 33 0a 54 43 43 20 3d 20 24 28 xt\fts3.TCC =$(
4870: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex 4880: 74 5c 72 74 72 65 65 0a 52 43 43 20 3d 20 24 28 t\rtree.RCC =$(
4890: 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  RCC) -I$(TOP)\ex 48a0: 74 5c 72 74 72 65 65 0a 54 43 43 20 3d 20 24 28 t\rtree.TCC =$(
48b0: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex 48c0: 74 5c 73 65 73 73 69 6f 6e 0a 52 43 43 20 3d 20 t\session.RCC = 48d0: 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c$(RCC) -I$(TOP)\ 48e0: 65 78 74 5c 73 65 73 73 69 6f 6e 0a 21 45 4e 44 ext\session.!END 48f0: 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71 6c 69 IF..# The mksqli 4900: 74 65 33 63 2e 74 63 6c 20 73 63 72 69 70 74 20 te3c.tcl script 4910: 61 63 63 65 70 74 73 20 73 6f 6d 65 20 6f 70 74 accepts some opt 4920: 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d 6d ions on the comm 4930: 61 6e 64 0a 23 20 6c 69 6e 65 2e 20 20 57 68 65 and.# line. Whe 4940: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68 n compiling with 4950: 20 64 65 62 75 67 67 69 6e 67 20 65 6e 61 62 6c debugging enabl 4960: 65 64 2c 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 ed, some of thes 4970: 65 0a 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 e.# options are 4980: 6e 65 63 65 73 73 61 72 79 20 69 6e 20 6f 72 64 necessary in ord 4990: 65 72 20 74 6f 20 61 6c 6c 6f 77 20 64 65 62 75 er to allow debu 49a0: 67 67 69 6e 67 20 73 79 6d 62 6f 6c 73 20 74 6f gging symbols to 49b0: 0a 23 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c .# work correctl 49c0: 79 20 77 69 74 68 20 56 69 73 75 61 6c 20 53 74 y with Visual St 49d0: 75 64 69 6f 20 77 68 65 6e 20 75 73 69 6e 67 20 udio when using 49e0: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e the amalgamation 49f0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53 51 ..#.!IFNDEF MKSQ 4a00: 4c 49 54 45 33 43 5f 54 4f 4f 4c 0a 21 49 46 20 LITE3C_TOOL.!IF 4a10: 24 28 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41$(MINIMAL_AMALGA
4a20: 4d 41 54 49 4f 4e 29 21 3d 30 0a 4d 4b 53 51 4c  MATION)!=0.MKSQL
4a30: 49 54 45 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54  ITE3C_TOOL = $(T 4a40: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 OP)\tool\mksqlit 4a50: 65 33 63 2d 6e 6f 65 78 74 2e 74 63 6c 0a 21 45 e3c-noext.tcl.!E 4a60: 4c 53 45 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54 LSE.MKSQLITE3C_T 4a70: 4f 4f 4c 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f OOL =$(TOP)\too
4a80: 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  l\mksqlite3c.tcl
4a90: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
4aa0: 21 49 46 4e 44 45 46 20 4d 4b 53 51 4c 49 54 45  !IFNDEF MKSQLITE
4ab0: 33 43 5f 41 52 47 53 0a 21 49 46 20 24 28 44 45  3C_ARGS.!IF $(DE 4ac0: 42 55 47 29 3e 31 0a 4d 4b 53 51 4c 49 54 45 33 BUG)>1.MKSQLITE3 4ad0: 43 5f 41 52 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d C_ARGS = --linem 4ae0: 61 63 72 6f 73 0a 21 45 4c 53 45 0a 4d 4b 53 51 acros.!ELSE.MKSQ 4af0: 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 0a 21 45 LITE3C_ARGS =.!E 4b00: 4e 44 49 46 0a 21 49 46 20 24 28 55 53 45 5f 53 NDIF.!IF$(USE_S
4b10: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28  TDCALL)!=0 || $( 4b20: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b FOR_WIN10)!=0.MK 4b30: 53 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 20 SQLITE3C_ARGS = 4b40: 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47$(MKSQLITE3C_ARG
4b50: 53 29 20 2d 2d 75 73 65 61 70 69 63 61 6c 6c 0a  S) --useapicall.
4b60: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
4b70: 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 68 2e   The mksqlite3h.
4b80: 74 63 6c 20 73 63 72 69 70 74 20 61 63 63 65 70  tcl script accep
4b90: 74 73 20 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20  ts some options
4ba0: 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  on the command l
4bb0: 69 6e 65 2e 0a 23 20 57 68 65 6e 20 63 6f 6d 70  ine..# When comp
4bc0: 69 6c 69 6e 67 20 77 69 74 68 20 73 74 64 63 61  iling with stdca
4bd0: 6c 6c 20 73 75 70 70 6f 72 74 2c 20 73 6f 6d 65  ll support, some
4be0: 20 6f 66 20 74 68 65 73 65 20 6f 70 74 69 6f 6e   of these option
4bf0: 73 20 61 72 65 0a 23 20 6e 65 63 65 73 73 61 72  s are.# necessar
4c00: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53  y..#.!IFNDEF MKS
4c10: 51 4c 49 54 45 33 48 5f 41 52 47 53 0a 21 49 46  QLITE3H_ARGS.!IF
4c20: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)! 4c30: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
4c40: 30 29 21 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 48  0)!=0.MKSQLITE3H
4c50: 5f 41 52 47 53 20 3d 20 2d 2d 75 73 65 61 70 69  _ARGS = --useapi
4c60: 63 61 6c 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c  call.!ELSE.MKSQL
4c70: 49 54 45 33 48 5f 41 52 47 53 20 3d 0a 21 45 4e  ITE3H_ARGS =.!EN
4c80: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f  DIF.!ENDIF.# <</
4c90: 6d 61 72 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65  mark>>..# Define
4ca0: 20 2d 44 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d   -DNDEBUG to com
4cb0: 70 69 6c 65 20 77 69 74 68 6f 75 74 20 64 65 62  pile without deb
4cc0: 75 67 67 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f  ugging (i.e., fo
4cd0: 72 20 70 72 6f 64 75 63 74 69 6f 6e 20 75 73 61  r production usa
4ce0: 67 65 29 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74  ge).# Omitting t
4cf0: 68 65 20 64 65 66 69 6e 65 20 77 69 6c 6c 20 63  he define will c
4d00: 61 75 73 65 20 65 78 74 72 61 20 64 65 62 75 67  ause extra debug
4d10: 67 69 6e 67 20 63 6f 64 65 20 74 6f 20 62 65 20  ging code to be
4d20: 69 6e 73 65 72 74 65 64 20 61 6e 64 0a 23 20 69  inserted and.# i
4d30: 6e 63 6c 75 64 65 73 20 65 78 74 72 61 20 63 6f  ncludes extra co
4d40: 6d 6d 65 6e 74 73 20 77 68 65 6e 20 22 45 58 50  mments when "EXP
4d50: 4c 41 49 4e 20 73 74 6d 74 22 20 69 73 20 75 73  LAIN stmt" is us
4d60: 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55  ed..#.!IF $(DEBU 4d70: 47 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 G)==0.TCC =$(TC
4d80: 43 29 20 2d 44 4e 44 45 42 55 47 0a 42 43 43 20  C) -DNDEBUG.BCC
4d90: 3d 20 24 28 42 43 43 29 20 2d 44 4e 44 45 42 55  = $(BCC) -DNDEBU 4da0: 47 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d G.RCC =$(RCC) -
4db0: 44 4e 44 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a  DNDEBUG.!ENDIF..
4dc0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c  !IF $(DEBUG)>0 | 4dd0: 7c 20 24 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d |$(API_ARMOR)!=
4de0: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30  0 || $(FOR_WIN10 4df0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 )!=0.TCC =$(TCC
4e00: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
4e10: 45 5f 41 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43  E_API_ARMOR=1.RC
4e20: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 4e30: 49 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 ITE_ENABLE_API_A 4e40: 52 4d 4f 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 RMOR=1.!ENDIF..! 4e50: 49 46 20 24 28 44 45 42 55 47 29 3e 32 0a 54 43 IF$(DEBUG)>2.TC
4e60: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c  C = $(TCC) -DSQL 4e70: 49 54 45 5f 44 45 42 55 47 3d 31 0a 52 43 43 20 ITE_DEBUG=1.RCC 4e80: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 =$(RCC) -DSQLIT
4e90: 45 5f 44 45 42 55 47 3d 31 0a 21 49 46 20 24 28  E_DEBUG=1.!IF $( 4ea0: 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 3d 3d DYNAMIC_SHELL)== 4eb0: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 0.TCC =$(TCC) -
4ec0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 57  DSQLITE_ENABLE_W
4ed0: 48 45 52 45 54 52 41 43 45 20 2d 44 53 51 4c 49  HERETRACE -DSQLI
4ee0: 54 45 5f 45 4e 41 42 4c 45 5f 53 45 4c 45 43 54  TE_ENABLE_SELECT
4ef0: 54 52 41 43 45 0a 52 43 43 20 3d 20 24 28 52 43  TRACE.RCC = $(RC 4f00: 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 C) -DSQLITE_ENAB 4f10: 4c 45 5f 57 48 45 52 45 54 52 41 43 45 20 2d 44 LE_WHERETRACE -D 4f20: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 SQLITE_ENABLE_SE 4f30: 4c 45 43 54 54 52 41 43 45 0a 21 45 4e 44 49 46 LECTTRACE.!ENDIF 4f40: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 .!ENDIF..!IF$(D
4f50: 45 42 55 47 29 3e 34 20 7c 7c 20 24 28 4f 53 54  EBUG)>4 || $(OST 4f60: 52 41 43 45 29 21 3d 30 0a 54 43 43 20 3d 20 24 RACE)!=0.TCC =$
4f70: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 46  (TCC) -DSQLITE_F
4f80: 4f 52 43 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20  ORCE_OS_TRACE=1
4f90: 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f  -DSQLITE_DEBUG_O
4fa0: 53 5f 54 52 41 43 45 3d 31 0a 52 43 43 20 3d 20  S_TRACE=1.RCC =
4fb0: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(RCC) -DSQLITE_ 4fc0: 46 4f 52 43 45 5f 4f 53 5f 54 52 41 43 45 3d 31 FORCE_OS_TRACE=1 4fd0: 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 5f -DSQLITE_DEBUG_ 4fe0: 4f 53 5f 54 52 41 43 45 3d 31 0a 21 45 4e 44 49 OS_TRACE=1.!ENDI 4ff0: 46 0a 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e F..!IF$(DEBUG)>
5000: 35 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  5.TCC = $(TCC) - 5010: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 DSQLITE_ENABLE_I 5020: 4f 54 52 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 OTRACE=1.RCC =$
5030: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45  (RCC) -DSQLITE_E
5040: 4e 41 42 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a  NABLE_IOTRACE=1.
5050: 21 45 4e 44 49 46 0a 0a 23 20 50 72 65 76 65 6e  !ENDIF..# Preven
5060: 74 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 74  t warnings about
5070: 20 22 69 6e 73 65 63 75 72 65 22 20 4d 53 56 43   "insecure" MSVC
5080: 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79   runtime library
5090: 20 66 75 6e 63 74 69 6f 6e 73 0a 23 20 62 65 69   functions.# bei
50a0: 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d  ng used..#.TCC =
50b0: 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 5f 53   $(TCC) -D_CRT_S 50c0: 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 ECURE_NO_DEPRECA 50d0: 54 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 TE -D_CRT_SECURE 50e0: 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 _NO_WARNINGS.BCC 50f0: 20 3d 20 24 28 42 43 43 29 20 2d 44 5f 43 52 54 =$(BCC) -D_CRT
5100: 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45  _SECURE_NO_DEPRE
5110: 43 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 43 55  CATE -D_CRT_SECU
5120: 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 52  RE_NO_WARNINGS.R
5130: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 5f 43  CC = $(RCC) -D_C 5140: 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 RT_SECURE_NO_DEP 5150: 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 RECATE -D_CRT_SE 5160: 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 CURE_NO_WARNINGS 5170: 0a 0a 23 20 50 72 65 76 65 6e 74 20 77 61 72 6e ..# Prevent warn 5180: 69 6e 67 73 20 61 62 6f 75 74 20 22 64 65 70 72 ings about "depr 5190: 65 63 61 74 65 64 22 20 50 4f 53 49 58 20 66 75 ecated" POSIX fu 51a0: 6e 63 74 69 6f 6e 73 20 62 65 69 6e 67 20 75 73 nctions being us 51b0: 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 ed..#.TCC =$(TC
51c0: 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44  C) -D_CRT_NONSTD
51d0: 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d  C_NO_DEPRECATE -
51e0: 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f  D_CRT_NONSTDC_NO
51f0: 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20  _WARNINGS.BCC =
5200: 24 28 42 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f  $(BCC) -D_CRT_NO 5210: 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 NSTDC_NO_DEPRECA 5220: 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 TE -D_CRT_NONSTD 5230: 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 C_NO_WARNINGS.RC 5240: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 5f 43 52 C =$(RCC) -D_CR
5250: 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50  T_NONSTDC_NO_DEP
5260: 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f  RECATE -D_CRT_NO
5270: 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47  NSTDC_NO_WARNING
5280: 53 0a 0a 23 20 55 73 65 20 74 68 65 20 53 51 4c  S..# Use the SQL
5290: 69 74 65 20 64 65 62 75 67 67 69 6e 67 20 68 65  ite debugging he
52a0: 61 70 20 73 75 62 73 79 73 74 65 6d 3f 0a 23 0a  ap subsystem?.#.
52b0: 21 49 46 20 24 28 4d 45 4d 44 45 42 55 47 29 21  !IF $(MEMDEBUG)! 52c0: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 =0.TCC =$(TCC)
52d0: 2d 44 53 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55  -DSQLITE_MEMDEBU
52e0: 47 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29  G=1.RCC = $(RCC) 52f0: 20 2d 44 53 51 4c 49 54 45 5f 4d 45 4d 44 45 42 -DSQLITE_MEMDEB 5300: 55 47 3d 31 0a 0a 23 20 55 73 65 20 6e 61 74 69 UG=1..# Use nati 5310: 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 73 75 ve Win32 heap su 5320: 62 73 79 73 74 65 6d 20 69 6e 73 74 65 61 64 20 bsystem instead 5330: 6f 66 20 6d 61 6c 6c 6f 63 2f 66 72 65 65 3f 0a of malloc/free?. 5340: 23 0a 21 45 4c 53 45 49 46 20 24 28 57 49 4e 33 #.!ELSEIF$(WIN3
5350: 32 48 45 41 50 29 21 3d 30 0a 54 43 43 20 3d 20  2HEAP)!=0.TCC =
5360: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(TCC) -DSQLITE_ 5370: 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 52 WIN32_MALLOC=1.R 5380: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 CC =$(RCC) -DSQ
5390: 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f  LITE_WIN32_MALLO
53a0: 43 3d 31 0a 0a 23 20 56 61 6c 69 64 61 74 65 20  C=1..# Validate
53b0: 74 68 65 20 68 65 61 70 20 6f 6e 20 65 76 65 72  the heap on ever
53c0: 79 20 63 61 6c 6c 20 69 6e 74 6f 20 74 68 65 20  y call into the
53d0: 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68 65 61  native Win32 hea
53e0: 70 20 73 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21  p subsystem?.#.!
53f0: 49 46 20 24 28 44 45 42 55 47 29 3e 33 0a 54 43  IF $(DEBUG)>3.TC 5400: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c C =$(TCC) -DSQL
5410: 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43  ITE_WIN32_MALLOC
5420: 5f 56 41 4c 49 44 41 54 45 3d 31 0a 52 43 43 20  _VALIDATE=1.RCC
5430: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54  = $(RCC) -DSQLIT 5440: 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 E_WIN32_MALLOC_V 5450: 41 4c 49 44 41 54 45 3d 31 0a 21 45 4e 44 49 46 ALIDATE=1.!ENDIF 5460: 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 .!ENDIF..# <<mar 5470: 6b 3e 3e 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 k>>.# The locati 5480: 6f 6e 73 20 6f 66 20 74 68 65 20 54 63 6c 20 68 ons of the Tcl h 5490: 65 61 64 65 72 20 61 6e 64 20 6c 69 62 72 61 72 eader and librar 54a0: 79 20 66 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20 y files. Also, 54b0: 74 68 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 the library that 54c0: 0a 23 20 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61 .# non-stubs ena 54d0: 62 6c 65 64 20 70 72 6f 67 72 61 6d 73 20 75 73 bled programs us 54e0: 69 6e 67 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e ing Tcl must lin 54f0: 6b 20 61 67 61 69 6e 73 74 2e 20 20 54 68 65 73 k against. Thes 5500: 65 20 76 61 72 69 61 62 6c 65 73 0a 23 20 28 54 e variables.# (T 5510: 43 4c 49 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42 CLINCDIR, TCLLIB 5520: 44 49 52 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29 DIR, and LIBTCL) 5530: 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69 64 64 may be overridd 5540: 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69 72 en via the envir 5550: 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 onment.# prior t 5560: 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 o running nmake 5570: 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 in order to matc 5580: 68 20 74 68 65 20 61 63 74 75 61 6c 20 69 6e 73 h the actual ins 5590: 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 talled location 55a0: 61 6e 64 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e and.# version on 55b0: 20 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 this machine..# 55c0: 0a 21 49 46 4e 44 45 46 20 54 43 4c 49 4e 43 44 .!IFNDEF TCLINCD 55d0: 49 52 0a 54 43 4c 49 4e 43 44 49 52 20 3d 20 63 IR.TCLINCDIR = c 55e0: 3a 5c 74 63 6c 5c 69 6e 63 6c 75 64 65 0a 21 45 :\tcl\include.!E 55f0: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 54 43 NDIF..!IFNDEF TC 5600: 4c 4c 49 42 44 49 52 0a 54 43 4c 4c 49 42 44 49 LLIBDIR.TCLLIBDI 5610: 52 20 3d 20 63 3a 5c 74 63 6c 5c 6c 69 62 0a 21 R = c:\tcl\lib.! 5620: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c ENDIF..!IFNDEF L 5630: 49 42 54 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 IBTCL.LIBTCL = t 5640: 63 6c 38 36 2e 6c 69 62 0a 21 45 4e 44 49 46 0a cl86.lib.!ENDIF. 5650: 0a 21 49 46 4e 44 45 46 20 4c 49 42 54 43 4c 53 .!IFNDEF LIBTCLS 5660: 54 55 42 0a 4c 49 42 54 43 4c 53 54 55 42 20 3d TUB.LIBTCLSTUB = 5670: 20 74 63 6c 73 74 75 62 38 36 2e 6c 69 62 0a 21 tclstub86.lib.! 5680: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c ENDIF..!IFNDEF L 5690: 49 42 54 43 4c 50 41 54 48 0a 4c 49 42 54 43 4c IBTCLPATH.LIBTCL 56a0: 50 41 54 48 20 3d 20 63 3a 5c 74 63 6c 5c 62 69 PATH = c:\tcl\bi 56b0: 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 n.!ENDIF..# The 56c0: 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 locations of the 56d0: 20 49 43 55 20 68 65 61 64 65 72 20 61 6e 64 20 ICU header and 56e0: 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 20 library files. 56f0: 54 68 65 73 65 20 76 61 72 69 61 62 6c 65 73 0a These variables. 5700: 23 20 28 49 43 55 49 4e 43 44 49 52 2c 20 49 43 # (ICUINCDIR, IC 5710: 55 4c 49 42 44 49 52 2c 20 61 6e 64 20 4c 49 42 ULIBDIR, and LIB 5720: 49 43 55 29 20 6d 61 79 20 62 65 20 6f 76 65 72 ICU) may be over 5730: 72 69 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 ridden via the e 5740: 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 nvironment.# pri 5750: 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d or to running nm 5760: 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 ake in order to 5770: 6d 61 74 63 68 20 74 68 65 20 61 63 74 75 61 6c match the actual 5780: 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f 63 61 74 installed locat 5790: 69 6f 6e 20 6f 6e 0a 23 20 74 68 69 73 20 6d 61 ion on.# this ma 57a0: 63 68 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 chine..#.!IFNDEF 57b0: 20 49 43 55 49 4e 43 44 49 52 0a 49 43 55 49 4e ICUINCDIR.ICUIN 57c0: 43 44 49 52 20 3d 20 63 3a 5c 69 63 75 5c 69 6e CDIR = c:\icu\in 57d0: 63 6c 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 clude.!ENDIF..!I 57e0: 46 4e 44 45 46 20 49 43 55 4c 49 42 44 49 52 0a FNDEF ICULIBDIR. 57f0: 49 43 55 4c 49 42 44 49 52 20 3d 20 63 3a 5c 69 ICULIBDIR = c:\i 5800: 63 75 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 cu\lib.!ENDIF..! 5810: 49 46 4e 44 45 46 20 4c 49 42 49 43 55 0a 4c 49 IFNDEF LIBICU.LI 5820: 42 49 43 55 20 3d 20 69 63 75 75 63 2e 6c 69 62 BICU = icuuc.lib 5830: 20 69 63 75 69 6e 2e 6c 69 62 0a 21 45 4e 44 49 icuin.lib.!ENDI 5840: 46 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 F..# This is the 5850: 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 command to use 5860: 66 6f 72 20 74 63 6c 73 68 20 2d 20 6e 6f 72 6d for tclsh - norm 5870: 61 6c 6c 79 20 6a 75 73 74 20 22 74 63 6c 73 68 ally just "tclsh 5880: 22 2c 20 62 75 74 20 77 65 20 6d 61 79 0a 23 20 ", but we may.# 5890: 6b 6e 6f 77 20 74 68 65 20 73 70 65 63 69 66 69 know the specifi 58a0: 63 20 76 65 72 73 69 6f 6e 20 77 65 20 77 61 6e c version we wan 58b0: 74 20 74 6f 20 75 73 65 2e 20 20 54 68 69 73 20 t to use. This 58c0: 76 61 72 69 61 62 6c 65 20 28 54 43 4c 53 48 5f variable (TCLSH_ 58d0: 43 4d 44 29 20 6d 61 79 20 62 65 0a 23 20 6f 76 CMD) may be.# ov 58e0: 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 65 erridden via the 58f0: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 70 72 69 environment pri 5900: 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d or to running nm 5910: 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 ake in order to 5920: 73 65 6c 65 63 74 20 61 0a 23 20 73 70 65 63 69 select a.# speci 5930: 66 69 63 20 54 63 6c 20 73 68 65 6c 6c 20 74 6f fic Tcl shell to 5940: 20 75 73 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 use..#.!IFNDEF 5950: 54 43 4c 53 48 5f 43 4d 44 0a 54 43 4c 53 48 5f TCLSH_CMD.TCLSH_ 5960: 43 4d 44 20 3d 20 74 63 6c 73 68 0a 21 45 4e 44 CMD = tclsh.!END 5970: 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a IF.# <</mark>>.. 5980: 23 20 43 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f # Compiler optio 5990: 6e 73 20 6e 65 65 64 65 64 20 66 6f 72 20 70 72 ns needed for pr 59a0: 6f 67 72 61 6d 73 20 74 68 61 74 20 75 73 65 20 ograms that use 59b0: 74 68 65 20 72 65 61 64 6c 69 6e 65 28 29 20 6c the readline() l 59c0: 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 ibrary..#.!IFNDE 59d0: 46 20 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 F READLINE_FLAGS 59e0: 0a 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 20 .READLINE_FLAGS 59f0: 3d 20 2d 44 48 41 56 45 5f 52 45 41 44 4c 49 4e = -DHAVE_READLIN 5a00: 45 3d 30 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 E=0.!ENDIF..# Th 5a10: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 70 e library that p 5a20: 72 6f 67 72 61 6d 73 20 75 73 69 6e 67 20 72 65 rograms using re 5a30: 61 64 6c 69 6e 65 28 29 20 6d 75 73 74 20 6c 69 adline() must li 5a40: 6e 6b 20 61 67 61 69 6e 73 74 2e 0a 23 0a 21 49 nk against..#.!I 5a50: 46 4e 44 45 46 20 4c 49 42 52 45 41 44 4c 49 4e FNDEF LIBREADLIN 5a60: 45 0a 4c 49 42 52 45 41 44 4c 49 4e 45 20 3d 0a E.LIBREADLINE =. 5a70: 21 45 4e 44 49 46 0a 0a 23 20 53 68 6f 75 6c 64 !ENDIF..# Should 5a80: 20 74 68 65 20 64 61 74 61 62 61 73 65 20 65 6e the database en 5a90: 67 69 6e 65 20 62 65 20 63 6f 6d 70 69 6c 65 64 gine be compiled 5aa0: 20 74 68 72 65 61 64 73 61 66 65 0a 23 0a 54 43 threadsafe.#.TC 5ab0: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c C =$(TCC) -DSQL
5ac0: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 31  ITE_THREADSAFE=1
5ad0: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 5ae0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 SQLITE_THREADSAF 5af0: 45 3d 31 0a 0a 23 20 44 6f 20 74 68 72 65 61 64 E=1..# Do thread 5b00: 73 20 6f 76 65 72 72 69 64 65 20 65 61 63 68 20 s override each 5b10: 6f 74 68 65 72 73 20 6c 6f 63 6b 73 20 62 79 20 others locks by 5b20: 64 65 66 61 75 6c 74 20 28 31 29 2c 20 6f 72 20 default (1), or 5b30: 64 6f 20 77 65 20 74 65 73 74 20 28 2d 31 29 0a do we test (-1). 5b40: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d #.TCC =$(TCC) -
5b50: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f  DSQLITE_THREAD_O
5b60: 56 45 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a  VERRIDE_LOCK=-1.
5b70: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS 5b80: 51 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 QLITE_THREAD_OVE 5b90: 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 0a 23 RRIDE_LOCK=-1..# 5ba0: 20 41 6e 79 20 74 61 72 67 65 74 20 6c 69 62 72 Any target libr 5bb0: 61 72 69 65 73 20 77 68 69 63 68 20 6c 69 62 73 aries which libs 5bc0: 71 6c 69 74 65 20 6d 75 73 74 20 62 65 20 6c 69 qlite must be li 5bd0: 6e 6b 65 64 20 61 67 61 69 6e 73 74 0a 23 0a 21 nked against.#.! 5be0: 49 46 4e 44 45 46 20 54 4c 49 42 53 0a 54 4c 49 IFNDEF TLIBS.TLI 5bf0: 42 53 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 46 BS =.!ENDIF..# F 5c00: 6c 61 67 73 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 lags controlling 5c10: 20 75 73 65 20 6f 66 20 74 68 65 20 69 6e 20 6d use of the in m 5c20: 65 6d 6f 72 79 20 62 74 72 65 65 20 69 6d 70 6c emory btree impl 5c30: 65 6d 65 6e 74 61 74 69 6f 6e 0a 23 0a 23 20 53 ementation.#.# S 5c40: 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 QLITE_TEMP_STORE 5c50: 20 69 73 20 30 20 74 6f 20 66 6f 72 63 65 20 74 is 0 to force t 5c60: 65 6d 70 6f 72 61 72 79 20 74 61 62 6c 65 73 20 emporary tables 5c70: 74 6f 20 62 65 20 69 6e 20 61 20 66 69 6c 65 2c to be in a file, 5c80: 20 31 20 74 6f 0a 23 20 64 65 66 61 75 6c 74 20 1 to.# default 5c90: 74 6f 20 66 69 6c 65 2c 20 32 20 74 6f 20 64 65 to file, 2 to de 5ca0: 66 61 75 6c 74 20 74 6f 20 6d 65 6d 6f 72 79 2c fault to memory, 5cb0: 20 61 6e 64 20 33 20 74 6f 20 66 6f 72 63 65 20 and 3 to force 5cc0: 74 65 6d 70 6f 72 61 72 79 0a 23 20 74 61 62 6c temporary.# tabl 5cd0: 65 73 20 74 6f 20 61 6c 77 61 79 73 20 62 65 20 es to always be 5ce0: 69 6e 20 6d 65 6d 6f 72 79 2e 0a 23 0a 54 43 43 in memory..#.TCC 5cf0: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 =$(TCC) -DSQLI
5d00: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a  TE_TEMP_STORE=1.
5d10: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS 5d20: 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 QLITE_TEMP_STORE 5d30: 3d 31 0a 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 =1..# Enable/dis 5d40: 61 62 6c 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 able loadable ex 5d50: 74 65 6e 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 tensions, and ot 5d60: 68 65 72 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 her optional fea 5d70: 74 75 72 65 73 0a 23 20 62 61 73 65 64 20 6f 6e tures.# based on 5d80: 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 configuration. 5d90: 28 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c (-DSQLITE_OMIT*, 5da0: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE 5db0: 2a 29 2e 0a 23 20 54 68 65 20 73 61 6d 65 20 73 *)..# The same s 5dc0: 65 74 20 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 et of OMIT and E 5dd0: 4e 41 42 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 NABLE flags shou 5de0: 6c 64 20 62 65 20 70 61 73 73 65 64 20 74 6f 20 ld be passed to 5df0: 74 68 65 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 the.# LEMON pars 5e00: 65 72 20 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 er generator and 5e10: 20 74 68 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 the mkkeywordha 5e20: 73 68 20 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e sh tool as well. 5e30: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 ..# These are th 5e40: 65 20 72 65 71 75 69 72 65 64 20 53 51 4c 69 74 e required SQLit 5e50: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 e compilation op 5e60: 74 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 tions used when 5e70: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 compiling for.# 5e80: 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 the Windows plat 5e90: 66 6f 72 6d 2e 0a 23 0a 52 45 51 5f 46 45 41 54 form..#.REQ_FEAT 5ea0: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 52 45 URE_FLAGS =$(RE
5eb0: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
5ec0: 20 2d 44 53 51 4c 49 54 45 5f 4d 41 58 5f 54 52   -DSQLITE_MAX_TR
5ed0: 49 47 47 45 52 5f 44 45 50 54 48 3d 31 30 30 0a  IGGER_DEPTH=100.
5ee0: 0a 23 20 49 66 20 77 65 20 61 72 65 20 6c 69 6e  .# If we are lin
5ef0: 6b 69 6e 67 20 74 6f 20 74 68 65 20 52 50 43 52  king to the RPCR
5f00: 54 34 20 6c 69 62 72 61 72 79 2c 20 65 6e 61 62  T4 library, enab
5f10: 6c 65 20 66 65 61 74 75 72 65 73 20 74 68 61 74  le features that
5f20: 20 6e 65 65 64 20 69 74 2e 0a 23 0a 21 49 46 20   need it..#.!IF
5f30: 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42  $(USE_RPCRT4_LIB 5f40: 29 21 3d 30 0a 52 45 51 5f 46 45 41 54 55 52 45 )!=0.REQ_FEATURE 5f50: 5f 46 4c 41 47 53 20 3d 20 24 28 52 45 51 5f 46 _FLAGS =$(REQ_F
5f60: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  EATURE_FLAGS) -D
5f70: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 55 53 45  SQLITE_WIN32_USE
5f80: 5f 55 55 49 44 3d 31 0a 21 45 4e 44 49 46 0a 0a  _UUID=1.!ENDIF..
5f90: 23 20 41 64 64 20 74 68 65 20 72 65 71 75 69 72  # Add the requir
5fa0: 65 64 20 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 20  ed and optional
5fb0: 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69  SQLite compilati
5fc0: 6f 6e 20 6f 70 74 69 6f 6e 73 20 69 6e 74 6f 20  on options into
5fd0: 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69  the command.# li
5fe0: 6e 65 73 20 75 73 65 64 20 74 6f 20 69 6e 76 6f  nes used to invo
5ff0: 6b 65 20 74 68 65 20 4d 53 56 43 20 63 6f 64 65  ke the MSVC code
6000: 20 61 6e 64 20 72 65 73 6f 75 72 63 65 20 63 6f   and resource co
6010: 6d 70 69 6c 65 72 73 2e 0a 23 0a 54 43 43 20 3d  mpilers..#.TCC =
6020: 20 24 28 54 43 43 29 20 24 28 52 45 51 5f 46 45   $(TCC)$(REQ_FE
6030: 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f  ATURE_FLAGS) $(O 6040: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 6050: 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f )$(EXT_FEATURE_
6060: 46 4c 41 47 53 29 0a 52 43 43 20 3d 20 24 28 52  FLAGS).RCC = $(R 6070: 43 43 29 20 24 28 52 45 51 5f 46 45 41 54 55 52 CC)$(REQ_FEATUR
6080: 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f 46  E_FLAGS) $(OPT_F 6090: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 EATURE_FLAGS)$(
60a0: 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  EXT_FEATURE_FLAG
60b0: 53 29 0a 0a 23 20 41 64 64 20 69 6e 20 61 6e 79  S)..# Add in any
60c0: 20 6f 70 74 69 6f 6e 61 6c 20 70 61 72 61 6d 65   optional parame
60d0: 74 65 72 73 20 73 70 65 63 69 66 69 65 64 20 6f  ters specified o
60e0: 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 65 20 6c 69  n the commane li
60f0: 6e 65 2c 20 65 2e 67 2e 0a 23 20 6e 6d 61 6b 65  ne, e.g..# nmake
6100: 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63   /f Makefile.msc
6110: 20 61 6c 6c 20 22 4f 50 54 53 3d 2d 44 53 51 4c   all "OPTS=-DSQL
6120: 49 54 45 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d 31  ITE_ENABLE_FOO=1
6130: 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46   -DSQLITE_OMIT_F
6140: 4f 4f 3d 31 22 0a 23 0a 54 43 43 20 3d 20 24 28  OO=1".#.TCC = $( 6150: 54 43 43 29 20 24 28 4f 50 54 53 29 0a 52 43 43 TCC)$(OPTS).RCC
6160: 20 3d 20 24 28 52 43 43 29 20 24 28 4f 50 54 53   = $(RCC)$(OPTS
6170: 29 0a 0a 23 20 49 66 20 63 6f 6d 70 69 6c 69 6e  )..# If compilin
6180: 67 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 2c  g for debugging,
6190: 20 61 64 64 20 73 6f 6d 65 20 64 65 66 69 6e 65   add some define
61a0: 73 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47  s..#.!IF $(DEBUG 61b0: 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 )>1.TCC =$(TCC)
61c0: 20 2d 44 5f 44 45 42 55 47 0a 42 43 43 20 3d 20   -D_DEBUG.BCC =
61d0: 24 28 42 43 43 29 20 2d 44 5f 44 45 42 55 47 0a  $(BCC) -D_DEBUG. 61e0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 5f RCC =$(RCC) -D_
61f0: 44 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a 23 20  DEBUG.!ENDIF..#
6200: 49 66 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73  If optimizations
6210: 20 61 72 65 20 65 6e 61 62 6c 65 64 20 6f 72 20   are enabled or
6220: 64 69 73 61 62 6c 65 64 20 28 65 69 74 68 65 72  disabled (either
6230: 20 69 6d 70 6c 69 63 69 74 6c 79 20 6f 72 0a 23   implicitly or.#
6240: 20 65 78 70 6c 69 63 69 74 6c 79 29 2c 20 61 64   explicitly), ad
6250: 64 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20  d the necessary
6260: 66 6c 61 67 73 2e 0a 23 0a 21 49 46 20 24 28 44  flags..#.!IF $(D 6270: 45 42 55 47 29 3e 31 20 7c 7c 20 24 28 4f 50 54 EBUG)>1 ||$(OPT
6280: 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 30 0a 54  IMIZATIONS)==0.T
6290: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f 64 0a  CC = $(TCC) -Od. 62a0: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4f 64 BCC =$(BCC) -Od
62b0: 0a 21 49 46 20 24 28 55 53 45 5f 52 55 4e 54 49  .!IF $(USE_RUNTI 62c0: 4d 45 5f 43 48 45 43 4b 53 29 21 3d 30 0a 54 43 ME_CHECKS)!=0.TC 62d0: 43 20 3d 20 24 28 54 43 43 29 20 2d 52 54 43 31 C =$(TCC) -RTC1
62e0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 52  .BCC = $(BCC) -R 62f0: 54 43 31 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 TC1.!ENDIF.!ELSE 6300: 49 46 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f IF$(OPTIMIZATIO
6310: 4e 53 29 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54  NS)>=3.TCC = $(T 6320: 43 43 29 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 CC) -Ox.BCC =$(
6330: 42 43 43 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46  BCC) -Ox.!ELSEIF
6340: 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53   $(OPTIMIZATIONS 6350: 29 3d 3d 32 0a 54 43 43 20 3d 20 24 28 54 43 43 )==2.TCC =$(TCC
6360: 29 20 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43  ) -O2.BCC = $(BC 6370: 43 29 20 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 C) -O2.!ELSEIF$
6380: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d  (OPTIMIZATIONS)=
6390: 3d 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =1.TCC = $(TCC) 63a0: 2d 4f 31 0a 42 43 43 20 3d 20 24 28 42 43 43 29 -O1.BCC =$(BCC)
63b0: 20 2d 4f 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49   -O1.!ENDIF..# I
63c0: 66 20 73 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e  f symbols are en
63d0: 61 62 6c 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c  abled (or compil
63e0: 69 6e 67 20 66 6f 72 20 64 65 62 75 67 67 69 6e  ing for debuggin
63f0: 67 29 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e  g), enable PDBs.
6400: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e  .#.!IF $(DEBUG)> 6410: 31 20 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 1 ||$(SYMBOLS)!
6420: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 6430: 2d 5a 69 0a 42 43 43 20 3d 20 24 28 42 43 43 29 -Zi.BCC =$(BCC)
6440: 20 2d 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c   -Zi.!ENDIF..# <
6450: 3c 6d 61 72 6b 3e 3e 0a 23 20 49 66 20 49 43 55  <mark>>.# If ICU
6460: 20 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62   support is enab
6470: 6c 65 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d  led, add the com
6480: 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f  piler options fo
6490: 72 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 53  r it..#.!IF $(US 64a0: 45 5f 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 E_ICU)!=0.TCC = 64b0: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
64c0: 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43  ENABLE_ICU=1.RCC
64d0: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI 64e0: 54 45 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a TE_ENABLE_ICU=1. 64f0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 TCC =$(TCC) -I$6500: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 (TOP)\ext\icu.RC 6510: 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 28 54 C =$(RCC) -I$(T 6520: 4f 50 29 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 OP)\ext\icu.TCC 6530: 3d 20 24 28 54 43 43 29 20 2d 49 24 28 49 43 55 =$(TCC) -I$(ICU 6540: 49 4e 43 44 49 52 29 0a 52 43 43 20 3d 20 24 28 INCDIR).RCC =$(
6550: 52 43 43 29 20 2d 49 24 28 49 43 55 49 4e 43 44  RCC) -I$(ICUINCD 6560: 49 52 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f IR).!ENDIF.# <</ 6570: 6d 61 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e mark>>..# Comman 6580: 64 20 6c 69 6e 65 20 70 72 65 66 69 78 65 73 20 d line prefixes 6590: 66 6f 72 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f for compiling co 65a0: 64 65 2c 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 de, compiling re 65b0: 73 6f 75 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 sources,.# linki 65c0: 6e 67 2c 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d ng, etc..#.LTCOM 65d0: 50 49 4c 45 20 3d 20 24 28 54 43 43 29 20 2d 46 PILE =$(TCC) -F
65e0: 6f 24 40 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d  o$@.LTRCOMPILE = 65f0: 20 24 28 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42$(RCC) -r.LTLIB
6600: 20 3d 20 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e   = lib.exe.LTLIN
6610: 4b 20 3d 20 24 28 54 43 43 29 20 2d 46 65 24 40  K = $(TCC) -Fe$@
6620: 0a 0a 23 20 49 66 20 72 65 71 75 65 73 74 65 64  ..# If requested
6630: 2c 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 52 50  , link to the RP
6640: 43 52 54 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a  CRT4 library..#.
6650: 21 49 46 20 24 28 55 53 45 5f 52 50 43 52 54 34  !IF $(USE_RPCRT4 6660: 5f 4c 49 42 29 21 3d 30 0a 4c 54 4c 49 42 53 20 _LIB)!=0.LTLIBS 6670: 3d 20 24 28 4c 54 4c 49 42 53 29 20 72 70 63 72 =$(LTLIBS) rpcr
6680: 74 34 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23  t4.lib.!ENDIF..#
6690: 20 49 66 20 61 20 70 6c 61 74 66 6f 72 6d 20 77   If a platform w
66a0: 61 73 20 73 65 74 2c 20 66 6f 72 63 65 20 74 68  as set, force th
66b0: 65 20 6c 69 6e 6b 65 72 20 74 6f 20 74 61 72 67  e linker to targ
66c0: 65 74 20 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20  et that..# Note
66d0: 74 68 61 74 20 74 68 65 20 76 63 76 61 72 73 2a  that the vcvars*
66e0: 2e 62 61 74 20 66 61 6d 69 6c 79 20 6f 66 20 62  .bat family of b
66f0: 61 74 63 68 20 66 69 6c 65 73 20 74 79 70 69 63  atch files typic
6700: 61 6c 6c 79 0a 23 20 73 65 74 20 74 68 69 73 20  ally.# set this
6710: 66 6f 72 20 79 6f 75 2e 20 20 4f 74 68 65 72 77  for you.  Otherw
6720: 69 73 65 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20  ise, the linker
6730: 77 69 6c 6c 20 61 74 74 65 6d 70 74 0a 23 20 74  will attempt.# t
6740: 6f 20 64 65 64 75 63 65 20 74 68 65 20 62 69 6e  o deduce the bin
6750: 61 72 79 20 74 79 70 65 20 62 61 73 65 64 20 6f  ary type based o
6760: 6e 20 74 68 65 20 6f 62 6a 65 63 74 20 66 69 6c  n the object fil
6770: 65 73 2e 0a 21 49 46 44 45 46 20 50 4c 41 54 46  es..!IFDEF PLATF
6780: 4f 52 4d 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d  ORM.LTLINKOPTS =
6790: 20 2f 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e   /NOLOGO /MACHIN
67a0: 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54  E:$(PLATFORM).LT 67b0: 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 LIBOPTS = /NOLOG 67c0: 4f 20 2f 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 O /MACHINE:$(PLA
67d0: 54 46 4f 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c  TFORM).!ELSE.LTL
67e0: 49 4e 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47  INKOPTS = /NOLOG
67f0: 4f 0a 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e  O.LTLIBOPTS = /N
6800: 4f 4c 4f 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20  OLOGO.!ENDIF..#
6810: 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66  When compiling f
6820: 6f 72 20 75 73 65 20 69 6e 20 74 68 65 20 57 69  or use in the Wi
6830: 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c  nRT environment,
6840: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23   the following.#
6850: 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d   linker option m
6860: 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 6d  ust be used to m
6870: 61 72 6b 20 74 68 65 20 65 78 65 63 75 74 61 62  ark the executab
6880: 6c 65 20 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23  le as runnable.#
6890: 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e   only in the con
68a0: 74 65 78 74 20 6f 66 20 61 6e 20 61 70 70 6c 69  text of an appli
68b0: 63 61 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72  cation container
68c0: 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49  ..#.!IF $(FOR_WI 68d0: 4e 52 54 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 NRT)!=0.LTLINKOP 68e0: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 TS =$(LTLINKOPT
68f0: 53 29 20 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52  S) /APPCONTAINER
6900: 0a 21 49 46 20 22 24 28 56 49 53 55 41 4c 53 54  .!IF "$(VISUALST 6910: 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 UDIOVERSION)"==" 6920: 31 32 2e 30 22 20 7c 7c 20 22 24 28 56 49 53 55 12.0" || "$(VISU
6930: 41 4c 53 54 55 44 49 4f 56 45 52 53 49 4f 4e 29  ALSTUDIOVERSION)
6940: 22 3d 3d 22 31 34 2e 30 22 0a 21 49 46 4e 44 45  "=="14.0".!IFNDE
6950: 46 20 53 54 4f 52 45 4c 49 42 50 41 54 48 0a 21  F STORELIBPATH.!
6960: 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22  IF "$(PLATFORM)" 6970: 3d 3d 22 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 =="x86".STORELIB 6980: 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 PATH =$(CRTLIBP
6990: 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45  ATH)\store.!ELSE
69a0: 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22  IF "$(PLATFORM)" 69b0: 3d 3d 22 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 =="x64".STORELIB 69c0: 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 PATH =$(CRTLIBP
69d0: 41 54 48 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34  ATH)\store\amd64
69e0: 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c 41 54  .!ELSEIF "$(PLAT 69f0: 46 4f 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 FORM)"=="ARM".ST 6a00: 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24 28 43 ORELIBPATH =$(C
6a10: 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 65  RTLIBPATH)\store
6a20: 5c 61 72 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45  \arm.!ELSE.STORE
6a30: 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c  LIBPATH = $(CRTL 6a40: 49 42 50 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 IBPATH)\store.!E 6a50: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 NDIF.!ENDIF.STOR 6a60: 45 4c 49 42 50 41 54 48 20 3d 20 24 28 53 54 4f ELIBPATH =$(STO
6a70: 52 45 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a  RELIBPATH:\\=\).
6a80: 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c  LTLINKOPTS = $(L 6a90: 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 TLINKOPTS) "/LIB 6aa0: 50 41 54 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 PATH:$(STORELIBP
6ab0: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e  ATH)".!ENDIF.!EN
6ac0: 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70  DIF..# When comp
6ad0: 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77  iling for Window
6ae0: 73 20 50 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20  s Phone 8.1, an
6af0: 65 78 74 72 61 20 6c 69 62 72 61 72 79 20 70 61  extra library pa
6b00: 74 68 20 69 73 0a 23 20 72 65 71 75 69 72 65 64  th is.# required
6b10: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 57 50  ..#.!IF $(USE_WP 6b20: 38 31 5f 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 81_OPTS)!=0.!IFN 6b30: 44 45 46 20 57 50 38 31 4c 49 42 50 41 54 48 0a DEF WP81LIBPATH. 6b40: 21 49 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 !IF "$(PLATFORM)
6b50: 22 3d 3d 22 78 38 36 22 0a 57 50 38 31 4c 49 42  "=="x86".WP81LIB
6b60: 50 41 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d  PATH = $(PROGRAM 6b70: 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f FILES_X86)\Windo 6b80: 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e ws Phone Kits\8. 6b90: 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 1\lib\x86.!ELSEI 6ba0: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d F "$(PLATFORM)"=
6bb0: 3d 22 41 52 4d 22 0a 57 50 38 31 4c 49 42 50 41  ="ARM".WP81LIBPA
6bc0: 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49  TH = $(PROGRAMFI 6bd0: 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 LES_X86)\Windows 6be0: 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c Phone Kits\8.1\ 6bf0: 6c 69 62 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 lib\ARM.!ELSE.WP 6c00: 38 31 4c 49 42 50 41 54 48 20 3d 20 24 28 50 52 81LIBPATH =$(PR
6c10: 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c  OGRAMFILES_X86)\
6c20: 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69  Windows Phone Ki
6c30: 74 73 5c 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21  ts\8.1\lib\x86.!
6c40: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e  ENDIF.!ENDIF.!EN
6c50: 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70  DIF..# When comp
6c60: 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77  iling for Window
6c70: 73 20 50 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d  s Phone 8.1, som
6c80: 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f  e extra linker o
6c90: 70 74 69 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73  ptions.# are als
6ca0: 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49  o required..#.!I
6cb0: 46 20 24 28 55 53 45 5f 57 50 38 31 5f 4f 50 54  F $(USE_WP81_OPT 6cc0: 53 29 21 3d 30 0a 21 49 46 44 45 46 20 57 50 38 S)!=0.!IFDEF WP8 6cd0: 31 4c 49 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 1LIBPATH.LTLINKO 6ce0: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 PTS =$(LTLINKOP
6cf0: 54 53 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28  TS) "/LIBPATH:$( 6d00: 57 50 38 31 4c 49 42 50 41 54 48 29 22 0a 21 45 WP81LIBPATH)".!E 6d10: 4e 44 49 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 NDIF.LTLINKOPTS 6d20: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 =$(LTLINKOPTS)
6d30: 2f 44 59 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c  /DYNAMICBASE.LTL
6d40: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 6d50: 4e 4b 4f 50 54 53 29 20 57 69 6e 64 6f 77 73 50 NKOPTS) WindowsP 6d60: 68 6f 6e 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e honeCore.lib Run 6d70: 74 69 6d 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 timeObject.lib P 6d80: 68 6f 6e 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 honeAppModelHost 6d90: 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 .lib.LTLINKOPTS 6da0: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 =$(LTLINKOPTS)
6db0: 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65  /NODEFAULTLIB:ke
6dc0: 72 6e 65 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45  rnel32.lib /NODE
6dd0: 46 41 55 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c  FAULTLIB:ole32.l
6de0: 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65  ib.!ENDIF..# Whe
6df0: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20  n compiling for
6e00: 55 57 50 20 6f 72 20 74 68 65 20 57 69 6e 64 6f  UWP or the Windo
6e10: 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20  ws 10 platform,
6e20: 73 6f 6d 65 20 65 78 74 72 61 20 6c 69 6e 6b 65  some extra linke
6e30: 72 0a 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20  r.# options are
6e40: 61 6c 73 6f 20 72 65 71 75 69 72 65 64 2e 0a 23  also required..#
6e50: 0a 21 49 46 20 24 28 46 4f 52 5f 55 57 50 29 21  .!IF $(FOR_UWP)! 6e60: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 =0 ||$(FOR_WIN1
6e70: 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53  0)!=0.LTLINKOPTS
6e80: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS) 6e90: 20 2f 44 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e /DYNAMICBASE /N 6ea0: 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e ODEFAULTLIB:kern 6eb0: 65 6c 33 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f el32.lib.LTLINKO 6ec0: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 PTS =$(LTLINKOP
6ed0: 54 53 29 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a  TS) mincore.lib.
6ee0: 21 49 46 44 45 46 20 50 53 44 4b 4c 49 42 50 41  !IFDEF PSDKLIBPA
6ef0: 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  TH.LTLINKOPTS =
6f00: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f  $(LTLINKOPTS) "/ 6f10: 4c 49 42 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 LIBPATH:$(PSDKLI
6f20: 42 50 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21  BPATH)".!ENDIF.!
6f30: 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 46 4f 52  ENDIF..!IF $(FOR 6f40: 5f 57 49 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e _WIN10)!=0.LTLIN 6f50: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
6f60: 4f 50 54 53 29 20 2f 67 75 61 72 64 3a 63 66 20  OPTS) /guard:cf
6f70: 22 2f 4c 49 42 50 41 54 48 3a 24 28 55 43 52 54  "/LIBPATH:$(UCRT 6f80: 4c 49 42 50 41 54 48 29 22 0a 21 49 46 20 24 28 LIBPATH)".!IF$(
6f90: 44 45 42 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f  DEBUG)>1.LTLINKO
6fa0: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 6fb0: 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 TS) /NODEFAULTLI 6fc0: 42 3a 6c 69 62 75 63 72 74 64 2e 6c 69 62 20 2f B:libucrtd.lib / 6fd0: 44 45 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 DEFAULTLIB:ucrtd 6fe0: 2e 6c 69 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e .lib.!ELSE.LTLIN 6ff0: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
7000: 4f 50 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54  OPTS) /NODEFAULT
7010: 4c 49 42 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20  LIB:libucrt.lib
7020: 2f 44 45 46 41 55 4c 54 4c 49 42 3a 75 63 72 74  /DEFAULTLIB:ucrt
7030: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44  .lib.!ENDIF.!END
7040: 49 46 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20  IF..# If either
7050: 64 65 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d  debugging or sym
7060: 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64  bols are enabled
7070: 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23  , enable PDBs..#
7080: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20  .!IF $(DEBUG)>1 7090: 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 ||$(SYMBOLS)!=0
70a0: 0a 4c 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55  .LDFLAGS = /DEBU
70b0: 47 20 24 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53  G $(LDOPTS).!ELS 70c0: 45 0a 4c 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 E.LDFLAGS =$(LD
70d0: 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20  OPTS).!ENDIF..#
70e0: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74  <<mark>>.# Start
70f0: 20 77 69 74 68 20 74 68 65 20 54 63 6c 20 72 65   with the Tcl re
7100: 6c 61 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74  lated linker opt
7110: 69 6f 6e 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f  ions..#.!IF $(NO 7120: 5f 54 43 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 _TCL)==0.LTLIBPA 7130: 54 48 53 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 THS = /LIBPATH:$
7140: 28 54 43 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49  (TCLLIBDIR).LTLI
7150: 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 29 20 24  BS = $(LTLIBS)$
7160: 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44 49 46 0a  (LIBTCL).!ENDIF.
7170: 0a 23 20 49 66 20 49 43 55 20 73 75 70 70 6f 72  .# If ICU suppor
7180: 74 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61 64  t is enabled, ad
7190: 64 20 74 68 65 20 6c 69 6e 6b 65 72 20 6f 70 74  d the linker opt
71a0: 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a 23 0a 21  ions for it..#.!
71b0: 49 46 20 24 28 55 53 45 5f 49 43 55 29 21 3d 30  IF $(USE_ICU)!=0 71c0: 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 24 28 .LTLIBPATHS =$(
71d0: 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4c 49 42  LTLIBPATHS) /LIB
71e0: 50 41 54 48 3a 24 28 49 43 55 4c 49 42 44 49 52  PATH:$(ICULIBDIR 71f0: 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28 4c 54 4c ).LTLIBS =$(LTL
7200: 49 42 53 29 20 24 28 4c 49 42 49 43 55 29 0a 21  IBS) $(LIBICU).! 7210: 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e ENDIF.# <</mark> 7220: 3e 0a 0a 23 20 59 6f 75 20 73 68 6f 75 6c 64 20 >..# You should 7230: 6e 6f 74 20 68 61 76 65 20 74 6f 20 63 68 61 6e not have to chan 7240: 67 65 20 61 6e 79 74 68 69 6e 67 20 62 65 6c 6f ge anything belo 7250: 77 20 74 68 69 73 20 6c 69 6e 65 0a 23 23 23 23 w this line.#### 7260: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7270: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7280: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 7290: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 72a0: 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 3c ###########..# < 72b0: 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62 6a 65 63 74 <mark>>.# Object 72c0: 20 66 69 6c 65 73 20 66 6f 72 20 74 68 65 20 53 files for the S 72d0: 51 4c 69 74 65 20 6c 69 62 72 61 72 79 20 28 6e QLite library (n 72e0: 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 on-amalgamation) 72f0: 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 20 3d 20 76 ..#.LIBOBJS0 = v 7300: 64 62 65 2e 6c 6f 20 70 61 72 73 65 2e 6c 6f 20 dbe.lo parse.lo 7310: 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 6c 79 7a 65 alter.lo analyze 7320: 2e 6c 6f 20 61 74 74 61 63 68 2e 6c 6f 20 61 75 .lo attach.lo au 7330: 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 th.lo \. 7340: 20 62 61 63 6b 75 70 2e 6c 6f 20 62 69 74 76 65 backup.lo bitve 7350: 63 2e 6c 6f 20 62 74 6d 75 74 65 78 2e 6c 6f 20 c.lo btmutex.lo 7360: 62 74 72 65 65 2e 6c 6f 20 62 75 69 6c 64 2e 6c btree.lo build.l 7370: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 63 61 6c o \. cal 7380: 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d 70 6c 65 74 lback.lo complet 7390: 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c 6f 20 5c 0a e.lo ctime.lo \. 73a0: 20 20 20 20 20 20 20 20 20 64 61 74 65 2e 6c 6f date.lo 73b0: 20 64 62 70 61 67 65 2e 6c 6f 20 64 62 73 74 61 dbpage.lo dbsta 73c0: 74 2e 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c t.lo delete.lo \ 73d0: 0a 20 20 20 20 20 20 20 20 20 65 78 70 72 2e 6c . expr.l 73e0: 6f 20 66 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e o fault.lo fkey. 73f0: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 lo \. ft 7400: 73 33 2e 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c s3.lo fts3_aux.l 7410: 6f 20 66 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 o fts3_expr.lo f 7420: 74 73 33 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 ts3_hash.lo fts3 7430: 5f 69 63 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 _icu.lo \. 7440: 20 20 20 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c fts3_porter.l 7450: 6f 20 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c o fts3_snippet.l 7460: 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 o fts3_tokenizer 7470: 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a .lo fts3_tokeniz 7480: 65 72 31 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 er1.lo \. 7490: 20 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f fts3_tokenize_ 74a0: 76 74 61 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 vtab.lo fts3_uni 74b0: 63 6f 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 code.lo fts3_uni 74c0: 63 6f 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 code2.lo fts3_wr 74d0: 69 74 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 ite.lo \. 74e0: 20 20 66 74 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 fts5.lo \. 74f0: 20 20 20 20 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f func.lo glo 7500: 62 61 6c 2e 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c bal.lo hash.lo \ 7510: 0a 20 20 20 20 20 20 20 20 20 69 63 75 2e 6c 6f . icu.lo 7520: 20 69 6e 73 65 72 74 2e 6c 6f 20 6c 65 67 61 63 insert.lo legac 7530: 79 2e 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 y.lo loadext.lo 7540: 5c 0a 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e \. main. 7550: 6c 6f 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d lo malloc.lo mem 7560: 30 2e 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 0.lo mem1.lo mem 7570: 32 2e 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 2.lo mem3.lo mem 7580: 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 5.lo \. 7590: 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a memjournal.lo \. 75a0: 20 20 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c mutex.l 75b0: 6f 20 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 o mutex_noop.lo 75c0: 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 mutex_unix.lo mu 75d0: 74 65 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 tex_w32.lo \. 75e0: 20 20 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 notify.lo 75f0: 6f 70 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f opcodes.lo os.lo 7600: 20 6f 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 os_unix.lo os_w 7610: 69 6e 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 in.lo \. 7620: 20 70 61 67 65 72 2e 6c 6f 20 70 63 61 63 68 65 pager.lo pcache 7630: 2e 6c 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 .lo pcache1.lo p 7640: 72 61 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 ragma.lo prepare 7650: 2e 6c 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a .lo printf.lo \. 7660: 20 20 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e random. 7670: 6c 6f 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f lo resolve.lo ro 7680: 77 73 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f wset.lo rtree.lo 7690: 20 5c 0a 20 20 20 20 20 20 20 20 20 73 71 6c 69 \. sqli 76a0: 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 te3session.lo se 76b0: 6c 65 63 74 2e 6c 6f 20 73 71 6c 69 74 65 33 72 lect.lo sqlite3r 76c0: 62 75 2e 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 bu.lo status.lo 76d0: 5c 0a 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 \. table 76e0: 2e 6c 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 .lo threads.lo t 76f0: 6f 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 okenize.lo treev 7700: 69 65 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c iew.lo trigger.l 7710: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 o \. upd 7720: 61 74 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 ate.lo util.lo v 7730: 61 63 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 acuum.lo \. 7740: 20 20 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 vdbeapi.lo v 7750: 64 62 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c dbeaux.lo vdbebl 7760: 6f 62 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f ob.lo vdbemem.lo 7770: 20 76 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 vdbesort.lo \. 7780: 20 20 20 20 20 20 20 20 76 64 62 65 74 72 61 63 vdbetrac 7790: 65 2e 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b e.lo wal.lo walk 77a0: 65 72 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 er.lo where.lo w 77b0: 68 65 72 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 herecode.lo wher 77c0: 65 65 78 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 eexpr.lo \. 77d0: 20 20 20 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e utf.lo vtab. 77e0: 6c 6f 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a lo.# <</mark>>.. 77f0: 23 20 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 # Object files f 7800: 6f 72 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 or the amalgamat 7810: 69 6f 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 ion..#.LIBOBJS1 7820: 3d 20 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 = sqlite3.lo..# 7830: 44 65 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 Determine the re 7840: 61 6c 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f al value of LIBO 7850: 42 4a 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 BJ based on the 7860: 27 63 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 'configure' scri 7870: 70 74 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a pt.#.# <<mark>>. 7880: 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 !IF$(USE_AMALGA
7890: 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42  MATION)==0.LIBOB
78a0: 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a  J = $(LIBOBJS0). 78b0: 21 45 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e !ELSE.# <</mark> 78c0: 3e 0a 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 >.LIBOBJ =$(LIB
78d0: 4f 42 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e  OBJS1).# <<mark>
78e0: 3e 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  >.!ENDIF.# <</ma
78f0: 72 6b 3e 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e  rk>>..# Determin
7900: 65 20 69 66 20 65 6d 62 65 64 64 65 64 20 72 65  e if embedded re
7910: 73 6f 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69  source compilati
7920: 6f 6e 20 61 6e 64 20 75 73 61 67 65 20 61 72 65  on and usage are
7930: 20 65 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20   enabled..#.!IF
7940: 24 28 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42  $(USE_RC)!=0.LIB 7950: 52 45 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 RESOBJS = sqlite 7960: 33 72 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 3res.lo.!ELSE.LI 7970: 42 52 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 BRESOBJS =.!ENDI 7980: 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 F..# <<mark>>.# 7990: 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 Core source code 79a0: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a files, part 1.. 79b0: 23 0a 53 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 #.SRC00 = \.$(
79c0: 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63  TOP)\src\alter.c
79d0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 79e0: 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 analyze.c \.$(
79f0: 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e  TOP)\src\attach.
7a00: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 7a10: 5c 61 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f \auth.c \.$(TO
7a20: 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20  P)\src\backup.c
7a30: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62  \.  $(TOP)\src\b 7a40: 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f itvec.c \.$(TO
7a50: 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63  P)\src\btmutex.c
7a60: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 7a70: 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f btree.c \.$(TO
7a80: 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c  P)\src\build.c \
7a90: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61  .  $(TOP)\src\ca 7aa0: 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 llback.c \.$(T
7ab0: 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65  OP)\src\complete
7ac0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7ad0: 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 c\ctime.c \.$(
7ae0: 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20  TOP)\src\date.c
7af0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64  \.  $(TOP)\src\d 7b00: 62 70 61 67 65 2e 63 20 5c 0a 20 20 24 28 54 4f bpage.c \.$(TO
7b10: 50 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 20  P)\src\dbstat.c
7b20: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64  \.  $(TOP)\src\d 7b30: 65 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f elete.c \.$(TO
7b40: 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20 5c 0a  P)\src\expr.c \.
7b50: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 61 75    $(TOP)\src\fau 7b60: 6c 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c lt.c \.$(TOP)\
7b70: 73 72 63 5c 66 6b 65 79 2e 63 20 5c 0a 20 20 24  src\fkey.c \.  $7b80: 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 (TOP)\src\func.c 7b90: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7ba0: 67 6c 6f 62 61 6c 2e 63 20 5c 0a 20 20 24 28 54  global.c \.  $(T 7bb0: 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 20 5c OP)\src\hash.c \ 7bc0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e .$(TOP)\src\in
7bd0: 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sert.c \.  $(TOP 7be0: 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 20 5c )\src\legacy.c \ 7bf0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 6f .$(TOP)\src\lo
7c00: 61 64 65 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f  adext.c \.  $(TO 7c10: 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 5c 0a P)\src\main.c \. 7c20: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 6c$(TOP)\src\mal
7c30: 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  loc.c \.  $(TOP) 7c40: 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 5c 0a 20 20 \src\mem0.c \. 7c50: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e$(TOP)\src\mem1.
7c60: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 7c70: 5c 6d 65 6d 32 2e 63 20 5c 0a 20 20 24 28 54 4f \mem2.c \.$(TO
7c80: 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 5c 0a  P)\src\mem3.c \.
7c90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem 7ca0: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 5.c \.$(TOP)\s
7cb0: 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20  rc\memjournal.c
7cc0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m 7cd0: 75 74 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 utex.c \.$(TOP
7ce0: 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70  )\src\mutex_noop
7cf0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7d00: 63 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 20 5c c\mutex_unix.c \ 7d10: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 .$(TOP)\src\mu
7d20: 74 65 78 5f 77 33 32 2e 63 20 5c 0a 20 20 24 28  tex_w32.c \.  $( 7d30: 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79 2e TOP)\src\notify. 7d40: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7d50: 5c 6f 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  \os.c \.  $(TOP) 7d60: 5c 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 5c \src\os_unix.c \ 7d70: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 .$(TOP)\src\os
7d80: 5f 77 69 6e 2e 63 0a 0a 23 20 43 6f 72 65 20 73  _win.c..# Core s
7d90: 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73  ource code files
7da0: 2c 20 70 61 72 74 20 32 2e 0a 23 0a 53 52 43 30  , part 2..#.SRC0
7db0: 31 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  1 = \.  $(TOP)\s 7dc0: 72 63 5c 70 61 67 65 72 2e 63 20 5c 0a 20 20 24 rc\pager.c \.$
7dd0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65  (TOP)\src\pcache
7de0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7df0: 63 5c 70 63 61 63 68 65 31 2e 63 20 5c 0a 20 20 c\pcache1.c \. 7e00: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d$(TOP)\src\pragm
7e10: 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  a.c \.  $(TOP)\s 7e20: 72 63 5c 70 72 65 70 61 72 65 2e 63 20 5c 0a 20 rc\prepare.c \. 7e30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e$(TOP)\src\prin
7e40: 74 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  tf.c \.  $(TOP)\ 7e50: 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 5c 0a 20 src\random.c \. 7e60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f$(TOP)\src\reso
7e70: 6c 76 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  lve.c \.  $(TOP) 7e80: 5c 73 72 63 5c 72 6f 77 73 65 74 2e 63 20 5c 0a \src\rowset.c \. 7e90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c$(TOP)\src\sel
7ea0: 65 63 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ect.c \.  $(TOP) 7eb0: 5c 73 72 63 5c 73 74 61 74 75 73 2e 63 20 5c 0a \src\status.c \. 7ec0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 61 62$(TOP)\src\tab
7ed0: 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  le.c \.  $(TOP)\ 7ee0: 73 72 63 5c 74 68 72 65 61 64 73 2e 63 20 5c 0a src\threads.c \. 7ef0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c$(TOP)\src\tcl
7f00: 73 71 6c 69 74 65 2e 63 20 5c 0a 20 20 24 28 54  sqlite.c \.  $(T 7f10: 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 OP)\src\tokenize 7f20: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7f30: 63 5c 74 72 65 65 76 69 65 77 2e 63 20 5c 0a 20  c\treeview.c \.
7f40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 69 67   $(TOP)\src\trig 7f50: 67 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ger.c \.$(TOP)
7f60: 5c 73 72 63 5c 75 74 66 2e 63 20 5c 0a 20 20 24  \src\utf.c \.  $7f70: 28 54 4f 50 29 5c 73 72 63 5c 75 70 64 61 74 65 (TOP)\src\update 7f80: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7f90: 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20 24 28 54  c\util.c \.  $(T 7fa0: 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 OP)\src\vacuum.c 7fb0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7fc0: 76 64 62 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  vdbe.c \.  $(TOP 7fd0: 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20 )\src\vdbeapi.c 7fe0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
7ff0: 64 62 65 61 75 78 2e 63 20 5c 0a 20 20 24 28 54  dbeaux.c \.  $(T 8000: 4f 50 29 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 OP)\src\vdbeblob 8010: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8020: 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20 20  c\vdbemem.c \.
8030: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73  $(TOP)\src\vdbes 8040: 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ort.c \.$(TOP)
8050: 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63  \src\vdbetrace.c
8060: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8070: 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 vtab.c \.$(TOP
8080: 29 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a 20 20  )\src\wal.c \.
8090: 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65  $(TOP)\src\walke 80a0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 r.c \.$(TOP)\s
80b0: 72 63 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20 24  rc\where.c \.  $80c0: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 63 (TOP)\src\wherec 80d0: 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ode.c \.$(TOP)
80e0: 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e 63  \src\whereexpr.c
80f0: 0a 0a 23 20 43 6f 72 65 20 6d 69 73 63 65 6c 6c  ..# Core miscell
8100: 61 6e 65 6f 75 73 20 66 69 6c 65 73 2e 0a 23 0a  aneous files..#.
8110: 53 52 43 30 33 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC03 = \.  $(TO 8120: 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 0a 0a P)\src\parse.y.. 8130: 23 20 43 6f 72 65 20 68 65 61 64 65 72 20 66 69 # Core header fi 8140: 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53 les, part 1..#.S 8150: 52 43 30 34 20 3d 20 5c 0a 20 20 24 28 54 4f 50 RC04 = \.$(TOP
8160: 29 5c 73 72 63 5c 62 74 72 65 65 2e 68 20 5c 0a  )\src\btree.h \.
8170: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72    $(TOP)\src\btr 8180: 65 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f eeInt.h \.$(TO
8190: 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 20 5c 0a  P)\src\hash.h \.
81a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 77 74    $(TOP)\src\hwt 81b0: 69 6d 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 ime.h \.$(TOP)
81c0: 5c 73 72 63 5c 6d 73 76 63 2e 68 20 5c 0a 20 20  \src\msvc.h \.
81d0: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex 81e0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .h \.$(TOP)\sr
81f0: 63 5c 6f 73 2e 68 20 5c 0a 20 20 24 28 54 4f 50  c\os.h \.  $(TOP 8200: 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e )\src\os_common. 8210: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 h \.$(TOP)\src
8220: 5c 6f 73 5f 73 65 74 75 70 2e 68 20 5c 0a 20 20  \os_setup.h \.
8230: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69  $(TOP)\src\os_wi 8240: 6e 2e 68 0a 0a 23 20 43 6f 72 65 20 68 65 61 64 n.h..# Core head 8250: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 er files, part 2 8260: 2e 0a 23 0a 53 52 43 30 35 20 3d 20 5c 0a 20 20 ..#.SRC05 = \. 8270: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72$(TOP)\src\pager
8280: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 8290: 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a 20 20 24 c\pcache.h \.$
82a0: 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d 61  (TOP)\src\pragma
82b0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 82c0: 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e 20 5c 0a c\sqlite.h.in \. 82d0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c$(TOP)\src\sql
82e0: 69 74 65 33 65 78 74 2e 68 20 5c 0a 20 20 24 28  ite3ext.h \.  $( 82f0: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 TOP)\src\sqliteI 8300: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c nt.h \.$(TOP)\
8310: 73 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e  src\sqliteLimit.
8320: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 8330: 5c 76 64 62 65 2e 68 20 5c 0a 20 20 24 28 54 4f \vdbe.h \.$(TO
8340: 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e 68  P)\src\vdbeInt.h
8350: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8360: 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20 20 24 28 vxworks.h \.$(
8370: 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 68 20 5c  TOP)\src\wal.h \
8380: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68  .  $(TOP)\src\wh 8390: 65 72 65 49 6e 74 2e 68 0a 0a 23 20 45 78 74 65 ereInt.h..# Exte 83a0: 6e 73 69 6f 6e 20 73 6f 75 72 63 65 20 63 6f 64 nsion source cod 83b0: 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e e files, part 1. 83c0: 0a 23 0a 53 52 43 30 36 20 3d 20 5c 0a 20 20 24 .#.SRC06 = \.$
83d0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66  (TOP)\ext\fts1\f
83e0: 74 73 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ts1.c \.  $(TOP) 83f0: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 68 \ext\fts1\fts1_h 8400: 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ash.c \.$(TOP)
8410: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 70  \ext\fts1\fts1_p
8420: 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  orter.c \.  $(TO 8430: 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 P)\ext\fts1\fts1 8440: 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 5c 0a _tokenizer1.c \. 8450: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8460: 32 5c 66 74 73 32 2e 63 20 5c 0a 20 20 24 28 54  2\fts2.c \.  $(T 8470: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts 8480: 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 2_hash.c \.$(T
8490: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
84a0: 32 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28 54 4f  2_icu.c \.  $(TO 84b0: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 P)\ext\fts2\fts2 84c0: 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 28 _porter.c \.$(
84d0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
84e0: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c  s2_tokenizer.c \
84f0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 8500: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 s2\fts2_tokenize 8510: 72 31 2e 63 0a 0a 23 20 45 78 74 65 6e 73 69 6f r1.c..# Extensio 8520: 6e 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 n source code fi 8530: 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a 53 les, part 2..#.S 8540: 52 43 30 37 20 3d 20 5c 0a 20 20 24 28 54 4f 50 RC07 = \.$(TOP
8550: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e  )\ext\fts3\fts3.
8560: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 8570: 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 \fts3\fts3_aux.c 8580: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
8590: 66 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63  fts3\fts3_expr.c
85a0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 85b0: 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 fts3\fts3_hash.c 85c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
85d0: 66 74 73 33 5c 66 74 73 33 5f 69 63 75 2e 63 20  fts3\fts3_icu.c
85e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 85f0: 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e ts3\fts3_porter. 8600: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
8610: 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70  \fts3\fts3_snipp
8620: 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  et.c \.  $(TOP)\ 8630: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f ext\fts3\fts3_to 8640: 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 kenizer.c \.$(
8650: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
8660: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20  s3_tokenizer1.c
8670: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 8680: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a ts3\fts3_tokeniz 8690: 65 5f 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 e_vtab.c \.$(T
86a0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
86b0: 33 5f 75 6e 69 63 6f 64 65 2e 63 20 5c 0a 20 20  3_unicode.c \.
86c0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ 86d0: 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e 63 20 fts3_unicode2.c 86e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
86f0: 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63  ts3\fts3_write.c
8700: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8710: 69 63 75 5c 69 63 75 2e 63 20 5c 0a 20 20 24 28 icu\icu.c \.$(
8720: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72  TOP)\ext\rtree\r
8730: 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tree.c \.  $(TOP 8740: 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 )\ext\session\sq 8750: 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 63 20 5c lite3session.c \ 8760: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 .$(TOP)\ext\rb
8770: 75 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 20 5c  u\sqlite3rbu.c \
8780: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 8790: 73 63 5c 6a 73 6f 6e 31 2e 63 20 5c 0a 20 20 24 sc\json1.c \.$
87a0: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73  (TOP)\ext\misc\s
87b0: 74 6d 74 2e 63 0a 0a 23 20 45 78 74 65 6e 73 69  tmt.c..# Extensi
87c0: 6f 6e 20 68 65 61 64 65 72 20 66 69 6c 65 73 2c  on header files,
87d0: 20 70 61 72 74 20 31 2e 0a 23 0a 53 52 43 30 38   part 1..#.SRC08
87e0: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78   = \.  $(TOP)\ex 87f0: 74 5c 66 74 73 31 5c 66 74 73 31 2e 68 20 5c 0a t\fts1\fts1.h \. 8800: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8810: 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 20 5c 0a  1\fts1_hash.h \.
8820: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8830: 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 1\fts1_tokenizer 8840: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .h \.$(TOP)\ex
8850: 74 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a  t\fts2\fts2.h \.
8860: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8870: 32 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 2\fts2_hash.h \. 8880: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8890: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
88a0: 2e 68 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20  .h..# Extension
88b0: 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61  header files, pa
88c0: 72 74 20 32 2e 0a 23 0a 53 52 43 30 39 20 3d 20  rt 2..#.SRC09 =
88d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 88e0: 74 73 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24 ts3\fts3.h \.$
88f0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
8900: 74 73 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54  ts3Int.h \.  $(T 8910: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 8920: 33 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 3_hash.h \.$(T
8930: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
8940: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a  3_tokenizer.h \.
8950: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75    $(TOP)\ext\icu 8960: 5c 73 71 6c 69 74 65 69 63 75 2e 68 20 5c 0a 20 \sqliteicu.h \. 8970: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65$(TOP)\ext\rtre
8980: 65 5c 72 74 72 65 65 2e 68 20 5c 0a 20 20 24 28  e\rtree.h \.  $( 8990: 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c TOP)\ext\rbu\sql 89a0: 69 74 65 33 72 62 75 2e 68 20 5c 0a 20 20 24 28 ite3rbu.h \.$(
89b0: 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e  TOP)\ext\session
89c0: 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e  \sqlite3session.
89d0: 68 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 73  h..# Generated s
89e0: 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73  ource code files
89f0: 0a 23 0a 53 52 43 31 30 20 3d 20 5c 0a 20 20 6f  .#.SRC10 = \.  o
8a00: 70 63 6f 64 65 73 2e 63 20 5c 0a 20 20 70 61 72  pcodes.c \.  par
8a10: 73 65 2e 63 0a 0a 23 20 47 65 6e 65 72 61 74 65  se.c..# Generate
8a20: 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 0a 23  d header files.#
8a30: 0a 53 52 43 31 31 20 3d 20 5c 0a 20 20 6b 65 79  .SRC11 = \.  key
8a40: 77 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 6f  wordhash.h \.  o
8a50: 70 63 6f 64 65 73 2e 68 20 5c 0a 20 20 70 61 72  pcodes.h \.  par
8a60: 73 65 2e 68 20 5c 0a 20 20 73 68 65 6c 6c 2e 63  se.h \.  shell.c
8a70: 20 5c 0a 20 20 24 28 53 51 4c 49 54 45 33 48 29   \.  $(SQLITE3H) 8a80: 0a 0a 23 20 47 65 6e 65 72 61 74 65 64 20 54 63 ..# Generated Tc 8a90: 6c 20 68 65 61 64 65 72 20 66 69 6c 65 73 0a 23 l header files.# 8aa0: 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 43 41 .!IF$(USE_STDCA
8ab0: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f  LL)!=0 || $(FOR_ 8ac0: 57 49 4e 31 30 29 21 3d 30 0a 53 52 43 31 32 20 WIN10)!=0.SRC12 8ad0: 3d 20 5c 0a 20 20 24 28 53 51 4c 49 54 45 54 43 = \.$(SQLITETC
8ae0: 4c 48 29 20 5c 0a 20 20 24 28 53 51 4c 49 54 45  LH) \.  $(SQLITE 8af0: 54 43 4c 44 45 43 4c 53 48 29 0a 21 45 4c 53 45 TCLDECLSH).!ELSE 8b00: 0a 53 52 43 31 32 20 3d 0a 21 45 4e 44 49 46 0a .SRC12 =.!ENDIF. 8b10: 0a 23 20 41 6c 6c 20 73 6f 75 72 63 65 20 63 6f .# All source co 8b20: 64 65 20 66 69 6c 65 73 2e 0a 23 0a 53 52 43 20 de files..#.SRC 8b30: 3d 20 24 28 53 52 43 30 30 29 20 24 28 53 52 43 =$(SRC00) $(SRC 8b40: 30 31 29 20 24 28 53 52 43 30 33 29 20 24 28 53 01)$(SRC03) $(S 8b50: 52 43 30 34 29 20 24 28 53 52 43 30 35 29 20 24 RC04)$(SRC05) $8b60: 28 53 52 43 30 36 29 20 24 28 53 52 43 30 37 29 (SRC06)$(SRC07)
8b70: 20 24 28 53 52 43 30 38 29 20 24 28 53 52 43 30   $(SRC08)$(SRC0
8b80: 39 29 20 24 28 53 52 43 31 30 29 20 24 28 53 52  9) $(SRC10)$(SR
8b90: 43 31 31 29 0a 0a 23 20 53 6f 75 72 63 65 20 63  C11)..# Source c
8ba0: 6f 64 65 20 74 6f 20 74 68 65 20 74 65 73 74 20  ode to the test
8bb0: 66 69 6c 65 73 2e 0a 23 0a 54 45 53 54 53 52 43  files..#.TESTSRC
8bc0: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72   = \.  $(TOP)\sr 8bd0: 63 5c 74 65 73 74 31 2e 63 20 5c 0a 20 20 24 28 c\test1.c \.$(
8be0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 32 2e 63  TOP)\src\test2.c
8bf0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8c00: 74 65 73 74 33 2e 63 20 5c 0a 20 20 24 28 54 4f test3.c \.$(TO
8c10: 50 29 5c 73 72 63 5c 74 65 73 74 34 2e 63 20 5c  P)\src\test4.c \
8c20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 8c30: 73 74 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 st5.c \.$(TOP)
8c40: 5c 73 72 63 5c 74 65 73 74 36 2e 63 20 5c 0a 20  \src\test6.c \.
8c50: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8c60: 37 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 7.c \.$(TOP)\s
8c70: 72 63 5c 74 65 73 74 38 2e 63 20 5c 0a 20 20 24  rc\test8.c \.  $8c80: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 39 2e (TOP)\src\test9. 8c90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8ca0: 5c 74 65 73 74 5f 61 75 74 6f 65 78 74 2e 63 20  \test_autoext.c
8cb0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 8cc0: 65 73 74 5f 61 73 79 6e 63 2e 63 20 5c 0a 20 20 est_async.c \. 8cd0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
8ce0: 62 61 63 6b 75 70 2e 63 20 5c 0a 20 20 24 28 54  backup.c \.  $(T 8cf0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 65 73 OP)\src\test_bes 8d00: 74 69 6e 64 65 78 2e 63 20 5c 0a 20 20 24 28 54 tindex.c \.$(T
8d10: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 6c 6f  OP)\src\test_blo
8d20: 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  b.c \.  $(TOP)\s 8d30: 72 63 5c 74 65 73 74 5f 62 74 72 65 65 2e 63 20 rc\test_btree.c 8d40: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8d50: 65 73 74 5f 63 6f 6e 66 69 67 2e 63 20 5c 0a 20  est_config.c \.
8d60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8d70: 5f 64 65 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28 _delete.c \.$(
8d80: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 64 65  TOP)\src\test_de
8d90: 6d 6f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f  movfs.c \.  $(TO 8da0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 64 65 76 73 P)\src\test_devs 8db0: 79 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ym.c \.$(TOP)\
8dc0: 73 72 63 5c 74 65 73 74 5f 66 73 2e 63 20 5c 0a  src\test_fs.c \.
8dd0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8de0: 74 5f 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 t_func.c \.$(T
8df0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 68 65 78  OP)\src\test_hex
8e00: 69 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  io.c \.  $(TOP)\ 8e10: 73 72 63 5c 74 65 73 74 5f 69 6e 69 74 2e 63 20 src\test_init.c 8e20: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8e30: 65 73 74 5f 69 6e 74 61 72 72 61 79 2e 63 20 5c  est_intarray.c \
8e40: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 8e50: 73 74 5f 6a 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 st_journal.c \. 8e60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
8e70: 5f 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20 24 28  _malloc.c \.  $( 8e80: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6d 64 TOP)\src\test_md 8e90: 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 5.c \.$(TOP)\s
8ea0: 72 63 5c 74 65 73 74 5f 6d 75 6c 74 69 70 6c 65  rc\test_multiple
8eb0: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  x.c \.  $(TOP)\s 8ec0: 72 63 5c 74 65 73 74 5f 6d 75 74 65 78 2e 63 20 rc\test_mutex.c 8ed0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8ee0: 65 73 74 5f 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a  est_onefile.c \.
8ef0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8f00: 74 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a 20 20 24 t_osinst.c \.$
8f10: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 70  (TOP)\src\test_p
8f20: 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f  cache.c \.  $(TO 8f30: 50 29 5c 73 72 63 5c 74 65 73 74 5f 71 75 6f 74 P)\src\test_quot 8f40: 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 a.c \.$(TOP)\s
8f50: 72 63 5c 74 65 73 74 5f 72 74 72 65 65 2e 63 20  rc\test_rtree.c
8f60: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 8f70: 65 73 74 5f 73 63 68 65 6d 61 2e 63 20 5c 0a 20 est_schema.c \. 8f80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
8f90: 5f 73 65 72 76 65 72 2e 63 20 5c 0a 20 20 24 28  _server.c \.  $( 8fa0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 75 TOP)\src\test_su 8fb0: 70 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20 20 24 28 perlock.c \.$(
8fc0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 79  TOP)\src\test_sy
8fd0: 73 63 61 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  scall.c \.  $(TO 8fe0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 74 63 6c 73 P)\src\test_tcls 8ff0: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 h.c \.$(TOP)\s
9000: 72 63 5c 74 65 73 74 5f 74 63 6c 76 61 72 2e 63  rc\test_tclvar.c
9010: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 9020: 74 65 73 74 5f 74 68 72 65 61 64 2e 63 20 5c 0a test_thread.c \. 9030: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
9040: 74 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f  t_vfs.c \.  $(TO 9050: 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 69 6e 64 P)\src\test_wind 9060: 69 72 65 6e 74 2e 63 20 5c 0a 20 20 24 28 54 4f irent.c \.$(TO
9070: 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 73 64 2e  P)\src\test_wsd.
9080: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 9090: 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 72 6d 2e \fts3\fts3_term. 90a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
90b0: 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 73 74 2e  \fts3\fts3_test.
90c0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 90d0: 5c 72 62 75 5c 74 65 73 74 5f 72 62 75 2e 63 20 \rbu\test_rbu.c 90e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 \.$(TOP)\ext\s
90f0: 65 73 73 69 6f 6e 5c 74 65 73 74 5f 73 65 73 73  ession\test_sess
9100: 69 6f 6e 2e 63 0a 0a 23 20 53 74 61 74 69 63 61  ion.c..# Statica
9110: 6c 6c 79 20 6c 69 6e 6b 65 64 20 65 78 74 65 6e  lly linked exten
9120: 73 69 6f 6e 73 2e 0a 23 0a 54 45 53 54 45 58 54  sions..#.TESTEXT
9130: 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78   = \.  $(TOP)\ex 9140: 74 5c 65 78 70 65 72 74 5c 73 71 6c 69 74 65 33 t\expert\sqlite3 9150: 65 78 70 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 expert.c \.$(T
9160: 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 74  OP)\ext\expert\t
9170: 65 73 74 5f 65 78 70 65 72 74 2e 63 20 5c 0a 20  est_expert.c \.
9180: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc 9190: 5c 61 6d 61 74 63 68 2e 63 20 5c 0a 20 20 24 28 \amatch.c \.$(
91a0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 63 61  TOP)\ext\misc\ca
91b0: 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50  rray.c \.  $(TOP 91c0: 29 5c 65 78 74 5c 6d 69 73 63 5c 63 6c 6f 73 75 )\ext\misc\closu 91d0: 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c re.c \.$(TOP)\
91e0: 65 78 74 5c 6d 69 73 63 5c 63 73 76 2e 63 20 5c  ext\misc\csv.c \
91f0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 9200: 73 63 5c 65 76 61 6c 2e 63 20 5c 0a 20 20 24 28 sc\eval.c \.$(
9210: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 66 69  TOP)\ext\misc\fi
9220: 6c 65 69 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50  leio.c \.  $(TOP 9230: 29 5c 65 78 74 5c 6d 69 73 63 5c 66 75 7a 7a 65 )\ext\misc\fuzze 9240: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 r.c \.$(TOP)\e
9250: 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 74 63 6c  xt\fts5\fts5_tcl
9260: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9270: 74 5c 66 74 73 35 5c 66 74 73 35 5f 74 65 73 74 t\fts5\fts5_test 9280: 5f 6d 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 _mi.c \.$(TOP)
9290: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 74  \ext\fts5\fts5_t
92a0: 65 73 74 5f 74 6f 6b 2e 63 20 5c 0a 20 20 24 28  est_tok.c \.  $( 92b0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 69 65 TOP)\ext\misc\ie 92c0: 65 65 37 35 34 2e 63 20 5c 0a 20 20 24 28 54 4f ee754.c \.$(TO
92d0: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6d 6d 61 70  P)\ext\misc\mmap
92e0: 77 61 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50  warm.c \.  $(TOP 92f0: 29 5c 65 78 74 5c 6d 69 73 63 5c 6e 65 78 74 63 )\ext\misc\nextc 9300: 68 61 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 har.c \.$(TOP)
9310: 5c 65 78 74 5c 6d 69 73 63 5c 70 65 72 63 65 6e  \ext\misc\percen
9320: 74 69 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  tile.c \.  $(TOP 9330: 29 5c 65 78 74 5c 6d 69 73 63 5c 72 65 67 65 78 )\ext\misc\regex 9340: 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 p.c \.$(TOP)\e
9350: 78 74 5c 6d 69 73 63 5c 72 65 6d 65 6d 62 65 72  xt\misc\remember
9360: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 9370: 74 5c 6d 69 73 63 5c 73 65 72 69 65 73 2e 63 20 t\misc\series.c 9380: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
9390: 69 73 63 5c 73 70 65 6c 6c 66 69 78 2e 63 20 5c  isc\spellfix.c \
93a0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 93b0: 73 63 5c 74 6f 74 79 70 65 2e 63 20 5c 0a 20 20 sc\totype.c \. 93c0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c$(TOP)\ext\misc\
93d0: 75 6e 69 6f 6e 76 74 61 62 2e 63 20 5c 0a 20 20  unionvtab.c \.
93e0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\ 93f0: 77 68 6f 6c 65 6e 75 6d 62 65 72 2e 63 0a 0a 23 wholenumber.c..# 9400: 20 53 6f 75 72 63 65 20 63 6f 64 65 20 74 6f 20 Source code to 9410: 74 68 65 20 6c 69 62 72 61 72 79 20 66 69 6c 65 the library file 9420: 73 20 6e 65 65 64 65 64 20 62 79 20 74 68 65 20 s needed by the 9430: 74 65 73 74 20 66 69 78 74 75 72 65 0a 23 20 28 test fixture.# ( 9440: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e non-amalgamation 9450: 29 0a 23 0a 54 45 53 54 53 52 43 32 20 3d 20 5c ).#.TESTSRC2 = \ 9460: 0a 20 20 24 28 53 52 43 30 30 29 20 5c 0a 20 20 .$(SRC00) \.
9470: 24 28 53 52 43 30 31 29 20 5c 0a 20 20 24 28 53  $(SRC01) \.$(S
9480: 52 43 30 36 29 20 5c 0a 20 20 24 28 53 52 43 30  RC06) \.  $(SRC0 9490: 37 29 20 5c 0a 20 20 24 28 53 52 43 31 30 29 20 7) \.$(SRC10)
94a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 61  \.  $(TOP)\ext\a 94b0: 73 79 6e 63 5c 73 71 6c 69 74 65 33 61 73 79 6e sync\sqlite3asyn 94c0: 63 2e 63 0a 0a 23 20 48 65 61 64 65 72 20 66 69 c.c..# Header fi 94d0: 6c 65 73 20 75 73 65 64 20 62 79 20 61 6c 6c 20 les used by all 94e0: 6c 69 62 72 61 72 79 20 73 6f 75 72 63 65 20 66 library source f 94f0: 69 6c 65 73 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a iles..#.HDR = \. 9500: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74$(TOP)\src\bt
9510: 72 65 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  ree.h \.   $(TOP 9520: 29 5c 73 72 63 5c 62 74 72 65 65 49 6e 74 2e 68 )\src\btreeInt.h 9530: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
9540: 5c 68 61 73 68 2e 68 20 5c 0a 20 20 20 24 28 54  \hash.h \.   $(T 9550: 4f 50 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 OP)\src\hwtime.h 9560: 20 5c 0a 20 20 20 6b 65 79 77 6f 72 64 68 61 73 \. keywordhas 9570: 68 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c h.h \.$(TOP)\
9580: 73 72 63 5c 6d 73 76 63 2e 68 20 5c 0a 20 20 20  src\msvc.h \.
9590: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex 95a0: 2e 68 20 5c 0a 20 20 20 6f 70 63 6f 64 65 73 2e .h \. opcodes. 95b0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 h \.$(TOP)\sr
95c0: 63 5c 6f 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f  c\os.h \.   $(TO 95d0: 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e P)\src\os_common 95e0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
95f0: 72 63 5c 6f 73 5f 73 65 74 75 70 2e 68 20 5c 0a  rc\os_setup.h \.
9600: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73     $(TOP)\src\os 9610: 5f 77 69 6e 2e 68 20 5c 0a 20 20 20 24 28 54 4f _win.h \.$(TO
9620: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 20 5c  P)\src\pager.h \
9630: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70  .   $(TOP)\src\p 9640: 63 61 63 68 65 2e 68 20 5c 0a 20 20 20 70 61 72 cache.h \. par 9650: 73 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 se.h \.$(TOP)
9660: 5c 73 72 63 5c 70 72 61 67 6d 61 2e 68 20 5c 0a  \src\pragma.h \.
9670: 20 20 20 24 28 53 51 4c 49 54 45 33 48 29 20 5c     $(SQLITE3H) \ 9680: 0a 20 20 20 73 71 6c 69 74 65 33 65 78 74 2e 68 . sqlite3ext.h 9690: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 \.$(TOP)\src
96a0: 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a 20  \sqliteInt.h \.
96b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c    $(TOP)\src\sql 96c0: 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20 20 iteLimit.h \. 96d0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e$(TOP)\src\vdbe.
96e0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 96f0: 63 5c 76 64 62 65 49 6e 74 2e 68 20 5c 0a 20 20 c\vdbeInt.h \. 9700: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 78 77 6f$(TOP)\src\vxwo
9710: 72 6b 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  rks.h \.   $(TOP 9720: 29 5c 73 72 63 5c 77 68 65 72 65 49 6e 74 2e 68 )\src\whereInt.h 9730: 0a 0a 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 ..# Header files 9740: 20 75 73 65 64 20 62 79 20 65 78 74 65 6e 73 69 used by extensi 9750: 6f 6e 73 0a 23 0a 45 58 54 48 44 52 20 3d 20 24 ons.#.EXTHDR =$
9760: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54  (EXTHDR) \.  $(T 9770: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 OP)\ext\fts1\fts 9780: 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 1.h \.$(TOP)\e
9790: 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 68 61 73  xt\fts1\fts1_has
97a0: 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  h.h \.  $(TOP)\e 97b0: 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b xt\fts1\fts1_tok 97c0: 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 enizer.h.EXTHDR 97d0: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20 =$(EXTHDR) \.
97e0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 97f0: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 fts2.h \.$(TOP
9800: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
9810: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 9820: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ 9830: 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 tokenizer.h.EXTH 9840: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c DR =$(EXTHDR) \
9850: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 9860: 73 33 5c 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 s3\fts3.h \.$(
9870: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
9880: 73 33 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f  s3Int.h \.  $(TO 9890: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 98a0: 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f _hash.h \.$(TO
98b0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
98c0: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54  _tokenizer.h.EXT
98d0: 48 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20  HDR = $(EXTHDR) 98e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 \.$(TOP)\ext\r
98f0: 74 72 65 65 5c 72 74 72 65 65 2e 68 0a 45 58 54  tree\rtree.h.EXT
9900: 48 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20  HDR = $(EXTHDR) 9910: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 \.$(TOP)\ext\i
9920: 63 75 5c 73 71 6c 69 74 65 69 63 75 2e 68 0a 45  cu\sqliteicu.h.E
9930: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR 9940: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 ) \.$(TOP)\ext
9950: 5c 72 74 72 65 65 5c 73 71 6c 69 74 65 33 72 74  \rtree\sqlite3rt
9960: 72 65 65 2e 68 0a 45 58 54 48 44 52 20 3d 20 24  ree.h.EXTHDR = $9970: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 (EXTHDR) \.$(T
9980: 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c  OP)\ext\session\
9990: 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 68  sqlite3session.h
99a0: 0a 0a 23 20 65 78 65 63 75 74 61 62 6c 65 73 20  ..# executables
99b0: 6e 65 65 64 65 64 20 66 6f 72 20 74 65 73 74 69  needed for testi
99c0: 6e 67 0a 23 0a 54 45 53 54 50 52 4f 47 53 20 3d  ng.#.TESTPROGS =
99d0: 20 5c 0a 20 20 74 65 73 74 66 69 78 74 75 72 65   \.  testfixture
99e0: 2e 65 78 65 20 5c 0a 20 20 24 28 53 51 4c 49 54  .exe \.  $(SQLIT 99f0: 45 33 45 58 45 29 20 5c 0a 20 20 73 71 6c 69 74 E3EXE) \. sqlit 9a00: 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 20 e3_analyzer.exe 9a10: 5c 0a 20 20 73 71 6c 69 74 65 33 5f 63 68 65 63 \. sqlite3_chec 9a20: 6b 65 72 2e 65 78 65 20 5c 0a 20 20 73 71 6c 64 ker.exe \. sqld 9a30: 69 66 66 2e 65 78 65 20 5c 0a 20 20 64 62 68 61 iff.exe \. dbha 9a40: 73 68 2e 65 78 65 20 5c 0a 20 20 73 71 6c 74 63 sh.exe \. sqltc 9a50: 6c 73 68 2e 65 78 65 0a 0a 23 20 44 61 74 61 62 lsh.exe..# Datab 9a60: 61 73 65 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 ases containing 9a70: 66 75 7a 7a 65 72 20 74 65 73 74 20 63 61 73 65 fuzzer test case 9a80: 73 0a 23 0a 46 55 5a 5a 44 41 54 41 20 3d 20 5c s.#.FUZZDATA = \ 9a90: 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 .$(TOP)\test\f
9aa0: 75 7a 7a 64 61 74 61 31 2e 64 62 20 5c 0a 20 20  uzzdata1.db \.
9ab0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz 9ac0: 64 61 74 61 32 2e 64 62 20 5c 0a 20 20 24 28 54 data2.db \.$(T
9ad0: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74  OP)\test\fuzzdat
9ae0: 61 33 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29  a3.db \.  $(TOP) 9af0: 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 34 2e \test\fuzzdata4. 9b00: 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 db \.$(TOP)\te
9b10: 73 74 5c 66 75 7a 7a 64 61 74 61 35 2e 64 62 0a  st\fuzzdata5.db.
9b20: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 41  # <</mark>>..# A
9b30: 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c  dditional compil
9b40: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74  er options for t
9b50: 68 65 20 73 68 65 6c 6c 2e 20 20 54 68 65 73 65  he shell.  These
9b60: 20 61 72 65 20 6f 6e 6c 79 20 65 66 66 65 63 74   are only effect
9b70: 69 76 65 0a 23 20 77 68 65 6e 20 74 68 65 20 73  ive.# when the s
9b80: 68 65 6c 6c 20 69 73 20 6e 6f 74 20 62 65 69 6e  hell is not bein
9b90: 67 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69  g dynamically li
9ba0: 6e 6b 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 59  nked..#.!IF $(DY 9bb0: 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 3d 3d 30 20 NAMIC_SHELL)==0 9bc0: 26 26 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d &&$(FOR_WIN10)=
9bd0: 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45  =0.SHELL_COMPILE
9be0: 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f  _OPTS = $(SHELL_ 9bf0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 COMPILE_OPTS) -D 9c00: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 SQLITE_ENABLE_JS 9c10: 4f 4e 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 ON1 -DSQLITE_ENA 9c20: 42 4c 45 5f 46 54 53 34 20 2d 44 53 51 4c 49 54 BLE_FTS4 -DSQLIT 9c30: 45 5f 45 4e 41 42 4c 45 5f 45 58 50 4c 41 49 4e E_ENABLE_EXPLAIN 9c40: 5f 43 4f 4d 4d 45 4e 54 53 20 2d 44 53 51 4c 49 _COMMENTS -DSQLI 9c50: 54 45 5f 45 4e 41 42 4c 45 5f 53 54 4d 54 56 54 TE_ENABLE_STMTVT 9c60: 41 42 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 AB.SHELL_COMPILE 9c70: 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f _OPTS =$(SHELL_
9c80: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44  COMPILE_OPTS) -D
9c90: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 44 42  SQLITE_ENABLE_DB
9ca0: 50 41 47 45 5f 56 54 41 42 20 2d 44 53 51 4c 49  PAGE_VTAB -DSQLI
9cb0: 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 54 41 54  TE_ENABLE_DBSTAT
9cc0: 5f 56 54 41 42 0a 21 45 4e 44 49 46 0a 0a 23 20  _VTAB.!ENDIF..#
9cd0: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78 74 72 61  <<mark>>.# Extra
9ce0: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
9cf0: 73 20 66 6f 72 20 76 61 72 69 6f 75 73 20 74 65  s for various te
9d00: 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d 50 54 45  st tools..#.MPTE
9d10: 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  STER_COMPILE_OPT
9d20: 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  S = -DSQLITE_ENA
9d30: 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49  BLE_JSON1 -DSQLI
9d40: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a 46  TE_ENABLE_FTS5.F
9d50: 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d 50 49  UZZERSHELL_COMPI
9d60: 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49  LE_OPTS = -DSQLI
9d70: 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a  TE_ENABLE_JSON1.
9d80: 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c  FUZZCHECK_COMPIL
9d90: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
9da0: 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d  E_ENABLE_JSON1 -
9db0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d  DSQLITE_ENABLE_M
9dc0: 45 4d 53 59 53 35 20 2d 44 53 51 4c 49 54 45 5f  EMSYS5 -DSQLITE_
9dd0: 4f 53 53 5f 46 55 5a 5a 20 2d 44 53 51 4c 49 54  OSS_FUZZ -DSQLIT
9de0: 45 5f 4d 41 58 5f 4d 45 4d 4f 52 59 3d 35 30 30  E_MAX_MEMORY=500
9df0: 30 30 30 30 30 0a 46 55 5a 5a 43 48 45 43 4b 5f  00000.FUZZCHECK_
9e00: 53 52 43 20 3d 20 24 28 54 4f 50 29 5c 74 65 73  SRC = $(TOP)\tes 9e10: 74 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 20 24 28 t\fuzzcheck.c$(
9e20: 54 4f 50 29 5c 74 65 73 74 5c 6f 73 73 66 75 7a  TOP)\test\ossfuz
9e30: 7a 2e 63 0a 4f 53 53 53 48 45 4c 4c 5f 53 52 43  z.c.OSSSHELL_SRC
9e40: 20 3d 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f   = $(TOP)\test\o 9e50: 73 73 73 68 65 6c 6c 2e 63 20 24 28 54 4f 50 29 ssshell.c$(TOP)
9e60: 5c 74 65 73 74 5c 6f 73 73 66 75 7a 7a 2e 63 0a  \test\ossfuzz.c.
9e70: 44 42 46 55 5a 5a 5f 43 4f 4d 50 49 4c 45 5f 4f  DBFUZZ_COMPILE_O
9e80: 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 54  PTS = -DSQLITE_T
9e90: 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51  HREADSAFE=0 -DSQ
9ea0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45  LITE_OMIT_LOAD_E
9eb0: 58 54 45 4e 53 49 4f 4e 0a 4b 56 5f 43 4f 4d 50  XTENSION.KV_COMP
9ec0: 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c  ILE_OPTS = -DSQL
9ed0: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
9ee0: 20 2d 44 53 51 4c 49 54 45 5f 44 49 52 45 43 54   -DSQLITE_DIRECT
9ef0: 5f 4f 56 45 52 46 4c 4f 57 5f 52 45 41 44 0a 44  _OVERFLOW_READ.D
9f00: 42 53 45 4c 46 54 45 53 54 5f 43 4f 4d 50 49 4c  BSELFTEST_COMPIL
9f10: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
9f20: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
9f30: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
9f40: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 44 53 51  D_EXTENSION -DSQ
9f50: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45  LITE_ENABLE_RTRE
9f60: 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  E -DSQLITE_ENABL
9f70: 45 5f 46 54 53 34 20 2d 44 53 51 4c 49 54 45 5f  E_FTS4 -DSQLITE_
9f80: 45 4e 41 42 4c 45 5f 46 54 53 35 0a 53 54 5f 43  ENABLE_FTS5.ST_C
9f90: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44  OMPILE_OPTS = -D
9fa0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46  SQLITE_THREADSAF
9fb0: 45 3d 30 0a 0a 23 20 53 74 61 6e 64 61 72 64 20  E=0..# Standard
9fc0: 6f 70 74 69 6f 6e 73 20 74 6f 20 74 65 73 74 66  options to testf
9fd0: 69 78 74 75 72 65 2e 0a 23 0a 54 45 53 54 4f 50  ixture..#.TESTOP
9fe0: 54 53 20 3d 20 2d 2d 76 65 72 62 6f 73 65 3d 66  TS = --verbose=f
9ff0: 69 6c 65 20 2d 2d 6f 75 74 70 75 74 3d 74 65 73  ile --output=tes
a000: 74 2d 6f 75 74 2e 74 78 74 0a 0a 23 20 45 78 74  t-out.txt..# Ext
a010: 72 61 20 74 61 72 67 65 74 73 20 66 6f 72 20 74  ra targets for t
a020: 68 65 20 22 61 6c 6c 22 20 74 61 72 67 65 74 20  he "all" target
a030: 74 68 61 74 20 72 65 71 75 69 72 65 20 54 63 6c  that require Tcl
a040: 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 43 4c  ..#.!IF $(NO_TCL a050: 29 3d 3d 30 0a 41 4c 4c 5f 54 43 4c 5f 54 41 52 )==0.ALL_TCL_TAR a060: 47 45 54 53 20 3d 20 6c 69 62 74 63 6c 73 71 6c GETS = libtclsql a070: 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45 0a 41 ite3.lib.!ELSE.A a080: 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 20 3d LL_TCL_TARGETS = a090: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 .!ENDIF.# <</mar a0a0: 6b 3e 3e 0a 0a 23 20 54 68 69 73 20 69 73 20 74 k>>..# This is t a0b0: 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 66 he default Makef a0c0: 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68 65 ile target. The a0d0: 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64 20 objects listed a0e0: 68 65 72 65 0a 23 20 61 72 65 20 77 68 61 74 20 here.# are what a0f0: 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20 79 get build when y a100: 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d 61 ou type just "ma a110: 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67 75 ke" with no argu a120: 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09 64 6c ments..#.all:.dl a130: 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 l libsqlite3.lib a140: 20 73 68 65 6c 6c 20 24 28 41 4c 4c 5f 54 43 4c shell$(ALL_TCL
a150: 5f 54 41 52 47 45 54 53 29 0a 0a 23 20 44 79 6e  _TARGETS)..# Dyn
a160: 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 72 61 72  amic link librar
a170: 79 20 73 65 63 74 69 6f 6e 2e 0a 23 0a 64 6c 6c  y section..#.dll
a180: 3a 09 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 0a  :.$(SQLITE3DLL). a190: 0a 23 20 53 68 65 6c 6c 20 65 78 65 63 75 74 61 .# Shell executa a1a0: 62 6c 65 2e 0a 23 0a 73 68 65 6c 6c 3a 09 24 28 ble..#.shell:.$(
a1b0: 53 51 4c 49 54 45 33 45 58 45 29 0a 0a 23 20 3c  SQLITE3EXE)..# <
a1c0: 3c 6d 61 72 6b 3e 3e 0a 6c 69 62 73 71 6c 69 74  <mark>>.libsqlit
a1d0: 65 33 2e 6c 69 62 3a 09 24 28 4c 49 42 4f 42 4a  e3.lib:.$(LIBOBJ a1e0: 29 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c 54 )..$(LTLIB) $(LT a1f0: 4c 49 42 4f 50 54 53 29 20 2f 4f 55 54 3a 24 40 LIBOPTS) /OUT:$@
a200: 20 24 28 4c 49 42 4f 42 4a 29 20 24 28 54 4c 49   $(LIBOBJ)$(TLI
a210: 42 53 29 0a 0a 6c 69 62 74 63 6c 73 71 6c 69 74  BS)..libtclsqlit
a220: 65 33 2e 6c 69 62 3a 09 74 63 6c 73 71 6c 69 74  e3.lib:.tclsqlit
a230: 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e  e.lo libsqlite3.
a240: 6c 69 62 0a 09 24 28 4c 54 4c 49 42 29 20 24 28  lib..$(LTLIB)$(
a250: 4c 54 4c 49 42 4f 50 54 53 29 20 24 28 4c 54 4c  LTLIBOPTS) $(LTL a260: 49 42 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 IBPATHS) /OUT:$@
a270: 20 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69   tclsqlite.lo li
a280: 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 24 28 4c  bsqlite3.lib $(L a290: 49 42 54 43 4c 53 54 55 42 29 20 24 28 54 4c 49 IBTCLSTUB)$(TLI
a2a0: 42 53 29 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  BS).# <</mark>>.
a2b0: 0a 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 3a 09  .$(SQLITE3DLL):. a2c0: 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52$(LIBOBJ) $(LIBR a2d0: 45 53 4f 42 4a 53 29 20 24 28 43 4f 52 45 5f 4c ESOBJS)$(CORE_L
a2e0: 49 4e 4b 5f 44 45 50 29 0a 09 24 28 4c 44 29 20  INK_DEP)..$(LD) a2f0: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c$(LDFLAGS) $(LTL a300: 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 INKOPTS)$(LTLIB
a310: 50 41 54 48 53 29 20 2f 44 4c 4c 20 24 28 43 4f  PATHS) /DLL $(CO a320: 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 2f 4f RE_LINK_OPTS) /O a330: 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 UT:$@ $(LIBOBJ) a340: 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28$(LIBRESOBJS) $( a350: 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 LTLIBS)$(TLIBS)
a360: 0a 0a 23 20 3c 3c 62 6c 6f 63 6b 32 3e 3e 0a 73  ..# <<block2>>.s
a370: 71 6c 69 74 65 33 2e 64 65 66 3a 09 6c 69 62 73  qlite3.def:.libs
a380: 71 6c 69 74 65 33 2e 6c 69 62 0a 09 65 63 68 6f  qlite3.lib..echo
a390: 20 45 58 50 4f 52 54 53 20 3e 20 73 71 6c 69 74   EXPORTS > sqlit
a3a0: 65 33 2e 64 65 66 0a 09 64 75 6d 70 62 69 6e 20  e3.def..dumpbin
a3b0: 2f 61 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e  /all libsqlite3.
a3c0: 6c 69 62 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53  lib \...| $(TCLS a3d0: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
a3e0: 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 69  ol\replace.tcl i
a3f0: 6e 63 6c 75 64 65 20 22 5e 5c 73 2b 31 20 5f 3f  nclude "^\s+1 _?
a400: 28 73 71 6c 69 74 65 33 28 3f 3a 73 65 73 73 69  (sqlite3(?:sessi
a410: 6f 6e 7c 63 68 61 6e 67 65 73 65 74 7c 63 68 61  on|changeset|cha
a420: 6e 67 65 67 72 6f 75 70 29 3f 5f 5b 5e 40 5d 2a  ngegroup)?_[^@]*
a430: 29 28 3f 3a 40 5c 64 2b 29 3f 24 24 22 20 5c 31  )(?:@\d+)?" \1
a440: 20 5c 0a 09 09 7c 20 73 6f 72 74 20 3e 3e 20 73   \...| sort >> s
a450: 71 6c 69 74 65 33 2e 64 65 66 0a 23 20 3c 3c 2f  qlite3.def.# <</
a460: 62 6c 6f 63 6b 32 3e 3e 0a 0a 24 28 53 51 4c 49  block2>>..$(SQLI a470: 54 45 33 45 58 45 29 3a 09 73 68 65 6c 6c 2e 63 TE3EXE):.shell.c a480: 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45$(SHELL_CORE_DE
a490: 50 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29  P) $(LIBRESOBJS) a4a0: 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52$(SHELL_CORE_SR
a4b0: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. a4c0: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53 48 45 4c$(LTLINK) $(SHEL a4d0: 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 L_COMPILE_OPTS) a4e0: 24 28 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53$(READLINE_FLAGS
a4f0: 29 20 73 68 65 6c 6c 2e 63 20 24 28 53 48 45 4c  ) shell.c $(SHEL a500: 4c 5f 43 4f 52 45 5f 53 52 43 29 20 5c 0a 09 09 L_CORE_SRC) \... a510: 2f 6c 69 6e 6b 20 24 28 53 51 4c 49 54 45 33 45 /link$(SQLITE3E
a520: 58 45 50 44 42 29 20 24 28 4c 44 46 4c 41 47 53  XEPDB) $(LDFLAGS a530: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 )$(LTLINKOPTS)
a540: 24 28 53 48 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54  $(SHELL_LINK_OPT a550: 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 S)$(LTLIBPATHS)
a560: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
a570: 28 4c 49 42 52 45 41 44 4c 49 4e 45 29 20 24 28  (LIBREADLINE) $( a580: 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 LTLIBS)$(TLIBS)
a590: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 73 71 6c  ..# <<mark>>.sql
a5a0: 64 69 66 66 2e 65 78 65 3a 09 24 28 54 4f 50 29  diff.exe:.$(TOP) a5b0: 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20 \tool\sqldiff.c a5c0: 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51$(SQLITE3C) $(SQ a5d0: 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e LITE3H)..$(LTLIN
a5e0: 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28  K) $(NO_WARN)$(
a5f0: 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66  TOP)\tool\sqldif
a600: 66 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  f.c $(SQLITE3C) a610: 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 /link$(LDFLAGS)
a620: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a   $(LTLINKOPTS).. a630: 64 62 68 61 73 68 2e 65 78 65 3a 09 24 28 54 4f dbhash.exe:.$(TO
a640: 50 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 2e 63  P)\tool\dbhash.c
a650: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
a660: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI a670: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 NK)$(NO_WARN) $a680: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 (TOP)\tool\dbhas a690: 68 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 h.c$(SQLITE3C)
a6a0: 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS) a6b0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a$(LTLINKOPTS)..
a6c0: 73 63 72 75 62 2e 65 78 65 3a 09 24 28 54 4f 50  scrub.exe:.$(TOP a6d0: 29 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72 75 62 )\ext\misc\scrub a6e0: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 .c$(SQLITE3C) $a6f0: 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
a700: 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) a710: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63$(TOP)\ext\misc
a720: 5c 73 63 72 75 62 2e 63 20 24 28 53 51 4c 49 54  \scrub.c $(SQLIT a730: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 E3C) /link$(LDF
a740: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50  LAGS) $(LTLINKOP a750: 54 53 29 0a 0a 73 72 63 63 6b 31 2e 65 78 65 3a TS)..srcck1.exe: a760: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 .$(TOP)\tool\src
a770: 63 6b 31 2e 63 0a 09 24 28 42 43 43 29 20 24 28  ck1.c..$(BCC)$(
a780: 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24  NO_WARN) -Fe$@$
a790: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b  (TOP)\tool\srcck
a7a0: 31 2e 63 0a 0a 73 6f 75 72 63 65 74 65 73 74 3a  1.c..sourcetest:
a7b0: 09 73 72 63 63 6b 31 2e 65 78 65 20 73 71 6c 69  .srcck1.exe sqli
a7c0: 74 65 33 2e 63 0a 09 73 72 63 63 6b 31 2e 65 78  te3.c..srcck1.ex
a7d0: 65 20 73 71 6c 69 74 65 33 2e 63 0a 0a 66 75 7a  e sqlite3.c..fuz
a7e0: 7a 65 72 73 68 65 6c 6c 2e 65 78 65 3a 09 24 28  zershell.exe:.$( a7f0: 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 TOP)\tool\fuzzer a800: 73 68 65 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45 shell.c$(SQLITE
a810: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  3C) $(SQLITE3H). a820: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ a830: 57 41 52 4e 29 20 24 28 46 55 5a 5a 45 52 53 48 WARN)$(FUZZERSH
a840: 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ELL_COMPILE_OPTS
a850: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75  ) $(TOP)\tool\fu a860: 7a 7a 65 72 73 68 65 6c 6c 2e 63 20 24 28 53 51 zzershell.c$(SQ
a870: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( a880: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
a890: 4b 4f 50 54 53 29 0a 0a 64 62 66 75 7a 7a 2e 65  KOPTS)..dbfuzz.e
a8a0: 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c  xe:.$(TOP)\test\ a8b0: 64 62 66 75 7a 7a 2e 63 20 24 28 53 51 4c 49 54 dbfuzz.c$(SQLIT
a8c0: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29  E3C) $(SQLITE3H) a8d0: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO a8e0: 5f 57 41 52 4e 29 20 24 28 44 42 46 55 5a 5a 5f _WARN)$(DBFUZZ_
a8f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( a900: 54 4f 50 29 5c 74 65 73 74 5c 64 62 66 75 7a 7a TOP)\test\dbfuzz a910: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f .c$(SQLITE3C) /
a920: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) a930: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66$(LTLINKOPTS)..f
a940: 75 7a 7a 63 68 65 63 6b 2e 65 78 65 3a 09 24 28  uzzcheck.exe:.$( a950: 46 55 5a 5a 43 48 45 43 4b 5f 53 52 43 29 20 24 FUZZCHECK_SRC)$
a960: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL a970: 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
a980: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 46  ) $(NO_WARN)$(F
a990: 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45  UZZCHECK_COMPILE
a9a0: 5f 4f 50 54 53 29 20 24 28 46 55 5a 5a 43 48 45  _OPTS) $(FUZZCHE a9b0: 43 4b 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 CK_SRC)$(SQLITE
a9c0: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  3C) /link $(LDFL a9d0: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
a9e0: 53 29 0a 0a 6f 73 73 73 68 65 6c 6c 2e 65 78 65  S)..ossshell.exe
a9f0: 3a 09 24 28 4f 53 53 53 48 45 4c 4c 5f 53 52 43  :.$(OSSSHELL_SRC aa00: 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 )$(SQLITE3C) $( aa10: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
aa20: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) aa30: 24 28 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50$(FUZZCHECK_COMP
aa40: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4f 53 53 53  ILE_OPTS) $(OSSS aa50: 48 45 4c 4c 5f 53 52 43 29 20 24 28 53 51 4c 49 HELL_SRC)$(SQLI
aa60: 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD aa70: 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
aa80: 50 54 53 29 0a 0a 6d 70 74 65 73 74 65 72 2e 65  PTS)..mptester.e
aa90: 78 65 3a 09 24 28 54 4f 50 29 5c 6d 70 74 65 73  xe:.$(TOP)\mptes aaa0: 74 5c 6d 70 74 65 73 74 2e 63 20 24 28 53 51 4c t\mptest.c$(SQL
aab0: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 aac0: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( aad0: 4e 4f 5f 57 41 52 4e 29 20 24 28 4d 50 54 45 53 NO_WARN)$(MPTES
aae0: 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  TER_COMPILE_OPTS
aaf0: 29 20 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c  ) $(TOP)\mptest\ ab00: 6d 70 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 mptest.c$(SQLIT
ab10: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46  E3C) /link $(LDF ab20: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 LAGS)$(LTLINKOP
ab30: 54 53 29 0a 0a 4d 50 54 45 53 54 31 20 3d 20 6d  TS)..MPTEST1 = m
ab40: 70 74 65 73 74 65 72 20 6d 70 74 65 73 74 2e 64  ptester mptest.d
ab50: 62 20 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c  b $(TOP)\mptest\ ab60: 63 72 61 73 68 30 31 2e 74 65 73 74 20 2d 2d 72 crash01.test --r ab70: 65 70 65 61 74 20 32 30 0a 4d 50 54 45 53 54 32 epeat 20.MPTEST2 ab80: 20 3d 20 6d 70 74 65 73 74 65 72 20 6d 70 74 65 = mptester mpte ab90: 73 74 2e 64 62 20 24 28 54 4f 50 29 5c 6d 70 74 st.db$(TOP)\mpt
aba0: 65 73 74 5c 6d 75 6c 74 69 77 72 69 74 65 30 31  est\multiwrite01
abb0: 2e 74 65 73 74 20 2d 2d 72 65 70 65 61 74 20 32  .test --repeat 2
abc0: 30 0a 0a 6d 70 74 65 73 74 3a 09 6d 70 74 65 73  0..mptest:.mptes
abd0: 74 65 72 2e 65 78 65 0a 09 64 65 6c 20 2f 51 20  ter.exe..del /Q
abe0: 6d 70 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a  mptest.db 2>NUL.
abf0: 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f  .$(MPTEST1) --jo ac00: 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c 45 54 45 urnalmode DELETE ac10: 0a 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a ..$(MPTEST2) --j
ac20: 6f 75 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a 09  ournalmode WAL..
ac30: 24 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75  $(MPTEST1) --jou ac40: 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 rnalmode WAL..$(
ac50: 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e  MPTEST2) --journ
ac60: 61 6c 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09  almode PERSIST..
ac70: 24 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75  $(MPTEST1) --jou ac80: 72 6e 61 6c 6d 6f 64 65 20 50 45 52 53 49 53 54 rnalmode PERSIST ac90: 0a 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a ..$(MPTEST2) --j
aca0: 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e 43  ournalmode TRUNC
acb0: 41 54 45 0a 09 24 28 4d 50 54 45 53 54 31 29 20  ATE..$(MPTEST1) acc0: 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52 --journalmode TR acd0: 55 4e 43 41 54 45 0a 09 24 28 4d 50 54 45 53 54 UNCATE..$(MPTEST
ace0: 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65  2) --journalmode
acf0: 20 44 45 4c 45 54 45 0a 0a 23 20 54 68 69 73 20   DELETE..# This
ad00: 74 61 72 67 65 74 20 63 72 65 61 74 65 73 20 61  target creates a
ad10: 20 64 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 64   directory named
ad20: 20 22 74 73 72 63 22 20 61 6e 64 20 66 69 6c 6c   "tsrc" and fill
ad30: 73 20 69 74 20 77 69 74 68 0a 23 20 63 6f 70 69  s it with.# copi
ad40: 65 73 20 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65  es of all of the
ad50: 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61   C source code a
ad60: 6e 64 20 68 65 61 64 65 72 20 66 69 6c 65 73 20  nd header files
ad70: 6e 65 65 64 65 64 20 74 6f 0a 23 20 62 75 69 6c  needed to.# buil
ad80: 64 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20  d on the target
ad90: 73 79 73 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66  system.  Some of
ada0: 20 74 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f   the C source co
adb0: 64 65 20 61 6e 64 20 68 65 61 64 65 72 0a 23 20  de and header.#
adc0: 66 69 6c 65 73 20 61 72 65 20 61 75 74 6f 6d 61  files are automa
add0: 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65  tically generate
ade0: 64 2e 20 20 54 68 69 73 20 74 61 72 67 65 74 20  d.  This target
adf0: 74 61 6b 65 73 20 63 61 72 65 20 6f 66 0a 23 20  takes care of.#
ae00: 61 6c 6c 20 74 68 61 74 20 61 75 74 6f 6d 61 74  all that automat
ae10: 69 63 20 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23  ic generation..#
ae20: 0a 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 3a  ..target_source:
ae30: 09 24 28 53 52 43 29 20 24 28 54 4f 50 29 5c 74  .$(SRC)$(TOP)\t
ae40: 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73  ool\vdbe-compres
ae50: 73 2e 74 63 6c 20 66 74 73 35 2e 63 20 24 28 53  s.tcl fts5.c $(S ae60: 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 QLITE_TCL_DEP).. ae70: 2d 72 6d 64 69 72 20 2f 51 2f 53 20 74 73 72 63 -rmdir /Q/S tsrc ae80: 20 32 3e 4e 55 4c 0a 09 2d 6d 6b 64 69 72 20 74 2>NUL..-mkdir t ae90: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 src..for %i in ( aea0: 24 28 53 52 43 30 30 29 29 20 64 6f 20 63 6f 70$(SRC00)) do cop
aeb0: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f  y /Y %i tsrc..fo
aec0: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 31  r %i in ($(SRC01 aed0: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 )) do copy /Y %i aee0: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e tsrc..for %i in aef0: 20 28 24 28 53 52 43 30 33 29 29 20 64 6f 20 63 ($(SRC03)) do c
af00: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09  opy /Y %i tsrc..
af10: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43  for %i in ($(SRC af20: 30 34 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 04)) do copy /Y af30: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 %i tsrc..for %i af40: 69 6e 20 28 24 28 53 52 43 30 35 29 29 20 64 6f in ($(SRC05)) do
af50: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63   copy /Y %i tsrc
af60: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53  ..for %i in ($(S af70: 52 43 30 36 29 29 20 64 6f 20 63 6f 70 79 20 2f RC06)) do copy / af80: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 Y %i tsrc..for % af90: 69 20 69 6e 20 28 24 28 53 52 43 30 37 29 29 20 i in ($(SRC07))
afa0: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73  do copy /Y %i ts
afb0: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24  rc..for %i in ($afc0: 28 53 52 43 30 38 29 29 20 64 6f 20 63 6f 70 79 (SRC08)) do copy afd0: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 /Y %i tsrc..for afe0: 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 39 29 %i in ($(SRC09)
aff0: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20  ) do copy /Y %i
b000: 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20  tsrc..for %i in
b010: 28 24 28 53 52 43 31 30 29 29 20 64 6f 20 63 6f  ($(SRC10)) do co b020: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 py /Y %i tsrc..f b030: 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 31 or %i in ($(SRC1
b040: 31 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25  1)) do copy /Y %
b050: 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69  i tsrc..for %i i
b060: 6e 20 28 24 28 53 52 43 31 32 29 29 20 64 6f 20  n ($(SRC12)) do b070: 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a copy /Y %i tsrc. b080: 09 63 6f 70 79 20 2f 59 20 66 74 73 35 2e 63 20 .copy /Y fts5.c b090: 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 20 66 74 tsrc..copy /Y ft b0a0: 73 35 2e 68 20 74 73 72 63 0a 09 64 65 6c 20 2f s5.h tsrc..del / b0b0: 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e Q tsrc\sqlite.h. b0c0: 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e 79 20 in tsrc\parse.y b0d0: 32 3e 4e 55 4c 0a 09 24 28 54 43 4c 53 48 5f 43 2>NUL..$(TCLSH_C
b0e0: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\ b0f0: 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63 vdbe-compress.tc b100: 6c 20 24 28 4f 50 54 53 29 20 3c 20 74 73 72 63 l$(OPTS) < tsrc
b110: 5c 76 64 62 65 2e 63 20 3e 20 76 64 62 65 2e 6e  \vdbe.c > vdbe.n
b120: 65 77 0a 09 6d 6f 76 65 20 76 64 62 65 2e 6e 65  ew..move vdbe.ne
b130: 77 20 74 73 72 63 5c 76 64 62 65 2e 63 0a 09 65  w tsrc\vdbe.c..e
b140: 63 68 6f 20 3e 20 2e 74 61 72 67 65 74 5f 73 6f  cho > .target_so
b150: 75 72 63 65 0a 0a 73 71 6c 69 74 65 33 2e 63 3a  urce..sqlite3.c:
b160: 09 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 20  ..target_source
b170: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 24 28 4d  sqlite3ext.h $(M b180: 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c 29 0a KSQLITE3C_TOOL). b190: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 .$(TCLSH_CMD) $( b1a0: 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f 4c 29 MKSQLITE3C_TOOL) b1b0: 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52$(MKSQLITE3C_AR
b1c0: 47 53 29 0a 09 63 6f 70 79 20 24 28 54 4f 50 29  GS)..copy $(TOP) b1d0: 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c \ext\session\sql b1e0: 69 74 65 33 73 65 73 73 69 6f 6e 2e 68 20 2e 0a ite3session.h .. b1f0: 0a 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 3a 09 .sqlite3-all.c:. b200: 73 71 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 sqlite3.c$(TOP)
b210: 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69  \tool\split-sqli
b220: 74 65 33 63 2e 74 63 6c 0a 09 24 28 54 43 4c 53  te3c.tcl..$(TCLS b230: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
b240: 6f 6c 5c 73 70 6c 69 74 2d 73 71 6c 69 74 65 33  ol\split-sqlite3
b250: 63 2e 74 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  c.tcl.# <</mark>
b260: 3e 0a 0a 23 20 52 75 6c 65 20 74 6f 20 62 75 69  >..# Rule to bui
b270: 6c 64 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74  ld the amalgamat
b280: 69 6f 6e 0a 23 0a 73 71 6c 69 74 65 33 2e 6c 6f  ion.#.sqlite3.lo
b290: 3a 09 24 28 53 51 4c 49 54 45 33 43 29 0a 09 24  :.$(SQLITE3C)..$
b2a0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO b2b0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) b2c0: 20 2d 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a -c$(SQLITE3C).
b2d0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75  .# <<mark>>.# Ru
b2e0: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65  les to build the
b2f0: 20 4c 45 4d 4f 4e 20 63 6f 6d 70 69 6c 65 72 20   LEMON compiler
b300: 67 65 6e 65 72 61 74 6f 72 0a 23 0a 6c 65 6d 70  generator.#.lemp
b310: 61 72 2e 63 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  ar.c:.$(TOP)\too b320: 6c 5c 6c 65 6d 70 61 72 2e 63 0a 09 63 6f 70 79 l\lempar.c..copy b330: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d$(TOP)\tool\lem
b340: 70 61 72 2e 63 20 2e 0a 0a 6c 65 6d 6f 6e 2e 65  par.c ...lemon.e
b350: 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  xe:.$(TOP)\tool\ b360: 6c 65 6d 6f 6e 2e 63 20 6c 65 6d 70 61 72 2e 63 lemon.c lempar.c b370: 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41 ..$(BCC) $(NO_WA b380: 52 4e 29 20 2d 44 61 63 63 65 73 73 3d 5f 61 63 RN) -Daccess=_ac b390: 63 65 73 73 20 5c 0a 09 09 2d 46 65 24 40 20 24 cess \...-Fe$@ $b3a0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e (TOP)\tool\lemon b3b0: 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 .c /link$(LDFLA
b3c0: 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54  GS) $(NLTLINKOPT b3d0: 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53 S)$(NLTLIBPATHS
b3e0: 29 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20  )..# <<mark>>.#
b3f0: 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74  Rules to build t
b400: 68 65 20 73 6f 75 72 63 65 2d 69 64 20 67 65 6e  he source-id gen
b410: 65 72 61 74 6f 72 20 74 6f 6f 6c 0a 23 0a 6d 6b  erator tool.#.mk
b420: 73 6f 75 72 63 65 69 64 2e 65 78 65 3a 09 24 28  sourceid.exe:.$( b430: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 6f 75 72 TOP)\tool\mksour b440: 63 65 69 64 2e 63 0a 09 24 28 42 43 43 29 20 24 ceid.c..$(BCC) $b450: 28 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 (NO_WARN) -Fe$@
b460: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 6f  $(TOP)\tool\mkso b470: 75 72 63 65 69 64 2e 63 20 2f 6c 69 6e 6b 20 24 urceid.c /link$
b480: 28 4c 44 46 4c 41 47 53 29 20 24 28 4e 4c 54 4c  (LDFLAGS) $(NLTL b490: 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c 54 4c 49 INKOPTS)$(NLTLI
b4a0: 42 50 41 54 48 53 29 0a 0a 23 20 52 75 6c 65 73  BPATHS)..# Rules
b4b0: 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 69   to build indivi
b4c0: 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 20  dual *.lo files
b4d0: 66 72 6f 6d 20 67 65 6e 65 72 61 74 65 64 20 2a  from generated *
b4e0: 2e 63 20 66 69 6c 65 73 2e 20 54 68 69 73 0a 23  .c files. This.#
b4f0: 20 61 70 70 6c 69 65 73 20 74 6f 3a 0a 23 0a 23   applies to:.#.#
b500: 20 20 20 20 20 70 61 72 73 65 2e 6c 6f 0a 23 20       parse.lo.#
b510: 20 20 20 20 6f 70 63 6f 64 65 73 2e 6c 6f 0a 23      opcodes.lo.#
b520: 0a 70 61 72 73 65 2e 6c 6f 3a 09 70 61 72 73 65  .parse.lo:.parse
b530: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
b540: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C b550: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c b560: 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65 73 parse.c..opcodes b570: 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a 09 .lo:.opcodes.c.. b580: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C b590: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS b5a0: 29 20 2d 63 20 6f 70 63 6f 64 65 73 2e 63 0a 23 ) -c opcodes.c.# b5b0: 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52 75 <</mark>>..# Ru b5c0: 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 le to build the b5d0: 57 69 6e 33 32 20 72 65 73 6f 75 72 63 65 73 20 Win32 resources b5e0: 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 23 0a 21 object file..#.! b5f0: 49 46 20 24 28 55 53 45 5f 52 43 29 21 3d 30 0a IF$(USE_RC)!=0.
b600: 23 20 3c 3c 62 6c 6f 63 6b 31 3e 3e 0a 24 28 4c  # <<block1>>.$(L b610: 49 42 52 45 53 4f 42 4a 53 29 3a 09 24 28 54 4f IBRESOBJS):.$(TO
b620: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e 72  P)\src\sqlite3.r
b630: 63 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 65  c $(SQLITE3H)..e b640: 63 68 6f 20 23 69 66 6e 64 65 66 20 53 51 4c 49 cho #ifndef SQLI b650: 54 45 5f 52 45 53 4f 55 52 43 45 5f 56 45 52 53 TE_RESOURCE_VERS b660: 49 4f 4e 20 3e 20 73 71 6c 69 74 65 33 72 63 2e ION > sqlite3rc. b670: 68 0a 09 66 6f 72 20 2f 46 20 25 25 56 20 69 6e h..for /F %%V in b680: 20 28 27 74 79 70 65 20 22 24 28 54 4f 50 29 5c ('type "$(TOP)\
b690: 56 45 52 53 49 4f 4e 22 27 29 20 64 6f 20 28 20  VERSION"') do (
b6a0: 5c 0a 09 09 65 63 68 6f 20 23 64 65 66 69 6e 65  \...echo #define
b6b0: 20 53 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 45   SQLITE_RESOURCE
b6c0: 5f 56 45 52 53 49 4f 4e 20 25 25 56 20 5c 0a 09  _VERSION %%V \..
b6d0: 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29  ..| $(TCLSH_CMD) b6e0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70$(TOP)\tool\rep
b6f0: 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 2e  lace.tcl exact .
b700: 20 5e 2c 20 3e 3e 20 73 71 6c 69 74 65 33 72 63   ^, >> sqlite3rc
b710: 2e 68 20 5c 0a 09 29 0a 09 65 63 68 6f 20 23 65  .h \..)..echo #e
b720: 6e 64 69 66 20 3e 3e 20 73 71 6c 69 74 65 33 72  ndif >> sqlite3r
b730: 63 2e 68 0a 09 24 28 4c 54 52 43 4f 4d 50 49 4c  c.h..$(LTRCOMPIL b740: 45 29 20 2d 66 6f 20 24 28 4c 49 42 52 45 53 4f E) -fo$(LIBRESO
b750: 42 4a 53 29 20 24 28 54 4f 50 29 5c 73 72 63 5c  BJS) $(TOP)\src\ b760: 73 71 6c 69 74 65 33 2e 72 63 0a 23 20 3c 3c 2f sqlite3.rc.# <</ b770: 62 6c 6f 63 6b 31 3e 3e 0a 21 45 4e 44 49 46 0a block1>>.!ENDIF. b780: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 .# <<mark>>.# Ru b790: 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 les to build ind b7a0: 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c ividual *.lo fil b7b0: 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 20 69 6e es from files in b7c0: 20 74 68 65 20 73 72 63 20 64 69 72 65 63 74 6f the src directo b7d0: 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a 09 ry..#.alter.lo:. b7e0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72$(TOP)\src\alter
b7f0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
b800: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C b810: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c b820: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72$(TOP)\src\alter
b830: 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6c 6f 3a 09  .c..analyze.lo:.
b840: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c 79  $(TOP)\src\analy b850: 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ze.c$(HDR)..$(L b860: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
b870: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
b880: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61  c $(TOP)\src\ana b890: 6c 79 7a 65 2e 63 0a 0a 61 74 74 61 63 68 2e 6c lyze.c..attach.l b8a0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 o:.$(TOP)\src\at
b8b0: 74 61 63 68 2e 63 20 24 28 48 44 52 29 0a 09 24  tach.c $(HDR)..$
b8c0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO b8d0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) b8e0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 -c$(TOP)\src\a
b8f0: 74 74 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c 6f  ttach.c..auth.lo
b900: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74  :.$(TOP)\src\aut b910: 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 h.c$(HDR)..$(LT b920: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b930: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b940: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 68   $(TOP)\src\auth b950: 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c 6f 3a 09 24 .c..backup.lo:.$
b960: 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70  (TOP)\src\backup
b970: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
b980: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C b990: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c b9a0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75$(TOP)\src\backu
b9b0: 70 2e 63 0a 0a 62 69 74 76 65 63 2e 6c 6f 3a 09  p.c..bitvec.lo:.
b9c0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 65  $(TOP)\src\bitve b9d0: 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 c.c$(HDR)..$(LT b9e0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b9f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
ba00: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76   $(TOP)\src\bitv ba10: 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 2e 6c 6f ec.c..btmutex.lo ba20: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 6d :.$(TOP)\src\btm
ba30: 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a 09 24  utex.c $(HDR)..$
ba40: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO ba50: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) ba60: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 -c$(TOP)\src\b
ba70: 74 6d 75 74 65 78 2e 63 0a 0a 62 74 72 65 65 2e  tmutex.c..btree.
ba80: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62  lo:.$(TOP)\src\b ba90: 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 tree.c$(HDR) $( baa0: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 TOP)\src\pager.h bab0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $bac0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP bad0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
bae0: 63 5c 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c 64  c\btree.c..build
baf0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ bb00: 62 75 69 6c 64 2e 63 20 24 28 48 44 52 29 0a 09 build.c$(HDR)..
bb10: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
bb20: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
bb30: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ bb40: 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c 62 61 63 build.c..callbac bb50: 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 k.lo:.$(TOP)\src
bb60: 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24 28 48 44  \callback.c $(HD bb70: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
bb80: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ bb90: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
bba0: 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a 0a  src\callback.c..
bbb0: 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 54  complete.lo:.$(T bbc0: 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 OP)\src\complete bbd0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC bbe0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
bbf0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
bc00: 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c  $(TOP)\src\compl bc10: 65 74 65 2e 63 0a 0a 63 74 69 6d 65 2e 6c 6f 3a ete.c..ctime.lo: bc20: 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 6d .$(TOP)\src\ctim
bc30: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
bc40: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ bc50: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c bc60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69 6d$(TOP)\src\ctim
bc70: 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f 3a 09 24 28  e.c..date.lo:.$( bc80: 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 TOP)\src\date.c bc90: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP bca0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
bcb0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T bcc0: 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a 0a OP)\src\date.c.. bcd0: 64 62 70 61 67 65 2e 6c 6f 3a 09 24 28 54 4f 50 dbpage.lo:.$(TOP
bce0: 29 5c 73 72 63 5c 64 62 70 61 67 65 2e 63 20 24  )\src\dbpage.c $bcf0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
bd00: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI bd10: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
bd20: 50 29 5c 73 72 63 5c 64 62 70 61 67 65 2e 63 0a  P)\src\dbpage.c.
bd30: 0a 64 62 73 74 61 74 2e 6c 6f 3a 09 24 28 54 4f  .dbstat.lo:.$(TO bd40: 50 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 20 P)\src\dbstat.c bd50: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50$(HDR)..$(LTCOMP bd60: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
bd70: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T bd80: 4f 50 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 OP)\src\dbstat.c bd90: 0a 0a 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 ..delete.lo:.$(T
bda0: 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63  OP)\src\delete.c
bdb0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
bdc0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM bdd0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
bde0: 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e  TOP)\src\delete.
bdf0: 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f  c..expr.lo:.$(TO be00: 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20 24 28 P)\src\expr.c$(
be10: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL be20: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
be30: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP be40: 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66 61 )\src\expr.c..fa be50: 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 ult.lo:.$(TOP)\s
be60: 72 63 5c 66 61 75 6c 74 2e 63 20 24 28 48 44 52  rc\fault.c $(HDR be70: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
be80: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O be90: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
bea0: 72 63 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79  rc\fault.c..fkey
beb0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ bec0: 66 6b 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 fkey.c$(HDR)..$bed0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
bee0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
bef0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66   -c $(TOP)\src\f bf00: 6b 65 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a 09 key.c..func.lo:. bf10: 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e$(TOP)\src\func.
bf20: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
bf30: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO bf40: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
bf50: 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63  (TOP)\src\func.c
bf60: 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54  ..global.lo:.$(T bf70: 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 OP)\src\global.c bf80: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM bf90: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
bfa0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( bfb0: 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e TOP)\src\global. bfc0: 63 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f c..hash.lo:.$(TO
bfd0: 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28  P)\src\hash.c $( bfe0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
bff0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c000: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c010: 29 5c 73 72 63 5c 68 61 73 68 2e 63 0a 0a 69 6e  )\src\hash.c..in
c020: 73 65 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  sert.lo:.$(TOP)\ c030: 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 24 28 48 src\insert.c$(H
c040: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c050: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c060: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c070: 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a 6c \src\insert.c..l c080: 65 67 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 egacy.lo:.$(TOP)
c090: 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 20 24 28  \src\legacy.c $( c0a0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c0b0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c0c0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c0d0: 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a  )\src\legacy.c..
c0e0: 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f  loadext.lo:.$(TO c0f0: 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 P)\src\loadext.c c100: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c110: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c120: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c130: 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 TOP)\src\loadext c140: 2e 63 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28 54 .c..main.lo:.$(T
c150: 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 24  OP)\src\main.c $c160: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
c170: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI c180: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
c190: 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a 6d  P)\src\main.c..m
c1a0: 61 6c 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50 29  alloc.lo:.$(TOP) c1b0: 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 28 \src\malloc.c$(
c1c0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL c1d0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
c1e0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP c1f0: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a )\src\malloc.c.. c200: 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c mem0.lo:.$(TOP)\
c210: 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52  src\mem0.c $(HDR c220: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
c230: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O c240: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
c250: 72 63 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31 2e  rc\mem0.c..mem1.
c260: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d  lo:.$(TOP)\src\m c270: 65 6d 31 2e 63 20 24 28 48 44 52 29 0a 09 24 28 em1.c$(HDR)..$( c280: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
c290: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
c2a0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  -c $(TOP)\src\me c2b0: 6d 31 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09 24 m1.c..mem2.lo:.$
c2c0: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63  (TOP)\src\mem2.c
c2d0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c2e0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c2f0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c300: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 0a  TOP)\src\mem2.c.
c310: 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50 29  .mem3.lo:.$(TOP) c320: 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48 44 \src\mem3.c$(HD
c330: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) c340: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
c350: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ c360: 73 72 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 src\mem3.c..mem5 c370: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
c380: 6d 65 6d 35 2e 63 20 24 28 48 44 52 29 0a 09 24  mem5.c $(HDR)..$
c390: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c3a0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c3b0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d -c$(TOP)\src\m
c3c0: 65 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 72 6e 61  em5.c..memjourna
c3d0: 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  l.lo:.$(TOP)\src c3e0: 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 \memjournal.c$(
c3f0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL c400: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
c410: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP c420: 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c )\src\memjournal c430: 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 .c..mutex.lo:.$(
c440: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63  TOP)\src\mutex.c
c450: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c460: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM c470: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
c480: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63  TOP)\src\mutex.c
c490: 0a 0a 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a  ..mutex_noop.lo:
c4a0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65  .$(TOP)\src\mute c4b0: 78 5f 6e 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a x_noop.c$(HDR).
c4c0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
c4d0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
c4e0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src c4f0: 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d \mutex_noop.c..m c500: 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 utex_unix.lo:.$(
c510: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75  TOP)\src\mutex_u
c520: 6e 69 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28  nix.c $(HDR)..$(
c530: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR c540: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) c550: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 -c$(TOP)\src\mu
c560: 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d 75 74 65  tex_unix.c..mute
c570: 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54 4f 50 29  x_w32.lo:.$(TOP) c580: 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 \src\mutex_w32.c c590: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c5a0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c5b0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c5c0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 TOP)\src\mutex_w c5d0: 33 32 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 32.c..notify.lo: c5e0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 .$(TOP)\src\noti
c5f0: 66 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  fy.c $(HDR)..$(L
c600: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE c610: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - c620: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 c$(TOP)\src\not
c630: 69 66 79 2e 63 0a 0a 70 61 67 65 72 2e 6c 6f 3a  ify.c..pager.lo:
c640: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65  .$(TOP)\src\page c650: 72 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f 50 r.c$(HDR) $(TOP c660: 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09 24 )\src\pager.h..$
c670: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c680: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c690: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 -c$(TOP)\src\p
c6a0: 61 67 65 72 2e 63 0a 0a 70 63 61 63 68 65 2e 6c  ager.c..pcache.l
c6b0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  o:.$(TOP)\src\pc c6c0: 61 63 68 65 2e 63 20 24 28 48 44 52 29 20 24 28 ache.c$(HDR) $( c6d0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e TOP)\src\pcache. c6e0: 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 h..$(LTCOMPILE)
c6f0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O c700: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
c710: 72 63 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63 61  rc\pcache.c..pca
c720: 63 68 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  che1.lo:.$(TOP)\ c730: 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 24 28 src\pcache1.c$(
c740: 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c  HDR) $(TOP)\src\ c750: 70 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f pcache.h..$(LTCO
c760: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c770: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c780: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65  (TOP)\src\pcache
c790: 31 2e 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 28 54 4f  1.c..os.lo:.$(TO c7a0: 50 29 5c 73 72 63 5c 6f 73 2e 63 20 24 28 48 44 P)\src\os.c$(HD
c7b0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) c7c0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
c7d0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ c7e0: 73 72 63 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e 69 src\os.c..os_uni c7f0: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 x.lo:.$(TOP)\src
c800: 5c 6f 73 5f 75 6e 69 78 2e 63 20 24 28 48 44 52  \os_unix.c $(HDR c810: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
c820: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O c830: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
c840: 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73  rc\os_unix.c..os
c850: 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  _win.lo:.$(TOP)\ c860: 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28 48 src\os_win.c$(H
c870: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c880: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c890: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c8a0: 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 70 \src\os_win.c..p c8b0: 72 61 67 6d 61 2e 6c 6f 3a 09 24 28 54 4f 50 29 ragma.lo:.$(TOP)
c8c0: 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 20 24 28  \src\pragma.c $( c8d0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c8e0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c8f0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c900: 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 0a 0a  )\src\pragma.c..
c910: 70 72 65 70 61 72 65 2e 6c 6f 3a 09 24 28 54 4f  prepare.lo:.$(TO c920: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 P)\src\prepare.c c930: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c940: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c950: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c960: 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 TOP)\src\prepare c970: 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09 24 .c..printf.lo:.$
c980: 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66  (TOP)\src\printf
c990: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
c9a0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C c9b0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c c9c0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74$(TOP)\src\print
c9d0: 66 2e 63 0a 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09  f.c..random.lo:.
c9e0: 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f  $(TOP)\src\rando c9f0: 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 m.c$(HDR)..$(LT ca00: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
ca10: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
ca20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64   $(TOP)\src\rand ca30: 6f 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65 2e 6c 6f om.c..resolve.lo ca40: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 :.$(TOP)\src\res
ca50: 6f 6c 76 65 2e 63 20 24 28 48 44 52 29 0a 09 24  olve.c $(HDR)..$
ca60: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO ca70: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) ca80: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 -c$(TOP)\src\r
ca90: 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73 65 74  esolve.c..rowset
caa0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ cab0: 72 6f 77 73 65 74 2e 63 20 24 28 48 44 52 29 0a rowset.c$(HDR).
cac0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
cad0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
cae0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src caf0: 5c 72 6f 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63 \rowset.c..selec cb00: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
cb10: 5c 73 65 6c 65 63 74 2e 63 20 24 28 48 44 52 29  \select.c $(HDR) cb20: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $cb30: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP cb40: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
cb50: 63 5c 73 65 6c 65 63 74 2e 63 0a 0a 73 74 61 74  c\select.c..stat
cb60: 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  us.lo:.$(TOP)\sr cb70: 63 5c 73 74 61 74 75 73 2e 63 20 24 28 48 44 52 c\status.c$(HDR
cb80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) cb90: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
cba0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s cbb0: 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a 74 61 62 rc\status.c..tab cbc0: 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 le.lo:.$(TOP)\sr
cbd0: 63 5c 74 61 62 6c 65 2e 63 20 24 28 48 44 52 29  c\table.c $(HDR) cbe0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $cbf0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP cc00: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
cc10: 63 5c 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65 61  c\table.c..threa
cc20: 64 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ds.lo:.$(TOP)\sr cc30: 63 5c 74 68 72 65 61 64 73 2e 63 20 24 28 48 44 c\threads.c$(HD
cc40: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cc50: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cc60: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cc70: 73 72 63 5c 74 68 72 65 61 64 73 2e 63 0a 0a 74 src\threads.c..t cc80: 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a 09 24 28 54 4f okenize.lo:.$(TO
cc90: 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e  P)\src\tokenize.
cca0: 63 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20  c keywordhash.h
ccb0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
ccc0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP ccd0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
cce0: 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65  OP)\src\tokenize
ccf0: 2e 63 0a 0a 74 72 65 65 76 69 65 77 2e 6c 6f 3a  .c..treeview.lo:
cd00: 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65 65  .$(TOP)\src\tree cd10: 76 69 65 77 2e 63 20 24 28 48 44 52 29 0a 09 24 view.c$(HDR)..$cd20: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
cd30: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
cd40: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t cd50: 72 65 65 76 69 65 77 2e 63 0a 0a 74 72 69 67 67 reeview.c..trigg cd60: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 er.lo:.$(TOP)\sr
cd70: 63 5c 74 72 69 67 67 65 72 2e 63 20 24 28 48 44  c\trigger.c $(HD cd80: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
cd90: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ cda0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
cdb0: 73 72 63 5c 74 72 69 67 67 65 72 2e 63 0a 0a 75  src\trigger.c..u
cdc0: 70 64 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  pdate.lo:.$(TOP) cdd0: 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 20 24 28 \src\update.c$(
cde0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL cdf0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
ce00: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP ce10: 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 0a 0a )\src\update.c.. ce20: 75 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 utf.lo:.$(TOP)\s
ce30: 72 63 5c 75 74 66 2e 63 20 24 28 48 44 52 29 0a  rc\utf.c $(HDR). ce40: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( ce50: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT ce60: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
ce70: 5c 75 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a  \utf.c..util.lo:
ce80: 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c  .$(TOP)\src\util ce90: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC cea0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
ceb0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
cec0: 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e  $(TOP)\src\util. ced0: 63 0a 0a 76 61 63 75 75 6d 2e 6c 6f 3a 09 24 28 c..vacuum.lo:.$(
cee0: 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e  TOP)\src\vacuum.
cef0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
cf00: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO cf10: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
cf20: 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d  (TOP)\src\vacuum
cf30: 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54  .c..vdbe.lo:.$(T cf40: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 OP)\src\vdbe.c$
cf50: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI cf60: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
cf70: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO cf80: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76 P)\src\vdbe.c..v cf90: 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50 dbeapi.lo:.$(TOP
cfa0: 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20  )\src\vdbeapi.c
cfb0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
cfc0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP cfd0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
cfe0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e  OP)\src\vdbeapi.
cff0: 63 0a 0a 76 64 62 65 61 75 78 2e 6c 6f 3a 09 24  c..vdbeaux.lo:.$d000: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 (TOP)\src\vdbeau d010: 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 x.c$(HDR)..$(LT d020: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d030: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
d040: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe d050: 61 75 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 2e aux.c..vdbeblob. d060: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 lo:.$(TOP)\src\v
d070: 64 62 65 62 6c 6f 62 2e 63 20 24 28 48 44 52 29  dbeblob.c $(HDR) d080: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d090: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d0a0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
d0b0: 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76 64  c\vdbeblob.c..vd
d0c0: 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29  bemem.lo:.$(TOP) d0d0: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 24 \src\vdbemem.c$
d0e0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI d0f0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
d100: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO d110: 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 P)\src\vdbemem.c d120: 0a 0a 76 64 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 ..vdbesort.lo:.$
d130: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f  (TOP)\src\vdbeso
d140: 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  rt.c $(HDR)..$(L
d150: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE d160: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - d170: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 c$(TOP)\src\vdb
d180: 65 73 6f 72 74 2e 63 0a 0a 76 64 62 65 74 72 61  esort.c..vdbetra
d190: 63 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ce.lo:.$(TOP)\sr d1a0: 63 5c 76 64 62 65 74 72 61 63 65 2e 63 20 24 28 c\vdbetrace.c$(
d1b0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL d1c0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
d1d0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP d1e0: 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e )\src\vdbetrace. d1f0: 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f c..vtab.lo:.$(TO
d200: 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 24 28  P)\src\vtab.c $( d210: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
d220: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d230: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
d240: 29 5c 73 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61  )\src\vtab.c..wa
d250: 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  l.lo:.$(TOP)\src d260: 5c 77 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 \wal.c$(HDR)..$d270: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
d280: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
d290: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77   -c $(TOP)\src\w d2a0: 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f 3a al.c..walker.lo: d2b0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b .$(TOP)\src\walk
d2c0: 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  er.c $(HDR)..$(L
d2d0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE d2e0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - d2f0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c c$(TOP)\src\wal
d300: 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f 3a  ker.c..where.lo:
d310: 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72  .$(TOP)\src\wher d320: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 e.c$(HDR)..$(LT d330: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d340: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
d350: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher d360: 65 2e 63 0a 0a 77 68 65 72 65 63 6f 64 65 2e 6c e.c..wherecode.l d370: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 o:.$(TOP)\src\wh
d380: 65 72 65 63 6f 64 65 2e 63 20 24 28 48 44 52 29  erecode.c $(HDR) d390: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d3a0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d3b0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
d3c0: 63 5c 77 68 65 72 65 63 6f 64 65 2e 63 0a 0a 77  c\wherecode.c..w
d3d0: 68 65 72 65 65 78 70 72 2e 6c 6f 3a 09 24 28 54  hereexpr.lo:.$(T d3e0: 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 65 78 70 OP)\src\whereexp d3f0: 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 r.c$(HDR)..$(LT d400: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d410: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
d420: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher d430: 65 65 78 70 72 2e 63 0a 0a 74 63 6c 73 71 6c 69 eexpr.c..tclsqli d440: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 te.lo:.$(TOP)\sr
d450: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28  c\tclsqlite.c $( d460: 48 44 52 29 20 24 28 53 51 4c 49 54 45 5f 54 43 HDR)$(SQLITE_TC
d470: 4c 5f 44 45 50 29 0a 09 24 28 4c 54 43 4f 4d 50  L_DEP)..$(LTCOMP d480: 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 ILE)$(NO_WARN)
d490: 2d 44 55 53 45 5f 54 43 4c 5f 53 54 55 42 53 3d  -DUSE_TCL_STUBS=
d4a0: 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65  1 -DBUILD_sqlite
d4b0: 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20   -I$(TCLINCDIR) d4c0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 -c$(TOP)\src\tc
d4d0: 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71  lsqlite.c..tclsq
d4e0: 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09 24  lite-shell.lo:.$d4f0: 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c (TOP)\src\tclsql d500: 69 74 65 2e 63 20 24 28 48 44 52 29 20 24 28 53 ite.c$(HDR) $(S d510: 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 QLITE_TCL_DEP).. d520: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 4e$(LTCOMPILE) $(N d530: 4f 5f 57 41 52 4e 29 20 2d 44 54 43 4c 53 48 20 O_WARN) -DTCLSH d540: 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d -DBUILD_sqlite - d550: 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 2d 63 I$(TCLINCDIR) -c
d560: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73   $(TOP)\src\tcls d570: 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 qlite.c..tclsqli d580: 74 65 33 2e 65 78 65 3a 09 74 63 6c 73 71 6c 69 te3.exe:.tclsqli d590: 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 53 51 te-shell.lo$(SQ
d5a0: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE d5b0: 33 48 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 3H)$(LIBRESOBJS
d5c0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53  )..$(LTLINK)$(S
d5d0: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $d5e0: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
d5f0: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50  NKOPTS) $(LTLIBP d600: 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 20 74 63 ATHS) /OUT:$@ tc
d610: 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f  lsqlite-shell.lo
d620: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
d630: 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53  (LTLIBS) $(TLIBS d640: 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 )..# Rules to bu d650: 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63 20 61 6e ild opcodes.c an d660: 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23 0a 6f 70 d opcodes.h.#.op d670: 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f 64 65 73 codes.c:.opcodes d680: 2e 68 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d .h$(TOP)\tool\m
d690: 6b 6f 70 63 6f 64 65 63 2e 74 63 6c 0a 09 24 28  kopcodec.tcl..$( d6a0: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 TCLSH_CMD)$(TOP
d6b0: 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 63  )\tool\mkopcodec
d6c0: 2e 74 63 6c 20 6f 70 63 6f 64 65 73 2e 68 20 3e  .tcl opcodes.h >
d6d0: 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 6f 70 63 6f   opcodes.c..opco
d6e0: 64 65 73 2e 68 3a 09 70 61 72 73 65 2e 68 20 24  des.h:.parse.h $d6f0: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 (TOP)\src\vdbe.c d700: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f$(TOP)\tool\mko
d710: 70 63 6f 64 65 68 2e 74 63 6c 0a 09 74 79 70 65  pcodeh.tcl..type
d720: 20 70 61 72 73 65 2e 68 20 24 28 54 4f 50 29 5c   parse.h $(TOP)\ d730: 73 72 63 5c 76 64 62 65 2e 63 20 7c 20 24 28 54 src\vdbe.c |$(T
d740: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) d750: 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 68 2e \tool\mkopcodeh. d760: 74 63 6c 20 3e 20 6f 70 63 6f 64 65 73 2e 68 0a tcl > opcodes.h. d770: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c .# Rules to buil d780: 64 20 70 61 72 73 65 2e 63 20 61 6e 64 20 70 61 d parse.c and pa d790: 72 73 65 2e 68 20 2d 20 74 68 65 20 6f 75 74 70 rse.h - the outp d7a0: 75 74 73 20 6f 66 20 6c 65 6d 6f 6e 2e 0a 23 0a uts of lemon..#. d7b0: 70 61 72 73 65 2e 68 3a 09 70 61 72 73 65 2e 63 parse.h:.parse.c d7c0: 0a 0a 70 61 72 73 65 2e 63 3a 09 24 28 54 4f 50 ..parse.c:.$(TOP
d7d0: 29 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 6c 65  )\src\parse.y le
d7e0: 6d 6f 6e 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  mon.exe $(TOP)\t d7f0: 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 65 73 2e 74 ool\addopcodes.t d800: 63 6c 0a 09 64 65 6c 20 2f 51 20 70 61 72 73 65 cl..del /Q parse d810: 2e 79 20 70 61 72 73 65 2e 68 20 70 61 72 73 65 .y parse.h parse d820: 2e 68 2e 74 65 6d 70 20 32 3e 4e 55 4c 0a 09 63 .h.temp 2>NUL..c d830: 6f 70 79 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 opy$(TOP)\src\p
d840: 61 72 73 65 2e 79 20 2e 0a 09 2e 5c 6c 65 6d 6f  arse.y ....\lemo
d850: 6e 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54  n.exe $(REQ_FEAT d860: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 URE_FLAGS)$(OPT
d870: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20  _FEATURE_FLAGS)
d880: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(EXT_FEATURE_FL d890: 41 47 53 29 20 24 28 4f 50 54 53 29 20 70 61 72 AGS)$(OPTS) par
d8a0: 73 65 2e 79 0a 09 6d 6f 76 65 20 70 61 72 73 65  se.y..move parse
d8b0: 2e 68 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 0a  .h parse.h.temp.
d8c0: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
d8d0: 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63  TOP)\tool\addopc
d8e0: 6f 64 65 73 2e 74 63 6c 20 70 61 72 73 65 2e 68  odes.tcl parse.h
d8f0: 2e 74 65 6d 70 20 3e 20 70 61 72 73 65 2e 68 0a  .temp > parse.h.
d900: 0a 24 28 53 51 4c 49 54 45 33 48 29 3a 09 24 28  .$(SQLITE3H):.$(
d910: 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e  TOP)\src\sqlite.
d920: 68 2e 69 6e 20 24 28 54 4f 50 29 5c 6d 61 6e 69  h.in $(TOP)\mani d930: 66 65 73 74 20 6d 6b 73 6f 75 72 63 65 69 64 2e fest mksourceid. d940: 65 78 65 20 24 28 54 4f 50 29 5c 56 45 52 53 49 exe$(TOP)\VERSI
d950: 4f 4e 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  ON..$(TCLSH_CMD) d960: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73$(TOP)\tool\mks
d970: 71 6c 69 74 65 33 68 2e 74 63 6c 20 24 28 54 4f  qlite3h.tcl $(TO d980: 50 3a 5c 3d 2f 29 20 3e 20 24 28 53 51 4c 49 54 P:\=/) >$(SQLIT
d990: 45 33 48 29 20 24 28 4d 4b 53 51 4c 49 54 45 33  E3H) $(MKSQLITE3 d9a0: 48 5f 41 52 47 53 29 0a 0a 73 71 6c 69 74 65 33 H_ARGS)..sqlite3 d9b0: 65 78 74 2e 68 3a 09 2e 74 61 72 67 65 74 5f 73 ext.h:..target_s d9c0: 6f 75 72 63 65 0a 21 49 46 20 24 28 55 53 45 5f ource.!IF$(USE_
d9d0: 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24  STDCALL)!=0 || $d9e0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 09 (FOR_WIN10)!=0.. d9f0: 74 79 70 65 20 74 73 72 63 5c 73 71 6c 69 74 65 type tsrc\sqlite da00: 33 65 78 74 2e 68 20 7c 20 24 28 54 43 4c 53 48 3ext.h |$(TCLSH
da10: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too da20: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re da30: 67 73 75 62 20 22 5c 28 5c 2a 5c 29 22 20 22 28 gsub "$$\*$$" "( da40: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 20 SQLITE_CALLBACK da50: 2a 29 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 *)" \...|$(TCLS
da60: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f  H_CMD) $(TOP)\to da70: 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 ol\replace.tcl r da80: 65 67 73 75 62 20 22 5c 28 5c 2a 22 20 22 28 53 egsub "\(\*" "(S da90: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 20 2a 22 QLITE_APICALL *" daa0: 20 3e 20 73 71 6c 69 74 65 33 65 78 74 2e 68 0a > sqlite3ext.h. dab0: 09 63 6f 70 79 20 2f 59 20 73 71 6c 69 74 65 33 .copy /Y sqlite3 dac0: 65 78 74 2e 68 20 74 73 72 63 5c 73 71 6c 69 74 ext.h tsrc\sqlit dad0: 65 33 65 78 74 2e 68 0a 21 45 4c 53 45 0a 09 63 e3ext.h.!ELSE..c dae0: 6f 70 79 20 2f 59 20 74 73 72 63 5c 73 71 6c 69 opy /Y tsrc\sqli daf0: 74 65 33 65 78 74 2e 68 20 73 71 6c 69 74 65 33 te3ext.h sqlite3 db00: 65 78 74 2e 68 0a 21 45 4e 44 49 46 0a 0a 6d 6b ext.h.!ENDIF..mk db10: 6b 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 3a keywordhash.exe: db20: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b .$(TOP)\tool\mkk
db30: 65 79 77 6f 72 64 68 61 73 68 2e 63 0a 09 24 28  eywordhash.c..$( db40: 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 BCC)$(NO_WARN)
db50: 2d 46 65 24 40 20 24 28 52 45 51 5f 46 45 41 54  -Fe$@$(REQ_FEAT
db60: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT db70: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 _FEATURE_FLAGS) db80: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c$(EXT_FEATURE_FL
db90: 41 47 53 29 20 24 28 4f 50 54 53 29 20 5c 0a 09  AGS) $(OPTS) \.. dba0: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b .$(TOP)\tool\mkk
dbb0: 65 79 77 6f 72 64 68 61 73 68 2e 63 20 2f 6c 69  eywordhash.c /li
dbc0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
dbd0: 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e  NLTLINKOPTS) $(N dbe0: 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 6b 65 79 LTLIBPATHS)..key dbf0: 77 6f 72 64 68 61 73 68 2e 68 3a 09 24 28 54 4f wordhash.h:.$(TO
dc00: 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72  P)\tool\mkkeywor
dc10: 64 68 61 73 68 2e 63 20 6d 6b 6b 65 79 77 6f 72  dhash.c mkkeywor
dc20: 64 68 61 73 68 2e 65 78 65 0a 09 2e 5c 6d 6b 6b  dhash.exe...\mkk
dc30: 65 79 77 6f 72 64 68 61 73 68 2e 65 78 65 20 3e  eywordhash.exe >
dc40: 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 0a 0a   keywordhash.h..
dc50: 23 20 53 6f 75 72 63 65 20 66 69 6c 65 73 20 74  # Source files t
dc60: 68 61 74 20 67 6f 20 69 6e 74 6f 20 6d 61 6b 69  hat go into maki
dc70: 6e 67 20 73 68 65 6c 6c 2e 63 0a 53 48 45 4c 4c  ng shell.c.SHELL
dc80: 5f 53 52 43 20 3d 20 5c 0a 09 24 28 54 4f 50 29  _SRC = \..$(TOP) dc90: 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 2e 69 6e 20 \src\shell.c.in dca0: 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 \..$(TOP)\ext\mi
dcb0: 73 63 5c 73 68 61 74 68 72 65 65 2e 63 20 5c 0a  sc\shathree.c \.
dcc0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63  .$(TOP)\ext\misc dcd0: 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 09 24 28 54 \fileio.c \..$(T
dce0: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 63 6f 6d  OP)\ext\misc\com
dcf0: 70 6c 65 74 69 6f 6e 2e 63 0a 0a 73 68 65 6c 6c  pletion.c..shell
dd00: 2e 63 3a 09 24 28 53 48 45 4c 4c 5f 53 52 43 29  .c:.$(SHELL_SRC) dd10: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73$(TOP)\tool\mks
dd20: 68 65 6c 6c 63 2e 74 63 6c 0a 09 24 28 54 43 4c  hellc.tcl..$(TCL dd30: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 SH_CMD)$(TOP)\t
dd40: 6f 6f 6c 5c 6d 6b 73 68 65 6c 6c 63 2e 74 63 6c  ool\mkshellc.tcl
dd50: 20 3e 20 73 68 65 6c 6c 2e 63 0a 0a 0a 23 20 52   > shell.c...# R
dd60: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68  ules to build th
dd70: 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65  e extension obje
dd80: 63 74 73 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24  cts..#.icu.lo:.$dd90: 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 (TOP)\ext\icu\ic dda0: 75 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 u.c$(HDR) $(EXT ddb0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
ddc0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL ddd0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
dde0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
ddf0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 69   -c $(TOP)\ext\i de00: 63 75 5c 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c cu\icu.c..fts2.l de10: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
de20: 73 32 5c 66 74 73 32 2e 63 20 24 28 48 44 52 29  s2\fts2.c $(HDR) de30: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT de40: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
de50: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( de60: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT de70: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
de80: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63  \ext\fts2\fts2.c
de90: 0a 0a 66 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09  ..fts2_hash.lo:.
dea0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ deb0: 66 74 73 32 5f 68 61 73 68 2e 63 20 24 28 48 44 fts2_hash.c$(HD
dec0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
ded0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR dee0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) def0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
df00: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO df10: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 P)\ext\fts2\fts2 df20: 5f 68 61 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63 _hash.c..fts2_ic df30: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 u.lo:.$(TOP)\ext
df40: 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63  \fts2\fts2_icu.c
df50: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR)$(EXTHDR
df60: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) df70: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
df80: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  PTS) $(NO_WARN) df90: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 -DSQLITE_CORE -c dfa0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
dfb0: 5c 66 74 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73  \fts2_icu.c..fts
dfc0: 32 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54  2_porter.lo:.$(T dfd0: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts dfe0: 32 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52 2_porter.c$(HDR
dff0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
e000: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE e010: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
e020: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
e030: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP e040: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ e050: 70 6f 72 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74 porter.c..fts2_t e060: 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 okenizer.lo:.$(T
e070: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
e080: 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28  2_tokenizer.c $( e090: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
e0a0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
e0b0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
e0c0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS e0d0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
e0e0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
e0f0: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a  s2_tokenizer.c..
e100: 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e  fts2_tokenizer1.
e110: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f e120: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a ts2\fts2_tokeniz e130: 65 72 31 2e 63 20 24 28 48 44 52 29 20 24 28 45 er1.c$(HDR) $(E e140: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
e150: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP e160: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
e170: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
e180: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext e190: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e \fts2\fts2_token e1a0: 69 7a 65 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f izer1.c..fts3.lo e1b0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 :.$(TOP)\ext\fts
e1c0: 33 5c 66 74 73 33 2e 63 20 24 28 48 44 52 29 20  3\fts3.c $(HDR) e1d0: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC e1e0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
e1f0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N e200: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE e210: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
e220: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a  ext\fts3\fts3.c.
e230: 0a 66 74 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28  .fts3_aux.lo:.$( e240: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft e250: 73 33 5f 61 75 78 2e 63 20 24 28 48 44 52 29 20 s3_aux.c$(HDR)
e260: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
e270: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C e280: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e OMPILE_OPTS)$(N
e290: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
e2a0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\ e2b0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 ext\fts3\fts3_au e2c0: 78 2e 63 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c x.c..fts3_expr.l e2d0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
e2e0: 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 24  s3\fts3_expr.c $e2f0: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a (HDR)$(EXTHDR).
e300: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
e310: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
e320: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D e330: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 SQLITE_CORE -c$
e340: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
e350: 74 73 33 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33  ts3_expr.c..fts3
e360: 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29  _hash.lo:.$(TOP) e370: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 \ext\fts3\fts3_h e380: 61 73 68 2e 63 20 24 28 48 44 52 29 20 24 28 45 ash.c$(HDR) $(E e390: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
e3a0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP e3b0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
e3c0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
e3d0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext e3e0: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e \fts3\fts3_hash. e3f0: 63 0a 0a 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09 c..fts3_icu.lo:. e400: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
e410: 66 74 73 33 5f 69 63 75 2e 63 20 24 28 48 44 52  fts3_icu.c $(HDR e420: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L e430: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
e440: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $e450: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI e460: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
e470: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
e480: 69 63 75 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70  icu.c..fts3_snip
e490: 70 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  pet.lo:.$(TOP)\e e4a0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 xt\fts3\fts3_sni e4b0: 70 70 65 74 2e 63 20 24 28 48 44 52 29 20 24 28 ppet.c$(HDR) $( e4c0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
e4d0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM e4e0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f PILE_OPTS)$(NO_
e4f0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
e500: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex e510: 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 t\fts3\fts3_snip e520: 70 65 74 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74 pet.c..fts3_port e530: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 er.lo:.$(TOP)\ex
e540: 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74  t\fts3\fts3_port
e550: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  er.c $(HDR)$(EX
e560: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI e570: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
e580: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA e590: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR e5a0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
e5b0: 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72  fts3\fts3_porter
e5c0: 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a  .c..fts3_tokeniz
e5d0: 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  er.lo:.$(TOP)\ex e5e0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 t\fts3\fts3_toke e5f0: 6e 69 7a 65 72 2e 63 20 24 28 48 44 52 29 20 24 nizer.c$(HDR) $e600: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
e610: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO e620: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f MPILE_OPTS)$(NO
e630: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
e640: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e e650: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b xt\fts3\fts3_tok e660: 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74 enizer.c..fts3_t e670: 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 okenizer1.lo:.$(
e680: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
e690: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20  s3_tokenizer1.c
e6a0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
e6b0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
e6c0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
e6d0: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - e6e0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c e6f0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
e700: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e  fts3_tokenizer1.
e710: 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65  c..fts3_tokenize
e720: 5f 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29  _vtab.lo:.$(TOP) e730: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 \ext\fts3\fts3_t e740: 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 24 okenize_vtab.c$
e750: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). e760: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( e770: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT e780: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 S)$(NO_WARN) -D
e790: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $e7a0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f e7b0: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 ts3_tokenize_vta e7c0: 62 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 b.c..fts3_unicod e7d0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 e.lo:.$(TOP)\ext
e7e0: 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f  \fts3\fts3_unico
e7f0: 64 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  de.c $(HDR)$(EX
e800: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI e810: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
e820: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA e830: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR e840: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
e850: 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64  fts3\fts3_unicod
e860: 65 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64  e.c..fts3_unicod
e870: 65 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  e2.lo:.$(TOP)\ex e880: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 t\fts3\fts3_unic e890: 6f 64 65 32 2e 63 20 24 28 48 44 52 29 20 24 28 ode2.c$(HDR) $( e8a0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
e8b0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM e8c0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f PILE_OPTS)$(NO_
e8d0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
e8e0: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex e8f0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 t\fts3\fts3_unic e900: 6f 64 65 32 2e 63 0a 0a 66 74 73 33 5f 77 72 69 ode2.c..fts3_wri e910: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 te.lo:.$(TOP)\ex
e920: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74  t\fts3\fts3_writ
e930: 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  e.c $(HDR)$(EXT
e940: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL e950: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
e960: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR e970: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 N) -DSQLITE_CORE e980: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 -c$(TOP)\ext\f
e990: 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63  ts3\fts3_write.c
e9a0: 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f  ..rtree.lo:.$(TO e9b0: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 P)\ext\rtree\rtr e9c0: 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 ee.c$(HDR) $(EX e9d0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
e9e0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI e9f0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
ea00: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
ea10: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ ea20: 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a 73 rtree\rtree.c..s ea30: 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f qlite3session.lo ea40: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 :.$(TOP)\ext\ses
ea50: 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73  sion\sqlite3sess
ea60: 69 6f 6e 2e 63 20 24 28 48 44 52 29 20 24 28 45  ion.c $(HDR)$(E
ea70: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP ea80: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
ea90: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W eaa0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO eab0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
eac0: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33  \session\sqlite3
ead0: 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 46 54 53  session.c..# FTS
eae0: 35 20 74 68 69 6e 67 73 0a 23 0a 46 54 53 35 5f  5 things.#.FTS5_
eaf0: 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50  SRC = \.   $(TOP eb00: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 2e )\ext\fts5\fts5. eb10: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 h \.$(TOP)\ex
eb20: 74 5c 66 74 73 35 5c 66 74 73 35 49 6e 74 2e 68  t\fts5\fts5Int.h
eb30: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext eb40: 5c 66 74 73 35 5c 66 74 73 35 5f 61 75 78 2e 63 \fts5\fts5_aux.c eb50: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
eb60: 5c 66 74 73 35 5c 66 74 73 35 5f 62 75 66 66 65  \fts5\fts5_buffe
eb70: 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  r.c \.   $(TOP)\ eb80: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 6d 61 ext\fts5\fts5_ma eb90: 69 6e 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 in.c \.$(TOP)
eba0: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 63  \ext\fts5\fts5_c
ebb0: 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 20 24 28 54  onfig.c \.   $(T ebc0: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts ebd0: 35 5f 65 78 70 72 2e 63 20 5c 0a 20 20 20 24 28 5_expr.c \.$(
ebe0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74  TOP)\ext\fts5\ft
ebf0: 73 35 5f 68 61 73 68 2e 63 20 5c 0a 20 20 20 24  s5_hash.c \.   $ec00: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f ec10: 74 73 35 5f 69 6e 64 65 78 2e 63 20 5c 0a 20 20 ts5_index.c \. ec20: 20 66 74 73 35 70 61 72 73 65 2e 63 20 66 74 73 fts5parse.c fts ec30: 35 70 61 72 73 65 2e 68 20 5c 0a 20 20 20 24 28 5parse.h \.$(
ec40: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74  TOP)\ext\fts5\ft
ec50: 73 35 5f 73 74 6f 72 61 67 65 2e 63 20 5c 0a 20  s5_storage.c \.
ec60: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts ec70: 35 5c 66 74 73 35 5f 74 6f 6b 65 6e 69 7a 65 2e 5\fts5_tokenize. ec80: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 c \.$(TOP)\ex
ec90: 74 5c 66 74 73 35 5c 66 74 73 35 5f 75 6e 69 63  t\fts5\fts5_unic
eca0: 6f 64 65 32 2e 63 20 5c 0a 20 20 20 24 28 54 4f  ode2.c \.   $(TO ecb0: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 P)\ext\fts5\fts5 ecc0: 5f 76 61 72 69 6e 74 2e 63 20 5c 0a 20 20 20 24 _varint.c \.$
ecd0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66  (TOP)\ext\fts5\f
ece0: 74 73 35 5f 76 6f 63 61 62 2e 63 0a 0a 4c 53 4d  ts5_vocab.c..LSM
ecf0: 31 5f 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54  1_SRC = \.   $(T ed00: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d OP)\ext\lsm1\lsm ed10: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .h \.$(TOP)\e
ed20: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 49 6e 74 2e 68  xt\lsm1\lsmInt.h
ed30: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext ed40: 5c 6c 73 6d 31 5c 6c 73 6d 5f 63 6b 70 74 2e 63 \lsm1\lsm_ckpt.c ed50: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
ed60: 5c 6c 73 6d 31 5c 6c 73 6d 5f 66 69 6c 65 2e 63  \lsm1\lsm_file.c
ed70: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext ed80: 5c 6c 73 6d 31 5c 6c 73 6d 5f 6c 6f 67 2e 63 20 \lsm1\lsm_log.c ed90: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
eda0: 6c 73 6d 31 5c 6c 73 6d 5f 6d 61 69 6e 2e 63 20  lsm1\lsm_main.c
edb0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ edc0: 6c 73 6d 31 5c 6c 73 6d 5f 6d 65 6d 2e 63 20 5c lsm1\lsm_mem.c \ edd0: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c .$(TOP)\ext\l
ede0: 73 6d 31 5c 6c 73 6d 5f 6d 75 74 65 78 2e 63 20  sm1\lsm_mutex.c
edf0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ ee00: 6c 73 6d 31 5c 6c 73 6d 5f 73 68 61 72 65 64 2e lsm1\lsm_shared. ee10: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 c \.$(TOP)\ex
ee20: 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 6f 72 74 65  t\lsm1\lsm_sorte
ee30: 64 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  d.c \.   $(TOP)\ ee40: 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 74 72 ext\lsm1\lsm_str ee50: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .c \.$(TOP)\e
ee60: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 74 72 65 65  xt\lsm1\lsm_tree
ee70: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e ee80: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 75 6e 69 78 xt\lsm1\lsm_unix ee90: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .c \.$(TOP)\e
eea0: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 61 72 69  xt\lsm1\lsm_vari
eeb0: 6e 74 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  nt.c \.   $(TOP) eec0: 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 74 \ext\lsm1\lsm_vt eed0: 61 62 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 ab.c \.$(TOP)
eee0: 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 77 69  \ext\lsm1\lsm_wi
eef0: 6e 33 32 2e 63 0a 0a 66 74 73 35 70 61 72 73 65  n32.c..fts5parse
ef00: 2e 63 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  .c:.$(TOP)\ext\f ef10: 74 73 35 5c 66 74 73 35 70 61 72 73 65 2e 79 20 ts5\fts5parse.y ef20: 6c 65 6d 6f 6e 2e 65 78 65 0a 09 63 6f 70 79 20 lemon.exe..copy ef30: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
ef40: 66 74 73 35 70 61 72 73 65 2e 79 20 2e 0a 09 64  fts5parse.y ...d
ef50: 65 6c 20 2f 51 20 66 74 73 35 70 61 72 73 65 2e  el /Q fts5parse.
ef60: 68 20 32 3e 4e 55 4c 0a 09 2e 5c 6c 65 6d 6f 6e  h 2>NUL...\lemon
ef70: 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54 55  .exe $(REQ_FEATU ef80: 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f RE_FLAGS)$(OPT_
ef90: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24  FEATURE_FLAGS) $efa0: 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 (EXT_FEATURE_FLA efb0: 47 53 29 20 24 28 4f 50 54 53 29 20 66 74 73 35 GS)$(OPTS) fts5
efc0: 70 61 72 73 65 2e 79 0a 0a 66 74 73 35 70 61 72  parse.y..fts5par
efd0: 73 65 2e 68 3a 09 66 74 73 35 70 61 72 73 65 2e  se.h:.fts5parse.
efe0: 63 0a 0a 66 74 73 35 2e 63 3a 09 24 28 46 54 53  c..fts5.c:.$(FTS eff0: 35 5f 53 52 43 29 0a 09 24 28 54 43 4c 53 48 5f 5_SRC)..$(TCLSH_
f000: 43 4d 44 29 20 24 28 54 4f 50 29 5c 65 78 74 5c  CMD) $(TOP)\ext\ f010: 66 74 73 35 5c 74 6f 6f 6c 5c 6d 6b 66 74 73 35 fts5\tool\mkfts5 f020: 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 28 54 4f c.tcl..copy$(TO
f030: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
f040: 2e 68 20 2e 0a 0a 6c 73 6d 31 2e 63 3a 09 24 28  .h ...lsm1.c:.$( f050: 4c 53 4d 31 5f 53 52 43 29 0a 09 24 28 54 43 4c LSM1_SRC)..$(TCL
f060: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 65  SH_CMD) $(TOP)\e f070: 78 74 5c 6c 73 6d 31 5c 74 6f 6f 6c 5c 6d 6b 6c xt\lsm1\tool\mkl f080: 73 6d 31 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 sm1c.tcl..copy$
f090: 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c  (TOP)\ext\lsm1\l
f0a0: 73 6d 2e 68 20 2e 0a 0a 66 74 73 35 2e 6c 6f 3a  sm.h ...fts5.lo:
f0b0: 09 66 74 73 35 2e 63 20 24 28 48 44 52 29 20 24  .fts5.c $(HDR)$
f0c0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO f0d0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
f0e0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO f0f0: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ f100: 43 4f 52 45 20 2d 63 20 66 74 73 35 2e 63 0a 0a CORE -c fts5.c.. f110: 66 74 73 35 5f 65 78 74 2e 6c 6f 3a 09 66 74 73 fts5_ext.lo:.fts f120: 35 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 5.c$(HDR) $(EXT f130: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
f140: 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63  E) $(NO_WARN) -c f150: 20 66 74 73 35 2e 63 0a 0a 66 74 73 35 2e 64 6c fts5.c..fts5.dl f160: 6c 3a 09 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 09 l:.fts5_ext.lo.. f170: 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53 29$(LD) $(LDFLAGS) f180: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24$(LTLINKOPTS) $f190: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44 4c (LTLIBPATHS) /DL f1a0: 4c 20 2f 4f 55 54 3a 24 40 20 66 74 73 35 5f 65 L /OUT:$@ fts5_e
f1b0: 78 74 2e 6c 6f 0a 0a 73 71 6c 69 74 65 33 72 62  xt.lo..sqlite3rb
f1c0: 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  u.lo:.$(TOP)\ext f1d0: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e \rbu\sqlite3rbu. f1e0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD f1f0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
f200: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
f210: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75  c $(TOP)\ext\rbu f220: 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 0a 0a 23 \sqlite3rbu.c..# f230: 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 Rules to build f240: 74 68 65 20 27 74 65 73 74 66 69 78 74 75 72 65 the 'testfixture f250: 27 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 23 ' application..# f260: 0a 23 20 49 66 20 75 73 69 6e 67 20 74 68 65 20 .# If using the f270: 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c 20 75 73 amalgamation, us f280: 65 20 73 71 6c 69 74 65 33 2e 63 20 64 69 72 65 e sqlite3.c dire f290: 63 74 6c 79 20 74 6f 20 62 75 69 6c 64 20 74 68 ctly to build th f2a0: 65 20 74 65 73 74 0a 23 20 66 69 78 74 75 72 65 e test.# fixture f2b0: 2e 20 20 4f 74 68 65 72 77 69 73 65 20 6c 69 6e . Otherwise lin f2c0: 6b 20 61 67 61 69 6e 73 74 20 6c 69 62 73 71 6c k against libsql f2d0: 69 74 65 33 2e 6c 69 62 2e 20 20 28 54 68 69 73 ite3.lib. (This f2e0: 20 64 69 73 74 69 6e 63 74 69 6f 6e 20 69 73 0a distinction is. f2f0: 23 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 # necessary beca f300: 75 73 65 20 74 68 65 20 74 65 73 74 20 66 69 78 use the test fix f310: 74 75 72 65 20 72 65 71 75 69 72 65 73 20 6e 6f ture requires no f320: 6e 2d 41 50 49 20 73 79 6d 62 6f 6c 73 20 77 68 n-API symbols wh f330: 69 63 68 20 61 72 65 0a 23 20 68 69 64 64 65 6e ich are.# hidden f340: 20 77 68 65 6e 20 74 68 65 20 6c 69 62 72 61 72 when the librar f350: 79 20 69 73 20 62 75 69 6c 74 20 76 69 61 20 74 y is built via t f360: 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 he amalgamation) f370: 2e 0a 23 0a 54 45 53 54 46 49 58 54 55 52 45 5f ..#.TESTFIXTURE_ f380: 46 4c 41 47 53 20 3d 20 2d 44 54 43 4c 53 48 5f FLAGS = -DTCLSH_ f390: 49 4e 49 54 5f 50 52 4f 43 3d 73 71 6c 69 74 65 INIT_PROC=sqlite f3a0: 33 54 65 73 74 49 6e 69 74 20 2d 44 53 51 4c 49 3TestInit -DSQLI f3b0: 54 45 5f 54 45 53 54 3d 31 20 2d 44 53 51 4c 49 TE_TEST=1 -DSQLI f3c0: 54 45 5f 43 52 41 53 48 5f 54 45 53 54 3d 31 0a TE_CRASH_TEST=1. f3d0: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 TESTFIXTURE_FLAG f3e0: 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 S =$(TESTFIXTUR
f3f0: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
f400: 45 5f 53 45 52 56 45 52 3d 31 20 2d 44 53 51 4c  E_SERVER=1 -DSQL
f410: 49 54 45 5f 50 52 49 56 41 54 45 3d 22 22 0a 54  ITE_PRIVATE="".T
f420: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
f430: 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45   = $(TESTFIXTURE f440: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 _FLAGS) -DSQLITE f450: 5f 43 4f 52 45 20 24 28 4e 4f 5f 57 41 52 4e 29 _CORE$(NO_WARN)
f460: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  .TESTFIXTURE_FLA
f470: 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55  GS = $(TESTFIXTU f480: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI f490: 54 45 5f 53 45 52 49 45 53 5f 43 4f 4e 53 54 52 TE_SERIES_CONSTR f4a0: 41 49 4e 54 5f 56 45 52 49 46 59 3d 31 0a 54 45 AINT_VERIFY=1.TE f4b0: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 STFIXTURE_FLAGS f4c0: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f =$(TESTFIXTURE_
f4d0: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
f4e0: 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a  DEFAULT_PAGE_SIZ
f4f0: 45 3d 31 30 32 34 0a 54 45 53 54 46 49 58 54 55  E=1024.TESTFIXTU
f500: 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53  RE_FLAGS = $(TES f510: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) f520: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ f530: 53 54 4d 54 56 54 41 42 0a 54 45 53 54 46 49 58 STMTVTAB.TESTFIX f540: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 TURE_FLAGS =$(T
f550: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
f560: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
f570: 45 5f 44 42 50 41 47 45 5f 56 54 41 42 0a 54 45  E_DBPAGE_VTAB.TE
f580: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20  STFIXTURE_FLAGS
f590: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f  = $(TESTFIXTURE_ f5a0: 46 4c 41 47 53 29 20 24 28 54 45 53 54 5f 43 43 FLAGS)$(TEST_CC
f5b0: 4f 4e 56 5f 4f 50 54 53 29 0a 0a 54 45 53 54 46  ONV_OPTS)..TESTF
f5c0: 49 58 54 55 52 45 5f 53 52 43 30 20 3d 20 24 28  IXTURE_SRC0 = $( f5d0: 54 45 53 54 45 58 54 29 20 24 28 54 45 53 54 53 TESTEXT)$(TESTS
f5e0: 52 43 32 29 0a 54 45 53 54 46 49 58 54 55 52 45  RC2).TESTFIXTURE
f5f0: 5f 53 52 43 31 20 3d 20 24 28 54 45 53 54 45 58  _SRC1 = $(TESTEX f600: 54 29 20 24 28 53 51 4c 49 54 45 33 43 29 0a 21 T)$(SQLITE3C).!
f610: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM f620: 41 54 49 4f 4e 29 3d 3d 30 0a 54 45 53 54 46 49 ATION)==0.TESTFI f630: 58 54 55 52 45 5f 53 52 43 20 3d 20 24 28 54 45 XTURE_SRC =$(TE
f640: 53 54 53 52 43 29 20 24 28 54 4f 50 29 5c 73 72  STSRC) $(TOP)\sr f650: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 c\tclsqlite.c$(
f660: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 30  TESTFIXTURE_SRC0
f670: 29 0a 21 45 4c 53 45 0a 54 45 53 54 46 49 58 54  ).!ELSE.TESTFIXT
f680: 55 52 45 5f 53 52 43 20 3d 20 24 28 54 45 53 54  URE_SRC = $(TEST f690: 53 52 43 29 20 24 28 54 4f 50 29 5c 73 72 63 5c SRC)$(TOP)\src\
f6a0: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 45  tclsqlite.c $(TE f6b0: 53 54 46 49 58 54 55 52 45 5f 53 52 43 31 29 0a STFIXTURE_SRC1). f6c0: 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 55 53 !ENDIF..!IF$(US
f6d0: 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c  E_STDCALL)!=0 ||
f6e0: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0 f6f0: 0a 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 .sqlite_tclDecls f700: 2e 68 3a 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 .h:..echo #ifnde f710: 66 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 f SQLITE_TCLAPI f720: 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 >$(SQLITETCLDEC
f730: 4c 53 48 29 0a 09 65 63 68 6f 20 23 20 20 64 65  LSH)..echo #  de
f740: 66 69 6e 65 20 53 51 4c 49 54 45 5f 54 43 4c 41  fine SQLITE_TCLA
f750: 50 49 20 3e 3e 20 24 28 53 51 4c 49 54 45 54 43  PI >> $(SQLITETC f760: 4c 44 45 43 4c 53 48 29 0a 09 65 63 68 6f 20 23 LDECLSH)..echo # f770: 65 6e 64 69 66 20 3e 3e 20 24 28 53 51 4c 49 54 endif >>$(SQLIT
f780: 45 54 43 4c 44 45 43 4c 53 48 29 0a 09 74 79 70  ETCLDECLSH)..typ
f790: 65 20 22 24 28 54 43 4c 49 4e 43 44 49 52 29 5c  e "$(TCLINCDIR)\ f7a0: 74 63 6c 44 65 63 6c 73 2e 68 22 20 5c 0a 09 09 tclDecls.h" \... f7b0: 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 |$(TCLSH_CMD) $f7c0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 (TOP)\tool\repla f7d0: 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5e ce.tcl regsub "^ f7e0: 28 45 58 54 45 52 4e 28 3f 3a 20 43 4f 4e 53 54 (EXTERN(?: CONST f7f0: 5c 64 2b 3f 29 3f 5c 73 2b 3f 5b 5e 5c 28 5d 2a \d+?)?\s+?[^\(]* f800: 3f 5c 73 2b 3f 29 54 63 6c 5f 22 20 22 5c 31 20 ?\s+?)Tcl_" "\1 f810: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 SQLITE_TCLAPI Tc f820: 6c 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 l_" \...|$(TCLS
f830: 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f  H_CMD) $(TOP)\to f840: 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 ol\replace.tcl r f850: 65 67 73 75 62 20 22 5e 28 45 58 54 45 52 4e 5c egsub "^(EXTERN\ f860: 73 2b 3f 28 3f 3a 76 6f 69 64 7c 56 4f 49 44 29 s+?(?:void|VOID) f870: 5c 73 2b 3f 29 54 63 6c 46 72 65 65 4f 62 6a 22 \s+?)TclFreeObj" f880: 20 22 5c 31 20 53 51 4c 49 54 45 5f 54 43 4c 41 "\1 SQLITE_TCLA f890: 50 49 20 54 63 6c 46 72 65 65 4f 62 6a 22 20 5c PI TclFreeObj" \ f8a0: 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
f8b0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re f8c0: 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 place.tcl regsub f8d0: 20 22 5c 28 5c 2a 74 63 6c 5f 22 20 22 28 53 51 "\(\*tcl_" "(SQ f8e0: 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 74 63 6c LITE_TCLAPI *tcl f8f0: 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 _" \...|$(TCLSH
f900: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too f910: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re f920: 67 73 75 62 20 22 5c 28 5c 2a 74 63 6c 46 72 65 gsub "\(\*tclFre f930: 65 4f 62 6a 22 20 22 28 53 51 4c 49 54 45 5f 54 eObj" "(SQLITE_T f940: 43 4c 41 50 49 20 2a 74 63 6c 46 72 65 65 4f 62 CLAPI *tclFreeOb f950: 6a 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 j" \...|$(TCLSH
f960: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too f970: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 l\replace.tcl re f980: 67 73 75 62 20 22 5c 28 5c 2a 22 20 22 28 53 51 gsub "\(\*" "(SQ f990: 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 22 20 3e LITE_TCLAPI *" > f9a0: 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 >$(SQLITETCLDEC
f9b0: 4c 53 48 29 0a 0a 73 71 6c 69 74 65 5f 74 63 6c  LSH)..sqlite_tcl
f9c0: 2e 68 3a 0a 09 74 79 70 65 20 22 24 28 54 43 4c  .h:..type "$(TCL f9d0: 49 4e 43 44 49 52 29 5c 74 63 6c 2e 68 22 20 7c INCDIR)\tcl.h" | f9e0: 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28$(TCLSH_CMD) $( f9f0: 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 TOP)\tool\replac fa00: 65 2e 74 63 6c 20 65 78 61 63 74 20 74 63 6c 44 e.tcl exact tclD fa10: 65 63 6c 73 2e 68 20 73 71 6c 69 74 65 5f 74 63 ecls.h sqlite_tc fa20: 6c 44 65 63 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 lDecls.h \...|$
fa30: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO fa40: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. fa50: 74 63 6c 20 72 65 67 73 75 62 20 22 74 79 70 65 tcl regsub "type fa60: 64 65 66 20 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 def (.*?)\(Tcl_" fa70: 20 22 74 79 70 65 64 65 66 20 5c 31 20 28 53 51 "typedef \1 (SQ fa80: 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f LITE_TCLAPI Tcl_ fa90: 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f " \...|$(TCLSH_
faa0: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool fab0: 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 \replace.tcl exa fac0: 63 74 20 22 76 6f 69 64 20 28 2a 66 72 65 65 50 ct "void (*freeP fad0: 72 6f 63 29 22 20 22 76 6f 69 64 20 28 53 51 4c roc)" "void (SQL fae0: 49 54 45 5f 54 43 4c 41 50 49 20 2a 66 72 65 65 ITE_TCLAPI *free faf0: 50 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54 Proc)" \...|$(T
fb00: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) fb10: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 \tool\replace.tc fb20: 6c 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73 l exact "Tcl_Has fb30: 68 45 6e 74 72 79 20 2a 28 2a 66 69 6e 64 50 72 hEntry *(*findPr fb40: 6f 63 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e oc)" "Tcl_HashEn fb50: 74 72 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c try *(SQLITE_TCL fb60: 41 50 49 20 2a 66 69 6e 64 50 72 6f 63 29 22 20 API *findProc)" fb70: 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d \...|$(TCLSH_CM
fb80: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72  D) $(TOP)\tool\r fb90: 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 eplace.tcl exact fba0: 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 "Tcl_HashEntry fbb0: 2a 28 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20 *(*createProc)" fbc0: 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a "Tcl_HashEntry * fbd0: 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a (SQLITE_TCLAPI * fbe0: 63 72 65 61 74 65 50 72 6f 63 29 22 20 3e 3e 20 createProc)" >> fbf0: 24 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45$(SQLITETCLH).!E
fc00: 4e 44 49 46 0a 0a 74 65 73 74 66 69 78 74 75 72  NDIF..testfixtur
fc10: 65 2e 65 78 65 3a 09 24 28 54 45 53 54 46 49 58  e.exe:.$(TESTFIX fc20: 54 55 52 45 5f 53 52 43 29 20 24 28 53 51 4c 49 TURE_SRC)$(SQLI
fc30: 54 45 33 48 29 20 24 28 4c 49 42 52 45 53 4f 42  TE3H) $(LIBRESOB fc40: 4a 53 29 20 24 28 48 44 52 29 20 24 28 53 51 4c JS)$(HDR) $(SQL fc50: 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 ITE_TCL_DEP)..$(
fc60: 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45  LTLINK) -DSQLITE
fc70: 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53  _NO_SYNC=1 $(TES fc80: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) fc90: 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69 \...-DBUILD_sqli fca0: 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 te -I$(TCLINCDIR
fcb0: 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54  ) \...$(TESTFIXT fcc0: 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 URE_SRC) \.../li fcd0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 nk$(LDFLAGS) $( fce0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 LTLINKOPTS)$(LT
fcf0: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52  LIBPATHS) $(LIBR fd00: 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 ESOBJS)$(LTLIBS
fd10: 29 20 24 28 54 4c 49 42 53 29 0a 0a 65 78 74 65  ) $(TLIBS)..exte fd20: 6e 73 69 6f 6e 74 65 73 74 3a 09 74 65 73 74 66 nsiontest:.testf fd30: 69 78 74 75 72 65 2e 65 78 65 20 74 65 73 74 6c ixture.exe testl fd40: 6f 61 64 65 78 74 2e 64 6c 6c 0a 09 40 73 65 74 oadext.dll..@set fd50: 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 PATH=$(LIBTCLPA
fd60: 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74  TH);$(PATH)...\t fd70: 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 estfixture.exe$
fd80: 28 54 4f 50 29 5c 74 65 73 74 5c 6c 6f 61 64 65  (TOP)\test\loade
fd90: 78 74 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50  xt.test $(TESTOP fda0: 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74 3a 09 24 TS)..fulltest:.$
fdb0: 28 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a 7a  (TESTPROGS) fuzz
fdc0: 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d  test..@set PATH=
fdd0: 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28  $(LIBTCLPATH);$(
fde0: 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78  PATH)...\testfix
fdf0: 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\ fe00: 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 24 28 test\all.test$(
fe10: 54 45 53 54 4f 50 54 53 29 0a 0a 73 6f 61 6b 74  TESTOPTS)..soakt
fe20: 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53  est:.$(TESTPROGS fe30: 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c )..@set PATH=$(L
fe40: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54  IBTCLPATH);$(PAT fe50: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 H)...\testfixtur fe60: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 e.exe$(TOP)\tes
fe70: 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f 61 6b  t\all.test -soak
fe80: 3d 31 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  =1 $(TESTOPTS).. fe90: 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a 09 24 28 fulltestonly:.$(
fea0: 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a 7a 74  TESTPROGS) fuzzt
feb0: 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24  est..@set PATH=$fec0: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 (LIBTCLPATH);$(P
fed0: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74  ATH)...\testfixt
fee0: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  ure.exe $(TOP)\t fef0: 65 73 74 5c 66 75 6c 6c 2e 74 65 73 74 0a 0a 71 est\full.test..q ff00: 75 65 72 79 70 6c 61 6e 74 65 73 74 3a 09 74 65 ueryplantest:.te ff10: 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 73 68 stfixture.exe sh ff20: 65 6c 6c 0a 09 40 73 65 74 20 50 41 54 48 3d 24 ell..@set PATH=$
ff30: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50  (LIBTCLPATH);$(P ff40: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 ATH)...\testfixt ff50: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 ure.exe$(TOP)\t
ff60: 65 73 74 5c 70 65 72 6d 75 74 61 74 69 6f 6e 73  est\permutations
ff70: 2e 74 65 73 74 20 71 75 65 72 79 70 6c 61 6e 6e  .test queryplann
ff80: 65 72 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  er $(TESTOPTS).. ff90: 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a 7a 63 68 fuzztest:.fuzzch ffa0: 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 eck.exe...\fuzzc ffb0: 68 65 63 6b 2e 65 78 65 20 24 28 46 55 5a 5a 44 heck.exe$(FUZZD
ffc0: 41 54 41 29 0a 0a 66 61 73 74 66 75 7a 7a 74 65  ATA)..fastfuzzte
ffd0: 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e 65 78  st:.fuzzcheck.ex
ffe0: 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b 2e 65  e...\fuzzcheck.e
fff0: 78 65 20 2d 2d 6c 69 6d 69 74 2d 6d 65 6d 20 31  xe --limit-mem 1
10000 30 30 4d 20 24 28 46 55 5a 5a 44 41 54 41 29 0a  00M $(FUZZDATA). 10010 0a 23 20 4d 69 6e 69 6d 61 6c 20 74 65 73 74 69 .# Minimal testi 10020 6e 67 20 74 68 61 74 20 72 75 6e 73 20 69 6e 20 ng that runs in 10030 6c 65 73 73 20 74 68 61 6e 20 33 20 6d 69 6e 75 less than 3 minu 10040 74 65 73 20 28 6f 6e 20 61 20 66 61 73 74 20 6d tes (on a fast m 10050 61 63 68 69 6e 65 29 0a 23 0a 71 75 69 63 6b 74 achine).#.quickt 10060 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 72 65 est:.testfixture 10070 2e 65 78 65 20 73 6f 75 72 63 65 74 65 73 74 0a .exe sourcetest. 10080 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 .@set PATH=$(LIB
10090 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29  TCLPATH);$(PATH) 100a0 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e ...\testfixture. 100b0 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c exe$(TOP)\test\
100c0 65 78 74 72 61 71 75 69 63 6b 2e 74 65 73 74 20  extraquick.test
100d0 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 23 20 54  $(TESTOPTS)..# T 100e0 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d 6d 6f his is the commo 100f0 6e 20 63 61 73 65 2e 20 20 52 75 6e 20 6d 61 6e n case. Run man 10100 79 20 74 65 73 74 73 20 74 68 61 74 20 64 6f 20 y tests that do 10110 6e 6f 74 20 74 61 6b 65 20 74 6f 6f 20 6c 6f 6e not take too lon 10120 67 2c 0a 23 20 69 6e 63 6c 75 64 69 6e 67 20 66 g,.# including f 10130 75 7a 7a 63 68 65 63 6b 2c 20 73 71 6c 69 74 65 uzzcheck, sqlite 10140 33 5f 61 6e 61 6c 79 7a 65 72 2c 20 61 6e 64 20 3_analyzer, and 10150 73 71 6c 64 69 66 66 20 74 65 73 74 73 2e 0a 23 sqldiff tests..# 10160 0a 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f .test:.$(TESTPRO
10170 47 53 29 20 73 6f 75 72 63 65 74 65 73 74 20 66  GS) sourcetest f
10180 61 73 74 66 75 7a 7a 74 65 73 74 0a 09 40 73 65  astfuzztest..@se
10190 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50  t PATH=$(LIBTCLP 101a0 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c ATH);$(PATH)...\
101b0 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
101c0 24 28 54 4f 50 29 5c 74 65 73 74 5c 76 65 72 79  $(TOP)\test\very 101d0 71 75 69 63 6b 2e 74 65 73 74 20 24 28 54 45 53 quick.test$(TES
101e0 54 4f 50 54 53 29 0a 0a 73 6d 6f 6b 65 74 65 73  TOPTS)..smoketes
101f0 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53 29 0a  t:.$(TESTPROGS). 10200 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 .@set PATH=$(LIB
10210 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29  TCLPATH);$(PATH) 10220 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e ...\testfixture. 10230 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c exe$(TOP)\test\
10240 6d 61 69 6e 2e 74 65 73 74 20 24 28 54 45 53 54  main.test $(TEST 10250 4f 50 54 53 29 0a 0a 73 71 6c 69 74 65 33 5f 61 OPTS)..sqlite3_a 10260 6e 61 6c 79 7a 65 72 2e 63 3a 09 24 28 53 51 4c nalyzer.c:.$(SQL
10270 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 10280 48 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 H)$(TOP)\src\tc
10290 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 4f 50 29  lsqlite.c $(TOP) 102a0 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61 6c 2e \tool\spaceanal. 102b0 74 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c tcl$(TOP)\tool\
102c0 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f  mkccode.tcl $(TO 102d0 50 29 5c 74 6f 6f 6c 5c 73 71 6c 69 74 65 33 5f P)\tool\sqlite3_ 102e0 61 6e 61 6c 79 7a 65 72 2e 63 2e 69 6e 20 24 28 analyzer.c.in$(
102f0 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a  SQLITE_TCL_DEP).
10300 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
10310 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 63 63 6f 64  TOP)\tool\mkccod
10320 65 2e 74 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f  e.tcl $(TOP)\too 10330 6c 5c 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a l\sqlite3_analyz 10340 65 72 2e 63 2e 69 6e 20 3e 20 24 40 0a 0a 73 71 er.c.in >$@..sq
10350 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65  lite3_analyzer.e
10360 78 65 3a 09 73 71 6c 69 74 65 33 5f 61 6e 61 6c  xe:.sqlite3_anal
10370 79 7a 65 72 2e 63 20 24 28 4c 49 42 52 45 53 4f  yzer.c $(LIBRESO 10380 42 4a 53 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 BJS)..$(LTLINK)
10390 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 42 55 49  $(NO_WARN) -DBUI 103a0 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 LD_sqlite -I$(TC
103b0 4c 49 4e 43 44 49 52 29 20 73 71 6c 69 74 65 33  LINCDIR) sqlite3
103c0 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 5c 0a 09 09  _analyzer.c \...
103d0 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS) 103e0 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24$(LTLINKOPTS) $103f0 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c (LTLIBPATHS)$(L
10400 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c  IBRESOBJS) $(LTL 10410 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 73 IBS)$(TLIBS)..s
10420 71 6c 74 63 6c 73 68 2e 63 3a 20 73 71 6c 69 74  qltclsh.c: sqlit
10430 65 33 2e 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  e3.c $(TOP)\src\ 10440 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 4f tclsqlite.c$(TO
10450 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63 6c 73 68  P)\tool\sqltclsh
10460 2e 74 63 6c 20 24 28 54 4f 50 29 5c 65 78 74 5c  .tcl $(TOP)\ext\ 10470 6d 69 73 63 5c 61 70 70 65 6e 64 76 66 73 2e 63 misc\appendvfs.c 10480 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 63$(TOP)\tool\mkc
10490 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 5c  code.tcl $(TOP)\ 104a0 74 6f 6f 6c 5c 73 71 6c 74 63 6c 73 68 2e 63 2e tool\sqltclsh.c. 104b0 69 6e 09 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 in...$(TCLSH_CMD
104c0 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b  ) $(TOP)\tool\mk 104d0 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f 50 29 ccode.tcl$(TOP)
104e0 5c 74 6f 6f 6c 5c 73 71 6c 74 63 6c 73 68 2e 63  \tool\sqltclsh.c
104f0 2e 69 6e 20 3e 73 71 6c 74 63 6c 73 68 2e 63 0a  .in >sqltclsh.c.
10500 0a 73 71 6c 74 63 6c 73 68 2e 65 78 65 3a 20 73  .sqltclsh.exe: s
10510 71 6c 74 63 6c 73 68 2e 63 0a 09 24 28 4c 54 4c  qltclsh.c..$(LTL 10520 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 INK)$(NO_WARN)
10530 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74 65 20 2d  -DBUILD_sqlite -
10540 49 24 28 54 43 4c 49 4e 43 44 49 52 29 20 73 71  I$(TCLINCDIR) sq 10550 6c 74 63 6c 73 68 2e 63 20 5c 0a 20 20 20 20 20 ltclsh.c \. 10560 20 20 20 20 20 20 20 20 20 20 2f 6c 69 6e 6b 20 /link 10570 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c$(LDFLAGS) $(LTL 10580 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 INKOPTS)$(LTLIB
10590 50 41 54 48 53 29 20 24 28 4c 54 4c 49 42 53 29  PATHS) $(LTLIBS) 105a0 20 24 28 54 4c 49 42 53 29 0a 0a 0a 73 71 6c 69$(TLIBS)...sqli
105b0 74 65 33 5f 65 78 70 65 72 74 2e 65 78 65 3a 20  te3_expert.exe:
105c0 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 54 4f  $(SQLITE3C)$(TO
105d0 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71  P)\ext\expert\sq
105e0 6c 69 74 65 33 65 78 70 65 72 74 2e 68 20 24 28  lite3expert.h $( 105f0 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c TOP)\ext\expert\ 10600 73 71 6c 69 74 65 33 65 78 70 65 72 74 2e 63 20 sqlite3expert.c 10610 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72$(TOP)\ext\exper
10620 74 5c 65 78 70 65 72 74 2e 63 0a 09 24 28 4c 54  t\expert.c..$(LT 10630 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 LINK)$(NO_WARN)
10640 09 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65  .$(TOP)\ext\expe 10650 72 74 5c 73 71 6c 69 74 65 33 65 78 70 65 72 74 rt\sqlite3expert 10660 2e 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 .c$(TOP)\ext\ex
10670 70 65 72 74 5c 65 78 70 65 72 74 2e 63 20 24 28  pert\expert.c $( 10680 53 51 4c 49 54 45 33 43 29 20 24 28 54 4c 49 42 SQLITE3C)$(TLIB
10690 53 29 0a 0a 43 48 45 43 4b 45 52 5f 44 45 50 53  S)..CHECKER_DEPS
106a0 20 3d 5c 0a 20 20 24 28 54 4f 50 29 2f 74 6f 6f   =\.  $(TOP)/too 106b0 6c 2f 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 5c 0a l/mkccode.tcl \. 106c0 20 20 73 71 6c 69 74 65 33 2e 63 20 5c 0a 20 20 sqlite3.c \. 106d0 24 28 54 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71$(TOP)/src/tclsq
106e0 6c 69 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  lite.c \.  $(TOP 106f0 29 2f 65 78 74 2f 72 65 70 61 69 72 2f 73 71 6c )/ext/repair/sql 10700 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 74 63 6c ite3_checker.tcl 10710 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f \.$(TOP)/ext/
10720 72 65 70 61 69 72 2f 63 68 65 63 6b 69 6e 64 65  repair/checkinde
10730 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65  x.c \.  $(TOP)/e 10740 78 74 2f 72 65 70 61 69 72 2f 63 68 65 63 6b 66 xt/repair/checkf 10750 72 65 65 6c 69 73 74 2e 63 20 5c 0a 20 20 24 28 reelist.c \.$(
10760 54 4f 50 29 2f 65 78 74 2f 6d 69 73 63 2f 62 74  TOP)/ext/misc/bt
10770 72 65 65 69 6e 66 6f 2e 63 20 5c 0a 20 20 24 28  reeinfo.c \.  $( 10780 54 4f 50 29 2f 65 78 74 2f 72 65 70 61 69 72 2f TOP)/ext/repair/ 10790 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e sqlite3_checker. 107a0 63 2e 69 6e 0a 0a 73 71 6c 69 74 65 33 5f 63 68 c.in..sqlite3_ch 107b0 65 63 6b 65 72 2e 63 3a 09 24 28 43 48 45 43 4b ecker.c:.$(CHECK
107c0 45 52 5f 44 45 50 53 29 0a 09 24 28 54 43 4c 53  ER_DEPS)..$(TCLS 107d0 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
107e0 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24  ol\mkccode.tcl $107f0 28 54 4f 50 29 5c 65 78 74 5c 72 65 70 61 69 72 (TOP)\ext\repair 10800 5c 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 \sqlite3_checker 10810 2e 63 2e 69 6e 20 3e 20 24 40 0a 0a 73 71 6c 69 .c.in >$@..sqli
10820 74 65 33 5f 63 68 65 63 6b 65 72 2e 65 78 65 3a  te3_checker.exe:
10830 09 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72  .sqlite3_checker
10840 2e 63 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29  .c $(LIBRESOBJS) 10850 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO 10860 5f 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 _WARN) -DBUILD_s 10870 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 qlite -I$(TCLINC
10880 44 49 52 29 20 73 71 6c 69 74 65 33 5f 63 68 65  DIR) sqlite3_che
10890 63 6b 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b  cker.c \.../link
108a0 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS)$(LT
108b0 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49  LINKOPTS) $(LTLI 108c0 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53 BPATHS)$(LIBRES
108d0 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20  OBJS) $(LTLIBS) 108e0 24 28 54 4c 49 42 53 29 0a 0a 64 62 64 75 6d 70$(TLIBS)..dbdump
108f0 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74  .exe:.$(TOP)\ext 10900 5c 6d 69 73 63 5c 64 62 64 75 6d 70 2e 63 20 24 \misc\dbdump.c$
10910 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL 10920 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
10930 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 44  ) $(NO_WARN) -DD 10940 42 44 55 4d 50 5f 53 54 41 4e 44 41 4c 4f 4e 45 BDUMP_STANDALONE 10950 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63$(TOP)\ext\misc
10960 5c 64 62 64 75 6d 70 2e 63 20 24 28 53 51 4c 49  \dbdump.c $(SQLI 10970 54 45 33 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 TE3C) \.../link 10980 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c$(LDFLAGS) $(LTL 10990 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 INKOPTS)$(LTLIB
109a0 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53 4f  PATHS) $(LIBRESO 109b0 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 0a 0a BJS)$(LTLIBS)..
109c0 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09  testloadext.lo:.
109d0 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 109e0 6c 6f 61 64 65 78 74 2e 63 0a 09 24 28 4c 54 43 loadext.c..$(LTC
109f0 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52  OMPILE) $(NO_WAR 10a00 4e 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 N) -c$(TOP)\src
10a10 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63 0a  \test_loadext.c.
10a20 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c  .testloadext.dll
10a30 3a 09 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f  :.testloadext.lo
10a40 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47  ..$(LD)$(LDFLAG
10a50 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) 10a60 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f$(LTLIBPATHS) /
10a70 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 74 65 73 74  DLL /OUT:$@ test 10a80 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a 73 68 6f 77 loadext.lo..show 10a90 64 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 db.exe:.$(TOP)\t
10aa0 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63 20 24 28 53  ool\showdb.c $(S 10ab0 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
10ac0 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 10ad0 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
10ae0 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
10af0 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
10b00 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a  OAD_EXTENSION \.
10b10 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  ..$(TOP)\tool\sh 10b20 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33 owdb.c$(SQLITE3
10b30 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA 10b40 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
10b50 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 65  )..showstat4.exe
10b60 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh 10b70 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49 owstat4.c$(SQLI
10b80 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H 10b90 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N 10ba0 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE 10bb0 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 _THREADSAFE=0 -D 10bc0 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 SQLITE_OMIT_LOAD 10bd0 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 _EXTENSION \...$
10be0 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73  (TOP)\tool\shows
10bf0 74 61 74 34 2e 63 20 24 28 53 51 4c 49 54 45 33  tat4.c $(SQLITE3 10c00 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
10c10 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 10c20 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 )..showjournal.e 10c30 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c xe:.$(TOP)\tool\
10c40 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28  showjournal.c $( 10c50 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 SQLITE3C)$(SQLI
10c60 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  TE3H)..$(LTLINK) 10c70 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51$(NO_WARN) -DSQ
10c80 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
10c90 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
10ca0 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c  LOAD_EXTENSION \
10cb0 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  ...$(TOP)\tool\s 10cc0 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 53 howjournal.c$(S
10cd0 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $10ce0 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
10cf0 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 77 61 6c  NKOPTS)..showwal
10d00 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too 10d10 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 24 28 53 51 l\showwal.c$(SQ
10d20 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE 10d30 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 3H)..$(LTLINK) $10d40 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI 10d50 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 TE_THREADSAFE=0 10d60 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f -DSQLITE_OMIT_LO 10d70 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 AD_EXTENSION \.. 10d80 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f .$(TOP)\tool\sho
10d90 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33  wwal.c $(SQLITE3 10da0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
10db0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 10dc0 29 0a 0a 73 68 6f 77 73 68 6d 2e 65 78 65 3a 09 )..showshm.exe:. 10dd0 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77$(TOP)\tool\show
10de0 73 68 6d 2e 63 0a 09 24 28 4c 54 4c 49 4e 4b 29  shm.c..$(LTLINK) 10df0 20 24 28 4e 4f 5f 57 41 52 4e 29 09 24 28 54 4f$(NO_WARN).$(TO 10e00 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73 68 6d 2e P)\tool\showshm. 10e10 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 c /link$(LDFLAG
10e20 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) 10e30 0a 0a 63 68 61 6e 67 65 73 65 74 2e 65 78 65 3a ..changeset.exe: 10e40 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 .$(TOP)\ext\sess
10e50 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 2e 63 20  ion\changeset.c
10e60 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51  $(SQLITE3C)$(SQ
10e70 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e  LITE3H)..$(LTLIN 10e80 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 K)$(NO_WARN) -D
10e90 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46  SQLITE_THREADSAF
10ea0 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49  E=0 -DSQLITE_OMI
10eb0 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e  T_LOAD_EXTENSION
10ec0 20 5c 0a 09 09 2d 44 53 51 4c 49 54 45 5f 45 4e   \...-DSQLITE_EN
10ed0 41 42 4c 45 5f 53 45 53 53 49 4f 4e 3d 31 20 2d  ABLE_SESSION=1 -
10ee0 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 50  DSQLITE_ENABLE_P
10ef0 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31 20  REUPDATE_HOOK=1
10f00 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 73  \...$(TOP)\ext\s 10f10 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 ession\changeset 10f20 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f .c$(SQLITE3C) /
10f30 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) 10f40 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66$(LTLINKOPTS)..f
10f50 74 73 33 76 69 65 77 2e 65 78 65 3a 09 24 28 54  ts3view.exe:.$(T 10f60 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f 6f OP)\ext\fts3\too 10f70 6c 5c 66 74 73 33 76 69 65 77 2e 63 20 24 28 53 l\fts3view.c$(S
10f80 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 10f90 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
10fa0 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL 10fb0 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 ITE_THREADSAFE=0 10fc0 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c -DSQLITE_OMIT_L 10fd0 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a OAD_EXTENSION \. 10fe0 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 ..$(TOP)\ext\fts
10ff0 33 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77 2e  3\tool\fts3view.
11000 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c  c $(SQLITE3C) /l 11010 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $11020 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72 6f (LTLINKOPTS)..ro 11030 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65 3a llback-test.exe: 11040 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 6f 6c .$(TOP)\tool\rol
11050 6c 62 61 63 6b 2d 74 65 73 74 2e 63 20 24 28 53  lback-test.c $(S 11060 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
11070 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 11080 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
11090 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
110a0 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
110b0 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a  OAD_EXTENSION \.
110c0 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 6f  ..$(TOP)\tool\ro 110d0 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63 20 24 28 llback-test.c$(
110e0 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20  SQLITE3C) /link
110f0 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS)$(LTL
11100 49 4e 4b 4f 50 54 53 29 0a 0a 4c 6f 67 45 73 74  INKOPTS)..LogEst
11110 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too 11120 6c 5c 6c 6f 67 65 73 74 2e 63 20 24 28 53 51 4c l\logest.c$(SQL
11130 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK 11140 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 )$(NO_WARN) $(T 11150 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74 2e OP)\tool\LogEst. 11160 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 c /link$(LDFLAG
11170 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) 11180 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 3a ..wordcount.exe: 11190 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 .$(TOP)\test\wor
111a0 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54  dcount.c $(SQLIT 111b0 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
111c0 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
111d0 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
111e0 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53  THREADSAFE=0 -DS
111f0 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f  QLITE_OMIT_LOAD_
11200 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28  EXTENSION \...$( 11210 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 64 63 6f TOP)\test\wordco 11220 75 6e 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 unt.c$(SQLITE3C
11230 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 11240 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
11250 0a 0a 73 70 65 65 64 74 65 73 74 31 2e 65 78 65  ..speedtest1.exe
11260 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 70  :.$(TOP)\test\sp 11270 65 65 64 74 65 73 74 31 2e 63 20 24 28 53 51 4c eedtest1.c$(SQL
11280 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 11290 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( 112a0 4e 4f 5f 57 41 52 4e 29 20 24 28 53 54 5f 43 4f NO_WARN)$(ST_CO
112b0 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53 51  MPILE_OPTS) -DSQ
112c0 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45  LITE_OMIT_LOAD_E
112d0 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54  XTENSION \...$(T 112e0 4f 50 29 5c 74 65 73 74 5c 73 70 65 65 64 74 65 OP)\test\speedte 112f0 73 74 31 2e 63 20 24 28 53 51 4c 49 54 45 33 43 st1.c$(SQLITE3C
11300 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 11310 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
11320 0a 0a 6b 76 74 65 73 74 2e 65 78 65 3a 09 24 28  ..kvtest.exe:.$( 11330 54 4f 50 29 5c 74 65 73 74 5c 6b 76 74 65 73 74 TOP)\test\kvtest 11340 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 .c$(SQLITE3C) $11350 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
11360 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) 11370 20 24 28 4b 56 5f 43 4f 4d 50 49 4c 45 5f 4f 50$(KV_COMPILE_OP
11380 54 53 29 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74  TS) \...$(TOP)\t 11390 65 73 74 5c 6b 76 74 65 73 74 2e 63 20 24 28 53 est\kvtest.c$(S
113a0 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $113b0 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
113c0 4e 4b 4f 50 54 53 29 0a 0a 64 62 73 65 6c 66 74  NKOPTS)..dbselft
113d0 65 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c  est.exe:.$(TOP)\ 113e0 74 65 73 74 5c 64 62 73 65 6c 66 74 65 73 74 2e test\dbselftest. 113f0 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 c$(SQLITE3C) $( 11400 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
11410 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) 11420 24 28 44 42 53 45 4c 46 54 45 53 54 5f 43 4f 4d$(DBSELFTEST_COM
11430 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f 50  PILE_OPTS) $(TOP 11440 29 5c 74 65 73 74 5c 64 62 73 65 6c 66 74 65 73 )\test\dbselftes 11450 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a t.c$(SQLITE3C).
11460 0a 72 62 75 2e 65 78 65 3a 09 24 28 54 4f 50 29  .rbu.exe:.$(TOP) 11470 5c 65 78 74 5c 72 62 75 5c 72 62 75 2e 63 20 24 \ext\rbu\rbu.c$
11480 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73 71  (TOP)\ext\rbu\sq
11490 6c 69 74 65 33 72 62 75 2e 63 20 24 28 53 51 4c  lite3rbu.c $(SQL 114a0 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 ITE3C)$(SQLITE3
114b0 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28  H)..$(LTLINK)$(
114c0 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
114d0 45 5f 45 4e 41 42 4c 45 5f 52 42 55 20 5c 0a 09  E_ENABLE_RBU \..
114e0 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c  .$(TOP)\ext\rbu\ 114f0 72 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43 rbu.c$(SQLITE3C
11500 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 11510 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
11520 0a 0a 4c 53 4d 44 49 52 3d 24 28 54 4f 50 29 5c  ..LSMDIR=$(TOP)\ 11530 65 78 74 5c 6c 73 6d 31 0a 21 49 4e 43 4c 55 44 ext\lsm1.!INCLUD 11540 45 20 24 28 4c 53 4d 44 49 52 29 5c 4d 61 6b 65 E$(LSMDIR)\Make
11550 66 69 6c 65 2e 6d 73 63 0a 0a 6d 6f 72 65 63 6c  file.msc..morecl
11560 65 61 6e 3a 09 63 6c 65 61 6e 0a 09 64 65 6c 20  ean:.clean..del
11570 2f 51 20 24 28 53 51 4c 49 54 45 33 43 29 20 24  /Q $(SQLITE3C)$
11580 28 53 51 4c 49 54 45 33 48 29 20 32 3e 4e 55 4c  (SQLITE3H) 2>NUL
11590 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 63 6c  .# <</mark>>..cl
115a0 65 61 6e 3a 0a 09 64 65 6c 20 2f 51 20 2a 2e 65  ean:..del /Q *.e
115b0 78 70 20 2a 2e 6c 6f 20 2a 2e 69 6c 6b 20 2a 2e  xp *.lo *.ilk *.
115c0 6c 69 62 20 2a 2e 6f 62 6a 20 2a 2e 6e 63 62 20  lib *.obj *.ncb
115d0 2a 2e 70 64 62 20 2a 2e 73 64 66 20 2a 2e 73 75  *.pdb *.sdf *.su
115e0 6f 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  o 2>NUL..del /Q
115f0 2a 2e 62 73 63 20 2a 2e 64 65 66 20 2a 2e 63 6f  *.bsc *.def *.co
11600 64 20 2a 2e 64 61 20 2a 2e 62 62 20 2a 2e 62 62  d *.da *.bb *.bb
11610 67 20 2a 2e 76 63 20 67 6d 6f 6e 2e 6f 75 74 20  g *.vc gmon.out
11620 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 24 28  2>NUL..del /Q $( 11630 53 51 4c 49 54 45 33 45 58 45 29 20 24 28 53 51 SQLITE3EXE)$(SQ
11640 4c 49 54 45 33 44 4c 4c 29 20 52 65 70 6c 61 63  LITE3DLL) Replac
11650 65 2e 65 78 65 20 32 3e 4e 55 4c 0a 23 20 3c 3c  e.exe 2>NUL.# <<
11660 6d 61 72 6b 3e 3e 0a 09 64 65 6c 20 2f 51 20 73  mark>>..del /Q s
11670 71 6c 69 74 65 33 2e 63 20 73 71 6c 69 74 65 33  qlite3.c sqlite3
11680 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  .h 2>NUL..del /Q
11690 20 6f 70 63 6f 64 65 73 2e 63 20 6f 70 63 6f 64   opcodes.c opcod
116a0 65 73 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  es.h 2>NUL..del
116b0 2f 51 20 6c 65 6d 6f 6e 2e 2a 20 6c 65 6d 70 61  /Q lemon.* lempa
116c0 72 2e 63 20 70 61 72 73 65 2e 2a 20 32 3e 4e 55  r.c parse.* 2>NU
116d0 4c 0a 09 64 65 6c 20 2f 51 20 6d 6b 73 6f 75 72  L..del /Q mksour
116e0 63 65 69 64 2e 2a 20 6d 6b 6b 65 79 77 6f 72 64  ceid.* mkkeyword
116f0 68 61 73 68 2e 2a 20 6b 65 79 77 6f 72 64 68 61  hash.* keywordha
11700 73 68 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  sh.h 2>NUL..del
11710 2f 51 20 6e 6f 74 61 73 68 61 72 65 64 6c 69 62  /Q notasharedlib
11720 2e 2a 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72  .* 2>NUL..-rmdir
11730 20 2f 51 2f 53 20 2e 64 65 70 73 20 32 3e 4e 55   /Q/S .deps 2>NU
11740 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 2e  L..-rmdir /Q/S .
11750 6c 69 62 73 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64  libs 2>NUL..-rmd
11760 69 72 20 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e  ir /Q/S tsrc 2>N
11770 55 4c 0a 09 64 65 6c 20 2f 51 20 2e 74 61 72 67  UL..del /Q .targ
11780 65 74 5f 73 6f 75 72 63 65 20 32 3e 4e 55 4c 0a  et_source 2>NUL.
11790 09 64 65 6c 20 2f 51 20 74 63 6c 73 71 6c 69 74  .del /Q tclsqlit
117a0 65 33 2e 65 78 65 20 24 28 53 51 4c 49 54 45 54  e3.exe $(SQLITET 117b0 43 4c 48 29 20 24 28 53 51 4c 49 54 45 54 43 4c CLH)$(SQLITETCL
117c0 44 45 43 4c 53 48 29 20 32 3e 4e 55 4c 0a 09 64  DECLSH) 2>NUL..d
117d0 65 6c 20 2f 51 20 6c 73 6d 2e 64 6c 6c 20 6c 73  el /Q lsm.dll ls
117e0 6d 74 65 73 74 2e 65 78 65 20 32 3e 4e 55 4c 0a  mtest.exe 2>NUL.
117f0 09 64 65 6c 20 2f 51 20 74 65 73 74 6c 6f 61 64  .del /Q testload
11800 65 78 74 2e 64 6c 6c 20 32 3e 4e 55 4c 0a 09 64  ext.dll 2>NUL..d
11810 65 6c 20 2f 51 20 74 65 73 74 66 69 78 74 75 72  el /Q testfixtur
11820 65 2e 65 78 65 20 74 65 73 74 2e 64 62 20 32 3e  e.exe test.db 2>
11830 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 4c 6f 67 45  NUL..del /Q LogE
11840 73 74 2e 65 78 65 20 66 74 73 33 76 69 65 77 2e  st.exe fts3view.
11850 65 78 65 20 72 6f 6c 6c 62 61 63 6b 2d 74 65 73  exe rollback-tes
11860 74 2e 65 78 65 20 73 68 6f 77 64 62 2e 65 78 65  t.exe showdb.exe
11870 20 64 62 64 75 6d 70 2e 65 78 65 20 32 3e 4e 55   dbdump.exe 2>NU
11880 4c 0a 09 64 65 6c 20 2f 51 20 63 68 61 6e 67 65  L..del /Q change
11890 73 65 74 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  set.exe 2>NUL..d
118a0 65 6c 20 2f 51 20 73 68 6f 77 6a 6f 75 72 6e 61  el /Q showjourna
118b0 6c 2e 65 78 65 20 73 68 6f 77 73 74 61 74 34 2e  l.exe showstat4.
118c0 65 78 65 20 73 68 6f 77 77 61 6c 2e 65 78 65 20  exe showwal.exe
118d0 73 70 65 65 64 74 65 73 74 31 2e 65 78 65 20 32  speedtest1.exe 2
118e0 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6d 70 74  >NUL..del /Q mpt
118f0 65 73 74 65 72 2e 65 78 65 20 77 6f 72 64 63 6f  ester.exe wordco
11900 75 6e 74 2e 65 78 65 20 72 62 75 2e 65 78 65 20  unt.exe rbu.exe
11910 73 72 63 63 6b 31 2e 65 78 65 20 32 3e 4e 55 4c  srcck1.exe 2>NUL
11920 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33  ..del /Q sqlite3
11930 2e 63 20 73 71 6c 69 74 65 33 2d 2a 2e 63 20 32  .c sqlite3-*.c 2
11940 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c  >NUL..del /Q sql
11950 69 74 65 33 72 63 2e 68 20 32 3e 4e 55 4c 0a 09  ite3rc.h 2>NUL..
11960 64 65 6c 20 2f 51 20 73 68 65 6c 6c 2e 63 20 73  del /Q shell.c s
11970 71 6c 69 74 65 33 65 78 74 2e 68 20 73 71 6c 69  qlite3ext.h sqli
11980 74 65 33 73 65 73 73 69 6f 6e 2e 68 20 32 3e 4e  te3session.h 2>N
11990 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74  UL..del /Q sqlit
119a0 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 20  e3_analyzer.exe
119b0 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72  sqlite3_analyzer
119c0 2e 63 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  .c 2>NUL..del /Q
119d0 20 73 71 6c 69 74 65 2d 2a 2d 6f 75 74 70 75 74   sqlite-*-output
119e0 2e 76 73 69 78 20 32 3e 4e 55 4c 0a 09 64 65 6c  .vsix 2>NUL..del
119f0 20 2f 51 20 66 75 7a 7a 65 72 73 68 65 6c 6c 2e   /Q fuzzershell.
11a00 65 78 65 20 66 75 7a 7a 63 68 65 63 6b 2e 65 78  exe fuzzcheck.ex
11a10 65 20 73 71 6c 64 69 66 66 2e 65 78 65 20 64 62  e sqldiff.exe db
11a20 68 61 73 68 2e 65 78 65 20 32 3e 4e 55 4c 0a 09  hash.exe 2>NUL..
11a30 64 65 6c 20 2f 51 20 66 74 73 35 2e 2a 20 66 74  del /Q fts5.* ft
11a40 73 35 70 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a  s5parse.* 2>NUL.
11a50 09 64 65 6c 20 2f 51 20 6c 73 6d 2e 68 20 6c 73  .del /Q lsm.h ls
11a60 6d 31 2e 63 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f  m1.c 2>NUL.# <</
11a70 6d 61 72 6b 3e 3e 0a                             mark>>.