Fossil SCM

This is the first check-in on the windowscompilers branch and it adds the <a href="http://www.digitalmars.com/">Digital Mars C compiler</a> The user should have dmc installed in c:\DM with zlib in c:\DM\extra\lib and c:\DM\extra\include. typing c:\DM\bin\make -f win\Makefile.dmc builds fossil.exe in dmcobj <big>setmode in DMC is not working. This is a bug in DMC!</big> This might effects the cgi command. The following files were edited or added: <p>Checks if one of the windows compilers is used. If so we define _WIN32. Defining _WIN32 is normally done by<br>#include &lt;windows.h&gt;<br> However most of the time we don't use windows.h. </p> <p>Adding an other windows compiler is done by adding<br> "|| defined(__COMPILER_IDENTIFIER__)"<br> and maybe some special things in the files below. Like <pre> </pre> </p> <p>These have all __MINGW32__ replaced by _WIN32. And in some places special processing for either MINGW32 or DMC <p>In popen2 the _open_osfHandle call first parameter is cast to a long. DMC refused to compile without the cast.</p> <p>DMC complained that it didn't knew of time_t in rss.h. time.h came after rss.h. Switching the two solved it! </p> <p>added tcl code to generate Makefile.dmc. tclsh src/makemake.tcl dmc prints to stdout the makefile. As a convienience to the end-user I added the win/Makefile.dmc to the repository. There are few changeable variables in there for adjusting path, CFLAGS LIBS etc. </p> <p>These are needed because DMC and MSVC doesn't provided them. dirent.h is copied verbatim from the net. unistd.h I found on the net too, but added some defines. <p>The problem with windows it doesn't have AWK standard installed. version.c creates VERSION.h. It is a very simple C-program and doesn't do a lot of checking. </p>

renez 2010-08-28 06:59 windowscompilers
Commit f66f414fd3eb64570917ab35a1177853b6a8fa57
+2 -2
--- src/add.c
+++ src/add.c
@@ -53,11 +53,11 @@
5353
fossil_warning("cannot add %s", zPath);
5454
}else{
5555
if( !file_is_simple_pathname(zPath) ){
5656
fossil_fatal("filename contains illegal characters: %s", zPath);
5757
}
58
-#ifdef __MINGW32__
58
+#if defined(_WIN32)
5959
if( db_exists("SELECT 1 FROM vfile"
6060
" WHERE pathname=%Q COLLATE nocase", zPath) ){
6161
db_multi_exec("UPDATE vfile SET deleted=0"
6262
" WHERE pathname=%Q COLLATE nocase", zPath);
6363
}
@@ -152,11 +152,11 @@
152152
db_begin_transaction();
153153
if( !file_tree_name(g.zRepositoryName, &repo, 0) ){
154154
blob_zero(&repo);
155155
}
156156
db_multi_exec("CREATE TEMP TABLE sfile(x TEXT PRIMARY KEY)");
157
-#ifdef __MINGW32__
157
+#if defined(_WIN32)
158158
db_multi_exec(
159159
"CREATE INDEX IF NOT EXISTS vfile_pathname "
160160
" ON vfile(pathname COLLATE nocase)"
161161
);
162162
#endif
163163
--- src/add.c
+++ src/add.c
@@ -53,11 +53,11 @@
53 fossil_warning("cannot add %s", zPath);
54 }else{
55 if( !file_is_simple_pathname(zPath) ){
56 fossil_fatal("filename contains illegal characters: %s", zPath);
57 }
58 #ifdef __MINGW32__
59 if( db_exists("SELECT 1 FROM vfile"
60 " WHERE pathname=%Q COLLATE nocase", zPath) ){
61 db_multi_exec("UPDATE vfile SET deleted=0"
62 " WHERE pathname=%Q COLLATE nocase", zPath);
63 }
@@ -152,11 +152,11 @@
152 db_begin_transaction();
153 if( !file_tree_name(g.zRepositoryName, &repo, 0) ){
154 blob_zero(&repo);
155 }
156 db_multi_exec("CREATE TEMP TABLE sfile(x TEXT PRIMARY KEY)");
157 #ifdef __MINGW32__
158 db_multi_exec(
159 "CREATE INDEX IF NOT EXISTS vfile_pathname "
160 " ON vfile(pathname COLLATE nocase)"
161 );
162 #endif
163
--- src/add.c
+++ src/add.c
@@ -53,11 +53,11 @@
53 fossil_warning("cannot add %s", zPath);
54 }else{
55 if( !file_is_simple_pathname(zPath) ){
56 fossil_fatal("filename contains illegal characters: %s", zPath);
57 }
58 #if defined(_WIN32)
59 if( db_exists("SELECT 1 FROM vfile"
60 " WHERE pathname=%Q COLLATE nocase", zPath) ){
61 db_multi_exec("UPDATE vfile SET deleted=0"
62 " WHERE pathname=%Q COLLATE nocase", zPath);
63 }
@@ -152,11 +152,11 @@
152 db_begin_transaction();
153 if( !file_tree_name(g.zRepositoryName, &repo, 0) ){
154 blob_zero(&repo);
155 }
156 db_multi_exec("CREATE TEMP TABLE sfile(x TEXT PRIMARY KEY)");
157 #if defined(_WIN32)
158 db_multi_exec(
159 "CREATE INDEX IF NOT EXISTS vfile_pathname "
160 " ON vfile(pathname COLLATE nocase)"
161 );
162 #endif
163
+3 -3
--- src/blob.c
+++ src/blob.c
@@ -660,11 +660,11 @@
660660
}
661661
nName = file_simplify_name(zName, nName);
662662
for(i=1; i<nName; i++){
663663
if( zName[i]=='/' ){
664664
zName[i] = 0;
665
-#ifdef __MINGW32__
665
+#if defined(_WIN32)
666666
/*
667667
** On Windows, local path looks like: C:/develop/project/file.txt
668668
** The if stops us from trying to create a directory of a drive letter
669669
** C: in this example.
670670
*/
@@ -672,11 +672,11 @@
672672
#endif
673673
if( file_mkdir(zName, 1) ){
674674
fossil_fatal_recursive("unable to create directory %s", zName);
675675
return 0;
676676
}
677
-#ifdef __MINGW32__
677
+#if defined(_WIN32)
678678
}
679679
#endif
680680
zName[i] = '/';
681681
}
682682
}
@@ -856,11 +856,11 @@
856856
blob_reset(&b3);
857857
}
858858
printf("ok\n");
859859
}
860860
861
-#ifdef __MINGW32__
861
+#if defined(_WIN32)
862862
/*
863863
** Convert every \n character in the given blob into \r\n.
864864
*/
865865
void blob_add_cr(Blob *p){
866866
char *z = p->aData;
867867
--- src/blob.c
+++ src/blob.c
@@ -660,11 +660,11 @@
660 }
661 nName = file_simplify_name(zName, nName);
662 for(i=1; i<nName; i++){
663 if( zName[i]=='/' ){
664 zName[i] = 0;
665 #ifdef __MINGW32__
666 /*
667 ** On Windows, local path looks like: C:/develop/project/file.txt
668 ** The if stops us from trying to create a directory of a drive letter
669 ** C: in this example.
670 */
@@ -672,11 +672,11 @@
672 #endif
673 if( file_mkdir(zName, 1) ){
674 fossil_fatal_recursive("unable to create directory %s", zName);
675 return 0;
676 }
677 #ifdef __MINGW32__
678 }
679 #endif
680 zName[i] = '/';
681 }
682 }
@@ -856,11 +856,11 @@
856 blob_reset(&b3);
857 }
858 printf("ok\n");
859 }
860
861 #ifdef __MINGW32__
862 /*
863 ** Convert every \n character in the given blob into \r\n.
864 */
865 void blob_add_cr(Blob *p){
866 char *z = p->aData;
867
--- src/blob.c
+++ src/blob.c
@@ -660,11 +660,11 @@
660 }
661 nName = file_simplify_name(zName, nName);
662 for(i=1; i<nName; i++){
663 if( zName[i]=='/' ){
664 zName[i] = 0;
665 #if defined(_WIN32)
666 /*
667 ** On Windows, local path looks like: C:/develop/project/file.txt
668 ** The if stops us from trying to create a directory of a drive letter
669 ** C: in this example.
670 */
@@ -672,11 +672,11 @@
672 #endif
673 if( file_mkdir(zName, 1) ){
674 fossil_fatal_recursive("unable to create directory %s", zName);
675 return 0;
676 }
677 #if defined(_WIN32)
678 }
679 #endif
680 zName[i] = '/';
681 }
682 }
@@ -856,11 +856,11 @@
856 blob_reset(&b3);
857 }
858 printf("ok\n");
859 }
860
861 #if defined(_WIN32)
862 /*
863 ** Convert every \n character in the given blob into \r\n.
864 */
865 void blob_add_cr(Blob *p){
866 char *z = p->aData;
867
+6 -5
--- src/cgi.c
+++ src/cgi.c
@@ -20,15 +20,16 @@
2020
** dispensing QUERY_STRING parameters and cookies, the "mprintf()"
2121
** formatting function and its cousins, and routines to encode and
2222
** decode strings in HTML or HTTP.
2323
*/
2424
#include "config.h"
25
-#ifdef __MINGW32__
25
+#ifdef _WIN32
2626
# include <windows.h> /* for Sleep once server works again */
27
-# include <winsock2.h> /* socket operations */
28
-# define sleep Sleep /* windows does not have sleep, but Sleep */
29
-# include <ws2tcpip.h>
27
+# if defined(__MINGW32__)
28
+# define sleep Sleep /* windows does not have sleep, but Sleep */
29
+# include <ws2tcpip.h>
30
+# endif
3031
#else
3132
# include <sys/socket.h>
3233
# include <netinet/in.h>
3334
# include <arpa/inet.h>
3435
# include <sys/times.h>
@@ -1039,11 +1040,11 @@
10391040
**
10401041
** Return 0 to each child as it runs. If unable to establish a
10411042
** listening socket, return non-zero.
10421043
*/
10431044
int cgi_http_server(int mnPort, int mxPort, char *zBrowser, int flags){
1044
-#ifdef __MINGW32__
1045
+#if defined(_WIN32)
10451046
/* Use win32_http_server() instead */
10461047
fossil_exit(1);
10471048
#else
10481049
int listener = -1; /* The server socket */
10491050
int connection; /* A socket for each individual connection */
10501051
--- src/cgi.c
+++ src/cgi.c
@@ -20,15 +20,16 @@
20 ** dispensing QUERY_STRING parameters and cookies, the "mprintf()"
21 ** formatting function and its cousins, and routines to encode and
22 ** decode strings in HTML or HTTP.
23 */
24 #include "config.h"
25 #ifdef __MINGW32__
26 # include <windows.h> /* for Sleep once server works again */
27 # include <winsock2.h> /* socket operations */
28 # define sleep Sleep /* windows does not have sleep, but Sleep */
29 # include <ws2tcpip.h>
 
30 #else
31 # include <sys/socket.h>
32 # include <netinet/in.h>
33 # include <arpa/inet.h>
34 # include <sys/times.h>
@@ -1039,11 +1040,11 @@
1039 **
1040 ** Return 0 to each child as it runs. If unable to establish a
1041 ** listening socket, return non-zero.
1042 */
1043 int cgi_http_server(int mnPort, int mxPort, char *zBrowser, int flags){
1044 #ifdef __MINGW32__
1045 /* Use win32_http_server() instead */
1046 fossil_exit(1);
1047 #else
1048 int listener = -1; /* The server socket */
1049 int connection; /* A socket for each individual connection */
1050
--- src/cgi.c
+++ src/cgi.c
@@ -20,15 +20,16 @@
20 ** dispensing QUERY_STRING parameters and cookies, the "mprintf()"
21 ** formatting function and its cousins, and routines to encode and
22 ** decode strings in HTML or HTTP.
23 */
24 #include "config.h"
25 #ifdef _WIN32
26 # include <windows.h> /* for Sleep once server works again */
27 # if defined(__MINGW32__)
28 # define sleep Sleep /* windows does not have sleep, but Sleep */
29 # include <ws2tcpip.h>
30 # endif
31 #else
32 # include <sys/socket.h>
33 # include <netinet/in.h>
34 # include <arpa/inet.h>
35 # include <sys/times.h>
@@ -1039,11 +1040,11 @@
1040 **
1041 ** Return 0 to each child as it runs. If unable to establish a
1042 ** listening socket, return non-zero.
1043 */
1044 int cgi_http_server(int mnPort, int mxPort, char *zBrowser, int flags){
1045 #if defined(_WIN32)
1046 /* Use win32_http_server() instead */
1047 fossil_exit(1);
1048 #else
1049 int listener = -1; /* The server socket */
1050 int connection; /* A socket for each individual connection */
1051
+3 -3
--- src/checkin.c
+++ src/checkin.c
@@ -401,19 +401,19 @@
401401
}
402402
if( zEditor==0 ){
403403
zEditor = getenv("EDITOR");
404404
}
405405
if( zEditor==0 ){
406
-#ifdef __MINGW32__
406
+#if defined(_WIN32)
407407
zEditor = "notepad";
408408
#else
409409
zEditor = "ed";
410410
#endif
411411
}
412412
zFile = db_text(0, "SELECT '%qci-comment-' || hex(randomblob(6)) || '.txt'",
413413
g.zLocalRoot);
414
-#ifdef __MINGW32__
414
+#if defined(_WIN32)
415415
blob_add_cr(&text);
416416
#endif
417417
blob_write_to_file(&text, zFile);
418418
zCmd = mprintf("%s \"%s\"", zEditor, zFile);
419419
printf("%s\n", zCmd);
@@ -775,11 +775,11 @@
775775
const char *zOrig = db_column_text(&q, 2);
776776
int frid = db_column_int(&q, 3);
777777
int isexe = db_column_int(&q, 4);
778778
const char *zPerm;
779779
blob_append(&filename, zName, -1);
780
-#ifndef __MINGW32__
780
+#if !defined(_WIN32)
781781
/* For unix, extract the "executable" permission bit directly from
782782
** the filesystem. On windows, the "executable" bit is retained
783783
** unchanged from the original. */
784784
isexe = file_isexe(blob_str(&filename));
785785
#endif
786786
--- src/checkin.c
+++ src/checkin.c
@@ -401,19 +401,19 @@
401 }
402 if( zEditor==0 ){
403 zEditor = getenv("EDITOR");
404 }
405 if( zEditor==0 ){
406 #ifdef __MINGW32__
407 zEditor = "notepad";
408 #else
409 zEditor = "ed";
410 #endif
411 }
412 zFile = db_text(0, "SELECT '%qci-comment-' || hex(randomblob(6)) || '.txt'",
413 g.zLocalRoot);
414 #ifdef __MINGW32__
415 blob_add_cr(&text);
416 #endif
417 blob_write_to_file(&text, zFile);
418 zCmd = mprintf("%s \"%s\"", zEditor, zFile);
419 printf("%s\n", zCmd);
@@ -775,11 +775,11 @@
775 const char *zOrig = db_column_text(&q, 2);
776 int frid = db_column_int(&q, 3);
777 int isexe = db_column_int(&q, 4);
778 const char *zPerm;
779 blob_append(&filename, zName, -1);
780 #ifndef __MINGW32__
781 /* For unix, extract the "executable" permission bit directly from
782 ** the filesystem. On windows, the "executable" bit is retained
783 ** unchanged from the original. */
784 isexe = file_isexe(blob_str(&filename));
785 #endif
786
--- src/checkin.c
+++ src/checkin.c
@@ -401,19 +401,19 @@
401 }
402 if( zEditor==0 ){
403 zEditor = getenv("EDITOR");
404 }
405 if( zEditor==0 ){
406 #if defined(_WIN32)
407 zEditor = "notepad";
408 #else
409 zEditor = "ed";
410 #endif
411 }
412 zFile = db_text(0, "SELECT '%qci-comment-' || hex(randomblob(6)) || '.txt'",
413 g.zLocalRoot);
414 #if defined(_WIN32)
415 blob_add_cr(&text);
416 #endif
417 blob_write_to_file(&text, zFile);
418 zCmd = mprintf("%s \"%s\"", zEditor, zFile);
419 printf("%s\n", zCmd);
@@ -775,11 +775,11 @@
775 const char *zOrig = db_column_text(&q, 2);
776 int frid = db_column_int(&q, 3);
777 int isexe = db_column_int(&q, 4);
778 const char *zPerm;
779 blob_append(&filename, zName, -1);
780 #if !defined(_WIN32)
781 /* For unix, extract the "executable" permission bit directly from
782 ** the filesystem. On windows, the "executable" bit is retained
783 ** unchanged from the original. */
784 isexe = file_isexe(blob_str(&filename));
785 #endif
786
+7 -2
--- src/config.h
+++ src/config.h
@@ -26,12 +26,17 @@
2626
#include <stdlib.h>
2727
#include <ctype.h>
2828
#include <string.h>
2929
#include <stdarg.h>
3030
#include <assert.h>
31
-#ifdef __MINGW32__
32
-# include <windows.h>
31
+#if defined( __MINGW32__) || defined(__DMC__)
32
+# if defined(__DMC__)
33
+ typedef int socklen_t;
34
+# endif
35
+# ifndef _WIN32
36
+# define _WIN32
37
+# endif
3338
#else
3439
# include <sys/types.h>
3540
# include <signal.h>
3641
# include <pwd.h>
3742
#endif
3843
--- src/config.h
+++ src/config.h
@@ -26,12 +26,17 @@
26 #include <stdlib.h>
27 #include <ctype.h>
28 #include <string.h>
29 #include <stdarg.h>
30 #include <assert.h>
31 #ifdef __MINGW32__
32 # include <windows.h>
 
 
 
 
 
33 #else
34 # include <sys/types.h>
35 # include <signal.h>
36 # include <pwd.h>
37 #endif
38
--- src/config.h
+++ src/config.h
@@ -26,12 +26,17 @@
26 #include <stdlib.h>
27 #include <ctype.h>
28 #include <string.h>
29 #include <stdarg.h>
30 #include <assert.h>
31 #if defined( __MINGW32__) || defined(__DMC__)
32 # if defined(__DMC__)
33 typedef int socklen_t;
34 # endif
35 # ifndef _WIN32
36 # define _WIN32
37 # endif
38 #else
39 # include <sys/types.h>
40 # include <signal.h>
41 # include <pwd.h>
42 #endif
43
+10 -7
--- src/db.c
+++ src/db.c
@@ -27,10 +27,13 @@
2727
** (3) A local checkout database named "_FOSSIL_" or ".fos"
2828
** and located at the root of the local copy of the source tree.
2929
**
3030
*/
3131
#include "config.h"
32
+#if ! defined(_WIN32)
33
+# include <pwd.h>
34
+#endif
3235
#include <sqlite3.h>
3336
#include <sys/types.h>
3437
#include <sys/stat.h>
3538
#include <unistd.h>
3639
#include "db.h"
@@ -534,11 +537,11 @@
534537
}
535538
db_finalize(&s);
536539
return z;
537540
}
538541
539
-#ifdef __MINGW32__
542
+#if defined(_WIN32)
540543
extern char *sqlite3_win32_mbcs_to_utf8(const char*);
541544
#endif
542545
543546
/*
544547
** Initialize a new database file with the given schema. If anything
@@ -552,11 +555,11 @@
552555
sqlite3 *db;
553556
int rc;
554557
const char *zSql;
555558
va_list ap;
556559
557
-#ifdef __MINGW32__
560
+#if defined(_WIN32)
558561
zFileName = sqlite3_win32_mbcs_to_utf8(zFileName);
559562
#endif
560563
rc = sqlite3_open(zFileName, &db);
561564
if( rc!=SQLITE_OK ){
562565
db_err(sqlite3_errmsg(db));
@@ -587,11 +590,11 @@
587590
int rc;
588591
const char *zVfs;
589592
sqlite3 *db;
590593
591594
zVfs = getenv("FOSSIL_VFS");
592
-#ifdef __MINGW32__
595
+#if defined(_WIN32)
593596
zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
594597
#endif
595598
rc = sqlite3_open_v2(
596599
zDbName, &db,
597600
SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
@@ -615,11 +618,11 @@
615618
if( !g.db ){
616619
g.db = openDatabase(zDbName);
617620
g.zRepoDb = "main";
618621
db_connection_init();
619622
}else{
620
-#ifdef __MINGW32__
623
+#if defined(_WIN32)
621624
zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
622625
#endif
623626
db_multi_exec("ATTACH DATABASE %Q AS %s", zDbName, zLabel);
624627
g.zRepoDb = mprintf("%s", zLabel);
625628
}
@@ -639,11 +642,11 @@
639642
*/
640643
void db_open_config(int useAttach){
641644
char *zDbName;
642645
const char *zHome;
643646
if( g.configOpen ) return;
644
-#ifdef __MINGW32__
647
+#if defined(_WIN32)
645648
zHome = getenv("LOCALAPPDATA");
646649
if( zHome==0 ){
647650
zHome = getenv("APPDATA");
648651
if( zHome==0 ){
649652
zHome = getenv("HOMEPATH");
@@ -667,11 +670,11 @@
667670
if( access(zHome, W_OK) ){
668671
fossil_fatal("home directory %s must be writeable", zHome);
669672
}
670673
#endif
671674
g.zHome = mprintf("%/", zHome);
672
-#ifdef __MINGW32__
675
+#if defined(_WIN32)
673676
/* . filenames give some window systems problems and many apps problems */
674677
zDbName = mprintf("%//_fossil", zHome);
675678
#else
676679
zDbName = mprintf("%s/.fossil", zHome);
677680
#endif
@@ -944,11 +947,11 @@
944947
zUser = db_get("default-user", 0);
945948
if( zUser==0 ){
946949
zUser = zDefaultUser;
947950
}
948951
if( zUser==0 ){
949
-#ifdef __MINGW32__
952
+#if defined(_WIN32)
950953
zUser = getenv("USERNAME");
951954
#else
952955
zUser = getenv("USER");
953956
#endif
954957
}
955958
--- src/db.c
+++ src/db.c
@@ -27,10 +27,13 @@
27 ** (3) A local checkout database named "_FOSSIL_" or ".fos"
28 ** and located at the root of the local copy of the source tree.
29 **
30 */
31 #include "config.h"
 
 
 
32 #include <sqlite3.h>
33 #include <sys/types.h>
34 #include <sys/stat.h>
35 #include <unistd.h>
36 #include "db.h"
@@ -534,11 +537,11 @@
534 }
535 db_finalize(&s);
536 return z;
537 }
538
539 #ifdef __MINGW32__
540 extern char *sqlite3_win32_mbcs_to_utf8(const char*);
541 #endif
542
543 /*
544 ** Initialize a new database file with the given schema. If anything
@@ -552,11 +555,11 @@
552 sqlite3 *db;
553 int rc;
554 const char *zSql;
555 va_list ap;
556
557 #ifdef __MINGW32__
558 zFileName = sqlite3_win32_mbcs_to_utf8(zFileName);
559 #endif
560 rc = sqlite3_open(zFileName, &db);
561 if( rc!=SQLITE_OK ){
562 db_err(sqlite3_errmsg(db));
@@ -587,11 +590,11 @@
587 int rc;
588 const char *zVfs;
589 sqlite3 *db;
590
591 zVfs = getenv("FOSSIL_VFS");
592 #ifdef __MINGW32__
593 zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
594 #endif
595 rc = sqlite3_open_v2(
596 zDbName, &db,
597 SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
@@ -615,11 +618,11 @@
615 if( !g.db ){
616 g.db = openDatabase(zDbName);
617 g.zRepoDb = "main";
618 db_connection_init();
619 }else{
620 #ifdef __MINGW32__
621 zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
622 #endif
623 db_multi_exec("ATTACH DATABASE %Q AS %s", zDbName, zLabel);
624 g.zRepoDb = mprintf("%s", zLabel);
625 }
@@ -639,11 +642,11 @@
639 */
640 void db_open_config(int useAttach){
641 char *zDbName;
642 const char *zHome;
643 if( g.configOpen ) return;
644 #ifdef __MINGW32__
645 zHome = getenv("LOCALAPPDATA");
646 if( zHome==0 ){
647 zHome = getenv("APPDATA");
648 if( zHome==0 ){
649 zHome = getenv("HOMEPATH");
@@ -667,11 +670,11 @@
667 if( access(zHome, W_OK) ){
668 fossil_fatal("home directory %s must be writeable", zHome);
669 }
670 #endif
671 g.zHome = mprintf("%/", zHome);
672 #ifdef __MINGW32__
673 /* . filenames give some window systems problems and many apps problems */
674 zDbName = mprintf("%//_fossil", zHome);
675 #else
676 zDbName = mprintf("%s/.fossil", zHome);
677 #endif
@@ -944,11 +947,11 @@
944 zUser = db_get("default-user", 0);
945 if( zUser==0 ){
946 zUser = zDefaultUser;
947 }
948 if( zUser==0 ){
949 #ifdef __MINGW32__
950 zUser = getenv("USERNAME");
951 #else
952 zUser = getenv("USER");
953 #endif
954 }
955
--- src/db.c
+++ src/db.c
@@ -27,10 +27,13 @@
27 ** (3) A local checkout database named "_FOSSIL_" or ".fos"
28 ** and located at the root of the local copy of the source tree.
29 **
30 */
31 #include "config.h"
32 #if ! defined(_WIN32)
33 # include <pwd.h>
34 #endif
35 #include <sqlite3.h>
36 #include <sys/types.h>
37 #include <sys/stat.h>
38 #include <unistd.h>
39 #include "db.h"
@@ -534,11 +537,11 @@
537 }
538 db_finalize(&s);
539 return z;
540 }
541
542 #if defined(_WIN32)
543 extern char *sqlite3_win32_mbcs_to_utf8(const char*);
544 #endif
545
546 /*
547 ** Initialize a new database file with the given schema. If anything
@@ -552,11 +555,11 @@
555 sqlite3 *db;
556 int rc;
557 const char *zSql;
558 va_list ap;
559
560 #if defined(_WIN32)
561 zFileName = sqlite3_win32_mbcs_to_utf8(zFileName);
562 #endif
563 rc = sqlite3_open(zFileName, &db);
564 if( rc!=SQLITE_OK ){
565 db_err(sqlite3_errmsg(db));
@@ -587,11 +590,11 @@
590 int rc;
591 const char *zVfs;
592 sqlite3 *db;
593
594 zVfs = getenv("FOSSIL_VFS");
595 #if defined(_WIN32)
596 zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
597 #endif
598 rc = sqlite3_open_v2(
599 zDbName, &db,
600 SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE,
@@ -615,11 +618,11 @@
618 if( !g.db ){
619 g.db = openDatabase(zDbName);
620 g.zRepoDb = "main";
621 db_connection_init();
622 }else{
623 #if defined(_WIN32)
624 zDbName = sqlite3_win32_mbcs_to_utf8(zDbName);
625 #endif
626 db_multi_exec("ATTACH DATABASE %Q AS %s", zDbName, zLabel);
627 g.zRepoDb = mprintf("%s", zLabel);
628 }
@@ -639,11 +642,11 @@
642 */
643 void db_open_config(int useAttach){
644 char *zDbName;
645 const char *zHome;
646 if( g.configOpen ) return;
647 #if defined(_WIN32)
648 zHome = getenv("LOCALAPPDATA");
649 if( zHome==0 ){
650 zHome = getenv("APPDATA");
651 if( zHome==0 ){
652 zHome = getenv("HOMEPATH");
@@ -667,11 +670,11 @@
670 if( access(zHome, W_OK) ){
671 fossil_fatal("home directory %s must be writeable", zHome);
672 }
673 #endif
674 g.zHome = mprintf("%/", zHome);
675 #if defined(_WIN32)
676 /* . filenames give some window systems problems and many apps problems */
677 zDbName = mprintf("%//_fossil", zHome);
678 #else
679 zDbName = mprintf("%s/.fossil", zHome);
680 #endif
@@ -944,11 +947,11 @@
947 zUser = db_get("default-user", 0);
948 if( zUser==0 ){
949 zUser = zDefaultUser;
950 }
951 if( zUser==0 ){
952 #if defined(_WIN32)
953 zUser = getenv("USERNAME");
954 #else
955 zUser = getenv("USER");
956 #endif
957 }
958
+1 -1
--- src/diffcmd.c
+++ src/diffcmd.c
@@ -45,11 +45,11 @@
4545
/*
4646
** This function implements a cross-platform "system()" interface.
4747
*/
4848
int portable_system(const char *zOrigCmd){
4949
int rc;
50
-#ifdef __MINGW32__
50
+#if defined(_WIN32)
5151
/* On windows, we have to put double-quotes around the entire command.
5252
** Who knows why - this is just the way windows works.
5353
*/
5454
char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
5555
rc = system(zNewCmd);
5656
--- src/diffcmd.c
+++ src/diffcmd.c
@@ -45,11 +45,11 @@
45 /*
46 ** This function implements a cross-platform "system()" interface.
47 */
48 int portable_system(const char *zOrigCmd){
49 int rc;
50 #ifdef __MINGW32__
51 /* On windows, we have to put double-quotes around the entire command.
52 ** Who knows why - this is just the way windows works.
53 */
54 char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
55 rc = system(zNewCmd);
56
--- src/diffcmd.c
+++ src/diffcmd.c
@@ -45,11 +45,11 @@
45 /*
46 ** This function implements a cross-platform "system()" interface.
47 */
48 int portable_system(const char *zOrigCmd){
49 int rc;
50 #if defined(_WIN32)
51 /* On windows, we have to put double-quotes around the entire command.
52 ** Who knows why - this is just the way windows works.
53 */
54 char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
55 rc = system(zNewCmd);
56
+10 -7
--- src/file.c
+++ src/file.c
@@ -83,11 +83,14 @@
8383
** Return TRUE if the named file is an executable. Return false
8484
** for directories, devices, fifos, symlinks, etc.
8585
*/
8686
int file_isexe(const char *zFilename){
8787
if( getStat(zFilename) || !S_ISREG(fileStat.st_mode) ) return 0;
88
-#ifdef __MINGW32__
88
+#if defined(_WIN32)
89
+# if defined(__DMC__)
90
+# define S_IXUSR _S_IEXEC
91
+# endif
8992
return ((S_IXUSR)&fileStat.st_mode)!=0;
9093
#else
9194
return ((S_IXUSR|S_IXGRP|S_IXOTH)&fileStat.st_mode)!=0;
9295
#endif
9396
}
@@ -145,11 +148,11 @@
145148
146149
/*
147150
** Set or clear the execute bit on a file.
148151
*/
149152
void file_setexe(const char *zFilename, int onoff){
150
-#ifndef __MINGW32__
153
+#if !defined(_WIN32)
151154
struct stat buf;
152155
if( stat(zFilename, &buf)!=0 ) return;
153156
if( onoff ){
154157
if( (buf.st_mode & 0111)!=0111 ){
155158
chmod(zFilename, buf.st_mode | 0111);
@@ -157,11 +160,11 @@
157160
}else{
158161
if( (buf.st_mode & 0111)!=0 ){
159162
chmod(zFilename, buf.st_mode & ~0111);
160163
}
161164
}
162
-#endif /* __MINGW32__ */
165
+#endif /* _WIN32 */
163166
}
164167
165168
/*
166169
** Create the directory named in the argument, if it does not already
167170
** exist. If forceFlag is 1, delete any prior non-directory object
@@ -174,11 +177,11 @@
174177
if( rc==2 ){
175178
if( !forceFlag ) return 1;
176179
unlink(zName);
177180
}
178181
if( rc!=1 ){
179
-#ifdef __MINGW32__
182
+#if defined(_WIN32)
180183
return mkdir(zName);
181184
#else
182185
return mkdir(zName, 0755);
183186
#endif
184187
}
@@ -231,11 +234,11 @@
231234
** Changes are made in-place. Return the new name length.
232235
*/
233236
int file_simplify_name(char *z, int n){
234237
int i, j;
235238
if( n<0 ) n = strlen(z);
236
-#ifdef __MINGW32__
239
+#if defined(_WIN32)
237240
for(i=0; i<n; i++){
238241
if( z[i]=='\\' ) z[i] = '/';
239242
}
240243
#endif
241244
while( n>1 && z[n-1]=='/' ){ n--; }
@@ -266,11 +269,11 @@
266269
** Remove all /./ path elements.
267270
** Convert /A/../ to just /
268271
*/
269272
void file_canonical_name(const char *zOrigName, Blob *pOut){
270273
if( zOrigName[0]=='/'
271
-#ifdef __MINGW32__
274
+#if defined(_WIN32)
272275
|| zOrigName[0]=='\\'
273276
|| (strlen(zOrigName)>3 && zOrigName[1]==':'
274277
&& (zOrigName[2]=='\\' || zOrigName[2]=='/'))
275278
#endif
276279
){
@@ -311,11 +314,11 @@
311314
** contain no "/./" or "/../" terms.
312315
*/
313316
int file_is_canonical(const char *z){
314317
int i;
315318
if( z[0]!='/'
316
-#ifdef __MINGW32__
319
+#if defined(_WIN32)
317320
&& (z[0]==0 || z[1]!=':' || z[2]!='/')
318321
#endif
319322
) return 0;
320323
321324
for(i=0; z[i]; i++){
322325
--- src/file.c
+++ src/file.c
@@ -83,11 +83,14 @@
83 ** Return TRUE if the named file is an executable. Return false
84 ** for directories, devices, fifos, symlinks, etc.
85 */
86 int file_isexe(const char *zFilename){
87 if( getStat(zFilename) || !S_ISREG(fileStat.st_mode) ) return 0;
88 #ifdef __MINGW32__
 
 
 
89 return ((S_IXUSR)&fileStat.st_mode)!=0;
90 #else
91 return ((S_IXUSR|S_IXGRP|S_IXOTH)&fileStat.st_mode)!=0;
92 #endif
93 }
@@ -145,11 +148,11 @@
145
146 /*
147 ** Set or clear the execute bit on a file.
148 */
149 void file_setexe(const char *zFilename, int onoff){
150 #ifndef __MINGW32__
151 struct stat buf;
152 if( stat(zFilename, &buf)!=0 ) return;
153 if( onoff ){
154 if( (buf.st_mode & 0111)!=0111 ){
155 chmod(zFilename, buf.st_mode | 0111);
@@ -157,11 +160,11 @@
157 }else{
158 if( (buf.st_mode & 0111)!=0 ){
159 chmod(zFilename, buf.st_mode & ~0111);
160 }
161 }
162 #endif /* __MINGW32__ */
163 }
164
165 /*
166 ** Create the directory named in the argument, if it does not already
167 ** exist. If forceFlag is 1, delete any prior non-directory object
@@ -174,11 +177,11 @@
174 if( rc==2 ){
175 if( !forceFlag ) return 1;
176 unlink(zName);
177 }
178 if( rc!=1 ){
179 #ifdef __MINGW32__
180 return mkdir(zName);
181 #else
182 return mkdir(zName, 0755);
183 #endif
184 }
@@ -231,11 +234,11 @@
231 ** Changes are made in-place. Return the new name length.
232 */
233 int file_simplify_name(char *z, int n){
234 int i, j;
235 if( n<0 ) n = strlen(z);
236 #ifdef __MINGW32__
237 for(i=0; i<n; i++){
238 if( z[i]=='\\' ) z[i] = '/';
239 }
240 #endif
241 while( n>1 && z[n-1]=='/' ){ n--; }
@@ -266,11 +269,11 @@
266 ** Remove all /./ path elements.
267 ** Convert /A/../ to just /
268 */
269 void file_canonical_name(const char *zOrigName, Blob *pOut){
270 if( zOrigName[0]=='/'
271 #ifdef __MINGW32__
272 || zOrigName[0]=='\\'
273 || (strlen(zOrigName)>3 && zOrigName[1]==':'
274 && (zOrigName[2]=='\\' || zOrigName[2]=='/'))
275 #endif
276 ){
@@ -311,11 +314,11 @@
311 ** contain no "/./" or "/../" terms.
312 */
313 int file_is_canonical(const char *z){
314 int i;
315 if( z[0]!='/'
316 #ifdef __MINGW32__
317 && (z[0]==0 || z[1]!=':' || z[2]!='/')
318 #endif
319 ) return 0;
320
321 for(i=0; z[i]; i++){
322
--- src/file.c
+++ src/file.c
@@ -83,11 +83,14 @@
83 ** Return TRUE if the named file is an executable. Return false
84 ** for directories, devices, fifos, symlinks, etc.
85 */
86 int file_isexe(const char *zFilename){
87 if( getStat(zFilename) || !S_ISREG(fileStat.st_mode) ) return 0;
88 #if defined(_WIN32)
89 # if defined(__DMC__)
90 # define S_IXUSR _S_IEXEC
91 # endif
92 return ((S_IXUSR)&fileStat.st_mode)!=0;
93 #else
94 return ((S_IXUSR|S_IXGRP|S_IXOTH)&fileStat.st_mode)!=0;
95 #endif
96 }
@@ -145,11 +148,11 @@
148
149 /*
150 ** Set or clear the execute bit on a file.
151 */
152 void file_setexe(const char *zFilename, int onoff){
153 #if !defined(_WIN32)
154 struct stat buf;
155 if( stat(zFilename, &buf)!=0 ) return;
156 if( onoff ){
157 if( (buf.st_mode & 0111)!=0111 ){
158 chmod(zFilename, buf.st_mode | 0111);
@@ -157,11 +160,11 @@
160 }else{
161 if( (buf.st_mode & 0111)!=0 ){
162 chmod(zFilename, buf.st_mode & ~0111);
163 }
164 }
165 #endif /* _WIN32 */
166 }
167
168 /*
169 ** Create the directory named in the argument, if it does not already
170 ** exist. If forceFlag is 1, delete any prior non-directory object
@@ -174,11 +177,11 @@
177 if( rc==2 ){
178 if( !forceFlag ) return 1;
179 unlink(zName);
180 }
181 if( rc!=1 ){
182 #if defined(_WIN32)
183 return mkdir(zName);
184 #else
185 return mkdir(zName, 0755);
186 #endif
187 }
@@ -231,11 +234,11 @@
234 ** Changes are made in-place. Return the new name length.
235 */
236 int file_simplify_name(char *z, int n){
237 int i, j;
238 if( n<0 ) n = strlen(z);
239 #if defined(_WIN32)
240 for(i=0; i<n; i++){
241 if( z[i]=='\\' ) z[i] = '/';
242 }
243 #endif
244 while( n>1 && z[n-1]=='/' ){ n--; }
@@ -266,11 +269,11 @@
269 ** Remove all /./ path elements.
270 ** Convert /A/../ to just /
271 */
272 void file_canonical_name(const char *zOrigName, Blob *pOut){
273 if( zOrigName[0]=='/'
274 #if defined(_WIN32)
275 || zOrigName[0]=='\\'
276 || (strlen(zOrigName)>3 && zOrigName[1]==':'
277 && (zOrigName[2]=='\\' || zOrigName[2]=='/'))
278 #endif
279 ){
@@ -311,11 +314,11 @@
314 ** contain no "/./" or "/../" terms.
315 */
316 int file_is_canonical(const char *z){
317 int i;
318 if( z[0]!='/'
319 #if defined(_WIN32)
320 && (z[0]==0 || z[1]!=':' || z[2]!='/')
321 #endif
322 ) return 0;
323
324 for(i=0; z[i]; i++){
325
--- src/http_socket.c
+++ src/http_socket.c
@@ -26,13 +26,16 @@
2626
** are handled different on Unix and windows.
2727
*/
2828
2929
#include "config.h"
3030
#include "http_socket.h"
31
-#ifdef __MINGW32__
32
-# include <windows.h>
33
-# include <winsock2.h>
31
+#if defined(_WIN32)
32
+# include <windows.h> /* for Sleep once server works again */
33
+# define sleep Sleep /* windows does not have sleep, but Sleep */
34
+# if defined(__MINGW32__)
35
+# include <ws2tcpip.h>
36
+# endif
3437
#else
3538
# include <arpa/inet.h>
3639
# include <sys/socket.h>
3740
# include <netdb.h>
3841
# include <netinet/in.h>
@@ -45,11 +48,11 @@
4548
** There can only be a single socket connection open at a time.
4649
** State information about that socket is stored in the following
4750
** local variables:
4851
*/
4952
static int socketIsInit = 0; /* True after global initialization */
50
-#ifdef __MINGW32__
53
+#if defined(_WIN32)
5154
static WSADATA socketInfo; /* Windows socket initialize data */
5255
#endif
5356
static int iSocket = -1; /* The socket on which we talk to the server */
5457
static char *socketErrMsg = 0; /* Text of most recent socket error */
5558
@@ -84,11 +87,11 @@
8487
** Call this routine once before any other use of the socket interface.
8588
** This routine does initial configuration of the socket module.
8689
*/
8790
void socket_global_init(void){
8891
if( socketIsInit==0 ){
89
-#ifdef __MINGW32__
92
+#if defined(_WIN32)
9093
if( WSAStartup(MAKEWORD(2,0), &socketInfo)!=0 ){
9194
fossil_panic("can't initialize winsock");
9295
}
9396
#endif
9497
socketIsInit = 1;
@@ -99,11 +102,11 @@
99102
** Call this routine to shutdown the socket module prior to program
100103
** exit.
101104
*/
102105
void socket_global_shutdown(void){
103106
if( socketIsInit ){
104
-#ifdef __MINGW32__
107
+#if defined(_WIN32)
105108
WSACleanup();
106109
#endif
107110
socket_clear_errmsg();
108111
socketIsInit = 0;
109112
}
@@ -113,11 +116,11 @@
113116
** Close the currently open socket. If no socket is open, this routine
114117
** is a no-op.
115118
*/
116119
void socket_close(void){
117120
if( iSocket>=0 ){
118
-#ifdef __MINGW32__
121
+#if defined(_WIN32)
119122
closesocket(iSocket);
120123
#else
121124
close(iSocket);
122125
#endif
123126
iSocket = -1;
@@ -171,11 +174,11 @@
171174
if( connect(iSocket,(struct sockaddr*)&addr,sizeof(addr))<0 ){
172175
socket_set_errmsg("cannot connect to host %s:%d", g.urlName, g.urlPort);
173176
socket_close();
174177
return 1;
175178
}
176
-#ifndef __MINGW32__
179
+#if !defined(_WIN32)
177180
signal(SIGPIPE, SIG_IGN);
178181
#endif
179182
return 0;
180183
}
181184
182185
--- src/http_socket.c
+++ src/http_socket.c
@@ -26,13 +26,16 @@
26 ** are handled different on Unix and windows.
27 */
28
29 #include "config.h"
30 #include "http_socket.h"
31 #ifdef __MINGW32__
32 # include <windows.h>
33 # include <winsock2.h>
 
 
 
34 #else
35 # include <arpa/inet.h>
36 # include <sys/socket.h>
37 # include <netdb.h>
38 # include <netinet/in.h>
@@ -45,11 +48,11 @@
45 ** There can only be a single socket connection open at a time.
46 ** State information about that socket is stored in the following
47 ** local variables:
48 */
49 static int socketIsInit = 0; /* True after global initialization */
50 #ifdef __MINGW32__
51 static WSADATA socketInfo; /* Windows socket initialize data */
52 #endif
53 static int iSocket = -1; /* The socket on which we talk to the server */
54 static char *socketErrMsg = 0; /* Text of most recent socket error */
55
@@ -84,11 +87,11 @@
84 ** Call this routine once before any other use of the socket interface.
85 ** This routine does initial configuration of the socket module.
86 */
87 void socket_global_init(void){
88 if( socketIsInit==0 ){
89 #ifdef __MINGW32__
90 if( WSAStartup(MAKEWORD(2,0), &socketInfo)!=0 ){
91 fossil_panic("can't initialize winsock");
92 }
93 #endif
94 socketIsInit = 1;
@@ -99,11 +102,11 @@
99 ** Call this routine to shutdown the socket module prior to program
100 ** exit.
101 */
102 void socket_global_shutdown(void){
103 if( socketIsInit ){
104 #ifdef __MINGW32__
105 WSACleanup();
106 #endif
107 socket_clear_errmsg();
108 socketIsInit = 0;
109 }
@@ -113,11 +116,11 @@
113 ** Close the currently open socket. If no socket is open, this routine
114 ** is a no-op.
115 */
116 void socket_close(void){
117 if( iSocket>=0 ){
118 #ifdef __MINGW32__
119 closesocket(iSocket);
120 #else
121 close(iSocket);
122 #endif
123 iSocket = -1;
@@ -171,11 +174,11 @@
171 if( connect(iSocket,(struct sockaddr*)&addr,sizeof(addr))<0 ){
172 socket_set_errmsg("cannot connect to host %s:%d", g.urlName, g.urlPort);
173 socket_close();
174 return 1;
175 }
176 #ifndef __MINGW32__
177 signal(SIGPIPE, SIG_IGN);
178 #endif
179 return 0;
180 }
181
182
--- src/http_socket.c
+++ src/http_socket.c
@@ -26,13 +26,16 @@
26 ** are handled different on Unix and windows.
27 */
28
29 #include "config.h"
30 #include "http_socket.h"
31 #if defined(_WIN32)
32 # include <windows.h> /* for Sleep once server works again */
33 # define sleep Sleep /* windows does not have sleep, but Sleep */
34 # if defined(__MINGW32__)
35 # include <ws2tcpip.h>
36 # endif
37 #else
38 # include <arpa/inet.h>
39 # include <sys/socket.h>
40 # include <netdb.h>
41 # include <netinet/in.h>
@@ -45,11 +48,11 @@
48 ** There can only be a single socket connection open at a time.
49 ** State information about that socket is stored in the following
50 ** local variables:
51 */
52 static int socketIsInit = 0; /* True after global initialization */
53 #if defined(_WIN32)
54 static WSADATA socketInfo; /* Windows socket initialize data */
55 #endif
56 static int iSocket = -1; /* The socket on which we talk to the server */
57 static char *socketErrMsg = 0; /* Text of most recent socket error */
58
@@ -84,11 +87,11 @@
87 ** Call this routine once before any other use of the socket interface.
88 ** This routine does initial configuration of the socket module.
89 */
90 void socket_global_init(void){
91 if( socketIsInit==0 ){
92 #if defined(_WIN32)
93 if( WSAStartup(MAKEWORD(2,0), &socketInfo)!=0 ){
94 fossil_panic("can't initialize winsock");
95 }
96 #endif
97 socketIsInit = 1;
@@ -99,11 +102,11 @@
102 ** Call this routine to shutdown the socket module prior to program
103 ** exit.
104 */
105 void socket_global_shutdown(void){
106 if( socketIsInit ){
107 #if defined(_WIN32)
108 WSACleanup();
109 #endif
110 socket_clear_errmsg();
111 socketIsInit = 0;
112 }
@@ -113,11 +116,11 @@
116 ** Close the currently open socket. If no socket is open, this routine
117 ** is a no-op.
118 */
119 void socket_close(void){
120 if( iSocket>=0 ){
121 #if defined(_WIN32)
122 closesocket(iSocket);
123 #else
124 close(iSocket);
125 #endif
126 iSocket = -1;
@@ -171,11 +174,11 @@
174 if( connect(iSocket,(struct sockaddr*)&addr,sizeof(addr))<0 ){
175 socket_set_errmsg("cannot connect to host %s:%d", g.urlName, g.urlPort);
176 socket_close();
177 return 1;
178 }
179 #if !defined(_WIN32)
180 signal(SIGPIPE, SIG_IGN);
181 #endif
182 return 0;
183 }
184
185
+1 -1
--- src/info.c
+++ src/info.c
@@ -142,11 +142,11 @@
142142
/* 012345678901234 */
143143
db_record_repository_filename(0);
144144
printf("project-name: %s\n", db_get("project-name", "<unnamed>"));
145145
printf("repository: %s\n", db_lget("repository", ""));
146146
printf("local-root: %s\n", g.zLocalRoot);
147
-#ifdef __MINGW32__
147
+#if defined(_WIN32)
148148
if( g.zHome ){
149149
printf("user-home: %s\n", g.zHome);
150150
}
151151
#endif
152152
printf("project-code: %s\n", db_get("project-code", ""));
153153
--- src/info.c
+++ src/info.c
@@ -142,11 +142,11 @@
142 /* 012345678901234 */
143 db_record_repository_filename(0);
144 printf("project-name: %s\n", db_get("project-name", "<unnamed>"));
145 printf("repository: %s\n", db_lget("repository", ""));
146 printf("local-root: %s\n", g.zLocalRoot);
147 #ifdef __MINGW32__
148 if( g.zHome ){
149 printf("user-home: %s\n", g.zHome);
150 }
151 #endif
152 printf("project-code: %s\n", db_get("project-code", ""));
153
--- src/info.c
+++ src/info.c
@@ -142,11 +142,11 @@
142 /* 012345678901234 */
143 db_record_repository_filename(0);
144 printf("project-name: %s\n", db_get("project-name", "<unnamed>"));
145 printf("repository: %s\n", db_lget("repository", ""));
146 printf("local-root: %s\n", g.zLocalRoot);
147 #if defined(_WIN32)
148 if( g.zHome ){
149 printf("user-home: %s\n", g.zHome);
150 }
151 #endif
152 printf("project-code: %s\n", db_get("project-code", ""));
153
+4 -2
--- src/login.c
+++ src/login.c
@@ -37,13 +37,15 @@
3737
** logs and downloading diffs of very version of the archive that
3838
** has ever existed, and things like that.
3939
*/
4040
#include "config.h"
4141
#include "login.h"
42
-#ifdef __MINGW32__
42
+#if defined(_WIN32)
4343
# include <windows.h> /* for Sleep */
44
-# define sleep Sleep /* windows does not have sleep, but Sleep */
44
+# if defined(_MINGW32__)
45
+# define sleep Sleep /* windows does not have sleep, but Sleep */
46
+# endif
4547
#endif
4648
#include <time.h>
4749
4850
/*
4951
** Return the name of the login cookie
5052
--- src/login.c
+++ src/login.c
@@ -37,13 +37,15 @@
37 ** logs and downloading diffs of very version of the archive that
38 ** has ever existed, and things like that.
39 */
40 #include "config.h"
41 #include "login.h"
42 #ifdef __MINGW32__
43 # include <windows.h> /* for Sleep */
44 # define sleep Sleep /* windows does not have sleep, but Sleep */
 
 
45 #endif
46 #include <time.h>
47
48 /*
49 ** Return the name of the login cookie
50
--- src/login.c
+++ src/login.c
@@ -37,13 +37,15 @@
37 ** logs and downloading diffs of very version of the archive that
38 ** has ever existed, and things like that.
39 */
40 #include "config.h"
41 #include "login.h"
42 #if defined(_WIN32)
43 # include <windows.h> /* for Sleep */
44 # if defined(_MINGW32__)
45 # define sleep Sleep /* windows does not have sleep, but Sleep */
46 # endif
47 #endif
48 #include <time.h>
49
50 /*
51 ** Return the name of the login cookie
52
+5 -5
--- src/main.c
+++ src/main.c
@@ -632,11 +632,11 @@
632632
**
633633
** Assume the user-id and group-id of the repository, or if zRepo
634634
** is a directory, of that directory.
635635
*/
636636
static char *enter_chroot_jail(char *zRepo){
637
-#if !defined(__MINGW32__)
637
+#if !defined(_WIN32)
638638
if( getuid()==0 ){
639639
int i;
640640
struct stat sStat;
641641
Blob dir;
642642
char *zDir;
@@ -810,11 +810,11 @@
810810
}else{
811811
zFile = g.argv[1];
812812
}
813813
g.httpOut = stdout;
814814
g.httpIn = stdin;
815
-#ifdef __MINGW32__
815
+#if defined(_WIN32)
816816
/* Set binary mode on windows to avoid undesired translations
817817
** between \n and \r\n. */
818818
setmode(_fileno(g.httpOut), _O_BINARY);
819819
setmode(_fileno(g.httpIn), _O_BINARY);
820820
#endif
@@ -953,11 +953,11 @@
953953
g.fullHttpReply = 1;
954954
cgi_handle_http_request(0);
955955
process_one_web_page(0);
956956
}
957957
958
-#ifndef __MINGW32__
958
+#if !defined(_WIN32)
959959
#if !defined(__DARWIN__) && !defined(__APPLE__)
960960
/*
961961
** Search for an executable on the PATH environment variable.
962962
** Return true (1) if found and false (0) if not found.
963963
*/
@@ -1009,11 +1009,11 @@
10091009
char *zBrowserCmd = 0; /* Command to launch the web browser */
10101010
int isUiCmd; /* True if command is "ui", not "server' */
10111011
const char *zNotFound; /* The --notfound option or NULL */
10121012
int flags = 0; /* Server flags */
10131013
1014
-#ifdef __MINGW32__
1014
+#if defined(_WIN32)
10151015
const char *zStopperFile; /* Name of file used to terminate server */
10161016
zStopperFile = find_option("stopper", 0, 1);
10171017
#endif
10181018
10191019
g.thTrace = find_option("th-trace", 0, 0)!=0;
@@ -1030,11 +1030,11 @@
10301030
iPort = mxPort = atoi(zPort);
10311031
}else{
10321032
iPort = db_get_int("http-port", 8080);
10331033
mxPort = iPort+100;
10341034
}
1035
-#ifndef __MINGW32__
1035
+#if !defined(_WIN32)
10361036
/* Unix implementation */
10371037
if( isUiCmd ){
10381038
#if !defined(__DARWIN__) && !defined(__APPLE__)
10391039
zBrowser = db_get("web-browser", 0);
10401040
if( zBrowser==0 ){
10411041
--- src/main.c
+++ src/main.c
@@ -632,11 +632,11 @@
632 **
633 ** Assume the user-id and group-id of the repository, or if zRepo
634 ** is a directory, of that directory.
635 */
636 static char *enter_chroot_jail(char *zRepo){
637 #if !defined(__MINGW32__)
638 if( getuid()==0 ){
639 int i;
640 struct stat sStat;
641 Blob dir;
642 char *zDir;
@@ -810,11 +810,11 @@
810 }else{
811 zFile = g.argv[1];
812 }
813 g.httpOut = stdout;
814 g.httpIn = stdin;
815 #ifdef __MINGW32__
816 /* Set binary mode on windows to avoid undesired translations
817 ** between \n and \r\n. */
818 setmode(_fileno(g.httpOut), _O_BINARY);
819 setmode(_fileno(g.httpIn), _O_BINARY);
820 #endif
@@ -953,11 +953,11 @@
953 g.fullHttpReply = 1;
954 cgi_handle_http_request(0);
955 process_one_web_page(0);
956 }
957
958 #ifndef __MINGW32__
959 #if !defined(__DARWIN__) && !defined(__APPLE__)
960 /*
961 ** Search for an executable on the PATH environment variable.
962 ** Return true (1) if found and false (0) if not found.
963 */
@@ -1009,11 +1009,11 @@
1009 char *zBrowserCmd = 0; /* Command to launch the web browser */
1010 int isUiCmd; /* True if command is "ui", not "server' */
1011 const char *zNotFound; /* The --notfound option or NULL */
1012 int flags = 0; /* Server flags */
1013
1014 #ifdef __MINGW32__
1015 const char *zStopperFile; /* Name of file used to terminate server */
1016 zStopperFile = find_option("stopper", 0, 1);
1017 #endif
1018
1019 g.thTrace = find_option("th-trace", 0, 0)!=0;
@@ -1030,11 +1030,11 @@
1030 iPort = mxPort = atoi(zPort);
1031 }else{
1032 iPort = db_get_int("http-port", 8080);
1033 mxPort = iPort+100;
1034 }
1035 #ifndef __MINGW32__
1036 /* Unix implementation */
1037 if( isUiCmd ){
1038 #if !defined(__DARWIN__) && !defined(__APPLE__)
1039 zBrowser = db_get("web-browser", 0);
1040 if( zBrowser==0 ){
1041
--- src/main.c
+++ src/main.c
@@ -632,11 +632,11 @@
632 **
633 ** Assume the user-id and group-id of the repository, or if zRepo
634 ** is a directory, of that directory.
635 */
636 static char *enter_chroot_jail(char *zRepo){
637 #if !defined(_WIN32)
638 if( getuid()==0 ){
639 int i;
640 struct stat sStat;
641 Blob dir;
642 char *zDir;
@@ -810,11 +810,11 @@
810 }else{
811 zFile = g.argv[1];
812 }
813 g.httpOut = stdout;
814 g.httpIn = stdin;
815 #if defined(_WIN32)
816 /* Set binary mode on windows to avoid undesired translations
817 ** between \n and \r\n. */
818 setmode(_fileno(g.httpOut), _O_BINARY);
819 setmode(_fileno(g.httpIn), _O_BINARY);
820 #endif
@@ -953,11 +953,11 @@
953 g.fullHttpReply = 1;
954 cgi_handle_http_request(0);
955 process_one_web_page(0);
956 }
957
958 #if !defined(_WIN32)
959 #if !defined(__DARWIN__) && !defined(__APPLE__)
960 /*
961 ** Search for an executable on the PATH environment variable.
962 ** Return true (1) if found and false (0) if not found.
963 */
@@ -1009,11 +1009,11 @@
1009 char *zBrowserCmd = 0; /* Command to launch the web browser */
1010 int isUiCmd; /* True if command is "ui", not "server' */
1011 const char *zNotFound; /* The --notfound option or NULL */
1012 int flags = 0; /* Server flags */
1013
1014 #if defined(_WIN32)
1015 const char *zStopperFile; /* Name of file used to terminate server */
1016 zStopperFile = find_option("stopper", 0, 1);
1017 #endif
1018
1019 g.thTrace = find_option("th-trace", 0, 0)!=0;
@@ -1030,11 +1030,11 @@
1030 iPort = mxPort = atoi(zPort);
1031 }else{
1032 iPort = db_get_int("http-port", 8080);
1033 mxPort = iPort+100;
1034 }
1035 #if !defined(_WIN32)
1036 /* Unix implementation */
1037 if( isUiCmd ){
1038 #if !defined(__DARWIN__) && !defined(__APPLE__)
1039 zBrowser = db_get("web-browser", 0);
1040 if( zBrowser==0 ){
1041
+118 -1
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -81,11 +81,11 @@
8181
}
8282
8383
# Name of the final application
8484
#
8585
set name fossil
86
-
86
+if { 0 == $argc } {
8787
puts {# DO NOT EDIT
8888
#
8989
# This file is automatically generated. Instead of editing this
9090
# file, edit "makemake.tcl" then run "tclsh makemake.tcl >main.mk"
9191
# to regenerate this file.
@@ -205,5 +205,122 @@
205205
puts "\$(OBJDIR)/th.o:\t\$(SRCDIR)/th.c"
206206
puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th.c -o \$(OBJDIR)/th.o\n"
207207
208208
puts "\$(OBJDIR)/th_lang.o:\t\$(SRCDIR)/th_lang.c"
209209
puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th_lang.c -o \$(OBJDIR)/th_lang.o\n"
210
+exit
211
+}
212
+if { "dmc" == [lindex $argv 0] } {
213
+
214
+puts {# DO NOT EDIT
215
+#
216
+# This file is automatically generated. Instead of editing this
217
+# file, edit "makemake.tcl" then run
218
+# "tclsh src/makemake.tcl dmc > win/Makefile.dmc"
219
+# to regenerate this file.
220
+SRCDIR = src
221
+OBJDIR = dmcobj
222
+O = .obj
223
+E = .exe
224
+
225
+
226
+# Maybe DMDIR, SSL or INCL needs adjustment
227
+DMDIR = c:\DM
228
+INCL = -I. -I$(SRCDIR) -Iwin\include -I$(DMDIR)\extra\include
229
+
230
+#SSL = -DFOSSIL_ENABLE_SSL=1
231
+SSL =
232
+
233
+DMCDEF = -Dstrncasecmp=memicmp -Dstrcasecmp=stricmp
234
+I18N = -DFOSSIL_I18N=0
235
+
236
+CFLAGS = -o
237
+BCC = $(DMDIR)\bin\dmc $(CFLAGS)
238
+TCC = $(DMDIR)\bin\dmc $(CFLAGS) $(DMCDEF) $(I18N) $(SSL) $(INCL)
239
+LIBS = $(DMDIR)\extra\lib\ zlib wsock32
240
+}
241
+puts -nonewline "SRC = "
242
+foreach s [lsort $src] {
243
+ puts -nonewline "${s}_.c "
244
+}
245
+puts "\n"
246
+puts -nonewline "OBJ = "
247
+foreach s [lsort $src] {
248
+ puts -nonewline "\$(OBJDIR)\\$s\$O "
249
+}
250
+puts "\$(OBJDIR)\\sqlite3\$O \$(OBJDIR)\\th\$O \$(OBJDIR)\\th_lang\$O "
251
+puts {
252
+
253
+APPNAME = $(OBJDIR)\fossil$(E)
254
+
255
+all: $(OBJDIR) $(APPNAME)
256
+
257
+$(APPNAME) : translate$E mkindex$E headers $(OBJ) $(OBJDIR)\link
258
+ cd $(OBJDIR)
259
+ $(DMDIR)\bin\link @link
260
+
261
+$(OBJDIR)\link:}
262
+puts -nonewline "\t+echo "
263
+foreach s [lsort $src] {
264
+ puts -nonewline "$s "
265
+}
266
+puts "sqlite3 th th_lang > \$@"
267
+puts "\t+echo fossil >> \$@"
268
+puts "\t+echo fossil >> \$@"
269
+puts "\t+echo \$(LIBS) >> \$@\n\n"
270
+
271
+puts {
272
+
273
+
274
+$(OBJDIR):
275
+ @-mkdir $@
276
+
277
+translate$E: $(SRCDIR)/translate.c
278
+ $(BCC) -o$@ $**
279
+
280
+makeheaders$E: $(SRCDIR)/makeheaders.c
281
+ $(BCC) -o$@ $**
282
+
283
+mkindex$E: $(SRCDIR)/mkindex.c
284
+ $(BCC) -o$@ $**
285
+
286
+version$E: win/version.c
287
+ $(BCC) -o$@ $**
288
+
289
+$(OBJDIR)\sqlite3$O : $(SRCDIR)\sqlite3.c
290
+ $(TCC) -o$@ -c -DSQLITE_OMIT_LOAD_EXTENSION=1 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -Dlocaltime=fossil_localtime -DSQLITE_ENABLE_LOCKING_STYLE=0 $**
291
+
292
+$(OBJDIR)\th$O : $(SRCDIR)\th.c
293
+ $(TCC) -o$@ -c $**
294
+
295
+$(OBJDIR)\th_lang$O : $(SRCDIR)\th_lang.c
296
+ $(TCC) -o$@ -c $**
297
+
298
+VERSION.h : version$E manifest.uuid manifest
299
+ +$** > $@
300
+
301
+page_index.h: mkindex$E $(SRC)
302
+ +$** > $@
303
+
304
+clean:
305
+ -del $(OBJDIR)\*.obj
306
+ -del *.obj *_.c *.h *.map
307
+
308
+realclean:
309
+ -del $(APPNAME) translate$E mkindex$E makeheaders$E version$E
310
+
311
+}
312
+foreach s [lsort $src] {
313
+ puts "\$(OBJDIR)\\$s\$O : ${s}_.c"
314
+ puts "\t\$(TCC) -o\$@ -c \$**\n"
315
+ puts "${s}_.c : \$(SRCDIR)\\$s.c"
316
+ puts "\t+translate\$E \$** > \$@\n"
317
+}
318
+
319
+puts -nonewline "headers: makeheaders\$E page_index.h VERSION.h\n\t +makeheaders\$E "
320
+foreach s [lsort $src] {
321
+ puts -nonewline "${s}_.c:$s.h "
322
+}
323
+puts "src\\sqlite3.h src\\th.h VERSION.h"
324
+puts "\tcopy nul headers"
325
+
326
+}
210327
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -81,11 +81,11 @@
81 }
82
83 # Name of the final application
84 #
85 set name fossil
86
87 puts {# DO NOT EDIT
88 #
89 # This file is automatically generated. Instead of editing this
90 # file, edit "makemake.tcl" then run "tclsh makemake.tcl >main.mk"
91 # to regenerate this file.
@@ -205,5 +205,122 @@
205 puts "\$(OBJDIR)/th.o:\t\$(SRCDIR)/th.c"
206 puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th.c -o \$(OBJDIR)/th.o\n"
207
208 puts "\$(OBJDIR)/th_lang.o:\t\$(SRCDIR)/th_lang.c"
209 puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th_lang.c -o \$(OBJDIR)/th_lang.o\n"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
210
--- src/makemake.tcl
+++ src/makemake.tcl
@@ -81,11 +81,11 @@
81 }
82
83 # Name of the final application
84 #
85 set name fossil
86 if { 0 == $argc } {
87 puts {# DO NOT EDIT
88 #
89 # This file is automatically generated. Instead of editing this
90 # file, edit "makemake.tcl" then run "tclsh makemake.tcl >main.mk"
91 # to regenerate this file.
@@ -205,5 +205,122 @@
205 puts "\$(OBJDIR)/th.o:\t\$(SRCDIR)/th.c"
206 puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th.c -o \$(OBJDIR)/th.o\n"
207
208 puts "\$(OBJDIR)/th_lang.o:\t\$(SRCDIR)/th_lang.c"
209 puts "\t\$(XTCC) -I\$(SRCDIR) -c \$(SRCDIR)/th_lang.c -o \$(OBJDIR)/th_lang.o\n"
210 exit
211 }
212 if { "dmc" == [lindex $argv 0] } {
213
214 puts {# DO NOT EDIT
215 #
216 # This file is automatically generated. Instead of editing this
217 # file, edit "makemake.tcl" then run
218 # "tclsh src/makemake.tcl dmc > win/Makefile.dmc"
219 # to regenerate this file.
220 SRCDIR = src
221 OBJDIR = dmcobj
222 O = .obj
223 E = .exe
224
225
226 # Maybe DMDIR, SSL or INCL needs adjustment
227 DMDIR = c:\DM
228 INCL = -I. -I$(SRCDIR) -Iwin\include -I$(DMDIR)\extra\include
229
230 #SSL = -DFOSSIL_ENABLE_SSL=1
231 SSL =
232
233 DMCDEF = -Dstrncasecmp=memicmp -Dstrcasecmp=stricmp
234 I18N = -DFOSSIL_I18N=0
235
236 CFLAGS = -o
237 BCC = $(DMDIR)\bin\dmc $(CFLAGS)
238 TCC = $(DMDIR)\bin\dmc $(CFLAGS) $(DMCDEF) $(I18N) $(SSL) $(INCL)
239 LIBS = $(DMDIR)\extra\lib\ zlib wsock32
240 }
241 puts -nonewline "SRC = "
242 foreach s [lsort $src] {
243 puts -nonewline "${s}_.c "
244 }
245 puts "\n"
246 puts -nonewline "OBJ = "
247 foreach s [lsort $src] {
248 puts -nonewline "\$(OBJDIR)\\$s\$O "
249 }
250 puts "\$(OBJDIR)\\sqlite3\$O \$(OBJDIR)\\th\$O \$(OBJDIR)\\th_lang\$O "
251 puts {
252
253 APPNAME = $(OBJDIR)\fossil$(E)
254
255 all: $(OBJDIR) $(APPNAME)
256
257 $(APPNAME) : translate$E mkindex$E headers $(OBJ) $(OBJDIR)\link
258 cd $(OBJDIR)
259 $(DMDIR)\bin\link @link
260
261 $(OBJDIR)\link:}
262 puts -nonewline "\t+echo "
263 foreach s [lsort $src] {
264 puts -nonewline "$s "
265 }
266 puts "sqlite3 th th_lang > \$@"
267 puts "\t+echo fossil >> \$@"
268 puts "\t+echo fossil >> \$@"
269 puts "\t+echo \$(LIBS) >> \$@\n\n"
270
271 puts {
272
273
274 $(OBJDIR):
275 @-mkdir $@
276
277 translate$E: $(SRCDIR)/translate.c
278 $(BCC) -o$@ $**
279
280 makeheaders$E: $(SRCDIR)/makeheaders.c
281 $(BCC) -o$@ $**
282
283 mkindex$E: $(SRCDIR)/mkindex.c
284 $(BCC) -o$@ $**
285
286 version$E: win/version.c
287 $(BCC) -o$@ $**
288
289 $(OBJDIR)\sqlite3$O : $(SRCDIR)\sqlite3.c
290 $(TCC) -o$@ -c -DSQLITE_OMIT_LOAD_EXTENSION=1 -DSQLITE_THREADSAFE=0 -DSQLITE_DEFAULT_FILE_FORMAT=4 -Dlocaltime=fossil_localtime -DSQLITE_ENABLE_LOCKING_STYLE=0 $**
291
292 $(OBJDIR)\th$O : $(SRCDIR)\th.c
293 $(TCC) -o$@ -c $**
294
295 $(OBJDIR)\th_lang$O : $(SRCDIR)\th_lang.c
296 $(TCC) -o$@ -c $**
297
298 VERSION.h : version$E manifest.uuid manifest
299 +$** > $@
300
301 page_index.h: mkindex$E $(SRC)
302 +$** > $@
303
304 clean:
305 -del $(OBJDIR)\*.obj
306 -del *.obj *_.c *.h *.map
307
308 realclean:
309 -del $(APPNAME) translate$E mkindex$E makeheaders$E version$E
310
311 }
312 foreach s [lsort $src] {
313 puts "\$(OBJDIR)\\$s\$O : ${s}_.c"
314 puts "\t\$(TCC) -o\$@ -c \$**\n"
315 puts "${s}_.c : \$(SRCDIR)\\$s.c"
316 puts "\t+translate\$E \$** > \$@\n"
317 }
318
319 puts -nonewline "headers: makeheaders\$E page_index.h VERSION.h\n\t +makeheaders\$E "
320 foreach s [lsort $src] {
321 puts -nonewline "${s}_.c:$s.h "
322 }
323 puts "src\\sqlite3.h src\\th.h VERSION.h"
324 puts "\tcopy nul headers"
325
326 }
327
+8 -6
--- src/popen.c
+++ src/popen.c
@@ -18,11 +18,13 @@
1818
** This file contains an implementation of a bi-directional popen().
1919
*/
2020
#include "config.h"
2121
#include "popen.h"
2222
23
-#ifdef __MINGW32__
23
+#ifdef _WIN32
24
+#include <windows.h>
25
+#include <fcntl.h>
2426
/*
2527
** Print a fatal error and quit.
2628
*/
2729
static void win32_fatal_error(const char *zMsg){
2830
fossil_fatal("%s");
@@ -29,11 +31,11 @@
2931
}
3032
#endif
3133
3234
3335
34
-#ifdef __MINGW32__
36
+#ifdef _WIN32
3537
/*
3638
** On windows, create a child process and specify the stdin, stdout,
3739
** and stderr channels for that process to use.
3840
**
3941
** Return the number of errors.
@@ -91,11 +93,11 @@
9193
** The process ID of the child is written into *pChildPid.
9294
**
9395
** Return the number of errors.
9496
*/
9597
int popen2(const char *zCmd, int *pfdIn, FILE **ppOut, int *pChildPid){
96
-#ifdef __MINGW32__
98
+#ifdef _WIN32
9799
HANDLE hStdinRd, hStdinWr, hStdoutRd, hStdoutWr, hStderr;
98100
SECURITY_ATTRIBUTES saAttr;
99101
DWORD childPid;
100102
int fd;
101103
@@ -114,12 +116,12 @@
114116
SetHandleInformation( hStdinWr, HANDLE_FLAG_INHERIT, FALSE);
115117
116118
win32_create_child_process((char*)zCmd,
117119
hStdinRd, hStdoutWr, hStderr,&childPid);
118120
*pChildPid = childPid;
119
- *pfdIn = _open_osfhandle(hStdoutRd, 0);
120
- fd = _open_osfhandle(hStdoutWr, 0);
121
+ *pfdIn = _open_osfhandle((long)hStdoutRd, 0);
122
+ fd = _open_osfhandle((long)hStdoutWr, 0);
121123
*ppOut = _fdopen(fd, "w");
122124
CloseHandle(hStdinRd);
123125
CloseHandle(hStdoutWr);
124126
return 0;
125127
#else
@@ -171,13 +173,13 @@
171173
/*
172174
** Close the connection to a child process previously created using
173175
** popen2(). Kill off the child process, then close the pipes.
174176
*/
175177
void pclose2(int fdIn, FILE *pOut, int childPid){
176
-#ifdef __MINGW32__
178
+#ifdef _WIN32
177179
/* Not implemented, yet */
178180
#else
179181
close(fdIn);
180182
fclose(pOut);
181183
kill(childPid, SIGINT);
182184
#endif
183185
}
184186
--- src/popen.c
+++ src/popen.c
@@ -18,11 +18,13 @@
18 ** This file contains an implementation of a bi-directional popen().
19 */
20 #include "config.h"
21 #include "popen.h"
22
23 #ifdef __MINGW32__
 
 
24 /*
25 ** Print a fatal error and quit.
26 */
27 static void win32_fatal_error(const char *zMsg){
28 fossil_fatal("%s");
@@ -29,11 +31,11 @@
29 }
30 #endif
31
32
33
34 #ifdef __MINGW32__
35 /*
36 ** On windows, create a child process and specify the stdin, stdout,
37 ** and stderr channels for that process to use.
38 **
39 ** Return the number of errors.
@@ -91,11 +93,11 @@
91 ** The process ID of the child is written into *pChildPid.
92 **
93 ** Return the number of errors.
94 */
95 int popen2(const char *zCmd, int *pfdIn, FILE **ppOut, int *pChildPid){
96 #ifdef __MINGW32__
97 HANDLE hStdinRd, hStdinWr, hStdoutRd, hStdoutWr, hStderr;
98 SECURITY_ATTRIBUTES saAttr;
99 DWORD childPid;
100 int fd;
101
@@ -114,12 +116,12 @@
114 SetHandleInformation( hStdinWr, HANDLE_FLAG_INHERIT, FALSE);
115
116 win32_create_child_process((char*)zCmd,
117 hStdinRd, hStdoutWr, hStderr,&childPid);
118 *pChildPid = childPid;
119 *pfdIn = _open_osfhandle(hStdoutRd, 0);
120 fd = _open_osfhandle(hStdoutWr, 0);
121 *ppOut = _fdopen(fd, "w");
122 CloseHandle(hStdinRd);
123 CloseHandle(hStdoutWr);
124 return 0;
125 #else
@@ -171,13 +173,13 @@
171 /*
172 ** Close the connection to a child process previously created using
173 ** popen2(). Kill off the child process, then close the pipes.
174 */
175 void pclose2(int fdIn, FILE *pOut, int childPid){
176 #ifdef __MINGW32__
177 /* Not implemented, yet */
178 #else
179 close(fdIn);
180 fclose(pOut);
181 kill(childPid, SIGINT);
182 #endif
183 }
184
--- src/popen.c
+++ src/popen.c
@@ -18,11 +18,13 @@
18 ** This file contains an implementation of a bi-directional popen().
19 */
20 #include "config.h"
21 #include "popen.h"
22
23 #ifdef _WIN32
24 #include <windows.h>
25 #include <fcntl.h>
26 /*
27 ** Print a fatal error and quit.
28 */
29 static void win32_fatal_error(const char *zMsg){
30 fossil_fatal("%s");
@@ -29,11 +31,11 @@
31 }
32 #endif
33
34
35
36 #ifdef _WIN32
37 /*
38 ** On windows, create a child process and specify the stdin, stdout,
39 ** and stderr channels for that process to use.
40 **
41 ** Return the number of errors.
@@ -91,11 +93,11 @@
93 ** The process ID of the child is written into *pChildPid.
94 **
95 ** Return the number of errors.
96 */
97 int popen2(const char *zCmd, int *pfdIn, FILE **ppOut, int *pChildPid){
98 #ifdef _WIN32
99 HANDLE hStdinRd, hStdinWr, hStdoutRd, hStdoutWr, hStderr;
100 SECURITY_ATTRIBUTES saAttr;
101 DWORD childPid;
102 int fd;
103
@@ -114,12 +116,12 @@
116 SetHandleInformation( hStdinWr, HANDLE_FLAG_INHERIT, FALSE);
117
118 win32_create_child_process((char*)zCmd,
119 hStdinRd, hStdoutWr, hStderr,&childPid);
120 *pChildPid = childPid;
121 *pfdIn = _open_osfhandle((long)hStdoutRd, 0);
122 fd = _open_osfhandle((long)hStdoutWr, 0);
123 *ppOut = _fdopen(fd, "w");
124 CloseHandle(hStdinRd);
125 CloseHandle(hStdoutWr);
126 return 0;
127 #else
@@ -171,13 +173,13 @@
173 /*
174 ** Close the connection to a child process previously created using
175 ** popen2(). Kill off the child process, then close the pipes.
176 */
177 void pclose2(int fdIn, FILE *pOut, int childPid){
178 #ifdef _WIN32
179 /* Not implemented, yet */
180 #else
181 close(fdIn);
182 fclose(pOut);
183 kill(childPid, SIGINT);
184 #endif
185 }
186
+1 -1
--- src/rss.c
+++ src/rss.c
@@ -16,13 +16,13 @@
1616
*******************************************************************************
1717
**
1818
** This file contains code used to create a RSS feed for the CGI interface.
1919
*/
2020
#include "config.h"
21
+#include <time.h>
2122
#include "rss.h"
2223
#include <assert.h>
23
-#include <time.h>
2424
2525
/*
2626
** WEBPAGE: timeline.rss
2727
*/
2828
void page_timeline_rss(void){
2929
--- src/rss.c
+++ src/rss.c
@@ -16,13 +16,13 @@
16 *******************************************************************************
17 **
18 ** This file contains code used to create a RSS feed for the CGI interface.
19 */
20 #include "config.h"
 
21 #include "rss.h"
22 #include <assert.h>
23 #include <time.h>
24
25 /*
26 ** WEBPAGE: timeline.rss
27 */
28 void page_timeline_rss(void){
29
--- src/rss.c
+++ src/rss.c
@@ -16,13 +16,13 @@
16 *******************************************************************************
17 **
18 ** This file contains code used to create a RSS feed for the CGI interface.
19 */
20 #include "config.h"
21 #include <time.h>
22 #include "rss.h"
23 #include <assert.h>
 
24
25 /*
26 ** WEBPAGE: timeline.rss
27 */
28 void page_timeline_rss(void){
29
+11 -9
--- src/sha1.c
+++ src/sha1.c
@@ -1,22 +1,24 @@
11
/*
22
** This implementation of SHA1 is adapted from the example implementation
33
** contained in RFC-3174.
44
*/
5
-#include <stdint.h>
6
-#include <sys/types.h>
7
-#include "config.h"
8
-#include "sha1.h"
9
-
105
/*
116
* If you do not have the ISO standard stdint.h header file, then you
127
* must typdef the following:
138
* name meaning
14
- * uint32_t unsigned 32 bit integer
15
- * uint8_t unsigned 8 bit integer (i.e., unsigned char)
16
- *
17
- */
9
+ * */
10
+#if defined(__DMC__)
11
+ typedef unsigned long uint32_t; //unsigned 32 bit integer
12
+ typedef unsigned char uint8_t; //unsigned 8 bit integer (i.e., unsigned char)
13
+#else
14
+# include <stdint.h>
15
+#endif
16
+#include <sys/types.h>
17
+#include "config.h"
18
+#include "sha1.h"
19
+
1820
#define SHA1HashSize 20
1921
#define shaSuccess 0
2022
#define shaInputTooLong 1
2123
#define shaStateError 2
2224
2325
--- src/sha1.c
+++ src/sha1.c
@@ -1,22 +1,24 @@
1 /*
2 ** This implementation of SHA1 is adapted from the example implementation
3 ** contained in RFC-3174.
4 */
5 #include <stdint.h>
6 #include <sys/types.h>
7 #include "config.h"
8 #include "sha1.h"
9
10 /*
11 * If you do not have the ISO standard stdint.h header file, then you
12 * must typdef the following:
13 * name meaning
14 * uint32_t unsigned 32 bit integer
15 * uint8_t unsigned 8 bit integer (i.e., unsigned char)
16 *
17 */
 
 
 
 
 
 
 
18 #define SHA1HashSize 20
19 #define shaSuccess 0
20 #define shaInputTooLong 1
21 #define shaStateError 2
22
23
--- src/sha1.c
+++ src/sha1.c
@@ -1,22 +1,24 @@
1 /*
2 ** This implementation of SHA1 is adapted from the example implementation
3 ** contained in RFC-3174.
4 */
 
 
 
 
 
5 /*
6 * If you do not have the ISO standard stdint.h header file, then you
7 * must typdef the following:
8 * name meaning
9 * */
10 #if defined(__DMC__)
11 typedef unsigned long uint32_t; //unsigned 32 bit integer
12 typedef unsigned char uint8_t; //unsigned 8 bit integer (i.e., unsigned char)
13 #else
14 # include <stdint.h>
15 #endif
16 #include <sys/types.h>
17 #include "config.h"
18 #include "sha1.h"
19
20 #define SHA1HashSize 20
21 #define shaSuccess 0
22 #define shaInputTooLong 1
23 #define shaStateError 2
24
25
+1 -2
--- src/style.c
+++ src/style.c
@@ -397,14 +397,13 @@
397397
/*
398398
** WEBPAGE: test_env
399399
*/
400400
void page_test_env(void){
401401
style_header("Environment Test");
402
-#if !defined(__MINGW32__)
402
+#if !defined(_WIN32)
403403
@ uid=%d(getuid()), gid=%d(getgid())<br>
404404
#endif
405405
@ g.zBaseURL = %h(g.zBaseURL)<br>
406406
@ g.zTop = %h(g.zTop)<br>
407
- @ g.zRepositoryName = %h(g.zRepositoryName)<br>
408407
cgi_print_all();
409408
style_footer();
410409
}
411410
--- src/style.c
+++ src/style.c
@@ -397,14 +397,13 @@
397 /*
398 ** WEBPAGE: test_env
399 */
400 void page_test_env(void){
401 style_header("Environment Test");
402 #if !defined(__MINGW32__)
403 @ uid=%d(getuid()), gid=%d(getgid())<br>
404 #endif
405 @ g.zBaseURL = %h(g.zBaseURL)<br>
406 @ g.zTop = %h(g.zTop)<br>
407 @ g.zRepositoryName = %h(g.zRepositoryName)<br>
408 cgi_print_all();
409 style_footer();
410 }
411
--- src/style.c
+++ src/style.c
@@ -397,14 +397,13 @@
397 /*
398 ** WEBPAGE: test_env
399 */
400 void page_test_env(void){
401 style_header("Environment Test");
402 #if !defined(_WIN32)
403 @ uid=%d(getuid()), gid=%d(getgid())<br>
404 #endif
405 @ g.zBaseURL = %h(g.zBaseURL)<br>
406 @ g.zTop = %h(g.zTop)<br>
 
407 cgi_print_all();
408 style_footer();
409 }
410
+1 -1
--- src/user.c
+++ src/user.c
@@ -39,11 +39,11 @@
3939
if( z[i]<' ' ) z[i] = ' ';
4040
}
4141
blob_append(pBlob, z, -1);
4242
}
4343
44
-#ifdef __MINGW32__
44
+#if defined(_WIN32)
4545
/*
4646
** getpass for Windows
4747
*/
4848
static char *getpass(const char *prompt){
4949
static char pwd[64];
5050
--- src/user.c
+++ src/user.c
@@ -39,11 +39,11 @@
39 if( z[i]<' ' ) z[i] = ' ';
40 }
41 blob_append(pBlob, z, -1);
42 }
43
44 #ifdef __MINGW32__
45 /*
46 ** getpass for Windows
47 */
48 static char *getpass(const char *prompt){
49 static char pwd[64];
50
--- src/user.c
+++ src/user.c
@@ -39,11 +39,11 @@
39 if( z[i]<' ' ) z[i] = ' ';
40 }
41 blob_append(pBlob, z, -1);
42 }
43
44 #if defined(_WIN32)
45 /*
46 ** getpass for Windows
47 */
48 static char *getpass(const char *prompt){
49 static char pwd[64];
50
--- src/vfile.c
+++ src/vfile.c
@@ -19,11 +19,15 @@
1919
*/
2020
#include "config.h"
2121
#include "vfile.h"
2222
#include <assert.h>
2323
#include <sys/types.h>
24
+#if defined(__DMC__)
25
+#include "dirent.h"
26
+#else
2427
#include <dirent.h>
28
+#endif
2529
2630
/*
2731
** Given a UUID, return the corresponding record ID. If the UUID
2832
** does not exist, then return 0.
2933
**
3034
--- src/vfile.c
+++ src/vfile.c
@@ -19,11 +19,15 @@
19 */
20 #include "config.h"
21 #include "vfile.h"
22 #include <assert.h>
23 #include <sys/types.h>
 
 
 
24 #include <dirent.h>
 
25
26 /*
27 ** Given a UUID, return the corresponding record ID. If the UUID
28 ** does not exist, then return 0.
29 **
30
--- src/vfile.c
+++ src/vfile.c
@@ -19,11 +19,15 @@
19 */
20 #include "config.h"
21 #include "vfile.h"
22 #include <assert.h>
23 #include <sys/types.h>
24 #if defined(__DMC__)
25 #include "dirent.h"
26 #else
27 #include <dirent.h>
28 #endif
29
30 /*
31 ** Given a UUID, return the corresponding record ID. If the UUID
32 ** does not exist, then return 0.
33 **
34
+3 -2
--- src/winhttp.c
+++ src/winhttp.c
@@ -16,11 +16,12 @@
1616
*******************************************************************************
1717
**
1818
** This file implements a very simple (and low-performance) HTTP server
1919
** for windows.
2020
*/
21
-#ifdef __MINGW32__ /* This code is for win32 only */
21
+#if defined( __MINGW32__) || defined(__DMC__)
22
+/* This code is for win32 only */
2223
#include "config.h"
2324
#include "winhttp.h"
2425
#include <windows.h>
2526
2627
/*
@@ -220,6 +221,6 @@
220221
}
221222
closesocket(s);
222223
WSACleanup();
223224
}
224225
225
-#endif /* __MINGW32__ -- This code is for win32 only */
226
+#endif /* _WIN32 -- This code is for win32 only */
226227
227228
ADDED win/Makefile.dmc
228229
ADDED win/include/dirent.h
229230
ADDED win/include/unistd.h
230231
ADDED win/version.c
--- src/winhttp.c
+++ src/winhttp.c
@@ -16,11 +16,12 @@
16 *******************************************************************************
17 **
18 ** This file implements a very simple (and low-performance) HTTP server
19 ** for windows.
20 */
21 #ifdef __MINGW32__ /* This code is for win32 only */
 
22 #include "config.h"
23 #include "winhttp.h"
24 #include <windows.h>
25
26 /*
@@ -220,6 +221,6 @@
220 }
221 closesocket(s);
222 WSACleanup();
223 }
224
225 #endif /* __MINGW32__ -- This code is for win32 only */
226
227 DDED win/Makefile.dmc
228 DDED win/include/dirent.h
229 DDED win/include/unistd.h
230 DDED win/version.c
--- src/winhttp.c
+++ src/winhttp.c
@@ -16,11 +16,12 @@
16 *******************************************************************************
17 **
18 ** This file implements a very simple (and low-performance) HTTP server
19 ** for windows.
20 */
21 #if defined( __MINGW32__) || defined(__DMC__)
22 /* This code is for win32 only */
23 #include "config.h"
24 #include "winhttp.h"
25 #include <windows.h>
26
27 /*
@@ -220,6 +221,6 @@
221 }
222 closesocket(s);
223 WSACleanup();
224 }
225
226 #endif /* _WIN32 -- This code is for win32 only */
227
228 DDED win/Makefile.dmc
229 DDED win/include/dirent.h
230 DDED win/include/unistd.h
231 DDED win/version.c
--- a/win/Makefile.dmc
+++ b/win/Makefile.dmc
@@ -0,0 +1,524 @@
1
+# DO NOT EDITrver_.c:server#
2
+### $(SQLITE_OPTIONS) $**
3
+
4
+**
5
+
6
+ENABLE_STAT3rverrverrverrver$O
7
+# "tclsh src/makemakeserverserver_.c
8
+
9
+serverservrver_.c:server**
10
+
11
+**
12
+
13
+ENABLE_STAT3rverrverrverrver$O : sSRCDIR = src
14
+OBJDIR = dmcobjrverserver_.c
15
+
16
+serverservrver_.c:servertag_.tag$O S) $**
17
+
18
+**
19
+
20
+ENABLE_STAT3rverrverrverrverBLE_STAT3rverrverrverrver$O : serv#
21
+### $(SQLITE_OPTIONS) $**
22
+
23
+**
24
+
25
+ENABLE_STAT3rverrver
26
+
27
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
28
+
29
+4_.tag$O S) $**
30
+
31
+**
32
+
33
+EN4ertaserver_.c serverserver_.c
34
+
35
+serverservrver_.c:server#
36
+### $(SQLITE_OPTIONS) $**
37
+
38
+**
39
+
40
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
41
+
42
+serverservrver_.c:server#
43
+### $(SQLITE_OPTIONS) $**
44
+
45
+**
46
+
47
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
48
+
49
+serverservrver_.c:serververify$O : server_.c serve#
50
+### $(SQLITE_OPTIONS) $**
51
+
52
+**
53
+
54
+ENABLE_STAT3rverrverrverrvever_.c:server#
55
+### $(SQLITE_OPTIONS) $**
56
+
57
+**
58
+
59
+ENABLE_STAT3rverrverrverrver$O
60
+# "tclsh src/makemakeserverser_.c:server#
61
+### $(SQLITE_OPTIONS) $**
62
+
63
+*OBJDIR)
64
+
65
+$(OBJDIR):
66
+ @-mkdir $@TAT3rverrverrverrvever_./NS) $**
67
+
68
+**
69
+
70
+ENABLE_STAT3rv/rrverrverrver$O
71
+# "tclsh /
72
+serverservrwin/.c serverserver_.c
73
+
74
+serverservrver_.c:servertag_.tag$O S) $**
75
+
76
+**
77
+
78
+ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
79
+### $(SQLITE_OPTIONS) $**
80
+
81
+**
82
+
83
+ENABLE_STAT3rverrverrverrver$O : serv#
84
+### $(SQLITE_OPTIONS) $**
85
+
86
+**
87
+
88
+ENABLE_STAT3rverrver
89
+
90
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
91
+
92
+4_.tag$O S) $**
93
+
94
+**
95
+
96
+EN4emanifest.uuid # DO NOT EDITrver_.c:server#
97
+### $(SQLITE_OPTIONS) $**
98
+
99
+**
100
+
101
+ENABLE_STAT3rverrverrverrver$O
102
+# "tclsh src/makemakeserverserver_.c
103
+
104
+serverservrver_.c:server**
105
+
106
+**
107
+
108
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
109
+
110
+serverservrver_.c:servertag_.tag$O S) $**
111
+
112
+**
113
+
114
+ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
115
+### $(SQLITE_OPTIONS) $**
116
+
117
+**
118
+
119
+ENABLE_STAT3rverrverrverrver$O : serv#
120
+### $(SQLITE_OPTIONS) $**
121
+
122
+**
123
+
124
+ENABLE_STAT3rverrver
125
+
126
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
127
+
128
+4_.tag$O S) $**
129
+
130
+**
131
+
132
+EN4ertaserver_.c serverserver_.c
133
+
134
+serverservrver_.c:server#
135
+### $(SQLITE_OPTIONS) $**
136
+
137
+**
138
+
139
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
140
+
141
+serverservrver_.c:server#
142
+### $(SQLITE_OPTIONS) $**
143
+
144
+**
145
+
146
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
147
+
148
+serverservrver_.c:serververify$O : server_.c serve#
149
+### $(SQLITE_OPTIONS) $**
150
+
151
+**
152
+
153
+ENABLE_STAT3rverrverrverrvever_.c:server#
154
+### $(SQLITE_OPTIONS) $**
155
+
156
+**
157
+
158
+ENABLE_STAT3rverrverrverrver$O
159
+# "tclsh src/makemakeserverser_.c:server#
160
+### $(SQLITE_OPTIONS) $**
161
+
162
+**
163
+
164
+ENABLE_STAT3rverrverrverrver$O
165
+# "tclsh src/makemaserver**
166
+
167
+**
168
+
169
+ENABLE_STAT3rverrverrverrver$O : serve = -DFOerver#
170
+### $(SQLITE_OPTIONS) $**
171
+
172
+**
173
+
174
+ENABLE_STAT3rverrverrverrver$O : serv#
175
+### $(SQLITE_OPTIONS) $**
176
+
177
+**
178
+
179
+ENABLE_STAT3rverrver
180
+
181
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
182
+
183
+4_.tag$O S) $**
184
+
185
+**
186
+
187
+EN4ertaserver_.c serverserver_.c
188
+
189
+serverservrver_.c:server#
190
+### $(SQLITE_OPTIONS) $**
191
+
192
+**
193
+
194
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
195
+
196
+serverservrver_.c:server#
197
+### $(SQLITE_OPTIONS) $**
198
+
199
+**
200
+
201
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
202
+
203
+serverservrver_.c:serververify$O : server_.c serve#
204
+### STAT3rverrverrverrvever_.c:server#
205
+### $(SQLITE_OPTIONS) $**
206
+
207
+**
208
+
209
+ENABLE_STAT3rverrverrverrver$O
210
+# "tclsh src/makemakeserverserver_.c
211
+
212
+serverservrver_.c:server**
213
+
214
+**
215
+
216
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
217
+
218
+serverservrver_.c:servertag_.tag$O S) $**
219
+
220
+**
221
+
222
+ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
223
+### $(SQLITE_OPTIONS) $**
224
+
225
+**
226
+
227
+ENABLE_STAT3rverrverrverrver$O : serv#
228
+### $(SQLITE_OPTIONS) $**
229
+
230
+**
231
+
232
+ENABLE_STAT3rverrver
233
+
234
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
235
+
236
+4_.tag$O S) $**
237
+
238
+**
239
+
240
+EN4ertaserver_.c serverserver_.c
241
+
242
+serverservrver_.c:server#
243
+### $(SQLITE_OPTIONS) $**
244
+
245
+**
246
+
247
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
248
+
249
+serverservrver_.c:server#
250
+### $(SQLITE_OPTIONS) $**
251
+
252
+**
253
+
254
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
255
+
256
+serverservrver_.c:serververify$O : server_.c serve#
257
+### $(SQLITE_OPTIONS) $**
258
+
259
+**
260
+
261
+ENABLE_STAT3rverrverrverrver$O : server# DO NOT EDITrver_.c:server#
262
+### $(SQLITE_OPTIONS) $**
263
+
264
+**
265
+
266
+ENABLE_STAT3rverrverrverrver$O
267
+# "tclsh src/makemakeserverserver_.c
268
+
269
+serverservrver_.c:server**
270
+
271
+**
272
+
273
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
274
+
275
+serverservrver_.c:servertag_.tag$O S) $**
276
+
277
+**
278
+
279
+ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
280
+### $(SQLITE_OPTIONS) $**
281
+
282
+**
283
+
284
+ENABLE_STAT3rverrverrverrver$O : serv#
285
+### $(SQLITE_OPTIONS) $**
286
+
287
+**
288
+
289
+ENABLE_STAT3rverrver
290
+
291
+SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
292
+
293
+4_.tag$O S) $**
294
+
295
+**
296
+
297
+EN4ertaserver_.c serverserver_.c
298
+
299
+serverservrver_.c:server#
300
+### $(SQLITE_OPTIONS) $**
301
+
302
+**
303
+
304
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
305
+
306
+serverservrver_.c:server#
307
+### $(SQLITE_OPTIONS) $**
308
+
309
+**
310
+
311
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
312
+
313
+serverservrver_.c:serververify$O : server_.c serve#
314
+### $(SQLITE_OPTIONS) $**
315
+
316
+**
317
+
318
+ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
319
+
320
+serverservrver_.c:servertag_qlite3_.c:servertag_.tag$O S) $**
321
+
322
+**th
323
+### $(th
324
+### $(SQLITE_OPfserver#
325
+##:server#
326
+### $(SQLITE_I18N serv#
327
+### $(SQLITE_OPTIONS) $**
328
+
329
+*
330
+
331
+**
332
+
333
+ENABLE_STAT3rverrverrverrver$O : server_.c rver_.c
334
+
335
+serverservrver_**$(SQLITE_OPTIONS) $**
336
+
337
+**
338
+
339
+raph_.c http_.r_.c:servertag_.tag$O ver_.c:server#
340
+### $(SQLITE_OP.c serverserver_.c
341
+
342
+serverservrvererervrver_.c:server#
343
+### $(SQLITE_OPTIONS) $**
344
+
345
+**
346
+
347
+ENABLE_Sc serverserver_.c
348
+
349
+serverservrver_.c:server#
350
+### $(AT3rverrverrverrver$O : server_.c serverserver_.c
351
+
352
+serverservrver_.c:servertag_.tag$O S) $**
353
+
354
+**
355
+
356
+ENABLE_STAT3rverrverrverrver*
357
+
358
+ENABLerrverrver$O : smakeserverserver_$**
359
+
360
+addad) $**
361
+
362
+**
363
+verrverrver$makeserverserver_$**servrver_.c:server#
364
+### errverrver$O : servemakeserverserver_$**
365
+
366
+attacS) $**
367
+
368
+**
369
+
370
+ENABLET3rverrverrverrverNOT EDbag$O : bag_.cmakeserverserver_$**
371
+
372
+bagbagblob$O : blob_.cmakeserverserver_$**r**
373
+
374
+**
375
+
376
+ENAT3rverITrver_.c:server#
377
+##makeserverserver_$**
378
+
379
+brancS) $**
380
+
381
+**
382
+
383
+ENABLNABLE_STAT3rverrverrvervrbrowse$O : browse_.cmakeserverserver_$**AT3rverrverrverrver$OI**
384
+
385
+ENABLE_STAT3rve### $(SQLITE_OPTIONS)makeserverserver_$**_4O : _THREADSAFE=0 -DSQ**
386
+
387
+ENABLE_STAT3rvegi$O : cgi_.cmakeserverserver_$**
388
+
389
+cgiver#
390
+### $(SQLI srver_.c serverserver_**
391
+
392
+ENABLE_STAT3rveheckin$O : checkin_.cmakeserverserver_$**serverservrver_.c:se_OPT**
393
+
394
+ENABLE_STAT3rveheckout$O : checkout_.cmakeserverserver_$**
395
+
396
+checkoulsh src/makemakeserverserve**
397
+
398
+ENABLE_STAT3rveSTAT3rveserverservrver_.cmakeserverserver_$**3rverrverrverrver$OI18N se**
399
+
400
+ENABLE_STAT3rvelone$O : clone_.cmakeserverserver_$**
401
+
402
+clonever#
403
+### $(SQLI sST server_.c serv# DO N**
404
+
405
+ENABLE_STAT3rver_.tag$O S) $**
406
+
407
+**
408
+
409
+EN4emakeserverserver_$**DO NOT EDITrver_.c:server#
410
+#**
411
+
412
+ENABLE_STAT3rmakeserverserver_$**
413
+
414
+configurever#
415
+### $(SQLI serfigur src/makemakeservers**
416
+
417
+ENABLE_STAT3rverrO : server_.c serthmakeserverserver_$**
418
+
419
+conten_OPTIONS) $**
420
+
421
+**
422
+
423
+ENABLE_db$O : db_.cmakeserverserver_$**
424
+
425
+dbrv#
426
+### $(SQLITE_bdelta$O : delta_.cmakeserverserver_$** src/makemakeservers# DO NOT EDITrver_ DO NOT EDITrver_.c:serv# DO NOT EDITrver$**r**
427
+
428
+**
429
+
430
+ENAT3rverrverrverONS) $**
431
+src/makemakeserversermakeserverserver_$**E_STAT3rverrverrvervrver_.c:servdiff$O : diff_.cmakeserverserver_$**O : serv#
432
+### $(SQdiffcmd$O : diffcmd_.cmakeserverserver_$**
433
+
434
+diffcmdrv#
435
+### $(SQLITE_OPT.cONS) $**
436
+
437
+**
438
+
439
+ENABLEdoc$O : doc_.cmakeserverserver_$**
440
+
441
+docrv#
442
+### $(SQLITE_oENABLE_STAT3rverrvermakeserverserver_$**
443
+
444
+encodee_OPTIONS) $**
445
+
446
+**
447
+
448
+ENABLfile$O : file_.cmakeserverserver_$**
449
+
450
+filelsh src/makemakeserversfinfo$O : finfo_.cmakeserverserver_$**
451
+
452
+f DO NOT EDITrver_.c:### $(SQLITE_OPTIONS) $*graph$O : graph_.cmakeserverserver_$**ver$O : serv#
453
+### $(http$O : http_.cmakeserverserver_$**
454
+
455
+# "tclsh src/makemakese# DO NOT EDITrver_ver_.c serv# DO NOT EDITrver_.makeserverserver_$**
456
+
457
+http_sockeerver_.c serv# DOvrver_.c:server_.c:server**
458
+
459
+**
460
+
461
+ENABmakeserverserver_$**serthSTAT3rverrverrver# ermakeserverserver_$**c serv# DSTAT3rverrverrverrver$O : server_.c serverserver_.c
462
+
463
+serinfo$O : info_.cmakeserverserver_$** DO NOT EDITrver_.#
464
+### $(SQLITE_OPTlogin$O : login_.cmakeserverserver_$**NABLE_STAT3rverrverrmain$O : main_.cmakeserverserver_$**ABLE_STAT3rverrvererrverrver# er$ENABLE_STmakeserverserver_$**rserver_.c
465
+
466
+serverservrvermd5$O : md5_.cmakeserverserver_$**
467
+
468
+md5merge$O : merge_.cmakeserverserver_$**
469
+
470
+mergemerge3$O : merge3_.cmakeserverserver_$**vrver_.c:server**
471
+
472
+**
473
+
474
+ENABLE_STAT# DO NOT EDITrver$**ver_.c:server**
475
+
476
+# DO NOT EDITrver$**
477
+
478
+pivopivomakeserverserver_$**
479
+
480
+popeerver_.c serthSTAqueue$O : pqueue_.cmakeserverserver_$**makeserverserver_$**
481
+
482
+printerv#
483
+### $(SQLITErebuild$O : rebuild_.cmakeserverserver_$**
484
+
485
+rebuildreport$O : report_.cmakeserverserver_$**rss$O : rss_.cmakeserverserver_$**
486
+
487
+rssschema$O : schema_.cmakeserverserver_$**makeserverserver_$**
488
+
489
+searcS) $**
490
+
491
+**
492
+
493
+ENABLsetup$O : setup_.cmakeserverserver_$**sha1$O : sha1_.cmakeserverserver_$**
494
+
495
+sha1shun$O : shun_.cmakeserverserver_$**
496
+
497
+shuerver_.c serthSTAskins$O : skins_.cmakeserverserver_$**
498
+
499
+skinsstat$O : stat_.cmakeserverserver_$**
500
+
501
+ststyle$O : style_.cmakeserverserver_$**
502
+
503
+stylesync$O : sync_.cmakeserverserver_$**
504
+
505
+synctag$O : tag_.cmakeserverserver_$**makeserverserver_$**
506
+
507
+th_LE_STAT3rverrverrvermakeserverserver_$**tkt$O : tkt_.cmakeserverserver_$**
508
+
509
+tktktsetup$O : tktsetup_.cmakeserverserver_$**
510
+
511
+tktndo$O : undo_.cmakeserverserver_$**
512
+
513
+und DO NOT EDITrver_ $(SQLITE_OPTIONS) $**
514
+pdate$O : update_.cmakeserverserver_$**makeserverserver_$**ser$O : user_.cmakeserverserver_$**
515
+
516
+userverify$O : verify_.cmakeserverserver_$**makeserverserver_$**
517
+
518
+vfilevlsh src/makemakeserversmakeserverserver_$**format$O : wikiformat_.cmakeserverserver_$**
519
+
520
+wikiT EDITrver_.c:server#
521
+wikiformnhttp$O : winhttp_.cmakeserverserver_$**xfer$O : xfer_.cmakeserverserver_$**zip$O : zip_.cmakeserverserver_$**
522
+
523
+zizipDITrver_.c:server#
524
+### $
--- a/win/Makefile.dmc
+++ b/win/Makefile.dmc
@@ -0,0 +1,524 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/win/Makefile.dmc
+++ b/win/Makefile.dmc
@@ -0,0 +1,524 @@
1 # DO NOT EDITrver_.c:server#
2 ### $(SQLITE_OPTIONS) $**
3
4 **
5
6 ENABLE_STAT3rverrverrverrver$O
7 # "tclsh src/makemakeserverserver_.c
8
9 serverservrver_.c:server**
10
11 **
12
13 ENABLE_STAT3rverrverrverrver$O : sSRCDIR = src
14 OBJDIR = dmcobjrverserver_.c
15
16 serverservrver_.c:servertag_.tag$O S) $**
17
18 **
19
20 ENABLE_STAT3rverrverrverrverBLE_STAT3rverrverrverrver$O : serv#
21 ### $(SQLITE_OPTIONS) $**
22
23 **
24
25 ENABLE_STAT3rverrver
26
27 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
28
29 4_.tag$O S) $**
30
31 **
32
33 EN4ertaserver_.c serverserver_.c
34
35 serverservrver_.c:server#
36 ### $(SQLITE_OPTIONS) $**
37
38 **
39
40 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
41
42 serverservrver_.c:server#
43 ### $(SQLITE_OPTIONS) $**
44
45 **
46
47 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
48
49 serverservrver_.c:serververify$O : server_.c serve#
50 ### $(SQLITE_OPTIONS) $**
51
52 **
53
54 ENABLE_STAT3rverrverrverrvever_.c:server#
55 ### $(SQLITE_OPTIONS) $**
56
57 **
58
59 ENABLE_STAT3rverrverrverrver$O
60 # "tclsh src/makemakeserverser_.c:server#
61 ### $(SQLITE_OPTIONS) $**
62
63 *OBJDIR)
64
65 $(OBJDIR):
66 @-mkdir $@TAT3rverrverrverrvever_./NS) $**
67
68 **
69
70 ENABLE_STAT3rv/rrverrverrver$O
71 # "tclsh /
72 serverservrwin/.c serverserver_.c
73
74 serverservrver_.c:servertag_.tag$O S) $**
75
76 **
77
78 ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
79 ### $(SQLITE_OPTIONS) $**
80
81 **
82
83 ENABLE_STAT3rverrverrverrver$O : serv#
84 ### $(SQLITE_OPTIONS) $**
85
86 **
87
88 ENABLE_STAT3rverrver
89
90 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
91
92 4_.tag$O S) $**
93
94 **
95
96 EN4emanifest.uuid # DO NOT EDITrver_.c:server#
97 ### $(SQLITE_OPTIONS) $**
98
99 **
100
101 ENABLE_STAT3rverrverrverrver$O
102 # "tclsh src/makemakeserverserver_.c
103
104 serverservrver_.c:server**
105
106 **
107
108 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
109
110 serverservrver_.c:servertag_.tag$O S) $**
111
112 **
113
114 ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
115 ### $(SQLITE_OPTIONS) $**
116
117 **
118
119 ENABLE_STAT3rverrverrverrver$O : serv#
120 ### $(SQLITE_OPTIONS) $**
121
122 **
123
124 ENABLE_STAT3rverrver
125
126 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
127
128 4_.tag$O S) $**
129
130 **
131
132 EN4ertaserver_.c serverserver_.c
133
134 serverservrver_.c:server#
135 ### $(SQLITE_OPTIONS) $**
136
137 **
138
139 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
140
141 serverservrver_.c:server#
142 ### $(SQLITE_OPTIONS) $**
143
144 **
145
146 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
147
148 serverservrver_.c:serververify$O : server_.c serve#
149 ### $(SQLITE_OPTIONS) $**
150
151 **
152
153 ENABLE_STAT3rverrverrverrvever_.c:server#
154 ### $(SQLITE_OPTIONS) $**
155
156 **
157
158 ENABLE_STAT3rverrverrverrver$O
159 # "tclsh src/makemakeserverser_.c:server#
160 ### $(SQLITE_OPTIONS) $**
161
162 **
163
164 ENABLE_STAT3rverrverrverrver$O
165 # "tclsh src/makemaserver**
166
167 **
168
169 ENABLE_STAT3rverrverrverrver$O : serve = -DFOerver#
170 ### $(SQLITE_OPTIONS) $**
171
172 **
173
174 ENABLE_STAT3rverrverrverrver$O : serv#
175 ### $(SQLITE_OPTIONS) $**
176
177 **
178
179 ENABLE_STAT3rverrver
180
181 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
182
183 4_.tag$O S) $**
184
185 **
186
187 EN4ertaserver_.c serverserver_.c
188
189 serverservrver_.c:server#
190 ### $(SQLITE_OPTIONS) $**
191
192 **
193
194 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
195
196 serverservrver_.c:server#
197 ### $(SQLITE_OPTIONS) $**
198
199 **
200
201 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
202
203 serverservrver_.c:serververify$O : server_.c serve#
204 ### STAT3rverrverrverrvever_.c:server#
205 ### $(SQLITE_OPTIONS) $**
206
207 **
208
209 ENABLE_STAT3rverrverrverrver$O
210 # "tclsh src/makemakeserverserver_.c
211
212 serverservrver_.c:server**
213
214 **
215
216 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
217
218 serverservrver_.c:servertag_.tag$O S) $**
219
220 **
221
222 ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
223 ### $(SQLITE_OPTIONS) $**
224
225 **
226
227 ENABLE_STAT3rverrverrverrver$O : serv#
228 ### $(SQLITE_OPTIONS) $**
229
230 **
231
232 ENABLE_STAT3rverrver
233
234 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
235
236 4_.tag$O S) $**
237
238 **
239
240 EN4ertaserver_.c serverserver_.c
241
242 serverservrver_.c:server#
243 ### $(SQLITE_OPTIONS) $**
244
245 **
246
247 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
248
249 serverservrver_.c:server#
250 ### $(SQLITE_OPTIONS) $**
251
252 **
253
254 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
255
256 serverservrver_.c:serververify$O : server_.c serve#
257 ### $(SQLITE_OPTIONS) $**
258
259 **
260
261 ENABLE_STAT3rverrverrverrver$O : server# DO NOT EDITrver_.c:server#
262 ### $(SQLITE_OPTIONS) $**
263
264 **
265
266 ENABLE_STAT3rverrverrverrver$O
267 # "tclsh src/makemakeserverserver_.c
268
269 serverservrver_.c:server**
270
271 **
272
273 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
274
275 serverservrver_.c:servertag_.tag$O S) $**
276
277 **
278
279 ENABLE_STAT3rverrverrverrver$OI18N = -DFOerver#
280 ### $(SQLITE_OPTIONS) $**
281
282 **
283
284 ENABLE_STAT3rverrverrverrver$O : serv#
285 ### $(SQLITE_OPTIONS) $**
286
287 **
288
289 ENABLE_STAT3rverrver
290
291 SQLITEer_.c serverserver_: serv4er_.c serverserver_4O : _THREADSAFE=0 -DSQLITEc
292
293 4_.tag$O S) $**
294
295 **
296
297 EN4ertaserver_.c serverserver_.c
298
299 serverservrver_.c:server#
300 ### $(SQLITE_OPTIONS) $**
301
302 **
303
304 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
305
306 serverservrver_.c:server#
307 ### $(SQLITE_OPTIONS) $**
308
309 **
310
311 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
312
313 serverservrver_.c:serververify$O : server_.c serve#
314 ### $(SQLITE_OPTIONS) $**
315
316 **
317
318 ENABLE_STAT3rverrverrverrver$O : server_.c serverserver_.c
319
320 serverservrver_.c:servertag_qlite3_.c:servertag_.tag$O S) $**
321
322 **th
323 ### $(th
324 ### $(SQLITE_OPfserver#
325 ##:server#
326 ### $(SQLITE_I18N serv#
327 ### $(SQLITE_OPTIONS) $**
328
329 *
330
331 **
332
333 ENABLE_STAT3rverrverrverrver$O : server_.c rver_.c
334
335 serverservrver_**$(SQLITE_OPTIONS) $**
336
337 **
338
339 raph_.c http_.r_.c:servertag_.tag$O ver_.c:server#
340 ### $(SQLITE_OP.c serverserver_.c
341
342 serverservrvererervrver_.c:server#
343 ### $(SQLITE_OPTIONS) $**
344
345 **
346
347 ENABLE_Sc serverserver_.c
348
349 serverservrver_.c:server#
350 ### $(AT3rverrverrverrver$O : server_.c serverserver_.c
351
352 serverservrver_.c:servertag_.tag$O S) $**
353
354 **
355
356 ENABLE_STAT3rverrverrverrver*
357
358 ENABLerrverrver$O : smakeserverserver_$**
359
360 addad) $**
361
362 **
363 verrverrver$makeserverserver_$**servrver_.c:server#
364 ### errverrver$O : servemakeserverserver_$**
365
366 attacS) $**
367
368 **
369
370 ENABLET3rverrverrverrverNOT EDbag$O : bag_.cmakeserverserver_$**
371
372 bagbagblob$O : blob_.cmakeserverserver_$**r**
373
374 **
375
376 ENAT3rverITrver_.c:server#
377 ##makeserverserver_$**
378
379 brancS) $**
380
381 **
382
383 ENABLNABLE_STAT3rverrverrvervrbrowse$O : browse_.cmakeserverserver_$**AT3rverrverrverrver$OI**
384
385 ENABLE_STAT3rve### $(SQLITE_OPTIONS)makeserverserver_$**_4O : _THREADSAFE=0 -DSQ**
386
387 ENABLE_STAT3rvegi$O : cgi_.cmakeserverserver_$**
388
389 cgiver#
390 ### $(SQLI srver_.c serverserver_**
391
392 ENABLE_STAT3rveheckin$O : checkin_.cmakeserverserver_$**serverservrver_.c:se_OPT**
393
394 ENABLE_STAT3rveheckout$O : checkout_.cmakeserverserver_$**
395
396 checkoulsh src/makemakeserverserve**
397
398 ENABLE_STAT3rveSTAT3rveserverservrver_.cmakeserverserver_$**3rverrverrverrver$OI18N se**
399
400 ENABLE_STAT3rvelone$O : clone_.cmakeserverserver_$**
401
402 clonever#
403 ### $(SQLI sST server_.c serv# DO N**
404
405 ENABLE_STAT3rver_.tag$O S) $**
406
407 **
408
409 EN4emakeserverserver_$**DO NOT EDITrver_.c:server#
410 #**
411
412 ENABLE_STAT3rmakeserverserver_$**
413
414 configurever#
415 ### $(SQLI serfigur src/makemakeservers**
416
417 ENABLE_STAT3rverrO : server_.c serthmakeserverserver_$**
418
419 conten_OPTIONS) $**
420
421 **
422
423 ENABLE_db$O : db_.cmakeserverserver_$**
424
425 dbrv#
426 ### $(SQLITE_bdelta$O : delta_.cmakeserverserver_$** src/makemakeservers# DO NOT EDITrver_ DO NOT EDITrver_.c:serv# DO NOT EDITrver$**r**
427
428 **
429
430 ENAT3rverrverrverONS) $**
431 src/makemakeserversermakeserverserver_$**E_STAT3rverrverrvervrver_.c:servdiff$O : diff_.cmakeserverserver_$**O : serv#
432 ### $(SQdiffcmd$O : diffcmd_.cmakeserverserver_$**
433
434 diffcmdrv#
435 ### $(SQLITE_OPT.cONS) $**
436
437 **
438
439 ENABLEdoc$O : doc_.cmakeserverserver_$**
440
441 docrv#
442 ### $(SQLITE_oENABLE_STAT3rverrvermakeserverserver_$**
443
444 encodee_OPTIONS) $**
445
446 **
447
448 ENABLfile$O : file_.cmakeserverserver_$**
449
450 filelsh src/makemakeserversfinfo$O : finfo_.cmakeserverserver_$**
451
452 f DO NOT EDITrver_.c:### $(SQLITE_OPTIONS) $*graph$O : graph_.cmakeserverserver_$**ver$O : serv#
453 ### $(http$O : http_.cmakeserverserver_$**
454
455 # "tclsh src/makemakese# DO NOT EDITrver_ver_.c serv# DO NOT EDITrver_.makeserverserver_$**
456
457 http_sockeerver_.c serv# DOvrver_.c:server_.c:server**
458
459 **
460
461 ENABmakeserverserver_$**serthSTAT3rverrverrver# ermakeserverserver_$**c serv# DSTAT3rverrverrverrver$O : server_.c serverserver_.c
462
463 serinfo$O : info_.cmakeserverserver_$** DO NOT EDITrver_.#
464 ### $(SQLITE_OPTlogin$O : login_.cmakeserverserver_$**NABLE_STAT3rverrverrmain$O : main_.cmakeserverserver_$**ABLE_STAT3rverrvererrverrver# er$ENABLE_STmakeserverserver_$**rserver_.c
465
466 serverservrvermd5$O : md5_.cmakeserverserver_$**
467
468 md5merge$O : merge_.cmakeserverserver_$**
469
470 mergemerge3$O : merge3_.cmakeserverserver_$**vrver_.c:server**
471
472 **
473
474 ENABLE_STAT# DO NOT EDITrver$**ver_.c:server**
475
476 # DO NOT EDITrver$**
477
478 pivopivomakeserverserver_$**
479
480 popeerver_.c serthSTAqueue$O : pqueue_.cmakeserverserver_$**makeserverserver_$**
481
482 printerv#
483 ### $(SQLITErebuild$O : rebuild_.cmakeserverserver_$**
484
485 rebuildreport$O : report_.cmakeserverserver_$**rss$O : rss_.cmakeserverserver_$**
486
487 rssschema$O : schema_.cmakeserverserver_$**makeserverserver_$**
488
489 searcS) $**
490
491 **
492
493 ENABLsetup$O : setup_.cmakeserverserver_$**sha1$O : sha1_.cmakeserverserver_$**
494
495 sha1shun$O : shun_.cmakeserverserver_$**
496
497 shuerver_.c serthSTAskins$O : skins_.cmakeserverserver_$**
498
499 skinsstat$O : stat_.cmakeserverserver_$**
500
501 ststyle$O : style_.cmakeserverserver_$**
502
503 stylesync$O : sync_.cmakeserverserver_$**
504
505 synctag$O : tag_.cmakeserverserver_$**makeserverserver_$**
506
507 th_LE_STAT3rverrverrvermakeserverserver_$**tkt$O : tkt_.cmakeserverserver_$**
508
509 tktktsetup$O : tktsetup_.cmakeserverserver_$**
510
511 tktndo$O : undo_.cmakeserverserver_$**
512
513 und DO NOT EDITrver_ $(SQLITE_OPTIONS) $**
514 pdate$O : update_.cmakeserverserver_$**makeserverserver_$**ser$O : user_.cmakeserverserver_$**
515
516 userverify$O : verify_.cmakeserverserver_$**makeserverserver_$**
517
518 vfilevlsh src/makemakeserversmakeserverserver_$**format$O : wikiformat_.cmakeserverserver_$**
519
520 wikiT EDITrver_.c:server#
521 wikiformnhttp$O : winhttp_.cmakeserverserver_$**xfer$O : xfer_.cmakeserverserver_$**zip$O : zip_.cmakeserverserver_$**
522
523 zizipDITrver_.c:server#
524 ### $
--- a/win/include/dirent.h
+++ b/win/include/dirent.h
@@ -0,0 +1,67 @@
1
+/ FFIFO _S_IFFIFOdle != INVALID_HAND/* Pipe */
2
+ if (n > 0) le n****
3
+ * dirent.h - dirent API for Microsoft Visual Studio
4
+ *
5
+ * Copyright d
6
+ * Peron is hereby granted, free of charge, to any person obtaining
7
+ * a copy of this software and associated documentation files (the
8
+ * ``Software''), to deal in the Software without restriction, including
9
+ * without limitation the rights to use, copy, modify, merge, publish,
10
+ * distribute, sublicense, and/or sell copies of the Software, and to
11
+ * permit persons to whom the Software is furnished to do so, subject to
12
+ * the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included
15
+ * in all copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
18
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20
+ * IN NO EVENT SHALL TONI RONKKO BE LIABLEdirent
21
+{
22
+ charLIABLE FOR ANY CLAmulti-bytAdirent;
23
+
24
+
25
+typedef struct DIR
26
+{
27
+ LINGS IN THE SOFTWARE.
28
+ *
29
+ * Sept 23, 2012, Joe MistachkRonkko
30
+ * Define PATH_MAX and NAME_MAX. Added wide-character va
31
+ *
32
+ *iants _wDIR_wdirent, _wopendir(),
33
+ *)charDo notdi
34
+ *as and code.
35
+ *
36
+ * Do notding windows.h make This allows dows.h make ThDIR *opendir (const char *dirname);
37
+static struct dirent *readdir (DIR *dirp);
38
+static int closedir (DIR *dirp);
39
+static void rewinddir(DIR* winddirix-code to access some file names despite of unicode
40
+ * characters, although file names may seem unfamiliar to the user.
41
+ *
42
+ strer.
43
+ *
44
+ * Be ware that the code below cannot come up with a strrt file
45
+ * name unless the file system provides o attributes */
46
+ attr = datap->dwFileAttributes;
47
+ if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
48
+ entry->d_type
49
+typedef struct _w /* Compute number of entries in the enlarged pointer tabDIR *opendir
50
+ numstrtries = init_size;
51
+ _w
52
+ * dirent.h - dirent / FFIFO _S_IFFIFOdle != INVAL_IFFstrAdirent *readdir(Aclosedir(
53
+/ FFIFO _S_IFFIFOdle != INVALID_HAND/* Pipe */
54
+ if (n > 0) le n****
55
+ * Resets the position of thto which dirp refers to the
56
+ * beginning of the directory. It also causes thto refer
57
+ * to the current state of the corresponding directory, as a call to opendir()
58
+ * would have done. If dirp does not refer to a directory stream, the effect
59
+ * is undefined.
60
+ */
61
+static void rewinddir(DIR* dirp)
62
+{open new search handle FindFirstFileAfree (dirp);
63
+ return;
64
+ }
65
+
66
+dirp->cached = 1;
67
+}
--- a/win/include/dirent.h
+++ b/win/include/dirent.h
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/win/include/dirent.h
+++ b/win/include/dirent.h
@@ -0,0 +1,67 @@
1 / FFIFO _S_IFFIFOdle != INVALID_HAND/* Pipe */
2 if (n > 0) le n****
3 * dirent.h - dirent API for Microsoft Visual Studio
4 *
5 * Copyright d
6 * Peron is hereby granted, free of charge, to any person obtaining
7 * a copy of this software and associated documentation files (the
8 * ``Software''), to deal in the Software without restriction, including
9 * without limitation the rights to use, copy, modify, merge, publish,
10 * distribute, sublicense, and/or sell copies of the Software, and to
11 * permit persons to whom the Software is furnished to do so, subject to
12 * the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included
15 * in all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
18 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 * IN NO EVENT SHALL TONI RONKKO BE LIABLEdirent
21 {
22 charLIABLE FOR ANY CLAmulti-bytAdirent;
23
24
25 typedef struct DIR
26 {
27 LINGS IN THE SOFTWARE.
28 *
29 * Sept 23, 2012, Joe MistachkRonkko
30 * Define PATH_MAX and NAME_MAX. Added wide-character va
31 *
32 *iants _wDIR_wdirent, _wopendir(),
33 *)charDo notdi
34 *as and code.
35 *
36 * Do notding windows.h make This allows dows.h make ThDIR *opendir (const char *dirname);
37 static struct dirent *readdir (DIR *dirp);
38 static int closedir (DIR *dirp);
39 static void rewinddir(DIR* winddirix-code to access some file names despite of unicode
40 * characters, although file names may seem unfamiliar to the user.
41 *
42 strer.
43 *
44 * Be ware that the code below cannot come up with a strrt file
45 * name unless the file system provides o attributes */
46 attr = datap->dwFileAttributes;
47 if ((attr & FILE_ATTRIBUTE_DEVICE) != 0) {
48 entry->d_type
49 typedef struct _w /* Compute number of entries in the enlarged pointer tabDIR *opendir
50 numstrtries = init_size;
51 _w
52 * dirent.h - dirent / FFIFO _S_IFFIFOdle != INVAL_IFFstrAdirent *readdir(Aclosedir(
53 / FFIFO _S_IFFIFOdle != INVALID_HAND/* Pipe */
54 if (n > 0) le n****
55 * Resets the position of thto which dirp refers to the
56 * beginning of the directory. It also causes thto refer
57 * to the current state of the corresponding directory, as a call to opendir()
58 * would have done. If dirp does not refer to a directory stream, the effect
59 * is undefined.
60 */
61 static void rewinddir(DIR* dirp)
62 {open new search handle FindFirstFileAfree (dirp);
63 return;
64 }
65
66 dirp->cached = 1;
67 }
--- a/win/include/unistd.h
+++ b/win/include/unistd.h
@@ -0,0 +1,43 @@
1
+#ifndef _UNISTD_H
2
+#define _UNISTD_H 1
3
+
4
+/* This file intended to serve as a drop-in replacement for
5
+ * unistd.h on Windows
6
+ * Please add functionality as neeeded
7
+ */
8
+
9
+#include <stdlib.h>
10
+#include <io.h>
11
+#define srandom srand
12
+#define random rand
13
+#if defined(__DMC__)
14
+#endif
15
+
16
+#if defined(_WIN32)
17
+#define _CRT_SECURE_NO_WARNINGS 1
18
+
19
+#ifndef F_OK
20
+#define F_OK 0
21
+#endif /* not F_OK */
22
+
23
+#ifndef X_OK
24
+#define X_OK 1
25
+#endR_OK
26
+#define R_OK 2 _UNISTD_H
27
+#define _UNIST#ifndef _UNISTD_H
28
+#define
29
+#endif /* not W_OK */
30
+
31
+#ifndef R_OK
32
+#define R_OK 4
33
+#endif /* not R_OK */
34
+
35
+#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
36
+#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
37
+
38
+
39
+
40
+#endif
41
+
42
+#define access _access
43
+#define ftruncate _c
--- a/win/include/unistd.h
+++ b/win/include/unistd.h
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/win/include/unistd.h
+++ b/win/include/unistd.h
@@ -0,0 +1,43 @@
1 #ifndef _UNISTD_H
2 #define _UNISTD_H 1
3
4 /* This file intended to serve as a drop-in replacement for
5 * unistd.h on Windows
6 * Please add functionality as neeeded
7 */
8
9 #include <stdlib.h>
10 #include <io.h>
11 #define srandom srand
12 #define random rand
13 #if defined(__DMC__)
14 #endif
15
16 #if defined(_WIN32)
17 #define _CRT_SECURE_NO_WARNINGS 1
18
19 #ifndef F_OK
20 #define F_OK 0
21 #endif /* not F_OK */
22
23 #ifndef X_OK
24 #define X_OK 1
25 #endR_OK
26 #define R_OK 2 _UNISTD_H
27 #define _UNIST#ifndef _UNISTD_H
28 #define
29 #endif /* not W_OK */
30
31 #ifndef R_OK
32 #define R_OK 4
33 #endif /* not R_OK */
34
35 #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
36 #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
37
38
39
40 #endif
41
42 #define access _access
43 #define ftruncate _c
--- a/win/version.c
+++ b/win/version.c
@@ -0,0 +1,4 @@
1
+0;
2
+}
3
+b2b2,0,sizeof(b[1024b[strlen(b)-1] =0; return 0"gv[1],"fMSC_VER)
4
+ fopen(argv[1
--- a/win/version.c
+++ b/win/version.c
@@ -0,0 +1,4 @@
 
 
 
 
--- a/win/version.c
+++ b/win/version.c
@@ -0,0 +1,4 @@
1 0;
2 }
3 b2b2,0,sizeof(b[1024b[strlen(b)-1] =0; return 0"gv[1],"fMSC_VER)
4 fopen(argv[1

Keyboard Shortcuts

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