Fossil SCM

Merge trunk

andygoth 2016-11-06 23:35 UTC andygoth-changes merge
Commit 74a5873cca56f617b2444a8737a3a069f3152fbf
+25 -12
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631631
}
632632
633633
/*
634634
** COMMAND: ls
635635
**
636
-** Usage: %fossil ls ?OPTIONS? ?FILENAMES?
637
-**
638
-** Show the names of all files in the current checkout. The -v provides
639
-** extra information about each file. If FILENAMES are included, only
640
-** the files listed (or their children if they are directories) are shown.
641
-**
642
-** If -r is given a specific check-in is listed. In this case -R can be
643
-** given to query another repository.
636
+** Usage: %fossil ls ?OPTIONS? ?PATHS ...?
637
+**
638
+** List all files in the current checkout. If PATHS is included, only the
639
+** named files (or their children if directories) are shown.
640
+**
641
+** The ls command is essentially two related commands in one, depending on
642
+** whether or not the -r option is given. -r selects a specific check-in
643
+** version to list, in which case -R can be used to select the repository.
644
+** The fine behavior of the --age, -v, and -t options is altered by the -r
645
+** option as well, as explained below.
646
+**
647
+** The --age option displays file commit times. Like -r, --age has the
648
+** side effect of making -t sort by commit time, not modification time.
649
+**
650
+** The -v option provides extra information about each file. Without -r,
651
+** -v displays the change status, in the manner of the changes command.
652
+** With -r, -v shows the commit time and size of the checked-in files.
653
+**
654
+** The -t option changes the sort order. Without -t, files are sorted by
655
+** path and name (case insensitive sort if -r). If neither --age nor -r
656
+** are used, -t sorts by modification time, otherwise by commit time.
644657
**
645658
** Options:
646
-** --age Show when each file was committed
659
+** --age Show when each file was committed.
647660
** -v|--verbose Provide extra information about each file.
648661
** -t Sort output in time order.
649
-** -r VERSION The specific check-in to list
650
-** -R|--repository FILE Extract info from repository FILE
662
+** -r VERSION The specific check-in to list.
663
+** -R|--repository FILE Extract info from repository FILE.
651664
**
652665
** See also: changes, extras, status
653666
*/
654667
void ls_cmd(void){
655668
int vid;
@@ -1729,11 +1742,11 @@
17291742
if( binOk ){
17301743
return 0; /* We don't want binary warnings for this file. */
17311744
}
17321745
if( !fHasNul && fHasLong ){
17331746
zWarning = "long lines";
1734
- zConvert = ""; /* We cannot convert binary files. */
1747
+ zConvert = ""; /* We cannot convert overlong lines. */
17351748
}else{
17361749
zWarning = "binary data";
17371750
zConvert = ""; /* We cannot convert binary files. */
17381751
}
17391752
zDisable = "\"binary-glob\" setting";
17401753
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631 }
632
633 /*
634 ** COMMAND: ls
635 **
636 ** Usage: %fossil ls ?OPTIONS? ?FILENAMES?
637 **
638 ** Show the names of all files in the current checkout. The -v provides
639 ** extra information about each file. If FILENAMES are included, only
640 ** the files listed (or their children if they are directories) are shown.
641 **
642 ** If -r is given a specific check-in is listed. In this case -R can be
643 ** given to query another repository.
 
 
 
 
 
 
 
 
 
 
 
 
 
644 **
645 ** Options:
646 ** --age Show when each file was committed
647 ** -v|--verbose Provide extra information about each file.
648 ** -t Sort output in time order.
649 ** -r VERSION The specific check-in to list
650 ** -R|--repository FILE Extract info from repository FILE
651 **
652 ** See also: changes, extras, status
653 */
654 void ls_cmd(void){
655 int vid;
@@ -1729,11 +1742,11 @@
1729 if( binOk ){
1730 return 0; /* We don't want binary warnings for this file. */
1731 }
1732 if( !fHasNul && fHasLong ){
1733 zWarning = "long lines";
1734 zConvert = ""; /* We cannot convert binary files. */
1735 }else{
1736 zWarning = "binary data";
1737 zConvert = ""; /* We cannot convert binary files. */
1738 }
1739 zDisable = "\"binary-glob\" setting";
1740
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631 }
632
633 /*
634 ** COMMAND: ls
635 **
636 ** Usage: %fossil ls ?OPTIONS? ?PATHS ...?
637 **
638 ** List all files in the current checkout. If PATHS is included, only the
639 ** named files (or their children if directories) are shown.
640 **
641 ** The ls command is essentially two related commands in one, depending on
642 ** whether or not the -r option is given. -r selects a specific check-in
643 ** version to list, in which case -R can be used to select the repository.
644 ** The fine behavior of the --age, -v, and -t options is altered by the -r
645 ** option as well, as explained below.
646 **
647 ** The --age option displays file commit times. Like -r, --age has the
648 ** side effect of making -t sort by commit time, not modification time.
649 **
650 ** The -v option provides extra information about each file. Without -r,
651 ** -v displays the change status, in the manner of the changes command.
652 ** With -r, -v shows the commit time and size of the checked-in files.
653 **
654 ** The -t option changes the sort order. Without -t, files are sorted by
655 ** path and name (case insensitive sort if -r). If neither --age nor -r
656 ** are used, -t sorts by modification time, otherwise by commit time.
657 **
658 ** Options:
659 ** --age Show when each file was committed.
660 ** -v|--verbose Provide extra information about each file.
661 ** -t Sort output in time order.
662 ** -r VERSION The specific check-in to list.
663 ** -R|--repository FILE Extract info from repository FILE.
664 **
665 ** See also: changes, extras, status
666 */
667 void ls_cmd(void){
668 int vid;
@@ -1729,11 +1742,11 @@
1742 if( binOk ){
1743 return 0; /* We don't want binary warnings for this file. */
1744 }
1745 if( !fHasNul && fHasLong ){
1746 zWarning = "long lines";
1747 zConvert = ""; /* We cannot convert overlong lines. */
1748 }else{
1749 zWarning = "binary data";
1750 zConvert = ""; /* We cannot convert binary files. */
1751 }
1752 zDisable = "\"binary-glob\" setting";
1753
+25 -12
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631631
}
632632
633633
/*
634634
** COMMAND: ls
635635
**
636
-** Usage: %fossil ls ?OPTIONS? ?FILENAMES?
637
-**
638
-** Show the names of all files in the current checkout. The -v provides
639
-** extra information about each file. If FILENAMES are included, only
640
-** the files listed (or their children if they are directories) are shown.
641
-**
642
-** If -r is given a specific check-in is listed. In this case -R can be
643
-** given to query another repository.
636
+** Usage: %fossil ls ?OPTIONS? ?PATHS ...?
637
+**
638
+** List all files in the current checkout. If PATHS is included, only the
639
+** named files (or their children if directories) are shown.
640
+**
641
+** The ls command is essentially two related commands in one, depending on
642
+** whether or not the -r option is given. -r selects a specific check-in
643
+** version to list, in which case -R can be used to select the repository.
644
+** The fine behavior of the --age, -v, and -t options is altered by the -r
645
+** option as well, as explained below.
646
+**
647
+** The --age option displays file commit times. Like -r, --age has the
648
+** side effect of making -t sort by commit time, not modification time.
649
+**
650
+** The -v option provides extra information about each file. Without -r,
651
+** -v displays the change status, in the manner of the changes command.
652
+** With -r, -v shows the commit time and size of the checked-in files.
653
+**
654
+** The -t option changes the sort order. Without -t, files are sorted by
655
+** path and name (case insensitive sort if -r). If neither --age nor -r
656
+** are used, -t sorts by modification time, otherwise by commit time.
644657
**
645658
** Options:
646
-** --age Show when each file was committed
659
+** --age Show when each file was committed.
647660
** -v|--verbose Provide extra information about each file.
648661
** -t Sort output in time order.
649
-** -r VERSION The specific check-in to list
650
-** -R|--repository FILE Extract info from repository FILE
662
+** -r VERSION The specific check-in to list.
663
+** -R|--repository FILE Extract info from repository FILE.
651664
**
652665
** See also: changes, extras, status
653666
*/
654667
void ls_cmd(void){
655668
int vid;
@@ -1729,11 +1742,11 @@
17291742
if( binOk ){
17301743
return 0; /* We don't want binary warnings for this file. */
17311744
}
17321745
if( !fHasNul && fHasLong ){
17331746
zWarning = "long lines";
1734
- zConvert = ""; /* We cannot convert binary files. */
1747
+ zConvert = ""; /* We cannot convert overlong lines. */
17351748
}else{
17361749
zWarning = "binary data";
17371750
zConvert = ""; /* We cannot convert binary files. */
17381751
}
17391752
zDisable = "\"binary-glob\" setting";
17401753
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631 }
632
633 /*
634 ** COMMAND: ls
635 **
636 ** Usage: %fossil ls ?OPTIONS? ?FILENAMES?
637 **
638 ** Show the names of all files in the current checkout. The -v provides
639 ** extra information about each file. If FILENAMES are included, only
640 ** the files listed (or their children if they are directories) are shown.
641 **
642 ** If -r is given a specific check-in is listed. In this case -R can be
643 ** given to query another repository.
 
 
 
 
 
 
 
 
 
 
 
 
 
644 **
645 ** Options:
646 ** --age Show when each file was committed
647 ** -v|--verbose Provide extra information about each file.
648 ** -t Sort output in time order.
649 ** -r VERSION The specific check-in to list
650 ** -R|--repository FILE Extract info from repository FILE
651 **
652 ** See also: changes, extras, status
653 */
654 void ls_cmd(void){
655 int vid;
@@ -1729,11 +1742,11 @@
1729 if( binOk ){
1730 return 0; /* We don't want binary warnings for this file. */
1731 }
1732 if( !fHasNul && fHasLong ){
1733 zWarning = "long lines";
1734 zConvert = ""; /* We cannot convert binary files. */
1735 }else{
1736 zWarning = "binary data";
1737 zConvert = ""; /* We cannot convert binary files. */
1738 }
1739 zDisable = "\"binary-glob\" setting";
1740
--- src/checkin.c
+++ src/checkin.c
@@ -631,25 +631,38 @@
631 }
632
633 /*
634 ** COMMAND: ls
635 **
636 ** Usage: %fossil ls ?OPTIONS? ?PATHS ...?
637 **
638 ** List all files in the current checkout. If PATHS is included, only the
639 ** named files (or their children if directories) are shown.
640 **
641 ** The ls command is essentially two related commands in one, depending on
642 ** whether or not the -r option is given. -r selects a specific check-in
643 ** version to list, in which case -R can be used to select the repository.
644 ** The fine behavior of the --age, -v, and -t options is altered by the -r
645 ** option as well, as explained below.
646 **
647 ** The --age option displays file commit times. Like -r, --age has the
648 ** side effect of making -t sort by commit time, not modification time.
649 **
650 ** The -v option provides extra information about each file. Without -r,
651 ** -v displays the change status, in the manner of the changes command.
652 ** With -r, -v shows the commit time and size of the checked-in files.
653 **
654 ** The -t option changes the sort order. Without -t, files are sorted by
655 ** path and name (case insensitive sort if -r). If neither --age nor -r
656 ** are used, -t sorts by modification time, otherwise by commit time.
657 **
658 ** Options:
659 ** --age Show when each file was committed.
660 ** -v|--verbose Provide extra information about each file.
661 ** -t Sort output in time order.
662 ** -r VERSION The specific check-in to list.
663 ** -R|--repository FILE Extract info from repository FILE.
664 **
665 ** See also: changes, extras, status
666 */
667 void ls_cmd(void){
668 int vid;
@@ -1729,11 +1742,11 @@
1742 if( binOk ){
1743 return 0; /* We don't want binary warnings for this file. */
1744 }
1745 if( !fHasNul && fHasLong ){
1746 zWarning = "long lines";
1747 zConvert = ""; /* We cannot convert overlong lines. */
1748 }else{
1749 zWarning = "binary data";
1750 zConvert = ""; /* We cannot convert binary files. */
1751 }
1752 zDisable = "\"binary-glob\" setting";
1753
--- src/config.h
+++ src/config.h
@@ -227,6 +227,11 @@
227227
# define NORETURN __attribute__((__noreturn__))
228228
#else
229229
# define NORETURN
230230
#endif
231231
232
+/*
233
+** Number of elements in an array
234
+*/
235
+#define count(X) (sizeof(X)/sizeof(X[0]))
236
+
232237
#endif /* _RC_COMPILE_ */
233238
--- src/config.h
+++ src/config.h
@@ -227,6 +227,11 @@
227 # define NORETURN __attribute__((__noreturn__))
228 #else
229 # define NORETURN
230 #endif
231
 
 
 
 
 
232 #endif /* _RC_COMPILE_ */
233
--- src/config.h
+++ src/config.h
@@ -227,6 +227,11 @@
227 # define NORETURN __attribute__((__noreturn__))
228 #else
229 # define NORETURN
230 #endif
231
232 /*
233 ** Number of elements in an array
234 */
235 #define count(X) (sizeof(X)/sizeof(X[0]))
236
237 #endif /* _RC_COMPILE_ */
238
-5
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
4949
#ifdef FOSSIL_ENABLE_JSON
5050
# include "cson_amalgamation.h" /* JSON API. */
5151
# include "json_detail.h"
5252
#endif
5353
54
-/*
55
-** Number of elements in an array
56
-*/
57
-#define count(X) (sizeof(X)/sizeof(X[0]))
58
-
5954
/*
6055
** Size of a UUID in characters
6156
*/
6257
#define UUID_SIZE 40
6358
6459
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
49 #ifdef FOSSIL_ENABLE_JSON
50 # include "cson_amalgamation.h" /* JSON API. */
51 # include "json_detail.h"
52 #endif
53
54 /*
55 ** Number of elements in an array
56 */
57 #define count(X) (sizeof(X)/sizeof(X[0]))
58
59 /*
60 ** Size of a UUID in characters
61 */
62 #define UUID_SIZE 40
63
64
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
49 #ifdef FOSSIL_ENABLE_JSON
50 # include "cson_amalgamation.h" /* JSON API. */
51 # include "json_detail.h"
52 #endif
53
 
 
 
 
 
54 /*
55 ** Size of a UUID in characters
56 */
57 #define UUID_SIZE 40
58
59
-5
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
4949
#ifdef FOSSIL_ENABLE_JSON
5050
# include "cson_amalgamation.h" /* JSON API. */
5151
# include "json_detail.h"
5252
#endif
5353
54
-/*
55
-** Number of elements in an array
56
-*/
57
-#define count(X) (sizeof(X)/sizeof(X[0]))
58
-
5954
/*
6055
** Size of a UUID in characters
6156
*/
6257
#define UUID_SIZE 40
6358
6459
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
49 #ifdef FOSSIL_ENABLE_JSON
50 # include "cson_amalgamation.h" /* JSON API. */
51 # include "json_detail.h"
52 #endif
53
54 /*
55 ** Number of elements in an array
56 */
57 #define count(X) (sizeof(X)/sizeof(X[0]))
58
59 /*
60 ** Size of a UUID in characters
61 */
62 #define UUID_SIZE 40
63
64
--- src/main.c
+++ src/main.c
@@ -49,15 +49,10 @@
49 #ifdef FOSSIL_ENABLE_JSON
50 # include "cson_amalgamation.h" /* JSON API. */
51 # include "json_detail.h"
52 #endif
53
 
 
 
 
 
54 /*
55 ** Size of a UUID in characters
56 */
57 #define UUID_SIZE 40
58
59
--- src/makeheaders.html
+++ src/makeheaders.html
@@ -42,11 +42,13 @@
4242
</ul>
4343
<li><a href="#H0015">4.0 Using Makeheaders To Generate Documentation</a>
4444
4545
<li><a href="#H0016">5.0 Compiling The Makeheaders Program</a>
4646
47
-<li><a href="#H0017">6.0 Summary And Conclusion</a>
47
+<li><a href="#H0017">6.0 History</a>
48
+
49
+<li><a href="#H0018">7.0 Summary And Conclusion</a>
4850
</ul><a name="H0002"></a>
4951
<h2>1.0 Background</h2>
5052
5153
<p>
5254
A piece of C source code can be one of two things:
@@ -1094,11 +1096,36 @@
10941096
It is known to compile using several variations of GCC for Unix
10951097
as well as Cygwin32 and MSVC 5.0 for Win32.
10961098
</p>
10971099
10981100
<a name="H0017"></a>
1099
-<h2>6.0 Summary And Conclusion</h2>
1101
+<h2>6.0 History</h2>
1102
+
1103
+<p>
1104
+The makeheaders program was first written by D. Richard Hipp
1105
+(also the original author of
1106
+<a href="https://sqlite.org/">SQLite</a> and
1107
+<a href="https://www.fossil-scm.org/">Fossil</a>) in 1993.
1108
+Hipp open-sourced the project immediately, but it never caught
1109
+on with any other developers and it continued to be used mostly
1110
+by Hipp himself for over a decade. When Hipp was first writing
1111
+the Fossil version control system in 2006 and 2007, he used
1112
+makeheaders on that project to help simplify the source code.
1113
+As the popularity of Fossil increased, the makeheaders
1114
+that was incorporated into the Fossil source tree became the
1115
+"official" makeheaders implementation.
1116
+</p>
1117
+
1118
+<p>
1119
+As this paragraph is being composed (2016-11-05), Fossil is the
1120
+only project known to Hipp that is still using makeheaders. On
1121
+the other hand, makeheaders has served the Fossil project well and
1122
+there are no plans remove it.
1123
+</p>
1124
+
1125
+<a name="H0018"></a>
1126
+<h2>7.0 Summary And Conclusion</h2>
11001127
11011128
<p>
11021129
The makeheaders program will automatically generate a minimal header file
11031130
for each of a set of C source and header files, and will
11041131
generate a composite header file for the entire source file suite,
11051132
--- src/makeheaders.html
+++ src/makeheaders.html
@@ -42,11 +42,13 @@
42 </ul>
43 <li><a href="#H0015">4.0 Using Makeheaders To Generate Documentation</a>
44
45 <li><a href="#H0016">5.0 Compiling The Makeheaders Program</a>
46
47 <li><a href="#H0017">6.0 Summary And Conclusion</a>
 
 
48 </ul><a name="H0002"></a>
49 <h2>1.0 Background</h2>
50
51 <p>
52 A piece of C source code can be one of two things:
@@ -1094,11 +1096,36 @@
1094 It is known to compile using several variations of GCC for Unix
1095 as well as Cygwin32 and MSVC 5.0 for Win32.
1096 </p>
1097
1098 <a name="H0017"></a>
1099 <h2>6.0 Summary And Conclusion</h2>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1100
1101 <p>
1102 The makeheaders program will automatically generate a minimal header file
1103 for each of a set of C source and header files, and will
1104 generate a composite header file for the entire source file suite,
1105
--- src/makeheaders.html
+++ src/makeheaders.html
@@ -42,11 +42,13 @@
42 </ul>
43 <li><a href="#H0015">4.0 Using Makeheaders To Generate Documentation</a>
44
45 <li><a href="#H0016">5.0 Compiling The Makeheaders Program</a>
46
47 <li><a href="#H0017">6.0 History</a>
48
49 <li><a href="#H0018">7.0 Summary And Conclusion</a>
50 </ul><a name="H0002"></a>
51 <h2>1.0 Background</h2>
52
53 <p>
54 A piece of C source code can be one of two things:
@@ -1094,11 +1096,36 @@
1096 It is known to compile using several variations of GCC for Unix
1097 as well as Cygwin32 and MSVC 5.0 for Win32.
1098 </p>
1099
1100 <a name="H0017"></a>
1101 <h2>6.0 History</h2>
1102
1103 <p>
1104 The makeheaders program was first written by D. Richard Hipp
1105 (also the original author of
1106 <a href="https://sqlite.org/">SQLite</a> and
1107 <a href="https://www.fossil-scm.org/">Fossil</a>) in 1993.
1108 Hipp open-sourced the project immediately, but it never caught
1109 on with any other developers and it continued to be used mostly
1110 by Hipp himself for over a decade. When Hipp was first writing
1111 the Fossil version control system in 2006 and 2007, he used
1112 makeheaders on that project to help simplify the source code.
1113 As the popularity of Fossil increased, the makeheaders
1114 that was incorporated into the Fossil source tree became the
1115 "official" makeheaders implementation.
1116 </p>
1117
1118 <p>
1119 As this paragraph is being composed (2016-11-05), Fossil is the
1120 only project known to Hipp that is still using makeheaders. On
1121 the other hand, makeheaders has served the Fossil project well and
1122 there are no plans remove it.
1123 </p>
1124
1125 <a name="H0018"></a>
1126 <h2>7.0 Summary And Conclusion</h2>
1127
1128 <p>
1129 The makeheaders program will automatically generate a minimal header file
1130 for each of a set of C source and header files, and will
1131 generate a composite header file for the entire source file suite,
1132
--- www/makefile.wiki
+++ www/makefile.wiki
@@ -44,49 +44,57 @@
4444
The shell.c source file is code for the SQLite
4545
[http://www.sqlite.org/sqlite.html | command-line shell] that is used
4646
to help implement the [/help/sqlite3 | fossil sql] command. The
4747
shell.c source file is also a byte-for-byte copy of the
4848
shell.c file from the SQLite release.
49
+
50
+The SQLite shell.c file uses the [https://github.com/antirez/linenoise |
51
+linenoise] library to implement line editing. linenoise comprises two
52
+source files which were copied from the upstream repository with only
53
+very minor portability edits:
54
+
55
+ 7. linenoise.c
56
+ 8. linenoise.h
4957
5058
The TH1 script engine is implemented using files:
5159
52
- 7. th.c
53
- 8. th.h
60
+ 9. th.c
61
+ 10. th.h
5462
5563
These two files are imports like the SQLite source files,
5664
and so are not preprocessed.
5765
5866
The VERSION.h header file is generated from other information sources
5967
using a small program called:
6068
61
- 9. mkversion.c
69
+ 11. mkversion.c
6270
6371
The builtin_data.h header file contains the definitions of C-language
6472
byte-array constants that contain various resources such as scripts and
6573
images. The builtin_data.h header file is generate from the original
6674
resource files using a small program called:
6775
68
- 10 mkbuiltin.c
76
+ 12 mkbuiltin.c
6977
7078
The src/ subdirectory also contains documentation about the
7179
makeheaders preprocessor program:
7280
73
- 11. [../src/makeheaders.html | makeheaders.html]
81
+ 13. [../src/makeheaders.html | makeheaders.html]
7482
7583
Click on the link to read this documentation. In addition there is
7684
a [http://www.tcl-lang.org/ | Tcl] script used to build the various makefiles:
7785
78
- 12. makemake.tcl
86
+ 14. makemake.tcl
7987
8088
Running this Tcl script will automatically regenerate all makefiles.
8189
In order to add a new source file to the Fossil implementation, simply
8290
edit makemake.tcl to add the new filename, then rerun the script, and
8391
all of the makefiles for all targets will be rebuild.
8492
8593
Finally, there is one of the makefiles generated by makemake.tcl:
8694
87
- 13. main.mk
95
+ 15. main.mk
8896
8997
The main.mk makefile is invoked from the Makefile in the top-level
9098
directory. The main.mk is generated by makemake.tcl and should not
9199
be hand edited. Other makefiles generated by makemake.tcl are in
92100
other subdirectories (currently all in the win/ subdirectory).
@@ -260,10 +268,13 @@
260268
Fossil needs to be linked against [http://www.zlib.net | zlib]. If
261269
the HTTPS option is enabled, then it will also need to link against
262270
the appropriate SSL implementation. And, of course, Fossil needs to
263271
link against the standard C library. No other libraries or external
264272
dependences are used.
273
+
274
+Fossil includes a copy of [https://github.com/richgel999/miniz | miniz]
275
+which can be used as an alternative to zlib.
265276
266277
<h1>7.0 See Also</h1>
267278
268279
* [./tech_overview.wiki | A Technical Overview Of Fossil]
269280
* [./adding_code.wiki | How To Add Features To Fossil]
270281
--- www/makefile.wiki
+++ www/makefile.wiki
@@ -44,49 +44,57 @@
44 The shell.c source file is code for the SQLite
45 [http://www.sqlite.org/sqlite.html | command-line shell] that is used
46 to help implement the [/help/sqlite3 | fossil sql] command. The
47 shell.c source file is also a byte-for-byte copy of the
48 shell.c file from the SQLite release.
 
 
 
 
 
 
 
 
49
50 The TH1 script engine is implemented using files:
51
52 7. th.c
53 8. th.h
54
55 These two files are imports like the SQLite source files,
56 and so are not preprocessed.
57
58 The VERSION.h header file is generated from other information sources
59 using a small program called:
60
61 9. mkversion.c
62
63 The builtin_data.h header file contains the definitions of C-language
64 byte-array constants that contain various resources such as scripts and
65 images. The builtin_data.h header file is generate from the original
66 resource files using a small program called:
67
68 10 mkbuiltin.c
69
70 The src/ subdirectory also contains documentation about the
71 makeheaders preprocessor program:
72
73 11. [../src/makeheaders.html | makeheaders.html]
74
75 Click on the link to read this documentation. In addition there is
76 a [http://www.tcl-lang.org/ | Tcl] script used to build the various makefiles:
77
78 12. makemake.tcl
79
80 Running this Tcl script will automatically regenerate all makefiles.
81 In order to add a new source file to the Fossil implementation, simply
82 edit makemake.tcl to add the new filename, then rerun the script, and
83 all of the makefiles for all targets will be rebuild.
84
85 Finally, there is one of the makefiles generated by makemake.tcl:
86
87 13. main.mk
88
89 The main.mk makefile is invoked from the Makefile in the top-level
90 directory. The main.mk is generated by makemake.tcl and should not
91 be hand edited. Other makefiles generated by makemake.tcl are in
92 other subdirectories (currently all in the win/ subdirectory).
@@ -260,10 +268,13 @@
260 Fossil needs to be linked against [http://www.zlib.net | zlib]. If
261 the HTTPS option is enabled, then it will also need to link against
262 the appropriate SSL implementation. And, of course, Fossil needs to
263 link against the standard C library. No other libraries or external
264 dependences are used.
 
 
 
265
266 <h1>7.0 See Also</h1>
267
268 * [./tech_overview.wiki | A Technical Overview Of Fossil]
269 * [./adding_code.wiki | How To Add Features To Fossil]
270
--- www/makefile.wiki
+++ www/makefile.wiki
@@ -44,49 +44,57 @@
44 The shell.c source file is code for the SQLite
45 [http://www.sqlite.org/sqlite.html | command-line shell] that is used
46 to help implement the [/help/sqlite3 | fossil sql] command. The
47 shell.c source file is also a byte-for-byte copy of the
48 shell.c file from the SQLite release.
49
50 The SQLite shell.c file uses the [https://github.com/antirez/linenoise |
51 linenoise] library to implement line editing. linenoise comprises two
52 source files which were copied from the upstream repository with only
53 very minor portability edits:
54
55 7. linenoise.c
56 8. linenoise.h
57
58 The TH1 script engine is implemented using files:
59
60 9. th.c
61 10. th.h
62
63 These two files are imports like the SQLite source files,
64 and so are not preprocessed.
65
66 The VERSION.h header file is generated from other information sources
67 using a small program called:
68
69 11. mkversion.c
70
71 The builtin_data.h header file contains the definitions of C-language
72 byte-array constants that contain various resources such as scripts and
73 images. The builtin_data.h header file is generate from the original
74 resource files using a small program called:
75
76 12 mkbuiltin.c
77
78 The src/ subdirectory also contains documentation about the
79 makeheaders preprocessor program:
80
81 13. [../src/makeheaders.html | makeheaders.html]
82
83 Click on the link to read this documentation. In addition there is
84 a [http://www.tcl-lang.org/ | Tcl] script used to build the various makefiles:
85
86 14. makemake.tcl
87
88 Running this Tcl script will automatically regenerate all makefiles.
89 In order to add a new source file to the Fossil implementation, simply
90 edit makemake.tcl to add the new filename, then rerun the script, and
91 all of the makefiles for all targets will be rebuild.
92
93 Finally, there is one of the makefiles generated by makemake.tcl:
94
95 15. main.mk
96
97 The main.mk makefile is invoked from the Makefile in the top-level
98 directory. The main.mk is generated by makemake.tcl and should not
99 be hand edited. Other makefiles generated by makemake.tcl are in
100 other subdirectories (currently all in the win/ subdirectory).
@@ -260,10 +268,13 @@
268 Fossil needs to be linked against [http://www.zlib.net | zlib]. If
269 the HTTPS option is enabled, then it will also need to link against
270 the appropriate SSL implementation. And, of course, Fossil needs to
271 link against the standard C library. No other libraries or external
272 dependences are used.
273
274 Fossil includes a copy of [https://github.com/richgel999/miniz | miniz]
275 which can be used as an alternative to zlib.
276
277 <h1>7.0 See Also</h1>
278
279 * [./tech_overview.wiki | A Technical Overview Of Fossil]
280 * [./adding_code.wiki | How To Add Features To Fossil]
281

Keyboard Shortcuts

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