Small. Fast. Reliable.
Choose any three.
This page describes how the source code under configuration management is transformed into a working SQLite library. You do not need to know any of this in order to build SQLite. The makefiles should do everything for you automatically. But many people find a knowledge of what is going on behind the scenes helpful.

SQLite is implemented in ANSI-C. But many of the C code file that are input to the C compiler are generated from other scripts and programs rather than being typed in manually. The following diagram shows the complete build process:

make-lib.gif

In the image above, red ovals are original source files from the configuration management system. Green ovals are C code that is automatically generated. Blue rectangles are build tools and compilers that are needed on the host platform in order to compile SQLite. Yellow rectangles are build tools and compilers for which the source code is part of the SQLite source tree. The final output (the SQLite library) is a purple oval.

To be continued...

Attachments:

  • make-lib.gif 35363 bytes added by drh on 2007-Apr-07 13:34:31 UTC.
    Diagram of SQLite library build process
  • make-amal.gif 37905 bytes added by drh on 2007-Apr-07 13:35:16 UTC.
    Diagram of the process for constructed the source code amalgamation