0000: 23 21 2f 75 73 72 2f 62 69 6e 2f 74 63 6c 73 68 #!/usr/bin/tclsh
0010: 0a 23 0a 23 20 52 75 6e 20 74 68 69 73 20 54 63 .#.# Run this Tc
0020: 6c 20 73 63 72 69 70 74 20 74 6f 20 67 65 6e 65 l script to gene
0030: 72 61 74 65 20 74 68 65 20 76 61 72 69 6f 75 73 rate the various
0040: 20 6d 61 6b 65 66 69 6c 65 73 20 66 6f 72 20 61 makefiles for a
0050: 20 76 61 72 69 65 74 79 0a 23 20 6f 66 20 70 6c variety.# of pl
0060: 61 74 66 6f 72 6d 73 2e 20 20 46 69 6c 65 73 20 atforms. Files
0070: 67 65 6e 65 72 61 74 65 64 20 69 6e 63 6c 75 64 generated includ
0080: 65 3a 0a 23 0a 23 20 20 20 20 20 73 72 63 2f 6d e:.#.# src/m
0090: 61 69 6e 2e 6d 6b 20 20 20 20 20 20 20 20 20 20 ain.mk
00a0: 20 23 20 6d 61 6b 65 66 69 6c 65 20 66 6f 72 20 # makefile for
00b0: 61 6c 6c 20 75 6e 69 78 20 73 79 73 74 65 6d 73 all unix systems
00c0: 0a 23 20 20 20 20 20 77 69 6e 2f 4d 61 6b 65 66 .# win/Makef
00d0: 69 6c 65 2e 6d 69 6e 67 77 20 20 20 20 23 20 6d ile.mingw # m
00e0: 61 6b 65 66 69 6c 65 20 66 6f 72 20 6d 69 6e 67 akefile for ming
00f0: 77 20 6f 6e 20 77 69 6e 64 6f 77 73 0a 23 20 20 w on windows.#
0100: 20 20 20 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 2e win/Makefile.
0110: 2a 20 20 20 20 20 20 20 20 23 20 6d 61 6b 65 66 * # makef
0120: 69 6c 65 73 20 66 6f 72 20 6f 74 68 65 72 20 77 iles for other w
0130: 69 6e 64 6f 77 73 20 63 6f 6d 70 69 6c 65 72 73 indows compilers
0140: 0a 23 0a 23 20 52 75 6e 20 74 68 69 73 20 73 63 .#.# Run this sc
0150: 72 69 70 74 20 77 68 69 6c 65 20 69 6e 20 74 68 ript while in th
0160: 65 20 22 73 72 63 22 20 73 75 62 64 69 72 65 63 e "src" subdirec
0170: 74 6f 72 79 2e 20 20 4c 69 6b 65 20 74 68 69 73 tory. Like this
0180: 3a 0a 23 0a 23 20 20 20 20 20 20 74 63 6c 73 68 :.#.# tclsh
0190: 20 6d 61 6b 65 6d 61 6b 65 2e 74 63 6c 0a 23 0a makemake.tcl.#.
01a0: 23 20 41 64 64 20 6e 65 77 20 73 6f 75 72 63 65 # Add new source
01b0: 20 66 69 6c 65 73 20 62 79 20 6c 69 73 74 69 6e files by listin
01c0: 67 20 74 68 65 20 66 69 6c 65 73 20 28 77 69 74 g the files (wit
01d0: 68 6f 75 74 20 74 68 65 69 72 20 2e 63 20 73 75 hout their .c su
01e0: 66 66 69 78 29 0a 23 20 69 6e 20 74 68 65 20 22 ffix).# in the "
01f0: 73 72 63 22 20 76 61 72 69 61 62 6c 65 2e 20 20 src" variable.
0200: 41 64 64 20 6e 65 77 20 72 65 73 6f 75 72 63 65 Add new resource
0210: 20 66 69 6c 65 73 20 74 6f 20 74 68 65 20 22 65 files to the "e
0220: 78 74 72 61 5f 66 69 6c 65 73 22 0a 23 20 76 61 xtra_files".# va
0230: 72 69 61 62 6c 65 2e 20 20 54 68 65 72 65 20 61 riable. There a
0240: 72 65 20 6f 74 68 65 72 20 76 61 72 69 61 62 6c re other variabl
0250: 65 73 20 74 68 61 74 20 79 6f 75 20 63 61 6e 20 es that you can
0260: 61 6c 74 65 72 2c 20 64 6f 77 6e 20 74 6f 0a 23 alter, down to.#
0270: 20 74 68 65 20 22 53 54 4f 50 20 48 45 52 45 22 the "STOP HERE"
0280: 20 63 6f 6d 6d 65 6e 74 2e 20 20 54 68 65 20 73 comment. The s
0290: 74 75 66 66 20 62 65 6c 6f 77 20 22 53 54 4f 50 tuff below "STOP
02a0: 20 48 45 52 45 22 20 73 68 6f 75 6c 64 20 72 61 HERE" should ra
02b0: 72 65 6c 79 20 6e 65 65 64 0a 23 20 74 6f 20 63 rely need.# to c
02c0: 68 61 6e 67 65 2e 0a 23 0a 23 23 23 23 23 23 23 hange..#.#######
02d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
02e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
02f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0300: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
0310: 23 23 23 23 23 23 0a 0a 23 20 42 61 73 65 6e 61 ######..# Basena
0320: 6d 65 73 20 6f 66 20 61 6c 6c 20 73 6f 75 72 63 mes of all sourc
0330: 65 20 66 69 6c 65 73 20 74 68 61 74 20 67 65 74 e files that get
0340: 20 70 72 65 70 72 6f 63 65 73 73 65 64 20 75 73 preprocessed us
0350: 69 6e 67 0a 23 20 22 74 72 61 6e 73 6c 61 74 65 ing.# "translate
0360: 22 20 61 6e 64 20 22 6d 61 6b 65 68 65 61 64 65 " and "makeheade
0370: 72 73 22 2e 20 20 54 6f 20 61 64 64 20 6e 65 77 rs". To add new
0380: 20 43 2d 6c 61 6e 67 75 61 67 65 20 73 6f 75 72 C-language sour
0390: 63 65 20 66 69 6c 65 73 20 74 6f 20 74 68 65 0a ce files to the.
03a0: 23 20 70 72 6f 6a 65 63 74 2c 20 73 69 6d 70 6c # project, simpl
03b0: 79 20 61 64 64 20 74 68 65 20 62 61 73 65 6e 61 y add the basena
03c0: 6d 65 20 74 6f 20 74 68 69 73 20 6c 69 73 74 20 me to this list
03d0: 61 6e 64 20 72 65 72 75 6e 20 74 68 69 73 20 73 and rerun this s
03e0: 63 72 69 70 74 2e 0a 23 0a 23 20 53 65 74 20 74 cript..#.# Set t
03f0: 68 65 20 73 65 70 61 72 61 74 65 20 65 78 74 72 he separate extr
0400: 61 5f 66 69 6c 65 73 20 76 61 72 69 61 62 6c 65 a_files variable
0410: 20 66 75 72 74 68 65 72 20 64 6f 77 6e 20 66 6f further down fo
0420: 72 20 68 6f 77 20 74 6f 20 61 64 64 20 6e 6f 6e r how to add non
0430: 2d 43 0a 23 20 66 69 6c 65 73 2c 20 73 75 63 68 -C.# files, such
0440: 20 61 73 20 73 74 72 69 6e 67 20 61 6e 64 20 42 as string and B
0450: 4c 4f 42 20 72 65 73 6f 75 72 63 65 73 2e 0a 23 LOB resources..#
0460: 0a 73 65 74 20 73 72 63 20 7b 0a 20 20 61 64 64 .set src {. add
0470: 0a 20 20 61 6c 6c 72 65 70 6f 0a 20 20 61 74 74 . allrepo. att
0480: 61 63 68 0a 20 20 62 61 67 0a 20 20 62 69 73 65 ach. bag. bise
0490: 63 74 0a 20 20 62 6c 6f 62 0a 20 20 62 72 61 6e ct. blob. bran
04a0: 63 68 0a 20 20 62 72 6f 77 73 65 0a 20 20 62 75 ch. browse. bu
04b0: 69 6c 74 69 6e 0a 20 20 62 75 6e 64 6c 65 0a 20 iltin. bundle.
04c0: 20 63 61 63 68 65 0a 20 20 63 61 70 74 63 68 61 cache. captcha
04d0: 0a 20 20 63 67 69 0a 20 20 63 68 65 63 6b 69 6e . cgi. checkin
04e0: 0a 20 20 63 68 65 63 6b 6f 75 74 0a 20 20 63 6c . checkout. cl
04f0: 65 61 72 73 69 67 6e 0a 20 20 63 6c 6f 6e 65 0a earsign. clone.
0500: 20 20 63 6f 6d 66 6f 72 6d 61 74 0a 20 20 63 6f comformat. co
0510: 6e 66 69 67 75 72 65 0a 20 20 63 6f 6e 74 65 6e nfigure. conten
0520: 74 0a 20 20 63 6f 6f 6b 69 65 73 0a 20 20 64 62 t. cookies. db
0530: 0a 20 20 64 65 6c 74 61 0a 20 20 64 65 6c 74 61 . delta. delta
0540: 63 6d 64 0a 20 20 64 65 73 63 65 6e 64 61 6e 74 cmd. descendant
0550: 73 0a 20 20 64 69 66 66 0a 20 20 64 69 66 66 63 s. diff. diffc
0560: 6d 64 0a 20 20 64 69 73 70 61 74 63 68 0a 20 20 md. dispatch.
0570: 64 6f 63 0a 20 20 65 6e 63 6f 64 65 0a 20 20 65 doc. encode. e
0580: 76 65 6e 74 0a 20 20 65 78 70 6f 72 74 0a 20 20 vent. export.
0590: 66 69 6c 65 0a 20 20 66 69 6e 66 6f 0a 20 20 66 file. finfo. f
05a0: 6f 63 69 0a 20 20 66 73 68 65 6c 6c 0a 20 20 66 oci. fshell. f
05b0: 75 73 65 66 73 0a 20 20 67 6c 6f 62 0a 20 20 67 usefs. glob. g
05c0: 72 61 70 68 0a 20 20 67 7a 69 70 0a 20 20 68 6e raph. gzip. hn
05d0: 61 6d 65 0a 20 20 68 74 74 70 0a 20 20 68 74 74 ame. http. htt
05e0: 70 5f 73 6f 63 6b 65 74 0a 20 20 68 74 74 70 5f p_socket. http_
05f0: 74 72 61 6e 73 70 6f 72 74 0a 20 20 69 6d 70 6f transport. impo
0600: 72 74 0a 20 20 69 6e 66 6f 0a 20 20 6a 73 6f 6e rt. info. json
0610: 0a 20 20 6a 73 6f 6e 5f 61 72 74 69 66 61 63 74 . json_artifact
0620: 0a 20 20 6a 73 6f 6e 5f 62 72 61 6e 63 68 0a 20 . json_branch.
0630: 20 6a 73 6f 6e 5f 63 6f 6e 66 69 67 0a 20 20 6a json_config. j
0640: 73 6f 6e 5f 64 69 66 66 0a 20 20 6a 73 6f 6e 5f son_diff. json_
0650: 64 69 72 0a 20 20 6a 73 6f 6e 5f 66 69 6e 66 6f dir. json_finfo
0660: 0a 20 20 6a 73 6f 6e 5f 6c 6f 67 69 6e 0a 20 20 . json_login.
0670: 6a 73 6f 6e 5f 71 75 65 72 79 0a 20 20 6a 73 6f json_query. jso
0680: 6e 5f 72 65 70 6f 72 74 0a 20 20 6a 73 6f 6e 5f n_report. json_
0690: 73 74 61 74 75 73 0a 20 20 6a 73 6f 6e 5f 74 61 status. json_ta
06a0: 67 0a 20 20 6a 73 6f 6e 5f 74 69 6d 65 6c 69 6e g. json_timelin
06b0: 65 0a 20 20 6a 73 6f 6e 5f 75 73 65 72 0a 20 20 e. json_user.
06c0: 6a 73 6f 6e 5f 77 69 6b 69 0a 20 20 6c 65 61 66 json_wiki. leaf
06d0: 0a 20 20 6c 6f 61 64 63 74 72 6c 0a 20 20 6c 6f . loadctrl. lo
06e0: 67 69 6e 0a 20 20 6c 6f 6f 6b 73 6c 69 6b 65 0a gin. lookslike.
06f0: 20 20 6d 61 69 6e 0a 20 20 6d 61 6e 69 66 65 73 main. manifes
0700: 74 0a 20 20 6d 61 72 6b 64 6f 77 6e 0a 20 20 6d t. markdown. m
0710: 61 72 6b 64 6f 77 6e 5f 68 74 6d 6c 0a 20 20 6d arkdown_html. m
0720: 64 35 0a 20 20 6d 65 72 67 65 0a 20 20 6d 65 72 d5. merge. mer
0730: 67 65 33 0a 20 20 6d 6f 64 65 72 61 74 65 0a 20 ge3. moderate.
0740: 20 6e 61 6d 65 0a 20 20 70 61 74 68 0a 20 20 70 name. path. p
0750: 69 65 63 68 61 72 74 0a 20 20 70 69 76 6f 74 0a iechart. pivot.
0760: 20 20 70 6f 70 65 6e 0a 20 20 70 71 75 65 75 65 popen. pqueue
0770: 0a 20 20 70 72 69 6e 74 66 0a 20 20 70 75 62 6c . printf. publ
0780: 69 73 68 0a 20 20 70 75 72 67 65 0a 20 20 72 65 ish. purge. re
0790: 62 75 69 6c 64 0a 20 20 72 65 67 65 78 70 0a 20 build. regexp.
07a0: 20 72 65 70 6f 72 74 0a 20 20 72 73 73 0a 20 20 report. rss.
07b0: 73 63 68 65 6d 61 0a 20 20 73 65 61 72 63 68 0a schema. search.
07c0: 20 20 73 65 63 75 72 69 74 79 5f 61 75 64 69 74 security_audit
07d0: 0a 20 20 73 65 74 75 70 0a 20 20 73 68 61 31 0a . setup. sha1.
07e0: 20 20 73 68 61 31 68 61 72 64 0a 20 20 73 68 61 sha1hard. sha
07f0: 33 0a 20 20 73 68 75 6e 0a 20 20 73 69 74 65 6d 3. shun. sitem
0800: 61 70 0a 20 20 73 6b 69 6e 73 0a 20 20 73 71 6c ap. skins. sql
0810: 63 6d 64 0a 20 20 73 74 61 73 68 0a 20 20 73 74 cmd. stash. st
0820: 61 74 0a 20 20 73 74 61 74 72 65 70 0a 20 20 73 at. statrep. s
0830: 74 79 6c 65 0a 20 20 73 79 6e 63 0a 20 20 74 61 tyle. sync. ta
0840: 67 0a 20 20 74 61 72 0a 20 20 74 68 5f 6d 61 69 g. tar. th_mai
0850: 6e 0a 20 20 74 69 6d 65 6c 69 6e 65 0a 20 20 74 n. timeline. t
0860: 6b 74 0a 20 20 74 6b 74 73 65 74 75 70 0a 20 20 kt. tktsetup.
0870: 75 6e 64 6f 0a 20 20 75 6e 69 63 6f 64 65 0a 20 undo. unicode.
0880: 20 75 6e 76 65 72 73 69 6f 6e 65 64 0a 20 20 75 unversioned. u
0890: 70 64 61 74 65 0a 20 20 75 72 6c 0a 20 20 75 73 pdate. url. us
08a0: 65 72 0a 20 20 75 74 66 38 0a 20 20 75 74 69 6c er. utf8. util
08b0: 0a 20 20 76 65 72 69 66 79 0a 20 20 76 66 69 6c . verify. vfil
08c0: 65 0a 20 20 77 69 6b 69 0a 20 20 77 69 6b 69 66 e. wiki. wikif
08d0: 6f 72 6d 61 74 0a 20 20 77 69 6e 66 69 6c 65 0a ormat. winfile.
08e0: 20 20 77 69 6e 68 74 74 70 0a 20 20 77 79 73 69 winhttp. wysi
08f0: 77 79 67 0a 20 20 78 66 65 72 0a 20 20 78 66 65 wyg. xfer. xfe
0900: 72 73 65 74 75 70 0a 20 20 7a 69 70 0a 20 20 68 rsetup. zip. h
0910: 74 74 70 5f 73 73 6c 0a 7d 0a 0a 23 20 41 64 64 ttp_ssl.}..# Add
0920: 69 74 69 6f 6e 61 6c 20 72 65 73 6f 75 72 63 65 itional resource
0930: 20 66 69 6c 65 73 20 74 68 61 74 20 67 65 74 20 files that get
0940: 62 75 69 6c 74 20 69 6e 74 6f 20 74 68 65 20 65 built into the e
0950: 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 73 65 74 xecutable..#.set
0960: 20 65 78 74 72 61 5f 66 69 6c 65 73 20 7b 0a 20 extra_files {.
0970: 20 64 69 66 66 2e 74 63 6c 0a 20 20 6d 61 72 6b diff.tcl. mark
0980: 64 6f 77 6e 2e 6d 64 0a 20 20 77 69 6b 69 2e 77 down.md. wiki.w
0990: 69 6b 69 0a 20 20 2a 2e 6a 73 0a 20 20 2e 2e 2f iki. *.js. ../
09a0: 73 6b 69 6e 73 2f 2a 2f 2a 2e 74 78 74 0a 7d 0a skins/*/*.txt.}.
09b0: 0a 23 20 4f 70 74 69 6f 6e 73 20 75 73 65 64 20 .# Options used
09c0: 74 6f 20 63 6f 6d 70 69 6c 65 20 74 68 65 20 69 to compile the i
09d0: 6e 63 6c 75 64 65 64 20 53 51 4c 69 74 65 20 6c ncluded SQLite l
09e0: 69 62 72 61 72 79 2e 0a 23 0a 73 65 74 20 53 51 ibrary..#.set SQ
09f0: 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 7b 0a 20 LITE_OPTIONS {.
0a00: 20 2d 44 4e 44 45 42 55 47 3d 31 0a 20 20 2d 44 -DNDEBUG=1. -D
0a10: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 SQLITE_THREADSAF
0a20: 45 3d 30 0a 20 20 2d 44 53 51 4c 49 54 45 5f 44 E=0. -DSQLITE_D
0a30: 45 46 41 55 4c 54 5f 4d 45 4d 53 54 41 54 55 53 EFAULT_MEMSTATUS
0a40: 3d 30 0a 20 20 2d 44 53 51 4c 49 54 45 5f 44 45 =0. -DSQLITE_DE
0a50: 46 41 55 4c 54 5f 57 41 4c 5f 53 59 4e 43 48 52 FAULT_WAL_SYNCHR
0a60: 4f 4e 4f 55 53 3d 31 0a 20 20 2d 44 53 51 4c 49 ONOUS=1. -DSQLI
0a70: 54 45 5f 4c 49 4b 45 5f 44 4f 45 53 4e 54 5f 4d TE_LIKE_DOESNT_M
0a80: 41 54 43 48 5f 42 4c 4f 42 53 0a 20 20 2d 44 53 ATCH_BLOBS. -DS
0a90: 51 4c 49 54 45 5f 4f 4d 49 54 5f 44 45 43 4c 54 QLITE_OMIT_DECLT
0aa0: 59 50 45 0a 20 20 2d 44 53 51 4c 49 54 45 5f 4f YPE. -DSQLITE_O
0ab0: 4d 49 54 5f 44 45 50 52 45 43 41 54 45 44 0a 20 MIT_DEPRECATED.
0ac0: 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 47 -DSQLITE_OMIT_G
0ad0: 45 54 5f 54 41 42 4c 45 0a 20 20 2d 44 53 51 4c ET_TABLE. -DSQL
0ae0: 49 54 45 5f 4f 4d 49 54 5f 50 52 4f 47 52 45 53 ITE_OMIT_PROGRES
0af0: 53 5f 43 41 4c 4c 42 41 43 4b 0a 20 20 2d 44 53 S_CALLBACK. -DS
0b00: 51 4c 49 54 45 5f 4f 4d 49 54 5f 53 48 41 52 45 QLITE_OMIT_SHARE
0b10: 44 5f 43 41 43 48 45 0a 20 20 2d 44 53 51 4c 49 D_CACHE. -DSQLI
0b20: 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 TE_OMIT_LOAD_EXT
0b30: 45 4e 53 49 4f 4e 0a 20 20 2d 44 53 51 4c 49 54 ENSION. -DSQLIT
0b40: 45 5f 4d 41 58 5f 45 58 50 52 5f 44 45 50 54 48 E_MAX_EXPR_DEPTH
0b50: 3d 30 0a 20 20 2d 44 53 51 4c 49 54 45 5f 55 53 =0. -DSQLITE_US
0b60: 45 5f 41 4c 4c 4f 43 41 0a 20 20 2d 44 53 51 4c E_ALLOCA. -DSQL
0b70: 49 54 45 5f 45 4e 41 42 4c 45 5f 4c 4f 43 4b 49 ITE_ENABLE_LOCKI
0b80: 4e 47 5f 53 54 59 4c 45 3d 30 0a 20 20 2d 44 53 NG_STYLE=0. -DS
0b90: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 46 49 QLITE_DEFAULT_FI
0ba0: 4c 45 5f 46 4f 52 4d 41 54 3d 34 0a 20 20 2d 44 LE_FORMAT=4. -D
0bb0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 45 58 SQLITE_ENABLE_EX
0bc0: 50 4c 41 49 4e 5f 43 4f 4d 4d 45 4e 54 53 0a 20 PLAIN_COMMENTS.
0bd0: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE
0be0: 5f 46 54 53 34 0a 20 20 2d 44 53 51 4c 49 54 45 _FTS4. -DSQLITE
0bf0: 5f 45 4e 41 42 4c 45 5f 46 54 53 33 5f 50 41 52 _ENABLE_FTS3_PAR
0c00: 45 4e 54 48 45 53 49 53 0a 20 20 2d 44 53 51 4c ENTHESIS. -DSQL
0c10: 49 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 54 41 ITE_ENABLE_DBSTA
0c20: 54 5f 56 54 41 42 0a 20 20 2d 44 53 51 4c 49 54 T_VTAB. -DSQLIT
0c30: 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a 20 E_ENABLE_JSON1.
0c40: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE
0c50: 5f 46 54 53 35 0a 20 20 2d 44 53 51 4c 49 54 45 _FTS5. -DSQLITE
0c60: 5f 45 4e 41 42 4c 45 5f 53 54 4d 54 56 54 41 42 _ENABLE_STMTVTAB
0c70: 0a 20 20 2d 44 53 51 4c 49 54 45 5f 55 53 45 5f . -DSQLITE_USE_
0c80: 5a 4c 49 42 0a 20 20 2d 44 53 51 4c 49 54 45 5f ZLIB. -DSQLITE_
0c90: 49 4e 54 52 4f 53 50 45 43 54 49 4f 4e 5f 50 52 INTROSPECTION_PR
0ca0: 41 47 4d 41 53 0a 20 20 2d 44 53 51 4c 49 54 45 AGMAS. -DSQLITE
0cb0: 5f 45 4e 41 42 4c 45 5f 44 42 50 41 47 45 5f 56 _ENABLE_DBPAGE_V
0cc0: 54 41 42 0a 7d 0a 23 6c 61 70 70 65 6e 64 20 53 TAB.}.#lappend S
0cd0: 51 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 2d 44 QLITE_OPTIONS -D
0ce0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 SQLITE_ENABLE_FT
0cf0: 53 33 3d 31 0a 23 6c 61 70 70 65 6e 64 20 53 51 S3=1.#lappend SQ
0d00: 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 2d 44 53 LITE_OPTIONS -DS
0d10: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 54 41 QLITE_ENABLE_STA
0d20: 54 34 0a 23 6c 61 70 70 65 6e 64 20 53 51 4c 49 T4.#lappend SQLI
0d30: 54 45 5f 4f 50 54 49 4f 4e 53 20 2d 44 53 51 4c TE_OPTIONS -DSQL
0d40: 49 54 45 5f 57 49 4e 33 32 5f 4e 4f 5f 41 4e 53 ITE_WIN32_NO_ANS
0d50: 49 0a 23 6c 61 70 70 65 6e 64 20 53 51 4c 49 54 I.#lappend SQLIT
0d60: 45 5f 4f 50 54 49 4f 4e 53 20 2d 44 53 51 4c 49 E_OPTIONS -DSQLI
0d70: 54 45 5f 57 49 4e 4e 54 5f 4d 41 58 5f 50 41 54 TE_WINNT_MAX_PAT
0d80: 48 5f 43 48 41 52 53 3d 34 30 39 36 0a 0a 23 20 H_CHARS=4096..#
0d90: 4f 70 74 69 6f 6e 73 20 75 73 65 64 20 74 6f 20 Options used to
0da0: 63 6f 6d 70 69 6c 65 20 74 68 65 20 69 6e 63 6c compile the incl
0db0: 75 64 65 64 20 53 51 4c 69 74 65 20 73 68 65 6c uded SQLite shel
0dc0: 6c 2e 0a 23 0a 73 65 74 20 53 48 45 4c 4c 5f 4f l..#.set SHELL_O
0dd0: 50 54 49 4f 4e 53 20 7b 0a 20 20 2d 44 6d 61 69 PTIONS {. -Dmai
0de0: 6e 3d 73 71 6c 69 74 65 33 5f 73 68 65 6c 6c 0a n=sqlite3_shell.
0df0: 20 20 2d 44 53 51 4c 49 54 45 5f 53 48 45 4c 4c -DSQLITE_SHELL
0e00: 5f 49 53 5f 55 54 46 38 3d 31 0a 20 20 2d 44 53 _IS_UTF8=1. -DS
0e10: 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f QLITE_OMIT_LOAD_
0e20: 45 58 54 45 4e 53 49 4f 4e 3d 31 0a 20 20 2d 44 EXTENSION=1. -D
0e30: 55 53 45 5f 53 59 53 54 45 4d 5f 53 51 4c 49 54 USE_SYSTEM_SQLIT
0e40: 45 3d 24 28 55 53 45 5f 53 59 53 54 45 4d 5f 53 E=$(USE_SYSTEM_S
0e50: 51 4c 49 54 45 29 0a 20 20 2d 44 53 51 4c 49 54 QLITE). -DSQLIT
0e60: 45 5f 53 48 45 4c 4c 5f 44 42 4e 41 4d 45 5f 50 E_SHELL_DBNAME_P
0e70: 52 4f 43 3d 66 6f 73 73 69 6c 5f 6f 70 65 6e 0a ROC=fossil_open.
0e80: 7d 0a 0a 23 20 6d 69 6e 69 7a 20 28 6c 69 62 7a }..# miniz (libz
0e90: 20 64 72 6f 70 2d 69 6e 20 61 6c 74 65 72 6e 61 drop-in alterna
0ea0: 74 69 76 65 29 20 70 72 65 63 6f 6d 70 69 6c 65 tive) precompile
0eb0: 72 20 66 6c 61 67 73 2e 0a 23 0a 73 65 74 20 4d r flags..#.set M
0ec0: 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 20 7b 0a 20 INIZ_OPTIONS {.
0ed0: 20 2d 44 4d 49 4e 49 5a 5f 4e 4f 5f 53 54 44 49 -DMINIZ_NO_STDI
0ee0: 4f 0a 20 20 2d 44 4d 49 4e 49 5a 5f 4e 4f 5f 54 O. -DMINIZ_NO_T
0ef0: 49 4d 45 0a 20 20 2d 44 4d 49 4e 49 5a 5f 4e 4f IME. -DMINIZ_NO
0f00: 5f 41 52 43 48 49 56 45 5f 41 50 49 53 0a 7d 0a _ARCHIVE_APIS.}.
0f10: 0a 23 20 4f 70 74 69 6f 6e 73 20 75 73 65 64 20 .# Options used
0f20: 74 6f 20 63 6f 6d 70 69 6c 65 20 74 68 65 20 69 to compile the i
0f30: 6e 63 6c 75 64 65 64 20 53 51 4c 69 74 65 20 73 ncluded SQLite s
0f40: 68 65 6c 6c 20 6f 6e 20 57 69 6e 64 6f 77 73 2e hell on Windows.
0f50: 0a 23 0a 73 65 74 20 53 48 45 4c 4c 5f 57 49 4e .#.set SHELL_WIN
0f60: 33 32 5f 4f 50 54 49 4f 4e 53 20 24 53 48 45 4c 32_OPTIONS $SHEL
0f70: 4c 5f 4f 50 54 49 4f 4e 53 0a 6c 61 70 70 65 6e L_OPTIONS.lappen
0f80: 64 20 53 48 45 4c 4c 5f 57 49 4e 33 32 5f 4f 50 d SHELL_WIN32_OP
0f90: 54 49 4f 4e 53 20 2d 44 61 63 63 65 73 73 3d 66 TIONS -Daccess=f
0fa0: 69 6c 65 5f 61 63 63 65 73 73 0a 6c 61 70 70 65 ile_access.lappe
0fb0: 6e 64 20 53 48 45 4c 4c 5f 57 49 4e 33 32 5f 4f nd SHELL_WIN32_O
0fc0: 50 54 49 4f 4e 53 20 2d 44 73 79 73 74 65 6d 3d PTIONS -Dsystem=
0fd0: 66 6f 73 73 69 6c 5f 73 79 73 74 65 6d 0a 6c 61 fossil_system.la
0fe0: 70 70 65 6e 64 20 53 48 45 4c 4c 5f 57 49 4e 33 ppend SHELL_WIN3
0ff0: 32 5f 4f 50 54 49 4f 4e 53 20 2d 44 67 65 74 65 2_OPTIONS -Dgete
1000: 6e 76 3d 66 6f 73 73 69 6c 5f 67 65 74 65 6e 76 nv=fossil_getenv
1010: 0a 6c 61 70 70 65 6e 64 20 53 48 45 4c 4c 5f 57 .lappend SHELL_W
1020: 49 4e 33 32 5f 4f 50 54 49 4f 4e 53 20 2d 44 66 IN32_OPTIONS -Df
1030: 6f 70 65 6e 3d 66 6f 73 73 69 6c 5f 66 6f 70 65 open=fossil_fope
1040: 6e 0a 0a 23 20 53 54 4f 50 20 48 45 52 45 2e 0a n..# STOP HERE..
1050: 23 20 55 6e 6c 65 73 73 20 74 68 65 20 62 75 69 # Unless the bui
1060: 6c 64 20 70 72 6f 63 65 64 75 72 65 73 20 63 68 ld procedures ch
1070: 61 6e 67 65 73 2c 20 79 6f 75 20 73 68 6f 75 6c anges, you shoul
1080: 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 65 64 d not have to ed
1090: 69 74 20 61 6e 79 74 68 69 6e 67 0a 23 20 62 65 it anything.# be
10a0: 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 2e 0a 23 low this line..#
10b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
10c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
10d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
10e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
10f0: 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 ############..#
1100: 4e 61 6d 65 20 6f 66 20 74 68 65 20 66 69 6e 61 Name of the fina
1110: 6c 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 23 0a l application.#.
1120: 73 65 74 20 6e 61 6d 65 20 66 6f 73 73 69 6c 0a set name fossil.
1130: 0a 23 20 54 68 65 20 22 77 72 69 74 65 6c 6e 22 .# The "writeln"
1140: 20 63 6f 6d 6d 61 6e 64 20 73 65 6e 64 73 20 6f command sends o
1150: 75 74 70 75 74 20 74 6f 20 74 68 65 20 74 61 72 utput to the tar
1160: 67 65 74 20 6d 61 6b 65 66 69 6c 65 2e 0a 23 0a get makefile..#.
1170: 70 72 6f 63 20 77 72 69 74 65 6c 6e 20 7b 61 72 proc writeln {ar
1180: 67 73 7d 20 7b 0a 20 20 67 6c 6f 62 61 6c 20 6f gs} {. global o
1190: 75 74 70 75 74 5f 66 69 6c 65 0a 20 20 69 66 20 utput_file. if
11a0: 7b 5b 6c 69 6e 64 65 78 20 24 61 72 67 73 20 30 {[lindex $args 0
11b0: 5d 3d 3d 22 2d 6e 6f 6e 65 77 6c 69 6e 65 22 7d ]=="-nonewline"}
11c0: 20 7b 0a 20 20 20 20 70 75 74 73 20 2d 6e 6f 6e {. puts -non
11d0: 65 77 6c 69 6e 65 20 24 6f 75 74 70 75 74 5f 66 ewline $output_f
11e0: 69 6c 65 20 5b 6c 69 6e 64 65 78 20 24 61 72 67 ile [lindex $arg
11f0: 73 20 31 5d 0a 20 20 7d 20 65 6c 73 65 20 7b 0a s 1]. } else {.
1200: 20 20 20 20 70 75 74 73 20 24 6f 75 74 70 75 74 puts $output
1210: 5f 66 69 6c 65 20 5b 6c 69 6e 64 65 78 20 24 61 _file [lindex $a
1220: 72 67 73 20 30 5d 0a 20 20 7d 0a 7d 0a 0a 23 20 rgs 0]. }.}..#
1230: 45 78 70 61 6e 64 20 61 6e 79 20 77 69 6c 64 63 Expand any wildc
1240: 61 72 64 73 20 69 6e 20 22 65 78 74 72 61 5f 66 ards in "extra_f
1250: 69 6c 65 73 22 0a 73 65 74 20 6e 65 77 5f 65 78 iles".set new_ex
1260: 74 72 61 5f 66 69 6c 65 73 20 7b 7d 0a 66 6f 72 tra_files {}.for
1270: 65 61 63 68 20 66 69 6c 65 20 24 65 78 74 72 61 each file $extra
1280: 5f 66 69 6c 65 73 20 7b 0a 20 20 66 6f 72 65 61 _files {. forea
1290: 63 68 20 78 20 5b 67 6c 6f 62 20 2d 6e 6f 63 6f ch x [glob -noco
12a0: 6d 70 6c 61 69 6e 20 24 66 69 6c 65 5d 20 7b 0a mplain $file] {.
12b0: 20 20 20 20 6c 61 70 70 65 6e 64 20 6e 65 77 5f lappend new_
12c0: 65 78 74 72 61 5f 66 69 6c 65 73 20 24 78 0a 20 extra_files $x.
12d0: 20 7d 0a 7d 0a 73 65 74 20 65 78 74 72 61 5f 66 }.}.set extra_f
12e0: 69 6c 65 73 20 24 6e 65 77 5f 65 78 74 72 61 5f iles $new_extra_
12f0: 66 69 6c 65 73 0a 0a 23 23 23 23 23 23 23 23 23 files..#########
1300: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1310: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1320: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1330: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1340: 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 #####.##########
1350: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1360: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1370: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1380: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1390: 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 23 ####.###########
13a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
13b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
13c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
13d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
13e0: 23 23 23 0a 23 20 53 74 61 72 74 20 62 79 20 67 ###.# Start by g
13f0: 65 6e 65 72 61 74 69 6e 67 20 74 68 65 20 22 6d enerating the "m
1400: 61 69 6e 2e 6d 6b 22 20 6d 61 6b 65 66 69 6c 65 ain.mk" makefile
1410: 20 75 73 65 64 20 66 6f 72 20 61 6c 6c 20 75 6e used for all un
1420: 69 78 20 73 79 73 74 65 6d 73 2e 0a 23 0a 70 75 ix systems..#.pu
1430: 74 73 20 22 62 75 69 6c 64 69 6e 67 20 6d 61 69 ts "building mai
1440: 6e 2e 6d 6b 22 0a 73 65 74 20 6f 75 74 70 75 74 n.mk".set output
1450: 5f 66 69 6c 65 20 5b 6f 70 65 6e 20 6d 61 69 6e _file [open main
1460: 2e 6d 6b 20 77 5d 0a 66 63 6f 6e 66 69 67 75 72 .mk w].fconfigur
1470: 65 20 24 6f 75 74 70 75 74 5f 66 69 6c 65 20 2d e $output_file -
1480: 74 72 61 6e 73 6c 61 74 69 6f 6e 20 62 69 6e 61 translation bina
1490: 72 79 0a 0a 77 72 69 74 65 6c 6e 20 7b 23 0a 23 ry..writeln {#.#
14a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
14b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
14c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
14d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
14e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 #############.#
14f0: 57 41 52 4e 49 4e 47 3a 20 44 4f 20 4e 4f 54 20 WARNING: DO NOT
1500: 45 44 49 54 2c 20 41 55 54 4f 4d 41 54 49 43 41 EDIT, AUTOMATICA
1510: 4c 4c 59 20 47 45 4e 45 52 41 54 45 44 20 46 49 LLY GENERATED FI
1520: 4c 45 20 28 53 45 45 20 22 73 72 63 2f 6d 61 6b LE (SEE "src/mak
1530: 65 6d 61 6b 65 2e 74 63 6c 22 29 0a 23 23 23 23 emake.tcl").####
1540: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1550: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1560: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1570: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
1580: 23 23 23 23 23 23 23 23 23 23 0a 23 0a 23 20 54 ##########.#.# T
1590: 68 69 73 20 66 69 6c 65 20 69 73 20 61 75 74 6f his file is auto
15a0: 6d 61 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 matically genera
15b0: 74 65 64 2e 20 20 49 6e 73 74 65 61 64 20 6f 66 ted. Instead of
15c0: 20 65 64 69 74 69 6e 67 20 74 68 69 73 0a 23 20 editing this.#
15d0: 66 69 6c 65 2c 20 65 64 69 74 20 22 6d 61 6b 65 file, edit "make
15e0: 6d 61 6b 65 2e 74 63 6c 22 20 74 68 65 6e 20 72 make.tcl" then r
15f0: 75 6e 20 22 74 63 6c 73 68 20 6d 61 6b 65 6d 61 un "tclsh makema
1600: 6b 65 2e 74 63 6c 22 0a 23 20 74 6f 20 72 65 67 ke.tcl".# to reg
1610: 65 6e 65 72 61 74 65 20 74 68 69 73 20 66 69 6c enerate this fil
1620: 65 2e 0a 23 0a 23 20 54 68 69 73 20 66 69 6c 65 e..#.# This file
1630: 20 69 73 20 69 6e 63 6c 75 64 65 64 20 62 79 20 is included by
1640: 70 72 69 6d 61 72 79 20 4d 61 6b 65 66 69 6c 65 primary Makefile
1650: 2e 0a 23 0a 0a 58 42 43 43 20 3d 20 24 28 42 43 ..#..XBCC = $(BC
1660: 43 29 20 24 28 42 43 43 46 4c 41 47 53 29 20 24 C) $(BCCFLAGS) $
1670: 28 43 46 4c 41 47 53 29 0a 58 54 43 43 20 3d 20 (CFLAGS).XTCC =
1680: 24 28 54 43 43 29 20 2d 49 2e 20 2d 49 24 28 53 $(TCC) -I. -I$(S
1690: 52 43 44 49 52 29 20 2d 49 24 28 4f 42 4a 44 49 RCDIR) -I$(OBJDI
16a0: 52 29 20 24 28 54 43 43 46 4c 41 47 53 29 20 24 R) $(TCCFLAGS) $
16b0: 28 43 46 4c 41 47 53 29 0a 0a 7d 0a 77 72 69 74 (CFLAGS)..}.writ
16c0: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
16d0: 53 52 43 20 3d 22 0a 66 6f 72 65 61 63 68 20 73 SRC =".foreach s
16e0: 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 7b 0a [lsort $src] {.
16f0: 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 writeln -nonew
1700: 6c 69 6e 65 20 22 20 5c 5c 5c 6e 20 20 5c 24 28 line " \\\n \$(
1710: 53 52 43 44 49 52 29 2f 24 73 2e 63 22 0a 7d 0a SRCDIR)/$s.c".}.
1720: 77 72 69 74 65 6c 6e 20 22 5c 6e 22 0a 77 72 69 writeln "\n".wri
1730: 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 teln -nonewline
1740: 22 45 58 54 52 41 5f 46 49 4c 45 53 20 3d 22 0a "EXTRA_FILES =".
1750: 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 foreach s [lsort
1760: 20 24 65 78 74 72 61 5f 66 69 6c 65 73 5d 20 7b $extra_files] {
1770: 0a 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 . writeln -none
1780: 77 6c 69 6e 65 20 22 20 5c 5c 5c 6e 20 20 5c 24 wline " \\\n \$
1790: 28 53 52 43 44 49 52 29 2f 24 73 22 0a 7d 0a 77 (SRCDIR)/$s".}.w
17a0: 72 69 74 65 6c 6e 20 22 5c 6e 22 0a 77 72 69 74 riteln "\n".writ
17b0: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
17c0: 54 52 41 4e 53 5f 53 52 43 20 3d 22 0a 66 6f 72 TRANS_SRC =".for
17d0: 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 each s [lsort $s
17e0: 72 63 5d 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 rc] {. writeln
17f0: 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 20 5c 5c 5c -nonewline " \\\
1800: 6e 20 20 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b n \$(OBJDIR)/${
1810: 73 7d 5f 2e 63 22 0a 7d 0a 77 72 69 74 65 6c 6e s}_.c".}.writeln
1820: 20 22 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 2d 6e "\n".writeln -n
1830: 6f 6e 65 77 6c 69 6e 65 20 22 4f 42 4a 20 3d 22 onewline "OBJ ="
1840: 0a 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 72 .foreach s [lsor
1850: 74 20 24 73 72 63 5d 20 7b 0a 20 20 77 72 69 74 t $src] {. writ
1860: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
1870: 20 5c 5c 5c 6e 20 5c 24 28 4f 42 4a 44 49 52 29 \\\n \$(OBJDIR)
1880: 2f 24 73 2e 6f 22 0a 7d 0a 77 72 69 74 65 6c 6e /$s.o".}.writeln
1890: 20 22 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 22 41 "\n".writeln "A
18a0: 50 50 4e 41 4d 45 20 3d 20 24 6e 61 6d 65 5c 24 PPNAME = $name\$
18b0: 28 45 29 22 0a 77 72 69 74 65 6c 6e 20 22 5c 6e (E)".writeln "\n
18c0: 22 0a 0a 77 72 69 74 65 6c 6e 20 5b 73 74 72 69 "..writeln [stri
18d0: 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 5c 0a 20 ng map [list \.
18e0: 20 20 20 3c 3c 3c 53 51 4c 49 54 45 5f 4f 50 54 <<<SQLITE_OPT
18f0: 49 4f 4e 53 3e 3e 3e 20 5b 6a 6f 69 6e 20 24 53 IONS>>> [join $S
1900: 51 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 22 20 QLITE_OPTIONS "
1910: 5c 5c 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 \\\n
1920: 20 20 20 20 20 22 5d 20 5c 0a 20 20 20 20 3c 3c "] \. <<
1930: 3c 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 3e 3e <SHELL_OPTIONS>>
1940: 3e 20 5b 6a 6f 69 6e 20 24 53 48 45 4c 4c 5f 4f > [join $SHELL_O
1950: 50 54 49 4f 4e 53 20 22 20 5c 5c 5c 6e 20 20 20 PTIONS " \\\n
1960: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5d 20 "]
1970: 5c 0a 20 20 20 20 3c 3c 3c 4d 49 4e 49 5a 5f 4f \. <<<MINIZ_O
1980: 50 54 49 4f 4e 53 3e 3e 3e 20 5b 6a 6f 69 6e 20 PTIONS>>> [join
1990: 24 4d 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 20 22 $MINIZ_OPTIONS "
19a0: 20 5c 5c 5c 6e 20 20 20 20 20 20 20 20 20 20 20 \\\n
19b0: 20 20 20 20 20 22 5d 5d 20 7b 0a 61 6c 6c 3a 09 "]] {.all:.
19c0: 24 28 4f 42 4a 44 49 52 29 20 24 28 41 50 50 4e $(OBJDIR) $(APPN
19d0: 41 4d 45 29 0a 0a 69 6e 73 74 61 6c 6c 3a 09 24 AME)..install:.$
19e0: 28 41 50 50 4e 41 4d 45 29 0a 09 6d 6b 64 69 72 (APPNAME)..mkdir
19f0: 20 2d 70 20 24 28 49 4e 53 54 41 4c 4c 44 49 52 -p $(INSTALLDIR
1a00: 29 0a 09 6d 76 20 24 28 41 50 50 4e 41 4d 45 29 )..mv $(APPNAME)
1a10: 20 24 28 49 4e 53 54 41 4c 4c 44 49 52 29 0a 0a $(INSTALLDIR)..
1a20: 63 6f 64 65 63 68 65 63 6b 3a 09 24 28 54 52 41 codecheck:.$(TRA
1a30: 4e 53 5f 53 52 43 29 20 24 28 4f 42 4a 44 49 52 NS_SRC) $(OBJDIR
1a40: 29 2f 63 6f 64 65 63 68 65 63 6b 31 0a 09 24 28 )/codecheck1..$(
1a50: 4f 42 4a 44 49 52 29 2f 63 6f 64 65 63 68 65 63 OBJDIR)/codechec
1a60: 6b 31 20 24 28 54 52 41 4e 53 5f 53 52 43 29 0a k1 $(TRANS_SRC).
1a70: 0a 24 28 4f 42 4a 44 49 52 29 3a 0a 09 2d 6d 6b .$(OBJDIR):..-mk
1a80: 64 69 72 20 24 28 4f 42 4a 44 49 52 29 0a 0a 24 dir $(OBJDIR)..$
1a90: 28 4f 42 4a 44 49 52 29 2f 74 72 61 6e 73 6c 61 (OBJDIR)/transla
1aa0: 74 65 3a 09 24 28 53 52 43 44 49 52 29 2f 74 72 te:.$(SRCDIR)/tr
1ab0: 61 6e 73 6c 61 74 65 2e 63 0a 09 24 28 58 42 43 anslate.c..$(XBC
1ac0: 43 29 20 2d 6f 20 24 28 4f 42 4a 44 49 52 29 2f C) -o $(OBJDIR)/
1ad0: 74 72 61 6e 73 6c 61 74 65 20 24 28 53 52 43 44 translate $(SRCD
1ae0: 49 52 29 2f 74 72 61 6e 73 6c 61 74 65 2e 63 0a IR)/translate.c.
1af0: 0a 24 28 4f 42 4a 44 49 52 29 2f 6d 61 6b 65 68 .$(OBJDIR)/makeh
1b00: 65 61 64 65 72 73 3a 09 24 28 53 52 43 44 49 52 eaders:.$(SRCDIR
1b10: 29 2f 6d 61 6b 65 68 65 61 64 65 72 73 2e 63 0a )/makeheaders.c.
1b20: 09 24 28 58 42 43 43 29 20 2d 6f 20 24 28 4f 42 .$(XBCC) -o $(OB
1b30: 4a 44 49 52 29 2f 6d 61 6b 65 68 65 61 64 65 72 JDIR)/makeheader
1b40: 73 20 24 28 53 52 43 44 49 52 29 2f 6d 61 6b 65 s $(SRCDIR)/make
1b50: 68 65 61 64 65 72 73 2e 63 0a 0a 24 28 4f 42 4a headers.c..$(OBJ
1b60: 44 49 52 29 2f 6d 6b 69 6e 64 65 78 3a 09 24 28 DIR)/mkindex:.$(
1b70: 53 52 43 44 49 52 29 2f 6d 6b 69 6e 64 65 78 2e SRCDIR)/mkindex.
1b80: 63 0a 09 24 28 58 42 43 43 29 20 2d 6f 20 24 28 c..$(XBCC) -o $(
1b90: 4f 42 4a 44 49 52 29 2f 6d 6b 69 6e 64 65 78 20 OBJDIR)/mkindex
1ba0: 24 28 53 52 43 44 49 52 29 2f 6d 6b 69 6e 64 65 $(SRCDIR)/mkinde
1bb0: 78 2e 63 0a 0a 24 28 4f 42 4a 44 49 52 29 2f 6d x.c..$(OBJDIR)/m
1bc0: 6b 62 75 69 6c 74 69 6e 3a 09 24 28 53 52 43 44 kbuiltin:.$(SRCD
1bd0: 49 52 29 2f 6d 6b 62 75 69 6c 74 69 6e 2e 63 0a IR)/mkbuiltin.c.
1be0: 09 24 28 58 42 43 43 29 20 2d 6f 20 24 28 4f 42 .$(XBCC) -o $(OB
1bf0: 4a 44 49 52 29 2f 6d 6b 62 75 69 6c 74 69 6e 20 JDIR)/mkbuiltin
1c00: 24 28 53 52 43 44 49 52 29 2f 6d 6b 62 75 69 6c $(SRCDIR)/mkbuil
1c10: 74 69 6e 2e 63 0a 0a 24 28 4f 42 4a 44 49 52 29 tin.c..$(OBJDIR)
1c20: 2f 6d 6b 76 65 72 73 69 6f 6e 3a 09 24 28 53 52 /mkversion:.$(SR
1c30: 43 44 49 52 29 2f 6d 6b 76 65 72 73 69 6f 6e 2e CDIR)/mkversion.
1c40: 63 0a 09 24 28 58 42 43 43 29 20 2d 6f 20 24 28 c..$(XBCC) -o $(
1c50: 4f 42 4a 44 49 52 29 2f 6d 6b 76 65 72 73 69 6f OBJDIR)/mkversio
1c60: 6e 20 24 28 53 52 43 44 49 52 29 2f 6d 6b 76 65 n $(SRCDIR)/mkve
1c70: 72 73 69 6f 6e 2e 63 0a 0a 24 28 4f 42 4a 44 49 rsion.c..$(OBJDI
1c80: 52 29 2f 6d 6b 63 73 73 3a 09 24 28 53 52 43 44 R)/mkcss:.$(SRCD
1c90: 49 52 29 2f 6d 6b 63 73 73 2e 63 0a 09 24 28 58 IR)/mkcss.c..$(X
1ca0: 42 43 43 29 20 2d 6f 20 24 28 4f 42 4a 44 49 52 BCC) -o $(OBJDIR
1cb0: 29 2f 6d 6b 63 73 73 20 24 28 53 52 43 44 49 52 )/mkcss $(SRCDIR
1cc0: 29 2f 6d 6b 63 73 73 2e 63 0a 0a 24 28 4f 42 4a )/mkcss.c..$(OBJ
1cd0: 44 49 52 29 2f 63 6f 64 65 63 68 65 63 6b 31 3a DIR)/codecheck1:
1ce0: 09 24 28 53 52 43 44 49 52 29 2f 63 6f 64 65 63 .$(SRCDIR)/codec
1cf0: 68 65 63 6b 31 2e 63 0a 09 24 28 58 42 43 43 29 heck1.c..$(XBCC)
1d00: 20 2d 6f 20 24 28 4f 42 4a 44 49 52 29 2f 63 6f -o $(OBJDIR)/co
1d10: 64 65 63 68 65 63 6b 31 20 24 28 53 52 43 44 49 decheck1 $(SRCDI
1d20: 52 29 2f 63 6f 64 65 63 68 65 63 6b 31 2e 63 0a R)/codecheck1.c.
1d30: 0a 23 20 52 75 6e 20 74 68 65 20 74 65 73 74 20 .# Run the test
1d40: 73 75 69 74 65 2e 0a 23 20 4f 74 68 65 72 20 66 suite..# Other f
1d50: 6c 61 67 73 20 74 68 61 74 20 63 61 6e 20 62 65 lags that can be
1d60: 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 54 45 53 included in TES
1d70: 54 46 4c 41 47 53 20 61 72 65 3a 0a 23 0a 23 20 TFLAGS are:.#.#
1d80: 20 2d 68 61 6c 74 20 20 20 20 20 53 74 6f 70 20 -halt Stop
1d90: 74 65 73 74 69 6e 67 20 61 66 74 65 72 20 74 68 testing after th
1da0: 65 20 66 69 72 73 74 20 66 61 69 6c 65 64 20 74 e first failed t
1db0: 65 73 74 0a 23 20 20 2d 6b 65 65 70 20 20 20 20 est.# -keep
1dc0: 20 4b 65 65 70 20 74 68 65 20 74 65 6d 70 6f 72 Keep the tempor
1dd0: 61 72 79 20 77 6f 72 6b 73 70 61 63 65 20 66 6f ary workspace fo
1de0: 72 20 64 65 62 75 67 67 69 6e 67 0a 23 20 20 2d r debugging.# -
1df0: 70 72 6f 74 20 20 20 20 20 57 72 69 74 65 20 61 prot Write a
1e00: 20 64 65 74 61 69 6c 65 64 20 6c 6f 67 20 6f 66 detailed log of
1e10: 20 74 68 65 20 74 65 73 74 73 20 74 6f 20 74 68 the tests to th
1e20: 65 20 66 69 6c 65 20 2e 2f 70 72 6f 74 0a 23 20 e file ./prot.#
1e30: 20 2d 76 65 72 62 6f 73 65 20 20 49 6e 63 6c 75 -verbose Inclu
1e40: 64 65 20 65 76 65 6e 20 6d 6f 72 65 20 64 65 74 de even more det
1e50: 61 69 6c 73 20 69 6e 20 74 68 65 20 6f 75 74 70 ails in the outp
1e60: 75 74 0a 23 20 20 2d 71 75 69 65 74 20 20 20 20 ut.# -quiet
1e70: 48 69 64 65 20 6d 6f 73 74 20 6f 75 74 70 75 74 Hide most output
1e80: 20 66 72 6f 6d 20 74 68 65 20 74 65 72 6d 69 6e from the termin
1e90: 61 6c 0a 23 20 20 2d 73 74 72 69 63 74 20 20 20 al.# -strict
1ea0: 54 72 65 61 74 20 6b 6e 6f 77 6e 20 62 75 67 73 Treat known bugs
1eb0: 20 61 73 20 66 61 69 6c 75 72 65 73 0a 23 0a 23 as failures.#.#
1ec0: 20 54 45 53 54 46 4c 41 47 53 20 63 61 6e 20 61 TESTFLAGS can a
1ed0: 6c 73 6f 20 69 6e 63 6c 75 64 65 20 6e 61 6d 65 lso include name
1ee0: 73 20 6f 66 20 73 70 65 63 69 66 69 63 20 74 65 s of specific te
1ef0: 73 74 20 66 69 6c 65 73 20 74 6f 20 6c 69 6d 69 st files to limi
1f00: 74 0a 23 20 74 68 65 20 72 75 6e 20 74 6f 20 6a t.# the run to j
1f10: 75 73 74 20 74 68 6f 73 65 20 74 65 73 74 20 63 ust those test c
1f20: 61 73 65 73 2e 0a 23 0a 74 65 73 74 3a 09 24 28 ases..#.test:.$(
1f30: 4f 42 4a 44 49 52 29 20 24 28 41 50 50 4e 41 4d OBJDIR) $(APPNAM
1f40: 45 29 0a 09 24 28 54 43 4c 53 48 29 20 24 28 53 E)..$(TCLSH) $(S
1f50: 52 43 44 49 52 29 2f 2e 2e 2f 74 65 73 74 2f 74 RCDIR)/../test/t
1f60: 65 73 74 65 72 2e 74 63 6c 20 24 28 41 50 50 4e ester.tcl $(APPN
1f70: 41 4d 45 29 20 2d 71 75 69 65 74 20 24 28 54 45 AME) -quiet $(TE
1f80: 53 54 46 4c 41 47 53 29 0a 0a 24 28 4f 42 4a 44 STFLAGS)..$(OBJD
1f90: 49 52 29 2f 56 45 52 53 49 4f 4e 2e 68 3a 09 24 IR)/VERSION.h:.$
1fa0: 28 53 52 43 44 49 52 29 2f 2e 2e 2f 6d 61 6e 69 (SRCDIR)/../mani
1fb0: 66 65 73 74 2e 75 75 69 64 20 24 28 53 52 43 44 fest.uuid $(SRCD
1fc0: 49 52 29 2f 2e 2e 2f 6d 61 6e 69 66 65 73 74 20 IR)/../manifest
1fd0: 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 56 45 52 $(SRCDIR)/../VER
1fe0: 53 49 4f 4e 20 24 28 4f 42 4a 44 49 52 29 2f 6d SION $(OBJDIR)/m
1ff0: 6b 76 65 72 73 69 6f 6e 0a 09 24 28 4f 42 4a 44 kversion..$(OBJD
2000: 49 52 29 2f 6d 6b 76 65 72 73 69 6f 6e 20 24 28 IR)/mkversion $(
2010: 53 52 43 44 49 52 29 2f 2e 2e 2f 6d 61 6e 69 66 SRCDIR)/../manif
2020: 65 73 74 2e 75 75 69 64 20 5c 0a 09 09 24 28 53 est.uuid \...$(S
2030: 52 43 44 49 52 29 2f 2e 2e 2f 6d 61 6e 69 66 65 RCDIR)/../manife
2040: 73 74 20 5c 0a 09 09 24 28 53 52 43 44 49 52 29 st \...$(SRCDIR)
2050: 2f 2e 2e 2f 56 45 52 53 49 4f 4e 20 3e 24 28 4f /../VERSION >$(O
2060: 42 4a 44 49 52 29 2f 56 45 52 53 49 4f 4e 2e 68 BJDIR)/VERSION.h
2070: 0a 0a 24 28 4f 42 4a 44 49 52 29 2f 64 65 66 61 ..$(OBJDIR)/defa
2080: 75 6c 74 5f 63 73 73 2e 68 3a 09 24 28 53 52 43 ult_css.h:.$(SRC
2090: 44 49 52 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 DIR)/default_css
20a0: 2e 74 78 74 20 24 28 4f 42 4a 44 49 52 29 2f 6d .txt $(OBJDIR)/m
20b0: 6b 63 73 73 0a 09 24 28 4f 42 4a 44 49 52 29 2f kcss..$(OBJDIR)/
20c0: 6d 6b 63 73 73 20 24 28 53 52 43 44 49 52 29 2f mkcss $(SRCDIR)/
20d0: 64 65 66 61 75 6c 74 5f 63 73 73 2e 74 78 74 20 default_css.txt
20e0: 24 28 4f 42 4a 44 49 52 29 2f 64 65 66 61 75 6c $(OBJDIR)/defaul
20f0: 74 5f 63 73 73 2e 68 0a 0a 23 20 53 65 74 75 70 t_css.h..# Setup
2100: 20 74 68 65 20 6f 70 74 69 6f 6e 73 20 75 73 65 the options use
2110: 64 20 74 6f 20 63 6f 6d 70 69 6c 65 20 74 68 65 d to compile the
2120: 20 69 6e 63 6c 75 64 65 64 20 53 51 4c 69 74 65 included SQLite
2130: 20 6c 69 62 72 61 72 79 2e 0a 53 51 4c 49 54 45 library..SQLITE
2140: 5f 4f 50 54 49 4f 4e 53 20 3d 20 3c 3c 3c 53 51 _OPTIONS = <<<SQ
2150: 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 3e 3e 3e 0a LITE_OPTIONS>>>.
2160: 0a 23 20 53 65 74 75 70 20 74 68 65 20 6f 70 74 .# Setup the opt
2170: 69 6f 6e 73 20 75 73 65 64 20 74 6f 20 63 6f 6d ions used to com
2180: 70 69 6c 65 20 74 68 65 20 69 6e 63 6c 75 64 65 pile the include
2190: 64 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 2e 0a d SQLite shell..
21a0: 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 20 3d 20 SHELL_OPTIONS =
21b0: 3c 3c 3c 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 <<<SHELL_OPTIONS
21c0: 3e 3e 3e 0a 0a 23 20 53 65 74 75 70 20 74 68 65 >>>..# Setup the
21d0: 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 74 6f options used to
21e0: 20 63 6f 6d 70 69 6c 65 20 74 68 65 20 69 6e 63 compile the inc
21f0: 6c 75 64 65 64 20 6d 69 6e 69 7a 20 6c 69 62 72 luded miniz libr
2200: 61 72 79 2e 0a 4d 49 4e 49 5a 5f 4f 50 54 49 4f ary..MINIZ_OPTIO
2210: 4e 53 20 3d 20 3c 3c 3c 4d 49 4e 49 5a 5f 4f 50 NS = <<<MINIZ_OP
2220: 54 49 4f 4e 53 3e 3e 3e 0a 0a 23 20 54 68 65 20 TIONS>>>..# The
2230: 55 53 45 5f 53 59 53 54 45 4d 5f 53 51 4c 49 54 USE_SYSTEM_SQLIT
2240: 45 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 E variable may b
2250: 65 20 75 6e 64 65 66 69 6e 65 64 2c 20 73 65 74 e undefined, set
2260: 20 74 6f 20 30 2c 20 6f 72 20 73 65 74 0a 23 20 to 0, or set.#
2270: 74 6f 20 31 2e 20 49 66 20 69 74 20 69 73 20 73 to 1. If it is s
2280: 65 74 20 74 6f 20 31 2c 20 74 68 65 6e 20 74 68 et to 1, then th
2290: 65 72 65 20 69 73 20 6e 6f 20 6e 65 65 64 20 74 ere is no need t
22a0: 6f 20 62 75 69 6c 64 20 6f 72 20 6c 69 6e 6b 0a o build or link.
22b0: 23 20 74 68 65 20 73 71 6c 69 74 65 33 2e 6f 20 # the sqlite3.o
22c0: 6f 62 6a 65 63 74 2e 20 49 6e 73 74 65 61 64 2c object. Instead,
22d0: 20 74 68 65 20 73 79 73 74 65 6d 20 53 51 4c 69 the system SQLi
22e0: 74 65 20 77 69 6c 6c 20 62 65 20 6c 69 6e 6b 65 te will be linke
22f0: 64 0a 23 20 75 73 69 6e 67 20 2d 6c 73 71 6c 69 d.# using -lsqli
2300: 74 65 33 2e 0a 53 51 4c 49 54 45 33 5f 4f 42 4a te3..SQLITE3_OBJ
2310: 2e 30 20 3d 20 24 28 4f 42 4a 44 49 52 29 2f 73 .0 = $(OBJDIR)/s
2320: 71 6c 69 74 65 33 2e 6f 0a 53 51 4c 49 54 45 33 qlite3.o.SQLITE3
2330: 5f 4f 42 4a 2e 31 20 3d 0a 53 51 4c 49 54 45 33 _OBJ.1 =.SQLITE3
2340: 5f 4f 42 4a 2e 20 20 3d 20 24 28 53 51 4c 49 54 _OBJ. = $(SQLIT
2350: 45 33 5f 4f 42 4a 2e 30 29 0a 0a 23 20 54 68 65 E3_OBJ.0)..# The
2360: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d FOSSIL_ENABLE_M
2370: 49 4e 49 5a 20 76 61 72 69 61 62 6c 65 20 6d 61 INIZ variable ma
2380: 79 20 62 65 20 75 6e 64 65 66 69 6e 65 64 2c 20 y be undefined,
2390: 73 65 74 20 74 6f 20 30 2c 20 6f 72 0a 23 20 73 set to 0, or.# s
23a0: 65 74 20 74 6f 20 31 2e 20 20 49 66 20 69 74 20 et to 1. If it
23b0: 69 73 20 73 65 74 20 74 6f 20 31 2c 20 74 68 65 is set to 1, the
23c0: 20 6d 69 6e 69 7a 20 6c 69 62 72 61 72 79 20 69 miniz library i
23d0: 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 0a 23 ncluded in the.#
23e0: 20 73 6f 75 72 63 65 20 74 72 65 65 20 73 68 6f source tree sho
23f0: 75 6c 64 20 62 65 20 75 73 65 64 3b 20 6f 74 68 uld be used; oth
2400: 65 72 77 69 73 65 2c 20 69 74 20 73 68 6f 75 6c erwise, it shoul
2410: 64 20 6e 6f 74 2e 0a 4d 49 4e 49 5a 5f 4f 42 4a d not..MINIZ_OBJ
2420: 2e 30 20 3d 0a 4d 49 4e 49 5a 5f 4f 42 4a 2e 31 .0 =.MINIZ_OBJ.1
2430: 20 3d 20 24 28 4f 42 4a 44 49 52 29 2f 6d 69 6e = $(OBJDIR)/min
2440: 69 7a 2e 6f 0a 4d 49 4e 49 5a 5f 4f 42 4a 2e 20 iz.o.MINIZ_OBJ.
2450: 20 3d 20 24 28 4d 49 4e 49 5a 5f 4f 42 4a 2e 30 = $(MINIZ_OBJ.0
2460: 29 0a 0a 23 20 54 68 65 20 55 53 45 5f 4c 49 4e )..# The USE_LIN
2470: 45 4e 4f 49 53 45 20 76 61 72 69 61 62 6c 65 20 ENOISE variable
2480: 6d 61 79 20 62 65 20 75 6e 64 65 66 69 6e 65 64 may be undefined
2490: 2c 20 73 65 74 20 74 6f 20 30 2c 20 6f 72 20 73 , set to 0, or s
24a0: 65 74 0a 23 20 74 6f 20 31 2e 20 49 66 20 69 74 et.# to 1. If it
24b0: 20 69 73 20 73 65 74 20 74 6f 20 30 2c 20 74 68 is set to 0, th
24c0: 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6e en there is no n
24d0: 65 65 64 20 74 6f 20 62 75 69 6c 64 20 6f 72 20 eed to build or
24e0: 6c 69 6e 6b 0a 23 20 74 68 65 20 6c 69 6e 65 6e link.# the linen
24f0: 6f 69 73 65 2e 6f 20 6f 62 6a 65 63 74 2e 0a 4c oise.o object..L
2500: 49 4e 45 4e 4f 49 53 45 5f 44 45 46 2e 30 20 3d INENOISE_DEF.0 =
2510: 0a 4c 49 4e 45 4e 4f 49 53 45 5f 44 45 46 2e 31 .LINENOISE_DEF.1
2520: 20 3d 20 2d 44 48 41 56 45 5f 4c 49 4e 45 4e 4f = -DHAVE_LINENO
2530: 49 53 45 0a 4c 49 4e 45 4e 4f 49 53 45 5f 44 45 ISE.LINENOISE_DE
2540: 46 2e 20 20 3d 20 24 28 4c 49 4e 45 4e 4f 49 53 F. = $(LINENOIS
2550: 45 5f 44 45 46 2e 30 29 0a 4c 49 4e 45 4e 4f 49 E_DEF.0).LINENOI
2560: 53 45 5f 4f 42 4a 2e 30 20 3d 0a 4c 49 4e 45 4e SE_OBJ.0 =.LINEN
2570: 4f 49 53 45 5f 4f 42 4a 2e 31 20 3d 20 24 28 4f OISE_OBJ.1 = $(O
2580: 42 4a 44 49 52 29 2f 6c 69 6e 65 6e 6f 69 73 65 BJDIR)/linenoise
2590: 2e 6f 0a 4c 49 4e 45 4e 4f 49 53 45 5f 4f 42 4a .o.LINENOISE_OBJ
25a0: 2e 20 20 3d 20 24 28 4c 49 4e 45 4e 4f 49 53 45 . = $(LINENOISE
25b0: 5f 4f 42 4a 2e 30 29 0a 0a 23 20 54 68 65 20 55 _OBJ.0)..# The U
25c0: 53 45 5f 53 45 45 20 76 61 72 69 61 62 6c 65 20 SE_SEE variable
25d0: 6d 61 79 20 62 65 20 75 6e 64 65 66 69 6e 65 64 may be undefined
25e0: 2c 20 30 20 6f 72 20 31 2e 20 20 49 66 20 75 6e , 0 or 1. If un
25f0: 64 65 66 69 6e 65 64 20 6f 72 0a 23 20 30 2c 20 defined or.# 0,
2600: 6f 72 64 69 6e 61 72 79 20 53 51 4c 69 74 65 20 ordinary SQLite
2610: 69 73 20 75 73 65 64 2e 20 20 49 66 20 31 2c 20 is used. If 1,
2620: 74 68 65 6e 20 73 71 6c 69 74 65 33 2d 73 65 65 then sqlite3-see
2630: 2e 63 20 28 6e 6f 74 20 70 61 72 74 20 6f 66 0a .c (not part of.
2640: 23 20 74 68 65 20 73 6f 75 72 63 65 20 74 72 65 # the source tre
2650: 65 29 20 69 73 20 75 73 65 64 20 61 6e 64 20 65 e) is used and e
2660: 78 74 72 61 20 66 6c 61 67 73 20 61 72 65 20 70 xtra flags are p
2670: 72 6f 76 69 64 65 64 20 74 6f 20 65 6e 61 62 6c rovided to enabl
2680: 65 0a 23 20 74 68 65 20 53 51 4c 69 74 65 20 45 e.# the SQLite E
2690: 6e 63 72 79 70 74 69 6f 6e 20 45 78 74 65 6e 73 ncryption Extens
26a0: 69 6f 6e 2e 0a 53 51 4c 49 54 45 33 5f 53 52 43 ion..SQLITE3_SRC
26b0: 2e 30 20 3d 20 73 71 6c 69 74 65 33 2e 63 0a 53 .0 = sqlite3.c.S
26c0: 51 4c 49 54 45 33 5f 53 52 43 2e 31 20 3d 20 73 QLITE3_SRC.1 = s
26d0: 71 6c 69 74 65 33 2d 73 65 65 2e 63 0a 53 51 4c qlite3-see.c.SQL
26e0: 49 54 45 33 5f 53 52 43 2e 20 3d 20 73 71 6c 69 ITE3_SRC. = sqli
26f0: 74 65 33 2e 63 0a 53 51 4c 49 54 45 33 5f 53 52 te3.c.SQLITE3_SR
2700: 43 20 3d 20 24 28 53 52 43 44 49 52 29 2f 24 28 C = $(SRCDIR)/$(
2710: 53 51 4c 49 54 45 33 5f 53 52 43 2e 24 28 55 53 SQLITE3_SRC.$(US
2720: 45 5f 53 45 45 29 29 0a 53 51 4c 49 54 45 33 5f E_SEE)).SQLITE3_
2730: 53 48 45 4c 4c 5f 53 52 43 2e 30 20 3d 20 73 68 SHELL_SRC.0 = sh
2740: 65 6c 6c 2e 63 0a 53 51 4c 49 54 45 33 5f 53 48 ell.c.SQLITE3_SH
2750: 45 4c 4c 5f 53 52 43 2e 31 20 3d 20 73 68 65 6c ELL_SRC.1 = shel
2760: 6c 2d 73 65 65 2e 63 0a 53 51 4c 49 54 45 33 5f l-see.c.SQLITE3_
2770: 53 48 45 4c 4c 5f 53 52 43 2e 20 3d 20 73 68 65 SHELL_SRC. = she
2780: 6c 6c 2e 63 0a 53 51 4c 49 54 45 33 5f 53 48 45 ll.c.SQLITE3_SHE
2790: 4c 4c 5f 53 52 43 20 3d 20 24 28 53 52 43 44 49 LL_SRC = $(SRCDI
27a0: 52 29 2f 24 28 53 51 4c 49 54 45 33 5f 53 48 45 R)/$(SQLITE3_SHE
27b0: 4c 4c 5f 53 52 43 2e 24 28 55 53 45 5f 53 45 45 LL_SRC.$(USE_SEE
27c0: 29 29 0a 53 45 45 5f 46 4c 41 47 53 2e 30 20 3d )).SEE_FLAGS.0 =
27d0: 0a 53 45 45 5f 46 4c 41 47 53 2e 31 20 3d 20 2d .SEE_FLAGS.1 = -
27e0: 44 53 51 4c 49 54 45 5f 48 41 53 5f 43 4f 44 45 DSQLITE_HAS_CODE
27f0: 43 20 2d 44 53 51 4c 49 54 45 5f 53 48 45 4c 4c C -DSQLITE_SHELL
2800: 5f 44 42 4b 45 59 5f 50 52 4f 43 3d 66 6f 73 73 _DBKEY_PROC=foss
2810: 69 6c 5f 6b 65 79 0a 53 45 45 5f 46 4c 41 47 53 il_key.SEE_FLAGS
2820: 2e 20 3d 0a 53 45 45 5f 46 4c 41 47 53 20 3d 20 . =.SEE_FLAGS =
2830: 24 28 53 45 45 5f 46 4c 41 47 53 2e 24 28 55 53 $(SEE_FLAGS.$(US
2840: 45 5f 53 45 45 29 29 0a 7d 5d 0a 0a 77 72 69 74 E_SEE)).}]..writ
2850: 65 6c 6e 20 5b 73 74 72 69 6e 67 20 6d 61 70 20 eln [string map
2860: 5b 6c 69 73 74 20 3c 3c 3c 4e 45 58 54 5f 4c 49 [list <<<NEXT_LI
2870: 4e 45 3e 3e 3e 20 5c 5c 5d 20 7b 0a 45 58 54 52 NE>>> \\] {.EXTR
2880: 41 4f 42 4a 20 3d 20 3c 3c 3c 4e 45 58 54 5f 4c AOBJ = <<<NEXT_L
2890: 49 4e 45 3e 3e 3e 0a 20 24 28 53 51 4c 49 54 45 INE>>>. $(SQLITE
28a0: 33 5f 4f 42 4a 2e 24 28 55 53 45 5f 53 59 53 54 3_OBJ.$(USE_SYST
28b0: 45 4d 5f 53 51 4c 49 54 45 29 29 20 3c 3c 3c 4e EM_SQLITE)) <<<N
28c0: 45 58 54 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 28 4d EXT_LINE>>>. $(M
28d0: 49 4e 49 5a 5f 4f 42 4a 2e 24 28 46 4f 53 53 49 INIZ_OBJ.$(FOSSI
28e0: 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 29 29 L_ENABLE_MINIZ))
28f0: 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e 3e <<<NEXT_LINE>>>
2900: 0a 20 24 28 4c 49 4e 45 4e 4f 49 53 45 5f 4f 42 . $(LINENOISE_OB
2910: 4a 2e 24 28 55 53 45 5f 4c 49 4e 45 4e 4f 49 53 J.$(USE_LINENOIS
2920: 45 29 29 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 E)) <<<NEXT_LINE
2930: 3e 3e 3e 0a 20 24 28 4f 42 4a 44 49 52 29 2f 73 >>>. $(OBJDIR)/s
2940: 68 65 6c 6c 2e 6f 20 3c 3c 3c 4e 45 58 54 5f 4c hell.o <<<NEXT_L
2950: 49 4e 45 3e 3e 3e 0a 20 24 28 4f 42 4a 44 49 52 INE>>>. $(OBJDIR
2960: 29 2f 74 68 2e 6f 20 3c 3c 3c 4e 45 58 54 5f 4c )/th.o <<<NEXT_L
2970: 49 4e 45 3e 3e 3e 0a 20 24 28 4f 42 4a 44 49 52 INE>>>. $(OBJDIR
2980: 29 2f 74 68 5f 6c 61 6e 67 2e 6f 20 3c 3c 3c 4e )/th_lang.o <<<N
2990: 45 58 54 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 28 4f EXT_LINE>>>. $(O
29a0: 42 4a 44 49 52 29 2f 74 68 5f 74 63 6c 2e 6f 20 BJDIR)/th_tcl.o
29b0: 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e 3e 0a <<<NEXT_LINE>>>.
29c0: 20 24 28 4f 42 4a 44 49 52 29 2f 63 73 6f 6e 5f $(OBJDIR)/cson_
29d0: 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 6f 0a 7d amalgamation.o.}
29e0: 5d 0a 0a 77 72 69 74 65 6c 6e 20 7b 0a 24 28 41 ]..writeln {.$(A
29f0: 50 50 4e 41 4d 45 29 3a 09 24 28 4f 42 4a 44 49 PPNAME):.$(OBJDI
2a00: 52 29 2f 68 65 61 64 65 72 73 20 24 28 4f 42 4a R)/headers $(OBJ
2a10: 44 49 52 29 2f 63 6f 64 65 63 68 65 63 6b 31 20 DIR)/codecheck1
2a20: 24 28 4f 42 4a 29 20 24 28 45 58 54 52 41 4f 42 $(OBJ) $(EXTRAOB
2a30: 4a 29 0a 09 24 28 4f 42 4a 44 49 52 29 2f 63 6f J)..$(OBJDIR)/co
2a40: 64 65 63 68 65 63 6b 31 20 24 28 54 52 41 4e 53 decheck1 $(TRANS
2a50: 5f 53 52 43 29 0a 09 24 28 54 43 43 29 20 2d 6f _SRC)..$(TCC) -o
2a60: 20 24 28 41 50 50 4e 41 4d 45 29 20 24 28 4f 42 $(APPNAME) $(OB
2a70: 4a 29 20 24 28 45 58 54 52 41 4f 42 4a 29 20 24 J) $(EXTRAOBJ) $
2a80: 28 4c 49 42 29 0a 0a 23 20 54 68 69 73 20 72 75 (LIB)..# This ru
2a90: 6c 65 20 70 72 65 76 65 6e 74 73 20 6d 61 6b 65 le prevents make
2aa0: 20 66 72 6f 6d 20 75 73 69 6e 67 20 69 74 73 20 from using its
2ab0: 64 65 66 61 75 6c 74 20 72 75 6c 65 73 20 74 6f default rules to
2ac0: 20 74 72 79 20 62 75 69 6c 64 0a 23 20 61 6e 20 try build.# an
2ad0: 65 78 65 63 75 74 61 62 6c 65 20 6e 61 6d 65 64 executable named
2ae0: 20 22 6d 61 6e 69 66 65 73 74 22 20 6f 75 74 20 "manifest" out
2af0: 6f 66 20 74 68 65 20 66 69 6c 65 20 6e 61 6d 65 of the file name
2b00: 64 20 22 6d 61 6e 69 66 65 73 74 2e 63 22 0a 23 d "manifest.c".#
2b10: 0a 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 6d 61 .$(SRCDIR)/../ma
2b20: 6e 69 66 65 73 74 3a 0a 09 23 20 6e 6f 6f 70 0a nifest:..# noop.
2b30: 0a 63 6c 65 61 6e 3a 0a 09 72 6d 20 2d 72 66 20 .clean:..rm -rf
2b40: 24 28 4f 42 4a 44 49 52 29 2f 2a 20 24 28 41 50 $(OBJDIR)/* $(AP
2b50: 50 4e 41 4d 45 29 0a 0a 7d 0a 0a 73 65 74 20 6d PNAME)..}..set m
2b60: 68 61 72 67 73 20 7b 7d 0a 66 6f 72 65 61 63 68 hargs {}.foreach
2b70: 20 73 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 s [lsort $src]
2b80: 7b 0a 20 20 61 70 70 65 6e 64 20 6d 68 61 72 67 {. append mharg
2b90: 73 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b s "\$(OBJDIR)/${
2ba0: 73 7d 5f 2e 63 3a 5c 24 28 4f 42 4a 44 49 52 29 s}_.c:\$(OBJDIR)
2bb0: 2f 24 73 2e 68 20 3c 3c 3c 4e 45 58 54 5f 4c 49 /$s.h <<<NEXT_LI
2bc0: 4e 45 3e 3e 3e 22 0a 20 20 73 65 74 20 65 78 74 NE>>>". set ext
2bd0: 72 61 5f 68 28 24 73 29 20 7b 20 7d 0a 7d 0a 61 ra_h($s) { }.}.a
2be0: 70 70 65 6e 64 20 6d 68 61 72 67 73 20 22 5c 24 ppend mhargs "\$
2bf0: 28 53 52 43 44 49 52 29 2f 73 71 6c 69 74 65 33 (SRCDIR)/sqlite3
2c00: 2e 68 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e .h <<<NEXT_LINE>
2c10: 3e 3e 22 0a 61 70 70 65 6e 64 20 6d 68 61 72 67 >>".append mharg
2c20: 73 20 22 5c 24 28 53 52 43 44 49 52 29 2f 74 68 s "\$(SRCDIR)/th
2c30: 2e 68 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e .h <<<NEXT_LINE>
2c40: 3e 3e 22 0a 23 61 70 70 65 6e 64 20 6d 68 61 72 >>".#append mhar
2c50: 67 73 20 22 5c 24 28 53 52 43 44 49 52 29 2f 63 gs "\$(SRCDIR)/c
2c60: 73 6f 6e 5f 61 6d 61 6c 67 61 6d 61 74 69 6f 6e son_amalgamation
2c70: 2e 68 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e .h <<<NEXT_LINE>
2c80: 3e 3e 22 0a 61 70 70 65 6e 64 20 6d 68 61 72 67 >>".append mharg
2c90: 73 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 56 45 s "\$(OBJDIR)/VE
2ca0: 52 53 49 4f 4e 2e 68 20 22 0a 73 65 74 20 6d 68 RSION.h ".set mh
2cb0: 61 72 67 73 20 5b 73 74 72 69 6e 67 20 6d 61 70 args [string map
2cc0: 20 5b 6c 69 73 74 20 3c 3c 3c 4e 45 58 54 5f 4c [list <<<NEXT_L
2cd0: 49 4e 45 3e 3e 3e 20 5c 5c 5c 6e 5c 74 5d 20 24 INE>>> \\\n\t] $
2ce0: 6d 68 61 72 67 73 5d 0a 77 72 69 74 65 6c 6e 20 mhargs].writeln
2cf0: 22 5c 24 28 4f 42 4a 44 49 52 29 2f 70 61 67 65 "\$(OBJDIR)/page
2d00: 5f 69 6e 64 65 78 2e 68 3a 20 5c 24 28 54 52 41 _index.h: \$(TRA
2d10: 4e 53 5f 53 52 43 29 20 5c 24 28 4f 42 4a 44 49 NS_SRC) \$(OBJDI
2d20: 52 29 2f 6d 6b 69 6e 64 65 78 22 0a 77 72 69 74 R)/mkindex".writ
2d30: 65 6c 6e 20 22 5c 74 5c 24 28 4f 42 4a 44 49 52 eln "\t\$(OBJDIR
2d40: 29 2f 6d 6b 69 6e 64 65 78 20 5c 24 28 54 52 41 )/mkindex \$(TRA
2d50: 4e 53 5f 53 52 43 29 20 3e 5c 24 40 5c 6e 22 0a NS_SRC) >\$@\n".
2d60: 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a .writeln "\$(OBJ
2d70: 44 49 52 29 2f 62 75 69 6c 74 69 6e 5f 64 61 74 DIR)/builtin_dat
2d80: 61 2e 68 3a 20 5c 24 28 4f 42 4a 44 49 52 29 2f a.h: \$(OBJDIR)/
2d90: 6d 6b 62 75 69 6c 74 69 6e 20 5c 24 28 45 58 54 mkbuiltin \$(EXT
2da0: 52 41 5f 46 49 4c 45 53 29 22 0a 77 72 69 74 65 RA_FILES)".write
2db0: 6c 6e 20 22 5c 74 5c 24 28 4f 42 4a 44 49 52 29 ln "\t\$(OBJDIR)
2dc0: 2f 6d 6b 62 75 69 6c 74 69 6e 20 2d 2d 70 72 65 /mkbuiltin --pre
2dd0: 66 69 78 20 5c 24 28 53 52 43 44 49 52 29 2f 20 fix \$(SRCDIR)/
2de0: 5c 24 28 45 58 54 52 41 5f 46 49 4c 45 53 29 20 \$(EXTRA_FILES)
2df0: 3e 5c 24 40 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e >\$@\n"..writeln
2e00: 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 68 65 61 "\$(OBJDIR)/hea
2e10: 64 65 72 73 3a 5c 74 5c 24 28 4f 42 4a 44 49 52 ders:\t\$(OBJDIR
2e20: 29 2f 70 61 67 65 5f 69 6e 64 65 78 2e 68 20 5c )/page_index.h \
2e30: 24 28 4f 42 4a 44 49 52 29 2f 62 75 69 6c 74 69 $(OBJDIR)/builti
2e40: 6e 5f 64 61 74 61 2e 68 20 5c 24 28 4f 42 4a 44 n_data.h \$(OBJD
2e50: 49 52 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 2e IR)/default_css.
2e60: 68 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6d 61 6b h \$(OBJDIR)/mak
2e70: 65 68 65 61 64 65 72 73 20 5c 24 28 4f 42 4a 44 eheaders \$(OBJD
2e80: 49 52 29 2f 56 45 52 53 49 4f 4e 2e 68 22 0a 77 IR)/VERSION.h".w
2e90: 72 69 74 65 6c 6e 20 22 5c 74 5c 24 28 4f 42 4a riteln "\t\$(OBJ
2ea0: 44 49 52 29 2f 6d 61 6b 65 68 65 61 64 65 72 73 DIR)/makeheaders
2eb0: 20 24 6d 68 61 72 67 73 22 0a 77 72 69 74 65 6c $mhargs".writel
2ec0: 6e 20 22 5c 74 74 6f 75 63 68 20 5c 24 28 4f 42 n "\ttouch \$(OB
2ed0: 4a 44 49 52 29 2f 68 65 61 64 65 72 73 22 0a 77 JDIR)/headers".w
2ee0: 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 riteln "\$(OBJDI
2ef0: 52 29 2f 68 65 61 64 65 72 73 3a 20 4d 61 6b 65 R)/headers: Make
2f00: 66 69 6c 65 22 0a 77 72 69 74 65 6c 6e 20 22 5c file".writeln "\
2f10: 24 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 2e 6f $(OBJDIR)/json.o
2f20: 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e \$(OBJDIR)/json
2f30: 5f 61 72 74 69 66 61 63 74 2e 6f 20 5c 24 28 4f _artifact.o \$(O
2f40: 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 62 72 61 6e BJDIR)/json_bran
2f50: 63 68 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f ch.o \$(OBJDIR)/
2f60: 6a 73 6f 6e 5f 63 6f 6e 66 69 67 2e 6f 20 5c 24 json_config.o \$
2f70: 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 64 69 (OBJDIR)/json_di
2f80: 66 66 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f ff.o \$(OBJDIR)/
2f90: 6a 73 6f 6e 5f 64 69 72 2e 6f 20 5c 24 28 4f 42 json_dir.o \$(OB
2fa0: 4a 44 49 52 29 2f 6a 73 6f 6e 5f 66 69 6e 66 6f JDIR)/json_finfo
2fb0: 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 .o \$(OBJDIR)/js
2fc0: 6f 6e 5f 6c 6f 67 69 6e 2e 6f 20 5c 24 28 4f 42 on_login.o \$(OB
2fd0: 4a 44 49 52 29 2f 6a 73 6f 6e 5f 71 75 65 72 79 JDIR)/json_query
2fe0: 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 .o \$(OBJDIR)/js
2ff0: 6f 6e 5f 72 65 70 6f 72 74 2e 6f 20 5c 24 28 4f on_report.o \$(O
3000: 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 73 74 61 74 BJDIR)/json_stat
3010: 75 73 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f us.o \$(OBJDIR)/
3020: 6a 73 6f 6e 5f 74 61 67 2e 6f 20 5c 24 28 4f 42 json_tag.o \$(OB
3030: 4a 44 49 52 29 2f 6a 73 6f 6e 5f 74 69 6d 65 6c JDIR)/json_timel
3040: 69 6e 65 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 ine.o \$(OBJDIR)
3050: 2f 6a 73 6f 6e 5f 75 73 65 72 2e 6f 20 5c 24 28 /json_user.o \$(
3060: 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 77 69 6b OBJDIR)/json_wik
3070: 69 2e 6f 20 3a 20 5c 24 28 53 52 43 44 49 52 29 i.o : \$(SRCDIR)
3080: 2f 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 22 0a /json_detail.h".
3090: 77 72 69 74 65 6c 6e 20 22 4d 61 6b 65 66 69 6c writeln "Makefil
30a0: 65 3a 22 0a 73 65 74 20 65 78 74 72 61 5f 68 28 e:".set extra_h(
30b0: 64 69 73 70 61 74 63 68 29 20 22 20 5c 24 28 4f dispatch) " \$(O
30c0: 42 4a 44 49 52 29 2f 70 61 67 65 5f 69 6e 64 65 BJDIR)/page_inde
30d0: 78 2e 68 20 22 0a 73 65 74 20 65 78 74 72 61 5f x.h ".set extra_
30e0: 68 28 62 75 69 6c 74 69 6e 29 20 22 20 5c 24 28 h(builtin) " \$(
30f0: 4f 42 4a 44 49 52 29 2f 62 75 69 6c 74 69 6e 5f OBJDIR)/builtin_
3100: 64 61 74 61 2e 68 20 22 0a 73 65 74 20 65 78 74 data.h ".set ext
3110: 72 61 5f 68 28 73 74 79 6c 65 29 20 22 20 5c 24 ra_h(style) " \$
3120: 28 4f 42 4a 44 49 52 29 2f 64 65 66 61 75 6c 74 (OBJDIR)/default
3130: 5f 63 73 73 2e 68 20 22 0a 0a 66 6f 72 65 61 63 _css.h "..foreac
3140: 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d h s [lsort $src]
3150: 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 24 {. writeln "\$
3160: 28 4f 42 4a 44 49 52 29 2f 24 7b 73 7d 5f 2e 63 (OBJDIR)/${s}_.c
3170: 3a 5c 74 5c 24 28 53 52 43 44 49 52 29 2f 24 73 :\t\$(SRCDIR)/$s
3180: 2e 63 20 5c 24 28 4f 42 4a 44 49 52 29 2f 74 72 .c \$(OBJDIR)/tr
3190: 61 6e 73 6c 61 74 65 22 0a 20 20 77 72 69 74 65 anslate". write
31a0: 6c 6e 20 22 5c 74 5c 24 28 4f 42 4a 44 49 52 29 ln "\t\$(OBJDIR)
31b0: 2f 74 72 61 6e 73 6c 61 74 65 20 5c 24 28 53 52 /translate \$(SR
31c0: 43 44 49 52 29 2f 24 73 2e 63 20 3e 5c 24 40 5c CDIR)/$s.c >\$@\
31d0: 6e 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 24 n". writeln "\$
31e0: 28 4f 42 4a 44 49 52 29 2f 24 73 2e 6f 3a 5c 74 (OBJDIR)/$s.o:\t
31f0: 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b 73 7d 5f \$(OBJDIR)/${s}_
3200: 2e 63 20 5c 24 28 4f 42 4a 44 49 52 29 2f 24 73 .c \$(OBJDIR)/$s
3210: 2e 68 24 65 78 74 72 61 5f 68 28 24 73 29 5c 24 .h$extra_h($s)\$
3220: 28 53 52 43 44 49 52 29 2f 63 6f 6e 66 69 67 2e (SRCDIR)/config.
3230: 68 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 74 h". writeln "\t
3240: 5c 24 28 58 54 43 43 29 20 2d 6f 20 5c 24 28 4f \$(XTCC) -o \$(O
3250: 42 4a 44 49 52 29 2f 24 73 2e 6f 20 2d 63 20 5c BJDIR)/$s.o -c \
3260: 24 28 4f 42 4a 44 49 52 29 2f 24 7b 73 7d 5f 2e $(OBJDIR)/${s}_.
3270: 63 5c 6e 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 c\n". writeln "
3280: 5c 24 28 4f 42 4a 44 49 52 29 2f 24 73 2e 68 3a \$(OBJDIR)/$s.h:
3290: 5c 74 5c 24 28 4f 42 4a 44 49 52 29 2f 68 65 61 \t\$(OBJDIR)/hea
32a0: 64 65 72 73 5c 6e 22 0a 7d 0a 0a 77 72 69 74 65 ders\n".}..write
32b0: 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 73 ln "\$(OBJDIR)/s
32c0: 71 6c 69 74 65 33 2e 6f 3a 5c 74 5c 24 28 53 51 qlite3.o:\t\$(SQ
32d0: 4c 49 54 45 33 5f 53 52 43 29 22 0a 77 72 69 74 LITE3_SRC)".writ
32e0: 65 6c 6e 20 22 5c 74 5c 24 28 58 54 43 43 29 20 eln "\t\$(XTCC)
32f0: 5c 24 28 53 51 4c 49 54 45 5f 4f 50 54 49 4f 4e \$(SQLITE_OPTION
3300: 53 29 20 5c 24 28 53 51 4c 49 54 45 5f 43 46 4c S) \$(SQLITE_CFL
3310: 41 47 53 29 20 5c 24 28 53 45 45 5f 46 4c 41 47 AGS) \$(SEE_FLAG
3320: 53 29 20 5c 5c 22 0a 77 72 69 74 65 6c 6e 20 22 S) \\".writeln "
3330: 5c 74 5c 74 2d 63 20 5c 24 28 53 51 4c 49 54 45 \t\t-c \$(SQLITE
3340: 33 5f 53 52 43 29 20 2d 6f 20 5c 24 40 22 0a 0a 3_SRC) -o \$@"..
3350: 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 writeln "\$(OBJD
3360: 49 52 29 2f 73 68 65 6c 6c 2e 6f 3a 5c 74 5c 24 IR)/shell.o:\t\$
3370: 28 53 51 4c 49 54 45 33 5f 53 48 45 4c 4c 5f 53 (SQLITE3_SHELL_S
3380: 52 43 29 20 5c 24 28 53 52 43 44 49 52 29 2f 73 RC) \$(SRCDIR)/s
3390: 71 6c 69 74 65 33 2e 68 22 0a 77 72 69 74 65 6c qlite3.h".writel
33a0: 6e 20 22 5c 74 5c 24 28 58 54 43 43 29 20 5c 24 n "\t\$(XTCC) \$
33b0: 28 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 29 20 (SHELL_OPTIONS)
33c0: 5c 24 28 53 48 45 4c 4c 5f 43 46 4c 41 47 53 29 \$(SHELL_CFLAGS)
33d0: 20 5c 24 28 53 45 45 5f 46 4c 41 47 53 29 20 5c \$(SEE_FLAGS) \
33e0: 24 28 4c 49 4e 45 4e 4f 49 53 45 5f 44 45 46 2e $(LINENOISE_DEF.
33f0: 5c 24 28 55 53 45 5f 4c 49 4e 45 4e 4f 49 53 45 \$(USE_LINENOISE
3400: 29 29 20 2d 63 20 5c 24 28 53 51 4c 49 54 45 33 )) -c \$(SQLITE3
3410: 5f 53 48 45 4c 4c 5f 53 52 43 29 20 2d 6f 20 5c _SHELL_SRC) -o \
3420: 24 40 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 22 $@\n"..writeln "
3430: 5c 24 28 4f 42 4a 44 49 52 29 2f 6c 69 6e 65 6e \$(OBJDIR)/linen
3440: 6f 69 73 65 2e 6f 3a 5c 74 5c 24 28 53 52 43 44 oise.o:\t\$(SRCD
3450: 49 52 29 2f 6c 69 6e 65 6e 6f 69 73 65 2e 63 20 IR)/linenoise.c
3460: 5c 24 28 53 52 43 44 49 52 29 2f 6c 69 6e 65 6e \$(SRCDIR)/linen
3470: 6f 69 73 65 2e 68 22 0a 77 72 69 74 65 6c 6e 20 oise.h".writeln
3480: 22 5c 74 5c 24 28 58 54 43 43 29 20 2d 63 20 5c "\t\$(XTCC) -c \
3490: 24 28 53 52 43 44 49 52 29 2f 6c 69 6e 65 6e 6f $(SRCDIR)/lineno
34a0: 69 73 65 2e 63 20 2d 6f 20 5c 24 40 5c 6e 22 0a ise.c -o \$@\n".
34b0: 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a .writeln "\$(OBJ
34c0: 44 49 52 29 2f 74 68 2e 6f 3a 5c 74 5c 24 28 53 DIR)/th.o:\t\$(S
34d0: 52 43 44 49 52 29 2f 74 68 2e 63 22 0a 77 72 69 RCDIR)/th.c".wri
34e0: 74 65 6c 6e 20 22 5c 74 5c 24 28 58 54 43 43 29 teln "\t\$(XTCC)
34f0: 20 2d 63 20 5c 24 28 53 52 43 44 49 52 29 2f 74 -c \$(SRCDIR)/t
3500: 68 2e 63 20 2d 6f 20 5c 24 40 5c 6e 22 0a 0a 77 h.c -o \$@\n"..w
3510: 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 riteln "\$(OBJDI
3520: 52 29 2f 74 68 5f 6c 61 6e 67 2e 6f 3a 5c 74 5c R)/th_lang.o:\t\
3530: 24 28 53 52 43 44 49 52 29 2f 74 68 5f 6c 61 6e $(SRCDIR)/th_lan
3540: 67 2e 63 22 0a 77 72 69 74 65 6c 6e 20 22 5c 74 g.c".writeln "\t
3550: 5c 24 28 58 54 43 43 29 20 2d 63 20 5c 24 28 53 \$(XTCC) -c \$(S
3560: 52 43 44 49 52 29 2f 74 68 5f 6c 61 6e 67 2e 63 RCDIR)/th_lang.c
3570: 20 2d 6f 20 5c 24 40 5c 6e 22 0a 0a 77 72 69 74 -o \$@\n"..writ
3580: 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f eln "\$(OBJDIR)/
3590: 74 68 5f 74 63 6c 2e 6f 3a 5c 74 5c 24 28 53 52 th_tcl.o:\t\$(SR
35a0: 43 44 49 52 29 2f 74 68 5f 74 63 6c 2e 63 22 0a CDIR)/th_tcl.c".
35b0: 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 28 58 54 writeln "\t\$(XT
35c0: 43 43 29 20 2d 63 20 5c 24 28 53 52 43 44 49 52 CC) -c \$(SRCDIR
35d0: 29 2f 74 68 5f 74 63 6c 2e 63 20 2d 6f 20 5c 24 )/th_tcl.c -o \$
35e0: 40 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 7b 0a @\n"..writeln {.
35f0: 24 28 4f 42 4a 44 49 52 29 2f 6d 69 6e 69 7a 2e $(OBJDIR)/miniz.
3600: 6f 3a 09 24 28 53 52 43 44 49 52 29 2f 6d 69 6e o:.$(SRCDIR)/min
3610: 69 7a 2e 63 0a 09 24 28 58 54 43 43 29 20 24 28 iz.c..$(XTCC) $(
3620: 4d 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 29 20 2d MINIZ_OPTIONS) -
3630: 63 20 24 28 53 52 43 44 49 52 29 2f 6d 69 6e 69 c $(SRCDIR)/mini
3640: 7a 2e 63 20 2d 6f 20 24 40 0a 0a 24 28 4f 42 4a z.c -o $@..$(OBJ
3650: 44 49 52 29 2f 63 73 6f 6e 5f 61 6d 61 6c 67 61 DIR)/cson_amalga
3660: 6d 61 74 69 6f 6e 2e 6f 3a 20 24 28 53 52 43 44 mation.o: $(SRCD
3670: 49 52 29 2f 63 73 6f 6e 5f 61 6d 61 6c 67 61 6d IR)/cson_amalgam
3680: 61 74 69 6f 6e 2e 63 0a 09 24 28 58 54 43 43 29 ation.c..$(XTCC)
3690: 20 2d 63 20 24 28 53 52 43 44 49 52 29 2f 63 73 -c $(SRCDIR)/cs
36a0: 6f 6e 5f 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e on_amalgamation.
36b0: 63 20 2d 6f 20 24 40 0a 0a 23 0a 23 20 54 68 65 c -o $@..#.# The
36c0: 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 74 68 65 list of all the
36d0: 20 74 61 72 67 65 74 73 20 74 68 61 74 20 64 6f targets that do
36e0: 20 6e 6f 74 20 63 6f 72 72 65 73 70 6f 6e 64 20 not correspond
36f0: 74 6f 20 72 65 61 6c 20 66 69 6c 65 73 2e 20 54 to real files. T
3700: 68 69 73 20 73 74 6f 70 73 0a 23 20 27 6d 61 6b his stops.# 'mak
3710: 65 27 20 66 72 6f 6d 20 67 65 74 74 69 6e 67 20 e' from getting
3720: 63 6f 6e 66 75 73 65 64 20 77 68 65 6e 20 73 6f confused when so
3730: 6d 65 6f 6e 65 20 6d 61 6b 65 73 20 61 6e 20 65 meone makes an e
3740: 72 72 6f 72 20 69 6e 20 61 20 72 75 6c 65 2e 0a rror in a rule..
3750: 23 0a 0a 2e 50 48 4f 4e 59 3a 20 61 6c 6c 20 69 #...PHONY: all i
3760: 6e 73 74 61 6c 6c 20 74 65 73 74 20 63 6c 65 61 nstall test clea
3770: 6e 0a 7d 0a 0a 63 6c 6f 73 65 20 24 6f 75 74 70 n.}..close $outp
3780: 75 74 5f 66 69 6c 65 0a 23 0a 23 20 45 6e 64 20 ut_file.#.# End
3790: 6f 66 20 74 68 65 20 6d 61 69 6e 2e 6d 6b 20 6f of the main.mk o
37a0: 75 74 70 75 74 0a 23 23 23 23 23 23 23 23 23 23 utput.##########
37b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
37c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
37d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
37e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
37f0: 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 23 ####.###########
3800: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3810: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3820: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3830: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3840: 23 23 23 0a 23 23 23 23 23 23 23 23 23 23 23 23 ###.############
3850: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3860: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3870: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3880: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3890: 23 23 0a 23 20 42 65 67 69 6e 20 77 69 6e 2f 4d ##.# Begin win/M
38a0: 61 6b 65 66 69 6c 65 2e 6d 69 6e 67 77 20 6f 75 akefile.mingw ou
38b0: 74 70 75 74 0a 23 0a 70 75 74 73 20 22 62 75 69 tput.#.puts "bui
38c0: 6c 64 69 6e 67 20 2e 2e 2f 77 69 6e 2f 4d 61 6b lding ../win/Mak
38d0: 65 66 69 6c 65 2e 6d 69 6e 67 77 22 0a 73 65 74 efile.mingw".set
38e0: 20 6f 75 74 70 75 74 5f 66 69 6c 65 20 5b 6f 70 output_file [op
38f0: 65 6e 20 2e 2e 2f 77 69 6e 2f 4d 61 6b 65 66 69 en ../win/Makefi
3900: 6c 65 2e 6d 69 6e 67 77 20 77 5d 0a 66 63 6f 6e le.mingw w].fcon
3910: 66 69 67 75 72 65 20 24 6f 75 74 70 75 74 5f 66 figure $output_f
3920: 69 6c 65 20 2d 74 72 61 6e 73 6c 61 74 69 6f 6e ile -translation
3930: 20 62 69 6e 61 72 79 0a 0a 77 72 69 74 65 6c 6e binary..writeln
3940: 20 7b 23 21 2f 75 73 72 2f 62 69 6e 2f 6d 61 6b {#!/usr/bin/mak
3950: 65 0a 23 0a 23 23 23 23 23 23 23 23 23 23 23 23 e.#.############
3960: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3970: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3980: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3990: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
39a0: 23 23 0a 23 20 57 41 52 4e 49 4e 47 3a 20 44 4f ##.# WARNING: DO
39b0: 20 4e 4f 54 20 45 44 49 54 2c 20 41 55 54 4f 4d NOT EDIT, AUTOM
39c0: 41 54 49 43 41 4c 4c 59 20 47 45 4e 45 52 41 54 ATICALLY GENERAT
39d0: 45 44 20 46 49 4c 45 20 28 53 45 45 20 22 73 72 ED FILE (SEE "sr
39e0: 63 2f 6d 61 6b 65 6d 61 6b 65 2e 74 63 6c 22 29 c/makemake.tcl")
39f0: 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 .###############
3a00: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3a10: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3a20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
3a30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a ###############.
3a40: 23 0a 23 20 54 68 69 73 20 66 69 6c 65 20 69 73 #.# This file is
3a50: 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 automatically g
3a60: 65 6e 65 72 61 74 65 64 2e 20 20 49 6e 73 74 65 enerated. Inste
3a70: 61 64 20 6f 66 20 65 64 69 74 69 6e 67 20 74 68 ad of editing th
3a80: 69 73 0a 23 20 66 69 6c 65 2c 20 65 64 69 74 20 is.# file, edit
3a90: 22 6d 61 6b 65 6d 61 6b 65 2e 74 63 6c 22 20 74 "makemake.tcl" t
3aa0: 68 65 6e 20 72 75 6e 20 22 74 63 6c 73 68 20 6d hen run "tclsh m
3ab0: 61 6b 65 6d 61 6b 65 2e 74 63 6c 22 0a 23 20 74 akemake.tcl".# t
3ac0: 6f 20 72 65 67 65 6e 65 72 61 74 65 20 74 68 69 o regenerate thi
3ad0: 73 20 66 69 6c 65 2e 0a 23 0a 23 20 54 68 69 73 s file..#.# This
3ae0: 20 69 73 20 61 20 6d 61 6b 65 66 69 6c 65 20 66 is a makefile f
3af0: 6f 72 20 75 73 65 20 6f 6e 20 43 79 67 77 69 6e or use on Cygwin
3b00: 2f 44 61 72 77 69 6e 2f 46 72 65 65 42 53 44 2f /Darwin/FreeBSD/
3b10: 4c 69 6e 75 78 2f 57 69 6e 64 6f 77 73 20 75 73 Linux/Windows us
3b20: 69 6e 67 0a 23 20 4d 69 6e 47 57 20 6f 72 20 4d ing.# MinGW or M
3b30: 69 6e 47 57 2d 77 36 34 2e 0a 23 0a 23 20 53 6f inGW-w64..#.# So
3b40: 6d 65 20 6f 66 20 74 68 65 20 73 70 65 63 69 61 me of the specia
3b50: 6c 20 6f 70 74 69 6f 6e 73 20 77 68 69 63 68 20 l options which
3b60: 63 61 6e 20 62 65 20 70 61 73 73 65 64 20 74 6f can be passed to
3b70: 20 6d 61 6b 65 0a 23 20 20 20 55 53 45 5f 57 49 make.# USE_WI
3b80: 4e 44 4f 57 53 3d 31 20 20 20 20 69 66 20 62 75 NDOWS=1 if bu
3b90: 69 6c 64 69 6e 67 20 75 6e 64 65 72 20 61 20 77 ilding under a w
3ba0: 69 6e 64 6f 77 73 20 63 6f 6d 6d 61 6e 64 20 70 indows command p
3bb0: 72 6f 6d 70 74 0a 23 20 20 20 58 36 34 3d 31 20 rompt.# X64=1
3bc0: 20 20 20 20 20 20 20 20 20 20 20 69 66 20 75 73 if us
3bd0: 69 6e 67 20 61 6e 20 75 6e 70 72 65 66 69 78 65 ing an unprefixe
3be0: 64 20 36 34 2d 62 69 74 20 6d 69 6e 67 77 20 63 d 64-bit mingw c
3bf0: 6f 6d 70 69 6c 65 72 0a 23 0a 0a 23 23 23 23 20 ompiler.#..####
3c00: 53 65 6c 65 63 74 20 6f 6e 65 20 6f 66 20 4d 69 Select one of Mi
3c10: 6e 47 57 2c 20 4d 69 6e 47 57 2d 77 36 34 20 28 nGW, MinGW-w64 (
3c20: 33 32 2d 62 69 74 29 20 6f 72 20 4d 69 6e 47 57 32-bit) or MinGW
3c30: 2d 77 36 34 20 28 36 34 2d 62 69 74 29 20 63 6f -w64 (64-bit) co
3c40: 6d 70 69 6c 65 72 73 2e 0a 23 20 20 20 20 42 79 mpilers..# By
3c50: 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 69 default, this i
3c60: 73 20 61 6e 20 65 6d 70 74 79 20 73 74 72 69 6e s an empty strin
3c70: 67 20 28 69 2e 65 2e 20 75 73 65 20 74 68 65 20 g (i.e. use the
3c80: 6e 61 74 69 76 65 20 63 6f 6d 70 69 6c 65 72 29 native compiler)
3c90: 2e 0a 23 0a 50 52 45 46 49 58 20 3d 0a 23 20 50 ..#.PREFIX =.# P
3ca0: 52 45 46 49 58 20 3d 20 6d 69 6e 67 77 33 32 2d REFIX = mingw32-
3cb0: 0a 23 20 50 52 45 46 49 58 20 3d 20 69 36 38 36 .# PREFIX = i686
3cc0: 2d 70 63 2d 6d 69 6e 67 77 33 32 2d 0a 23 20 50 -pc-mingw32-.# P
3cd0: 52 45 46 49 58 20 3d 20 69 36 38 36 2d 77 36 34 REFIX = i686-w64
3ce0: 2d 6d 69 6e 67 77 33 32 2d 0a 23 20 50 52 45 46 -mingw32-.# PREF
3cf0: 49 58 20 3d 20 78 38 36 5f 36 34 2d 77 36 34 2d IX = x86_64-w64-
3d00: 6d 69 6e 67 77 33 32 2d 0a 0a 23 23 23 23 20 54 mingw32-..#### T
3d10: 68 65 20 74 6f 70 6c 65 76 65 6c 20 64 69 72 65 he toplevel dire
3d20: 63 74 6f 72 79 20 6f 66 20 74 68 65 20 73 6f 75 ctory of the sou
3d30: 72 63 65 20 74 72 65 65 2e 20 20 46 6f 73 73 69 rce tree. Fossi
3d40: 6c 20 63 61 6e 20 62 65 20 62 75 69 6c 74 0a 23 l can be built.#
3d50: 20 20 20 20 69 6e 20 61 20 64 69 72 65 63 74 6f in a directo
3d60: 72 79 20 74 68 61 74 20 69 73 20 73 65 70 61 72 ry that is separ
3d70: 61 74 65 20 66 72 6f 6d 20 74 68 65 20 73 6f 75 ate from the sou
3d80: 72 63 65 20 74 72 65 65 2e 20 20 4a 75 73 74 20 rce tree. Just
3d90: 63 68 61 6e 67 65 0a 23 20 20 20 20 74 68 65 20 change.# the
3da0: 66 6f 6c 6c 6f 77 69 6e 67 20 74 6f 20 70 6f 69 following to poi
3db0: 6e 74 20 66 72 6f 6d 20 74 68 65 20 62 75 69 6c nt from the buil
3dc0: 64 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 74 d directory to t
3dd0: 68 65 20 73 72 63 2f 20 66 6f 6c 64 65 72 2e 0a he src/ folder..
3de0: 23 0a 53 52 43 44 49 52 20 3d 20 73 72 63 0a 0a #.SRCDIR = src..
3df0: 23 23 23 23 20 54 68 65 20 64 69 72 65 63 74 6f #### The directo
3e00: 72 79 20 69 6e 74 6f 20 77 68 69 63 68 20 6f 62 ry into which ob
3e10: 6a 65 63 74 20 63 6f 64 65 20 66 69 6c 65 73 20 ject code files
3e20: 73 68 6f 75 6c 64 20 62 65 20 77 72 69 74 74 65 should be writte
3e30: 6e 2e 0a 23 0a 4f 42 4a 44 49 52 20 3d 20 77 62 n..#.OBJDIR = wb
3e40: 6c 64 0a 0a 23 23 23 23 20 43 20 63 6f 6d 70 69 ld..#### C compi
3e50: 6c 65 72 20 66 6f 72 20 75 73 65 20 69 6e 20 62 ler for use in b
3e60: 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 uilding executab
3e70: 6c 65 73 20 74 68 61 74 20 77 69 6c 6c 20 72 75 les that will ru
3e80: 6e 20 6f 6e 0a 23 20 20 20 20 74 68 65 20 70 6c n on.# the pl
3e90: 61 74 66 6f 72 6d 20 74 68 61 74 20 69 73 20 64 atform that is d
3ea0: 6f 69 6e 67 20 74 68 65 20 62 75 69 6c 64 2e 20 oing the build.
3eb0: 20 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f This is used to
3ec0: 20 63 6f 6d 70 69 6c 65 0a 23 20 20 20 20 63 6f compile.# co
3ed0: 64 65 2d 67 65 6e 65 72 61 74 6f 72 20 70 72 6f de-generator pro
3ee0: 67 72 61 6d 73 20 61 73 20 70 61 72 74 20 6f 66 grams as part of
3ef0: 20 74 68 65 20 62 75 69 6c 64 20 70 72 6f 63 65 the build proce
3f00: 73 73 2e 20 20 53 65 65 20 54 43 43 0a 23 20 20 ss. See TCC.#
3f10: 20 20 61 6e 64 20 54 43 43 45 58 45 20 62 65 6c and TCCEXE bel
3f20: 6f 77 20 66 6f 72 20 74 68 65 20 43 20 63 6f 6d ow for the C com
3f30: 70 69 6c 65 72 20 66 6f 72 20 62 75 69 6c 64 69 piler for buildi
3f40: 6e 67 20 74 68 65 20 66 69 6e 69 73 68 65 64 0a ng the finished.
3f50: 23 20 20 20 20 62 69 6e 61 72 79 2e 0a 23 0a 42 # binary..#.B
3f60: 43 43 45 58 45 20 3d 20 67 63 63 0a 0a 23 23 23 CCEXE = gcc..###
3f70: 23 20 43 20 43 6f 6d 70 69 6c 65 72 20 61 6e 64 # C Compiler and
3f80: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 options for use
3f90: 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 65 in building exe
3fa0: 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 20 cutables that.#
3fb0: 20 20 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 will run on t
3fc0: 68 65 20 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 he platform that
3fd0: 20 69 73 20 64 6f 69 6e 67 20 74 68 65 20 62 75 is doing the bu
3fe0: 69 6c 64 2e 20 20 54 68 69 73 20 69 73 20 75 73 ild. This is us
3ff0: 65 64 0a 23 20 20 20 20 74 6f 20 63 6f 6d 70 69 ed.# to compi
4000: 6c 65 20 63 6f 64 65 2d 67 65 6e 65 72 61 74 6f le code-generato
4010: 72 20 70 72 6f 67 72 61 6d 73 20 61 73 20 70 61 r programs as pa
4020: 72 74 20 6f 66 20 74 68 65 20 62 75 69 6c 64 20 rt of the build
4030: 70 72 6f 63 65 73 73 2e 0a 23 20 20 20 20 53 65 process..# Se
4040: 65 20 54 43 43 20 62 65 6c 6f 77 20 66 6f 72 20 e TCC below for
4050: 74 68 65 20 43 20 63 6f 6d 70 69 6c 65 72 20 66 the C compiler f
4060: 6f 72 20 62 75 69 6c 64 69 6e 67 20 74 68 65 20 or building the
4070: 66 69 6e 69 73 68 65 64 20 62 69 6e 61 72 79 2e finished binary.
4080: 0a 23 0a 42 43 43 20 3d 20 24 28 42 43 43 45 58 .#.BCC = $(BCCEX
4090: 45 29 0a 0a 23 23 23 23 20 45 6e 61 62 6c 65 20 E)..#### Enable
40a0: 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68 20 64 compiling with d
40b0: 65 62 75 67 20 73 79 6d 62 6f 6c 73 20 28 6d 75 ebug symbols (mu
40c0: 63 68 20 6c 61 72 67 65 72 20 62 69 6e 61 72 79 ch larger binary
40d0: 29 0a 23 0a 23 20 46 4f 53 53 49 4c 5f 45 4e 41 ).#.# FOSSIL_ENA
40e0: 42 4c 45 5f 53 59 4d 42 4f 4c 53 20 3d 20 31 0a BLE_SYMBOLS = 1.
40f0: 0a 23 23 23 23 20 45 6e 61 62 6c 65 20 4a 53 4f .#### Enable JSO
4100: 4e 20 28 68 74 74 70 3a 2f 2f 77 77 77 2e 6a 73 N (http://www.js
4110: 6f 6e 2e 6f 72 67 29 20 73 75 70 70 6f 72 74 20 on.org) support
4120: 75 73 69 6e 67 20 22 63 73 6f 6e 22 0a 23 0a 23 using "cson".#.#
4130: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4a FOSSIL_ENABLE_J
4140: 53 4f 4e 20 3d 20 31 0a 0a 23 23 23 23 20 45 6e SON = 1..#### En
4150: 61 62 6c 65 20 48 54 54 50 53 20 73 75 70 70 6f able HTTPS suppo
4160: 72 74 20 76 69 61 20 4f 70 65 6e 53 53 4c 20 28 rt via OpenSSL (
4170: 6c 69 6e 6b 73 20 74 6f 20 6c 69 62 73 73 6c 20 links to libssl
4180: 61 6e 64 20 6c 69 62 63 72 79 70 74 6f 29 0a 23 and libcrypto).#
4190: 0a 23 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 .# FOSSIL_ENABLE
41a0: 5f 53 53 4c 20 3d 20 31 0a 0a 23 23 23 23 20 41 _SSL = 1..#### A
41b0: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 75 69 utomatically bui
41c0: 6c 64 20 4f 70 65 6e 53 53 4c 20 77 68 65 6e 20 ld OpenSSL when
41d0: 62 75 69 6c 64 69 6e 67 20 46 6f 73 73 69 6c 20 building Fossil
41e0: 28 63 61 75 73 65 73 20 72 65 62 75 69 6c 64 0a (causes rebuild.
41f0: 23 20 20 20 20 69 73 73 75 65 73 20 77 68 65 6e # issues when
4200: 20 62 75 69 6c 64 69 6e 67 20 69 6e 63 72 65 6d building increm
4210: 65 6e 74 61 6c 6c 79 29 2e 0a 23 0a 23 20 46 4f entally)..#.# FO
4220: 53 53 49 4c 5f 42 55 49 4c 44 5f 53 53 4c 20 3d SSIL_BUILD_SSL =
4230: 20 31 0a 0a 23 23 23 23 20 45 6e 61 62 6c 65 20 1..#### Enable
4240: 72 65 6c 61 74 69 76 65 20 70 61 74 68 73 20 69 relative paths i
4250: 6e 20 65 78 74 65 72 6e 61 6c 20 64 69 66 66 2f n external diff/
4260: 67 64 69 66 66 0a 23 0a 23 20 46 4f 53 53 49 4c gdiff.#.# FOSSIL
4270: 5f 45 4e 41 42 4c 45 5f 45 58 45 43 5f 52 45 4c _ENABLE_EXEC_REL
4280: 5f 50 41 54 48 53 20 3d 20 31 0a 0a 23 23 23 23 _PATHS = 1..####
4290: 20 45 6e 61 62 6c 65 20 6c 65 67 61 63 79 20 74 Enable legacy t
42a0: 72 65 61 74 6d 65 6e 74 20 6f 66 20 6d 76 2f 72 reatment of mv/r
42b0: 6d 20 28 73 6b 69 70 20 63 68 65 63 6b 6f 75 74 m (skip checkout
42c0: 20 66 69 6c 65 73 29 0a 23 0a 23 20 46 4f 53 53 files).#.# FOSS
42d0: 49 4c 5f 45 4e 41 42 4c 45 5f 4c 45 47 41 43 59 IL_ENABLE_LEGACY
42e0: 5f 4d 56 5f 52 4d 20 3d 20 31 0a 0a 23 23 23 23 _MV_RM = 1..####
42f0: 20 45 6e 61 62 6c 65 20 54 48 31 20 73 63 72 69 Enable TH1 scri
4300: 70 74 73 20 69 6e 20 65 6d 62 65 64 64 65 64 20 pts in embedded
4310: 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 documentation fi
4320: 6c 65 73 0a 23 0a 23 20 46 4f 53 53 49 4c 5f 45 les.#.# FOSSIL_E
4330: 4e 41 42 4c 45 5f 54 48 31 5f 44 4f 43 53 20 3d NABLE_TH1_DOCS =
4340: 20 31 0a 0a 23 23 23 23 20 45 6e 61 62 6c 65 20 1..#### Enable
4350: 68 6f 6f 6b 73 20 66 6f 72 20 63 6f 6d 6d 61 6e hooks for comman
4360: 64 73 20 61 6e 64 20 77 65 62 20 70 61 67 65 73 ds and web pages
4370: 20 76 69 61 20 54 48 31 0a 23 0a 23 20 46 4f 53 via TH1.#.# FOS
4380: 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 5f 48 SIL_ENABLE_TH1_H
4390: 4f 4f 4b 53 20 3d 20 31 0a 0a 23 23 23 23 20 45 OOKS = 1..#### E
43a0: 6e 61 62 6c 65 20 73 63 72 69 70 74 69 6e 67 20 nable scripting
43b0: 73 75 70 70 6f 72 74 20 76 69 61 20 54 63 6c 2f support via Tcl/
43c0: 54 6b 0a 23 0a 23 20 46 4f 53 53 49 4c 5f 45 4e Tk.#.# FOSSIL_EN
43d0: 41 42 4c 45 5f 54 43 4c 20 3d 20 31 0a 0a 23 23 ABLE_TCL = 1..##
43e0: 23 23 20 4c 6f 61 64 20 54 63 6c 20 75 73 69 6e ## Load Tcl usin
43f0: 67 20 74 68 65 20 73 74 75 62 73 20 6c 69 62 72 g the stubs libr
4400: 61 72 79 20 6d 65 63 68 61 6e 69 73 6d 0a 23 0a ary mechanism.#.
4410: 23 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f # FOSSIL_ENABLE_
4420: 54 43 4c 5f 53 54 55 42 53 20 3d 20 31 0a 0a 23 TCL_STUBS = 1..#
4430: 23 23 23 20 4c 6f 61 64 20 54 63 6c 20 75 73 69 ### Load Tcl usi
4440: 6e 67 20 74 68 65 20 70 72 69 76 61 74 65 20 73 ng the private s
4450: 74 75 62 73 20 6d 65 63 68 61 6e 69 73 6d 0a 23 tubs mechanism.#
4460: 0a 23 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 .# FOSSIL_ENABLE
4470: 5f 54 43 4c 5f 50 52 49 56 41 54 45 5f 53 54 55 _TCL_PRIVATE_STU
4480: 42 53 20 3d 20 31 0a 0a 23 23 23 23 20 55 73 65 BS = 1..#### Use
4490: 20 27 73 79 73 74 65 6d 27 20 53 51 4c 69 74 65 'system' SQLite
44a0: 0a 23 0a 23 20 55 53 45 5f 53 59 53 54 45 4d 5f .#.# USE_SYSTEM_
44b0: 53 51 4c 49 54 45 20 3d 20 31 0a 0a 23 23 23 23 SQLITE = 1..####
44c0: 20 55 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 Use the SQLite
44d0: 45 6e 63 72 79 70 74 69 6f 6e 20 45 78 74 65 6e Encryption Exten
44e0: 73 69 6f 6e 0a 23 0a 23 20 55 53 45 5f 53 45 45 sion.#.# USE_SEE
44f0: 20 3d 20 31 0a 0a 23 23 23 23 20 55 73 65 20 74 = 1..#### Use t
4500: 68 65 20 6d 69 6e 69 7a 20 63 6f 6d 70 72 65 73 he miniz compres
4510: 73 69 6f 6e 20 6c 69 62 72 61 72 79 0a 23 0a 23 sion library.#.#
4520: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d FOSSIL_ENABLE_M
4530: 49 4e 49 5a 20 3d 20 31 0a 0a 23 23 23 23 20 55 INIZ = 1..#### U
4540: 73 65 20 74 68 65 20 54 63 6c 20 73 6f 75 72 63 se the Tcl sourc
4550: 65 20 64 69 72 65 63 74 6f 72 79 20 69 6e 73 74 e directory inst
4560: 65 61 64 20 6f 66 20 74 68 65 20 69 6e 73 74 61 ead of the insta
4570: 6c 6c 20 64 69 72 65 63 74 6f 72 79 3f 0a 23 20 ll directory?.#
4580: 20 20 20 54 68 69 73 20 69 73 20 75 73 65 66 75 This is usefu
4590: 6c 20 77 68 65 6e 20 54 63 6c 20 68 61 73 20 62 l when Tcl has b
45a0: 65 65 6e 20 63 6f 6d 70 69 6c 65 64 20 73 74 61 een compiled sta
45b0: 74 69 63 61 6c 6c 79 20 77 69 74 68 20 4d 69 6e tically with Min
45c0: 47 57 2e 0a 23 0a 46 4f 53 53 49 4c 5f 54 43 4c GW..#.FOSSIL_TCL
45d0: 5f 53 4f 55 52 43 45 20 3d 20 31 0a 0a 23 23 23 _SOURCE = 1..###
45e0: 23 20 43 68 65 63 6b 20 69 66 20 74 68 65 20 77 # Check if the w
45f0: 6f 72 6b 61 72 6f 75 6e 64 20 66 6f 72 20 74 68 orkaround for th
4600: 65 20 4d 69 6e 47 57 20 63 6f 6d 6d 61 6e 64 20 e MinGW command
4610: 6c 69 6e 65 20 68 61 6e 64 6c 69 6e 67 20 6e 65 line handling ne
4620: 65 64 73 20 74 6f 0a 23 20 20 20 20 62 65 20 65 eds to.# be e
4630: 6e 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c nabled by defaul
4640: 74 2e 20 20 54 68 69 73 20 63 68 65 63 6b 20 6d t. This check m
4650: 61 79 20 62 65 20 73 6f 6d 65 77 68 61 74 20 66 ay be somewhat f
4660: 72 61 67 69 6c 65 20 64 75 65 20 74 6f 20 74 68 ragile due to th
4670: 65 0a 23 20 20 20 20 75 73 65 20 6f 66 20 22 66 e.# use of "f
4680: 69 6e 64 73 74 72 69 6e 67 22 2e 0a 23 0a 69 66 indstring"..#.if
4690: 6e 64 65 66 20 4d 49 4e 47 57 5f 49 53 5f 33 32 ndef MINGW_IS_32
46a0: 42 49 54 5f 4f 4e 4c 59 0a 69 66 65 71 20 28 2c BIT_ONLY.ifeq (,
46b0: 24 28 66 69 6e 64 73 74 72 69 6e 67 20 77 36 34 $(findstring w64
46c0: 2d 6d 69 6e 67 77 33 32 2c 24 28 50 52 45 46 49 -mingw32,$(PREFI
46d0: 58 29 29 29 0a 4d 49 4e 47 57 5f 49 53 5f 33 32 X))).MINGW_IS_32
46e0: 42 49 54 5f 4f 4e 4c 59 20 3d 20 31 0a 65 6e 64 BIT_ONLY = 1.end
46f0: 69 66 0a 65 6e 64 69 66 0a 0a 23 23 23 23 20 54 if.endif..#### T
4700: 68 65 20 64 69 72 65 63 74 6f 72 69 65 73 20 77 he directories w
4710: 68 65 72 65 20 74 68 65 20 7a 6c 69 62 20 69 6e here the zlib in
4720: 63 6c 75 64 65 20 61 6e 64 20 6c 69 62 72 61 72 clude and librar
4730: 79 20 66 69 6c 65 73 20 61 72 65 20 6c 6f 63 61 y files are loca
4740: 74 65 64 2e 0a 23 0a 5a 49 4e 43 44 49 52 20 3d ted..#.ZINCDIR =
4750: 20 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 63 6f $(SRCDIR)/../co
4760: 6d 70 61 74 2f 7a 6c 69 62 0a 5a 4c 49 42 44 49 mpat/zlib.ZLIBDI
4770: 52 20 3d 20 24 28 53 52 43 44 49 52 29 2f 2e 2e R = $(SRCDIR)/..
4780: 2f 63 6f 6d 70 61 74 2f 7a 6c 69 62 0a 0a 23 23 /compat/zlib..##
4790: 23 23 20 4d 61 6b 65 20 61 6e 20 61 74 74 65 6d ## Make an attem
47a0: 70 74 20 74 6f 20 64 65 74 65 63 74 20 69 66 20 pt to detect if
47b0: 46 6f 73 73 69 6c 20 69 73 20 62 65 69 6e 67 20 Fossil is being
47c0: 62 75 69 6c 74 20 66 6f 72 20 74 68 65 20 78 36 built for the x6
47d0: 34 20 70 72 6f 63 65 73 73 6f 72 0a 23 20 20 20 4 processor.#
47e0: 20 61 72 63 68 69 74 65 63 74 75 72 65 2e 20 20 architecture.
47f0: 54 68 69 73 20 63 68 65 63 6b 20 6d 61 79 20 62 This check may b
4800: 65 20 73 6f 6d 65 77 68 61 74 20 66 72 61 67 69 e somewhat fragi
4810: 6c 65 20 64 75 65 20 74 6f 20 22 66 69 6e 64 73 le due to "finds
4820: 74 72 69 6e 67 22 2e 0a 23 0a 69 66 6e 64 65 66 tring"..#.ifndef
4830: 20 58 36 34 0a 69 66 6e 65 71 20 28 2c 24 28 66 X64.ifneq (,$(f
4840: 69 6e 64 73 74 72 69 6e 67 20 78 38 36 5f 36 34 indstring x86_64
4850: 2d 77 36 34 2d 6d 69 6e 67 77 33 32 2c 24 28 50 -w64-mingw32,$(P
4860: 52 45 46 49 58 29 29 29 0a 58 36 34 20 3d 20 31 REFIX))).X64 = 1
4870: 0a 65 6e 64 69 66 0a 65 6e 64 69 66 0a 0a 23 23 .endif.endif..##
4880: 23 23 20 44 65 74 65 72 6d 69 6e 65 20 69 66 20 ## Determine if
4890: 74 68 65 20 6f 70 74 69 6d 69 7a 65 64 20 61 73 the optimized as
48a0: 73 65 6d 62 6c 79 20 72 6f 75 74 69 6e 65 73 20 sembly routines
48b0: 70 72 6f 76 69 64 65 64 20 77 69 74 68 20 7a 6c provided with zl
48c0: 69 62 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 20 ib should be.#
48d0: 20 20 75 73 65 64 2c 20 74 61 6b 69 6e 67 20 69 used, taking i
48e0: 6e 74 6f 20 61 63 63 6f 75 6e 74 20 77 68 65 74 nto account whet
48f0: 68 65 72 20 7a 6c 69 62 20 69 73 20 61 63 74 75 her zlib is actu
4900: 61 6c 6c 79 20 65 6e 61 62 6c 65 64 20 61 6e 64 ally enabled and
4910: 20 74 68 65 20 74 61 72 67 65 74 0a 23 20 20 20 the target.#
4920: 20 70 72 6f 63 65 73 73 6f 72 20 61 72 63 68 69 processor archi
4930: 74 65 63 74 75 72 65 2e 0a 23 0a 69 66 6e 64 65 tecture..#.ifnde
4940: 66 20 58 36 34 0a 53 53 4c 43 4f 4e 46 49 47 20 f X64.SSLCONFIG
4950: 3d 20 6d 69 6e 67 77 0a 69 66 6e 64 65 66 20 46 = mingw.ifndef F
4960: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e OSSIL_ENABLE_MIN
4970: 49 5a 0a 5a 4c 49 42 43 4f 4e 46 49 47 20 3d 20 IZ.ZLIBCONFIG =
4980: 4c 4f 43 3d 22 2d 44 41 53 4d 56 20 2d 44 41 53 LOC="-DASMV -DAS
4990: 4d 49 4e 46 22 20 4f 42 4a 41 3d 22 69 6e 66 66 MINF" OBJA="inff
49a0: 61 73 38 36 2e 6f 20 6d 61 74 63 68 2e 6f 22 0a as86.o match.o".
49b0: 5a 4c 49 42 54 41 52 47 45 54 53 20 3d 20 24 28 ZLIBTARGETS = $(
49c0: 5a 4c 49 42 44 49 52 29 2f 69 6e 66 66 61 73 38 ZLIBDIR)/inffas8
49d0: 36 2e 6f 20 24 28 5a 4c 49 42 44 49 52 29 2f 6d 6.o $(ZLIBDIR)/m
49e0: 61 74 63 68 2e 6f 0a 65 6c 73 65 0a 5a 4c 49 42 atch.o.else.ZLIB
49f0: 43 4f 4e 46 49 47 20 3d 0a 5a 4c 49 42 54 41 52 CONFIG =.ZLIBTAR
4a00: 47 45 54 53 20 3d 0a 65 6e 64 69 66 0a 65 6c 73 GETS =.endif.els
4a10: 65 0a 53 53 4c 43 4f 4e 46 49 47 20 3d 20 6d 69 e.SSLCONFIG = mi
4a20: 6e 67 77 36 34 0a 5a 4c 49 42 43 4f 4e 46 49 47 ngw64.ZLIBCONFIG
4a30: 20 3d 0a 5a 4c 49 42 54 41 52 47 45 54 53 20 3d =.ZLIBTARGETS =
4a40: 0a 65 6e 64 69 66 0a 0a 23 23 23 23 20 44 69 73 .endif..#### Dis
4a50: 61 62 6c 65 20 63 72 65 61 74 69 6f 6e 20 6f 66 able creation of
4a60: 20 74 68 65 20 4f 70 65 6e 53 53 4c 20 73 68 61 the OpenSSL sha
4a70: 72 65 64 20 6c 69 62 72 61 72 69 65 73 2e 20 20 red libraries.
4a80: 41 6c 73 6f 2c 20 64 69 73 61 62 6c 65 20 73 75 Also, disable su
4a90: 70 70 6f 72 74 0a 23 20 20 20 20 66 6f 72 20 62 pport.# for b
4aa0: 6f 74 68 20 53 53 4c 76 32 20 61 6e 64 20 53 53 oth SSLv2 and SS
4ab0: 4c 76 33 20 28 69 2e 65 2e 20 74 68 65 72 65 62 Lv3 (i.e. thereb
4ac0: 79 20 66 6f 72 63 69 6e 67 20 74 68 65 20 75 73 y forcing the us
4ad0: 65 20 6f 66 20 54 4c 53 29 2e 0a 23 0a 53 53 4c e of TLS)..#.SSL
4ae0: 43 4f 4e 46 49 47 20 2b 3d 20 6e 6f 2d 73 73 6c CONFIG += no-ssl
4af0: 32 20 6e 6f 2d 73 73 6c 33 20 6e 6f 2d 73 68 61 2 no-ssl3 no-sha
4b00: 72 65 64 0a 0a 23 23 23 23 20 57 68 65 6e 20 75 red..#### When u
4b10: 73 69 6e 67 20 7a 6c 69 62 2c 20 6d 61 6b 65 20 sing zlib, make
4b20: 73 75 72 65 20 74 68 61 74 20 4f 70 65 6e 53 53 sure that OpenSS
4b30: 4c 20 69 73 20 63 6f 6e 66 69 67 75 72 65 64 20 L is configured
4b40: 74 6f 20 75 73 65 20 74 68 65 20 7a 6c 69 62 0a to use the zlib.
4b50: 23 20 20 20 20 74 68 61 74 20 46 6f 73 73 69 6c # that Fossil
4b60: 20 6b 6e 6f 77 73 20 61 62 6f 75 74 20 28 69 2e knows about (i.
4b70: 65 2e 20 74 68 65 20 6f 6e 65 20 77 69 74 68 69 e. the one withi
4b80: 6e 20 74 68 65 20 73 6f 75 72 63 65 20 74 72 65 n the source tre
4b90: 65 29 2e 0a 23 0a 69 66 6e 64 65 66 20 46 4f 53 e)..#.ifndef FOS
4ba0: 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a SIL_ENABLE_MINIZ
4bb0: 0a 53 53 4c 43 4f 4e 46 49 47 20 2b 3d 20 20 2d .SSLCONFIG += -
4bc0: 2d 77 69 74 68 2d 7a 6c 69 62 2d 6c 69 62 3d 24 -with-zlib-lib=$
4bd0: 28 50 57 44 29 2f 24 28 5a 4c 49 42 44 49 52 29 (PWD)/$(ZLIBDIR)
4be0: 20 2d 2d 77 69 74 68 2d 7a 6c 69 62 2d 69 6e 63 --with-zlib-inc
4bf0: 6c 75 64 65 3d 24 28 50 57 44 29 2f 24 28 5a 4c lude=$(PWD)/$(ZL
4c00: 49 42 44 49 52 29 20 7a 6c 69 62 0a 65 6e 64 69 IBDIR) zlib.endi
4c10: 66 0a 0a 23 23 23 23 20 54 68 65 20 64 69 72 65 f..#### The dire
4c20: 63 74 6f 72 69 65 73 20 77 68 65 72 65 20 74 68 ctories where th
4c30: 65 20 4f 70 65 6e 53 53 4c 20 69 6e 63 6c 75 64 e OpenSSL includ
4c40: 65 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 69 e and library fi
4c50: 6c 65 73 20 61 72 65 20 6c 6f 63 61 74 65 64 2e les are located.
4c60: 0a 23 20 20 20 20 54 68 65 20 72 65 63 6f 6d 6d .# The recomm
4c70: 65 6e 64 65 64 20 75 73 61 67 65 20 68 65 72 65 ended usage here
4c80: 20 69 73 20 74 6f 20 75 73 65 20 74 68 65 20 53 is to use the S
4c90: 79 73 69 6e 74 65 72 6e 61 6c 73 20 6a 75 6e 63 ysinternals junc
4ca0: 74 69 6f 6e 20 74 6f 6f 6c 0a 23 20 20 20 20 74 tion tool.# t
4cb0: 6f 20 63 72 65 61 74 65 20 61 20 68 61 72 64 20 o create a hard
4cc0: 6c 69 6e 6b 20 62 65 74 77 65 65 6e 20 61 6e 20 link between an
4cd0: 22 6f 70 65 6e 73 73 6c 2d 31 2e 78 22 20 73 75 "openssl-1.x" su
4ce0: 62 2d 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 b-directory of t
4cf0: 68 65 0a 23 20 20 20 20 46 6f 73 73 69 6c 20 73 he.# Fossil s
4d00: 6f 75 72 63 65 20 63 6f 64 65 20 64 69 72 65 63 ource code direc
4d10: 74 6f 72 79 20 61 6e 64 20 74 68 65 20 74 61 72 tory and the tar
4d20: 67 65 74 20 4f 70 65 6e 53 53 4c 20 73 6f 75 72 get OpenSSL sour
4d30: 63 65 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a ce directory..#.
4d40: 4f 50 45 4e 53 53 4c 44 49 52 20 3d 20 24 28 53 OPENSSLDIR = $(S
4d50: 52 43 44 49 52 29 2f 2e 2e 2f 63 6f 6d 70 61 74 RCDIR)/../compat
4d60: 2f 6f 70 65 6e 73 73 6c 2d 31 2e 30 2e 32 6e 0a /openssl-1.0.2n.
4d70: 4f 50 45 4e 53 53 4c 49 4e 43 44 49 52 20 3d 20 OPENSSLINCDIR =
4d80: 24 28 4f 50 45 4e 53 53 4c 44 49 52 29 2f 69 6e $(OPENSSLDIR)/in
4d90: 63 6c 75 64 65 0a 4f 50 45 4e 53 53 4c 4c 49 42 clude.OPENSSLLIB
4da0: 44 49 52 20 3d 20 24 28 4f 50 45 4e 53 53 4c 44 DIR = $(OPENSSLD
4db0: 49 52 29 0a 0a 23 23 23 23 20 45 69 74 68 65 72 IR)..#### Either
4dc0: 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 77 the directory w
4dd0: 68 65 72 65 20 74 68 65 20 54 63 6c 20 6c 69 62 here the Tcl lib
4de0: 72 61 72 79 20 69 73 20 69 6e 73 74 61 6c 6c 65 rary is installe
4df0: 64 20 6f 72 20 74 68 65 20 54 63 6c 0a 23 20 20 d or the Tcl.#
4e00: 20 20 73 6f 75 72 63 65 20 63 6f 64 65 20 64 69 source code di
4e10: 72 65 63 74 6f 72 79 20 72 65 73 69 64 65 73 20 rectory resides
4e20: 28 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20 74 68 (depending on th
4e30: 65 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 6d e value of the m
4e40: 61 63 72 6f 0a 23 20 20 20 20 46 4f 53 53 49 4c acro.# FOSSIL
4e50: 5f 54 43 4c 5f 53 4f 55 52 43 45 29 2e 20 20 49 _TCL_SOURCE). I
4e60: 66 20 74 68 69 73 20 70 6f 69 6e 74 73 20 74 6f f this points to
4e70: 20 74 68 65 20 54 63 6c 20 69 6e 73 74 61 6c 6c the Tcl install
4e80: 20 64 69 72 65 63 74 6f 72 79 2c 0a 23 20 20 20 directory,.#
4e90: 20 74 68 69 73 20 64 69 72 65 63 74 6f 72 79 20 this directory
4ea0: 6d 75 73 74 20 68 61 76 65 20 22 69 6e 63 6c 75 must have "inclu
4eb0: 64 65 22 20 61 6e 64 20 22 6c 69 62 22 20 73 75 de" and "lib" su
4ec0: 62 2d 64 69 72 65 63 74 6f 72 69 65 73 2e 20 20 b-directories.
4ed0: 49 66 0a 23 20 20 20 20 74 68 69 73 20 70 6f 69 If.# this poi
4ee0: 6e 74 73 20 74 6f 20 74 68 65 20 54 63 6c 20 73 nts to the Tcl s
4ef0: 6f 75 72 63 65 20 63 6f 64 65 20 64 69 72 65 63 ource code direc
4f00: 74 6f 72 79 2c 20 74 68 69 73 20 64 69 72 65 63 tory, this direc
4f10: 74 6f 72 79 20 6d 75 73 74 0a 23 20 20 20 20 68 tory must.# h
4f20: 61 76 65 20 22 67 65 6e 65 72 69 63 22 20 61 6e ave "generic" an
4f30: 64 20 22 77 69 6e 22 20 73 75 62 2d 64 69 72 65 d "win" sub-dire
4f40: 63 74 6f 72 69 65 73 2e 20 20 54 68 65 20 72 65 ctories. The re
4f50: 63 6f 6d 6d 65 6e 64 65 64 20 75 73 61 67 65 0a commended usage.
4f60: 23 20 20 20 20 68 65 72 65 20 69 73 20 74 6f 20 # here is to
4f70: 75 73 65 20 74 68 65 20 53 79 73 69 6e 74 65 72 use the Sysinter
4f80: 6e 61 6c 73 20 6a 75 6e 63 74 69 6f 6e 20 74 6f nals junction to
4f90: 6f 6c 20 74 6f 20 63 72 65 61 74 65 20 61 20 68 ol to create a h
4fa0: 61 72 64 0a 23 20 20 20 20 6c 69 6e 6b 20 62 65 ard.# link be
4fb0: 74 77 65 65 6e 20 61 20 22 74 63 6c 2d 38 2e 78 tween a "tcl-8.x
4fc0: 22 20 73 75 62 2d 64 69 72 65 63 74 6f 72 79 20 " sub-directory
4fd0: 6f 66 20 74 68 65 20 46 6f 73 73 69 6c 20 73 6f of the Fossil so
4fe0: 75 72 63 65 20 63 6f 64 65 0a 23 20 20 20 20 64 urce code.# d
4ff0: 69 72 65 63 74 6f 72 79 20 61 6e 64 20 74 68 65 irectory and the
5000: 20 74 61 72 67 65 74 20 54 63 6c 20 64 69 72 65 target Tcl dire
5010: 63 74 6f 72 79 2e 20 20 54 68 69 73 20 72 65 6d ctory. This rem
5020: 6f 76 65 73 20 74 68 65 20 6e 65 65 64 20 74 6f oves the need to
5030: 0a 23 20 20 20 20 68 61 72 64 2d 63 6f 64 65 20 .# hard-code
5040: 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 70 61 the necessary pa
5050: 74 68 73 20 69 6e 20 74 68 69 73 20 4d 61 6b 65 ths in this Make
5060: 66 69 6c 65 2e 0a 23 0a 54 43 4c 44 49 52 20 3d file..#.TCLDIR =
5070: 20 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 63 6f $(SRCDIR)/../co
5080: 6d 70 61 74 2f 74 63 6c 2d 38 2e 36 0a 0a 23 23 mpat/tcl-8.6..##
5090: 23 23 20 54 68 65 20 54 63 6c 20 73 6f 75 72 63 ## The Tcl sourc
50a0: 65 20 63 6f 64 65 20 64 69 72 65 63 74 6f 72 79 e code directory
50b0: 2e 20 20 54 68 69 73 20 64 65 66 61 75 6c 74 73 . This defaults
50c0: 20 74 6f 20 74 68 65 20 73 61 6d 65 20 76 61 6c to the same val
50d0: 75 65 20 61 73 0a 23 20 20 20 20 54 43 4c 44 49 ue as.# TCLDI
50e0: 52 20 6d 61 63 72 6f 20 28 61 62 6f 76 65 29 2c R macro (above),
50f0: 20 77 68 69 63 68 20 6d 61 79 20 6e 6f 74 20 62 which may not b
5100: 65 20 63 6f 72 72 65 63 74 2e 20 20 54 68 69 73 e correct. This
5110: 20 76 61 6c 75 65 20 77 69 6c 6c 0a 23 20 20 20 value will.#
5120: 20 6f 6e 6c 79 20 62 65 20 75 73 65 64 20 69 66 only be used if
5130: 20 74 68 65 20 46 4f 53 53 49 4c 5f 54 43 4c 5f the FOSSIL_TCL_
5140: 53 4f 55 52 43 45 20 6d 61 63 72 6f 20 69 73 20 SOURCE macro is
5150: 64 65 66 69 6e 65 64 2e 0a 23 0a 54 43 4c 53 52 defined..#.TCLSR
5160: 43 44 49 52 20 3d 20 24 28 54 43 4c 44 49 52 29 CDIR = $(TCLDIR)
5170: 0a 0a 23 23 23 23 20 54 68 65 20 54 63 6c 20 69 ..#### The Tcl i
5180: 6e 63 6c 75 64 65 20 61 6e 64 20 6c 69 62 72 61 nclude and libra
5190: 72 79 20 64 69 72 65 63 74 6f 72 69 65 73 2e 20 ry directories.
51a0: 20 54 68 65 73 65 20 76 61 6c 75 65 73 20 77 69 These values wi
51b0: 6c 6c 20 6f 6e 6c 79 20 62 65 0a 23 20 20 20 20 ll only be.#
51c0: 75 73 65 64 20 69 66 20 74 68 65 20 46 4f 53 53 used if the FOSS
51d0: 49 4c 5f 54 43 4c 5f 53 4f 55 52 43 45 20 6d 61 IL_TCL_SOURCE ma
51e0: 63 72 6f 20 69 73 20 6e 6f 74 20 64 65 66 69 6e cro is not defin
51f0: 65 64 2e 0a 23 0a 54 43 4c 49 4e 43 44 49 52 20 ed..#.TCLINCDIR
5200: 3d 20 24 28 54 43 4c 44 49 52 29 2f 69 6e 63 6c = $(TCLDIR)/incl
5210: 75 64 65 0a 54 43 4c 4c 49 42 44 49 52 20 3d 20 ude.TCLLIBDIR =
5220: 24 28 54 43 4c 44 49 52 29 2f 6c 69 62 0a 0a 23 $(TCLDIR)/lib..#
5230: 23 23 23 20 54 63 6c 3a 20 57 68 69 63 68 20 54 ### Tcl: Which T
5240: 63 6c 20 6c 69 62 72 61 72 79 20 64 6f 20 77 65 cl library do we
5250: 20 77 61 6e 74 20 74 6f 20 75 73 65 20 28 38 2e want to use (8.
5260: 34 2c 20 38 2e 35 2c 20 38 2e 36 2c 20 65 74 63 4, 8.5, 8.6, etc
5270: 29 3f 0a 23 0a 69 66 64 65 66 20 46 4f 53 53 49 )?.#.ifdef FOSSI
5280: 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c 5f 53 54 55 L_ENABLE_TCL_STU
5290: 42 53 0a 69 66 6e 64 65 66 20 46 4f 53 53 49 4c BS.ifndef FOSSIL
52a0: 5f 45 4e 41 42 4c 45 5f 54 43 4c 5f 50 52 49 56 _ENABLE_TCL_PRIV
52b0: 41 54 45 5f 53 54 55 42 53 0a 4c 49 42 54 43 4c ATE_STUBS.LIBTCL
52c0: 20 3d 20 2d 6c 74 63 6c 73 74 75 62 38 36 0a 65 = -ltclstub86.e
52d0: 6e 64 69 66 0a 54 43 4c 54 41 52 47 45 54 20 3d ndif.TCLTARGET =
52e0: 20 6c 69 62 74 63 6c 73 74 75 62 38 36 2e 61 0a libtclstub86.a.
52f0: 65 6c 73 65 0a 4c 49 42 54 43 4c 20 3d 20 2d 6c else.LIBTCL = -l
5300: 74 63 6c 38 36 0a 54 43 4c 54 41 52 47 45 54 20 tcl86.TCLTARGET
5310: 3d 20 62 69 6e 61 72 69 65 73 0a 65 6e 64 69 66 = binaries.endif
5320: 0a 0a 23 23 23 23 20 43 20 63 6f 6d 70 69 6c 65 ..#### C compile
5330: 72 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75 69 r for use in bui
5340: 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 lding executable
5350: 73 20 74 68 61 74 20 77 69 6c 6c 20 72 75 6e 20 s that will run
5360: 6f 6e 20 74 68 65 0a 23 20 20 20 20 74 61 72 67 on the.# targ
5370: 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 54 68 et platform. Th
5380: 69 73 20 69 73 20 75 73 75 61 6c 6c 79 20 74 68 is is usually th
5390: 65 20 73 61 6d 65 20 61 73 20 42 43 43 45 58 45 e same as BCCEXE
53a0: 2c 20 75 6e 6c 65 73 73 20 79 6f 75 0a 23 20 20 , unless you.#
53b0: 20 20 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d 70 are cross-comp
53c0: 69 6c 69 6e 67 2e 20 20 54 68 69 73 20 43 20 63 iling. This C c
53d0: 6f 6d 70 69 6c 65 72 20 62 75 69 6c 64 73 20 74 ompiler builds t
53e0: 68 65 20 66 69 6e 69 73 68 65 64 20 62 69 6e 61 he finished bina
53f0: 72 79 0a 23 20 20 20 20 66 6f 72 20 66 6f 73 73 ry.# for foss
5400: 69 6c 2e 20 20 53 65 65 20 42 43 43 20 61 6e 64 il. See BCC and
5410: 20 42 43 43 45 58 45 20 61 62 6f 76 65 20 66 6f BCCEXE above fo
5420: 72 20 74 68 65 20 43 20 63 6f 6d 70 69 6c 65 72 r the C compiler
5430: 20 66 6f 72 0a 23 20 20 20 20 62 75 69 6c 64 69 for.# buildi
5440: 6e 67 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 ng intermediate
5450: 63 6f 64 65 2d 67 65 6e 65 72 61 74 6f 72 20 74 code-generator t
5460: 6f 6f 6c 73 2e 0a 23 0a 54 43 43 45 58 45 20 3d ools..#.TCCEXE =
5470: 20 67 63 63 0a 0a 23 23 23 23 20 43 20 63 6f 6d gcc..#### C com
5480: 70 69 6c 65 72 20 61 6e 64 20 6f 70 74 69 6f 6e piler and option
5490: 73 20 66 6f 72 20 75 73 65 20 69 6e 20 62 75 69 s for use in bui
54a0: 6c 64 69 6e 67 20 65 78 65 63 75 74 61 62 6c 65 lding executable
54b0: 73 20 74 68 61 74 20 77 69 6c 6c 0a 23 20 20 20 s that will.#
54c0: 20 72 75 6e 20 6f 6e 20 74 68 65 20 74 61 72 67 run on the targ
54d0: 65 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 54 68 et platform. Th
54e0: 69 73 20 69 73 20 75 73 75 61 6c 6c 79 20 74 68 is is usually th
54f0: 65 20 61 6c 6d 6f 73 74 20 74 68 65 20 73 61 6d e almost the sam
5500: 65 0a 23 20 20 20 20 61 73 20 42 43 43 2c 20 75 e.# as BCC, u
5510: 6e 6c 65 73 73 20 79 6f 75 20 61 72 65 20 63 72 nless you are cr
5520: 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 2e 20 20 oss-compiling.
5530: 54 68 69 73 20 43 20 63 6f 6d 70 69 6c 65 72 20 This C compiler
5540: 62 75 69 6c 64 73 0a 23 20 20 20 20 74 68 65 20 builds.# the
5550: 66 69 6e 69 73 68 65 64 20 62 69 6e 61 72 79 20 finished binary
5560: 66 6f 72 20 66 6f 73 73 69 6c 2e 20 20 54 68 65 for fossil. The
5570: 20 42 43 43 20 63 6f 6d 70 69 6c 65 72 20 61 62 BCC compiler ab
5580: 6f 76 65 20 69 73 20 75 73 65 64 0a 23 20 20 20 ove is used.#
5590: 20 66 6f 72 20 62 75 69 6c 64 69 6e 67 20 69 6e for building in
55a0: 74 65 72 6d 65 64 69 61 74 65 20 63 6f 64 65 2d termediate code-
55b0: 67 65 6e 65 72 61 74 6f 72 20 74 6f 6f 6c 73 2e generator tools.
55c0: 0a 23 0a 54 43 43 20 3d 20 24 28 50 52 45 46 49 .#.TCC = $(PREFI
55d0: 58 29 24 28 54 43 43 45 58 45 29 20 2d 57 61 6c X)$(TCCEXE) -Wal
55e0: 6c 20 2d 57 64 65 63 6c 61 72 61 74 69 6f 6e 2d l -Wdeclaration-
55f0: 61 66 74 65 72 2d 73 74 61 74 65 6d 65 6e 74 0a after-statement.
5600: 0a 23 23 23 23 20 41 64 64 20 74 68 65 20 6e 65 .#### Add the ne
5610: 63 65 73 73 61 72 79 20 63 6f 6d 6d 61 6e 64 20 cessary command
5620: 6c 69 6e 65 20 6f 70 74 69 6f 6e 73 20 74 6f 20 line options to
5630: 62 75 69 6c 64 20 77 69 74 68 20 64 65 62 75 67 build with debug
5640: 67 69 6e 67 0a 23 20 20 20 20 73 79 6d 62 6f 6c ging.# symbol
5650: 73 2c 20 69 66 20 65 6e 61 62 6c 65 64 2e 0a 23 s, if enabled..#
5660: 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e .ifdef FOSSIL_EN
5670: 41 42 4c 45 5f 53 59 4d 42 4f 4c 53 0a 54 43 43 ABLE_SYMBOLS.TCC
5680: 20 2b 3d 20 2d 67 0a 65 6c 73 65 0a 54 43 43 20 += -g.else.TCC
5690: 2b 3d 20 2d 4f 73 0a 65 6e 64 69 66 0a 0a 23 23 += -Os.endif..##
56a0: 23 23 20 57 68 65 6e 20 6e 6f 74 20 75 73 69 6e ## When not usin
56b0: 67 20 74 68 65 20 6d 69 6e 69 7a 20 63 6f 6d 70 g the miniz comp
56c0: 72 65 73 73 69 6f 6e 20 6c 69 62 72 61 72 79 2c ression library,
56d0: 20 7a 6c 69 62 20 69 73 20 72 65 71 75 69 72 65 zlib is require
56e0: 64 2e 0a 23 0a 69 66 6e 64 65 66 20 46 4f 53 53 d..#.ifndef FOSS
56f0: 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 0a IL_ENABLE_MINIZ.
5700: 54 43 43 20 2b 3d 20 2d 4c 24 28 5a 4c 49 42 44 TCC += -L$(ZLIBD
5710: 49 52 29 20 2d 49 24 28 5a 49 4e 43 44 49 52 29 IR) -I$(ZINCDIR)
5720: 0a 65 6e 64 69 66 0a 0a 23 23 23 23 20 43 6f 6d .endif..#### Com
5730: 70 69 6c 65 20 72 65 73 6f 75 72 63 65 73 20 66 pile resources f
5740: 6f 72 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69 or use in buildi
5750: 6e 67 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 ng executables t
5760: 68 61 74 20 77 69 6c 6c 20 72 75 6e 0a 23 20 20 hat will run.#
5770: 20 20 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 on the target
5780: 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 52 43 43 20 platform..#.RCC
5790: 3d 20 24 28 50 52 45 46 49 58 29 77 69 6e 64 72 = $(PREFIX)windr
57a0: 65 73 20 2d 49 24 28 53 52 43 44 49 52 29 0a 0a es -I$(SRCDIR)..
57b0: 69 66 6e 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e ifndef FOSSIL_EN
57c0: 41 42 4c 45 5f 4d 49 4e 49 5a 0a 52 43 43 20 2b ABLE_MINIZ.RCC +
57d0: 3d 20 2d 49 24 28 5a 49 4e 43 44 49 52 29 0a 65 = -I$(ZINCDIR).e
57e0: 6e 64 69 66 0a 0a 23 20 57 69 74 68 20 48 54 54 ndif..# With HTT
57f0: 50 53 20 73 75 70 70 6f 72 74 0a 69 66 64 65 66 PS support.ifdef
5800: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 FOSSIL_ENABLE_S
5810: 53 4c 0a 54 43 43 20 2b 3d 20 2d 4c 24 28 4f 50 SL.TCC += -L$(OP
5820: 45 4e 53 53 4c 4c 49 42 44 49 52 29 20 2d 49 24 ENSSLLIBDIR) -I$
5830: 28 4f 50 45 4e 53 53 4c 49 4e 43 44 49 52 29 0a (OPENSSLINCDIR).
5840: 52 43 43 20 2b 3d 20 2d 49 24 28 4f 50 45 4e 53 RCC += -I$(OPENS
5850: 53 4c 49 4e 43 44 49 52 29 0a 65 6e 64 69 66 0a SLINCDIR).endif.
5860: 0a 23 20 57 69 74 68 20 54 63 6c 20 73 75 70 70 .# With Tcl supp
5870: 6f 72 74 0a 69 66 64 65 66 20 46 4f 53 53 49 4c ort.ifdef FOSSIL
5880: 5f 45 4e 41 42 4c 45 5f 54 43 4c 0a 69 66 64 65 _ENABLE_TCL.ifde
5890: 66 20 46 4f 53 53 49 4c 5f 54 43 4c 5f 53 4f 55 f FOSSIL_TCL_SOU
58a0: 52 43 45 0a 54 43 43 20 2b 3d 20 2d 4c 24 28 54 RCE.TCC += -L$(T
58b0: 43 4c 53 52 43 44 49 52 29 2f 77 69 6e 20 2d 49 CLSRCDIR)/win -I
58c0: 24 28 54 43 4c 53 52 43 44 49 52 29 2f 67 65 6e $(TCLSRCDIR)/gen
58d0: 65 72 69 63 20 2d 49 24 28 54 43 4c 53 52 43 44 eric -I$(TCLSRCD
58e0: 49 52 29 2f 77 69 6e 0a 52 43 43 20 2b 3d 20 2d IR)/win.RCC += -
58f0: 49 24 28 54 43 4c 53 52 43 44 49 52 29 2f 67 65 I$(TCLSRCDIR)/ge
5900: 6e 65 72 69 63 20 2d 49 24 28 54 43 4c 53 52 43 neric -I$(TCLSRC
5910: 44 49 52 29 2f 77 69 6e 0a 65 6c 73 65 0a 54 43 DIR)/win.else.TC
5920: 43 20 2b 3d 20 2d 4c 24 28 54 43 4c 4c 49 42 44 C += -L$(TCLLIBD
5930: 49 52 29 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 IR) -I$(TCLINCDI
5940: 52 29 0a 52 43 43 20 2b 3d 20 2d 49 24 28 54 43 R).RCC += -I$(TC
5950: 4c 49 4e 43 44 49 52 29 0a 65 6e 64 69 66 0a 65 LINCDIR).endif.e
5960: 6e 64 69 66 0a 0a 23 20 57 69 74 68 20 6d 69 6e ndif..# With min
5970: 69 7a 20 28 69 2e 65 2e 20 69 6e 73 74 65 61 64 iz (i.e. instead
5980: 20 6f 66 20 7a 6c 69 62 29 0a 69 66 64 65 66 20 of zlib).ifdef
5990: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 FOSSIL_ENABLE_MI
59a0: 4e 49 5a 0a 54 43 43 20 2b 3d 20 2d 44 46 4f 53 NIZ.TCC += -DFOS
59b0: 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a SIL_ENABLE_MINIZ
59c0: 3d 31 0a 52 43 43 20 2b 3d 20 2d 44 46 4f 53 53 =1.RCC += -DFOSS
59d0: 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 3d IL_ENABLE_MINIZ=
59e0: 31 0a 65 6e 64 69 66 0a 0a 23 20 57 69 74 68 20 1.endif..# With
59f0: 4d 69 6e 47 57 20 63 6f 6d 6d 61 6e 64 20 6c 69 MinGW command li
5a00: 6e 65 20 68 61 6e 64 6c 69 6e 67 20 77 6f 72 6b ne handling work
5a10: 61 72 6f 75 6e 64 0a 69 66 64 65 66 20 4d 49 4e around.ifdef MIN
5a20: 47 57 5f 49 53 5f 33 32 42 49 54 5f 4f 4e 4c 59 GW_IS_32BIT_ONLY
5a30: 0a 54 43 43 20 2b 3d 20 2d 44 42 52 4f 4b 45 4e .TCC += -DBROKEN
5a40: 5f 4d 49 4e 47 57 5f 43 4d 44 4c 49 4e 45 3d 31 _MINGW_CMDLINE=1
5a50: 0a 52 43 43 20 2b 3d 20 2d 44 42 52 4f 4b 45 4e .RCC += -DBROKEN
5a60: 5f 4d 49 4e 47 57 5f 43 4d 44 4c 49 4e 45 3d 31 _MINGW_CMDLINE=1
5a70: 0a 65 6e 64 69 66 0a 0a 23 20 57 69 74 68 20 48 .endif..# With H
5a80: 54 54 50 53 20 73 75 70 70 6f 72 74 0a 69 66 64 TTPS support.ifd
5a90: 65 66 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 ef FOSSIL_ENABLE
5aa0: 5f 53 53 4c 0a 54 43 43 20 2b 3d 20 2d 44 46 4f _SSL.TCC += -DFO
5ab0: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c 3d SSIL_ENABLE_SSL=
5ac0: 31 0a 52 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 1.RCC += -DFOSSI
5ad0: 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c 3d 31 0a 65 L_ENABLE_SSL=1.e
5ae0: 6e 64 69 66 0a 0a 23 20 57 69 74 68 20 72 65 6c ndif..# With rel
5af0: 61 74 69 76 65 20 70 61 74 68 73 20 69 6e 20 65 ative paths in e
5b00: 78 74 65 72 6e 61 6c 20 64 69 66 66 2f 67 64 69 xternal diff/gdi
5b10: 66 66 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f ff.ifdef FOSSIL_
5b20: 45 4e 41 42 4c 45 5f 45 58 45 43 5f 52 45 4c 5f ENABLE_EXEC_REL_
5b30: 50 41 54 48 53 0a 54 43 43 20 2b 3d 20 2d 44 46 PATHS.TCC += -DF
5b40: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 45 58 45 OSSIL_ENABLE_EXE
5b50: 43 5f 52 45 4c 5f 50 41 54 48 53 3d 31 0a 52 43 C_REL_PATHS=1.RC
5b60: 43 20 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f 45 4e C += -DFOSSIL_EN
5b70: 41 42 4c 45 5f 45 58 45 43 5f 52 45 4c 5f 50 41 ABLE_EXEC_REL_PA
5b80: 54 48 53 3d 31 0a 65 6e 64 69 66 0a 0a 23 20 57 THS=1.endif..# W
5b90: 69 74 68 20 6c 65 67 61 63 79 20 74 72 65 61 74 ith legacy treat
5ba0: 6d 65 6e 74 20 6f 66 20 6d 76 2f 72 6d 0a 69 66 ment of mv/rm.if
5bb0: 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c def FOSSIL_ENABL
5bc0: 45 5f 4c 45 47 41 43 59 5f 4d 56 5f 52 4d 0a 54 E_LEGACY_MV_RM.T
5bd0: 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f 45 CC += -DFOSSIL_E
5be0: 4e 41 42 4c 45 5f 4c 45 47 41 43 59 5f 4d 56 5f NABLE_LEGACY_MV_
5bf0: 52 4d 3d 31 0a 52 43 43 20 2b 3d 20 2d 44 46 4f RM=1.RCC += -DFO
5c00: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4c 45 47 41 SSIL_ENABLE_LEGA
5c10: 43 59 5f 4d 56 5f 52 4d 3d 31 0a 65 6e 64 69 66 CY_MV_RM=1.endif
5c20: 0a 0a 23 20 57 69 74 68 20 54 48 31 20 65 6d 62 ..# With TH1 emb
5c30: 65 64 64 65 64 20 64 6f 63 73 20 73 75 70 70 6f edded docs suppo
5c40: 72 74 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f rt.ifdef FOSSIL_
5c50: 45 4e 41 42 4c 45 5f 54 48 31 5f 44 4f 43 53 0a ENABLE_TH1_DOCS.
5c60: 54 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f TCC += -DFOSSIL_
5c70: 45 4e 41 42 4c 45 5f 54 48 31 5f 44 4f 43 53 3d ENABLE_TH1_DOCS=
5c80: 31 0a 52 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 1.RCC += -DFOSSI
5c90: 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 5f 44 4f 43 L_ENABLE_TH1_DOC
5ca0: 53 3d 31 0a 65 6e 64 69 66 0a 0a 23 20 57 69 74 S=1.endif..# Wit
5cb0: 68 20 54 48 31 20 68 6f 6f 6b 20 73 75 70 70 6f h TH1 hook suppo
5cc0: 72 74 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f rt.ifdef FOSSIL_
5cd0: 45 4e 41 42 4c 45 5f 54 48 31 5f 48 4f 4f 4b 53 ENABLE_TH1_HOOKS
5ce0: 0a 54 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 4c .TCC += -DFOSSIL
5cf0: 5f 45 4e 41 42 4c 45 5f 54 48 31 5f 48 4f 4f 4b _ENABLE_TH1_HOOK
5d00: 53 3d 31 0a 52 43 43 20 2b 3d 20 2d 44 46 4f 53 S=1.RCC += -DFOS
5d10: 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 5f 48 SIL_ENABLE_TH1_H
5d20: 4f 4f 4b 53 3d 31 0a 65 6e 64 69 66 0a 0a 23 20 OOKS=1.endif..#
5d30: 57 69 74 68 20 54 63 6c 20 73 75 70 70 6f 72 74 With Tcl support
5d40: 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e .ifdef FOSSIL_EN
5d50: 41 42 4c 45 5f 54 43 4c 0a 54 43 43 20 2b 3d 20 ABLE_TCL.TCC +=
5d60: 2d 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f -DFOSSIL_ENABLE_
5d70: 54 43 4c 3d 31 0a 52 43 43 20 2b 3d 20 2d 44 46 TCL=1.RCC += -DF
5d80: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c OSSIL_ENABLE_TCL
5d90: 3d 31 0a 23 20 45 69 74 68 65 72 20 73 74 61 74 =1.# Either stat
5da0: 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20 6f 72 ically linked or
5db0: 20 76 69 61 20 73 74 75 62 73 0a 69 66 64 65 66 via stubs.ifdef
5dc0: 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 FOSSIL_ENABLE_T
5dd0: 43 4c 5f 53 54 55 42 53 0a 54 43 43 20 2b 3d 20 CL_STUBS.TCC +=
5de0: 2d 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f -DFOSSIL_ENABLE_
5df0: 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d 44 55 53 TCL_STUBS=1 -DUS
5e00: 45 5f 54 43 4c 5f 53 54 55 42 53 0a 52 43 43 20 E_TCL_STUBS.RCC
5e10: 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f 45 4e 41 42 += -DFOSSIL_ENAB
5e20: 4c 45 5f 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d LE_TCL_STUBS=1 -
5e30: 44 55 53 45 5f 54 43 4c 5f 53 54 55 42 53 0a 69 DUSE_TCL_STUBS.i
5e40: 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e 41 42 fdef FOSSIL_ENAB
5e50: 4c 45 5f 54 43 4c 5f 50 52 49 56 41 54 45 5f 53 LE_TCL_PRIVATE_S
5e60: 54 55 42 53 0a 54 43 43 20 2b 3d 20 2d 44 46 4f TUBS.TCC += -DFO
5e70: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c 5f SSIL_ENABLE_TCL_
5e80: 50 52 49 56 41 54 45 5f 53 54 55 42 53 3d 31 0a PRIVATE_STUBS=1.
5e90: 52 43 43 20 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f RCC += -DFOSSIL_
5ea0: 45 4e 41 42 4c 45 5f 54 43 4c 5f 50 52 49 56 41 ENABLE_TCL_PRIVA
5eb0: 54 45 5f 53 54 55 42 53 3d 31 0a 65 6e 64 69 66 TE_STUBS=1.endif
5ec0: 0a 65 6c 73 65 0a 54 43 43 20 2b 3d 20 2d 44 53 .else.TCC += -DS
5ed0: 54 41 54 49 43 5f 42 55 49 4c 44 0a 52 43 43 20 TATIC_BUILD.RCC
5ee0: 2b 3d 20 2d 44 53 54 41 54 49 43 5f 42 55 49 4c += -DSTATIC_BUIL
5ef0: 44 0a 65 6e 64 69 66 0a 65 6e 64 69 66 0a 0a 23 D.endif.endif..#
5f00: 20 57 69 74 68 20 4a 53 4f 4e 20 73 75 70 70 6f With JSON suppo
5f10: 72 74 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f rt.ifdef FOSSIL_
5f20: 45 4e 41 42 4c 45 5f 4a 53 4f 4e 0a 54 43 43 20 ENABLE_JSON.TCC
5f30: 2b 3d 20 2d 44 46 4f 53 53 49 4c 5f 45 4e 41 42 += -DFOSSIL_ENAB
5f40: 4c 45 5f 4a 53 4f 4e 3d 31 0a 52 43 43 20 2b 3d LE_JSON=1.RCC +=
5f50: 20 2d 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 -DFOSSIL_ENABLE
5f60: 5f 4a 53 4f 4e 3d 31 0a 65 6e 64 69 66 0a 0a 23 _JSON=1.endif..#
5f70: 20 57 69 74 68 20 53 51 4c 69 74 65 20 45 6e 63 With SQLite Enc
5f80: 72 79 70 74 69 6f 6e 20 45 78 74 65 6e 73 69 6f ryption Extensio
5f90: 6e 20 73 75 70 70 6f 72 74 0a 69 66 64 65 66 20 n support.ifdef
5fa0: 55 53 45 5f 53 45 45 0a 54 43 43 20 2b 3d 20 2d USE_SEE.TCC += -
5fb0: 44 55 53 45 5f 53 45 45 3d 31 0a 52 43 43 20 2b DUSE_SEE=1.RCC +
5fc0: 3d 20 2d 44 55 53 45 5f 53 45 45 3d 31 0a 65 6e = -DUSE_SEE=1.en
5fd0: 64 69 66 0a 0a 23 23 23 23 20 54 68 65 20 6f 70 dif..#### The op
5fe0: 74 69 6f 6e 20 2d 73 74 61 74 69 63 20 68 61 73 tion -static has
5ff0: 20 6e 6f 20 65 66 66 65 63 74 20 6f 6e 20 4d 69 no effect on Mi
6000: 6e 47 57 28 2d 77 36 34 29 2c 20 6f 6e 6c 79 20 nGW(-w64), only
6010: 64 79 6e 61 6d 69 63 0a 23 20 20 20 20 65 78 65 dynamic.# exe
6020: 63 75 74 61 62 6c 65 73 20 63 61 6e 20 62 65 20 cutables can be
6030: 62 75 69 6c 74 20 77 68 65 6e 20 6c 69 6e 6b 69 built when linki
6040: 6e 67 20 77 69 74 68 20 4d 53 56 43 52 54 2e 20 ng with MSVCRT.
6050: 20 4f 70 65 6e 53 53 4c 0a 23 20 20 20 20 28 6f OpenSSL.# (o
6060: 70 74 69 6f 6e 61 6c 29 20 61 6e 64 20 7a 6c 69 ptional) and zli
6070: 62 20 28 72 65 71 75 69 72 65 64 29 20 68 6f 77 b (required) how
6080: 65 76 65 72 20 61 72 65 20 61 6c 77 61 79 73 20 ever are always
6090: 6c 69 6e 6b 65 64 20 69 6e 0a 23 20 20 20 20 73 linked in.# s
60a0: 74 61 74 69 63 61 6c 6c 79 2e 20 20 54 68 65 72 tatically. Ther
60b0: 65 66 6f 72 65 2c 20 74 68 65 20 46 4f 53 53 49 efore, the FOSSI
60c0: 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 49 4c 44 20 L_DYNAMIC_BUILD
60d0: 6f 70 74 69 6f 6e 20 64 6f 65 73 0a 23 20 20 20 option does.#
60e0: 20 6e 6f 74 20 72 65 61 6c 6c 79 20 61 70 70 6c not really appl
60f0: 79 20 74 6f 20 4d 69 6e 47 57 20 28 69 2e 65 2e y to MinGW (i.e.
6100: 20 73 69 6e 63 65 20 41 4c 4c 20 65 78 74 65 72 since ALL exter
6110: 6e 61 6c 20 6c 69 62 72 61 72 69 65 73 0a 23 20 nal libraries.#
6120: 20 20 20 61 72 65 20 4e 4f 54 20 6c 69 6e 6b 65 are NOT linke
6130: 64 20 64 79 6e 61 6d 69 63 61 6c 6c 79 29 2e 0a d dynamically)..
6140: 23 0a 23 20 4c 49 42 20 3d 20 2d 73 74 61 74 69 #.# LIB = -stati
6150: 63 0a 0a 23 23 23 23 20 4d 69 6e 47 57 3a 20 49 c..#### MinGW: I
6160: 66 20 61 76 61 69 6c 61 62 6c 65 2c 20 75 73 65 f available, use
6170: 20 74 68 65 20 55 6e 69 63 6f 64 65 20 63 61 70 the Unicode cap
6180: 61 62 6c 65 20 72 75 6e 74 69 6d 65 20 73 74 61 able runtime sta
6190: 72 74 75 70 20 63 6f 64 65 2e 0a 23 0a 69 66 6e rtup code..#.ifn
61a0: 64 65 66 20 4d 49 4e 47 57 5f 49 53 5f 33 32 42 def MINGW_IS_32B
61b0: 49 54 5f 4f 4e 4c 59 0a 4c 49 42 20 2b 3d 20 2d IT_ONLY.LIB += -
61c0: 6d 75 6e 69 63 6f 64 65 0a 65 6e 64 69 66 0a 0a municode.endif..
61d0: 23 23 23 23 20 53 51 4c 69 74 65 3a 20 49 66 20 #### SQLite: If
61e0: 65 6e 61 62 6c 65 64 2c 20 75 73 65 20 74 68 65 enabled, use the
61f0: 20 73 79 73 74 65 6d 20 53 51 4c 69 74 65 20 6c system SQLite l
6200: 69 62 72 61 72 79 2e 0a 23 0a 69 66 64 65 66 20 ibrary..#.ifdef
6210: 55 53 45 5f 53 59 53 54 45 4d 5f 53 51 4c 49 54 USE_SYSTEM_SQLIT
6220: 45 0a 4c 49 42 20 2b 3d 20 2d 6c 73 71 6c 69 74 E.LIB += -lsqlit
6230: 65 33 0a 65 6e 64 69 66 0a 0a 23 23 23 23 20 4f e3.endif..#### O
6240: 70 65 6e 53 53 4c 3a 20 41 64 64 20 74 68 65 20 penSSL: Add the
6250: 6e 65 63 65 73 73 61 72 79 20 6c 69 62 72 61 72 necessary librar
6260: 69 65 73 20 72 65 71 75 69 72 65 64 2c 20 69 66 ies required, if
6270: 20 65 6e 61 62 6c 65 64 2e 0a 23 0a 69 66 64 65 enabled..#.ifde
6280: 66 20 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f f FOSSIL_ENABLE_
6290: 53 53 4c 0a 4c 49 42 20 2b 3d 20 2d 6c 73 73 6c SSL.LIB += -lssl
62a0: 20 2d 6c 63 72 79 70 74 6f 20 2d 6c 67 64 69 33 -lcrypto -lgdi3
62b0: 32 20 2d 6c 63 72 79 70 74 33 32 0a 65 6e 64 69 2 -lcrypt32.endi
62c0: 66 0a 0a 23 23 23 23 20 54 63 6c 3a 20 41 64 64 f..#### Tcl: Add
62d0: 20 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 6c the necessary l
62e0: 69 62 72 61 72 69 65 73 20 72 65 71 75 69 72 65 ibraries require
62f0: 64 2c 20 69 66 20 65 6e 61 62 6c 65 64 2e 0a 23 d, if enabled..#
6300: 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e .ifdef FOSSIL_EN
6310: 41 42 4c 45 5f 54 43 4c 0a 4c 49 42 20 2b 3d 20 ABLE_TCL.LIB +=
6320: 24 28 4c 49 42 54 43 4c 29 0a 65 6e 64 69 66 0a $(LIBTCL).endif.
6330: 0a 23 23 23 23 20 45 78 74 72 61 20 61 72 67 75 .#### Extra argu
6340: 6d 65 6e 74 73 20 66 6f 72 20 6c 69 6e 6b 69 6e ments for linkin
6350: 67 20 74 68 65 20 66 69 6e 69 73 68 65 64 20 62 g the finished b
6360: 69 6e 61 72 79 2e 20 20 46 6f 73 73 69 6c 20 6e inary. Fossil n
6370: 65 65 64 73 0a 23 20 20 20 20 74 6f 20 6c 69 6e eeds.# to lin
6380: 6b 20 61 67 61 69 6e 73 74 20 74 68 65 20 5a 2d k against the Z-
6390: 4c 69 62 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 Lib compression
63a0: 6c 69 62 72 61 72 79 2e 20 20 54 68 65 72 65 20 library. There
63b0: 61 72 65 20 6e 6f 0a 23 20 20 20 20 6f 74 68 65 are no.# othe
63c0: 72 20 6d 61 6e 64 61 74 6f 72 79 20 64 65 70 65 r mandatory depe
63d0: 6e 64 65 6e 63 69 65 73 2e 0a 23 0a 4c 49 42 20 ndencies..#.LIB
63e0: 2b 3d 20 2d 6c 6d 69 6e 67 77 65 78 0a 0a 23 23 += -lmingwex..##
63f0: 23 23 20 57 68 65 6e 20 6e 6f 74 20 75 73 69 6e ## When not usin
6400: 67 20 74 68 65 20 6d 69 6e 69 7a 20 63 6f 6d 70 g the miniz comp
6410: 72 65 73 73 69 6f 6e 20 6c 69 62 72 61 72 79 2c ression library,
6420: 20 7a 6c 69 62 20 69 73 20 72 65 71 75 69 72 65 zlib is require
6430: 64 2e 0a 23 0a 69 66 6e 64 65 66 20 46 4f 53 53 d..#.ifndef FOSS
6440: 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 0a IL_ENABLE_MINIZ.
6450: 4c 49 42 20 2b 3d 20 2d 6c 7a 0a 65 6e 64 69 66 LIB += -lz.endif
6460: 0a 0a 23 23 23 23 20 54 68 65 73 65 20 6c 69 62 ..#### These lib
6470: 72 61 72 69 65 73 20 4d 55 53 54 20 61 70 70 65 raries MUST appe
6480: 61 72 20 69 6e 20 74 68 65 20 73 61 6d 65 20 6f ar in the same o
6490: 72 64 65 72 20 61 73 20 74 68 65 79 20 64 6f 20 rder as they do
64a0: 66 6f 72 20 54 63 6c 0a 23 20 20 20 20 6f 72 20 for Tcl.# or
64b0: 6c 69 6e 6b 69 6e 67 20 77 69 74 68 20 69 74 20 linking with it
64c0: 77 69 6c 6c 20 6e 6f 74 20 77 6f 72 6b 20 28 65 will not work (e
64d0: 78 61 63 74 20 72 65 61 73 6f 6e 20 75 6e 6b 6e xact reason unkn
64e0: 6f 77 6e 29 2e 0a 23 0a 69 66 64 65 66 20 46 4f own)..#.ifdef FO
64f0: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c 0a SSIL_ENABLE_TCL.
6500: 69 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e 41 ifdef FOSSIL_ENA
6510: 42 4c 45 5f 54 43 4c 5f 53 54 55 42 53 0a 4c 49 BLE_TCL_STUBS.LI
6520: 42 20 2b 3d 20 2d 6c 6b 65 72 6e 65 6c 33 32 20 B += -lkernel32
6530: 2d 6c 77 73 32 5f 33 32 0a 65 6c 73 65 0a 4c 49 -lws2_32.else.LI
6540: 42 20 2b 3d 20 2d 6c 6e 65 74 61 70 69 33 32 20 B += -lnetapi32
6550: 2d 6c 6b 65 72 6e 65 6c 33 32 20 2d 6c 75 73 65 -lkernel32 -luse
6560: 72 33 32 20 2d 6c 61 64 76 61 70 69 33 32 20 2d r32 -ladvapi32 -
6570: 6c 77 73 32 5f 33 32 0a 65 6e 64 69 66 0a 65 6c lws2_32.endif.el
6580: 73 65 0a 4c 49 42 20 2b 3d 20 2d 6c 6b 65 72 6e se.LIB += -lkern
6590: 65 6c 33 32 20 2d 6c 77 73 32 5f 33 32 0a 65 6e el32 -lws2_32.en
65a0: 64 69 66 0a 0a 23 23 23 23 20 54 63 6c 20 73 68 dif..#### Tcl sh
65b0: 65 6c 6c 20 66 6f 72 20 75 73 65 20 69 6e 20 72 ell for use in r
65c0: 75 6e 6e 69 6e 67 20 74 68 65 20 66 6f 73 73 69 unning the fossi
65d0: 6c 20 74 65 73 74 20 73 75 69 74 65 2e 20 20 54 l test suite. T
65e0: 68 69 73 20 69 73 20 6f 6e 6c 79 0a 23 20 20 20 his is only.#
65f0: 20 75 73 65 64 20 66 6f 72 20 74 65 73 74 69 6e used for testin
6600: 67 2e 0a 23 0a 54 43 4c 53 48 20 3d 20 74 63 6c g..#.TCLSH = tcl
6610: 73 68 0a 0a 23 23 23 23 20 4e 75 6c 6c 73 6f 66 sh..#### Nullsof
6620: 74 20 69 6e 73 74 61 6c 6c 65 72 20 4d 61 6b 65 t installer Make
6630: 4e 53 49 53 20 6c 6f 63 61 74 69 6f 6e 0a 23 0a NSIS location.#.
6640: 4d 41 4b 45 4e 53 49 53 20 3d 20 22 24 28 50 52 MAKENSIS = "$(PR
6650: 4f 47 52 41 4d 46 49 4c 45 53 29 5c 4e 53 49 53 OGRAMFILES)\NSIS
6660: 5c 4d 61 6b 65 4e 53 49 53 2e 65 78 65 22 0a 0a \MakeNSIS.exe"..
6670: 23 23 23 23 20 49 6e 6e 6f 20 53 65 74 75 70 20 #### Inno Setup
6680: 65 78 65 63 75 74 61 62 6c 65 20 6c 6f 63 61 74 executable locat
6690: 69 6f 6e 0a 23 0a 49 4e 4e 4f 53 45 54 55 50 20 ion.#.INNOSETUP
66a0: 3d 20 22 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 = "$(PROGRAMFILE
66b0: 53 29 5c 49 6e 6e 6f 20 53 65 74 75 70 20 35 5c S)\Inno Setup 5\
66c0: 49 53 43 43 2e 65 78 65 22 0a 0a 23 23 23 23 20 ISCC.exe"..####
66d0: 49 6e 63 6c 75 64 65 20 61 20 63 6f 6e 66 69 67 Include a config
66e0: 75 72 61 74 69 6f 6e 20 66 69 6c 65 20 74 68 61 uration file tha
66f0: 74 20 63 61 6e 20 6f 76 65 72 72 69 64 65 20 61 t can override a
6700: 6e 79 20 6f 6e 65 20 6f 66 20 74 68 65 73 65 20 ny one of these
6710: 73 65 74 74 69 6e 67 73 2e 0a 23 0a 2d 69 6e 63 settings..#.-inc
6720: 6c 75 64 65 20 63 6f 6e 66 69 67 2e 77 33 32 0a lude config.w32.
6730: 0a 23 20 53 54 4f 50 20 48 45 52 45 0a 23 20 59 .# STOP HERE.# Y
6740: 6f 75 20 73 68 6f 75 6c 64 20 6e 6f 74 20 6e 65 ou should not ne
6750: 65 64 20 74 6f 20 63 68 61 6e 67 65 20 61 6e 79 ed to change any
6760: 74 68 69 6e 67 20 62 65 6c 6f 77 20 74 68 69 73 thing below this
6770: 20 6c 69 6e 65 0a 23 2d 2d 2d 2d 2d 2d 2d 2d 2d line.#---------
6780: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
6790: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ----------------
67a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a ---------------.
67b0: 58 42 43 43 20 3d 20 24 28 42 43 43 29 20 24 28 XBCC = $(BCC) $(
67c0: 43 46 4c 41 47 53 29 0a 58 54 43 43 20 3d 20 24 CFLAGS).XTCC = $
67d0: 28 54 43 43 29 20 24 28 43 46 4c 41 47 53 29 20 (TCC) $(CFLAGS)
67e0: 2d 49 2e 20 2d 49 24 28 53 52 43 44 49 52 29 0a -I. -I$(SRCDIR).
67f0: 7d 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 }.writeln -nonew
6800: 6c 69 6e 65 20 22 53 52 43 20 3d 22 0a 66 6f 72 line "SRC =".for
6810: 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 each s [lsort $s
6820: 72 63 5d 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 rc] {. writeln
6830: 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 20 5c 5c 5c -nonewline " \\\
6840: 6e 20 20 5c 24 28 53 52 43 44 49 52 29 2f 24 73 n \$(SRCDIR)/$s
6850: 2e 63 22 0a 7d 0a 77 72 69 74 65 6c 6e 20 22 5c .c".}.writeln "\
6860: 6e 22 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 n".writeln -none
6870: 77 6c 69 6e 65 20 22 45 58 54 52 41 5f 46 49 4c wline "EXTRA_FIL
6880: 45 53 20 3d 22 0a 66 6f 72 65 61 63 68 20 73 20 ES =".foreach s
6890: 5b 6c 73 6f 72 74 20 24 65 78 74 72 61 5f 66 69 [lsort $extra_fi
68a0: 6c 65 73 5d 20 7b 0a 20 20 77 72 69 74 65 6c 6e les] {. writeln
68b0: 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 20 5c 5c -nonewline " \\
68c0: 5c 6e 20 20 5c 24 28 53 52 43 44 49 52 29 2f 24 \n \$(SRCDIR)/$
68d0: 73 22 0a 7d 0a 77 72 69 74 65 6c 6e 20 22 5c 6e s".}.writeln "\n
68e0: 22 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 ".writeln -nonew
68f0: 6c 69 6e 65 20 22 54 52 41 4e 53 5f 53 52 43 20 line "TRANS_SRC
6900: 3d 22 0a 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 =".foreach s [ls
6910: 6f 72 74 20 24 73 72 63 5d 20 7b 0a 20 20 77 72 ort $src] {. wr
6920: 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 iteln -nonewline
6930: 20 22 20 5c 5c 5c 6e 20 20 5c 24 28 4f 42 4a 44 " \\\n \$(OBJD
6940: 49 52 29 2f 24 7b 73 7d 5f 2e 63 22 0a 7d 0a 77 IR)/${s}_.c".}.w
6950: 72 69 74 65 6c 6e 20 22 5c 6e 22 0a 77 72 69 74 riteln "\n".writ
6960: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
6970: 4f 42 4a 20 3d 22 0a 66 6f 72 65 61 63 68 20 73 OBJ =".foreach s
6980: 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 7b 0a [lsort $src] {.
6990: 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 writeln -nonew
69a0: 6c 69 6e 65 20 22 20 5c 5c 5c 6e 20 5c 24 28 4f line " \\\n \$(O
69b0: 42 4a 44 49 52 29 2f 24 73 2e 6f 22 0a 7d 0a 77 BJDIR)/$s.o".}.w
69c0: 72 69 74 65 6c 6e 20 22 5c 6e 22 0a 77 72 69 74 riteln "\n".writ
69d0: 65 6c 6e 20 22 41 50 50 4e 41 4d 45 20 20 20 20 eln "APPNAME
69e0: 3d 20 24 7b 6e 61 6d 65 7d 2e 65 78 65 22 0a 77 = ${name}.exe".w
69f0: 72 69 74 65 6c 6e 20 22 41 50 50 54 41 52 47 45 riteln "APPTARGE
6a00: 54 53 20 3d 22 0a 77 72 69 74 65 6c 6e 20 7b 0a TS =".writeln {.
6a10: 23 23 23 23 20 49 66 20 74 68 65 20 55 53 45 5f #### If the USE_
6a20: 57 49 4e 44 4f 57 53 20 76 61 72 69 61 62 6c 65 WINDOWS variable
6a30: 20 65 78 69 73 74 73 2c 20 69 74 20 69 73 20 61 exists, it is a
6a40: 73 73 75 6d 65 64 20 74 68 61 74 20 77 65 20 61 ssumed that we a
6a50: 72 65 20 62 75 69 6c 64 69 6e 67 0a 23 20 20 20 re building.#
6a60: 20 69 6e 73 69 64 65 20 6f 66 20 61 20 57 69 6e inside of a Win
6a70: 64 6f 77 73 2d 73 74 79 6c 65 20 73 68 65 6c 6c dows-style shell
6a80: 3b 20 6f 74 68 65 72 77 69 73 65 2c 20 69 74 20 ; otherwise, it
6a90: 69 73 20 61 73 73 75 6d 65 64 20 74 68 61 74 20 is assumed that
6aa0: 77 65 20 61 72 65 0a 23 20 20 20 20 62 75 69 6c we are.# buil
6ab0: 64 69 6e 67 20 69 6e 73 69 64 65 20 6f 66 20 61 ding inside of a
6ac0: 20 55 6e 69 78 2d 73 74 79 6c 65 20 73 68 65 6c Unix-style shel
6ad0: 6c 2e 20 20 4e 6f 74 65 20 74 68 61 74 20 74 68 l. Note that th
6ae0: 65 20 22 6d 6f 76 65 22 20 63 6f 6d 6d 61 6e 64 e "move" command
6af0: 20 69 73 0a 23 20 20 20 20 62 72 6f 6b 65 6e 20 is.# broken
6b00: 77 68 65 6e 20 61 74 74 65 6d 70 74 69 6e 67 20 when attempting
6b10: 74 6f 20 75 73 65 20 69 74 20 66 72 6f 6d 20 74 to use it from t
6b20: 68 65 20 57 69 6e 64 6f 77 73 20 73 68 65 6c 6c he Windows shell
6b30: 20 76 69 61 20 4d 69 6e 47 57 20 6d 61 6b 65 0a via MinGW make.
6b40: 23 20 20 20 20 62 65 63 61 75 73 65 20 74 68 65 # because the
6b50: 20 53 48 45 4c 4c 20 76 61 72 69 61 62 6c 65 20 SHELL variable
6b60: 69 73 20 6f 6e 6c 79 20 75 73 65 64 20 66 6f 72 is only used for
6b70: 20 63 65 72 74 61 69 6e 20 63 6f 6d 6d 61 6e 64 certain command
6b80: 73 20 74 68 61 74 20 61 72 65 0a 23 20 20 20 20 s that are.#
6b90: 72 65 63 6f 67 6e 69 7a 65 64 20 69 6e 74 65 72 recognized inter
6ba0: 6e 61 6c 6c 79 20 62 79 20 6d 61 6b 65 2e 0a 23 nally by make..#
6bb0: 0a 69 66 64 65 66 20 55 53 45 5f 57 49 4e 44 4f .ifdef USE_WINDO
6bc0: 57 53 0a 54 52 41 4e 53 4c 41 54 45 20 20 20 3d WS.TRANSLATE =
6bd0: 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 4f $(subst /,\,$(O
6be0: 42 4a 44 49 52 29 2f 74 72 61 6e 73 6c 61 74 65 BJDIR)/translate
6bf0: 2e 65 78 65 29 0a 4d 41 4b 45 48 45 41 44 45 52 .exe).MAKEHEADER
6c00: 53 20 3d 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c S = $(subst /,\,
6c10: 24 28 4f 42 4a 44 49 52 29 2f 6d 61 6b 65 68 65 $(OBJDIR)/makehe
6c20: 61 64 65 72 73 2e 65 78 65 29 0a 4d 4b 49 4e 44 aders.exe).MKIND
6c30: 45 58 20 20 20 20 20 3d 20 24 28 73 75 62 73 74 EX = $(subst
6c40: 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 52 29 2f 6d /,\,$(OBJDIR)/m
6c50: 6b 69 6e 64 65 78 2e 65 78 65 29 0a 4d 4b 42 55 kindex.exe).MKBU
6c60: 49 4c 54 49 4e 20 20 20 3d 20 24 28 73 75 62 73 ILTIN = $(subs
6c70: 74 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 52 29 2f t /,\,$(OBJDIR)/
6c80: 6d 6b 62 75 69 6c 74 69 6e 2e 65 78 65 29 0a 4d mkbuiltin.exe).M
6c90: 4b 56 45 52 53 49 4f 4e 20 20 20 3d 20 24 28 73 KVERSION = $(s
6ca0: 75 62 73 74 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 ubst /,\,$(OBJDI
6cb0: 52 29 2f 6d 6b 76 65 72 73 69 6f 6e 2e 65 78 65 R)/mkversion.exe
6cc0: 29 0a 4d 4b 43 53 53 20 20 20 20 20 20 20 3d 20 ).MKCSS =
6cd0: 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 4f 42 $(subst /,\,$(OB
6ce0: 4a 44 49 52 29 2f 6d 6b 63 73 73 2e 65 78 65 29 JDIR)/mkcss.exe)
6cf0: 0a 43 4f 44 45 43 48 45 43 4b 31 20 20 3d 20 24 .CODECHECK1 = $
6d00: 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 4f 42 4a (subst /,\,$(OBJ
6d10: 44 49 52 29 2f 63 6f 64 65 63 68 65 63 6b 31 2e DIR)/codecheck1.
6d20: 65 78 65 29 0a 43 41 54 20 20 20 20 20 20 20 20 exe).CAT
6d30: 20 3d 20 74 79 70 65 0a 43 50 20 20 20 20 20 20 = type.CP
6d40: 20 20 20 20 3d 20 63 6f 70 79 0a 47 52 45 50 20 = copy.GREP
6d50: 20 20 20 20 20 20 20 3d 20 66 69 6e 64 0a 4d 56 = find.MV
6d60: 20 20 20 20 20 20 20 20 20 20 3d 20 63 6f 70 79 = copy
6d70: 0a 52 4d 20 20 20 20 20 20 20 20 20 20 3d 20 64 .RM = d
6d80: 65 6c 20 2f 51 0a 4d 4b 44 49 52 20 20 20 20 20 el /Q.MKDIR
6d90: 20 20 3d 20 2d 6d 6b 64 69 72 0a 52 4d 44 49 52 = -mkdir.RMDIR
6da0: 20 20 20 20 20 20 20 3d 20 72 6d 64 69 72 20 2f = rmdir /
6db0: 53 20 2f 51 0a 65 6c 73 65 0a 54 52 41 4e 53 4c S /Q.else.TRANSL
6dc0: 41 54 45 20 20 20 3d 20 24 28 4f 42 4a 44 49 52 ATE = $(OBJDIR
6dd0: 29 2f 74 72 61 6e 73 6c 61 74 65 2e 65 78 65 0a )/translate.exe.
6de0: 4d 41 4b 45 48 45 41 44 45 52 53 20 3d 20 24 28 MAKEHEADERS = $(
6df0: 4f 42 4a 44 49 52 29 2f 6d 61 6b 65 68 65 61 64 OBJDIR)/makehead
6e00: 65 72 73 2e 65 78 65 0a 4d 4b 49 4e 44 45 58 20 ers.exe.MKINDEX
6e10: 20 20 20 20 3d 20 24 28 4f 42 4a 44 49 52 29 2f = $(OBJDIR)/
6e20: 6d 6b 69 6e 64 65 78 2e 65 78 65 0a 4d 4b 42 55 mkindex.exe.MKBU
6e30: 49 4c 54 49 4e 20 20 20 3d 20 24 28 4f 42 4a 44 ILTIN = $(OBJD
6e40: 49 52 29 2f 6d 6b 62 75 69 6c 74 69 6e 2e 65 78 IR)/mkbuiltin.ex
6e50: 65 0a 4d 4b 56 45 52 53 49 4f 4e 20 20 20 3d 20 e.MKVERSION =
6e60: 24 28 4f 42 4a 44 49 52 29 2f 6d 6b 76 65 72 73 $(OBJDIR)/mkvers
6e70: 69 6f 6e 2e 65 78 65 0a 4d 4b 43 53 53 20 20 20 ion.exe.MKCSS
6e80: 20 20 20 20 3d 20 24 28 4f 42 4a 44 49 52 29 2f = $(OBJDIR)/
6e90: 6d 6b 63 73 73 2e 65 78 65 0a 43 4f 44 45 43 48 mkcss.exe.CODECH
6ea0: 45 43 4b 31 20 20 3d 20 24 28 4f 42 4a 44 49 52 ECK1 = $(OBJDIR
6eb0: 29 2f 63 6f 64 65 63 68 65 63 6b 31 2e 65 78 65 )/codecheck1.exe
6ec0: 0a 43 41 54 20 20 20 20 20 20 20 20 20 3d 20 63 .CAT = c
6ed0: 61 74 0a 43 50 20 20 20 20 20 20 20 20 20 20 3d at.CP =
6ee0: 20 63 70 0a 47 52 45 50 20 20 20 20 20 20 20 20 cp.GREP
6ef0: 3d 20 67 72 65 70 0a 4d 56 20 20 20 20 20 20 20 = grep.MV
6f00: 20 20 20 3d 20 6d 76 0a 52 4d 20 20 20 20 20 20 = mv.RM
6f10: 20 20 20 20 3d 20 72 6d 20 2d 66 0a 4d 4b 44 49 = rm -f.MKDI
6f20: 52 20 20 20 20 20 20 20 3d 20 2d 6d 6b 64 69 72 R = -mkdir
6f30: 20 2d 70 0a 52 4d 44 49 52 20 20 20 20 20 20 20 -p.RMDIR
6f40: 3d 20 72 6d 20 2d 72 66 0a 65 6e 64 69 66 7d 0a = rm -rf.endif}.
6f50: 0a 77 72 69 74 65 6c 6e 20 7b 0a 61 6c 6c 3a 09 .writeln {.all:.
6f60: 24 28 4f 42 4a 44 49 52 29 20 24 28 41 50 50 4e $(OBJDIR) $(APPN
6f70: 41 4d 45 29 0a 0a 24 28 4f 42 4a 44 49 52 29 2f AME)..$(OBJDIR)/
6f80: 66 6f 73 73 69 6c 2e 6f 3a 09 24 28 53 52 43 44 fossil.o:.$(SRCD
6f90: 49 52 29 2f 2e 2e 2f 77 69 6e 2f 66 6f 73 73 69 IR)/../win/fossi
6fa0: 6c 2e 72 63 20 24 28 4f 42 4a 44 49 52 29 2f 56 l.rc $(OBJDIR)/V
6fb0: 45 52 53 49 4f 4e 2e 68 20 24 28 4f 42 4a 44 49 ERSION.h $(OBJDI
6fc0: 52 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 2e 68 R)/default_css.h
6fd0: 0a 69 66 64 65 66 20 55 53 45 5f 57 49 4e 44 4f .ifdef USE_WINDO
6fe0: 57 53 0a 09 24 28 43 41 54 29 20 24 28 73 75 62 WS..$(CAT) $(sub
6ff0: 73 74 20 2f 2c 5c 2c 24 28 53 52 43 44 49 52 29 st /,\,$(SRCDIR)
7000: 5c 6d 69 6e 69 7a 2e 63 29 20 7c 20 24 28 47 52 \miniz.c) | $(GR
7010: 45 50 29 20 22 64 65 66 69 6e 65 20 4d 5a 5f 56 EP) "define MZ_V
7020: 45 52 53 49 4f 4e 22 20 3e 20 24 28 73 75 62 73 ERSION" > $(subs
7030: 74 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 52 29 5c t /,\,$(OBJDIR)\
7040: 6d 69 6e 69 7a 76 65 72 2e 68 29 0a 09 24 28 43 minizver.h)..$(C
7050: 50 29 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 P) $(subst /,\,$
7060: 28 53 52 43 44 49 52 29 5c 2e 2e 5c 77 69 6e 5c (SRCDIR)\..\win\
7070: 66 6f 73 73 69 6c 2e 72 63 29 20 24 28 73 75 62 fossil.rc) $(sub
7080: 73 74 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 52 29 st /,\,$(OBJDIR)
7090: 29 0a 09 24 28 43 50 29 20 24 28 73 75 62 73 74 )..$(CP) $(subst
70a0: 20 2f 2c 5c 2c 24 28 53 52 43 44 49 52 29 5c 2e /,\,$(SRCDIR)\.
70b0: 2e 5c 77 69 6e 5c 66 6f 73 73 69 6c 2e 69 63 6f .\win\fossil.ico
70c0: 29 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 ) $(subst /,\,$(
70d0: 4f 42 4a 44 49 52 29 29 0a 09 24 28 43 50 29 20 OBJDIR))..$(CP)
70e0: 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 53 52 $(subst /,\,$(SR
70f0: 43 44 49 52 29 5c 2e 2e 5c 77 69 6e 5c 66 6f 73 CDIR)\..\win\fos
7100: 73 69 6c 2e 65 78 65 2e 6d 61 6e 69 66 65 73 74 sil.exe.manifest
7110: 29 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 ) $(subst /,\,$(
7120: 4f 42 4a 44 49 52 29 29 0a 65 6c 73 65 0a 09 24 OBJDIR)).else..$
7130: 28 43 41 54 29 20 24 28 53 52 43 44 49 52 29 2f (CAT) $(SRCDIR)/
7140: 6d 69 6e 69 7a 2e 63 20 7c 20 24 28 47 52 45 50 miniz.c | $(GREP
7150: 29 20 22 64 65 66 69 6e 65 20 4d 5a 5f 56 45 52 ) "define MZ_VER
7160: 53 49 4f 4e 22 20 3e 20 24 28 4f 42 4a 44 49 52 SION" > $(OBJDIR
7170: 29 2f 6d 69 6e 69 7a 76 65 72 2e 68 0a 09 24 28 )/minizver.h..$(
7180: 43 50 29 20 24 28 53 52 43 44 49 52 29 2f 2e 2e CP) $(SRCDIR)/..
7190: 2f 77 69 6e 2f 66 6f 73 73 69 6c 2e 72 63 20 24 /win/fossil.rc $
71a0: 28 4f 42 4a 44 49 52 29 0a 09 24 28 43 50 29 20 (OBJDIR)..$(CP)
71b0: 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 77 69 6e $(SRCDIR)/../win
71c0: 2f 66 6f 73 73 69 6c 2e 69 63 6f 20 24 28 4f 42 /fossil.ico $(OB
71d0: 4a 44 49 52 29 0a 09 24 28 43 50 29 20 24 28 53 JDIR)..$(CP) $(S
71e0: 52 43 44 49 52 29 2f 2e 2e 2f 77 69 6e 2f 66 6f RCDIR)/../win/fo
71f0: 73 73 69 6c 2e 65 78 65 2e 6d 61 6e 69 66 65 73 ssil.exe.manifes
7200: 74 20 24 28 4f 42 4a 44 49 52 29 0a 65 6e 64 69 t $(OBJDIR).endi
7210: 66 0a 09 24 28 52 43 43 29 20 24 28 4f 42 4a 44 f..$(RCC) $(OBJD
7220: 49 52 29 2f 66 6f 73 73 69 6c 2e 72 63 20 2d 6f IR)/fossil.rc -o
7230: 20 24 28 4f 42 4a 44 49 52 29 2f 66 6f 73 73 69 $(OBJDIR)/fossi
7240: 6c 2e 6f 0a 0a 69 6e 73 74 61 6c 6c 3a 09 24 28 l.o..install:.$(
7250: 4f 42 4a 44 49 52 29 20 24 28 41 50 50 4e 41 4d OBJDIR) $(APPNAM
7260: 45 29 0a 69 66 64 65 66 20 55 53 45 5f 57 49 4e E).ifdef USE_WIN
7270: 44 4f 57 53 0a 09 24 28 4d 4b 44 49 52 29 20 24 DOWS..$(MKDIR) $
7280: 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 49 4e 53 (subst /,\,$(INS
7290: 54 41 4c 4c 44 49 52 29 29 0a 09 24 28 4d 56 29 TALLDIR))..$(MV)
72a0: 20 24 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 41 $(subst /,\,$(A
72b0: 50 50 4e 41 4d 45 29 29 20 24 28 73 75 62 73 74 PPNAME)) $(subst
72c0: 20 2f 2c 5c 2c 24 28 49 4e 53 54 41 4c 4c 44 49 /,\,$(INSTALLDI
72d0: 52 29 29 0a 65 6c 73 65 0a 09 24 28 4d 4b 44 49 R)).else..$(MKDI
72e0: 52 29 20 24 28 49 4e 53 54 41 4c 4c 44 49 52 29 R) $(INSTALLDIR)
72f0: 0a 09 24 28 4d 56 29 20 24 28 41 50 50 4e 41 4d ..$(MV) $(APPNAM
7300: 45 29 20 24 28 49 4e 53 54 41 4c 4c 44 49 52 29 E) $(INSTALLDIR)
7310: 0a 65 6e 64 69 66 0a 0a 24 28 4f 42 4a 44 49 52 .endif..$(OBJDIR
7320: 29 3a 0a 69 66 64 65 66 20 55 53 45 5f 57 49 4e ):.ifdef USE_WIN
7330: 44 4f 57 53 0a 09 24 28 4d 4b 44 49 52 29 20 24 DOWS..$(MKDIR) $
7340: 28 73 75 62 73 74 20 2f 2c 5c 2c 24 28 4f 42 4a (subst /,\,$(OBJ
7350: 44 49 52 29 29 0a 65 6c 73 65 0a 09 24 28 4d 4b DIR)).else..$(MK
7360: 44 49 52 29 20 24 28 4f 42 4a 44 49 52 29 0a 65 DIR) $(OBJDIR).e
7370: 6e 64 69 66 0a 0a 24 28 54 52 41 4e 53 4c 41 54 ndif..$(TRANSLAT
7380: 45 29 3a 09 24 28 53 52 43 44 49 52 29 2f 74 72 E):.$(SRCDIR)/tr
7390: 61 6e 73 6c 61 74 65 2e 63 0a 09 24 28 58 42 43 anslate.c..$(XBC
73a0: 43 29 20 2d 6f 20 24 40 20 24 28 53 52 43 44 49 C) -o $@ $(SRCDI
73b0: 52 29 2f 74 72 61 6e 73 6c 61 74 65 2e 63 0a 0a R)/translate.c..
73c0: 24 28 4d 41 4b 45 48 45 41 44 45 52 53 29 3a 09 $(MAKEHEADERS):.
73d0: 24 28 53 52 43 44 49 52 29 2f 6d 61 6b 65 68 65 $(SRCDIR)/makehe
73e0: 61 64 65 72 73 2e 63 0a 09 24 28 58 42 43 43 29 aders.c..$(XBCC)
73f0: 20 2d 6f 20 24 40 20 24 28 53 52 43 44 49 52 29 -o $@ $(SRCDIR)
7400: 2f 6d 61 6b 65 68 65 61 64 65 72 73 2e 63 0a 0a /makeheaders.c..
7410: 24 28 4d 4b 49 4e 44 45 58 29 3a 09 24 28 53 52 $(MKINDEX):.$(SR
7420: 43 44 49 52 29 2f 6d 6b 69 6e 64 65 78 2e 63 0a CDIR)/mkindex.c.
7430: 09 24 28 58 42 43 43 29 20 2d 6f 20 24 40 20 24 .$(XBCC) -o $@ $
7440: 28 53 52 43 44 49 52 29 2f 6d 6b 69 6e 64 65 78 (SRCDIR)/mkindex
7450: 2e 63 0a 0a 24 28 4d 4b 42 55 49 4c 54 49 4e 29 .c..$(MKBUILTIN)
7460: 3a 09 24 28 53 52 43 44 49 52 29 2f 6d 6b 62 75 :.$(SRCDIR)/mkbu
7470: 69 6c 74 69 6e 2e 63 0a 09 24 28 58 42 43 43 29 iltin.c..$(XBCC)
7480: 20 2d 6f 20 24 40 20 24 28 53 52 43 44 49 52 29 -o $@ $(SRCDIR)
7490: 2f 6d 6b 62 75 69 6c 74 69 6e 2e 63 0a 0a 24 28 /mkbuiltin.c..$(
74a0: 4d 4b 56 45 52 53 49 4f 4e 29 3a 20 24 28 53 52 MKVERSION): $(SR
74b0: 43 44 49 52 29 2f 6d 6b 76 65 72 73 69 6f 6e 2e CDIR)/mkversion.
74c0: 63 0a 09 24 28 58 42 43 43 29 20 2d 6f 20 24 40 c..$(XBCC) -o $@
74d0: 20 24 28 53 52 43 44 49 52 29 2f 6d 6b 76 65 72 $(SRCDIR)/mkver
74e0: 73 69 6f 6e 2e 63 0a 0a 24 28 4d 4b 43 53 53 29 sion.c..$(MKCSS)
74f0: 3a 20 24 28 53 52 43 44 49 52 29 2f 6d 6b 63 73 : $(SRCDIR)/mkcs
7500: 73 2e 63 0a 09 24 28 58 42 43 43 29 20 2d 6f 20 s.c..$(XBCC) -o
7510: 24 40 20 24 28 53 52 43 44 49 52 29 2f 6d 6b 63 $@ $(SRCDIR)/mkc
7520: 73 73 2e 63 0a 0a 24 28 43 4f 44 45 43 48 45 43 ss.c..$(CODECHEC
7530: 4b 31 29 3a 09 24 28 53 52 43 44 49 52 29 2f 63 K1):.$(SRCDIR)/c
7540: 6f 64 65 63 68 65 63 6b 31 2e 63 0a 09 24 28 58 odecheck1.c..$(X
7550: 42 43 43 29 20 2d 6f 20 24 40 20 24 28 53 52 43 BCC) -o $@ $(SRC
7560: 44 49 52 29 2f 63 6f 64 65 63 68 65 63 6b 31 2e DIR)/codecheck1.
7570: 63 0a 0a 23 20 57 41 52 4e 49 4e 47 2e 20 44 41 c..# WARNING. DA
7580: 4e 47 45 52 2e 20 52 75 6e 6e 69 6e 67 20 74 68 NGER. Running th
7590: 65 20 74 65 73 74 20 73 75 69 74 65 20 6d 6f 64 e test suite mod
75a0: 69 66 69 65 73 20 74 68 65 20 72 65 70 6f 73 69 ifies the reposi
75b0: 74 6f 72 79 20 74 68 65 0a 23 20 62 75 69 6c 64 tory the.# build
75c0: 20 69 73 20 64 6f 6e 65 20 66 72 6f 6d 2c 20 69 is done from, i
75d0: 2e 65 2e 20 74 68 65 20 63 68 65 63 6b 6f 75 74 .e. the checkout
75e0: 20 62 65 6c 6f 6e 67 73 20 74 6f 2e 20 44 6f 20 belongs to. Do
75f0: 6e 6f 74 20 73 79 6e 63 2f 70 75 73 68 0a 23 20 not sync/push.#
7600: 74 68 65 20 72 65 70 6f 73 69 74 6f 72 79 20 61 the repository a
7610: 66 74 65 72 20 72 75 6e 6e 69 6e 67 20 74 68 65 fter running the
7620: 20 74 65 73 74 73 2e 0a 74 65 73 74 3a 09 24 28 tests..test:.$(
7630: 4f 42 4a 44 49 52 29 20 24 28 41 50 50 4e 41 4d OBJDIR) $(APPNAM
7640: 45 29 0a 09 24 28 54 43 4c 53 48 29 20 24 28 53 E)..$(TCLSH) $(S
7650: 52 43 44 49 52 29 2f 2e 2e 2f 74 65 73 74 2f 74 RCDIR)/../test/t
7660: 65 73 74 65 72 2e 74 63 6c 20 24 28 41 50 50 4e ester.tcl $(APPN
7670: 41 4d 45 29 0a 0a 24 28 4f 42 4a 44 49 52 29 2f AME)..$(OBJDIR)/
7680: 56 45 52 53 49 4f 4e 2e 68 3a 09 24 28 53 52 43 VERSION.h:.$(SRC
7690: 44 49 52 29 2f 2e 2e 2f 6d 61 6e 69 66 65 73 74 DIR)/../manifest
76a0: 2e 75 75 69 64 20 24 28 53 52 43 44 49 52 29 2f .uuid $(SRCDIR)/
76b0: 2e 2e 2f 6d 61 6e 69 66 65 73 74 20 24 28 4d 4b ../manifest $(MK
76c0: 56 45 52 53 49 4f 4e 29 0a 09 24 28 4d 4b 56 45 VERSION)..$(MKVE
76d0: 52 53 49 4f 4e 29 20 24 28 53 52 43 44 49 52 29 RSION) $(SRCDIR)
76e0: 2f 2e 2e 2f 6d 61 6e 69 66 65 73 74 2e 75 75 69 /../manifest.uui
76f0: 64 20 24 28 53 52 43 44 49 52 29 2f 2e 2e 2f 6d d $(SRCDIR)/../m
7700: 61 6e 69 66 65 73 74 20 24 28 53 52 43 44 49 52 anifest $(SRCDIR
7710: 29 2f 2e 2e 2f 56 45 52 53 49 4f 4e 20 3e 24 40 )/../VERSION >$@
7720: 0a 0a 24 28 4f 42 4a 44 49 52 29 2f 64 65 66 61 ..$(OBJDIR)/defa
7730: 75 6c 74 5f 63 73 73 2e 68 3a 09 24 28 53 52 43 ult_css.h:.$(SRC
7740: 44 49 52 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 DIR)/default_css
7750: 2e 74 78 74 20 24 28 4d 4b 43 53 53 29 0a 09 24 .txt $(MKCSS)..$
7760: 28 4d 4b 43 53 53 29 20 24 28 53 52 43 44 49 52 (MKCSS) $(SRCDIR
7770: 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 2e 74 78 )/default_css.tx
7780: 74 20 24 40 0a 0a 23 20 54 68 65 20 55 53 45 5f t $@..# The USE_
7790: 53 59 53 54 45 4d 5f 53 51 4c 49 54 45 20 76 61 SYSTEM_SQLITE va
77a0: 72 69 61 62 6c 65 20 6d 61 79 20 62 65 20 75 6e riable may be un
77b0: 64 65 66 69 6e 65 64 2c 20 73 65 74 20 74 6f 20 defined, set to
77c0: 30 2c 20 6f 72 20 73 65 74 0a 23 20 74 6f 20 31 0, or set.# to 1
77d0: 2e 20 49 66 20 69 74 20 69 73 20 73 65 74 20 74 . If it is set t
77e0: 6f 20 31 2c 20 74 68 65 6e 20 74 68 65 72 65 20 o 1, then there
77f0: 69 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 62 75 is no need to bu
7800: 69 6c 64 20 6f 72 20 6c 69 6e 6b 0a 23 20 74 68 ild or link.# th
7810: 65 20 73 71 6c 69 74 65 33 2e 6f 20 6f 62 6a 65 e sqlite3.o obje
7820: 63 74 2e 20 49 6e 73 74 65 61 64 2c 20 74 68 65 ct. Instead, the
7830: 20 73 79 73 74 65 6d 20 53 51 4c 69 74 65 20 77 system SQLite w
7840: 69 6c 6c 20 62 65 20 6c 69 6e 6b 65 64 0a 23 20 ill be linked.#
7850: 75 73 69 6e 67 20 2d 6c 73 71 6c 69 74 65 33 2e using -lsqlite3.
7860: 0a 53 51 4c 49 54 45 33 5f 4f 42 4a 2e 30 20 3d .SQLITE3_OBJ.0 =
7870: 20 24 28 4f 42 4a 44 49 52 29 2f 73 71 6c 69 74 $(OBJDIR)/sqlit
7880: 65 33 2e 6f 0a 53 51 4c 49 54 45 33 5f 4f 42 4a e3.o.SQLITE3_OBJ
7890: 2e 31 20 3d 0a 53 51 4c 49 54 45 33 5f 4f 42 4a .1 =.SQLITE3_OBJ
78a0: 2e 20 20 3d 20 24 28 53 51 4c 49 54 45 33 5f 4f . = $(SQLITE3_O
78b0: 42 4a 2e 30 29 0a 0a 23 20 54 68 65 20 46 4f 53 BJ.0)..# The FOS
78c0: 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a SIL_ENABLE_MINIZ
78d0: 20 76 61 72 69 61 62 6c 65 20 6d 61 79 20 62 65 variable may be
78e0: 20 75 6e 64 65 66 69 6e 65 64 2c 20 73 65 74 20 undefined, set
78f0: 74 6f 20 30 2c 20 6f 72 0a 23 20 73 65 74 20 74 to 0, or.# set t
7900: 6f 20 31 2e 20 20 49 66 20 69 74 20 69 73 20 73 o 1. If it is s
7910: 65 74 20 74 6f 20 31 2c 20 74 68 65 20 6d 69 6e et to 1, the min
7920: 69 7a 20 6c 69 62 72 61 72 79 20 69 6e 63 6c 75 iz library inclu
7930: 64 65 64 20 69 6e 20 74 68 65 0a 23 20 73 6f 75 ded in the.# sou
7940: 72 63 65 20 74 72 65 65 20 73 68 6f 75 6c 64 20 rce tree should
7950: 62 65 20 75 73 65 64 3b 20 6f 74 68 65 72 77 69 be used; otherwi
7960: 73 65 2c 20 69 74 20 73 68 6f 75 6c 64 20 6e 6f se, it should no
7970: 74 2e 0a 4d 49 4e 49 5a 5f 4f 42 4a 2e 30 20 3d t..MINIZ_OBJ.0 =
7980: 0a 4d 49 4e 49 5a 5f 4f 42 4a 2e 31 20 3d 20 24 .MINIZ_OBJ.1 = $
7990: 28 4f 42 4a 44 49 52 29 2f 6d 69 6e 69 7a 2e 6f (OBJDIR)/miniz.o
79a0: 0a 4d 49 4e 49 5a 5f 4f 42 4a 2e 20 20 3d 20 24 .MINIZ_OBJ. = $
79b0: 28 4d 49 4e 49 5a 5f 4f 42 4a 2e 30 29 0a 0a 23 (MINIZ_OBJ.0)..#
79c0: 20 54 68 65 20 55 53 45 5f 53 45 45 20 76 61 72 The USE_SEE var
79d0: 69 61 62 6c 65 20 6d 61 79 20 62 65 20 75 6e 64 iable may be und
79e0: 65 66 69 6e 65 64 2c 20 30 20 6f 72 20 31 2e 20 efined, 0 or 1.
79f0: 20 49 66 20 75 6e 64 65 66 69 6e 65 64 20 6f 72 If undefined or
7a00: 0a 23 20 30 2c 20 6f 72 64 69 6e 61 72 79 20 53 .# 0, ordinary S
7a10: 51 4c 69 74 65 20 69 73 20 75 73 65 64 2e 20 20 QLite is used.
7a20: 49 66 20 31 2c 20 74 68 65 6e 20 73 71 6c 69 74 If 1, then sqlit
7a30: 65 33 2d 73 65 65 2e 63 20 28 6e 6f 74 20 70 61 e3-see.c (not pa
7a40: 72 74 20 6f 66 0a 23 20 74 68 65 20 73 6f 75 72 rt of.# the sour
7a50: 63 65 20 74 72 65 65 29 20 69 73 20 75 73 65 64 ce tree) is used
7a60: 20 61 6e 64 20 65 78 74 72 61 20 66 6c 61 67 73 and extra flags
7a70: 20 61 72 65 20 70 72 6f 76 69 64 65 64 20 74 6f are provided to
7a80: 20 65 6e 61 62 6c 65 0a 23 20 74 68 65 20 53 51 enable.# the SQ
7a90: 4c 69 74 65 20 45 6e 63 72 79 70 74 69 6f 6e 20 Lite Encryption
7aa0: 45 78 74 65 6e 73 69 6f 6e 2e 0a 53 51 4c 49 54 Extension..SQLIT
7ab0: 45 33 5f 53 52 43 2e 30 20 3d 20 73 71 6c 69 74 E3_SRC.0 = sqlit
7ac0: 65 33 2e 63 0a 53 51 4c 49 54 45 33 5f 53 52 43 e3.c.SQLITE3_SRC
7ad0: 2e 31 20 3d 20 73 71 6c 69 74 65 33 2d 73 65 65 .1 = sqlite3-see
7ae0: 2e 63 0a 53 51 4c 49 54 45 33 5f 53 52 43 2e 20 .c.SQLITE3_SRC.
7af0: 3d 20 73 71 6c 69 74 65 33 2e 63 0a 53 51 4c 49 = sqlite3.c.SQLI
7b00: 54 45 33 5f 53 52 43 20 3d 20 24 28 53 52 43 44 TE3_SRC = $(SRCD
7b10: 49 52 29 2f 24 28 53 51 4c 49 54 45 33 5f 53 52 IR)/$(SQLITE3_SR
7b20: 43 2e 24 28 55 53 45 5f 53 45 45 29 29 0a 53 51 C.$(USE_SEE)).SQ
7b30: 4c 49 54 45 33 5f 53 48 45 4c 4c 5f 53 52 43 2e LITE3_SHELL_SRC.
7b40: 30 20 3d 20 73 68 65 6c 6c 2e 63 0a 53 51 4c 49 0 = shell.c.SQLI
7b50: 54 45 33 5f 53 48 45 4c 4c 5f 53 52 43 2e 31 20 TE3_SHELL_SRC.1
7b60: 3d 20 73 68 65 6c 6c 2d 73 65 65 2e 63 0a 53 51 = shell-see.c.SQ
7b70: 4c 49 54 45 33 5f 53 48 45 4c 4c 5f 53 52 43 2e LITE3_SHELL_SRC.
7b80: 20 3d 20 73 68 65 6c 6c 2e 63 0a 53 51 4c 49 54 = shell.c.SQLIT
7b90: 45 33 5f 53 48 45 4c 4c 5f 53 52 43 20 3d 20 24 E3_SHELL_SRC = $
7ba0: 28 53 52 43 44 49 52 29 2f 24 28 53 51 4c 49 54 (SRCDIR)/$(SQLIT
7bb0: 45 33 5f 53 48 45 4c 4c 5f 53 52 43 2e 24 28 55 E3_SHELL_SRC.$(U
7bc0: 53 45 5f 53 45 45 29 29 0a 53 45 45 5f 46 4c 41 SE_SEE)).SEE_FLA
7bd0: 47 53 2e 30 20 3d 0a 53 45 45 5f 46 4c 41 47 53 GS.0 =.SEE_FLAGS
7be0: 2e 31 20 3d 20 2d 44 53 51 4c 49 54 45 5f 48 41 .1 = -DSQLITE_HA
7bf0: 53 5f 43 4f 44 45 43 20 2d 44 53 51 4c 49 54 45 S_CODEC -DSQLITE
7c00: 5f 53 48 45 4c 4c 5f 44 42 4b 45 59 5f 50 52 4f _SHELL_DBKEY_PRO
7c10: 43 3d 66 6f 73 73 69 6c 5f 6b 65 79 0a 53 45 45 C=fossil_key.SEE
7c20: 5f 46 4c 41 47 53 2e 20 3d 0a 53 45 45 5f 46 4c _FLAGS. =.SEE_FL
7c30: 41 47 53 20 3d 20 24 28 53 45 45 5f 46 4c 41 47 AGS = $(SEE_FLAG
7c40: 53 2e 24 28 55 53 45 5f 53 45 45 29 29 0a 7d 0a S.$(USE_SEE)).}.
7c50: 0a 77 72 69 74 65 6c 6e 20 5b 73 74 72 69 6e 67 .writeln [string
7c60: 20 6d 61 70 20 5b 6c 69 73 74 20 3c 3c 3c 4e 45 map [list <<<NE
7c70: 58 54 5f 4c 49 4e 45 3e 3e 3e 20 5c 5c 5d 20 7b XT_LINE>>> \\] {
7c80: 0a 45 58 54 52 41 4f 42 4a 20 3d 20 3c 3c 3c 4e .EXTRAOBJ = <<<N
7c90: 45 58 54 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 28 53 EXT_LINE>>>. $(S
7ca0: 51 4c 49 54 45 33 5f 4f 42 4a 2e 24 28 55 53 45 QLITE3_OBJ.$(USE
7cb0: 5f 53 59 53 54 45 4d 5f 53 51 4c 49 54 45 29 29 _SYSTEM_SQLITE))
7cc0: 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e 3e <<<NEXT_LINE>>>
7cd0: 0a 20 24 28 4d 49 4e 49 5a 5f 4f 42 4a 2e 24 28 . $(MINIZ_OBJ.$(
7ce0: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 FOSSIL_ENABLE_MI
7cf0: 4e 49 5a 29 29 20 3c 3c 3c 4e 45 58 54 5f 4c 49 NIZ)) <<<NEXT_LI
7d00: 4e 45 3e 3e 3e 0a 20 24 28 4f 42 4a 44 49 52 29 NE>>>. $(OBJDIR)
7d10: 2f 73 68 65 6c 6c 2e 6f 20 3c 3c 3c 4e 45 58 54 /shell.o <<<NEXT
7d20: 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 28 4f 42 4a 44 _LINE>>>. $(OBJD
7d30: 49 52 29 2f 74 68 2e 6f 20 3c 3c 3c 4e 45 58 54 IR)/th.o <<<NEXT
7d40: 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 28 4f 42 4a 44 _LINE>>>. $(OBJD
7d50: 49 52 29 2f 74 68 5f 6c 61 6e 67 2e 6f 20 3c 3c IR)/th_lang.o <<
7d60: 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e 3e 0a 20 24 <NEXT_LINE>>>. $
7d70: 28 4f 42 4a 44 49 52 29 2f 74 68 5f 74 63 6c 2e (OBJDIR)/th_tcl.
7d80: 6f 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e o <<<NEXT_LINE>>
7d90: 3e 0a 20 24 28 4f 42 4a 44 49 52 29 2f 63 73 6f >. $(OBJDIR)/cso
7da0: 6e 5f 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 6f n_amalgamation.o
7db0: 0a 7d 5d 0a 0a 77 72 69 74 65 6c 6e 20 7b 0a 24 .}]..writeln {.$
7dc0: 28 5a 4c 49 42 44 49 52 29 2f 69 6e 66 66 61 73 (ZLIBDIR)/inffas
7dd0: 38 36 2e 6f 3a 0a 09 24 28 54 43 43 29 20 2d 63 86.o:..$(TCC) -c
7de0: 20 2d 6f 20 24 40 20 2d 44 41 53 4d 49 4e 46 20 -o $@ -DASMINF
7df0: 2d 49 24 28 5a 4c 49 42 44 49 52 29 20 2d 4f 33 -I$(ZLIBDIR) -O3
7e00: 20 24 28 5a 4c 49 42 44 49 52 29 2f 63 6f 6e 74 $(ZLIBDIR)/cont
7e10: 72 69 62 2f 69 6e 66 6c 61 74 65 38 36 2f 69 6e rib/inflate86/in
7e20: 66 66 61 73 38 36 2e 63 0a 0a 24 28 5a 4c 49 42 ffas86.c..$(ZLIB
7e30: 44 49 52 29 2f 6d 61 74 63 68 2e 6f 3a 0a 09 24 DIR)/match.o:..$
7e40: 28 54 43 43 29 20 2d 63 20 2d 6f 20 24 40 20 2d (TCC) -c -o $@ -
7e50: 44 41 53 4d 56 20 24 28 5a 4c 49 42 44 49 52 29 DASMV $(ZLIBDIR)
7e60: 2f 63 6f 6e 74 72 69 62 2f 61 73 6d 36 38 36 2f /contrib/asm686/
7e70: 6d 61 74 63 68 2e 53 0a 0a 7a 6c 69 62 3a 09 24 match.S..zlib:.$
7e80: 28 5a 4c 49 42 54 41 52 47 45 54 53 29 0a 09 24 (ZLIBTARGETS)..$
7e90: 28 4d 41 4b 45 29 20 2d 43 20 24 28 5a 4c 49 42 (MAKE) -C $(ZLIB
7ea0: 44 49 52 29 20 50 52 45 46 49 58 3d 24 28 50 52 DIR) PREFIX=$(PR
7eb0: 45 46 49 58 29 20 43 43 3d 24 28 50 52 45 46 49 EFIX) CC=$(PREFI
7ec0: 58 29 24 28 54 43 43 45 58 45 29 20 24 28 5a 4c X)$(TCCEXE) $(ZL
7ed0: 49 42 43 4f 4e 46 49 47 29 20 2d 66 20 77 69 6e IBCONFIG) -f win
7ee0: 33 32 2f 4d 61 6b 65 66 69 6c 65 2e 67 63 63 20 32/Makefile.gcc
7ef0: 6c 69 62 7a 2e 61 0a 0a 63 6c 65 61 6e 2d 7a 6c libz.a..clean-zl
7f00: 69 62 3a 0a 09 24 28 4d 41 4b 45 29 20 2d 43 20 ib:..$(MAKE) -C
7f10: 24 28 5a 4c 49 42 44 49 52 29 20 50 52 45 46 49 $(ZLIBDIR) PREFI
7f20: 58 3d 24 28 50 52 45 46 49 58 29 20 43 43 3d 24 X=$(PREFIX) CC=$
7f30: 28 50 52 45 46 49 58 29 24 28 54 43 43 45 58 45 (PREFIX)$(TCCEXE
7f40: 29 20 2d 66 20 77 69 6e 33 32 2f 4d 61 6b 65 66 ) -f win32/Makef
7f50: 69 6c 65 2e 67 63 63 20 63 6c 65 61 6e 0a 0a 69 ile.gcc clean..i
7f60: 66 64 65 66 20 46 4f 53 53 49 4c 5f 45 4e 41 42 fdef FOSSIL_ENAB
7f70: 4c 45 5f 4d 49 4e 49 5a 0a 42 4c 44 54 41 52 47 LE_MINIZ.BLDTARG
7f80: 45 54 53 20 3d 0a 65 6c 73 65 0a 42 4c 44 54 41 ETS =.else.BLDTA
7f90: 52 47 45 54 53 20 3d 20 7a 6c 69 62 0a 65 6e 64 RGETS = zlib.end
7fa0: 69 66 0a 0a 6f 70 65 6e 73 73 6c 3a 09 24 28 42 if..openssl:.$(B
7fb0: 4c 44 54 41 52 47 45 54 53 29 0a 09 63 64 20 24 LDTARGETS)..cd $
7fc0: 28 4f 50 45 4e 53 53 4c 4c 49 42 44 49 52 29 3b (OPENSSLLIBDIR);
7fd0: 2e 2f 43 6f 6e 66 69 67 75 72 65 20 2d 2d 63 72 ./Configure --cr
7fe0: 6f 73 73 2d 63 6f 6d 70 69 6c 65 2d 70 72 65 66 oss-compile-pref
7ff0: 69 78 3d 24 28 50 52 45 46 49 58 29 20 24 28 53 ix=$(PREFIX) $(S
8000: 53 4c 43 4f 4e 46 49 47 29 0a 09 24 28 4d 41 4b SLCONFIG)..$(MAK
8010: 45 29 20 2d 43 20 24 28 4f 50 45 4e 53 53 4c 4c E) -C $(OPENSSLL
8020: 49 42 44 49 52 29 20 50 52 45 46 49 58 3d 24 28 IBDIR) PREFIX=$(
8030: 50 52 45 46 49 58 29 20 43 43 3d 24 28 50 52 45 PREFIX) CC=$(PRE
8040: 46 49 58 29 24 28 54 43 43 45 58 45 29 20 62 75 FIX)$(TCCEXE) bu
8050: 69 6c 64 5f 6c 69 62 73 0a 0a 63 6c 65 61 6e 2d ild_libs..clean-
8060: 6f 70 65 6e 73 73 6c 3a 0a 09 24 28 4d 41 4b 45 openssl:..$(MAKE
8070: 29 20 2d 43 20 24 28 4f 50 45 4e 53 53 4c 4c 49 ) -C $(OPENSSLLI
8080: 42 44 49 52 29 20 50 52 45 46 49 58 3d 24 28 50 BDIR) PREFIX=$(P
8090: 52 45 46 49 58 29 20 43 43 3d 24 28 50 52 45 46 REFIX) CC=$(PREF
80a0: 49 58 29 24 28 54 43 43 45 58 45 29 20 63 6c 65 IX)$(TCCEXE) cle
80b0: 61 6e 0a 0a 74 63 6c 3a 0a 09 63 64 20 24 28 54 an..tcl:..cd $(T
80c0: 43 4c 53 52 43 44 49 52 29 2f 77 69 6e 3b 2e 2f CLSRCDIR)/win;./
80d0: 63 6f 6e 66 69 67 75 72 65 0a 09 24 28 4d 41 4b configure..$(MAK
80e0: 45 29 20 2d 43 20 24 28 54 43 4c 53 52 43 44 49 E) -C $(TCLSRCDI
80f0: 52 29 2f 77 69 6e 20 50 52 45 46 49 58 3d 24 28 R)/win PREFIX=$(
8100: 50 52 45 46 49 58 29 20 43 43 3d 24 28 50 52 45 PREFIX) CC=$(PRE
8110: 46 49 58 29 24 28 54 43 43 45 58 45 29 20 24 28 FIX)$(TCCEXE) $(
8120: 54 43 4c 54 41 52 47 45 54 29 0a 0a 63 6c 65 61 TCLTARGET)..clea
8130: 6e 2d 74 63 6c 3a 0a 09 24 28 4d 41 4b 45 29 20 n-tcl:..$(MAKE)
8140: 2d 43 20 24 28 54 43 4c 53 52 43 44 49 52 29 2f -C $(TCLSRCDIR)/
8150: 77 69 6e 20 50 52 45 46 49 58 3d 24 28 50 52 45 win PREFIX=$(PRE
8160: 46 49 58 29 20 43 43 3d 24 28 50 52 45 46 49 58 FIX) CC=$(PREFIX
8170: 29 24 28 54 43 43 45 58 45 29 20 64 69 73 74 63 )$(TCCEXE) distc
8180: 6c 65 61 6e 0a 0a 41 50 50 54 41 52 47 45 54 53 lean..APPTARGETS
8190: 20 2b 3d 20 24 28 42 4c 44 54 41 52 47 45 54 53 += $(BLDTARGETS
81a0: 29 0a 0a 69 66 64 65 66 20 46 4f 53 53 49 4c 5f )..ifdef FOSSIL_
81b0: 42 55 49 4c 44 5f 53 53 4c 0a 41 50 50 54 41 52 BUILD_SSL.APPTAR
81c0: 47 45 54 53 20 2b 3d 20 6f 70 65 6e 73 73 6c 0a GETS += openssl.
81d0: 65 6e 64 69 66 0a 0a 24 28 41 50 50 4e 41 4d 45 endif..$(APPNAME
81e0: 29 3a 09 24 28 41 50 50 54 41 52 47 45 54 53 29 ):.$(APPTARGETS)
81f0: 20 24 28 4f 42 4a 44 49 52 29 2f 68 65 61 64 65 $(OBJDIR)/heade
8200: 72 73 20 24 28 43 4f 44 45 43 48 45 43 4b 31 29 rs $(CODECHECK1)
8210: 20 24 28 4f 42 4a 29 20 24 28 45 58 54 52 41 4f $(OBJ) $(EXTRAO
8220: 42 4a 29 20 24 28 4f 42 4a 44 49 52 29 2f 66 6f BJ) $(OBJDIR)/fo
8230: 73 73 69 6c 2e 6f 0a 09 24 28 43 4f 44 45 43 48 ssil.o..$(CODECH
8240: 45 43 4b 31 29 20 24 28 54 52 41 4e 53 5f 53 52 ECK1) $(TRANS_SR
8250: 43 29 0a 09 24 28 54 43 43 29 20 2d 6f 20 24 40 C)..$(TCC) -o $@
8260: 20 24 28 4f 42 4a 29 20 24 28 45 58 54 52 41 4f $(OBJ) $(EXTRAO
8270: 42 4a 29 20 24 28 4f 42 4a 44 49 52 29 2f 66 6f BJ) $(OBJDIR)/fo
8280: 73 73 69 6c 2e 6f 20 24 28 4c 49 42 29 0a 0a 23 ssil.o $(LIB)..#
8290: 20 54 68 69 73 20 72 75 6c 65 20 70 72 65 76 65 This rule preve
82a0: 6e 74 73 20 6d 61 6b 65 20 66 72 6f 6d 20 75 73 nts make from us
82b0: 69 6e 67 20 69 74 73 20 64 65 66 61 75 6c 74 20 ing its default
82c0: 72 75 6c 65 73 20 74 6f 20 74 72 79 20 62 75 69 rules to try bui
82d0: 6c 64 0a 23 20 61 6e 20 65 78 65 63 75 74 61 62 ld.# an executab
82e0: 6c 65 20 6e 61 6d 65 64 20 22 6d 61 6e 69 66 65 le named "manife
82f0: 73 74 22 20 6f 75 74 20 6f 66 20 74 68 65 20 66 st" out of the f
8300: 69 6c 65 20 6e 61 6d 65 64 20 22 6d 61 6e 69 66 ile named "manif
8310: 65 73 74 2e 63 22 0a 23 0a 24 28 53 52 43 44 49 est.c".#.$(SRCDI
8320: 52 29 2f 2e 2e 2f 6d 61 6e 69 66 65 73 74 3a 0a R)/../manifest:.
8330: 09 23 20 6e 6f 6f 70 0a 0a 63 6c 65 61 6e 3a 0a .# noop..clean:.
8340: 69 66 64 65 66 20 55 53 45 5f 57 49 4e 44 4f 57 ifdef USE_WINDOW
8350: 53 0a 09 24 28 52 4d 29 20 24 28 73 75 62 73 74 S..$(RM) $(subst
8360: 20 2f 2c 5c 2c 24 28 41 50 50 4e 41 4d 45 29 29 /,\,$(APPNAME))
8370: 0a 09 24 28 52 4d 44 49 52 29 20 24 28 73 75 62 ..$(RMDIR) $(sub
8380: 73 74 20 2f 2c 5c 2c 24 28 4f 42 4a 44 49 52 29 st /,\,$(OBJDIR)
8390: 29 0a 65 6c 73 65 0a 09 24 28 52 4d 29 20 24 28 ).else..$(RM) $(
83a0: 41 50 50 4e 41 4d 45 29 0a 09 24 28 52 4d 44 49 APPNAME)..$(RMDI
83b0: 52 29 20 24 28 4f 42 4a 44 49 52 29 0a 65 6e 64 R) $(OBJDIR).end
83c0: 69 66 0a 0a 73 65 74 75 70 3a 20 24 28 4f 42 4a if..setup: $(OBJ
83d0: 44 49 52 29 20 24 28 41 50 50 4e 41 4d 45 29 0a DIR) $(APPNAME).
83e0: 09 24 28 4d 41 4b 45 4e 53 49 53 29 20 2e 2f 73 .$(MAKENSIS) ./s
83f0: 65 74 75 70 2f 66 6f 73 73 69 6c 2e 6e 73 69 0a etup/fossil.nsi.
8400: 0a 69 6e 6e 6f 73 65 74 75 70 3a 20 24 28 4f 42 .innosetup: $(OB
8410: 4a 44 49 52 29 20 24 28 41 50 50 4e 41 4d 45 29 JDIR) $(APPNAME)
8420: 0a 09 24 28 49 4e 4e 4f 53 45 54 55 50 29 20 2e ..$(INNOSETUP) .
8430: 2f 73 65 74 75 70 2f 66 6f 73 73 69 6c 2e 69 73 /setup/fossil.is
8440: 73 20 2d 44 41 70 70 56 65 72 73 69 6f 6e 3d 24 s -DAppVersion=$
8450: 28 73 68 65 6c 6c 20 24 28 43 41 54 29 20 2e 2f (shell $(CAT) ./
8460: 56 45 52 53 49 4f 4e 29 0a 7d 0a 0a 73 65 74 20 VERSION).}..set
8470: 6d 68 61 72 67 73 20 7b 7d 0a 66 6f 72 65 61 63 mhargs {}.foreac
8480: 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d h s [lsort $src]
8490: 20 7b 0a 20 20 69 66 20 7b 5b 73 74 72 69 6e 67 {. if {[string
84a0: 20 6c 65 6e 67 74 68 20 24 6d 68 61 72 67 73 5d length $mhargs]
84b0: 20 3e 20 30 7d 20 7b 61 70 70 65 6e 64 20 6d 68 > 0} {append mh
84c0: 61 72 67 73 20 22 20 5c 5c 5c 6e 5c 74 5c 74 22 args " \\\n\t\t"
84d0: 7d 0a 20 20 61 70 70 65 6e 64 20 6d 68 61 72 67 }. append mharg
84e0: 73 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b s "\$(OBJDIR)/${
84f0: 73 7d 5f 2e 63 3a 5c 24 28 4f 42 4a 44 49 52 29 s}_.c:\$(OBJDIR)
8500: 2f 24 73 2e 68 22 0a 20 20 73 65 74 20 65 78 74 /$s.h". set ext
8510: 72 61 5f 68 28 24 73 29 20 7b 20 7d 0a 7d 0a 61 ra_h($s) { }.}.a
8520: 70 70 65 6e 64 20 6d 68 61 72 67 73 20 22 20 5c ppend mhargs " \
8530: 5c 5c 6e 5c 74 5c 74 5c 24 28 53 52 43 44 49 52 \\n\t\t\$(SRCDIR
8540: 29 2f 73 71 6c 69 74 65 33 2e 68 22 0a 61 70 70 )/sqlite3.h".app
8550: 65 6e 64 20 6d 68 61 72 67 73 20 22 20 5c 5c 5c end mhargs " \\\
8560: 6e 5c 74 5c 74 5c 24 28 53 52 43 44 49 52 29 2f n\t\t\$(SRCDIR)/
8570: 74 68 2e 68 22 0a 61 70 70 65 6e 64 20 6d 68 61 th.h".append mha
8580: 72 67 73 20 22 20 5c 5c 5c 6e 5c 74 5c 74 5c 24 rgs " \\\n\t\t\$
8590: 28 4f 42 4a 44 49 52 29 2f 56 45 52 53 49 4f 4e (OBJDIR)/VERSION
85a0: 2e 68 22 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 .h".writeln "\$(
85b0: 4f 42 4a 44 49 52 29 2f 70 61 67 65 5f 69 6e 64 OBJDIR)/page_ind
85c0: 65 78 2e 68 3a 20 5c 24 28 54 52 41 4e 53 5f 53 ex.h: \$(TRANS_S
85d0: 52 43 29 20 5c 24 28 4d 4b 49 4e 44 45 58 29 22 RC) \$(MKINDEX)"
85e0: 0a 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 28 4d .writeln "\t\$(M
85f0: 4b 49 4e 44 45 58 29 20 5c 24 28 54 52 41 4e 53 KINDEX) \$(TRANS
8600: 5f 53 52 43 29 20 3e 5c 24 40 5c 6e 22 0a 0a 77 _SRC) >\$@\n"..w
8610: 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 riteln "\$(OBJDI
8620: 52 29 2f 62 75 69 6c 74 69 6e 5f 64 61 74 61 2e R)/builtin_data.
8630: 68 3a 5c 74 5c 24 28 4d 4b 42 55 49 4c 54 49 4e h:\t\$(MKBUILTIN
8640: 29 20 5c 24 28 45 58 54 52 41 5f 46 49 4c 45 53 ) \$(EXTRA_FILES
8650: 29 22 0a 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 )".writeln "\t\$
8660: 28 4d 4b 42 55 49 4c 54 49 4e 29 20 2d 2d 70 72 (MKBUILTIN) --pr
8670: 65 66 69 78 20 5c 24 28 53 52 43 44 49 52 29 2f efix \$(SRCDIR)/
8680: 20 5c 24 28 45 58 54 52 41 5f 46 49 4c 45 53 29 \$(EXTRA_FILES)
8690: 20 3e 5c 24 40 5c 6e 22 0a 0a 77 72 69 74 65 6c >\$@\n"..writel
86a0: 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 68 65 n "\$(OBJDIR)/he
86b0: 61 64 65 72 73 3a 5c 74 5c 24 28 4f 42 4a 44 49 aders:\t\$(OBJDI
86c0: 52 29 2f 70 61 67 65 5f 69 6e 64 65 78 2e 68 20 R)/page_index.h
86d0: 5c 24 28 4f 42 4a 44 49 52 29 2f 62 75 69 6c 74 \$(OBJDIR)/built
86e0: 69 6e 5f 64 61 74 61 2e 68 20 5c 24 28 4f 42 4a in_data.h \$(OBJ
86f0: 44 49 52 29 2f 64 65 66 61 75 6c 74 5f 63 73 73 DIR)/default_css
8700: 2e 68 20 5c 24 28 4d 41 4b 45 48 45 41 44 45 52 .h \$(MAKEHEADER
8710: 53 29 20 5c 24 28 4f 42 4a 44 49 52 29 2f 56 45 S) \$(OBJDIR)/VE
8720: 52 53 49 4f 4e 2e 68 22 0a 77 72 69 74 65 6c 6e RSION.h".writeln
8730: 20 22 5c 74 5c 24 28 4d 41 4b 45 48 45 41 44 45 "\t\$(MAKEHEADE
8740: 52 53 29 20 24 6d 68 61 72 67 73 22 0a 77 72 69 RS) $mhargs".wri
8750: 74 65 6c 6e 20 22 5c 74 65 63 68 6f 20 44 6f 6e teln "\techo Don
8760: 65 20 3e 5c 24 28 4f 42 4a 44 49 52 29 2f 68 65 e >\$(OBJDIR)/he
8770: 61 64 65 72 73 5c 6e 22 0a 77 72 69 74 65 6c 6e aders\n".writeln
8780: 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 68 65 61 "\$(OBJDIR)/hea
8790: 64 65 72 73 3a 20 4d 61 6b 65 66 69 6c 65 5c 6e ders: Makefile\n
87a0: 22 0a 77 72 69 74 65 6c 6e 20 22 4d 61 6b 65 66 ".writeln "Makef
87b0: 69 6c 65 3a 5c 6e 22 0a 73 65 74 20 65 78 74 72 ile:\n".set extr
87c0: 61 5f 68 28 6d 61 69 6e 29 20 22 20 5c 24 28 4f a_h(main) " \$(O
87d0: 42 4a 44 49 52 29 2f 70 61 67 65 5f 69 6e 64 65 BJDIR)/page_inde
87e0: 78 2e 68 20 22 0a 73 65 74 20 65 78 74 72 61 5f x.h ".set extra_
87f0: 68 28 62 75 69 6c 74 69 6e 29 20 22 20 5c 24 28 h(builtin) " \$(
8800: 4f 42 4a 44 49 52 29 2f 62 75 69 6c 74 69 6e 5f OBJDIR)/builtin_
8810: 64 61 74 61 2e 68 20 22 0a 73 65 74 20 65 78 74 data.h ".set ext
8820: 72 61 5f 68 28 73 74 79 6c 65 29 20 22 20 5c 24 ra_h(style) " \$
8830: 28 4f 42 4a 44 49 52 29 2f 64 65 66 61 75 6c 74 (OBJDIR)/default
8840: 5f 63 73 73 2e 68 20 22 0a 0a 66 6f 72 65 61 63 _css.h "..foreac
8850: 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d h s [lsort $src]
8860: 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 24 {. writeln "\$
8870: 28 4f 42 4a 44 49 52 29 2f 24 7b 73 7d 5f 2e 63 (OBJDIR)/${s}_.c
8880: 3a 5c 74 5c 24 28 53 52 43 44 49 52 29 2f 24 73 :\t\$(SRCDIR)/$s
8890: 2e 63 20 5c 24 28 54 52 41 4e 53 4c 41 54 45 29 .c \$(TRANSLATE)
88a0: 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 74 5c ". writeln "\t\
88b0: 24 28 54 52 41 4e 53 4c 41 54 45 29 20 5c 24 28 $(TRANSLATE) \$(
88c0: 53 52 43 44 49 52 29 2f 24 73 2e 63 20 3e 5c 24 SRCDIR)/$s.c >\$
88d0: 40 5c 6e 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 @\n". writeln "
88e0: 5c 24 28 4f 42 4a 44 49 52 29 2f 24 73 2e 6f 3a \$(OBJDIR)/$s.o:
88f0: 5c 74 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b 73 \t\$(OBJDIR)/${s
8900: 7d 5f 2e 63 20 5c 24 28 4f 42 4a 44 49 52 29 2f }_.c \$(OBJDIR)/
8910: 24 73 2e 68 24 65 78 74 72 61 5f 68 28 24 73 29 $s.h$extra_h($s)
8920: 5c 24 28 53 52 43 44 49 52 29 2f 63 6f 6e 66 69 \$(SRCDIR)/confi
8930: 67 2e 68 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 g.h". writeln "
8940: 5c 74 5c 24 28 58 54 43 43 29 20 2d 6f 20 5c 24 \t\$(XTCC) -o \$
8950: 28 4f 42 4a 44 49 52 29 2f 24 73 2e 6f 20 2d 63 (OBJDIR)/$s.o -c
8960: 20 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b 73 7d \$(OBJDIR)/${s}
8970: 5f 2e 63 5c 6e 22 0a 20 20 77 72 69 74 65 6c 6e _.c\n". writeln
8980: 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f 24 7b 73 "\$(OBJDIR)/${s
8990: 7d 2e 68 3a 5c 74 5c 24 28 4f 42 4a 44 49 52 29 }.h:\t\$(OBJDIR)
89a0: 2f 68 65 61 64 65 72 73 5c 6e 22 0a 7d 0a 0a 77 /headers\n".}..w
89b0: 72 69 74 65 6c 6e 20 7b 4d 49 4e 47 57 5f 4f 50 riteln {MINGW_OP
89c0: 54 49 4f 4e 53 20 3d 20 2d 44 5f 48 41 56 45 5f TIONS = -D_HAVE_
89d0: 5f 4d 49 4e 47 57 5f 48 0a 7d 0a 0a 73 65 74 20 _MINGW_H.}..set
89e0: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4f 50 54 SQLITE_WIN32_OPT
89f0: 49 4f 4e 53 20 24 53 51 4c 49 54 45 5f 4f 50 54 IONS $SQLITE_OPT
8a00: 49 4f 4e 53 0a 6c 61 70 70 65 6e 64 20 53 51 4c IONS.lappend SQL
8a10: 49 54 45 5f 57 49 4e 33 32 5f 4f 50 54 49 4f 4e ITE_WIN32_OPTION
8a20: 53 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 S -DSQLITE_WIN32
8a30: 5f 4e 4f 5f 41 4e 53 49 0a 0a 73 65 74 20 4d 49 _NO_ANSI..set MI
8a40: 4e 47 57 5f 53 51 4c 49 54 45 5f 4f 50 54 49 4f NGW_SQLITE_OPTIO
8a50: 4e 53 20 24 53 51 4c 49 54 45 5f 57 49 4e 33 32 NS $SQLITE_WIN32
8a60: 5f 4f 50 54 49 4f 4e 53 0a 6c 61 70 70 65 6e 64 _OPTIONS.lappend
8a70: 20 4d 49 4e 47 57 5f 53 51 4c 49 54 45 5f 4f 50 MINGW_SQLITE_OP
8a80: 54 49 4f 4e 53 20 7b 24 28 4d 49 4e 47 57 5f 4f TIONS {$(MINGW_O
8a90: 50 54 49 4f 4e 53 29 7d 0a 6c 61 70 70 65 6e 64 PTIONS)}.lappend
8aa0: 20 4d 49 4e 47 57 5f 53 51 4c 49 54 45 5f 4f 50 MINGW_SQLITE_OP
8ab0: 54 49 4f 4e 53 20 2d 44 53 51 4c 49 54 45 5f 55 TIONS -DSQLITE_U
8ac0: 53 45 5f 4d 41 4c 4c 4f 43 5f 48 0a 6c 61 70 70 SE_MALLOC_H.lapp
8ad0: 65 6e 64 20 4d 49 4e 47 57 5f 53 51 4c 49 54 45 end MINGW_SQLITE
8ae0: 5f 4f 50 54 49 4f 4e 53 20 2d 44 53 51 4c 49 54 _OPTIONS -DSQLIT
8af0: 45 5f 55 53 45 5f 4d 53 49 5a 45 0a 0a 73 65 74 E_USE_MSIZE..set
8b00: 20 4d 49 4e 49 5a 5f 57 49 4e 33 32 5f 4f 50 54 MINIZ_WIN32_OPT
8b10: 49 4f 4e 53 20 24 4d 49 4e 49 5a 5f 4f 50 54 49 IONS $MINIZ_OPTI
8b20: 4f 4e 53 0a 0a 73 65 74 20 6a 20 22 20 5c 5c 5c ONS..set j " \\\
8b30: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n
8b40: 20 20 22 0a 77 72 69 74 65 6c 6e 20 22 53 51 4c ".writeln "SQL
8b50: 49 54 45 5f 4f 50 54 49 4f 4e 53 20 3d 20 5b 6a ITE_OPTIONS = [j
8b60: 6f 69 6e 20 24 4d 49 4e 47 57 5f 53 51 4c 49 54 oin $MINGW_SQLIT
8b70: 45 5f 4f 50 54 49 4f 4e 53 20 24 6a 5d 5c 6e 22 E_OPTIONS $j]\n"
8b80: 0a 73 65 74 20 6a 20 22 20 5c 5c 5c 6e 20 20 20 .set j " \\\n
8b90: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 0a 77 ".w
8ba0: 72 69 74 65 6c 6e 20 22 53 48 45 4c 4c 5f 4f 50 riteln "SHELL_OP
8bb0: 54 49 4f 4e 53 20 3d 20 5b 6a 6f 69 6e 20 24 53 TIONS = [join $S
8bc0: 48 45 4c 4c 5f 57 49 4e 33 32 5f 4f 50 54 49 4f HELL_WIN32_OPTIO
8bd0: 4e 53 20 24 6a 5d 5c 6e 22 0a 73 65 74 20 6a 20 NS $j]\n".set j
8be0: 22 20 5c 5c 5c 6e 20 20 20 20 20 20 20 20 20 20 " \\\n
8bf0: 20 20 20 20 20 20 22 0a 77 72 69 74 65 6c 6e 20 ".writeln
8c00: 22 4d 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 20 3d "MINIZ_OPTIONS =
8c10: 20 5b 6a 6f 69 6e 20 24 4d 49 4e 49 5a 5f 57 49 [join $MINIZ_WI
8c20: 4e 33 32 5f 4f 50 54 49 4f 4e 53 20 24 6a 5d 5c N32_OPTIONS $j]\
8c30: 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 n"..writeln "\$(
8c40: 4f 42 4a 44 49 52 29 2f 73 71 6c 69 74 65 33 2e OBJDIR)/sqlite3.
8c50: 6f 3a 5c 74 5c 24 28 53 51 4c 49 54 45 33 5f 53 o:\t\$(SQLITE3_S
8c60: 52 43 29 20 5c 24 28 53 52 43 44 49 52 29 2f 2e RC) \$(SRCDIR)/.
8c70: 2e 2f 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 2e 6d ./win/Makefile.m
8c80: 69 6e 67 77 22 0a 77 72 69 74 65 6c 6e 20 22 5c ingw".writeln "\
8c90: 74 5c 24 28 58 54 43 43 29 20 5c 24 28 53 51 4c t\$(XTCC) \$(SQL
8ca0: 49 54 45 5f 4f 50 54 49 4f 4e 53 29 20 5c 24 28 ITE_OPTIONS) \$(
8cb0: 53 51 4c 49 54 45 5f 43 46 4c 41 47 53 29 20 5c SQLITE_CFLAGS) \
8cc0: 24 28 53 45 45 5f 46 4c 41 47 53 29 20 5c 5c 22 $(SEE_FLAGS) \\"
8cd0: 0a 77 72 69 74 65 6c 6e 20 22 5c 74 5c 74 2d 63 .writeln "\t\t-c
8ce0: 20 5c 24 28 53 51 4c 49 54 45 33 5f 53 52 43 29 \$(SQLITE3_SRC)
8cf0: 20 2d 6f 20 5c 24 40 5c 6e 22 0a 0a 77 72 69 74 -o \$@\n"..writ
8d00: 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f eln "\$(OBJDIR)/
8d10: 63 73 6f 6e 5f 61 6d 61 6c 67 61 6d 61 74 69 6f cson_amalgamatio
8d20: 6e 2e 6f 3a 5c 74 5c 24 28 53 52 43 44 49 52 29 n.o:\t\$(SRCDIR)
8d30: 2f 63 73 6f 6e 5f 61 6d 61 6c 67 61 6d 61 74 69 /cson_amalgamati
8d40: 6f 6e 2e 63 22 0a 77 72 69 74 65 6c 6e 20 22 5c on.c".writeln "\
8d50: 74 5c 24 28 58 54 43 43 29 20 2d 63 20 5c 24 28 t\$(XTCC) -c \$(
8d60: 53 52 43 44 49 52 29 2f 63 73 6f 6e 5f 61 6d 61 SRCDIR)/cson_ama
8d70: 6c 67 61 6d 61 74 69 6f 6e 2e 63 20 2d 6f 20 5c lgamation.c -o \
8d80: 24 40 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 22 5c $@\n".writeln "\
8d90: 24 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 2e 6f $(OBJDIR)/json.o
8da0: 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e \$(OBJDIR)/json
8db0: 5f 61 72 74 69 66 61 63 74 2e 6f 20 5c 24 28 4f _artifact.o \$(O
8dc0: 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 62 72 61 6e BJDIR)/json_bran
8dd0: 63 68 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f ch.o \$(OBJDIR)/
8de0: 6a 73 6f 6e 5f 63 6f 6e 66 69 67 2e 6f 20 5c 24 json_config.o \$
8df0: 28 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 64 69 (OBJDIR)/json_di
8e00: 66 66 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f ff.o \$(OBJDIR)/
8e10: 6a 73 6f 6e 5f 64 69 72 2e 6f 20 5c 24 28 4f 42 json_dir.o \$(OB
8e20: 4a 44 49 52 29 2f 6a 73 6f 73 5f 66 69 6e 66 6f JDIR)/jsos_finfo
8e30: 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 .o \$(OBJDIR)/js
8e40: 6f 6e 5f 6c 6f 67 69 6e 2e 6f 20 5c 24 28 4f 42 on_login.o \$(OB
8e50: 4a 44 49 52 29 2f 6a 73 6f 6e 5f 71 75 65 72 79 JDIR)/json_query
8e60: 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f 6a 73 .o \$(OBJDIR)/js
8e70: 6f 6e 5f 72 65 70 6f 72 74 2e 6f 20 5c 24 28 4f on_report.o \$(O
8e80: 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 73 74 61 74 BJDIR)/json_stat
8e90: 75 73 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 2f us.o \$(OBJDIR)/
8ea0: 6a 73 6f 6e 5f 74 61 67 2e 6f 20 5c 24 28 4f 42 json_tag.o \$(OB
8eb0: 4a 44 49 52 29 2f 6a 73 6f 6e 5f 74 69 6d 65 6c JDIR)/json_timel
8ec0: 69 6e 65 2e 6f 20 5c 24 28 4f 42 4a 44 49 52 29 ine.o \$(OBJDIR)
8ed0: 2f 6a 73 6f 6e 5f 75 73 65 72 2e 6f 20 5c 24 28 /json_user.o \$(
8ee0: 4f 42 4a 44 49 52 29 2f 6a 73 6f 6e 5f 77 69 6b OBJDIR)/json_wik
8ef0: 69 2e 6f 20 3a 20 5c 24 28 53 52 43 44 49 52 29 i.o : \$(SRCDIR)
8f00: 2f 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 5c 6e /json_detail.h\n
8f10: 22 0a 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f "..writeln "\$(O
8f20: 42 4a 44 49 52 29 2f 73 68 65 6c 6c 2e 6f 3a 5c BJDIR)/shell.o:\
8f30: 74 5c 24 28 53 51 4c 49 54 45 33 5f 53 48 45 4c t\$(SQLITE3_SHEL
8f40: 4c 5f 53 52 43 29 20 5c 24 28 53 52 43 44 49 52 L_SRC) \$(SRCDIR
8f50: 29 2f 73 71 6c 69 74 65 33 2e 68 20 5c 24 28 53 )/sqlite3.h \$(S
8f60: 52 43 44 49 52 29 2f 2e 2e 2f 77 69 6e 2f 4d 61 RCDIR)/../win/Ma
8f70: 6b 65 66 69 6c 65 2e 6d 69 6e 67 77 22 0a 77 72 kefile.mingw".wr
8f80: 69 74 65 6c 6e 20 22 5c 74 5c 24 28 58 54 43 43 iteln "\t\$(XTCC
8f90: 29 20 5c 24 28 53 48 45 4c 4c 5f 4f 50 54 49 4f ) \$(SHELL_OPTIO
8fa0: 4e 53 29 20 5c 24 28 53 48 45 4c 4c 5f 43 46 4c NS) \$(SHELL_CFL
8fb0: 41 47 53 29 20 5c 24 28 53 45 45 5f 46 4c 41 47 AGS) \$(SEE_FLAG
8fc0: 53 29 20 2d 63 20 5c 24 28 53 51 4c 49 54 45 33 S) -c \$(SQLITE3
8fd0: 5f 53 48 45 4c 4c 5f 53 52 43 29 20 2d 6f 20 5c _SHELL_SRC) -o \
8fe0: 24 40 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 22 $@\n"..writeln "
8ff0: 5c 24 28 4f 42 4a 44 49 52 29 2f 74 68 2e 6f 3a \$(OBJDIR)/th.o:
9000: 5c 74 5c 24 28 53 52 43 44 49 52 29 2f 74 68 2e \t\$(SRCDIR)/th.
9010: 63 22 0a 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 c".writeln "\t\$
9020: 28 58 54 43 43 29 20 2d 63 20 5c 24 28 53 52 43 (XTCC) -c \$(SRC
9030: 44 49 52 29 2f 74 68 2e 63 20 2d 6f 20 5c 24 40 DIR)/th.c -o \$@
9040: 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 22 5c 24 \n"..writeln "\$
9050: 28 4f 42 4a 44 49 52 29 2f 74 68 5f 6c 61 6e 67 (OBJDIR)/th_lang
9060: 2e 6f 3a 5c 74 5c 24 28 53 52 43 44 49 52 29 2f .o:\t\$(SRCDIR)/
9070: 74 68 5f 6c 61 6e 67 2e 63 22 0a 77 72 69 74 65 th_lang.c".write
9080: 6c 6e 20 22 5c 74 5c 24 28 58 54 43 43 29 20 2d ln "\t\$(XTCC) -
9090: 63 20 5c 24 28 53 52 43 44 49 52 29 2f 74 68 5f c \$(SRCDIR)/th_
90a0: 6c 61 6e 67 2e 63 20 2d 6f 20 5c 24 40 5c 6e 22 lang.c -o \$@\n"
90b0: 0a 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 ..writeln "\$(OB
90c0: 4a 44 49 52 29 2f 74 68 5f 74 63 6c 2e 6f 3a 5c JDIR)/th_tcl.o:\
90d0: 74 5c 24 28 53 52 43 44 49 52 29 2f 74 68 5f 74 t\$(SRCDIR)/th_t
90e0: 63 6c 2e 63 22 0a 77 72 69 74 65 6c 6e 20 22 5c cl.c".writeln "\
90f0: 74 5c 24 28 58 54 43 43 29 20 2d 63 20 5c 24 28 t\$(XTCC) -c \$(
9100: 53 52 43 44 49 52 29 2f 74 68 5f 74 63 6c 2e 63 SRCDIR)/th_tcl.c
9110: 20 2d 6f 20 5c 24 40 5c 6e 22 0a 0a 77 72 69 74 -o \$@\n"..writ
9120: 65 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 2f eln "\$(OBJDIR)/
9130: 6d 69 6e 69 7a 2e 6f 3a 5c 74 5c 24 28 53 52 43 miniz.o:\t\$(SRC
9140: 44 49 52 29 2f 6d 69 6e 69 7a 2e 63 22 0a 77 72 DIR)/miniz.c".wr
9150: 69 74 65 6c 6e 20 22 5c 74 5c 24 28 58 54 43 43 iteln "\t\$(XTCC
9160: 29 20 5c 24 28 4d 49 4e 49 5a 5f 4f 50 54 49 4f ) \$(MINIZ_OPTIO
9170: 4e 53 29 20 2d 63 20 5c 24 28 53 52 43 44 49 52 NS) -c \$(SRCDIR
9180: 29 2f 6d 69 6e 69 7a 2e 63 20 2d 6f 20 5c 24 40 )/miniz.c -o \$@
9190: 5c 6e 22 0a 0a 63 6c 6f 73 65 20 24 6f 75 74 70 \n"..close $outp
91a0: 75 74 5f 66 69 6c 65 0a 23 0a 23 20 45 6e 64 20 ut_file.#.# End
91b0: 6f 66 20 74 68 65 20 77 69 6e 2f 4d 61 6b 65 66 of the win/Makef
91c0: 69 6c 65 2e 6d 69 6e 67 77 20 6f 75 74 70 75 74 ile.mingw output
91d0: 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 .###############
91e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
91f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9200: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9210: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a ###############.
9220: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9230: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9240: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9250: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9260: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 ##############.#
9270: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9280: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9290: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
92a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
92b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 20 #############.#
92c0: 42 65 67 69 6e 20 77 69 6e 2f 4d 61 6b 65 66 69 Begin win/Makefi
92d0: 6c 65 2e 64 6d 63 20 6f 75 74 70 75 74 0a 23 0a le.dmc output.#.
92e0: 70 75 74 73 20 22 62 75 69 6c 64 69 6e 67 20 2e puts "building .
92f0: 2e 2f 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 2e 64 ./win/Makefile.d
9300: 6d 63 22 0a 73 65 74 20 6f 75 74 70 75 74 5f 66 mc".set output_f
9310: 69 6c 65 20 5b 6f 70 65 6e 20 2e 2e 2f 77 69 6e ile [open ../win
9320: 2f 4d 61 6b 65 66 69 6c 65 2e 64 6d 63 20 77 5d /Makefile.dmc w]
9330: 0a 66 63 6f 6e 66 69 67 75 72 65 20 24 6f 75 74 .fconfigure $out
9340: 70 75 74 5f 66 69 6c 65 20 2d 74 72 61 6e 73 6c put_file -transl
9350: 61 74 69 6f 6e 20 62 69 6e 61 72 79 0a 0a 77 72 ation binary..wr
9360: 69 74 65 6c 6e 20 7b 23 0a 23 23 23 23 23 23 23 iteln {#.#######
9370: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9380: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9390: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
93a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
93b0: 23 23 23 23 23 23 23 0a 23 20 57 41 52 4e 49 4e #######.# WARNIN
93c0: 47 3a 20 44 4f 20 4e 4f 54 20 45 44 49 54 2c 20 G: DO NOT EDIT,
93d0: 41 55 54 4f 4d 41 54 49 43 41 4c 4c 59 20 47 45 AUTOMATICALLY GE
93e0: 4e 45 52 41 54 45 44 20 46 49 4c 45 20 28 53 45 NERATED FILE (SE
93f0: 45 20 22 73 72 63 2f 6d 61 6b 65 6d 61 6b 65 2e E "src/makemake.
9400: 74 63 6c 22 29 0a 23 23 23 23 23 23 23 23 23 23 tcl").##########
9410: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9420: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9430: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9440: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
9450: 23 23 23 23 0a 23 0a 23 20 54 68 69 73 20 66 69 ####.#.# This fi
9460: 6c 65 20 69 73 20 61 75 74 6f 6d 61 74 69 63 61 le is automatica
9470: 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e 20 20 lly generated.
9480: 49 6e 73 74 65 61 64 20 6f 66 20 65 64 69 74 69 Instead of editi
9490: 6e 67 20 74 68 69 73 0a 23 20 66 69 6c 65 2c 20 ng this.# file,
94a0: 65 64 69 74 20 22 6d 61 6b 65 6d 61 6b 65 2e 74 edit "makemake.t
94b0: 63 6c 22 20 74 68 65 6e 20 72 75 6e 20 22 74 63 cl" then run "tc
94c0: 6c 73 68 20 6d 61 6b 65 6d 61 6b 65 2e 74 63 6c lsh makemake.tcl
94d0: 22 0a 23 20 74 6f 20 72 65 67 65 6e 65 72 61 74 ".# to regenerat
94e0: 65 20 74 68 69 73 20 66 69 6c 65 2e 0a 23 0a 42 e this file..#.B
94f0: 20 20 20 20 20 20 3d 20 2e 2e 0a 53 52 43 44 49 = ...SRCDI
9500: 52 20 3d 20 24 42 5c 73 72 63 0a 4f 42 4a 44 49 R = $B\src.OBJDI
9510: 52 20 3d 20 2e 0a 4f 20 20 20 20 20 20 3d 20 2e R = ..O = .
9520: 6f 62 6a 0a 45 20 20 20 20 20 20 3d 20 2e 65 78 obj.E = .ex
9530: 65 0a 0a 0a 23 20 4d 61 79 62 65 20 44 4d 44 49 e...# Maybe DMDI
9540: 52 2c 20 53 53 4c 20 6f 72 20 49 4e 43 4c 20 6e R, SSL or INCL n
9550: 65 65 64 73 20 61 64 6a 75 73 74 6d 65 6e 74 0a eeds adjustment.
9560: 44 4d 44 49 52 20 20 3d 20 63 3a 5c 44 4d 0a 49 DMDIR = c:\DM.I
9570: 4e 43 4c 20 20 20 3d 20 2d 49 2e 20 2d 49 24 28 NCL = -I. -I$(
9580: 53 52 43 44 49 52 29 20 2d 49 24 42 5c 77 69 6e SRCDIR) -I$B\win
9590: 5c 69 6e 63 6c 75 64 65 20 2d 49 24 28 44 4d 44 \include -I$(DMD
95a0: 49 52 29 5c 65 78 74 72 61 5c 69 6e 63 6c 75 64 IR)\extra\includ
95b0: 65 0a 0a 23 53 53 4c 20 20 20 3d 20 20 2d 44 46 e..#SSL = -DF
95c0: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c OSSIL_ENABLE_SSL
95d0: 3d 31 0a 53 53 4c 20 20 20 20 3d 0a 0a 43 46 4c =1.SSL =..CFL
95e0: 41 47 53 20 3d 20 2d 6f 0a 42 43 43 20 20 20 20 AGS = -o.BCC
95f0: 3d 20 24 28 44 4d 44 49 52 29 5c 62 69 6e 5c 64 = $(DMDIR)\bin\d
9600: 6d 63 20 24 28 43 46 4c 41 47 53 29 0a 54 43 43 mc $(CFLAGS).TCC
9610: 20 20 20 20 3d 20 24 28 44 4d 44 49 52 29 5c 62 = $(DMDIR)\b
9620: 69 6e 5c 64 6d 63 20 24 28 43 46 4c 41 47 53 29 in\dmc $(CFLAGS)
9630: 20 24 28 44 4d 43 44 45 46 29 20 24 28 53 53 4c $(DMCDEF) $(SSL
9640: 29 20 24 28 49 4e 43 4c 29 0a 4c 49 42 53 20 20 ) $(INCL).LIBS
9650: 20 3d 20 24 28 44 4d 44 49 52 29 5c 65 78 74 72 = $(DMDIR)\extr
9660: 61 5c 6c 69 62 5c 20 7a 6c 69 62 20 77 73 6f 63 a\lib\ zlib wsoc
9670: 6b 33 32 20 61 64 76 61 70 69 33 32 0a 7d 0a 77 k32 advapi32.}.w
9680: 72 69 74 65 6c 6e 20 22 53 51 4c 49 54 45 5f 4f riteln "SQLITE_O
9690: 50 54 49 4f 4e 53 20 3d 20 5b 6a 6f 69 6e 20 24 PTIONS = [join $
96a0: 53 51 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 7b SQLITE_OPTIONS {
96b0: 20 7d 5d 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 22 }]\n".writeln "
96c0: 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 20 3d 20 SHELL_OPTIONS =
96d0: 5b 6a 6f 69 6e 20 24 53 48 45 4c 4c 5f 57 49 4e [join $SHELL_WIN
96e0: 33 32 5f 4f 50 54 49 4f 4e 53 20 7b 20 7d 5d 5c 32_OPTIONS { }]\
96f0: 6e 22 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 n".writeln -none
9700: 77 6c 69 6e 65 20 22 53 52 43 20 20 20 3d 22 0a wline "SRC =".
9710: 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 foreach s [lsort
9720: 20 24 73 72 63 5d 20 7b 0a 20 20 77 72 69 74 65 $src] {. write
9730: 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 20 ln -nonewline "
9740: 24 7b 73 7d 5f 2e 63 22 0a 7d 0a 77 72 69 74 65 ${s}_.c".}.write
9750: 6c 6e 20 22 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 ln "\n".writeln
9760: 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 4f 42 4a 20 -nonewline "OBJ
9770: 20 20 3d 20 22 0a 66 6f 72 65 61 63 68 20 73 20 = ".foreach s
9780: 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 7b 0a 20 [lsort $src] {.
9790: 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c writeln -nonewl
97a0: 69 6e 65 20 22 5c 24 28 4f 42 4a 44 49 52 29 5c ine "\$(OBJDIR)\
97b0: 5c 24 73 5c 24 4f 20 22 0a 7d 0a 77 72 69 74 65 \$s\$O ".}.write
97c0: 6c 6e 20 22 5c 24 28 4f 42 4a 44 49 52 29 5c 5c ln "\$(OBJDIR)\\
97d0: 73 68 65 6c 6c 5c 24 4f 20 5c 24 28 4f 42 4a 44 shell\$O \$(OBJD
97e0: 49 52 29 5c 5c 73 71 6c 69 74 65 33 5c 24 4f 20 IR)\\sqlite3\$O
97f0: 5c 24 28 4f 42 4a 44 49 52 29 5c 5c 74 68 5c 24 \$(OBJDIR)\\th\$
9800: 4f 20 5c 24 28 4f 42 4a 44 49 52 29 5c 5c 74 68 O \$(OBJDIR)\\th
9810: 5f 6c 61 6e 67 5c 24 4f 22 0a 77 72 69 74 65 6c _lang\$O".writel
9820: 6e 20 7b 0a 0a 52 43 3d 24 28 44 4d 44 49 52 29 n {..RC=$(DMDIR)
9830: 5c 62 69 6e 5c 72 63 63 0a 52 43 46 4c 41 47 53 \bin\rcc.RCFLAGS
9840: 3d 2d 33 32 20 2d 77 31 20 2d 49 24 28 53 52 43 =-32 -w1 -I$(SRC
9850: 44 49 52 29 20 2f 44 5f 5f 44 4d 43 5f 5f 0a 0a DIR) /D__DMC__..
9860: 41 50 50 4e 41 4d 45 20 3d 20 24 28 4f 42 4a 44 APPNAME = $(OBJD
9870: 49 52 29 5c 66 6f 73 73 69 6c 24 28 45 29 0a 0a IR)\fossil$(E)..
9880: 61 6c 6c 3a 20 24 28 41 50 50 4e 41 4d 45 29 0a all: $(APPNAME).
9890: 0a 24 28 41 50 50 4e 41 4d 45 29 20 3a 20 74 72 .$(APPNAME) : tr
98a0: 61 6e 73 6c 61 74 65 24 45 20 6d 6b 69 6e 64 65 anslate$E mkinde
98b0: 78 24 45 20 63 6f 64 65 63 68 65 63 6b 31 24 45 x$E codecheck1$E
98c0: 20 68 65 61 64 65 72 73 20 20 24 28 4f 42 4a 29 headers $(OBJ)
98d0: 20 24 28 4f 42 4a 44 49 52 29 5c 6c 69 6e 6b 0a $(OBJDIR)\link.
98e0: 09 63 64 20 24 28 4f 42 4a 44 49 52 29 0a 09 63 .cd $(OBJDIR)..c
98f0: 6f 64 65 63 68 65 63 6b 31 24 45 20 24 28 53 52 odecheck1$E $(SR
9900: 43 29 0a 09 24 28 44 4d 44 49 52 29 5c 62 69 6e C)..$(DMDIR)\bin
9910: 5c 6c 69 6e 6b 20 40 6c 69 6e 6b 0a 0a 24 28 4f \link @link..$(O
9920: 42 4a 44 49 52 29 5c 66 6f 73 73 69 6c 2e 72 65 BJDIR)\fossil.re
9930: 73 3a 09 24 42 5c 77 69 6e 5c 66 6f 73 73 69 6c s:.$B\win\fossil
9940: 2e 72 63 0a 09 24 28 52 43 29 20 24 28 52 43 46 .rc..$(RC) $(RCF
9950: 4c 41 47 53 29 20 2d 6f 24 40 20 24 2a 2a 0a 0a LAGS) -o$@ $**..
9960: 24 28 4f 42 4a 44 49 52 29 5c 6c 69 6e 6b 3a 20 $(OBJDIR)\link:
9970: 24 42 5c 77 69 6e 5c 4d 61 6b 65 66 69 6c 65 2e $B\win\Makefile.
9980: 64 6d 63 20 24 28 4f 42 4a 44 49 52 29 5c 66 6f dmc $(OBJDIR)\fo
9990: 73 73 69 6c 2e 72 65 73 7d 0a 77 72 69 74 65 6c ssil.res}.writel
99a0: 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 5c 74 n -nonewline "\t
99b0: 2b 65 63 68 6f 20 22 0a 66 6f 72 65 61 63 68 20 +echo ".foreach
99c0: 73 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 7b s [lsort $src] {
99d0: 0a 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 . writeln -none
99e0: 77 6c 69 6e 65 20 22 24 73 20 22 0a 7d 0a 77 72 wline "$s ".}.wr
99f0: 69 74 65 6c 6e 20 22 73 68 65 6c 6c 20 73 71 6c iteln "shell sql
9a00: 69 74 65 33 20 74 68 20 74 68 5f 6c 61 6e 67 20 ite3 th th_lang
9a10: 3e 20 5c 24 40 22 0a 77 72 69 74 65 6c 6e 20 22 > \$@".writeln "
9a20: 5c 74 2b 65 63 68 6f 20 66 6f 73 73 69 6c 20 3e \t+echo fossil >
9a30: 3e 20 5c 24 40 22 0a 77 72 69 74 65 6c 6e 20 22 > \$@".writeln "
9a40: 5c 74 2b 65 63 68 6f 20 66 6f 73 73 69 6c 20 3e \t+echo fossil >
9a50: 3e 20 5c 24 40 22 0a 77 72 69 74 65 6c 6e 20 22 > \$@".writeln "
9a60: 5c 74 2b 65 63 68 6f 20 5c 24 28 4c 49 42 53 29 \t+echo \$(LIBS)
9a70: 20 3e 3e 20 5c 24 40 22 0a 77 72 69 74 65 6c 6e >> \$@".writeln
9a80: 20 22 5c 74 2b 65 63 68 6f 2e 20 3e 3e 20 5c 24 "\t+echo. >> \$
9a90: 40 22 0a 77 72 69 74 65 6c 6e 20 22 5c 74 2b 65 @".writeln "\t+e
9aa0: 63 68 6f 20 66 6f 73 73 69 6c 20 3e 3e 20 5c 24 cho fossil >> \$
9ab0: 40 22 0a 0a 77 72 69 74 65 6c 6e 20 7b 0a 74 72 @"..writeln {.tr
9ac0: 61 6e 73 6c 61 74 65 24 45 3a 20 24 28 53 52 43 anslate$E: $(SRC
9ad0: 44 49 52 29 5c 74 72 61 6e 73 6c 61 74 65 2e 63 DIR)\translate.c
9ae0: 0a 09 24 28 42 43 43 29 20 2d 6f 24 40 20 24 2a ..$(BCC) -o$@ $*
9af0: 2a 0a 0a 6d 61 6b 65 68 65 61 64 65 72 73 24 45 *..makeheaders$E
9b00: 3a 20 24 28 53 52 43 44 49 52 29 5c 6d 61 6b 65 : $(SRCDIR)\make
9b10: 68 65 61 64 65 72 73 2e 63 0a 09 24 28 42 43 43 headers.c..$(BCC
9b20: 29 20 2d 6f 24 40 20 24 2a 2a 0a 0a 6d 6b 69 6e ) -o$@ $**..mkin
9b30: 64 65 78 24 45 3a 20 24 28 53 52 43 44 49 52 29 dex$E: $(SRCDIR)
9b40: 5c 6d 6b 69 6e 64 65 78 2e 63 0a 09 24 28 42 43 \mkindex.c..$(BC
9b50: 43 29 20 2d 6f 24 40 20 24 2a 2a 0a 0a 6d 6b 62 C) -o$@ $**..mkb
9b60: 75 69 6c 74 69 6e 24 45 3a 20 24 28 53 52 43 44 uiltin$E: $(SRCD
9b70: 49 52 29 5c 6d 6b 62 75 69 6c 74 69 6e 2e 63 0a IR)\mkbuiltin.c.
9b80: 09 24 28 42 43 43 29 20 2d 6f 24 40 20 24 2a 2a .$(BCC) -o$@ $**
9b90: 0a 0a 6d 6b 76 65 72 73 69 6f 6e 24 45 3a 20 24 ..mkversion$E: $
9ba0: 28 53 52 43 44 49 52 29 5c 6d 6b 76 65 72 73 69 (SRCDIR)\mkversi
9bb0: 6f 6e 2e 63 0a 09 24 28 42 43 43 29 20 2d 6f 24 on.c..$(BCC) -o$
9bc0: 40 20 24 2a 2a 0a 0a 6d 6b 63 73 73 24 45 3a 20 @ $**..mkcss$E:
9bd0: 24 28 53 52 43 44 49 52 29 5c 6d 6b 63 73 73 2e $(SRCDIR)\mkcss.
9be0: 63 0a 09 24 28 42 43 43 29 20 2d 6f 24 40 20 24 c..$(BCC) -o$@ $
9bf0: 2a 2a 0a 0a 63 6f 64 65 63 68 65 63 6b 31 24 45 **..codecheck1$E
9c00: 3a 20 24 28 53 52 43 44 49 52 29 5c 63 6f 64 65 : $(SRCDIR)\code
9c10: 63 68 65 63 6b 31 2e 63 0a 09 24 28 42 43 43 29 check1.c..$(BCC)
9c20: 20 2d 6f 24 40 20 24 2a 2a 0a 0a 24 28 4f 42 4a -o$@ $**..$(OBJ
9c30: 44 49 52 29 5c 73 68 65 6c 6c 24 4f 20 3a 20 24 DIR)\shell$O : $
9c40: 28 53 52 43 44 49 52 29 5c 73 68 65 6c 6c 2e 63 (SRCDIR)\shell.c
9c50: 0a 09 24 28 54 43 43 29 20 2d 6f 24 40 20 2d 63 ..$(TCC) -o$@ -c
9c60: 20 24 28 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 $(SHELL_OPTIONS
9c70: 29 20 24 28 53 51 4c 49 54 45 5f 4f 50 54 49 4f ) $(SQLITE_OPTIO
9c80: 4e 53 29 20 24 28 53 48 45 4c 4c 5f 43 46 4c 41 NS) $(SHELL_CFLA
9c90: 47 53 29 20 24 2a 2a 0a 0a 24 28 4f 42 4a 44 49 GS) $**..$(OBJDI
9ca0: 52 29 5c 73 71 6c 69 74 65 33 24 4f 20 3a 20 24 R)\sqlite3$O : $
9cb0: 28 53 52 43 44 49 52 29 5c 73 71 6c 69 74 65 33 (SRCDIR)\sqlite3
9cc0: 2e 63 0a 09 24 28 54 43 43 29 20 2d 6f 24 40 20 .c..$(TCC) -o$@
9cd0: 2d 63 20 24 28 53 51 4c 49 54 45 5f 4f 50 54 49 -c $(SQLITE_OPTI
9ce0: 4f 4e 53 29 20 24 28 53 51 4c 49 54 45 5f 43 46 ONS) $(SQLITE_CF
9cf0: 4c 41 47 53 29 20 24 2a 2a 0a 0a 24 28 4f 42 4a LAGS) $**..$(OBJ
9d00: 44 49 52 29 5c 74 68 24 4f 20 3a 20 24 28 53 52 DIR)\th$O : $(SR
9d10: 43 44 49 52 29 5c 74 68 2e 63 0a 09 24 28 54 43 CDIR)\th.c..$(TC
9d20: 43 29 20 2d 6f 24 40 20 2d 63 20 24 2a 2a 0a 0a C) -o$@ -c $**..
9d30: 24 28 4f 42 4a 44 49 52 29 5c 74 68 5f 6c 61 6e $(OBJDIR)\th_lan
9d40: 67 24 4f 20 3a 20 24 28 53 52 43 44 49 52 29 5c g$O : $(SRCDIR)\
9d50: 74 68 5f 6c 61 6e 67 2e 63 0a 09 24 28 54 43 43 th_lang.c..$(TCC
9d60: 29 20 2d 6f 24 40 20 2d 63 20 24 2a 2a 0a 0a 24 ) -o$@ -c $**..$
9d70: 28 4f 42 4a 44 49 52 29 5c 63 73 6f 6e 5f 61 6d (OBJDIR)\cson_am
9d80: 61 6c 67 61 6d 61 74 69 6f 6e 2e 68 20 3a 20 24 algamation.h : $
9d90: 28 53 52 43 44 49 52 29 5c 63 73 6f 6e 5f 61 6d (SRCDIR)\cson_am
9da0: 61 6c 67 61 6d 61 74 69 6f 6e 2e 68 0a 09 63 70 algamation.h..cp
9db0: 20 24 40 20 24 40 0a 0a 56 45 52 53 49 4f 4e 2e $@ $@..VERSION.
9dc0: 68 20 3a 20 6d 6b 76 65 72 73 69 6f 6e 24 45 20 h : mkversion$E
9dd0: 24 42 5c 6d 61 6e 69 66 65 73 74 2e 75 75 69 64 $B\manifest.uuid
9de0: 20 24 42 5c 6d 61 6e 69 66 65 73 74 20 24 42 5c $B\manifest $B\
9df0: 56 45 52 53 49 4f 4e 0a 09 2b 24 2a 2a 20 3e 20 VERSION..+$** >
9e00: 24 40 0a 0a 64 65 66 61 75 6c 74 5f 63 73 73 2e $@..default_css.
9e10: 68 20 3a 20 6d 6b 63 73 73 24 45 20 24 42 5c 73 h : mkcss$E $B\s
9e20: 72 63 5c 64 65 66 61 75 6c 74 5f 63 73 73 2e 74 rc\default_css.t
9e30: 78 74 0a 09 2b 24 2a 2a 20 24 42 5c 73 72 63 5c xt..+$** $B\src\
9e40: 64 65 66 61 75 6c 74 5f 63 73 73 2e 74 78 74 20 default_css.txt
9e50: 24 40 0a 0a 70 61 67 65 5f 69 6e 64 65 78 2e 68 $@..page_index.h
9e60: 3a 20 6d 6b 69 6e 64 65 78 24 45 20 24 28 53 52 : mkindex$E $(SR
9e70: 43 29 0a 09 2b 24 2a 2a 20 3e 20 24 40 0a 0a 62 C)..+$** > $@..b
9e80: 75 69 6c 74 69 6e 5f 64 61 74 61 2e 68 3a 09 6d uiltin_data.h:.m
9e90: 6b 62 75 69 6c 74 69 6e 24 45 20 24 28 45 58 54 kbuiltin$E $(EXT
9ea0: 52 41 5f 46 49 4c 45 53 29 0a 09 6d 6b 62 75 69 RA_FILES)..mkbui
9eb0: 6c 74 69 6e 24 45 20 2d 2d 70 72 65 66 69 78 20 ltin$E --prefix
9ec0: 24 28 53 52 43 44 49 52 29 2f 20 24 28 45 58 54 $(SRCDIR)/ $(EXT
9ed0: 52 41 5f 46 49 4c 45 53 29 20 3e 20 24 40 0a 0a RA_FILES) > $@..
9ee0: 63 6c 65 61 6e 3a 0a 09 2d 64 65 6c 20 24 28 4f clean:..-del $(O
9ef0: 42 4a 44 49 52 29 5c 2a 2e 6f 62 6a 0a 09 2d 64 BJDIR)\*.obj..-d
9f00: 65 6c 20 2a 2e 6f 62 6a 20 2a 5f 2e 63 20 2a 2e el *.obj *_.c *.
9f10: 68 20 2a 2e 6d 61 70 0a 0a 72 65 61 6c 63 6c 65 h *.map..realcle
9f20: 61 6e 3a 0a 09 2d 64 65 6c 20 24 28 41 50 50 4e an:..-del $(APPN
9f30: 41 4d 45 29 20 74 72 61 6e 73 6c 61 74 65 24 45 AME) translate$E
9f40: 20 6d 6b 69 6e 64 65 78 24 45 20 6d 61 6b 65 68 mkindex$E makeh
9f50: 65 61 64 65 72 73 24 45 20 6d 6b 76 65 72 73 69 eaders$E mkversi
9f60: 6f 6e 24 45 20 63 6f 64 65 63 68 65 63 6b 31 24 on$E codecheck1$
9f70: 45 20 6d 6b 62 75 69 6c 74 69 6e 24 45 20 6d 6b E mkbuiltin$E mk
9f80: 63 73 73 24 45 0a 0a 24 28 4f 42 4a 44 49 52 29 css$E..$(OBJDIR)
9f90: 5c 6a 73 6f 6e 24 4f 20 3a 20 24 28 53 52 43 44 \json$O : $(SRCD
9fa0: 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e IR)\json_detail.
9fb0: 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e h.$(OBJDIR)\json
9fc0: 5f 61 72 74 69 66 61 63 74 24 4f 20 3a 20 24 28 _artifact$O : $(
9fd0: 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 SRCDIR)\json_det
9fe0: 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c ail.h.$(OBJDIR)\
9ff0: 6a 73 6f 6e 5f 62 72 61 6e 63 68 24 4f 20 3a 20 json_branch$O :
a000: 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 $(SRCDIR)\json_d
a010: 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 etail.h.$(OBJDIR
a020: 29 5c 6a 73 6f 6e 5f 63 6f 6e 66 69 67 24 4f 20 )\json_config$O
a030: 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e : $(SRCDIR)\json
a040: 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 _detail.h.$(OBJD
a050: 49 52 29 5c 6a 73 6f 6e 5f 64 69 66 66 24 4f 20 IR)\json_diff$O
a060: 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e : $(SRCDIR)\json
a070: 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 _detail.h.$(OBJD
a080: 49 52 29 5c 6a 73 6f 6e 5f 64 69 72 24 4f 20 3a IR)\json_dir$O :
a090: 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f $(SRCDIR)\json_
a0a0: 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 detail.h.$(OBJDI
a0b0: 52 29 5c 6a 73 6f 6e 5f 66 69 6e 66 6f 24 4f 20 R)\json_finfo$O
a0c0: 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e : $(SRCDIR)\json
a0d0: 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 _detail.h.$(OBJD
a0e0: 49 52 29 5c 6a 73 6f 6e 5f 6c 6f 67 69 6e 24 4f IR)\json_login$O
a0f0: 20 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f : $(SRCDIR)\jso
a100: 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a n_detail.h.$(OBJ
a110: 44 49 52 29 5c 6a 73 6f 6e 5f 71 75 65 72 79 24 DIR)\json_query$
a120: 4f 20 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 O : $(SRCDIR)\js
a130: 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 on_detail.h.$(OB
a140: 4a 44 49 52 29 5c 6a 73 6f 6e 5f 72 65 70 6f 72 JDIR)\json_repor
a150: 74 24 4f 20 3a 20 24 28 53 52 43 44 49 52 29 5c t$O : $(SRCDIR)\
a160: 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 json_detail.h.$(
a170: 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f 73 74 61 OBJDIR)\json_sta
a180: 74 75 73 24 4f 20 3a 20 24 28 53 52 43 44 49 52 tus$O : $(SRCDIR
a190: 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a )\json_detail.h.
a1a0: 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f 74 $(OBJDIR)\json_t
a1b0: 61 67 24 4f 20 3a 20 24 28 53 52 43 44 49 52 29 ag$O : $(SRCDIR)
a1c0: 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 \json_detail.h.$
a1d0: 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f 74 69 (OBJDIR)\json_ti
a1e0: 6d 65 6c 69 6e 65 24 4f 20 3a 20 24 28 53 52 43 meline$O : $(SRC
a1f0: 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c DIR)\json_detail
a200: 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f .h.$(OBJDIR)\jso
a210: 6e 5f 75 73 65 72 24 4f 20 3a 20 24 28 53 52 43 n_user$O : $(SRC
a220: 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c DIR)\json_detail
a230: 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f .h.$(OBJDIR)\jso
a240: 6e 5f 77 69 6b 69 24 4f 20 3a 20 24 28 53 52 43 n_wiki$O : $(SRC
a250: 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c DIR)\json_detail
a260: 2e 68 0a 0a 0a 7d 0a 66 6f 72 65 61 63 68 20 73 .h...}.foreach s
a270: 20 5b 6c 73 6f 72 74 20 24 73 72 63 5d 20 7b 0a [lsort $src] {.
a280: 20 20 77 72 69 74 65 6c 6e 20 22 5c 24 28 4f 42 writeln "\$(OB
a290: 4a 44 49 52 29 5c 5c 24 73 5c 24 4f 20 3a 20 24 JDIR)\\$s\$O : $
a2a0: 7b 73 7d 5f 2e 63 20 24 7b 73 7d 2e 68 22 0a 20 {s}_.c ${s}.h".
a2b0: 20 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 28 54 writeln "\t\$(T
a2c0: 43 43 29 20 2d 6f 5c 24 40 20 2d 63 20 24 7b 73 CC) -o\$@ -c ${s
a2d0: 7d 5f 2e 63 5c 6e 22 0a 20 20 77 72 69 74 65 6c }_.c\n". writel
a2e0: 6e 20 22 24 7b 73 7d 5f 2e 63 20 3a 20 5c 24 28 n "${s}_.c : \$(
a2f0: 53 52 43 44 49 52 29 5c 5c 24 73 2e 63 22 0a 20 SRCDIR)\\$s.c".
a300: 20 77 72 69 74 65 6c 6e 20 22 5c 74 2b 74 72 61 writeln "\t+tra
a310: 6e 73 6c 61 74 65 5c 24 45 20 5c 24 2a 2a 20 3e nslate\$E \$** >
a320: 20 5c 24 40 5c 6e 22 0a 7d 0a 0a 77 72 69 74 65 \$@\n".}..write
a330: 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 68 ln -nonewline "h
a340: 65 61 64 65 72 73 3a 20 6d 61 6b 65 68 65 61 64 eaders: makehead
a350: 65 72 73 5c 24 45 20 70 61 67 65 5f 69 6e 64 65 ers\$E page_inde
a360: 78 2e 68 20 62 75 69 6c 74 69 6e 5f 64 61 74 61 x.h builtin_data
a370: 2e 68 20 64 65 66 61 75 6c 74 5f 63 73 73 2e 68 .h default_css.h
a380: 20 56 45 52 53 49 4f 4e 2e 68 5c 6e 5c 74 20 2b VERSION.h\n\t +
a390: 6d 61 6b 65 68 65 61 64 65 72 73 5c 24 45 20 22 makeheaders\$E "
a3a0: 0a 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 72 .foreach s [lsor
a3b0: 74 20 24 73 72 63 5d 20 7b 0a 20 20 77 72 69 74 t $src] {. writ
a3c0: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
a3d0: 24 7b 73 7d 5f 2e 63 3a 24 73 2e 68 20 22 0a 7d ${s}_.c:$s.h ".}
a3e0: 0a 77 72 69 74 65 6c 6e 20 22 5c 24 28 53 52 43 .writeln "\$(SRC
a3f0: 44 49 52 29 5c 5c 73 71 6c 69 74 65 33 2e 68 20 DIR)\\sqlite3.h
a400: 5c 24 28 53 52 43 44 49 52 29 5c 5c 74 68 2e 68 \$(SRCDIR)\\th.h
a410: 20 56 45 52 53 49 4f 4e 2e 68 20 5c 24 28 53 52 VERSION.h \$(SR
a420: 43 44 49 52 29 5c 5c 63 73 6f 6e 5f 61 6d 61 6c CDIR)\\cson_amal
a430: 67 61 6d 61 74 69 6f 6e 2e 68 22 0a 77 72 69 74 gamation.h".writ
a440: 65 6c 6e 20 22 5c 74 40 63 6f 70 79 20 2f 59 20 eln "\t@copy /Y
a450: 6e 75 6c 3a 20 68 65 61 64 65 72 73 22 0a 0a 63 nul: headers"..c
a460: 6c 6f 73 65 20 24 6f 75 74 70 75 74 5f 66 69 6c lose $output_fil
a470: 65 0a 23 0a 23 20 45 6e 64 20 6f 66 20 74 68 65 e.#.# End of the
a480: 20 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 2e 64 6d win/Makefile.dm
a490: 63 20 6f 75 74 70 75 74 0a 23 23 23 23 23 23 23 c output.#######
a4a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a4b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a4c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a4d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a4e0: 23 23 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 #######.########
a4f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a500: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a510: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a520: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a530: 23 23 23 23 23 23 0a 23 23 23 23 23 23 23 23 23 ######.#########
a540: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a550: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a560: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a570: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a580: 23 23 23 23 23 0a 23 20 42 65 67 69 6e 20 77 69 #####.# Begin wi
a590: 6e 2f 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 6f n/Makefile.msc o
a5a0: 75 74 70 75 74 0a 23 0a 70 75 74 73 20 22 62 75 utput.#.puts "bu
a5b0: 69 6c 64 69 6e 67 20 2e 2e 2f 77 69 6e 2f 4d 61 ilding ../win/Ma
a5c0: 6b 65 66 69 6c 65 2e 6d 73 63 22 0a 73 65 74 20 kefile.msc".set
a5d0: 6f 75 74 70 75 74 5f 66 69 6c 65 20 5b 6f 70 65 output_file [ope
a5e0: 6e 20 2e 2e 2f 77 69 6e 2f 4d 61 6b 65 66 69 6c n ../win/Makefil
a5f0: 65 2e 6d 73 63 20 77 5d 0a 66 63 6f 6e 66 69 67 e.msc w].fconfig
a600: 75 72 65 20 24 6f 75 74 70 75 74 5f 66 69 6c 65 ure $output_file
a610: 20 2d 74 72 61 6e 73 6c 61 74 69 6f 6e 20 62 69 -translation bi
a620: 6e 61 72 79 0a 0a 77 72 69 74 65 6c 6e 20 7b 23 nary..writeln {#
a630: 0a 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 .###############
a640: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a650: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a660: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a670: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a ###############.
a680: 23 20 57 41 52 4e 49 4e 47 3a 20 44 4f 20 4e 4f # WARNING: DO NO
a690: 54 20 45 44 49 54 2c 20 41 55 54 4f 4d 41 54 49 T EDIT, AUTOMATI
a6a0: 43 41 4c 4c 59 20 47 45 4e 45 52 41 54 45 44 20 CALLY GENERATED
a6b0: 46 49 4c 45 20 28 53 45 45 20 22 73 72 63 2f 6d FILE (SEE "src/m
a6c0: 61 6b 65 6d 61 6b 65 2e 74 63 6c 22 29 0a 23 23 akemake.tcl").##
a6d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a6e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a6f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a700: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
a710: 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 0a 23 ############.#.#
a720: 20 54 68 69 73 20 4d 61 6b 65 66 69 6c 65 20 77 This Makefile w
a730: 69 6c 6c 20 6f 6e 6c 79 20 66 75 6e 63 74 69 6f ill only functio
a740: 6e 20 63 6f 72 72 65 63 74 6c 79 20 69 66 20 75 n correctly if u
a750: 73 65 64 20 66 72 6f 6d 20 61 20 73 75 62 2d 64 sed from a sub-d
a760: 69 72 65 63 74 6f 72 79 0a 23 20 74 68 61 74 20 irectory.# that
a770: 69 73 20 61 20 64 69 72 65 63 74 20 63 68 69 6c is a direct chil
a780: 64 20 6f 66 20 74 68 65 20 74 6f 70 2d 6c 65 76 d of the top-lev
a790: 65 6c 20 64 69 72 65 63 74 6f 72 79 20 66 6f 72 el directory for
a7a0: 20 74 68 69 73 20 70 72 6f 6a 65 63 74 2e 0a 23 this project..#
a7b0: 0a 21 69 66 20 21 65 78 69 73 74 28 22 2e 2e 5c .!if !exist("..\
a7c0: 2e 66 6f 73 73 69 6c 2d 73 65 74 74 69 6e 67 73 .fossil-settings
a7d0: 22 29 0a 21 65 72 72 6f 72 20 22 50 6c 65 61 73 ").!error "Pleas
a7e0: 65 20 63 68 61 6e 67 65 20 74 68 65 20 63 75 72 e change the cur
a7f0: 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79 20 74 rent directory t
a800: 6f 20 74 68 65 20 6f 6e 65 20 63 6f 6e 74 61 69 o the one contai
a810: 6e 69 6e 67 20 74 68 69 73 20 66 69 6c 65 2e 22 ning this file."
a820: 0a 21 65 6e 64 69 66 0a 0a 23 0a 23 20 54 68 69 .!endif..#.# Thi
a830: 73 20 66 69 6c 65 20 69 73 20 61 75 74 6f 6d 61 s file is automa
a840: 74 69 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 tically generate
a850: 64 2e 20 20 49 6e 73 74 65 61 64 20 6f 66 20 65 d. Instead of e
a860: 64 69 74 69 6e 67 20 74 68 69 73 0a 23 20 66 69 diting this.# fi
a870: 6c 65 2c 20 65 64 69 74 20 22 6d 61 6b 65 6d 61 le, edit "makema
a880: 6b 65 2e 74 63 6c 22 20 74 68 65 6e 20 72 75 6e ke.tcl" then run
a890: 20 22 74 63 6c 73 68 20 6d 61 6b 65 6d 61 6b 65 "tclsh makemake
a8a0: 2e 74 63 6c 22 0a 23 20 74 6f 20 72 65 67 65 6e .tcl".# to regen
a8b0: 65 72 61 74 65 20 74 68 69 73 20 66 69 6c 65 2e erate this file.
a8c0: 0a 23 0a 42 20 20 20 20 20 20 20 3d 20 2e 2e 0a .#.B = ...
a8d0: 53 52 43 44 49 52 20 20 3d 20 24 42 5c 73 72 63 SRCDIR = $B\src
a8e0: 0a 4f 42 4a 44 49 52 20 20 3d 20 2e 0a 4f 58 20 .OBJDIR = ..OX
a8f0: 20 20 20 20 20 3d 20 2e 0a 4f 20 20 20 20 20 20 = ..O
a900: 20 3d 20 2e 6f 62 6a 0a 45 20 20 20 20 20 20 20 = .obj.E
a910: 3d 20 2e 65 78 65 0a 50 20 20 20 20 20 20 20 3d = .exe.P =
a920: 20 2e 70 64 62 0a 0a 23 20 50 65 72 6c 20 69 73 .pdb..# Perl is
a930: 20 6f 6e 6c 79 20 6e 65 63 65 73 73 61 72 79 20 only necessary
a940: 69 66 20 4f 70 65 6e 53 53 4c 20 73 75 70 70 6f if OpenSSL suppo
a950: 72 74 20 69 73 20 65 6e 61 62 6c 65 64 20 61 6e rt is enabled an
a960: 64 20 69 74 20 6d 75 73 74 0a 23 20 62 65 20 62 d it must.# be b
a970: 75 69 6c 74 20 66 72 6f 6d 20 73 6f 75 72 63 65 uilt from source
a980: 20 63 6f 64 65 2e 20 20 54 68 65 20 50 45 52 4c code. The PERL
a990: 44 49 52 20 76 61 72 69 61 62 6c 65 20 73 68 6f DIR variable sho
a9a0: 75 6c 64 20 70 6f 69 6e 74 20 74 6f 0a 23 20 74 uld point to.# t
a9b0: 68 65 20 64 69 72 65 63 74 6f 72 79 20 63 6f 6e he directory con
a9c0: 74 61 69 6e 69 6e 67 20 74 68 65 20 6d 61 69 6e taining the main
a9d0: 20 50 65 72 6c 20 62 69 6e 61 72 79 20 28 69 2e Perl binary (i.
a9e0: 65 2e 20 22 70 65 72 6c 2e 65 78 65 22 29 2e 0a e. "perl.exe")..
a9f0: 50 45 52 4c 44 49 52 20 3d 20 43 3a 5c 50 65 72 PERLDIR = C:\Per
aa00: 6c 5c 62 69 6e 0a 50 45 52 4c 20 20 20 20 3d 20 l\bin.PERL =
aa10: 70 65 72 6c 2e 65 78 65 0a 0a 23 20 45 6e 61 62 perl.exe..# Enab
aa20: 6c 65 20 64 65 62 75 67 67 69 6e 67 20 73 79 6d le debugging sym
aa30: 62 6f 6c 73 3f 0a 21 69 66 6e 64 65 66 20 44 45 bols?.!ifndef DE
aa40: 42 55 47 0a 44 45 42 55 47 20 3d 20 30 0a 21 65 BUG.DEBUG = 0.!e
aa50: 6e 64 69 66 0a 0a 23 20 42 75 69 6c 64 20 74 68 ndif..# Build th
aa60: 65 20 4f 70 65 6e 53 53 4c 20 6c 69 62 72 61 72 e OpenSSL librar
aa70: 69 65 73 3f 0a 21 69 66 6e 64 65 66 20 46 4f 53 ies?.!ifndef FOS
aa80: 53 49 4c 5f 42 55 49 4c 44 5f 53 53 4c 0a 46 4f SIL_BUILD_SSL.FO
aa90: 53 53 49 4c 5f 42 55 49 4c 44 5f 53 53 4c 20 3d SSIL_BUILD_SSL =
aaa0: 20 30 0a 21 65 6e 64 69 66 0a 0a 23 20 42 75 69 0.!endif..# Bui
aab0: 6c 64 20 74 68 65 20 69 6e 63 6c 75 64 65 64 20 ld the included
aac0: 7a 6c 69 62 20 6c 69 62 72 61 72 79 3f 0a 21 69 zlib library?.!i
aad0: 66 6e 64 65 66 20 46 4f 53 53 49 4c 5f 42 55 49 fndef FOSSIL_BUI
aae0: 4c 44 5f 5a 4c 49 42 0a 46 4f 53 53 49 4c 5f 42 LD_ZLIB.FOSSIL_B
aaf0: 55 49 4c 44 5f 5a 4c 49 42 20 3d 20 31 0a 21 65 UILD_ZLIB = 1.!e
ab00: 6e 64 69 66 0a 0a 23 20 4c 69 6e 6b 20 65 76 65 ndif..# Link eve
ab10: 72 79 74 68 69 6e 67 20 65 78 63 65 70 74 20 53 rything except S
ab20: 51 4c 69 74 65 20 64 79 6e 61 6d 69 63 61 6c 6c QLite dynamicall
ab30: 79 3f 0a 21 69 66 6e 64 65 66 20 46 4f 53 53 49 y?.!ifndef FOSSI
ab40: 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 49 4c 44 0a L_DYNAMIC_BUILD.
ab50: 46 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 FOSSIL_DYNAMIC_B
ab60: 55 49 4c 44 20 3d 20 30 0a 21 65 6e 64 69 66 0a UILD = 0.!endif.
ab70: 0a 23 20 45 6e 61 62 6c 65 20 72 65 6c 61 74 69 .# Enable relati
ab80: 76 65 20 70 61 74 68 73 20 69 6e 20 65 78 74 65 ve paths in exte
ab90: 72 6e 61 6c 20 64 69 66 66 2f 67 64 69 66 66 3f rnal diff/gdiff?
aba0: 0a 21 69 66 6e 64 65 66 20 46 4f 53 53 49 4c 5f .!ifndef FOSSIL_
abb0: 45 4e 41 42 4c 45 5f 45 58 45 43 5f 52 45 4c 5f ENABLE_EXEC_REL_
abc0: 50 41 54 48 53 0a 46 4f 53 53 49 4c 5f 45 4e 41 PATHS.FOSSIL_ENA
abd0: 42 4c 45 5f 45 58 45 43 5f 52 45 4c 5f 50 41 54 BLE_EXEC_REL_PAT
abe0: 48 53 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a 23 HS = 0.!endif..#
abf0: 20 45 6e 61 62 6c 65 20 74 68 65 20 4a 53 4f 4e Enable the JSON
ac00: 20 41 50 49 3f 0a 21 69 66 6e 64 65 66 20 46 4f API?.!ifndef FO
ac10: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e SSIL_ENABLE_JSON
ac20: 0a 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4a .FOSSIL_ENABLE_J
ac30: 53 4f 4e 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a SON = 0.!endif..
ac40: 23 20 45 6e 61 62 6c 65 20 6c 65 67 61 63 79 20 # Enable legacy
ac50: 74 72 65 61 74 6d 65 6e 74 20 6f 66 20 74 68 65 treatment of the
ac60: 20 6d 76 2f 72 6d 20 63 6f 6d 6d 61 6e 64 73 3f mv/rm commands?
ac70: 0a 21 69 66 6e 64 65 66 20 46 4f 53 53 49 4c 5f .!ifndef FOSSIL_
ac80: 45 4e 41 42 4c 45 5f 4c 45 47 41 43 59 5f 4d 56 ENABLE_LEGACY_MV
ac90: 5f 52 4d 0a 46 4f 53 53 49 4c 5f 45 4e 41 42 4c _RM.FOSSIL_ENABL
aca0: 45 5f 4c 45 47 41 43 59 5f 4d 56 5f 52 4d 20 3d E_LEGACY_MV_RM =
acb0: 20 30 0a 21 65 6e 64 69 66 0a 0a 23 20 45 6e 61 0.!endif..# Ena
acc0: 62 6c 65 20 75 73 65 20 6f 66 20 6d 69 6e 69 7a ble use of miniz
acd0: 20 69 6e 73 74 65 61 64 20 6f 66 20 7a 6c 69 62 instead of zlib
ace0: 3f 0a 21 69 66 6e 64 65 66 20 46 4f 53 53 49 4c ?.!ifndef FOSSIL
acf0: 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 0a 46 4f _ENABLE_MINIZ.FO
ad00: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 SSIL_ENABLE_MINI
ad10: 5a 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a 23 20 Z = 0.!endif..#
ad20: 45 6e 61 62 6c 65 20 4f 70 65 6e 53 53 4c 20 73 Enable OpenSSL s
ad30: 75 70 70 6f 72 74 3f 0a 21 69 66 6e 64 65 66 20 upport?.!ifndef
ad40: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 FOSSIL_ENABLE_SS
ad50: 4c 0a 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f L.FOSSIL_ENABLE_
ad60: 53 53 4c 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a SSL = 0.!endif..
ad70: 23 20 45 6e 61 62 6c 65 20 74 68 65 20 54 63 6c # Enable the Tcl
ad80: 20 69 6e 74 65 67 72 61 74 69 6f 6e 20 73 75 62 integration sub
ad90: 73 79 73 74 65 6d 3f 0a 21 69 66 6e 64 65 66 20 system?.!ifndef
ada0: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 FOSSIL_ENABLE_TC
adb0: 4c 0a 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f L.FOSSIL_ENABLE_
adc0: 54 43 4c 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a TCL = 0.!endif..
add0: 23 20 45 6e 61 62 6c 65 20 54 48 31 20 73 63 72 # Enable TH1 scr
ade0: 69 70 74 73 20 69 6e 20 65 6d 62 65 64 64 65 64 ipts in embedded
adf0: 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 documentation f
ae00: 69 6c 65 73 3f 0a 21 69 66 6e 64 65 66 20 46 4f iles?.!ifndef FO
ae10: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 5f SSIL_ENABLE_TH1_
ae20: 44 4f 43 53 0a 46 4f 53 53 49 4c 5f 45 4e 41 42 DOCS.FOSSIL_ENAB
ae30: 4c 45 5f 54 48 31 5f 44 4f 43 53 20 3d 20 30 0a LE_TH1_DOCS = 0.
ae40: 21 65 6e 64 69 66 0a 0a 23 20 45 6e 61 62 6c 65 !endif..# Enable
ae50: 20 54 48 31 20 68 6f 6f 6b 73 20 66 6f 72 20 63 TH1 hooks for c
ae60: 6f 6d 6d 61 6e 64 73 20 61 6e 64 20 77 65 62 20 ommands and web
ae70: 70 61 67 65 73 3f 0a 21 69 66 6e 64 65 66 20 46 pages?.!ifndef F
ae80: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 OSSIL_ENABLE_TH1
ae90: 5f 48 4f 4f 4b 53 0a 46 4f 53 53 49 4c 5f 45 4e _HOOKS.FOSSIL_EN
aea0: 41 42 4c 45 5f 54 48 31 5f 48 4f 4f 4b 53 20 3d ABLE_TH1_HOOKS =
aeb0: 20 30 0a 21 65 6e 64 69 66 0a 0a 23 20 45 6e 61 0.!endif..# Ena
aec0: 62 6c 65 20 73 75 70 70 6f 72 74 20 66 6f 72 20 ble support for
aed0: 57 69 6e 64 6f 77 73 20 58 50 20 77 69 74 68 20 Windows XP with
aee0: 56 69 73 75 61 6c 20 53 74 75 64 69 6f 20 32 30 Visual Studio 20
aef0: 31 78 3f 0a 21 69 66 6e 64 65 66 20 46 4f 53 53 1x?.!ifndef FOSS
af00: 49 4c 5f 45 4e 41 42 4c 45 5f 57 49 4e 58 50 0a IL_ENABLE_WINXP.
af10: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 57 49 FOSSIL_ENABLE_WI
af20: 4e 58 50 20 3d 20 30 0a 21 65 6e 64 69 66 0a 0a NXP = 0.!endif..
af30: 23 20 45 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 # Enable support
af40: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 for the SQLite
af50: 45 6e 63 72 79 70 74 69 6f 6e 20 45 78 74 65 6e Encryption Exten
af60: 73 69 6f 6e 3f 0a 21 69 66 6e 64 65 66 20 55 53 sion?.!ifndef US
af70: 45 5f 53 45 45 0a 55 53 45 5f 53 45 45 20 3d 20 E_SEE.USE_SEE =
af80: 30 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 0.!endif..!if $(
af90: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 FOSSIL_ENABLE_SS
afa0: 4c 29 21 3d 30 0a 53 53 4c 44 49 52 20 20 20 20 L)!=0.SSLDIR
afb0: 3d 20 24 28 42 29 5c 63 6f 6d 70 61 74 5c 6f 70 = $(B)\compat\op
afc0: 65 6e 73 73 6c 2d 31 2e 30 2e 32 6e 0a 53 53 4c enssl-1.0.2n.SSL
afd0: 49 4e 43 44 49 52 20 3d 20 24 28 53 53 4c 44 49 INCDIR = $(SSLDI
afe0: 52 29 5c 69 6e 63 33 32 0a 21 69 66 20 24 28 46 R)\inc32.!if $(F
aff0: 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 OSSIL_DYNAMIC_BU
b000: 49 4c 44 29 21 3d 30 0a 53 53 4c 4c 49 42 44 49 ILD)!=0.SSLLIBDI
b010: 52 20 3d 20 24 28 53 53 4c 44 49 52 29 5c 6f 75 R = $(SSLDIR)\ou
b020: 74 33 32 64 6c 6c 0a 21 65 6c 73 65 0a 53 53 4c t32dll.!else.SSL
b030: 4c 49 42 44 49 52 20 3d 20 24 28 53 53 4c 44 49 LIBDIR = $(SSLDI
b040: 52 29 5c 6f 75 74 33 32 0a 21 65 6e 64 69 66 0a R)\out32.!endif.
b050: 53 53 4c 4c 46 4c 41 47 53 20 3d 20 2f 6e 6f 6c SSLLFLAGS = /nol
b060: 6f 67 6f 20 2f 6f 70 74 3a 72 65 66 20 2f 64 65 ogo /opt:ref /de
b070: 62 75 67 0a 53 53 4c 4c 49 42 20 20 20 20 3d 20 bug.SSLLIB =
b080: 73 73 6c 65 61 79 33 32 2e 6c 69 62 20 6c 69 62 ssleay32.lib lib
b090: 65 61 79 33 32 2e 6c 69 62 20 75 73 65 72 33 32 eay32.lib user32
b0a0: 2e 6c 69 62 20 67 64 69 33 32 2e 6c 69 62 20 63 .lib gdi32.lib c
b0b0: 72 79 70 74 33 32 2e 6c 69 62 0a 21 69 66 20 22 rypt32.lib.!if "
b0c0: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 61 $(PLATFORM)"=="a
b0d0: 6d 64 36 34 22 20 7c 7c 20 22 24 28 50 4c 41 54 md64" || "$(PLAT
b0e0: 46 4f 52 4d 29 22 3d 3d 22 78 36 34 22 0a 21 6d FORM)"=="x64".!m
b0f0: 65 73 73 61 67 65 20 55 73 69 6e 67 20 27 78 36 essage Using 'x6
b100: 34 27 20 70 6c 61 74 66 6f 72 6d 20 66 6f 72 20 4' platform for
b110: 4f 70 65 6e 53 53 4c 2e 2e 2e 0a 23 20 42 55 47 OpenSSL....# BUG
b120: 42 55 47 20 28 4f 70 65 6e 53 53 4c 29 3a 20 55 BUG (OpenSSL): U
b130: 73 69 6e 67 20 22 6e 6f 2d 73 73 6c 2a 22 20 68 sing "no-ssl*" h
b140: 65 72 65 20 62 72 65 61 6b 73 20 74 68 65 20 62 ere breaks the b
b150: 75 69 6c 64 2e 0a 23 20 53 53 4c 43 4f 4e 46 49 uild..# SSLCONFI
b160: 47 20 3d 20 56 43 2d 57 49 4e 36 34 41 20 6e 6f G = VC-WIN64A no
b170: 2d 61 73 6d 20 6e 6f 2d 73 73 6c 32 20 6e 6f 2d -asm no-ssl2 no-
b180: 73 73 6c 33 0a 53 53 4c 43 4f 4e 46 49 47 20 3d ssl3.SSLCONFIG =
b190: 20 56 43 2d 57 49 4e 36 34 41 20 6e 6f 2d 61 73 VC-WIN64A no-as
b1a0: 6d 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 44 m.!if $(FOSSIL_D
b1b0: 59 4e 41 4d 49 43 5f 42 55 49 4c 44 29 21 3d 30 YNAMIC_BUILD)!=0
b1c0: 0a 53 53 4c 43 4f 4e 46 49 47 20 3d 20 24 28 53 .SSLCONFIG = $(S
b1d0: 53 4c 43 4f 4e 46 49 47 29 20 73 68 61 72 65 64 SLCONFIG) shared
b1e0: 0a 21 65 6c 73 65 0a 53 53 4c 43 4f 4e 46 49 47 .!else.SSLCONFIG
b1f0: 20 3d 20 24 28 53 53 4c 43 4f 4e 46 49 47 29 20 = $(SSLCONFIG)
b200: 6e 6f 2d 73 68 61 72 65 64 0a 21 65 6e 64 69 66 no-shared.!endif
b210: 0a 53 53 4c 53 45 54 55 50 20 20 3d 20 6d 73 5c .SSLSETUP = ms\
b220: 64 6f 5f 77 69 6e 36 34 61 2e 62 61 74 0a 21 69 do_win64a.bat.!i
b230: 66 20 24 28 46 4f 53 53 49 4c 5f 44 59 4e 41 4d f $(FOSSIL_DYNAM
b240: 49 43 5f 42 55 49 4c 44 29 21 3d 30 0a 53 53 4c IC_BUILD)!=0.SSL
b250: 4e 4d 41 4b 45 20 20 3d 20 6d 73 5c 6e 74 64 6c NMAKE = ms\ntdl
b260: 6c 2e 6d 61 6b 20 61 6c 6c 0a 21 65 6c 73 65 0a l.mak all.!else.
b270: 53 53 4c 4e 4d 41 4b 45 20 20 3d 20 6d 73 5c 6e SSLNMAKE = ms\n
b280: 74 2e 6d 61 6b 20 61 6c 6c 0a 21 65 6e 64 69 66 t.mak all.!endif
b290: 0a 23 20 42 55 47 42 55 47 20 28 4f 70 65 6e 53 .# BUGBUG (OpenS
b2a0: 53 4c 29 3a 20 55 73 69 6e 67 20 22 4f 50 45 4e SL): Using "OPEN
b2b0: 53 53 4c 5f 4e 4f 5f 53 53 4c 2a 22 20 68 65 72 SSL_NO_SSL*" her
b2c0: 65 20 62 72 65 61 6b 73 20 64 79 6e 61 6d 69 63 e breaks dynamic
b2d0: 20 62 75 69 6c 64 73 2e 0a 21 69 66 20 24 28 46 builds..!if $(F
b2e0: 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 OSSIL_DYNAMIC_BU
b2f0: 49 4c 44 29 3d 3d 30 0a 53 53 4c 43 46 4c 41 47 ILD)==0.SSLCFLAG
b300: 53 20 3d 20 2d 44 4f 50 45 4e 53 53 4c 5f 4e 4f S = -DOPENSSL_NO
b310: 5f 53 53 4c 32 20 2d 44 4f 50 45 4e 53 53 4c 5f _SSL2 -DOPENSSL_
b320: 4e 4f 5f 53 53 4c 33 0a 21 65 6e 64 69 66 0a 21 NO_SSL3.!endif.!
b330: 65 6c 73 65 69 66 20 22 24 28 50 4c 41 54 46 4f elseif "$(PLATFO
b340: 52 4d 29 22 3d 3d 22 69 61 36 34 22 0a 21 6d 65 RM)"=="ia64".!me
b350: 73 73 61 67 65 20 55 73 69 6e 67 20 27 69 61 36 ssage Using 'ia6
b360: 34 27 20 70 6c 61 74 66 6f 72 6d 20 66 6f 72 20 4' platform for
b370: 4f 70 65 6e 53 53 4c 2e 2e 2e 0a 23 20 42 55 47 OpenSSL....# BUG
b380: 42 55 47 20 28 4f 70 65 6e 53 53 4c 29 3a 20 55 BUG (OpenSSL): U
b390: 73 69 6e 67 20 22 6e 6f 2d 73 73 6c 2a 22 20 68 sing "no-ssl*" h
b3a0: 65 72 65 20 62 72 65 61 6b 73 20 74 68 65 20 62 ere breaks the b
b3b0: 75 69 6c 64 2e 0a 23 20 53 53 4c 43 4f 4e 46 49 uild..# SSLCONFI
b3c0: 47 20 3d 20 56 43 2d 57 49 4e 36 34 49 20 6e 6f G = VC-WIN64I no
b3d0: 2d 61 73 6d 20 6e 6f 2d 73 73 6c 32 20 6e 6f 2d -asm no-ssl2 no-
b3e0: 73 73 6c 33 0a 53 53 4c 43 4f 4e 46 49 47 20 3d ssl3.SSLCONFIG =
b3f0: 20 56 43 2d 57 49 4e 36 34 49 20 6e 6f 2d 61 73 VC-WIN64I no-as
b400: 6d 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 44 m.!if $(FOSSIL_D
b410: 59 4e 41 4d 49 43 5f 42 55 49 4c 44 29 21 3d 30 YNAMIC_BUILD)!=0
b420: 0a 53 53 4c 43 4f 4e 46 49 47 20 3d 20 24 28 53 .SSLCONFIG = $(S
b430: 53 4c 43 4f 4e 46 49 47 29 20 73 68 61 72 65 64 SLCONFIG) shared
b440: 0a 21 65 6c 73 65 0a 53 53 4c 43 4f 4e 46 49 47 .!else.SSLCONFIG
b450: 20 3d 20 24 28 53 53 4c 43 4f 4e 46 49 47 29 20 = $(SSLCONFIG)
b460: 6e 6f 2d 73 68 61 72 65 64 0a 21 65 6e 64 69 66 no-shared.!endif
b470: 0a 53 53 4c 53 45 54 55 50 20 20 3d 20 6d 73 5c .SSLSETUP = ms\
b480: 64 6f 5f 77 69 6e 36 34 69 2e 62 61 74 0a 21 69 do_win64i.bat.!i
b490: 66 20 24 28 46 4f 53 53 49 4c 5f 44 59 4e 41 4d f $(FOSSIL_DYNAM
b4a0: 49 43 5f 42 55 49 4c 44 29 21 3d 30 0a 53 53 4c IC_BUILD)!=0.SSL
b4b0: 4e 4d 41 4b 45 20 20 3d 20 6d 73 5c 6e 74 64 6c NMAKE = ms\ntdl
b4c0: 6c 2e 6d 61 6b 20 61 6c 6c 0a 21 65 6c 73 65 0a l.mak all.!else.
b4d0: 53 53 4c 4e 4d 41 4b 45 20 20 3d 20 6d 73 5c 6e SSLNMAKE = ms\n
b4e0: 74 2e 6d 61 6b 20 61 6c 6c 0a 21 65 6e 64 69 66 t.mak all.!endif
b4f0: 0a 23 20 42 55 47 42 55 47 20 28 4f 70 65 6e 53 .# BUGBUG (OpenS
b500: 53 4c 29 3a 20 55 73 69 6e 67 20 22 4f 50 45 4e SL): Using "OPEN
b510: 53 53 4c 5f 4e 4f 5f 53 53 4c 2a 22 20 68 65 72 SSL_NO_SSL*" her
b520: 65 20 62 72 65 61 6b 73 20 64 79 6e 61 6d 69 63 e breaks dynamic
b530: 20 62 75 69 6c 64 73 2e 0a 21 69 66 20 24 28 46 builds..!if $(F
b540: 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 OSSIL_DYNAMIC_BU
b550: 49 4c 44 29 3d 3d 30 0a 53 53 4c 43 46 4c 41 47 ILD)==0.SSLCFLAG
b560: 53 20 3d 20 2d 44 4f 50 45 4e 53 53 4c 5f 4e 4f S = -DOPENSSL_NO
b570: 5f 53 53 4c 32 20 2d 44 4f 50 45 4e 53 53 4c 5f _SSL2 -DOPENSSL_
b580: 4e 4f 5f 53 53 4c 33 0a 21 65 6e 64 69 66 0a 21 NO_SSL3.!endif.!
b590: 65 6c 73 65 0a 21 6d 65 73 73 61 67 65 20 41 73 else.!message As
b5a0: 73 75 6d 69 6e 67 20 27 78 38 36 27 20 70 6c 61 suming 'x86' pla
b5b0: 74 66 6f 72 6d 20 66 6f 72 20 4f 70 65 6e 53 53 tform for OpenSS
b5c0: 4c 2e 2e 2e 0a 23 20 42 55 47 42 55 47 20 28 4f L....# BUGBUG (O
b5d0: 70 65 6e 53 53 4c 29 3a 20 55 73 69 6e 67 20 22 penSSL): Using "
b5e0: 6e 6f 2d 73 73 6c 2a 22 20 68 65 72 65 20 62 72 no-ssl*" here br
b5f0: 65 61 6b 73 20 74 68 65 20 62 75 69 6c 64 2e 0a eaks the build..
b600: 23 20 53 53 4c 43 4f 4e 46 49 47 20 3d 20 56 43 # SSLCONFIG = VC
b610: 2d 57 49 4e 33 32 20 6e 6f 2d 61 73 6d 20 6e 6f -WIN32 no-asm no
b620: 2d 73 73 6c 32 20 6e 6f 2d 73 73 6c 33 0a 53 53 -ssl2 no-ssl3.SS
b630: 4c 43 4f 4e 46 49 47 20 3d 20 56 43 2d 57 49 4e LCONFIG = VC-WIN
b640: 33 32 20 6e 6f 2d 61 73 6d 0a 21 69 66 20 24 28 32 no-asm.!if $(
b650: 46 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 FOSSIL_DYNAMIC_B
b660: 55 49 4c 44 29 21 3d 30 0a 53 53 4c 43 4f 4e 46 UILD)!=0.SSLCONF
b670: 49 47 20 3d 20 24 28 53 53 4c 43 4f 4e 46 49 47 IG = $(SSLCONFIG
b680: 29 20 73 68 61 72 65 64 0a 21 65 6c 73 65 0a 53 ) shared.!else.S
b690: 53 4c 43 4f 4e 46 49 47 20 3d 20 24 28 53 53 4c SLCONFIG = $(SSL
b6a0: 43 4f 4e 46 49 47 29 20 6e 6f 2d 73 68 61 72 65 CONFIG) no-share
b6b0: 64 0a 21 65 6e 64 69 66 0a 53 53 4c 53 45 54 55 d.!endif.SSLSETU
b6c0: 50 20 20 3d 20 6d 73 5c 64 6f 5f 6d 73 2e 62 61 P = ms\do_ms.ba
b6d0: 74 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 44 t.!if $(FOSSIL_D
b6e0: 59 4e 41 4d 49 43 5f 42 55 49 4c 44 29 21 3d 30 YNAMIC_BUILD)!=0
b6f0: 0a 53 53 4c 4e 4d 41 4b 45 20 20 3d 20 6d 73 5c .SSLNMAKE = ms\
b700: 6e 74 64 6c 6c 2e 6d 61 6b 20 61 6c 6c 0a 21 65 ntdll.mak all.!e
b710: 6c 73 65 0a 53 53 4c 4e 4d 41 4b 45 20 20 3d 20 lse.SSLNMAKE =
b720: 6d 73 5c 6e 74 2e 6d 61 6b 20 61 6c 6c 0a 21 65 ms\nt.mak all.!e
b730: 6e 64 69 66 0a 23 20 42 55 47 42 55 47 20 28 4f ndif.# BUGBUG (O
b740: 70 65 6e 53 53 4c 29 3a 20 55 73 69 6e 67 20 22 penSSL): Using "
b750: 4f 50 45 4e 53 53 4c 5f 4e 4f 5f 53 53 4c 2a 22 OPENSSL_NO_SSL*"
b760: 20 68 65 72 65 20 62 72 65 61 6b 73 20 64 79 6e here breaks dyn
b770: 61 6d 69 63 20 62 75 69 6c 64 73 2e 0a 21 69 66 amic builds..!if
b780: 20 24 28 46 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 $(FOSSIL_DYNAMI
b790: 43 5f 42 55 49 4c 44 29 3d 3d 30 0a 53 53 4c 43 C_BUILD)==0.SSLC
b7a0: 46 4c 41 47 53 20 3d 20 2d 44 4f 50 45 4e 53 53 FLAGS = -DOPENSS
b7b0: 4c 5f 4e 4f 5f 53 53 4c 32 20 2d 44 4f 50 45 4e L_NO_SSL2 -DOPEN
b7c0: 53 53 4c 5f 4e 4f 5f 53 53 4c 33 0a 21 65 6e 64 SSL_NO_SSL3.!end
b7d0: 69 66 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 if.!endif.!endif
b7e0: 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 45 ..!if $(FOSSIL_E
b7f0: 4e 41 42 4c 45 5f 54 43 4c 29 21 3d 30 0a 54 43 NABLE_TCL)!=0.TC
b800: 4c 44 49 52 20 20 20 20 3d 20 24 28 42 29 5c 63 LDIR = $(B)\c
b810: 6f 6d 70 61 74 5c 74 63 6c 2d 38 2e 36 0a 54 43 ompat\tcl-8.6.TC
b820: 4c 53 52 43 44 49 52 20 3d 20 24 28 54 43 4c 44 LSRCDIR = $(TCLD
b830: 49 52 29 0a 54 43 4c 49 4e 43 44 49 52 20 3d 20 IR).TCLINCDIR =
b840: 24 28 54 43 4c 53 52 43 44 49 52 29 5c 67 65 6e $(TCLSRCDIR)\gen
b850: 65 72 69 63 0a 21 65 6e 64 69 66 0a 0a 23 20 7a eric.!endif..# z
b860: 6c 69 62 20 6f 70 74 69 6f 6e 73 0a 5a 49 4e 43 lib options.ZINC
b870: 44 49 52 20 20 20 3d 20 24 28 42 29 5c 63 6f 6d DIR = $(B)\com
b880: 70 61 74 5c 7a 6c 69 62 0a 5a 4c 49 42 44 49 52 pat\zlib.ZLIBDIR
b890: 20 20 20 3d 20 24 28 42 29 5c 63 6f 6d 70 61 74 = $(B)\compat
b8a0: 5c 7a 6c 69 62 0a 0a 21 69 66 20 24 28 46 4f 53 \zlib..!if $(FOS
b8b0: 53 49 4c 5f 44 59 4e 41 4d 49 43 5f 42 55 49 4c SIL_DYNAMIC_BUIL
b8c0: 44 29 21 3d 30 0a 5a 4c 49 42 20 20 20 20 20 20 D)!=0.ZLIB
b8d0: 3d 20 7a 64 6c 6c 2e 6c 69 62 0a 21 65 6c 73 65 = zdll.lib.!else
b8e0: 0a 5a 4c 49 42 20 20 20 20 20 20 3d 20 7a 6c 69 .ZLIB = zli
b8f0: 62 2e 6c 69 62 0a 21 65 6e 64 69 66 0a 0a 49 4e b.lib.!endif..IN
b900: 43 4c 20 20 20 20 20 20 3d 20 2f 49 2e 20 2f 49 CL = /I. /I
b910: 24 28 53 52 43 44 49 52 29 20 2f 49 24 42 5c 77 $(SRCDIR) /I$B\w
b920: 69 6e 5c 69 6e 63 6c 75 64 65 0a 0a 21 69 66 20 in\include..!if
b930: 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f $(FOSSIL_ENABLE_
b940: 4d 49 4e 49 5a 29 3d 3d 30 0a 49 4e 43 4c 20 20 MINIZ)==0.INCL
b950: 20 20 20 20 3d 20 24 28 49 4e 43 4c 29 20 2f 49 = $(INCL) /I
b960: 24 28 5a 49 4e 43 44 49 52 29 0a 21 65 6e 64 69 $(ZINCDIR).!endi
b970: 66 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f f..!if $(FOSSIL_
b980: 45 4e 41 42 4c 45 5f 53 53 4c 29 21 3d 30 0a 49 ENABLE_SSL)!=0.I
b990: 4e 43 4c 20 20 20 20 20 20 3d 20 24 28 49 4e 43 NCL = $(INC
b9a0: 4c 29 20 2f 49 24 28 53 53 4c 49 4e 43 44 49 52 L) /I$(SSLINCDIR
b9b0: 29 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 ).!endif..!if $(
b9c0: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 FOSSIL_ENABLE_TC
b9d0: 4c 29 21 3d 30 0a 49 4e 43 4c 20 20 20 20 20 20 L)!=0.INCL
b9e0: 3d 20 24 28 49 4e 43 4c 29 20 2f 49 24 28 54 43 = $(INCL) /I$(TC
b9f0: 4c 49 4e 43 44 49 52 29 0a 21 65 6e 64 69 66 0a LINCDIR).!endif.
ba00: 0a 43 46 4c 41 47 53 20 20 20 20 3d 20 2f 6e 6f .CFLAGS = /no
ba10: 6c 6f 67 6f 0a 4c 44 46 4c 41 47 53 20 20 20 3d logo.LDFLAGS =
ba20: 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 44 ..!if $(FOSSIL_D
ba30: 59 4e 41 4d 49 43 5f 42 55 49 4c 44 29 21 3d 30 YNAMIC_BUILD)!=0
ba40: 0a 4c 44 46 4c 41 47 53 20 20 20 3d 20 24 28 4c .LDFLAGS = $(L
ba50: 44 46 4c 41 47 53 29 20 2f 4d 41 4e 49 46 45 53 DFLAGS) /MANIFES
ba60: 54 0a 21 65 6c 73 65 0a 4c 44 46 4c 41 47 53 20 T.!else.LDFLAGS
ba70: 20 20 3d 20 24 28 4c 44 46 4c 41 47 53 29 20 2f = $(LDFLAGS) /
ba80: 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6d 73 76 NODEFAULTLIB:msv
ba90: 63 72 74 20 2f 4d 41 4e 49 46 45 53 54 3a 4e 4f crt /MANIFEST:NO
baa0: 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 46 .!endif..!if $(F
bab0: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 57 49 4e OSSIL_ENABLE_WIN
bac0: 58 50 29 21 3d 30 0a 58 50 43 46 4c 41 47 53 20 XP)!=0.XPCFLAGS
bad0: 20 3d 20 24 28 58 50 43 46 4c 41 47 53 29 20 2f = $(XPCFLAGS) /
bae0: 44 5f 57 49 4e 33 32 5f 57 49 4e 4e 54 3d 30 78 D_WIN32_WINNT=0x
baf0: 30 35 30 31 20 2f 44 5f 55 53 49 4e 47 5f 56 31 0501 /D_USING_V1
bb00: 31 30 5f 53 44 4b 37 31 5f 3d 31 0a 43 46 4c 41 10_SDK71_=1.CFLA
bb10: 47 53 20 20 20 20 3d 20 24 28 43 46 4c 41 47 53 GS = $(CFLAGS
bb20: 29 20 24 28 58 50 43 46 4c 41 47 53 29 0a 21 69 ) $(XPCFLAGS).!i
bb30: 66 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d f "$(PLATFORM)"=
bb40: 3d 22 61 6d 64 36 34 22 20 7c 7c 20 22 24 28 50 ="amd64" || "$(P
bb50: 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78 36 34 22 LATFORM)"=="x64"
bb60: 0a 58 50 4c 44 46 4c 41 47 53 20 3d 20 24 28 58 .XPLDFLAGS = $(X
bb70: 50 4c 44 46 4c 41 47 53 29 20 2f 53 55 42 53 59 PLDFLAGS) /SUBSY
bb80: 53 54 45 4d 3a 43 4f 4e 53 4f 4c 45 2c 35 2e 30 STEM:CONSOLE,5.0
bb90: 32 0a 21 65 6c 73 65 0a 58 50 4c 44 46 4c 41 47 2.!else.XPLDFLAG
bba0: 53 20 3d 20 24 28 58 50 4c 44 46 4c 41 47 53 29 S = $(XPLDFLAGS)
bbb0: 20 2f 53 55 42 53 59 53 54 45 4d 3a 43 4f 4e 53 /SUBSYSTEM:CONS
bbc0: 4f 4c 45 2c 35 2e 30 31 0a 21 65 6e 64 69 66 0a OLE,5.01.!endif.
bbd0: 4c 44 46 4c 41 47 53 20 20 20 3d 20 24 28 4c 44 LDFLAGS = $(LD
bbe0: 46 4c 41 47 53 29 20 24 28 58 50 4c 44 46 4c 41 FLAGS) $(XPLDFLA
bbf0: 47 53 29 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 GS).!endif..!if
bc00: 24 28 46 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 $(FOSSIL_DYNAMIC
bc10: 5f 42 55 49 4c 44 29 21 3d 30 0a 21 69 66 20 24 _BUILD)!=0.!if $
bc20: 28 44 45 42 55 47 29 21 3d 30 0a 43 52 54 46 4c (DEBUG)!=0.CRTFL
bc30: 41 47 53 20 3d 20 2f 4d 44 64 0a 21 65 6c 73 65 AGS = /MDd.!else
bc40: 0a 43 52 54 46 4c 41 47 53 20 3d 20 2f 4d 44 0a .CRTFLAGS = /MD.
bc50: 21 65 6e 64 69 66 0a 21 65 6c 73 65 0a 21 69 66 !endif.!else.!if
bc60: 20 24 28 44 45 42 55 47 29 21 3d 30 0a 43 52 54 $(DEBUG)!=0.CRT
bc70: 46 4c 41 47 53 20 3d 20 2f 4d 54 64 0a 21 65 6c FLAGS = /MTd.!el
bc80: 73 65 0a 43 52 54 46 4c 41 47 53 20 3d 20 2f 4d se.CRTFLAGS = /M
bc90: 54 0a 21 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a T.!endif.!endif.
bca0: 0a 21 69 66 20 24 28 44 45 42 55 47 29 21 3d 30 .!if $(DEBUG)!=0
bcb0: 0a 43 46 4c 41 47 53 20 20 20 20 3d 20 24 28 43 .CFLAGS = $(C
bcc0: 46 4c 41 47 53 29 20 2f 5a 69 20 24 28 43 52 54 FLAGS) /Zi $(CRT
bcd0: 46 4c 41 47 53 29 20 2f 4f 64 0a 4c 44 46 4c 41 FLAGS) /Od.LDFLA
bce0: 47 53 20 20 20 3d 20 24 28 4c 44 46 4c 41 47 53 GS = $(LDFLAGS
bcf0: 29 20 2f 44 45 42 55 47 0a 21 65 6c 73 65 0a 43 ) /DEBUG.!else.C
bd00: 46 4c 41 47 53 20 20 20 20 3d 20 24 28 43 46 4c FLAGS = $(CFL
bd10: 41 47 53 29 20 24 28 43 52 54 46 4c 41 47 53 29 AGS) $(CRTFLAGS)
bd20: 20 2f 4f 32 0a 21 65 6e 64 69 66 0a 0a 42 43 43 /O2.!endif..BCC
bd30: 20 20 20 20 20 20 20 3d 20 24 28 43 43 29 20 24 = $(CC) $
bd40: 28 43 46 4c 41 47 53 29 0a 54 43 43 20 20 20 20 (CFLAGS).TCC
bd50: 20 20 20 3d 20 24 28 43 43 29 20 2f 63 20 24 28 = $(CC) /c $(
bd60: 43 46 4c 41 47 53 29 20 24 28 4d 53 43 44 45 46 CFLAGS) $(MSCDEF
bd70: 29 20 24 28 49 4e 43 4c 29 0a 52 43 43 20 20 20 ) $(INCL).RCC
bd80: 20 20 20 20 3d 20 24 28 52 43 29 20 2f 44 5f 57 = $(RC) /D_W
bd90: 49 4e 33 32 20 2f 44 5f 4d 53 43 5f 56 45 52 20 IN32 /D_MSC_VER
bda0: 24 28 4d 53 43 44 45 46 29 20 24 28 49 4e 43 4c $(MSCDEF) $(INCL
bdb0: 29 0a 4d 54 43 20 20 20 20 20 20 20 3d 20 6d 74 ).MTC = mt
bdc0: 0a 4c 49 42 53 20 20 20 20 20 20 3d 20 77 73 32 .LIBS = ws2
bdd0: 5f 33 32 2e 6c 69 62 20 61 64 76 61 70 69 33 32 _32.lib advapi32
bde0: 2e 6c 69 62 0a 4c 49 42 44 49 52 20 20 20 20 3d .lib.LIBDIR =
bdf0: 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 44 ..!if $(FOSSIL_D
be00: 59 4e 41 4d 49 43 5f 42 55 49 4c 44 29 21 3d 30 YNAMIC_BUILD)!=0
be10: 0a 54 43 43 20 20 20 20 20 20 20 3d 20 24 28 54 .TCC = $(T
be20: 43 43 29 20 2f 44 46 4f 53 53 49 4c 5f 44 59 4e CC) /DFOSSIL_DYN
be30: 41 4d 49 43 5f 42 55 49 4c 44 3d 31 0a 52 43 43 AMIC_BUILD=1.RCC
be40: 20 20 20 20 20 20 20 3d 20 24 28 52 43 43 29 20 = $(RCC)
be50: 2f 44 46 4f 53 53 49 4c 5f 44 59 4e 41 4d 49 43 /DFOSSIL_DYNAMIC
be60: 5f 42 55 49 4c 44 3d 31 0a 21 65 6e 64 69 66 0a _BUILD=1.!endif.
be70: 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 45 4e .!if $(FOSSIL_EN
be80: 41 42 4c 45 5f 4d 49 4e 49 5a 29 3d 3d 30 0a 4c ABLE_MINIZ)==0.L
be90: 49 42 53 20 20 20 20 20 20 3d 20 24 28 4c 49 42 IBS = $(LIB
bea0: 53 29 20 24 28 5a 4c 49 42 29 0a 4c 49 42 44 49 S) $(ZLIB).LIBDI
beb0: 52 20 20 20 20 3d 20 24 28 4c 49 42 44 49 52 29 R = $(LIBDIR)
bec0: 20 2f 4c 49 42 50 41 54 48 3a 24 28 5a 4c 49 42 /LIBPATH:$(ZLIB
bed0: 44 49 52 29 0a 21 65 6e 64 69 66 0a 0a 21 69 66 DIR).!endif..!if
bee0: 20 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 $(FOSSIL_ENABLE
bef0: 5f 4d 49 4e 49 5a 29 21 3d 30 0a 54 43 43 20 20 _MINIZ)!=0.TCC
bf00: 20 20 20 20 20 3d 20 24 28 54 43 43 29 20 2f 44 = $(TCC) /D
bf10: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4d 49 FOSSIL_ENABLE_MI
bf20: 4e 49 5a 3d 31 0a 52 43 43 20 20 20 20 20 20 20 NIZ=1.RCC
bf30: 3d 20 24 28 52 43 43 29 20 2f 44 46 4f 53 53 49 = $(RCC) /DFOSSI
bf40: 4c 5f 45 4e 41 42 4c 45 5f 4d 49 4e 49 5a 3d 31 L_ENABLE_MINIZ=1
bf50: 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 46 .!endif..!if $(F
bf60: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4a 53 4f OSSIL_ENABLE_JSO
bf70: 4e 29 21 3d 30 0a 54 43 43 20 20 20 20 20 20 20 N)!=0.TCC
bf80: 3d 20 24 28 54 43 43 29 20 2f 44 46 4f 53 53 49 = $(TCC) /DFOSSI
bf90: 4c 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 3d 31 0a L_ENABLE_JSON=1.
bfa0: 52 43 43 20 20 20 20 20 20 20 3d 20 24 28 52 43 RCC = $(RC
bfb0: 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 C) /DFOSSIL_ENAB
bfc0: 4c 45 5f 4a 53 4f 4e 3d 31 0a 21 65 6e 64 69 66 LE_JSON=1.!endif
bfd0: 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 45 ..!if $(FOSSIL_E
bfe0: 4e 41 42 4c 45 5f 53 53 4c 29 21 3d 30 0a 54 43 NABLE_SSL)!=0.TC
bff0: 43 20 20 20 20 20 20 20 3d 20 24 28 54 43 43 29 C = $(TCC)
c000: 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 /DFOSSIL_ENABLE
c010: 5f 53 53 4c 3d 31 0a 52 43 43 20 20 20 20 20 20 _SSL=1.RCC
c020: 20 3d 20 24 28 52 43 43 29 20 2f 44 46 4f 53 53 = $(RCC) /DFOSS
c030: 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c 3d 31 0a IL_ENABLE_SSL=1.
c040: 4c 49 42 53 20 20 20 20 20 20 3d 20 24 28 4c 49 LIBS = $(LI
c050: 42 53 29 20 24 28 53 53 4c 4c 49 42 29 0a 4c 49 BS) $(SSLLIB).LI
c060: 42 44 49 52 20 20 20 20 3d 20 24 28 4c 49 42 44 BDIR = $(LIBD
c070: 49 52 29 20 2f 4c 49 42 50 41 54 48 3a 24 28 53 IR) /LIBPATH:$(S
c080: 53 4c 4c 49 42 44 49 52 29 0a 21 65 6e 64 69 66 SLLIBDIR).!endif
c090: 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 45 ..!if $(FOSSIL_E
c0a0: 4e 41 42 4c 45 5f 45 58 45 43 5f 52 45 4c 5f 50 NABLE_EXEC_REL_P
c0b0: 41 54 48 53 29 21 3d 30 0a 54 43 43 20 20 20 20 ATHS)!=0.TCC
c0c0: 20 20 20 3d 20 24 28 54 43 43 29 20 2f 44 46 4f = $(TCC) /DFO
c0d0: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 45 58 45 43 SSIL_ENABLE_EXEC
c0e0: 5f 52 45 4c 5f 50 41 54 48 53 3d 31 0a 52 43 43 _REL_PATHS=1.RCC
c0f0: 20 20 20 20 20 20 20 3d 20 24 28 52 43 43 29 20 = $(RCC)
c100: 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f /DFOSSIL_ENABLE_
c110: 45 58 45 43 5f 52 45 4c 5f 50 41 54 48 53 3d 31 EXEC_REL_PATHS=1
c120: 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 46 .!endif..!if $(F
c130: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 4c 45 47 OSSIL_ENABLE_LEG
c140: 41 43 59 5f 4d 56 5f 52 4d 29 21 3d 30 0a 54 43 ACY_MV_RM)!=0.TC
c150: 43 20 20 20 20 20 20 20 3d 20 24 28 54 43 43 29 C = $(TCC)
c160: 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 /DFOSSIL_ENABLE
c170: 5f 4c 45 47 41 43 59 5f 4d 56 5f 52 4d 3d 31 0a _LEGACY_MV_RM=1.
c180: 52 43 43 20 20 20 20 20 20 20 3d 20 24 28 52 43 RCC = $(RC
c190: 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 C) /DFOSSIL_ENAB
c1a0: 4c 45 5f 4c 45 47 41 43 59 5f 4d 56 5f 52 4d 3d LE_LEGACY_MV_RM=
c1b0: 31 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 1.!endif..!if $(
c1c0: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 FOSSIL_ENABLE_TH
c1d0: 31 5f 44 4f 43 53 29 21 3d 30 0a 54 43 43 20 20 1_DOCS)!=0.TCC
c1e0: 20 20 20 20 20 3d 20 24 28 54 43 43 29 20 2f 44 = $(TCC) /D
c1f0: 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 FOSSIL_ENABLE_TH
c200: 31 5f 44 4f 43 53 3d 31 0a 52 43 43 20 20 20 20 1_DOCS=1.RCC
c210: 20 20 20 3d 20 24 28 52 43 43 29 20 2f 44 46 4f = $(RCC) /DFO
c220: 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 48 31 5f SSIL_ENABLE_TH1_
c230: 44 4f 43 53 3d 31 0a 21 65 6e 64 69 66 0a 0a 21 DOCS=1.!endif..!
c240: 69 66 20 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 if $(FOSSIL_ENAB
c250: 4c 45 5f 54 48 31 5f 48 4f 4f 4b 53 29 21 3d 30 LE_TH1_HOOKS)!=0
c260: 0a 54 43 43 20 20 20 20 20 20 20 3d 20 24 28 54 .TCC = $(T
c270: 43 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 CC) /DFOSSIL_ENA
c280: 42 4c 45 5f 54 48 31 5f 48 4f 4f 4b 53 3d 31 0a BLE_TH1_HOOKS=1.
c290: 52 43 43 20 20 20 20 20 20 20 3d 20 24 28 52 43 RCC = $(RC
c2a0: 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 4e 41 42 C) /DFOSSIL_ENAB
c2b0: 4c 45 5f 54 48 31 5f 48 4f 4f 4b 53 3d 31 0a 21 LE_TH1_HOOKS=1.!
c2c0: 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 46 4f 53 endif..!if $(FOS
c2d0: 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c 29 21 SIL_ENABLE_TCL)!
c2e0: 3d 30 0a 54 43 43 20 20 20 20 20 20 20 3d 20 24 =0.TCC = $
c2f0: 28 54 43 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 (TCC) /DFOSSIL_E
c300: 4e 41 42 4c 45 5f 54 43 4c 3d 31 0a 52 43 43 20 NABLE_TCL=1.RCC
c310: 20 20 20 20 20 20 3d 20 24 28 52 43 43 29 20 2f = $(RCC) /
c320: 44 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 DFOSSIL_ENABLE_T
c330: 43 4c 3d 31 0a 54 43 43 20 20 20 20 20 20 20 3d CL=1.TCC =
c340: 20 24 28 54 43 43 29 20 2f 44 46 4f 53 53 49 4c $(TCC) /DFOSSIL
c350: 5f 45 4e 41 42 4c 45 5f 54 43 4c 5f 53 54 55 42 _ENABLE_TCL_STUB
c360: 53 3d 31 0a 52 43 43 20 20 20 20 20 20 20 3d 20 S=1.RCC =
c370: 24 28 52 43 43 29 20 2f 44 46 4f 53 53 49 4c 5f $(RCC) /DFOSSIL_
c380: 45 4e 41 42 4c 45 5f 54 43 4c 5f 53 54 55 42 53 ENABLE_TCL_STUBS
c390: 3d 31 0a 54 43 43 20 20 20 20 20 20 20 3d 20 24 =1.TCC = $
c3a0: 28 54 43 43 29 20 2f 44 46 4f 53 53 49 4c 5f 45 (TCC) /DFOSSIL_E
c3b0: 4e 41 42 4c 45 5f 54 43 4c 5f 50 52 49 56 41 54 NABLE_TCL_PRIVAT
c3c0: 45 5f 53 54 55 42 53 3d 31 0a 52 43 43 20 20 20 E_STUBS=1.RCC
c3d0: 20 20 20 20 3d 20 24 28 52 43 43 29 20 2f 44 46 = $(RCC) /DF
c3e0: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 54 43 4c OSSIL_ENABLE_TCL
c3f0: 5f 50 52 49 56 41 54 45 5f 53 54 55 42 53 3d 31 _PRIVATE_STUBS=1
c400: 0a 54 43 43 20 20 20 20 20 20 20 3d 20 24 28 54 .TCC = $(T
c410: 43 43 29 20 2f 44 55 53 45 5f 54 43 4c 5f 53 54 CC) /DUSE_TCL_ST
c420: 55 42 53 3d 31 0a 52 43 43 20 20 20 20 20 20 20 UBS=1.RCC
c430: 3d 20 24 28 52 43 43 29 20 2f 44 55 53 45 5f 54 = $(RCC) /DUSE_T
c440: 43 4c 5f 53 54 55 42 53 3d 31 0a 21 65 6e 64 69 CL_STUBS=1.!endi
c450: 66 0a 0a 21 69 66 20 24 28 55 53 45 5f 53 45 45 f..!if $(USE_SEE
c460: 29 21 3d 30 0a 54 43 43 20 20 20 20 20 20 20 3d )!=0.TCC =
c470: 20 24 28 54 43 43 29 20 2f 44 55 53 45 5f 53 45 $(TCC) /DUSE_SE
c480: 45 3d 31 0a 52 43 43 20 20 20 20 20 20 20 3d 20 E=1.RCC =
c490: 24 28 52 43 43 29 20 2f 44 55 53 45 5f 53 45 45 $(RCC) /DUSE_SEE
c4a0: 3d 31 0a 21 65 6e 64 69 66 0a 7d 0a 72 65 67 73 =1.!endif.}.regs
c4b0: 75 62 20 2d 61 6c 6c 20 7b 5b 2d 5d 44 7d 20 5b ub -all {[-]D} [
c4c0: 6a 6f 69 6e 20 24 53 51 4c 49 54 45 5f 57 49 4e join $SQLITE_WIN
c4d0: 33 32 5f 4f 50 54 49 4f 4e 53 20 7b 20 7d 5d 20 32_OPTIONS { }]
c4e0: 7b 2f 44 7d 20 4d 53 43 5f 53 51 4c 49 54 45 5f {/D} MSC_SQLITE_
c4f0: 4f 50 54 49 4f 4e 53 0a 73 65 74 20 6a 20 22 20 OPTIONS.set j "
c500: 5c 5c 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 \\\n
c510: 20 20 20 20 20 22 0a 77 72 69 74 65 6c 6e 20 22 ".writeln "
c520: 53 51 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 20 3d SQLITE_OPTIONS =
c530: 20 5b 6a 6f 69 6e 20 24 4d 53 43 5f 53 51 4c 49 [join $MSC_SQLI
c540: 54 45 5f 4f 50 54 49 4f 4e 53 20 24 6a 5d 5c 6e TE_OPTIONS $j]\n
c550: 22 0a 0a 72 65 67 73 75 62 20 2d 61 6c 6c 20 7b "..regsub -all {
c560: 5b 2d 5d 44 7d 20 5b 6a 6f 69 6e 20 24 53 48 45 [-]D} [join $SHE
c570: 4c 4c 5f 57 49 4e 33 32 5f 4f 50 54 49 4f 4e 53 LL_WIN32_OPTIONS
c580: 20 7b 20 7d 5d 20 7b 2f 44 7d 20 4d 53 43 5f 53 { }] {/D} MSC_S
c590: 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 0a 73 65 74 HELL_OPTIONS.set
c5a0: 20 6a 20 22 20 5c 5c 5c 6e 20 20 20 20 20 20 20 j " \\\n
c5b0: 20 20 20 20 20 20 20 20 20 22 0a 77 72 69 74 65 ".write
c5c0: 6c 6e 20 22 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e ln "SHELL_OPTION
c5d0: 53 20 3d 20 5b 6a 6f 69 6e 20 24 4d 53 43 5f 53 S = [join $MSC_S
c5e0: 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 20 24 6a 5d HELL_OPTIONS $j]
c5f0: 5c 6e 22 0a 0a 72 65 67 73 75 62 20 2d 61 6c 6c \n"..regsub -all
c600: 20 7b 5b 2d 5d 44 7d 20 5b 6a 6f 69 6e 20 24 4d {[-]D} [join $M
c610: 49 4e 49 5a 5f 57 49 4e 33 32 5f 4f 50 54 49 4f INIZ_WIN32_OPTIO
c620: 4e 53 20 7b 20 7d 5d 20 7b 2f 44 7d 20 4d 53 43 NS { }] {/D} MSC
c630: 5f 4d 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 0a 73 _MINIZ_OPTIONS.s
c640: 65 74 20 6a 20 22 20 5c 5c 5c 6e 20 20 20 20 20 et j " \\\n
c650: 20 20 20 20 20 20 20 20 20 20 20 22 0a 77 72 69 ".wri
c660: 74 65 6c 6e 20 22 4d 49 4e 49 5a 5f 4f 50 54 49 teln "MINIZ_OPTI
c670: 4f 4e 53 20 3d 20 5b 6a 6f 69 6e 20 24 4d 53 43 ONS = [join $MSC
c680: 5f 4d 49 4e 49 5a 5f 4f 50 54 49 4f 4e 53 20 24 _MINIZ_OPTIONS $
c690: 6a 5d 5c 6e 22 0a 0a 77 72 69 74 65 6c 6e 20 2d j]\n"..writeln -
c6a0: 6e 6f 6e 65 77 6c 69 6e 65 20 22 53 52 43 20 20 nonewline "SRC
c6b0: 20 3d 20 22 0a 73 65 74 20 69 20 30 0a 66 6f 72 = ".set i 0.for
c6c0: 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 each s [lsort $s
c6d0: 72 63 5d 20 7b 0a 20 20 69 66 20 7b 24 69 20 3e rc] {. if {$i >
c6e0: 20 30 7d 20 7b 0a 20 20 20 20 77 72 69 74 65 6c 0} {. writel
c6f0: 6e 20 22 20 5c 5c 22 0a 20 20 20 20 77 72 69 74 n " \\". writ
c700: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
c710: 20 20 20 20 20 20 20 20 22 0a 20 20 7d 0a 20 20 ". }.
c720: 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 writeln -nonewli
c730: 6e 65 20 22 24 7b 73 7d 5f 2e 63 22 3b 20 69 6e ne "${s}_.c"; in
c740: 63 72 20 69 0a 7d 0a 77 72 69 74 65 6c 6e 20 22 cr i.}.writeln "
c750: 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e \n".writeln -non
c760: 65 77 6c 69 6e 65 20 22 45 58 54 52 41 5f 46 49 ewline "EXTRA_FI
c770: 4c 45 53 20 20 20 3d 20 22 0a 73 65 74 20 69 20 LES = ".set i
c780: 30 0a 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 0.foreach s [lso
c790: 72 74 20 24 65 78 74 72 61 5f 66 69 6c 65 73 5d rt $extra_files]
c7a0: 20 7b 0a 20 20 69 66 20 7b 24 69 20 3e 20 30 7d {. if {$i > 0}
c7b0: 20 7b 0a 20 20 20 20 77 72 69 74 65 6c 6e 20 22 {. writeln "
c7c0: 20 5c 5c 22 0a 20 20 20 20 77 72 69 74 65 6c 6e \\". writeln
c7d0: 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 20 20 20 -nonewline "
c7e0: 20 20 20 20 20 22 0a 20 20 7d 0a 20 20 77 72 69 ". }. wri
c7f0: 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 teln -nonewline
c800: 22 5c 24 28 53 52 43 44 49 52 29 5c 5c 24 7b 73 "\$(SRCDIR)\\${s
c810: 7d 22 3b 20 69 6e 63 72 20 69 0a 7d 0a 77 72 69 }"; incr i.}.wri
c820: 74 65 6c 6e 20 22 5c 6e 22 0a 73 65 74 20 41 64 teln "\n".set Ad
c830: 64 69 74 69 6f 6e 61 6c 4f 62 6a 20 5b 6c 69 73 ditionalObj [lis
c840: 74 20 73 68 65 6c 6c 20 73 71 6c 69 74 65 33 20 t shell sqlite3
c850: 74 68 20 74 68 5f 6c 61 6e 67 20 74 68 5f 74 63 th th_lang th_tc
c860: 6c 20 63 73 6f 6e 5f 61 6d 61 6c 67 61 6d 61 74 l cson_amalgamat
c870: 69 6f 6e 5d 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f ion].writeln -no
c880: 6e 65 77 6c 69 6e 65 20 22 4f 42 4a 20 20 20 3d newline "OBJ =
c890: 20 22 0a 73 65 74 20 69 20 30 0a 66 6f 72 65 61 ".set i 0.forea
c8a0: 63 68 20 73 20 5b 6c 73 6f 72 74 20 5b 63 6f 6e ch s [lsort [con
c8b0: 63 61 74 20 24 73 72 63 20 24 41 64 64 69 74 69 cat $src $Additi
c8c0: 6f 6e 61 6c 4f 62 6a 5d 5d 20 7b 0a 20 20 69 66 onalObj]] {. if
c8d0: 20 7b 24 69 20 3e 20 30 7d 20 7b 0a 20 20 20 20 {$i > 0} {.
c8e0: 77 72 69 74 65 6c 6e 20 22 20 5c 5c 22 0a 20 20 writeln " \\".
c8f0: 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 writeln -nonew
c900: 6c 69 6e 65 20 22 20 20 20 20 20 20 20 20 22 0a line " ".
c910: 20 20 7d 0a 20 20 77 72 69 74 65 6c 6e 20 2d 6e }. writeln -n
c920: 6f 6e 65 77 6c 69 6e 65 20 22 5c 24 28 4f 58 29 onewline "\$(OX)
c930: 5c 5c 24 73 5c 24 4f 22 3b 20 69 6e 63 72 20 69 \\$s\$O"; incr i
c940: 0a 7d 0a 69 66 20 7b 24 69 20 3e 20 30 7d 20 7b .}.if {$i > 0} {
c950: 0a 20 20 77 72 69 74 65 6c 6e 20 22 20 5c 5c 22 . writeln " \\"
c960: 0a 7d 0a 77 72 69 74 65 6c 6e 20 22 21 69 66 20 .}.writeln "!if
c970: 5c 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 \$(FOSSIL_ENABLE
c980: 5f 4d 49 4e 49 5a 29 21 3d 30 22 0a 77 72 69 74 _MINIZ)!=0".writ
c990: 65 6c 6e 20 2d 6e 6f 6e 65 77 6c 69 6e 65 20 22 eln -nonewline "
c9a0: 20 20 20 20 20 20 20 20 22 0a 77 72 69 74 65 6c ".writel
c9b0: 6e 20 22 5c 24 28 4f 58 29 5c 5c 6d 69 6e 69 7a n "\$(OX)\\miniz
c9c0: 5c 24 4f 20 5c 5c 22 3b 20 69 6e 63 72 20 69 0a \$O \\"; incr i.
c9d0: 77 72 69 74 65 6c 6e 20 22 21 65 6e 64 69 66 22 writeln "!endif"
c9e0: 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c .writeln -nonewl
c9f0: 69 6e 65 20 22 20 20 20 20 20 20 20 20 5c 24 28 ine " \$(
ca00: 4f 58 29 5c 5c 66 6f 73 73 69 6c 2e 72 65 73 5c OX)\\fossil.res\
ca10: 6e 5c 6e 22 0a 77 72 69 74 65 6c 6e 20 5b 73 74 n\n".writeln [st
ca20: 72 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 3c ring map [list <
ca30: 3c 3c 4e 45 58 54 5f 4c 49 4e 45 3e 3e 3e 20 5c <<NEXT_LINE>>> \
ca40: 5c 5d 20 7b 0a 41 50 50 4e 41 4d 45 20 20 20 20 \] {.APPNAME
ca50: 3d 20 24 28 4f 58 29 5c 66 6f 73 73 69 6c 24 28 = $(OX)\fossil$(
ca60: 45 29 0a 50 44 42 4e 41 4d 45 20 20 20 20 3d 20 E).PDBNAME =
ca70: 24 28 4f 58 29 5c 66 6f 73 73 69 6c 24 28 50 29 $(OX)\fossil$(P)
ca80: 0a 41 50 50 54 41 52 47 45 54 53 20 3d 0a 0a 61 .APPTARGETS =..a
ca90: 6c 6c 3a 20 24 28 4f 58 29 20 24 28 41 50 50 4e ll: $(OX) $(APPN
caa0: 41 4d 45 29 0a 0a 7a 6c 69 62 3a 0a 09 40 65 63 AME)..zlib:..@ec
cab0: 68 6f 20 42 75 69 6c 64 69 6e 67 20 7a 6c 69 62 ho Building zlib
cac0: 20 66 72 6f 6d 20 22 24 28 5a 4c 49 42 44 49 52 from "$(ZLIBDIR
cad0: 29 22 2e 2e 2e 0a 21 69 66 20 24 28 46 4f 53 53 )"....!if $(FOSS
cae0: 49 4c 5f 45 4e 41 42 4c 45 5f 57 49 4e 58 50 29 IL_ENABLE_WINXP)
caf0: 21 3d 30 0a 09 40 70 75 73 68 64 20 22 24 28 5a !=0..@pushd "$(Z
cb00: 4c 49 42 44 49 52 29 22 20 26 26 20 24 28 4d 41 LIBDIR)" && $(MA
cb10: 4b 45 29 20 2f 66 20 77 69 6e 33 32 5c 4d 61 6b KE) /f win32\Mak
cb20: 65 66 69 6c 65 2e 6d 73 63 20 24 28 5a 4c 49 42 efile.msc $(ZLIB
cb30: 29 20 22 43 43 3d 63 6c 20 24 28 58 50 43 46 4c ) "CC=cl $(XPCFL
cb40: 41 47 53 29 22 20 22 4c 44 3d 6c 69 6e 6b 20 24 AGS)" "LD=link $
cb50: 28 58 50 4c 44 46 4c 41 47 53 29 22 20 26 26 20 (XPLDFLAGS)" &&
cb60: 70 6f 70 64 0a 21 65 6c 73 65 0a 09 40 70 75 73 popd.!else..@pus
cb70: 68 64 20 22 24 28 5a 4c 49 42 44 49 52 29 22 20 hd "$(ZLIBDIR)"
cb80: 26 26 20 24 28 4d 41 4b 45 29 20 2f 66 20 77 69 && $(MAKE) /f wi
cb90: 6e 33 32 5c 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 n32\Makefile.msc
cba0: 20 24 28 5a 4c 49 42 29 20 26 26 20 70 6f 70 64 $(ZLIB) && popd
cbb0: 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 24 28 46 .!endif..!if $(F
cbc0: 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c OSSIL_ENABLE_SSL
cbd0: 29 21 3d 30 0a 6f 70 65 6e 73 73 6c 3a 0a 09 40 )!=0.openssl:..@
cbe0: 65 63 68 6f 20 42 75 69 6c 64 69 6e 67 20 4f 70 echo Building Op
cbf0: 65 6e 53 53 4c 20 66 72 6f 6d 20 22 24 28 53 53 enSSL from "$(SS
cc00: 4c 44 49 52 29 22 2e 2e 2e 0a 21 69 66 20 22 24 LDIR)"....!if "$
cc10: 28 50 45 52 4c 44 49 52 29 22 20 21 3d 20 22 22 (PERLDIR)" != ""
cc20: 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 50 45 ..@set PATH=$(PE
cc30: 52 4c 44 49 52 29 3b 24 28 50 41 54 48 29 0a 21 RLDIR);$(PATH).!
cc40: 65 6e 64 69 66 0a 09 40 70 75 73 68 64 20 22 24 endif..@pushd "$
cc50: 28 53 53 4c 44 49 52 29 22 20 26 26 20 24 28 50 (SSLDIR)" && $(P
cc60: 45 52 4c 29 20 43 6f 6e 66 69 67 75 72 65 20 24 ERL) Configure $
cc70: 28 53 53 4c 43 4f 4e 46 49 47 29 20 26 26 20 70 (SSLCONFIG) && p
cc80: 6f 70 64 0a 09 40 70 75 73 68 64 20 22 24 28 53 opd..@pushd "$(S
cc90: 53 4c 44 49 52 29 22 20 26 26 20 63 61 6c 6c 20 SLDIR)" && call
cca0: 24 28 53 53 4c 53 45 54 55 50 29 20 26 26 20 70 $(SSLSETUP) && p
ccb0: 6f 70 64 0a 21 69 66 20 24 28 46 4f 53 53 49 4c opd.!if $(FOSSIL
ccc0: 5f 45 4e 41 42 4c 45 5f 57 49 4e 58 50 29 21 3d _ENABLE_WINXP)!=
ccd0: 30 0a 09 40 70 75 73 68 64 20 22 24 28 53 53 4c 0..@pushd "$(SSL
cce0: 44 49 52 29 22 20 26 26 20 24 28 4d 41 4b 45 29 DIR)" && $(MAKE)
ccf0: 20 2f 66 20 24 28 53 53 4c 4e 4d 41 4b 45 29 20 /f $(SSLNMAKE)
cd00: 22 43 43 3d 63 6c 20 24 28 53 53 4c 43 46 4c 41 "CC=cl $(SSLCFLA
cd10: 47 53 29 20 24 28 58 50 43 46 4c 41 47 53 29 22 GS) $(XPCFLAGS)"
cd20: 20 22 4c 46 4c 41 47 53 3d 24 28 53 53 4c 4c 46 "LFLAGS=$(SSLLF
cd30: 4c 41 47 53 29 20 24 28 58 50 4c 44 46 4c 41 47 LAGS) $(XPLDFLAG
cd40: 53 29 22 20 26 26 20 70 6f 70 64 0a 21 65 6c 73 S)" && popd.!els
cd50: 65 0a 09 40 70 75 73 68 64 20 22 24 28 53 53 4c e..@pushd "$(SSL
cd60: 44 49 52 29 22 20 26 26 20 24 28 4d 41 4b 45 29 DIR)" && $(MAKE)
cd70: 20 2f 66 20 24 28 53 53 4c 4e 4d 41 4b 45 29 20 /f $(SSLNMAKE)
cd80: 22 43 43 3d 63 6c 20 24 28 53 53 4c 43 46 4c 41 "CC=cl $(SSLCFLA
cd90: 47 53 29 22 20 26 26 20 70 6f 70 64 0a 21 65 6e GS)" && popd.!en
cda0: 64 69 66 0a 21 65 6e 64 69 66 0a 0a 21 69 66 20 dif.!endif..!if
cdb0: 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 4c 45 5f $(FOSSIL_ENABLE_
cdc0: 4d 49 4e 49 5a 29 3d 3d 30 0a 21 69 66 20 24 28 MINIZ)==0.!if $(
cdd0: 46 4f 53 53 49 4c 5f 42 55 49 4c 44 5f 5a 4c 49 FOSSIL_BUILD_ZLI
cde0: 42 29 21 3d 30 0a 41 50 50 54 41 52 47 45 54 53 B)!=0.APPTARGETS
cdf0: 20 3d 20 24 28 41 50 50 54 41 52 47 45 54 53 29 = $(APPTARGETS)
ce00: 20 7a 6c 69 62 0a 21 65 6e 64 69 66 0a 21 65 6e zlib.!endif.!en
ce10: 64 69 66 0a 0a 21 69 66 20 24 28 46 4f 53 53 49 dif..!if $(FOSSI
ce20: 4c 5f 45 4e 41 42 4c 45 5f 53 53 4c 29 21 3d 30 L_ENABLE_SSL)!=0
ce30: 0a 21 69 66 20 24 28 46 4f 53 53 49 4c 5f 42 55 .!if $(FOSSIL_BU
ce40: 49 4c 44 5f 53 53 4c 29 21 3d 30 0a 41 50 50 54 ILD_SSL)!=0.APPT
ce50: 41 52 47 45 54 53 20 3d 20 24 28 41 50 50 54 41 ARGETS = $(APPTA
ce60: 52 47 45 54 53 29 20 6f 70 65 6e 73 73 6c 0a 21 RGETS) openssl.!
ce70: 65 6e 64 69 66 0a 21 65 6e 64 69 66 0a 0a 24 28 endif.!endif..$(
ce80: 41 50 50 4e 41 4d 45 29 20 3a 20 24 28 41 50 50 APPNAME) : $(APP
ce90: 54 41 52 47 45 54 53 29 20 74 72 61 6e 73 6c 61 TARGETS) transla
cea0: 74 65 24 45 20 6d 6b 69 6e 64 65 78 24 45 20 63 te$E mkindex$E c
ceb0: 6f 64 65 63 68 65 63 6b 31 24 45 20 68 65 61 64 odecheck1$E head
cec0: 65 72 73 20 24 28 4f 42 4a 29 20 24 28 4f 58 29 ers $(OBJ) $(OX)
ced0: 5c 6c 69 6e 6b 6f 70 74 73 0a 09 63 64 20 24 28 \linkopts..cd $(
cee0: 4f 58 29 0a 09 63 6f 64 65 63 68 65 63 6b 31 24 OX)..codecheck1$
cef0: 45 20 24 28 53 52 43 29 0a 09 6c 69 6e 6b 20 24 E $(SRC)..link $
cf00: 28 4c 44 46 4c 41 47 53 29 20 2f 4f 55 54 3a 24 (LDFLAGS) /OUT:$
cf10: 40 20 24 28 4c 49 42 44 49 52 29 20 57 73 65 74 @ $(LIBDIR) Wset
cf20: 61 72 67 76 2e 6f 62 6a 20 66 6f 73 73 69 6c 2e argv.obj fossil.
cf30: 72 65 73 20 40 6c 69 6e 6b 6f 70 74 73 0a 09 69 res @linkopts..i
cf40: 66 20 65 78 69 73 74 20 24 40 2e 6d 61 6e 69 66 f exist $@.manif
cf50: 65 73 74 20 3c 3c 3c 4e 45 58 54 5f 4c 49 4e 45 est <<<NEXT_LINE
cf60: 3e 3e 3e 0a 09 09 24 28 4d 54 43 29 20 2d 6e 6f >>>...$(MTC) -no
cf70: 6c 6f 67 6f 20 2d 6d 61 6e 69 66 65 73 74 20 24 logo -manifest $
cf80: 40 2e 6d 61 6e 69 66 65 73 74 20 2d 6f 75 74 70 @.manifest -outp
cf90: 75 74 72 65 73 6f 75 72 63 65 3a 24 40 3b 31 0a utresource:$@;1.
cfa0: 0a 24 28 4f 58 29 5c 6c 69 6e 6b 6f 70 74 73 3a .$(OX)\linkopts:
cfb0: 20 24 42 5c 77 69 6e 5c 4d 61 6b 65 66 69 6c 65 $B\win\Makefile
cfc0: 2e 6d 73 63 7d 5d 0a 73 65 74 20 72 65 64 69 72 .msc}].set redir
cfd0: 20 7b 3e 7d 0a 66 6f 72 65 61 63 68 20 73 20 5b {>}.foreach s [
cfe0: 6c 73 6f 72 74 20 5b 63 6f 6e 63 61 74 20 24 73 lsort [concat $s
cff0: 72 63 20 24 41 64 64 69 74 69 6f 6e 61 6c 4f 62 rc $AdditionalOb
d000: 6a 5d 5d 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 j]] {. writeln
d010: 22 5c 74 65 63 68 6f 20 5c 24 28 4f 58 29 5c 5c "\techo \$(OX)\\
d020: 24 73 2e 6f 62 6a 20 24 72 65 64 69 72 20 5c 24 $s.obj $redir \$
d030: 40 22 0a 20 20 73 65 74 20 72 65 64 69 72 20 7b @". set redir {
d040: 3e 3e 7d 0a 7d 0a 73 65 74 20 72 65 64 69 72 20 >>}.}.set redir
d050: 7b 3e 3e 7d 0a 77 72 69 74 65 6c 6e 20 22 21 69 {>>}.writeln "!i
d060: 66 20 5c 24 28 46 4f 53 53 49 4c 5f 45 4e 41 42 f \$(FOSSIL_ENAB
d070: 4c 45 5f 4d 49 4e 49 5a 29 21 3d 30 22 0a 77 72 LE_MINIZ)!=0".wr
d080: 69 74 65 6c 6e 20 22 5c 74 65 63 68 6f 20 5c 24 iteln "\techo \$
d090: 28 4f 58 29 5c 5c 6d 69 6e 69 7a 2e 6f 62 6a 20 (OX)\\miniz.obj
d0a0: 24 72 65 64 69 72 20 5c 24 40 22 0a 77 72 69 74 $redir \$@".writ
d0b0: 65 6c 6e 20 22 21 65 6e 64 69 66 22 0a 77 72 69 eln "!endif".wri
d0c0: 74 65 6c 6e 20 22 5c 74 65 63 68 6f 20 5c 24 28 teln "\techo \$(
d0d0: 4c 49 42 53 29 20 24 72 65 64 69 72 20 5c 24 40 LIBS) $redir \$@
d0e0: 22 0a 77 72 69 74 65 6c 6e 20 7b 0a 24 28 4f 58 ".writeln {.$(OX
d0f0: 29 3a 0a 09 40 2d 6d 6b 64 69 72 20 24 40 0a 0a ):..@-mkdir $@..
d100: 74 72 61 6e 73 6c 61 74 65 24 45 3a 20 24 28 53 translate$E: $(S
d110: 52 43 44 49 52 29 5c 74 72 61 6e 73 6c 61 74 65 RCDIR)\translate
d120: 2e 63 0a 09 24 28 42 43 43 29 20 24 2a 2a 0a 0a .c..$(BCC) $**..
d130: 6d 61 6b 65 68 65 61 64 65 72 73 24 45 3a 20 24 makeheaders$E: $
d140: 28 53 52 43 44 49 52 29 5c 6d 61 6b 65 68 65 61 (SRCDIR)\makehea
d150: 64 65 72 73 2e 63 0a 09 24 28 42 43 43 29 20 24 ders.c..$(BCC) $
d160: 2a 2a 0a 0a 6d 6b 69 6e 64 65 78 24 45 3a 20 24 **..mkindex$E: $
d170: 28 53 52 43 44 49 52 29 5c 6d 6b 69 6e 64 65 78 (SRCDIR)\mkindex
d180: 2e 63 0a 09 24 28 42 43 43 29 20 24 2a 2a 0a 0a .c..$(BCC) $**..
d190: 6d 6b 62 75 69 6c 74 69 6e 24 45 3a 20 24 28 53 mkbuiltin$E: $(S
d1a0: 52 43 44 49 52 29 5c 6d 6b 62 75 69 6c 74 69 6e RCDIR)\mkbuiltin
d1b0: 2e 63 0a 09 24 28 42 43 43 29 20 24 2a 2a 0a 0a .c..$(BCC) $**..
d1c0: 6d 6b 76 65 72 73 69 6f 6e 24 45 3a 20 24 28 53 mkversion$E: $(S
d1d0: 52 43 44 49 52 29 5c 6d 6b 76 65 72 73 69 6f 6e RCDIR)\mkversion
d1e0: 2e 63 0a 09 24 28 42 43 43 29 20 24 2a 2a 0a 0a .c..$(BCC) $**..
d1f0: 6d 6b 63 73 73 24 45 3a 20 24 28 53 52 43 44 49 mkcss$E: $(SRCDI
d200: 52 29 5c 6d 6b 63 73 73 2e 63 0a 09 24 28 42 43 R)\mkcss.c..$(BC
d210: 43 29 20 24 2a 2a 0a 0a 63 6f 64 65 63 68 65 63 C) $**..codechec
d220: 6b 31 24 45 3a 20 24 28 53 52 43 44 49 52 29 5c k1$E: $(SRCDIR)\
d230: 63 6f 64 65 63 68 65 63 6b 31 2e 63 0a 09 24 28 codecheck1.c..$(
d240: 42 43 43 29 20 24 2a 2a 0a 0a 21 69 66 20 24 28 BCC) $**..!if $(
d250: 55 53 45 5f 53 45 45 29 21 3d 30 0a 53 45 45 5f USE_SEE)!=0.SEE_
d260: 46 4c 41 47 53 20 3d 20 2f 44 53 51 4c 49 54 45 FLAGS = /DSQLITE
d270: 5f 48 41 53 5f 43 4f 44 45 43 3d 31 20 2f 44 53 _HAS_CODEC=1 /DS
d280: 51 4c 49 54 45 5f 53 48 45 4c 4c 5f 44 42 4b 45 QLITE_SHELL_DBKE
d290: 59 5f 50 52 4f 43 3d 66 6f 73 73 69 6c 5f 6b 65 Y_PROC=fossil_ke
d2a0: 79 0a 53 51 4c 49 54 45 33 5f 53 48 45 4c 4c 5f y.SQLITE3_SHELL_
d2b0: 53 52 43 20 3d 20 24 28 53 52 43 44 49 52 29 5c SRC = $(SRCDIR)\
d2c0: 73 68 65 6c 6c 2d 73 65 65 2e 63 0a 53 51 4c 49 shell-see.c.SQLI
d2d0: 54 45 33 5f 53 52 43 20 3d 20 24 28 53 52 43 44 TE3_SRC = $(SRCD
d2e0: 49 52 29 5c 73 71 6c 69 74 65 33 2d 73 65 65 2e IR)\sqlite3-see.
d2f0: 63 0a 21 65 6c 73 65 0a 53 45 45 5f 46 4c 41 47 c.!else.SEE_FLAG
d300: 53 20 3d 0a 53 51 4c 49 54 45 33 5f 53 48 45 4c S =.SQLITE3_SHEL
d310: 4c 5f 53 52 43 20 3d 20 24 28 53 52 43 44 49 52 L_SRC = $(SRCDIR
d320: 29 5c 73 68 65 6c 6c 2e 63 0a 53 51 4c 49 54 45 )\shell.c.SQLITE
d330: 33 5f 53 52 43 20 3d 20 24 28 53 52 43 44 49 52 3_SRC = $(SRCDIR
d340: 29 5c 73 71 6c 69 74 65 33 2e 63 0a 21 65 6e 64 )\sqlite3.c.!end
d350: 69 66 0a 0a 24 28 4f 58 29 5c 73 68 65 6c 6c 24 if..$(OX)\shell$
d360: 4f 20 3a 20 24 28 53 51 4c 49 54 45 33 5f 53 48 O : $(SQLITE3_SH
d370: 45 4c 4c 5f 53 52 43 29 20 24 42 5c 77 69 6e 5c ELL_SRC) $B\win\
d380: 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 0a 09 24 28 Makefile.msc..$(
d390: 54 43 43 29 20 2f 46 6f 24 40 20 24 28 53 48 45 TCC) /Fo$@ $(SHE
d3a0: 4c 4c 5f 4f 50 54 49 4f 4e 53 29 20 24 28 53 51 LL_OPTIONS) $(SQ
d3b0: 4c 49 54 45 5f 4f 50 54 49 4f 4e 53 29 20 24 28 LITE_OPTIONS) $(
d3c0: 53 48 45 4c 4c 5f 43 46 4c 41 47 53 29 20 24 28 SHELL_CFLAGS) $(
d3d0: 53 45 45 5f 46 4c 41 47 53 29 20 2d 63 20 24 28 SEE_FLAGS) -c $(
d3e0: 53 51 4c 49 54 45 33 5f 53 48 45 4c 4c 5f 53 52 SQLITE3_SHELL_SR
d3f0: 43 29 0a 0a 24 28 4f 58 29 5c 73 71 6c 69 74 65 C)..$(OX)\sqlite
d400: 33 24 4f 20 3a 20 24 28 53 51 4c 49 54 45 33 5f 3$O : $(SQLITE3_
d410: 53 52 43 29 20 24 42 5c 77 69 6e 5c 4d 61 6b 65 SRC) $B\win\Make
d420: 66 69 6c 65 2e 6d 73 63 0a 09 24 28 54 43 43 29 file.msc..$(TCC)
d430: 20 2f 46 6f 24 40 20 2d 63 20 24 28 53 51 4c 49 /Fo$@ -c $(SQLI
d440: 54 45 5f 4f 50 54 49 4f 4e 53 29 20 24 28 53 51 TE_OPTIONS) $(SQ
d450: 4c 49 54 45 5f 43 46 4c 41 47 53 29 20 24 28 53 LITE_CFLAGS) $(S
d460: 45 45 5f 46 4c 41 47 53 29 20 24 28 53 51 4c 49 EE_FLAGS) $(SQLI
d470: 54 45 33 5f 53 52 43 29 0a 0a 24 28 4f 58 29 5c TE3_SRC)..$(OX)\
d480: 74 68 24 4f 20 3a 20 24 28 53 52 43 44 49 52 29 th$O : $(SRCDIR)
d490: 5c 74 68 2e 63 0a 09 24 28 54 43 43 29 20 2f 46 \th.c..$(TCC) /F
d4a0: 6f 24 40 20 2d 63 20 24 2a 2a 0a 0a 24 28 4f 58 o$@ -c $**..$(OX
d4b0: 29 5c 74 68 5f 6c 61 6e 67 24 4f 20 3a 20 24 28 )\th_lang$O : $(
d4c0: 53 52 43 44 49 52 29 5c 74 68 5f 6c 61 6e 67 2e SRCDIR)\th_lang.
d4d0: 63 0a 09 24 28 54 43 43 29 20 2f 46 6f 24 40 20 c..$(TCC) /Fo$@
d4e0: 2d 63 20 24 2a 2a 0a 0a 24 28 4f 58 29 5c 74 68 -c $**..$(OX)\th
d4f0: 5f 74 63 6c 24 4f 20 3a 20 24 28 53 52 43 44 49 _tcl$O : $(SRCDI
d500: 52 29 5c 74 68 5f 74 63 6c 2e 63 0a 09 24 28 54 R)\th_tcl.c..$(T
d510: 43 43 29 20 2f 46 6f 24 40 20 2d 63 20 24 2a 2a CC) /Fo$@ -c $**
d520: 0a 0a 24 28 4f 58 29 5c 6d 69 6e 69 7a 24 4f 20 ..$(OX)\miniz$O
d530: 3a 20 24 28 53 52 43 44 49 52 29 5c 6d 69 6e 69 : $(SRCDIR)\mini
d540: 7a 2e 63 0a 09 24 28 54 43 43 29 20 2f 46 6f 24 z.c..$(TCC) /Fo$
d550: 40 20 2d 63 20 24 28 4d 49 4e 49 5a 5f 4f 50 54 @ -c $(MINIZ_OPT
d560: 49 4f 4e 53 29 20 24 28 53 52 43 44 49 52 29 5c IONS) $(SRCDIR)\
d570: 6d 69 6e 69 7a 2e 63 0a 0a 56 45 52 53 49 4f 4e miniz.c..VERSION
d580: 2e 68 20 3a 20 6d 6b 76 65 72 73 69 6f 6e 24 45 .h : mkversion$E
d590: 20 24 42 5c 6d 61 6e 69 66 65 73 74 2e 75 75 69 $B\manifest.uui
d5a0: 64 20 24 42 5c 6d 61 6e 69 66 65 73 74 20 24 42 d $B\manifest $B
d5b0: 5c 56 45 52 53 49 4f 4e 0a 09 24 2a 2a 20 3e 20 \VERSION..$** >
d5c0: 24 40 0a 0a 24 28 4f 58 29 5c 63 73 6f 6e 5f 61 $@..$(OX)\cson_a
d5d0: 6d 61 6c 67 61 6d 61 74 69 6f 6e 24 4f 20 3a 20 malgamation$O :
d5e0: 24 28 53 52 43 44 49 52 29 5c 63 73 6f 6e 5f 61 $(SRCDIR)\cson_a
d5f0: 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 63 0a 09 24 malgamation.c..$
d600: 28 54 43 43 29 20 2f 46 6f 24 40 20 2f 63 20 24 (TCC) /Fo$@ /c $
d610: 2a 2a 0a 0a 64 65 66 61 75 6c 74 5f 63 73 73 2e **..default_css.
d620: 68 3a 20 6d 6b 63 73 73 24 45 20 24 28 53 52 43 h: mkcss$E $(SRC
d630: 44 49 52 29 5c 64 65 66 61 75 6c 74 5f 63 73 73 DIR)\default_css
d640: 2e 74 78 74 0a 09 24 2a 2a 20 24 40 0a 0a 70 61 .txt..$** $@..pa
d650: 67 65 5f 69 6e 64 65 78 2e 68 3a 20 6d 6b 69 6e ge_index.h: mkin
d660: 64 65 78 24 45 20 24 28 53 52 43 29 0a 09 24 2a dex$E $(SRC)..$*
d670: 2a 20 3e 20 24 40 0a 0a 62 75 69 6c 74 69 6e 5f * > $@..builtin_
d680: 64 61 74 61 2e 68 3a 09 6d 6b 62 75 69 6c 74 69 data.h:.mkbuilti
d690: 6e 24 45 20 24 28 45 58 54 52 41 5f 46 49 4c 45 n$E $(EXTRA_FILE
d6a0: 53 29 0a 09 6d 6b 62 75 69 6c 74 69 6e 24 45 20 S)..mkbuiltin$E
d6b0: 2d 2d 70 72 65 66 69 78 20 24 28 53 52 43 44 49 --prefix $(SRCDI
d6c0: 52 29 2f 20 24 28 45 58 54 52 41 5f 46 49 4c 45 R)/ $(EXTRA_FILE
d6d0: 53 29 20 3e 20 24 40 0a 0a 63 6c 65 61 6e 3a 0a S) > $@..clean:.
d6e0: 09 64 65 6c 20 24 28 4f 58 29 5c 2a 2e 6f 62 6a .del $(OX)\*.obj
d6f0: 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 2e 6f 62 2>NUL..del *.ob
d700: 6a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 5f 2e j 2>NUL..del *_.
d710: 63 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 2e 68 c 2>NUL..del *.h
d720: 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 2e 69 6c 2>NUL..del *.il
d730: 6b 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 2e 6d k 2>NUL..del *.m
d740: 61 70 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2a 2e ap 2>NUL..del *.
d750: 72 65 73 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 68 res 2>NUL..del h
d760: 65 61 64 65 72 73 20 32 3e 4e 55 4c 0a 09 64 65 eaders 2>NUL..de
d770: 6c 20 6c 69 6e 6b 6f 70 74 73 20 32 3e 4e 55 4c l linkopts 2>NUL
d780: 0a 09 64 65 6c 20 76 63 2a 2e 70 64 62 20 32 3e ..del vc*.pdb 2>
d790: 4e 55 4c 0a 0a 72 65 61 6c 63 6c 65 61 6e 3a 20 NUL..realclean:
d7a0: 63 6c 65 61 6e 0a 09 64 65 6c 20 24 28 41 50 50 clean..del $(APP
d7b0: 4e 41 4d 45 29 20 32 3e 4e 55 4c 0a 09 64 65 6c NAME) 2>NUL..del
d7c0: 20 24 28 50 44 42 4e 41 4d 45 29 20 32 3e 4e 55 $(PDBNAME) 2>NU
d7d0: 4c 0a 09 64 65 6c 20 74 72 61 6e 73 6c 61 74 65 L..del translate
d7e0: 24 45 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 74 72 $E 2>NUL..del tr
d7f0: 61 6e 73 6c 61 74 65 24 50 20 32 3e 4e 55 4c 0a anslate$P 2>NUL.
d800: 09 64 65 6c 20 6d 6b 69 6e 64 65 78 24 45 20 32 .del mkindex$E 2
d810: 3e 4e 55 4c 0a 09 64 65 6c 20 6d 6b 69 6e 64 65 >NUL..del mkinde
d820: 78 24 50 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 6d x$P 2>NUL..del m
d830: 61 6b 65 68 65 61 64 65 72 73 24 45 20 32 3e 4e akeheaders$E 2>N
d840: 55 4c 0a 09 64 65 6c 20 6d 61 6b 65 68 65 61 64 UL..del makehead
d850: 65 72 73 24 50 20 32 3e 4e 55 4c 0a 09 64 65 6c ers$P 2>NUL..del
d860: 20 6d 6b 76 65 72 73 69 6f 6e 24 45 20 32 3e 4e mkversion$E 2>N
d870: 55 4c 0a 09 64 65 6c 20 6d 6b 76 65 72 73 69 6f UL..del mkversio
d880: 6e 24 50 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 6d n$P 2>NUL..del m
d890: 6b 63 73 73 24 45 20 32 3e 4e 55 4c 0a 09 64 65 kcss$E 2>NUL..de
d8a0: 6c 20 6d 6b 63 73 73 24 50 20 32 3e 4e 55 4c 0a l mkcss$P 2>NUL.
d8b0: 09 64 65 6c 20 63 6f 64 65 63 68 65 63 6b 31 24 .del codecheck1$
d8c0: 45 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 63 6f 64 E 2>NUL..del cod
d8d0: 65 63 68 65 63 6b 31 24 50 20 32 3e 4e 55 4c 0a echeck1$P 2>NUL.
d8e0: 09 64 65 6c 20 6d 6b 62 75 69 6c 74 69 6e 24 45 .del mkbuiltin$E
d8f0: 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 6d 6b 62 75 2>NUL..del mkbu
d900: 69 6c 74 69 6e 24 50 20 32 3e 4e 55 4c 0a 0a 24 iltin$P 2>NUL..$
d910: 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 24 4f 20 (OBJDIR)\json$O
d920: 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e : $(SRCDIR)\json
d930: 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 _detail.h.$(OBJD
d940: 49 52 29 5c 6a 73 6f 6e 5f 61 72 74 69 66 61 63 IR)\json_artifac
d950: 74 24 4f 20 3a 20 24 28 53 52 43 44 49 52 29 5c t$O : $(SRCDIR)\
d960: 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 json_detail.h.$(
d970: 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f 62 72 61 OBJDIR)\json_bra
d980: 6e 63 68 24 4f 20 3a 20 24 28 53 52 43 44 49 52 nch$O : $(SRCDIR
d990: 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 0a )\json_detail.h.
d9a0: 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f 63 $(OBJDIR)\json_c
d9b0: 6f 6e 66 69 67 24 4f 20 3a 20 24 28 53 52 43 44 onfig$O : $(SRCD
d9c0: 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e IR)\json_detail.
d9d0: 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e h.$(OBJDIR)\json
d9e0: 5f 64 69 66 66 24 4f 20 3a 20 24 28 53 52 43 44 _diff$O : $(SRCD
d9f0: 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e IR)\json_detail.
da00: 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e h.$(OBJDIR)\json
da10: 5f 64 69 72 24 4f 20 3a 20 24 28 53 52 43 44 49 _dir$O : $(SRCDI
da20: 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e 68 R)\json_detail.h
da30: 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e 5f .$(OBJDIR)\json_
da40: 66 69 6e 66 6f 24 4f 20 3a 20 24 28 53 52 43 44 finfo$O : $(SRCD
da50: 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c 2e IR)\json_detail.
da60: 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f 6e h.$(OBJDIR)\json
da70: 5f 6c 6f 67 69 6e 24 4f 20 3a 20 24 28 53 52 43 _login$O : $(SRC
da80: 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 6c DIR)\json_detail
da90: 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 6f .h.$(OBJDIR)\jso
daa0: 6e 5f 71 75 65 72 79 24 4f 20 3a 20 24 28 53 52 n_query$O : $(SR
dab0: 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 61 69 CDIR)\json_detai
dac0: 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c 6a 73 l.h.$(OBJDIR)\js
dad0: 6f 6e 5f 72 65 70 6f 72 74 24 4f 20 3a 20 24 28 on_report$O : $(
dae0: 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 74 SRCDIR)\json_det
daf0: 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 29 5c ail.h.$(OBJDIR)\
db00: 6a 73 6f 6e 5f 73 74 61 74 75 73 24 4f 20 3a 20 json_status$O :
db10: 24 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 $(SRCDIR)\json_d
db20: 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 etail.h.$(OBJDIR
db30: 29 5c 6a 73 6f 6e 5f 74 61 67 24 4f 20 3a 20 24 )\json_tag$O : $
db40: 28 53 52 43 44 49 52 29 5c 6a 73 6f 6e 5f 64 65 (SRCDIR)\json_de
db50: 74 61 69 6c 2e 68 0a 24 28 4f 42 4a 44 49 52 29 tail.h.$(OBJDIR)
db60: 5c 6a 73 6f 6e 5f 74 69 6d 65 6c 69 6e 65 24 4f \json_timeline$O
db70: 20 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f : $(SRCDIR)\jso
db80: 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a n_detail.h.$(OBJ
db90: 44 49 52 29 5c 6a 73 6f 6e 5f 75 73 65 72 24 4f DIR)\json_user$O
dba0: 20 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f : $(SRCDIR)\jso
dbb0: 6e 5f 64 65 74 61 69 6c 2e 68 0a 24 28 4f 42 4a n_detail.h.$(OBJ
dbc0: 44 49 52 29 5c 6a 73 6f 6e 5f 77 69 6b 69 24 4f DIR)\json_wiki$O
dbd0: 20 3a 20 24 28 53 52 43 44 49 52 29 5c 6a 73 6f : $(SRCDIR)\jso
dbe0: 6e 5f 64 65 74 61 69 6c 2e 68 0a 7d 0a 66 6f 72 n_detail.h.}.for
dbf0: 65 61 63 68 20 73 20 5b 6c 73 6f 72 74 20 24 73 each s [lsort $s
dc00: 72 63 5d 20 7b 0a 20 20 77 72 69 74 65 6c 6e 20 rc] {. writeln
dc10: 22 5c 24 28 4f 58 29 5c 5c 24 73 5c 24 4f 20 3a "\$(OX)\\$s\$O :
dc20: 20 24 7b 73 7d 5f 2e 63 20 24 7b 73 7d 2e 68 22 ${s}_.c ${s}.h"
dc30: 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 74 5c 24 . writeln "\t\$
dc40: 28 54 43 43 29 20 2f 46 6f 5c 24 40 20 2d 63 20 (TCC) /Fo\$@ -c
dc50: 24 7b 73 7d 5f 2e 63 5c 6e 22 0a 20 20 77 72 69 ${s}_.c\n". wri
dc60: 74 65 6c 6e 20 22 24 7b 73 7d 5f 2e 63 20 3a 20 teln "${s}_.c :
dc70: 5c 24 28 53 52 43 44 49 52 29 5c 5c 24 73 2e 63 \$(SRCDIR)\\$s.c
dc80: 22 0a 20 20 77 72 69 74 65 6c 6e 20 22 5c 74 74 ". writeln "\tt
dc90: 72 61 6e 73 6c 61 74 65 5c 24 45 20 5c 24 2a 2a ranslate\$E \$**
dca0: 20 3e 20 5c 24 40 5c 6e 22 0a 7d 0a 0a 77 72 69 > \$@\n".}..wri
dcb0: 74 65 6c 6e 20 22 66 6f 73 73 69 6c 2e 72 65 73 teln "fossil.res
dcc0: 20 3a 20 5c 24 42 5c 5c 77 69 6e 5c 5c 66 6f 73 : \$B\\win\\fos
dcd0: 73 69 6c 2e 72 63 22 0a 77 72 69 74 65 6c 6e 20 sil.rc".writeln
dce0: 22 5c 74 5c 24 28 52 43 43 29 20 20 2f 66 6f 20 "\t\$(RCC) /fo
dcf0: 5c 24 40 20 5c 24 2a 2a 5c 6e 22 0a 0a 77 72 69 \$@ \$**\n"..wri
dd00: 74 65 6c 6e 20 22 68 65 61 64 65 72 73 3a 20 6d teln "headers: m
dd10: 61 6b 65 68 65 61 64 65 72 73 5c 24 45 20 70 61 akeheaders\$E pa
dd20: 67 65 5f 69 6e 64 65 78 2e 68 20 62 75 69 6c 74 ge_index.h built
dd30: 69 6e 5f 64 61 74 61 2e 68 20 64 65 66 61 75 6c in_data.h defaul
dd40: 74 5f 63 73 73 2e 68 20 56 45 52 53 49 4f 4e 2e t_css.h VERSION.
dd50: 68 22 0a 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 h".writeln -none
dd60: 77 6c 69 6e 65 20 22 5c 74 6d 61 6b 65 68 65 61 wline "\tmakehea
dd70: 64 65 72 73 5c 24 45 20 22 0a 73 65 74 20 69 20 ders\$E ".set i
dd80: 30 0a 66 6f 72 65 61 63 68 20 73 20 5b 6c 73 6f 0.foreach s [lso
dd90: 72 74 20 24 73 72 63 5d 20 7b 0a 20 20 69 66 20 rt $src] {. if
dda0: 7b 24 69 20 3e 20 30 7d 20 7b 0a 20 20 20 20 77 {$i > 0} {. w
ddb0: 72 69 74 65 6c 6e 20 22 20 5c 5c 22 0a 20 20 20 riteln " \\".
ddc0: 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 77 6c writeln -nonewl
ddd0: 69 6e 65 20 22 5c 74 5c 74 5c 74 22 0a 20 20 7d ine "\t\t\t". }
dde0: 0a 20 20 77 72 69 74 65 6c 6e 20 2d 6e 6f 6e 65 . writeln -none
ddf0: 77 6c 69 6e 65 20 22 24 7b 73 7d 5f 2e 63 3a 24 wline "${s}_.c:$
de00: 73 2e 68 22 3b 20 69 6e 63 72 20 69 0a 7d 0a 77 s.h"; incr i.}.w
de10: 72 69 74 65 6c 6e 20 22 20 5c 5c 5c 6e 5c 74 5c riteln " \\\n\t\
de20: 74 5c 74 5c 24 28 53 52 43 44 49 52 29 5c 5c 73 t\t\$(SRCDIR)\\s
de30: 71 6c 69 74 65 33 2e 68 20 5c 5c 22 0a 77 72 69 qlite3.h \\".wri
de40: 74 65 6c 6e 20 22 5c 74 5c 74 5c 74 5c 24 28 53 teln "\t\t\t\$(S
de50: 52 43 44 49 52 29 5c 5c 74 68 2e 68 20 5c 5c 22 RCDIR)\\th.h \\"
de60: 0a 77 72 69 74 65 6c 6e 20 22 5c 74 5c 74 5c 74 .writeln "\t\t\t
de70: 56 45 52 53 49 4f 4e 2e 68 20 5c 5c 22 0a 77 72 VERSION.h \\".wr
de80: 69 74 65 6c 6e 20 22 5c 74 5c 74 5c 74 5c 24 28 iteln "\t\t\t\$(
de90: 53 52 43 44 49 52 29 5c 5c 63 73 6f 6e 5f 61 6d SRCDIR)\\cson_am
dea0: 61 6c 67 61 6d 61 74 69 6f 6e 2e 68 22 0a 77 72 algamation.h".wr
deb0: 69 74 65 6c 6e 20 22 5c 74 40 63 6f 70 79 20 2f iteln "\t@copy /
dec0: 59 20 6e 75 6c 3a 20 68 65 61 64 65 72 73 22 0a Y nul: headers".
ded0: 0a 0a 63 6c 6f 73 65 20 24 6f 75 74 70 75 74 5f ..close $output_
dee0: 66 69 6c 65 0a 23 0a 23 20 45 6e 64 20 6f 66 20 file.#.# End of
def0: 74 68 65 20 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 the win/Makefile
df00: 2e 6d 73 63 20 6f 75 74 70 75 74 0a 23 23 23 23 .msc output.####
df10: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df40: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df50: 23 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 ##########.#####
df60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
df90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
dfa0: 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 23 #########.######
dfb0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
dfc0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
dfd0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
dfe0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
dff0: 23 23 23 23 23 23 23 23 0a 23 20 42 65 67 69 6e ########.# Begin
e000: 20 77 69 6e 2f 4d 61 6b 65 66 69 6c 65 2e 50 65 win/Makefile.Pe
e010: 6c 6c 65 73 43 47 4d 61 6b 65 20 6f 75 74 70 75 llesCGMake outpu
e020: 74 0a 23 0a 70 75 74 73 20 22 62 75 69 6c 64 69 t.#.puts "buildi
e030: 6e 67 20 2e 2e 2f 77 69 6e 2f 4d 61 6b 65 66 69 ng ../win/Makefi
e040: 6c 65 2e 50 65 6c 6c 65 73 43 47 4d 61 6b 65 22 le.PellesCGMake"
e050: 0a 73 65 74 20 6f 75 74 70 75 74 5f 66 69 6c 65 .set output_file
e060: 20 5b 6f 70 65 6e 20 2e 2e 2f 77 69 6e 2f 4d 61 [open ../win/Ma
e070: 6b 65 66 69 6c 65 2e 50 65 6c 6c 65 73 43 47 4d kefile.PellesCGM
e080: 61 6b 65 20 77 5d 0a 66 63 6f 6e 66 69 67 75 72 ake w].fconfigur
e090: 65 20 24 6f 75 74 70 75 74 5f 66 69 6c 65 20 2d e $output_file -
e0a0: 74 72 61 6e 73 6c 61 74 69 6f 6e 20 62 69 6e 61 translation bina
e0b0: 72 79 0a 0a 77 72 69 74 65 6c 6e 20 5b 73 74 72 ry..writeln [str
e0c0: 69 6e 67 20 6d 61 70 20 5b 6c 69 73 74 20 5c 0a ing map [list \.
e0d0: 20 20 20 20 3c 3c 3c 53 51 4c 49 54 45 5f 4f 50 <<<SQLITE_OP
e0e0: 54 49 4f 4e 53 3e 3e 3e 20 5b 6a 6f 69 6e 20 24 TIONS>>> [join $
e0f0: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4f 50 54 SQLITE_WIN32_OPT
e100: 49 4f 4e 53 20 7b 20 7d 5d 20 5c 0a 20 20 20 20 IONS { }] \.
e110: 3c 3c 3c 53 48 45 4c 4c 5f 4f 50 54 49 4f 4e 53 <<<SHELL_OPTIONS
e120: 3e 3e 3e 20 5b 6a 6f 69 6e 20 24 53 48 45 4c 4c >>> [join $SHELL
e130: 5f 57 49 4e 33 32 5f 4f 50 54 49 4f 4e 53 20 7b _WIN32_OPTIONS {
e140: 20 7d 5d 5d 20 7b 23 0a 23 23 23 23 23 23 23 23 }]] {#.########
e150: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e160: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e170: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e180: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e190: 23 23 23 23 23 23 0a 23 20 57 41 52 4e 49 4e 47 ######.# WARNING
e1a0: 3a 20 44 4f 20 4e 4f 54 20 45 44 49 54 2c 20 41 : DO NOT EDIT, A
e1b0: 55 54 4f 4d 41 54 49 43 41 4c 4c 59 20 47 45 4e UTOMATICALLY GEN
e1c0: 45 52 41 54 45 44 20 46 49 4c 45 20 28 53 45 45 ERATED FILE (SEE
e1d0: 20 22 73 72 63 2f 6d 61 6b 65 6d 61 6b 65 2e 74 "src/makemake.t
e1e0: 63 6c 22 29 0a 23 23 23 23 23 23 23 23 23 23 23 cl").###########
e1f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e200: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e210: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e220: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################
e230: 23 23 23 0a 23 0a 23 20 54 68 69 73 20 66 69 6c ###.#.# This fil
e240: 65 20 69 73 20 61 75 74 6f 6d 61 74 69 63 61 6c e is automatical
e250: 6c 79 20 67 65 6e 65 72 61 74 65 64 2e 20 20 49 ly generated. I
e260: 6e 73 74 65 61 64 20 6f 66 20 65 64 69 74 69 6e nstead of editin
e270: 67 20 74 68 69 73 0a 23 20 66 69 6c 65 2c 20 65 g this.# file, e
e280: 64 69 74 20 22 6d 61 6b 65 6d 61 6b 65 2e 74 63 dit "makemake.tc
e290: 6c 22 20 74 68 65 6e 20 72 75 6e 20 22 74 63 6c l" then run "tcl
e2a0: 73 68 20 6d 61 6b 65 6d 61 6b 65 2e 74 63 6c 22 sh makemake.tcl"
e2b0: 0a 23 20 74 6f 20 72 65 67 65 6e 65 72 61 74 65 .# to regenerate
e2c0: 20 74 68 69 73 20 66 69 6c 65 2e 0a 23 0a 23 20 this file..#.#
e2d0: 48 6f 77 54 6f 0a 23 20 2d 2d 2d 2d 2d 0a 23 0a HowTo.# -----.#.
e2e0: 23 20 54 68 69 73 20 69 73 20 61 20 4d 61 6b 65 # This is a Make
e2f0: 66 69 6c 65 20 74 6f 20 63 6f 6d 70 69 6c 65 20 file to compile
e300: 66 6f 73 73 69 6c 20 77 69 74 68 20 50 65 6c 6c fossil with Pell
e310: 65 73 43 20 66 72 6f 6d 0a 23 20 20 68 74 74 70 esC from.# http
e320: 3a 2f 2f 77 77 77 2e 73 6d 6f 72 67 61 73 62 6f ://www.smorgasbo
e330: 72 64 65 74 2e 63 6f 6d 2f 70 65 6c 6c 65 73 63 rdet.com/pellesc
e340: 2f 69 6e 64 65 78 2e 68 74 6d 0a 23 20 49 6e 20 /index.htm.# In
e350: 61 64 64 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 addition to the
e360: 43 6f 6d 70 69 6c 65 72 20 65 6e 76 72 69 6f 6e Compiler envrion
e370: 6d 65 6e 74 2c 20 79 6f 75 20 6e 65 65 64 0a 23 ment, you need.#
e380: 20 20 67 6d 61 6b 65 20 66 72 6f 6d 20 68 74 74 gmake from htt
e390: 70 3a 2f 2f 73 6f 75 72 63 65 66 6f 72 67 65 2e p://sourceforge.
e3a0: 6e 65 74 2f 70 72 6f 6a 65 63 74 73 2f 75 6e 78 net/projects/unx
e3b0: 75 74 69 6c 73 2f 2c 20 50 65 6c 6c 65 73 20 6d utils/, Pelles m
e3c0: 61 6b 65 20 76 65 72 73 69 6f 6e 0a 23 20 20 20 ake version.#
e3d0: 20 20 20 20 20 63 6f 75 6c 64 6e 27 74 20 68 61 couldn't ha
e3e0: 6e 64 6c 65 20 74 68 65 20 63 6f 6d 70 6c 65 78 ndle the complex
e3f0: 20 64 65 70 65 6e 64 65 6e 63 69 65 73 20 69 6e dependencies in
e400: 20 74 68 69 73 20 62 75 69 6c 64 0a 23 20 20 7a this build.# z
e410: 6c 69 62 20 73 6f 75 72 63 65 73 0a 23 20 54 68 lib sources.# Th
e420: 65 6e 20 79 6f 75 20 64 6f 0a 23 20 31 2e 20 63 en you do.# 1. c
e430: 72 65 61 74 65 20 61 20 64 69 72 65 63 74 6f 72 reate a director
e440: 79 20 50 65 6c 6c 65 73 43 20 69 6e 20 74 68 65 y PellesC in the
e450: 20 70 72 6f 6a 65 63 74 20 72 6f 6f 74 20 64 69 project root di
e460: 72 65 63 74 6f 72 79 0a 23 20 32 2e 20 43 68 61 rectory.# 2. Cha
e470: 6e 67 65 20 74 68 65 20 76 61 72 69 61 62 6c 65 nge the variable
e480: 73 20 50 65 6c 6c 65 73 43 44 69 72 2f 5a 4c 49 s PellesCDir/ZLI
e490: 42 53 52 43 44 49 52 20 74 6f 20 74 68 65 20 70 BSRCDIR to the p
e4a0: 61 74 68 20 6f 66 20 79 6f 75 72 20 69 6e 73 74 ath of your inst
e4b0: 61 6c 6c 61 74 69 6f 6e 0a 23 20 33 2e 20 6f 70 allation.# 3. op
e4c0: 65 6e 20 61 20 64 6f 73 20 70 72 6f 6d 70 74 20 en a dos prompt
e4d0: 77 69 6e 64 6f 77 20 61 6e 64 20 63 68 61 6e 67 window and chang
e4e0: 65 20 77 6f 72 6b 69 6e 67 20 64 69 72 65 63 74 e working direct
e4f0: 6f 72 79 20 69 6e 74 6f 20 50 65 6c 6c 65 73 43 ory into PellesC
e500: 20 28 73 74 65 70 20 31 29 0a 23 20 34 2e 20 72 (step 1).# 4. r
e510: 75 6e 20 67 6d 61 6b 65 20 2d 66 20 2e 2e 5c 77 un gmake -f ..\w
e520: 69 6e 5c 4d 61 6b 65 66 69 6c 65 2e 50 65 6c 6c in\Makefile.Pell
e530: 65 73 43 47 4d 61 6b 65 0a 23 0a 23 20 74 68 69 esCGMake.#.# thi
e540: 73 20 66 69 6c 65 20 69 73 20 74 65 73 74 65 64 s file is tested
e550: 20 77 69 74 68 0a 23 20 20 20 50 65 6c 6c 65 73 with.# Pelles
e560: 43 20 20 20 20 20 20 20 20 20 35 2e 30 30 2e 31 C 5.00.1
e570: 33 0a 23 20 20 20 67 6d 61 6b 65 20 20 20 20 20 3.# gmake
e580: 20 20 20 20 20 20 33 2e 38 30 0a 23 20 20 20 7a 3.80.# z
e590: 6c 69 62 20 73 6f 75 72 63 65 73 20 20 20 20 31 lib sources 1
e5a0: 2e 32 2e 35 0a 23 20 20 20 57 69 6e 64 6f 77 73 .2.5.# Windows
e5b0: 20 58 50 20 53 50 20 32 0a 23 20 61 6e 64 0a 23 XP SP 2.# and.#
e5c0: 20 20 20 50 65 6c 6c 65 73 43 20 20 20 20 20 20 PellesC
e5d0: 20 20 20 36 2e 30 30 2e 34 0a 23 20 20 20 67 6d 6.00.4.# gm
e5e0: 61 6b 65 20 20 20 20 20 20 20 20 20 20 20 33 2e ake 3.
e5f0: 38 30 0a 23 20 20 20 7a 6c 69 62 20 73 6f 75 72 80.# zlib sour
e600: 63 65 73 20 20 20 20 31 2e 32 2e 35 0a 23 20 20 ces 1.2.5.#
e610: 20 57 69 6e 64 6f 77 73 20 37 20 48 6f 6d 65 20 Windows 7 Home
e620: 50 72 65 6d 69 75 6d 0a 23 0a 0a 23 0a 50 65 6c Premium.#..#.Pel
e630: 6c 65 73 43 44 69 72 3d 63 3a 5c 50 72 6f 67 72 lesCDir=c:\Progr
e640: 61 6d 6d 65 5c 50 65 6c 6c 65 73 43 0a 0a 23 20 amme\PellesC..#
e650: 53 65 6c 65 63 74 20 62 65 74 77 65 65 6e 20 33 Select between 3
e660: 32 2f 36 34 20 62 69 74 20 63 6f 64 65 2c 20 64 2/64 bit code, d
e670: 65 66 61 75 6c 74 20 69 73 20 33 32 20 62 69 74 efault is 32 bit
e680: 0a 23 54 41 52 47 45 54 56 45 52 53 49 4f 4e 3d .#TARGETVERSION=
e690: 36 34 0a 0a 69 66 65 71 20 28 24 28 54 41 52 47 64..ifeq ($(TARG
e6a0: 45 54 56 45 52 53 49 4f 4e 29 2c 36 34 29 0a 23 ETVERSION),64).#
e6b0: 20 36 34 20 62 69 74 20 76 65 72 73 69 6f 6e 0a 64 bit version.
e6c0: 54 41 52 47 45 54 4d 41 43 48 49 4e 45 5f 43 43 TARGETMACHINE_CC
e6d0: 3d 61 6d 64 36 34 0a 54 41 52 47 45 54 4d 41 43 =amd64.TARGETMAC
e6e0: 48 49 4e 45 5f 4c 4e 3d 61 6d 64 36 34 0a 54 41 HINE_LN=amd64.TA
e6f0: 52 47 45 54 45 58 54 45 4e 44 3d 36 34 0a 65 6c RGETEXTEND=64.el
e700: 73 65 0a 23 20 33 32 20 62 69 74 20 76 65 72 73 se.# 32 bit vers
e710: 69 6f 6e 0a 54 41 52 47 45 54 4d 41 43 48 49 4e ion.TARGETMACHIN
e720: 45 5f 43 43 3d 78 38 36 0a 54 41 52 47 45 54 4d E_CC=x86.TARGETM
e730: 41 43 48 49 4e 45 5f 4c 4e 3d 69 78 38 36 0a 54 ACHINE_LN=ix86.T
e740: 41 52 47 45 54 45 58 54 45 4e 44 3d 0a 65 6e 64 ARGETEXTEND=.end
e750: 69 66 0a 0a 23 20 64 65 66 69 6e 65 20 74 68 65 if..# define the
e760: 20 70 72 6f 6a 65 63 74 20 64 69 72 65 63 74 6f project directo
e770: 72 69 65 73 0a 42 3d 2e 2e 0a 53 52 43 44 49 52 ries.B=...SRCDIR
e780: 3d 24 28 42 29 2f 73 72 63 2f 0a 57 49 4e 44 49 =$(B)/src/.WINDI
e790: 52 3d 24 28 42 29 2f 77 69 6e 2f 0a 5a 4c 49 42 R=$(B)/win/.ZLIB
e7a0: 53 52 43 44 49 52 3d 2e 2e 2f 2e 2e 2f 7a 6c 69 SRCDIR=../../zli
e7b0: 62 2f 0a 0a 23 20 64 65 66 69 6e 65 20 6c 69 6e b/..# define lin
e7c0: 6b 65 72 20 63 6f 6d 6d 61 6e 64 20 61 6e 64 20 ker command and
e7d0: 6f 70 74 69 6f 6e 73 0a 4c 49 4e 4b 3d 24 28 50 options.LINK=$(P
e7e0: 65 6c 6c 65 73 43 44 69 72 29 2f 62 69 6e 2f 70 ellesCDir)/bin/p
e7f0: 6f 6c 69 6e 6b 2e 65 78 65 0a 4c 49 4e 4b 46 4c olink.exe.LINKFL
e800: 41 47 53 3d 2d 73 75 62 73 79 73 74 65 6d 3a 63 AGS=-subsystem:c
e810: 6f 6e 73 6f 6c 65 20 2d 6d 61 63 68 69 6e 65 3a onsole -machine:
e820: 24 28 54 41 52 47 45 54 4d 41 43 48 49 4e 45 5f $(TARGETMACHINE_
e830: 4c 4e 29 20 2f 4c 49 42 50 41 54 48 3a 24 28 50 LN) /LIBPATH:$(P
e840: 65 6c 6c 65 73 43 44 69 72 29 5c 6c 69 62 5c 77 ellesCDir)\lib\w
e850: 69 6e 24 28 54 41 52 47 45 54 45 58 54 45 4e 44 in$(TARGETEXTEND
e860: 29 20 2f 4c 49 42 50 41 54 48 3a 24 28 50 65 6c ) /LIBPATH:$(Pel
e870: 6c 65 73 43 44 69 72 29 5c 6c 69 62 20 6b 65 72 lesCDir)\lib ker
e880: 6e 65 6c 33 32 2e 6c 69 62 20 61 64 76 61 70 69 nel32.lib advapi
e890: 33 32 2e 6c 69 62 20 64 65 6c 61 79 69 6d 70 24 32.lib delayimp$
e8a0: 28 54 41 52 47 45 54 45 58 54 45 4e 44 29 2e 6c (TARGETEXTEND).l
e8b0: 69 62 20 57 73 6f 63 6b 33 32 2e 6c 69 62 20 43 ib Wsock32.lib C
e8c0: 72 74 6d 74 24 28 54 41 52 47 45 54 45 58 54 45 rtmt$(TARGETEXTE
e8d0: 4e 44 29 2e 6c 69 62 0a 0a 23 20 64 65 66 69 6e ND).lib..# defin
e8e0: 65 20 73 74 61 6e 64 61 72 64 20 43 2d 63 6f 6d e standard C-com
e8f0: 70 69 6c 65 72 20 61 6e 64 20 66 6c 61 67 73 2c piler and flags,
e900: 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 69 6c 65 used to compile
e910: 0a 23 20 74 68 65 20 66 6f 73 73 69 6c 20 62 69 .# the fossil bi
e920: 6e 61 72 79 2e 20 53 6f 6d 65 20 73 70 65 63 69 nary. Some speci
e930: 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 66 al definitions f
e940: 6f 6c 6c 6f 77 20 66 6f 72 0a 23 20 73 70 65 63 ollow for.# spec
e950: 69 61 6c 20 66 69 6c 65 73 20 66 6f 6c 6c 6f 77 ial files follow
e960: 0a 43 43 3d 24 28 50 65 6c 6c 65 73 43 44 69 72 .CC=$(PellesCDir
e970: 29 5c 62 69 6e 5c 70 6f 63 63 2e 65 78 65 0a 44 )\bin\pocc.exe.D
e980: 45 46 49 4e 45 53 3d 2d 44 5f 70 67 6d 70 74 72 EFINES=-D_pgmptr
e990: 3d 67 2e 61 72 67 76 5b 30 5d 0a 43 43 46 4c 41 =g.argv[0].CCFLA
e9a0: 47 53 3d 2d 54 24 28 54 41 52 47 45 54 4d 41 43 GS=-T$(TARGETMAC
e9b0: 48 49 4e 45 5f 43 43 29 2d 63 6f 66 66 20 2d 4f HINE_CC)-coff -O
e9c0: 74 20 2d 57 32 20 2d 47 64 20 2d 47 6f 20 2d 5a t -W2 -Gd -Go -Z
e9d0: 65 20 2d 4d 54 20 24 28 44 45 46 49 4e 45 53 29 e -MT $(DEFINES)
e9e0: 0a 49 4e 43 4c 55 44 45 3d 2f 49 20 24 28 50 65 .INCLUDE=/I $(Pe
e9f0: 6c 6c 65 73 43 44 69 72 29 5c 49 6e 63 6c 75 64 llesCDir)\Includ
ea00: 65 5c 57 69 6e 20 2f 49 20 24 28 50 65 6c 6c 65 e\Win /I $(Pelle
ea10: 73 43 44 69 72 29 5c 49 6e 63 6c 75 64 65 20 2f sCDir)\Include /
ea20: 49 20 24 28 5a 4c 49 42 53 52 43 44 49 52 29 20 I $(ZLIBSRCDIR)
ea30: 2f 49 20 24 28 53 52 43 44 49 52 29 0a 0a 23 20 /I $(SRCDIR)..#
ea40: 64 65 66 69 6e 65 20 63 6f 6d 6d 61 6e 64 73 20 define commands
ea50: 66 6f 72 20 62 75 69 6c 64 69 6e 67 20 74 68 65 for building the
ea60: 20 77 69 6e 64 6f 77 73 20 72 65 73 6f 75 72 63 windows resourc
ea70: 65 20 66 69 6c 65 73 0a 52 45 53 4f 55 52 43 45 e files.RESOURCE
ea80: 3d 66 6f 73 73 69 6c 2e 72 65 73 0a 52 43 3d 24 =fossil.res.RC=$
ea90: 28 50 65 6c 6c 65 73 43 44 69 72 29 5c 62 69 6e (PellesCDir)\bin
eaa0: 5c 70 6f 72 63 2e 65 78 65 0a 52 43 46 4c 41 47 \porc.exe.RCFLAG
eab0: 53 3d 24 28 49 4e 43 4c 55 44 45 29 20 2d 44 5f S=$(INCLUDE) -D_
eac0: 5f 50 4f 43 43 5f 5f 3d 31 20 2d 44 5f 4d 5f 58 _POCC__=1 -D_M_X
ead0: 24 28 54 41 52 47 45 54 56 45 52 53 49 4f 4e 29 $(TARGETVERSION)
eae0: 0a 0a 23 20 64 65 66 69 6e 65 20 74 68 65 20 73 ..# define the s
eaf0: 70 65 63 69 61 6c 20 75 74 69 6c 69 74 69 65 73 pecial utilities
eb00: 20 66 69 6c 65 73 2c 20 6e 65 65 64 65 64 20 74 files, needed t
eb10: 6f 20 67 65 6e 65 72 61 74 65 0a 23 20 74 68 65 o generate.# the
eb20: 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 67 automatically g
eb30: 65 6e 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 enerated source
eb40: 66 69 6c 65 73 0a 55 54 49 4c 53 3d 74 72 61 6e files.UTILS=tran
eb50: 73 6c 61 74 65 2e 65 78 65 20 6d 6b 69 6e 64 65 slate.exe mkinde
eb60: 78 2e 65 78 65 20 6d 61 6b 65 68 65 61 64 65 72 x.exe makeheader
eb70: 73 2e 65 78 65 20 6d 6b 62 75 69 6c 74 69 6e 2e s.exe mkbuiltin.
eb80: 65 78 65 0a 55 54 49 4c 53 5f 4f 42 4a 3d 24 28 exe.UTILS_OBJ=$(
eb90: 55 54 49 4c 53 3a 2e 65 78 65 3d 2e 6f 62 6a 29 UTILS:.exe=.obj)
eba0: 0a 55 54 49 4c 53 5f 53 52 43 3d 24 28 66 6f 72 .UTILS_SRC=$(for
ebb0: 65 61 63 68 20 75 66 2c 24 28 55 54 49 4c 53 29 each uf,$(UTILS)
ebc0: 2c 24 28 53 52 43 44 49 52 29 24 28 75 66 3a 2e ,$(SRCDIR)$(uf:.
ebd0: 65 78 65 3d 2e 63 29 29 0a 0a 23 20 64 65 66 69 exe=.c))..# defi
ebe0: 6e 65 20 74 68 65 20 53 51 4c 69 74 65 20 66 69 ne the SQLite fi
ebf0: 6c 65 73 2c 20 77 68 69 63 68 20 6e 65 65 64 20 les, which need
ec00: 73 70 65 63 69 61 6c 20 66 6c 61 67 73 20 6f 6e special flags on
ec10: 20 63 6f 6d 70 69 6c 65 0a 53 51 4c 49 54 45 53 compile.SQLITES
ec20: 52 43 3d 73 71 6c 69 74 65 33 2e 63 0a 4f 52 49 RC=sqlite3.c.ORI
ec30: 47 53 51 4c 49 54 45 53 52 43 3d 24 28 66 6f 72 GSQLITESRC=$(for
ec40: 65 61 63 68 20 73 66 2c 24 28 53 51 4c 49 54 45 each sf,$(SQLITE
ec50: 53 52 43 29 2c 24 28 53 52 43 44 49 52 29 24 28 SRC),$(SRCDIR)$(
ec60: 73 66 29 29 0a 53 51 4c 49 54 45 4f 42 4a 3d 24 sf)).SQLITEOBJ=$
ec70: 28 66 6f 72 65 61 63 68 20 73 66 2c 24 28 53 51 (foreach sf,$(SQ
ec80: 4c 49 54 45 53 52 43 29 2c 24 28 73 66 3a 2e 63 LITESRC),$(sf:.c
ec90: 3d 2e 6f 62 6a 29 29 0a 53 51 4c 49 54 45 44 45 =.obj)).SQLITEDE
eca0: 46 49 4e 45 53 3d 3c 3c 3c 53 51 4c 49 54 45 5f FINES=<<<SQLITE_
ecb0: 4f 50 54 49 4f 4e 53 3e 3e 3e 0a 0a 23 20 64 65 OPTIONS>>>..# de
ecc0: 66 69 6e 65 20 74 68 65 20 53 51 4c 69 74 65 20 fine the SQLite
ecd0: 73 68 65 6c 6c 20 66 69 6c 65 73 2c 20 77 68 69 shell files, whi
ece0: 63 68 20 6e 65 65 64 20 73 70 65 63 69 61 6c 20 ch need special
ecf0: 66 6c 61 67 73 20 6f 6e 20 63 6f 6d 70 69 6c 65 flags on compile
ed00: 0a 53 51 4c 49 54 45 53 48 45 4c 4c 53 52 43 3d .SQLITESHELLSRC=
ed10: 73 68 65 6c 6c 2e 63 0a 4f 52 49 47 53 51 4c 49 shell.c.ORIGSQLI
ed20: 54 45 53 48 45 4c 4c 53 52 43 3d 24 28 66 6f 72 TESHELLSRC=$(for
ed30: 65 61 63 68 20 73 66 2c 24 28 53 51 4c 49 54 45 each sf,$(SQLITE
ed40: 53 48 45 4c 4c 53 52 43 29 2c 24 28 53 52 43 44 SHELLSRC),$(SRCD
ed50: 49 52 29 24 28 73 66 29 29 0a 53 51 4c 49 54 45 IR)$(sf)).SQLITE
ed60: 53 48 45 4c 4c 4f 42 4a 3d 24 28 66 6f 72 65 61 SHELLOBJ=$(forea
ed70: 63 68 20 73 66 2c 24 28 53 51 4c 49 54 45 53 48 ch sf,$(SQLITESH
ed80: 45 4c 4c 53 52 43 29 2c 24 28 73 66 3a 2e 63 3d ELLSRC),$(sf:.c=
ed90: 2e 6f 62 6a 29 29 0a 53 51 4c 49 54 45 53 48 45 .obj)).SQLITESHE
eda0: 4c 4c 44 45 46 49 4e 45 53 3d 3c 3c 3c 53 48 45 LLDEFINES=<<<SHE
edb0: 4c 4c 5f 4f 50 54 49 4f 4e 53 3e 3e 3e 0a 0a 23 LL_OPTIONS>>>..#
edc0: 20 64 65 66 69 6e 65 20 74 68 65 20 74 68 20 73 define the th s
edd0: 63 72 69 70 74 69 6e 67 20 66 69 6c 65 73 2c 20 cripting files,
ede0: 77 68 69 63 68 20 6e 65 65 64 20 73 70 65 63 69 which need speci
edf0: 61 6c 20 66 6c 61 67 73 20 6f 6e 20 63 6f 6d 70 al flags on comp
ee00: 69 6c 65 0a 54 48 53 52 43 3d 74 68 2e 63 20 74 ile.THSRC=th.c t
ee10: 68 5f 6c 61 6e 67 2e 63 0a 4f 52 49 47 54 48 53 h_lang.c.ORIGTHS
ee20: 52 43 3d 24 28 66 6f 72 65 61 63 68 20 73 66 2c RC=$(foreach sf,
ee30: 24 28 54 48 53 52 43 29 2c 24 28 53 52 43 44 49 $(THSRC),$(SRCDI
ee40: 52 29 24 28 73 66 29 29 0a 54 48 4f 42 4a 3d 24 R)$(sf)).THOBJ=$
ee50: 28 66 6f 72 65 61 63 68 20 73 66 2c 24 28 54 48 (foreach sf,$(TH
ee60: 53 52 43 29 2c 24 28 73 66 3a 2e 63 3d 2e 6f 62 SRC),$(sf:.c=.ob
ee70: 6a 29 29 0a 0a 23 20 64 65 66 69 6e 65 20 74 68 j))..# define th
ee80: 65 20 7a 6c 69 62 20 66 69 6c 65 73 2c 20 6e 65 e zlib files, ne
ee90: 65 64 65 64 20 62 79 20 74 68 69 73 20 63 6f 6d eded by this com
eea0: 70 69 6c 65 0a 5a 4c 49 42 53 52 43 3d 61 64 6c pile.ZLIBSRC=adl
eeb0: 65 72 33 32 2e 63 20 63 6f 6d 70 72 65 73 73 2e er32.c compress.
eec0: 63 20 63 72 63 33 32 2e 63 20 64 65 66 6c 61 74 c crc32.c deflat
eed0: 65 2e 63 20 67 7a 63 6c 6f 73 65 2e 63 20 67 7a e.c gzclose.c gz
eee0: 6c 69 62 2e 63 20 67 7a 72 65 61 64 2e 63 20 67 lib.c gzread.c g
eef0: 7a 77 72 69 74 65 2e 63 20 69 6e 66 62 61 63 6b zwrite.c infback
ef00: 2e 63 20 69 6e 66 66 61 73 74 2e 63 20 69 6e 66 .c inffast.c inf
ef10: 6c 61 74 65 2e 63 20 69 6e 66 74 72 65 65 73 2e late.c inftrees.
ef20: 63 20 74 72 65 65 73 2e 63 20 75 6e 63 6f 6d 70 c trees.c uncomp
ef30: 72 2e 63 20 7a 75 74 69 6c 2e 63 0a 4f 52 49 47 r.c zutil.c.ORIG
ef40: 5a 4c 49 42 53 52 43 3d 24 28 66 6f 72 65 61 63 ZLIBSRC=$(foreac
ef50: 68 20 73 66 2c 24 28 5a 4c 49 42 53 52 43 29 2c h sf,$(ZLIBSRC),
ef60: 24 28 5a 4c 49 42 53 52 43 44 49 52 29 24 28 73 $(ZLIBSRCDIR)$(s
ef70: 66 29 29 0a 5a 4c 49 42 4f 42 4a 3d 24 28 66 6f f)).ZLIBOBJ=$(fo
ef80: 72 65 61 63 68 20 73 66 2c 24 28 5a 4c 49 42 53 reach sf,$(ZLIBS
ef90: 52 43 29 2c 24 28 73 66 3a 2e 63 3d 2e 6f 62 6a RC),$(sf:.c=.obj
efa0: 29 29 0a 0a 23 20 64 65 66 69 6e 65 20 61 6c 6c ))..# define all
efb0: 20 66 6f 73 73 69 6c 20 73 6f 75 72 63 65 73 2c fossil sources,
efc0: 20 75 73 69 6e 67 20 74 68 65 20 73 74 61 6e 64 using the stand
efd0: 61 72 64 20 63 6f 6d 70 69 6c 65 20 61 6e 64 0a ard compile and.
efe0: 23 20 73 6f 75 72 63 65 20 67 65 6e 65 72 61 74 # source generat
eff0: 69 6f 6e 2e 20 54 68 65 73 65 20 61 72 65 20 61 ion. These are a
f000: 6c 6c 20 66 69 6c 65 73 20 69 6e 20 53 52 43 44 ll files in SRCD
f010: 49 52 2c 20 77 68 69 63 68 20 61 72 65 20 6e 6f IR, which are no
f020: 74 0a 23 20 6d 65 6e 74 69 6f 6e 65 64 20 61 73 t.# mentioned as
f030: 20 73 70 65 63 69 61 6c 20 66 69 6c 65 73 20 61 special files a
f040: 62 6f 76 65 3a 0a 4f 52 49 47 53 52 43 3d 24 28 bove:.ORIGSRC=$(
f050: 66 69 6c 74 65 72 2d 6f 75 74 20 24 28 55 54 49 filter-out $(UTI
f060: 4c 53 5f 53 52 43 29 20 24 28 4f 52 49 47 54 48 LS_SRC) $(ORIGTH
f070: 53 52 43 29 20 24 28 4f 52 49 47 53 51 4c 49 54 SRC) $(ORIGSQLIT
f080: 45 53 52 43 29 20 24 28 4f 52 49 47 53 51 4c 49 ESRC) $(ORIGSQLI
f090: 54 45 53 48 45 4c 4c 53 52 43 29 2c 24 28 77 69 TESHELLSRC),$(wi
f0a0: 6c 64 63 61 72 64 20 24 28 53 52 43 44 49 52 29 ldcard $(SRCDIR)
f0b0: 2a 2e 63 29 29 0a 53 52 43 3d 24 28 73 75 62 73 *.c)).SRC=$(subs
f0c0: 74 20 24 28 53 52 43 44 49 52 29 2c 2c 24 28 4f t $(SRCDIR),,$(O
f0d0: 52 49 47 53 52 43 29 29 0a 54 52 41 4e 53 4c 41 RIGSRC)).TRANSLA
f0e0: 54 45 44 53 52 43 3d 24 28 53 52 43 3a 2e 63 3d TEDSRC=$(SRC:.c=
f0f0: 5f 2e 63 29 0a 54 52 41 4e 53 4c 41 54 45 44 4f _.c).TRANSLATEDO
f100: 42 4a 3d 24 28 54 52 41 4e 53 4c 41 54 45 44 53 BJ=$(TRANSLATEDS
f110: 52 43 3a 2e 63 3d 2e 6f 62 6a 29 0a 0a 23 20 6d RC:.c=.obj)..# m
f120: 61 69 6e 20 74 61 72 67 65 74 20 66 69 6c 65 20 ain target file
f130: 69 73 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 is the applicati
f140: 6f 6e 0a 41 50 50 4c 49 43 41 54 49 4f 4e 3d 66 on.APPLICATION=f
f150: 6f 73 73 69 6c 2e 65 78 65 0a 0a 23 20 64 65 66 ossil.exe..# def
f160: 69 6e 65 20 74 68 65 20 73 74 61 6e 64 61 72 64 ine the standard
f170: 20 6d 61 6b 65 20 74 61 72 67 65 74 0a 2e 50 48 make target..PH
f180: 4f 4e 59 3a 09 64 65 66 61 75 6c 74 0a 64 65 66 ONY:.default.def
f190: 61 75 6c 74 3a 09 70 61 67 65 5f 69 6e 64 65 78 ault:.page_index
f1a0: 2e 68 20 62 75 69 6c 74 69 6e 5f 64 61 74 61 2e .h builtin_data.
f1b0: 68 20 68 65 61 64 65 72 73 20 24 28 41 50 50 4c h headers $(APPL
f1c0: 49 43 41 54 49 4f 4e 29 0a 0a 23 20 73 79 6d 62 ICATION)..# symb
f1d0: 6f 6c 69 63 20 74 61 72 67 65 74 20 74 6f 20 67 olic target to g
f1e0: 65 6e 65 72 61 74 65 20 74 68 65 20 73 6f 75 72 enerate the sour
f1f0: 63 65 20 67 65 6e 65 72 61 74 65 20 75 74 69 6c ce generate util
f200: 73 0a 2e 50 48 4f 4e 59 3a 09 75 74 69 6c 73 0a s..PHONY:.utils.
f210: 75 74 69 6c 73 3a 09 24 28 55 54 49 4c 53 29 0a utils:.$(UTILS).
f220: 0a 23 20 6c 69 6e 6b 20 75 74 69 6c 73 0a 24 28 .# link utils.$(
f230: 55 54 49 4c 53 29 20 76 65 72 73 69 6f 6e 2e 65 UTILS) version.e
f240: 78 65 3a 09 25 2e 65 78 65 3a 09 25 2e 6f 62 6a xe:.%.exe:.%.obj
f250: 0a 09 24 28 4c 49 4e 4b 29 20 24 28 4c 49 4e 4b ..$(LINK) $(LINK
f260: 46 4c 41 47 53 29 20 2d 6f 75 74 3a 22 24 40 22 FLAGS) -out:"$@"
f270: 20 24 3c 0a 0a 23 20 63 6f 6d 70 69 6c 69 6e 67 $<..# compiling
f280: 20 73 74 61 6e 64 61 72 64 20 66 6f 73 73 69 6c standard fossil
f290: 20 75 74 69 6c 73 0a 24 28 55 54 49 4c 53 5f 4f utils.$(UTILS_O
f2a0: 42 4a 29 3a 09 25 2e 6f 62 6a 3a 09 24 28 53 52 BJ):.%.obj:.$(SR
f2b0: 43 44 49 52 29 25 2e 63 0a 09 24 28 43 43 29 20 CDIR)%.c..$(CC)
f2c0: 24 28 43 43 46 4c 41 47 53 29 20 24 28 49 4e 43 $(CCFLAGS) $(INC
f2d0: 4c 55 44 45 29 20 22 24 3c 22 20 2d 46 6f 22 24 LUDE) "$<" -Fo"$
f2e0: 40 22 0a 0a 23 20 63 6f 6d 70 69 6c 65 20 73 70 @"..# compile sp
f2f0: 65 63 69 61 6c 20 77 69 6e 64 6f 77 73 20 75 74 ecial windows ut
f300: 69 6c 73 0a 76 65 72 73 69 6f 6e 2e 6f 62 6a 3a ils.version.obj:
f310: 09 24 28 53 52 43 44 49 52 29 6d 6b 76 65 72 73 .$(SRCDIR)mkvers
f320: 69 6f 6e 2e 63 0a 09 24 28 43 43 29 20 24 28 43 ion.c..$(CC) $(C
f330: 43 46 4c 41 47 53 29 20 24 28 49 4e 43 4c 55 44 CFLAGS) $(INCLUD
f340: 45 29 20 22 24 3c 22 20 2d 46 6f 22 24 40 22 0a E) "$<" -Fo"$@".
f350: 0a 23 20 67 65 6e 65 72 61 74 65 20 74 68 65 20 .# generate the
f360: 74 72 61 6e 73 6c 61 74 65 64 20 63 2d 73 6f 75 translated c-sou
f370: 72 63 65 20 66 69 6c 65 73 0a 24 28 54 52 41 4e rce files.$(TRAN
f380: 53 4c 41 54 45 44 53 52 43 29 3a 09 25 5f 2e 63 SLATEDSRC):.%_.c
f390: 3a 09 24 28 53 52 43 44 49 52 29 25 2e 63 20 74 :.$(SRCDIR)%.c t
f3a0: 72 61 6e 73 6c 61 74 65 2e 65 78 65 0a 09 74 72 ranslate.exe..tr
f3b0: 61 6e 73 6c 61 74 65 2e 65 78 65 20 24 3c 20 3e anslate.exe $< >
f3c0: 24 40 0a 0a 23 20 67 65 6e 65 72 61 74 65 20 74 $@..# generate t
f3d0: 68 65 20 69 6e 64 65 78 20 73 6f 75 72 63 65 2c he index source,
f3e0: 20 63 6f 6e 74 61 69 6e 69 6e 67 20 61 6c 6c 20 containing all
f3f0: 77 65 62 20 72 65 66 65 72 65 6e 63 65 73 2c 2e web references,.
f400: 2e 0a 70 61 67 65 5f 69 6e 64 65 78 2e 68 3a 09 ..page_index.h:.
f410: 24 28 54 52 41 4e 53 4c 41 54 45 44 53 52 43 29 $(TRANSLATEDSRC)
f420: 20 6d 6b 69 6e 64 65 78 2e 65 78 65 0a 09 6d 6b mkindex.exe..mk
f430: 69 6e 64 65 78 2e 65 78 65 20 24 28 54 52 41 4e index.exe $(TRAN
f440: 53 4c 41 54 45 44 53 52 43 29 20 3e 24 40 0a 0a SLATEDSRC) >$@..
f450: 62 75 69 6c 74 69 6e 5f 64 61 74 61 2e 68 3a 09 builtin_data.h:.
f460: 24 28 45 58 54 52 41 5f 46 49 4c 45 53 29 20 6d $(EXTRA_FILES) m
f470: 6b 62 75 69 6c 74 69 6e 2e 65 78 65 0a 09 6d 6b kbuiltin.exe..mk
f480: 62 75 69 6c 74 69 6e 2e 65 78 65 20 2d 2d 70 72 builtin.exe --pr
f490: 65 66 69 78 20 24 28 53 52 43 44 49 52 29 2f 20 efix $(SRCDIR)/
f4a0: 24 28 45 58 54 52 41 5f 46 49 4c 45 53 29 20 3e $(EXTRA_FILES) >
f4b0: 24 40 0a 0a 23 20 65 78 74 72 61 63 74 69 6e 67 $@..# extracting
f4c0: 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 20 66 72 version info fr
f4d0: 6f 6d 20 6d 61 6e 69 66 65 73 74 0a 56 45 52 53 om manifest.VERS
f4e0: 49 4f 4e 2e 68 3a 09 76 65 72 73 69 6f 6e 2e 65 ION.h:.version.e
f4f0: 78 65 20 2e 2e 5c 6d 61 6e 69 66 65 73 74 2e 75 xe ..\manifest.u
f500: 75 69 64 20 2e 2e 5c 6d 61 6e 69 66 65 73 74 20 uid ..\manifest
f510: 2e 2e 5c 56 45 52 53 49 4f 4e 0a 09 76 65 72 73 ..\VERSION..vers
f520: 69 6f 6e 2e 65 78 65 20 2e 2e 5c 6d 61 6e 69 66 ion.exe ..\manif
f530: 65 73 74 2e 75 75 69 64 20 2e 2e 5c 6d 61 6e 69 est.uuid ..\mani
f540: 66 65 73 74 20 2e 2e 5c 56 45 52 53 49 4f 4e 20 fest ..\VERSION
f550: 20 3e 24 40 0a 0a 64 65 66 61 75 6c 74 5f 63 73 >$@..default_cs
f560: 73 2e 68 3a 09 6d 6b 63 73 73 2e 65 78 65 20 64 s.h:.mkcss.exe d
f570: 65 66 61 75 6c 74 5f 63 73 73 2e 74 78 74 0a 09 efault_css.txt..
f580: 6d 6b 63 73 73 2e 65 78 65 20 64 65 66 61 75 6c mkcss.exe defaul
f590: 74 5f 63 73 73 2e 74 78 74 20 24 40 0a 0a 23 20 t_css.txt $@..#
f5a0: 67 65 6e 65 72 61 74 65 20 74 68 65 20 73 69 6d generate the sim
f5b0: 70 6c 69 66 69 65 64 20 68 65 61 64 65 72 73 0a plified headers.
f5c0: 68 65 61 64 65 72 73 3a 20 6d 61 6b 65 68 65 61 headers: makehea
f5d0: 64 65 72 73 2e 65 78 65 20 70 61 67 65 5f 69 6e ders.exe page_in
f5e0: 64 65 78 2e 68 20 62 75 69 6c 74 69 6e 5f 64 61 dex.h builtin_da
f5f0: 74 61 2e 68 20 64 65 66 61 75 6c 74 5f 63 73 73 ta.h default_css
f600: 2e 68 20 56 45 52 53 49 4f 4e 2e 68 20 2e 2e 2f .h VERSION.h ../
f610: 73 72 63 2f 73 71 6c 69 74 65 33 2e 68 20 2e 2e src/sqlite3.h ..
f620: 2f 73 72 63 2f 74 68 2e 68 0a 09 6d 61 6b 65 68 /src/th.h..makeh
f630: 65 61 64 65 72 73 2e 65 78 65 20 24 28 66 6f 72 eaders.exe $(for
f640: 65 61 63 68 20 74 73 2c 24 28 54 52 41 4e 53 4c each ts,$(TRANSL
f650: 41 54 45 44 53 52 43 29 2c 24 28 74 73 29 3a 24 ATEDSRC),$(ts):$
f660: 28 74 73 3a 5f 2e 63 3d 2e 68 29 29 20 2e 2e 2f (ts:_.c=.h)) ../
f670: 73 72 63 2f 73 71 6c 69 74 65 33 2e 68 20 2e 2e src/sqlite3.h ..
f680: 2f 73 72 63 2f 74 68 2e 68 20 56 45 52 53 49 4f /src/th.h VERSIO
f690: 4e 2e 68 0a 09 65 63 68 6f 20 44 6f 6e 65 20 3e N.h..echo Done >
f6a0: 24 40 0a 0a 23 20 63 6f 6d 70 69 6c 65 20 43 20 $@..# compile C
f6b0: 73 6f 75 72 63 65 73 20 77 69 74 68 20 72 65 6c sources with rel
f6c0: 65 76 61 6e 74 20 6f 70 74 69 6f 6e 73 0a 0a 24 evant options..$
f6d0: 28 54 52 41 4e 53 4c 41 54 45 44 4f 42 4a 29 3a (TRANSLATEDOBJ):
f6e0: 09 25 5f 2e 6f 62 6a 3a 09 25 5f 2e 63 20 25 2e .%_.obj:.%_.c %.
f6f0: 68 0a 09 24 28 43 43 29 20 24 28 43 43 46 4c 41 h..$(CC) $(CCFLA
f700: 47 53 29 20 24 28 49 4e 43 4c 55 44 45 29 20 22 GS) $(INCLUDE) "
f710: 24 3c 22 20 2d 46 6f 22 24 40 22 0a 0a 24 28 53 $<" -Fo"$@"..$(S
f720: 51 4c 49 54 45 4f 42 4a 29 3a 09 25 2e 6f 62 6a QLITEOBJ):.%.obj
f730: 3a 09 24 28 53 52 43 44 49 52 29 25 2e 63 20 24 :.$(SRCDIR)%.c $
f740: 28 53 52 43 44 49 52 29 25 2e 68 0a 09 24 28 43 (SRCDIR)%.h..$(C
f750: 43 29 20 24 28 43 43 46 4c 41 47 53 29 20 24 28 C) $(CCFLAGS) $(
f760: 53 51 4c 49 54 45 44 45 46 49 4e 45 53 29 20 24 SQLITEDEFINES) $
f770: 28 49 4e 43 4c 55 44 45 29 20 22 24 3c 22 20 2d (INCLUDE) "$<" -
f780: 46 6f 22 24 40 22 0a 0a 24 28 53 51 4c 49 54 45 Fo"$@"..$(SQLITE
f790: 53 48 45 4c 4c 4f 42 4a 29 3a 09 25 2e 6f 62 6a SHELLOBJ):.%.obj
f7a0: 3a 09 24 28 53 52 43 44 49 52 29 25 2e 63 0a 09 :.$(SRCDIR)%.c..
f7b0: 24 28 43 43 29 20 24 28 43 43 46 4c 41 47 53 29 $(CC) $(CCFLAGS)
f7c0: 20 24 28 53 51 4c 49 54 45 53 48 45 4c 4c 44 45 $(SQLITESHELLDE
f7d0: 46 49 4e 45 53 29 20 24 28 49 4e 43 4c 55 44 45 FINES) $(INCLUDE
f7e0: 29 20 22 24 3c 22 20 2d 46 6f 22 24 40 22 0a 0a ) "$<" -Fo"$@"..
f7f0: 24 28 54 48 4f 42 4a 29 3a 09 25 2e 6f 62 6a 3a $(THOBJ):.%.obj:
f800: 09 24 28 53 52 43 44 49 52 29 25 2e 63 20 24 28 .$(SRCDIR)%.c $(
f810: 53 52 43 44 49 52 29 74 68 2e 68 0a 09 24 28 43 SRCDIR)th.h..$(C
f820: 43 29 20 24 28 43 43 46 4c 41 47 53 29 20 24 28 C) $(CCFLAGS) $(
f830: 49 4e 43 4c 55 44 45 29 20 22 24 3c 22 20 2d 46 INCLUDE) "$<" -F
f840: 6f 22 24 40 22 0a 0a 24 28 5a 4c 49 42 4f 42 4a o"$@"..$(ZLIBOBJ
f850: 29 3a 09 25 2e 6f 62 6a 3a 09 24 28 5a 4c 49 42 ):.%.obj:.$(ZLIB
f860: 53 52 43 44 49 52 29 25 2e 63 0a 09 24 28 43 43 SRCDIR)%.c..$(CC
f870: 29 20 24 28 43 43 46 4c 41 47 53 29 20 24 28 49 ) $(CCFLAGS) $(I
f880: 4e 43 4c 55 44 45 29 20 22 24 3c 22 20 2d 46 6f NCLUDE) "$<" -Fo
f890: 22 24 40 22 0a 0a 23 20 63 72 65 61 74 65 20 74 "$@"..# create t
f8a0: 68 65 20 77 69 6e 64 6f 77 73 20 72 65 73 6f 75 he windows resou
f8b0: 72 63 65 20 77 69 74 68 20 69 63 6f 6e 20 61 6e rce with icon an
f8c0: 64 20 76 65 72 73 69 6f 6e 20 69 6e 66 6f 0a 24 d version info.$
f8d0: 28 52 45 53 4f 55 52 43 45 29 3a 09 25 2e 72 65 (RESOURCE):.%.re
f8e0: 73 3a 09 2e 2e 2f 77 69 6e 2f 25 2e 72 63 20 2e s:.../win/%.rc .
f8f0: 2e 2f 77 69 6e 2f 2a 2e 69 63 6f 0a 09 24 28 52 ./win/*.ico..$(R
f900: 43 29 20 24 28 52 43 46 4c 41 47 53 29 20 24 3c C) $(RCFLAGS) $<
f910: 20 2d 46 6f 22 24 40 22 0a 0a 23 20 6c 69 6e 6b -Fo"$@"..# link
f920: 20 74 68 65 20 61 70 70 6c 69 63 61 74 69 6f 6e the application
f930: 0a 24 28 41 50 50 4c 49 43 41 54 49 4f 4e 29 3a .$(APPLICATION):
f940: 09 24 28 54 52 41 4e 53 4c 41 54 45 44 4f 42 4a .$(TRANSLATEDOBJ
f950: 29 20 24 28 53 51 4c 49 54 45 4f 42 4a 29 20 24 ) $(SQLITEOBJ) $
f960: 28 53 51 4c 49 54 45 53 48 45 4c 4c 4f 42 4a 29 (SQLITESHELLOBJ)
f970: 20 24 28 54 48 4f 42 4a 29 20 24 28 5a 4c 49 42 $(THOBJ) $(ZLIB
f980: 4f 42 4a 29 20 68 65 61 64 65 72 73 20 24 28 52 OBJ) headers $(R
f990: 45 53 4f 55 52 43 45 29 0a 09 24 28 4c 49 4e 4b ESOURCE)..$(LINK
f9a0: 29 20 24 28 4c 49 4e 4b 46 4c 41 47 53 29 20 2d ) $(LINKFLAGS) -
f9b0: 6f 75 74 3a 22 24 40 22 20 24 28 54 52 41 4e 53 out:"$@" $(TRANS
f9c0: 4c 41 54 45 44 4f 42 4a 29 20 24 28 53 51 4c 49 LATEDOBJ) $(SQLI
f9d0: 54 45 4f 42 4a 29 20 24 28 53 51 4c 49 54 45 53 TEOBJ) $(SQLITES
f9e0: 48 45 4c 4c 4f 42 4a 29 20 24 28 54 48 4f 42 4a HELLOBJ) $(THOBJ
f9f0: 29 20 24 28 5a 4c 49 42 4f 42 4a 29 20 24 28 52 ) $(ZLIBOBJ) $(R
fa00: 45 53 4f 55 52 43 45 29 0a 0a 23 20 63 6c 65 61 ESOURCE)..# clea
fa10: 6e 75 70 0a 0a 2e 50 48 4f 4e 59 3a 20 63 6c 65 nup...PHONY: cle
fa20: 61 6e 0a 63 6c 65 61 6e 3a 0a 09 64 65 6c 20 2f an.clean:..del /
fa30: 46 20 24 28 54 52 41 4e 53 4c 41 54 45 44 4f 42 F $(TRANSLATEDOB
fa40: 4a 29 20 24 28 53 51 4c 49 54 45 4f 42 4a 29 20 J) $(SQLITEOBJ)
fa50: 24 28 54 48 4f 42 4a 29 20 24 28 5a 4c 49 42 4f $(THOBJ) $(ZLIBO
fa60: 42 4a 29 20 24 28 55 54 49 4c 53 5f 4f 42 4a 29 BJ) $(UTILS_OBJ)
fa70: 20 76 65 72 73 69 6f 6e 2e 6f 62 6a 0a 09 64 65 version.obj..de
fa80: 6c 20 2f 46 20 24 28 54 52 41 4e 53 4c 41 54 45 l /F $(TRANSLATE
fa90: 44 53 52 43 29 0a 09 64 65 6c 20 2f 46 20 2a 2e DSRC)..del /F *.
faa0: 68 20 68 65 61 64 65 72 73 0a 09 64 65 6c 20 2f h headers..del /
fab0: 46 20 24 28 52 45 53 4f 55 52 43 45 29 0a 0a 2e F $(RESOURCE)...
fac0: 50 48 4f 4e 59 3a 20 63 6c 6f 62 62 65 72 0a 63 PHONY: clobber.c
fad0: 6c 6f 62 62 65 72 3a 20 63 6c 65 61 6e 0a 09 64 lobber: clean..d
fae0: 65 6c 20 2f 46 20 2a 2e 65 78 65 0a 7d 5d 0a el /F *.exe.}].