summaryrefslogtreecommitdiff
path: root/win
diff options
context:
space:
mode:
authorcashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
committercashmere <cashmere@autistici.org>2026-09-04 09:05:24 +0200
commit4f49b16079b27d7ce633619e4cddfdf2bffbc952 (patch)
treec296c1e7f3c3e2f6859c6d3a1b1b208779b89679 /win
downloadrelic-master.tar.gz
initial commitHEADmaster
Diffstat (limited to 'win')
-rw-r--r--win/Makefile.dmc1039
-rw-r--r--win/Makefile.mingw2657
-rw-r--r--win/Makefile.mingw.mistachkin2588
-rw-r--r--win/Makefile.msc2359
-rw-r--r--win/build32.bat3
-rw-r--r--win/build64.bat3
-rwxr-xr-xwin/buildmsvc.bat413
-rw-r--r--win/fossil.exe.manifest43
-rw-r--r--win/fossil.icobin0 -> 12862 bytes
-rw-r--r--win/fossil.rc194
-rwxr-xr-xwin/include/dirent.h1160
-rw-r--r--win/include/unistd.h47
12 files changed, 10506 insertions, 0 deletions
diff --git a/win/Makefile.dmc b/win/Makefile.dmc
new file mode 100644
index 0000000..263987a
--- /dev/null
+++ b/win/Makefile.dmc
@@ -0,0 +1,1039 @@
+#
+##############################################################################
+# WARNING: DO NOT EDIT, AUTOMATICALLY GENERATED FILE (SEE "tools/makemake.tcl")
+##############################################################################
+#
+# This file is automatically generated. Instead of editing this
+# file, edit "makemake.tcl" then run "tclsh makemake.tcl"
+# to regenerate this file.
+#
+B = ..
+SRCDIR = $B\src
+SRCDIR_extsrc = $B\extsrc
+SRCDIR_tools = $B\tools
+OBJDIR = .
+O = .obj
+E = .exe
+
+
+# Maybe DMDIR, SSL or INCL needs adjustment
+DMDIR = c:\DM
+INCL = -I. -I$(SRCDIR) -I$(SRCDIR_extsrc) -I$B\win\include -I$(DMDIR)\extra\include
+
+#SSL = -DFOSSIL_ENABLE_SSL=1
+SSL =
+
+CFLAGS = -o
+BCC = $(DMDIR)\bin\dmc $(CFLAGS)
+TCC = $(DMDIR)\bin\dmc $(CFLAGS) $(DMCDEF) $(SSL) $(INCL)
+LIBS = $(DMDIR)\extra\lib\ zlib wsock32 advapi32 dnsapi
+
+SQLITE_OPTIONS = -DNDEBUG=1 -DSQLITE_DQS=0 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_DEPRECATED -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_SHARED_CACHE -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_MAX_EXPR_DEPTH=0 -DSQLITE_ENABLE_LOCKING_STYLE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_PERCENTILE -DSQLITE_ENABLE_SETLK_TIMEOUT -DSQLITE_ENABLE_STMTVTAB -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_TRUSTED_SCHEMA=0 -DHAVE_USLEEP
+
+SHELL_OPTIONS = -DNDEBUG=1 -DSQLITE_DQS=0 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_MEMSTATUS=0 -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS -DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_DEPRECATED -DSQLITE_OMIT_PROGRESS_CALLBACK -DSQLITE_OMIT_SHARED_CACHE -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_MAX_EXPR_DEPTH=0 -DSQLITE_ENABLE_LOCKING_STYLE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_ENABLE_PERCENTILE -DSQLITE_ENABLE_SETLK_TIMEOUT -DSQLITE_ENABLE_STMTVTAB -DSQLITE_HAVE_ZLIB -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_TRUSTED_SCHEMA=0 -DHAVE_USLEEP -Dmain=sqlite3_shell -DSQLITE_SHELL_IS_UTF8=1 -DSQLITE_OMIT_LOAD_EXTENSION=1 -DUSE_SYSTEM_SQLITE=$(USE_SYSTEM_SQLITE) -DSQLITE_SHELL_DBNAME_PROC=sqlcmd_get_dbname -DSQLITE_SHELL_INIT_PROC=sqlcmd_init_proc -DSQLITE_PS_APPDEF=sqlcmd_ps_appdef -Daccess=file_access -Dsystem=fossil_system -Dgetenv=fossil_getenv -Dfopen=fossil_fopen
+
+PIKCHR_OPTIONS = -DPIKCHR_TOKEN_LIMIT=10000
+
+SRC = add_.c ajax_.c alerts_.c allrepo_.c attach_.c backlink_.c backoffice_.c bag_.c bisect_.c blob_.c branch_.c browse_.c builtin_.c bundle_.c cache_.c capabilities_.c captcha_.c cgi_.c chat_.c checkin_.c checkout_.c clearsign_.c clone_.c color_.c comformat_.c configure_.c content_.c cookies_.c db_.c delta_.c deltacmd_.c deltafunc_.c descendants_.c diff_.c diffcmd_.c dispatch_.c doc_.c encode_.c etag_.c event_.c export_.c extcgi_.c file_.c fileedit_.c finfo_.c foci_.c forum_.c fshell_.c fusefs_.c fuzz_.c glob_.c graph_.c gzip_.c hname_.c hook_.c http_.c http_socket_.c http_ssl_.c http_transport_.c import_.c info_.c interwiki_.c json_.c json_artifact_.c json_branch_.c json_config_.c json_diff_.c json_dir_.c json_finfo_.c json_login_.c json_query_.c json_report_.c json_status_.c json_tag_.c json_timeline_.c json_user_.c json_wiki_.c leaf_.c loadctrl_.c login_.c lookslike_.c main_.c manifest_.c markdown_.c markdown_html_.c match_.c md5_.c merge_.c merge3_.c moderate_.c name_.c org_.c patch_.c path_.c piechart_.c pikchrshow_.c pivot_.c popen_.c pqueue_.c printf_.c publish_.c purge_.c rebuild_.c regexp_.c repolist_.c report_.c robot_.c rss_.c schema_.c search_.c security_audit_.c setup_.c setupuser_.c sha1_.c sha1hard_.c sha3_.c shun_.c sitemap_.c skins_.c smtp_.c sqlcmd_.c stash_.c stat_.c statrep_.c style_.c sync_.c tag_.c tar_.c terminal_.c th_main_.c timeline_.c tkt_.c tktsetup_.c undo_.c unicode_.c unversioned_.c update_.c url_.c user_.c utf8_.c util_.c verify_.c vfile_.c wiki_.c wikiformat_.c winfile_.c winhttp_.c xfer_.c xfersetup_.c xsystem_.c zip_.c
+
+OBJ = $(OBJDIR)\add$O $(OBJDIR)\ajax$O $(OBJDIR)\alerts$O $(OBJDIR)\allrepo$O $(OBJDIR)\attach$O $(OBJDIR)\backlink$O $(OBJDIR)\backoffice$O $(OBJDIR)\bag$O $(OBJDIR)\bisect$O $(OBJDIR)\blob$O $(OBJDIR)\branch$O $(OBJDIR)\browse$O $(OBJDIR)\builtin$O $(OBJDIR)\bundle$O $(OBJDIR)\cache$O $(OBJDIR)\capabilities$O $(OBJDIR)\captcha$O $(OBJDIR)\cgi$O $(OBJDIR)\chat$O $(OBJDIR)\checkin$O $(OBJDIR)\checkout$O $(OBJDIR)\clearsign$O $(OBJDIR)\clone$O $(OBJDIR)\color$O $(OBJDIR)\comformat$O $(OBJDIR)\configure$O $(OBJDIR)\content$O $(OBJDIR)\cookies$O $(OBJDIR)\db$O $(OBJDIR)\delta$O $(OBJDIR)\deltacmd$O $(OBJDIR)\deltafunc$O $(OBJDIR)\descendants$O $(OBJDIR)\diff$O $(OBJDIR)\diffcmd$O $(OBJDIR)\dispatch$O $(OBJDIR)\doc$O $(OBJDIR)\encode$O $(OBJDIR)\etag$O $(OBJDIR)\event$O $(OBJDIR)\export$O $(OBJDIR)\extcgi$O $(OBJDIR)\file$O $(OBJDIR)\fileedit$O $(OBJDIR)\finfo$O $(OBJDIR)\foci$O $(OBJDIR)\forum$O $(OBJDIR)\fshell$O $(OBJDIR)\fusefs$O $(OBJDIR)\fuzz$O $(OBJDIR)\glob$O $(OBJDIR)\graph$O $(OBJDIR)\gzip$O $(OBJDIR)\hname$O $(OBJDIR)\hook$O $(OBJDIR)\http$O $(OBJDIR)\http_socket$O $(OBJDIR)\http_ssl$O $(OBJDIR)\http_transport$O $(OBJDIR)\import$O $(OBJDIR)\info$O $(OBJDIR)\interwiki$O $(OBJDIR)\json$O $(OBJDIR)\json_artifact$O $(OBJDIR)\json_branch$O $(OBJDIR)\json_config$O $(OBJDIR)\json_diff$O $(OBJDIR)\json_dir$O $(OBJDIR)\json_finfo$O $(OBJDIR)\json_login$O $(OBJDIR)\json_query$O $(OBJDIR)\json_report$O $(OBJDIR)\json_status$O $(OBJDIR)\json_tag$O $(OBJDIR)\json_timeline$O $(OBJDIR)\json_user$O $(OBJDIR)\json_wiki$O $(OBJDIR)\leaf$O $(OBJDIR)\loadctrl$O $(OBJDIR)\login$O $(OBJDIR)\lookslike$O $(OBJDIR)\main$O $(OBJDIR)\manifest$O $(OBJDIR)\markdown$O $(OBJDIR)\markdown_html$O $(OBJDIR)\match$O $(OBJDIR)\md5$O $(OBJDIR)\merge$O $(OBJDIR)\merge3$O $(OBJDIR)\moderate$O $(OBJDIR)\name$O $(OBJDIR)\org$O $(OBJDIR)\patch$O $(OBJDIR)\path$O $(OBJDIR)\piechart$O $(OBJDIR)\pikchrshow$O $(OBJDIR)\pivot$O $(OBJDIR)\popen$O $(OBJDIR)\pqueue$O $(OBJDIR)\printf$O $(OBJDIR)\publish$O $(OBJDIR)\purge$O $(OBJDIR)\rebuild$O $(OBJDIR)\regexp$O $(OBJDIR)\repolist$O $(OBJDIR)\report$O $(OBJDIR)\robot$O $(OBJDIR)\rss$O $(OBJDIR)\schema$O $(OBJDIR)\search$O $(OBJDIR)\security_audit$O $(OBJDIR)\setup$O $(OBJDIR)\setupuser$O $(OBJDIR)\sha1$O $(OBJDIR)\sha1hard$O $(OBJDIR)\sha3$O $(OBJDIR)\shun$O $(OBJDIR)\sitemap$O $(OBJDIR)\skins$O $(OBJDIR)\smtp$O $(OBJDIR)\sqlcmd$O $(OBJDIR)\stash$O $(OBJDIR)\stat$O $(OBJDIR)\statrep$O $(OBJDIR)\style$O $(OBJDIR)\sync$O $(OBJDIR)\tag$O $(OBJDIR)\tar$O $(OBJDIR)\terminal$O $(OBJDIR)\th_main$O $(OBJDIR)\timeline$O $(OBJDIR)\tkt$O $(OBJDIR)\tktsetup$O $(OBJDIR)\undo$O $(OBJDIR)\unicode$O $(OBJDIR)\unversioned$O $(OBJDIR)\update$O $(OBJDIR)\url$O $(OBJDIR)\user$O $(OBJDIR)\utf8$O $(OBJDIR)\util$O $(OBJDIR)\verify$O $(OBJDIR)\vfile$O $(OBJDIR)\wiki$O $(OBJDIR)\wikiformat$O $(OBJDIR)\winfile$O $(OBJDIR)\winhttp$O $(OBJDIR)\xfer$O $(OBJDIR)\xfersetup$O $(OBJDIR)\xsystem$O $(OBJDIR)\zip$O $(OBJDIR)\shell$O $(OBJDIR)\sqlite3$O $(OBJDIR)\th$O $(OBJDIR)\th_lang$O
+
+
+RC=$(DMDIR)\bin\rcc
+RCFLAGS=-32 -w1 -I$(SRCDIR) /D__DMC__
+
+APPNAME = $(OBJDIR)\fossil$(E)
+
+all: $(APPNAME)
+
+$(APPNAME) : translate$E mkindex$E codecheck1$E headers $(OBJ) $(OBJDIR)\link
+ cd $(OBJDIR)
+ codecheck1$E $(SRC)
+ $(DMDIR)\bin\link @link
+
+$(OBJDIR)\fossil.res: $B\win\fossil.rc
+ $(RC) $(RCFLAGS) -o$@ $**
+
+$(OBJDIR)\link: $B\win\Makefile.dmc $(OBJDIR)\fossil.res
+ +echo add ajax alerts allrepo attach backlink backoffice bag bisect blob branch browse builtin bundle cache capabilities captcha cgi chat checkin checkout clearsign clone color comformat configure content cookies db delta deltacmd deltafunc descendants diff diffcmd dispatch doc encode etag event export extcgi file fileedit finfo foci forum fshell fusefs fuzz glob graph gzip hname hook http http_socket http_ssl http_transport import info interwiki json json_artifact json_branch json_config json_diff json_dir json_finfo json_login json_query json_report json_status json_tag json_timeline json_user json_wiki leaf loadctrl login lookslike main manifest markdown markdown_html match md5 merge merge3 moderate name org patch path piechart pikchrshow pivot popen pqueue printf publish purge rebuild regexp repolist report robot rss schema search security_audit setup setupuser sha1 sha1hard sha3 shun sitemap skins smtp sqlcmd stash stat statrep style sync tag tar terminal th_main timeline tkt tktsetup undo unicode unversioned update url user utf8 util verify vfile wiki wikiformat winfile winhttp xfer xfersetup xsystem zip shell sqlite3 th th_lang > $@
+ +echo fossil >> $@
+ +echo fossil >> $@
+ +echo $(LIBS) >> $@
+ +echo. >> $@
+ +echo fossil >> $@
+
+translate$E: $(SRCDIR_tools)\translate.c
+ $(BCC) -o$@ $**
+
+makeheaders$E: $(SRCDIR_tools)\makeheaders.c
+ $(BCC) -o$@ $**
+
+mkindex$E: $(SRCDIR_tools)\mkindex.c
+ $(BCC) -o$@ $**
+
+mkbuiltin$E: $(SRCDIR_tools)\mkbuiltin.c
+ $(BCC) -o$@ $**
+
+mkversion$E: $(SRCDIR_tools)\mkversion.c
+ $(BCC) -o$@ $**
+
+codecheck1$E: $(SRCDIR_tools)\codecheck1.c
+ $(BCC) -o$@ $**
+
+$(OBJDIR)\shell$O : $(SRCDIR_extsrc)\shell.c
+ $(TCC) -o$@ -c $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) $**
+
+$(OBJDIR)\sqlite3$O : $(SRCDIR_extsrc)\sqlite3.c
+ $(TCC) -o$@ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $**
+
+$(OBJDIR)\th$O : $(SRCDIR)\th.c
+ $(TCC) -o$@ -c $**
+
+$(OBJDIR)\th_lang$O : $(SRCDIR)\th_lang.c
+ $(TCC) -o$@ -c $**
+
+$(OBJDIR)\cson_amalgamation.h : $(SRCDIR_extsrc)\cson_amalgamation.h
+ cp $@ $@
+
+VERSION.h : mkversion$E $B\manifest.uuid $B\manifest $B\VERSION
+ +$** > $@
+
+page_index.h: mkindex$E $(SRC)
+ +$** > $@
+
+builtin_data.h: mkbuiltin$E $(EXTRA_FILES)
+ mkbuiltin$E --prefix $(SRCDIR)/ $(EXTRA_FILES) > $@
+
+clean:
+ -del $(OBJDIR)\*.obj
+ -del *.obj *_.c *.h *.map
+
+realclean:
+ -del $(APPNAME) translate$E mkindex$E makeheaders$E mkversion$E codecheck1$E mkbuiltin$E
+
+$(OBJDIR)\json$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_artifact$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_branch$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_config$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_diff$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_dir$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_finfo$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_login$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_query$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_report$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_status$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_tag$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_timeline$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_user$O : $(SRCDIR)\json_detail.h
+$(OBJDIR)\json_wiki$O : $(SRCDIR)\json_detail.h
+
+
+$(OBJDIR)\add$O : add_.c add.h
+ $(TCC) -o$@ -c add_.c
+
+add_.c : $(SRCDIR)\add.c
+ +translate$E $** > $@
+
+$(OBJDIR)\ajax$O : ajax_.c ajax.h
+ $(TCC) -o$@ -c ajax_.c
+
+ajax_.c : $(SRCDIR)\ajax.c
+ +translate$E $** > $@
+
+$(OBJDIR)\alerts$O : alerts_.c alerts.h
+ $(TCC) -o$@ -c alerts_.c
+
+alerts_.c : $(SRCDIR)\alerts.c
+ +translate$E $** > $@
+
+$(OBJDIR)\allrepo$O : allrepo_.c allrepo.h
+ $(TCC) -o$@ -c allrepo_.c
+
+allrepo_.c : $(SRCDIR)\allrepo.c
+ +translate$E $** > $@
+
+$(OBJDIR)\attach$O : attach_.c attach.h
+ $(TCC) -o$@ -c attach_.c
+
+attach_.c : $(SRCDIR)\attach.c
+ +translate$E $** > $@
+
+$(OBJDIR)\backlink$O : backlink_.c backlink.h
+ $(TCC) -o$@ -c backlink_.c
+
+backlink_.c : $(SRCDIR)\backlink.c
+ +translate$E $** > $@
+
+$(OBJDIR)\backoffice$O : backoffice_.c backoffice.h
+ $(TCC) -o$@ -c backoffice_.c
+
+backoffice_.c : $(SRCDIR)\backoffice.c
+ +translate$E $** > $@
+
+$(OBJDIR)\bag$O : bag_.c bag.h
+ $(TCC) -o$@ -c bag_.c
+
+bag_.c : $(SRCDIR)\bag.c
+ +translate$E $** > $@
+
+$(OBJDIR)\bisect$O : bisect_.c bisect.h
+ $(TCC) -o$@ -c bisect_.c
+
+bisect_.c : $(SRCDIR)\bisect.c
+ +translate$E $** > $@
+
+$(OBJDIR)\blob$O : blob_.c blob.h
+ $(TCC) -o$@ -c blob_.c
+
+blob_.c : $(SRCDIR)\blob.c
+ +translate$E $** > $@
+
+$(OBJDIR)\branch$O : branch_.c branch.h
+ $(TCC) -o$@ -c branch_.c
+
+branch_.c : $(SRCDIR)\branch.c
+ +translate$E $** > $@
+
+$(OBJDIR)\browse$O : browse_.c browse.h
+ $(TCC) -o$@ -c browse_.c
+
+browse_.c : $(SRCDIR)\browse.c
+ +translate$E $** > $@
+
+$(OBJDIR)\builtin$O : builtin_.c builtin.h
+ $(TCC) -o$@ -c builtin_.c
+
+builtin_.c : $(SRCDIR)\builtin.c
+ +translate$E $** > $@
+
+$(OBJDIR)\bundle$O : bundle_.c bundle.h
+ $(TCC) -o$@ -c bundle_.c
+
+bundle_.c : $(SRCDIR)\bundle.c
+ +translate$E $** > $@
+
+$(OBJDIR)\cache$O : cache_.c cache.h
+ $(TCC) -o$@ -c cache_.c
+
+cache_.c : $(SRCDIR)\cache.c
+ +translate$E $** > $@
+
+$(OBJDIR)\capabilities$O : capabilities_.c capabilities.h
+ $(TCC) -o$@ -c capabilities_.c
+
+capabilities_.c : $(SRCDIR)\capabilities.c
+ +translate$E $** > $@
+
+$(OBJDIR)\captcha$O : captcha_.c captcha.h
+ $(TCC) -o$@ -c captcha_.c
+
+captcha_.c : $(SRCDIR)\captcha.c
+ +translate$E $** > $@
+
+$(OBJDIR)\cgi$O : cgi_.c cgi.h
+ $(TCC) -o$@ -c cgi_.c
+
+cgi_.c : $(SRCDIR)\cgi.c
+ +translate$E $** > $@
+
+$(OBJDIR)\chat$O : chat_.c chat.h
+ $(TCC) -o$@ -c chat_.c
+
+chat_.c : $(SRCDIR)\chat.c
+ +translate$E $** > $@
+
+$(OBJDIR)\checkin$O : checkin_.c checkin.h
+ $(TCC) -o$@ -c checkin_.c
+
+checkin_.c : $(SRCDIR)\checkin.c
+ +translate$E $** > $@
+
+$(OBJDIR)\checkout$O : checkout_.c checkout.h
+ $(TCC) -o$@ -c checkout_.c
+
+checkout_.c : $(SRCDIR)\checkout.c
+ +translate$E $** > $@
+
+$(OBJDIR)\clearsign$O : clearsign_.c clearsign.h
+ $(TCC) -o$@ -c clearsign_.c
+
+clearsign_.c : $(SRCDIR)\clearsign.c
+ +translate$E $** > $@
+
+$(OBJDIR)\clone$O : clone_.c clone.h
+ $(TCC) -o$@ -c clone_.c
+
+clone_.c : $(SRCDIR)\clone.c
+ +translate$E $** > $@
+
+$(OBJDIR)\color$O : color_.c color.h
+ $(TCC) -o$@ -c color_.c
+
+color_.c : $(SRCDIR)\color.c
+ +translate$E $** > $@
+
+$(OBJDIR)\comformat$O : comformat_.c comformat.h
+ $(TCC) -o$@ -c comformat_.c
+
+comformat_.c : $(SRCDIR)\comformat.c
+ +translate$E $** > $@
+
+$(OBJDIR)\configure$O : configure_.c configure.h
+ $(TCC) -o$@ -c configure_.c
+
+configure_.c : $(SRCDIR)\configure.c
+ +translate$E $** > $@
+
+$(OBJDIR)\content$O : content_.c content.h
+ $(TCC) -o$@ -c content_.c
+
+content_.c : $(SRCDIR)\content.c
+ +translate$E $** > $@
+
+$(OBJDIR)\cookies$O : cookies_.c cookies.h
+ $(TCC) -o$@ -c cookies_.c
+
+cookies_.c : $(SRCDIR)\cookies.c
+ +translate$E $** > $@
+
+$(OBJDIR)\db$O : db_.c db.h
+ $(TCC) -o$@ -c db_.c
+
+db_.c : $(SRCDIR)\db.c
+ +translate$E $** > $@
+
+$(OBJDIR)\delta$O : delta_.c delta.h
+ $(TCC) -o$@ -c delta_.c
+
+delta_.c : $(SRCDIR)\delta.c
+ +translate$E $** > $@
+
+$(OBJDIR)\deltacmd$O : deltacmd_.c deltacmd.h
+ $(TCC) -o$@ -c deltacmd_.c
+
+deltacmd_.c : $(SRCDIR)\deltacmd.c
+ +translate$E $** > $@
+
+$(OBJDIR)\deltafunc$O : deltafunc_.c deltafunc.h
+ $(TCC) -o$@ -c deltafunc_.c
+
+deltafunc_.c : $(SRCDIR)\deltafunc.c
+ +translate$E $** > $@
+
+$(OBJDIR)\descendants$O : descendants_.c descendants.h
+ $(TCC) -o$@ -c descendants_.c
+
+descendants_.c : $(SRCDIR)\descendants.c
+ +translate$E $** > $@
+
+$(OBJDIR)\diff$O : diff_.c diff.h
+ $(TCC) -o$@ -c diff_.c
+
+diff_.c : $(SRCDIR)\diff.c
+ +translate$E $** > $@
+
+$(OBJDIR)\diffcmd$O : diffcmd_.c diffcmd.h
+ $(TCC) -o$@ -c diffcmd_.c
+
+diffcmd_.c : $(SRCDIR)\diffcmd.c
+ +translate$E $** > $@
+
+$(OBJDIR)\dispatch$O : dispatch_.c dispatch.h
+ $(TCC) -o$@ -c dispatch_.c
+
+dispatch_.c : $(SRCDIR)\dispatch.c
+ +translate$E $** > $@
+
+$(OBJDIR)\doc$O : doc_.c doc.h
+ $(TCC) -o$@ -c doc_.c
+
+doc_.c : $(SRCDIR)\doc.c
+ +translate$E $** > $@
+
+$(OBJDIR)\encode$O : encode_.c encode.h
+ $(TCC) -o$@ -c encode_.c
+
+encode_.c : $(SRCDIR)\encode.c
+ +translate$E $** > $@
+
+$(OBJDIR)\etag$O : etag_.c etag.h
+ $(TCC) -o$@ -c etag_.c
+
+etag_.c : $(SRCDIR)\etag.c
+ +translate$E $** > $@
+
+$(OBJDIR)\event$O : event_.c event.h
+ $(TCC) -o$@ -c event_.c
+
+event_.c : $(SRCDIR)\event.c
+ +translate$E $** > $@
+
+$(OBJDIR)\export$O : export_.c export.h
+ $(TCC) -o$@ -c export_.c
+
+export_.c : $(SRCDIR)\export.c
+ +translate$E $** > $@
+
+$(OBJDIR)\extcgi$O : extcgi_.c extcgi.h
+ $(TCC) -o$@ -c extcgi_.c
+
+extcgi_.c : $(SRCDIR)\extcgi.c
+ +translate$E $** > $@
+
+$(OBJDIR)\file$O : file_.c file.h
+ $(TCC) -o$@ -c file_.c
+
+file_.c : $(SRCDIR)\file.c
+ +translate$E $** > $@
+
+$(OBJDIR)\fileedit$O : fileedit_.c fileedit.h
+ $(TCC) -o$@ -c fileedit_.c
+
+fileedit_.c : $(SRCDIR)\fileedit.c
+ +translate$E $** > $@
+
+$(OBJDIR)\finfo$O : finfo_.c finfo.h
+ $(TCC) -o$@ -c finfo_.c
+
+finfo_.c : $(SRCDIR)\finfo.c
+ +translate$E $** > $@
+
+$(OBJDIR)\foci$O : foci_.c foci.h
+ $(TCC) -o$@ -c foci_.c
+
+foci_.c : $(SRCDIR)\foci.c
+ +translate$E $** > $@
+
+$(OBJDIR)\forum$O : forum_.c forum.h
+ $(TCC) -o$@ -c forum_.c
+
+forum_.c : $(SRCDIR)\forum.c
+ +translate$E $** > $@
+
+$(OBJDIR)\fshell$O : fshell_.c fshell.h
+ $(TCC) -o$@ -c fshell_.c
+
+fshell_.c : $(SRCDIR)\fshell.c
+ +translate$E $** > $@
+
+$(OBJDIR)\fusefs$O : fusefs_.c fusefs.h
+ $(TCC) -o$@ -c fusefs_.c
+
+fusefs_.c : $(SRCDIR)\fusefs.c
+ +translate$E $** > $@
+
+$(OBJDIR)\fuzz$O : fuzz_.c fuzz.h
+ $(TCC) -o$@ -c fuzz_.c
+
+fuzz_.c : $(SRCDIR)\fuzz.c
+ +translate$E $** > $@
+
+$(OBJDIR)\glob$O : glob_.c glob.h
+ $(TCC) -o$@ -c glob_.c
+
+glob_.c : $(SRCDIR)\glob.c
+ +translate$E $** > $@
+
+$(OBJDIR)\graph$O : graph_.c graph.h
+ $(TCC) -o$@ -c graph_.c
+
+graph_.c : $(SRCDIR)\graph.c
+ +translate$E $** > $@
+
+$(OBJDIR)\gzip$O : gzip_.c gzip.h
+ $(TCC) -o$@ -c gzip_.c
+
+gzip_.c : $(SRCDIR)\gzip.c
+ +translate$E $** > $@
+
+$(OBJDIR)\hname$O : hname_.c hname.h
+ $(TCC) -o$@ -c hname_.c
+
+hname_.c : $(SRCDIR)\hname.c
+ +translate$E $** > $@
+
+$(OBJDIR)\hook$O : hook_.c hook.h
+ $(TCC) -o$@ -c hook_.c
+
+hook_.c : $(SRCDIR)\hook.c
+ +translate$E $** > $@
+
+$(OBJDIR)\http$O : http_.c http.h
+ $(TCC) -o$@ -c http_.c
+
+http_.c : $(SRCDIR)\http.c
+ +translate$E $** > $@
+
+$(OBJDIR)\http_socket$O : http_socket_.c http_socket.h
+ $(TCC) -o$@ -c http_socket_.c
+
+http_socket_.c : $(SRCDIR)\http_socket.c
+ +translate$E $** > $@
+
+$(OBJDIR)\http_ssl$O : http_ssl_.c http_ssl.h
+ $(TCC) -o$@ -c http_ssl_.c
+
+http_ssl_.c : $(SRCDIR)\http_ssl.c
+ +translate$E $** > $@
+
+$(OBJDIR)\http_transport$O : http_transport_.c http_transport.h
+ $(TCC) -o$@ -c http_transport_.c
+
+http_transport_.c : $(SRCDIR)\http_transport.c
+ +translate$E $** > $@
+
+$(OBJDIR)\import$O : import_.c import.h
+ $(TCC) -o$@ -c import_.c
+
+import_.c : $(SRCDIR)\import.c
+ +translate$E $** > $@
+
+$(OBJDIR)\info$O : info_.c info.h
+ $(TCC) -o$@ -c info_.c
+
+info_.c : $(SRCDIR)\info.c
+ +translate$E $** > $@
+
+$(OBJDIR)\interwiki$O : interwiki_.c interwiki.h
+ $(TCC) -o$@ -c interwiki_.c
+
+interwiki_.c : $(SRCDIR)\interwiki.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json$O : json_.c json.h
+ $(TCC) -o$@ -c json_.c
+
+json_.c : $(SRCDIR)\json.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_artifact$O : json_artifact_.c json_artifact.h
+ $(TCC) -o$@ -c json_artifact_.c
+
+json_artifact_.c : $(SRCDIR)\json_artifact.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_branch$O : json_branch_.c json_branch.h
+ $(TCC) -o$@ -c json_branch_.c
+
+json_branch_.c : $(SRCDIR)\json_branch.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_config$O : json_config_.c json_config.h
+ $(TCC) -o$@ -c json_config_.c
+
+json_config_.c : $(SRCDIR)\json_config.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_diff$O : json_diff_.c json_diff.h
+ $(TCC) -o$@ -c json_diff_.c
+
+json_diff_.c : $(SRCDIR)\json_diff.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_dir$O : json_dir_.c json_dir.h
+ $(TCC) -o$@ -c json_dir_.c
+
+json_dir_.c : $(SRCDIR)\json_dir.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_finfo$O : json_finfo_.c json_finfo.h
+ $(TCC) -o$@ -c json_finfo_.c
+
+json_finfo_.c : $(SRCDIR)\json_finfo.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_login$O : json_login_.c json_login.h
+ $(TCC) -o$@ -c json_login_.c
+
+json_login_.c : $(SRCDIR)\json_login.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_query$O : json_query_.c json_query.h
+ $(TCC) -o$@ -c json_query_.c
+
+json_query_.c : $(SRCDIR)\json_query.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_report$O : json_report_.c json_report.h
+ $(TCC) -o$@ -c json_report_.c
+
+json_report_.c : $(SRCDIR)\json_report.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_status$O : json_status_.c json_status.h
+ $(TCC) -o$@ -c json_status_.c
+
+json_status_.c : $(SRCDIR)\json_status.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_tag$O : json_tag_.c json_tag.h
+ $(TCC) -o$@ -c json_tag_.c
+
+json_tag_.c : $(SRCDIR)\json_tag.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_timeline$O : json_timeline_.c json_timeline.h
+ $(TCC) -o$@ -c json_timeline_.c
+
+json_timeline_.c : $(SRCDIR)\json_timeline.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_user$O : json_user_.c json_user.h
+ $(TCC) -o$@ -c json_user_.c
+
+json_user_.c : $(SRCDIR)\json_user.c
+ +translate$E $** > $@
+
+$(OBJDIR)\json_wiki$O : json_wiki_.c json_wiki.h
+ $(TCC) -o$@ -c json_wiki_.c
+
+json_wiki_.c : $(SRCDIR)\json_wiki.c
+ +translate$E $** > $@
+
+$(OBJDIR)\leaf$O : leaf_.c leaf.h
+ $(TCC) -o$@ -c leaf_.c
+
+leaf_.c : $(SRCDIR)\leaf.c
+ +translate$E $** > $@
+
+$(OBJDIR)\loadctrl$O : loadctrl_.c loadctrl.h
+ $(TCC) -o$@ -c loadctrl_.c
+
+loadctrl_.c : $(SRCDIR)\loadctrl.c
+ +translate$E $** > $@
+
+$(OBJDIR)\login$O : login_.c login.h
+ $(TCC) -o$@ -c login_.c
+
+login_.c : $(SRCDIR)\login.c
+ +translate$E $** > $@
+
+$(OBJDIR)\lookslike$O : lookslike_.c lookslike.h
+ $(TCC) -o$@ -c lookslike_.c
+
+lookslike_.c : $(SRCDIR)\lookslike.c
+ +translate$E $** > $@
+
+$(OBJDIR)\main$O : main_.c main.h
+ $(TCC) -o$@ -c main_.c
+
+main_.c : $(SRCDIR)\main.c
+ +translate$E $** > $@
+
+$(OBJDIR)\manifest$O : manifest_.c manifest.h
+ $(TCC) -o$@ -c manifest_.c
+
+manifest_.c : $(SRCDIR)\manifest.c
+ +translate$E $** > $@
+
+$(OBJDIR)\markdown$O : markdown_.c markdown.h
+ $(TCC) -o$@ -c markdown_.c
+
+markdown_.c : $(SRCDIR)\markdown.c
+ +translate$E $** > $@
+
+$(OBJDIR)\markdown_html$O : markdown_html_.c markdown_html.h
+ $(TCC) -o$@ -c markdown_html_.c
+
+markdown_html_.c : $(SRCDIR)\markdown_html.c
+ +translate$E $** > $@
+
+$(OBJDIR)\match$O : match_.c match.h
+ $(TCC) -o$@ -c match_.c
+
+match_.c : $(SRCDIR)\match.c
+ +translate$E $** > $@
+
+$(OBJDIR)\md5$O : md5_.c md5.h
+ $(TCC) -o$@ -c md5_.c
+
+md5_.c : $(SRCDIR)\md5.c
+ +translate$E $** > $@
+
+$(OBJDIR)\merge$O : merge_.c merge.h
+ $(TCC) -o$@ -c merge_.c
+
+merge_.c : $(SRCDIR)\merge.c
+ +translate$E $** > $@
+
+$(OBJDIR)\merge3$O : merge3_.c merge3.h
+ $(TCC) -o$@ -c merge3_.c
+
+merge3_.c : $(SRCDIR)\merge3.c
+ +translate$E $** > $@
+
+$(OBJDIR)\moderate$O : moderate_.c moderate.h
+ $(TCC) -o$@ -c moderate_.c
+
+moderate_.c : $(SRCDIR)\moderate.c
+ +translate$E $** > $@
+
+$(OBJDIR)\name$O : name_.c name.h
+ $(TCC) -o$@ -c name_.c
+
+name_.c : $(SRCDIR)\name.c
+ +translate$E $** > $@
+
+$(OBJDIR)\org$O : org_.c org.h
+ $(TCC) -o$@ -c org_.c
+
+org_.c : $(SRCDIR)\org.c
+ +translate$E $** > $@
+
+$(OBJDIR)\patch$O : patch_.c patch.h
+ $(TCC) -o$@ -c patch_.c
+
+patch_.c : $(SRCDIR)\patch.c
+ +translate$E $** > $@
+
+$(OBJDIR)\path$O : path_.c path.h
+ $(TCC) -o$@ -c path_.c
+
+path_.c : $(SRCDIR)\path.c
+ +translate$E $** > $@
+
+$(OBJDIR)\piechart$O : piechart_.c piechart.h
+ $(TCC) -o$@ -c piechart_.c
+
+piechart_.c : $(SRCDIR)\piechart.c
+ +translate$E $** > $@
+
+$(OBJDIR)\pikchrshow$O : pikchrshow_.c pikchrshow.h
+ $(TCC) -o$@ -c pikchrshow_.c
+
+pikchrshow_.c : $(SRCDIR)\pikchrshow.c
+ +translate$E $** > $@
+
+$(OBJDIR)\pivot$O : pivot_.c pivot.h
+ $(TCC) -o$@ -c pivot_.c
+
+pivot_.c : $(SRCDIR)\pivot.c
+ +translate$E $** > $@
+
+$(OBJDIR)\popen$O : popen_.c popen.h
+ $(TCC) -o$@ -c popen_.c
+
+popen_.c : $(SRCDIR)\popen.c
+ +translate$E $** > $@
+
+$(OBJDIR)\pqueue$O : pqueue_.c pqueue.h
+ $(TCC) -o$@ -c pqueue_.c
+
+pqueue_.c : $(SRCDIR)\pqueue.c
+ +translate$E $** > $@
+
+$(OBJDIR)\printf$O : printf_.c printf.h
+ $(TCC) -o$@ -c printf_.c
+
+printf_.c : $(SRCDIR)\printf.c
+ +translate$E $** > $@
+
+$(OBJDIR)\publish$O : publish_.c publish.h
+ $(TCC) -o$@ -c publish_.c
+
+publish_.c : $(SRCDIR)\publish.c
+ +translate$E $** > $@
+
+$(OBJDIR)\purge$O : purge_.c purge.h
+ $(TCC) -o$@ -c purge_.c
+
+purge_.c : $(SRCDIR)\purge.c
+ +translate$E $** > $@
+
+$(OBJDIR)\rebuild$O : rebuild_.c rebuild.h
+ $(TCC) -o$@ -c rebuild_.c
+
+rebuild_.c : $(SRCDIR)\rebuild.c
+ +translate$E $** > $@
+
+$(OBJDIR)\regexp$O : regexp_.c regexp.h
+ $(TCC) -o$@ -c regexp_.c
+
+regexp_.c : $(SRCDIR)\regexp.c
+ +translate$E $** > $@
+
+$(OBJDIR)\repolist$O : repolist_.c repolist.h
+ $(TCC) -o$@ -c repolist_.c
+
+repolist_.c : $(SRCDIR)\repolist.c
+ +translate$E $** > $@
+
+$(OBJDIR)\report$O : report_.c report.h
+ $(TCC) -o$@ -c report_.c
+
+report_.c : $(SRCDIR)\report.c
+ +translate$E $** > $@
+
+$(OBJDIR)\robot$O : robot_.c robot.h
+ $(TCC) -o$@ -c robot_.c
+
+robot_.c : $(SRCDIR)\robot.c
+ +translate$E $** > $@
+
+$(OBJDIR)\rss$O : rss_.c rss.h
+ $(TCC) -o$@ -c rss_.c
+
+rss_.c : $(SRCDIR)\rss.c
+ +translate$E $** > $@
+
+$(OBJDIR)\schema$O : schema_.c schema.h
+ $(TCC) -o$@ -c schema_.c
+
+schema_.c : $(SRCDIR)\schema.c
+ +translate$E $** > $@
+
+$(OBJDIR)\search$O : search_.c search.h
+ $(TCC) -o$@ -c search_.c
+
+search_.c : $(SRCDIR)\search.c
+ +translate$E $** > $@
+
+$(OBJDIR)\security_audit$O : security_audit_.c security_audit.h
+ $(TCC) -o$@ -c security_audit_.c
+
+security_audit_.c : $(SRCDIR)\security_audit.c
+ +translate$E $** > $@
+
+$(OBJDIR)\setup$O : setup_.c setup.h
+ $(TCC) -o$@ -c setup_.c
+
+setup_.c : $(SRCDIR)\setup.c
+ +translate$E $** > $@
+
+$(OBJDIR)\setupuser$O : setupuser_.c setupuser.h
+ $(TCC) -o$@ -c setupuser_.c
+
+setupuser_.c : $(SRCDIR)\setupuser.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sha1$O : sha1_.c sha1.h
+ $(TCC) -o$@ -c sha1_.c
+
+sha1_.c : $(SRCDIR)\sha1.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sha1hard$O : sha1hard_.c sha1hard.h
+ $(TCC) -o$@ -c sha1hard_.c
+
+sha1hard_.c : $(SRCDIR)\sha1hard.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sha3$O : sha3_.c sha3.h
+ $(TCC) -o$@ -c sha3_.c
+
+sha3_.c : $(SRCDIR)\sha3.c
+ +translate$E $** > $@
+
+$(OBJDIR)\shun$O : shun_.c shun.h
+ $(TCC) -o$@ -c shun_.c
+
+shun_.c : $(SRCDIR)\shun.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sitemap$O : sitemap_.c sitemap.h
+ $(TCC) -o$@ -c sitemap_.c
+
+sitemap_.c : $(SRCDIR)\sitemap.c
+ +translate$E $** > $@
+
+$(OBJDIR)\skins$O : skins_.c skins.h
+ $(TCC) -o$@ -c skins_.c
+
+skins_.c : $(SRCDIR)\skins.c
+ +translate$E $** > $@
+
+$(OBJDIR)\smtp$O : smtp_.c smtp.h
+ $(TCC) -o$@ -c smtp_.c
+
+smtp_.c : $(SRCDIR)\smtp.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sqlcmd$O : sqlcmd_.c sqlcmd.h
+ $(TCC) -o$@ -c sqlcmd_.c
+
+sqlcmd_.c : $(SRCDIR)\sqlcmd.c
+ +translate$E $** > $@
+
+$(OBJDIR)\stash$O : stash_.c stash.h
+ $(TCC) -o$@ -c stash_.c
+
+stash_.c : $(SRCDIR)\stash.c
+ +translate$E $** > $@
+
+$(OBJDIR)\stat$O : stat_.c stat.h
+ $(TCC) -o$@ -c stat_.c
+
+stat_.c : $(SRCDIR)\stat.c
+ +translate$E $** > $@
+
+$(OBJDIR)\statrep$O : statrep_.c statrep.h
+ $(TCC) -o$@ -c statrep_.c
+
+statrep_.c : $(SRCDIR)\statrep.c
+ +translate$E $** > $@
+
+$(OBJDIR)\style$O : style_.c style.h
+ $(TCC) -o$@ -c style_.c
+
+style_.c : $(SRCDIR)\style.c
+ +translate$E $** > $@
+
+$(OBJDIR)\sync$O : sync_.c sync.h
+ $(TCC) -o$@ -c sync_.c
+
+sync_.c : $(SRCDIR)\sync.c
+ +translate$E $** > $@
+
+$(OBJDIR)\tag$O : tag_.c tag.h
+ $(TCC) -o$@ -c tag_.c
+
+tag_.c : $(SRCDIR)\tag.c
+ +translate$E $** > $@
+
+$(OBJDIR)\tar$O : tar_.c tar.h
+ $(TCC) -o$@ -c tar_.c
+
+tar_.c : $(SRCDIR)\tar.c
+ +translate$E $** > $@
+
+$(OBJDIR)\terminal$O : terminal_.c terminal.h
+ $(TCC) -o$@ -c terminal_.c
+
+terminal_.c : $(SRCDIR)\terminal.c
+ +translate$E $** > $@
+
+$(OBJDIR)\th_main$O : th_main_.c th_main.h
+ $(TCC) -o$@ -c th_main_.c
+
+th_main_.c : $(SRCDIR)\th_main.c
+ +translate$E $** > $@
+
+$(OBJDIR)\timeline$O : timeline_.c timeline.h
+ $(TCC) -o$@ -c timeline_.c
+
+timeline_.c : $(SRCDIR)\timeline.c
+ +translate$E $** > $@
+
+$(OBJDIR)\tkt$O : tkt_.c tkt.h
+ $(TCC) -o$@ -c tkt_.c
+
+tkt_.c : $(SRCDIR)\tkt.c
+ +translate$E $** > $@
+
+$(OBJDIR)\tktsetup$O : tktsetup_.c tktsetup.h
+ $(TCC) -o$@ -c tktsetup_.c
+
+tktsetup_.c : $(SRCDIR)\tktsetup.c
+ +translate$E $** > $@
+
+$(OBJDIR)\undo$O : undo_.c undo.h
+ $(TCC) -o$@ -c undo_.c
+
+undo_.c : $(SRCDIR)\undo.c
+ +translate$E $** > $@
+
+$(OBJDIR)\unicode$O : unicode_.c unicode.h
+ $(TCC) -o$@ -c unicode_.c
+
+unicode_.c : $(SRCDIR)\unicode.c
+ +translate$E $** > $@
+
+$(OBJDIR)\unversioned$O : unversioned_.c unversioned.h
+ $(TCC) -o$@ -c unversioned_.c
+
+unversioned_.c : $(SRCDIR)\unversioned.c
+ +translate$E $** > $@
+
+$(OBJDIR)\update$O : update_.c update.h
+ $(TCC) -o$@ -c update_.c
+
+update_.c : $(SRCDIR)\update.c
+ +translate$E $** > $@
+
+$(OBJDIR)\url$O : url_.c url.h
+ $(TCC) -o$@ -c url_.c
+
+url_.c : $(SRCDIR)\url.c
+ +translate$E $** > $@
+
+$(OBJDIR)\user$O : user_.c user.h
+ $(TCC) -o$@ -c user_.c
+
+user_.c : $(SRCDIR)\user.c
+ +translate$E $** > $@
+
+$(OBJDIR)\utf8$O : utf8_.c utf8.h
+ $(TCC) -o$@ -c utf8_.c
+
+utf8_.c : $(SRCDIR)\utf8.c
+ +translate$E $** > $@
+
+$(OBJDIR)\util$O : util_.c util.h
+ $(TCC) -o$@ -c util_.c
+
+util_.c : $(SRCDIR)\util.c
+ +translate$E $** > $@
+
+$(OBJDIR)\verify$O : verify_.c verify.h
+ $(TCC) -o$@ -c verify_.c
+
+verify_.c : $(SRCDIR)\verify.c
+ +translate$E $** > $@
+
+$(OBJDIR)\vfile$O : vfile_.c vfile.h
+ $(TCC) -o$@ -c vfile_.c
+
+vfile_.c : $(SRCDIR)\vfile.c
+ +translate$E $** > $@
+
+$(OBJDIR)\wiki$O : wiki_.c wiki.h
+ $(TCC) -o$@ -c wiki_.c
+
+wiki_.c : $(SRCDIR)\wiki.c
+ +translate$E $** > $@
+
+$(OBJDIR)\wikiformat$O : wikiformat_.c wikiformat.h
+ $(TCC) -o$@ -c wikiformat_.c
+
+wikiformat_.c : $(SRCDIR)\wikiformat.c
+ +translate$E $** > $@
+
+$(OBJDIR)\winfile$O : winfile_.c winfile.h
+ $(TCC) -o$@ -c winfile_.c
+
+winfile_.c : $(SRCDIR)\winfile.c
+ +translate$E $** > $@
+
+$(OBJDIR)\winhttp$O : winhttp_.c winhttp.h
+ $(TCC) -o$@ -c winhttp_.c
+
+winhttp_.c : $(SRCDIR)\winhttp.c
+ +translate$E $** > $@
+
+$(OBJDIR)\xfer$O : xfer_.c xfer.h
+ $(TCC) -o$@ -c xfer_.c
+
+xfer_.c : $(SRCDIR)\xfer.c
+ +translate$E $** > $@
+
+$(OBJDIR)\xfersetup$O : xfersetup_.c xfersetup.h
+ $(TCC) -o$@ -c xfersetup_.c
+
+xfersetup_.c : $(SRCDIR)\xfersetup.c
+ +translate$E $** > $@
+
+$(OBJDIR)\xsystem$O : xsystem_.c xsystem.h
+ $(TCC) -o$@ -c xsystem_.c
+
+xsystem_.c : $(SRCDIR)\xsystem.c
+ +translate$E $** > $@
+
+$(OBJDIR)\zip$O : zip_.c zip.h
+ $(TCC) -o$@ -c zip_.c
+
+zip_.c : $(SRCDIR)\zip.c
+ +translate$E $** > $@
+
+headers: makeheaders$E page_index.h builtin_data.h VERSION.h
+ +makeheaders$E add_.c:add.h ajax_.c:ajax.h alerts_.c:alerts.h allrepo_.c:allrepo.h attach_.c:attach.h backlink_.c:backlink.h backoffice_.c:backoffice.h bag_.c:bag.h bisect_.c:bisect.h blob_.c:blob.h branch_.c:branch.h browse_.c:browse.h builtin_.c:builtin.h bundle_.c:bundle.h cache_.c:cache.h capabilities_.c:capabilities.h captcha_.c:captcha.h cgi_.c:cgi.h chat_.c:chat.h checkin_.c:checkin.h checkout_.c:checkout.h clearsign_.c:clearsign.h clone_.c:clone.h color_.c:color.h comformat_.c:comformat.h configure_.c:configure.h content_.c:content.h cookies_.c:cookies.h db_.c:db.h delta_.c:delta.h deltacmd_.c:deltacmd.h deltafunc_.c:deltafunc.h descendants_.c:descendants.h diff_.c:diff.h diffcmd_.c:diffcmd.h dispatch_.c:dispatch.h doc_.c:doc.h encode_.c:encode.h etag_.c:etag.h event_.c:event.h export_.c:export.h extcgi_.c:extcgi.h file_.c:file.h fileedit_.c:fileedit.h finfo_.c:finfo.h foci_.c:foci.h forum_.c:forum.h fshell_.c:fshell.h fusefs_.c:fusefs.h fuzz_.c:fuzz.h glob_.c:glob.h graph_.c:graph.h gzip_.c:gzip.h hname_.c:hname.h hook_.c:hook.h http_.c:http.h http_socket_.c:http_socket.h http_ssl_.c:http_ssl.h http_transport_.c:http_transport.h import_.c:import.h info_.c:info.h interwiki_.c:interwiki.h json_.c:json.h json_artifact_.c:json_artifact.h json_branch_.c:json_branch.h json_config_.c:json_config.h json_diff_.c:json_diff.h json_dir_.c:json_dir.h json_finfo_.c:json_finfo.h json_login_.c:json_login.h json_query_.c:json_query.h json_report_.c:json_report.h json_status_.c:json_status.h json_tag_.c:json_tag.h json_timeline_.c:json_timeline.h json_user_.c:json_user.h json_wiki_.c:json_wiki.h leaf_.c:leaf.h loadctrl_.c:loadctrl.h login_.c:login.h lookslike_.c:lookslike.h main_.c:main.h manifest_.c:manifest.h markdown_.c:markdown.h markdown_html_.c:markdown_html.h match_.c:match.h md5_.c:md5.h merge_.c:merge.h merge3_.c:merge3.h moderate_.c:moderate.h name_.c:name.h org_.c:org.h patch_.c:patch.h path_.c:path.h piechart_.c:piechart.h pikchrshow_.c:pikchrshow.h pivot_.c:pivot.h popen_.c:popen.h pqueue_.c:pqueue.h printf_.c:printf.h publish_.c:publish.h purge_.c:purge.h rebuild_.c:rebuild.h regexp_.c:regexp.h repolist_.c:repolist.h report_.c:report.h robot_.c:robot.h rss_.c:rss.h schema_.c:schema.h search_.c:search.h security_audit_.c:security_audit.h setup_.c:setup.h setupuser_.c:setupuser.h sha1_.c:sha1.h sha1hard_.c:sha1hard.h sha3_.c:sha3.h shun_.c:shun.h sitemap_.c:sitemap.h skins_.c:skins.h smtp_.c:smtp.h sqlcmd_.c:sqlcmd.h stash_.c:stash.h stat_.c:stat.h statrep_.c:statrep.h style_.c:style.h sync_.c:sync.h tag_.c:tag.h tar_.c:tar.h terminal_.c:terminal.h th_main_.c:th_main.h timeline_.c:timeline.h tkt_.c:tkt.h tktsetup_.c:tktsetup.h undo_.c:undo.h unicode_.c:unicode.h unversioned_.c:unversioned.h update_.c:update.h url_.c:url.h user_.c:user.h utf8_.c:utf8.h util_.c:util.h verify_.c:verify.h vfile_.c:vfile.h wiki_.c:wiki.h wikiformat_.c:wikiformat.h winfile_.c:winfile.h winhttp_.c:winhttp.h xfer_.c:xfer.h xfersetup_.c:xfersetup.h xsystem_.c:xsystem.h zip_.c:zip.h $(SRCDIR_extsrc)\pikchr.c:pikchr.h $(SRCDIR_extsrc)\sqlite3.h $(SRCDIR)\th.h VERSION.h $(SRCDIR_extsrc)\cson_amalgamation.h
+ @copy /Y nul: headers
diff --git a/win/Makefile.mingw b/win/Makefile.mingw
new file mode 100644
index 0000000..70dee45
--- /dev/null
+++ b/win/Makefile.mingw
@@ -0,0 +1,2657 @@
+#!/usr/bin/make
+#
+##############################################################################
+# WARNING: DO NOT EDIT, AUTOMATICALLY GENERATED FILE (SEE "tools/makemake.tcl")
+##############################################################################
+#
+# This file is automatically generated. Instead of editing this
+# file, edit "makemake.tcl" then run "tclsh makemake.tcl"
+# to regenerate this file.
+#
+# This is a makefile for use on Cygwin/Darwin/FreeBSD/Linux/Windows using
+# MinGW or MinGW-w64.
+#
+# Some of the special options which can be passed to make
+# USE_WINDOWS=1 if building under a windows command prompt
+# X64=1 if using an unprefixed 64-bit mingw compiler
+#
+
+#### Select one of MinGW, MinGW-w64 (32-bit) or MinGW-w64 (64-bit) compilers.
+# By default, this is an empty string (i.e. use the native compiler).
+#
+PREFIX =
+# PREFIX = mingw32-
+# PREFIX = i686-pc-mingw32-
+# PREFIX = i686-w64-mingw32-
+# PREFIX = x86_64-w64-mingw32-
+
+#### The toplevel directory of the source tree. Fossil can be built
+# in a directory that is separate from the source tree. Just change
+# the following to point from the build directory to the src/ folder.
+#
+SRCDIR = src
+SRCDIR_extsrc = extsrc
+SRCDIR_tools = tools
+
+#### The directory into which object code files should be written.
+#
+OBJDIR = wbld
+
+#### C compiler for use in building executables that will run on
+# the platform that is doing the build. This is used to compile
+# code-generator programs as part of the build process. See TCC
+# and TCCEXE below for the C compiler for building the finished
+# binary.
+#
+BCCEXE = gcc
+
+#### C Compiler and options for use in building executables that
+# will run on the platform that is doing the build. This is used
+# to compile code-generator programs as part of the build process.
+# See TCC below for the C compiler for building the finished binary.
+#
+BCC = $(BCCEXE)
+
+#### Enable compiling with debug symbols (much larger binary)
+#
+# FOSSIL_ENABLE_SYMBOLS = 1
+
+#### Enable JSON (https://www.json.org) support using "cson"
+#
+# FOSSIL_ENABLE_JSON = 1
+
+#### Enable HTTPS support via OpenSSL (links to libssl and libcrypto)
+#
+# FOSSIL_ENABLE_SSL = 1
+
+#### Automatically build OpenSSL when building Fossil (causes rebuild
+# issues when building incrementally).
+#
+# FOSSIL_BUILD_SSL = 1
+
+#### Enable relative paths in external diff/gdiff
+#
+# FOSSIL_ENABLE_EXEC_REL_PATHS = 1
+
+#### Enable TH1 scripts in embedded documentation files
+#
+# FOSSIL_ENABLE_TH1_DOCS = 1
+
+#### Enable hooks for commands and web pages via TH1
+#
+# FOSSIL_ENABLE_TH1_HOOKS = 1
+
+#### Enable scripting support via Tcl/Tk
+#
+# FOSSIL_ENABLE_TCL = 1
+
+#### Load Tcl using the stubs library mechanism
+#
+# FOSSIL_ENABLE_TCL_STUBS = 1
+
+#### Load Tcl using the private stubs mechanism
+#
+# FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
+
+#### Use 'system' SQLite
+#
+# USE_SYSTEM_SQLITE = 1
+
+#### Use POSIX memory APIs from "sys/mman.h"
+#
+# USE_MMAN_H = 1
+
+#### Use the SQLite Encryption Extension
+#
+# USE_SEE = 1
+
+#### Use the Tcl source directory instead of the install directory?
+# This is useful when Tcl has been compiled statically with MinGW.
+#
+FOSSIL_TCL_SOURCE = 1
+
+#### Check if the workaround for the MinGW command line handling needs to
+# be enabled by default. This check may be somewhat fragile due to the
+# use of "findstring".
+#
+ifndef MINGW_IS_32BIT_ONLY
+ifeq (,$(findstring w64-mingw32,$(PREFIX)))
+MINGW_IS_32BIT_ONLY = 1
+endif
+endif
+
+#### The directories where the zlib include and library files are located.
+#
+ZINCDIR = $(SRCDIR)/../compat/zlib
+ZLIBDIR = $(SRCDIR)/../compat/zlib
+
+#### Make an attempt to detect if Fossil is being built for the x64 processor
+# architecture. This check may be somewhat fragile due to "findstring".
+#
+ifndef X64
+ifneq (,$(findstring x86_64-w64-mingw32,$(PREFIX)))
+X64 = 1
+endif
+endif
+
+#### Determine if the optimized assembly routines provided with zlib should be
+# used, taking into account whether zlib is actually enabled and the target
+# processor architecture.
+#
+ifndef X64
+SSLCONFIG = mingw
+ZLIBCONFIG =
+ZLIBTARGETS =
+else
+SSLCONFIG = mingw64
+ZLIBCONFIG =
+ZLIBTARGETS =
+endif
+
+#### Disable creation of the OpenSSL shared libraries. Also, disable support
+# for SSLv3 (i.e. thereby forcing the use of TLS).
+#
+SSLCONFIG += no-ssl3 no-weak-ssl-ciphers no-shared
+
+#### When using zlib, make sure that OpenSSL is configured to use the zlib
+# that Fossil knows about (i.e. the one within the source tree).
+#
+SSLCONFIG += --with-zlib-lib=$(PWD)/$(ZLIBDIR) --with-zlib-include=$(PWD)/$(ZLIBDIR) zlib
+
+#### The directories where the OpenSSL include and library files are located.
+#
+OPENSSLDIR = $(SRCDIR)/../compat/openssl
+OPENSSLINCDIR = $(OPENSSLDIR)/include
+OPENSSLLIBDIR = $(OPENSSLDIR)
+
+#### Either the directory where the Tcl library is installed or the Tcl
+# source code directory resides (depending on the value of the macro
+# FOSSIL_TCL_SOURCE). If this points to the Tcl install directory,
+# this directory must have "include" and "lib" sub-directories. If
+# this points to the Tcl source code directory, this directory must
+# have "generic" and "win" sub-directories. The recommended usage
+# here is to use the Sysinternals junction tool to create a hard
+# link between a "tcl-8.x" sub-directory of the Fossil source code
+# directory and the target Tcl directory. This removes the need to
+# hard-code the necessary paths in this Makefile.
+#
+TCLDIR = $(SRCDIR)/../compat/tcl-8.6
+
+#### The Tcl source code directory. This defaults to the same value as
+# TCLDIR macro (above), which may not be correct. This value will
+# only be used if the FOSSIL_TCL_SOURCE macro is defined.
+#
+TCLSRCDIR = $(TCLDIR)
+
+#### The Tcl include and library directories. These values will only be
+# used if the FOSSIL_TCL_SOURCE macro is not defined.
+#
+TCLINCDIR = $(TCLDIR)/include
+TCLLIBDIR = $(TCLDIR)/lib
+
+#### Tcl: Which Tcl library do we want to use (8.4, 8.5, 8.6, etc)?
+#
+ifdef FOSSIL_ENABLE_TCL_STUBS
+ifndef FOSSIL_ENABLE_TCL_PRIVATE_STUBS
+LIBTCL = -ltclstub86
+endif
+TCLTARGET = libtclstub86.a
+else
+LIBTCL = -ltcl86
+TCLTARGET = binaries
+endif
+
+#### C compiler for use in building executables that will run on the
+# target platform. This is usually the same as BCCEXE, unless you
+# are cross-compiling. This C compiler builds the finished binary
+# for fossil. See BCC and BCCEXE above for the C compiler for
+# building intermediate code-generator tools.
+#
+TCCEXE = gcc
+
+#### C compiler and options for use in building executables that will
+# run on the target platform. This is usually the almost the same
+# as BCC, unless you are cross-compiling. This C compiler builds
+# the finished binary for fossil. The BCC compiler above is used
+# for building intermediate code-generator tools.
+#
+TCC = $(PREFIX)$(TCCEXE) -Wall -Wdeclaration-after-statement
+TCC += -I$(SRCDIR_extsrc)
+
+#### Add the necessary command line options to build with debugging
+# symbols, if enabled.
+#
+ifdef FOSSIL_ENABLE_SYMBOLS
+TCC += -g
+else
+TCC += -Os
+endif
+
+TCC += -L$(ZLIBDIR) -I$(ZINCDIR)
+
+#### Compile resources for use in building executables that will run
+# on the target platform.
+#
+RCC = $(PREFIX)windres -I$(SRCDIR) -I$(ZINCDIR)
+RCC += -I$(SRCDIR_extsrc)
+
+# With HTTPS support
+ifdef FOSSIL_ENABLE_SSL
+TCC += -L$(OPENSSLLIBDIR) -I$(OPENSSLINCDIR)
+RCC += -I$(OPENSSLINCDIR)
+endif
+
+# With Tcl support
+ifdef FOSSIL_ENABLE_TCL
+ifdef FOSSIL_TCL_SOURCE
+TCC += -L$(TCLSRCDIR)/win -I$(TCLSRCDIR)/generic -I$(TCLSRCDIR)/win
+RCC += -I$(TCLSRCDIR)/generic -I$(TCLSRCDIR)/win
+else
+TCC += -L$(TCLLIBDIR) -I$(TCLINCDIR)
+RCC += -I$(TCLINCDIR)
+endif
+endif
+
+# With MinGW command line handling workaround
+ifdef MINGW_IS_32BIT_ONLY
+TCC += -DBROKEN_MINGW_CMDLINE=1
+RCC += -DBROKEN_MINGW_CMDLINE=1
+endif
+
+# With HTTPS support
+ifdef FOSSIL_ENABLE_SSL
+TCC += -DFOSSIL_ENABLE_SSL=1
+RCC += -DFOSSIL_ENABLE_SSL=1
+endif
+
+# With relative paths in external diff/gdiff
+ifdef FOSSIL_ENABLE_EXEC_REL_PATHS
+TCC += -DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+RCC += -DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+endif
+
+# With TH1 embedded docs support
+ifdef FOSSIL_ENABLE_TH1_DOCS
+TCC += -DFOSSIL_ENABLE_TH1_DOCS=1
+RCC += -DFOSSIL_ENABLE_TH1_DOCS=1
+endif
+
+# With TH1 hook support
+ifdef FOSSIL_ENABLE_TH1_HOOKS
+TCC += -DFOSSIL_ENABLE_TH1_HOOKS=1
+RCC += -DFOSSIL_ENABLE_TH1_HOOKS=1
+endif
+
+# With Tcl support
+ifdef FOSSIL_ENABLE_TCL
+TCC += -DFOSSIL_ENABLE_TCL=1
+RCC += -DFOSSIL_ENABLE_TCL=1
+# Either statically linked or via stubs
+ifdef FOSSIL_ENABLE_TCL_STUBS
+TCC += -DFOSSIL_ENABLE_TCL_STUBS=1 -DUSE_TCL_STUBS
+RCC += -DFOSSIL_ENABLE_TCL_STUBS=1 -DUSE_TCL_STUBS
+ifdef FOSSIL_ENABLE_TCL_PRIVATE_STUBS
+TCC += -DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+RCC += -DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+endif
+else
+TCC += -DSTATIC_BUILD
+RCC += -DSTATIC_BUILD
+endif
+endif
+
+# With JSON support
+ifdef FOSSIL_ENABLE_JSON
+TCC += -DFOSSIL_ENABLE_JSON=1
+RCC += -DFOSSIL_ENABLE_JSON=1
+endif
+
+# With "sys/mman.h" support
+ifdef USE_MMAN_H
+TCC += -DUSE_MMAN_H=1
+RCC += -DUSE_MMAN_H=1
+endif
+
+# With SQLite Encryption Extension support
+ifdef USE_SEE
+TCC += -DUSE_SEE=1
+RCC += -DUSE_SEE=1
+endif
+
+#### The option -static has no effect on MinGW(-w64), only dynamic
+# executables can be built when linking with MSVCRT. OpenSSL
+# (optional) and zlib (required) however are always linked in
+# statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
+# not really apply to MinGW (i.e. since ALL external libraries
+# are NOT linked dynamically).
+#
+# LIB = -static
+
+#### MinGW: If available, use the Unicode capable runtime startup code.
+#
+ifndef MINGW_IS_32BIT_ONLY
+LIB += -municode
+endif
+
+#### SQLite: If enabled, use the system SQLite library.
+#
+ifdef USE_SYSTEM_SQLITE
+LIB += -lsqlite3
+endif
+
+#### OpenSSL: Add the necessary libraries required, if enabled.
+#
+ifdef FOSSIL_ENABLE_SSL
+LIB += -lssl -lcrypto -lgdi32 -lcrypt32
+endif
+
+#### Tcl: Add the necessary libraries required, if enabled.
+#
+ifdef FOSSIL_ENABLE_TCL
+LIB += $(LIBTCL)
+endif
+
+#### Extra arguments for linking the finished binary. Fossil needs
+# to link against the Z-Lib compression library. There are no
+# other mandatory dependencies.
+#
+LIB += -lmingwex
+
+#### zlib is required.
+#
+LIB += -lz
+
+#### These libraries MUST appear in the same order as they do for Tcl
+# or linking with it will not work (exact reason unknown).
+#
+ifdef FOSSIL_ENABLE_TCL
+ifdef FOSSIL_ENABLE_TCL_STUBS
+LIB += -lkernel32 -lws2_32
+else
+LIB += -lnetapi32 -lkernel32 -luser32 -ladvapi32 -lws2_32
+endif
+else
+LIB += -lkernel32 -lws2_32
+endif
+
+#### Library required for DNS lookups.
+#
+LIB += -ldnsapi
+
+#### Tcl shell for use in running the fossil test suite. This is only
+# used for testing.
+#
+TCLSH = tclsh
+
+#### Nullsoft installer MakeNSIS location
+#
+MAKENSIS = "$(PROGRAMFILES)\NSIS\MakeNSIS.exe"
+
+#### Inno Setup executable location
+#
+INNOSETUP = "$(PROGRAMFILES)\Inno Setup 5\ISCC.exe"
+
+#### Include a configuration file that can override any one of these settings.
+#
+-include config.w32
+
+# STOP HERE
+# You should not need to change anything below this line
+#--------------------------------------------------------
+XBCC = $(BCC) $(CFLAGS)
+XTCC = $(TCC) $(CFLAGS) -I. -I$(SRCDIR)
+
+SRC = \
+ $(SRCDIR)/add.c \
+ $(SRCDIR)/ajax.c \
+ $(SRCDIR)/alerts.c \
+ $(SRCDIR)/allrepo.c \
+ $(SRCDIR)/attach.c \
+ $(SRCDIR)/backlink.c \
+ $(SRCDIR)/backoffice.c \
+ $(SRCDIR)/bag.c \
+ $(SRCDIR)/bisect.c \
+ $(SRCDIR)/blob.c \
+ $(SRCDIR)/branch.c \
+ $(SRCDIR)/browse.c \
+ $(SRCDIR)/builtin.c \
+ $(SRCDIR)/bundle.c \
+ $(SRCDIR)/cache.c \
+ $(SRCDIR)/capabilities.c \
+ $(SRCDIR)/captcha.c \
+ $(SRCDIR)/cgi.c \
+ $(SRCDIR)/chat.c \
+ $(SRCDIR)/checkin.c \
+ $(SRCDIR)/checkout.c \
+ $(SRCDIR)/clearsign.c \
+ $(SRCDIR)/clone.c \
+ $(SRCDIR)/color.c \
+ $(SRCDIR)/comformat.c \
+ $(SRCDIR)/configure.c \
+ $(SRCDIR)/content.c \
+ $(SRCDIR)/cookies.c \
+ $(SRCDIR)/db.c \
+ $(SRCDIR)/delta.c \
+ $(SRCDIR)/deltacmd.c \
+ $(SRCDIR)/deltafunc.c \
+ $(SRCDIR)/descendants.c \
+ $(SRCDIR)/diff.c \
+ $(SRCDIR)/diffcmd.c \
+ $(SRCDIR)/dispatch.c \
+ $(SRCDIR)/doc.c \
+ $(SRCDIR)/encode.c \
+ $(SRCDIR)/etag.c \
+ $(SRCDIR)/event.c \
+ $(SRCDIR)/export.c \
+ $(SRCDIR)/extcgi.c \
+ $(SRCDIR)/file.c \
+ $(SRCDIR)/fileedit.c \
+ $(SRCDIR)/finfo.c \
+ $(SRCDIR)/foci.c \
+ $(SRCDIR)/forum.c \
+ $(SRCDIR)/fshell.c \
+ $(SRCDIR)/fusefs.c \
+ $(SRCDIR)/fuzz.c \
+ $(SRCDIR)/glob.c \
+ $(SRCDIR)/graph.c \
+ $(SRCDIR)/gzip.c \
+ $(SRCDIR)/hname.c \
+ $(SRCDIR)/hook.c \
+ $(SRCDIR)/http.c \
+ $(SRCDIR)/http_socket.c \
+ $(SRCDIR)/http_ssl.c \
+ $(SRCDIR)/http_transport.c \
+ $(SRCDIR)/import.c \
+ $(SRCDIR)/info.c \
+ $(SRCDIR)/interwiki.c \
+ $(SRCDIR)/json.c \
+ $(SRCDIR)/json_artifact.c \
+ $(SRCDIR)/json_branch.c \
+ $(SRCDIR)/json_config.c \
+ $(SRCDIR)/json_diff.c \
+ $(SRCDIR)/json_dir.c \
+ $(SRCDIR)/json_finfo.c \
+ $(SRCDIR)/json_login.c \
+ $(SRCDIR)/json_query.c \
+ $(SRCDIR)/json_report.c \
+ $(SRCDIR)/json_status.c \
+ $(SRCDIR)/json_tag.c \
+ $(SRCDIR)/json_timeline.c \
+ $(SRCDIR)/json_user.c \
+ $(SRCDIR)/json_wiki.c \
+ $(SRCDIR)/leaf.c \
+ $(SRCDIR)/loadctrl.c \
+ $(SRCDIR)/login.c \
+ $(SRCDIR)/lookslike.c \
+ $(SRCDIR)/main.c \
+ $(SRCDIR)/manifest.c \
+ $(SRCDIR)/markdown.c \
+ $(SRCDIR)/markdown_html.c \
+ $(SRCDIR)/match.c \
+ $(SRCDIR)/md5.c \
+ $(SRCDIR)/merge.c \
+ $(SRCDIR)/merge3.c \
+ $(SRCDIR)/moderate.c \
+ $(SRCDIR)/name.c \
+ $(SRCDIR)/org.c \
+ $(SRCDIR)/patch.c \
+ $(SRCDIR)/path.c \
+ $(SRCDIR)/piechart.c \
+ $(SRCDIR)/pikchrshow.c \
+ $(SRCDIR)/pivot.c \
+ $(SRCDIR)/popen.c \
+ $(SRCDIR)/pqueue.c \
+ $(SRCDIR)/printf.c \
+ $(SRCDIR)/publish.c \
+ $(SRCDIR)/purge.c \
+ $(SRCDIR)/rebuild.c \
+ $(SRCDIR)/regexp.c \
+ $(SRCDIR)/repolist.c \
+ $(SRCDIR)/report.c \
+ $(SRCDIR)/robot.c \
+ $(SRCDIR)/rss.c \
+ $(SRCDIR)/schema.c \
+ $(SRCDIR)/search.c \
+ $(SRCDIR)/security_audit.c \
+ $(SRCDIR)/setup.c \
+ $(SRCDIR)/setupuser.c \
+ $(SRCDIR)/sha1.c \
+ $(SRCDIR)/sha1hard.c \
+ $(SRCDIR)/sha3.c \
+ $(SRCDIR)/shun.c \
+ $(SRCDIR)/sitemap.c \
+ $(SRCDIR)/skins.c \
+ $(SRCDIR)/smtp.c \
+ $(SRCDIR)/sqlcmd.c \
+ $(SRCDIR)/stash.c \
+ $(SRCDIR)/stat.c \
+ $(SRCDIR)/statrep.c \
+ $(SRCDIR)/style.c \
+ $(SRCDIR)/sync.c \
+ $(SRCDIR)/tag.c \
+ $(SRCDIR)/tar.c \
+ $(SRCDIR)/terminal.c \
+ $(SRCDIR)/th_main.c \
+ $(SRCDIR)/timeline.c \
+ $(SRCDIR)/tkt.c \
+ $(SRCDIR)/tktsetup.c \
+ $(SRCDIR)/undo.c \
+ $(SRCDIR)/unicode.c \
+ $(SRCDIR)/unversioned.c \
+ $(SRCDIR)/update.c \
+ $(SRCDIR)/url.c \
+ $(SRCDIR)/user.c \
+ $(SRCDIR)/utf8.c \
+ $(SRCDIR)/util.c \
+ $(SRCDIR)/verify.c \
+ $(SRCDIR)/vfile.c \
+ $(SRCDIR)/wiki.c \
+ $(SRCDIR)/wikiformat.c \
+ $(SRCDIR)/winfile.c \
+ $(SRCDIR)/winhttp.c \
+ $(SRCDIR)/xfer.c \
+ $(SRCDIR)/xfersetup.c \
+ $(SRCDIR)/xsystem.c \
+ $(SRCDIR)/zip.c
+
+EXTRA_FILES = \
+ $(SRCDIR)/../extsrc/pikchr-worker.js \
+ $(SRCDIR)/../extsrc/pikchr.js \
+ $(SRCDIR)/../extsrc/pikchr.wasm \
+ $(SRCDIR)/../skins/ardoise/css.txt \
+ $(SRCDIR)/../skins/ardoise/details.txt \
+ $(SRCDIR)/../skins/ardoise/footer.txt \
+ $(SRCDIR)/../skins/ardoise/header.txt \
+ $(SRCDIR)/../skins/black_and_white/css.txt \
+ $(SRCDIR)/../skins/black_and_white/details.txt \
+ $(SRCDIR)/../skins/black_and_white/footer.txt \
+ $(SRCDIR)/../skins/black_and_white/header.txt \
+ $(SRCDIR)/../skins/blitz/css.txt \
+ $(SRCDIR)/../skins/blitz/details.txt \
+ $(SRCDIR)/../skins/blitz/footer.txt \
+ $(SRCDIR)/../skins/blitz/header.txt \
+ $(SRCDIR)/../skins/blitz/ticket.txt \
+ $(SRCDIR)/../skins/copland/css.txt \
+ $(SRCDIR)/../skins/copland/details.txt \
+ $(SRCDIR)/../skins/copland/footer.txt \
+ $(SRCDIR)/../skins/copland/header.txt \
+ $(SRCDIR)/../skins/copland/js.txt \
+ $(SRCDIR)/../skins/darkmode/css.txt \
+ $(SRCDIR)/../skins/darkmode/details.txt \
+ $(SRCDIR)/../skins/darkmode/footer.txt \
+ $(SRCDIR)/../skins/darkmode/header.txt \
+ $(SRCDIR)/../skins/default/css.txt \
+ $(SRCDIR)/../skins/default/details.txt \
+ $(SRCDIR)/../skins/default/footer.txt \
+ $(SRCDIR)/../skins/default/header.txt \
+ $(SRCDIR)/../skins/eagle/css.txt \
+ $(SRCDIR)/../skins/eagle/details.txt \
+ $(SRCDIR)/../skins/eagle/footer.txt \
+ $(SRCDIR)/../skins/eagle/header.txt \
+ $(SRCDIR)/../skins/etienne/css.txt \
+ $(SRCDIR)/../skins/etienne/details.txt \
+ $(SRCDIR)/../skins/etienne/footer.txt \
+ $(SRCDIR)/../skins/etienne/header.txt \
+ $(SRCDIR)/../skins/khaki/css.txt \
+ $(SRCDIR)/../skins/khaki/details.txt \
+ $(SRCDIR)/../skins/khaki/footer.txt \
+ $(SRCDIR)/../skins/khaki/header.txt \
+ $(SRCDIR)/../skins/original/css.txt \
+ $(SRCDIR)/../skins/original/details.txt \
+ $(SRCDIR)/../skins/original/footer.txt \
+ $(SRCDIR)/../skins/original/header.txt \
+ $(SRCDIR)/../skins/plain_gray/css.txt \
+ $(SRCDIR)/../skins/plain_gray/details.txt \
+ $(SRCDIR)/../skins/plain_gray/footer.txt \
+ $(SRCDIR)/../skins/plain_gray/header.txt \
+ $(SRCDIR)/../skins/xekri/css.txt \
+ $(SRCDIR)/../skins/xekri/details.txt \
+ $(SRCDIR)/../skins/xekri/footer.txt \
+ $(SRCDIR)/../skins/xekri/header.txt \
+ $(SRCDIR)/accordion.js \
+ $(SRCDIR)/alerts/bflat2.wav \
+ $(SRCDIR)/alerts/bflat3.wav \
+ $(SRCDIR)/alerts/bloop.wav \
+ $(SRCDIR)/alerts/plunk.wav \
+ $(SRCDIR)/ci_edit.js \
+ $(SRCDIR)/copybtn.js \
+ $(SRCDIR)/default.css \
+ $(SRCDIR)/diff.js \
+ $(SRCDIR)/diff.tcl \
+ $(SRCDIR)/forum.js \
+ $(SRCDIR)/fossil.attach.js \
+ $(SRCDIR)/fossil.bootstrap.js \
+ $(SRCDIR)/fossil.confirmer.js \
+ $(SRCDIR)/fossil.copybutton.js \
+ $(SRCDIR)/fossil.diff.js \
+ $(SRCDIR)/fossil.dom.js \
+ $(SRCDIR)/fossil.fetch.js \
+ $(SRCDIR)/fossil.numbered-lines.js \
+ $(SRCDIR)/fossil.page.brlist.js \
+ $(SRCDIR)/fossil.page.chat.js \
+ $(SRCDIR)/fossil.page.fileedit.js \
+ $(SRCDIR)/fossil.page.forumpost.js \
+ $(SRCDIR)/fossil.page.pikchrshow.js \
+ $(SRCDIR)/fossil.page.pikchrshowasm.js \
+ $(SRCDIR)/fossil.page.ticket.js \
+ $(SRCDIR)/fossil.page.whistory.js \
+ $(SRCDIR)/fossil.page.wikiedit.js \
+ $(SRCDIR)/fossil.pikchr.js \
+ $(SRCDIR)/fossil.popupwidget.js \
+ $(SRCDIR)/fossil.storage.js \
+ $(SRCDIR)/fossil.tabs.js \
+ $(SRCDIR)/fossil.wikiedit-wysiwyg.js \
+ $(SRCDIR)/graph.js \
+ $(SRCDIR)/hbmenu.js \
+ $(SRCDIR)/href.js \
+ $(SRCDIR)/login.js \
+ $(SRCDIR)/markdown.md \
+ $(SRCDIR)/menu.js \
+ $(SRCDIR)/merge.tcl \
+ $(SRCDIR)/scroll.js \
+ $(SRCDIR)/skin.js \
+ $(SRCDIR)/sorttable.js \
+ $(SRCDIR)/sounds/0.wav \
+ $(SRCDIR)/sounds/1.wav \
+ $(SRCDIR)/sounds/2.wav \
+ $(SRCDIR)/sounds/3.wav \
+ $(SRCDIR)/sounds/4.wav \
+ $(SRCDIR)/sounds/5.wav \
+ $(SRCDIR)/sounds/6.wav \
+ $(SRCDIR)/sounds/7.wav \
+ $(SRCDIR)/sounds/8.wav \
+ $(SRCDIR)/sounds/9.wav \
+ $(SRCDIR)/sounds/a.wav \
+ $(SRCDIR)/sounds/b.wav \
+ $(SRCDIR)/sounds/c.wav \
+ $(SRCDIR)/sounds/d.wav \
+ $(SRCDIR)/sounds/e.wav \
+ $(SRCDIR)/sounds/f.wav \
+ $(SRCDIR)/style.admin_log.css \
+ $(SRCDIR)/style.chat.css \
+ $(SRCDIR)/style.fileedit.css \
+ $(SRCDIR)/style.forum.css \
+ $(SRCDIR)/style.pikchrshow.css \
+ $(SRCDIR)/style.uvlist.css \
+ $(SRCDIR)/style.wikiedit.css \
+ $(SRCDIR)/tree.js \
+ $(SRCDIR)/useredit.js \
+ $(SRCDIR)/wiki.wiki
+
+TRANS_SRC = \
+ $(OBJDIR)/add_.c \
+ $(OBJDIR)/ajax_.c \
+ $(OBJDIR)/alerts_.c \
+ $(OBJDIR)/allrepo_.c \
+ $(OBJDIR)/attach_.c \
+ $(OBJDIR)/backlink_.c \
+ $(OBJDIR)/backoffice_.c \
+ $(OBJDIR)/bag_.c \
+ $(OBJDIR)/bisect_.c \
+ $(OBJDIR)/blob_.c \
+ $(OBJDIR)/branch_.c \
+ $(OBJDIR)/browse_.c \
+ $(OBJDIR)/builtin_.c \
+ $(OBJDIR)/bundle_.c \
+ $(OBJDIR)/cache_.c \
+ $(OBJDIR)/capabilities_.c \
+ $(OBJDIR)/captcha_.c \
+ $(OBJDIR)/cgi_.c \
+ $(OBJDIR)/chat_.c \
+ $(OBJDIR)/checkin_.c \
+ $(OBJDIR)/checkout_.c \
+ $(OBJDIR)/clearsign_.c \
+ $(OBJDIR)/clone_.c \
+ $(OBJDIR)/color_.c \
+ $(OBJDIR)/comformat_.c \
+ $(OBJDIR)/configure_.c \
+ $(OBJDIR)/content_.c \
+ $(OBJDIR)/cookies_.c \
+ $(OBJDIR)/db_.c \
+ $(OBJDIR)/delta_.c \
+ $(OBJDIR)/deltacmd_.c \
+ $(OBJDIR)/deltafunc_.c \
+ $(OBJDIR)/descendants_.c \
+ $(OBJDIR)/diff_.c \
+ $(OBJDIR)/diffcmd_.c \
+ $(OBJDIR)/dispatch_.c \
+ $(OBJDIR)/doc_.c \
+ $(OBJDIR)/encode_.c \
+ $(OBJDIR)/etag_.c \
+ $(OBJDIR)/event_.c \
+ $(OBJDIR)/export_.c \
+ $(OBJDIR)/extcgi_.c \
+ $(OBJDIR)/file_.c \
+ $(OBJDIR)/fileedit_.c \
+ $(OBJDIR)/finfo_.c \
+ $(OBJDIR)/foci_.c \
+ $(OBJDIR)/forum_.c \
+ $(OBJDIR)/fshell_.c \
+ $(OBJDIR)/fusefs_.c \
+ $(OBJDIR)/fuzz_.c \
+ $(OBJDIR)/glob_.c \
+ $(OBJDIR)/graph_.c \
+ $(OBJDIR)/gzip_.c \
+ $(OBJDIR)/hname_.c \
+ $(OBJDIR)/hook_.c \
+ $(OBJDIR)/http_.c \
+ $(OBJDIR)/http_socket_.c \
+ $(OBJDIR)/http_ssl_.c \
+ $(OBJDIR)/http_transport_.c \
+ $(OBJDIR)/import_.c \
+ $(OBJDIR)/info_.c \
+ $(OBJDIR)/interwiki_.c \
+ $(OBJDIR)/json_.c \
+ $(OBJDIR)/json_artifact_.c \
+ $(OBJDIR)/json_branch_.c \
+ $(OBJDIR)/json_config_.c \
+ $(OBJDIR)/json_diff_.c \
+ $(OBJDIR)/json_dir_.c \
+ $(OBJDIR)/json_finfo_.c \
+ $(OBJDIR)/json_login_.c \
+ $(OBJDIR)/json_query_.c \
+ $(OBJDIR)/json_report_.c \
+ $(OBJDIR)/json_status_.c \
+ $(OBJDIR)/json_tag_.c \
+ $(OBJDIR)/json_timeline_.c \
+ $(OBJDIR)/json_user_.c \
+ $(OBJDIR)/json_wiki_.c \
+ $(OBJDIR)/leaf_.c \
+ $(OBJDIR)/loadctrl_.c \
+ $(OBJDIR)/login_.c \
+ $(OBJDIR)/lookslike_.c \
+ $(OBJDIR)/main_.c \
+ $(OBJDIR)/manifest_.c \
+ $(OBJDIR)/markdown_.c \
+ $(OBJDIR)/markdown_html_.c \
+ $(OBJDIR)/match_.c \
+ $(OBJDIR)/md5_.c \
+ $(OBJDIR)/merge_.c \
+ $(OBJDIR)/merge3_.c \
+ $(OBJDIR)/moderate_.c \
+ $(OBJDIR)/name_.c \
+ $(OBJDIR)/org_.c \
+ $(OBJDIR)/patch_.c \
+ $(OBJDIR)/path_.c \
+ $(OBJDIR)/piechart_.c \
+ $(OBJDIR)/pikchrshow_.c \
+ $(OBJDIR)/pivot_.c \
+ $(OBJDIR)/popen_.c \
+ $(OBJDIR)/pqueue_.c \
+ $(OBJDIR)/printf_.c \
+ $(OBJDIR)/publish_.c \
+ $(OBJDIR)/purge_.c \
+ $(OBJDIR)/rebuild_.c \
+ $(OBJDIR)/regexp_.c \
+ $(OBJDIR)/repolist_.c \
+ $(OBJDIR)/report_.c \
+ $(OBJDIR)/robot_.c \
+ $(OBJDIR)/rss_.c \
+ $(OBJDIR)/schema_.c \
+ $(OBJDIR)/search_.c \
+ $(OBJDIR)/security_audit_.c \
+ $(OBJDIR)/setup_.c \
+ $(OBJDIR)/setupuser_.c \
+ $(OBJDIR)/sha1_.c \
+ $(OBJDIR)/sha1hard_.c \
+ $(OBJDIR)/sha3_.c \
+ $(OBJDIR)/shun_.c \
+ $(OBJDIR)/sitemap_.c \
+ $(OBJDIR)/skins_.c \
+ $(OBJDIR)/smtp_.c \
+ $(OBJDIR)/sqlcmd_.c \
+ $(OBJDIR)/stash_.c \
+ $(OBJDIR)/stat_.c \
+ $(OBJDIR)/statrep_.c \
+ $(OBJDIR)/style_.c \
+ $(OBJDIR)/sync_.c \
+ $(OBJDIR)/tag_.c \
+ $(OBJDIR)/tar_.c \
+ $(OBJDIR)/terminal_.c \
+ $(OBJDIR)/th_main_.c \
+ $(OBJDIR)/timeline_.c \
+ $(OBJDIR)/tkt_.c \
+ $(OBJDIR)/tktsetup_.c \
+ $(OBJDIR)/undo_.c \
+ $(OBJDIR)/unicode_.c \
+ $(OBJDIR)/unversioned_.c \
+ $(OBJDIR)/update_.c \
+ $(OBJDIR)/url_.c \
+ $(OBJDIR)/user_.c \
+ $(OBJDIR)/utf8_.c \
+ $(OBJDIR)/util_.c \
+ $(OBJDIR)/verify_.c \
+ $(OBJDIR)/vfile_.c \
+ $(OBJDIR)/wiki_.c \
+ $(OBJDIR)/wikiformat_.c \
+ $(OBJDIR)/winfile_.c \
+ $(OBJDIR)/winhttp_.c \
+ $(OBJDIR)/xfer_.c \
+ $(OBJDIR)/xfersetup_.c \
+ $(OBJDIR)/xsystem_.c \
+ $(OBJDIR)/zip_.c
+
+OBJ = \
+ $(OBJDIR)/add.o \
+ $(OBJDIR)/ajax.o \
+ $(OBJDIR)/alerts.o \
+ $(OBJDIR)/allrepo.o \
+ $(OBJDIR)/attach.o \
+ $(OBJDIR)/backlink.o \
+ $(OBJDIR)/backoffice.o \
+ $(OBJDIR)/bag.o \
+ $(OBJDIR)/bisect.o \
+ $(OBJDIR)/blob.o \
+ $(OBJDIR)/branch.o \
+ $(OBJDIR)/browse.o \
+ $(OBJDIR)/builtin.o \
+ $(OBJDIR)/bundle.o \
+ $(OBJDIR)/cache.o \
+ $(OBJDIR)/capabilities.o \
+ $(OBJDIR)/captcha.o \
+ $(OBJDIR)/cgi.o \
+ $(OBJDIR)/chat.o \
+ $(OBJDIR)/checkin.o \
+ $(OBJDIR)/checkout.o \
+ $(OBJDIR)/clearsign.o \
+ $(OBJDIR)/clone.o \
+ $(OBJDIR)/color.o \
+ $(OBJDIR)/comformat.o \
+ $(OBJDIR)/configure.o \
+ $(OBJDIR)/content.o \
+ $(OBJDIR)/cookies.o \
+ $(OBJDIR)/db.o \
+ $(OBJDIR)/delta.o \
+ $(OBJDIR)/deltacmd.o \
+ $(OBJDIR)/deltafunc.o \
+ $(OBJDIR)/descendants.o \
+ $(OBJDIR)/diff.o \
+ $(OBJDIR)/diffcmd.o \
+ $(OBJDIR)/dispatch.o \
+ $(OBJDIR)/doc.o \
+ $(OBJDIR)/encode.o \
+ $(OBJDIR)/etag.o \
+ $(OBJDIR)/event.o \
+ $(OBJDIR)/export.o \
+ $(OBJDIR)/extcgi.o \
+ $(OBJDIR)/file.o \
+ $(OBJDIR)/fileedit.o \
+ $(OBJDIR)/finfo.o \
+ $(OBJDIR)/foci.o \
+ $(OBJDIR)/forum.o \
+ $(OBJDIR)/fshell.o \
+ $(OBJDIR)/fusefs.o \
+ $(OBJDIR)/fuzz.o \
+ $(OBJDIR)/glob.o \
+ $(OBJDIR)/graph.o \
+ $(OBJDIR)/gzip.o \
+ $(OBJDIR)/hname.o \
+ $(OBJDIR)/hook.o \
+ $(OBJDIR)/http.o \
+ $(OBJDIR)/http_socket.o \
+ $(OBJDIR)/http_ssl.o \
+ $(OBJDIR)/http_transport.o \
+ $(OBJDIR)/import.o \
+ $(OBJDIR)/info.o \
+ $(OBJDIR)/interwiki.o \
+ $(OBJDIR)/json.o \
+ $(OBJDIR)/json_artifact.o \
+ $(OBJDIR)/json_branch.o \
+ $(OBJDIR)/json_config.o \
+ $(OBJDIR)/json_diff.o \
+ $(OBJDIR)/json_dir.o \
+ $(OBJDIR)/json_finfo.o \
+ $(OBJDIR)/json_login.o \
+ $(OBJDIR)/json_query.o \
+ $(OBJDIR)/json_report.o \
+ $(OBJDIR)/json_status.o \
+ $(OBJDIR)/json_tag.o \
+ $(OBJDIR)/json_timeline.o \
+ $(OBJDIR)/json_user.o \
+ $(OBJDIR)/json_wiki.o \
+ $(OBJDIR)/leaf.o \
+ $(OBJDIR)/loadctrl.o \
+ $(OBJDIR)/login.o \
+ $(OBJDIR)/lookslike.o \
+ $(OBJDIR)/main.o \
+ $(OBJDIR)/manifest.o \
+ $(OBJDIR)/markdown.o \
+ $(OBJDIR)/markdown_html.o \
+ $(OBJDIR)/match.o \
+ $(OBJDIR)/md5.o \
+ $(OBJDIR)/merge.o \
+ $(OBJDIR)/merge3.o \
+ $(OBJDIR)/moderate.o \
+ $(OBJDIR)/name.o \
+ $(OBJDIR)/org.o \
+ $(OBJDIR)/patch.o \
+ $(OBJDIR)/path.o \
+ $(OBJDIR)/piechart.o \
+ $(OBJDIR)/pikchrshow.o \
+ $(OBJDIR)/pivot.o \
+ $(OBJDIR)/popen.o \
+ $(OBJDIR)/pqueue.o \
+ $(OBJDIR)/printf.o \
+ $(OBJDIR)/publish.o \
+ $(OBJDIR)/purge.o \
+ $(OBJDIR)/rebuild.o \
+ $(OBJDIR)/regexp.o \
+ $(OBJDIR)/repolist.o \
+ $(OBJDIR)/report.o \
+ $(OBJDIR)/robot.o \
+ $(OBJDIR)/rss.o \
+ $(OBJDIR)/schema.o \
+ $(OBJDIR)/search.o \
+ $(OBJDIR)/security_audit.o \
+ $(OBJDIR)/setup.o \
+ $(OBJDIR)/setupuser.o \
+ $(OBJDIR)/sha1.o \
+ $(OBJDIR)/sha1hard.o \
+ $(OBJDIR)/sha3.o \
+ $(OBJDIR)/shun.o \
+ $(OBJDIR)/sitemap.o \
+ $(OBJDIR)/skins.o \
+ $(OBJDIR)/smtp.o \
+ $(OBJDIR)/sqlcmd.o \
+ $(OBJDIR)/stash.o \
+ $(OBJDIR)/stat.o \
+ $(OBJDIR)/statrep.o \
+ $(OBJDIR)/style.o \
+ $(OBJDIR)/sync.o \
+ $(OBJDIR)/tag.o \
+ $(OBJDIR)/tar.o \
+ $(OBJDIR)/terminal.o \
+ $(OBJDIR)/th_main.o \
+ $(OBJDIR)/timeline.o \
+ $(OBJDIR)/tkt.o \
+ $(OBJDIR)/tktsetup.o \
+ $(OBJDIR)/undo.o \
+ $(OBJDIR)/unicode.o \
+ $(OBJDIR)/unversioned.o \
+ $(OBJDIR)/update.o \
+ $(OBJDIR)/url.o \
+ $(OBJDIR)/user.o \
+ $(OBJDIR)/utf8.o \
+ $(OBJDIR)/util.o \
+ $(OBJDIR)/verify.o \
+ $(OBJDIR)/vfile.o \
+ $(OBJDIR)/wiki.o \
+ $(OBJDIR)/wikiformat.o \
+ $(OBJDIR)/winfile.o \
+ $(OBJDIR)/winhttp.o \
+ $(OBJDIR)/xfer.o \
+ $(OBJDIR)/xfersetup.o \
+ $(OBJDIR)/xsystem.o \
+ $(OBJDIR)/zip.o
+
+APPNAME = fossil.exe
+APPTARGETS =
+
+#### If the USE_WINDOWS variable exists, it is assumed that we are building
+# inside of a Windows-style shell; otherwise, it is assumed that we are
+# building inside of a Unix-style shell. Note that the "move" command is
+# broken when attempting to use it from the Windows shell via MinGW make
+# because the SHELL variable is only used for certain commands that are
+# recognized internally by make.
+#
+ifdef USE_WINDOWS
+TRANSLATE = $(subst /,\,$(OBJDIR)/translate.exe)
+MAKEHEADERS = $(subst /,\,$(OBJDIR)/makeheaders.exe)
+MKINDEX = $(subst /,\,$(OBJDIR)/mkindex.exe)
+MKBUILTIN = $(subst /,\,$(OBJDIR)/mkbuiltin.exe)
+MKVERSION = $(subst /,\,$(OBJDIR)/mkversion.exe)
+CODECHECK1 = $(subst /,\,$(OBJDIR)/codecheck1.exe)
+CAT = type
+CP = copy
+GREP = find
+MV = copy
+RM = del /Q
+MKDIR = -mkdir
+RMDIR = rmdir /S /Q
+else
+TRANSLATE = $(OBJDIR)/translate.exe
+MAKEHEADERS = $(OBJDIR)/makeheaders.exe
+MKINDEX = $(OBJDIR)/mkindex.exe
+MKBUILTIN = $(OBJDIR)/mkbuiltin.exe
+MKVERSION = $(OBJDIR)/mkversion.exe
+CODECHECK1 = $(OBJDIR)/codecheck1.exe
+CAT = cat
+CP = cp
+GREP = grep
+MV = mv
+RM = rm -f
+MKDIR = -mkdir -p
+RMDIR = rm -rf
+endif
+
+all: $(OBJDIR) $(APPNAME)
+
+$(OBJDIR)/fossil.o: $(SRCDIR)/../win/fossil.rc $(OBJDIR)/VERSION.h
+ifdef USE_WINDOWS
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.rc) $(subst /,\,$(OBJDIR))
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.ico) $(subst /,\,$(OBJDIR))
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.exe.manifest) $(subst /,\,$(OBJDIR))
+else
+ $(CP) $(SRCDIR)/../win/fossil.rc $(OBJDIR)
+ $(CP) $(SRCDIR)/../win/fossil.ico $(OBJDIR)
+ $(CP) $(SRCDIR)/../win/fossil.exe.manifest $(OBJDIR)
+endif
+ $(RCC) $(OBJDIR)/fossil.rc -o $(OBJDIR)/fossil.o
+
+install: $(OBJDIR) $(APPNAME)
+ifdef USE_WINDOWS
+ $(MKDIR) $(subst /,\,$(INSTALLDIR))
+ $(CP) $(subst /,\,$(APPNAME)) $(subst /,\,$(INSTALLDIR))
+else
+ $(MKDIR) $(INSTALLDIR)
+ $(CP) $(APPNAME) $(INSTALLDIR)
+endif
+
+$(OBJDIR):
+ifdef USE_WINDOWS
+ $(MKDIR) $(subst /,\,$(OBJDIR))
+else
+ $(MKDIR) $(OBJDIR)
+endif
+
+$(TRANSLATE): $(SRCDIR_tools)/translate.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/translate.c
+
+$(MAKEHEADERS): $(SRCDIR_tools)/makeheaders.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/makeheaders.c
+
+$(MKINDEX): $(SRCDIR_tools)/mkindex.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkindex.c
+
+$(MKBUILTIN): $(SRCDIR_tools)/mkbuiltin.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkbuiltin.c
+
+$(MKVERSION): $(SRCDIR_tools)/mkversion.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkversion.c
+
+$(CODECHECK1): $(SRCDIR_tools)/codecheck1.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/codecheck1.c
+
+# WARNING. DANGER. Running the test suite modifies the repository the
+# build is done from, i.e. the checkout belongs to. Do not sync/push
+# the repository after running the tests.
+test: $(OBJDIR) $(APPNAME)
+ $(TCLSH) $(SRCDIR)/../test/tester.tcl $(APPNAME)
+
+$(OBJDIR)/VERSION.h: $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(MKVERSION) $(OBJDIR)/phony.h
+ $(MKVERSION) $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(SRCDIR)/../VERSION >$@
+
+$(OBJDIR)/phony.h:
+ # Force rebuild of VERSION.h every time "make" is run
+
+# The USE_SYSTEM_SQLITE variable may be undefined, set to 0 or 1.
+# If it is set to 1, then there is no need to build or link
+# the sqlite3.o object. Instead, the system SQLite will be linked
+# using -lsqlite3.
+#
+# Closely related is SQLITE3_ORIGIN, with the same 0/1 mapping,
+# plus a value of 2 means that we are building a client-provided
+# sqlite3.c.
+SQLITE3_OBJ.0 = $(OBJDIR)/sqlite3.o
+SQLITE3_OBJ.1 = $(OBJDIR)/sqlite3-see.o
+# SQLITE3_OBJ.2 is set by the configure process
+SQLITE3_OBJ. = $(SQLITE3_OBJ.0)
+SQLITE3_OBJ = $(SQLITE3_OBJ.$(SQLITE3_ORIGIN))
+
+# The USE_SEE variable may be undefined, 0 or 1. If undefined or 0,
+# in-tree SQLite is used. If 1, then sqlite3-see.c (not part of the
+# source tree) is used and extra flags are provided to enable the
+# SQLite Encryption Extension.
+SQLITE3_SRC.0 = $(SRCDIR_extsrc)/sqlite3.c
+SQLITE3_SRC.1 = $(SRCDIR_extsrc)/sqlite3-see.c
+# SQLITE3_SRC.2 is set by top-level configure/makefile process.
+SQLITE3_SRC. = $(SRCDIR_extsrc)/sqlite3.c
+SQLITE3_SRC = $(SQLITE3_SRC.$(SQLITE3_ORIGIN))
+SQLITE3_SHELL_SRC.0 = $(SRCDIR_extsrc)/shell.c
+SQLITE3_SHELL_SRC.1 = $(SRCDIR_extsrc)/shell-see.c
+# SQLITE3_SHELL_SRC.2 comes from the configure process
+SQLITE3_SHELL_SRC. = $(SRCDIR_extsrc)/shell.c
+SQLITE3_SHELL_SRC = $(SQLITE3_SHELL_SRC.$(SQLITE3_ORIGIN))
+SEE_FLAGS.0 =
+SEE_FLAGS.1 = -DSQLITE_HAS_CODEC -DSQLITE_SHELL_DBKEY_PROC=fossil_key
+SEE_FLAGS. =
+SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
+
+
+EXTRAOBJ = \
+ $(SQLITE3_OBJ.$(SQLITE3_ORIGIN)) \
+ $(OBJDIR)/pikchr.o \
+ $(OBJDIR)/shell.o \
+ $(OBJDIR)/th.o \
+ $(OBJDIR)/th_lang.o \
+ $(OBJDIR)/th_tcl.o \
+ $(OBJDIR)/cson_amalgamation.o
+
+
+zlib: $(ZLIBTARGETS)
+ $(MAKE) -C $(ZLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) $(ZLIBCONFIG) -f win32/Makefile.gcc libz.a
+
+clean-zlib:
+ $(MAKE) -C $(ZLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) -f win32/Makefile.gcc clean
+
+BLDTARGETS = zlib
+
+openssl: $(BLDTARGETS)
+ cd $(OPENSSLLIBDIR);./Configure --cross-compile-prefix=$(PREFIX) $(SSLCONFIG)
+ sed -i -e 's/^PERL=C:\\.*$$/PERL=perl.exe/i' $(OPENSSLLIBDIR)/Makefile
+ $(MAKE) -C $(OPENSSLLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) build_libs
+
+clean-openssl:
+ $(MAKE) -C $(OPENSSLLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) clean
+
+tcl:
+ cd $(TCLSRCDIR)/win;./configure
+ $(MAKE) -C $(TCLSRCDIR)/win PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) $(TCLTARGET)
+
+clean-tcl:
+ $(MAKE) -C $(TCLSRCDIR)/win PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) distclean
+
+APPTARGETS += $(BLDTARGETS)
+
+ifdef FOSSIL_BUILD_SSL
+APPTARGETS += openssl
+endif
+
+$(APPNAME): $(APPTARGETS) $(OBJDIR)/headers $(CODECHECK1) $(EXTRAOBJ) $(OBJ) $(OBJDIR)/fossil.o
+ $(CODECHECK1) $(TRANS_SRC)
+ $(TCC) -o $@ $(EXTRAOBJ) $(OBJ) $(OBJDIR)/fossil.o $(LIB)
+
+# This rule prevents make from using its default rules to try build
+# an executable named "manifest" out of the file named "manifest.c"
+#
+$(SRCDIR)/../manifest:
+ # noop
+
+clean:
+ifdef USE_WINDOWS
+ $(RM) $(subst /,\,$(APPNAME))
+ $(RMDIR) $(subst /,\,$(OBJDIR))
+else
+ $(RM) $(APPNAME)
+ $(RMDIR) $(OBJDIR)
+endif
+
+setup: $(OBJDIR) $(APPNAME)
+ $(MAKENSIS) ./setup/fossil.nsi
+
+innosetup: $(OBJDIR) $(APPNAME)
+ $(INNOSETUP) ./setup/fossil.iss -DAppVersion=$(shell $(CAT) ./VERSION)
+
+$(OBJDIR)/page_index.h: $(TRANS_SRC) $(MKINDEX)
+ $(MKINDEX) $(TRANS_SRC) >$@
+
+$(OBJDIR)/builtin_data.h: $(MKBUILTIN) $(EXTRA_FILES)
+ $(MKBUILTIN) --prefix $(SRCDIR)/ $(EXTRA_FILES) >$@
+
+$(OBJDIR)/headers: $(OBJDIR)/page_index.h $(OBJDIR)/builtin_data.h $(MAKEHEADERS) $(OBJDIR)/VERSION.h
+ $(MAKEHEADERS) $(OBJDIR)/add_.c:$(OBJDIR)/add.h \
+ $(OBJDIR)/ajax_.c:$(OBJDIR)/ajax.h \
+ $(OBJDIR)/alerts_.c:$(OBJDIR)/alerts.h \
+ $(OBJDIR)/allrepo_.c:$(OBJDIR)/allrepo.h \
+ $(OBJDIR)/attach_.c:$(OBJDIR)/attach.h \
+ $(OBJDIR)/backlink_.c:$(OBJDIR)/backlink.h \
+ $(OBJDIR)/backoffice_.c:$(OBJDIR)/backoffice.h \
+ $(OBJDIR)/bag_.c:$(OBJDIR)/bag.h \
+ $(OBJDIR)/bisect_.c:$(OBJDIR)/bisect.h \
+ $(OBJDIR)/blob_.c:$(OBJDIR)/blob.h \
+ $(OBJDIR)/branch_.c:$(OBJDIR)/branch.h \
+ $(OBJDIR)/browse_.c:$(OBJDIR)/browse.h \
+ $(OBJDIR)/builtin_.c:$(OBJDIR)/builtin.h \
+ $(OBJDIR)/bundle_.c:$(OBJDIR)/bundle.h \
+ $(OBJDIR)/cache_.c:$(OBJDIR)/cache.h \
+ $(OBJDIR)/capabilities_.c:$(OBJDIR)/capabilities.h \
+ $(OBJDIR)/captcha_.c:$(OBJDIR)/captcha.h \
+ $(OBJDIR)/cgi_.c:$(OBJDIR)/cgi.h \
+ $(OBJDIR)/chat_.c:$(OBJDIR)/chat.h \
+ $(OBJDIR)/checkin_.c:$(OBJDIR)/checkin.h \
+ $(OBJDIR)/checkout_.c:$(OBJDIR)/checkout.h \
+ $(OBJDIR)/clearsign_.c:$(OBJDIR)/clearsign.h \
+ $(OBJDIR)/clone_.c:$(OBJDIR)/clone.h \
+ $(OBJDIR)/color_.c:$(OBJDIR)/color.h \
+ $(OBJDIR)/comformat_.c:$(OBJDIR)/comformat.h \
+ $(OBJDIR)/configure_.c:$(OBJDIR)/configure.h \
+ $(OBJDIR)/content_.c:$(OBJDIR)/content.h \
+ $(OBJDIR)/cookies_.c:$(OBJDIR)/cookies.h \
+ $(OBJDIR)/db_.c:$(OBJDIR)/db.h \
+ $(OBJDIR)/delta_.c:$(OBJDIR)/delta.h \
+ $(OBJDIR)/deltacmd_.c:$(OBJDIR)/deltacmd.h \
+ $(OBJDIR)/deltafunc_.c:$(OBJDIR)/deltafunc.h \
+ $(OBJDIR)/descendants_.c:$(OBJDIR)/descendants.h \
+ $(OBJDIR)/diff_.c:$(OBJDIR)/diff.h \
+ $(OBJDIR)/diffcmd_.c:$(OBJDIR)/diffcmd.h \
+ $(OBJDIR)/dispatch_.c:$(OBJDIR)/dispatch.h \
+ $(OBJDIR)/doc_.c:$(OBJDIR)/doc.h \
+ $(OBJDIR)/encode_.c:$(OBJDIR)/encode.h \
+ $(OBJDIR)/etag_.c:$(OBJDIR)/etag.h \
+ $(OBJDIR)/event_.c:$(OBJDIR)/event.h \
+ $(OBJDIR)/export_.c:$(OBJDIR)/export.h \
+ $(OBJDIR)/extcgi_.c:$(OBJDIR)/extcgi.h \
+ $(OBJDIR)/file_.c:$(OBJDIR)/file.h \
+ $(OBJDIR)/fileedit_.c:$(OBJDIR)/fileedit.h \
+ $(OBJDIR)/finfo_.c:$(OBJDIR)/finfo.h \
+ $(OBJDIR)/foci_.c:$(OBJDIR)/foci.h \
+ $(OBJDIR)/forum_.c:$(OBJDIR)/forum.h \
+ $(OBJDIR)/fshell_.c:$(OBJDIR)/fshell.h \
+ $(OBJDIR)/fusefs_.c:$(OBJDIR)/fusefs.h \
+ $(OBJDIR)/fuzz_.c:$(OBJDIR)/fuzz.h \
+ $(OBJDIR)/glob_.c:$(OBJDIR)/glob.h \
+ $(OBJDIR)/graph_.c:$(OBJDIR)/graph.h \
+ $(OBJDIR)/gzip_.c:$(OBJDIR)/gzip.h \
+ $(OBJDIR)/hname_.c:$(OBJDIR)/hname.h \
+ $(OBJDIR)/hook_.c:$(OBJDIR)/hook.h \
+ $(OBJDIR)/http_.c:$(OBJDIR)/http.h \
+ $(OBJDIR)/http_socket_.c:$(OBJDIR)/http_socket.h \
+ $(OBJDIR)/http_ssl_.c:$(OBJDIR)/http_ssl.h \
+ $(OBJDIR)/http_transport_.c:$(OBJDIR)/http_transport.h \
+ $(OBJDIR)/import_.c:$(OBJDIR)/import.h \
+ $(OBJDIR)/info_.c:$(OBJDIR)/info.h \
+ $(OBJDIR)/interwiki_.c:$(OBJDIR)/interwiki.h \
+ $(OBJDIR)/json_.c:$(OBJDIR)/json.h \
+ $(OBJDIR)/json_artifact_.c:$(OBJDIR)/json_artifact.h \
+ $(OBJDIR)/json_branch_.c:$(OBJDIR)/json_branch.h \
+ $(OBJDIR)/json_config_.c:$(OBJDIR)/json_config.h \
+ $(OBJDIR)/json_diff_.c:$(OBJDIR)/json_diff.h \
+ $(OBJDIR)/json_dir_.c:$(OBJDIR)/json_dir.h \
+ $(OBJDIR)/json_finfo_.c:$(OBJDIR)/json_finfo.h \
+ $(OBJDIR)/json_login_.c:$(OBJDIR)/json_login.h \
+ $(OBJDIR)/json_query_.c:$(OBJDIR)/json_query.h \
+ $(OBJDIR)/json_report_.c:$(OBJDIR)/json_report.h \
+ $(OBJDIR)/json_status_.c:$(OBJDIR)/json_status.h \
+ $(OBJDIR)/json_tag_.c:$(OBJDIR)/json_tag.h \
+ $(OBJDIR)/json_timeline_.c:$(OBJDIR)/json_timeline.h \
+ $(OBJDIR)/json_user_.c:$(OBJDIR)/json_user.h \
+ $(OBJDIR)/json_wiki_.c:$(OBJDIR)/json_wiki.h \
+ $(OBJDIR)/leaf_.c:$(OBJDIR)/leaf.h \
+ $(OBJDIR)/loadctrl_.c:$(OBJDIR)/loadctrl.h \
+ $(OBJDIR)/login_.c:$(OBJDIR)/login.h \
+ $(OBJDIR)/lookslike_.c:$(OBJDIR)/lookslike.h \
+ $(OBJDIR)/main_.c:$(OBJDIR)/main.h \
+ $(OBJDIR)/manifest_.c:$(OBJDIR)/manifest.h \
+ $(OBJDIR)/markdown_.c:$(OBJDIR)/markdown.h \
+ $(OBJDIR)/markdown_html_.c:$(OBJDIR)/markdown_html.h \
+ $(OBJDIR)/match_.c:$(OBJDIR)/match.h \
+ $(OBJDIR)/md5_.c:$(OBJDIR)/md5.h \
+ $(OBJDIR)/merge_.c:$(OBJDIR)/merge.h \
+ $(OBJDIR)/merge3_.c:$(OBJDIR)/merge3.h \
+ $(OBJDIR)/moderate_.c:$(OBJDIR)/moderate.h \
+ $(OBJDIR)/name_.c:$(OBJDIR)/name.h \
+ $(OBJDIR)/org_.c:$(OBJDIR)/org.h \
+ $(OBJDIR)/patch_.c:$(OBJDIR)/patch.h \
+ $(OBJDIR)/path_.c:$(OBJDIR)/path.h \
+ $(OBJDIR)/piechart_.c:$(OBJDIR)/piechart.h \
+ $(OBJDIR)/pikchrshow_.c:$(OBJDIR)/pikchrshow.h \
+ $(OBJDIR)/pivot_.c:$(OBJDIR)/pivot.h \
+ $(OBJDIR)/popen_.c:$(OBJDIR)/popen.h \
+ $(OBJDIR)/pqueue_.c:$(OBJDIR)/pqueue.h \
+ $(OBJDIR)/printf_.c:$(OBJDIR)/printf.h \
+ $(OBJDIR)/publish_.c:$(OBJDIR)/publish.h \
+ $(OBJDIR)/purge_.c:$(OBJDIR)/purge.h \
+ $(OBJDIR)/rebuild_.c:$(OBJDIR)/rebuild.h \
+ $(OBJDIR)/regexp_.c:$(OBJDIR)/regexp.h \
+ $(OBJDIR)/repolist_.c:$(OBJDIR)/repolist.h \
+ $(OBJDIR)/report_.c:$(OBJDIR)/report.h \
+ $(OBJDIR)/robot_.c:$(OBJDIR)/robot.h \
+ $(OBJDIR)/rss_.c:$(OBJDIR)/rss.h \
+ $(OBJDIR)/schema_.c:$(OBJDIR)/schema.h \
+ $(OBJDIR)/search_.c:$(OBJDIR)/search.h \
+ $(OBJDIR)/security_audit_.c:$(OBJDIR)/security_audit.h \
+ $(OBJDIR)/setup_.c:$(OBJDIR)/setup.h \
+ $(OBJDIR)/setupuser_.c:$(OBJDIR)/setupuser.h \
+ $(OBJDIR)/sha1_.c:$(OBJDIR)/sha1.h \
+ $(OBJDIR)/sha1hard_.c:$(OBJDIR)/sha1hard.h \
+ $(OBJDIR)/sha3_.c:$(OBJDIR)/sha3.h \
+ $(OBJDIR)/shun_.c:$(OBJDIR)/shun.h \
+ $(OBJDIR)/sitemap_.c:$(OBJDIR)/sitemap.h \
+ $(OBJDIR)/skins_.c:$(OBJDIR)/skins.h \
+ $(OBJDIR)/smtp_.c:$(OBJDIR)/smtp.h \
+ $(OBJDIR)/sqlcmd_.c:$(OBJDIR)/sqlcmd.h \
+ $(OBJDIR)/stash_.c:$(OBJDIR)/stash.h \
+ $(OBJDIR)/stat_.c:$(OBJDIR)/stat.h \
+ $(OBJDIR)/statrep_.c:$(OBJDIR)/statrep.h \
+ $(OBJDIR)/style_.c:$(OBJDIR)/style.h \
+ $(OBJDIR)/sync_.c:$(OBJDIR)/sync.h \
+ $(OBJDIR)/tag_.c:$(OBJDIR)/tag.h \
+ $(OBJDIR)/tar_.c:$(OBJDIR)/tar.h \
+ $(OBJDIR)/terminal_.c:$(OBJDIR)/terminal.h \
+ $(OBJDIR)/th_main_.c:$(OBJDIR)/th_main.h \
+ $(OBJDIR)/timeline_.c:$(OBJDIR)/timeline.h \
+ $(OBJDIR)/tkt_.c:$(OBJDIR)/tkt.h \
+ $(OBJDIR)/tktsetup_.c:$(OBJDIR)/tktsetup.h \
+ $(OBJDIR)/undo_.c:$(OBJDIR)/undo.h \
+ $(OBJDIR)/unicode_.c:$(OBJDIR)/unicode.h \
+ $(OBJDIR)/unversioned_.c:$(OBJDIR)/unversioned.h \
+ $(OBJDIR)/update_.c:$(OBJDIR)/update.h \
+ $(OBJDIR)/url_.c:$(OBJDIR)/url.h \
+ $(OBJDIR)/user_.c:$(OBJDIR)/user.h \
+ $(OBJDIR)/utf8_.c:$(OBJDIR)/utf8.h \
+ $(OBJDIR)/util_.c:$(OBJDIR)/util.h \
+ $(OBJDIR)/verify_.c:$(OBJDIR)/verify.h \
+ $(OBJDIR)/vfile_.c:$(OBJDIR)/vfile.h \
+ $(OBJDIR)/wiki_.c:$(OBJDIR)/wiki.h \
+ $(OBJDIR)/wikiformat_.c:$(OBJDIR)/wikiformat.h \
+ $(OBJDIR)/winfile_.c:$(OBJDIR)/winfile.h \
+ $(OBJDIR)/winhttp_.c:$(OBJDIR)/winhttp.h \
+ $(OBJDIR)/xfer_.c:$(OBJDIR)/xfer.h \
+ $(OBJDIR)/xfersetup_.c:$(OBJDIR)/xfersetup.h \
+ $(OBJDIR)/xsystem_.c:$(OBJDIR)/xsystem.h \
+ $(OBJDIR)/zip_.c:$(OBJDIR)/zip.h \
+ $(SRCDIR_extsrc)/pikchr.c:$(OBJDIR)/pikchr.h \
+ $(SRCDIR_extsrc)/sqlite3.h \
+ $(SRCDIR)/th.h \
+ $(OBJDIR)/VERSION.h
+ echo Done >$(OBJDIR)/headers
+
+$(OBJDIR)/headers: Makefile
+
+Makefile:
+
+$(OBJDIR)/add_.c: $(SRCDIR)/add.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/add.c >$@
+
+$(OBJDIR)/add.o: $(OBJDIR)/add_.c $(OBJDIR)/add.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/add.o -c $(OBJDIR)/add_.c
+
+$(OBJDIR)/add.h: $(OBJDIR)/headers
+
+$(OBJDIR)/ajax_.c: $(SRCDIR)/ajax.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/ajax.c >$@
+
+$(OBJDIR)/ajax.o: $(OBJDIR)/ajax_.c $(OBJDIR)/ajax.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/ajax.o -c $(OBJDIR)/ajax_.c
+
+$(OBJDIR)/ajax.h: $(OBJDIR)/headers
+
+$(OBJDIR)/alerts_.c: $(SRCDIR)/alerts.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/alerts.c >$@
+
+$(OBJDIR)/alerts.o: $(OBJDIR)/alerts_.c $(OBJDIR)/alerts.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/alerts.o -c $(OBJDIR)/alerts_.c
+
+$(OBJDIR)/alerts.h: $(OBJDIR)/headers
+
+$(OBJDIR)/allrepo_.c: $(SRCDIR)/allrepo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/allrepo.c >$@
+
+$(OBJDIR)/allrepo.o: $(OBJDIR)/allrepo_.c $(OBJDIR)/allrepo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/allrepo.o -c $(OBJDIR)/allrepo_.c
+
+$(OBJDIR)/allrepo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/attach_.c: $(SRCDIR)/attach.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/attach.c >$@
+
+$(OBJDIR)/attach.o: $(OBJDIR)/attach_.c $(OBJDIR)/attach.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/attach.o -c $(OBJDIR)/attach_.c
+
+$(OBJDIR)/attach.h: $(OBJDIR)/headers
+
+$(OBJDIR)/backlink_.c: $(SRCDIR)/backlink.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/backlink.c >$@
+
+$(OBJDIR)/backlink.o: $(OBJDIR)/backlink_.c $(OBJDIR)/backlink.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/backlink.o -c $(OBJDIR)/backlink_.c
+
+$(OBJDIR)/backlink.h: $(OBJDIR)/headers
+
+$(OBJDIR)/backoffice_.c: $(SRCDIR)/backoffice.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/backoffice.c >$@
+
+$(OBJDIR)/backoffice.o: $(OBJDIR)/backoffice_.c $(OBJDIR)/backoffice.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/backoffice.o -c $(OBJDIR)/backoffice_.c
+
+$(OBJDIR)/backoffice.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bag_.c: $(SRCDIR)/bag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bag.c >$@
+
+$(OBJDIR)/bag.o: $(OBJDIR)/bag_.c $(OBJDIR)/bag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bag.o -c $(OBJDIR)/bag_.c
+
+$(OBJDIR)/bag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bisect_.c: $(SRCDIR)/bisect.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bisect.c >$@
+
+$(OBJDIR)/bisect.o: $(OBJDIR)/bisect_.c $(OBJDIR)/bisect.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bisect.o -c $(OBJDIR)/bisect_.c
+
+$(OBJDIR)/bisect.h: $(OBJDIR)/headers
+
+$(OBJDIR)/blob_.c: $(SRCDIR)/blob.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/blob.c >$@
+
+$(OBJDIR)/blob.o: $(OBJDIR)/blob_.c $(OBJDIR)/blob.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/blob.o -c $(OBJDIR)/blob_.c
+
+$(OBJDIR)/blob.h: $(OBJDIR)/headers
+
+$(OBJDIR)/branch_.c: $(SRCDIR)/branch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/branch.c >$@
+
+$(OBJDIR)/branch.o: $(OBJDIR)/branch_.c $(OBJDIR)/branch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/branch.o -c $(OBJDIR)/branch_.c
+
+$(OBJDIR)/branch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/browse_.c: $(SRCDIR)/browse.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/browse.c >$@
+
+$(OBJDIR)/browse.o: $(OBJDIR)/browse_.c $(OBJDIR)/browse.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/browse.o -c $(OBJDIR)/browse_.c
+
+$(OBJDIR)/browse.h: $(OBJDIR)/headers
+
+$(OBJDIR)/builtin_.c: $(SRCDIR)/builtin.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/builtin.c >$@
+
+$(OBJDIR)/builtin.o: $(OBJDIR)/builtin_.c $(OBJDIR)/builtin.h $(OBJDIR)/builtin_data.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/builtin.o -c $(OBJDIR)/builtin_.c
+
+$(OBJDIR)/builtin.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bundle_.c: $(SRCDIR)/bundle.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bundle.c >$@
+
+$(OBJDIR)/bundle.o: $(OBJDIR)/bundle_.c $(OBJDIR)/bundle.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bundle.o -c $(OBJDIR)/bundle_.c
+
+$(OBJDIR)/bundle.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cache_.c: $(SRCDIR)/cache.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cache.c >$@
+
+$(OBJDIR)/cache.o: $(OBJDIR)/cache_.c $(OBJDIR)/cache.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cache.o -c $(OBJDIR)/cache_.c
+
+$(OBJDIR)/cache.h: $(OBJDIR)/headers
+
+$(OBJDIR)/capabilities_.c: $(SRCDIR)/capabilities.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/capabilities.c >$@
+
+$(OBJDIR)/capabilities.o: $(OBJDIR)/capabilities_.c $(OBJDIR)/capabilities.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/capabilities.o -c $(OBJDIR)/capabilities_.c
+
+$(OBJDIR)/capabilities.h: $(OBJDIR)/headers
+
+$(OBJDIR)/captcha_.c: $(SRCDIR)/captcha.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/captcha.c >$@
+
+$(OBJDIR)/captcha.o: $(OBJDIR)/captcha_.c $(OBJDIR)/captcha.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/captcha.o -c $(OBJDIR)/captcha_.c
+
+$(OBJDIR)/captcha.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cgi_.c: $(SRCDIR)/cgi.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cgi.c >$@
+
+$(OBJDIR)/cgi.o: $(OBJDIR)/cgi_.c $(OBJDIR)/cgi.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cgi.o -c $(OBJDIR)/cgi_.c
+
+$(OBJDIR)/cgi.h: $(OBJDIR)/headers
+
+$(OBJDIR)/chat_.c: $(SRCDIR)/chat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/chat.c >$@
+
+$(OBJDIR)/chat.o: $(OBJDIR)/chat_.c $(OBJDIR)/chat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/chat.o -c $(OBJDIR)/chat_.c
+
+$(OBJDIR)/chat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/checkin_.c: $(SRCDIR)/checkin.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/checkin.c >$@
+
+$(OBJDIR)/checkin.o: $(OBJDIR)/checkin_.c $(OBJDIR)/checkin.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/checkin.o -c $(OBJDIR)/checkin_.c
+
+$(OBJDIR)/checkin.h: $(OBJDIR)/headers
+
+$(OBJDIR)/checkout_.c: $(SRCDIR)/checkout.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/checkout.c >$@
+
+$(OBJDIR)/checkout.o: $(OBJDIR)/checkout_.c $(OBJDIR)/checkout.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/checkout.o -c $(OBJDIR)/checkout_.c
+
+$(OBJDIR)/checkout.h: $(OBJDIR)/headers
+
+$(OBJDIR)/clearsign_.c: $(SRCDIR)/clearsign.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/clearsign.c >$@
+
+$(OBJDIR)/clearsign.o: $(OBJDIR)/clearsign_.c $(OBJDIR)/clearsign.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/clearsign.o -c $(OBJDIR)/clearsign_.c
+
+$(OBJDIR)/clearsign.h: $(OBJDIR)/headers
+
+$(OBJDIR)/clone_.c: $(SRCDIR)/clone.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/clone.c >$@
+
+$(OBJDIR)/clone.o: $(OBJDIR)/clone_.c $(OBJDIR)/clone.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/clone.o -c $(OBJDIR)/clone_.c
+
+$(OBJDIR)/clone.h: $(OBJDIR)/headers
+
+$(OBJDIR)/color_.c: $(SRCDIR)/color.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/color.c >$@
+
+$(OBJDIR)/color.o: $(OBJDIR)/color_.c $(OBJDIR)/color.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/color.o -c $(OBJDIR)/color_.c
+
+$(OBJDIR)/color.h: $(OBJDIR)/headers
+
+$(OBJDIR)/comformat_.c: $(SRCDIR)/comformat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/comformat.c >$@
+
+$(OBJDIR)/comformat.o: $(OBJDIR)/comformat_.c $(OBJDIR)/comformat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/comformat.o -c $(OBJDIR)/comformat_.c
+
+$(OBJDIR)/comformat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/configure_.c: $(SRCDIR)/configure.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/configure.c >$@
+
+$(OBJDIR)/configure.o: $(OBJDIR)/configure_.c $(OBJDIR)/configure.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/configure.o -c $(OBJDIR)/configure_.c
+
+$(OBJDIR)/configure.h: $(OBJDIR)/headers
+
+$(OBJDIR)/content_.c: $(SRCDIR)/content.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/content.c >$@
+
+$(OBJDIR)/content.o: $(OBJDIR)/content_.c $(OBJDIR)/content.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/content.o -c $(OBJDIR)/content_.c
+
+$(OBJDIR)/content.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cookies_.c: $(SRCDIR)/cookies.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cookies.c >$@
+
+$(OBJDIR)/cookies.o: $(OBJDIR)/cookies_.c $(OBJDIR)/cookies.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cookies.o -c $(OBJDIR)/cookies_.c
+
+$(OBJDIR)/cookies.h: $(OBJDIR)/headers
+
+$(OBJDIR)/db_.c: $(SRCDIR)/db.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/db.c >$@
+
+$(OBJDIR)/db.o: $(OBJDIR)/db_.c $(OBJDIR)/db.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/db.o -c $(OBJDIR)/db_.c
+
+$(OBJDIR)/db.h: $(OBJDIR)/headers
+
+$(OBJDIR)/delta_.c: $(SRCDIR)/delta.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/delta.c >$@
+
+$(OBJDIR)/delta.o: $(OBJDIR)/delta_.c $(OBJDIR)/delta.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/delta.o -c $(OBJDIR)/delta_.c
+
+$(OBJDIR)/delta.h: $(OBJDIR)/headers
+
+$(OBJDIR)/deltacmd_.c: $(SRCDIR)/deltacmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/deltacmd.c >$@
+
+$(OBJDIR)/deltacmd.o: $(OBJDIR)/deltacmd_.c $(OBJDIR)/deltacmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/deltacmd.o -c $(OBJDIR)/deltacmd_.c
+
+$(OBJDIR)/deltacmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/deltafunc_.c: $(SRCDIR)/deltafunc.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/deltafunc.c >$@
+
+$(OBJDIR)/deltafunc.o: $(OBJDIR)/deltafunc_.c $(OBJDIR)/deltafunc.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/deltafunc.o -c $(OBJDIR)/deltafunc_.c
+
+$(OBJDIR)/deltafunc.h: $(OBJDIR)/headers
+
+$(OBJDIR)/descendants_.c: $(SRCDIR)/descendants.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/descendants.c >$@
+
+$(OBJDIR)/descendants.o: $(OBJDIR)/descendants_.c $(OBJDIR)/descendants.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/descendants.o -c $(OBJDIR)/descendants_.c
+
+$(OBJDIR)/descendants.h: $(OBJDIR)/headers
+
+$(OBJDIR)/diff_.c: $(SRCDIR)/diff.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/diff.c >$@
+
+$(OBJDIR)/diff.o: $(OBJDIR)/diff_.c $(OBJDIR)/diff.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/diff.o -c $(OBJDIR)/diff_.c
+
+$(OBJDIR)/diff.h: $(OBJDIR)/headers
+
+$(OBJDIR)/diffcmd_.c: $(SRCDIR)/diffcmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/diffcmd.c >$@
+
+$(OBJDIR)/diffcmd.o: $(OBJDIR)/diffcmd_.c $(OBJDIR)/diffcmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/diffcmd.o -c $(OBJDIR)/diffcmd_.c
+
+$(OBJDIR)/diffcmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/dispatch_.c: $(SRCDIR)/dispatch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/dispatch.c >$@
+
+$(OBJDIR)/dispatch.o: $(OBJDIR)/dispatch_.c $(OBJDIR)/dispatch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/dispatch.o -c $(OBJDIR)/dispatch_.c
+
+$(OBJDIR)/dispatch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/doc_.c: $(SRCDIR)/doc.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/doc.c >$@
+
+$(OBJDIR)/doc.o: $(OBJDIR)/doc_.c $(OBJDIR)/doc.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/doc.o -c $(OBJDIR)/doc_.c
+
+$(OBJDIR)/doc.h: $(OBJDIR)/headers
+
+$(OBJDIR)/encode_.c: $(SRCDIR)/encode.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/encode.c >$@
+
+$(OBJDIR)/encode.o: $(OBJDIR)/encode_.c $(OBJDIR)/encode.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/encode.o -c $(OBJDIR)/encode_.c
+
+$(OBJDIR)/encode.h: $(OBJDIR)/headers
+
+$(OBJDIR)/etag_.c: $(SRCDIR)/etag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/etag.c >$@
+
+$(OBJDIR)/etag.o: $(OBJDIR)/etag_.c $(OBJDIR)/etag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/etag.o -c $(OBJDIR)/etag_.c
+
+$(OBJDIR)/etag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/event_.c: $(SRCDIR)/event.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/event.c >$@
+
+$(OBJDIR)/event.o: $(OBJDIR)/event_.c $(OBJDIR)/event.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/event.o -c $(OBJDIR)/event_.c
+
+$(OBJDIR)/event.h: $(OBJDIR)/headers
+
+$(OBJDIR)/export_.c: $(SRCDIR)/export.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/export.c >$@
+
+$(OBJDIR)/export.o: $(OBJDIR)/export_.c $(OBJDIR)/export.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/export.o -c $(OBJDIR)/export_.c
+
+$(OBJDIR)/export.h: $(OBJDIR)/headers
+
+$(OBJDIR)/extcgi_.c: $(SRCDIR)/extcgi.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/extcgi.c >$@
+
+$(OBJDIR)/extcgi.o: $(OBJDIR)/extcgi_.c $(OBJDIR)/extcgi.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/extcgi.o -c $(OBJDIR)/extcgi_.c
+
+$(OBJDIR)/extcgi.h: $(OBJDIR)/headers
+
+$(OBJDIR)/file_.c: $(SRCDIR)/file.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/file.c >$@
+
+$(OBJDIR)/file.o: $(OBJDIR)/file_.c $(OBJDIR)/file.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/file.o -c $(OBJDIR)/file_.c
+
+$(OBJDIR)/file.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fileedit_.c: $(SRCDIR)/fileedit.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fileedit.c >$@
+
+$(OBJDIR)/fileedit.o: $(OBJDIR)/fileedit_.c $(OBJDIR)/fileedit.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fileedit.o -c $(OBJDIR)/fileedit_.c
+
+$(OBJDIR)/fileedit.h: $(OBJDIR)/headers
+
+$(OBJDIR)/finfo_.c: $(SRCDIR)/finfo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/finfo.c >$@
+
+$(OBJDIR)/finfo.o: $(OBJDIR)/finfo_.c $(OBJDIR)/finfo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/finfo.o -c $(OBJDIR)/finfo_.c
+
+$(OBJDIR)/finfo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/foci_.c: $(SRCDIR)/foci.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/foci.c >$@
+
+$(OBJDIR)/foci.o: $(OBJDIR)/foci_.c $(OBJDIR)/foci.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/foci.o -c $(OBJDIR)/foci_.c
+
+$(OBJDIR)/foci.h: $(OBJDIR)/headers
+
+$(OBJDIR)/forum_.c: $(SRCDIR)/forum.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/forum.c >$@
+
+$(OBJDIR)/forum.o: $(OBJDIR)/forum_.c $(OBJDIR)/forum.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/forum.o -c $(OBJDIR)/forum_.c
+
+$(OBJDIR)/forum.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fshell_.c: $(SRCDIR)/fshell.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fshell.c >$@
+
+$(OBJDIR)/fshell.o: $(OBJDIR)/fshell_.c $(OBJDIR)/fshell.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fshell.o -c $(OBJDIR)/fshell_.c
+
+$(OBJDIR)/fshell.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fusefs_.c: $(SRCDIR)/fusefs.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fusefs.c >$@
+
+$(OBJDIR)/fusefs.o: $(OBJDIR)/fusefs_.c $(OBJDIR)/fusefs.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fusefs.o -c $(OBJDIR)/fusefs_.c
+
+$(OBJDIR)/fusefs.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fuzz_.c: $(SRCDIR)/fuzz.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fuzz.c >$@
+
+$(OBJDIR)/fuzz.o: $(OBJDIR)/fuzz_.c $(OBJDIR)/fuzz.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fuzz.o -c $(OBJDIR)/fuzz_.c
+
+$(OBJDIR)/fuzz.h: $(OBJDIR)/headers
+
+$(OBJDIR)/glob_.c: $(SRCDIR)/glob.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/glob.c >$@
+
+$(OBJDIR)/glob.o: $(OBJDIR)/glob_.c $(OBJDIR)/glob.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/glob.o -c $(OBJDIR)/glob_.c
+
+$(OBJDIR)/glob.h: $(OBJDIR)/headers
+
+$(OBJDIR)/graph_.c: $(SRCDIR)/graph.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/graph.c >$@
+
+$(OBJDIR)/graph.o: $(OBJDIR)/graph_.c $(OBJDIR)/graph.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/graph.o -c $(OBJDIR)/graph_.c
+
+$(OBJDIR)/graph.h: $(OBJDIR)/headers
+
+$(OBJDIR)/gzip_.c: $(SRCDIR)/gzip.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/gzip.c >$@
+
+$(OBJDIR)/gzip.o: $(OBJDIR)/gzip_.c $(OBJDIR)/gzip.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/gzip.o -c $(OBJDIR)/gzip_.c
+
+$(OBJDIR)/gzip.h: $(OBJDIR)/headers
+
+$(OBJDIR)/hname_.c: $(SRCDIR)/hname.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/hname.c >$@
+
+$(OBJDIR)/hname.o: $(OBJDIR)/hname_.c $(OBJDIR)/hname.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/hname.o -c $(OBJDIR)/hname_.c
+
+$(OBJDIR)/hname.h: $(OBJDIR)/headers
+
+$(OBJDIR)/hook_.c: $(SRCDIR)/hook.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/hook.c >$@
+
+$(OBJDIR)/hook.o: $(OBJDIR)/hook_.c $(OBJDIR)/hook.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/hook.o -c $(OBJDIR)/hook_.c
+
+$(OBJDIR)/hook.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_.c: $(SRCDIR)/http.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http.c >$@
+
+$(OBJDIR)/http.o: $(OBJDIR)/http_.c $(OBJDIR)/http.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http.o -c $(OBJDIR)/http_.c
+
+$(OBJDIR)/http.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_socket_.c: $(SRCDIR)/http_socket.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_socket.c >$@
+
+$(OBJDIR)/http_socket.o: $(OBJDIR)/http_socket_.c $(OBJDIR)/http_socket.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_socket.o -c $(OBJDIR)/http_socket_.c
+
+$(OBJDIR)/http_socket.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_ssl_.c: $(SRCDIR)/http_ssl.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_ssl.c >$@
+
+$(OBJDIR)/http_ssl.o: $(OBJDIR)/http_ssl_.c $(OBJDIR)/http_ssl.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_ssl.o -c $(OBJDIR)/http_ssl_.c
+
+$(OBJDIR)/http_ssl.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_transport_.c: $(SRCDIR)/http_transport.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_transport.c >$@
+
+$(OBJDIR)/http_transport.o: $(OBJDIR)/http_transport_.c $(OBJDIR)/http_transport.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_transport.o -c $(OBJDIR)/http_transport_.c
+
+$(OBJDIR)/http_transport.h: $(OBJDIR)/headers
+
+$(OBJDIR)/import_.c: $(SRCDIR)/import.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/import.c >$@
+
+$(OBJDIR)/import.o: $(OBJDIR)/import_.c $(OBJDIR)/import.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/import.o -c $(OBJDIR)/import_.c
+
+$(OBJDIR)/import.h: $(OBJDIR)/headers
+
+$(OBJDIR)/info_.c: $(SRCDIR)/info.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/info.c >$@
+
+$(OBJDIR)/info.o: $(OBJDIR)/info_.c $(OBJDIR)/info.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/info.o -c $(OBJDIR)/info_.c
+
+$(OBJDIR)/info.h: $(OBJDIR)/headers
+
+$(OBJDIR)/interwiki_.c: $(SRCDIR)/interwiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/interwiki.c >$@
+
+$(OBJDIR)/interwiki.o: $(OBJDIR)/interwiki_.c $(OBJDIR)/interwiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/interwiki.o -c $(OBJDIR)/interwiki_.c
+
+$(OBJDIR)/interwiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_.c: $(SRCDIR)/json.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json.c >$@
+
+$(OBJDIR)/json.o: $(OBJDIR)/json_.c $(OBJDIR)/json.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json.o -c $(OBJDIR)/json_.c
+
+$(OBJDIR)/json.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_artifact_.c: $(SRCDIR)/json_artifact.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_artifact.c >$@
+
+$(OBJDIR)/json_artifact.o: $(OBJDIR)/json_artifact_.c $(OBJDIR)/json_artifact.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_artifact.o -c $(OBJDIR)/json_artifact_.c
+
+$(OBJDIR)/json_artifact.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_branch_.c: $(SRCDIR)/json_branch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_branch.c >$@
+
+$(OBJDIR)/json_branch.o: $(OBJDIR)/json_branch_.c $(OBJDIR)/json_branch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_branch.o -c $(OBJDIR)/json_branch_.c
+
+$(OBJDIR)/json_branch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_config_.c: $(SRCDIR)/json_config.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_config.c >$@
+
+$(OBJDIR)/json_config.o: $(OBJDIR)/json_config_.c $(OBJDIR)/json_config.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_config.o -c $(OBJDIR)/json_config_.c
+
+$(OBJDIR)/json_config.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_diff_.c: $(SRCDIR)/json_diff.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_diff.c >$@
+
+$(OBJDIR)/json_diff.o: $(OBJDIR)/json_diff_.c $(OBJDIR)/json_diff.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_diff.o -c $(OBJDIR)/json_diff_.c
+
+$(OBJDIR)/json_diff.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_dir_.c: $(SRCDIR)/json_dir.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_dir.c >$@
+
+$(OBJDIR)/json_dir.o: $(OBJDIR)/json_dir_.c $(OBJDIR)/json_dir.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_dir.o -c $(OBJDIR)/json_dir_.c
+
+$(OBJDIR)/json_dir.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_finfo_.c: $(SRCDIR)/json_finfo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_finfo.c >$@
+
+$(OBJDIR)/json_finfo.o: $(OBJDIR)/json_finfo_.c $(OBJDIR)/json_finfo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_finfo.o -c $(OBJDIR)/json_finfo_.c
+
+$(OBJDIR)/json_finfo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_login_.c: $(SRCDIR)/json_login.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_login.c >$@
+
+$(OBJDIR)/json_login.o: $(OBJDIR)/json_login_.c $(OBJDIR)/json_login.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_login.o -c $(OBJDIR)/json_login_.c
+
+$(OBJDIR)/json_login.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_query_.c: $(SRCDIR)/json_query.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_query.c >$@
+
+$(OBJDIR)/json_query.o: $(OBJDIR)/json_query_.c $(OBJDIR)/json_query.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_query.o -c $(OBJDIR)/json_query_.c
+
+$(OBJDIR)/json_query.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_report_.c: $(SRCDIR)/json_report.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_report.c >$@
+
+$(OBJDIR)/json_report.o: $(OBJDIR)/json_report_.c $(OBJDIR)/json_report.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_report.o -c $(OBJDIR)/json_report_.c
+
+$(OBJDIR)/json_report.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_status_.c: $(SRCDIR)/json_status.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_status.c >$@
+
+$(OBJDIR)/json_status.o: $(OBJDIR)/json_status_.c $(OBJDIR)/json_status.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_status.o -c $(OBJDIR)/json_status_.c
+
+$(OBJDIR)/json_status.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_tag_.c: $(SRCDIR)/json_tag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_tag.c >$@
+
+$(OBJDIR)/json_tag.o: $(OBJDIR)/json_tag_.c $(OBJDIR)/json_tag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_tag.o -c $(OBJDIR)/json_tag_.c
+
+$(OBJDIR)/json_tag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_timeline_.c: $(SRCDIR)/json_timeline.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_timeline.c >$@
+
+$(OBJDIR)/json_timeline.o: $(OBJDIR)/json_timeline_.c $(OBJDIR)/json_timeline.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_timeline.o -c $(OBJDIR)/json_timeline_.c
+
+$(OBJDIR)/json_timeline.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_user_.c: $(SRCDIR)/json_user.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_user.c >$@
+
+$(OBJDIR)/json_user.o: $(OBJDIR)/json_user_.c $(OBJDIR)/json_user.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_user.o -c $(OBJDIR)/json_user_.c
+
+$(OBJDIR)/json_user.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_wiki_.c: $(SRCDIR)/json_wiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_wiki.c >$@
+
+$(OBJDIR)/json_wiki.o: $(OBJDIR)/json_wiki_.c $(OBJDIR)/json_wiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_wiki.o -c $(OBJDIR)/json_wiki_.c
+
+$(OBJDIR)/json_wiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/leaf_.c: $(SRCDIR)/leaf.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/leaf.c >$@
+
+$(OBJDIR)/leaf.o: $(OBJDIR)/leaf_.c $(OBJDIR)/leaf.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/leaf.o -c $(OBJDIR)/leaf_.c
+
+$(OBJDIR)/leaf.h: $(OBJDIR)/headers
+
+$(OBJDIR)/loadctrl_.c: $(SRCDIR)/loadctrl.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/loadctrl.c >$@
+
+$(OBJDIR)/loadctrl.o: $(OBJDIR)/loadctrl_.c $(OBJDIR)/loadctrl.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/loadctrl.o -c $(OBJDIR)/loadctrl_.c
+
+$(OBJDIR)/loadctrl.h: $(OBJDIR)/headers
+
+$(OBJDIR)/login_.c: $(SRCDIR)/login.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/login.c >$@
+
+$(OBJDIR)/login.o: $(OBJDIR)/login_.c $(OBJDIR)/login.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/login.o -c $(OBJDIR)/login_.c
+
+$(OBJDIR)/login.h: $(OBJDIR)/headers
+
+$(OBJDIR)/lookslike_.c: $(SRCDIR)/lookslike.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/lookslike.c >$@
+
+$(OBJDIR)/lookslike.o: $(OBJDIR)/lookslike_.c $(OBJDIR)/lookslike.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/lookslike.o -c $(OBJDIR)/lookslike_.c
+
+$(OBJDIR)/lookslike.h: $(OBJDIR)/headers
+
+$(OBJDIR)/main_.c: $(SRCDIR)/main.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/main.c >$@
+
+$(OBJDIR)/main.o: $(OBJDIR)/main_.c $(OBJDIR)/main.h $(OBJDIR)/page_index.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/main.o -c $(OBJDIR)/main_.c
+
+$(OBJDIR)/main.h: $(OBJDIR)/headers
+
+$(OBJDIR)/manifest_.c: $(SRCDIR)/manifest.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/manifest.c >$@
+
+$(OBJDIR)/manifest.o: $(OBJDIR)/manifest_.c $(OBJDIR)/manifest.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/manifest.o -c $(OBJDIR)/manifest_.c
+
+$(OBJDIR)/manifest.h: $(OBJDIR)/headers
+
+$(OBJDIR)/markdown_.c: $(SRCDIR)/markdown.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/markdown.c >$@
+
+$(OBJDIR)/markdown.o: $(OBJDIR)/markdown_.c $(OBJDIR)/markdown.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/markdown.o -c $(OBJDIR)/markdown_.c
+
+$(OBJDIR)/markdown.h: $(OBJDIR)/headers
+
+$(OBJDIR)/markdown_html_.c: $(SRCDIR)/markdown_html.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/markdown_html.c >$@
+
+$(OBJDIR)/markdown_html.o: $(OBJDIR)/markdown_html_.c $(OBJDIR)/markdown_html.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/markdown_html.o -c $(OBJDIR)/markdown_html_.c
+
+$(OBJDIR)/markdown_html.h: $(OBJDIR)/headers
+
+$(OBJDIR)/match_.c: $(SRCDIR)/match.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/match.c >$@
+
+$(OBJDIR)/match.o: $(OBJDIR)/match_.c $(OBJDIR)/match.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/match.o -c $(OBJDIR)/match_.c
+
+$(OBJDIR)/match.h: $(OBJDIR)/headers
+
+$(OBJDIR)/md5_.c: $(SRCDIR)/md5.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/md5.c >$@
+
+$(OBJDIR)/md5.o: $(OBJDIR)/md5_.c $(OBJDIR)/md5.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/md5.o -c $(OBJDIR)/md5_.c
+
+$(OBJDIR)/md5.h: $(OBJDIR)/headers
+
+$(OBJDIR)/merge_.c: $(SRCDIR)/merge.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/merge.c >$@
+
+$(OBJDIR)/merge.o: $(OBJDIR)/merge_.c $(OBJDIR)/merge.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/merge.o -c $(OBJDIR)/merge_.c
+
+$(OBJDIR)/merge.h: $(OBJDIR)/headers
+
+$(OBJDIR)/merge3_.c: $(SRCDIR)/merge3.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/merge3.c >$@
+
+$(OBJDIR)/merge3.o: $(OBJDIR)/merge3_.c $(OBJDIR)/merge3.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/merge3.o -c $(OBJDIR)/merge3_.c
+
+$(OBJDIR)/merge3.h: $(OBJDIR)/headers
+
+$(OBJDIR)/moderate_.c: $(SRCDIR)/moderate.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/moderate.c >$@
+
+$(OBJDIR)/moderate.o: $(OBJDIR)/moderate_.c $(OBJDIR)/moderate.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/moderate.o -c $(OBJDIR)/moderate_.c
+
+$(OBJDIR)/moderate.h: $(OBJDIR)/headers
+
+$(OBJDIR)/name_.c: $(SRCDIR)/name.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/name.c >$@
+
+$(OBJDIR)/name.o: $(OBJDIR)/name_.c $(OBJDIR)/name.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/name.o -c $(OBJDIR)/name_.c
+
+$(OBJDIR)/name.h: $(OBJDIR)/headers
+
+$(OBJDIR)/org_.c: $(SRCDIR)/org.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/org.c >$@
+
+$(OBJDIR)/org.o: $(OBJDIR)/org_.c $(OBJDIR)/org.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/org.o -c $(OBJDIR)/org_.c
+
+$(OBJDIR)/org.h: $(OBJDIR)/headers
+
+$(OBJDIR)/patch_.c: $(SRCDIR)/patch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/patch.c >$@
+
+$(OBJDIR)/patch.o: $(OBJDIR)/patch_.c $(OBJDIR)/patch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/patch.o -c $(OBJDIR)/patch_.c
+
+$(OBJDIR)/patch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/path_.c: $(SRCDIR)/path.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/path.c >$@
+
+$(OBJDIR)/path.o: $(OBJDIR)/path_.c $(OBJDIR)/path.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/path.o -c $(OBJDIR)/path_.c
+
+$(OBJDIR)/path.h: $(OBJDIR)/headers
+
+$(OBJDIR)/piechart_.c: $(SRCDIR)/piechart.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/piechart.c >$@
+
+$(OBJDIR)/piechart.o: $(OBJDIR)/piechart_.c $(OBJDIR)/piechart.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/piechart.o -c $(OBJDIR)/piechart_.c
+
+$(OBJDIR)/piechart.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pikchrshow_.c: $(SRCDIR)/pikchrshow.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pikchrshow.c >$@
+
+$(OBJDIR)/pikchrshow.o: $(OBJDIR)/pikchrshow_.c $(OBJDIR)/pikchrshow.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pikchrshow.o -c $(OBJDIR)/pikchrshow_.c
+
+$(OBJDIR)/pikchrshow.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pivot_.c: $(SRCDIR)/pivot.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pivot.c >$@
+
+$(OBJDIR)/pivot.o: $(OBJDIR)/pivot_.c $(OBJDIR)/pivot.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pivot.o -c $(OBJDIR)/pivot_.c
+
+$(OBJDIR)/pivot.h: $(OBJDIR)/headers
+
+$(OBJDIR)/popen_.c: $(SRCDIR)/popen.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/popen.c >$@
+
+$(OBJDIR)/popen.o: $(OBJDIR)/popen_.c $(OBJDIR)/popen.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/popen.o -c $(OBJDIR)/popen_.c
+
+$(OBJDIR)/popen.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pqueue_.c: $(SRCDIR)/pqueue.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pqueue.c >$@
+
+$(OBJDIR)/pqueue.o: $(OBJDIR)/pqueue_.c $(OBJDIR)/pqueue.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pqueue.o -c $(OBJDIR)/pqueue_.c
+
+$(OBJDIR)/pqueue.h: $(OBJDIR)/headers
+
+$(OBJDIR)/printf_.c: $(SRCDIR)/printf.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/printf.c >$@
+
+$(OBJDIR)/printf.o: $(OBJDIR)/printf_.c $(OBJDIR)/printf.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/printf.o -c $(OBJDIR)/printf_.c
+
+$(OBJDIR)/printf.h: $(OBJDIR)/headers
+
+$(OBJDIR)/publish_.c: $(SRCDIR)/publish.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/publish.c >$@
+
+$(OBJDIR)/publish.o: $(OBJDIR)/publish_.c $(OBJDIR)/publish.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/publish.o -c $(OBJDIR)/publish_.c
+
+$(OBJDIR)/publish.h: $(OBJDIR)/headers
+
+$(OBJDIR)/purge_.c: $(SRCDIR)/purge.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/purge.c >$@
+
+$(OBJDIR)/purge.o: $(OBJDIR)/purge_.c $(OBJDIR)/purge.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/purge.o -c $(OBJDIR)/purge_.c
+
+$(OBJDIR)/purge.h: $(OBJDIR)/headers
+
+$(OBJDIR)/rebuild_.c: $(SRCDIR)/rebuild.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/rebuild.c >$@
+
+$(OBJDIR)/rebuild.o: $(OBJDIR)/rebuild_.c $(OBJDIR)/rebuild.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/rebuild.o -c $(OBJDIR)/rebuild_.c
+
+$(OBJDIR)/rebuild.h: $(OBJDIR)/headers
+
+$(OBJDIR)/regexp_.c: $(SRCDIR)/regexp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/regexp.c >$@
+
+$(OBJDIR)/regexp.o: $(OBJDIR)/regexp_.c $(OBJDIR)/regexp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/regexp.o -c $(OBJDIR)/regexp_.c
+
+$(OBJDIR)/regexp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/repolist_.c: $(SRCDIR)/repolist.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/repolist.c >$@
+
+$(OBJDIR)/repolist.o: $(OBJDIR)/repolist_.c $(OBJDIR)/repolist.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/repolist.o -c $(OBJDIR)/repolist_.c
+
+$(OBJDIR)/repolist.h: $(OBJDIR)/headers
+
+$(OBJDIR)/report_.c: $(SRCDIR)/report.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/report.c >$@
+
+$(OBJDIR)/report.o: $(OBJDIR)/report_.c $(OBJDIR)/report.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/report.o -c $(OBJDIR)/report_.c
+
+$(OBJDIR)/report.h: $(OBJDIR)/headers
+
+$(OBJDIR)/robot_.c: $(SRCDIR)/robot.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/robot.c >$@
+
+$(OBJDIR)/robot.o: $(OBJDIR)/robot_.c $(OBJDIR)/robot.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/robot.o -c $(OBJDIR)/robot_.c
+
+$(OBJDIR)/robot.h: $(OBJDIR)/headers
+
+$(OBJDIR)/rss_.c: $(SRCDIR)/rss.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/rss.c >$@
+
+$(OBJDIR)/rss.o: $(OBJDIR)/rss_.c $(OBJDIR)/rss.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/rss.o -c $(OBJDIR)/rss_.c
+
+$(OBJDIR)/rss.h: $(OBJDIR)/headers
+
+$(OBJDIR)/schema_.c: $(SRCDIR)/schema.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/schema.c >$@
+
+$(OBJDIR)/schema.o: $(OBJDIR)/schema_.c $(OBJDIR)/schema.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/schema.o -c $(OBJDIR)/schema_.c
+
+$(OBJDIR)/schema.h: $(OBJDIR)/headers
+
+$(OBJDIR)/search_.c: $(SRCDIR)/search.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/search.c >$@
+
+$(OBJDIR)/search.o: $(OBJDIR)/search_.c $(OBJDIR)/search.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/search.o -c $(OBJDIR)/search_.c
+
+$(OBJDIR)/search.h: $(OBJDIR)/headers
+
+$(OBJDIR)/security_audit_.c: $(SRCDIR)/security_audit.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/security_audit.c >$@
+
+$(OBJDIR)/security_audit.o: $(OBJDIR)/security_audit_.c $(OBJDIR)/security_audit.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/security_audit.o -c $(OBJDIR)/security_audit_.c
+
+$(OBJDIR)/security_audit.h: $(OBJDIR)/headers
+
+$(OBJDIR)/setup_.c: $(SRCDIR)/setup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/setup.c >$@
+
+$(OBJDIR)/setup.o: $(OBJDIR)/setup_.c $(OBJDIR)/setup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/setup.o -c $(OBJDIR)/setup_.c
+
+$(OBJDIR)/setup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/setupuser_.c: $(SRCDIR)/setupuser.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/setupuser.c >$@
+
+$(OBJDIR)/setupuser.o: $(OBJDIR)/setupuser_.c $(OBJDIR)/setupuser.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/setupuser.o -c $(OBJDIR)/setupuser_.c
+
+$(OBJDIR)/setupuser.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha1_.c: $(SRCDIR)/sha1.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha1.c >$@
+
+$(OBJDIR)/sha1.o: $(OBJDIR)/sha1_.c $(OBJDIR)/sha1.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha1.o -c $(OBJDIR)/sha1_.c
+
+$(OBJDIR)/sha1.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha1hard_.c: $(SRCDIR)/sha1hard.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha1hard.c >$@
+
+$(OBJDIR)/sha1hard.o: $(OBJDIR)/sha1hard_.c $(OBJDIR)/sha1hard.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha1hard.o -c $(OBJDIR)/sha1hard_.c
+
+$(OBJDIR)/sha1hard.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha3_.c: $(SRCDIR)/sha3.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha3.c >$@
+
+$(OBJDIR)/sha3.o: $(OBJDIR)/sha3_.c $(OBJDIR)/sha3.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha3.o -c $(OBJDIR)/sha3_.c
+
+$(OBJDIR)/sha3.h: $(OBJDIR)/headers
+
+$(OBJDIR)/shun_.c: $(SRCDIR)/shun.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/shun.c >$@
+
+$(OBJDIR)/shun.o: $(OBJDIR)/shun_.c $(OBJDIR)/shun.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/shun.o -c $(OBJDIR)/shun_.c
+
+$(OBJDIR)/shun.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sitemap_.c: $(SRCDIR)/sitemap.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sitemap.c >$@
+
+$(OBJDIR)/sitemap.o: $(OBJDIR)/sitemap_.c $(OBJDIR)/sitemap.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sitemap.o -c $(OBJDIR)/sitemap_.c
+
+$(OBJDIR)/sitemap.h: $(OBJDIR)/headers
+
+$(OBJDIR)/skins_.c: $(SRCDIR)/skins.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/skins.c >$@
+
+$(OBJDIR)/skins.o: $(OBJDIR)/skins_.c $(OBJDIR)/skins.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/skins.o -c $(OBJDIR)/skins_.c
+
+$(OBJDIR)/skins.h: $(OBJDIR)/headers
+
+$(OBJDIR)/smtp_.c: $(SRCDIR)/smtp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/smtp.c >$@
+
+$(OBJDIR)/smtp.o: $(OBJDIR)/smtp_.c $(OBJDIR)/smtp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/smtp.o -c $(OBJDIR)/smtp_.c
+
+$(OBJDIR)/smtp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sqlcmd_.c: $(SRCDIR)/sqlcmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sqlcmd.c >$@
+
+$(OBJDIR)/sqlcmd.o: $(OBJDIR)/sqlcmd_.c $(OBJDIR)/sqlcmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sqlcmd.o -c $(OBJDIR)/sqlcmd_.c
+
+$(OBJDIR)/sqlcmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/stash_.c: $(SRCDIR)/stash.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/stash.c >$@
+
+$(OBJDIR)/stash.o: $(OBJDIR)/stash_.c $(OBJDIR)/stash.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/stash.o -c $(OBJDIR)/stash_.c
+
+$(OBJDIR)/stash.h: $(OBJDIR)/headers
+
+$(OBJDIR)/stat_.c: $(SRCDIR)/stat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/stat.c >$@
+
+$(OBJDIR)/stat.o: $(OBJDIR)/stat_.c $(OBJDIR)/stat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/stat.o -c $(OBJDIR)/stat_.c
+
+$(OBJDIR)/stat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/statrep_.c: $(SRCDIR)/statrep.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/statrep.c >$@
+
+$(OBJDIR)/statrep.o: $(OBJDIR)/statrep_.c $(OBJDIR)/statrep.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/statrep.o -c $(OBJDIR)/statrep_.c
+
+$(OBJDIR)/statrep.h: $(OBJDIR)/headers
+
+$(OBJDIR)/style_.c: $(SRCDIR)/style.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/style.c >$@
+
+$(OBJDIR)/style.o: $(OBJDIR)/style_.c $(OBJDIR)/style.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/style.o -c $(OBJDIR)/style_.c
+
+$(OBJDIR)/style.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sync_.c: $(SRCDIR)/sync.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sync.c >$@
+
+$(OBJDIR)/sync.o: $(OBJDIR)/sync_.c $(OBJDIR)/sync.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sync.o -c $(OBJDIR)/sync_.c
+
+$(OBJDIR)/sync.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tag_.c: $(SRCDIR)/tag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tag.c >$@
+
+$(OBJDIR)/tag.o: $(OBJDIR)/tag_.c $(OBJDIR)/tag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tag.o -c $(OBJDIR)/tag_.c
+
+$(OBJDIR)/tag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tar_.c: $(SRCDIR)/tar.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tar.c >$@
+
+$(OBJDIR)/tar.o: $(OBJDIR)/tar_.c $(OBJDIR)/tar.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tar.o -c $(OBJDIR)/tar_.c
+
+$(OBJDIR)/tar.h: $(OBJDIR)/headers
+
+$(OBJDIR)/terminal_.c: $(SRCDIR)/terminal.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/terminal.c >$@
+
+$(OBJDIR)/terminal.o: $(OBJDIR)/terminal_.c $(OBJDIR)/terminal.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/terminal.o -c $(OBJDIR)/terminal_.c
+
+$(OBJDIR)/terminal.h: $(OBJDIR)/headers
+
+$(OBJDIR)/th_main_.c: $(SRCDIR)/th_main.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/th_main.c >$@
+
+$(OBJDIR)/th_main.o: $(OBJDIR)/th_main_.c $(OBJDIR)/th_main.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/th_main.o -c $(OBJDIR)/th_main_.c
+
+$(OBJDIR)/th_main.h: $(OBJDIR)/headers
+
+$(OBJDIR)/timeline_.c: $(SRCDIR)/timeline.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/timeline.c >$@
+
+$(OBJDIR)/timeline.o: $(OBJDIR)/timeline_.c $(OBJDIR)/timeline.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/timeline.o -c $(OBJDIR)/timeline_.c
+
+$(OBJDIR)/timeline.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tkt_.c: $(SRCDIR)/tkt.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tkt.c >$@
+
+$(OBJDIR)/tkt.o: $(OBJDIR)/tkt_.c $(OBJDIR)/tkt.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tkt.o -c $(OBJDIR)/tkt_.c
+
+$(OBJDIR)/tkt.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tktsetup_.c: $(SRCDIR)/tktsetup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tktsetup.c >$@
+
+$(OBJDIR)/tktsetup.o: $(OBJDIR)/tktsetup_.c $(OBJDIR)/tktsetup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tktsetup.o -c $(OBJDIR)/tktsetup_.c
+
+$(OBJDIR)/tktsetup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/undo_.c: $(SRCDIR)/undo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/undo.c >$@
+
+$(OBJDIR)/undo.o: $(OBJDIR)/undo_.c $(OBJDIR)/undo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/undo.o -c $(OBJDIR)/undo_.c
+
+$(OBJDIR)/undo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/unicode_.c: $(SRCDIR)/unicode.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/unicode.c >$@
+
+$(OBJDIR)/unicode.o: $(OBJDIR)/unicode_.c $(OBJDIR)/unicode.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/unicode.o -c $(OBJDIR)/unicode_.c
+
+$(OBJDIR)/unicode.h: $(OBJDIR)/headers
+
+$(OBJDIR)/unversioned_.c: $(SRCDIR)/unversioned.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/unversioned.c >$@
+
+$(OBJDIR)/unversioned.o: $(OBJDIR)/unversioned_.c $(OBJDIR)/unversioned.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/unversioned.o -c $(OBJDIR)/unversioned_.c
+
+$(OBJDIR)/unversioned.h: $(OBJDIR)/headers
+
+$(OBJDIR)/update_.c: $(SRCDIR)/update.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/update.c >$@
+
+$(OBJDIR)/update.o: $(OBJDIR)/update_.c $(OBJDIR)/update.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/update.o -c $(OBJDIR)/update_.c
+
+$(OBJDIR)/update.h: $(OBJDIR)/headers
+
+$(OBJDIR)/url_.c: $(SRCDIR)/url.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/url.c >$@
+
+$(OBJDIR)/url.o: $(OBJDIR)/url_.c $(OBJDIR)/url.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/url.o -c $(OBJDIR)/url_.c
+
+$(OBJDIR)/url.h: $(OBJDIR)/headers
+
+$(OBJDIR)/user_.c: $(SRCDIR)/user.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/user.c >$@
+
+$(OBJDIR)/user.o: $(OBJDIR)/user_.c $(OBJDIR)/user.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/user.o -c $(OBJDIR)/user_.c
+
+$(OBJDIR)/user.h: $(OBJDIR)/headers
+
+$(OBJDIR)/utf8_.c: $(SRCDIR)/utf8.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/utf8.c >$@
+
+$(OBJDIR)/utf8.o: $(OBJDIR)/utf8_.c $(OBJDIR)/utf8.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/utf8.o -c $(OBJDIR)/utf8_.c
+
+$(OBJDIR)/utf8.h: $(OBJDIR)/headers
+
+$(OBJDIR)/util_.c: $(SRCDIR)/util.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/util.c >$@
+
+$(OBJDIR)/util.o: $(OBJDIR)/util_.c $(OBJDIR)/util.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/util.o -c $(OBJDIR)/util_.c
+
+$(OBJDIR)/util.h: $(OBJDIR)/headers
+
+$(OBJDIR)/verify_.c: $(SRCDIR)/verify.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/verify.c >$@
+
+$(OBJDIR)/verify.o: $(OBJDIR)/verify_.c $(OBJDIR)/verify.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/verify.o -c $(OBJDIR)/verify_.c
+
+$(OBJDIR)/verify.h: $(OBJDIR)/headers
+
+$(OBJDIR)/vfile_.c: $(SRCDIR)/vfile.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/vfile.c >$@
+
+$(OBJDIR)/vfile.o: $(OBJDIR)/vfile_.c $(OBJDIR)/vfile.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/vfile.o -c $(OBJDIR)/vfile_.c
+
+$(OBJDIR)/vfile.h: $(OBJDIR)/headers
+
+$(OBJDIR)/wiki_.c: $(SRCDIR)/wiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/wiki.c >$@
+
+$(OBJDIR)/wiki.o: $(OBJDIR)/wiki_.c $(OBJDIR)/wiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/wiki.o -c $(OBJDIR)/wiki_.c
+
+$(OBJDIR)/wiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/wikiformat_.c: $(SRCDIR)/wikiformat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/wikiformat.c >$@
+
+$(OBJDIR)/wikiformat.o: $(OBJDIR)/wikiformat_.c $(OBJDIR)/wikiformat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/wikiformat.o -c $(OBJDIR)/wikiformat_.c
+
+$(OBJDIR)/wikiformat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/winfile_.c: $(SRCDIR)/winfile.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/winfile.c >$@
+
+$(OBJDIR)/winfile.o: $(OBJDIR)/winfile_.c $(OBJDIR)/winfile.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/winfile.o -c $(OBJDIR)/winfile_.c
+
+$(OBJDIR)/winfile.h: $(OBJDIR)/headers
+
+$(OBJDIR)/winhttp_.c: $(SRCDIR)/winhttp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/winhttp.c >$@
+
+$(OBJDIR)/winhttp.o: $(OBJDIR)/winhttp_.c $(OBJDIR)/winhttp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/winhttp.o -c $(OBJDIR)/winhttp_.c
+
+$(OBJDIR)/winhttp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/xfer_.c: $(SRCDIR)/xfer.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/xfer.c >$@
+
+$(OBJDIR)/xfer.o: $(OBJDIR)/xfer_.c $(OBJDIR)/xfer.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/xfer.o -c $(OBJDIR)/xfer_.c
+
+$(OBJDIR)/xfer.h: $(OBJDIR)/headers
+
+$(OBJDIR)/xfersetup_.c: $(SRCDIR)/xfersetup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/xfersetup.c >$@
+
+$(OBJDIR)/xfersetup.o: $(OBJDIR)/xfersetup_.c $(OBJDIR)/xfersetup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/xfersetup.o -c $(OBJDIR)/xfersetup_.c
+
+$(OBJDIR)/xfersetup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/xsystem_.c: $(SRCDIR)/xsystem.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/xsystem.c >$@
+
+$(OBJDIR)/xsystem.o: $(OBJDIR)/xsystem_.c $(OBJDIR)/xsystem.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/xsystem.o -c $(OBJDIR)/xsystem_.c
+
+$(OBJDIR)/xsystem.h: $(OBJDIR)/headers
+
+$(OBJDIR)/zip_.c: $(SRCDIR)/zip.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/zip.c >$@
+
+$(OBJDIR)/zip.o: $(OBJDIR)/zip_.c $(OBJDIR)/zip.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/zip.o -c $(OBJDIR)/zip_.c
+
+$(OBJDIR)/zip.h: $(OBJDIR)/headers
+
+MINGW_OPTIONS = -D_HAVE__MINGW_H
+
+SQLITE_OPTIONS = -DNDEBUG=1 \
+ -DSQLITE_DQS=0 \
+ -DSQLITE_THREADSAFE=0 \
+ -DSQLITE_DEFAULT_MEMSTATUS=0 \
+ -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ -DSQLITE_OMIT_DECLTYPE \
+ -DSQLITE_OMIT_DEPRECATED \
+ -DSQLITE_OMIT_PROGRESS_CALLBACK \
+ -DSQLITE_OMIT_SHARED_CACHE \
+ -DSQLITE_OMIT_LOAD_EXTENSION \
+ -DSQLITE_MAX_EXPR_DEPTH=0 \
+ -DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ -DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ -DSQLITE_ENABLE_DBSTAT_VTAB \
+ -DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ -DSQLITE_ENABLE_FTS4 \
+ -DSQLITE_ENABLE_FTS5 \
+ -DSQLITE_ENABLE_MATH_FUNCTIONS \
+ -DSQLITE_ENABLE_PERCENTILE \
+ -DSQLITE_ENABLE_SETLK_TIMEOUT \
+ -DSQLITE_ENABLE_STMTVTAB \
+ -DSQLITE_HAVE_ZLIB \
+ -DSQLITE_ENABLE_DBPAGE_VTAB \
+ -DSQLITE_TRUSTED_SCHEMA=0 \
+ -DHAVE_USLEEP \
+ -DSQLITE_WIN32_NO_ANSI \
+ $(MINGW_OPTIONS) \
+ -DSQLITE_USE_MALLOC_H \
+ -DSQLITE_USE_MSIZE
+
+SHELL_OPTIONS = -DNDEBUG=1 \
+ -DSQLITE_DQS=0 \
+ -DSQLITE_THREADSAFE=0 \
+ -DSQLITE_DEFAULT_MEMSTATUS=0 \
+ -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ -DSQLITE_OMIT_DECLTYPE \
+ -DSQLITE_OMIT_DEPRECATED \
+ -DSQLITE_OMIT_PROGRESS_CALLBACK \
+ -DSQLITE_OMIT_SHARED_CACHE \
+ -DSQLITE_OMIT_LOAD_EXTENSION \
+ -DSQLITE_MAX_EXPR_DEPTH=0 \
+ -DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ -DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ -DSQLITE_ENABLE_DBSTAT_VTAB \
+ -DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ -DSQLITE_ENABLE_FTS4 \
+ -DSQLITE_ENABLE_FTS5 \
+ -DSQLITE_ENABLE_MATH_FUNCTIONS \
+ -DSQLITE_ENABLE_PERCENTILE \
+ -DSQLITE_ENABLE_SETLK_TIMEOUT \
+ -DSQLITE_ENABLE_STMTVTAB \
+ -DSQLITE_HAVE_ZLIB \
+ -DSQLITE_ENABLE_DBPAGE_VTAB \
+ -DSQLITE_TRUSTED_SCHEMA=0 \
+ -DHAVE_USLEEP \
+ -Dmain=sqlite3_shell \
+ -DSQLITE_SHELL_IS_UTF8=1 \
+ -DSQLITE_OMIT_LOAD_EXTENSION=1 \
+ -DUSE_SYSTEM_SQLITE=$(USE_SYSTEM_SQLITE) \
+ -DSQLITE_SHELL_DBNAME_PROC=sqlcmd_get_dbname \
+ -DSQLITE_SHELL_INIT_PROC=sqlcmd_init_proc \
+ -DSQLITE_PS_APPDEF=sqlcmd_ps_appdef \
+ -Daccess=file_access \
+ -Dsystem=fossil_system \
+ -Dgetenv=fossil_getenv \
+ -Dfopen=fossil_fopen
+
+PIKCHR_OPTIONS = -DPIKCHR_TOKEN_LIMIT=10000
+
+$(SQLITE3_OBJ): $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw
+ $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
+ -c $(SQLITE3_SRC) -o $@
+
+$(OBJDIR)/cson_amalgamation.o: $(SRCDIR_extsrc)/cson_amalgamation.c
+ $(XTCC) -c $(SRCDIR_extsrc)/cson_amalgamation.c -o $@
+
+$(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
+
+$(OBJDIR)/shell.o: $(SQLITE3_SHELL_SRC) $(SRCDIR_extsrc)/sqlite3.h $(SRCDIR)/../win/Makefile.mingw
+ $(XTCC) $(SHELL_OPTIONS) $(SHELL_CFLAGS) $(SEE_FLAGS) -c $(SQLITE3_SHELL_SRC) -o $@
+
+$(OBJDIR)/th.o: $(SRCDIR)/th.c
+ $(XTCC) -c $(SRCDIR)/th.c -o $@
+
+$(OBJDIR)/th_lang.o: $(SRCDIR)/th_lang.c
+ $(XTCC) -c $(SRCDIR)/th_lang.c -o $@
+
+$(OBJDIR)/th_tcl.o: $(SRCDIR)/th_tcl.c
+ $(XTCC) -c $(SRCDIR)/th_tcl.c -o $@
+
+$(OBJDIR)/pikchr.o: $(SRCDIR_extsrc)/pikchr.c
+ $(XTCC) $(PIKCHR_OPTIONS) -c $(SRCDIR_extsrc)/pikchr.c -o $@
+
diff --git a/win/Makefile.mingw.mistachkin b/win/Makefile.mingw.mistachkin
new file mode 100644
index 0000000..09c6889
--- /dev/null
+++ b/win/Makefile.mingw.mistachkin
@@ -0,0 +1,2588 @@
+#!/usr/bin/make
+#
+##############################################################################
+# WARNING: DO NOT EDIT, AUTOMATICALLY GENERATED FILE (SEE "tools/makemake.tcl")
+##############################################################################
+#
+# This file is automatically generated. Instead of editing this
+# file, edit "makemake.tcl" then run "tclsh makemake.tcl"
+# to regenerate this file.
+#
+# This is a makefile for use on Cygwin/Darwin/FreeBSD/Linux/Windows using
+# MinGW or MinGW-w64.
+#
+# Some of the special options which can be passed to make
+# USE_WINDOWS=1 if building under a windows command prompt
+# X64=1 if using an unprefixed 64-bit mingw compiler
+#
+
+#### Select one of MinGW, MinGW-w64 (32-bit) or MinGW-w64 (64-bit) compilers.
+# By default, this is an empty string (i.e. use the native compiler).
+#
+PREFIX =
+# PREFIX = mingw32-
+# PREFIX = i686-pc-mingw32-
+# PREFIX = i686-w64-mingw32-
+# PREFIX = x86_64-w64-mingw32-
+
+#### The toplevel directory of the source tree. Fossil can be built
+# in a directory that is separate from the source tree. Just change
+# the following to point from the build directory to the src/ folder.
+#
+SRCDIR = src
+SRCDIR_extsrc = extsrc
+SRCDIR_tools = tools
+
+#### The directory into which object code files should be written.
+#
+OBJDIR = wbld
+
+#### C compiler for use in building executables that will run on
+# the platform that is doing the build. This is used to compile
+# code-generator programs as part of the build process. See TCC
+# and TCCEXE below for the C compiler for building the finished
+# binary.
+#
+BCCEXE = gcc
+
+#### C Compiler and options for use in building executables that
+# will run on the platform that is doing the build. This is used
+# to compile code-generator programs as part of the build process.
+# See TCC below for the C compiler for building the finished binary.
+#
+BCC = $(BCCEXE)
+
+#### Enable compiling with debug symbols (much larger binary)
+#
+# FOSSIL_ENABLE_SYMBOLS = 1
+
+#### Enable JSON (https://www.json.org) support using "cson"
+#
+FOSSIL_ENABLE_JSON = 1
+
+#### Enable HTTPS support via OpenSSL (links to libssl and libcrypto)
+#
+FOSSIL_ENABLE_SSL = 1
+
+#### Automatically build OpenSSL when building Fossil (causes rebuild
+# issues when building incrementally).
+#
+# FOSSIL_BUILD_SSL = 1
+
+#### Enable relative paths in external diff/gdiff
+#
+# FOSSIL_ENABLE_EXEC_REL_PATHS = 1
+
+#### Enable TH1 scripts in embedded documentation files
+#
+FOSSIL_ENABLE_TH1_DOCS = 1
+
+#### Enable hooks for commands and web pages via TH1
+#
+FOSSIL_ENABLE_TH1_HOOKS = 1
+
+#### Enable scripting support via Tcl/Tk
+#
+FOSSIL_ENABLE_TCL = 1
+
+#### Load Tcl using the stubs library mechanism
+#
+FOSSIL_ENABLE_TCL_STUBS = 1
+
+#### Load Tcl using the private stubs mechanism
+#
+FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1
+
+#### Use 'system' SQLite
+#
+# USE_SYSTEM_SQLITE = 1
+
+#### Use POSIX memory APIs from "sys/mman.h"
+#
+# USE_MMAN_H = 1
+
+#### Use the SQLite Encryption Extension
+#
+# USE_SEE = 1
+
+#### Use the Tcl source directory instead of the install directory?
+# This is useful when Tcl has been compiled statically with MinGW.
+#
+FOSSIL_TCL_SOURCE = 1
+
+#### Check if the workaround for the MinGW command line handling needs to
+# be enabled by default. This check may be somewhat fragile due to the
+# use of "findstring".
+#
+ifndef MINGW_IS_32BIT_ONLY
+ifeq (,$(findstring w64-mingw32,$(PREFIX)))
+MINGW_IS_32BIT_ONLY = 1
+endif
+endif
+
+#### The directories where the zlib include and library files are located.
+#
+ZINCDIR = $(SRCDIR)/../compat/zlib
+ZLIBDIR = $(SRCDIR)/../compat/zlib
+
+#### Make an attempt to detect if Fossil is being built for the x64 processor
+# architecture. This check may be somewhat fragile due to "findstring".
+#
+ifndef X64
+ifneq (,$(findstring x86_64-w64-mingw32,$(PREFIX)))
+X64 = 1
+endif
+endif
+
+#### Determine if the optimized assembly routines provided with zlib should be
+# used, taking into account whether zlib is actually enabled and the target
+# processor architecture.
+#
+ifndef X64
+SSLCONFIG = mingw
+ZLIBCONFIG =
+ZLIBTARGETS =
+else
+SSLCONFIG = mingw64
+ZLIBCONFIG =
+ZLIBTARGETS =
+endif
+
+#### Disable creation of the OpenSSL shared libraries. Also, disable support
+# for SSLv3 (i.e. thereby forcing the use of TLS).
+#
+SSLCONFIG += no-ssl3 no-weak-ssl-ciphers no-shared
+
+#### When using zlib, make sure that OpenSSL is configured to use the zlib
+# that Fossil knows about (i.e. the one within the source tree).
+#
+SSLCONFIG += --with-zlib-lib=$(PWD)/$(ZLIBDIR) --with-zlib-include=$(PWD)/$(ZLIBDIR) zlib
+
+#### The directories where the OpenSSL include and library files are located.
+#
+OPENSSLDIR = $(SRCDIR)/../compat/openssl
+OPENSSLINCDIR = $(OPENSSLDIR)/include
+OPENSSLLIBDIR = $(OPENSSLDIR)
+
+#### Either the directory where the Tcl library is installed or the Tcl
+# source code directory resides (depending on the value of the macro
+# FOSSIL_TCL_SOURCE). If this points to the Tcl install directory,
+# this directory must have "include" and "lib" sub-directories. If
+# this points to the Tcl source code directory, this directory must
+# have "generic" and "win" sub-directories. The recommended usage
+# here is to use the Sysinternals junction tool to create a hard
+# link between a "tcl-8.x" sub-directory of the Fossil source code
+# directory and the target Tcl directory. This removes the need to
+# hard-code the necessary paths in this Makefile.
+#
+TCLDIR = $(SRCDIR)/../compat/tcl-8.6
+
+#### The Tcl source code directory. This defaults to the same value as
+# TCLDIR macro (above), which may not be correct. This value will
+# only be used if the FOSSIL_TCL_SOURCE macro is defined.
+#
+TCLSRCDIR = $(TCLDIR)
+
+#### The Tcl include and library directories. These values will only be
+# used if the FOSSIL_TCL_SOURCE macro is not defined.
+#
+TCLINCDIR = $(TCLDIR)/include
+TCLLIBDIR = $(TCLDIR)/lib
+
+#### Tcl: Which Tcl library do we want to use (8.4, 8.5, 8.6, etc)?
+#
+ifdef FOSSIL_ENABLE_TCL_STUBS
+ifndef FOSSIL_ENABLE_TCL_PRIVATE_STUBS
+LIBTCL = -ltclstub86
+endif
+TCLTARGET = libtclstub86.a
+else
+LIBTCL = -ltcl86
+TCLTARGET = binaries
+endif
+
+#### C compiler for use in building executables that will run on the
+# target platform. This is usually the same as BCCEXE, unless you
+# are cross-compiling. This C compiler builds the finished binary
+# for fossil. See BCC and BCCEXE above for the C compiler for
+# building intermediate code-generator tools.
+#
+TCCEXE = gcc
+
+#### C compiler and options for use in building executables that will
+# run on the target platform. This is usually the almost the same
+# as BCC, unless you are cross-compiling. This C compiler builds
+# the finished binary for fossil. The BCC compiler above is used
+# for building intermediate code-generator tools.
+#
+TCC = $(PREFIX)$(TCCEXE) -Wall -Wdeclaration-after-statement
+TCC += -I$(SRCDIR_extsrc)
+
+#### Add the necessary command line options to build with debugging
+# symbols, if enabled.
+#
+ifdef FOSSIL_ENABLE_SYMBOLS
+TCC += -g
+else
+TCC += -Os
+endif
+
+TCC += -L$(ZLIBDIR) -I$(ZINCDIR)
+
+#### Compile resources for use in building executables that will run
+# on the target platform.
+#
+RCC = $(PREFIX)windres -I$(SRCDIR) -I$(ZINCDIR)
+RCC += -I$(SRCDIR_extsrc)
+
+# With HTTPS support
+ifdef FOSSIL_ENABLE_SSL
+TCC += -L$(OPENSSLLIBDIR) -I$(OPENSSLINCDIR)
+RCC += -I$(OPENSSLINCDIR)
+endif
+
+# With Tcl support
+ifdef FOSSIL_ENABLE_TCL
+ifdef FOSSIL_TCL_SOURCE
+TCC += -L$(TCLSRCDIR)/win -I$(TCLSRCDIR)/generic -I$(TCLSRCDIR)/win
+RCC += -I$(TCLSRCDIR)/generic -I$(TCLSRCDIR)/win
+else
+TCC += -L$(TCLLIBDIR) -I$(TCLINCDIR)
+RCC += -I$(TCLINCDIR)
+endif
+endif
+
+# With MinGW command line handling workaround
+ifdef MINGW_IS_32BIT_ONLY
+TCC += -DBROKEN_MINGW_CMDLINE=1
+RCC += -DBROKEN_MINGW_CMDLINE=1
+endif
+
+# With HTTPS support
+ifdef FOSSIL_ENABLE_SSL
+TCC += -DFOSSIL_ENABLE_SSL=1
+RCC += -DFOSSIL_ENABLE_SSL=1
+endif
+
+# With relative paths in external diff/gdiff
+ifdef FOSSIL_ENABLE_EXEC_REL_PATHS
+TCC += -DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+RCC += -DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+endif
+
+# With TH1 embedded docs support
+ifdef FOSSIL_ENABLE_TH1_DOCS
+TCC += -DFOSSIL_ENABLE_TH1_DOCS=1
+RCC += -DFOSSIL_ENABLE_TH1_DOCS=1
+endif
+
+# With TH1 hook support
+ifdef FOSSIL_ENABLE_TH1_HOOKS
+TCC += -DFOSSIL_ENABLE_TH1_HOOKS=1
+RCC += -DFOSSIL_ENABLE_TH1_HOOKS=1
+endif
+
+# With Tcl support
+ifdef FOSSIL_ENABLE_TCL
+TCC += -DFOSSIL_ENABLE_TCL=1
+RCC += -DFOSSIL_ENABLE_TCL=1
+# Either statically linked or via stubs
+ifdef FOSSIL_ENABLE_TCL_STUBS
+TCC += -DFOSSIL_ENABLE_TCL_STUBS=1 -DUSE_TCL_STUBS
+RCC += -DFOSSIL_ENABLE_TCL_STUBS=1 -DUSE_TCL_STUBS
+ifdef FOSSIL_ENABLE_TCL_PRIVATE_STUBS
+TCC += -DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+RCC += -DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+endif
+else
+TCC += -DSTATIC_BUILD
+RCC += -DSTATIC_BUILD
+endif
+endif
+
+# With JSON support
+ifdef FOSSIL_ENABLE_JSON
+TCC += -DFOSSIL_ENABLE_JSON=1
+RCC += -DFOSSIL_ENABLE_JSON=1
+endif
+
+# With "sys/mman.h" support
+ifdef USE_MMAN_H
+TCC += -DUSE_MMAN_H=1
+RCC += -DUSE_MMAN_H=1
+endif
+
+# With SQLite Encryption Extension support
+ifdef USE_SEE
+TCC += -DUSE_SEE=1
+RCC += -DUSE_SEE=1
+endif
+
+#### The option -static has no effect on MinGW(-w64), only dynamic
+# executables can be built when linking with MSVCRT. OpenSSL
+# (optional) and zlib (required) however are always linked in
+# statically. Therefore, the FOSSIL_DYNAMIC_BUILD option does
+# not really apply to MinGW (i.e. since ALL external libraries
+# are NOT linked dynamically).
+#
+# LIB = -static
+
+#### MinGW: If available, use the Unicode capable runtime startup code.
+#
+ifndef MINGW_IS_32BIT_ONLY
+LIB += -municode
+endif
+
+#### SQLite: If enabled, use the system SQLite library.
+#
+ifdef USE_SYSTEM_SQLITE
+LIB += -lsqlite3
+endif
+
+#### OpenSSL: Add the necessary libraries required, if enabled.
+#
+ifdef FOSSIL_ENABLE_SSL
+LIB += -lssl -lcrypto -lgdi32 -lcrypt32
+endif
+
+#### Tcl: Add the necessary libraries required, if enabled.
+#
+ifdef FOSSIL_ENABLE_TCL
+LIB += $(LIBTCL)
+endif
+
+#### Extra arguments for linking the finished binary. Fossil needs
+# to link against the Z-Lib compression library. There are no
+# other mandatory dependencies.
+#
+LIB += -lmingwex
+
+#### zlib is required.
+#
+LIB += -lz
+
+#### These libraries MUST appear in the same order as they do for Tcl
+# or linking with it will not work (exact reason unknown).
+#
+ifdef FOSSIL_ENABLE_TCL
+ifdef FOSSIL_ENABLE_TCL_STUBS
+LIB += -lkernel32 -lws2_32
+else
+LIB += -lnetapi32 -lkernel32 -luser32 -ladvapi32 -lws2_32
+endif
+else
+LIB += -lkernel32 -lws2_32
+endif
+
+#### Library required for DNS lookups.
+#
+LIB += -ldnsapi
+
+#### Tcl shell for use in running the fossil test suite. This is only
+# used for testing.
+#
+TCLSH = tclsh
+
+#### Nullsoft installer MakeNSIS location
+#
+MAKENSIS = "$(PROGRAMFILES)\NSIS\MakeNSIS.exe"
+
+#### Inno Setup executable location
+#
+INNOSETUP = "$(PROGRAMFILES)\Inno Setup 5\ISCC.exe"
+
+#### Include a configuration file that can override any one of these settings.
+#
+-include config.w32
+
+# STOP HERE
+# You should not need to change anything below this line
+#--------------------------------------------------------
+XBCC = $(BCC) $(CFLAGS)
+XTCC = $(TCC) $(CFLAGS) -I. -I$(SRCDIR)
+
+SRC = \
+ $(SRCDIR)/add.c \
+ $(SRCDIR)/ajax.c \
+ $(SRCDIR)/alerts.c \
+ $(SRCDIR)/allrepo.c \
+ $(SRCDIR)/attach.c \
+ $(SRCDIR)/backlink.c \
+ $(SRCDIR)/backoffice.c \
+ $(SRCDIR)/bag.c \
+ $(SRCDIR)/bisect.c \
+ $(SRCDIR)/blob.c \
+ $(SRCDIR)/branch.c \
+ $(SRCDIR)/browse.c \
+ $(SRCDIR)/builtin.c \
+ $(SRCDIR)/bundle.c \
+ $(SRCDIR)/cache.c \
+ $(SRCDIR)/capabilities.c \
+ $(SRCDIR)/captcha.c \
+ $(SRCDIR)/cgi.c \
+ $(SRCDIR)/chat.c \
+ $(SRCDIR)/checkin.c \
+ $(SRCDIR)/checkout.c \
+ $(SRCDIR)/clearsign.c \
+ $(SRCDIR)/clone.c \
+ $(SRCDIR)/color.c \
+ $(SRCDIR)/comformat.c \
+ $(SRCDIR)/configure.c \
+ $(SRCDIR)/content.c \
+ $(SRCDIR)/cookies.c \
+ $(SRCDIR)/db.c \
+ $(SRCDIR)/delta.c \
+ $(SRCDIR)/deltacmd.c \
+ $(SRCDIR)/deltafunc.c \
+ $(SRCDIR)/descendants.c \
+ $(SRCDIR)/diff.c \
+ $(SRCDIR)/diffcmd.c \
+ $(SRCDIR)/dispatch.c \
+ $(SRCDIR)/doc.c \
+ $(SRCDIR)/encode.c \
+ $(SRCDIR)/etag.c \
+ $(SRCDIR)/event.c \
+ $(SRCDIR)/export.c \
+ $(SRCDIR)/extcgi.c \
+ $(SRCDIR)/file.c \
+ $(SRCDIR)/fileedit.c \
+ $(SRCDIR)/finfo.c \
+ $(SRCDIR)/foci.c \
+ $(SRCDIR)/forum.c \
+ $(SRCDIR)/fshell.c \
+ $(SRCDIR)/fusefs.c \
+ $(SRCDIR)/fuzz.c \
+ $(SRCDIR)/glob.c \
+ $(SRCDIR)/graph.c \
+ $(SRCDIR)/gzip.c \
+ $(SRCDIR)/hname.c \
+ $(SRCDIR)/hook.c \
+ $(SRCDIR)/http.c \
+ $(SRCDIR)/http_socket.c \
+ $(SRCDIR)/http_ssl.c \
+ $(SRCDIR)/http_transport.c \
+ $(SRCDIR)/import.c \
+ $(SRCDIR)/info.c \
+ $(SRCDIR)/interwiki.c \
+ $(SRCDIR)/json.c \
+ $(SRCDIR)/json_artifact.c \
+ $(SRCDIR)/json_branch.c \
+ $(SRCDIR)/json_config.c \
+ $(SRCDIR)/json_diff.c \
+ $(SRCDIR)/json_dir.c \
+ $(SRCDIR)/json_finfo.c \
+ $(SRCDIR)/json_login.c \
+ $(SRCDIR)/json_query.c \
+ $(SRCDIR)/json_report.c \
+ $(SRCDIR)/json_status.c \
+ $(SRCDIR)/json_tag.c \
+ $(SRCDIR)/json_timeline.c \
+ $(SRCDIR)/json_user.c \
+ $(SRCDIR)/json_wiki.c \
+ $(SRCDIR)/leaf.c \
+ $(SRCDIR)/loadctrl.c \
+ $(SRCDIR)/login.c \
+ $(SRCDIR)/lookslike.c \
+ $(SRCDIR)/main.c \
+ $(SRCDIR)/manifest.c \
+ $(SRCDIR)/markdown.c \
+ $(SRCDIR)/markdown_html.c \
+ $(SRCDIR)/md5.c \
+ $(SRCDIR)/merge.c \
+ $(SRCDIR)/merge3.c \
+ $(SRCDIR)/moderate.c \
+ $(SRCDIR)/name.c \
+ $(SRCDIR)/patch.c \
+ $(SRCDIR)/path.c \
+ $(SRCDIR)/piechart.c \
+ $(SRCDIR)/pikchrshow.c \
+ $(SRCDIR)/pivot.c \
+ $(SRCDIR)/popen.c \
+ $(SRCDIR)/pqueue.c \
+ $(SRCDIR)/printf.c \
+ $(SRCDIR)/publish.c \
+ $(SRCDIR)/purge.c \
+ $(SRCDIR)/rebuild.c \
+ $(SRCDIR)/regexp.c \
+ $(SRCDIR)/repolist.c \
+ $(SRCDIR)/report.c \
+ $(SRCDIR)/rss.c \
+ $(SRCDIR)/schema.c \
+ $(SRCDIR)/search.c \
+ $(SRCDIR)/security_audit.c \
+ $(SRCDIR)/setup.c \
+ $(SRCDIR)/setupuser.c \
+ $(SRCDIR)/sha1.c \
+ $(SRCDIR)/sha1hard.c \
+ $(SRCDIR)/sha3.c \
+ $(SRCDIR)/shun.c \
+ $(SRCDIR)/sitemap.c \
+ $(SRCDIR)/skins.c \
+ $(SRCDIR)/smtp.c \
+ $(SRCDIR)/sqlcmd.c \
+ $(SRCDIR)/stash.c \
+ $(SRCDIR)/stat.c \
+ $(SRCDIR)/statrep.c \
+ $(SRCDIR)/style.c \
+ $(SRCDIR)/sync.c \
+ $(SRCDIR)/tag.c \
+ $(SRCDIR)/tar.c \
+ $(SRCDIR)/terminal.c \
+ $(SRCDIR)/th_main.c \
+ $(SRCDIR)/timeline.c \
+ $(SRCDIR)/tkt.c \
+ $(SRCDIR)/tktsetup.c \
+ $(SRCDIR)/undo.c \
+ $(SRCDIR)/unicode.c \
+ $(SRCDIR)/unversioned.c \
+ $(SRCDIR)/update.c \
+ $(SRCDIR)/url.c \
+ $(SRCDIR)/user.c \
+ $(SRCDIR)/utf8.c \
+ $(SRCDIR)/util.c \
+ $(SRCDIR)/verify.c \
+ $(SRCDIR)/vfile.c \
+ $(SRCDIR)/wiki.c \
+ $(SRCDIR)/wikiformat.c \
+ $(SRCDIR)/winfile.c \
+ $(SRCDIR)/winhttp.c \
+ $(SRCDIR)/xfer.c \
+ $(SRCDIR)/xfersetup.c \
+ $(SRCDIR)/zip.c
+
+EXTRA_FILES = \
+ $(SRCDIR)/../extsrc/pikchr-worker.js \
+ $(SRCDIR)/../extsrc/pikchr.js \
+ $(SRCDIR)/../extsrc/pikchr.wasm \
+ $(SRCDIR)/../skins/ardoise/css.txt \
+ $(SRCDIR)/../skins/ardoise/details.txt \
+ $(SRCDIR)/../skins/ardoise/footer.txt \
+ $(SRCDIR)/../skins/ardoise/header.txt \
+ $(SRCDIR)/../skins/black_and_white/css.txt \
+ $(SRCDIR)/../skins/black_and_white/details.txt \
+ $(SRCDIR)/../skins/black_and_white/footer.txt \
+ $(SRCDIR)/../skins/black_and_white/header.txt \
+ $(SRCDIR)/../skins/blitz/css.txt \
+ $(SRCDIR)/../skins/blitz/details.txt \
+ $(SRCDIR)/../skins/blitz/footer.txt \
+ $(SRCDIR)/../skins/blitz/header.txt \
+ $(SRCDIR)/../skins/blitz/ticket.txt \
+ $(SRCDIR)/../skins/darkmode/css.txt \
+ $(SRCDIR)/../skins/darkmode/details.txt \
+ $(SRCDIR)/../skins/darkmode/footer.txt \
+ $(SRCDIR)/../skins/darkmode/header.txt \
+ $(SRCDIR)/../skins/default/css.txt \
+ $(SRCDIR)/../skins/default/details.txt \
+ $(SRCDIR)/../skins/default/footer.txt \
+ $(SRCDIR)/../skins/default/header.txt \
+ $(SRCDIR)/../skins/eagle/css.txt \
+ $(SRCDIR)/../skins/eagle/details.txt \
+ $(SRCDIR)/../skins/eagle/footer.txt \
+ $(SRCDIR)/../skins/eagle/header.txt \
+ $(SRCDIR)/../skins/khaki/css.txt \
+ $(SRCDIR)/../skins/khaki/details.txt \
+ $(SRCDIR)/../skins/khaki/footer.txt \
+ $(SRCDIR)/../skins/khaki/header.txt \
+ $(SRCDIR)/../skins/original/css.txt \
+ $(SRCDIR)/../skins/original/details.txt \
+ $(SRCDIR)/../skins/original/footer.txt \
+ $(SRCDIR)/../skins/original/header.txt \
+ $(SRCDIR)/../skins/plain_gray/css.txt \
+ $(SRCDIR)/../skins/plain_gray/details.txt \
+ $(SRCDIR)/../skins/plain_gray/footer.txt \
+ $(SRCDIR)/../skins/plain_gray/header.txt \
+ $(SRCDIR)/../skins/xekri/css.txt \
+ $(SRCDIR)/../skins/xekri/details.txt \
+ $(SRCDIR)/../skins/xekri/footer.txt \
+ $(SRCDIR)/../skins/xekri/header.txt \
+ $(SRCDIR)/accordion.js \
+ $(SRCDIR)/alerts/bflat2.wav \
+ $(SRCDIR)/alerts/bflat3.wav \
+ $(SRCDIR)/alerts/bloop.wav \
+ $(SRCDIR)/alerts/plunk.wav \
+ $(SRCDIR)/ci_edit.js \
+ $(SRCDIR)/copybtn.js \
+ $(SRCDIR)/default.css \
+ $(SRCDIR)/diff.js \
+ $(SRCDIR)/diff.tcl \
+ $(SRCDIR)/forum.js \
+ $(SRCDIR)/fossil.bootstrap.js \
+ $(SRCDIR)/fossil.confirmer.js \
+ $(SRCDIR)/fossil.copybutton.js \
+ $(SRCDIR)/fossil.diff.js \
+ $(SRCDIR)/fossil.dom.js \
+ $(SRCDIR)/fossil.fetch.js \
+ $(SRCDIR)/fossil.numbered-lines.js \
+ $(SRCDIR)/fossil.page.brlist.js \
+ $(SRCDIR)/fossil.page.chat.js \
+ $(SRCDIR)/fossil.page.fileedit.js \
+ $(SRCDIR)/fossil.page.forumpost.js \
+ $(SRCDIR)/fossil.page.pikchrshow.js \
+ $(SRCDIR)/fossil.page.pikchrshowasm.js \
+ $(SRCDIR)/fossil.page.whistory.js \
+ $(SRCDIR)/fossil.page.wikiedit.js \
+ $(SRCDIR)/fossil.pikchr.js \
+ $(SRCDIR)/fossil.popupwidget.js \
+ $(SRCDIR)/fossil.storage.js \
+ $(SRCDIR)/fossil.tabs.js \
+ $(SRCDIR)/fossil.wikiedit-wysiwyg.js \
+ $(SRCDIR)/graph.js \
+ $(SRCDIR)/hbmenu.js \
+ $(SRCDIR)/href.js \
+ $(SRCDIR)/login.js \
+ $(SRCDIR)/markdown.md \
+ $(SRCDIR)/menu.js \
+ $(SRCDIR)/scroll.js \
+ $(SRCDIR)/skin.js \
+ $(SRCDIR)/sorttable.js \
+ $(SRCDIR)/sounds/0.wav \
+ $(SRCDIR)/sounds/1.wav \
+ $(SRCDIR)/sounds/2.wav \
+ $(SRCDIR)/sounds/3.wav \
+ $(SRCDIR)/sounds/4.wav \
+ $(SRCDIR)/sounds/5.wav \
+ $(SRCDIR)/sounds/6.wav \
+ $(SRCDIR)/sounds/7.wav \
+ $(SRCDIR)/sounds/8.wav \
+ $(SRCDIR)/sounds/9.wav \
+ $(SRCDIR)/sounds/a.wav \
+ $(SRCDIR)/sounds/b.wav \
+ $(SRCDIR)/sounds/c.wav \
+ $(SRCDIR)/sounds/d.wav \
+ $(SRCDIR)/sounds/e.wav \
+ $(SRCDIR)/sounds/f.wav \
+ $(SRCDIR)/style.admin_log.css \
+ $(SRCDIR)/style.chat.css \
+ $(SRCDIR)/style.fileedit.css \
+ $(SRCDIR)/style.pikchrshow.css \
+ $(SRCDIR)/style.wikiedit.css \
+ $(SRCDIR)/tree.js \
+ $(SRCDIR)/useredit.js \
+ $(SRCDIR)/wiki.wiki
+
+TRANS_SRC = \
+ $(OBJDIR)/add_.c \
+ $(OBJDIR)/ajax_.c \
+ $(OBJDIR)/alerts_.c \
+ $(OBJDIR)/allrepo_.c \
+ $(OBJDIR)/attach_.c \
+ $(OBJDIR)/backlink_.c \
+ $(OBJDIR)/backoffice_.c \
+ $(OBJDIR)/bag_.c \
+ $(OBJDIR)/bisect_.c \
+ $(OBJDIR)/blob_.c \
+ $(OBJDIR)/branch_.c \
+ $(OBJDIR)/browse_.c \
+ $(OBJDIR)/builtin_.c \
+ $(OBJDIR)/bundle_.c \
+ $(OBJDIR)/cache_.c \
+ $(OBJDIR)/capabilities_.c \
+ $(OBJDIR)/captcha_.c \
+ $(OBJDIR)/cgi_.c \
+ $(OBJDIR)/chat_.c \
+ $(OBJDIR)/checkin_.c \
+ $(OBJDIR)/checkout_.c \
+ $(OBJDIR)/clearsign_.c \
+ $(OBJDIR)/clone_.c \
+ $(OBJDIR)/color_.c \
+ $(OBJDIR)/comformat_.c \
+ $(OBJDIR)/configure_.c \
+ $(OBJDIR)/content_.c \
+ $(OBJDIR)/cookies_.c \
+ $(OBJDIR)/db_.c \
+ $(OBJDIR)/delta_.c \
+ $(OBJDIR)/deltacmd_.c \
+ $(OBJDIR)/deltafunc_.c \
+ $(OBJDIR)/descendants_.c \
+ $(OBJDIR)/diff_.c \
+ $(OBJDIR)/diffcmd_.c \
+ $(OBJDIR)/dispatch_.c \
+ $(OBJDIR)/doc_.c \
+ $(OBJDIR)/encode_.c \
+ $(OBJDIR)/etag_.c \
+ $(OBJDIR)/event_.c \
+ $(OBJDIR)/export_.c \
+ $(OBJDIR)/extcgi_.c \
+ $(OBJDIR)/file_.c \
+ $(OBJDIR)/fileedit_.c \
+ $(OBJDIR)/finfo_.c \
+ $(OBJDIR)/foci_.c \
+ $(OBJDIR)/forum_.c \
+ $(OBJDIR)/fshell_.c \
+ $(OBJDIR)/fusefs_.c \
+ $(OBJDIR)/fuzz_.c \
+ $(OBJDIR)/glob_.c \
+ $(OBJDIR)/graph_.c \
+ $(OBJDIR)/gzip_.c \
+ $(OBJDIR)/hname_.c \
+ $(OBJDIR)/hook_.c \
+ $(OBJDIR)/http_.c \
+ $(OBJDIR)/http_socket_.c \
+ $(OBJDIR)/http_ssl_.c \
+ $(OBJDIR)/http_transport_.c \
+ $(OBJDIR)/import_.c \
+ $(OBJDIR)/info_.c \
+ $(OBJDIR)/interwiki_.c \
+ $(OBJDIR)/json_.c \
+ $(OBJDIR)/json_artifact_.c \
+ $(OBJDIR)/json_branch_.c \
+ $(OBJDIR)/json_config_.c \
+ $(OBJDIR)/json_diff_.c \
+ $(OBJDIR)/json_dir_.c \
+ $(OBJDIR)/json_finfo_.c \
+ $(OBJDIR)/json_login_.c \
+ $(OBJDIR)/json_query_.c \
+ $(OBJDIR)/json_report_.c \
+ $(OBJDIR)/json_status_.c \
+ $(OBJDIR)/json_tag_.c \
+ $(OBJDIR)/json_timeline_.c \
+ $(OBJDIR)/json_user_.c \
+ $(OBJDIR)/json_wiki_.c \
+ $(OBJDIR)/leaf_.c \
+ $(OBJDIR)/loadctrl_.c \
+ $(OBJDIR)/login_.c \
+ $(OBJDIR)/lookslike_.c \
+ $(OBJDIR)/main_.c \
+ $(OBJDIR)/manifest_.c \
+ $(OBJDIR)/markdown_.c \
+ $(OBJDIR)/markdown_html_.c \
+ $(OBJDIR)/md5_.c \
+ $(OBJDIR)/merge_.c \
+ $(OBJDIR)/merge3_.c \
+ $(OBJDIR)/moderate_.c \
+ $(OBJDIR)/name_.c \
+ $(OBJDIR)/patch_.c \
+ $(OBJDIR)/path_.c \
+ $(OBJDIR)/piechart_.c \
+ $(OBJDIR)/pikchrshow_.c \
+ $(OBJDIR)/pivot_.c \
+ $(OBJDIR)/popen_.c \
+ $(OBJDIR)/pqueue_.c \
+ $(OBJDIR)/printf_.c \
+ $(OBJDIR)/publish_.c \
+ $(OBJDIR)/purge_.c \
+ $(OBJDIR)/rebuild_.c \
+ $(OBJDIR)/regexp_.c \
+ $(OBJDIR)/repolist_.c \
+ $(OBJDIR)/report_.c \
+ $(OBJDIR)/rss_.c \
+ $(OBJDIR)/schema_.c \
+ $(OBJDIR)/search_.c \
+ $(OBJDIR)/security_audit_.c \
+ $(OBJDIR)/setup_.c \
+ $(OBJDIR)/setupuser_.c \
+ $(OBJDIR)/sha1_.c \
+ $(OBJDIR)/sha1hard_.c \
+ $(OBJDIR)/sha3_.c \
+ $(OBJDIR)/shun_.c \
+ $(OBJDIR)/sitemap_.c \
+ $(OBJDIR)/skins_.c \
+ $(OBJDIR)/smtp_.c \
+ $(OBJDIR)/sqlcmd_.c \
+ $(OBJDIR)/stash_.c \
+ $(OBJDIR)/stat_.c \
+ $(OBJDIR)/statrep_.c \
+ $(OBJDIR)/style_.c \
+ $(OBJDIR)/sync_.c \
+ $(OBJDIR)/tag_.c \
+ $(OBJDIR)/tar_.c \
+ $(OBJDIR)/terminal_.c \
+ $(OBJDIR)/th_main_.c \
+ $(OBJDIR)/timeline_.c \
+ $(OBJDIR)/tkt_.c \
+ $(OBJDIR)/tktsetup_.c \
+ $(OBJDIR)/undo_.c \
+ $(OBJDIR)/unicode_.c \
+ $(OBJDIR)/unversioned_.c \
+ $(OBJDIR)/update_.c \
+ $(OBJDIR)/url_.c \
+ $(OBJDIR)/user_.c \
+ $(OBJDIR)/utf8_.c \
+ $(OBJDIR)/util_.c \
+ $(OBJDIR)/verify_.c \
+ $(OBJDIR)/vfile_.c \
+ $(OBJDIR)/wiki_.c \
+ $(OBJDIR)/wikiformat_.c \
+ $(OBJDIR)/winfile_.c \
+ $(OBJDIR)/winhttp_.c \
+ $(OBJDIR)/xfer_.c \
+ $(OBJDIR)/xfersetup_.c \
+ $(OBJDIR)/zip_.c
+
+OBJ = \
+ $(OBJDIR)/add.o \
+ $(OBJDIR)/ajax.o \
+ $(OBJDIR)/alerts.o \
+ $(OBJDIR)/allrepo.o \
+ $(OBJDIR)/attach.o \
+ $(OBJDIR)/backlink.o \
+ $(OBJDIR)/backoffice.o \
+ $(OBJDIR)/bag.o \
+ $(OBJDIR)/bisect.o \
+ $(OBJDIR)/blob.o \
+ $(OBJDIR)/branch.o \
+ $(OBJDIR)/browse.o \
+ $(OBJDIR)/builtin.o \
+ $(OBJDIR)/bundle.o \
+ $(OBJDIR)/cache.o \
+ $(OBJDIR)/capabilities.o \
+ $(OBJDIR)/captcha.o \
+ $(OBJDIR)/cgi.o \
+ $(OBJDIR)/chat.o \
+ $(OBJDIR)/checkin.o \
+ $(OBJDIR)/checkout.o \
+ $(OBJDIR)/clearsign.o \
+ $(OBJDIR)/clone.o \
+ $(OBJDIR)/color.o \
+ $(OBJDIR)/comformat.o \
+ $(OBJDIR)/configure.o \
+ $(OBJDIR)/content.o \
+ $(OBJDIR)/cookies.o \
+ $(OBJDIR)/db.o \
+ $(OBJDIR)/delta.o \
+ $(OBJDIR)/deltacmd.o \
+ $(OBJDIR)/deltafunc.o \
+ $(OBJDIR)/descendants.o \
+ $(OBJDIR)/diff.o \
+ $(OBJDIR)/diffcmd.o \
+ $(OBJDIR)/dispatch.o \
+ $(OBJDIR)/doc.o \
+ $(OBJDIR)/encode.o \
+ $(OBJDIR)/etag.o \
+ $(OBJDIR)/event.o \
+ $(OBJDIR)/export.o \
+ $(OBJDIR)/extcgi.o \
+ $(OBJDIR)/file.o \
+ $(OBJDIR)/fileedit.o \
+ $(OBJDIR)/finfo.o \
+ $(OBJDIR)/foci.o \
+ $(OBJDIR)/forum.o \
+ $(OBJDIR)/fshell.o \
+ $(OBJDIR)/fusefs.o \
+ $(OBJDIR)/fuzz.o \
+ $(OBJDIR)/glob.o \
+ $(OBJDIR)/graph.o \
+ $(OBJDIR)/gzip.o \
+ $(OBJDIR)/hname.o \
+ $(OBJDIR)/hook.o \
+ $(OBJDIR)/http.o \
+ $(OBJDIR)/http_socket.o \
+ $(OBJDIR)/http_ssl.o \
+ $(OBJDIR)/http_transport.o \
+ $(OBJDIR)/import.o \
+ $(OBJDIR)/info.o \
+ $(OBJDIR)/interwiki.o \
+ $(OBJDIR)/json.o \
+ $(OBJDIR)/json_artifact.o \
+ $(OBJDIR)/json_branch.o \
+ $(OBJDIR)/json_config.o \
+ $(OBJDIR)/json_diff.o \
+ $(OBJDIR)/json_dir.o \
+ $(OBJDIR)/json_finfo.o \
+ $(OBJDIR)/json_login.o \
+ $(OBJDIR)/json_query.o \
+ $(OBJDIR)/json_report.o \
+ $(OBJDIR)/json_status.o \
+ $(OBJDIR)/json_tag.o \
+ $(OBJDIR)/json_timeline.o \
+ $(OBJDIR)/json_user.o \
+ $(OBJDIR)/json_wiki.o \
+ $(OBJDIR)/leaf.o \
+ $(OBJDIR)/loadctrl.o \
+ $(OBJDIR)/login.o \
+ $(OBJDIR)/lookslike.o \
+ $(OBJDIR)/main.o \
+ $(OBJDIR)/manifest.o \
+ $(OBJDIR)/markdown.o \
+ $(OBJDIR)/markdown_html.o \
+ $(OBJDIR)/md5.o \
+ $(OBJDIR)/merge.o \
+ $(OBJDIR)/merge3.o \
+ $(OBJDIR)/moderate.o \
+ $(OBJDIR)/name.o \
+ $(OBJDIR)/patch.o \
+ $(OBJDIR)/path.o \
+ $(OBJDIR)/piechart.o \
+ $(OBJDIR)/pikchrshow.o \
+ $(OBJDIR)/pivot.o \
+ $(OBJDIR)/popen.o \
+ $(OBJDIR)/pqueue.o \
+ $(OBJDIR)/printf.o \
+ $(OBJDIR)/publish.o \
+ $(OBJDIR)/purge.o \
+ $(OBJDIR)/rebuild.o \
+ $(OBJDIR)/regexp.o \
+ $(OBJDIR)/repolist.o \
+ $(OBJDIR)/report.o \
+ $(OBJDIR)/rss.o \
+ $(OBJDIR)/schema.o \
+ $(OBJDIR)/search.o \
+ $(OBJDIR)/security_audit.o \
+ $(OBJDIR)/setup.o \
+ $(OBJDIR)/setupuser.o \
+ $(OBJDIR)/sha1.o \
+ $(OBJDIR)/sha1hard.o \
+ $(OBJDIR)/sha3.o \
+ $(OBJDIR)/shun.o \
+ $(OBJDIR)/sitemap.o \
+ $(OBJDIR)/skins.o \
+ $(OBJDIR)/smtp.o \
+ $(OBJDIR)/sqlcmd.o \
+ $(OBJDIR)/stash.o \
+ $(OBJDIR)/stat.o \
+ $(OBJDIR)/statrep.o \
+ $(OBJDIR)/style.o \
+ $(OBJDIR)/sync.o \
+ $(OBJDIR)/tag.o \
+ $(OBJDIR)/tar.o \
+ $(OBJDIR)/terminal.o \
+ $(OBJDIR)/th_main.o \
+ $(OBJDIR)/timeline.o \
+ $(OBJDIR)/tkt.o \
+ $(OBJDIR)/tktsetup.o \
+ $(OBJDIR)/undo.o \
+ $(OBJDIR)/unicode.o \
+ $(OBJDIR)/unversioned.o \
+ $(OBJDIR)/update.o \
+ $(OBJDIR)/url.o \
+ $(OBJDIR)/user.o \
+ $(OBJDIR)/utf8.o \
+ $(OBJDIR)/util.o \
+ $(OBJDIR)/verify.o \
+ $(OBJDIR)/vfile.o \
+ $(OBJDIR)/wiki.o \
+ $(OBJDIR)/wikiformat.o \
+ $(OBJDIR)/winfile.o \
+ $(OBJDIR)/winhttp.o \
+ $(OBJDIR)/xfer.o \
+ $(OBJDIR)/xfersetup.o \
+ $(OBJDIR)/zip.o
+
+APPNAME = fossil.exe
+APPTARGETS =
+
+#### If the USE_WINDOWS variable exists, it is assumed that we are building
+# inside of a Windows-style shell; otherwise, it is assumed that we are
+# building inside of a Unix-style shell. Note that the "move" command is
+# broken when attempting to use it from the Windows shell via MinGW make
+# because the SHELL variable is only used for certain commands that are
+# recognized internally by make.
+#
+ifdef USE_WINDOWS
+TRANSLATE = $(subst /,\,$(OBJDIR)/translate.exe)
+MAKEHEADERS = $(subst /,\,$(OBJDIR)/makeheaders.exe)
+MKINDEX = $(subst /,\,$(OBJDIR)/mkindex.exe)
+MKBUILTIN = $(subst /,\,$(OBJDIR)/mkbuiltin.exe)
+MKVERSION = $(subst /,\,$(OBJDIR)/mkversion.exe)
+CODECHECK1 = $(subst /,\,$(OBJDIR)/codecheck1.exe)
+CAT = type
+CP = copy
+GREP = find
+MV = copy
+RM = del /Q
+MKDIR = -mkdir
+RMDIR = rmdir /S /Q
+else
+TRANSLATE = $(OBJDIR)/translate.exe
+MAKEHEADERS = $(OBJDIR)/makeheaders.exe
+MKINDEX = $(OBJDIR)/mkindex.exe
+MKBUILTIN = $(OBJDIR)/mkbuiltin.exe
+MKVERSION = $(OBJDIR)/mkversion.exe
+CODECHECK1 = $(OBJDIR)/codecheck1.exe
+CAT = cat
+CP = cp
+GREP = grep
+MV = mv
+RM = rm -f
+MKDIR = -mkdir -p
+RMDIR = rm -rf
+endif
+
+all: $(OBJDIR) $(APPNAME)
+
+$(OBJDIR)/fossil.o: $(SRCDIR)/../win/fossil.rc $(OBJDIR)/VERSION.h
+ifdef USE_WINDOWS
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.rc) $(subst /,\,$(OBJDIR))
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.ico) $(subst /,\,$(OBJDIR))
+ $(CP) $(subst /,\,$(SRCDIR)\..\win\fossil.exe.manifest) $(subst /,\,$(OBJDIR))
+else
+ $(CP) $(SRCDIR)/../win/fossil.rc $(OBJDIR)
+ $(CP) $(SRCDIR)/../win/fossil.ico $(OBJDIR)
+ $(CP) $(SRCDIR)/../win/fossil.exe.manifest $(OBJDIR)
+endif
+ $(RCC) $(OBJDIR)/fossil.rc -o $(OBJDIR)/fossil.o
+
+install: $(OBJDIR) $(APPNAME)
+ifdef USE_WINDOWS
+ $(MKDIR) $(subst /,\,$(INSTALLDIR))
+ $(CP) $(subst /,\,$(APPNAME)) $(subst /,\,$(INSTALLDIR))
+else
+ $(MKDIR) $(INSTALLDIR)
+ $(CP) $(APPNAME) $(INSTALLDIR)
+endif
+
+$(OBJDIR):
+ifdef USE_WINDOWS
+ $(MKDIR) $(subst /,\,$(OBJDIR))
+else
+ $(MKDIR) $(OBJDIR)
+endif
+
+$(TRANSLATE): $(SRCDIR_tools)/translate.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/translate.c
+
+$(MAKEHEADERS): $(SRCDIR_tools)/makeheaders.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/makeheaders.c
+
+$(MKINDEX): $(SRCDIR_tools)/mkindex.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkindex.c
+
+$(MKBUILTIN): $(SRCDIR_tools)/mkbuiltin.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkbuiltin.c
+
+$(MKVERSION): $(SRCDIR_tools)/mkversion.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/mkversion.c
+
+$(CODECHECK1): $(SRCDIR_tools)/codecheck1.c
+ $(XBCC) -o $@ $(SRCDIR_tools)/codecheck1.c
+
+# WARNING. DANGER. Running the test suite modifies the repository the
+# build is done from, i.e. the checkout belongs to. Do not sync/push
+# the repository after running the tests.
+test: $(OBJDIR) $(APPNAME)
+ $(TCLSH) $(SRCDIR)/../test/tester.tcl $(APPNAME)
+
+$(OBJDIR)/VERSION.h: $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(MKVERSION) $(OBJDIR)/phony.h
+ $(MKVERSION) $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(SRCDIR)/../VERSION >$@
+
+$(OBJDIR)/phony.h:
+ # Force rebuild of VERSION.h every time "make" is run
+
+# The USE_SYSTEM_SQLITE variable may be undefined, set to 0 or 1.
+# If it is set to 1, then there is no need to build or link
+# the sqlite3.o object. Instead, the system SQLite will be linked
+# using -lsqlite3.
+#
+# Closely related is SQLITE3_ORIGIN, with the same 0/1 mapping,
+# plus a value of 2 means that we are building a client-provided
+# sqlite3.c.
+SQLITE3_OBJ.0 = $(OBJDIR)/sqlite3.o
+SQLITE3_OBJ.1 = $(OBJDIR)/sqlite3-see.o
+# SQLITE3_OBJ.2 is set by the configure process
+SQLITE3_OBJ. = $(SQLITE3_OBJ.0)
+SQLITE3_OBJ = $(SQLITE3_OBJ.$(SQLITE3_ORIGIN))
+
+# The USE_SEE variable may be undefined, 0 or 1. If undefined or 0,
+# in-tree SQLite is used. If 1, then sqlite3-see.c (not part of the
+# source tree) is used and extra flags are provided to enable the
+# SQLite Encryption Extension.
+SQLITE3_SRC.0 = $(SRCDIR_extsrc)/sqlite3.c
+SQLITE3_SRC.1 = $(SRCDIR_extsrc)/sqlite3-see.c
+# SQLITE3_SRC.2 is set by top-level configure/makefile process.
+SQLITE3_SRC. = $(SRCDIR_extsrc)/sqlite3.c
+SQLITE3_SRC = $(SQLITE3_SRC.$(SQLITE3_ORIGIN))
+SQLITE3_SHELL_SRC.0 = $(SRCDIR_extsrc)/shell.c
+SQLITE3_SHELL_SRC.1 = $(SRCDIR_extsrc)/shell-see.c
+# SQLITE3_SHELL_SRC.2 comes from the configure process
+SQLITE3_SHELL_SRC. = $(SRCDIR_extsrc)/shell.c
+SQLITE3_SHELL_SRC = $(SQLITE3_SHELL_SRC.$(SQLITE3_ORIGIN))
+SEE_FLAGS.0 =
+SEE_FLAGS.1 = -DSQLITE_HAS_CODEC -DSQLITE_SHELL_DBKEY_PROC=fossil_key
+SEE_FLAGS. =
+SEE_FLAGS = $(SEE_FLAGS.$(USE_SEE))
+
+
+EXTRAOBJ = \
+ $(SQLITE3_OBJ.$(SQLITE3_ORIGIN)) \
+ $(OBJDIR)/pikchr.o \
+ $(OBJDIR)/shell.o \
+ $(OBJDIR)/th.o \
+ $(OBJDIR)/th_lang.o \
+ $(OBJDIR)/th_tcl.o \
+ $(OBJDIR)/cson_amalgamation.o
+
+
+zlib: $(ZLIBTARGETS)
+ $(MAKE) -C $(ZLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) $(ZLIBCONFIG) -f win32/Makefile.gcc libz.a
+
+clean-zlib:
+ $(MAKE) -C $(ZLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) -f win32/Makefile.gcc clean
+
+BLDTARGETS = zlib
+
+openssl: $(BLDTARGETS)
+ cd $(OPENSSLLIBDIR);./Configure --cross-compile-prefix=$(PREFIX) $(SSLCONFIG)
+ sed -i -e 's/^PERL=C:\\.*$$/PERL=perl.exe/i' $(OPENSSLLIBDIR)/Makefile
+ $(MAKE) -C $(OPENSSLLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) build_libs
+
+clean-openssl:
+ $(MAKE) -C $(OPENSSLLIBDIR) PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) clean
+
+tcl:
+ cd $(TCLSRCDIR)/win;./configure
+ $(MAKE) -C $(TCLSRCDIR)/win PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) $(TCLTARGET)
+
+clean-tcl:
+ $(MAKE) -C $(TCLSRCDIR)/win PREFIX=$(PREFIX) CC=$(PREFIX)$(TCCEXE) distclean
+
+APPTARGETS += $(BLDTARGETS)
+
+ifdef FOSSIL_BUILD_SSL
+APPTARGETS += openssl
+endif
+
+$(APPNAME): $(APPTARGETS) $(OBJDIR)/headers $(CODECHECK1) $(EXTRAOBJ) $(OBJ) $(OBJDIR)/fossil.o
+ $(CODECHECK1) $(TRANS_SRC)
+ $(TCC) -o $@ $(EXTRAOBJ) $(OBJ) $(OBJDIR)/fossil.o $(LIB)
+
+# This rule prevents make from using its default rules to try build
+# an executable named "manifest" out of the file named "manifest.c"
+#
+$(SRCDIR)/../manifest:
+ # noop
+
+clean:
+ifdef USE_WINDOWS
+ $(RM) $(subst /,\,$(APPNAME))
+ $(RMDIR) $(subst /,\,$(OBJDIR))
+else
+ $(RM) $(APPNAME)
+ $(RMDIR) $(OBJDIR)
+endif
+
+setup: $(OBJDIR) $(APPNAME)
+ $(MAKENSIS) ./setup/fossil.nsi
+
+innosetup: $(OBJDIR) $(APPNAME)
+ $(INNOSETUP) ./setup/fossil.iss -DAppVersion=$(shell $(CAT) ./VERSION)
+
+$(OBJDIR)/page_index.h: $(TRANS_SRC) $(MKINDEX)
+ $(MKINDEX) $(TRANS_SRC) >$@
+
+$(OBJDIR)/builtin_data.h: $(MKBUILTIN) $(EXTRA_FILES)
+ $(MKBUILTIN) --prefix $(SRCDIR)/ $(EXTRA_FILES) >$@
+
+$(OBJDIR)/headers: $(OBJDIR)/page_index.h $(OBJDIR)/builtin_data.h $(MAKEHEADERS) $(OBJDIR)/VERSION.h
+ $(MAKEHEADERS) $(OBJDIR)/add_.c:$(OBJDIR)/add.h \
+ $(OBJDIR)/ajax_.c:$(OBJDIR)/ajax.h \
+ $(OBJDIR)/alerts_.c:$(OBJDIR)/alerts.h \
+ $(OBJDIR)/allrepo_.c:$(OBJDIR)/allrepo.h \
+ $(OBJDIR)/attach_.c:$(OBJDIR)/attach.h \
+ $(OBJDIR)/backlink_.c:$(OBJDIR)/backlink.h \
+ $(OBJDIR)/backoffice_.c:$(OBJDIR)/backoffice.h \
+ $(OBJDIR)/bag_.c:$(OBJDIR)/bag.h \
+ $(OBJDIR)/bisect_.c:$(OBJDIR)/bisect.h \
+ $(OBJDIR)/blob_.c:$(OBJDIR)/blob.h \
+ $(OBJDIR)/branch_.c:$(OBJDIR)/branch.h \
+ $(OBJDIR)/browse_.c:$(OBJDIR)/browse.h \
+ $(OBJDIR)/builtin_.c:$(OBJDIR)/builtin.h \
+ $(OBJDIR)/bundle_.c:$(OBJDIR)/bundle.h \
+ $(OBJDIR)/cache_.c:$(OBJDIR)/cache.h \
+ $(OBJDIR)/capabilities_.c:$(OBJDIR)/capabilities.h \
+ $(OBJDIR)/captcha_.c:$(OBJDIR)/captcha.h \
+ $(OBJDIR)/cgi_.c:$(OBJDIR)/cgi.h \
+ $(OBJDIR)/chat_.c:$(OBJDIR)/chat.h \
+ $(OBJDIR)/checkin_.c:$(OBJDIR)/checkin.h \
+ $(OBJDIR)/checkout_.c:$(OBJDIR)/checkout.h \
+ $(OBJDIR)/clearsign_.c:$(OBJDIR)/clearsign.h \
+ $(OBJDIR)/clone_.c:$(OBJDIR)/clone.h \
+ $(OBJDIR)/color_.c:$(OBJDIR)/color.h \
+ $(OBJDIR)/comformat_.c:$(OBJDIR)/comformat.h \
+ $(OBJDIR)/configure_.c:$(OBJDIR)/configure.h \
+ $(OBJDIR)/content_.c:$(OBJDIR)/content.h \
+ $(OBJDIR)/cookies_.c:$(OBJDIR)/cookies.h \
+ $(OBJDIR)/db_.c:$(OBJDIR)/db.h \
+ $(OBJDIR)/delta_.c:$(OBJDIR)/delta.h \
+ $(OBJDIR)/deltacmd_.c:$(OBJDIR)/deltacmd.h \
+ $(OBJDIR)/deltafunc_.c:$(OBJDIR)/deltafunc.h \
+ $(OBJDIR)/descendants_.c:$(OBJDIR)/descendants.h \
+ $(OBJDIR)/diff_.c:$(OBJDIR)/diff.h \
+ $(OBJDIR)/diffcmd_.c:$(OBJDIR)/diffcmd.h \
+ $(OBJDIR)/dispatch_.c:$(OBJDIR)/dispatch.h \
+ $(OBJDIR)/doc_.c:$(OBJDIR)/doc.h \
+ $(OBJDIR)/encode_.c:$(OBJDIR)/encode.h \
+ $(OBJDIR)/etag_.c:$(OBJDIR)/etag.h \
+ $(OBJDIR)/event_.c:$(OBJDIR)/event.h \
+ $(OBJDIR)/export_.c:$(OBJDIR)/export.h \
+ $(OBJDIR)/extcgi_.c:$(OBJDIR)/extcgi.h \
+ $(OBJDIR)/file_.c:$(OBJDIR)/file.h \
+ $(OBJDIR)/fileedit_.c:$(OBJDIR)/fileedit.h \
+ $(OBJDIR)/finfo_.c:$(OBJDIR)/finfo.h \
+ $(OBJDIR)/foci_.c:$(OBJDIR)/foci.h \
+ $(OBJDIR)/forum_.c:$(OBJDIR)/forum.h \
+ $(OBJDIR)/fshell_.c:$(OBJDIR)/fshell.h \
+ $(OBJDIR)/fusefs_.c:$(OBJDIR)/fusefs.h \
+ $(OBJDIR)/fuzz_.c:$(OBJDIR)/fuzz.h \
+ $(OBJDIR)/glob_.c:$(OBJDIR)/glob.h \
+ $(OBJDIR)/graph_.c:$(OBJDIR)/graph.h \
+ $(OBJDIR)/gzip_.c:$(OBJDIR)/gzip.h \
+ $(OBJDIR)/hname_.c:$(OBJDIR)/hname.h \
+ $(OBJDIR)/hook_.c:$(OBJDIR)/hook.h \
+ $(OBJDIR)/http_.c:$(OBJDIR)/http.h \
+ $(OBJDIR)/http_socket_.c:$(OBJDIR)/http_socket.h \
+ $(OBJDIR)/http_ssl_.c:$(OBJDIR)/http_ssl.h \
+ $(OBJDIR)/http_transport_.c:$(OBJDIR)/http_transport.h \
+ $(OBJDIR)/import_.c:$(OBJDIR)/import.h \
+ $(OBJDIR)/info_.c:$(OBJDIR)/info.h \
+ $(OBJDIR)/interwiki_.c:$(OBJDIR)/interwiki.h \
+ $(OBJDIR)/json_.c:$(OBJDIR)/json.h \
+ $(OBJDIR)/json_artifact_.c:$(OBJDIR)/json_artifact.h \
+ $(OBJDIR)/json_branch_.c:$(OBJDIR)/json_branch.h \
+ $(OBJDIR)/json_config_.c:$(OBJDIR)/json_config.h \
+ $(OBJDIR)/json_diff_.c:$(OBJDIR)/json_diff.h \
+ $(OBJDIR)/json_dir_.c:$(OBJDIR)/json_dir.h \
+ $(OBJDIR)/json_finfo_.c:$(OBJDIR)/json_finfo.h \
+ $(OBJDIR)/json_login_.c:$(OBJDIR)/json_login.h \
+ $(OBJDIR)/json_query_.c:$(OBJDIR)/json_query.h \
+ $(OBJDIR)/json_report_.c:$(OBJDIR)/json_report.h \
+ $(OBJDIR)/json_status_.c:$(OBJDIR)/json_status.h \
+ $(OBJDIR)/json_tag_.c:$(OBJDIR)/json_tag.h \
+ $(OBJDIR)/json_timeline_.c:$(OBJDIR)/json_timeline.h \
+ $(OBJDIR)/json_user_.c:$(OBJDIR)/json_user.h \
+ $(OBJDIR)/json_wiki_.c:$(OBJDIR)/json_wiki.h \
+ $(OBJDIR)/leaf_.c:$(OBJDIR)/leaf.h \
+ $(OBJDIR)/loadctrl_.c:$(OBJDIR)/loadctrl.h \
+ $(OBJDIR)/login_.c:$(OBJDIR)/login.h \
+ $(OBJDIR)/lookslike_.c:$(OBJDIR)/lookslike.h \
+ $(OBJDIR)/main_.c:$(OBJDIR)/main.h \
+ $(OBJDIR)/manifest_.c:$(OBJDIR)/manifest.h \
+ $(OBJDIR)/markdown_.c:$(OBJDIR)/markdown.h \
+ $(OBJDIR)/markdown_html_.c:$(OBJDIR)/markdown_html.h \
+ $(OBJDIR)/md5_.c:$(OBJDIR)/md5.h \
+ $(OBJDIR)/merge_.c:$(OBJDIR)/merge.h \
+ $(OBJDIR)/merge3_.c:$(OBJDIR)/merge3.h \
+ $(OBJDIR)/moderate_.c:$(OBJDIR)/moderate.h \
+ $(OBJDIR)/name_.c:$(OBJDIR)/name.h \
+ $(OBJDIR)/patch_.c:$(OBJDIR)/patch.h \
+ $(OBJDIR)/path_.c:$(OBJDIR)/path.h \
+ $(OBJDIR)/piechart_.c:$(OBJDIR)/piechart.h \
+ $(OBJDIR)/pikchrshow_.c:$(OBJDIR)/pikchrshow.h \
+ $(OBJDIR)/pivot_.c:$(OBJDIR)/pivot.h \
+ $(OBJDIR)/popen_.c:$(OBJDIR)/popen.h \
+ $(OBJDIR)/pqueue_.c:$(OBJDIR)/pqueue.h \
+ $(OBJDIR)/printf_.c:$(OBJDIR)/printf.h \
+ $(OBJDIR)/publish_.c:$(OBJDIR)/publish.h \
+ $(OBJDIR)/purge_.c:$(OBJDIR)/purge.h \
+ $(OBJDIR)/rebuild_.c:$(OBJDIR)/rebuild.h \
+ $(OBJDIR)/regexp_.c:$(OBJDIR)/regexp.h \
+ $(OBJDIR)/repolist_.c:$(OBJDIR)/repolist.h \
+ $(OBJDIR)/report_.c:$(OBJDIR)/report.h \
+ $(OBJDIR)/rss_.c:$(OBJDIR)/rss.h \
+ $(OBJDIR)/schema_.c:$(OBJDIR)/schema.h \
+ $(OBJDIR)/search_.c:$(OBJDIR)/search.h \
+ $(OBJDIR)/security_audit_.c:$(OBJDIR)/security_audit.h \
+ $(OBJDIR)/setup_.c:$(OBJDIR)/setup.h \
+ $(OBJDIR)/setupuser_.c:$(OBJDIR)/setupuser.h \
+ $(OBJDIR)/sha1_.c:$(OBJDIR)/sha1.h \
+ $(OBJDIR)/sha1hard_.c:$(OBJDIR)/sha1hard.h \
+ $(OBJDIR)/sha3_.c:$(OBJDIR)/sha3.h \
+ $(OBJDIR)/shun_.c:$(OBJDIR)/shun.h \
+ $(OBJDIR)/sitemap_.c:$(OBJDIR)/sitemap.h \
+ $(OBJDIR)/skins_.c:$(OBJDIR)/skins.h \
+ $(OBJDIR)/smtp_.c:$(OBJDIR)/smtp.h \
+ $(OBJDIR)/sqlcmd_.c:$(OBJDIR)/sqlcmd.h \
+ $(OBJDIR)/stash_.c:$(OBJDIR)/stash.h \
+ $(OBJDIR)/stat_.c:$(OBJDIR)/stat.h \
+ $(OBJDIR)/statrep_.c:$(OBJDIR)/statrep.h \
+ $(OBJDIR)/style_.c:$(OBJDIR)/style.h \
+ $(OBJDIR)/sync_.c:$(OBJDIR)/sync.h \
+ $(OBJDIR)/tag_.c:$(OBJDIR)/tag.h \
+ $(OBJDIR)/tar_.c:$(OBJDIR)/tar.h \
+ $(OBJDIR)/terminal_.c:$(OBJDIR)/terminal.h \
+ $(OBJDIR)/th_main_.c:$(OBJDIR)/th_main.h \
+ $(OBJDIR)/timeline_.c:$(OBJDIR)/timeline.h \
+ $(OBJDIR)/tkt_.c:$(OBJDIR)/tkt.h \
+ $(OBJDIR)/tktsetup_.c:$(OBJDIR)/tktsetup.h \
+ $(OBJDIR)/undo_.c:$(OBJDIR)/undo.h \
+ $(OBJDIR)/unicode_.c:$(OBJDIR)/unicode.h \
+ $(OBJDIR)/unversioned_.c:$(OBJDIR)/unversioned.h \
+ $(OBJDIR)/update_.c:$(OBJDIR)/update.h \
+ $(OBJDIR)/url_.c:$(OBJDIR)/url.h \
+ $(OBJDIR)/user_.c:$(OBJDIR)/user.h \
+ $(OBJDIR)/utf8_.c:$(OBJDIR)/utf8.h \
+ $(OBJDIR)/util_.c:$(OBJDIR)/util.h \
+ $(OBJDIR)/verify_.c:$(OBJDIR)/verify.h \
+ $(OBJDIR)/vfile_.c:$(OBJDIR)/vfile.h \
+ $(OBJDIR)/wiki_.c:$(OBJDIR)/wiki.h \
+ $(OBJDIR)/wikiformat_.c:$(OBJDIR)/wikiformat.h \
+ $(OBJDIR)/winfile_.c:$(OBJDIR)/winfile.h \
+ $(OBJDIR)/winhttp_.c:$(OBJDIR)/winhttp.h \
+ $(OBJDIR)/xfer_.c:$(OBJDIR)/xfer.h \
+ $(OBJDIR)/xfersetup_.c:$(OBJDIR)/xfersetup.h \
+ $(OBJDIR)/zip_.c:$(OBJDIR)/zip.h \
+ $(SRCDIR_extsrc)/pikchr.c:$(OBJDIR)/pikchr.h \
+ $(SRCDIR_extsrc)/sqlite3.h \
+ $(SRCDIR)/th.h \
+ $(OBJDIR)/VERSION.h
+ echo Done >$(OBJDIR)/headers
+
+$(OBJDIR)/headers: Makefile
+
+Makefile:
+
+$(OBJDIR)/add_.c: $(SRCDIR)/add.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/add.c >$@
+
+$(OBJDIR)/add.o: $(OBJDIR)/add_.c $(OBJDIR)/add.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/add.o -c $(OBJDIR)/add_.c
+
+$(OBJDIR)/add.h: $(OBJDIR)/headers
+
+$(OBJDIR)/ajax_.c: $(SRCDIR)/ajax.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/ajax.c >$@
+
+$(OBJDIR)/ajax.o: $(OBJDIR)/ajax_.c $(OBJDIR)/ajax.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/ajax.o -c $(OBJDIR)/ajax_.c
+
+$(OBJDIR)/ajax.h: $(OBJDIR)/headers
+
+$(OBJDIR)/alerts_.c: $(SRCDIR)/alerts.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/alerts.c >$@
+
+$(OBJDIR)/alerts.o: $(OBJDIR)/alerts_.c $(OBJDIR)/alerts.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/alerts.o -c $(OBJDIR)/alerts_.c
+
+$(OBJDIR)/alerts.h: $(OBJDIR)/headers
+
+$(OBJDIR)/allrepo_.c: $(SRCDIR)/allrepo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/allrepo.c >$@
+
+$(OBJDIR)/allrepo.o: $(OBJDIR)/allrepo_.c $(OBJDIR)/allrepo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/allrepo.o -c $(OBJDIR)/allrepo_.c
+
+$(OBJDIR)/allrepo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/attach_.c: $(SRCDIR)/attach.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/attach.c >$@
+
+$(OBJDIR)/attach.o: $(OBJDIR)/attach_.c $(OBJDIR)/attach.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/attach.o -c $(OBJDIR)/attach_.c
+
+$(OBJDIR)/attach.h: $(OBJDIR)/headers
+
+$(OBJDIR)/backlink_.c: $(SRCDIR)/backlink.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/backlink.c >$@
+
+$(OBJDIR)/backlink.o: $(OBJDIR)/backlink_.c $(OBJDIR)/backlink.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/backlink.o -c $(OBJDIR)/backlink_.c
+
+$(OBJDIR)/backlink.h: $(OBJDIR)/headers
+
+$(OBJDIR)/backoffice_.c: $(SRCDIR)/backoffice.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/backoffice.c >$@
+
+$(OBJDIR)/backoffice.o: $(OBJDIR)/backoffice_.c $(OBJDIR)/backoffice.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/backoffice.o -c $(OBJDIR)/backoffice_.c
+
+$(OBJDIR)/backoffice.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bag_.c: $(SRCDIR)/bag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bag.c >$@
+
+$(OBJDIR)/bag.o: $(OBJDIR)/bag_.c $(OBJDIR)/bag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bag.o -c $(OBJDIR)/bag_.c
+
+$(OBJDIR)/bag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bisect_.c: $(SRCDIR)/bisect.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bisect.c >$@
+
+$(OBJDIR)/bisect.o: $(OBJDIR)/bisect_.c $(OBJDIR)/bisect.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bisect.o -c $(OBJDIR)/bisect_.c
+
+$(OBJDIR)/bisect.h: $(OBJDIR)/headers
+
+$(OBJDIR)/blob_.c: $(SRCDIR)/blob.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/blob.c >$@
+
+$(OBJDIR)/blob.o: $(OBJDIR)/blob_.c $(OBJDIR)/blob.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/blob.o -c $(OBJDIR)/blob_.c
+
+$(OBJDIR)/blob.h: $(OBJDIR)/headers
+
+$(OBJDIR)/branch_.c: $(SRCDIR)/branch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/branch.c >$@
+
+$(OBJDIR)/branch.o: $(OBJDIR)/branch_.c $(OBJDIR)/branch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/branch.o -c $(OBJDIR)/branch_.c
+
+$(OBJDIR)/branch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/browse_.c: $(SRCDIR)/browse.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/browse.c >$@
+
+$(OBJDIR)/browse.o: $(OBJDIR)/browse_.c $(OBJDIR)/browse.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/browse.o -c $(OBJDIR)/browse_.c
+
+$(OBJDIR)/browse.h: $(OBJDIR)/headers
+
+$(OBJDIR)/builtin_.c: $(SRCDIR)/builtin.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/builtin.c >$@
+
+$(OBJDIR)/builtin.o: $(OBJDIR)/builtin_.c $(OBJDIR)/builtin.h $(OBJDIR)/builtin_data.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/builtin.o -c $(OBJDIR)/builtin_.c
+
+$(OBJDIR)/builtin.h: $(OBJDIR)/headers
+
+$(OBJDIR)/bundle_.c: $(SRCDIR)/bundle.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/bundle.c >$@
+
+$(OBJDIR)/bundle.o: $(OBJDIR)/bundle_.c $(OBJDIR)/bundle.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/bundle.o -c $(OBJDIR)/bundle_.c
+
+$(OBJDIR)/bundle.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cache_.c: $(SRCDIR)/cache.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cache.c >$@
+
+$(OBJDIR)/cache.o: $(OBJDIR)/cache_.c $(OBJDIR)/cache.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cache.o -c $(OBJDIR)/cache_.c
+
+$(OBJDIR)/cache.h: $(OBJDIR)/headers
+
+$(OBJDIR)/capabilities_.c: $(SRCDIR)/capabilities.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/capabilities.c >$@
+
+$(OBJDIR)/capabilities.o: $(OBJDIR)/capabilities_.c $(OBJDIR)/capabilities.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/capabilities.o -c $(OBJDIR)/capabilities_.c
+
+$(OBJDIR)/capabilities.h: $(OBJDIR)/headers
+
+$(OBJDIR)/captcha_.c: $(SRCDIR)/captcha.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/captcha.c >$@
+
+$(OBJDIR)/captcha.o: $(OBJDIR)/captcha_.c $(OBJDIR)/captcha.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/captcha.o -c $(OBJDIR)/captcha_.c
+
+$(OBJDIR)/captcha.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cgi_.c: $(SRCDIR)/cgi.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cgi.c >$@
+
+$(OBJDIR)/cgi.o: $(OBJDIR)/cgi_.c $(OBJDIR)/cgi.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cgi.o -c $(OBJDIR)/cgi_.c
+
+$(OBJDIR)/cgi.h: $(OBJDIR)/headers
+
+$(OBJDIR)/chat_.c: $(SRCDIR)/chat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/chat.c >$@
+
+$(OBJDIR)/chat.o: $(OBJDIR)/chat_.c $(OBJDIR)/chat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/chat.o -c $(OBJDIR)/chat_.c
+
+$(OBJDIR)/chat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/checkin_.c: $(SRCDIR)/checkin.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/checkin.c >$@
+
+$(OBJDIR)/checkin.o: $(OBJDIR)/checkin_.c $(OBJDIR)/checkin.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/checkin.o -c $(OBJDIR)/checkin_.c
+
+$(OBJDIR)/checkin.h: $(OBJDIR)/headers
+
+$(OBJDIR)/checkout_.c: $(SRCDIR)/checkout.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/checkout.c >$@
+
+$(OBJDIR)/checkout.o: $(OBJDIR)/checkout_.c $(OBJDIR)/checkout.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/checkout.o -c $(OBJDIR)/checkout_.c
+
+$(OBJDIR)/checkout.h: $(OBJDIR)/headers
+
+$(OBJDIR)/clearsign_.c: $(SRCDIR)/clearsign.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/clearsign.c >$@
+
+$(OBJDIR)/clearsign.o: $(OBJDIR)/clearsign_.c $(OBJDIR)/clearsign.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/clearsign.o -c $(OBJDIR)/clearsign_.c
+
+$(OBJDIR)/clearsign.h: $(OBJDIR)/headers
+
+$(OBJDIR)/clone_.c: $(SRCDIR)/clone.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/clone.c >$@
+
+$(OBJDIR)/clone.o: $(OBJDIR)/clone_.c $(OBJDIR)/clone.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/clone.o -c $(OBJDIR)/clone_.c
+
+$(OBJDIR)/clone.h: $(OBJDIR)/headers
+
+$(OBJDIR)/color_.c: $(SRCDIR)/color.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/color.c >$@
+
+$(OBJDIR)/color.o: $(OBJDIR)/color_.c $(OBJDIR)/color.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/color.o -c $(OBJDIR)/color_.c
+
+$(OBJDIR)/color.h: $(OBJDIR)/headers
+
+$(OBJDIR)/comformat_.c: $(SRCDIR)/comformat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/comformat.c >$@
+
+$(OBJDIR)/comformat.o: $(OBJDIR)/comformat_.c $(OBJDIR)/comformat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/comformat.o -c $(OBJDIR)/comformat_.c
+
+$(OBJDIR)/comformat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/configure_.c: $(SRCDIR)/configure.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/configure.c >$@
+
+$(OBJDIR)/configure.o: $(OBJDIR)/configure_.c $(OBJDIR)/configure.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/configure.o -c $(OBJDIR)/configure_.c
+
+$(OBJDIR)/configure.h: $(OBJDIR)/headers
+
+$(OBJDIR)/content_.c: $(SRCDIR)/content.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/content.c >$@
+
+$(OBJDIR)/content.o: $(OBJDIR)/content_.c $(OBJDIR)/content.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/content.o -c $(OBJDIR)/content_.c
+
+$(OBJDIR)/content.h: $(OBJDIR)/headers
+
+$(OBJDIR)/cookies_.c: $(SRCDIR)/cookies.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/cookies.c >$@
+
+$(OBJDIR)/cookies.o: $(OBJDIR)/cookies_.c $(OBJDIR)/cookies.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/cookies.o -c $(OBJDIR)/cookies_.c
+
+$(OBJDIR)/cookies.h: $(OBJDIR)/headers
+
+$(OBJDIR)/db_.c: $(SRCDIR)/db.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/db.c >$@
+
+$(OBJDIR)/db.o: $(OBJDIR)/db_.c $(OBJDIR)/db.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/db.o -c $(OBJDIR)/db_.c
+
+$(OBJDIR)/db.h: $(OBJDIR)/headers
+
+$(OBJDIR)/delta_.c: $(SRCDIR)/delta.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/delta.c >$@
+
+$(OBJDIR)/delta.o: $(OBJDIR)/delta_.c $(OBJDIR)/delta.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/delta.o -c $(OBJDIR)/delta_.c
+
+$(OBJDIR)/delta.h: $(OBJDIR)/headers
+
+$(OBJDIR)/deltacmd_.c: $(SRCDIR)/deltacmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/deltacmd.c >$@
+
+$(OBJDIR)/deltacmd.o: $(OBJDIR)/deltacmd_.c $(OBJDIR)/deltacmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/deltacmd.o -c $(OBJDIR)/deltacmd_.c
+
+$(OBJDIR)/deltacmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/deltafunc_.c: $(SRCDIR)/deltafunc.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/deltafunc.c >$@
+
+$(OBJDIR)/deltafunc.o: $(OBJDIR)/deltafunc_.c $(OBJDIR)/deltafunc.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/deltafunc.o -c $(OBJDIR)/deltafunc_.c
+
+$(OBJDIR)/deltafunc.h: $(OBJDIR)/headers
+
+$(OBJDIR)/descendants_.c: $(SRCDIR)/descendants.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/descendants.c >$@
+
+$(OBJDIR)/descendants.o: $(OBJDIR)/descendants_.c $(OBJDIR)/descendants.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/descendants.o -c $(OBJDIR)/descendants_.c
+
+$(OBJDIR)/descendants.h: $(OBJDIR)/headers
+
+$(OBJDIR)/diff_.c: $(SRCDIR)/diff.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/diff.c >$@
+
+$(OBJDIR)/diff.o: $(OBJDIR)/diff_.c $(OBJDIR)/diff.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/diff.o -c $(OBJDIR)/diff_.c
+
+$(OBJDIR)/diff.h: $(OBJDIR)/headers
+
+$(OBJDIR)/diffcmd_.c: $(SRCDIR)/diffcmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/diffcmd.c >$@
+
+$(OBJDIR)/diffcmd.o: $(OBJDIR)/diffcmd_.c $(OBJDIR)/diffcmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/diffcmd.o -c $(OBJDIR)/diffcmd_.c
+
+$(OBJDIR)/diffcmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/dispatch_.c: $(SRCDIR)/dispatch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/dispatch.c >$@
+
+$(OBJDIR)/dispatch.o: $(OBJDIR)/dispatch_.c $(OBJDIR)/dispatch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/dispatch.o -c $(OBJDIR)/dispatch_.c
+
+$(OBJDIR)/dispatch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/doc_.c: $(SRCDIR)/doc.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/doc.c >$@
+
+$(OBJDIR)/doc.o: $(OBJDIR)/doc_.c $(OBJDIR)/doc.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/doc.o -c $(OBJDIR)/doc_.c
+
+$(OBJDIR)/doc.h: $(OBJDIR)/headers
+
+$(OBJDIR)/encode_.c: $(SRCDIR)/encode.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/encode.c >$@
+
+$(OBJDIR)/encode.o: $(OBJDIR)/encode_.c $(OBJDIR)/encode.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/encode.o -c $(OBJDIR)/encode_.c
+
+$(OBJDIR)/encode.h: $(OBJDIR)/headers
+
+$(OBJDIR)/etag_.c: $(SRCDIR)/etag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/etag.c >$@
+
+$(OBJDIR)/etag.o: $(OBJDIR)/etag_.c $(OBJDIR)/etag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/etag.o -c $(OBJDIR)/etag_.c
+
+$(OBJDIR)/etag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/event_.c: $(SRCDIR)/event.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/event.c >$@
+
+$(OBJDIR)/event.o: $(OBJDIR)/event_.c $(OBJDIR)/event.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/event.o -c $(OBJDIR)/event_.c
+
+$(OBJDIR)/event.h: $(OBJDIR)/headers
+
+$(OBJDIR)/export_.c: $(SRCDIR)/export.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/export.c >$@
+
+$(OBJDIR)/export.o: $(OBJDIR)/export_.c $(OBJDIR)/export.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/export.o -c $(OBJDIR)/export_.c
+
+$(OBJDIR)/export.h: $(OBJDIR)/headers
+
+$(OBJDIR)/extcgi_.c: $(SRCDIR)/extcgi.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/extcgi.c >$@
+
+$(OBJDIR)/extcgi.o: $(OBJDIR)/extcgi_.c $(OBJDIR)/extcgi.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/extcgi.o -c $(OBJDIR)/extcgi_.c
+
+$(OBJDIR)/extcgi.h: $(OBJDIR)/headers
+
+$(OBJDIR)/file_.c: $(SRCDIR)/file.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/file.c >$@
+
+$(OBJDIR)/file.o: $(OBJDIR)/file_.c $(OBJDIR)/file.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/file.o -c $(OBJDIR)/file_.c
+
+$(OBJDIR)/file.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fileedit_.c: $(SRCDIR)/fileedit.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fileedit.c >$@
+
+$(OBJDIR)/fileedit.o: $(OBJDIR)/fileedit_.c $(OBJDIR)/fileedit.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fileedit.o -c $(OBJDIR)/fileedit_.c
+
+$(OBJDIR)/fileedit.h: $(OBJDIR)/headers
+
+$(OBJDIR)/finfo_.c: $(SRCDIR)/finfo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/finfo.c >$@
+
+$(OBJDIR)/finfo.o: $(OBJDIR)/finfo_.c $(OBJDIR)/finfo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/finfo.o -c $(OBJDIR)/finfo_.c
+
+$(OBJDIR)/finfo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/foci_.c: $(SRCDIR)/foci.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/foci.c >$@
+
+$(OBJDIR)/foci.o: $(OBJDIR)/foci_.c $(OBJDIR)/foci.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/foci.o -c $(OBJDIR)/foci_.c
+
+$(OBJDIR)/foci.h: $(OBJDIR)/headers
+
+$(OBJDIR)/forum_.c: $(SRCDIR)/forum.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/forum.c >$@
+
+$(OBJDIR)/forum.o: $(OBJDIR)/forum_.c $(OBJDIR)/forum.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/forum.o -c $(OBJDIR)/forum_.c
+
+$(OBJDIR)/forum.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fshell_.c: $(SRCDIR)/fshell.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fshell.c >$@
+
+$(OBJDIR)/fshell.o: $(OBJDIR)/fshell_.c $(OBJDIR)/fshell.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fshell.o -c $(OBJDIR)/fshell_.c
+
+$(OBJDIR)/fshell.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fusefs_.c: $(SRCDIR)/fusefs.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fusefs.c >$@
+
+$(OBJDIR)/fusefs.o: $(OBJDIR)/fusefs_.c $(OBJDIR)/fusefs.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fusefs.o -c $(OBJDIR)/fusefs_.c
+
+$(OBJDIR)/fusefs.h: $(OBJDIR)/headers
+
+$(OBJDIR)/fuzz_.c: $(SRCDIR)/fuzz.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/fuzz.c >$@
+
+$(OBJDIR)/fuzz.o: $(OBJDIR)/fuzz_.c $(OBJDIR)/fuzz.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/fuzz.o -c $(OBJDIR)/fuzz_.c
+
+$(OBJDIR)/fuzz.h: $(OBJDIR)/headers
+
+$(OBJDIR)/glob_.c: $(SRCDIR)/glob.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/glob.c >$@
+
+$(OBJDIR)/glob.o: $(OBJDIR)/glob_.c $(OBJDIR)/glob.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/glob.o -c $(OBJDIR)/glob_.c
+
+$(OBJDIR)/glob.h: $(OBJDIR)/headers
+
+$(OBJDIR)/graph_.c: $(SRCDIR)/graph.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/graph.c >$@
+
+$(OBJDIR)/graph.o: $(OBJDIR)/graph_.c $(OBJDIR)/graph.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/graph.o -c $(OBJDIR)/graph_.c
+
+$(OBJDIR)/graph.h: $(OBJDIR)/headers
+
+$(OBJDIR)/gzip_.c: $(SRCDIR)/gzip.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/gzip.c >$@
+
+$(OBJDIR)/gzip.o: $(OBJDIR)/gzip_.c $(OBJDIR)/gzip.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/gzip.o -c $(OBJDIR)/gzip_.c
+
+$(OBJDIR)/gzip.h: $(OBJDIR)/headers
+
+$(OBJDIR)/hname_.c: $(SRCDIR)/hname.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/hname.c >$@
+
+$(OBJDIR)/hname.o: $(OBJDIR)/hname_.c $(OBJDIR)/hname.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/hname.o -c $(OBJDIR)/hname_.c
+
+$(OBJDIR)/hname.h: $(OBJDIR)/headers
+
+$(OBJDIR)/hook_.c: $(SRCDIR)/hook.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/hook.c >$@
+
+$(OBJDIR)/hook.o: $(OBJDIR)/hook_.c $(OBJDIR)/hook.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/hook.o -c $(OBJDIR)/hook_.c
+
+$(OBJDIR)/hook.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_.c: $(SRCDIR)/http.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http.c >$@
+
+$(OBJDIR)/http.o: $(OBJDIR)/http_.c $(OBJDIR)/http.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http.o -c $(OBJDIR)/http_.c
+
+$(OBJDIR)/http.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_socket_.c: $(SRCDIR)/http_socket.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_socket.c >$@
+
+$(OBJDIR)/http_socket.o: $(OBJDIR)/http_socket_.c $(OBJDIR)/http_socket.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_socket.o -c $(OBJDIR)/http_socket_.c
+
+$(OBJDIR)/http_socket.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_ssl_.c: $(SRCDIR)/http_ssl.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_ssl.c >$@
+
+$(OBJDIR)/http_ssl.o: $(OBJDIR)/http_ssl_.c $(OBJDIR)/http_ssl.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_ssl.o -c $(OBJDIR)/http_ssl_.c
+
+$(OBJDIR)/http_ssl.h: $(OBJDIR)/headers
+
+$(OBJDIR)/http_transport_.c: $(SRCDIR)/http_transport.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/http_transport.c >$@
+
+$(OBJDIR)/http_transport.o: $(OBJDIR)/http_transport_.c $(OBJDIR)/http_transport.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/http_transport.o -c $(OBJDIR)/http_transport_.c
+
+$(OBJDIR)/http_transport.h: $(OBJDIR)/headers
+
+$(OBJDIR)/import_.c: $(SRCDIR)/import.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/import.c >$@
+
+$(OBJDIR)/import.o: $(OBJDIR)/import_.c $(OBJDIR)/import.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/import.o -c $(OBJDIR)/import_.c
+
+$(OBJDIR)/import.h: $(OBJDIR)/headers
+
+$(OBJDIR)/info_.c: $(SRCDIR)/info.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/info.c >$@
+
+$(OBJDIR)/info.o: $(OBJDIR)/info_.c $(OBJDIR)/info.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/info.o -c $(OBJDIR)/info_.c
+
+$(OBJDIR)/info.h: $(OBJDIR)/headers
+
+$(OBJDIR)/interwiki_.c: $(SRCDIR)/interwiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/interwiki.c >$@
+
+$(OBJDIR)/interwiki.o: $(OBJDIR)/interwiki_.c $(OBJDIR)/interwiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/interwiki.o -c $(OBJDIR)/interwiki_.c
+
+$(OBJDIR)/interwiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_.c: $(SRCDIR)/json.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json.c >$@
+
+$(OBJDIR)/json.o: $(OBJDIR)/json_.c $(OBJDIR)/json.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json.o -c $(OBJDIR)/json_.c
+
+$(OBJDIR)/json.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_artifact_.c: $(SRCDIR)/json_artifact.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_artifact.c >$@
+
+$(OBJDIR)/json_artifact.o: $(OBJDIR)/json_artifact_.c $(OBJDIR)/json_artifact.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_artifact.o -c $(OBJDIR)/json_artifact_.c
+
+$(OBJDIR)/json_artifact.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_branch_.c: $(SRCDIR)/json_branch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_branch.c >$@
+
+$(OBJDIR)/json_branch.o: $(OBJDIR)/json_branch_.c $(OBJDIR)/json_branch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_branch.o -c $(OBJDIR)/json_branch_.c
+
+$(OBJDIR)/json_branch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_config_.c: $(SRCDIR)/json_config.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_config.c >$@
+
+$(OBJDIR)/json_config.o: $(OBJDIR)/json_config_.c $(OBJDIR)/json_config.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_config.o -c $(OBJDIR)/json_config_.c
+
+$(OBJDIR)/json_config.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_diff_.c: $(SRCDIR)/json_diff.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_diff.c >$@
+
+$(OBJDIR)/json_diff.o: $(OBJDIR)/json_diff_.c $(OBJDIR)/json_diff.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_diff.o -c $(OBJDIR)/json_diff_.c
+
+$(OBJDIR)/json_diff.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_dir_.c: $(SRCDIR)/json_dir.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_dir.c >$@
+
+$(OBJDIR)/json_dir.o: $(OBJDIR)/json_dir_.c $(OBJDIR)/json_dir.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_dir.o -c $(OBJDIR)/json_dir_.c
+
+$(OBJDIR)/json_dir.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_finfo_.c: $(SRCDIR)/json_finfo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_finfo.c >$@
+
+$(OBJDIR)/json_finfo.o: $(OBJDIR)/json_finfo_.c $(OBJDIR)/json_finfo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_finfo.o -c $(OBJDIR)/json_finfo_.c
+
+$(OBJDIR)/json_finfo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_login_.c: $(SRCDIR)/json_login.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_login.c >$@
+
+$(OBJDIR)/json_login.o: $(OBJDIR)/json_login_.c $(OBJDIR)/json_login.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_login.o -c $(OBJDIR)/json_login_.c
+
+$(OBJDIR)/json_login.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_query_.c: $(SRCDIR)/json_query.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_query.c >$@
+
+$(OBJDIR)/json_query.o: $(OBJDIR)/json_query_.c $(OBJDIR)/json_query.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_query.o -c $(OBJDIR)/json_query_.c
+
+$(OBJDIR)/json_query.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_report_.c: $(SRCDIR)/json_report.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_report.c >$@
+
+$(OBJDIR)/json_report.o: $(OBJDIR)/json_report_.c $(OBJDIR)/json_report.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_report.o -c $(OBJDIR)/json_report_.c
+
+$(OBJDIR)/json_report.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_status_.c: $(SRCDIR)/json_status.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_status.c >$@
+
+$(OBJDIR)/json_status.o: $(OBJDIR)/json_status_.c $(OBJDIR)/json_status.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_status.o -c $(OBJDIR)/json_status_.c
+
+$(OBJDIR)/json_status.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_tag_.c: $(SRCDIR)/json_tag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_tag.c >$@
+
+$(OBJDIR)/json_tag.o: $(OBJDIR)/json_tag_.c $(OBJDIR)/json_tag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_tag.o -c $(OBJDIR)/json_tag_.c
+
+$(OBJDIR)/json_tag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_timeline_.c: $(SRCDIR)/json_timeline.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_timeline.c >$@
+
+$(OBJDIR)/json_timeline.o: $(OBJDIR)/json_timeline_.c $(OBJDIR)/json_timeline.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_timeline.o -c $(OBJDIR)/json_timeline_.c
+
+$(OBJDIR)/json_timeline.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_user_.c: $(SRCDIR)/json_user.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_user.c >$@
+
+$(OBJDIR)/json_user.o: $(OBJDIR)/json_user_.c $(OBJDIR)/json_user.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_user.o -c $(OBJDIR)/json_user_.c
+
+$(OBJDIR)/json_user.h: $(OBJDIR)/headers
+
+$(OBJDIR)/json_wiki_.c: $(SRCDIR)/json_wiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/json_wiki.c >$@
+
+$(OBJDIR)/json_wiki.o: $(OBJDIR)/json_wiki_.c $(OBJDIR)/json_wiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/json_wiki.o -c $(OBJDIR)/json_wiki_.c
+
+$(OBJDIR)/json_wiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/leaf_.c: $(SRCDIR)/leaf.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/leaf.c >$@
+
+$(OBJDIR)/leaf.o: $(OBJDIR)/leaf_.c $(OBJDIR)/leaf.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/leaf.o -c $(OBJDIR)/leaf_.c
+
+$(OBJDIR)/leaf.h: $(OBJDIR)/headers
+
+$(OBJDIR)/loadctrl_.c: $(SRCDIR)/loadctrl.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/loadctrl.c >$@
+
+$(OBJDIR)/loadctrl.o: $(OBJDIR)/loadctrl_.c $(OBJDIR)/loadctrl.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/loadctrl.o -c $(OBJDIR)/loadctrl_.c
+
+$(OBJDIR)/loadctrl.h: $(OBJDIR)/headers
+
+$(OBJDIR)/login_.c: $(SRCDIR)/login.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/login.c >$@
+
+$(OBJDIR)/login.o: $(OBJDIR)/login_.c $(OBJDIR)/login.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/login.o -c $(OBJDIR)/login_.c
+
+$(OBJDIR)/login.h: $(OBJDIR)/headers
+
+$(OBJDIR)/lookslike_.c: $(SRCDIR)/lookslike.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/lookslike.c >$@
+
+$(OBJDIR)/lookslike.o: $(OBJDIR)/lookslike_.c $(OBJDIR)/lookslike.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/lookslike.o -c $(OBJDIR)/lookslike_.c
+
+$(OBJDIR)/lookslike.h: $(OBJDIR)/headers
+
+$(OBJDIR)/main_.c: $(SRCDIR)/main.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/main.c >$@
+
+$(OBJDIR)/main.o: $(OBJDIR)/main_.c $(OBJDIR)/main.h $(OBJDIR)/page_index.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/main.o -c $(OBJDIR)/main_.c
+
+$(OBJDIR)/main.h: $(OBJDIR)/headers
+
+$(OBJDIR)/manifest_.c: $(SRCDIR)/manifest.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/manifest.c >$@
+
+$(OBJDIR)/manifest.o: $(OBJDIR)/manifest_.c $(OBJDIR)/manifest.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/manifest.o -c $(OBJDIR)/manifest_.c
+
+$(OBJDIR)/manifest.h: $(OBJDIR)/headers
+
+$(OBJDIR)/markdown_.c: $(SRCDIR)/markdown.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/markdown.c >$@
+
+$(OBJDIR)/markdown.o: $(OBJDIR)/markdown_.c $(OBJDIR)/markdown.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/markdown.o -c $(OBJDIR)/markdown_.c
+
+$(OBJDIR)/markdown.h: $(OBJDIR)/headers
+
+$(OBJDIR)/markdown_html_.c: $(SRCDIR)/markdown_html.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/markdown_html.c >$@
+
+$(OBJDIR)/markdown_html.o: $(OBJDIR)/markdown_html_.c $(OBJDIR)/markdown_html.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/markdown_html.o -c $(OBJDIR)/markdown_html_.c
+
+$(OBJDIR)/markdown_html.h: $(OBJDIR)/headers
+
+$(OBJDIR)/md5_.c: $(SRCDIR)/md5.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/md5.c >$@
+
+$(OBJDIR)/md5.o: $(OBJDIR)/md5_.c $(OBJDIR)/md5.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/md5.o -c $(OBJDIR)/md5_.c
+
+$(OBJDIR)/md5.h: $(OBJDIR)/headers
+
+$(OBJDIR)/merge_.c: $(SRCDIR)/merge.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/merge.c >$@
+
+$(OBJDIR)/merge.o: $(OBJDIR)/merge_.c $(OBJDIR)/merge.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/merge.o -c $(OBJDIR)/merge_.c
+
+$(OBJDIR)/merge.h: $(OBJDIR)/headers
+
+$(OBJDIR)/merge3_.c: $(SRCDIR)/merge3.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/merge3.c >$@
+
+$(OBJDIR)/merge3.o: $(OBJDIR)/merge3_.c $(OBJDIR)/merge3.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/merge3.o -c $(OBJDIR)/merge3_.c
+
+$(OBJDIR)/merge3.h: $(OBJDIR)/headers
+
+$(OBJDIR)/moderate_.c: $(SRCDIR)/moderate.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/moderate.c >$@
+
+$(OBJDIR)/moderate.o: $(OBJDIR)/moderate_.c $(OBJDIR)/moderate.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/moderate.o -c $(OBJDIR)/moderate_.c
+
+$(OBJDIR)/moderate.h: $(OBJDIR)/headers
+
+$(OBJDIR)/name_.c: $(SRCDIR)/name.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/name.c >$@
+
+$(OBJDIR)/name.o: $(OBJDIR)/name_.c $(OBJDIR)/name.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/name.o -c $(OBJDIR)/name_.c
+
+$(OBJDIR)/name.h: $(OBJDIR)/headers
+
+$(OBJDIR)/patch_.c: $(SRCDIR)/patch.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/patch.c >$@
+
+$(OBJDIR)/patch.o: $(OBJDIR)/patch_.c $(OBJDIR)/patch.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/patch.o -c $(OBJDIR)/patch_.c
+
+$(OBJDIR)/patch.h: $(OBJDIR)/headers
+
+$(OBJDIR)/path_.c: $(SRCDIR)/path.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/path.c >$@
+
+$(OBJDIR)/path.o: $(OBJDIR)/path_.c $(OBJDIR)/path.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/path.o -c $(OBJDIR)/path_.c
+
+$(OBJDIR)/path.h: $(OBJDIR)/headers
+
+$(OBJDIR)/piechart_.c: $(SRCDIR)/piechart.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/piechart.c >$@
+
+$(OBJDIR)/piechart.o: $(OBJDIR)/piechart_.c $(OBJDIR)/piechart.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/piechart.o -c $(OBJDIR)/piechart_.c
+
+$(OBJDIR)/piechart.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pikchrshow_.c: $(SRCDIR)/pikchrshow.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pikchrshow.c >$@
+
+$(OBJDIR)/pikchrshow.o: $(OBJDIR)/pikchrshow_.c $(OBJDIR)/pikchrshow.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pikchrshow.o -c $(OBJDIR)/pikchrshow_.c
+
+$(OBJDIR)/pikchrshow.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pivot_.c: $(SRCDIR)/pivot.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pivot.c >$@
+
+$(OBJDIR)/pivot.o: $(OBJDIR)/pivot_.c $(OBJDIR)/pivot.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pivot.o -c $(OBJDIR)/pivot_.c
+
+$(OBJDIR)/pivot.h: $(OBJDIR)/headers
+
+$(OBJDIR)/popen_.c: $(SRCDIR)/popen.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/popen.c >$@
+
+$(OBJDIR)/popen.o: $(OBJDIR)/popen_.c $(OBJDIR)/popen.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/popen.o -c $(OBJDIR)/popen_.c
+
+$(OBJDIR)/popen.h: $(OBJDIR)/headers
+
+$(OBJDIR)/pqueue_.c: $(SRCDIR)/pqueue.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/pqueue.c >$@
+
+$(OBJDIR)/pqueue.o: $(OBJDIR)/pqueue_.c $(OBJDIR)/pqueue.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/pqueue.o -c $(OBJDIR)/pqueue_.c
+
+$(OBJDIR)/pqueue.h: $(OBJDIR)/headers
+
+$(OBJDIR)/printf_.c: $(SRCDIR)/printf.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/printf.c >$@
+
+$(OBJDIR)/printf.o: $(OBJDIR)/printf_.c $(OBJDIR)/printf.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/printf.o -c $(OBJDIR)/printf_.c
+
+$(OBJDIR)/printf.h: $(OBJDIR)/headers
+
+$(OBJDIR)/publish_.c: $(SRCDIR)/publish.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/publish.c >$@
+
+$(OBJDIR)/publish.o: $(OBJDIR)/publish_.c $(OBJDIR)/publish.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/publish.o -c $(OBJDIR)/publish_.c
+
+$(OBJDIR)/publish.h: $(OBJDIR)/headers
+
+$(OBJDIR)/purge_.c: $(SRCDIR)/purge.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/purge.c >$@
+
+$(OBJDIR)/purge.o: $(OBJDIR)/purge_.c $(OBJDIR)/purge.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/purge.o -c $(OBJDIR)/purge_.c
+
+$(OBJDIR)/purge.h: $(OBJDIR)/headers
+
+$(OBJDIR)/rebuild_.c: $(SRCDIR)/rebuild.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/rebuild.c >$@
+
+$(OBJDIR)/rebuild.o: $(OBJDIR)/rebuild_.c $(OBJDIR)/rebuild.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/rebuild.o -c $(OBJDIR)/rebuild_.c
+
+$(OBJDIR)/rebuild.h: $(OBJDIR)/headers
+
+$(OBJDIR)/regexp_.c: $(SRCDIR)/regexp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/regexp.c >$@
+
+$(OBJDIR)/regexp.o: $(OBJDIR)/regexp_.c $(OBJDIR)/regexp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/regexp.o -c $(OBJDIR)/regexp_.c
+
+$(OBJDIR)/regexp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/repolist_.c: $(SRCDIR)/repolist.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/repolist.c >$@
+
+$(OBJDIR)/repolist.o: $(OBJDIR)/repolist_.c $(OBJDIR)/repolist.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/repolist.o -c $(OBJDIR)/repolist_.c
+
+$(OBJDIR)/repolist.h: $(OBJDIR)/headers
+
+$(OBJDIR)/report_.c: $(SRCDIR)/report.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/report.c >$@
+
+$(OBJDIR)/report.o: $(OBJDIR)/report_.c $(OBJDIR)/report.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/report.o -c $(OBJDIR)/report_.c
+
+$(OBJDIR)/report.h: $(OBJDIR)/headers
+
+$(OBJDIR)/rss_.c: $(SRCDIR)/rss.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/rss.c >$@
+
+$(OBJDIR)/rss.o: $(OBJDIR)/rss_.c $(OBJDIR)/rss.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/rss.o -c $(OBJDIR)/rss_.c
+
+$(OBJDIR)/rss.h: $(OBJDIR)/headers
+
+$(OBJDIR)/schema_.c: $(SRCDIR)/schema.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/schema.c >$@
+
+$(OBJDIR)/schema.o: $(OBJDIR)/schema_.c $(OBJDIR)/schema.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/schema.o -c $(OBJDIR)/schema_.c
+
+$(OBJDIR)/schema.h: $(OBJDIR)/headers
+
+$(OBJDIR)/search_.c: $(SRCDIR)/search.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/search.c >$@
+
+$(OBJDIR)/search.o: $(OBJDIR)/search_.c $(OBJDIR)/search.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/search.o -c $(OBJDIR)/search_.c
+
+$(OBJDIR)/search.h: $(OBJDIR)/headers
+
+$(OBJDIR)/security_audit_.c: $(SRCDIR)/security_audit.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/security_audit.c >$@
+
+$(OBJDIR)/security_audit.o: $(OBJDIR)/security_audit_.c $(OBJDIR)/security_audit.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/security_audit.o -c $(OBJDIR)/security_audit_.c
+
+$(OBJDIR)/security_audit.h: $(OBJDIR)/headers
+
+$(OBJDIR)/setup_.c: $(SRCDIR)/setup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/setup.c >$@
+
+$(OBJDIR)/setup.o: $(OBJDIR)/setup_.c $(OBJDIR)/setup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/setup.o -c $(OBJDIR)/setup_.c
+
+$(OBJDIR)/setup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/setupuser_.c: $(SRCDIR)/setupuser.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/setupuser.c >$@
+
+$(OBJDIR)/setupuser.o: $(OBJDIR)/setupuser_.c $(OBJDIR)/setupuser.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/setupuser.o -c $(OBJDIR)/setupuser_.c
+
+$(OBJDIR)/setupuser.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha1_.c: $(SRCDIR)/sha1.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha1.c >$@
+
+$(OBJDIR)/sha1.o: $(OBJDIR)/sha1_.c $(OBJDIR)/sha1.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha1.o -c $(OBJDIR)/sha1_.c
+
+$(OBJDIR)/sha1.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha1hard_.c: $(SRCDIR)/sha1hard.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha1hard.c >$@
+
+$(OBJDIR)/sha1hard.o: $(OBJDIR)/sha1hard_.c $(OBJDIR)/sha1hard.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha1hard.o -c $(OBJDIR)/sha1hard_.c
+
+$(OBJDIR)/sha1hard.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sha3_.c: $(SRCDIR)/sha3.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sha3.c >$@
+
+$(OBJDIR)/sha3.o: $(OBJDIR)/sha3_.c $(OBJDIR)/sha3.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sha3.o -c $(OBJDIR)/sha3_.c
+
+$(OBJDIR)/sha3.h: $(OBJDIR)/headers
+
+$(OBJDIR)/shun_.c: $(SRCDIR)/shun.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/shun.c >$@
+
+$(OBJDIR)/shun.o: $(OBJDIR)/shun_.c $(OBJDIR)/shun.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/shun.o -c $(OBJDIR)/shun_.c
+
+$(OBJDIR)/shun.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sitemap_.c: $(SRCDIR)/sitemap.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sitemap.c >$@
+
+$(OBJDIR)/sitemap.o: $(OBJDIR)/sitemap_.c $(OBJDIR)/sitemap.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sitemap.o -c $(OBJDIR)/sitemap_.c
+
+$(OBJDIR)/sitemap.h: $(OBJDIR)/headers
+
+$(OBJDIR)/skins_.c: $(SRCDIR)/skins.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/skins.c >$@
+
+$(OBJDIR)/skins.o: $(OBJDIR)/skins_.c $(OBJDIR)/skins.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/skins.o -c $(OBJDIR)/skins_.c
+
+$(OBJDIR)/skins.h: $(OBJDIR)/headers
+
+$(OBJDIR)/smtp_.c: $(SRCDIR)/smtp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/smtp.c >$@
+
+$(OBJDIR)/smtp.o: $(OBJDIR)/smtp_.c $(OBJDIR)/smtp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/smtp.o -c $(OBJDIR)/smtp_.c
+
+$(OBJDIR)/smtp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sqlcmd_.c: $(SRCDIR)/sqlcmd.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sqlcmd.c >$@
+
+$(OBJDIR)/sqlcmd.o: $(OBJDIR)/sqlcmd_.c $(OBJDIR)/sqlcmd.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sqlcmd.o -c $(OBJDIR)/sqlcmd_.c
+
+$(OBJDIR)/sqlcmd.h: $(OBJDIR)/headers
+
+$(OBJDIR)/stash_.c: $(SRCDIR)/stash.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/stash.c >$@
+
+$(OBJDIR)/stash.o: $(OBJDIR)/stash_.c $(OBJDIR)/stash.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/stash.o -c $(OBJDIR)/stash_.c
+
+$(OBJDIR)/stash.h: $(OBJDIR)/headers
+
+$(OBJDIR)/stat_.c: $(SRCDIR)/stat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/stat.c >$@
+
+$(OBJDIR)/stat.o: $(OBJDIR)/stat_.c $(OBJDIR)/stat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/stat.o -c $(OBJDIR)/stat_.c
+
+$(OBJDIR)/stat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/statrep_.c: $(SRCDIR)/statrep.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/statrep.c >$@
+
+$(OBJDIR)/statrep.o: $(OBJDIR)/statrep_.c $(OBJDIR)/statrep.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/statrep.o -c $(OBJDIR)/statrep_.c
+
+$(OBJDIR)/statrep.h: $(OBJDIR)/headers
+
+$(OBJDIR)/style_.c: $(SRCDIR)/style.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/style.c >$@
+
+$(OBJDIR)/style.o: $(OBJDIR)/style_.c $(OBJDIR)/style.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/style.o -c $(OBJDIR)/style_.c
+
+$(OBJDIR)/style.h: $(OBJDIR)/headers
+
+$(OBJDIR)/sync_.c: $(SRCDIR)/sync.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/sync.c >$@
+
+$(OBJDIR)/sync.o: $(OBJDIR)/sync_.c $(OBJDIR)/sync.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/sync.o -c $(OBJDIR)/sync_.c
+
+$(OBJDIR)/sync.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tag_.c: $(SRCDIR)/tag.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tag.c >$@
+
+$(OBJDIR)/tag.o: $(OBJDIR)/tag_.c $(OBJDIR)/tag.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tag.o -c $(OBJDIR)/tag_.c
+
+$(OBJDIR)/tag.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tar_.c: $(SRCDIR)/tar.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tar.c >$@
+
+$(OBJDIR)/tar.o: $(OBJDIR)/tar_.c $(OBJDIR)/tar.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tar.o -c $(OBJDIR)/tar_.c
+
+$(OBJDIR)/tar.h: $(OBJDIR)/headers
+
+$(OBJDIR)/terminal_.c: $(SRCDIR)/terminal.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/terminal.c >$@
+
+$(OBJDIR)/terminal.o: $(OBJDIR)/terminal_.c $(OBJDIR)/terminal.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/terminal.o -c $(OBJDIR)/terminal_.c
+
+$(OBJDIR)/terminal.h: $(OBJDIR)/headers
+
+$(OBJDIR)/th_main_.c: $(SRCDIR)/th_main.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/th_main.c >$@
+
+$(OBJDIR)/th_main.o: $(OBJDIR)/th_main_.c $(OBJDIR)/th_main.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/th_main.o -c $(OBJDIR)/th_main_.c
+
+$(OBJDIR)/th_main.h: $(OBJDIR)/headers
+
+$(OBJDIR)/timeline_.c: $(SRCDIR)/timeline.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/timeline.c >$@
+
+$(OBJDIR)/timeline.o: $(OBJDIR)/timeline_.c $(OBJDIR)/timeline.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/timeline.o -c $(OBJDIR)/timeline_.c
+
+$(OBJDIR)/timeline.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tkt_.c: $(SRCDIR)/tkt.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tkt.c >$@
+
+$(OBJDIR)/tkt.o: $(OBJDIR)/tkt_.c $(OBJDIR)/tkt.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tkt.o -c $(OBJDIR)/tkt_.c
+
+$(OBJDIR)/tkt.h: $(OBJDIR)/headers
+
+$(OBJDIR)/tktsetup_.c: $(SRCDIR)/tktsetup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/tktsetup.c >$@
+
+$(OBJDIR)/tktsetup.o: $(OBJDIR)/tktsetup_.c $(OBJDIR)/tktsetup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/tktsetup.o -c $(OBJDIR)/tktsetup_.c
+
+$(OBJDIR)/tktsetup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/undo_.c: $(SRCDIR)/undo.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/undo.c >$@
+
+$(OBJDIR)/undo.o: $(OBJDIR)/undo_.c $(OBJDIR)/undo.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/undo.o -c $(OBJDIR)/undo_.c
+
+$(OBJDIR)/undo.h: $(OBJDIR)/headers
+
+$(OBJDIR)/unicode_.c: $(SRCDIR)/unicode.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/unicode.c >$@
+
+$(OBJDIR)/unicode.o: $(OBJDIR)/unicode_.c $(OBJDIR)/unicode.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/unicode.o -c $(OBJDIR)/unicode_.c
+
+$(OBJDIR)/unicode.h: $(OBJDIR)/headers
+
+$(OBJDIR)/unversioned_.c: $(SRCDIR)/unversioned.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/unversioned.c >$@
+
+$(OBJDIR)/unversioned.o: $(OBJDIR)/unversioned_.c $(OBJDIR)/unversioned.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/unversioned.o -c $(OBJDIR)/unversioned_.c
+
+$(OBJDIR)/unversioned.h: $(OBJDIR)/headers
+
+$(OBJDIR)/update_.c: $(SRCDIR)/update.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/update.c >$@
+
+$(OBJDIR)/update.o: $(OBJDIR)/update_.c $(OBJDIR)/update.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/update.o -c $(OBJDIR)/update_.c
+
+$(OBJDIR)/update.h: $(OBJDIR)/headers
+
+$(OBJDIR)/url_.c: $(SRCDIR)/url.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/url.c >$@
+
+$(OBJDIR)/url.o: $(OBJDIR)/url_.c $(OBJDIR)/url.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/url.o -c $(OBJDIR)/url_.c
+
+$(OBJDIR)/url.h: $(OBJDIR)/headers
+
+$(OBJDIR)/user_.c: $(SRCDIR)/user.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/user.c >$@
+
+$(OBJDIR)/user.o: $(OBJDIR)/user_.c $(OBJDIR)/user.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/user.o -c $(OBJDIR)/user_.c
+
+$(OBJDIR)/user.h: $(OBJDIR)/headers
+
+$(OBJDIR)/utf8_.c: $(SRCDIR)/utf8.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/utf8.c >$@
+
+$(OBJDIR)/utf8.o: $(OBJDIR)/utf8_.c $(OBJDIR)/utf8.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/utf8.o -c $(OBJDIR)/utf8_.c
+
+$(OBJDIR)/utf8.h: $(OBJDIR)/headers
+
+$(OBJDIR)/util_.c: $(SRCDIR)/util.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/util.c >$@
+
+$(OBJDIR)/util.o: $(OBJDIR)/util_.c $(OBJDIR)/util.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/util.o -c $(OBJDIR)/util_.c
+
+$(OBJDIR)/util.h: $(OBJDIR)/headers
+
+$(OBJDIR)/verify_.c: $(SRCDIR)/verify.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/verify.c >$@
+
+$(OBJDIR)/verify.o: $(OBJDIR)/verify_.c $(OBJDIR)/verify.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/verify.o -c $(OBJDIR)/verify_.c
+
+$(OBJDIR)/verify.h: $(OBJDIR)/headers
+
+$(OBJDIR)/vfile_.c: $(SRCDIR)/vfile.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/vfile.c >$@
+
+$(OBJDIR)/vfile.o: $(OBJDIR)/vfile_.c $(OBJDIR)/vfile.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/vfile.o -c $(OBJDIR)/vfile_.c
+
+$(OBJDIR)/vfile.h: $(OBJDIR)/headers
+
+$(OBJDIR)/wiki_.c: $(SRCDIR)/wiki.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/wiki.c >$@
+
+$(OBJDIR)/wiki.o: $(OBJDIR)/wiki_.c $(OBJDIR)/wiki.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/wiki.o -c $(OBJDIR)/wiki_.c
+
+$(OBJDIR)/wiki.h: $(OBJDIR)/headers
+
+$(OBJDIR)/wikiformat_.c: $(SRCDIR)/wikiformat.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/wikiformat.c >$@
+
+$(OBJDIR)/wikiformat.o: $(OBJDIR)/wikiformat_.c $(OBJDIR)/wikiformat.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/wikiformat.o -c $(OBJDIR)/wikiformat_.c
+
+$(OBJDIR)/wikiformat.h: $(OBJDIR)/headers
+
+$(OBJDIR)/winfile_.c: $(SRCDIR)/winfile.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/winfile.c >$@
+
+$(OBJDIR)/winfile.o: $(OBJDIR)/winfile_.c $(OBJDIR)/winfile.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/winfile.o -c $(OBJDIR)/winfile_.c
+
+$(OBJDIR)/winfile.h: $(OBJDIR)/headers
+
+$(OBJDIR)/winhttp_.c: $(SRCDIR)/winhttp.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/winhttp.c >$@
+
+$(OBJDIR)/winhttp.o: $(OBJDIR)/winhttp_.c $(OBJDIR)/winhttp.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/winhttp.o -c $(OBJDIR)/winhttp_.c
+
+$(OBJDIR)/winhttp.h: $(OBJDIR)/headers
+
+$(OBJDIR)/xfer_.c: $(SRCDIR)/xfer.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/xfer.c >$@
+
+$(OBJDIR)/xfer.o: $(OBJDIR)/xfer_.c $(OBJDIR)/xfer.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/xfer.o -c $(OBJDIR)/xfer_.c
+
+$(OBJDIR)/xfer.h: $(OBJDIR)/headers
+
+$(OBJDIR)/xfersetup_.c: $(SRCDIR)/xfersetup.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/xfersetup.c >$@
+
+$(OBJDIR)/xfersetup.o: $(OBJDIR)/xfersetup_.c $(OBJDIR)/xfersetup.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/xfersetup.o -c $(OBJDIR)/xfersetup_.c
+
+$(OBJDIR)/xfersetup.h: $(OBJDIR)/headers
+
+$(OBJDIR)/zip_.c: $(SRCDIR)/zip.c $(TRANSLATE)
+ $(TRANSLATE) $(SRCDIR)/zip.c >$@
+
+$(OBJDIR)/zip.o: $(OBJDIR)/zip_.c $(OBJDIR)/zip.h $(SRCDIR)/config.h
+ $(XTCC) -o $(OBJDIR)/zip.o -c $(OBJDIR)/zip_.c
+
+$(OBJDIR)/zip.h: $(OBJDIR)/headers
+
+MINGW_OPTIONS = -D_HAVE__MINGW_H
+
+SQLITE_OPTIONS = -DNDEBUG=1 \
+ -DSQLITE_DQS=0 \
+ -DSQLITE_THREADSAFE=0 \
+ -DSQLITE_DEFAULT_MEMSTATUS=0 \
+ -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ -DSQLITE_OMIT_DECLTYPE \
+ -DSQLITE_OMIT_DEPRECATED \
+ -DSQLITE_OMIT_PROGRESS_CALLBACK \
+ -DSQLITE_OMIT_SHARED_CACHE \
+ -DSQLITE_OMIT_LOAD_EXTENSION \
+ -DSQLITE_MAX_EXPR_DEPTH=0 \
+ -DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ -DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ -DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ -DSQLITE_ENABLE_FTS4 \
+ -DSQLITE_ENABLE_DBSTAT_VTAB \
+ -DSQLITE_ENABLE_FTS5 \
+ -DSQLITE_ENABLE_STMTVTAB \
+ -DSQLITE_HAVE_ZLIB \
+ -DSQLITE_ENABLE_DBPAGE_VTAB \
+ -DSQLITE_TRUSTED_SCHEMA=0 \
+ -DHAVE_USLEEP \
+ -DSQLITE_WIN32_NO_ANSI \
+ $(MINGW_OPTIONS) \
+ -DSQLITE_USE_MALLOC_H \
+ -DSQLITE_USE_MSIZE
+
+SHELL_OPTIONS = -DNDEBUG=1 \
+ -DSQLITE_DQS=0 \
+ -DSQLITE_THREADSAFE=0 \
+ -DSQLITE_DEFAULT_MEMSTATUS=0 \
+ -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ -DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ -DSQLITE_OMIT_DECLTYPE \
+ -DSQLITE_OMIT_DEPRECATED \
+ -DSQLITE_OMIT_PROGRESS_CALLBACK \
+ -DSQLITE_OMIT_SHARED_CACHE \
+ -DSQLITE_OMIT_LOAD_EXTENSION \
+ -DSQLITE_MAX_EXPR_DEPTH=0 \
+ -DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ -DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ -DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ -DSQLITE_ENABLE_FTS4 \
+ -DSQLITE_ENABLE_DBSTAT_VTAB \
+ -DSQLITE_ENABLE_FTS5 \
+ -DSQLITE_ENABLE_STMTVTAB \
+ -DSQLITE_HAVE_ZLIB \
+ -DSQLITE_ENABLE_DBPAGE_VTAB \
+ -DSQLITE_TRUSTED_SCHEMA=0 \
+ -DHAVE_USLEEP \
+ -Dmain=sqlite3_shell \
+ -DSQLITE_SHELL_IS_UTF8=1 \
+ -DSQLITE_OMIT_LOAD_EXTENSION=1 \
+ -DUSE_SYSTEM_SQLITE=$(USE_SYSTEM_SQLITE) \
+ -DSQLITE_SHELL_DBNAME_PROC=sqlcmd_get_dbname \
+ -DSQLITE_SHELL_INIT_PROC=sqlcmd_init_proc \
+ -Daccess=file_access \
+ -Dsystem=fossil_system \
+ -Dgetenv=fossil_getenv \
+ -Dfopen=fossil_fopen
+
+PIKCHR_OPTIONS = -DPIKCHR_TOKEN_LIMIT=10000
+
+$(SQLITE3_OBJ): $(SQLITE3_SRC) $(SRCDIR)/../win/Makefile.mingw.mistachkin
+ $(XTCC) $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) \
+ -c $(SQLITE3_SRC) -o $@
+
+$(OBJDIR)/cson_amalgamation.o: $(SRCDIR_extsrc)/cson_amalgamation.c
+ $(XTCC) -c $(SRCDIR_extsrc)/cson_amalgamation.c -o $@
+
+$(OBJDIR)/json.o $(OBJDIR)/json_artifact.o $(OBJDIR)/json_branch.o $(OBJDIR)/json_config.o $(OBJDIR)/json_diff.o $(OBJDIR)/json_dir.o $(OBJDIR)/jsos_finfo.o $(OBJDIR)/json_login.o $(OBJDIR)/json_query.o $(OBJDIR)/json_report.o $(OBJDIR)/json_status.o $(OBJDIR)/json_tag.o $(OBJDIR)/json_timeline.o $(OBJDIR)/json_user.o $(OBJDIR)/json_wiki.o : $(SRCDIR)/json_detail.h
+
+$(OBJDIR)/shell.o: $(SQLITE3_SHELL_SRC) $(SRCDIR_extsrc)/sqlite3.h $(SRCDIR)/../win/Makefile.mingw.mistachkin
+ $(XTCC) $(SHELL_OPTIONS) $(SHELL_CFLAGS) $(SEE_FLAGS) -c $(SQLITE3_SHELL_SRC) -o $@
+
+$(OBJDIR)/th.o: $(SRCDIR)/th.c
+ $(XTCC) -c $(SRCDIR)/th.c -o $@
+
+$(OBJDIR)/th_lang.o: $(SRCDIR)/th_lang.c
+ $(XTCC) -c $(SRCDIR)/th_lang.c -o $@
+
+$(OBJDIR)/th_tcl.o: $(SRCDIR)/th_tcl.c
+ $(XTCC) -c $(SRCDIR)/th_tcl.c -o $@
+
+$(OBJDIR)/pikchr.o: $(SRCDIR_extsrc)/pikchr.c
+ $(XTCC) $(PIKCHR_OPTIONS) -c $(SRCDIR_extsrc)/pikchr.c -o $@
+
diff --git a/win/Makefile.msc b/win/Makefile.msc
new file mode 100644
index 0000000..dff6389
--- /dev/null
+++ b/win/Makefile.msc
@@ -0,0 +1,2359 @@
+#
+##############################################################################
+# WARNING: DO NOT EDIT, AUTOMATICALLY GENERATED FILE (SEE "tools/makemake.tcl")
+##############################################################################
+#
+#
+# This file is automatically generated. Instead of editing this
+# file, edit "makemake.tcl" then run "tclsh makemake.tcl"
+# to regenerate this file.
+#
+B = ..
+SRCDIR = $(B)\src
+SRCDIR_extsrc = $(B)\extsrc
+SRCDIR_tools = $(B)\tools
+T = .
+OBJDIR = $(T)
+OX = $(OBJDIR)
+O = .obj
+E = .exe
+P = .pdb
+DBGOPTS = /Od
+
+INSTALLDIR = .
+!ifdef DESTDIR
+INSTALLDIR = $(DESTDIR)\$(INSTALLDIR)
+!endif
+
+# When building out of source, this Makefile needs to know the path to the base
+# top-level directory for this project. Pass it on NMAKE command line via make
+# variable B:
+# NMAKE /f "path\to\this\Makefile" B="path/to/fossil/root"
+#
+# NOTE: Make sure B path has no trailing backslash, UNIX-style path is OK too.
+#
+!if !exist("$(B)\.fossil-settings")
+!error Please specify path to project base directory: B="path/to/fossil"
+!endif
+
+# Perl is only necessary if OpenSSL support is enabled and it is built from
+# source code. The PERLDIR environment variable, if it exists, should point
+# to the directory containing the main Perl executable specified here (i.e.
+# "perl.exe").
+PERL = perl.exe
+
+# Enable use of available compiler optimizations?
+!ifndef OPTIMIZATIONS
+OPTIMIZATIONS = 2
+!endif
+
+# Enable debugging symbols?
+!ifndef DEBUG
+DEBUG = 0
+!endif
+!ifdef FOSSIL_DEBUG
+DEBUG = 1
+!endif
+
+# Build the OpenSSL libraries?
+!ifndef FOSSIL_BUILD_SSL
+FOSSIL_BUILD_SSL = 0
+!endif
+
+# Build the included zlib library?
+!ifndef FOSSIL_BUILD_ZLIB
+FOSSIL_BUILD_ZLIB = 1
+!endif
+
+# Link everything except SQLite dynamically?
+!ifndef FOSSIL_DYNAMIC_BUILD
+FOSSIL_DYNAMIC_BUILD = 0
+!endif
+
+# Enable relative paths in external diff/gdiff?
+!ifndef FOSSIL_ENABLE_EXEC_REL_PATHS
+FOSSIL_ENABLE_EXEC_REL_PATHS = 0
+!endif
+
+# Enable the JSON API?
+!ifndef FOSSIL_ENABLE_JSON
+FOSSIL_ENABLE_JSON = 0
+!endif
+
+# Enable OpenSSL support?
+!ifndef FOSSIL_ENABLE_SSL
+FOSSIL_ENABLE_SSL = 0
+!endif
+
+# Enable the Tcl integration subsystem?
+!ifndef FOSSIL_ENABLE_TCL
+FOSSIL_ENABLE_TCL = 0
+!endif
+
+# Enable TH1 scripts in embedded documentation files?
+!ifndef FOSSIL_ENABLE_TH1_DOCS
+FOSSIL_ENABLE_TH1_DOCS = 0
+!endif
+
+# Enable TH1 hooks for commands and web pages?
+!ifndef FOSSIL_ENABLE_TH1_HOOKS
+FOSSIL_ENABLE_TH1_HOOKS = 0
+!endif
+
+# Enable support for Windows XP with Visual Studio 201x?
+!ifndef FOSSIL_ENABLE_WINXP
+FOSSIL_ENABLE_WINXP = 0
+!endif
+
+# Enable support for the SQLite Encryption Extension?
+!ifndef USE_SEE
+USE_SEE = 0
+!endif
+
+!if $(FOSSIL_ENABLE_SSL)!=0
+SSLDIR = $(B)\compat\openssl
+SSLINCDIR = $(SSLDIR)\include
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+SSLLIBDIR = $(SSLDIR)
+!else
+SSLLIBDIR = $(SSLDIR)
+!endif
+SSLLIB = libssl.lib libcrypto.lib user32.lib gdi32.lib crypt32.lib
+!if "$(PLATFORM)"=="amd64" || "$(PLATFORM)"=="x64"
+!message Using 'x64' platform for OpenSSL...
+SSLCONFIG = VC-WIN64A no-asm no-ssl3 no-weak-ssl-ciphers
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+SSLCONFIG = $(SSLCONFIG) shared
+!else
+SSLCONFIG = $(SSLCONFIG) no-shared
+!endif
+!elseif "$(PLATFORM)"=="ia64"
+!message Using 'ia64' platform for OpenSSL...
+SSLCONFIG = VC-WIN64I no-asm no-ssl3 no-weak-ssl-ciphers
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+SSLCONFIG = $(SSLCONFIG) shared
+!else
+SSLCONFIG = $(SSLCONFIG) no-shared
+!endif
+!else
+!message Assuming 'x86' platform for OpenSSL...
+SSLCONFIG = VC-WIN32 no-asm no-ssl3 no-weak-ssl-ciphers
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+SSLCONFIG = $(SSLCONFIG) shared
+!else
+SSLCONFIG = $(SSLCONFIG) no-shared
+!endif
+!endif
+!endif
+
+!if $(FOSSIL_ENABLE_TCL)!=0
+TCLDIR = $(B)\compat\tcl-8.6
+TCLSRCDIR = $(TCLDIR)
+TCLINCDIR = $(TCLSRCDIR)\generic
+!endif
+
+# zlib options
+ZINCDIR = $(B)\compat\zlib
+ZLIBDIR = $(B)\compat\zlib
+
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+ZLIB = zdll.lib
+!else
+ZLIB = zlib.lib
+!endif
+
+INCL = /I. /I"$(OX)" /I"$(SRCDIR)" /I"$(SRCDIR_extsrc)" /I"$(B)\win\include"
+
+INCL = $(INCL) /I"$(ZINCDIR)"
+
+!if $(FOSSIL_ENABLE_SSL)!=0
+INCL = $(INCL) /I"$(SSLINCDIR)"
+!endif
+
+!if $(FOSSIL_ENABLE_TCL)!=0
+INCL = $(INCL) /I"$(TCLINCDIR)"
+!endif
+
+CFLAGS = /nologo /W2 /WX /utf-8
+LDFLAGS =
+
+CFLAGS = $(CFLAGS) /D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS
+CFLAGS = $(CFLAGS) /D_CRT_NONSTDC_NO_DEPRECATE /D_CRT_NONSTDC_NO_WARNINGS
+
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+LDFLAGS = $(LDFLAGS) /MANIFEST
+!else
+LDFLAGS = $(LDFLAGS) /NODEFAULTLIB:msvcrt /MANIFEST:NO
+!endif
+
+!if $(FOSSIL_ENABLE_WINXP)!=0
+XPCFLAGS = $(XPCFLAGS) /D_WIN32_WINNT=0x0501 /D_USING_V110_SDK71_=1
+CFLAGS = $(CFLAGS) $(XPCFLAGS)
+#
+# NOTE: For regular builds, /OSVERSION defaults to the /SUBSYSTEM version and
+# explicit initialization is redundant, but is required for post-built edits.
+#
+!if "$(PLATFORM)"=="amd64" || "$(PLATFORM)"=="x64"
+XPLDFLAGS = $(XPLDFLAGS) /OSVERSION:5.02 /SUBSYSTEM:CONSOLE,5.02
+!else
+XPLDFLAGS = $(XPLDFLAGS) /OSVERSION:5.01 /SUBSYSTEM:CONSOLE,5.01
+!endif
+LDFLAGS = $(LDFLAGS) $(XPLDFLAGS)
+#
+# NOTE: Only XPCFLAGS is forwarded to the OpenSSL configuration, and XPLDFLAGS
+# is applied in a separate post-build step, see below for more information.
+#
+!if $(FOSSIL_ENABLE_SSL)!=0
+SSLCONFIG = $(SSLCONFIG) $(XPCFLAGS)
+!endif
+!endif
+
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+!if $(DEBUG)!=0
+CRTFLAGS = /MDd
+!else
+CRTFLAGS = /MD
+!endif
+!else
+!if $(DEBUG)!=0
+CRTFLAGS = /MTd
+!else
+CRTFLAGS = /MT
+!endif
+!endif
+
+!if $(OPTIMIZATIONS)>3
+RELOPTS = /Os
+!elseif $(OPTIMIZATIONS)>2
+RELOPTS = /Ox
+!elseif $(OPTIMIZATIONS)>1
+RELOPTS = /O2
+!elseif $(OPTIMIZATIONS)>0
+RELOPTS = /O1
+!else
+RELOPTS =
+!endif
+
+!if $(DEBUG)!=0
+CFLAGS = $(CFLAGS) /Zi $(CRTFLAGS) $(DBGOPTS) /DFOSSIL_DEBUG /DTH_MEMDEBUG
+LDFLAGS = $(LDFLAGS) /DEBUG
+!else
+CFLAGS = $(CFLAGS) $(CRTFLAGS) $(RELOPTS)
+!endif
+
+BCC = $(CC) $(CFLAGS)
+TCC = $(CC) /c $(CFLAGS) $(MSCDEF) $(INCL)
+RCC = $(RC) /D_WIN32 /D_MSC_VER $(MSCDEF) $(INCL)
+MTC = mt
+LIBS = ws2_32.lib advapi32.lib dnsapi.lib
+LIBDIR =
+
+!if $(FOSSIL_DYNAMIC_BUILD)!=0
+TCC = $(TCC) /DFOSSIL_DYNAMIC_BUILD=1
+RCC = $(RCC) /DFOSSIL_DYNAMIC_BUILD=1
+!endif
+
+LIBS = $(LIBS) $(ZLIB)
+LIBDIR = $(LIBDIR) /LIBPATH:"$(ZLIBDIR)"
+
+!if $(FOSSIL_ENABLE_JSON)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_JSON=1
+RCC = $(RCC) /DFOSSIL_ENABLE_JSON=1
+!endif
+
+!if $(FOSSIL_ENABLE_SSL)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_SSL=1
+RCC = $(RCC) /DFOSSIL_ENABLE_SSL=1
+LIBS = $(LIBS) $(SSLLIB)
+LIBDIR = $(LIBDIR) /LIBPATH:"$(SSLLIBDIR)"
+!endif
+
+!if $(FOSSIL_ENABLE_EXEC_REL_PATHS)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+RCC = $(RCC) /DFOSSIL_ENABLE_EXEC_REL_PATHS=1
+!endif
+
+!if $(FOSSIL_ENABLE_TH1_DOCS)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_TH1_DOCS=1
+RCC = $(RCC) /DFOSSIL_ENABLE_TH1_DOCS=1
+!endif
+
+!if $(FOSSIL_ENABLE_TH1_HOOKS)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_TH1_HOOKS=1
+RCC = $(RCC) /DFOSSIL_ENABLE_TH1_HOOKS=1
+!endif
+
+!if $(FOSSIL_ENABLE_TCL)!=0
+TCC = $(TCC) /DFOSSIL_ENABLE_TCL=1
+RCC = $(RCC) /DFOSSIL_ENABLE_TCL=1
+TCC = $(TCC) /DFOSSIL_ENABLE_TCL_STUBS=1
+RCC = $(RCC) /DFOSSIL_ENABLE_TCL_STUBS=1
+TCC = $(TCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+RCC = $(RCC) /DFOSSIL_ENABLE_TCL_PRIVATE_STUBS=1
+TCC = $(TCC) /DUSE_TCL_STUBS=1
+RCC = $(RCC) /DUSE_TCL_STUBS=1
+!endif
+
+!if $(USE_SEE)!=0
+TCC = $(TCC) /DUSE_SEE=1
+RCC = $(RCC) /DUSE_SEE=1
+!endif
+
+SQLITE_OPTIONS = /DNDEBUG=1 \
+ /DSQLITE_DQS=0 \
+ /DSQLITE_THREADSAFE=0 \
+ /DSQLITE_DEFAULT_MEMSTATUS=0 \
+ /DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ /DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ /DSQLITE_OMIT_DECLTYPE \
+ /DSQLITE_OMIT_DEPRECATED \
+ /DSQLITE_OMIT_PROGRESS_CALLBACK \
+ /DSQLITE_OMIT_SHARED_CACHE \
+ /DSQLITE_OMIT_LOAD_EXTENSION \
+ /DSQLITE_MAX_EXPR_DEPTH=0 \
+ /DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ /DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ /DSQLITE_ENABLE_DBSTAT_VTAB \
+ /DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ /DSQLITE_ENABLE_FTS4 \
+ /DSQLITE_ENABLE_FTS5 \
+ /DSQLITE_ENABLE_MATH_FUNCTIONS \
+ /DSQLITE_ENABLE_PERCENTILE \
+ /DSQLITE_ENABLE_SETLK_TIMEOUT \
+ /DSQLITE_ENABLE_STMTVTAB \
+ /DSQLITE_HAVE_ZLIB \
+ /DSQLITE_ENABLE_DBPAGE_VTAB \
+ /DSQLITE_TRUSTED_SCHEMA=0 \
+ /DHAVE_USLEEP \
+ /DSQLITE_WIN32_NO_ANSI
+
+SHELL_OPTIONS = /DNDEBUG=1 \
+ /DSQLITE_DQS=0 \
+ /DSQLITE_THREADSAFE=0 \
+ /DSQLITE_DEFAULT_MEMSTATUS=0 \
+ /DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 \
+ /DSQLITE_LIKE_DOESNT_MATCH_BLOBS \
+ /DSQLITE_OMIT_DECLTYPE \
+ /DSQLITE_OMIT_DEPRECATED \
+ /DSQLITE_OMIT_PROGRESS_CALLBACK \
+ /DSQLITE_OMIT_SHARED_CACHE \
+ /DSQLITE_OMIT_LOAD_EXTENSION \
+ /DSQLITE_MAX_EXPR_DEPTH=0 \
+ /DSQLITE_ENABLE_LOCKING_STYLE=0 \
+ /DSQLITE_DEFAULT_FILE_FORMAT=4 \
+ /DSQLITE_ENABLE_DBSTAT_VTAB \
+ /DSQLITE_ENABLE_EXPLAIN_COMMENTS \
+ /DSQLITE_ENABLE_FTS4 \
+ /DSQLITE_ENABLE_FTS5 \
+ /DSQLITE_ENABLE_MATH_FUNCTIONS \
+ /DSQLITE_ENABLE_PERCENTILE \
+ /DSQLITE_ENABLE_SETLK_TIMEOUT \
+ /DSQLITE_ENABLE_STMTVTAB \
+ /DSQLITE_HAVE_ZLIB \
+ /DSQLITE_ENABLE_DBPAGE_VTAB \
+ /DSQLITE_TRUSTED_SCHEMA=0 \
+ /DHAVE_USLEEP \
+ /Dmain=sqlite3_shell \
+ /DSQLITE_SHELL_IS_UTF8=1 \
+ /DSQLITE_OMIT_LOAD_EXTENSION=1 \
+ /DUSE_SYSTEM_SQLITE=$(USE_SYSTEM_SQLITE) \
+ /DSQLITE_SHELL_DBNAME_PROC=sqlcmd_get_dbname \
+ /DSQLITE_SHELL_INIT_PROC=sqlcmd_init_proc \
+ /DSQLITE_PS_APPDEF=sqlcmd_ps_appdef \
+ /Daccess=file_access \
+ /Dsystem=fossil_system \
+ /Dgetenv=fossil_getenv \
+ /Dfopen=fossil_fopen
+
+PIKCHR_OPTIONS = /DPIKCHR_TOKEN_LIMIT=10000
+
+SRC = "$(OX)\add_.c" \
+ "$(OX)\ajax_.c" \
+ "$(OX)\alerts_.c" \
+ "$(OX)\allrepo_.c" \
+ "$(OX)\attach_.c" \
+ "$(OX)\backlink_.c" \
+ "$(OX)\backoffice_.c" \
+ "$(OX)\bag_.c" \
+ "$(OX)\bisect_.c" \
+ "$(OX)\blob_.c" \
+ "$(OX)\branch_.c" \
+ "$(OX)\browse_.c" \
+ "$(OX)\builtin_.c" \
+ "$(OX)\bundle_.c" \
+ "$(OX)\cache_.c" \
+ "$(OX)\capabilities_.c" \
+ "$(OX)\captcha_.c" \
+ "$(OX)\cgi_.c" \
+ "$(OX)\chat_.c" \
+ "$(OX)\checkin_.c" \
+ "$(OX)\checkout_.c" \
+ "$(OX)\clearsign_.c" \
+ "$(OX)\clone_.c" \
+ "$(OX)\color_.c" \
+ "$(OX)\comformat_.c" \
+ "$(OX)\configure_.c" \
+ "$(OX)\content_.c" \
+ "$(OX)\cookies_.c" \
+ "$(OX)\db_.c" \
+ "$(OX)\delta_.c" \
+ "$(OX)\deltacmd_.c" \
+ "$(OX)\deltafunc_.c" \
+ "$(OX)\descendants_.c" \
+ "$(OX)\diff_.c" \
+ "$(OX)\diffcmd_.c" \
+ "$(OX)\dispatch_.c" \
+ "$(OX)\doc_.c" \
+ "$(OX)\encode_.c" \
+ "$(OX)\etag_.c" \
+ "$(OX)\event_.c" \
+ "$(OX)\export_.c" \
+ "$(OX)\extcgi_.c" \
+ "$(OX)\file_.c" \
+ "$(OX)\fileedit_.c" \
+ "$(OX)\finfo_.c" \
+ "$(OX)\foci_.c" \
+ "$(OX)\forum_.c" \
+ "$(OX)\fshell_.c" \
+ "$(OX)\fusefs_.c" \
+ "$(OX)\fuzz_.c" \
+ "$(OX)\glob_.c" \
+ "$(OX)\graph_.c" \
+ "$(OX)\gzip_.c" \
+ "$(OX)\hname_.c" \
+ "$(OX)\hook_.c" \
+ "$(OX)\http_.c" \
+ "$(OX)\http_socket_.c" \
+ "$(OX)\http_ssl_.c" \
+ "$(OX)\http_transport_.c" \
+ "$(OX)\import_.c" \
+ "$(OX)\info_.c" \
+ "$(OX)\interwiki_.c" \
+ "$(OX)\json_.c" \
+ "$(OX)\json_artifact_.c" \
+ "$(OX)\json_branch_.c" \
+ "$(OX)\json_config_.c" \
+ "$(OX)\json_diff_.c" \
+ "$(OX)\json_dir_.c" \
+ "$(OX)\json_finfo_.c" \
+ "$(OX)\json_login_.c" \
+ "$(OX)\json_query_.c" \
+ "$(OX)\json_report_.c" \
+ "$(OX)\json_status_.c" \
+ "$(OX)\json_tag_.c" \
+ "$(OX)\json_timeline_.c" \
+ "$(OX)\json_user_.c" \
+ "$(OX)\json_wiki_.c" \
+ "$(OX)\leaf_.c" \
+ "$(OX)\loadctrl_.c" \
+ "$(OX)\login_.c" \
+ "$(OX)\lookslike_.c" \
+ "$(OX)\main_.c" \
+ "$(OX)\manifest_.c" \
+ "$(OX)\markdown_.c" \
+ "$(OX)\markdown_html_.c" \
+ "$(OX)\match_.c" \
+ "$(OX)\md5_.c" \
+ "$(OX)\merge_.c" \
+ "$(OX)\merge3_.c" \
+ "$(OX)\moderate_.c" \
+ "$(OX)\name_.c" \
+ "$(OX)\org_.c" \
+ "$(OX)\patch_.c" \
+ "$(OX)\path_.c" \
+ "$(OX)\piechart_.c" \
+ "$(OX)\pikchrshow_.c" \
+ "$(OX)\pivot_.c" \
+ "$(OX)\popen_.c" \
+ "$(OX)\pqueue_.c" \
+ "$(OX)\printf_.c" \
+ "$(OX)\publish_.c" \
+ "$(OX)\purge_.c" \
+ "$(OX)\rebuild_.c" \
+ "$(OX)\regexp_.c" \
+ "$(OX)\repolist_.c" \
+ "$(OX)\report_.c" \
+ "$(OX)\robot_.c" \
+ "$(OX)\rss_.c" \
+ "$(OX)\schema_.c" \
+ "$(OX)\search_.c" \
+ "$(OX)\security_audit_.c" \
+ "$(OX)\setup_.c" \
+ "$(OX)\setupuser_.c" \
+ "$(OX)\sha1_.c" \
+ "$(OX)\sha1hard_.c" \
+ "$(OX)\sha3_.c" \
+ "$(OX)\shun_.c" \
+ "$(OX)\sitemap_.c" \
+ "$(OX)\skins_.c" \
+ "$(OX)\smtp_.c" \
+ "$(OX)\sqlcmd_.c" \
+ "$(OX)\stash_.c" \
+ "$(OX)\stat_.c" \
+ "$(OX)\statrep_.c" \
+ "$(OX)\style_.c" \
+ "$(OX)\sync_.c" \
+ "$(OX)\tag_.c" \
+ "$(OX)\tar_.c" \
+ "$(OX)\terminal_.c" \
+ "$(OX)\th_main_.c" \
+ "$(OX)\timeline_.c" \
+ "$(OX)\tkt_.c" \
+ "$(OX)\tktsetup_.c" \
+ "$(OX)\undo_.c" \
+ "$(OX)\unicode_.c" \
+ "$(OX)\unversioned_.c" \
+ "$(OX)\update_.c" \
+ "$(OX)\url_.c" \
+ "$(OX)\user_.c" \
+ "$(OX)\utf8_.c" \
+ "$(OX)\util_.c" \
+ "$(OX)\verify_.c" \
+ "$(OX)\vfile_.c" \
+ "$(OX)\wiki_.c" \
+ "$(OX)\wikiformat_.c" \
+ "$(OX)\winfile_.c" \
+ "$(OX)\winhttp_.c" \
+ "$(OX)\xfer_.c" \
+ "$(OX)\xfersetup_.c" \
+ "$(OX)\xsystem_.c" \
+ "$(OX)\zip_.c" \
+ "$(SRCDIR_extsrc)\pikchr.c"
+
+EXTRA_FILES = "$(SRCDIR)\..\extsrc\pikchr-worker.js" \
+ "$(SRCDIR)\..\extsrc\pikchr.js" \
+ "$(SRCDIR)\..\extsrc\pikchr.wasm" \
+ "$(SRCDIR)\..\skins\ardoise\css.txt" \
+ "$(SRCDIR)\..\skins\ardoise\details.txt" \
+ "$(SRCDIR)\..\skins\ardoise\footer.txt" \
+ "$(SRCDIR)\..\skins\ardoise\header.txt" \
+ "$(SRCDIR)\..\skins\black_and_white\css.txt" \
+ "$(SRCDIR)\..\skins\black_and_white\details.txt" \
+ "$(SRCDIR)\..\skins\black_and_white\footer.txt" \
+ "$(SRCDIR)\..\skins\black_and_white\header.txt" \
+ "$(SRCDIR)\..\skins\blitz\css.txt" \
+ "$(SRCDIR)\..\skins\blitz\details.txt" \
+ "$(SRCDIR)\..\skins\blitz\footer.txt" \
+ "$(SRCDIR)\..\skins\blitz\header.txt" \
+ "$(SRCDIR)\..\skins\blitz\ticket.txt" \
+ "$(SRCDIR)\..\skins\copland\css.txt" \
+ "$(SRCDIR)\..\skins\copland\details.txt" \
+ "$(SRCDIR)\..\skins\copland\footer.txt" \
+ "$(SRCDIR)\..\skins\copland\header.txt" \
+ "$(SRCDIR)\..\skins\copland\js.txt" \
+ "$(SRCDIR)\..\skins\darkmode\css.txt" \
+ "$(SRCDIR)\..\skins\darkmode\details.txt" \
+ "$(SRCDIR)\..\skins\darkmode\footer.txt" \
+ "$(SRCDIR)\..\skins\darkmode\header.txt" \
+ "$(SRCDIR)\..\skins\default\css.txt" \
+ "$(SRCDIR)\..\skins\default\details.txt" \
+ "$(SRCDIR)\..\skins\default\footer.txt" \
+ "$(SRCDIR)\..\skins\default\header.txt" \
+ "$(SRCDIR)\..\skins\eagle\css.txt" \
+ "$(SRCDIR)\..\skins\eagle\details.txt" \
+ "$(SRCDIR)\..\skins\eagle\footer.txt" \
+ "$(SRCDIR)\..\skins\eagle\header.txt" \
+ "$(SRCDIR)\..\skins\etienne\css.txt" \
+ "$(SRCDIR)\..\skins\etienne\details.txt" \
+ "$(SRCDIR)\..\skins\etienne\footer.txt" \
+ "$(SRCDIR)\..\skins\etienne\header.txt" \
+ "$(SRCDIR)\..\skins\khaki\css.txt" \
+ "$(SRCDIR)\..\skins\khaki\details.txt" \
+ "$(SRCDIR)\..\skins\khaki\footer.txt" \
+ "$(SRCDIR)\..\skins\khaki\header.txt" \
+ "$(SRCDIR)\..\skins\original\css.txt" \
+ "$(SRCDIR)\..\skins\original\details.txt" \
+ "$(SRCDIR)\..\skins\original\footer.txt" \
+ "$(SRCDIR)\..\skins\original\header.txt" \
+ "$(SRCDIR)\..\skins\plain_gray\css.txt" \
+ "$(SRCDIR)\..\skins\plain_gray\details.txt" \
+ "$(SRCDIR)\..\skins\plain_gray\footer.txt" \
+ "$(SRCDIR)\..\skins\plain_gray\header.txt" \
+ "$(SRCDIR)\..\skins\xekri\css.txt" \
+ "$(SRCDIR)\..\skins\xekri\details.txt" \
+ "$(SRCDIR)\..\skins\xekri\footer.txt" \
+ "$(SRCDIR)\..\skins\xekri\header.txt" \
+ "$(SRCDIR)\accordion.js" \
+ "$(SRCDIR)\alerts\bflat2.wav" \
+ "$(SRCDIR)\alerts\bflat3.wav" \
+ "$(SRCDIR)\alerts\bloop.wav" \
+ "$(SRCDIR)\alerts\plunk.wav" \
+ "$(SRCDIR)\ci_edit.js" \
+ "$(SRCDIR)\copybtn.js" \
+ "$(SRCDIR)\default.css" \
+ "$(SRCDIR)\diff.js" \
+ "$(SRCDIR)\diff.tcl" \
+ "$(SRCDIR)\forum.js" \
+ "$(SRCDIR)\fossil.attach.js" \
+ "$(SRCDIR)\fossil.bootstrap.js" \
+ "$(SRCDIR)\fossil.confirmer.js" \
+ "$(SRCDIR)\fossil.copybutton.js" \
+ "$(SRCDIR)\fossil.diff.js" \
+ "$(SRCDIR)\fossil.dom.js" \
+ "$(SRCDIR)\fossil.fetch.js" \
+ "$(SRCDIR)\fossil.numbered-lines.js" \
+ "$(SRCDIR)\fossil.page.brlist.js" \
+ "$(SRCDIR)\fossil.page.chat.js" \
+ "$(SRCDIR)\fossil.page.fileedit.js" \
+ "$(SRCDIR)\fossil.page.forumpost.js" \
+ "$(SRCDIR)\fossil.page.pikchrshow.js" \
+ "$(SRCDIR)\fossil.page.pikchrshowasm.js" \
+ "$(SRCDIR)\fossil.page.ticket.js" \
+ "$(SRCDIR)\fossil.page.whistory.js" \
+ "$(SRCDIR)\fossil.page.wikiedit.js" \
+ "$(SRCDIR)\fossil.pikchr.js" \
+ "$(SRCDIR)\fossil.popupwidget.js" \
+ "$(SRCDIR)\fossil.storage.js" \
+ "$(SRCDIR)\fossil.tabs.js" \
+ "$(SRCDIR)\fossil.wikiedit-wysiwyg.js" \
+ "$(SRCDIR)\graph.js" \
+ "$(SRCDIR)\hbmenu.js" \
+ "$(SRCDIR)\href.js" \
+ "$(SRCDIR)\login.js" \
+ "$(SRCDIR)\markdown.md" \
+ "$(SRCDIR)\menu.js" \
+ "$(SRCDIR)\merge.tcl" \
+ "$(SRCDIR)\scroll.js" \
+ "$(SRCDIR)\skin.js" \
+ "$(SRCDIR)\sorttable.js" \
+ "$(SRCDIR)\sounds\0.wav" \
+ "$(SRCDIR)\sounds\1.wav" \
+ "$(SRCDIR)\sounds\2.wav" \
+ "$(SRCDIR)\sounds\3.wav" \
+ "$(SRCDIR)\sounds\4.wav" \
+ "$(SRCDIR)\sounds\5.wav" \
+ "$(SRCDIR)\sounds\6.wav" \
+ "$(SRCDIR)\sounds\7.wav" \
+ "$(SRCDIR)\sounds\8.wav" \
+ "$(SRCDIR)\sounds\9.wav" \
+ "$(SRCDIR)\sounds\a.wav" \
+ "$(SRCDIR)\sounds\b.wav" \
+ "$(SRCDIR)\sounds\c.wav" \
+ "$(SRCDIR)\sounds\d.wav" \
+ "$(SRCDIR)\sounds\e.wav" \
+ "$(SRCDIR)\sounds\f.wav" \
+ "$(SRCDIR)\style.admin_log.css" \
+ "$(SRCDIR)\style.chat.css" \
+ "$(SRCDIR)\style.fileedit.css" \
+ "$(SRCDIR)\style.forum.css" \
+ "$(SRCDIR)\style.pikchrshow.css" \
+ "$(SRCDIR)\style.uvlist.css" \
+ "$(SRCDIR)\style.wikiedit.css" \
+ "$(SRCDIR)\tree.js" \
+ "$(SRCDIR)\useredit.js" \
+ "$(SRCDIR)\wiki.wiki"
+
+OBJ = "$(OX)\add$O" \
+ "$(OX)\ajax$O" \
+ "$(OX)\alerts$O" \
+ "$(OX)\allrepo$O" \
+ "$(OX)\attach$O" \
+ "$(OX)\backlink$O" \
+ "$(OX)\backoffice$O" \
+ "$(OX)\bag$O" \
+ "$(OX)\bisect$O" \
+ "$(OX)\blob$O" \
+ "$(OX)\branch$O" \
+ "$(OX)\browse$O" \
+ "$(OX)\builtin$O" \
+ "$(OX)\bundle$O" \
+ "$(OX)\cache$O" \
+ "$(OX)\capabilities$O" \
+ "$(OX)\captcha$O" \
+ "$(OX)\cgi$O" \
+ "$(OX)\chat$O" \
+ "$(OX)\checkin$O" \
+ "$(OX)\checkout$O" \
+ "$(OX)\clearsign$O" \
+ "$(OX)\clone$O" \
+ "$(OX)\color$O" \
+ "$(OX)\comformat$O" \
+ "$(OX)\configure$O" \
+ "$(OX)\content$O" \
+ "$(OX)\cookies$O" \
+ "$(OX)\cson_amalgamation$O" \
+ "$(OX)\db$O" \
+ "$(OX)\delta$O" \
+ "$(OX)\deltacmd$O" \
+ "$(OX)\deltafunc$O" \
+ "$(OX)\descendants$O" \
+ "$(OX)\diff$O" \
+ "$(OX)\diffcmd$O" \
+ "$(OX)\dispatch$O" \
+ "$(OX)\doc$O" \
+ "$(OX)\encode$O" \
+ "$(OX)\etag$O" \
+ "$(OX)\event$O" \
+ "$(OX)\export$O" \
+ "$(OX)\extcgi$O" \
+ "$(OX)\file$O" \
+ "$(OX)\fileedit$O" \
+ "$(OX)\finfo$O" \
+ "$(OX)\foci$O" \
+ "$(OX)\forum$O" \
+ "$(OX)\fshell$O" \
+ "$(OX)\fusefs$O" \
+ "$(OX)\fuzz$O" \
+ "$(OX)\glob$O" \
+ "$(OX)\graph$O" \
+ "$(OX)\gzip$O" \
+ "$(OX)\hname$O" \
+ "$(OX)\hook$O" \
+ "$(OX)\http$O" \
+ "$(OX)\http_socket$O" \
+ "$(OX)\http_ssl$O" \
+ "$(OX)\http_transport$O" \
+ "$(OX)\import$O" \
+ "$(OX)\info$O" \
+ "$(OX)\interwiki$O" \
+ "$(OX)\json$O" \
+ "$(OX)\json_artifact$O" \
+ "$(OX)\json_branch$O" \
+ "$(OX)\json_config$O" \
+ "$(OX)\json_diff$O" \
+ "$(OX)\json_dir$O" \
+ "$(OX)\json_finfo$O" \
+ "$(OX)\json_login$O" \
+ "$(OX)\json_query$O" \
+ "$(OX)\json_report$O" \
+ "$(OX)\json_status$O" \
+ "$(OX)\json_tag$O" \
+ "$(OX)\json_timeline$O" \
+ "$(OX)\json_user$O" \
+ "$(OX)\json_wiki$O" \
+ "$(OX)\leaf$O" \
+ "$(OX)\loadctrl$O" \
+ "$(OX)\login$O" \
+ "$(OX)\lookslike$O" \
+ "$(OX)\main$O" \
+ "$(OX)\manifest$O" \
+ "$(OX)\markdown$O" \
+ "$(OX)\markdown_html$O" \
+ "$(OX)\match$O" \
+ "$(OX)\md5$O" \
+ "$(OX)\merge$O" \
+ "$(OX)\merge3$O" \
+ "$(OX)\moderate$O" \
+ "$(OX)\name$O" \
+ "$(OX)\org$O" \
+ "$(OX)\patch$O" \
+ "$(OX)\path$O" \
+ "$(OX)\piechart$O" \
+ "$(OX)\pikchr$O" \
+ "$(OX)\pikchrshow$O" \
+ "$(OX)\pivot$O" \
+ "$(OX)\popen$O" \
+ "$(OX)\pqueue$O" \
+ "$(OX)\printf$O" \
+ "$(OX)\publish$O" \
+ "$(OX)\purge$O" \
+ "$(OX)\rebuild$O" \
+ "$(OX)\regexp$O" \
+ "$(OX)\repolist$O" \
+ "$(OX)\report$O" \
+ "$(OX)\robot$O" \
+ "$(OX)\rss$O" \
+ "$(OX)\schema$O" \
+ "$(OX)\search$O" \
+ "$(OX)\security_audit$O" \
+ "$(OX)\setup$O" \
+ "$(OX)\setupuser$O" \
+ "$(OX)\sha1$O" \
+ "$(OX)\sha1hard$O" \
+ "$(OX)\sha3$O" \
+ "$(OX)\shell$O" \
+ "$(OX)\shun$O" \
+ "$(OX)\sitemap$O" \
+ "$(OX)\skins$O" \
+ "$(OX)\smtp$O" \
+ "$(OX)\sqlcmd$O" \
+ "$(OX)\sqlite3$O" \
+ "$(OX)\stash$O" \
+ "$(OX)\stat$O" \
+ "$(OX)\statrep$O" \
+ "$(OX)\style$O" \
+ "$(OX)\sync$O" \
+ "$(OX)\tag$O" \
+ "$(OX)\tar$O" \
+ "$(OX)\terminal$O" \
+ "$(OX)\th$O" \
+ "$(OX)\th_lang$O" \
+ "$(OX)\th_main$O" \
+ "$(OX)\th_tcl$O" \
+ "$(OX)\timeline$O" \
+ "$(OX)\tkt$O" \
+ "$(OX)\tktsetup$O" \
+ "$(OX)\undo$O" \
+ "$(OX)\unicode$O" \
+ "$(OX)\unversioned$O" \
+ "$(OX)\update$O" \
+ "$(OX)\url$O" \
+ "$(OX)\user$O" \
+ "$(OX)\utf8$O" \
+ "$(OX)\util$O" \
+ "$(OX)\verify$O" \
+ "$(OX)\vfile$O" \
+ "$(OX)\wiki$O" \
+ "$(OX)\wikiformat$O" \
+ "$(OX)\winfile$O" \
+ "$(OX)\winhttp$O" \
+ "$(OX)\xfer$O" \
+ "$(OX)\xfersetup$O" \
+ "$(OX)\xsystem$O" \
+ "$(OX)\zip$O" \
+ "$(OX)\fossil.res"
+
+
+!ifndef BASEAPPNAME
+BASEAPPNAME = fossil
+!endif
+
+APPNAME = $(OX)\$(BASEAPPNAME)$(E)
+PDBNAME = $(OX)\$(BASEAPPNAME)$(P)
+APPTARGETS =
+
+all: "$(OX)" "$(APPNAME)"
+
+$(BASEAPPNAME): "$(APPNAME)"
+
+$(BASEAPPNAME)$(E): "$(APPNAME)"
+
+install: "$(APPNAME)"
+ echo F | xcopy /Y "$(APPNAME)" "$(INSTALLDIR)"\*
+!if $(DEBUG)!=0
+ echo F | xcopy /Y "$(PDBNAME)" "$(INSTALLDIR)"\*
+!endif
+
+$(OX):
+ @-mkdir $@
+
+zlib:
+ @echo Building zlib from "$(ZLIBDIR)"...
+!if $(FOSSIL_ENABLE_WINXP)!=0
+ @pushd "$(ZLIBDIR)" && $(MAKE) /f win32\Makefile.msc $(ZLIB) "CC=cl $(XPCFLAGS)" "LD=link $(XPLDFLAGS)" && popd
+!else
+ @pushd "$(ZLIBDIR)" && $(MAKE) /f win32\Makefile.msc $(ZLIB) && popd
+!endif
+
+clean-zlib:
+ @pushd "$(ZLIBDIR)" && $(MAKE) /f win32\Makefile.msc clean && popd
+
+!if $(FOSSIL_ENABLE_SSL)!=0
+openssl:
+ @echo Building OpenSSL from "$(SSLDIR)"...
+!if $(FOSSIL_ENABLE_WINXP)!=0
+ @echo Passing XPCFLAGS = [ $(XPCFLAGS) ] to the OpenSSL configuration...
+!endif
+!ifdef PERLDIR
+ @pushd "$(SSLDIR)" && "$(PERLDIR)\$(PERL)" Configure $(SSLCONFIG) && popd
+!else
+ @pushd "$(SSLDIR)" && "$(PERL)" Configure $(SSLCONFIG) && popd
+!endif
+ @pushd "$(SSLDIR)" && $(MAKE) && popd
+!if $(FOSSIL_ENABLE_WINXP)!=0 && $(FOSSIL_DYNAMIC_BUILD)!=0
+#
+# NOTE: Appending custom linker flags to the OpenSSL default linker flags is
+# somewhat difficult, as summarized in this Fossil Forum post:
+#
+# https://fossil-scm.org/forum/forumpost/a9a2d6af28b
+#
+# Therefore the custom linker flags required for Windows XP dynamic builds are
+# applied in a separate post-build step.
+#
+# If the build stops here, or if the custom linker flags are outside the scope
+# of `editbin` or `link /EDIT` (i.e. additional libraries), consider tweaking
+# the OpenSSL makefile by hand.
+#
+# Also note that this step changes the subsystem for the OpenSSL DLLs from
+# WINDOWS to CONSOLE, but which has no effect on DLLs.
+#
+ @echo Applying XPLDFLAGS = [ $(XPLDFLAGS) ] to the OpenSSL DLLs...
+ @for /F "usebackq delims=" %F in (`dir /A:-D/B "$(SSLDIR)\*.dll" 2^>nul`) \
+ do @( \
+ echo %F & \
+ link /EDIT /NOLOGO $(XPLDFLAGS) "$(SSLDIR)\%F" || exit 1 \
+ )
+!endif
+
+clean-openssl:
+ @pushd "$(SSLDIR)" && $(MAKE) clean && popd
+!endif
+
+!if $(FOSSIL_BUILD_ZLIB)!=0
+APPTARGETS = $(APPTARGETS) zlib
+!endif
+
+!if $(FOSSIL_ENABLE_SSL)!=0
+!if $(FOSSIL_BUILD_SSL)!=0
+APPTARGETS = $(APPTARGETS) openssl
+!endif
+!endif
+
+"$(APPNAME)" : $(APPTARGETS) "$(OBJDIR)\translate$E" "$(OBJDIR)\mkindex$E" "$(OBJDIR)\codecheck1$E" "$(OX)\headers" $(OBJ) "$(OX)\linkopts"
+ "$(OBJDIR)\codecheck1$E" $(SRC)
+ link $(LDFLAGS) /OUT:$@ /PDB:$(@D)\ $(LIBDIR) Wsetargv.obj "$(OX)\fossil.res" @"$(OX)\linkopts"
+ if exist "$(B)\win\fossil.exe.manifest" \
+ $(MTC) -nologo -manifest "$(B)\win\fossil.exe.manifest" -outputresource:$@;1
+
+"$(OX)\linkopts": "$(B)\win\Makefile.msc"
+ echo "$(OX)\add.obj" > $@
+ echo "$(OX)\ajax.obj" >> $@
+ echo "$(OX)\alerts.obj" >> $@
+ echo "$(OX)\allrepo.obj" >> $@
+ echo "$(OX)\attach.obj" >> $@
+ echo "$(OX)\backlink.obj" >> $@
+ echo "$(OX)\backoffice.obj" >> $@
+ echo "$(OX)\bag.obj" >> $@
+ echo "$(OX)\bisect.obj" >> $@
+ echo "$(OX)\blob.obj" >> $@
+ echo "$(OX)\branch.obj" >> $@
+ echo "$(OX)\browse.obj" >> $@
+ echo "$(OX)\builtin.obj" >> $@
+ echo "$(OX)\bundle.obj" >> $@
+ echo "$(OX)\cache.obj" >> $@
+ echo "$(OX)\capabilities.obj" >> $@
+ echo "$(OX)\captcha.obj" >> $@
+ echo "$(OX)\cgi.obj" >> $@
+ echo "$(OX)\chat.obj" >> $@
+ echo "$(OX)\checkin.obj" >> $@
+ echo "$(OX)\checkout.obj" >> $@
+ echo "$(OX)\clearsign.obj" >> $@
+ echo "$(OX)\clone.obj" >> $@
+ echo "$(OX)\color.obj" >> $@
+ echo "$(OX)\comformat.obj" >> $@
+ echo "$(OX)\configure.obj" >> $@
+ echo "$(OX)\content.obj" >> $@
+ echo "$(OX)\cookies.obj" >> $@
+ echo "$(OX)\cson_amalgamation.obj" >> $@
+ echo "$(OX)\db.obj" >> $@
+ echo "$(OX)\delta.obj" >> $@
+ echo "$(OX)\deltacmd.obj" >> $@
+ echo "$(OX)\deltafunc.obj" >> $@
+ echo "$(OX)\descendants.obj" >> $@
+ echo "$(OX)\diff.obj" >> $@
+ echo "$(OX)\diffcmd.obj" >> $@
+ echo "$(OX)\dispatch.obj" >> $@
+ echo "$(OX)\doc.obj" >> $@
+ echo "$(OX)\encode.obj" >> $@
+ echo "$(OX)\etag.obj" >> $@
+ echo "$(OX)\event.obj" >> $@
+ echo "$(OX)\export.obj" >> $@
+ echo "$(OX)\extcgi.obj" >> $@
+ echo "$(OX)\file.obj" >> $@
+ echo "$(OX)\fileedit.obj" >> $@
+ echo "$(OX)\finfo.obj" >> $@
+ echo "$(OX)\foci.obj" >> $@
+ echo "$(OX)\forum.obj" >> $@
+ echo "$(OX)\fshell.obj" >> $@
+ echo "$(OX)\fusefs.obj" >> $@
+ echo "$(OX)\fuzz.obj" >> $@
+ echo "$(OX)\glob.obj" >> $@
+ echo "$(OX)\graph.obj" >> $@
+ echo "$(OX)\gzip.obj" >> $@
+ echo "$(OX)\hname.obj" >> $@
+ echo "$(OX)\hook.obj" >> $@
+ echo "$(OX)\http.obj" >> $@
+ echo "$(OX)\http_socket.obj" >> $@
+ echo "$(OX)\http_ssl.obj" >> $@
+ echo "$(OX)\http_transport.obj" >> $@
+ echo "$(OX)\import.obj" >> $@
+ echo "$(OX)\info.obj" >> $@
+ echo "$(OX)\interwiki.obj" >> $@
+ echo "$(OX)\json.obj" >> $@
+ echo "$(OX)\json_artifact.obj" >> $@
+ echo "$(OX)\json_branch.obj" >> $@
+ echo "$(OX)\json_config.obj" >> $@
+ echo "$(OX)\json_diff.obj" >> $@
+ echo "$(OX)\json_dir.obj" >> $@
+ echo "$(OX)\json_finfo.obj" >> $@
+ echo "$(OX)\json_login.obj" >> $@
+ echo "$(OX)\json_query.obj" >> $@
+ echo "$(OX)\json_report.obj" >> $@
+ echo "$(OX)\json_status.obj" >> $@
+ echo "$(OX)\json_tag.obj" >> $@
+ echo "$(OX)\json_timeline.obj" >> $@
+ echo "$(OX)\json_user.obj" >> $@
+ echo "$(OX)\json_wiki.obj" >> $@
+ echo "$(OX)\leaf.obj" >> $@
+ echo "$(OX)\loadctrl.obj" >> $@
+ echo "$(OX)\login.obj" >> $@
+ echo "$(OX)\lookslike.obj" >> $@
+ echo "$(OX)\main.obj" >> $@
+ echo "$(OX)\manifest.obj" >> $@
+ echo "$(OX)\markdown.obj" >> $@
+ echo "$(OX)\markdown_html.obj" >> $@
+ echo "$(OX)\match.obj" >> $@
+ echo "$(OX)\md5.obj" >> $@
+ echo "$(OX)\merge.obj" >> $@
+ echo "$(OX)\merge3.obj" >> $@
+ echo "$(OX)\moderate.obj" >> $@
+ echo "$(OX)\name.obj" >> $@
+ echo "$(OX)\org.obj" >> $@
+ echo "$(OX)\patch.obj" >> $@
+ echo "$(OX)\path.obj" >> $@
+ echo "$(OX)\piechart.obj" >> $@
+ echo "$(OX)\pikchr.obj" >> $@
+ echo "$(OX)\pikchrshow.obj" >> $@
+ echo "$(OX)\pivot.obj" >> $@
+ echo "$(OX)\popen.obj" >> $@
+ echo "$(OX)\pqueue.obj" >> $@
+ echo "$(OX)\printf.obj" >> $@
+ echo "$(OX)\publish.obj" >> $@
+ echo "$(OX)\purge.obj" >> $@
+ echo "$(OX)\rebuild.obj" >> $@
+ echo "$(OX)\regexp.obj" >> $@
+ echo "$(OX)\repolist.obj" >> $@
+ echo "$(OX)\report.obj" >> $@
+ echo "$(OX)\robot.obj" >> $@
+ echo "$(OX)\rss.obj" >> $@
+ echo "$(OX)\schema.obj" >> $@
+ echo "$(OX)\search.obj" >> $@
+ echo "$(OX)\security_audit.obj" >> $@
+ echo "$(OX)\setup.obj" >> $@
+ echo "$(OX)\setupuser.obj" >> $@
+ echo "$(OX)\sha1.obj" >> $@
+ echo "$(OX)\sha1hard.obj" >> $@
+ echo "$(OX)\sha3.obj" >> $@
+ echo "$(OX)\shell.obj" >> $@
+ echo "$(OX)\shun.obj" >> $@
+ echo "$(OX)\sitemap.obj" >> $@
+ echo "$(OX)\skins.obj" >> $@
+ echo "$(OX)\smtp.obj" >> $@
+ echo "$(OX)\sqlcmd.obj" >> $@
+ echo "$(OX)\sqlite3.obj" >> $@
+ echo "$(OX)\stash.obj" >> $@
+ echo "$(OX)\stat.obj" >> $@
+ echo "$(OX)\statrep.obj" >> $@
+ echo "$(OX)\style.obj" >> $@
+ echo "$(OX)\sync.obj" >> $@
+ echo "$(OX)\tag.obj" >> $@
+ echo "$(OX)\tar.obj" >> $@
+ echo "$(OX)\terminal.obj" >> $@
+ echo "$(OX)\th.obj" >> $@
+ echo "$(OX)\th_lang.obj" >> $@
+ echo "$(OX)\th_main.obj" >> $@
+ echo "$(OX)\th_tcl.obj" >> $@
+ echo "$(OX)\timeline.obj" >> $@
+ echo "$(OX)\tkt.obj" >> $@
+ echo "$(OX)\tktsetup.obj" >> $@
+ echo "$(OX)\undo.obj" >> $@
+ echo "$(OX)\unicode.obj" >> $@
+ echo "$(OX)\unversioned.obj" >> $@
+ echo "$(OX)\update.obj" >> $@
+ echo "$(OX)\url.obj" >> $@
+ echo "$(OX)\user.obj" >> $@
+ echo "$(OX)\utf8.obj" >> $@
+ echo "$(OX)\util.obj" >> $@
+ echo "$(OX)\verify.obj" >> $@
+ echo "$(OX)\vfile.obj" >> $@
+ echo "$(OX)\wiki.obj" >> $@
+ echo "$(OX)\wikiformat.obj" >> $@
+ echo "$(OX)\winfile.obj" >> $@
+ echo "$(OX)\winhttp.obj" >> $@
+ echo "$(OX)\xfer.obj" >> $@
+ echo "$(OX)\xfersetup.obj" >> $@
+ echo "$(OX)\xsystem.obj" >> $@
+ echo "$(OX)\zip.obj" >> $@
+ echo $(LIBS) >> $@
+
+"$(OBJDIR)\translate$E": "$(SRCDIR_tools)\translate.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+"$(OBJDIR)\makeheaders$E": "$(SRCDIR_tools)\makeheaders.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+"$(OBJDIR)\mkindex$E": "$(SRCDIR_tools)\mkindex.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+"$(OBJDIR)\mkbuiltin$E": "$(SRCDIR_tools)\mkbuiltin.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+"$(OBJDIR)\mkversion$E": "$(SRCDIR_tools)\mkversion.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+"$(OBJDIR)\codecheck1$E": "$(SRCDIR_tools)\codecheck1.c"
+ $(BCC) /Fe$@ /Fo$(@D)\ /Fd$(@D)\ $**
+
+!if $(USE_SEE)!=0
+SEE_FLAGS = /DSQLITE_HAS_CODEC=1 /DSQLITE_SHELL_DBKEY_PROC=fossil_key
+SQLITE3_SHELL_SRC = $(SRCDIR)\shell-see.c
+SQLITE3_SRC = $(SRCDIR_extsrc)\sqlite3-see.c
+!else
+SEE_FLAGS =
+SQLITE3_SHELL_SRC = $(SRCDIR_extsrc)\shell.c
+SQLITE3_SRC = $(SRCDIR_extsrc)\sqlite3.c
+!endif
+
+"$(OX)\shell$O" : "$(SQLITE3_SHELL_SRC)" "$(B)\win\Makefile.msc"
+ $(TCC) /Fo$@ /Fd$(@D)\ $(SHELL_OPTIONS) $(SQLITE_OPTIONS) $(SHELL_CFLAGS) $(SEE_FLAGS) -c "$(SQLITE3_SHELL_SRC)"
+
+"$(OX)\sqlite3$O" : "$(SQLITE3_SRC)" "$(B)\win\Makefile.msc"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c $(SQLITE_OPTIONS) $(SQLITE_CFLAGS) $(SEE_FLAGS) "$(SQLITE3_SRC)"
+
+"$(OX)\th$O" : "$(SRCDIR)\th.c"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c $**
+
+"$(OX)\th_lang$O" : "$(SRCDIR)\th_lang.c"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c $**
+
+"$(OX)\th_tcl$O" : "$(SRCDIR)\th_tcl.c"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c $**
+
+"$(OX)\pikchr$O" : "$(SRCDIR_extsrc)\pikchr.c"
+ $(TCC) $(PIKCHR_OPTIONS) /Fo$@ /Fd$(@D)\ -c $**
+
+"$(OX)\VERSION.h" : "$(OBJDIR)\mkversion$E" "$(B)\manifest.uuid" "$(B)\manifest" "$(B)\VERSION" "$(B)\phony.h"
+ "$(OBJDIR)\mkversion$E" "$(B)\manifest.uuid" "$(B)\manifest" "$(B)\VERSION" > $@
+
+"$(B)\phony.h" :
+ rem Force rebuild of VERSION.h whenever nmake is run
+
+"$(OX)\cson_amalgamation$O" : "$(SRCDIR_extsrc)\cson_amalgamation.c"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c $**
+
+"$(OX)\page_index.h": "$(OBJDIR)\mkindex$E" $(SRC)
+ $** > $@
+
+"$(OX)\builtin_data.h": "$(OBJDIR)\mkbuiltin$E" "$(OX)\builtin_data.reslist"
+ "$(OBJDIR)\mkbuiltin$E" --prefix "$(SRCDIR)/" --reslist "$(OX)\builtin_data.reslist" > $@
+
+cleanx:
+ -del "$(OX)\*.obj" 2>NUL
+ -del "$(OBJDIR)\*.obj" 2>NUL
+ -del "$(OX)\*_.c" 2>NUL
+ -del "$(OX)\*.h" 2>NUL
+ -del "$(OX)\*.ilk" 2>NUL
+ -del "$(OX)\*.map" 2>NUL
+ -del "$(OX)\*.res" 2>NUL
+ -del "$(OX)\*.reslist" 2>NUL
+ -del "$(OX)\headers" 2>NUL
+ -del "$(OX)\linkopts" 2>NUL
+ -del "$(OX)\vc*.pdb" 2>NUL
+
+clean: cleanx
+ -del "$(APPNAME)" 2>NUL
+ -del "$(PDBNAME)" 2>NUL
+ -del "$(OBJDIR)\translate$E" 2>NUL
+ -del "$(OBJDIR)\translate$P" 2>NUL
+ -del "$(OBJDIR)\mkindex$E" 2>NUL
+ -del "$(OBJDIR)\mkindex$P" 2>NUL
+ -del "$(OBJDIR)\makeheaders$E" 2>NUL
+ -del "$(OBJDIR)\makeheaders$P" 2>NUL
+ -del "$(OBJDIR)\mkversion$E" 2>NUL
+ -del "$(OBJDIR)\mkversion$P" 2>NUL
+ -del "$(OBJDIR)\mkcss$E" 2>NUL
+ -del "$(OBJDIR)\mkcss$P" 2>NUL
+ -del "$(OBJDIR)\codecheck1$E" 2>NUL
+ -del "$(OBJDIR)\codecheck1$P" 2>NUL
+ -del "$(OBJDIR)\mkbuiltin$E" 2>NUL
+ -del "$(OBJDIR)\mkbuiltin$P" 2>NUL
+
+realclean: clean
+
+"$(OBJDIR)\json$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_artifact$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_branch$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_config$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_diff$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_dir$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_finfo$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_login$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_query$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_report$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_status$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_tag$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_timeline$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_user$O" : "$(SRCDIR)\json_detail.h"
+"$(OBJDIR)\json_wiki$O" : "$(SRCDIR)\json_detail.h"
+
+"$(OX)\builtin_data.reslist": $(EXTRA_FILES) "$(B)\win\Makefile.msc"
+ echo "$(SRCDIR)\../extsrc/pikchr-worker.js" > $@
+ echo "$(SRCDIR)\../extsrc/pikchr.js" >> $@
+ echo "$(SRCDIR)\../extsrc/pikchr.wasm" >> $@
+ echo "$(SRCDIR)\../skins/ardoise/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/ardoise/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/ardoise/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/ardoise/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/black_and_white/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/black_and_white/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/black_and_white/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/black_and_white/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/blitz/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/blitz/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/blitz/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/blitz/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/blitz/ticket.txt" >> $@
+ echo "$(SRCDIR)\../skins/copland/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/copland/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/copland/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/copland/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/copland/js.txt" >> $@
+ echo "$(SRCDIR)\../skins/darkmode/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/darkmode/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/darkmode/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/darkmode/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/default/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/default/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/default/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/default/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/eagle/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/eagle/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/eagle/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/eagle/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/etienne/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/etienne/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/etienne/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/etienne/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/khaki/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/khaki/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/khaki/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/khaki/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/original/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/original/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/original/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/original/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/plain_gray/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/plain_gray/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/plain_gray/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/plain_gray/header.txt" >> $@
+ echo "$(SRCDIR)\../skins/xekri/css.txt" >> $@
+ echo "$(SRCDIR)\../skins/xekri/details.txt" >> $@
+ echo "$(SRCDIR)\../skins/xekri/footer.txt" >> $@
+ echo "$(SRCDIR)\../skins/xekri/header.txt" >> $@
+ echo "$(SRCDIR)\accordion.js" >> $@
+ echo "$(SRCDIR)\alerts/bflat2.wav" >> $@
+ echo "$(SRCDIR)\alerts/bflat3.wav" >> $@
+ echo "$(SRCDIR)\alerts/bloop.wav" >> $@
+ echo "$(SRCDIR)\alerts/plunk.wav" >> $@
+ echo "$(SRCDIR)\ci_edit.js" >> $@
+ echo "$(SRCDIR)\copybtn.js" >> $@
+ echo "$(SRCDIR)\default.css" >> $@
+ echo "$(SRCDIR)\diff.js" >> $@
+ echo "$(SRCDIR)\diff.tcl" >> $@
+ echo "$(SRCDIR)\forum.js" >> $@
+ echo "$(SRCDIR)\fossil.attach.js" >> $@
+ echo "$(SRCDIR)\fossil.bootstrap.js" >> $@
+ echo "$(SRCDIR)\fossil.confirmer.js" >> $@
+ echo "$(SRCDIR)\fossil.copybutton.js" >> $@
+ echo "$(SRCDIR)\fossil.diff.js" >> $@
+ echo "$(SRCDIR)\fossil.dom.js" >> $@
+ echo "$(SRCDIR)\fossil.fetch.js" >> $@
+ echo "$(SRCDIR)\fossil.numbered-lines.js" >> $@
+ echo "$(SRCDIR)\fossil.page.brlist.js" >> $@
+ echo "$(SRCDIR)\fossil.page.chat.js" >> $@
+ echo "$(SRCDIR)\fossil.page.fileedit.js" >> $@
+ echo "$(SRCDIR)\fossil.page.forumpost.js" >> $@
+ echo "$(SRCDIR)\fossil.page.pikchrshow.js" >> $@
+ echo "$(SRCDIR)\fossil.page.pikchrshowasm.js" >> $@
+ echo "$(SRCDIR)\fossil.page.ticket.js" >> $@
+ echo "$(SRCDIR)\fossil.page.whistory.js" >> $@
+ echo "$(SRCDIR)\fossil.page.wikiedit.js" >> $@
+ echo "$(SRCDIR)\fossil.pikchr.js" >> $@
+ echo "$(SRCDIR)\fossil.popupwidget.js" >> $@
+ echo "$(SRCDIR)\fossil.storage.js" >> $@
+ echo "$(SRCDIR)\fossil.tabs.js" >> $@
+ echo "$(SRCDIR)\fossil.wikiedit-wysiwyg.js" >> $@
+ echo "$(SRCDIR)\graph.js" >> $@
+ echo "$(SRCDIR)\hbmenu.js" >> $@
+ echo "$(SRCDIR)\href.js" >> $@
+ echo "$(SRCDIR)\login.js" >> $@
+ echo "$(SRCDIR)\markdown.md" >> $@
+ echo "$(SRCDIR)\menu.js" >> $@
+ echo "$(SRCDIR)\merge.tcl" >> $@
+ echo "$(SRCDIR)\scroll.js" >> $@
+ echo "$(SRCDIR)\skin.js" >> $@
+ echo "$(SRCDIR)\sorttable.js" >> $@
+ echo "$(SRCDIR)\sounds/0.wav" >> $@
+ echo "$(SRCDIR)\sounds/1.wav" >> $@
+ echo "$(SRCDIR)\sounds/2.wav" >> $@
+ echo "$(SRCDIR)\sounds/3.wav" >> $@
+ echo "$(SRCDIR)\sounds/4.wav" >> $@
+ echo "$(SRCDIR)\sounds/5.wav" >> $@
+ echo "$(SRCDIR)\sounds/6.wav" >> $@
+ echo "$(SRCDIR)\sounds/7.wav" >> $@
+ echo "$(SRCDIR)\sounds/8.wav" >> $@
+ echo "$(SRCDIR)\sounds/9.wav" >> $@
+ echo "$(SRCDIR)\sounds/a.wav" >> $@
+ echo "$(SRCDIR)\sounds/b.wav" >> $@
+ echo "$(SRCDIR)\sounds/c.wav" >> $@
+ echo "$(SRCDIR)\sounds/d.wav" >> $@
+ echo "$(SRCDIR)\sounds/e.wav" >> $@
+ echo "$(SRCDIR)\sounds/f.wav" >> $@
+ echo "$(SRCDIR)\style.admin_log.css" >> $@
+ echo "$(SRCDIR)\style.chat.css" >> $@
+ echo "$(SRCDIR)\style.fileedit.css" >> $@
+ echo "$(SRCDIR)\style.forum.css" >> $@
+ echo "$(SRCDIR)\style.pikchrshow.css" >> $@
+ echo "$(SRCDIR)\style.uvlist.css" >> $@
+ echo "$(SRCDIR)\style.wikiedit.css" >> $@
+ echo "$(SRCDIR)\tree.js" >> $@
+ echo "$(SRCDIR)\useredit.js" >> $@
+ echo "$(SRCDIR)\wiki.wiki" >> $@
+
+"$(OX)\add$O" : "$(OX)\add_.c" "$(OX)\add.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\add_.c"
+
+"$(OX)\add_.c" : "$(SRCDIR)\add.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\ajax$O" : "$(OX)\ajax_.c" "$(OX)\ajax.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\ajax_.c"
+
+"$(OX)\ajax_.c" : "$(SRCDIR)\ajax.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\alerts$O" : "$(OX)\alerts_.c" "$(OX)\alerts.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\alerts_.c"
+
+"$(OX)\alerts_.c" : "$(SRCDIR)\alerts.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\allrepo$O" : "$(OX)\allrepo_.c" "$(OX)\allrepo.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\allrepo_.c"
+
+"$(OX)\allrepo_.c" : "$(SRCDIR)\allrepo.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\attach$O" : "$(OX)\attach_.c" "$(OX)\attach.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\attach_.c"
+
+"$(OX)\attach_.c" : "$(SRCDIR)\attach.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\backlink$O" : "$(OX)\backlink_.c" "$(OX)\backlink.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\backlink_.c"
+
+"$(OX)\backlink_.c" : "$(SRCDIR)\backlink.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\backoffice$O" : "$(OX)\backoffice_.c" "$(OX)\backoffice.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\backoffice_.c"
+
+"$(OX)\backoffice_.c" : "$(SRCDIR)\backoffice.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\bag$O" : "$(OX)\bag_.c" "$(OX)\bag.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\bag_.c"
+
+"$(OX)\bag_.c" : "$(SRCDIR)\bag.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\bisect$O" : "$(OX)\bisect_.c" "$(OX)\bisect.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\bisect_.c"
+
+"$(OX)\bisect_.c" : "$(SRCDIR)\bisect.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\blob$O" : "$(OX)\blob_.c" "$(OX)\blob.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\blob_.c"
+
+"$(OX)\blob_.c" : "$(SRCDIR)\blob.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\branch$O" : "$(OX)\branch_.c" "$(OX)\branch.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\branch_.c"
+
+"$(OX)\branch_.c" : "$(SRCDIR)\branch.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\browse$O" : "$(OX)\browse_.c" "$(OX)\browse.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\browse_.c"
+
+"$(OX)\browse_.c" : "$(SRCDIR)\browse.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\builtin$O" : "$(OX)\builtin_.c" "$(OX)\builtin.h" "$(OX)\builtin_data.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\builtin_.c"
+
+"$(OX)\builtin_.c" : "$(SRCDIR)\builtin.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\bundle$O" : "$(OX)\bundle_.c" "$(OX)\bundle.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\bundle_.c"
+
+"$(OX)\bundle_.c" : "$(SRCDIR)\bundle.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\cache$O" : "$(OX)\cache_.c" "$(OX)\cache.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\cache_.c"
+
+"$(OX)\cache_.c" : "$(SRCDIR)\cache.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\capabilities$O" : "$(OX)\capabilities_.c" "$(OX)\capabilities.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\capabilities_.c"
+
+"$(OX)\capabilities_.c" : "$(SRCDIR)\capabilities.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\captcha$O" : "$(OX)\captcha_.c" "$(OX)\captcha.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\captcha_.c"
+
+"$(OX)\captcha_.c" : "$(SRCDIR)\captcha.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\cgi$O" : "$(OX)\cgi_.c" "$(OX)\cgi.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\cgi_.c"
+
+"$(OX)\cgi_.c" : "$(SRCDIR)\cgi.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\chat$O" : "$(OX)\chat_.c" "$(OX)\chat.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\chat_.c"
+
+"$(OX)\chat_.c" : "$(SRCDIR)\chat.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\checkin$O" : "$(OX)\checkin_.c" "$(OX)\checkin.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\checkin_.c"
+
+"$(OX)\checkin_.c" : "$(SRCDIR)\checkin.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\checkout$O" : "$(OX)\checkout_.c" "$(OX)\checkout.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\checkout_.c"
+
+"$(OX)\checkout_.c" : "$(SRCDIR)\checkout.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\clearsign$O" : "$(OX)\clearsign_.c" "$(OX)\clearsign.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\clearsign_.c"
+
+"$(OX)\clearsign_.c" : "$(SRCDIR)\clearsign.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\clone$O" : "$(OX)\clone_.c" "$(OX)\clone.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\clone_.c"
+
+"$(OX)\clone_.c" : "$(SRCDIR)\clone.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\color$O" : "$(OX)\color_.c" "$(OX)\color.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\color_.c"
+
+"$(OX)\color_.c" : "$(SRCDIR)\color.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\comformat$O" : "$(OX)\comformat_.c" "$(OX)\comformat.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\comformat_.c"
+
+"$(OX)\comformat_.c" : "$(SRCDIR)\comformat.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\configure$O" : "$(OX)\configure_.c" "$(OX)\configure.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\configure_.c"
+
+"$(OX)\configure_.c" : "$(SRCDIR)\configure.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\content$O" : "$(OX)\content_.c" "$(OX)\content.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\content_.c"
+
+"$(OX)\content_.c" : "$(SRCDIR)\content.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\cookies$O" : "$(OX)\cookies_.c" "$(OX)\cookies.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\cookies_.c"
+
+"$(OX)\cookies_.c" : "$(SRCDIR)\cookies.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\db$O" : "$(OX)\db_.c" "$(OX)\db.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\db_.c"
+
+"$(OX)\db_.c" : "$(SRCDIR)\db.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\delta$O" : "$(OX)\delta_.c" "$(OX)\delta.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\delta_.c"
+
+"$(OX)\delta_.c" : "$(SRCDIR)\delta.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\deltacmd$O" : "$(OX)\deltacmd_.c" "$(OX)\deltacmd.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\deltacmd_.c"
+
+"$(OX)\deltacmd_.c" : "$(SRCDIR)\deltacmd.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\deltafunc$O" : "$(OX)\deltafunc_.c" "$(OX)\deltafunc.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\deltafunc_.c"
+
+"$(OX)\deltafunc_.c" : "$(SRCDIR)\deltafunc.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\descendants$O" : "$(OX)\descendants_.c" "$(OX)\descendants.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\descendants_.c"
+
+"$(OX)\descendants_.c" : "$(SRCDIR)\descendants.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\diff$O" : "$(OX)\diff_.c" "$(OX)\diff.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\diff_.c"
+
+"$(OX)\diff_.c" : "$(SRCDIR)\diff.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\diffcmd$O" : "$(OX)\diffcmd_.c" "$(OX)\diffcmd.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\diffcmd_.c"
+
+"$(OX)\diffcmd_.c" : "$(SRCDIR)\diffcmd.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\dispatch$O" : "$(OX)\dispatch_.c" "$(OX)\dispatch.h" "$(OX)\page_index.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\dispatch_.c"
+
+"$(OX)\dispatch_.c" : "$(SRCDIR)\dispatch.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\doc$O" : "$(OX)\doc_.c" "$(OX)\doc.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\doc_.c"
+
+"$(OX)\doc_.c" : "$(SRCDIR)\doc.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\encode$O" : "$(OX)\encode_.c" "$(OX)\encode.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\encode_.c"
+
+"$(OX)\encode_.c" : "$(SRCDIR)\encode.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\etag$O" : "$(OX)\etag_.c" "$(OX)\etag.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\etag_.c"
+
+"$(OX)\etag_.c" : "$(SRCDIR)\etag.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\event$O" : "$(OX)\event_.c" "$(OX)\event.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\event_.c"
+
+"$(OX)\event_.c" : "$(SRCDIR)\event.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\export$O" : "$(OX)\export_.c" "$(OX)\export.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\export_.c"
+
+"$(OX)\export_.c" : "$(SRCDIR)\export.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\extcgi$O" : "$(OX)\extcgi_.c" "$(OX)\extcgi.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\extcgi_.c"
+
+"$(OX)\extcgi_.c" : "$(SRCDIR)\extcgi.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\file$O" : "$(OX)\file_.c" "$(OX)\file.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\file_.c"
+
+"$(OX)\file_.c" : "$(SRCDIR)\file.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\fileedit$O" : "$(OX)\fileedit_.c" "$(OX)\fileedit.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\fileedit_.c"
+
+"$(OX)\fileedit_.c" : "$(SRCDIR)\fileedit.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\finfo$O" : "$(OX)\finfo_.c" "$(OX)\finfo.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\finfo_.c"
+
+"$(OX)\finfo_.c" : "$(SRCDIR)\finfo.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\foci$O" : "$(OX)\foci_.c" "$(OX)\foci.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\foci_.c"
+
+"$(OX)\foci_.c" : "$(SRCDIR)\foci.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\forum$O" : "$(OX)\forum_.c" "$(OX)\forum.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\forum_.c"
+
+"$(OX)\forum_.c" : "$(SRCDIR)\forum.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\fshell$O" : "$(OX)\fshell_.c" "$(OX)\fshell.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\fshell_.c"
+
+"$(OX)\fshell_.c" : "$(SRCDIR)\fshell.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\fusefs$O" : "$(OX)\fusefs_.c" "$(OX)\fusefs.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\fusefs_.c"
+
+"$(OX)\fusefs_.c" : "$(SRCDIR)\fusefs.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\fuzz$O" : "$(OX)\fuzz_.c" "$(OX)\fuzz.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\fuzz_.c"
+
+"$(OX)\fuzz_.c" : "$(SRCDIR)\fuzz.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\glob$O" : "$(OX)\glob_.c" "$(OX)\glob.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\glob_.c"
+
+"$(OX)\glob_.c" : "$(SRCDIR)\glob.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\graph$O" : "$(OX)\graph_.c" "$(OX)\graph.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\graph_.c"
+
+"$(OX)\graph_.c" : "$(SRCDIR)\graph.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\gzip$O" : "$(OX)\gzip_.c" "$(OX)\gzip.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\gzip_.c"
+
+"$(OX)\gzip_.c" : "$(SRCDIR)\gzip.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\hname$O" : "$(OX)\hname_.c" "$(OX)\hname.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\hname_.c"
+
+"$(OX)\hname_.c" : "$(SRCDIR)\hname.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\hook$O" : "$(OX)\hook_.c" "$(OX)\hook.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\hook_.c"
+
+"$(OX)\hook_.c" : "$(SRCDIR)\hook.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\http$O" : "$(OX)\http_.c" "$(OX)\http.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\http_.c"
+
+"$(OX)\http_.c" : "$(SRCDIR)\http.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\http_socket$O" : "$(OX)\http_socket_.c" "$(OX)\http_socket.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\http_socket_.c"
+
+"$(OX)\http_socket_.c" : "$(SRCDIR)\http_socket.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\http_ssl$O" : "$(OX)\http_ssl_.c" "$(OX)\http_ssl.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\http_ssl_.c"
+
+"$(OX)\http_ssl_.c" : "$(SRCDIR)\http_ssl.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\http_transport$O" : "$(OX)\http_transport_.c" "$(OX)\http_transport.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\http_transport_.c"
+
+"$(OX)\http_transport_.c" : "$(SRCDIR)\http_transport.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\import$O" : "$(OX)\import_.c" "$(OX)\import.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\import_.c"
+
+"$(OX)\import_.c" : "$(SRCDIR)\import.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\info$O" : "$(OX)\info_.c" "$(OX)\info.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\info_.c"
+
+"$(OX)\info_.c" : "$(SRCDIR)\info.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\interwiki$O" : "$(OX)\interwiki_.c" "$(OX)\interwiki.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\interwiki_.c"
+
+"$(OX)\interwiki_.c" : "$(SRCDIR)\interwiki.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json$O" : "$(OX)\json_.c" "$(OX)\json.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_.c"
+
+"$(OX)\json_.c" : "$(SRCDIR)\json.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_artifact$O" : "$(OX)\json_artifact_.c" "$(OX)\json_artifact.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_artifact_.c"
+
+"$(OX)\json_artifact_.c" : "$(SRCDIR)\json_artifact.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_branch$O" : "$(OX)\json_branch_.c" "$(OX)\json_branch.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_branch_.c"
+
+"$(OX)\json_branch_.c" : "$(SRCDIR)\json_branch.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_config$O" : "$(OX)\json_config_.c" "$(OX)\json_config.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_config_.c"
+
+"$(OX)\json_config_.c" : "$(SRCDIR)\json_config.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_diff$O" : "$(OX)\json_diff_.c" "$(OX)\json_diff.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_diff_.c"
+
+"$(OX)\json_diff_.c" : "$(SRCDIR)\json_diff.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_dir$O" : "$(OX)\json_dir_.c" "$(OX)\json_dir.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_dir_.c"
+
+"$(OX)\json_dir_.c" : "$(SRCDIR)\json_dir.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_finfo$O" : "$(OX)\json_finfo_.c" "$(OX)\json_finfo.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_finfo_.c"
+
+"$(OX)\json_finfo_.c" : "$(SRCDIR)\json_finfo.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_login$O" : "$(OX)\json_login_.c" "$(OX)\json_login.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_login_.c"
+
+"$(OX)\json_login_.c" : "$(SRCDIR)\json_login.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_query$O" : "$(OX)\json_query_.c" "$(OX)\json_query.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_query_.c"
+
+"$(OX)\json_query_.c" : "$(SRCDIR)\json_query.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_report$O" : "$(OX)\json_report_.c" "$(OX)\json_report.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_report_.c"
+
+"$(OX)\json_report_.c" : "$(SRCDIR)\json_report.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_status$O" : "$(OX)\json_status_.c" "$(OX)\json_status.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_status_.c"
+
+"$(OX)\json_status_.c" : "$(SRCDIR)\json_status.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_tag$O" : "$(OX)\json_tag_.c" "$(OX)\json_tag.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_tag_.c"
+
+"$(OX)\json_tag_.c" : "$(SRCDIR)\json_tag.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_timeline$O" : "$(OX)\json_timeline_.c" "$(OX)\json_timeline.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_timeline_.c"
+
+"$(OX)\json_timeline_.c" : "$(SRCDIR)\json_timeline.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_user$O" : "$(OX)\json_user_.c" "$(OX)\json_user.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_user_.c"
+
+"$(OX)\json_user_.c" : "$(SRCDIR)\json_user.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\json_wiki$O" : "$(OX)\json_wiki_.c" "$(OX)\json_wiki.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\json_wiki_.c"
+
+"$(OX)\json_wiki_.c" : "$(SRCDIR)\json_wiki.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\leaf$O" : "$(OX)\leaf_.c" "$(OX)\leaf.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\leaf_.c"
+
+"$(OX)\leaf_.c" : "$(SRCDIR)\leaf.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\loadctrl$O" : "$(OX)\loadctrl_.c" "$(OX)\loadctrl.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\loadctrl_.c"
+
+"$(OX)\loadctrl_.c" : "$(SRCDIR)\loadctrl.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\login$O" : "$(OX)\login_.c" "$(OX)\login.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\login_.c"
+
+"$(OX)\login_.c" : "$(SRCDIR)\login.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\lookslike$O" : "$(OX)\lookslike_.c" "$(OX)\lookslike.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\lookslike_.c"
+
+"$(OX)\lookslike_.c" : "$(SRCDIR)\lookslike.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\main$O" : "$(OX)\main_.c" "$(OX)\main.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\main_.c"
+
+"$(OX)\main_.c" : "$(SRCDIR)\main.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\manifest$O" : "$(OX)\manifest_.c" "$(OX)\manifest.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\manifest_.c"
+
+"$(OX)\manifest_.c" : "$(SRCDIR)\manifest.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\markdown$O" : "$(OX)\markdown_.c" "$(OX)\markdown.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\markdown_.c"
+
+"$(OX)\markdown_.c" : "$(SRCDIR)\markdown.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\markdown_html$O" : "$(OX)\markdown_html_.c" "$(OX)\markdown_html.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\markdown_html_.c"
+
+"$(OX)\markdown_html_.c" : "$(SRCDIR)\markdown_html.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\match$O" : "$(OX)\match_.c" "$(OX)\match.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\match_.c"
+
+"$(OX)\match_.c" : "$(SRCDIR)\match.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\md5$O" : "$(OX)\md5_.c" "$(OX)\md5.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\md5_.c"
+
+"$(OX)\md5_.c" : "$(SRCDIR)\md5.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\merge$O" : "$(OX)\merge_.c" "$(OX)\merge.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\merge_.c"
+
+"$(OX)\merge_.c" : "$(SRCDIR)\merge.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\merge3$O" : "$(OX)\merge3_.c" "$(OX)\merge3.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\merge3_.c"
+
+"$(OX)\merge3_.c" : "$(SRCDIR)\merge3.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\moderate$O" : "$(OX)\moderate_.c" "$(OX)\moderate.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\moderate_.c"
+
+"$(OX)\moderate_.c" : "$(SRCDIR)\moderate.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\name$O" : "$(OX)\name_.c" "$(OX)\name.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\name_.c"
+
+"$(OX)\name_.c" : "$(SRCDIR)\name.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\org$O" : "$(OX)\org_.c" "$(OX)\org.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\org_.c"
+
+"$(OX)\org_.c" : "$(SRCDIR)\org.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\patch$O" : "$(OX)\patch_.c" "$(OX)\patch.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\patch_.c"
+
+"$(OX)\patch_.c" : "$(SRCDIR)\patch.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\path$O" : "$(OX)\path_.c" "$(OX)\path.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\path_.c"
+
+"$(OX)\path_.c" : "$(SRCDIR)\path.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\piechart$O" : "$(OX)\piechart_.c" "$(OX)\piechart.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\piechart_.c"
+
+"$(OX)\piechart_.c" : "$(SRCDIR)\piechart.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\pikchrshow$O" : "$(OX)\pikchrshow_.c" "$(OX)\pikchrshow.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\pikchrshow_.c"
+
+"$(OX)\pikchrshow_.c" : "$(SRCDIR)\pikchrshow.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\pivot$O" : "$(OX)\pivot_.c" "$(OX)\pivot.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\pivot_.c"
+
+"$(OX)\pivot_.c" : "$(SRCDIR)\pivot.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\popen$O" : "$(OX)\popen_.c" "$(OX)\popen.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\popen_.c"
+
+"$(OX)\popen_.c" : "$(SRCDIR)\popen.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\pqueue$O" : "$(OX)\pqueue_.c" "$(OX)\pqueue.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\pqueue_.c"
+
+"$(OX)\pqueue_.c" : "$(SRCDIR)\pqueue.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\printf$O" : "$(OX)\printf_.c" "$(OX)\printf.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\printf_.c"
+
+"$(OX)\printf_.c" : "$(SRCDIR)\printf.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\publish$O" : "$(OX)\publish_.c" "$(OX)\publish.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\publish_.c"
+
+"$(OX)\publish_.c" : "$(SRCDIR)\publish.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\purge$O" : "$(OX)\purge_.c" "$(OX)\purge.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\purge_.c"
+
+"$(OX)\purge_.c" : "$(SRCDIR)\purge.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\rebuild$O" : "$(OX)\rebuild_.c" "$(OX)\rebuild.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\rebuild_.c"
+
+"$(OX)\rebuild_.c" : "$(SRCDIR)\rebuild.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\regexp$O" : "$(OX)\regexp_.c" "$(OX)\regexp.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\regexp_.c"
+
+"$(OX)\regexp_.c" : "$(SRCDIR)\regexp.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\repolist$O" : "$(OX)\repolist_.c" "$(OX)\repolist.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\repolist_.c"
+
+"$(OX)\repolist_.c" : "$(SRCDIR)\repolist.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\report$O" : "$(OX)\report_.c" "$(OX)\report.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\report_.c"
+
+"$(OX)\report_.c" : "$(SRCDIR)\report.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\robot$O" : "$(OX)\robot_.c" "$(OX)\robot.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\robot_.c"
+
+"$(OX)\robot_.c" : "$(SRCDIR)\robot.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\rss$O" : "$(OX)\rss_.c" "$(OX)\rss.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\rss_.c"
+
+"$(OX)\rss_.c" : "$(SRCDIR)\rss.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\schema$O" : "$(OX)\schema_.c" "$(OX)\schema.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\schema_.c"
+
+"$(OX)\schema_.c" : "$(SRCDIR)\schema.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\search$O" : "$(OX)\search_.c" "$(OX)\search.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\search_.c"
+
+"$(OX)\search_.c" : "$(SRCDIR)\search.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\security_audit$O" : "$(OX)\security_audit_.c" "$(OX)\security_audit.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\security_audit_.c"
+
+"$(OX)\security_audit_.c" : "$(SRCDIR)\security_audit.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\setup$O" : "$(OX)\setup_.c" "$(OX)\setup.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\setup_.c"
+
+"$(OX)\setup_.c" : "$(SRCDIR)\setup.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\setupuser$O" : "$(OX)\setupuser_.c" "$(OX)\setupuser.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\setupuser_.c"
+
+"$(OX)\setupuser_.c" : "$(SRCDIR)\setupuser.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sha1$O" : "$(OX)\sha1_.c" "$(OX)\sha1.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sha1_.c"
+
+"$(OX)\sha1_.c" : "$(SRCDIR)\sha1.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sha1hard$O" : "$(OX)\sha1hard_.c" "$(OX)\sha1hard.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sha1hard_.c"
+
+"$(OX)\sha1hard_.c" : "$(SRCDIR)\sha1hard.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sha3$O" : "$(OX)\sha3_.c" "$(OX)\sha3.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sha3_.c"
+
+"$(OX)\sha3_.c" : "$(SRCDIR)\sha3.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\shun$O" : "$(OX)\shun_.c" "$(OX)\shun.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\shun_.c"
+
+"$(OX)\shun_.c" : "$(SRCDIR)\shun.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sitemap$O" : "$(OX)\sitemap_.c" "$(OX)\sitemap.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sitemap_.c"
+
+"$(OX)\sitemap_.c" : "$(SRCDIR)\sitemap.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\skins$O" : "$(OX)\skins_.c" "$(OX)\skins.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\skins_.c"
+
+"$(OX)\skins_.c" : "$(SRCDIR)\skins.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\smtp$O" : "$(OX)\smtp_.c" "$(OX)\smtp.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\smtp_.c"
+
+"$(OX)\smtp_.c" : "$(SRCDIR)\smtp.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sqlcmd$O" : "$(OX)\sqlcmd_.c" "$(OX)\sqlcmd.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sqlcmd_.c"
+
+"$(OX)\sqlcmd_.c" : "$(SRCDIR)\sqlcmd.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\stash$O" : "$(OX)\stash_.c" "$(OX)\stash.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\stash_.c"
+
+"$(OX)\stash_.c" : "$(SRCDIR)\stash.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\stat$O" : "$(OX)\stat_.c" "$(OX)\stat.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\stat_.c"
+
+"$(OX)\stat_.c" : "$(SRCDIR)\stat.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\statrep$O" : "$(OX)\statrep_.c" "$(OX)\statrep.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\statrep_.c"
+
+"$(OX)\statrep_.c" : "$(SRCDIR)\statrep.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\style$O" : "$(OX)\style_.c" "$(OX)\style.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\style_.c"
+
+"$(OX)\style_.c" : "$(SRCDIR)\style.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\sync$O" : "$(OX)\sync_.c" "$(OX)\sync.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\sync_.c"
+
+"$(OX)\sync_.c" : "$(SRCDIR)\sync.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\tag$O" : "$(OX)\tag_.c" "$(OX)\tag.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\tag_.c"
+
+"$(OX)\tag_.c" : "$(SRCDIR)\tag.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\tar$O" : "$(OX)\tar_.c" "$(OX)\tar.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\tar_.c"
+
+"$(OX)\tar_.c" : "$(SRCDIR)\tar.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\terminal$O" : "$(OX)\terminal_.c" "$(OX)\terminal.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\terminal_.c"
+
+"$(OX)\terminal_.c" : "$(SRCDIR)\terminal.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\th_main$O" : "$(OX)\th_main_.c" "$(OX)\th_main.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\th_main_.c"
+
+"$(OX)\th_main_.c" : "$(SRCDIR)\th_main.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\timeline$O" : "$(OX)\timeline_.c" "$(OX)\timeline.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\timeline_.c"
+
+"$(OX)\timeline_.c" : "$(SRCDIR)\timeline.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\tkt$O" : "$(OX)\tkt_.c" "$(OX)\tkt.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\tkt_.c"
+
+"$(OX)\tkt_.c" : "$(SRCDIR)\tkt.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\tktsetup$O" : "$(OX)\tktsetup_.c" "$(OX)\tktsetup.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\tktsetup_.c"
+
+"$(OX)\tktsetup_.c" : "$(SRCDIR)\tktsetup.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\undo$O" : "$(OX)\undo_.c" "$(OX)\undo.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\undo_.c"
+
+"$(OX)\undo_.c" : "$(SRCDIR)\undo.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\unicode$O" : "$(OX)\unicode_.c" "$(OX)\unicode.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\unicode_.c"
+
+"$(OX)\unicode_.c" : "$(SRCDIR)\unicode.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\unversioned$O" : "$(OX)\unversioned_.c" "$(OX)\unversioned.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\unversioned_.c"
+
+"$(OX)\unversioned_.c" : "$(SRCDIR)\unversioned.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\update$O" : "$(OX)\update_.c" "$(OX)\update.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\update_.c"
+
+"$(OX)\update_.c" : "$(SRCDIR)\update.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\url$O" : "$(OX)\url_.c" "$(OX)\url.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\url_.c"
+
+"$(OX)\url_.c" : "$(SRCDIR)\url.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\user$O" : "$(OX)\user_.c" "$(OX)\user.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\user_.c"
+
+"$(OX)\user_.c" : "$(SRCDIR)\user.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\utf8$O" : "$(OX)\utf8_.c" "$(OX)\utf8.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\utf8_.c"
+
+"$(OX)\utf8_.c" : "$(SRCDIR)\utf8.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\util$O" : "$(OX)\util_.c" "$(OX)\util.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\util_.c"
+
+"$(OX)\util_.c" : "$(SRCDIR)\util.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\verify$O" : "$(OX)\verify_.c" "$(OX)\verify.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\verify_.c"
+
+"$(OX)\verify_.c" : "$(SRCDIR)\verify.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\vfile$O" : "$(OX)\vfile_.c" "$(OX)\vfile.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\vfile_.c"
+
+"$(OX)\vfile_.c" : "$(SRCDIR)\vfile.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\wiki$O" : "$(OX)\wiki_.c" "$(OX)\wiki.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\wiki_.c"
+
+"$(OX)\wiki_.c" : "$(SRCDIR)\wiki.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\wikiformat$O" : "$(OX)\wikiformat_.c" "$(OX)\wikiformat.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\wikiformat_.c"
+
+"$(OX)\wikiformat_.c" : "$(SRCDIR)\wikiformat.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\winfile$O" : "$(OX)\winfile_.c" "$(OX)\winfile.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\winfile_.c"
+
+"$(OX)\winfile_.c" : "$(SRCDIR)\winfile.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\winhttp$O" : "$(OX)\winhttp_.c" "$(OX)\winhttp.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\winhttp_.c"
+
+"$(OX)\winhttp_.c" : "$(SRCDIR)\winhttp.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\xfer$O" : "$(OX)\xfer_.c" "$(OX)\xfer.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\xfer_.c"
+
+"$(OX)\xfer_.c" : "$(SRCDIR)\xfer.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\xfersetup$O" : "$(OX)\xfersetup_.c" "$(OX)\xfersetup.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\xfersetup_.c"
+
+"$(OX)\xfersetup_.c" : "$(SRCDIR)\xfersetup.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\xsystem$O" : "$(OX)\xsystem_.c" "$(OX)\xsystem.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\xsystem_.c"
+
+"$(OX)\xsystem_.c" : "$(SRCDIR)\xsystem.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\zip$O" : "$(OX)\zip_.c" "$(OX)\zip.h"
+ $(TCC) /Fo$@ /Fd$(@D)\ -c "$(OX)\zip_.c"
+
+"$(OX)\zip_.c" : "$(SRCDIR)\zip.c"
+ "$(OBJDIR)\translate$E" $** > $@
+
+"$(OX)\fossil.res" : "$(B)\win\fossil.rc"
+ $(RCC) /fo $@ $**
+
+"$(OX)\headers": "$(OBJDIR)\makeheaders$E" "$(OX)\page_index.h" "$(OX)\builtin_data.h" "$(OX)\VERSION.h"
+ "$(OBJDIR)\makeheaders$E" "$(OX)\add_.c":"$(OX)\add.h" \
+ "$(OX)\ajax_.c":"$(OX)\ajax.h" \
+ "$(OX)\alerts_.c":"$(OX)\alerts.h" \
+ "$(OX)\allrepo_.c":"$(OX)\allrepo.h" \
+ "$(OX)\attach_.c":"$(OX)\attach.h" \
+ "$(OX)\backlink_.c":"$(OX)\backlink.h" \
+ "$(OX)\backoffice_.c":"$(OX)\backoffice.h" \
+ "$(OX)\bag_.c":"$(OX)\bag.h" \
+ "$(OX)\bisect_.c":"$(OX)\bisect.h" \
+ "$(OX)\blob_.c":"$(OX)\blob.h" \
+ "$(OX)\branch_.c":"$(OX)\branch.h" \
+ "$(OX)\browse_.c":"$(OX)\browse.h" \
+ "$(OX)\builtin_.c":"$(OX)\builtin.h" \
+ "$(OX)\bundle_.c":"$(OX)\bundle.h" \
+ "$(OX)\cache_.c":"$(OX)\cache.h" \
+ "$(OX)\capabilities_.c":"$(OX)\capabilities.h" \
+ "$(OX)\captcha_.c":"$(OX)\captcha.h" \
+ "$(OX)\cgi_.c":"$(OX)\cgi.h" \
+ "$(OX)\chat_.c":"$(OX)\chat.h" \
+ "$(OX)\checkin_.c":"$(OX)\checkin.h" \
+ "$(OX)\checkout_.c":"$(OX)\checkout.h" \
+ "$(OX)\clearsign_.c":"$(OX)\clearsign.h" \
+ "$(OX)\clone_.c":"$(OX)\clone.h" \
+ "$(OX)\color_.c":"$(OX)\color.h" \
+ "$(OX)\comformat_.c":"$(OX)\comformat.h" \
+ "$(OX)\configure_.c":"$(OX)\configure.h" \
+ "$(OX)\content_.c":"$(OX)\content.h" \
+ "$(OX)\cookies_.c":"$(OX)\cookies.h" \
+ "$(OX)\db_.c":"$(OX)\db.h" \
+ "$(OX)\delta_.c":"$(OX)\delta.h" \
+ "$(OX)\deltacmd_.c":"$(OX)\deltacmd.h" \
+ "$(OX)\deltafunc_.c":"$(OX)\deltafunc.h" \
+ "$(OX)\descendants_.c":"$(OX)\descendants.h" \
+ "$(OX)\diff_.c":"$(OX)\diff.h" \
+ "$(OX)\diffcmd_.c":"$(OX)\diffcmd.h" \
+ "$(OX)\dispatch_.c":"$(OX)\dispatch.h" \
+ "$(OX)\doc_.c":"$(OX)\doc.h" \
+ "$(OX)\encode_.c":"$(OX)\encode.h" \
+ "$(OX)\etag_.c":"$(OX)\etag.h" \
+ "$(OX)\event_.c":"$(OX)\event.h" \
+ "$(OX)\export_.c":"$(OX)\export.h" \
+ "$(OX)\extcgi_.c":"$(OX)\extcgi.h" \
+ "$(OX)\file_.c":"$(OX)\file.h" \
+ "$(OX)\fileedit_.c":"$(OX)\fileedit.h" \
+ "$(OX)\finfo_.c":"$(OX)\finfo.h" \
+ "$(OX)\foci_.c":"$(OX)\foci.h" \
+ "$(OX)\forum_.c":"$(OX)\forum.h" \
+ "$(OX)\fshell_.c":"$(OX)\fshell.h" \
+ "$(OX)\fusefs_.c":"$(OX)\fusefs.h" \
+ "$(OX)\fuzz_.c":"$(OX)\fuzz.h" \
+ "$(OX)\glob_.c":"$(OX)\glob.h" \
+ "$(OX)\graph_.c":"$(OX)\graph.h" \
+ "$(OX)\gzip_.c":"$(OX)\gzip.h" \
+ "$(OX)\hname_.c":"$(OX)\hname.h" \
+ "$(OX)\hook_.c":"$(OX)\hook.h" \
+ "$(OX)\http_.c":"$(OX)\http.h" \
+ "$(OX)\http_socket_.c":"$(OX)\http_socket.h" \
+ "$(OX)\http_ssl_.c":"$(OX)\http_ssl.h" \
+ "$(OX)\http_transport_.c":"$(OX)\http_transport.h" \
+ "$(OX)\import_.c":"$(OX)\import.h" \
+ "$(OX)\info_.c":"$(OX)\info.h" \
+ "$(OX)\interwiki_.c":"$(OX)\interwiki.h" \
+ "$(OX)\json_.c":"$(OX)\json.h" \
+ "$(OX)\json_artifact_.c":"$(OX)\json_artifact.h" \
+ "$(OX)\json_branch_.c":"$(OX)\json_branch.h" \
+ "$(OX)\json_config_.c":"$(OX)\json_config.h" \
+ "$(OX)\json_diff_.c":"$(OX)\json_diff.h" \
+ "$(OX)\json_dir_.c":"$(OX)\json_dir.h" \
+ "$(OX)\json_finfo_.c":"$(OX)\json_finfo.h" \
+ "$(OX)\json_login_.c":"$(OX)\json_login.h" \
+ "$(OX)\json_query_.c":"$(OX)\json_query.h" \
+ "$(OX)\json_report_.c":"$(OX)\json_report.h" \
+ "$(OX)\json_status_.c":"$(OX)\json_status.h" \
+ "$(OX)\json_tag_.c":"$(OX)\json_tag.h" \
+ "$(OX)\json_timeline_.c":"$(OX)\json_timeline.h" \
+ "$(OX)\json_user_.c":"$(OX)\json_user.h" \
+ "$(OX)\json_wiki_.c":"$(OX)\json_wiki.h" \
+ "$(OX)\leaf_.c":"$(OX)\leaf.h" \
+ "$(OX)\loadctrl_.c":"$(OX)\loadctrl.h" \
+ "$(OX)\login_.c":"$(OX)\login.h" \
+ "$(OX)\lookslike_.c":"$(OX)\lookslike.h" \
+ "$(OX)\main_.c":"$(OX)\main.h" \
+ "$(OX)\manifest_.c":"$(OX)\manifest.h" \
+ "$(OX)\markdown_.c":"$(OX)\markdown.h" \
+ "$(OX)\markdown_html_.c":"$(OX)\markdown_html.h" \
+ "$(OX)\match_.c":"$(OX)\match.h" \
+ "$(OX)\md5_.c":"$(OX)\md5.h" \
+ "$(OX)\merge_.c":"$(OX)\merge.h" \
+ "$(OX)\merge3_.c":"$(OX)\merge3.h" \
+ "$(OX)\moderate_.c":"$(OX)\moderate.h" \
+ "$(OX)\name_.c":"$(OX)\name.h" \
+ "$(OX)\org_.c":"$(OX)\org.h" \
+ "$(OX)\patch_.c":"$(OX)\patch.h" \
+ "$(OX)\path_.c":"$(OX)\path.h" \
+ "$(OX)\piechart_.c":"$(OX)\piechart.h" \
+ "$(OX)\pikchrshow_.c":"$(OX)\pikchrshow.h" \
+ "$(OX)\pivot_.c":"$(OX)\pivot.h" \
+ "$(OX)\popen_.c":"$(OX)\popen.h" \
+ "$(OX)\pqueue_.c":"$(OX)\pqueue.h" \
+ "$(OX)\printf_.c":"$(OX)\printf.h" \
+ "$(OX)\publish_.c":"$(OX)\publish.h" \
+ "$(OX)\purge_.c":"$(OX)\purge.h" \
+ "$(OX)\rebuild_.c":"$(OX)\rebuild.h" \
+ "$(OX)\regexp_.c":"$(OX)\regexp.h" \
+ "$(OX)\repolist_.c":"$(OX)\repolist.h" \
+ "$(OX)\report_.c":"$(OX)\report.h" \
+ "$(OX)\robot_.c":"$(OX)\robot.h" \
+ "$(OX)\rss_.c":"$(OX)\rss.h" \
+ "$(OX)\schema_.c":"$(OX)\schema.h" \
+ "$(OX)\search_.c":"$(OX)\search.h" \
+ "$(OX)\security_audit_.c":"$(OX)\security_audit.h" \
+ "$(OX)\setup_.c":"$(OX)\setup.h" \
+ "$(OX)\setupuser_.c":"$(OX)\setupuser.h" \
+ "$(OX)\sha1_.c":"$(OX)\sha1.h" \
+ "$(OX)\sha1hard_.c":"$(OX)\sha1hard.h" \
+ "$(OX)\sha3_.c":"$(OX)\sha3.h" \
+ "$(OX)\shun_.c":"$(OX)\shun.h" \
+ "$(OX)\sitemap_.c":"$(OX)\sitemap.h" \
+ "$(OX)\skins_.c":"$(OX)\skins.h" \
+ "$(OX)\smtp_.c":"$(OX)\smtp.h" \
+ "$(OX)\sqlcmd_.c":"$(OX)\sqlcmd.h" \
+ "$(OX)\stash_.c":"$(OX)\stash.h" \
+ "$(OX)\stat_.c":"$(OX)\stat.h" \
+ "$(OX)\statrep_.c":"$(OX)\statrep.h" \
+ "$(OX)\style_.c":"$(OX)\style.h" \
+ "$(OX)\sync_.c":"$(OX)\sync.h" \
+ "$(OX)\tag_.c":"$(OX)\tag.h" \
+ "$(OX)\tar_.c":"$(OX)\tar.h" \
+ "$(OX)\terminal_.c":"$(OX)\terminal.h" \
+ "$(OX)\th_main_.c":"$(OX)\th_main.h" \
+ "$(OX)\timeline_.c":"$(OX)\timeline.h" \
+ "$(OX)\tkt_.c":"$(OX)\tkt.h" \
+ "$(OX)\tktsetup_.c":"$(OX)\tktsetup.h" \
+ "$(OX)\undo_.c":"$(OX)\undo.h" \
+ "$(OX)\unicode_.c":"$(OX)\unicode.h" \
+ "$(OX)\unversioned_.c":"$(OX)\unversioned.h" \
+ "$(OX)\update_.c":"$(OX)\update.h" \
+ "$(OX)\url_.c":"$(OX)\url.h" \
+ "$(OX)\user_.c":"$(OX)\user.h" \
+ "$(OX)\utf8_.c":"$(OX)\utf8.h" \
+ "$(OX)\util_.c":"$(OX)\util.h" \
+ "$(OX)\verify_.c":"$(OX)\verify.h" \
+ "$(OX)\vfile_.c":"$(OX)\vfile.h" \
+ "$(OX)\wiki_.c":"$(OX)\wiki.h" \
+ "$(OX)\wikiformat_.c":"$(OX)\wikiformat.h" \
+ "$(OX)\winfile_.c":"$(OX)\winfile.h" \
+ "$(OX)\winhttp_.c":"$(OX)\winhttp.h" \
+ "$(OX)\xfer_.c":"$(OX)\xfer.h" \
+ "$(OX)\xfersetup_.c":"$(OX)\xfersetup.h" \
+ "$(OX)\xsystem_.c":"$(OX)\xsystem.h" \
+ "$(OX)\zip_.c":"$(OX)\zip.h" \
+ "$(SRCDIR_extsrc)\pikchr.c":"$(OX)\pikchr.h" \
+ "$(SRCDIR_extsrc)\sqlite3.h" \
+ "$(SRCDIR)\th.h" \
+ "$(OX)\VERSION.h" \
+ "$(SRCDIR_extsrc)\cson_amalgamation.h"
+ @copy /Y nul: $@
diff --git a/win/build32.bat b/win/build32.bat
new file mode 100644
index 0000000..f73bee6
--- /dev/null
+++ b/win/build32.bat
@@ -0,0 +1,3 @@
+REM Based on /wiki/Release%20Build%20How-To
+nmake /f Makefile.msc FOSSIL_ENABLE_SSL=1 FOSSIL_ENABLE_WINXP=1 OPTIMIZATIONS=4 clean fossil.exe
+dumpbin /dependents fossil.exe
diff --git a/win/build64.bat b/win/build64.bat
new file mode 100644
index 0000000..10e3408
--- /dev/null
+++ b/win/build64.bat
@@ -0,0 +1,3 @@
+REM Based on /wiki/Release%20Build%20How-To
+nmake /f Makefile.msc FOSSIL_ENABLE_SSL=1 OPTIMIZATIONS=4 clean fossil.exe
+dumpbin /dependents fossil.exe
diff --git a/win/buildmsvc.bat b/win/buildmsvc.bat
new file mode 100755
index 0000000..cf39a35
--- /dev/null
+++ b/win/buildmsvc.bat
@@ -0,0 +1,413 @@
+@ECHO OFF
+
+::
+:: buildmsvc.bat --
+::
+:: This batch file attempts to build Fossil using the latest version of
+:: Microsoft Visual Studio installed on this machine.
+::
+:: For VS 2017 and later, it uses the x64 build tools by default;
+:: pass "x86" as the first argument to use the x86 tools.
+::
+
+SETLOCAL
+
+REM SET __ECHO=ECHO
+REM SET __ECHO2=ECHO
+IF NOT DEFINED _AECHO (SET _AECHO=REM)
+IF NOT DEFINED _CECHO (SET _CECHO=REM)
+IF NOT DEFINED _VECHO (SET _VECHO=REM)
+
+REM
+REM NOTE: Setup local environment variables that point to the root directory
+REM of the Fossil source checkout and to the directory containing this
+REM build tool.
+REM
+SET ROOT=%~dp0\..
+SET ROOT=%ROOT:\\=\%
+
+%_VECHO% Root = '%ROOT%'
+
+SET TOOLS=%~dp0
+SET TOOLS=%TOOLS:~0,-1%
+
+%_VECHO% Tools = '%TOOLS%'
+
+REM
+REM Visual C++ ????
+REM
+IF DEFINED VCINSTALLDIR IF EXIST "%VCINSTALLDIR%" (
+ %_AECHO% Build environment appears to be set up.
+ GOTO skip_setupVisualStudio
+)
+
+REM
+REM Visual Studio ????
+REM
+IF DEFINED VSVARS32 IF EXIST "%VSVARS32%" (
+ %_AECHO% Build environment batch file manually overridden to "%VSVARS32%"...
+ GOTO skip_detectVisualStudio
+)
+
+REM
+REM Visual Studio 2017 / 2019 / 2022
+REM
+CALL :fn_TryUseVsWhereExe
+IF NOT DEFINED VSWHEREINSTALLDIR GOTO skip_detectVisualStudio2017
+SET VSVARS32=%VSWHEREINSTALLDIR%\VC\Auxiliary\Build\vcvars64.bat
+IF "%~1" == "x86" (
+ SET VSVARS32=%VSWHEREINSTALLDIR%\VC\Auxiliary\Build\vcvars32.bat
+)
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2017 / 2019 / 2022...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2017
+
+REM
+REM Visual Studio 2015
+REM
+IF NOT DEFINED VS140COMNTOOLS GOTO skip_detectVisualStudio2015
+SET VSVARS32=%VS140COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2015...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2015
+
+REM
+REM Visual Studio 2013
+REM
+IF NOT DEFINED VS120COMNTOOLS GOTO skip_detectVisualStudio2013
+SET VSVARS32=%VS120COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2013...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2013
+
+REM
+REM Visual Studio 2012
+REM
+IF NOT DEFINED VS110COMNTOOLS GOTO skip_detectVisualStudio2012
+SET VSVARS32=%VS110COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2012...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2012
+
+REM
+REM Visual Studio 2010
+REM
+IF NOT DEFINED VS100COMNTOOLS GOTO skip_detectVisualStudio2010
+SET VSVARS32=%VS100COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2010...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2010
+
+REM
+REM Visual Studio 2008
+REM
+IF NOT DEFINED VS90COMNTOOLS GOTO skip_detectVisualStudio2008
+SET VSVARS32=%VS90COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2008...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2008
+
+REM
+REM Visual Studio 2005
+REM
+IF NOT DEFINED VS80COMNTOOLS GOTO skip_detectVisualStudio2005
+SET VSVARS32=%VS80COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2005...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2005
+
+REM
+REM Visual Studio 2003
+REM
+IF NOT DEFINED VS71COMNTOOLS GOTO skip_detectVisualStudio2003
+SET VSVARS32=%VS71COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2003...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2003
+
+REM
+REM Visual Studio 2002
+REM
+IF NOT DEFINED VS70COMNTOOLS GOTO skip_detectVisualStudio2002
+SET VSVARS32=%VS70COMNTOOLS%\vsvars32.bat
+IF EXIST "%VSVARS32%" (
+ %_AECHO% Using Visual Studio 2002...
+ GOTO skip_detectVisualStudio
+)
+:skip_detectVisualStudio2002
+
+REM
+REM NOTE: If we get to this point, no Visual Studio build environment batch
+REM files were found.
+REM
+ECHO No Visual Studio build environment batch files were found.
+GOTO errors
+
+REM
+REM NOTE: At this point, the appropriate Visual Studio version should be
+REM selected.
+REM
+:skip_detectVisualStudio
+
+REM
+REM NOTE: Remove any double-backslash sequences that may be present in the
+REM selected Visual Studio common tools path. This is not strictly
+REM necessary; however, it makes reading the output easier.
+REM
+SET VSVARS32=%VSVARS32:\\=\%
+
+%_VECHO% VsVars32 = '%VSVARS32%'
+
+REM
+REM NOTE: After this point, a clean ERRORLEVEL is required; therefore, make
+REM sure it is reset now.
+REM
+CALL :fn_ResetErrorLevel
+
+REM
+REM NOTE: Attempt to call the selected batch file to setup the environment
+REM variables for building with MSVC.
+REM
+%__ECHO3% CALL "%VSVARS32%"
+
+IF ERRORLEVEL 1 (
+ ECHO Visual Studio build environment batch file "%VSVARS32%" failed.
+ GOTO errors
+)
+
+REM
+REM NOTE: After this point, the environment should already be setup for
+REM building with MSVC.
+REM
+:skip_setupVisualStudio
+
+%_VECHO% VcInstallDir = '%VCINSTALLDIR%'
+
+REM
+REM NOTE: Attempt to create the build output directory, if necessary.
+REM In order to build using the current directory as the build
+REM output directory, use the following command before executing
+REM this tool:
+REM
+REM SET BUILDDIR=%CD%
+REM
+IF DEFINED BUILDDIR (
+ IF DEFINED BUILDSUFFIX (
+ CALL :fn_FindVarInVar BUILDSUFFIX BUILDDIR
+
+ IF ERRORLEVEL 1 (
+ REM
+ REM NOTE: The build suffix is already present, do nothing.
+ REM
+ ) ELSE (
+ REM
+ REM NOTE: The build suffix is not present, add it now.
+ REM
+ SET BUILDDIR=%BUILDDIR%%BUILDSUFFIX%
+ )
+
+ CALL :fn_ResetErrorLevel
+ )
+) ELSE (
+ REM
+ REM NOTE: By default, when BUILDDIR is unset, build in the "msvcbld"
+ REM sub-directory relative to the root of the source checkout.
+ REM This retains backward compatibility with third-party build
+ REM scripts, etc,
+ REM
+ SET BUILDDIR=%ROOT%\msvcbld%BUILDSUFFIX%
+)
+
+%_VECHO% BuildSuffix = '%BUILDSUFFIX%'
+%_VECHO% BuildDir = '%BUILDDIR%'
+
+IF NOT EXIST "%BUILDDIR%" (
+ %__ECHO% MKDIR "%BUILDDIR%"
+
+ IF ERRORLEVEL 1 (
+ ECHO Could not make directory "%BUILDDIR%".
+ GOTO errors
+ )
+)
+
+REM
+REM NOTE: Attempt to change to the created build output directory so that
+REM the generated files will be placed there, if needed.
+REM
+%__ECHO2% PUSHD "%BUILDDIR%"
+
+IF ERRORLEVEL 1 (
+ ECHO Could not change to directory "%BUILDDIR%".
+ GOTO errors
+)
+
+SET NEED_POPD=1
+
+REM
+REM NOTE: If requested, setup the build environment to refer to the Windows
+REM SDK v7.1A, which is required if the binaries are being built with
+REM Visual Studio 201x and need to work on Windows XP.
+REM
+IF DEFINED USE_V110SDK71A (
+ %_AECHO% Forcing use of the Windows SDK v7.1A...
+ CALL :fn_UseV110Sdk71A
+)
+
+%_VECHO% Path = '%PATH%'
+%_VECHO% Include = '%INCLUDE%'
+%_VECHO% Lib = '%LIB%'
+%_VECHO% Tools = '%TOOLS%'
+%_VECHO% Root = '%ROOT%'
+%_VECHO% NmakeArgs = '%NMAKE_ARGS%'
+
+REM
+REM NOTE: Attempt to execute NMAKE for the Fossil MSVC makefile, passing
+REM anything extra from our command line along (e.g. extra options).
+REM Also, pass the base directory of the Fossil source tree as this
+REM allows an out-of-source-tree build.
+REM
+%__ECHO% nmake /f "%TOOLS%\Makefile.msc" B="%ROOT%" %NMAKE_ARGS% %*
+
+IF ERRORLEVEL 1 (
+ GOTO errors
+)
+
+REM
+REM NOTE: Attempt to restore the previously saved directory, if needed.
+REM
+IF DEFINED NEED_POPD (
+ %__ECHO2% POPD
+
+ IF ERRORLEVEL 1 (
+ ECHO Could not restore directory.
+ GOTO errors
+ )
+
+ CALL :fn_UnsetVariable NEED_POPD
+)
+
+GOTO no_errors
+
+:fn_UseV110Sdk71A
+ IF "%PROCESSOR_ARCHITECTURE%" == "x86" GOTO set_v110Sdk71A_x86
+ SET PFILES_SDK71A=%ProgramFiles(x86)%
+ GOTO set_v110Sdk71A_done
+ :set_v110Sdk71A_x86
+ SET PFILES_SDK71A=%ProgramFiles%
+ :set_v110Sdk71A_done
+ SET PATH=%PFILES_SDK71A%\Microsoft SDKs\Windows\7.1A\Bin;%PATH%
+ SET INCLUDE=%PFILES_SDK71A%\Microsoft SDKs\Windows\7.1A\Include;%INCLUDE%
+ IF "%PLATFORM%" == "x64" GOTO set_v110Sdk71A_lib_x64
+ SET LIB=%PFILES_SDK71A%\Microsoft SDKs\Windows\7.1A\Lib;%LIB%
+ GOTO set_v110Sdk71A_lib_done
+ :set_v110Sdk71A_lib_x64
+ SET LIB=%PFILES_SDK71A%\Microsoft SDKs\Windows\7.1A\Lib\x64;%LIB%
+ :set_v110Sdk71A_lib_done
+ CALL :fn_UnsetVariable PFILES_SDK71A
+ SET NMAKE_ARGS=%NMAKE_ARGS% FOSSIL_ENABLE_WINXP=1
+ GOTO :EOF
+
+:fn_FindVarInVar
+ IF NOT DEFINED %1 GOTO :EOF
+ IF NOT DEFINED %2 GOTO :EOF
+ SETLOCAL
+ CALL :fn_UnsetVariable VALUE
+ SET __ECHO_CMD=ECHO %%%2%% ^^^| FIND /I "%%%1%%"
+ FOR /F "delims=" %%V IN ('%__ECHO_CMD%') DO (
+ SET VALUE=%%V
+ )
+ IF DEFINED VALUE (
+ CALL :fn_SetErrorLevel
+ ) ELSE (
+ CALL :fn_ResetErrorLevel
+ )
+ ENDLOCAL
+ GOTO :EOF
+
+:fn_UnsetVariable
+ SETLOCAL
+ SET VALUE=%1
+ IF DEFINED VALUE (
+ SET VALUE=
+ ENDLOCAL
+ SET %VALUE%=
+ ) ELSE (
+ ENDLOCAL
+ )
+ CALL :fn_ResetErrorLevel
+ GOTO :EOF
+
+:fn_ResetErrorLevel
+ VERIFY > NUL
+ GOTO :EOF
+
+:fn_SetErrorLevel
+ VERIFY MAYBE 2> NUL
+ GOTO :EOF
+
+:fn_TryUseVsWhereExe
+ IF DEFINED VSWHERE_EXE GOTO skip_setVsWhereExe
+ SET VSWHERE_EXE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe
+ IF NOT EXIST "%VSWHERE_EXE%" SET VSWHERE_EXE=%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe
+ :skip_setVsWhereExe
+ IF NOT EXIST "%VSWHERE_EXE%" (
+ %_AECHO% The "VsWhere" tool does not appear to be installed.
+ GOTO :EOF
+ )
+ SET VS_WHEREIS_CMD="%VSWHERE_EXE%" -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath -latest
+ IF DEFINED __ECHO (
+ %__ECHO% %VS_WHEREIS_CMD%
+ REM
+ REM NOTE: This will not be executed, any reasonable fake path will work.
+ REM
+ SET VSWHEREINSTALLDIR=C:\Program Files\Microsoft Visual Studio\2017\Community
+ GOTO skip_setVsWhereInstallDir
+ )
+ FOR /F "delims=" %%D IN ('%VS_WHEREIS_CMD%') DO (SET VSWHEREINSTALLDIR=%%D)
+ :skip_setVsWhereInstallDir
+ %_VECHO% VsWhereInstallDir = '%VSWHEREINSTALLDIR%'
+ IF NOT DEFINED VSWHEREINSTALLDIR (
+ %_AECHO% Visual Studio 2017 / 2019 / 2022 is not installed.
+ GOTO :EOF
+ )
+ %_AECHO% Visual Studio 2017 / 2019 / 2022 is installed.
+ GOTO :EOF
+
+:usage
+ ECHO.
+ ECHO Usage: %~nx0 [...]
+ ECHO.
+ GOTO errors
+
+:errors
+ CALL :fn_SetErrorLevel
+ ENDLOCAL
+ ECHO.
+ ECHO Build failure, errors were encountered.
+ GOTO end_of_file
+
+:no_errors
+ CALL :fn_ResetErrorLevel
+ ENDLOCAL
+ ECHO.
+ ECHO Build success, no errors were encountered.
+ GOTO end_of_file
+
+:end_of_file
+%__ECHO% EXIT /B %ERRORLEVEL%
diff --git a/win/fossil.exe.manifest b/win/fossil.exe.manifest
new file mode 100644
index 0000000..9eff9bc
--- /dev/null
+++ b/win/fossil.exe.manifest
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"
+ xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
+ <assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="fossil"
+ type="win32" />
+ <description>
+ Simple, high-reliability, distributed software configuration management system.
+ </description>
+ <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
+ <security>
+ <requestedPrivileges>
+ <requestedExecutionLevel level="asInvoker" uiAccess="false" />
+ </requestedPrivileges>
+ </security>
+ </trustInfo>
+ <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
+ <application>
+ <!-- Windows 10 -->
+ <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
+ <!-- Windows 8.1 -->
+ <supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
+ <!-- Windows 8 -->
+ <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
+ <!-- Windows 7 -->
+ <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
+ <!-- Windows Vista -->
+ <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
+ </application>
+ </compatibility>
+ <asmv3:application>
+ <asmv3:windowsSettings
+ xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
+ <dpiAware>true</dpiAware>
+ </asmv3:windowsSettings>
+ </asmv3:application>
+ <dependency>
+ <dependentAssembly>
+ <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls"
+ version="6.0.0.0" processorArchitecture="*"
+ publicKeyToken="6595b64144ccf1df" language="*" />
+ </dependentAssembly>
+ </dependency>
+</assembly>
diff --git a/win/fossil.ico b/win/fossil.ico
new file mode 100644
index 0000000..dd5fa00
--- /dev/null
+++ b/win/fossil.ico
Binary files differ
diff --git a/win/fossil.rc b/win/fossil.rc
new file mode 100644
index 0000000..1e4bc6b
--- /dev/null
+++ b/win/fossil.rc
@@ -0,0 +1,194 @@
+/*
+** Copyright (c) 2012 D. Richard Hipp
+**
+** This program is free software; you can redistribute it and/or
+** modify it under the terms of the Simplified BSD License (also
+** known as the "2-Clause License" or "FreeBSD License".)
+
+** This program is distributed in the hope that it will be useful,
+** but without any warranty; without even the implied warranty of
+** merchantability or fitness for a particular purpose.
+**
+** Author contact information:
+** drh@hwaci.com
+** http://www.hwaci.com/drh/
+**
+*******************************************************************************
+**
+** This file contains resource information for the executable on Windows.
+*/
+
+#if !defined(_WIN32_WCE)
+#include "winresrc.h"
+#else
+#include "windows.h"
+#endif /* !defined(_WIN32_WCE) */
+
+#if !defined(VS_FF_NONE)
+# define VS_FF_NONE 0x00000000L
+#endif /* !defined(VS_FF_NONE) */
+
+#include "VERSION.h"
+#define _RC_COMPILE_
+#include "config.h"
+#include "sqlite3.h"
+#include "zlib.h"
+
+#if defined(FOSSIL_ENABLE_SSL)
+#include "openssl/opensslv.h"
+#endif /* defined(FOSSIL_ENABLE_SSL) */
+
+#if defined(FOSSIL_ENABLE_TCL)
+#include "tcl.h"
+#endif /* defined(FOSSIL_ENABLE_TCL) */
+
+#if defined(FOSSIL_ENABLE_JSON)
+#include "json_detail.h"
+#endif /* defined(FOSSIL_ENABLE_JSON) */
+
+/*
+ * English (U.S.) resources
+ */
+
+#if defined(_WIN32)
+LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
+#pragma code_page(1252)
+#endif /* defined(_WIN32) */
+
+/*
+ * Icon
+ */
+
+#define IDI_FOSSIL 8001
+
+IDI_FOSSIL ICON "fossil.ico"
+
+/*
+ * Version
+ */
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION RELEASE_RESOURCE_VERSION
+ PRODUCTVERSION RELEASE_RESOURCE_VERSION
+ FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
+#if defined(_DEBUG)
+ FILEFLAGS VS_FF_DEBUG
+#else
+ FILEFLAGS VS_FF_NONE
+#endif /* defined(_DEBUG) */
+ FILEOS VOS__WINDOWS32
+ FILETYPE VFT_APP
+ FILESUBTYPE VFT2_UNKNOWN
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904b0"
+ BEGIN
+ VALUE "CompanyName", "Fossil Development Team\0"
+ VALUE "FileDescription", "Fossil is a simple, high-reliability, distributed software configuration management system.\0"
+ VALUE "ProductName", "Fossil\0"
+ VALUE "ProductVersion", "Fossil " RELEASE_VERSION " " MANIFEST_VERSION " " MANIFEST_DATE " UTC\0"
+ VALUE "FileVersion", "Fossil " RELEASE_VERSION " " MANIFEST_VERSION " " MANIFEST_DATE " UTC\0"
+ VALUE "InternalName", "fossil\0"
+ VALUE "LegalCopyright", "Copyright © " MANIFEST_YEAR " by D. Richard Hipp. All rights reserved.\0"
+ VALUE "OriginalFilename", "fossil.exe\0"
+ VALUE "CompilerName", COMPILER_NAME "\0"
+ VALUE "SQLiteVersion", "SQLite " SQLITE_VERSION " " SQLITE_SOURCE_ID "\0"
+#if defined(FOSSIL_DYNAMIC_BUILD)
+ VALUE "DynamicBuild", "Yes\0"
+#else
+ VALUE "DynamicBuild", "No\0"
+#endif
+ VALUE "ZlibVersion", "zlib " ZLIB_VERSION "\0"
+#if defined(BROKEN_MINGW_CMDLINE)
+ VALUE "CommandLineIsUnicode", "No\0"
+#else
+ VALUE "CommandLineIsUnicode", "Yes\0"
+#endif /* defined(BROKEN_MINGW_CMDLINE) */
+#if defined(FOSSIL_ENABLE_SSL)
+ VALUE "SslEnabled", "Yes, " OPENSSL_VERSION_TEXT "\0"
+#endif /* defined(FOSSIL_ENABLE_SSL) */
+ VALUE "LegacyMvRm", "Yes\0"
+#if defined(FOSSIL_ENABLE_EXEC_REL_PATHS)
+ VALUE "ExecRelPaths", "Yes\0"
+#else
+ VALUE "ExecRelPaths", "No\0"
+#endif /* defined(FOSSIL_ENABLE_EXEC_REL_PATHS) */
+#if defined(FOSSIL_ENABLE_TH1_DOCS)
+ VALUE "Th1Docs", "Yes\0"
+#else
+ VALUE "Th1Docs", "No\0"
+#endif /* defined(FOSSIL_ENABLE_TH1_DOCS) */
+#if defined(FOSSIL_ENABLE_TH1_HOOKS)
+ VALUE "Th1Hooks", "Yes\0"
+#else
+ VALUE "Th1Hooks", "No\0"
+#endif /* defined(FOSSIL_ENABLE_TH1_HOOKS) */
+#if defined(FOSSIL_ENABLE_TCL)
+ VALUE "TclEnabled", "Yes, Tcl " TCL_PATCH_LEVEL "\0"
+#if defined(USE_TCL_STUBS)
+ VALUE "UseTclStubsEnabled", "Yes\0"
+#else
+ VALUE "UseTclStubsEnabled", "No\0"
+#endif /* defined(USE_TCL_STUBS) */
+#if defined(FOSSIL_ENABLE_TCL_STUBS)
+ VALUE "TclStubsEnabled", "Yes\0"
+#else
+ VALUE "TclStubsEnabled", "No\0"
+#endif /* defined(FOSSIL_ENABLE_TCL_STUBS) */
+#if defined(FOSSIL_ENABLE_TCL_PRIVATE_STUBS)
+ VALUE "TclPrivateStubsEnabled", "Yes\0"
+#else
+ VALUE "TclPrivateStubsEnabled", "No\0"
+#endif /* defined(FOSSIL_ENABLE_TCL_PRIVATE_STUBS) */
+#endif /* defined(FOSSIL_ENABLE_TCL) */
+#if defined(FOSSIL_ENABLE_JSON)
+ VALUE "JsonEnabled", "Yes, cson " FOSSIL_JSON_API_VERSION "\0"
+#endif /* defined(FOSSIL_ENABLE_JSON) */
+#if defined(USE_MMAN_H)
+ VALUE "UseMmanEnabled", "Yes\0"
+#else
+ VALUE "UseMmanEnabled", "No\0"
+#endif /* defined(USE_MMAN_H) */
+#if defined(USE_SEE)
+ VALUE "UseSeeEnabled", "Yes\0"
+#else
+ VALUE "UseSeeEnabled", "No\0"
+#endif /* defined(USE_SEE) */
+ VALUE "MarkdownEnabled", "Yes\0"
+#if defined(FOSSIL_DEBUG)
+ VALUE "Debug", "Yes\0"
+#else
+ VALUE "Debug", "No\0"
+#endif /* defined(FOSSIL_DEBUG) */
+#if defined(FOSSIL_OMIT_DELTA_CKSUM_TEST)
+ VALUE "OmitDeltaCksumTest", "Yes\0"
+#else
+ VALUE "OmitDeltaCksumTest", "No\0"
+#endif /* defined(FOSSIL_OMIT_DELTA_CKSUM_TEST) */
+#if defined(FOSSIL_ALLOW_OUT_OF_ORDER_DATES)
+ VALUE "AllowOutOfOrderDates", "Yes\0"
+#else
+ VALUE "AllowOutOfOrderDates", "No\0"
+#endif /* defined(FOSSIL_ALLOW_OUT_OF_ORDER_DATES) */
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 0x4b0
+ END
+END
+
+/*
+ * This embedded manifest is needed for Windows 8.1.
+ */
+
+#ifndef RT_MANIFEST
+#define RT_MANIFEST 24
+#endif /* RT_MANIFEST */
+
+#ifndef CREATEPROCESS_MANIFEST_RESOURCE_ID
+#define CREATEPROCESS_MANIFEST_RESOURCE_ID 1
+#endif /* CREATEPROCESS_MANIFEST_RESOURCE_ID */
+
+CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "fossil.exe.manifest"
diff --git a/win/include/dirent.h b/win/include/dirent.h
new file mode 100755
index 0000000..332c798
--- /dev/null
+++ b/win/include/dirent.h
@@ -0,0 +1,1160 @@
+/*
+ * Dirent interface for Microsoft Visual Studio
+ * Version 1.23.1
+ *
+ * Copyright (C) 2006-2012 Toni Ronkko
+ * This file is part of dirent. Dirent may be freely distributed
+ * under the MIT license. For all details and documentation, see
+ * https://github.com/tronkko/dirent
+ */
+#ifndef DIRENT_H
+#define DIRENT_H
+
+/*
+ * Include windows.h without Windows Sockets 1.1 to prevent conflicts with
+ * Windows Sockets 2.0.
+ */
+#ifndef WIN32_LEAN_AND_MEAN
+# define WIN32_LEAN_AND_MEAN
+#endif
+#include <windows.h>
+
+#include <stdio.h>
+#include <stdarg.h>
+#include <wchar.h>
+#include <string.h>
+#include <stdlib.h>
+#include <malloc.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <errno.h>
+
+/* Indicates that d_type field is available in dirent structure */
+#define _DIRENT_HAVE_D_TYPE
+
+/* Indicates that d_namlen field is available in dirent structure */
+#define _DIRENT_HAVE_D_NAMLEN
+
+/* Entries missing from MSVC 6.0 */
+#if !defined(FILE_ATTRIBUTE_DEVICE)
+# define FILE_ATTRIBUTE_DEVICE 0x40
+#endif
+
+/* File type and permission flags for stat(), general mask */
+#if !defined(S_IFMT)
+# define S_IFMT _S_IFMT
+#endif
+
+/* Directory bit */
+#if !defined(S_IFDIR)
+# define S_IFDIR _S_IFDIR
+#endif
+
+/* Character device bit */
+#if !defined(S_IFCHR)
+# define S_IFCHR _S_IFCHR
+#endif
+
+/* Pipe bit */
+#if !defined(S_IFFIFO)
+# define S_IFFIFO _S_IFFIFO
+#endif
+
+/* Regular file bit */
+#if !defined(S_IFREG)
+# define S_IFREG _S_IFREG
+#endif
+
+/* Read permission */
+#if !defined(S_IREAD)
+# define S_IREAD _S_IREAD
+#endif
+
+/* Write permission */
+#if !defined(S_IWRITE)
+# define S_IWRITE _S_IWRITE
+#endif
+
+/* Execute permission */
+#if !defined(S_IEXEC)
+# define S_IEXEC _S_IEXEC
+#endif
+
+/* Pipe */
+#if !defined(S_IFIFO)
+# define S_IFIFO _S_IFIFO
+#endif
+
+/* Block device */
+#if !defined(S_IFBLK)
+# define S_IFBLK 0
+#endif
+
+/* Link */
+#if !defined(S_IFLNK)
+# define S_IFLNK 0
+#endif
+
+/* Socket */
+#if !defined(S_IFSOCK)
+# define S_IFSOCK 0
+#endif
+
+/* Read user permission */
+#if !defined(S_IRUSR)
+# define S_IRUSR S_IREAD
+#endif
+
+/* Write user permission */
+#if !defined(S_IWUSR)
+# define S_IWUSR S_IWRITE
+#endif
+
+/* Execute user permission */
+#if !defined(S_IXUSR)
+# define S_IXUSR 0
+#endif
+
+/* Read group permission */
+#if !defined(S_IRGRP)
+# define S_IRGRP 0
+#endif
+
+/* Write group permission */
+#if !defined(S_IWGRP)
+# define S_IWGRP 0
+#endif
+
+/* Execute group permission */
+#if !defined(S_IXGRP)
+# define S_IXGRP 0
+#endif
+
+/* Read others permission */
+#if !defined(S_IROTH)
+# define S_IROTH 0
+#endif
+
+/* Write others permission */
+#if !defined(S_IWOTH)
+# define S_IWOTH 0
+#endif
+
+/* Execute others permission */
+#if !defined(S_IXOTH)
+# define S_IXOTH 0
+#endif
+
+/* Maximum length of file name */
+#if !defined(PATH_MAX)
+# define PATH_MAX MAX_PATH
+#endif
+#if !defined(FILENAME_MAX)
+# define FILENAME_MAX MAX_PATH
+#endif
+#if !defined(NAME_MAX)
+# define NAME_MAX FILENAME_MAX
+#endif
+
+/* File type flags for d_type */
+#define DT_UNKNOWN 0
+#define DT_REG S_IFREG
+#define DT_DIR S_IFDIR
+#define DT_FIFO S_IFIFO
+#define DT_SOCK S_IFSOCK
+#define DT_CHR S_IFCHR
+#define DT_BLK S_IFBLK
+#define DT_LNK S_IFLNK
+
+/* Macros for converting between st_mode and d_type */
+#define IFTODT(mode) ((mode) & S_IFMT)
+#define DTTOIF(type) (type)
+
+/*
+ * File type macros. Note that block devices, sockets and links cannot be
+ * distinguished on Windows and the macros S_ISBLK, S_ISSOCK and S_ISLNK are
+ * only defined for compatibility. These macros should always return false
+ * on Windows.
+ */
+#if !defined(S_ISFIFO)
+# define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFIFO)
+#endif
+#if !defined(S_ISDIR)
+# define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR)
+#endif
+#if !defined(S_ISREG)
+# define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG)
+#endif
+#if !defined(S_ISLNK)
+# define S_ISLNK(mode) (((mode) & S_IFMT) == S_IFLNK)
+#endif
+#if !defined(S_ISSOCK)
+# define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK)
+#endif
+#if !defined(S_ISCHR)
+# define S_ISCHR(mode) (((mode) & S_IFMT) == S_IFCHR)
+#endif
+#if !defined(S_ISBLK)
+# define S_ISBLK(mode) (((mode) & S_IFMT) == S_IFBLK)
+#endif
+
+/* Return the exact length of the file name without zero terminator */
+#define _D_EXACT_NAMLEN(p) ((p)->d_namlen)
+
+/* Return the maximum size of a file name */
+#define _D_ALLOC_NAMLEN(p) ((PATH_MAX)+1)
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+/* Wide-character version */
+struct _wdirent {
+ /* Always zero */
+ long d_ino;
+
+ /* File position within stream */
+ long d_off;
+
+ /* Structure size */
+ unsigned short d_reclen;
+
+ /* Length of name without \0 */
+ size_t d_namlen;
+
+ /* File type */
+ int d_type;
+
+ /* File name */
+ wchar_t d_name[PATH_MAX+1];
+};
+typedef struct _wdirent _wdirent;
+
+struct _WDIR {
+ /* Current directory entry */
+ struct _wdirent ent;
+
+ /* Private file data */
+ WIN32_FIND_DATAW data;
+
+ /* True if data is valid */
+ int cached;
+
+ /* Win32 search handle */
+ HANDLE handle;
+
+ /* Initial directory name */
+ wchar_t *patt;
+};
+typedef struct _WDIR _WDIR;
+
+/* Multi-byte character version */
+struct dirent {
+ /* Always zero */
+ long d_ino;
+
+ /* File position within stream */
+ long d_off;
+
+ /* Structure size */
+ unsigned short d_reclen;
+
+ /* Length of name without \0 */
+ size_t d_namlen;
+
+ /* File type */
+ int d_type;
+
+ /* File name */
+ char d_name[PATH_MAX+1];
+};
+typedef struct dirent dirent;
+
+struct DIR {
+ struct dirent ent;
+ struct _WDIR *wdirp;
+};
+typedef struct DIR DIR;
+
+
+/* Dirent functions */
+static DIR *opendir (const char *dirname);
+static _WDIR *_wopendir (const wchar_t *dirname);
+
+static struct dirent *readdir (DIR *dirp);
+static struct _wdirent *_wreaddir (_WDIR *dirp);
+
+static int readdir_r(
+ DIR *dirp, struct dirent *entry, struct dirent **result);
+static int _wreaddir_r(
+ _WDIR *dirp, struct _wdirent *entry, struct _wdirent **result);
+
+static int closedir (DIR *dirp);
+static int _wclosedir (_WDIR *dirp);
+
+static void rewinddir (DIR* dirp);
+static void _wrewinddir (_WDIR* dirp);
+
+static int scandir (const char *dirname, struct dirent ***namelist,
+ int (*filter)(const struct dirent*),
+ int (*compare)(const struct dirent**, const struct dirent**));
+
+static int alphasort (const struct dirent **a, const struct dirent **b);
+
+static int versionsort (const struct dirent **a, const struct dirent **b);
+
+
+/* For compatibility with Symbian */
+#define wdirent _wdirent
+#define WDIR _WDIR
+#define wopendir _wopendir
+#define wreaddir _wreaddir
+#define wclosedir _wclosedir
+#define wrewinddir _wrewinddir
+
+
+/* Internal utility functions */
+static WIN32_FIND_DATAW *dirent_first (_WDIR *dirp);
+static WIN32_FIND_DATAW *dirent_next (_WDIR *dirp);
+
+static int dirent_mbstowcs_s(
+ size_t *pReturnValue,
+ wchar_t *wcstr,
+ size_t sizeInWords,
+ const char *mbstr,
+ size_t count);
+
+static int dirent_wcstombs_s(
+ size_t *pReturnValue,
+ char *mbstr,
+ size_t sizeInBytes,
+ const wchar_t *wcstr,
+ size_t count);
+
+static void dirent_set_errno (int error);
+
+
+/*
+ * Open directory stream DIRNAME for read and return a pointer to the
+ * internal working area that is used to retrieve individual directory
+ * entries.
+ */
+static _WDIR*
+_wopendir(
+ const wchar_t *dirname)
+{
+ _WDIR *dirp = NULL;
+ int error;
+
+ /* Must have directory name */
+ if (dirname == NULL || dirname[0] == '\0') {
+ dirent_set_errno (ENOENT);
+ return NULL;
+ }
+
+ /* Allocate new _WDIR structure */
+ dirp = (_WDIR*) malloc (sizeof (struct _WDIR));
+ if (dirp != NULL) {
+ DWORD n;
+
+ /* Reset _WDIR structure */
+ dirp->handle = INVALID_HANDLE_VALUE;
+ dirp->patt = NULL;
+ dirp->cached = 0;
+
+ /* Compute the length of full path plus zero terminator
+ *
+ * Note that on WinRT there's no way to convert relative paths
+ * into absolute paths, so just assume it is an absolute path.
+ */
+# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
+ n = wcslen(dirname);
+# else
+ n = GetFullPathNameW (dirname, 0, NULL, NULL);
+# endif
+
+ /* Allocate room for absolute directory name and search pattern */
+ dirp->patt = (wchar_t*) malloc (sizeof (wchar_t) * n + 16);
+ if (dirp->patt) {
+
+ /*
+ * Convert relative directory name to an absolute one. This
+ * allows rewinddir() to function correctly even when current
+ * working directory is changed between opendir() and rewinddir().
+ *
+ * Note that on WinRT there's no way to convert relative paths
+ * into absolute paths, so just assume it is an absolute path.
+ */
+# if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
+ wcsncpy_s(dirp->patt, n+1, dirname, n);
+# else
+ n = GetFullPathNameW (dirname, n, dirp->patt, NULL);
+# endif
+ if (n > 0) {
+ wchar_t *p;
+
+ /* Append search pattern \* to the directory name */
+ p = dirp->patt + n;
+ if (dirp->patt < p) {
+ switch (p[-1]) {
+ case '\\':
+ case '/':
+ case ':':
+ /* Directory ends in path separator, e.g. c:\temp\ */
+ /*NOP*/;
+ break;
+
+ default:
+ /* Directory name doesn't end in path separator */
+ *p++ = '\\';
+ }
+ }
+ *p++ = '*';
+ *p = '\0';
+
+ /* Open directory stream and retrieve the first entry */
+ if (dirent_first (dirp)) {
+ /* Directory stream opened successfully */
+ error = 0;
+ } else {
+ /* Cannot retrieve first entry */
+ error = 1;
+ dirent_set_errno (ENOENT);
+ }
+
+ } else {
+ /* Cannot retrieve full path name */
+ dirent_set_errno (ENOENT);
+ error = 1;
+ }
+
+ } else {
+ /* Cannot allocate memory for search pattern */
+ error = 1;
+ }
+
+ } else {
+ /* Cannot allocate _WDIR structure */
+ error = 1;
+ }
+
+ /* Clean up in case of error */
+ if (error && dirp) {
+ _wclosedir (dirp);
+ dirp = NULL;
+ }
+
+ return dirp;
+}
+
+/*
+ * Read next directory entry.
+ *
+ * Returns pointer to static directory entry which may be overwritten by
+ * subsequent calls to _wreaddir().
+ */
+static struct _wdirent*
+_wreaddir(
+ _WDIR *dirp)
+{
+ struct _wdirent *entry;
+
+ /*
+ * Read directory entry to buffer. We can safely ignore the return value
+ * as entry will be set to NULL in case of error.
+ */
+ (void) _wreaddir_r (dirp, &dirp->ent, &entry);
+
+ /* Return pointer to statically allocated directory entry */
+ return entry;
+}
+
+/*
+ * Read next directory entry.
+ *
+ * Returns zero on success. If end of directory stream is reached, then sets
+ * result to NULL and returns zero.
+ */
+static int
+_wreaddir_r(
+ _WDIR *dirp,
+ struct _wdirent *entry,
+ struct _wdirent **result)
+{
+ WIN32_FIND_DATAW *datap;
+
+ /* Read next directory entry */
+ datap = dirent_next (dirp);
+ if (datap) {
+ size_t n;
+ DWORD attr;
+
+ /*
+ * Copy file name as wide-character string. If the file name is too
+ * long to fit in to the destination buffer, then truncate file name
+ * to PATH_MAX characters and zero-terminate the buffer.
+ */
+ n = 0;
+ while (n < PATH_MAX && datap->cFileName[n] != 0) {
+ entry->d_name[n] = datap->cFileName[n];
+ n++;
+ }
+ entry->d_name[n] = 0;
+
+ /* Length of file name excluding zero terminator */
+ entry->d_namlen = n;
+
+ /* File type */
+ attr = datap->dwFileAttributes;
+ if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
+ entry->d_type = DT_CHR;
+ } else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
+ entry->d_type = DT_DIR;
+ } else {
+ entry->d_type = DT_REG;
+ }
+
+ /* Reset dummy fields */
+ entry->d_ino = 0;
+ entry->d_off = 0;
+ entry->d_reclen = sizeof (struct _wdirent);
+
+ /* Set result address */
+ *result = entry;
+
+ } else {
+
+ /* Return NULL to indicate end of directory */
+ *result = NULL;
+
+ }
+
+ return /*OK*/0;
+}
+
+/*
+ * Close directory stream opened by opendir() function. This invalidates the
+ * DIR structure as well as any directory entry read previously by
+ * _wreaddir().
+ */
+static int
+_wclosedir(
+ _WDIR *dirp)
+{
+ int ok;
+ if (dirp) {
+
+ /* Release search handle */
+ if (dirp->handle != INVALID_HANDLE_VALUE) {
+ FindClose (dirp->handle);
+ dirp->handle = INVALID_HANDLE_VALUE;
+ }
+
+ /* Release search pattern */
+ if (dirp->patt) {
+ free (dirp->patt);
+ dirp->patt = NULL;
+ }
+
+ /* Release directory structure */
+ free (dirp);
+ ok = /*success*/0;
+
+ } else {
+
+ /* Invalid directory stream */
+ dirent_set_errno (EBADF);
+ ok = /*failure*/-1;
+
+ }
+ return ok;
+}
+
+/*
+ * Rewind directory stream such that _wreaddir() returns the very first
+ * file name again.
+ */
+static void
+_wrewinddir(
+ _WDIR* dirp)
+{
+ if (dirp) {
+ /* Release existing search handle */
+ if (dirp->handle != INVALID_HANDLE_VALUE) {
+ FindClose (dirp->handle);
+ }
+
+ /* Open new search handle */
+ dirent_first (dirp);
+ }
+}
+
+/* Get first directory entry (internal) */
+static WIN32_FIND_DATAW*
+dirent_first(
+ _WDIR *dirp)
+{
+ WIN32_FIND_DATAW *datap;
+
+ /* Open directory and retrieve the first entry */
+ dirp->handle = FindFirstFileExW(
+ dirp->patt, FindExInfoStandard, &dirp->data,
+ FindExSearchNameMatch, NULL, 0);
+ if (dirp->handle != INVALID_HANDLE_VALUE) {
+
+ /* a directory entry is now waiting in memory */
+ datap = &dirp->data;
+ dirp->cached = 1;
+
+ } else {
+
+ /* Failed to re-open directory: no directory entry in memory */
+ dirp->cached = 0;
+ datap = NULL;
+
+ }
+ return datap;
+}
+
+/*
+ * Get next directory entry (internal).
+ *
+ * Returns
+ */
+static WIN32_FIND_DATAW*
+dirent_next(
+ _WDIR *dirp)
+{
+ WIN32_FIND_DATAW *p;
+
+ /* Get next directory entry */
+ if (dirp->cached != 0) {
+
+ /* A valid directory entry already in memory */
+ p = &dirp->data;
+ dirp->cached = 0;
+
+ } else if (dirp->handle != INVALID_HANDLE_VALUE) {
+
+ /* Get the next directory entry from stream */
+ if (FindNextFileW (dirp->handle, &dirp->data) != FALSE) {
+ /* Got a file */
+ p = &dirp->data;
+ } else {
+ /* The very last entry has been processed or an error occurred */
+ FindClose (dirp->handle);
+ dirp->handle = INVALID_HANDLE_VALUE;
+ p = NULL;
+ }
+
+ } else {
+
+ /* End of directory stream reached */
+ p = NULL;
+
+ }
+
+ return p;
+}
+
+/*
+ * Open directory stream using plain old C-string.
+ */
+static DIR*
+opendir(
+ const char *dirname)
+{
+ struct DIR *dirp;
+ int error;
+
+ /* Must have directory name */
+ if (dirname == NULL || dirname[0] == '\0') {
+ dirent_set_errno (ENOENT);
+ return NULL;
+ }
+
+ /* Allocate memory for DIR structure */
+ dirp = (DIR*) malloc (sizeof (struct DIR));
+ if (dirp) {
+ wchar_t wname[PATH_MAX + 1];
+ size_t n;
+
+ /* Convert directory name to wide-character string */
+ error = dirent_mbstowcs_s(
+ &n, wname, PATH_MAX + 1, dirname, PATH_MAX + 1);
+ if (!error) {
+
+ /* Open directory stream using wide-character name */
+ dirp->wdirp = _wopendir (wname);
+ if (dirp->wdirp) {
+ /* Directory stream opened */
+ error = 0;
+ } else {
+ /* Failed to open directory stream */
+ error = 1;
+ }
+
+ } else {
+ /*
+ * Cannot convert file name to wide-character string. This
+ * occurs if the string contains invalid multi-byte sequences or
+ * the output buffer is too small to contain the resulting
+ * string.
+ */
+ error = 1;
+ }
+
+ } else {
+ /* Cannot allocate DIR structure */
+ error = 1;
+ }
+
+ /* Clean up in case of error */
+ if (error && dirp) {
+ free (dirp);
+ dirp = NULL;
+ }
+
+ return dirp;
+}
+
+/*
+ * Read next directory entry.
+ */
+static struct dirent*
+readdir(
+ DIR *dirp)
+{
+ struct dirent *entry;
+
+ /*
+ * Read directory entry to buffer. We can safely ignore the return value
+ * as entry will be set to NULL in case of error.
+ */
+ (void) readdir_r (dirp, &dirp->ent, &entry);
+
+ /* Return pointer to statically allocated directory entry */
+ return entry;
+}
+
+/*
+ * Read next directory entry into called-allocated buffer.
+ *
+ * Returns zero on success. If the end of directory stream is reached, then
+ * sets result to NULL and returns zero.
+ */
+static int
+readdir_r(
+ DIR *dirp,
+ struct dirent *entry,
+ struct dirent **result)
+{
+ WIN32_FIND_DATAW *datap;
+
+ /* Read next directory entry */
+ datap = dirent_next (dirp->wdirp);
+ if (datap) {
+ size_t n;
+ int error;
+
+ /* Attempt to convert file name to multi-byte string */
+ error = dirent_wcstombs_s(
+ &n, entry->d_name, PATH_MAX + 1, datap->cFileName, PATH_MAX + 1);
+
+ /*
+ * If the file name cannot be represented by a multi-byte string,
+ * then attempt to use old 8+3 file name. This allows traditional
+ * Unix-code to access some file names despite of unicode
+ * characters, although file names may seem unfamiliar to the user.
+ *
+ * Be ware that the code below cannot come up with a short file
+ * name unless the file system provides one. At least
+ * VirtualBox shared folders fail to do this.
+ */
+ if (error && datap->cAlternateFileName[0] != '\0') {
+ error = dirent_wcstombs_s(
+ &n, entry->d_name, PATH_MAX + 1,
+ datap->cAlternateFileName, PATH_MAX + 1);
+ }
+
+ if (!error) {
+ DWORD attr;
+
+ /* Length of file name excluding zero terminator */
+ entry->d_namlen = n - 1;
+
+ /* File attributes */
+ attr = datap->dwFileAttributes;
+ if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
+ entry->d_type = DT_CHR;
+ } else if ((attr & FILE_ATTRIBUTE_DIRECTORY) != 0) {
+ entry->d_type = DT_DIR;
+ } else {
+ entry->d_type = DT_REG;
+ }
+
+ /* Reset dummy fields */
+ entry->d_ino = 0;
+ entry->d_off = 0;
+ entry->d_reclen = sizeof (struct dirent);
+
+ } else {
+
+ /*
+ * Cannot convert file name to multi-byte string so construct
+ * an erroneous directory entry and return that. Note that
+ * we cannot return NULL as that would stop the processing
+ * of directory entries completely.
+ */
+ entry->d_name[0] = '?';
+ entry->d_name[1] = '\0';
+ entry->d_namlen = 1;
+ entry->d_type = DT_UNKNOWN;
+ entry->d_ino = 0;
+ entry->d_off = -1;
+ entry->d_reclen = 0;
+
+ }
+
+ /* Return pointer to directory entry */
+ *result = entry;
+
+ } else {
+
+ /* No more directory entries */
+ *result = NULL;
+
+ }
+
+ return /*OK*/0;
+}
+
+/*
+ * Close directory stream.
+ */
+static int
+closedir(
+ DIR *dirp)
+{
+ int ok;
+ if (dirp) {
+
+ /* Close wide-character directory stream */
+ ok = _wclosedir (dirp->wdirp);
+ dirp->wdirp = NULL;
+
+ /* Release multi-byte character version */
+ free (dirp);
+
+ } else {
+
+ /* Invalid directory stream */
+ dirent_set_errno (EBADF);
+ ok = /*failure*/-1;
+
+ }
+ return ok;
+}
+
+/*
+ * Rewind directory stream to beginning.
+ */
+static void
+rewinddir(
+ DIR* dirp)
+{
+ /* Rewind wide-character string directory stream */
+ _wrewinddir (dirp->wdirp);
+}
+
+/*
+ * Scan directory for entries.
+ */
+static int
+scandir(
+ const char *dirname,
+ struct dirent ***namelist,
+ int (*filter)(const struct dirent*),
+ int (*compare)(const struct dirent**, const struct dirent**))
+{
+ struct dirent **files = NULL;
+ size_t size = 0;
+ size_t allocated = 0;
+ const size_t init_size = 1;
+ DIR *dir = NULL;
+ struct dirent *entry;
+ struct dirent *tmp = NULL;
+ size_t i;
+ int result = 0;
+
+ /* Open directory stream */
+ dir = opendir (dirname);
+ if (dir) {
+
+ /* Read directory entries to memory */
+ while (1) {
+
+ /* Enlarge pointer table to make room for another pointer */
+ if (size >= allocated) {
+ void *p;
+ size_t num_entries;
+
+ /* Compute number of entries in the enlarged pointer table */
+ if (size < init_size) {
+ /* Allocate initial pointer table */
+ num_entries = init_size;
+ } else {
+ /* Double the size */
+ num_entries = size * 2;
+ }
+
+ /* Allocate first pointer table or enlarge existing table */
+ p = realloc (files, sizeof (void*) * num_entries);
+ if (p != NULL) {
+ /* Got the memory */
+ files = (dirent**) p;
+ allocated = num_entries;
+ } else {
+ /* Out of memory */
+ result = -1;
+ break;
+ }
+
+ }
+
+ /* Allocate room for temporary directory entry */
+ if (tmp == NULL) {
+ tmp = (struct dirent*) malloc (sizeof (struct dirent));
+ if (tmp == NULL) {
+ /* Cannot allocate temporary directory entry */
+ result = -1;
+ break;
+ }
+ }
+
+ /* Read directory entry to temporary area */
+ if (readdir_r (dir, tmp, &entry) == /*OK*/0) {
+
+ /* Did we get an entry? */
+ if (entry != NULL) {
+ int pass;
+
+ /* Determine whether to include the entry in result */
+ if (filter) {
+ /* Let the filter function decide */
+ pass = filter (tmp);
+ } else {
+ /* No filter function, include everything */
+ pass = 1;
+ }
+
+ if (pass) {
+ /* Store the temporary entry to pointer table */
+ files[size++] = tmp;
+ tmp = NULL;
+
+ /* Keep up with the number of files */
+ result++;
+ }
+
+ } else {
+
+ /*
+ * End of directory stream reached => sort entries and
+ * exit.
+ */
+ qsort (files, size, sizeof (void*),
+ (int (*) (const void*, const void*)) compare);
+ break;
+
+ }
+
+ } else {
+ /* Error reading directory entry */
+ result = /*Error*/ -1;
+ break;
+ }
+
+ }
+
+ } else {
+ /* Cannot open directory */
+ result = /*Error*/ -1;
+ }
+
+ /* Release temporary directory entry */
+ if (tmp) {
+ free (tmp);
+ }
+
+ /* Release allocated memory on error */
+ if (result < 0) {
+ for (i = 0; i < size; i++) {
+ free (files[i]);
+ }
+ free (files);
+ files = NULL;
+ }
+
+ /* Close directory stream */
+ if (dir) {
+ closedir (dir);
+ }
+
+ /* Pass pointer table to caller */
+ if (namelist) {
+ *namelist = files;
+ }
+ return result;
+}
+
+/* Alphabetical sorting */
+static int
+alphasort(
+ const struct dirent **a, const struct dirent **b)
+{
+ return strcoll ((*a)->d_name, (*b)->d_name);
+}
+
+/* Sort versions */
+static int
+versionsort(
+ const struct dirent **a, const struct dirent **b)
+{
+ /* FIXME: implement strverscmp and use that */
+ return alphasort (a, b);
+}
+
+
+/* Convert multi-byte string to wide character string */
+static int
+dirent_mbstowcs_s(
+ size_t *pReturnValue,
+ wchar_t *wcstr,
+ size_t sizeInWords,
+ const char *mbstr,
+ size_t count)
+{
+ int error;
+
+#if defined(_MSC_VER) && _MSC_VER >= 1400
+
+ /* Microsoft Visual Studio 2005 or later */
+ error = mbstowcs_s (pReturnValue, wcstr, sizeInWords, mbstr, count);
+
+#else
+
+ /* Older Visual Studio or non-Microsoft compiler */
+ size_t n;
+
+ /* Convert to wide-character string (or count characters) */
+ n = mbstowcs (wcstr, mbstr, sizeInWords);
+ if (!wcstr || n < count) {
+
+ /* Zero-terminate output buffer */
+ if (wcstr && sizeInWords) {
+ if (n >= sizeInWords) {
+ n = sizeInWords - 1;
+ }
+ wcstr[n] = 0;
+ }
+
+ /* Length of resulting multi-byte string WITH zero terminator */
+ if (pReturnValue) {
+ *pReturnValue = n + 1;
+ }
+
+ /* Success */
+ error = 0;
+
+ } else {
+
+ /* Could not convert string */
+ error = 1;
+
+ }
+
+#endif
+
+ return error;
+}
+
+/* Convert wide-character string to multi-byte string */
+static int
+dirent_wcstombs_s(
+ size_t *pReturnValue,
+ char *mbstr,
+ size_t sizeInBytes, /* max size of mbstr */
+ const wchar_t *wcstr,
+ size_t count)
+{
+ int error;
+
+#if defined(_MSC_VER) && _MSC_VER >= 1400
+
+ /* Microsoft Visual Studio 2005 or later */
+ error = wcstombs_s (pReturnValue, mbstr, sizeInBytes, wcstr, count);
+
+#else
+
+ /* Older Visual Studio or non-Microsoft compiler */
+ size_t n;
+
+ /* Convert to multi-byte string (or count the number of bytes needed) */
+ n = wcstombs (mbstr, wcstr, sizeInBytes);
+ if (!mbstr || n < count) {
+
+ /* Zero-terminate output buffer */
+ if (mbstr && sizeInBytes) {
+ if (n >= sizeInBytes) {
+ n = sizeInBytes - 1;
+ }
+ mbstr[n] = '\0';
+ }
+
+ /* Length of resulting multi-bytes string WITH zero-terminator */
+ if (pReturnValue) {
+ *pReturnValue = n + 1;
+ }
+
+ /* Success */
+ error = 0;
+
+ } else {
+
+ /* Cannot convert string */
+ error = 1;
+
+ }
+
+#endif
+
+ return error;
+}
+
+/* Set errno variable */
+static void
+dirent_set_errno(
+ int error)
+{
+#if defined(_MSC_VER) && _MSC_VER >= 1400
+
+ /* Microsoft Visual Studio 2005 and later */
+ _set_errno (error);
+
+#else
+
+ /* Non-Microsoft compiler or older Microsoft compiler */
+ errno = error;
+
+#endif
+}
+
+
+#ifdef __cplusplus
+}
+#endif
+#endif /*DIRENT_H*/
+
diff --git a/win/include/unistd.h b/win/include/unistd.h
new file mode 100644
index 0000000..14a84a5
--- /dev/null
+++ b/win/include/unistd.h
@@ -0,0 +1,47 @@
+#ifndef _UNISTD_H
+#define _UNISTD_H 1
+
+/* This file intended to serve as a drop-in replacement for
+ * unistd.h on Windows
+ * Please add functionality as neeeded
+ */
+
+#include <stdlib.h>
+#include <io.h>
+#define srandom srand
+#define random rand
+#if defined(__DMC__)
+#endif
+
+#if defined(_WIN32)
+#define _CRT_SECURE_NO_WARNINGS 1
+
+#ifndef F_OK
+#define F_OK 0
+#endif /* not F_OK */
+
+#ifndef X_OK
+#define X_OK 1
+#endif /* not X_OK */
+
+#ifndef W_OK
+#define W_OK 2
+#endif /* not W_OK */
+
+#ifndef R_OK
+#define R_OK 4
+#endif /* not R_OK */
+
+#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
+#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
+
+
+
+#endif
+
+#define access _access
+#define ftruncate _chsize
+
+#define ssize_t int
+
+#endif /* unistd.h */