Fossil SCM

Add makefile to ensure no DLLs are used for the MinGW build (zlib was installed as both a static and a dynamic library) Extensions and minor textual revisions to the online help for several commands

Arjen Markus 2011-05-27 06:48 arjen-doc-updates
Commit 6469b814ab739c06f64331d8a3eae6faaa50d7cc
+21 -14
--- src/content.c
+++ src/content.c
@@ -115,11 +115,11 @@
115115
contentCache.n = 0;
116116
contentCache.szTotal = 0;
117117
}
118118
119119
/*
120
-** Return the srcid associated with rid. Or return 0 if rid is
120
+** Return the srcid associated with rid. Or return 0 if rid is
121121
** original content and not a delta.
122122
*/
123123
static int findSrcid(int rid){
124124
static Stmt q;
125125
int srcid;
@@ -155,11 +155,11 @@
155155
** a phantom.
156156
*/
157157
int content_is_available(int rid){
158158
int srcid;
159159
int depth = 0; /* Limit to recursion depth */
160
- while( depth++ < 10000000 ){
160
+ while( depth++ < 10000000 ){
161161
if( bag_find(&contentCache.missing, rid) ){
162162
return 0;
163163
}
164164
if( bag_find(&contentCache.available, rid) ){
165165
return 1;
@@ -307,17 +307,24 @@
307307
/*
308308
** COMMAND: artifact
309309
**
310310
** Usage: %fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
311311
**
312
-** Extract an artifact by its SHA1 hash and write the results on
313
-** standard output, or if the optional 4th argument is given, in
314
-** the named output file.
312
+** Extract an artifact (file) by its artifact ID (the SHA1 hash) and write
313
+** the results on standard output, or if the optional 4th argument
314
+** is given, in the named output file.
315
+**
316
+** You can find the artifact ID in the Files section of the repository's
317
+** web interface (see the server/ui commands).
315318
**
316319
** Options:
317320
**
318321
** -R|--repository FILE Extract artifacts from repository FILE
322
+**
323
+**
324
+** SUMMARY: fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
325
+** Options: -R|--repository
319326
*/
320327
void artifact_cmd(void){
321328
int rid;
322329
Blob content;
323330
const char *zFile;
@@ -410,11 +417,11 @@
410417
411418
/* Recursively dephantomize all artifacts that are derived by
412419
** delta from artifact rid and which have not already been
413420
** cross-linked. */
414421
nChildUsed = 0;
415
- db_prepare(&q,
422
+ db_prepare(&q,
416423
"SELECT rid FROM delta"
417424
" WHERE srcid=%d"
418425
" AND NOT EXISTS(SELECT 1 FROM mlink WHERE mid=delta.rid)",
419426
rid
420427
);
@@ -449,11 +456,11 @@
449456
/*
450457
** Write content into the database. Return the record ID. If the
451458
** content is already in the database, just return the record ID.
452459
**
453460
** If srcId is specified, then pBlob is delta content from
454
-** the srcId record. srcId might be a phantom.
461
+** the srcId record. srcId might be a phantom.
455462
**
456463
** pBlob is normally uncompressed text. But if nBlob>0 then the
457464
** pBlob value has already been compressed and nBlob is its uncompressed
458465
** size. If nBlob>0 then zUuid must be valid.
459466
**
@@ -480,11 +487,11 @@
480487
Stmt s1;
481488
Blob cmpr;
482489
Blob hash;
483490
int markAsUnclustered = 0;
484491
int isDephantomize = 0;
485
-
492
+
486493
assert( g.repositoryOpen );
487494
assert( pBlob!=0 );
488495
assert( srcId==0 || zUuid!=0 );
489496
if( zUuid==0 ){
490497
assert( pBlob!=0 );
@@ -575,18 +582,18 @@
575582
** really a delta. Record this fact in the delta table.
576583
*/
577584
if( srcId ){
578585
db_multi_exec("REPLACE INTO delta(rid,srcid) VALUES(%d,%d)", rid, srcId);
579586
}
580
- if( !isDephantomize && bag_find(&contentCache.missing, rid) &&
587
+ if( !isDephantomize && bag_find(&contentCache.missing, rid) &&
581588
(srcId==0 || content_is_available(srcId)) ){
582589
content_mark_available(rid);
583590
}
584591
if( isDephantomize ){
585592
after_dephantomize(rid, 0);
586593
}
587
-
594
+
588595
/* Add the element to the unclustered table if has never been
589596
** previously seen.
590597
*/
591598
if( markAsUnclustered ){
592599
db_multi_exec("INSERT OR IGNORE INTO unclustered VALUES(%d)", rid);
@@ -623,11 +630,11 @@
623630
** Create a new phantom with the given UUID and return its artifact ID.
624631
*/
625632
int content_new(const char *zUuid, int isPrivate){
626633
int rid;
627634
static Stmt s1, s2, s3;
628
-
635
+
629636
assert( g.repositoryOpen );
630637
db_begin_transaction();
631638
if( uuid_is_shunned(zUuid) ){
632639
db_end_transaction(0);
633640
return 0;
@@ -719,15 +726,15 @@
719726
"SELECT 1 FROM private WHERE rid=:rid"
720727
);
721728
db_bind_int(&s1, ":rid", rid);
722729
rc = db_step(&s1);
723730
db_reset(&s1);
724
- return rc==SQLITE_ROW;
731
+ return rc==SQLITE_ROW;
725732
}
726733
727734
/*
728
-** Make sure an artifact is public.
735
+** Make sure an artifact is public.
729736
*/
730737
void content_make_public(int rid){
731738
static Stmt s1;
732739
db_static_prepare(&s1,
733740
"DELETE FROM private WHERE rid=:rid"
@@ -750,11 +757,11 @@
750757
**
751758
** If srcid is a delta that depends on rid, then srcid is
752759
** converted to undeltaed text.
753760
**
754761
** If either rid or srcid contain less than 50 bytes, or if the
755
-** resulting delta does not achieve a compression of at least 25%
762
+** resulting delta does not achieve a compression of at least 25%
756763
** the rid is left untouched.
757764
**
758765
** Return 1 if a delta is made and 0 if no delta occurs.
759766
*/
760767
int content_deltify(int rid, int srcid, int force){
761768
--- src/content.c
+++ src/content.c
@@ -115,11 +115,11 @@
115 contentCache.n = 0;
116 contentCache.szTotal = 0;
117 }
118
119 /*
120 ** Return the srcid associated with rid. Or return 0 if rid is
121 ** original content and not a delta.
122 */
123 static int findSrcid(int rid){
124 static Stmt q;
125 int srcid;
@@ -155,11 +155,11 @@
155 ** a phantom.
156 */
157 int content_is_available(int rid){
158 int srcid;
159 int depth = 0; /* Limit to recursion depth */
160 while( depth++ < 10000000 ){
161 if( bag_find(&contentCache.missing, rid) ){
162 return 0;
163 }
164 if( bag_find(&contentCache.available, rid) ){
165 return 1;
@@ -307,17 +307,24 @@
307 /*
308 ** COMMAND: artifact
309 **
310 ** Usage: %fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
311 **
312 ** Extract an artifact by its SHA1 hash and write the results on
313 ** standard output, or if the optional 4th argument is given, in
314 ** the named output file.
 
 
 
315 **
316 ** Options:
317 **
318 ** -R|--repository FILE Extract artifacts from repository FILE
 
 
 
 
319 */
320 void artifact_cmd(void){
321 int rid;
322 Blob content;
323 const char *zFile;
@@ -410,11 +417,11 @@
410
411 /* Recursively dephantomize all artifacts that are derived by
412 ** delta from artifact rid and which have not already been
413 ** cross-linked. */
414 nChildUsed = 0;
415 db_prepare(&q,
416 "SELECT rid FROM delta"
417 " WHERE srcid=%d"
418 " AND NOT EXISTS(SELECT 1 FROM mlink WHERE mid=delta.rid)",
419 rid
420 );
@@ -449,11 +456,11 @@
449 /*
450 ** Write content into the database. Return the record ID. If the
451 ** content is already in the database, just return the record ID.
452 **
453 ** If srcId is specified, then pBlob is delta content from
454 ** the srcId record. srcId might be a phantom.
455 **
456 ** pBlob is normally uncompressed text. But if nBlob>0 then the
457 ** pBlob value has already been compressed and nBlob is its uncompressed
458 ** size. If nBlob>0 then zUuid must be valid.
459 **
@@ -480,11 +487,11 @@
480 Stmt s1;
481 Blob cmpr;
482 Blob hash;
483 int markAsUnclustered = 0;
484 int isDephantomize = 0;
485
486 assert( g.repositoryOpen );
487 assert( pBlob!=0 );
488 assert( srcId==0 || zUuid!=0 );
489 if( zUuid==0 ){
490 assert( pBlob!=0 );
@@ -575,18 +582,18 @@
575 ** really a delta. Record this fact in the delta table.
576 */
577 if( srcId ){
578 db_multi_exec("REPLACE INTO delta(rid,srcid) VALUES(%d,%d)", rid, srcId);
579 }
580 if( !isDephantomize && bag_find(&contentCache.missing, rid) &&
581 (srcId==0 || content_is_available(srcId)) ){
582 content_mark_available(rid);
583 }
584 if( isDephantomize ){
585 after_dephantomize(rid, 0);
586 }
587
588 /* Add the element to the unclustered table if has never been
589 ** previously seen.
590 */
591 if( markAsUnclustered ){
592 db_multi_exec("INSERT OR IGNORE INTO unclustered VALUES(%d)", rid);
@@ -623,11 +630,11 @@
623 ** Create a new phantom with the given UUID and return its artifact ID.
624 */
625 int content_new(const char *zUuid, int isPrivate){
626 int rid;
627 static Stmt s1, s2, s3;
628
629 assert( g.repositoryOpen );
630 db_begin_transaction();
631 if( uuid_is_shunned(zUuid) ){
632 db_end_transaction(0);
633 return 0;
@@ -719,15 +726,15 @@
719 "SELECT 1 FROM private WHERE rid=:rid"
720 );
721 db_bind_int(&s1, ":rid", rid);
722 rc = db_step(&s1);
723 db_reset(&s1);
724 return rc==SQLITE_ROW;
725 }
726
727 /*
728 ** Make sure an artifact is public.
729 */
730 void content_make_public(int rid){
731 static Stmt s1;
732 db_static_prepare(&s1,
733 "DELETE FROM private WHERE rid=:rid"
@@ -750,11 +757,11 @@
750 **
751 ** If srcid is a delta that depends on rid, then srcid is
752 ** converted to undeltaed text.
753 **
754 ** If either rid or srcid contain less than 50 bytes, or if the
755 ** resulting delta does not achieve a compression of at least 25%
756 ** the rid is left untouched.
757 **
758 ** Return 1 if a delta is made and 0 if no delta occurs.
759 */
760 int content_deltify(int rid, int srcid, int force){
761
--- src/content.c
+++ src/content.c
@@ -115,11 +115,11 @@
115 contentCache.n = 0;
116 contentCache.szTotal = 0;
117 }
118
119 /*
120 ** Return the srcid associated with rid. Or return 0 if rid is
121 ** original content and not a delta.
122 */
123 static int findSrcid(int rid){
124 static Stmt q;
125 int srcid;
@@ -155,11 +155,11 @@
155 ** a phantom.
156 */
157 int content_is_available(int rid){
158 int srcid;
159 int depth = 0; /* Limit to recursion depth */
160 while( depth++ < 10000000 ){
161 if( bag_find(&contentCache.missing, rid) ){
162 return 0;
163 }
164 if( bag_find(&contentCache.available, rid) ){
165 return 1;
@@ -307,17 +307,24 @@
307 /*
308 ** COMMAND: artifact
309 **
310 ** Usage: %fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
311 **
312 ** Extract an artifact (file) by its artifact ID (the SHA1 hash) and write
313 ** the results on standard output, or if the optional 4th argument
314 ** is given, in the named output file.
315 **
316 ** You can find the artifact ID in the Files section of the repository's
317 ** web interface (see the server/ui commands).
318 **
319 ** Options:
320 **
321 ** -R|--repository FILE Extract artifacts from repository FILE
322 **
323 **
324 ** SUMMARY: fossil artifact ARTIFACT-ID ?OUTPUT-FILENAME? ?OPTIONS?
325 ** Options: -R|--repository
326 */
327 void artifact_cmd(void){
328 int rid;
329 Blob content;
330 const char *zFile;
@@ -410,11 +417,11 @@
417
418 /* Recursively dephantomize all artifacts that are derived by
419 ** delta from artifact rid and which have not already been
420 ** cross-linked. */
421 nChildUsed = 0;
422 db_prepare(&q,
423 "SELECT rid FROM delta"
424 " WHERE srcid=%d"
425 " AND NOT EXISTS(SELECT 1 FROM mlink WHERE mid=delta.rid)",
426 rid
427 );
@@ -449,11 +456,11 @@
456 /*
457 ** Write content into the database. Return the record ID. If the
458 ** content is already in the database, just return the record ID.
459 **
460 ** If srcId is specified, then pBlob is delta content from
461 ** the srcId record. srcId might be a phantom.
462 **
463 ** pBlob is normally uncompressed text. But if nBlob>0 then the
464 ** pBlob value has already been compressed and nBlob is its uncompressed
465 ** size. If nBlob>0 then zUuid must be valid.
466 **
@@ -480,11 +487,11 @@
487 Stmt s1;
488 Blob cmpr;
489 Blob hash;
490 int markAsUnclustered = 0;
491 int isDephantomize = 0;
492
493 assert( g.repositoryOpen );
494 assert( pBlob!=0 );
495 assert( srcId==0 || zUuid!=0 );
496 if( zUuid==0 ){
497 assert( pBlob!=0 );
@@ -575,18 +582,18 @@
582 ** really a delta. Record this fact in the delta table.
583 */
584 if( srcId ){
585 db_multi_exec("REPLACE INTO delta(rid,srcid) VALUES(%d,%d)", rid, srcId);
586 }
587 if( !isDephantomize && bag_find(&contentCache.missing, rid) &&
588 (srcId==0 || content_is_available(srcId)) ){
589 content_mark_available(rid);
590 }
591 if( isDephantomize ){
592 after_dephantomize(rid, 0);
593 }
594
595 /* Add the element to the unclustered table if has never been
596 ** previously seen.
597 */
598 if( markAsUnclustered ){
599 db_multi_exec("INSERT OR IGNORE INTO unclustered VALUES(%d)", rid);
@@ -623,11 +630,11 @@
630 ** Create a new phantom with the given UUID and return its artifact ID.
631 */
632 int content_new(const char *zUuid, int isPrivate){
633 int rid;
634 static Stmt s1, s2, s3;
635
636 assert( g.repositoryOpen );
637 db_begin_transaction();
638 if( uuid_is_shunned(zUuid) ){
639 db_end_transaction(0);
640 return 0;
@@ -719,15 +726,15 @@
726 "SELECT 1 FROM private WHERE rid=:rid"
727 );
728 db_bind_int(&s1, ":rid", rid);
729 rc = db_step(&s1);
730 db_reset(&s1);
731 return rc==SQLITE_ROW;
732 }
733
734 /*
735 ** Make sure an artifact is public.
736 */
737 void content_make_public(int rid){
738 static Stmt s1;
739 db_static_prepare(&s1,
740 "DELETE FROM private WHERE rid=:rid"
@@ -750,11 +757,11 @@
757 **
758 ** If srcid is a delta that depends on rid, then srcid is
759 ** converted to undeltaed text.
760 **
761 ** If either rid or srcid contain less than 50 bytes, or if the
762 ** resulting delta does not achieve a compression of at least 25%
763 ** the rid is left untouched.
764 **
765 ** Return 1 if a delta is made and 0 if no delta occurs.
766 */
767 int content_deltify(int rid, int srcid, int force){
768
+38 -10
--- src/db.c
+++ src/db.c
@@ -36,10 +36,15 @@
3636
#include <sys/types.h>
3737
#include <sys/stat.h>
3838
#include <unistd.h>
3939
#include <time.h>
4040
#include "db.h"
41
+
42
+#if defined(_WIN32) || defined(WIN32)
43
+# include <io.h>
44
+#define access(f,m) _access((f),(m))
45
+#endif
4146
4247
#if INTERFACE
4348
/*
4449
** An single SQL statement is represented as an instance of the following
4550
** structure.
@@ -56,11 +61,11 @@
5661
** Call this routine when a database error occurs.
5762
*/
5863
static void db_err(const char *zFormat, ...){
5964
va_list ap;
6065
char *z;
61
- static const char zRebuildMsg[] =
66
+ static const char zRebuildMsg[] =
6267
"If you have recently updated your fossil executable, you might\n"
6368
"need to run \"fossil all rebuild\" to bring the repository\n"
6469
"schemas up to date.\n";
6570
va_start(ap, zFormat);
6671
z = vmprintf(zFormat, ap);
@@ -642,11 +647,11 @@
642647
zVfs
643648
);
644649
if( rc!=SQLITE_OK ){
645650
db_err(sqlite3_errmsg(db));
646651
}
647
- sqlite3_busy_timeout(db, 5000);
652
+ sqlite3_busy_timeout(db, 5000);
648653
sqlite3_wal_autocheckpoint(db, 1); /* Set to checkpoint frequently */
649654
sqlite3_create_function(db, "now", 0, SQLITE_ANY, 0, db_now_function, 0, 0);
650655
return db;
651656
}
652657
@@ -751,11 +756,11 @@
751756
db_open_config(0);
752757
db_open_repository(0);
753758
754759
/* If the "isexe" column is missing from the vfile table, then
755760
** add it now. This code added on 2010-03-06. After all users have
756
- ** upgraded, this code can be safely deleted.
761
+ ** upgraded, this code can be safely deleted.
757762
*/
758763
rc = sqlite3_prepare(g.db, "SELECT isexe FROM vfile", -1, &pStmt, 0);
759764
nPrepare++;
760765
sqlite3_finalize(pStmt);
761766
if( rc==SQLITE_ERROR ){
@@ -763,11 +768,11 @@
763768
}
764769
765770
#if 0
766771
/* If the "mtime" column is missing from the vfile table, then
767772
** add it now. This code added on 2008-12-06. After all users have
768
- ** upgraded, this code can be safely deleted.
773
+ ** upgraded, this code can be safely deleted.
769774
*/
770775
rc = sqlite3_prepare(g.db, "SELECT mtime FROM vfile", -1, &pStmt, 0);
771776
sqlite3_finalize(pStmt);
772777
if( rc==SQLITE_ERROR ){
773778
sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN mtime INTEGER", 0, 0, 0);
@@ -775,11 +780,11 @@
775780
#endif
776781
777782
#if 0
778783
/* If the "origname" column is missing from the vfile table, then
779784
** add it now. This code added on 2008-11-09. After all users have
780
- ** upgraded, this code can be safely deleted.
785
+ ** upgraded, this code can be safely deleted.
781786
*/
782787
rc = sqlite3_prepare(g.db, "SELECT origname FROM vfile", -1, &pStmt, 0);
783788
sqlite3_finalize(pStmt);
784789
if( rc==SQLITE_ERROR ){
785790
sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN origname TEXT", 0, 0, 0);
@@ -792,11 +797,11 @@
792797
/*
793798
** Locate the root directory of the local repository tree. The root
794799
** directory is found by searching for a file named "_FOSSIL_" or ".fos"
795800
** that contains a valid repository database.
796801
**
797
-** If no valid _FOSSIL_ or .fos file is found, we move up one level and
802
+** If no valid _FOSSIL_ or .fos file is found, we move up one level and
798803
** try again. Once the file is found, the g.zLocalRoot variable is set
799804
** to the root of the repository tree and this routine returns 1. If
800805
** no database is found, then this routine return 0.
801806
**
802807
** This routine always opens the user database regardless of whether or
@@ -805,11 +810,11 @@
805810
*/
806811
int db_open_local(void){
807812
int i, n;
808813
char zPwd[2000];
809814
static const char *aDbName[] = { "/_FOSSIL_", "/.fos" };
810
-
815
+
811816
if( g.localOpen) return 1;
812817
file_getcwd(zPwd, sizeof(zPwd)-20);
813818
n = strlen(zPwd);
814819
while( n>0 ){
815820
if( file_access(zPwd, W_OK) ) break;
@@ -1166,10 +1171,14 @@
11661171
** Options:
11671172
**
11681173
** --admin-user|-A USERNAME
11691174
** --date-override DATETIME
11701175
**
1176
+**
1177
+** SUMMARY: fossil new ?OPTIONS? FILENAME
1178
+** Options: --admin-user|-A, --date-override
1179
+**
11711180
*/
11721181
void create_repository_cmd(void){
11731182
char *zPassword;
11741183
const char *zDate; /* Date of the initial check-in */
11751184
const char *zDefaultUser; /* Optional name of the default user */
@@ -1231,11 +1240,11 @@
12311240
}
12321241
}
12331242
12341243
/*
12351244
** Implement the cgi() SQL function. cgi() takes a an argument which is
1236
-** a name of CGI query parameter. The value of that parameter is returned,
1245
+** a name of CGI query parameter. The value of that parameter is returned,
12371246
** if available. optional second argument will be returned if the first
12381247
** doesn't exist as a CGI parameter.
12391248
*/
12401249
static void db_sql_cgi(sqlite3_context *context, int argc, sqlite3_value **argv){
12411250
const char* zP;
@@ -1541,11 +1550,18 @@
15411550
** for the repository is created with its root at the working directory.
15421551
** If VERSION is specified then that version is checked out. Otherwise
15431552
** the latest version is checked out. No files other than "manifest"
15441553
** and "manifest.uuid" are modified if the --keep option is present.
15451554
**
1555
+** You can find the version IDs via the web interface
1556
+** (see the server/ui commands).
1557
+**
15461558
** See also the "close" command.
1559
+**
1560
+**
1561
+** SUMMARY: fossil open FILENAME ?VERSION? ?OPTIONS?
1562
+** Options: --keep, --nested
15471563
*/
15481564
void cmd_open(void){
15491565
Blob path;
15501566
int vid;
15511567
int keepFlag;
@@ -1678,11 +1694,11 @@
16781694
**
16791695
** The "settings" command with no arguments lists all properties and their
16801696
** values. With just a property name it shows the value of that property.
16811697
** With a value argument it changes the property for the current repository.
16821698
**
1683
-** The "unset" command clears a property setting.
1699
+** The "unset" command clears a property setting (restoring fossil's default).
16841700
**
16851701
**
16861702
** auto-captcha If enabled, the Login page provides a button to
16871703
** fill in the captcha password. Default: on
16881704
**
@@ -1717,10 +1733,11 @@
17171733
**
17181734
** dont-push Prevent this repository from pushing from client to
17191735
** server. Useful when setting up a private branch.
17201736
**
17211737
** editor Text editor command used for check-in comments.
1738
+** (The default depends on the platform)
17221739
**
17231740
** gdiff-command External command to run when performing a graphical
17241741
** diff. If undefined, text diff will be used.
17251742
**
17261743
** gmerge-command A graphical merge conflict resolver command operating
@@ -1779,10 +1796,21 @@
17791796
**
17801797
** web-browser A shell command used to launch your preferred
17811798
** web browser when given a URL as an argument.
17821799
** Defaults to "start" on windows, "open" on Mac,
17831800
** and "firefox" on Unix.
1801
+**
1802
+** SUMMARY: fossil settings ?PROPERTY? ?VALUE? ?OPTIONS?
1803
+** fossil unset PROPERTY ?OPTIONS?
1804
+** Options: -global
1805
+** Where: PROPERTY = auto-captcha, auto-shun, autosync, binary-glob,
1806
+** clearsign, crnl-glob, default-perms, diff-command,
1807
+** dont-push, editor, gdiff-command, gmerge-command,
1808
+** http-port, https-login, ignore-glob, localauth,
1809
+** main-branch, manifest, max-upload, mtime-changes,
1810
+** pgp-command, proxy, repo-cksum, self-register,
1811
+** ssh-command, web-browser
17841812
*/
17851813
void setting_cmd(void){
17861814
int i;
17871815
int globalFlag = find_option("global","g",0)!=0;
17881816
int unsetFlag = g.argv[1][0]=='u';
@@ -1864,11 +1892,11 @@
18641892
** Print the approximate span of time from now to TIMESTAMP.
18651893
*/
18661894
void test_timespan_cmd(void){
18671895
double rDiff;
18681896
if( g.argc!=3 ) usage("TIMESTAMP");
1869
- sqlite3_open(":memory:", &g.db);
1897
+ sqlite3_open(":memory:", &g.db);
18701898
rDiff = db_double(0.0, "SELECT julianday('now') - julianday(%Q)", g.argv[2]);
18711899
fossil_print("Time differences: %s\n", db_timespan_name(rDiff));
18721900
sqlite3_close(g.db);
18731901
g.db = 0;
18741902
}
18751903
--- src/db.c
+++ src/db.c
@@ -36,10 +36,15 @@
36 #include <sys/types.h>
37 #include <sys/stat.h>
38 #include <unistd.h>
39 #include <time.h>
40 #include "db.h"
 
 
 
 
 
41
42 #if INTERFACE
43 /*
44 ** An single SQL statement is represented as an instance of the following
45 ** structure.
@@ -56,11 +61,11 @@
56 ** Call this routine when a database error occurs.
57 */
58 static void db_err(const char *zFormat, ...){
59 va_list ap;
60 char *z;
61 static const char zRebuildMsg[] =
62 "If you have recently updated your fossil executable, you might\n"
63 "need to run \"fossil all rebuild\" to bring the repository\n"
64 "schemas up to date.\n";
65 va_start(ap, zFormat);
66 z = vmprintf(zFormat, ap);
@@ -642,11 +647,11 @@
642 zVfs
643 );
644 if( rc!=SQLITE_OK ){
645 db_err(sqlite3_errmsg(db));
646 }
647 sqlite3_busy_timeout(db, 5000);
648 sqlite3_wal_autocheckpoint(db, 1); /* Set to checkpoint frequently */
649 sqlite3_create_function(db, "now", 0, SQLITE_ANY, 0, db_now_function, 0, 0);
650 return db;
651 }
652
@@ -751,11 +756,11 @@
751 db_open_config(0);
752 db_open_repository(0);
753
754 /* If the "isexe" column is missing from the vfile table, then
755 ** add it now. This code added on 2010-03-06. After all users have
756 ** upgraded, this code can be safely deleted.
757 */
758 rc = sqlite3_prepare(g.db, "SELECT isexe FROM vfile", -1, &pStmt, 0);
759 nPrepare++;
760 sqlite3_finalize(pStmt);
761 if( rc==SQLITE_ERROR ){
@@ -763,11 +768,11 @@
763 }
764
765 #if 0
766 /* If the "mtime" column is missing from the vfile table, then
767 ** add it now. This code added on 2008-12-06. After all users have
768 ** upgraded, this code can be safely deleted.
769 */
770 rc = sqlite3_prepare(g.db, "SELECT mtime FROM vfile", -1, &pStmt, 0);
771 sqlite3_finalize(pStmt);
772 if( rc==SQLITE_ERROR ){
773 sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN mtime INTEGER", 0, 0, 0);
@@ -775,11 +780,11 @@
775 #endif
776
777 #if 0
778 /* If the "origname" column is missing from the vfile table, then
779 ** add it now. This code added on 2008-11-09. After all users have
780 ** upgraded, this code can be safely deleted.
781 */
782 rc = sqlite3_prepare(g.db, "SELECT origname FROM vfile", -1, &pStmt, 0);
783 sqlite3_finalize(pStmt);
784 if( rc==SQLITE_ERROR ){
785 sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN origname TEXT", 0, 0, 0);
@@ -792,11 +797,11 @@
792 /*
793 ** Locate the root directory of the local repository tree. The root
794 ** directory is found by searching for a file named "_FOSSIL_" or ".fos"
795 ** that contains a valid repository database.
796 **
797 ** If no valid _FOSSIL_ or .fos file is found, we move up one level and
798 ** try again. Once the file is found, the g.zLocalRoot variable is set
799 ** to the root of the repository tree and this routine returns 1. If
800 ** no database is found, then this routine return 0.
801 **
802 ** This routine always opens the user database regardless of whether or
@@ -805,11 +810,11 @@
805 */
806 int db_open_local(void){
807 int i, n;
808 char zPwd[2000];
809 static const char *aDbName[] = { "/_FOSSIL_", "/.fos" };
810
811 if( g.localOpen) return 1;
812 file_getcwd(zPwd, sizeof(zPwd)-20);
813 n = strlen(zPwd);
814 while( n>0 ){
815 if( file_access(zPwd, W_OK) ) break;
@@ -1166,10 +1171,14 @@
1166 ** Options:
1167 **
1168 ** --admin-user|-A USERNAME
1169 ** --date-override DATETIME
1170 **
 
 
 
 
1171 */
1172 void create_repository_cmd(void){
1173 char *zPassword;
1174 const char *zDate; /* Date of the initial check-in */
1175 const char *zDefaultUser; /* Optional name of the default user */
@@ -1231,11 +1240,11 @@
1231 }
1232 }
1233
1234 /*
1235 ** Implement the cgi() SQL function. cgi() takes a an argument which is
1236 ** a name of CGI query parameter. The value of that parameter is returned,
1237 ** if available. optional second argument will be returned if the first
1238 ** doesn't exist as a CGI parameter.
1239 */
1240 static void db_sql_cgi(sqlite3_context *context, int argc, sqlite3_value **argv){
1241 const char* zP;
@@ -1541,11 +1550,18 @@
1541 ** for the repository is created with its root at the working directory.
1542 ** If VERSION is specified then that version is checked out. Otherwise
1543 ** the latest version is checked out. No files other than "manifest"
1544 ** and "manifest.uuid" are modified if the --keep option is present.
1545 **
 
 
 
1546 ** See also the "close" command.
 
 
 
 
1547 */
1548 void cmd_open(void){
1549 Blob path;
1550 int vid;
1551 int keepFlag;
@@ -1678,11 +1694,11 @@
1678 **
1679 ** The "settings" command with no arguments lists all properties and their
1680 ** values. With just a property name it shows the value of that property.
1681 ** With a value argument it changes the property for the current repository.
1682 **
1683 ** The "unset" command clears a property setting.
1684 **
1685 **
1686 ** auto-captcha If enabled, the Login page provides a button to
1687 ** fill in the captcha password. Default: on
1688 **
@@ -1717,10 +1733,11 @@
1717 **
1718 ** dont-push Prevent this repository from pushing from client to
1719 ** server. Useful when setting up a private branch.
1720 **
1721 ** editor Text editor command used for check-in comments.
 
1722 **
1723 ** gdiff-command External command to run when performing a graphical
1724 ** diff. If undefined, text diff will be used.
1725 **
1726 ** gmerge-command A graphical merge conflict resolver command operating
@@ -1779,10 +1796,21 @@
1779 **
1780 ** web-browser A shell command used to launch your preferred
1781 ** web browser when given a URL as an argument.
1782 ** Defaults to "start" on windows, "open" on Mac,
1783 ** and "firefox" on Unix.
 
 
 
 
 
 
 
 
 
 
 
1784 */
1785 void setting_cmd(void){
1786 int i;
1787 int globalFlag = find_option("global","g",0)!=0;
1788 int unsetFlag = g.argv[1][0]=='u';
@@ -1864,11 +1892,11 @@
1864 ** Print the approximate span of time from now to TIMESTAMP.
1865 */
1866 void test_timespan_cmd(void){
1867 double rDiff;
1868 if( g.argc!=3 ) usage("TIMESTAMP");
1869 sqlite3_open(":memory:", &g.db);
1870 rDiff = db_double(0.0, "SELECT julianday('now') - julianday(%Q)", g.argv[2]);
1871 fossil_print("Time differences: %s\n", db_timespan_name(rDiff));
1872 sqlite3_close(g.db);
1873 g.db = 0;
1874 }
1875
--- src/db.c
+++ src/db.c
@@ -36,10 +36,15 @@
36 #include <sys/types.h>
37 #include <sys/stat.h>
38 #include <unistd.h>
39 #include <time.h>
40 #include "db.h"
41
42 #if defined(_WIN32) || defined(WIN32)
43 # include <io.h>
44 #define access(f,m) _access((f),(m))
45 #endif
46
47 #if INTERFACE
48 /*
49 ** An single SQL statement is represented as an instance of the following
50 ** structure.
@@ -56,11 +61,11 @@
61 ** Call this routine when a database error occurs.
62 */
63 static void db_err(const char *zFormat, ...){
64 va_list ap;
65 char *z;
66 static const char zRebuildMsg[] =
67 "If you have recently updated your fossil executable, you might\n"
68 "need to run \"fossil all rebuild\" to bring the repository\n"
69 "schemas up to date.\n";
70 va_start(ap, zFormat);
71 z = vmprintf(zFormat, ap);
@@ -642,11 +647,11 @@
647 zVfs
648 );
649 if( rc!=SQLITE_OK ){
650 db_err(sqlite3_errmsg(db));
651 }
652 sqlite3_busy_timeout(db, 5000);
653 sqlite3_wal_autocheckpoint(db, 1); /* Set to checkpoint frequently */
654 sqlite3_create_function(db, "now", 0, SQLITE_ANY, 0, db_now_function, 0, 0);
655 return db;
656 }
657
@@ -751,11 +756,11 @@
756 db_open_config(0);
757 db_open_repository(0);
758
759 /* If the "isexe" column is missing from the vfile table, then
760 ** add it now. This code added on 2010-03-06. After all users have
761 ** upgraded, this code can be safely deleted.
762 */
763 rc = sqlite3_prepare(g.db, "SELECT isexe FROM vfile", -1, &pStmt, 0);
764 nPrepare++;
765 sqlite3_finalize(pStmt);
766 if( rc==SQLITE_ERROR ){
@@ -763,11 +768,11 @@
768 }
769
770 #if 0
771 /* If the "mtime" column is missing from the vfile table, then
772 ** add it now. This code added on 2008-12-06. After all users have
773 ** upgraded, this code can be safely deleted.
774 */
775 rc = sqlite3_prepare(g.db, "SELECT mtime FROM vfile", -1, &pStmt, 0);
776 sqlite3_finalize(pStmt);
777 if( rc==SQLITE_ERROR ){
778 sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN mtime INTEGER", 0, 0, 0);
@@ -775,11 +780,11 @@
780 #endif
781
782 #if 0
783 /* If the "origname" column is missing from the vfile table, then
784 ** add it now. This code added on 2008-11-09. After all users have
785 ** upgraded, this code can be safely deleted.
786 */
787 rc = sqlite3_prepare(g.db, "SELECT origname FROM vfile", -1, &pStmt, 0);
788 sqlite3_finalize(pStmt);
789 if( rc==SQLITE_ERROR ){
790 sqlite3_exec(g.db, "ALTER TABLE vfile ADD COLUMN origname TEXT", 0, 0, 0);
@@ -792,11 +797,11 @@
797 /*
798 ** Locate the root directory of the local repository tree. The root
799 ** directory is found by searching for a file named "_FOSSIL_" or ".fos"
800 ** that contains a valid repository database.
801 **
802 ** If no valid _FOSSIL_ or .fos file is found, we move up one level and
803 ** try again. Once the file is found, the g.zLocalRoot variable is set
804 ** to the root of the repository tree and this routine returns 1. If
805 ** no database is found, then this routine return 0.
806 **
807 ** This routine always opens the user database regardless of whether or
@@ -805,11 +810,11 @@
810 */
811 int db_open_local(void){
812 int i, n;
813 char zPwd[2000];
814 static const char *aDbName[] = { "/_FOSSIL_", "/.fos" };
815
816 if( g.localOpen) return 1;
817 file_getcwd(zPwd, sizeof(zPwd)-20);
818 n = strlen(zPwd);
819 while( n>0 ){
820 if( file_access(zPwd, W_OK) ) break;
@@ -1166,10 +1171,14 @@
1171 ** Options:
1172 **
1173 ** --admin-user|-A USERNAME
1174 ** --date-override DATETIME
1175 **
1176 **
1177 ** SUMMARY: fossil new ?OPTIONS? FILENAME
1178 ** Options: --admin-user|-A, --date-override
1179 **
1180 */
1181 void create_repository_cmd(void){
1182 char *zPassword;
1183 const char *zDate; /* Date of the initial check-in */
1184 const char *zDefaultUser; /* Optional name of the default user */
@@ -1231,11 +1240,11 @@
1240 }
1241 }
1242
1243 /*
1244 ** Implement the cgi() SQL function. cgi() takes a an argument which is
1245 ** a name of CGI query parameter. The value of that parameter is returned,
1246 ** if available. optional second argument will be returned if the first
1247 ** doesn't exist as a CGI parameter.
1248 */
1249 static void db_sql_cgi(sqlite3_context *context, int argc, sqlite3_value **argv){
1250 const char* zP;
@@ -1541,11 +1550,18 @@
1550 ** for the repository is created with its root at the working directory.
1551 ** If VERSION is specified then that version is checked out. Otherwise
1552 ** the latest version is checked out. No files other than "manifest"
1553 ** and "manifest.uuid" are modified if the --keep option is present.
1554 **
1555 ** You can find the version IDs via the web interface
1556 ** (see the server/ui commands).
1557 **
1558 ** See also the "close" command.
1559 **
1560 **
1561 ** SUMMARY: fossil open FILENAME ?VERSION? ?OPTIONS?
1562 ** Options: --keep, --nested
1563 */
1564 void cmd_open(void){
1565 Blob path;
1566 int vid;
1567 int keepFlag;
@@ -1678,11 +1694,11 @@
1694 **
1695 ** The "settings" command with no arguments lists all properties and their
1696 ** values. With just a property name it shows the value of that property.
1697 ** With a value argument it changes the property for the current repository.
1698 **
1699 ** The "unset" command clears a property setting (restoring fossil's default).
1700 **
1701 **
1702 ** auto-captcha If enabled, the Login page provides a button to
1703 ** fill in the captcha password. Default: on
1704 **
@@ -1717,10 +1733,11 @@
1733 **
1734 ** dont-push Prevent this repository from pushing from client to
1735 ** server. Useful when setting up a private branch.
1736 **
1737 ** editor Text editor command used for check-in comments.
1738 ** (The default depends on the platform)
1739 **
1740 ** gdiff-command External command to run when performing a graphical
1741 ** diff. If undefined, text diff will be used.
1742 **
1743 ** gmerge-command A graphical merge conflict resolver command operating
@@ -1779,10 +1796,21 @@
1796 **
1797 ** web-browser A shell command used to launch your preferred
1798 ** web browser when given a URL as an argument.
1799 ** Defaults to "start" on windows, "open" on Mac,
1800 ** and "firefox" on Unix.
1801 **
1802 ** SUMMARY: fossil settings ?PROPERTY? ?VALUE? ?OPTIONS?
1803 ** fossil unset PROPERTY ?OPTIONS?
1804 ** Options: -global
1805 ** Where: PROPERTY = auto-captcha, auto-shun, autosync, binary-glob,
1806 ** clearsign, crnl-glob, default-perms, diff-command,
1807 ** dont-push, editor, gdiff-command, gmerge-command,
1808 ** http-port, https-login, ignore-glob, localauth,
1809 ** main-branch, manifest, max-upload, mtime-changes,
1810 ** pgp-command, proxy, repo-cksum, self-register,
1811 ** ssh-command, web-browser
1812 */
1813 void setting_cmd(void){
1814 int i;
1815 int globalFlag = find_option("global","g",0)!=0;
1816 int unsetFlag = g.argv[1][0]=='u';
@@ -1864,11 +1892,11 @@
1892 ** Print the approximate span of time from now to TIMESTAMP.
1893 */
1894 void test_timespan_cmd(void){
1895 double rDiff;
1896 if( g.argc!=3 ) usage("TIMESTAMP");
1897 sqlite3_open(":memory:", &g.db);
1898 rDiff = db_double(0.0, "SELECT julianday('now') - julianday(%Q)", g.argv[2]);
1899 fossil_print("Time differences: %s\n", db_timespan_name(rDiff));
1900 sqlite3_close(g.db);
1901 g.db = 0;
1902 }
1903
--- src/descendants.c
+++ src/descendants.c
@@ -71,11 +71,11 @@
7171
bag_init(&pending);
7272
bag_insert(&pending, iBase);
7373
7474
/* This query returns all non-branch-merge children of check-in :rid.
7575
**
76
- ** If a a child is a merge of a fork within the same branch, it is
76
+ ** If a a child is a merge of a fork within the same branch, it is
7777
** returned. Only merge children in different branches are excluded.
7878
*/
7979
db_prepare(&q1,
8080
"SELECT cid FROM plink"
8181
" WHERE pid=:rid"
@@ -84,25 +84,25 @@
8484
" WHERE tagid=%d AND rid=plink.pid), 'trunk')"
8585
"=coalesce((SELECT value FROM tagxref"
8686
" WHERE tagid=%d AND rid=plink.cid), 'trunk'))",
8787
TAG_BRANCH, TAG_BRANCH
8888
);
89
-
89
+
9090
/* This query returns a single row if check-in :rid is the first
9191
** check-in of a new branch.
9292
*/
93
- db_prepare(&isBr,
93
+ db_prepare(&isBr,
9494
"SELECT 1 FROM tagxref"
9595
" WHERE rid=:rid AND tagid=%d AND tagtype=2"
9696
" AND srcid>0",
9797
TAG_BRANCH
9898
);
99
-
99
+
100100
/* This statement inserts check-in :rid into the LEAVES table.
101101
*/
102102
db_prepare(&ins, "INSERT OR IGNORE INTO leaves VALUES(:rid)");
103
-
103
+
104104
while( bag_count(&pending) ){
105105
int rid = bag_first(&pending);
106106
int cnt = 0;
107107
bag_remove(&pending, rid);
108108
db_bind_int(&q1, ":rid", rid);
@@ -233,10 +233,13 @@
233233
**
234234
** Usage: %fossil descendants ?BASELINE-ID?
235235
**
236236
** Find all leaf descendants of the baseline specified or if the argument
237237
** is omitted, of the baseline currently checked out.
238
+**
239
+**
240
+** SUMMARY: fossil descendants ?BASELINE-ID?
238241
*/
239242
void descendants_cmd(void){
240243
Stmt q;
241244
int base;
242245
@@ -259,18 +262,22 @@
259262
}
260263
261264
/*
262265
** COMMAND: leaves
263266
**
264
-** Usage: %fossil leaves ?--all? ?--closed?
267
+** Usage: %fossil leaves ?--all? ?--closed? ?--recompute?
265268
**
266269
** Find leaves of all branches. By default show only open leaves.
267270
** The --all flag causes all leaves (closed and open) to be shown.
268271
** The --closed flag shows only closed leaves.
269272
**
270273
** The --recompute flag causes the content of the "leaf" table in the
271274
** repository database to be recomputed.
275
+**
276
+**
277
+** SUMMARY: fossil leaves ?OPTIONS?
278
+** Options: --all, --closed, --recompute
272279
*/
273280
void leaves_cmd(void){
274281
Stmt q;
275282
Blob sql;
276283
int showAll = find_option("all", 0, 0)!=0;
277284
278285
ADDED win/Makefile.mingw_static
--- src/descendants.c
+++ src/descendants.c
@@ -71,11 +71,11 @@
71 bag_init(&pending);
72 bag_insert(&pending, iBase);
73
74 /* This query returns all non-branch-merge children of check-in :rid.
75 **
76 ** If a a child is a merge of a fork within the same branch, it is
77 ** returned. Only merge children in different branches are excluded.
78 */
79 db_prepare(&q1,
80 "SELECT cid FROM plink"
81 " WHERE pid=:rid"
@@ -84,25 +84,25 @@
84 " WHERE tagid=%d AND rid=plink.pid), 'trunk')"
85 "=coalesce((SELECT value FROM tagxref"
86 " WHERE tagid=%d AND rid=plink.cid), 'trunk'))",
87 TAG_BRANCH, TAG_BRANCH
88 );
89
90 /* This query returns a single row if check-in :rid is the first
91 ** check-in of a new branch.
92 */
93 db_prepare(&isBr,
94 "SELECT 1 FROM tagxref"
95 " WHERE rid=:rid AND tagid=%d AND tagtype=2"
96 " AND srcid>0",
97 TAG_BRANCH
98 );
99
100 /* This statement inserts check-in :rid into the LEAVES table.
101 */
102 db_prepare(&ins, "INSERT OR IGNORE INTO leaves VALUES(:rid)");
103
104 while( bag_count(&pending) ){
105 int rid = bag_first(&pending);
106 int cnt = 0;
107 bag_remove(&pending, rid);
108 db_bind_int(&q1, ":rid", rid);
@@ -233,10 +233,13 @@
233 **
234 ** Usage: %fossil descendants ?BASELINE-ID?
235 **
236 ** Find all leaf descendants of the baseline specified or if the argument
237 ** is omitted, of the baseline currently checked out.
 
 
 
238 */
239 void descendants_cmd(void){
240 Stmt q;
241 int base;
242
@@ -259,18 +262,22 @@
259 }
260
261 /*
262 ** COMMAND: leaves
263 **
264 ** Usage: %fossil leaves ?--all? ?--closed?
265 **
266 ** Find leaves of all branches. By default show only open leaves.
267 ** The --all flag causes all leaves (closed and open) to be shown.
268 ** The --closed flag shows only closed leaves.
269 **
270 ** The --recompute flag causes the content of the "leaf" table in the
271 ** repository database to be recomputed.
 
 
 
 
272 */
273 void leaves_cmd(void){
274 Stmt q;
275 Blob sql;
276 int showAll = find_option("all", 0, 0)!=0;
277
278 DDED win/Makefile.mingw_static
--- src/descendants.c
+++ src/descendants.c
@@ -71,11 +71,11 @@
71 bag_init(&pending);
72 bag_insert(&pending, iBase);
73
74 /* This query returns all non-branch-merge children of check-in :rid.
75 **
76 ** If a a child is a merge of a fork within the same branch, it is
77 ** returned. Only merge children in different branches are excluded.
78 */
79 db_prepare(&q1,
80 "SELECT cid FROM plink"
81 " WHERE pid=:rid"
@@ -84,25 +84,25 @@
84 " WHERE tagid=%d AND rid=plink.pid), 'trunk')"
85 "=coalesce((SELECT value FROM tagxref"
86 " WHERE tagid=%d AND rid=plink.cid), 'trunk'))",
87 TAG_BRANCH, TAG_BRANCH
88 );
89
90 /* This query returns a single row if check-in :rid is the first
91 ** check-in of a new branch.
92 */
93 db_prepare(&isBr,
94 "SELECT 1 FROM tagxref"
95 " WHERE rid=:rid AND tagid=%d AND tagtype=2"
96 " AND srcid>0",
97 TAG_BRANCH
98 );
99
100 /* This statement inserts check-in :rid into the LEAVES table.
101 */
102 db_prepare(&ins, "INSERT OR IGNORE INTO leaves VALUES(:rid)");
103
104 while( bag_count(&pending) ){
105 int rid = bag_first(&pending);
106 int cnt = 0;
107 bag_remove(&pending, rid);
108 db_bind_int(&q1, ":rid", rid);
@@ -233,10 +233,13 @@
233 **
234 ** Usage: %fossil descendants ?BASELINE-ID?
235 **
236 ** Find all leaf descendants of the baseline specified or if the argument
237 ** is omitted, of the baseline currently checked out.
238 **
239 **
240 ** SUMMARY: fossil descendants ?BASELINE-ID?
241 */
242 void descendants_cmd(void){
243 Stmt q;
244 int base;
245
@@ -259,18 +262,22 @@
262 }
263
264 /*
265 ** COMMAND: leaves
266 **
267 ** Usage: %fossil leaves ?--all? ?--closed? ?--recompute?
268 **
269 ** Find leaves of all branches. By default show only open leaves.
270 ** The --all flag causes all leaves (closed and open) to be shown.
271 ** The --closed flag shows only closed leaves.
272 **
273 ** The --recompute flag causes the content of the "leaf" table in the
274 ** repository database to be recomputed.
275 **
276 **
277 ** SUMMARY: fossil leaves ?OPTIONS?
278 ** Options: --all, --closed, --recompute
279 */
280 void leaves_cmd(void){
281 Stmt q;
282 Blob sql;
283 int showAll = find_option("all", 0, 0)!=0;
284
285 DDED win/Makefile.mingw_static
--- a/win/Makefile.mingw_static
+++ b/win/Makefile.mingw_static
@@ -0,0 +1,973 @@
1
+#!/usr/bin/make
2
+#
3
+# This is a makefile for us on windows using mingw.
4
+#
5
+#### The toplevel directory of the source tree. Fossil can be built
6
+# in a directory that is separate from the source tree. Just change
7
+# the following to point from the build directory to the src/ folder.
8
+#
9
+SRCDIR = src
10
+
11
+#### The directory into which object code files should be written.
12
+#
13
+#
14
+OBJDIR = wbld
15
+
16
+#### C Compiler and options for use in building executables that
17
+# will run on the platform that is doing the build. This is used
18
+# to compile code-generator programs as part of the build process.
19
+# See TCC below for the C compiler for building the finished binary.
20
+#
21
+BCC = gcc
22
+
23
+#### Enable HTTPS support via OpenSSL (links to libssl and libcrypto)
24
+#
25
+# FOSSIL_ENABLE_SSL=1
26
+
27
+#### The directory in which the zlib compression library is installed.
28
+#
29
+#
30
+ZLIBDIR = /programs/gnuwin32
31
+
32
+#### C Compile and options for use in building executables that
33
+# will run on the target platform. This is usually the same
34
+# as BCC, unless you are cross-compiling. This C compiler builds
35
+# the finished binary for fossil. The BCC compiler above is used
36
+# for building intermediate code-generator tools.
37
+#
38
+TCC = gcc -Os -Wall -DFOSSIL_I18N=0 -Wl,-Bstatic -L$(ZLIBDIR)/lib -I$(ZLIBDIR)/include
39
+
40
+# With HTTPS support
41
+ifdef FOSSIL_ENABLE_SSL
42
+TCC += -static -DFOSSIL_ENABLE_SSL=1
43
+endif
44
+
45
+#### Extra arguments for linking the finished binary. Fossil needs
46
+# to link against the Z-Lib compression library. There are no
47
+# other dependencies. We sometimes add the -static option here
48
+# so that we can build a static executable that will run in a
49
+# chroot jail.
50
+#
51
+#LIB = -lz -lws2_32
52
+# OpenSSL:
53
+ifdef FOSSIL_ENABLE_SSL
54
+LIB += -lssl -lcrypto -lgdi32
55
+endif
56
+LIB += -lmingwex -lz -lws2_32
57
+
58
+#### Tcl shell for use in running the fossil testsuite. This is only
59
+# used for testing. If you do not run
60
+#
61
+TCLSH = tclsh
62
+
63
+#### Nullsoft installer makensis location
64
+#
65
+MAKENSIS = "c:\Program Files\NSIS\makensis.exe"
66
+
67
+#### Include a configuration file that can override any one of these settings.
68
+#
69
+-include config.w32
70
+
71
+# STOP HERE
72
+# You should not need to change anything below this line
73
+#--------------------------------------------------------
74
+XTCC = $(TCC) $(CFLAGS) -I. -I$(SRCDIR)
75
+
76
+SRC = \
77
+ $(SRCDIR)/add.c \
78
+ $(SRCDIR)/allrepo.c \
79
+ $(SRCDIR)/attach.c \
80
+ $(SRCDIR)/bag.c \
81
+ $(SRCDIR)/bisect.c \
82
+ $(SRCDIR)/blob.c \
83
+ $(SRCDIR)/branch.c \
84
+ $(SRCDIR)/browse.c \
85
+ $(SRCDIR)/captcha.c \
86
+ $(SRCDIR)/cgi.c \
87
+ $(SRCDIR)/checkin.c \
88
+ $(SRCDIR)/checkout.c \
89
+ $(SRCDIR)/clearsign.c \
90
+ $(SRCDIR)/clone.c \
91
+ $(SRCDIR)/comformat.c \
92
+ $(SRCDIR)/configure.c \
93
+ $(SRCDIR)/content.c \
94
+ $(SRCDIR)/db.c \
95
+ $(SRCDIR)/delta.c \
96
+ $(SRCDIR)/deltacmd.c \
97
+ $(SRCDIR)/descendants.c \
98
+ $(SRCDIR)/diff.c \
99
+ $(SRCDIR)/diffcmd.c \
100
+ $(SRCDIR)/doc.c \
101
+ $(SRCDIR)/encode.c \
102
+ $(SRCDIR)/event.c \
103
+ $(SRCDIR)/export.c \
104
+ $(SRCDIR)/file.c \
105
+ $(SRCDIR)/finfo.c \
106
+ $(SRCDIR)/graph.c \
107
+ $(SRCDIR)/gzip.c \
108
+ $(SRCDIR)/http.c \
109
+ $(SRCDIR)/http_socket.c \
110
+ $(SRCDIR)/http_ssl.c \
111
+ $(SRCDIR)/http_transport.c \
112
+ $(SRCDIR)/import.c \
113
+ $(SRCDIR)/info.c \
114
+ $(SRCDIR)/leaf.c \
115
+ $(SRCDIR)/login.c \
116
+ $(SRCDIR)/main.c \
117
+ $(SRCDIR)/manifest.c \
118
+ $(SRCDIR)/md5.c \
119
+ $(SRCDIR)/merge.c \
120
+ $(SRCDIR)/merge3.c \
121
+ $(SRCDIR)/name.c \
122
+ $(SRCDIR)/path.c \
123
+ $(SRCDIR)/pivot.c \
124
+ $(SRCDIR)/popen.c \
125
+ $(SRCDIR)/pqueue.c \
126
+ $(SRCDIR)/printf.c \
127
+ $(SRCDIR)/rebuild.c \
128
+ $(SRCDIR)/report.c \
129
+ $(SRCDIR)/rss.c \
130
+ $(SRCDIR)/schema.c \
131
+ $(SRCDIR)/search.c \
132
+ $(SRCDIR)/setup.c \
133
+ $(SRCDIR)/sha1.c \
134
+ $(SRCDIR)/shun.c \
135
+ $(SRCDIR)/skins.c \
136
+ $(SRCDIR)/sqlcmd.c \
137
+ $(SRCDIR)/stash.c \
138
+ $(SRCDIR)/stat.c \
139
+ $(SRCDIR)/style.c \
140
+ $(SRCDIR)/sync.c \
141
+ $(SRCDIR)/tag.c \
142
+ $(SRCDIR)/tar.c \
143
+ $(SRCDIR)/th_main.c \
144
+ $(SRCDIR)/timeline.c \
145
+ $(SRCDIR)/tkt.c \
146
+ $(SRCDIR)/tktsetup.c \
147
+ $(SRCDIR)/undo.c \
148
+ $(SRCDIR)/update.c \
149
+ $(SRCDIR)/url.c \
150
+ $(SRCDIR)/user.c \
151
+ $(SRCDIR)/verify.c \
152
+ $(SRCDIR)/vfile.c \
153
+ $(SRCDIR)/wiki.c \
154
+ $(SRCDIR)/wikiformat.c \
155
+ $(SRCDIR)/winhttp.c \
156
+ $(SRCDIR)/xfer.c \
157
+ $(SRCDIR)/zip.c
158
+
159
+TRANS_SRC = \
160
+ $(OBJDIR)/add_.c \
161
+ $(OBJDIR)/allrepo_.c \
162
+ $(OBJDIR)/attach_.c \
163
+ $(OBJDIR)/bag_.c \
164
+ $(OBJDIR)/bisect_.c \
165
+ $(OBJDIR)/blob_.c \
166
+ $(OBJDIR)/branch_.c \
167
+ $(OBJDIR)/browse_.c \
168
+ $(OBJDIR)/captcha_.c \
169
+ $(OBJDIR)/cgi_.c \
170
+ $(OBJDIR)/checkin_.c \
171
+ $(OBJDIR)/checkout_.c \
172
+ $(OBJDIR)/clearsign_.c \
173
+ $(OBJDIR)/clone_.c \
174
+ $(OBJDIR)/comformat_.c \
175
+ $(OBJDIR)/configure_.c \
176
+ $(OBJDIR)/content_.c \
177
+ $(OBJDIR)/db_.c \
178
+ $(OBJDIR)/delta_.c \
179
+ $(OBJDIR)/deltacmd_.c \
180
+ $(OBJDIR)/descendants_.c \
181
+ $(OBJDIR)/diff_.c \
182
+ $(OBJDIR)/diffcmd_.c \
183
+ $(OBJDIR)/doc_.c \
184
+ $(OBJDIR)/encode_.c \
185
+ $(OBJDIR)/event_.c \
186
+ $(OBJDIR)/export_.c \
187
+ $(OBJDIR)/file_.c \
188
+ $(OBJDIR)/finfo_.c \
189
+ $(OBJDIR)/graph_.c \
190
+ $(OBJDIR)/gzip_.c \
191
+ $(OBJDIR)/http_.c \
192
+ $(OBJDIR)/http_socket_.c \
193
+ $(OBJDIR)/http_ssl_.c \
194
+ $(OBJDIR)/http_transport_.c \
195
+ $(OBJDIR)/import_.c \
196
+ $(OBJDIR)/info_.c \
197
+ $(OBJDIR)/leaf_.c \
198
+ $(OBJDIR)/login_.c \
199
+ $(OBJDIR)/main_.c \
200
+ $(OBJDIR)/manifest_.c \
201
+ $(OBJDIR)/md5_.c \
202
+ $(OBJDIR)/merge_.c \
203
+ $(OBJDIR)/merge3_.c \
204
+ $(OBJDIR)/name_.c \
205
+ $(OBJDIR)/path_.c \
206
+ $(OBJDIR)/pivot_.c \
207
+ $(OBJDIR)/popen_.c \
208
+ $(OBJDIR)/pqueue_.c \
209
+ $(OBJDIR)/printf_.c \
210
+ $(OBJDIR)/rebuild_.c \
211
+ $(OBJDIR)/report_.c \
212
+ $(OBJDIR)/rss_.c \
213
+ $(OBJDIR)/schema_.c \
214
+ $(OBJDIR)/search_.c \
215
+ $(OBJDIR)/setup_.c \
216
+ $(OBJDIR)/sha1_.c \
217
+ $(OBJDIR)/shun_.c \
218
+ $(OBJDIR)/skins_.c \
219
+ $(OBJDIR)/sqlcmd_.c \
220
+ $(OBJDIR)/stash_.c \
221
+ $(OBJDIR)/stat_.c \
222
+ $(OBJDIR)/style_.c \
223
+ $(OBJDIR)/sync_.c \
224
+ $(OBJDIR)/tag_.c \
225
+ $(OBJDIR)/tar_.c \
226
+ $(OBJDIR)/th_main_.c \
227
+ $(OBJDIR)/timeline_.c \
228
+ $(OBJDIR)/tkt_.c \
229
+ $(OBJDIR)/tktsetup_.c \
230
+ $(OBJDIR)/undo_.c \
231
+ $(OBJDIR)/update_.c \
232
+ $(OBJDIR)/url_.c \
233
+ $(OBJDIR)/user_.c \
234
+ $(OBJDIR)/verify_.c \
235
+ $(OBJDIR)/vfile_.c \
236
+ $(OBJDIR)/wiki_.c \
237
+ $(OBJDIR)/wikiformat_.c \
238
+ $(OBJDIR)/winhttp_.c \
239
+ $(OBJDIR)/xfer_.c \
240
+ $(OBJDIR)/zip_.c
241
+
242
+OBJ = \
243
+ $(OBJDIR)/add.o \
244
+ $(OBJDIR)/allrepo.o \
245
+ $(OBJDIR)/attach.o \
246
+ $(OBJDIR)/bag.o \
247
+ $(OBJDIR)/bisect.o \
248
+ $(OBJDIR)/blob.o \
249
+ $(OBJDIR)/branch.o \
250
+ $(OBJDIR)/browse.o \
251
+ $(OBJDIR)/captcha.o \
252
+ $(OBJDIR)/cgi.o \
253
+ $(OBJDIR)/checkin.o \
254
+ $(OBJDIR)/checkout.o \
255
+ $(OBJDIR)/clearsign.o \
256
+ $(OBJDIR)/clone.o \
257
+ $(OBJDIR)/comformat.o \
258
+ $(OBJDIR)/configure.o \
259
+ $(OBJDIR)/content.o \
260
+ $(OBJDIR)/db.o \
261
+ $(OBJDIR)/delta.o \
262
+ $(OBJDIR)/deltacmd.o \
263
+ $(OBJDIR)/descendants.o \
264
+ $(OBJDIR)/diff.o \
265
+ $(OBJDIR)/diffcmd.o \
266
+ $(OBJDIR)/doc.o \
267
+ $(OBJDIR)/encode.o \
268
+ $(OBJDIR)/event.o \
269
+ $(OBJDIR)/export.o \
270
+ $(OBJDIR)/file.o \
271
+ $(OBJDIR)/finfo.o \
272
+ $(OBJDIR)/graph.o \
273
+ $(OBJDIR)/gzip.o \
274
+ $(OBJDIR)/http.o \
275
+ $(OBJDIR)/http_socket.o \
276
+ $(OBJDIR)/http_ssl.o \
277
+ $(OBJDIR)/http_transport.o \
278
+ $(OBJDIR)/import.o \
279
+ $(OBJDIR)/info.o \
280
+ $(OBJDIR)/leaf.o \
281
+ $(OBJDIR)/login.o \
282
+ $(OBJDIR)/main.o \
283
+ $(OBJDIR)/manifest.o \
284
+ $(OBJDIR)/md5.o \
285
+ $(OBJDIR)/merge.o \
286
+ $(OBJDIR)/merge3.o \
287
+ $(OBJDIR)/name.o \
288
+ $(OBJDIR)/path.o \
289
+ $(OBJDIR)/pivot.o \
290
+ $(OBJDIR)/popen.o \
291
+ $(OBJDIR)/pqueue.o \
292
+ $(OBJDIR)/printf.o \
293
+ $(OBJDIR)/rebuild.o \
294
+ $(OBJDIR)/report.o \
295
+ $(OBJDIR)/rss.o \
296
+ $(OBJDIR)/schema.o \
297
+ $(OBJDIR)/search.o \
298
+ $(OBJDIR)/setup.o \
299
+ $(OBJDIR)/sha1.o \
300
+ $(OBJDIR)/shun.o \
301
+ $(OBJDIR)/skins.o \
302
+ $(OBJDIR)/sqlcmd.o \
303
+ $(OBJDIR)/stash.o \
304
+ $(OBJDIR)/stat.o \
305
+ $(OBJDIR)/style.o \
306
+ $(OBJDIR)/sync.o \
307
+ $(OBJDIR)/tag.o \
308
+ $(OBJDIR)/tar.o \
309
+ $(OBJDIR)/th_main.o \
310
+ $(OBJDIR)/timeline.o \
311
+ $(OBJDIR)/tkt.o \
312
+ $(OBJDIR)/tktsetup.o \
313
+ $(OBJDIR)/undo.o \
314
+ $(OBJDIR)/update.o \
315
+ $(OBJDIR)/url.o \
316
+ $(OBJDIR)/user.o \
317
+ $(OBJDIR)/verify.o \
318
+ $(OBJDIR)/vfile.o \
319
+ $(OBJDIR)/wiki.o \
320
+ $(OBJDIR)/wikiformat.o \
321
+ $(OBJDIR)/winhttp.o \
322
+ $(OBJDIR)/xfer.o \
323
+ $(OBJDIR)/zip.o
324
+
325
+APPNAME = fossil.exe
326
+TRANSLATE = $(subst /,\\,$(OBJDIR)/translate.exe)
327
+MAKEHEADERS = $(subst /,\\,$(OBJDIR)/makeheaders.exe)
328
+MKINDEX = $(subst /,\\,$(OBJDIR)/mkindex.exe)
329
+VERSION = $(subst /,\\,$(OBJDIR)/version.exe)
330
+
331
+
332
+all: $(OBJDIR) $(APPNAME)
333
+
334
+$(OBJDIR)/icon.o: $(SRCDIR)/../win/icon.rc
335
+ cp $(SRCDIR)/../win/icon.rc $(OBJDIR)
336
+ windres $(OBJDIR)/icon.rc -o $(OBJDIR)/icon.o
337
+
338
+install: $(APPNAME)
339
+ mv $(APPNAME) $(INSTALLDIR)
340
+
341
+$(OBJDIR):
342
+ mkdir $(OBJDIR)
343
+
344
+$(OBJDIR)/translate: $(SRCDIR)/translate.c
345
+ $(BCC) -o $(OBJDIR)/translate $(SRCDIR)/translate.c
346
+
347
+$(OBJDIR)/makeheaders: $(SRCDIR)/makeheaders.c
348
+ $(BCC) -o $(OBJDIR)/makeheaders $(SRCDIR)/makeheaders.c
349
+
350
+$(OBJDIR)/mkindex: $(SRCDIR)/mkindex.c
351
+ $(BCC) -o $(OBJDIR)/mkindex $(SRCDIR)/mkindex.c
352
+
353
+$(VERSION): $(SRCDIR)/../win/version.c
354
+ $(BCC) -o $(OBJDIR)/version $(SRCDIR)/../win/version.c
355
+
356
+# WARNING. DANGER. Running the testsuite modifies the repository the
357
+# build is done from, i.e. the checkout belongs to. Do not sync/push
358
+# the repository after running the tests.
359
+test: $(APPNAME)
360
+ $(TCLSH) test/tester.tcl $(APPNAME)
361
+
362
+$(OBJDIR)/VERSION.h: $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(VERSION)
363
+ $(VERSION) $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest >$(OBJDIR)/VERSION.h
364
+
365
+EXTRAOBJ = $(OBJDIR)/sqlite3.o $(OBJDIR)/shell.o $(OBJDIR)/th.o $(OBJDIR)/th_lang.o
366
+
367
+$(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/icon.o
368
+ $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/icon.o
369
+
370
+# This rule prevents make from using its default rules to try build
371
+# an executable named "manifest" out of the file named "manifest.c"
372
+#
373
+$(SRCDIR)/../manifest:
374
+ # noop
375
+
376
+# Requires msys to be installed in addition to the mingw, for the "rm"
377
+# command. "del" will not work here because it is not a separate command
378
+# but a MSDOS-shell builtin.
379
+#
380
+clean:
381
+ rm -rf $(OBJDIR) $(APPNAME)
382
+
383
+setup: $(OBJDIR) $(APPNAME)
384
+ $(MAKENSIS) ./fossil.nsi
385
+
386
+
387
+$(OBJDIR)/page_index.h: $(TRANS_SRC) $(OBJDIR)/mkindex
388
+ $(MKINDEX) $(TRANS_SRC) >$@
389
+$(OBJDIR)/headers: $(OBJDIR)/page_index.h $(OBJDIR)/makeheaders $(OBJDIR)/VERSION.h
390
+ $(MAKEHEADERS) $(OBJDIR)/add_.c:$(OBJDIR)/add.h $(OBJDIR)/allrepo_.c:$(OBJDIR)/allrepo.h $(OBJDIR)/attach_.c:$(OBJDIR)/attach.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)/captcha_.c:$(OBJDIR)/captcha.h $(OBJDIR)/cgi_.c:$(OBJDIR)/cgi.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)/comformat_.c:$(OBJDIR)/comformat.h $(OBJDIR)/configure_.c:$(OBJDIR)/configure.h $(OBJDIR)/content_.c:$(OBJDIR)/content.h $(OBJDIR)/db_.c:$(OBJDIR)/db.h $(OBJDIR)/delta_.c:$(OBJDIR)/delta.h $(OBJDIR)/deltacmd_.c:$(OBJDIR)/deltacmd.h $(OBJDIR)/descendants_.c:$(OBJDIR)/descendants.h $(OBJDIR)/diff_.c:$(OBJDIR)/diff.h $(OBJDIR)/diffcmd_.c:$(OBJDIR)/diffcmd.h $(OBJDIR)/doc_.c:$(OBJDIR)/doc.h $(OBJDIR)/encode_.c:$(OBJDIR)/encode.h $(OBJDIR)/event_.c:$(OBJDIR)/event.h $(OBJDIR)/export_.c:$(OBJDIR)/export.h $(OBJDIR)/file_.c:$(OBJDIR)/file.h $(OBJDIR)/finfo_.c:$(OBJDIR)/finfo.h $(OBJDIR)/graph_.c:$(OBJDIR)/graph.h $(OBJDIR)/gzip_.c:$(OBJDIR)/gzip.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)/leaf_.c:$(OBJDIR)/leaf.h $(OBJDIR)/login_.c:$(OBJDIR)/login.h $(OBJDIR)/main_.c:$(OBJDIR)/main.h $(OBJDIR)/manifest_.c:$(OBJDIR)/manifest.h $(OBJDIR)/md5_.c:$(OBJDIR)/md5.h $(OBJDIR)/merge_.c:$(OBJDIR)/merge.h $(OBJDIR)/merge3_.c:$(OBJDIR)/merge3.h $(OBJDIR)/name_.c:$(OBJDIR)/name.h $(OBJDIR)/path_.c:$(OBJDIR)/path.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)/rebuild_.c:$(OBJDIR)/rebuild.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)/setup_.c:$(OBJDIR)/setup.h $(OBJDIR)/sha1_.c:$(OBJDIR)/sha1.h $(OBJDIR)/shun_.c:$(OBJDIR)/shun.h $(OBJDIR)/skins_.c:$(OBJDIR)/skins.h $(OBJDIR)/sqlcmd_.c:$(OBJDIR)/sqlcmd.h $(OBJDIR)/stash_.c:$(OBJDIR)/stash.h $(OBJDIR)/stat_.c:$(OBJDIR)/stat.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)/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)/update_.c:$(OBJDIR)/update.h $(OBJDIR)/url_.c:$(OBJDIR)/url.h $(OBJDIR)/user_.c:$(OBJDIR)/user.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)/winhttp_.c:$(OBJDIR)/winhttp.h $(OBJDIR)/xfer_.c:$(OBJDIR)/xfer.h $(OBJDIR)/zip_.c:$(OBJDIR)/zip.h $(SRCDIR)/sqlite3.h $(SRCDIR)/th.h $(OBJDIR)/VERSION.h
391
+ echo Done >$(OBJDIR)/headers
392
+
393
+$(OBJDIR)/headers: Makefile
394
+Makefile:
395
+$(OBJDIR)/add_.c: $(SRCDIR)/add.c $(OBJDIR)/translate
396
+ $(TRANSLATE) $(SRCDIR)/add.c >$(OBJDIR)/add_.c
397
+
398
+$(OBJDIR)/add.o: $(OBJDIR)/add_.c $(OBJDIR)/add.h $(SRCDIR)/config.h
399
+ $(XTCC) -o $(OBJDIR)/add.o -c $(OBJDIR)/add_.c
400
+
401
+add.h: $(OBJDIR)/headers
402
+$(OBJDIR)/allrepo_.c: $(SRCDIR)/allrepo.c $(OBJDIR)/translate
403
+ $(TRANSLATE) $(SRCDIR)/allrepo.c >$(OBJDIR)/allrepo_.c
404
+
405
+$(OBJDIR)/allrepo.o: $(OBJDIR)/allrepo_.c $(OBJDIR)/allrepo.h $(SRCDIR)/config.h
406
+ $(XTCC) -o $(OBJDIR)/allrepo.o -c $(OBJDIR)/allrepo_.c
407
+
408
+allrepo.h: $(OBJDIR)/headers
409
+$(OBJDIR)/attach_.c: $(SRCDIR)/attach.c $(OBJDIR)/translate
410
+ $(TRANSLATE) $(SRCDIR)/attach.c >$(OBJDIR)/attach_.c
411
+
412
+$(OBJDIR)/attach.o: $(OBJDIR)/attach_.c $(OBJDIR)/attach.h $(SRCDIR)/config.h
413
+ $(XTCC) -o $(OBJDIR)/attach.o -c $(OBJDIR)/attach_.c
414
+
415
+attach.h: $(OBJDIR)/headers
416
+$(OBJDIR)/bag_.c: $(SRCDIR)/bag.c $(OBJDIR)/translate
417
+ $(TRANSLATE) $(SRCDIR)/bag.c >$(OBJDIR)/bag_.c
418
+
419
+$(OBJDIR)/bag.o: $(OBJDIR)/bag_.c $(OBJDIR)/bag.h $(SRCDIR)/config.h
420
+ $(XTCC) -o $(OBJDIR)/bag.o -c $(OBJDIR)/bag_.c
421
+
422
+bag.h: $(OBJDIR)/headers
423
+$(OBJDIR)/bisect_.c: $(SRCDIR)/bisect.c $(OBJDIR)/translate
424
+ $(TRANSLATE) $(SRCDIR)/bisect.c >$(OBJDIR)/bisect_.c
425
+
426
+$(OBJDIR)/bisect.o: $(OBJDIR)/bisect_.c $(OBJDIR)/bisect.h $(SRCDIR)/config.h
427
+ $(XTCC) -o $(OBJDIR)/bisect.o -c $(OBJDIR)/bisect_.c
428
+
429
+bisect.h: $(OBJDIR)/headers
430
+$(OBJDIR)/blob_.c: $(SRCDIR)/blob.c $(OBJDIR)/translate
431
+ $(TRANSLATE) $(SRCDIR)/blob.c >$(OBJDIR)/blob_.c
432
+
433
+$(OBJDIR)/blob.o: $(OBJDIR)/blob_.c $(OBJDIR)/blob.h $(SRCDIR)/config.h
434
+ $(XTCC) -o $(OBJDIR)/blob.o -c $(OBJDIR)/blob_.c
435
+
436
+blob.h: $(OBJDIR)/headers
437
+$(OBJDIR)/branch_.c: $(SRCDIR)/branch.c $(OBJDIR)/translate
438
+ $(TRANSLATE) $(SRCDIR)/branch.c >$(OBJDIR)/branch_.c
439
+
440
+$(OBJDIR)/branch.o: $(OBJDIR)/branch_.c $(OBJDIR)/branch.h $(SRCDIR)/config.h
441
+ $(XTCC) -o $(OBJDIR)/branch.o -c $(OBJDIR)/branch_.c
442
+
443
+branch.h: $(OBJDIR)/headers
444
+$(OBJDIR)/browse_.c: $(SRCDIR)/browse.c $(OBJDIR)/translate
445
+ $(TRANSLATE) $(SRCDIR)/browse.c >$(OBJDIR)/browse_.c
446
+
447
+$(OBJDIR)/browse.o: $(OBJDIR)/browse_.c $(OBJDIR)/browse.h $(SRCDIR)/config.h
448
+ $(XTCC) -o $(OBJDIR)/browse.o -c $(OBJDIR)/browse_.c
449
+
450
+browse.h: $(OBJDIR)/headers
451
+$(OBJDIR)/captcha_.c: $(SRCDIR)/captcha.c $(OBJDIR)/translate
452
+ $(TRANSLATE) $(SRCDIR)/captcha.c >$(OBJDIR)/captcha_.c
453
+
454
+$(OBJDIR)/captcha.o: $(OBJDIR)/captcha_.c $(OBJDIR)/captcha.h $(SRCDIR)/config.h
455
+ $(XTCC) -o $(OBJDIR)/captcha.o -c $(OBJDIR)/captcha_.c
456
+
457
+captcha.h: $(OBJDIR)/headers
458
+$(OBJDIR)/cgi_.c: $(SRCDIR)/cgi.c $(OBJDIR)/translate
459
+ $(TRANSLATE) $(SRCDIR)/cgi.c >$(OBJDIR)/cgi_.c
460
+
461
+$(OBJDIR)/cgi.o: $(OBJDIR)/cgi_.c $(OBJDIR)/cgi.h $(SRCDIR)/config.h
462
+ $(XTCC) -o $(OBJDIR)/cgi.o -c $(OBJDIR)/cgi_.c
463
+
464
+cgi.h: $(OBJDIR)/headers
465
+$(OBJDIR)/checkin_.c: $(SRCDIR)/checkin.c $(OBJDIR)/translate
466
+ $(TRANSLATE) $(SRCDIR)/checkin.c >$(OBJDIR)/checkin_.c
467
+
468
+$(OBJDIR)/checkin.o: $(OBJDIR)/checkin_.c $(OBJDIR)/checkin.h $(SRCDIR)/config.h
469
+ $(XTCC) -o $(OBJDIR)/checkin.o -c $(OBJDIR)/checkin_.c
470
+
471
+checkin.h: $(OBJDIR)/headers
472
+$(OBJDIR)/checkout_.c: $(SRCDIR)/checkout.c $(OBJDIR)/translate
473
+ $(TRANSLATE) $(SRCDIR)/checkout.c >$(OBJDIR)/checkout_.c
474
+
475
+$(OBJDIR)/checkout.o: $(OBJDIR)/checkout_.c $(OBJDIR)/checkout.h $(SRCDIR)/config.h
476
+ $(XTCC) -o $(OBJDIR)/checkout.o -c $(OBJDIR)/checkout_.c
477
+
478
+checkout.h: $(OBJDIR)/headers
479
+$(OBJDIR)/clearsign_.c: $(SRCDIR)/clearsign.c $(OBJDIR)/translate
480
+ $(TRANSLATE) $(SRCDIR)/clearsign.c >$(OBJDIR)/clearsign_.c
481
+
482
+$(OBJDIR)/clearsign.o: $(OBJDIR)/clearsign_.c $(OBJDIR)/clearsign.h $(SRCDIR)/config.h
483
+ $(XTCC) -o $(OBJDIR)/clearsign.o -c $(OBJDIR)/clearsign_.c
484
+
485
+clearsign.h: $(OBJDIR)/headers
486
+$(OBJDIR)/clone_.c: $(SRCDIR)/clone.c $(OBJDIR)/translate
487
+ $(TRANSLATE) $(SRCDIR)/clone.c >$(OBJDIR)/clone_.c
488
+
489
+$(OBJDIR)/clone.o: $(OBJDIR)/clone_.c $(OBJDIR)/clone.h $(SRCDIR)/config.h
490
+ $(XTCC) -o $(OBJDIR)/clone.o -c $(OBJDIR)/clone_.c
491
+
492
+clone.h: $(OBJDIR)/headers
493
+$(OBJDIR)/comformat_.c: $(SRCDIR)/comformat.c $(OBJDIR)/translate
494
+ $(TRANSLATE) $(SRCDIR)/comformat.c >$(OBJDIR)/comformat_.c
495
+
496
+$(OBJDIR)/comformat.o: $(OBJDIR)/comformat_.c $(OBJDIR)/comformat.h $(SRCDIR)/config.h
497
+ $(XTCC) -o $(OBJDIR)/comformat.o -c $(OBJDIR)/comformat_.c
498
+
499
+comformat.h: $(OBJDIR)/headers
500
+$(OBJDIR)/configure_.c: $(SRCDIR)/configure.c $(OBJDIR)/translate
501
+ $(TRANSLATE) $(SRCDIR)/configure.c >$(OBJDIR)/configure_.c
502
+
503
+$(OBJDIR)/configure.o: $(OBJDIR)/configure_.c $(OBJDIR)/configure.h $(SRCDIR)/config.h
504
+ $(XTCC) -o $(OBJDIR)/configure.o -c $(OBJDIR)/configure_.c
505
+
506
+configure.h: $(OBJDIR)/headers
507
+$(OBJDIR)/content_.c: $(SRCDIR)/content.c $(OBJDIR)/translate
508
+ $(TRANSLATE) $(SRCDIR)/content.c >$(OBJDIR)/content_.c
509
+
510
+$(OBJDIR)/content.o: $(OBJDIR)/content_.c $(OBJDIR)/content.h $(SRCDIR)/config.h
511
+ $(XTCC) -o $(OBJDIR)/content.o -c $(OBJDIR)/content_.c
512
+
513
+content.h: $(OBJDIR)/headers
514
+$(OBJDIR)/db_.c: $(SRCDIR)/db.c $(OBJDIR)/translate
515
+ $(TRANSLATE) $(SRCDIR)/db.c >$(OBJDIR)/db_.c
516
+
517
+$(OBJDIR)/db.o: $(OBJDIR)/db_.c $(OBJDIR)/db.h $(SRCDIR)/config.h
518
+ $(XTCC) -o $(OBJDIR)/db.o -c $(OBJDIR)/db_.c
519
+
520
+db.h: $(OBJDIR)/headers
521
+$(OBJDIR)/delta_.c: $(SRCDIR)/delta.c $(OBJDIR)/translate
522
+ $(TRANSLATE) $(SRCDIR)/delta.c >$(OBJDIR)/delta_.c
523
+
524
+$(OBJDIR)/delta.o: $(OBJDIR)/delta_.c $(OBJDIR)/delta.h $(SRCDIR)/config.h
525
+ $(XTCC) -o $(OBJDIR)/delta.o -c $(OBJDIR)/delta_.c
526
+
527
+delta.h: $(OBJDIR)/headers
528
+$(OBJDIR)/deltacmd_.c: $(SRCDIR)/deltacmd.c $(OBJDIR)/translate
529
+ $(TRANSLATE) $(SRCDIR)/deltacmd.c >$(OBJDIR)/deltacmd_.c
530
+
531
+$(OBJDIR)/deltacmd.o: $(OBJDIR)/deltacmd_.c $(OBJDIR)/deltacmd.h $(SRCDIR)/config.h
532
+ $(XTCC) -o $(OBJDIR)/deltacmd.o -c $(OBJDIR)/deltacmd_.c
533
+
534
+deltacmd.h: $(OBJDIR)/headers
535
+$(OBJDIR)/descendants_.c: $(SRCDIR)/descendants.c $(OBJDIR)/translate
536
+ $(TRANSLATE) $(SRCDIR)/descendants.c >$(OBJDIR)/descendants_.c
537
+
538
+$(OBJDIR)/descendants.o: $(OBJDIR)/descendants_.c $(OBJDIR)/descendants.h $(SRCDIR)/config.h
539
+ $(XTCC) -o $(OBJDIR)/descendants.o -c $(OBJDIR)/descendants_.c
540
+
541
+descendants.h: $(OBJDIR)/headers
542
+$(OBJDIR)/diff_.c: $(SRCDIR)/diff.c $(OBJDIR)/translate
543
+ $(TRANSLATE) $(SRCDIR)/diff.c >$(OBJDIR)/diff_.c
544
+
545
+$(OBJDIR)/diff.o: $(OBJDIR)/diff_.c $(OBJDIR)/diff.h $(SRCDIR)/config.h
546
+ $(XTCC) -o $(OBJDIR)/diff.o -c $(OBJDIR)/diff_.c
547
+
548
+diff.h: $(OBJDIR)/headers
549
+$(OBJDIR)/diffcmd_.c: $(SRCDIR)/diffcmd.c $(OBJDIR)/translate
550
+ $(TRANSLATE) $(SRCDIR)/diffcmd.c >$(OBJDIR)/diffcmd_.c
551
+
552
+$(OBJDIR)/diffcmd.o: $(OBJDIR)/diffcmd_.c $(OBJDIR)/diffcmd.h $(SRCDIR)/config.h
553
+ $(XTCC) -o $(OBJDIR)/diffcmd.o -c $(OBJDIR)/diffcmd_.c
554
+
555
+diffcmd.h: $(OBJDIR)/headers
556
+$(OBJDIR)/doc_.c: $(SRCDIR)/doc.c $(OBJDIR)/translate
557
+ $(TRANSLATE) $(SRCDIR)/doc.c >$(OBJDIR)/doc_.c
558
+
559
+$(OBJDIR)/doc.o: $(OBJDIR)/doc_.c $(OBJDIR)/doc.h $(SRCDIR)/config.h
560
+ $(XTCC) -o $(OBJDIR)/doc.o -c $(OBJDIR)/doc_.c
561
+
562
+doc.h: $(OBJDIR)/headers
563
+$(OBJDIR)/encode_.c: $(SRCDIR)/encode.c $(OBJDIR)/translate
564
+ $(TRANSLATE) $(SRCDIR)/encode.c >$(OBJDIR)/encode_.c
565
+
566
+$(OBJDIR)/encode.o: $(OBJDIR)/encode_.c $(OBJDIR)/encode.h $(SRCDIR)/config.h
567
+ $(XTCC) -o $(OBJDIR)/encode.o -c $(OBJDIR)/encode_.c
568
+
569
+encode.h: $(OBJDIR)/headers
570
+$(OBJDIR)/event_.c: $(SRCDIR)/event.c $(OBJDIR)/translate
571
+ $(TRANSLATE) $(SRCDIR)/event.c >$(OBJDIR)/event_.c
572
+
573
+$(OBJDIR)/event.o: $(OBJDIR)/event_.c $(OBJDIR)/event.h $(SRCDIR)/config.h
574
+ $(XTCC) -o $(OBJDIR)/event.o -c $(OBJDIR)/event_.c
575
+
576
+event.h: $(OBJDIR)/headers
577
+$(OBJDIR)/export_.c: $(SRCDIR)/export.c $(OBJDIR)/translate
578
+ $(TRANSLATE) $(SRCDIR)/export.c >$(OBJDIR)/export_.c
579
+
580
+$(OBJDIR)/export.o: $(OBJDIR)/export_.c $(OBJDIR)/export.h $(SRCDIR)/config.h
581
+ $(XTCC) -o $(OBJDIR)/export.o -c $(OBJDIR)/export_.c
582
+
583
+export.h: $(OBJDIR)/headers
584
+$(OBJDIR)/file_.c: $(SRCDIR)/file.c $(OBJDIR)/translate
585
+ $(TRANSLATE) $(SRCDIR)/file.c >$(OBJDIR)/file_.c
586
+
587
+$(OBJDIR)/file.o: $(OBJDIR)/file_.c $(OBJDIR)/file.h $(SRCDIR)/config.h
588
+ $(XTCC) -o $(OBJDIR)/file.o -c $(OBJDIR)/file_.c
589
+
590
+file.h: $(OBJDIR)/headers
591
+$(OBJDIR)/finfo_.c: $(SRCDIR)/finfo.c $(OBJDIR)/translate
592
+ $(TRANSLATE) $(SRCDIR)/finfo.c >$(OBJDIR)/finfo_.c
593
+
594
+$(OBJDIR)/finfo.o: $(OBJDIR)/finfo_.c $(OBJDIR)/finfo.h $(SRCDIR)/config.h
595
+ $(XTCC) -o $(OBJDIR)/finfo.o -c $(OBJDIR)/finfo_.c
596
+
597
+finfo.h: $(OBJDIR)/headers
598
+$(OBJDIR)/graph_.c: $(SRCDIR)/graph.c $(OBJDIR)/translate
599
+ $(TRANSLATE) $(SRCDIR)/graph.c >$(OBJDIR)/graph_.c
600
+
601
+$(OBJDIR)/graph.o: $(OBJDIR)/graph_.c $(OBJDIR)/graph.h $(SRCDIR)/config.h
602
+ $(XTCC) -o $(OBJDIR)/graph.o -c $(OBJDIR)/graph_.c
603
+
604
+graph.h: $(OBJDIR)/headers
605
+$(OBJDIR)/gzip_.c: $(SRCDIR)/gzip.c $(OBJDIR)/translate
606
+ $(TRANSLATE) $(SRCDIR)/gzip.c >$(OBJDIR)/gzip_.c
607
+
608
+$(OBJDIR)/gzip.o: $(OBJDIR)/gzip_.c $(OBJDIR)/gzip.h $(SRCDIR)/config.h
609
+ $(XTCC) -o $(OBJDIR)/gzip.o -c $(OBJDIR)/gzip_.c
610
+
611
+gzip.h: $(OBJDIR)/headers
612
+$(OBJDIR)/http_.c: $(SRCDIR)/http.c $(OBJDIR)/translate
613
+ $(TRANSLATE) $(SRCDIR)/http.c >$(OBJDIR)/http_.c
614
+
615
+$(OBJDIR)/http.o: $(OBJDIR)/http_.c $(OBJDIR)/http.h $(SRCDIR)/config.h
616
+ $(XTCC) -o $(OBJDIR)/http.o -c $(OBJDIR)/http_.c
617
+
618
+http.h: $(OBJDIR)/headers
619
+$(OBJDIR)/http_socket_.c: $(SRCDIR)/http_socket.c $(OBJDIR)/translate
620
+ $(TRANSLATE) $(SRCDIR)/http_socket.c >$(OBJDIR)/http_socket_.c
621
+
622
+$(OBJDIR)/http_socket.o: $(OBJDIR)/http_socket_.c $(OBJDIR)/http_socket.h $(SRCDIR)/config.h
623
+ $(XTCC) -o $(OBJDIR)/http_socket.o -c $(OBJDIR)/http_socket_.c
624
+
625
+http_socket.h: $(OBJDIR)/headers
626
+$(OBJDIR)/http_ssl_.c: $(SRCDIR)/http_ssl.c $(OBJDIR)/translate
627
+ $(TRANSLATE) $(SRCDIR)/http_ssl.c >$(OBJDIR)/http_ssl_.c
628
+
629
+$(OBJDIR)/http_ssl.o: $(OBJDIR)/http_ssl_.c $(OBJDIR)/http_ssl.h $(SRCDIR)/config.h
630
+ $(XTCC) -o $(OBJDIR)/http_ssl.o -c $(OBJDIR)/http_ssl_.c
631
+
632
+http_ssl.h: $(OBJDIR)/headers
633
+$(OBJDIR)/http_transport_.c: $(SRCDIR)/http_transport.c $(OBJDIR)/translate
634
+ $(TRANSLATE) $(SRCDIR)/http_transport.c >$(OBJDIR)/http_transport_.c
635
+
636
+$(OBJDIR)/http_transport.o: $(OBJDIR)/http_transport_.c $(OBJDIR)/http_transport.h $(SRCDIR)/config.h
637
+ $(XTCC) -o $(OBJDIR)/http_transport.o -c $(OBJDIR)/http_transport_.c
638
+
639
+http_transport.h: $(OBJDIR)/headers
640
+$(OBJDIR)/import_.c: $(SRCDIR)/import.c $(OBJDIR)/translate
641
+ $(TRANSLATE) $(SRCDIR)/import.c >$(OBJDIR)/import_.c
642
+
643
+$(OBJDIR)/import.o: $(OBJDIR)/import_.c $(OBJDIR)/import.h $(SRCDIR)/config.h
644
+ $(XTCC) -o $(OBJDIR)/import.o -c $(OBJDIR)/import_.c
645
+
646
+import.h: $(OBJDIR)/headers
647
+$(OBJDIR)/info_.c: $(SRCDIR)/info.c $(OBJDIR)/translate
648
+ $(TRANSLATE) $(SRCDIR)/info.c >$(OBJDIR)/info_.c
649
+
650
+$(OBJDIR)/info.o: $(OBJDIR)/info_.c $(OBJDIR)/info.h $(SRCDIR)/config.h
651
+ $(XTCC) -o $(OBJDIR)/info.o -c $(OBJDIR)/info_.c
652
+
653
+info.h: $(OBJDIR)/headers
654
+$(OBJDIR)/leaf_.c: $(SRCDIR)/leaf.c $(OBJDIR)/translate
655
+ $(TRANSLATE) $(SRCDIR)/leaf.c >$(OBJDIR)/leaf_.c
656
+
657
+$(OBJDIR)/leaf.o: $(OBJDIR)/leaf_.c $(OBJDIR)/leaf.h $(SRCDIR)/config.h
658
+ $(XTCC) -o $(OBJDIR)/leaf.o -c $(OBJDIR)/leaf_.c
659
+
660
+leaf.h: $(OBJDIR)/headers
661
+$(OBJDIR)/login_.c: $(SRCDIR)/login.c $(OBJDIR)/translate
662
+ $(TRANSLATE) $(SRCDIR)/login.c >$(OBJDIR)/login_.c
663
+
664
+$(OBJDIR)/login.o: $(OBJDIR)/login_.c $(OBJDIR)/login.h $(SRCDIR)/config.h
665
+ $(XTCC) -o $(OBJDIR)/login.o -c $(OBJDIR)/login_.c
666
+
667
+login.h: $(OBJDIR)/headers
668
+$(OBJDIR)/main_.c: $(SRCDIR)/main.c $(OBJDIR)/translate
669
+ $(TRANSLATE) $(SRCDIR)/main.c >$(OBJDIR)/main_.c
670
+
671
+$(OBJDIR)/main.o: $(OBJDIR)/main_.c $(OBJDIR)/main.h $(OBJDIR)/page_index.h $(SRCDIR)/config.h
672
+ $(XTCC) -o $(OBJDIR)/main.o -c $(OBJDIR)/main_.c
673
+
674
+main.h: $(OBJDIR)/headers
675
+$(OBJDIR)/manifest_.c: $(SRCDIR)/manifest.c $(OBJDIR)/translate
676
+ $(TRANSLATE) $(SRCDIR)/manifest.c >$(OBJDIR)/manifest_.c
677
+
678
+$(OBJDIR)/manifest.o: $(OBJDIR)/manifest_.c $(OBJDIR)/manifest.h $(SRCDIR)/config.h
679
+ $(XTCC) -o $(OBJDIR)/manifest.o -c $(OBJDIR)/manifest_.c
680
+
681
+manifest.h: $(OBJDIR)/headers
682
+$(OBJDIR)/md5_.c: $(SRCDIR)/md5.c $(OBJDIR)/translate
683
+ $(TRANSLATE) $(SRCDIR)/md5.c >$(OBJDIR)/md5_.c
684
+
685
+$(OBJDIR)/md5.o: $(OBJDIR)/md5_.c $(OBJDIR)/md5.h $(SRCDIR)/config.h
686
+ $(XTCC) -o $(OBJDIR)/md5.o -c $(OBJDIR)/md5_.c
687
+
688
+md5.h: $(OBJDIR)/headers
689
+$(OBJDIR)/merge_.c: $(SRCDIR)/merge.c $(OBJDIR)/translate
690
+ $(TRANSLATE) $(SRCDIR)/merge.c >$(OBJDIR)/merge_.c
691
+
692
+$(OBJDIR)/merge.o: $(OBJDIR)/merge_.c $(OBJDIR)/merge.h $(SRCDIR)/config.h
693
+ $(XTCC) -o $(OBJDIR)/merge.o -c $(OBJDIR)/merge_.c
694
+
695
+merge.h: $(OBJDIR)/headers
696
+$(OBJDIR)/merge3_.c: $(SRCDIR)/merge3.c $(OBJDIR)/translate
697
+ $(TRANSLATE) $(SRCDIR)/merge3.c >$(OBJDIR)/merge3_.c
698
+
699
+$(OBJDIR)/merge3.o: $(OBJDIR)/merge3_.c $(OBJDIR)/merge3.h $(SRCDIR)/config.h
700
+ $(XTCC) -o $(OBJDIR)/merge3.o -c $(OBJDIR)/merge3_.c
701
+
702
+merge3.h: $(OBJDIR)/headers
703
+$(OBJDIR)/name_.c: $(SRCDIR)/name.c $(OBJDIR)/translate
704
+ $(TRANSLATE) $(SRCDIR)/name.c >$(OBJDIR)/name_.c
705
+
706
+$(OBJDIR)/name.o: $(OBJDIR)/name_.c $(OBJDIR)/name.h $(SRCDIR)/config.h
707
+ $(XTCC) -o $(OBJDIR)/name.o -c $(OBJDIR)/name_.c
708
+
709
+name.h: $(OBJDIR)/headers
710
+$(OBJDIR)/path_.c: $(SRCDIR)/path.c $(OBJDIR)/translate
711
+ $(TRANSLATE) $(SRCDIR)/path.c >$(OBJDIR)/path_.c
712
+
713
+$(OBJDIR)/path.o: $(OBJDIR)/path_.c $(OBJDIR)/path.h $(SRCDIR)/config.h
714
+ $(XTCC) -o $(OBJDIR)/path.o -c $(OBJDIR)/path_.c
715
+
716
+path.h: $(OBJDIR)/headers
717
+$(OBJDIR)/pivot_.c: $(SRCDIR)/pivot.c $(OBJDIR)/translate
718
+ $(TRANSLATE) $(SRCDIR)/pivot.c >$(OBJDIR)/pivot_.c
719
+
720
+$(OBJDIR)/pivot.o: $(OBJDIR)/pivot_.c $(OBJDIR)/pivot.h $(SRCDIR)/config.h
721
+ $(XTCC) -o $(OBJDIR)/pivot.o -c $(OBJDIR)/pivot_.c
722
+
723
+pivot.h: $(OBJDIR)/headers
724
+$(OBJDIR)/popen_.c: $(SRCDIR)/popen.c $(OBJDIR)/translate
725
+ $(TRANSLATE) $(SRCDIR)/popen.c >$(OBJDIR)/popen_.c
726
+
727
+$(OBJDIR)/popen.o: $(OBJDIR)/popen_.c $(OBJDIR)/popen.h $(SRCDIR)/config.h
728
+ $(XTCC) -o $(OBJDIR)/popen.o -c $(OBJDIR)/popen_.c
729
+
730
+popen.h: $(OBJDIR)/headers
731
+$(OBJDIR)/pqueue_.c: $(SRCDIR)/pqueue.c $(OBJDIR)/translate
732
+ $(TRANSLATE) $(SRCDIR)/pqueue.c >$(OBJDIR)/pqueue_.c
733
+
734
+$(OBJDIR)/pqueue.o: $(OBJDIR)/pqueue_.c $(OBJDIR)/pqueue.h $(SRCDIR)/config.h
735
+ $(XTCC) -o $(OBJDIR)/pqueue.o -c $(OBJDIR)/pqueue_.c
736
+
737
+pqueue.h: $(OBJDIR)/headers
738
+$(OBJDIR)/printf_.c: $(SRCDIR)/printf.c $(OBJDIR)/translate
739
+ $(TRANSLATE) $(SRCDIR)/printf.c >$(OBJDIR)/printf_.c
740
+
741
+$(OBJDIR)/printf.o: $(OBJDIR)/printf_.c $(OBJDIR)/printf.h $(SRCDIR)/config.h
742
+ $(XTCC) -o $(OBJDIR)/printf.o -c $(OBJDIR)/printf_.c
743
+
744
+printf.h: $(OBJDIR)/headers
745
+$(OBJDIR)/rebuild_.c: $(SRCDIR)/rebuild.c $(OBJDIR)/translate
746
+ $(TRANSLATE) $(SRCDIR)/rebuild.c >$(OBJDIR)/rebuild_.c
747
+
748
+$(OBJDIR)/rebuild.o: $(OBJDIR)/rebuild_.c $(OBJDIR)/rebuild.h $(SRCDIR)/config.h
749
+ $(XTCC) -o $(OBJDIR)/rebuild.o -c $(OBJDIR)/rebuild_.c
750
+
751
+rebuild.h: $(OBJDIR)/headers
752
+$(OBJDIR)/report_.c: $(SRCDIR)/report.c $(OBJDIR)/translate
753
+ $(TRANSLATE) $(SRCDIR)/report.c >$(OBJDIR)/report_.c
754
+
755
+$(OBJDIR)/report.o: $(OBJDIR)/report_.c $(OBJDIR)/report.h $(SRCDIR)/config.h
756
+ $(XTCC) -o $(OBJDIR)/report.o -c $(OBJDIR)/report_.c
757
+
758
+report.h: $(OBJDIR)/headers
759
+$(OBJDIR)/rss_.c: $(SRCDIR)/rss.c $(OBJDIR)/translate
760
+ $(TRANSLATE) $(SRCDIR)/rss.c >$(OBJDIR)/rss_.c
761
+
762
+$(OBJDIR)/rss.o: $(OBJDIR)/rss_.c $(OBJDIR)/rss.h $(SRCDIR)/config.h
763
+ $(XTCC) -o $(OBJDIR)/rss.o -c $(OBJDIR)/rss_.c
764
+
765
+rss.h: $(OBJDIR)/headers
766
+$(OBJDIR)/schema_.c: $(SRCDIR)/schema.c $(OBJDIR)/translate
767
+ $(TRANSLATE) $(SRCDIR)/schema.c >$(OBJDIR)/schema_.c
768
+
769
+$(OBJDIR)/schema.o: $(OBJDIR)/schema_.c $(OBJDIR)/schema.h $(SRCDIR)/config.h
770
+ $(XTCC) -o $(OBJDIR)/schema.o -c $(OBJDIR)/schema_.c
771
+
772
+schema.h: $(OBJDIR)/headers
773
+$(OBJDIR)/search_.c: $(SRCDIR)/search.c $(OBJDIR)/translate
774
+ $(TRANSLATE) $(SRCDIR)/search.c >$(OBJDIR)/search_.c
775
+
776
+$(OBJDIR)/search.o: $(OBJDIR)/search_.c $(OBJDIR)/search.h $(SRCDIR)/config.h
777
+ $(XTCC) -o $(OBJDIR)/search.o -c $(OBJDIR)/search_.c
778
+
779
+search.h: $(OBJDIR)/headers
780
+$(OBJDIR)/setup_.c: $(SRCDIR)/setup.c $(OBJDIR)/translate
781
+ $(TRANSLATE) $(SRCDIR)/setup.c >$(OBJDIR)/setup_.c
782
+
783
+$(OBJDIR)/setup.o: $(OBJDIR)/setup_.c $(OBJDIR)/setup.h $(SRCDIR)/config.h
784
+ $(XTCC) -o $(OBJDIR)/setup.o -c $(OBJDIR)/setup_.c
785
+
786
+setup.h: $(OBJDIR)/headers
787
+$(OBJDIR)/sha1_.c: $(SRCDIR)/sha1.c $(OBJDIR)/translate
788
+ $(TRANSLATE) $(SRCDIR)/sha1.c >$(OBJDIR)/sha1_.c
789
+
790
+$(OBJDIR)/sha1.o: $(OBJDIR)/sha1_.c $(OBJDIR)/sha1.h $(SRCDIR)/config.h
791
+ $(XTCC) -o $(OBJDIR)/sha1.o -c $(OBJDIR)/sha1_.c
792
+
793
+sha1.h: $(OBJDIR)/headers
794
+$(OBJDIR)/shun_.c: $(SRCDIR)/shun.c $(OBJDIR)/translate
795
+ $(TRANSLATE) $(SRCDIR)/shun.c >$(OBJDIR)/shun_.c
796
+
797
+$(OBJDIR)/shun.o: $(OBJDIR)/shun_.c $(OBJDIR)/shun.h $(SRCDIR)/config.h
798
+ $(XTCC) -o $(OBJDIR)/shun.o -c $(OBJDIR)/shun_.c
799
+
800
+shun.h: $(OBJDIR)/headers
801
+$(OBJDIR)/skins_.c: $(SRCDIR)/skins.c $(OBJDIR)/translate
802
+ $(TRANSLATE) $(SRCDIR)/skins.c >$(OBJDIR)/skins_.c
803
+
804
+$(OBJDIR)/skins.o: $(OBJDIR)/skins_.c $(OBJDIR)/skins.h $(SRCDIR)/config.h
805
+ $(XTCC) -o $(OBJDIR)/skins.o -c $(OBJDIR)/skins_.c
806
+
807
+skins.h: $(OBJDIR)/headers
808
+$(OBJDIR)/sqlcmd_.c: $(SRCDIR)/sqlcmd.c $(OBJDIR)/translate
809
+ $(TRANSLATE) $(SRCDIR)/sqlcmd.c >$(OBJDIR)/sqlcmd_.c
810
+
811
+$(OBJDIR)/sqlcmd.o: $(OBJDIR)/sqlcmd_.c $(OBJDIR)/sqlcmd.h $(SRCDIR)/config.h
812
+ $(XTCC) -o $(OBJDIR)/sqlcmd.o -c $(OBJDIR)/sqlcmd_.c
813
+
814
+sqlcmd.h: $(OBJDIR)/headers
815
+$(OBJDIR)/stash_.c: $(SRCDIR)/stash.c $(OBJDIR)/translate
816
+ $(TRANSLATE) $(SRCDIR)/stash.c >$(OBJDIR)/stash_.c
817
+
818
+$(OBJDIR)/stash.o: $(OBJDIR)/stash_.c $(OBJDIR)/stash.h $(SRCDIR)/config.h
819
+ $(XTCC) -o $(OBJDIR)/stash.o -c $(OBJDIR)/stash_.c
820
+
821
+stash.h: $(OBJDIR)/headers
822
+$(OBJDIR)/stat_.c: $(SRCDIR)/stat.c $(OBJDIR)/translate
823
+ $(TRANSLATE) $(SRCDIR)/stat.c >$(OBJDIR)/stat_.c
824
+
825
+$(OBJDIR)/stat.o: $(OBJDIR)/stat_.c $(OBJDIR)/stat.h $(SRCDIR)/config.h
826
+ $(XTCC) -o $(OBJDIR)/stat.o -c $(OBJDIR)/stat_.c
827
+
828
+stat.h: $(OBJDIR)/headers
829
+$(OBJDIR)/style_.c: $(SRCDIR)/style.c $(OBJDIR)/translate
830
+ $(TRANSLATE) $(SRCDIR)/style.c >$(OBJDIR)/style_.c
831
+
832
+$(OBJDIR)/style.o: $(OBJDIR)/style_.c $(OBJDIR)/style.h $(SRCDIR)/config.h
833
+ $(XTCC) -o $(OBJDIR)/style.o -c $(OBJDIR)/style_.c
834
+
835
+style.h: $(OBJDIR)/headers
836
+$(OBJDIR)/sync_.c: $(SRCDIR)/sync.c $(OBJDIR)/translate
837
+ $(TRANSLATE) $(SRCDIR)/sync.c >$(OBJDIR)/sync_.c
838
+
839
+$(OBJDIR)/sync.o: $(OBJDIR)/sync_.c $(OBJDIR)/sync.h $(SRCDIR)/config.h
840
+ $(XTCC) -o $(OBJDIR)/sync.o -c $(OBJDIR)/sync_.c
841
+
842
+sync.h: $(OBJDIR)/headers
843
+$(OBJDIR)/tag_.c: $(SRCDIR)/tag.c $(OBJDIR)/translate
844
+ $(TRANSLATE) $(SRCDIR)/tag.c >$(OBJDIR)/tag_.c
845
+
846
+$(OBJDIR)/tag.o: $(OBJDIR)/tag_.c $(OBJDIR)/tag.h $(SRCDIR)/config.h
847
+ $(XTCC) -o $(OBJDIR)/tag.o -c $(OBJDIR)/tag_.c
848
+
849
+tag.h: $(OBJDIR)/headers
850
+$(OBJDIR)/tar_.c: $(SRCDIR)/tar.c $(OBJDIR)/translate
851
+ $(TRANSLATE) $(SRCDIR)/tar.c >$(OBJDIR)/tar_.c
852
+
853
+$(OBJDIR)/tar.o: $(OBJDIR)/tar_.c $(OBJDIR)/tar.h $(SRCDIR)/config.h
854
+ $(XTCC) -o $(OBJDIR)/tar.o -c $(OBJDIR)/tar_.c
855
+
856
+tar.h: $(OBJDIR)/headers
857
+$(OBJDIR)/th_main_.c: $(SRCDIR)/th_main.c $(OBJDIR)/translate
858
+ $(TRANSLATE) $(SRCDIR)/th_main.c >$(OBJDIR)/th_main_.c
859
+
860
+$(OBJDIR)/th_main.o: $(OBJDIR)/th_main_.c $(OBJDIR)/th_main.h $(SRCDIR)/config.h
861
+ $(XTCC) -o $(OBJDIR)/th_main.o -c $(OBJDIR)/th_main_.c
862
+
863
+th_main.h: $(OBJDIR)/headers
864
+$(OBJDIR)/timeline_.c: $(SRCDIR)/timeline.c $(OBJDIR)/translate
865
+ $(TRANSLATE) $(SRCDIR)/timeline.c >$(OBJDIR)/timeline_.c
866
+
867
+$(OBJDIR)/timeline.o: $(OBJDIR)/timeline_.c $(OBJDIR)/timeline.h $(SRCDIR)/config.h
868
+ $(XTCC) -o $(OBJDIR)/timeline.o -c $(OBJDIR)/timeline_.c
869
+
870
+timeline.h: $(OBJDIR)/headers
871
+$(OBJDIR)/tkt_.c: $(SRCDIR)/tkt.c $(OBJDIR)/translate
872
+ $(TRANSLATE) $(SRCDIR)/tkt.c >$(OBJDIR)/tkt_.c
873
+
874
+$(OBJDIR)/tkt.o: $(OBJDIR)/tkt_.c $(OBJDIR)/tkt.h $(SRCDIR)/config.h
875
+ $(XTCC) -o $(OBJDIR)/tkt.o -c $(OBJDIR)/tkt_.c
876
+
877
+tkt.h: $(OBJDIR)/headers
878
+$(OBJDIR)/tktsetup_.c: $(SRCDIR)/tktsetup.c $(OBJDIR)/translate
879
+ $(TRANSLATE) $(SRCDIR)/tktsetup.c >$(OBJDIR)/tktsetup_.c
880
+
881
+$(OBJDIR)/tktsetup.o: $(OBJDIR)/tktsetup_.c $(OBJDIR)/tktsetup.h $(SRCDIR)/config.h
882
+ $(XTCC) -o $(OBJDIR)/tktsetup.o -c $(OBJDIR)/tktsetup_.c
883
+
884
+tktsetup.h: $(OBJDIR)/headers
885
+$(OBJDIR)/undo_.c: $(SRCDIR)/undo.c $(OBJDIR)/translate
886
+ $(TRANSLATE) $(SRCDIR)/undo.c >$(OBJDIR)/undo_.c
887
+
888
+$(OBJDIR)/undo.o: $(OBJDIR)/undo_.c $(OBJDIR)/undo.h $(SRCDIR)/config.h
889
+ $(XTCC) -o $(OBJDIR)/undo.o -c $(OBJDIR)/undo_.c
890
+
891
+undo.h: $(OBJDIR)/headers
892
+$(OBJDIR)/update_.c: $(SRCDIR)/update.c $(OBJDIR)/translate
893
+ $(TRANSLATE) $(SRCDIR)/update.c >$(OBJDIR)/update_.c
894
+
895
+$(OBJDIR)/update.o: $(OBJDIR)/update_.c $(OBJDIR)/update.h $(SRCDIR)/config.h
896
+ $(XTCC) -o $(OBJDIR)/update.o -c $(OBJDIR)/update_.c
897
+
898
+update.h: $(OBJDIR)/headers
899
+$(OBJDIR)/url_.c: $(SRCDIR)/url.c $(OBJDIR)/translate
900
+ $(TRANSLATE) $(SRCDIR)/url.c >$(OBJDIR)/url_.c
901
+
902
+$(OBJDIR)/url.o: $(OBJDIR)/url_.c $(OBJDIR)/url.h $(SRCDIR)/config.h
903
+ $(XTCC) -o $(OBJDIR)/url.o -c $(OBJDIR)/url_.c
904
+
905
+url.h: $(OBJDIR)/headers
906
+$(OBJDIR)/user_.c: $(SRCDIR)/user.c $(OBJDIR)/translate
907
+ $(TRANSLATE) $(SRCDIR)/user.c >$(OBJDIR)/user_.c
908
+
909
+$(OBJDIR)/user.o: $(OBJDIR)/user_.c $(OBJDIR)/user.h $(SRCDIR)/config.h
910
+ $(XTCC) -o $(OBJDIR)/user.o -c $(OBJDIR)/user_.c
911
+
912
+user.h: $(OBJDIR)/headers
913
+$(OBJDIR)/verify_.c: $(SRCDIR)/verify.c $(OBJDIR)/translate
914
+ $(TRANSLATE) $(SRCDIR)/verify.c >$(OBJDIR)/verify_.c
915
+
916
+$(OBJDIR)/verify.o: $(OBJDIR)/verify_.c $(OBJDIR)/verify.h $(SRCDIR)/config.h
917
+ $(XTCC) -o $(OBJDIR)/verify.o -c $(OBJDIR)/verify_.c
918
+
919
+verify.h: $(OBJDIR)/headers
920
+$(OBJDIR)/vfile_.c: $(SRCDIR)/vfile.c $(OBJDIR)/translate
921
+ $(TRANSLATE) $(SRCDIR)/vfile.c >$(OBJDIR)/vfile_.c
922
+
923
+$(OBJDIR)/vfile.o: $(OBJDIR)/vfile_.c $(OBJDIR)/vfile.h $(SRCDIR)/config.h
924
+ $(XTCC) -o $(OBJDIR)/vfile.o -c $(OBJDIR)/vfile_.c
925
+
926
+vfile.h: $(OBJDIR)/headers
927
+$(OBJDIR)/wiki_.c: $(SRCDIR)/wiki.c $(OBJDIR)/translate
928
+ $(TRANSLATE) $(SRCDIR)/wiki.c >$(OBJDIR)/wiki_.c
929
+
930
+$(OBJDIR)/wiki.o: $(OBJDIR)/wiki_.c $(OBJDIR)/wiki.h $(SRCDIR)/config.h
931
+ $(XTCC) -o $(OBJDIR)/wiki.o -c $(OBJDIR)/wiki_.c
932
+
933
+wiki.h: $(OBJDIR)/headers
934
+$(OBJDIR)/wikiformat_.c: $(SRCDIR)/wikiformat.c $(OBJDIR)/translate
935
+ $(TRANSLATE) $(SRCDIR)/wikiformat.c >$(OBJDIR)/wikiformat_.c
936
+
937
+$(OBJDIR)/wikiformat.o: $(OBJDIR)/wikiformat_.c $(OBJDIR)/wikiformat.h $(SRCDIR)/config.h
938
+ $(XTCC) -o $(OBJDIR)/wikiformat.o -c $(OBJDIR)/wikiformat_.c
939
+
940
+wikiformat.h: $(OBJDIR)/headers
941
+$(OBJDIR)/winhttp_.c: $(SRCDIR)/winhttp.c $(OBJDIR)/translate
942
+ $(TRANSLATE) $(SRCDIR)/winhttp.c >$(OBJDIR)/winhttp_.c
943
+
944
+$(OBJDIR)/winhttp.o: $(OBJDIR)/winhttp_.c $(OBJDIR)/winhttp.h $(SRCDIR)/config.h
945
+ $(XTCC) -o $(OBJDIR)/winhttp.o -c $(OBJDIR)/winhttp_.c
946
+
947
+winhttp.h: $(OBJDIR)/headers
948
+$(OBJDIR)/xfer_.c: $(SRCDIR)/xfer.c $(OBJDIR)/translate
949
+ $(TRANSLATE) $(SRCDIR)/xfer.c >$(OBJDIR)/xfer_.c
950
+
951
+$(OBJDIR)/xfer.o: $(OBJDIR)/xfer_.c $(OBJDIR)/xfer.h $(SRCDIR)/config.h
952
+ $(XTCC) -o $(OBJDIR)/xfer.o -c $(OBJDIR)/xfer_.c
953
+
954
+xfer.h: $(OBJDIR)/headers
955
+$(OBJDIR)/zip_.c: $(SRCDIR)/zip.c $(OBJDIR)/translate
956
+ $(TRANSLATE) $(SRCDIR)/zip.c >$(OBJDIR)/zip_.c
957
+
958
+$(OBJDIR)/zip.o: $(OBJDIR)/zip_.c $(OBJDIR)/zip.h $(SRCDIR)/config.h
959
+ $(XTCC) -o $(OBJDIR)/zip.o -c $(OBJDIR)/zip_.c
960
+
961
+zip.h: $(OBJDIR)/headers
962
+$(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c
963
+ $(XTCC) -DSQLITE_OMIT_LOAD_EXTENSION=1 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -DSQLITE_ENABLE_STAT2 -Dlocaltime=fossil_localtime -DSQLITE_ENABLE_LOCKING_STYLE=0 -c $(SRCDIR)/sqlite3.c -o $(OBJDIR)/sqlite3.o
964
+
965
+$(OBJDIR)/shell.o: $(SRCDIR)/shell.c
966
+ $(XTCC) -Dmain=sqlite3_shell -DSQLITE_OMIT_LOAD_EXTENSION=1 -c $(SRCDIR)/shell.c -o $(OBJDIR)/shell.o
967
+
968
+$(OBJDIR)/th.o: $(SRCDIR)/th.c
969
+ $(XTCC) -I$(SRCDIR) -c $(SRCDIR)/th.c -o $(OBJDIR)/th.o
970
+
971
+$(OBJDIR)/th_lang.o: $(SRCDIR)/th_lang.c
972
+ $(XTCC) -I$(SRCDIR) -c $(SRCDIR)/th_lang.c -o $(OBJDIR)/th_lang.o
973
+
--- a/win/Makefile.mingw_static
+++ b/win/Makefile.mingw_static
@@ -0,0 +1,973 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/win/Makefile.mingw_static
+++ b/win/Makefile.mingw_static
@@ -0,0 +1,973 @@
1 #!/usr/bin/make
2 #
3 # This is a makefile for us on windows using mingw.
4 #
5 #### The toplevel directory of the source tree. Fossil can be built
6 # in a directory that is separate from the source tree. Just change
7 # the following to point from the build directory to the src/ folder.
8 #
9 SRCDIR = src
10
11 #### The directory into which object code files should be written.
12 #
13 #
14 OBJDIR = wbld
15
16 #### C Compiler and options for use in building executables that
17 # will run on the platform that is doing the build. This is used
18 # to compile code-generator programs as part of the build process.
19 # See TCC below for the C compiler for building the finished binary.
20 #
21 BCC = gcc
22
23 #### Enable HTTPS support via OpenSSL (links to libssl and libcrypto)
24 #
25 # FOSSIL_ENABLE_SSL=1
26
27 #### The directory in which the zlib compression library is installed.
28 #
29 #
30 ZLIBDIR = /programs/gnuwin32
31
32 #### C Compile and options for use in building executables that
33 # will run on the target platform. This is usually the same
34 # as BCC, unless you are cross-compiling. This C compiler builds
35 # the finished binary for fossil. The BCC compiler above is used
36 # for building intermediate code-generator tools.
37 #
38 TCC = gcc -Os -Wall -DFOSSIL_I18N=0 -Wl,-Bstatic -L$(ZLIBDIR)/lib -I$(ZLIBDIR)/include
39
40 # With HTTPS support
41 ifdef FOSSIL_ENABLE_SSL
42 TCC += -static -DFOSSIL_ENABLE_SSL=1
43 endif
44
45 #### Extra arguments for linking the finished binary. Fossil needs
46 # to link against the Z-Lib compression library. There are no
47 # other dependencies. We sometimes add the -static option here
48 # so that we can build a static executable that will run in a
49 # chroot jail.
50 #
51 #LIB = -lz -lws2_32
52 # OpenSSL:
53 ifdef FOSSIL_ENABLE_SSL
54 LIB += -lssl -lcrypto -lgdi32
55 endif
56 LIB += -lmingwex -lz -lws2_32
57
58 #### Tcl shell for use in running the fossil testsuite. This is only
59 # used for testing. If you do not run
60 #
61 TCLSH = tclsh
62
63 #### Nullsoft installer makensis location
64 #
65 MAKENSIS = "c:\Program Files\NSIS\makensis.exe"
66
67 #### Include a configuration file that can override any one of these settings.
68 #
69 -include config.w32
70
71 # STOP HERE
72 # You should not need to change anything below this line
73 #--------------------------------------------------------
74 XTCC = $(TCC) $(CFLAGS) -I. -I$(SRCDIR)
75
76 SRC = \
77 $(SRCDIR)/add.c \
78 $(SRCDIR)/allrepo.c \
79 $(SRCDIR)/attach.c \
80 $(SRCDIR)/bag.c \
81 $(SRCDIR)/bisect.c \
82 $(SRCDIR)/blob.c \
83 $(SRCDIR)/branch.c \
84 $(SRCDIR)/browse.c \
85 $(SRCDIR)/captcha.c \
86 $(SRCDIR)/cgi.c \
87 $(SRCDIR)/checkin.c \
88 $(SRCDIR)/checkout.c \
89 $(SRCDIR)/clearsign.c \
90 $(SRCDIR)/clone.c \
91 $(SRCDIR)/comformat.c \
92 $(SRCDIR)/configure.c \
93 $(SRCDIR)/content.c \
94 $(SRCDIR)/db.c \
95 $(SRCDIR)/delta.c \
96 $(SRCDIR)/deltacmd.c \
97 $(SRCDIR)/descendants.c \
98 $(SRCDIR)/diff.c \
99 $(SRCDIR)/diffcmd.c \
100 $(SRCDIR)/doc.c \
101 $(SRCDIR)/encode.c \
102 $(SRCDIR)/event.c \
103 $(SRCDIR)/export.c \
104 $(SRCDIR)/file.c \
105 $(SRCDIR)/finfo.c \
106 $(SRCDIR)/graph.c \
107 $(SRCDIR)/gzip.c \
108 $(SRCDIR)/http.c \
109 $(SRCDIR)/http_socket.c \
110 $(SRCDIR)/http_ssl.c \
111 $(SRCDIR)/http_transport.c \
112 $(SRCDIR)/import.c \
113 $(SRCDIR)/info.c \
114 $(SRCDIR)/leaf.c \
115 $(SRCDIR)/login.c \
116 $(SRCDIR)/main.c \
117 $(SRCDIR)/manifest.c \
118 $(SRCDIR)/md5.c \
119 $(SRCDIR)/merge.c \
120 $(SRCDIR)/merge3.c \
121 $(SRCDIR)/name.c \
122 $(SRCDIR)/path.c \
123 $(SRCDIR)/pivot.c \
124 $(SRCDIR)/popen.c \
125 $(SRCDIR)/pqueue.c \
126 $(SRCDIR)/printf.c \
127 $(SRCDIR)/rebuild.c \
128 $(SRCDIR)/report.c \
129 $(SRCDIR)/rss.c \
130 $(SRCDIR)/schema.c \
131 $(SRCDIR)/search.c \
132 $(SRCDIR)/setup.c \
133 $(SRCDIR)/sha1.c \
134 $(SRCDIR)/shun.c \
135 $(SRCDIR)/skins.c \
136 $(SRCDIR)/sqlcmd.c \
137 $(SRCDIR)/stash.c \
138 $(SRCDIR)/stat.c \
139 $(SRCDIR)/style.c \
140 $(SRCDIR)/sync.c \
141 $(SRCDIR)/tag.c \
142 $(SRCDIR)/tar.c \
143 $(SRCDIR)/th_main.c \
144 $(SRCDIR)/timeline.c \
145 $(SRCDIR)/tkt.c \
146 $(SRCDIR)/tktsetup.c \
147 $(SRCDIR)/undo.c \
148 $(SRCDIR)/update.c \
149 $(SRCDIR)/url.c \
150 $(SRCDIR)/user.c \
151 $(SRCDIR)/verify.c \
152 $(SRCDIR)/vfile.c \
153 $(SRCDIR)/wiki.c \
154 $(SRCDIR)/wikiformat.c \
155 $(SRCDIR)/winhttp.c \
156 $(SRCDIR)/xfer.c \
157 $(SRCDIR)/zip.c
158
159 TRANS_SRC = \
160 $(OBJDIR)/add_.c \
161 $(OBJDIR)/allrepo_.c \
162 $(OBJDIR)/attach_.c \
163 $(OBJDIR)/bag_.c \
164 $(OBJDIR)/bisect_.c \
165 $(OBJDIR)/blob_.c \
166 $(OBJDIR)/branch_.c \
167 $(OBJDIR)/browse_.c \
168 $(OBJDIR)/captcha_.c \
169 $(OBJDIR)/cgi_.c \
170 $(OBJDIR)/checkin_.c \
171 $(OBJDIR)/checkout_.c \
172 $(OBJDIR)/clearsign_.c \
173 $(OBJDIR)/clone_.c \
174 $(OBJDIR)/comformat_.c \
175 $(OBJDIR)/configure_.c \
176 $(OBJDIR)/content_.c \
177 $(OBJDIR)/db_.c \
178 $(OBJDIR)/delta_.c \
179 $(OBJDIR)/deltacmd_.c \
180 $(OBJDIR)/descendants_.c \
181 $(OBJDIR)/diff_.c \
182 $(OBJDIR)/diffcmd_.c \
183 $(OBJDIR)/doc_.c \
184 $(OBJDIR)/encode_.c \
185 $(OBJDIR)/event_.c \
186 $(OBJDIR)/export_.c \
187 $(OBJDIR)/file_.c \
188 $(OBJDIR)/finfo_.c \
189 $(OBJDIR)/graph_.c \
190 $(OBJDIR)/gzip_.c \
191 $(OBJDIR)/http_.c \
192 $(OBJDIR)/http_socket_.c \
193 $(OBJDIR)/http_ssl_.c \
194 $(OBJDIR)/http_transport_.c \
195 $(OBJDIR)/import_.c \
196 $(OBJDIR)/info_.c \
197 $(OBJDIR)/leaf_.c \
198 $(OBJDIR)/login_.c \
199 $(OBJDIR)/main_.c \
200 $(OBJDIR)/manifest_.c \
201 $(OBJDIR)/md5_.c \
202 $(OBJDIR)/merge_.c \
203 $(OBJDIR)/merge3_.c \
204 $(OBJDIR)/name_.c \
205 $(OBJDIR)/path_.c \
206 $(OBJDIR)/pivot_.c \
207 $(OBJDIR)/popen_.c \
208 $(OBJDIR)/pqueue_.c \
209 $(OBJDIR)/printf_.c \
210 $(OBJDIR)/rebuild_.c \
211 $(OBJDIR)/report_.c \
212 $(OBJDIR)/rss_.c \
213 $(OBJDIR)/schema_.c \
214 $(OBJDIR)/search_.c \
215 $(OBJDIR)/setup_.c \
216 $(OBJDIR)/sha1_.c \
217 $(OBJDIR)/shun_.c \
218 $(OBJDIR)/skins_.c \
219 $(OBJDIR)/sqlcmd_.c \
220 $(OBJDIR)/stash_.c \
221 $(OBJDIR)/stat_.c \
222 $(OBJDIR)/style_.c \
223 $(OBJDIR)/sync_.c \
224 $(OBJDIR)/tag_.c \
225 $(OBJDIR)/tar_.c \
226 $(OBJDIR)/th_main_.c \
227 $(OBJDIR)/timeline_.c \
228 $(OBJDIR)/tkt_.c \
229 $(OBJDIR)/tktsetup_.c \
230 $(OBJDIR)/undo_.c \
231 $(OBJDIR)/update_.c \
232 $(OBJDIR)/url_.c \
233 $(OBJDIR)/user_.c \
234 $(OBJDIR)/verify_.c \
235 $(OBJDIR)/vfile_.c \
236 $(OBJDIR)/wiki_.c \
237 $(OBJDIR)/wikiformat_.c \
238 $(OBJDIR)/winhttp_.c \
239 $(OBJDIR)/xfer_.c \
240 $(OBJDIR)/zip_.c
241
242 OBJ = \
243 $(OBJDIR)/add.o \
244 $(OBJDIR)/allrepo.o \
245 $(OBJDIR)/attach.o \
246 $(OBJDIR)/bag.o \
247 $(OBJDIR)/bisect.o \
248 $(OBJDIR)/blob.o \
249 $(OBJDIR)/branch.o \
250 $(OBJDIR)/browse.o \
251 $(OBJDIR)/captcha.o \
252 $(OBJDIR)/cgi.o \
253 $(OBJDIR)/checkin.o \
254 $(OBJDIR)/checkout.o \
255 $(OBJDIR)/clearsign.o \
256 $(OBJDIR)/clone.o \
257 $(OBJDIR)/comformat.o \
258 $(OBJDIR)/configure.o \
259 $(OBJDIR)/content.o \
260 $(OBJDIR)/db.o \
261 $(OBJDIR)/delta.o \
262 $(OBJDIR)/deltacmd.o \
263 $(OBJDIR)/descendants.o \
264 $(OBJDIR)/diff.o \
265 $(OBJDIR)/diffcmd.o \
266 $(OBJDIR)/doc.o \
267 $(OBJDIR)/encode.o \
268 $(OBJDIR)/event.o \
269 $(OBJDIR)/export.o \
270 $(OBJDIR)/file.o \
271 $(OBJDIR)/finfo.o \
272 $(OBJDIR)/graph.o \
273 $(OBJDIR)/gzip.o \
274 $(OBJDIR)/http.o \
275 $(OBJDIR)/http_socket.o \
276 $(OBJDIR)/http_ssl.o \
277 $(OBJDIR)/http_transport.o \
278 $(OBJDIR)/import.o \
279 $(OBJDIR)/info.o \
280 $(OBJDIR)/leaf.o \
281 $(OBJDIR)/login.o \
282 $(OBJDIR)/main.o \
283 $(OBJDIR)/manifest.o \
284 $(OBJDIR)/md5.o \
285 $(OBJDIR)/merge.o \
286 $(OBJDIR)/merge3.o \
287 $(OBJDIR)/name.o \
288 $(OBJDIR)/path.o \
289 $(OBJDIR)/pivot.o \
290 $(OBJDIR)/popen.o \
291 $(OBJDIR)/pqueue.o \
292 $(OBJDIR)/printf.o \
293 $(OBJDIR)/rebuild.o \
294 $(OBJDIR)/report.o \
295 $(OBJDIR)/rss.o \
296 $(OBJDIR)/schema.o \
297 $(OBJDIR)/search.o \
298 $(OBJDIR)/setup.o \
299 $(OBJDIR)/sha1.o \
300 $(OBJDIR)/shun.o \
301 $(OBJDIR)/skins.o \
302 $(OBJDIR)/sqlcmd.o \
303 $(OBJDIR)/stash.o \
304 $(OBJDIR)/stat.o \
305 $(OBJDIR)/style.o \
306 $(OBJDIR)/sync.o \
307 $(OBJDIR)/tag.o \
308 $(OBJDIR)/tar.o \
309 $(OBJDIR)/th_main.o \
310 $(OBJDIR)/timeline.o \
311 $(OBJDIR)/tkt.o \
312 $(OBJDIR)/tktsetup.o \
313 $(OBJDIR)/undo.o \
314 $(OBJDIR)/update.o \
315 $(OBJDIR)/url.o \
316 $(OBJDIR)/user.o \
317 $(OBJDIR)/verify.o \
318 $(OBJDIR)/vfile.o \
319 $(OBJDIR)/wiki.o \
320 $(OBJDIR)/wikiformat.o \
321 $(OBJDIR)/winhttp.o \
322 $(OBJDIR)/xfer.o \
323 $(OBJDIR)/zip.o
324
325 APPNAME = fossil.exe
326 TRANSLATE = $(subst /,\\,$(OBJDIR)/translate.exe)
327 MAKEHEADERS = $(subst /,\\,$(OBJDIR)/makeheaders.exe)
328 MKINDEX = $(subst /,\\,$(OBJDIR)/mkindex.exe)
329 VERSION = $(subst /,\\,$(OBJDIR)/version.exe)
330
331
332 all: $(OBJDIR) $(APPNAME)
333
334 $(OBJDIR)/icon.o: $(SRCDIR)/../win/icon.rc
335 cp $(SRCDIR)/../win/icon.rc $(OBJDIR)
336 windres $(OBJDIR)/icon.rc -o $(OBJDIR)/icon.o
337
338 install: $(APPNAME)
339 mv $(APPNAME) $(INSTALLDIR)
340
341 $(OBJDIR):
342 mkdir $(OBJDIR)
343
344 $(OBJDIR)/translate: $(SRCDIR)/translate.c
345 $(BCC) -o $(OBJDIR)/translate $(SRCDIR)/translate.c
346
347 $(OBJDIR)/makeheaders: $(SRCDIR)/makeheaders.c
348 $(BCC) -o $(OBJDIR)/makeheaders $(SRCDIR)/makeheaders.c
349
350 $(OBJDIR)/mkindex: $(SRCDIR)/mkindex.c
351 $(BCC) -o $(OBJDIR)/mkindex $(SRCDIR)/mkindex.c
352
353 $(VERSION): $(SRCDIR)/../win/version.c
354 $(BCC) -o $(OBJDIR)/version $(SRCDIR)/../win/version.c
355
356 # WARNING. DANGER. Running the testsuite modifies the repository the
357 # build is done from, i.e. the checkout belongs to. Do not sync/push
358 # the repository after running the tests.
359 test: $(APPNAME)
360 $(TCLSH) test/tester.tcl $(APPNAME)
361
362 $(OBJDIR)/VERSION.h: $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest $(VERSION)
363 $(VERSION) $(SRCDIR)/../manifest.uuid $(SRCDIR)/../manifest >$(OBJDIR)/VERSION.h
364
365 EXTRAOBJ = $(OBJDIR)/sqlite3.o $(OBJDIR)/shell.o $(OBJDIR)/th.o $(OBJDIR)/th_lang.o
366
367 $(APPNAME): $(OBJDIR)/headers $(OBJ) $(EXTRAOBJ) $(OBJDIR)/icon.o
368 $(TCC) -o $(APPNAME) $(OBJ) $(EXTRAOBJ) $(LIB) $(OBJDIR)/icon.o
369
370 # This rule prevents make from using its default rules to try build
371 # an executable named "manifest" out of the file named "manifest.c"
372 #
373 $(SRCDIR)/../manifest:
374 # noop
375
376 # Requires msys to be installed in addition to the mingw, for the "rm"
377 # command. "del" will not work here because it is not a separate command
378 # but a MSDOS-shell builtin.
379 #
380 clean:
381 rm -rf $(OBJDIR) $(APPNAME)
382
383 setup: $(OBJDIR) $(APPNAME)
384 $(MAKENSIS) ./fossil.nsi
385
386
387 $(OBJDIR)/page_index.h: $(TRANS_SRC) $(OBJDIR)/mkindex
388 $(MKINDEX) $(TRANS_SRC) >$@
389 $(OBJDIR)/headers: $(OBJDIR)/page_index.h $(OBJDIR)/makeheaders $(OBJDIR)/VERSION.h
390 $(MAKEHEADERS) $(OBJDIR)/add_.c:$(OBJDIR)/add.h $(OBJDIR)/allrepo_.c:$(OBJDIR)/allrepo.h $(OBJDIR)/attach_.c:$(OBJDIR)/attach.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)/captcha_.c:$(OBJDIR)/captcha.h $(OBJDIR)/cgi_.c:$(OBJDIR)/cgi.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)/comformat_.c:$(OBJDIR)/comformat.h $(OBJDIR)/configure_.c:$(OBJDIR)/configure.h $(OBJDIR)/content_.c:$(OBJDIR)/content.h $(OBJDIR)/db_.c:$(OBJDIR)/db.h $(OBJDIR)/delta_.c:$(OBJDIR)/delta.h $(OBJDIR)/deltacmd_.c:$(OBJDIR)/deltacmd.h $(OBJDIR)/descendants_.c:$(OBJDIR)/descendants.h $(OBJDIR)/diff_.c:$(OBJDIR)/diff.h $(OBJDIR)/diffcmd_.c:$(OBJDIR)/diffcmd.h $(OBJDIR)/doc_.c:$(OBJDIR)/doc.h $(OBJDIR)/encode_.c:$(OBJDIR)/encode.h $(OBJDIR)/event_.c:$(OBJDIR)/event.h $(OBJDIR)/export_.c:$(OBJDIR)/export.h $(OBJDIR)/file_.c:$(OBJDIR)/file.h $(OBJDIR)/finfo_.c:$(OBJDIR)/finfo.h $(OBJDIR)/graph_.c:$(OBJDIR)/graph.h $(OBJDIR)/gzip_.c:$(OBJDIR)/gzip.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)/leaf_.c:$(OBJDIR)/leaf.h $(OBJDIR)/login_.c:$(OBJDIR)/login.h $(OBJDIR)/main_.c:$(OBJDIR)/main.h $(OBJDIR)/manifest_.c:$(OBJDIR)/manifest.h $(OBJDIR)/md5_.c:$(OBJDIR)/md5.h $(OBJDIR)/merge_.c:$(OBJDIR)/merge.h $(OBJDIR)/merge3_.c:$(OBJDIR)/merge3.h $(OBJDIR)/name_.c:$(OBJDIR)/name.h $(OBJDIR)/path_.c:$(OBJDIR)/path.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)/rebuild_.c:$(OBJDIR)/rebuild.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)/setup_.c:$(OBJDIR)/setup.h $(OBJDIR)/sha1_.c:$(OBJDIR)/sha1.h $(OBJDIR)/shun_.c:$(OBJDIR)/shun.h $(OBJDIR)/skins_.c:$(OBJDIR)/skins.h $(OBJDIR)/sqlcmd_.c:$(OBJDIR)/sqlcmd.h $(OBJDIR)/stash_.c:$(OBJDIR)/stash.h $(OBJDIR)/stat_.c:$(OBJDIR)/stat.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)/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)/update_.c:$(OBJDIR)/update.h $(OBJDIR)/url_.c:$(OBJDIR)/url.h $(OBJDIR)/user_.c:$(OBJDIR)/user.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)/winhttp_.c:$(OBJDIR)/winhttp.h $(OBJDIR)/xfer_.c:$(OBJDIR)/xfer.h $(OBJDIR)/zip_.c:$(OBJDIR)/zip.h $(SRCDIR)/sqlite3.h $(SRCDIR)/th.h $(OBJDIR)/VERSION.h
391 echo Done >$(OBJDIR)/headers
392
393 $(OBJDIR)/headers: Makefile
394 Makefile:
395 $(OBJDIR)/add_.c: $(SRCDIR)/add.c $(OBJDIR)/translate
396 $(TRANSLATE) $(SRCDIR)/add.c >$(OBJDIR)/add_.c
397
398 $(OBJDIR)/add.o: $(OBJDIR)/add_.c $(OBJDIR)/add.h $(SRCDIR)/config.h
399 $(XTCC) -o $(OBJDIR)/add.o -c $(OBJDIR)/add_.c
400
401 add.h: $(OBJDIR)/headers
402 $(OBJDIR)/allrepo_.c: $(SRCDIR)/allrepo.c $(OBJDIR)/translate
403 $(TRANSLATE) $(SRCDIR)/allrepo.c >$(OBJDIR)/allrepo_.c
404
405 $(OBJDIR)/allrepo.o: $(OBJDIR)/allrepo_.c $(OBJDIR)/allrepo.h $(SRCDIR)/config.h
406 $(XTCC) -o $(OBJDIR)/allrepo.o -c $(OBJDIR)/allrepo_.c
407
408 allrepo.h: $(OBJDIR)/headers
409 $(OBJDIR)/attach_.c: $(SRCDIR)/attach.c $(OBJDIR)/translate
410 $(TRANSLATE) $(SRCDIR)/attach.c >$(OBJDIR)/attach_.c
411
412 $(OBJDIR)/attach.o: $(OBJDIR)/attach_.c $(OBJDIR)/attach.h $(SRCDIR)/config.h
413 $(XTCC) -o $(OBJDIR)/attach.o -c $(OBJDIR)/attach_.c
414
415 attach.h: $(OBJDIR)/headers
416 $(OBJDIR)/bag_.c: $(SRCDIR)/bag.c $(OBJDIR)/translate
417 $(TRANSLATE) $(SRCDIR)/bag.c >$(OBJDIR)/bag_.c
418
419 $(OBJDIR)/bag.o: $(OBJDIR)/bag_.c $(OBJDIR)/bag.h $(SRCDIR)/config.h
420 $(XTCC) -o $(OBJDIR)/bag.o -c $(OBJDIR)/bag_.c
421
422 bag.h: $(OBJDIR)/headers
423 $(OBJDIR)/bisect_.c: $(SRCDIR)/bisect.c $(OBJDIR)/translate
424 $(TRANSLATE) $(SRCDIR)/bisect.c >$(OBJDIR)/bisect_.c
425
426 $(OBJDIR)/bisect.o: $(OBJDIR)/bisect_.c $(OBJDIR)/bisect.h $(SRCDIR)/config.h
427 $(XTCC) -o $(OBJDIR)/bisect.o -c $(OBJDIR)/bisect_.c
428
429 bisect.h: $(OBJDIR)/headers
430 $(OBJDIR)/blob_.c: $(SRCDIR)/blob.c $(OBJDIR)/translate
431 $(TRANSLATE) $(SRCDIR)/blob.c >$(OBJDIR)/blob_.c
432
433 $(OBJDIR)/blob.o: $(OBJDIR)/blob_.c $(OBJDIR)/blob.h $(SRCDIR)/config.h
434 $(XTCC) -o $(OBJDIR)/blob.o -c $(OBJDIR)/blob_.c
435
436 blob.h: $(OBJDIR)/headers
437 $(OBJDIR)/branch_.c: $(SRCDIR)/branch.c $(OBJDIR)/translate
438 $(TRANSLATE) $(SRCDIR)/branch.c >$(OBJDIR)/branch_.c
439
440 $(OBJDIR)/branch.o: $(OBJDIR)/branch_.c $(OBJDIR)/branch.h $(SRCDIR)/config.h
441 $(XTCC) -o $(OBJDIR)/branch.o -c $(OBJDIR)/branch_.c
442
443 branch.h: $(OBJDIR)/headers
444 $(OBJDIR)/browse_.c: $(SRCDIR)/browse.c $(OBJDIR)/translate
445 $(TRANSLATE) $(SRCDIR)/browse.c >$(OBJDIR)/browse_.c
446
447 $(OBJDIR)/browse.o: $(OBJDIR)/browse_.c $(OBJDIR)/browse.h $(SRCDIR)/config.h
448 $(XTCC) -o $(OBJDIR)/browse.o -c $(OBJDIR)/browse_.c
449
450 browse.h: $(OBJDIR)/headers
451 $(OBJDIR)/captcha_.c: $(SRCDIR)/captcha.c $(OBJDIR)/translate
452 $(TRANSLATE) $(SRCDIR)/captcha.c >$(OBJDIR)/captcha_.c
453
454 $(OBJDIR)/captcha.o: $(OBJDIR)/captcha_.c $(OBJDIR)/captcha.h $(SRCDIR)/config.h
455 $(XTCC) -o $(OBJDIR)/captcha.o -c $(OBJDIR)/captcha_.c
456
457 captcha.h: $(OBJDIR)/headers
458 $(OBJDIR)/cgi_.c: $(SRCDIR)/cgi.c $(OBJDIR)/translate
459 $(TRANSLATE) $(SRCDIR)/cgi.c >$(OBJDIR)/cgi_.c
460
461 $(OBJDIR)/cgi.o: $(OBJDIR)/cgi_.c $(OBJDIR)/cgi.h $(SRCDIR)/config.h
462 $(XTCC) -o $(OBJDIR)/cgi.o -c $(OBJDIR)/cgi_.c
463
464 cgi.h: $(OBJDIR)/headers
465 $(OBJDIR)/checkin_.c: $(SRCDIR)/checkin.c $(OBJDIR)/translate
466 $(TRANSLATE) $(SRCDIR)/checkin.c >$(OBJDIR)/checkin_.c
467
468 $(OBJDIR)/checkin.o: $(OBJDIR)/checkin_.c $(OBJDIR)/checkin.h $(SRCDIR)/config.h
469 $(XTCC) -o $(OBJDIR)/checkin.o -c $(OBJDIR)/checkin_.c
470
471 checkin.h: $(OBJDIR)/headers
472 $(OBJDIR)/checkout_.c: $(SRCDIR)/checkout.c $(OBJDIR)/translate
473 $(TRANSLATE) $(SRCDIR)/checkout.c >$(OBJDIR)/checkout_.c
474
475 $(OBJDIR)/checkout.o: $(OBJDIR)/checkout_.c $(OBJDIR)/checkout.h $(SRCDIR)/config.h
476 $(XTCC) -o $(OBJDIR)/checkout.o -c $(OBJDIR)/checkout_.c
477
478 checkout.h: $(OBJDIR)/headers
479 $(OBJDIR)/clearsign_.c: $(SRCDIR)/clearsign.c $(OBJDIR)/translate
480 $(TRANSLATE) $(SRCDIR)/clearsign.c >$(OBJDIR)/clearsign_.c
481
482 $(OBJDIR)/clearsign.o: $(OBJDIR)/clearsign_.c $(OBJDIR)/clearsign.h $(SRCDIR)/config.h
483 $(XTCC) -o $(OBJDIR)/clearsign.o -c $(OBJDIR)/clearsign_.c
484
485 clearsign.h: $(OBJDIR)/headers
486 $(OBJDIR)/clone_.c: $(SRCDIR)/clone.c $(OBJDIR)/translate
487 $(TRANSLATE) $(SRCDIR)/clone.c >$(OBJDIR)/clone_.c
488
489 $(OBJDIR)/clone.o: $(OBJDIR)/clone_.c $(OBJDIR)/clone.h $(SRCDIR)/config.h
490 $(XTCC) -o $(OBJDIR)/clone.o -c $(OBJDIR)/clone_.c
491
492 clone.h: $(OBJDIR)/headers
493 $(OBJDIR)/comformat_.c: $(SRCDIR)/comformat.c $(OBJDIR)/translate
494 $(TRANSLATE) $(SRCDIR)/comformat.c >$(OBJDIR)/comformat_.c
495
496 $(OBJDIR)/comformat.o: $(OBJDIR)/comformat_.c $(OBJDIR)/comformat.h $(SRCDIR)/config.h
497 $(XTCC) -o $(OBJDIR)/comformat.o -c $(OBJDIR)/comformat_.c
498
499 comformat.h: $(OBJDIR)/headers
500 $(OBJDIR)/configure_.c: $(SRCDIR)/configure.c $(OBJDIR)/translate
501 $(TRANSLATE) $(SRCDIR)/configure.c >$(OBJDIR)/configure_.c
502
503 $(OBJDIR)/configure.o: $(OBJDIR)/configure_.c $(OBJDIR)/configure.h $(SRCDIR)/config.h
504 $(XTCC) -o $(OBJDIR)/configure.o -c $(OBJDIR)/configure_.c
505
506 configure.h: $(OBJDIR)/headers
507 $(OBJDIR)/content_.c: $(SRCDIR)/content.c $(OBJDIR)/translate
508 $(TRANSLATE) $(SRCDIR)/content.c >$(OBJDIR)/content_.c
509
510 $(OBJDIR)/content.o: $(OBJDIR)/content_.c $(OBJDIR)/content.h $(SRCDIR)/config.h
511 $(XTCC) -o $(OBJDIR)/content.o -c $(OBJDIR)/content_.c
512
513 content.h: $(OBJDIR)/headers
514 $(OBJDIR)/db_.c: $(SRCDIR)/db.c $(OBJDIR)/translate
515 $(TRANSLATE) $(SRCDIR)/db.c >$(OBJDIR)/db_.c
516
517 $(OBJDIR)/db.o: $(OBJDIR)/db_.c $(OBJDIR)/db.h $(SRCDIR)/config.h
518 $(XTCC) -o $(OBJDIR)/db.o -c $(OBJDIR)/db_.c
519
520 db.h: $(OBJDIR)/headers
521 $(OBJDIR)/delta_.c: $(SRCDIR)/delta.c $(OBJDIR)/translate
522 $(TRANSLATE) $(SRCDIR)/delta.c >$(OBJDIR)/delta_.c
523
524 $(OBJDIR)/delta.o: $(OBJDIR)/delta_.c $(OBJDIR)/delta.h $(SRCDIR)/config.h
525 $(XTCC) -o $(OBJDIR)/delta.o -c $(OBJDIR)/delta_.c
526
527 delta.h: $(OBJDIR)/headers
528 $(OBJDIR)/deltacmd_.c: $(SRCDIR)/deltacmd.c $(OBJDIR)/translate
529 $(TRANSLATE) $(SRCDIR)/deltacmd.c >$(OBJDIR)/deltacmd_.c
530
531 $(OBJDIR)/deltacmd.o: $(OBJDIR)/deltacmd_.c $(OBJDIR)/deltacmd.h $(SRCDIR)/config.h
532 $(XTCC) -o $(OBJDIR)/deltacmd.o -c $(OBJDIR)/deltacmd_.c
533
534 deltacmd.h: $(OBJDIR)/headers
535 $(OBJDIR)/descendants_.c: $(SRCDIR)/descendants.c $(OBJDIR)/translate
536 $(TRANSLATE) $(SRCDIR)/descendants.c >$(OBJDIR)/descendants_.c
537
538 $(OBJDIR)/descendants.o: $(OBJDIR)/descendants_.c $(OBJDIR)/descendants.h $(SRCDIR)/config.h
539 $(XTCC) -o $(OBJDIR)/descendants.o -c $(OBJDIR)/descendants_.c
540
541 descendants.h: $(OBJDIR)/headers
542 $(OBJDIR)/diff_.c: $(SRCDIR)/diff.c $(OBJDIR)/translate
543 $(TRANSLATE) $(SRCDIR)/diff.c >$(OBJDIR)/diff_.c
544
545 $(OBJDIR)/diff.o: $(OBJDIR)/diff_.c $(OBJDIR)/diff.h $(SRCDIR)/config.h
546 $(XTCC) -o $(OBJDIR)/diff.o -c $(OBJDIR)/diff_.c
547
548 diff.h: $(OBJDIR)/headers
549 $(OBJDIR)/diffcmd_.c: $(SRCDIR)/diffcmd.c $(OBJDIR)/translate
550 $(TRANSLATE) $(SRCDIR)/diffcmd.c >$(OBJDIR)/diffcmd_.c
551
552 $(OBJDIR)/diffcmd.o: $(OBJDIR)/diffcmd_.c $(OBJDIR)/diffcmd.h $(SRCDIR)/config.h
553 $(XTCC) -o $(OBJDIR)/diffcmd.o -c $(OBJDIR)/diffcmd_.c
554
555 diffcmd.h: $(OBJDIR)/headers
556 $(OBJDIR)/doc_.c: $(SRCDIR)/doc.c $(OBJDIR)/translate
557 $(TRANSLATE) $(SRCDIR)/doc.c >$(OBJDIR)/doc_.c
558
559 $(OBJDIR)/doc.o: $(OBJDIR)/doc_.c $(OBJDIR)/doc.h $(SRCDIR)/config.h
560 $(XTCC) -o $(OBJDIR)/doc.o -c $(OBJDIR)/doc_.c
561
562 doc.h: $(OBJDIR)/headers
563 $(OBJDIR)/encode_.c: $(SRCDIR)/encode.c $(OBJDIR)/translate
564 $(TRANSLATE) $(SRCDIR)/encode.c >$(OBJDIR)/encode_.c
565
566 $(OBJDIR)/encode.o: $(OBJDIR)/encode_.c $(OBJDIR)/encode.h $(SRCDIR)/config.h
567 $(XTCC) -o $(OBJDIR)/encode.o -c $(OBJDIR)/encode_.c
568
569 encode.h: $(OBJDIR)/headers
570 $(OBJDIR)/event_.c: $(SRCDIR)/event.c $(OBJDIR)/translate
571 $(TRANSLATE) $(SRCDIR)/event.c >$(OBJDIR)/event_.c
572
573 $(OBJDIR)/event.o: $(OBJDIR)/event_.c $(OBJDIR)/event.h $(SRCDIR)/config.h
574 $(XTCC) -o $(OBJDIR)/event.o -c $(OBJDIR)/event_.c
575
576 event.h: $(OBJDIR)/headers
577 $(OBJDIR)/export_.c: $(SRCDIR)/export.c $(OBJDIR)/translate
578 $(TRANSLATE) $(SRCDIR)/export.c >$(OBJDIR)/export_.c
579
580 $(OBJDIR)/export.o: $(OBJDIR)/export_.c $(OBJDIR)/export.h $(SRCDIR)/config.h
581 $(XTCC) -o $(OBJDIR)/export.o -c $(OBJDIR)/export_.c
582
583 export.h: $(OBJDIR)/headers
584 $(OBJDIR)/file_.c: $(SRCDIR)/file.c $(OBJDIR)/translate
585 $(TRANSLATE) $(SRCDIR)/file.c >$(OBJDIR)/file_.c
586
587 $(OBJDIR)/file.o: $(OBJDIR)/file_.c $(OBJDIR)/file.h $(SRCDIR)/config.h
588 $(XTCC) -o $(OBJDIR)/file.o -c $(OBJDIR)/file_.c
589
590 file.h: $(OBJDIR)/headers
591 $(OBJDIR)/finfo_.c: $(SRCDIR)/finfo.c $(OBJDIR)/translate
592 $(TRANSLATE) $(SRCDIR)/finfo.c >$(OBJDIR)/finfo_.c
593
594 $(OBJDIR)/finfo.o: $(OBJDIR)/finfo_.c $(OBJDIR)/finfo.h $(SRCDIR)/config.h
595 $(XTCC) -o $(OBJDIR)/finfo.o -c $(OBJDIR)/finfo_.c
596
597 finfo.h: $(OBJDIR)/headers
598 $(OBJDIR)/graph_.c: $(SRCDIR)/graph.c $(OBJDIR)/translate
599 $(TRANSLATE) $(SRCDIR)/graph.c >$(OBJDIR)/graph_.c
600
601 $(OBJDIR)/graph.o: $(OBJDIR)/graph_.c $(OBJDIR)/graph.h $(SRCDIR)/config.h
602 $(XTCC) -o $(OBJDIR)/graph.o -c $(OBJDIR)/graph_.c
603
604 graph.h: $(OBJDIR)/headers
605 $(OBJDIR)/gzip_.c: $(SRCDIR)/gzip.c $(OBJDIR)/translate
606 $(TRANSLATE) $(SRCDIR)/gzip.c >$(OBJDIR)/gzip_.c
607
608 $(OBJDIR)/gzip.o: $(OBJDIR)/gzip_.c $(OBJDIR)/gzip.h $(SRCDIR)/config.h
609 $(XTCC) -o $(OBJDIR)/gzip.o -c $(OBJDIR)/gzip_.c
610
611 gzip.h: $(OBJDIR)/headers
612 $(OBJDIR)/http_.c: $(SRCDIR)/http.c $(OBJDIR)/translate
613 $(TRANSLATE) $(SRCDIR)/http.c >$(OBJDIR)/http_.c
614
615 $(OBJDIR)/http.o: $(OBJDIR)/http_.c $(OBJDIR)/http.h $(SRCDIR)/config.h
616 $(XTCC) -o $(OBJDIR)/http.o -c $(OBJDIR)/http_.c
617
618 http.h: $(OBJDIR)/headers
619 $(OBJDIR)/http_socket_.c: $(SRCDIR)/http_socket.c $(OBJDIR)/translate
620 $(TRANSLATE) $(SRCDIR)/http_socket.c >$(OBJDIR)/http_socket_.c
621
622 $(OBJDIR)/http_socket.o: $(OBJDIR)/http_socket_.c $(OBJDIR)/http_socket.h $(SRCDIR)/config.h
623 $(XTCC) -o $(OBJDIR)/http_socket.o -c $(OBJDIR)/http_socket_.c
624
625 http_socket.h: $(OBJDIR)/headers
626 $(OBJDIR)/http_ssl_.c: $(SRCDIR)/http_ssl.c $(OBJDIR)/translate
627 $(TRANSLATE) $(SRCDIR)/http_ssl.c >$(OBJDIR)/http_ssl_.c
628
629 $(OBJDIR)/http_ssl.o: $(OBJDIR)/http_ssl_.c $(OBJDIR)/http_ssl.h $(SRCDIR)/config.h
630 $(XTCC) -o $(OBJDIR)/http_ssl.o -c $(OBJDIR)/http_ssl_.c
631
632 http_ssl.h: $(OBJDIR)/headers
633 $(OBJDIR)/http_transport_.c: $(SRCDIR)/http_transport.c $(OBJDIR)/translate
634 $(TRANSLATE) $(SRCDIR)/http_transport.c >$(OBJDIR)/http_transport_.c
635
636 $(OBJDIR)/http_transport.o: $(OBJDIR)/http_transport_.c $(OBJDIR)/http_transport.h $(SRCDIR)/config.h
637 $(XTCC) -o $(OBJDIR)/http_transport.o -c $(OBJDIR)/http_transport_.c
638
639 http_transport.h: $(OBJDIR)/headers
640 $(OBJDIR)/import_.c: $(SRCDIR)/import.c $(OBJDIR)/translate
641 $(TRANSLATE) $(SRCDIR)/import.c >$(OBJDIR)/import_.c
642
643 $(OBJDIR)/import.o: $(OBJDIR)/import_.c $(OBJDIR)/import.h $(SRCDIR)/config.h
644 $(XTCC) -o $(OBJDIR)/import.o -c $(OBJDIR)/import_.c
645
646 import.h: $(OBJDIR)/headers
647 $(OBJDIR)/info_.c: $(SRCDIR)/info.c $(OBJDIR)/translate
648 $(TRANSLATE) $(SRCDIR)/info.c >$(OBJDIR)/info_.c
649
650 $(OBJDIR)/info.o: $(OBJDIR)/info_.c $(OBJDIR)/info.h $(SRCDIR)/config.h
651 $(XTCC) -o $(OBJDIR)/info.o -c $(OBJDIR)/info_.c
652
653 info.h: $(OBJDIR)/headers
654 $(OBJDIR)/leaf_.c: $(SRCDIR)/leaf.c $(OBJDIR)/translate
655 $(TRANSLATE) $(SRCDIR)/leaf.c >$(OBJDIR)/leaf_.c
656
657 $(OBJDIR)/leaf.o: $(OBJDIR)/leaf_.c $(OBJDIR)/leaf.h $(SRCDIR)/config.h
658 $(XTCC) -o $(OBJDIR)/leaf.o -c $(OBJDIR)/leaf_.c
659
660 leaf.h: $(OBJDIR)/headers
661 $(OBJDIR)/login_.c: $(SRCDIR)/login.c $(OBJDIR)/translate
662 $(TRANSLATE) $(SRCDIR)/login.c >$(OBJDIR)/login_.c
663
664 $(OBJDIR)/login.o: $(OBJDIR)/login_.c $(OBJDIR)/login.h $(SRCDIR)/config.h
665 $(XTCC) -o $(OBJDIR)/login.o -c $(OBJDIR)/login_.c
666
667 login.h: $(OBJDIR)/headers
668 $(OBJDIR)/main_.c: $(SRCDIR)/main.c $(OBJDIR)/translate
669 $(TRANSLATE) $(SRCDIR)/main.c >$(OBJDIR)/main_.c
670
671 $(OBJDIR)/main.o: $(OBJDIR)/main_.c $(OBJDIR)/main.h $(OBJDIR)/page_index.h $(SRCDIR)/config.h
672 $(XTCC) -o $(OBJDIR)/main.o -c $(OBJDIR)/main_.c
673
674 main.h: $(OBJDIR)/headers
675 $(OBJDIR)/manifest_.c: $(SRCDIR)/manifest.c $(OBJDIR)/translate
676 $(TRANSLATE) $(SRCDIR)/manifest.c >$(OBJDIR)/manifest_.c
677
678 $(OBJDIR)/manifest.o: $(OBJDIR)/manifest_.c $(OBJDIR)/manifest.h $(SRCDIR)/config.h
679 $(XTCC) -o $(OBJDIR)/manifest.o -c $(OBJDIR)/manifest_.c
680
681 manifest.h: $(OBJDIR)/headers
682 $(OBJDIR)/md5_.c: $(SRCDIR)/md5.c $(OBJDIR)/translate
683 $(TRANSLATE) $(SRCDIR)/md5.c >$(OBJDIR)/md5_.c
684
685 $(OBJDIR)/md5.o: $(OBJDIR)/md5_.c $(OBJDIR)/md5.h $(SRCDIR)/config.h
686 $(XTCC) -o $(OBJDIR)/md5.o -c $(OBJDIR)/md5_.c
687
688 md5.h: $(OBJDIR)/headers
689 $(OBJDIR)/merge_.c: $(SRCDIR)/merge.c $(OBJDIR)/translate
690 $(TRANSLATE) $(SRCDIR)/merge.c >$(OBJDIR)/merge_.c
691
692 $(OBJDIR)/merge.o: $(OBJDIR)/merge_.c $(OBJDIR)/merge.h $(SRCDIR)/config.h
693 $(XTCC) -o $(OBJDIR)/merge.o -c $(OBJDIR)/merge_.c
694
695 merge.h: $(OBJDIR)/headers
696 $(OBJDIR)/merge3_.c: $(SRCDIR)/merge3.c $(OBJDIR)/translate
697 $(TRANSLATE) $(SRCDIR)/merge3.c >$(OBJDIR)/merge3_.c
698
699 $(OBJDIR)/merge3.o: $(OBJDIR)/merge3_.c $(OBJDIR)/merge3.h $(SRCDIR)/config.h
700 $(XTCC) -o $(OBJDIR)/merge3.o -c $(OBJDIR)/merge3_.c
701
702 merge3.h: $(OBJDIR)/headers
703 $(OBJDIR)/name_.c: $(SRCDIR)/name.c $(OBJDIR)/translate
704 $(TRANSLATE) $(SRCDIR)/name.c >$(OBJDIR)/name_.c
705
706 $(OBJDIR)/name.o: $(OBJDIR)/name_.c $(OBJDIR)/name.h $(SRCDIR)/config.h
707 $(XTCC) -o $(OBJDIR)/name.o -c $(OBJDIR)/name_.c
708
709 name.h: $(OBJDIR)/headers
710 $(OBJDIR)/path_.c: $(SRCDIR)/path.c $(OBJDIR)/translate
711 $(TRANSLATE) $(SRCDIR)/path.c >$(OBJDIR)/path_.c
712
713 $(OBJDIR)/path.o: $(OBJDIR)/path_.c $(OBJDIR)/path.h $(SRCDIR)/config.h
714 $(XTCC) -o $(OBJDIR)/path.o -c $(OBJDIR)/path_.c
715
716 path.h: $(OBJDIR)/headers
717 $(OBJDIR)/pivot_.c: $(SRCDIR)/pivot.c $(OBJDIR)/translate
718 $(TRANSLATE) $(SRCDIR)/pivot.c >$(OBJDIR)/pivot_.c
719
720 $(OBJDIR)/pivot.o: $(OBJDIR)/pivot_.c $(OBJDIR)/pivot.h $(SRCDIR)/config.h
721 $(XTCC) -o $(OBJDIR)/pivot.o -c $(OBJDIR)/pivot_.c
722
723 pivot.h: $(OBJDIR)/headers
724 $(OBJDIR)/popen_.c: $(SRCDIR)/popen.c $(OBJDIR)/translate
725 $(TRANSLATE) $(SRCDIR)/popen.c >$(OBJDIR)/popen_.c
726
727 $(OBJDIR)/popen.o: $(OBJDIR)/popen_.c $(OBJDIR)/popen.h $(SRCDIR)/config.h
728 $(XTCC) -o $(OBJDIR)/popen.o -c $(OBJDIR)/popen_.c
729
730 popen.h: $(OBJDIR)/headers
731 $(OBJDIR)/pqueue_.c: $(SRCDIR)/pqueue.c $(OBJDIR)/translate
732 $(TRANSLATE) $(SRCDIR)/pqueue.c >$(OBJDIR)/pqueue_.c
733
734 $(OBJDIR)/pqueue.o: $(OBJDIR)/pqueue_.c $(OBJDIR)/pqueue.h $(SRCDIR)/config.h
735 $(XTCC) -o $(OBJDIR)/pqueue.o -c $(OBJDIR)/pqueue_.c
736
737 pqueue.h: $(OBJDIR)/headers
738 $(OBJDIR)/printf_.c: $(SRCDIR)/printf.c $(OBJDIR)/translate
739 $(TRANSLATE) $(SRCDIR)/printf.c >$(OBJDIR)/printf_.c
740
741 $(OBJDIR)/printf.o: $(OBJDIR)/printf_.c $(OBJDIR)/printf.h $(SRCDIR)/config.h
742 $(XTCC) -o $(OBJDIR)/printf.o -c $(OBJDIR)/printf_.c
743
744 printf.h: $(OBJDIR)/headers
745 $(OBJDIR)/rebuild_.c: $(SRCDIR)/rebuild.c $(OBJDIR)/translate
746 $(TRANSLATE) $(SRCDIR)/rebuild.c >$(OBJDIR)/rebuild_.c
747
748 $(OBJDIR)/rebuild.o: $(OBJDIR)/rebuild_.c $(OBJDIR)/rebuild.h $(SRCDIR)/config.h
749 $(XTCC) -o $(OBJDIR)/rebuild.o -c $(OBJDIR)/rebuild_.c
750
751 rebuild.h: $(OBJDIR)/headers
752 $(OBJDIR)/report_.c: $(SRCDIR)/report.c $(OBJDIR)/translate
753 $(TRANSLATE) $(SRCDIR)/report.c >$(OBJDIR)/report_.c
754
755 $(OBJDIR)/report.o: $(OBJDIR)/report_.c $(OBJDIR)/report.h $(SRCDIR)/config.h
756 $(XTCC) -o $(OBJDIR)/report.o -c $(OBJDIR)/report_.c
757
758 report.h: $(OBJDIR)/headers
759 $(OBJDIR)/rss_.c: $(SRCDIR)/rss.c $(OBJDIR)/translate
760 $(TRANSLATE) $(SRCDIR)/rss.c >$(OBJDIR)/rss_.c
761
762 $(OBJDIR)/rss.o: $(OBJDIR)/rss_.c $(OBJDIR)/rss.h $(SRCDIR)/config.h
763 $(XTCC) -o $(OBJDIR)/rss.o -c $(OBJDIR)/rss_.c
764
765 rss.h: $(OBJDIR)/headers
766 $(OBJDIR)/schema_.c: $(SRCDIR)/schema.c $(OBJDIR)/translate
767 $(TRANSLATE) $(SRCDIR)/schema.c >$(OBJDIR)/schema_.c
768
769 $(OBJDIR)/schema.o: $(OBJDIR)/schema_.c $(OBJDIR)/schema.h $(SRCDIR)/config.h
770 $(XTCC) -o $(OBJDIR)/schema.o -c $(OBJDIR)/schema_.c
771
772 schema.h: $(OBJDIR)/headers
773 $(OBJDIR)/search_.c: $(SRCDIR)/search.c $(OBJDIR)/translate
774 $(TRANSLATE) $(SRCDIR)/search.c >$(OBJDIR)/search_.c
775
776 $(OBJDIR)/search.o: $(OBJDIR)/search_.c $(OBJDIR)/search.h $(SRCDIR)/config.h
777 $(XTCC) -o $(OBJDIR)/search.o -c $(OBJDIR)/search_.c
778
779 search.h: $(OBJDIR)/headers
780 $(OBJDIR)/setup_.c: $(SRCDIR)/setup.c $(OBJDIR)/translate
781 $(TRANSLATE) $(SRCDIR)/setup.c >$(OBJDIR)/setup_.c
782
783 $(OBJDIR)/setup.o: $(OBJDIR)/setup_.c $(OBJDIR)/setup.h $(SRCDIR)/config.h
784 $(XTCC) -o $(OBJDIR)/setup.o -c $(OBJDIR)/setup_.c
785
786 setup.h: $(OBJDIR)/headers
787 $(OBJDIR)/sha1_.c: $(SRCDIR)/sha1.c $(OBJDIR)/translate
788 $(TRANSLATE) $(SRCDIR)/sha1.c >$(OBJDIR)/sha1_.c
789
790 $(OBJDIR)/sha1.o: $(OBJDIR)/sha1_.c $(OBJDIR)/sha1.h $(SRCDIR)/config.h
791 $(XTCC) -o $(OBJDIR)/sha1.o -c $(OBJDIR)/sha1_.c
792
793 sha1.h: $(OBJDIR)/headers
794 $(OBJDIR)/shun_.c: $(SRCDIR)/shun.c $(OBJDIR)/translate
795 $(TRANSLATE) $(SRCDIR)/shun.c >$(OBJDIR)/shun_.c
796
797 $(OBJDIR)/shun.o: $(OBJDIR)/shun_.c $(OBJDIR)/shun.h $(SRCDIR)/config.h
798 $(XTCC) -o $(OBJDIR)/shun.o -c $(OBJDIR)/shun_.c
799
800 shun.h: $(OBJDIR)/headers
801 $(OBJDIR)/skins_.c: $(SRCDIR)/skins.c $(OBJDIR)/translate
802 $(TRANSLATE) $(SRCDIR)/skins.c >$(OBJDIR)/skins_.c
803
804 $(OBJDIR)/skins.o: $(OBJDIR)/skins_.c $(OBJDIR)/skins.h $(SRCDIR)/config.h
805 $(XTCC) -o $(OBJDIR)/skins.o -c $(OBJDIR)/skins_.c
806
807 skins.h: $(OBJDIR)/headers
808 $(OBJDIR)/sqlcmd_.c: $(SRCDIR)/sqlcmd.c $(OBJDIR)/translate
809 $(TRANSLATE) $(SRCDIR)/sqlcmd.c >$(OBJDIR)/sqlcmd_.c
810
811 $(OBJDIR)/sqlcmd.o: $(OBJDIR)/sqlcmd_.c $(OBJDIR)/sqlcmd.h $(SRCDIR)/config.h
812 $(XTCC) -o $(OBJDIR)/sqlcmd.o -c $(OBJDIR)/sqlcmd_.c
813
814 sqlcmd.h: $(OBJDIR)/headers
815 $(OBJDIR)/stash_.c: $(SRCDIR)/stash.c $(OBJDIR)/translate
816 $(TRANSLATE) $(SRCDIR)/stash.c >$(OBJDIR)/stash_.c
817
818 $(OBJDIR)/stash.o: $(OBJDIR)/stash_.c $(OBJDIR)/stash.h $(SRCDIR)/config.h
819 $(XTCC) -o $(OBJDIR)/stash.o -c $(OBJDIR)/stash_.c
820
821 stash.h: $(OBJDIR)/headers
822 $(OBJDIR)/stat_.c: $(SRCDIR)/stat.c $(OBJDIR)/translate
823 $(TRANSLATE) $(SRCDIR)/stat.c >$(OBJDIR)/stat_.c
824
825 $(OBJDIR)/stat.o: $(OBJDIR)/stat_.c $(OBJDIR)/stat.h $(SRCDIR)/config.h
826 $(XTCC) -o $(OBJDIR)/stat.o -c $(OBJDIR)/stat_.c
827
828 stat.h: $(OBJDIR)/headers
829 $(OBJDIR)/style_.c: $(SRCDIR)/style.c $(OBJDIR)/translate
830 $(TRANSLATE) $(SRCDIR)/style.c >$(OBJDIR)/style_.c
831
832 $(OBJDIR)/style.o: $(OBJDIR)/style_.c $(OBJDIR)/style.h $(SRCDIR)/config.h
833 $(XTCC) -o $(OBJDIR)/style.o -c $(OBJDIR)/style_.c
834
835 style.h: $(OBJDIR)/headers
836 $(OBJDIR)/sync_.c: $(SRCDIR)/sync.c $(OBJDIR)/translate
837 $(TRANSLATE) $(SRCDIR)/sync.c >$(OBJDIR)/sync_.c
838
839 $(OBJDIR)/sync.o: $(OBJDIR)/sync_.c $(OBJDIR)/sync.h $(SRCDIR)/config.h
840 $(XTCC) -o $(OBJDIR)/sync.o -c $(OBJDIR)/sync_.c
841
842 sync.h: $(OBJDIR)/headers
843 $(OBJDIR)/tag_.c: $(SRCDIR)/tag.c $(OBJDIR)/translate
844 $(TRANSLATE) $(SRCDIR)/tag.c >$(OBJDIR)/tag_.c
845
846 $(OBJDIR)/tag.o: $(OBJDIR)/tag_.c $(OBJDIR)/tag.h $(SRCDIR)/config.h
847 $(XTCC) -o $(OBJDIR)/tag.o -c $(OBJDIR)/tag_.c
848
849 tag.h: $(OBJDIR)/headers
850 $(OBJDIR)/tar_.c: $(SRCDIR)/tar.c $(OBJDIR)/translate
851 $(TRANSLATE) $(SRCDIR)/tar.c >$(OBJDIR)/tar_.c
852
853 $(OBJDIR)/tar.o: $(OBJDIR)/tar_.c $(OBJDIR)/tar.h $(SRCDIR)/config.h
854 $(XTCC) -o $(OBJDIR)/tar.o -c $(OBJDIR)/tar_.c
855
856 tar.h: $(OBJDIR)/headers
857 $(OBJDIR)/th_main_.c: $(SRCDIR)/th_main.c $(OBJDIR)/translate
858 $(TRANSLATE) $(SRCDIR)/th_main.c >$(OBJDIR)/th_main_.c
859
860 $(OBJDIR)/th_main.o: $(OBJDIR)/th_main_.c $(OBJDIR)/th_main.h $(SRCDIR)/config.h
861 $(XTCC) -o $(OBJDIR)/th_main.o -c $(OBJDIR)/th_main_.c
862
863 th_main.h: $(OBJDIR)/headers
864 $(OBJDIR)/timeline_.c: $(SRCDIR)/timeline.c $(OBJDIR)/translate
865 $(TRANSLATE) $(SRCDIR)/timeline.c >$(OBJDIR)/timeline_.c
866
867 $(OBJDIR)/timeline.o: $(OBJDIR)/timeline_.c $(OBJDIR)/timeline.h $(SRCDIR)/config.h
868 $(XTCC) -o $(OBJDIR)/timeline.o -c $(OBJDIR)/timeline_.c
869
870 timeline.h: $(OBJDIR)/headers
871 $(OBJDIR)/tkt_.c: $(SRCDIR)/tkt.c $(OBJDIR)/translate
872 $(TRANSLATE) $(SRCDIR)/tkt.c >$(OBJDIR)/tkt_.c
873
874 $(OBJDIR)/tkt.o: $(OBJDIR)/tkt_.c $(OBJDIR)/tkt.h $(SRCDIR)/config.h
875 $(XTCC) -o $(OBJDIR)/tkt.o -c $(OBJDIR)/tkt_.c
876
877 tkt.h: $(OBJDIR)/headers
878 $(OBJDIR)/tktsetup_.c: $(SRCDIR)/tktsetup.c $(OBJDIR)/translate
879 $(TRANSLATE) $(SRCDIR)/tktsetup.c >$(OBJDIR)/tktsetup_.c
880
881 $(OBJDIR)/tktsetup.o: $(OBJDIR)/tktsetup_.c $(OBJDIR)/tktsetup.h $(SRCDIR)/config.h
882 $(XTCC) -o $(OBJDIR)/tktsetup.o -c $(OBJDIR)/tktsetup_.c
883
884 tktsetup.h: $(OBJDIR)/headers
885 $(OBJDIR)/undo_.c: $(SRCDIR)/undo.c $(OBJDIR)/translate
886 $(TRANSLATE) $(SRCDIR)/undo.c >$(OBJDIR)/undo_.c
887
888 $(OBJDIR)/undo.o: $(OBJDIR)/undo_.c $(OBJDIR)/undo.h $(SRCDIR)/config.h
889 $(XTCC) -o $(OBJDIR)/undo.o -c $(OBJDIR)/undo_.c
890
891 undo.h: $(OBJDIR)/headers
892 $(OBJDIR)/update_.c: $(SRCDIR)/update.c $(OBJDIR)/translate
893 $(TRANSLATE) $(SRCDIR)/update.c >$(OBJDIR)/update_.c
894
895 $(OBJDIR)/update.o: $(OBJDIR)/update_.c $(OBJDIR)/update.h $(SRCDIR)/config.h
896 $(XTCC) -o $(OBJDIR)/update.o -c $(OBJDIR)/update_.c
897
898 update.h: $(OBJDIR)/headers
899 $(OBJDIR)/url_.c: $(SRCDIR)/url.c $(OBJDIR)/translate
900 $(TRANSLATE) $(SRCDIR)/url.c >$(OBJDIR)/url_.c
901
902 $(OBJDIR)/url.o: $(OBJDIR)/url_.c $(OBJDIR)/url.h $(SRCDIR)/config.h
903 $(XTCC) -o $(OBJDIR)/url.o -c $(OBJDIR)/url_.c
904
905 url.h: $(OBJDIR)/headers
906 $(OBJDIR)/user_.c: $(SRCDIR)/user.c $(OBJDIR)/translate
907 $(TRANSLATE) $(SRCDIR)/user.c >$(OBJDIR)/user_.c
908
909 $(OBJDIR)/user.o: $(OBJDIR)/user_.c $(OBJDIR)/user.h $(SRCDIR)/config.h
910 $(XTCC) -o $(OBJDIR)/user.o -c $(OBJDIR)/user_.c
911
912 user.h: $(OBJDIR)/headers
913 $(OBJDIR)/verify_.c: $(SRCDIR)/verify.c $(OBJDIR)/translate
914 $(TRANSLATE) $(SRCDIR)/verify.c >$(OBJDIR)/verify_.c
915
916 $(OBJDIR)/verify.o: $(OBJDIR)/verify_.c $(OBJDIR)/verify.h $(SRCDIR)/config.h
917 $(XTCC) -o $(OBJDIR)/verify.o -c $(OBJDIR)/verify_.c
918
919 verify.h: $(OBJDIR)/headers
920 $(OBJDIR)/vfile_.c: $(SRCDIR)/vfile.c $(OBJDIR)/translate
921 $(TRANSLATE) $(SRCDIR)/vfile.c >$(OBJDIR)/vfile_.c
922
923 $(OBJDIR)/vfile.o: $(OBJDIR)/vfile_.c $(OBJDIR)/vfile.h $(SRCDIR)/config.h
924 $(XTCC) -o $(OBJDIR)/vfile.o -c $(OBJDIR)/vfile_.c
925
926 vfile.h: $(OBJDIR)/headers
927 $(OBJDIR)/wiki_.c: $(SRCDIR)/wiki.c $(OBJDIR)/translate
928 $(TRANSLATE) $(SRCDIR)/wiki.c >$(OBJDIR)/wiki_.c
929
930 $(OBJDIR)/wiki.o: $(OBJDIR)/wiki_.c $(OBJDIR)/wiki.h $(SRCDIR)/config.h
931 $(XTCC) -o $(OBJDIR)/wiki.o -c $(OBJDIR)/wiki_.c
932
933 wiki.h: $(OBJDIR)/headers
934 $(OBJDIR)/wikiformat_.c: $(SRCDIR)/wikiformat.c $(OBJDIR)/translate
935 $(TRANSLATE) $(SRCDIR)/wikiformat.c >$(OBJDIR)/wikiformat_.c
936
937 $(OBJDIR)/wikiformat.o: $(OBJDIR)/wikiformat_.c $(OBJDIR)/wikiformat.h $(SRCDIR)/config.h
938 $(XTCC) -o $(OBJDIR)/wikiformat.o -c $(OBJDIR)/wikiformat_.c
939
940 wikiformat.h: $(OBJDIR)/headers
941 $(OBJDIR)/winhttp_.c: $(SRCDIR)/winhttp.c $(OBJDIR)/translate
942 $(TRANSLATE) $(SRCDIR)/winhttp.c >$(OBJDIR)/winhttp_.c
943
944 $(OBJDIR)/winhttp.o: $(OBJDIR)/winhttp_.c $(OBJDIR)/winhttp.h $(SRCDIR)/config.h
945 $(XTCC) -o $(OBJDIR)/winhttp.o -c $(OBJDIR)/winhttp_.c
946
947 winhttp.h: $(OBJDIR)/headers
948 $(OBJDIR)/xfer_.c: $(SRCDIR)/xfer.c $(OBJDIR)/translate
949 $(TRANSLATE) $(SRCDIR)/xfer.c >$(OBJDIR)/xfer_.c
950
951 $(OBJDIR)/xfer.o: $(OBJDIR)/xfer_.c $(OBJDIR)/xfer.h $(SRCDIR)/config.h
952 $(XTCC) -o $(OBJDIR)/xfer.o -c $(OBJDIR)/xfer_.c
953
954 xfer.h: $(OBJDIR)/headers
955 $(OBJDIR)/zip_.c: $(SRCDIR)/zip.c $(OBJDIR)/translate
956 $(TRANSLATE) $(SRCDIR)/zip.c >$(OBJDIR)/zip_.c
957
958 $(OBJDIR)/zip.o: $(OBJDIR)/zip_.c $(OBJDIR)/zip.h $(SRCDIR)/config.h
959 $(XTCC) -o $(OBJDIR)/zip.o -c $(OBJDIR)/zip_.c
960
961 zip.h: $(OBJDIR)/headers
962 $(OBJDIR)/sqlite3.o: $(SRCDIR)/sqlite3.c
963 $(XTCC) -DSQLITE_OMIT_LOAD_EXTENSION=1 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -DSQLITE_ENABLE_STAT2 -Dlocaltime=fossil_localtime -DSQLITE_ENABLE_LOCKING_STYLE=0 -c $(SRCDIR)/sqlite3.c -o $(OBJDIR)/sqlite3.o
964
965 $(OBJDIR)/shell.o: $(SRCDIR)/shell.c
966 $(XTCC) -Dmain=sqlite3_shell -DSQLITE_OMIT_LOAD_EXTENSION=1 -c $(SRCDIR)/shell.c -o $(OBJDIR)/shell.o
967
968 $(OBJDIR)/th.o: $(SRCDIR)/th.c
969 $(XTCC) -I$(SRCDIR) -c $(SRCDIR)/th.c -o $(OBJDIR)/th.o
970
971 $(OBJDIR)/th_lang.o: $(SRCDIR)/th_lang.c
972 $(XTCC) -I$(SRCDIR) -c $(SRCDIR)/th_lang.c -o $(OBJDIR)/th_lang.o
973

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button