Documentation Source Text

Check-in [ee2dd30d18]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Various page tweaks. Added the amalgamation.in page. Clicking on the SQLite logo now takes you to the homepage.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: ee2dd30d1859c315a4c4b38494eef5c1e7ea02eb
User & Date: drh 2007-11-14 02:46:23.000
Context
2007-11-14
02:58
The FAQ links to c3ref/ pages instead of capi3ref.html. (check-in: fe967c2c85 user: drh tags: trunk)
02:46
Various page tweaks. Added the amalgamation.in page. Clicking on the SQLite logo now takes you to the homepage. (check-in: ee2dd30d18 user: drh tags: trunk)
01:01
Fix a bug on the download.in page. (check-in: defefcd9eb user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to pages/about.in.
1
2
3
4
5
6
7
8
9
10
<h2>About SQLite</h2>
<p>
SQLite is a small C library that implements a
<a href="selfcontained.html">self-contained</a>, 
<a href="serverless.html">serverless</a>,
<a href="zeroconf.html">zero-configuration</a>,
<a href="transactional.html">transactional</a>
SQL database engine.
</p>



|







1
2
3
4
5
6
7
8
9
10
<h2>About SQLite</h2>
<p>
SQLite is a in-process library that implements a
<a href="selfcontained.html">self-contained</a>, 
<a href="serverless.html">serverless</a>,
<a href="zeroconf.html">zero-configuration</a>,
<a href="transactional.html">transactional</a>
SQL database engine.
</p>

25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<li>Small code footprint: 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SizeOfSqlite">
    less than 250KiB</a> fully configured or less
    than 150KiB with optional features omitted.</li>
<li><a href="speed.html">Faster</a> than popular client/server database
    engines for most common operations.</li>
<li>Simple, easy to use <a href="c3ref/intro.html">API</a>.</li>
<li><a href="tclsqlite.html">TCL bindings</a> included.
    Bindings for many other languages 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">
    available separately.</a></li>
<li>Well-commented source code with over 98% test coverage.</li>
<li>Available as a 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=TheAmalgamation">
    single ANSI-C source-code file</a> that you can easily drop into
    another project.
<li><a href="selfcontained.html">Self-contained</a>:
    no external dependencies.</li>
<li>Cross-platform: Linux (unix), MacOSX, OS/2, Win32 and WinCE are supported
    out of the box.  Easy to port to other systems.
<li>Sources are in the <a href="copyright.html">public domain</a>.
    Use for any purpose.</li>
<li>Comes with a standalone <a href="sqlite.html">command-line interface</a>







|
|




|
|
<







25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

40
41
42
43
44
45
46
<li>Small code footprint: 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SizeOfSqlite">
    less than 250KiB</a> fully configured or less
    than 150KiB with optional features omitted.</li>
<li><a href="speed.html">Faster</a> than popular client/server database
    engines for most common operations.</li>
<li>Simple, easy to use <a href="c3ref/intro.html">API</a>.</li>
<li>Written in ANSI-C.  <a href="tclsqlite.html">TCL bindings</a> included.
    Bindings for dozens of other languages 
    <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">
    available separately.</a></li>
<li>Well-commented source code with over 98% test coverage.</li>
<li>Available as a 
    <a href="amalgamation.html">single ANSI-C source-code file</a> 
    that you can easily drop into another project.

<li><a href="selfcontained.html">Self-contained</a>:
    no external dependencies.</li>
<li>Cross-platform: Linux (unix), MacOSX, OS/2, Win32 and WinCE are supported
    out of the box.  Easy to port to other systems.
<li>Sources are in the <a href="copyright.html">public domain</a>.
    Use for any purpose.</li>
<li>Comes with a standalone <a href="sqlite.html">command-line interface</a>
Added pages/amalgamation.in.
































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<title>The SQLite Amalgamation</title>

<h2>The SQLite Amalgamation</h2>

<p>The core SQLite library consists of about 73 files of C code
(as of version 3.5.2). 
67 of these are "source" files in the sense that they are stored 
in the configuration management system and are maintained directly. 
The other 6 core C files are generated automatically during the 
compilation process.  Of the 73 code files, 57 are C code and 
16 are C header files.</p>

<p>The standard makefiles for SQLite have a target for building
an object we call the "amalgamation".  
The amalgamation is a single C code file, named "sqlite3.c",
that contains all C code 
for the core SQLite library. 
This file contains about 72K lines of code 
(45K if you omit blank lines and comments) and is over 2.3MiB 
in size.</p>

<p>The amalgamation contains everything you need to integrate SQLite 
into a larger project.  Just copy the amalgamation into your source 
directory and compile it together with your other source files. 
You may also want to make use of the "sqlite3.h" header file that 
defines the programming API for SQLite. 
The sqlite3.h header file is available separately. 
The sqlite3.h file is also contained within the amalgamation, in
the first couple of thousand lines. So if you have a copy of 
sqlite3.c but cannot seem to locate sqlite3.h, you can always 
regenerate the sqlite3.h by copying and pasting from the amalgamation.</p>

<p>In addition to making SQLite easier to incorporate into other
projects, the amalgamation also makes it run faster. Many
compilers are able to do additional optimizations on code when 
it is contained with in a single translation unit such as it 
is in the amalgamation. We have measured performance improvements
of between 5 and 10% when we use the amalgamation to compile 
SQLite rather than individual source files.  The downside of this
is that the additional optimizations often take the form of 
function inlining which tends to make the size of the resulting
binary image larger.</p>

<p>The amalgamation and
the sqlite3.h header file are available on
the <a href="download.html">download page</a> as a file 
named sqlite-amalgamation-X_X_X.zip 
where the X's are replaced by the appropriate version number.</p>
Changes to pages/famous.in.
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
</a></td>
<td valign="top">
<a href="http://www.apple.com/">Apple</a> uses SQLite for many functions 
within Mac OS-X, including 
<a href="http://www.apple.com/macosx/features/mail.html">Apple Mail</a>, 
<a href="http://www.apple.com/macosx/features/safari.html">Safari</a>, 
and in <a href="http://www.apple.com/aperature/">Aperture</a>.
There are reports on the internet that Apple also uses SQLite in
the <a href="http://www.apple.com/iphone/">iPhone</a> and in the
<a href="http://www.apple.com/ipodtouch/">iPod touch</a>.
</td></tr>

<tr><td valign="top">
<a href="http://www.mozilla.com/">
<img src="images/foreignlogos/firefox.gif" border="0">
</a>
</td>
<td>
The <a href="http://www.mozilla.com/">Firefox Web Browser</a> from Mozilla 
has been slowly replacing their legacy file format "mork" with SQLite
for about two years.  At this point, SQLite is used to store most of
the persistent metadata in SQLite.
</td></tr>


<tr><td valign="top">
<a href="http://www.ge.com/">
<img src="images/foreignlogos/ge.gif" border="0"></a>
</td><td>







|












|
|







38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
</a></td>
<td valign="top">
<a href="http://www.apple.com/">Apple</a> uses SQLite for many functions 
within Mac OS-X, including 
<a href="http://www.apple.com/macosx/features/mail.html">Apple Mail</a>, 
<a href="http://www.apple.com/macosx/features/safari.html">Safari</a>, 
and in <a href="http://www.apple.com/aperature/">Aperture</a>.
There are unconfirmed reports on the internet that Apple also uses SQLite in
the <a href="http://www.apple.com/iphone/">iPhone</a> and in the
<a href="http://www.apple.com/ipodtouch/">iPod touch</a>.
</td></tr>

<tr><td valign="top">
<a href="http://www.mozilla.com/">
<img src="images/foreignlogos/firefox.gif" border="0">
</a>
</td>
<td>
The <a href="http://www.mozilla.com/">Firefox Web Browser</a> from Mozilla 
has been slowly replacing their legacy file format "mork" with SQLite
for about two years.  At this point, SQLite is used to store most
persistent metadata in Firefox.
</td></tr>


<tr><td valign="top">
<a href="http://www.ge.com/">
<img src="images/foreignlogos/ge.gif" border="0"></a>
</td><td>
Changes to pages/index.in.
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
   <a href="about.html">More info...</a></li>
</td></tr>

<tr><td valign="top">
<b>Current&nbsp;Status</b>
</td><td valign="top">
<li><a href="releaselog/3_5_2.html">Version 3.5.2</a>
of SQLite is stable and is recommended for all users.
There are no known issues effecting database integrity or correctness.</li>
</td></tr>


<tr><td valign="top">
<b>Recent&nbsp;News</b>
</td><td valign="top">
<li> 2007-Nov-05: <a href="news.html#2007_nov_05">Version 3.5.2 released</a>. 







|
<







10
11
12
13
14
15
16
17

18
19
20
21
22
23
24
   <a href="about.html">More info...</a></li>
</td></tr>

<tr><td valign="top">
<b>Current&nbsp;Status</b>
</td><td valign="top">
<li><a href="releaselog/3_5_2.html">Version 3.5.2</a>
of SQLite is stable and is recommended for all users.</li>

</td></tr>


<tr><td valign="top">
<b>Recent&nbsp;News</b>
</td><td valign="top">
<li> 2007-Nov-05: <a href="news.html#2007_nov_05">Version 3.5.2 released</a>. 
Changes to wrap.tcl.
97
98
99
100
101
102
103

104

105
106
107
108
109
110
111
    </style>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  }
  puts {</head>}
  putsin4 {<body>
    <div><!-- container div to satisfy validator -->
    

    <img class="logo" src="${path}images/SQLite.gif" alt="SQLite Logo">

    <div><!-- IE hack to prevent disappearing logo--></div>
    <div class="tagline">The World's Most Widely Used SQL Database.</div>
    
    <table width=100% style="clear:both"><tr><td>
      <div class="se"><div class="sw"><div class="ne"><div class="nw">
      <div class="toolbar">
        <a href="${path}index.html">Home</a>







>
|
>







97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
    </style>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  }
  puts {</head>}
  putsin4 {<body>
    <div><!-- container div to satisfy validator -->
    
    <a href="${path}index.html">
    <img class="logo" src="${path}images/SQLite.gif" alt="SQLite Logo"
     border="0"></a>
    <div><!-- IE hack to prevent disappearing logo--></div>
    <div class="tagline">The World's Most Widely Used SQL Database.</div>
    
    <table width=100% style="clear:both"><tr><td>
      <div class="se"><div class="sw"><div class="ne"><div class="nw">
      <div class="toolbar">
        <a href="${path}index.html">Home</a>