diff options
Diffstat (limited to '')
-rw-r--r-- | libraries/sqlite/unix/sqlite-3.5.1/www/compile.tcl | 278 |
1 files changed, 0 insertions, 278 deletions
diff --git a/libraries/sqlite/unix/sqlite-3.5.1/www/compile.tcl b/libraries/sqlite/unix/sqlite-3.5.1/www/compile.tcl deleted file mode 100644 index bdf7d22..0000000 --- a/libraries/sqlite/unix/sqlite-3.5.1/www/compile.tcl +++ /dev/null | |||
@@ -1,278 +0,0 @@ | |||
1 | # | ||
2 | # Run this Tcl script to generate the compile.html file. | ||
3 | # | ||
4 | set rcsid {$Id: compile.tcl,v 1.5 2005/03/19 15:10:45 drh Exp $ } | ||
5 | source common.tcl | ||
6 | header {Compilation Options For SQLite} | ||
7 | |||
8 | puts { | ||
9 | <h1>Compilation Options For SQLite</h1> | ||
10 | |||
11 | <p> | ||
12 | For most purposes, SQLite can be built just fine using the default | ||
13 | compilation options. However, if required, the compile-time options | ||
14 | documented below can be used to | ||
15 | <a href="#omitfeatures">omit SQLite features</a> (resulting in | ||
16 | a smaller compiled library size) or to change the | ||
17 | <a href="#defaults">default values</a> of some parameters. | ||
18 | </p> | ||
19 | <p> | ||
20 | Every effort has been made to ensure that the various combinations | ||
21 | of compilation options work harmoniously and produce a working library. | ||
22 | Nevertheless, it is strongly recommended that the SQLite test-suite | ||
23 | be executed to check for errors before using an SQLite library built | ||
24 | with non-standard compilation options. | ||
25 | </p> | ||
26 | <a name="defaults"></a> | ||
27 | <h2>Options To Set Default Parameter Values</h2> | ||
28 | |||
29 | <p><b>SQLITE_DEFAULT_AUTOVACUUM=<i><1 or 0></i></b><br> | ||
30 | This macro determines if SQLite creates databases with the | ||
31 | <a href="pragma.html#pragma_auto_vacuum">auto-vacuum</a> | ||
32 | flag set by default. The default value is 0 (do not create auto-vacuum | ||
33 | databases). In any case the compile-time default may be overridden by the | ||
34 | "PRAGMA auto_vacuum" command. | ||
35 | </p> | ||
36 | |||
37 | <p><b>SQLITE_DEFAULT_CACHE_SIZE=<i><pages></i></b><br> | ||
38 | This macro sets the default size of the page-cache for each attached | ||
39 | database, in pages. This can be overridden by the "PRAGMA cache_size" | ||
40 | comamnd. The default value is 2000. | ||
41 | </p> | ||
42 | |||
43 | <p><b>SQLITE_DEFAULT_PAGE_SIZE=<i><bytes></i></b><br> | ||
44 | This macro is used to set the default page-size used when a | ||
45 | database is created. The value assigned must be a power of 2. The | ||
46 | default value is 1024. The compile-time default may be overridden at | ||
47 | runtime by the "PRAGMA page_size" command. | ||
48 | </p> | ||
49 | |||
50 | <p><b>SQLITE_DEFAULT_TEMP_CACHE_SIZE=<i><pages></i></b><br> | ||
51 | This macro sets the default size of the page-cache for temporary files | ||
52 | created by SQLite to store intermediate results, in pages. It does | ||
53 | not affect the page-cache for the temp database, where tables created | ||
54 | using "CREATE TEMP TABLE" are stored. The default value is 500. | ||
55 | </p> | ||
56 | |||
57 | <p><b>SQLITE_MAX_PAGE_SIZE=<i><bytes></i></b><br> | ||
58 | This is used to set the maximum allowable page-size that can | ||
59 | be specified by the "PRAGMA page_size" command. The default value | ||
60 | is 8192. | ||
61 | </p> | ||
62 | |||
63 | <a name="omitfeatures"></a> | ||
64 | <h2>Options To Omit Features</h2> | ||
65 | |||
66 | <p>The following options are used to reduce the size of the compiled | ||
67 | library by omiting optional features. This is probably only useful | ||
68 | in embedded systems where space is especially tight, as even with all | ||
69 | features included the SQLite library is relatively small. Don't forget | ||
70 | to tell your compiler to optimize for binary size! (the -Os option if | ||
71 | using GCC).</p> | ||
72 | |||
73 | <p>The macros in this section do not require values. The following | ||
74 | compilation switches all have the same effect:<br> | ||
75 | -DSQLITE_OMIT_ALTERTABLE<br> | ||
76 | -DSQLITE_OMIT_ALTERTABLE=1<br> | ||
77 | -DSQLITE_OMIT_ALTERTABLE=0 | ||
78 | </p> | ||
79 | |||
80 | <p>If any of these options are defined, then the same set of SQLITE_OMIT_XXX | ||
81 | options must also be defined when using the 'lemon' tool to generate a parse.c | ||
82 | file. Because of this, these options may only used when the library is built | ||
83 | from source, not from the collection of pre-packaged C files provided for | ||
84 | non-UNIX like platforms on the website. | ||
85 | </p> | ||
86 | |||
87 | <p><b>SQLITE_OMIT_ALTERTABLE</b><br> | ||
88 | When this option is defined, the | ||
89 | <a href="lang_altertable.html">ALTER TABLE</a> command is not included in the | ||
90 | library. Executing an ALTER TABLE statement causes a parse error. | ||
91 | </p> | ||
92 | |||
93 | <p><b>SQLITE_OMIT_AUTHORIZATION</b><br> | ||
94 | Defining this option omits the authorization callback feature from the | ||
95 | library. The <a href="capi3ref.html#sqlite3_set_authorizer"> | ||
96 | sqlite3_set_authorizer()</a> API function is not present in the library. | ||
97 | </p> | ||
98 | |||
99 | <p><b>SQLITE_OMIT_AUTOVACUUM</b><br> | ||
100 | If this option is defined, the library cannot create or write to | ||
101 | databases that support | ||
102 | <a href="pragma.html#pragma_auto_vacuum">auto-vacuum</a>. Executing a | ||
103 | "PRAGMA auto_vacuum" statement is not an error, but does not return a value | ||
104 | or modify the auto-vacuum flag in the database file. If a database that | ||
105 | supports auto-vacuum is opened by a library compiled with this option, it | ||
106 | is automatically opened in read-only mode. | ||
107 | </p> | ||
108 | |||
109 | <p><b>SQLITE_OMIT_AUTOINCREMENT</b><br> | ||
110 | This option is used to omit the AUTOINCREMENT functionality. When this | ||
111 | is macro is defined, columns declared as "INTEGER PRIMARY KEY AUTOINCREMENT" | ||
112 | behave in the same way as columns declared as "INTEGER PRIMARY KEY" when a | ||
113 | NULL is inserted. The sqlite_sequence system table is neither created, nor | ||
114 | respected if it already exists. | ||
115 | </p> | ||
116 | <p><i>TODO: Need a link here - AUTOINCREMENT is not yet documented</i><p> | ||
117 | |||
118 | <p><b>SQLITE_OMIT_BLOB_LITERAL</b><br> | ||
119 | When this option is defined, it is not possible to specify a blob in | ||
120 | an SQL statement using the X'ABCD' syntax.</p> | ||
121 | } | ||
122 | #<p>WARNING: The VACUUM command depends on this syntax for vacuuming databases | ||
123 | #that contain blobs, so disabling this functionality may render a database | ||
124 | #unvacuumable. | ||
125 | #</p> | ||
126 | #<p><i>TODO: Need a link here - is that syntax documented anywhere?</i><p> | ||
127 | puts { | ||
128 | |||
129 | <p><b>SQLITE_OMIT_COMPLETE</b><br> | ||
130 | This option causes the <a href="capi3ref.html#sqlite3_complete"> | ||
131 | sqlite3_complete</a> API to be omitted. | ||
132 | </p> | ||
133 | |||
134 | <p><b>SQLITE_OMIT_COMPOUND_SELECT</b><br> | ||
135 | This option is used to omit the compound SELECT functionality. | ||
136 | <a href="lang_select.html">SELECT statements</a> that use the | ||
137 | UNION, UNION ALL, INTERSECT or EXCEPT compound SELECT operators will | ||
138 | cause a parse error. | ||
139 | </p> | ||
140 | |||
141 | <p><b>SQLITE_OMIT_CONFLICT_CLAUSE</b><br> | ||
142 | In the future, this option will be used to omit the | ||
143 | <a href="lang_conflict.html">ON CONFLICT</a> clause from the library. | ||
144 | </p> | ||
145 | |||
146 | <p><b>SQLITE_OMIT_DATETIME_FUNCS</b><br> | ||
147 | If this option is defined, SQLite's built-in date and time manipulation | ||
148 | functions are omitted. Specifically, the SQL functions julianday(), date(), | ||
149 | time(), datetime() and strftime() are not available. The default column | ||
150 | values CURRENT_TIME, CURRENT_DATE and CURRENT_DATETIME are still available. | ||
151 | </p> | ||
152 | |||
153 | <p><b>SQLITE_OMIT_EXPLAIN</b><br> | ||
154 | Defining this option causes the EXPLAIN command to be omitted from the | ||
155 | library. Attempting to execute an EXPLAIN statement will cause a parse | ||
156 | error. | ||
157 | </p> | ||
158 | |||
159 | <p><b>SQLITE_OMIT_FLOATING_POINT</b><br> | ||
160 | This option is used to omit floating-point number support from the SQLite | ||
161 | library. When specified, specifying a floating point number as a literal | ||
162 | (i.e. "1.01") results in a parse error. | ||
163 | </p> | ||
164 | <p>In the future, this option may also disable other floating point | ||
165 | functionality, for example the sqlite3_result_double(), | ||
166 | sqlite3_bind_double(), sqlite3_value_double() and sqlite3_column_double() | ||
167 | API functions. | ||
168 | </p> | ||
169 | |||
170 | <p><b>SQLITE_OMIT_FOREIGN_KEY</b><br> | ||
171 | If this option is defined, FOREIGN KEY clauses in column declarations are | ||
172 | ignored. | ||
173 | </p> | ||
174 | |||
175 | <p><b>SQLITE_OMIT_INTEGRITY_CHECK</b><br> | ||
176 | This option may be used to omit the | ||
177 | <a href="pragma.html#pragma_integrity_check">"PRAGMA integrity_check"</a> | ||
178 | command from the compiled library. | ||
179 | </p> | ||
180 | |||
181 | <p><b>SQLITE_OMIT_MEMORYDB</b><br> | ||
182 | When this is defined, the library does not respect the special database | ||
183 | name ":memory:" (normally used to create an in-memory database). If | ||
184 | ":memory:" is passed to sqlite3_open(), a file with this name will be | ||
185 | opened or created. | ||
186 | </p> | ||
187 | |||
188 | <p><b>SQLITE_OMIT_PAGER_PRAGMAS</b><br> | ||
189 | Defining this option omits pragmas related to the pager subsystem from | ||
190 | the build. Currently, the | ||
191 | <a href="pragma.html#pragma_default_cache_size">default_cache_size</a> and | ||
192 | <a href="pragma.html#pragma_cache_size">cache_size</a> pragmas are omitted. | ||
193 | </p> | ||
194 | |||
195 | <p><b>SQLITE_OMIT_PRAGMA</b><br> | ||
196 | This option is used to omit the <a href="pragma.html">PRAGMA command</a> | ||
197 | from the library. Note that it is useful to define the macros that omit | ||
198 | specific pragmas in addition to this, as they may also remove supporting code | ||
199 | in other sub-systems. This macro removes the PRAGMA command only. | ||
200 | </p> | ||
201 | |||
202 | <p><b>SQLITE_OMIT_PROGRESS_CALLBACK</b><br> | ||
203 | This option may be defined to omit the capability to issue "progress" | ||
204 | callbacks during long-running SQL statements. The | ||
205 | <a href="capi3ref.html#sqlite3_progress_handler">sqlite3_progress_handler()</a> | ||
206 | API function is not present in the library. | ||
207 | |||
208 | <p><b>SQLITE_OMIT_REINDEX</b><br> | ||
209 | When this option is defined, the <a href="lang_reindex.html">REINDEX</a> | ||
210 | command is not included in the library. Executing a REINDEX statement causes | ||
211 | a parse error. | ||
212 | </p> | ||
213 | |||
214 | <p><b>SQLITE_OMIT_SCHEMA_PRAGMAS</b><br> | ||
215 | Defining this option omits pragmas for querying the database schema from | ||
216 | the build. Currently, the | ||
217 | <a href="pragma.html#pragma_table_info">table_info</a>, | ||
218 | <a href="pragma.html#pragma_index_info">index_info</a>, | ||
219 | <a href="pragma.html#pragma_index_list">index_list</a> and | ||
220 | <a href="pragma.html#pragma_database_list">database_list</a> | ||
221 | pragmas are omitted. | ||
222 | </p> | ||
223 | |||
224 | <p><b>SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS</b><br> | ||
225 | Defining this option omits pragmas for querying and modifying the | ||
226 | database schema version and user version from the build. Specifically, the | ||
227 | <a href="pragma.html#pragma_schema_version">schema_version</a> and | ||
228 | <a href="pragma.html#pragma_user_version">user_version</a> | ||
229 | pragmas are omitted. | ||
230 | |||
231 | <p><b>SQLITE_OMIT_SUBQUERY</b><br> | ||
232 | <p>If defined, support for sub-selects and the IN() operator are omitted. | ||
233 | </p> | ||
234 | |||
235 | <p><b>SQLITE_OMIT_TCL_VARIABLE</b><br> | ||
236 | <p>If this macro is defined, then the special "$<variable-name>" syntax | ||
237 | used to automatically bind SQL variables to TCL variables is omitted. | ||
238 | </p> | ||
239 | |||
240 | <p><b>SQLITE_OMIT_TRIGGER</b><br> | ||
241 | Defining this option omits support for VIEW objects. Neither the | ||
242 | <a href="lang_createtrigger.html">CREATE TRIGGER</a> or | ||
243 | <a href="lang_droptrigger.html">DROP TRIGGER</a> | ||
244 | commands are available in this case, attempting to execute either will result | ||
245 | in a parse error. | ||
246 | </p> | ||
247 | <p> | ||
248 | WARNING: If this macro is defined, it will not be possible to open a database | ||
249 | for which the schema contains TRIGGER objects. | ||
250 | </p> | ||
251 | |||
252 | <p><b>SQLITE_OMIT_UTF16</b><br> | ||
253 | This macro is used to omit support for UTF16 text encoding. When this is | ||
254 | defined all API functions that return or accept UTF16 encoded text are | ||
255 | unavailable. These functions can be identified by the fact that they end | ||
256 | with '16', for example sqlite3_prepare16(), sqlite3_column_text16() and | ||
257 | sqlite3_bind_text16(). | ||
258 | </p> | ||
259 | |||
260 | <p><b>SQLITE_OMIT_VACUUM</b><br> | ||
261 | When this option is defined, the <a href="lang_vacuum.html">VACUUM</a> | ||
262 | command is not included in the library. Executing a VACUUM statement causes | ||
263 | a parse error. | ||
264 | </p> | ||
265 | |||
266 | <p><b>SQLITE_OMIT_VIEW</b><br> | ||
267 | Defining this option omits support for VIEW objects. Neither the | ||
268 | <a href="lang_createview.html">CREATE VIEW</a> or | ||
269 | <a href="lang_dropview.html">DROP VIEW</a> | ||
270 | commands are available in this case, attempting to execute either will result | ||
271 | in a parse error. | ||
272 | </p> | ||
273 | <p> | ||
274 | WARNING: If this macro is defined, it will not be possible to open a database | ||
275 | for which the schema contains VIEW objects. | ||
276 | </p> | ||
277 | } | ||
278 | footer $rcsid | ||