File Annotation
Not logged in
0e265b0184 2007-08-01       drh: All of the source code for fossil is contained in the src/ subdirectory.
0e265b0184 2007-08-01       drh: But there is a lot of generated code, so you will probably want to
0e265b0184 2007-08-01       drh: use the Makefile.  To do a complete build, just type:
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh:    make
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: That should work out-of-the-box on Macs and Linux systems.  If
0e265b0184 2007-08-01       drh: you have trouble, or you want to do something fancy, just edit
0e265b0184 2007-08-01       drh: the Makefile in the top-level folder.  There are 5 things you
0e265b0184 2007-08-01       drh: might want to change in the Makefile.  All 5 things are well
0e265b0184 2007-08-01       drh: commented.  The complete Makefile is only a few dozen lines long.
0e265b0184 2007-08-01       drh: Do not be intimidated.
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: --------------------------------------------------------------------------
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: Here are some notes on what is happening behind the scenes:
0e265b0184 2007-08-01       drh: 
713b8be852 2009-08-28       drh: * The Makefile just sets up a few macros and then invokes the
0e265b0184 2007-08-01       drh:   real makefile in src/main.mk.  The src/main.mk makefile is
0e265b0184 2007-08-01       drh:   automatically generated by a TCL script found at src/makemake.tcl.
0e265b0184 2007-08-01       drh:   Do not edit src/main.mk directly.  Update src/makemake.tcl and
0e265b0184 2007-08-01       drh:   then rerun it.
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: * The *.h header files are automatically generated using a program
0e265b0184 2007-08-01       drh:   called "makeheaders".  Source code to the makeheaders program is
0e265b0184 2007-08-01       drh:   found in src/makeheaders.c.  Documentation is found in
0e265b0184 2007-08-01       drh:   src/makeheaders.html.
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: * Most *.c source files are preprocessed using a program called
0e265b0184 2007-08-01       drh:   "translate".  The sources to translate are found in src/translate.c.
0e265b0184 2007-08-01       drh:   A header comment in src/translate.c explains in detail what it does.
0e265b0184 2007-08-01       drh: 
0e265b0184 2007-08-01       drh: * The src/mkindex.c program generates some C code that implements
0e265b0184 2007-08-01       drh:   static lookup tables.  See the header comment in the source code
0e265b0184 2007-08-01       drh:   for details on what it does.