mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-07 02:42:48 +03:00
Handle non-autoconf build correctly with new changes (CVS 4832)
FossilOrigin-Name: e2a9f5f1054f077e4773dd3d2c8f2ce5be118a01
This commit is contained in:
7
README
7
README
@@ -17,15 +17,14 @@ For example:
|
|||||||
make ;# Run the makefile.
|
make ;# Run the makefile.
|
||||||
make install ;# (Optional) Install the build products
|
make install ;# (Optional) Install the build products
|
||||||
|
|
||||||
The configure script uses autoconf 2.50 and libtool. If the configure
|
The configure script uses autoconf 2.61 and libtool. If the configure
|
||||||
script does not work out for you, there is a generic makefile named
|
script does not work out for you, there is a generic makefile named
|
||||||
"Makefile.linux-gcc" in the top directory of the source tree that you
|
"Makefile.linux-gcc" in the top directory of the source tree that you
|
||||||
can copy and edit to suite your needs. Comments on the generic makefile
|
can copy and edit to suit your needs. Comments on the generic makefile
|
||||||
show what changes are needed.
|
show what changes are needed.
|
||||||
|
|
||||||
The linux binaries on the website are created using the generic makefile,
|
The linux binaries on the website are created using the generic makefile,
|
||||||
not the configure script. The configure script is unmaintained. (You
|
not the configure script.
|
||||||
can volunteer to take over maintenance of the configure script, if you want!)
|
|
||||||
The windows binaries on the website are created using MinGW32 configured
|
The windows binaries on the website are created using MinGW32 configured
|
||||||
as a cross-compiler running under Linux. For details, see the ./publish.sh
|
as a cross-compiler running under Linux. For details, see the ./publish.sh
|
||||||
script at the top-level of the source tree.
|
script at the top-level of the source tree.
|
||||||
|
6
main.mk
6
main.mk
@@ -92,7 +92,9 @@ SRC = \
|
|||||||
$(TOP)/src/btreeInt.h \
|
$(TOP)/src/btreeInt.h \
|
||||||
$(TOP)/src/build.c \
|
$(TOP)/src/build.c \
|
||||||
$(TOP)/src/callback.c \
|
$(TOP)/src/callback.c \
|
||||||
|
$(TOP)/src/common.h \
|
||||||
$(TOP)/src/complete.c \
|
$(TOP)/src/complete.c \
|
||||||
|
$(TOP)/src/config.h \
|
||||||
$(TOP)/src/date.c \
|
$(TOP)/src/date.c \
|
||||||
$(TOP)/src/delete.c \
|
$(TOP)/src/delete.c \
|
||||||
$(TOP)/src/expr.c \
|
$(TOP)/src/expr.c \
|
||||||
@@ -256,7 +258,9 @@ HDR = \
|
|||||||
$(TOP)/src/sqliteInt.h \
|
$(TOP)/src/sqliteInt.h \
|
||||||
$(TOP)/src/sqliteLimit.h \
|
$(TOP)/src/sqliteLimit.h \
|
||||||
$(TOP)/src/vdbe.h \
|
$(TOP)/src/vdbe.h \
|
||||||
$(TOP)/src/vdbeInt.h
|
$(TOP)/src/vdbeInt.h \
|
||||||
|
$(TOP)/src/common.h \
|
||||||
|
$(TOP)/src/config.h
|
||||||
|
|
||||||
# Header files used by extensions
|
# Header files used by extensions
|
||||||
#
|
#
|
||||||
|
32
manifest
32
manifest
@@ -1,9 +1,9 @@
|
|||||||
C Typo\sin\samalgamation\snon-x86\sbuilds\s(CVS\s4831)
|
C Handle\snon-autoconf\sbuild\scorrectly\swith\snew\schanges\s(CVS\s4832)
|
||||||
D 2008-03-06T09:19:00
|
D 2008-03-06T09:58:50
|
||||||
F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
|
F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
|
||||||
F Makefile.in dbb064b7fca107aff4a722a3ee801af26dcda270
|
F Makefile.in dbb064b7fca107aff4a722a3ee801af26dcda270
|
||||||
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
||||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
F README b974cdc3f9f12b87e851b04e75996d720ebf81ac
|
||||||
F VERSION 2e206fc9458bf10a8c3ba2d13bf521a04ef441c6
|
F VERSION 2e206fc9458bf10a8c3ba2d13bf521a04ef441c6
|
||||||
F aclocal.m4 d20ba55930a05197b484809fba1d2b603f4e67a6
|
F aclocal.m4 d20ba55930a05197b484809fba1d2b603f4e67a6
|
||||||
F addopcodes.awk 701697fae48376375ec8532c3d04e910cfeef352
|
F addopcodes.awk 701697fae48376375ec8532c3d04e910cfeef352
|
||||||
@@ -64,7 +64,7 @@ F ext/icu/README.txt 3b130aa66e7a681136f6add198b076a2f90d1e33
|
|||||||
F ext/icu/icu.c 12e763d288d23b5a49de37caa30737b971a2f1e2
|
F ext/icu/icu.c 12e763d288d23b5a49de37caa30737b971a2f1e2
|
||||||
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
|
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
|
||||||
F ltmain.sh 56abb507100ed2d4261f6dd1653dec3cf4066387
|
F ltmain.sh 56abb507100ed2d4261f6dd1653dec3cf4066387
|
||||||
F main.mk 648992e13f77f6039b2824bd97c8853beea20dbd
|
F main.mk b0efbefa019837607cdb16b63fdac6ff581dd957
|
||||||
F mkdll.sh 712e74f3efe08a6ba12b2945d018a29a89d7fe3b
|
F mkdll.sh 712e74f3efe08a6ba12b2945d018a29a89d7fe3b
|
||||||
F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f
|
F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f
|
||||||
F mkextw.sh 1a866b53637dab137191341cc875575a5ca110fb
|
F mkextw.sh 1a866b53637dab137191341cc875575a5ca110fb
|
||||||
@@ -87,9 +87,9 @@ F src/btmutex.c 483ced3c52205b04b97df69161fadbf87f4f1ea2
|
|||||||
F src/btree.c 439e2684892d2b70996dc3c5fba25e07949e1d84
|
F src/btree.c 439e2684892d2b70996dc3c5fba25e07949e1d84
|
||||||
F src/btree.h 19dcf5ad23c17b98855da548e9a8e3eb4429d5eb
|
F src/btree.h 19dcf5ad23c17b98855da548e9a8e3eb4429d5eb
|
||||||
F src/btreeInt.h d7d2f4d9d7f2e72c455326d48b2b478b842a81f6
|
F src/btreeInt.h d7d2f4d9d7f2e72c455326d48b2b478b842a81f6
|
||||||
F src/build.c 19990e2ce78806e854b5baaa18a77b540a476bbb
|
F src/build.c fa70bc0fb02e4d08202dd6a752ab5f5df5676e50
|
||||||
F src/callback.c 77b302b0d41468dcda78c70e706e5b84577f0fa0
|
F src/callback.c 77b302b0d41468dcda78c70e706e5b84577f0fa0
|
||||||
F src/common.h 25fa5524ee3d2617986a3ec1ba59fef195d2d009
|
F src/common.h 8240a944830058663fd5825482a5d813b206fcb1
|
||||||
F src/complete.c 4cf68fd75d60257524cbe74f87351b9848399131
|
F src/complete.c 4cf68fd75d60257524cbe74f87351b9848399131
|
||||||
F src/config.h b60286b542f5284d529b659adcb9c9d25eecab20
|
F src/config.h b60286b542f5284d529b659adcb9c9d25eecab20
|
||||||
F src/config.h.in 276f8e51e2daf0a19136c28678ec93542ac0ebe7
|
F src/config.h.in 276f8e51e2daf0a19136c28678ec93542ac0ebe7
|
||||||
@@ -98,10 +98,10 @@ F src/delete.c fa13c296262e89c32d28949f15be275e52d7f524
|
|||||||
F src/experimental.c 1b2d1a6cd62ecc39610e97670332ca073c50792b
|
F src/experimental.c 1b2d1a6cd62ecc39610e97670332ca073c50792b
|
||||||
F src/expr.c e6fb42c6e55fd9526174b1cb8296b69a60a6688a
|
F src/expr.c e6fb42c6e55fd9526174b1cb8296b69a60a6688a
|
||||||
F src/fault.c 049b88b8ba0a1db3240aeaf9695cd08b9a3ba9e1
|
F src/fault.c 049b88b8ba0a1db3240aeaf9695cd08b9a3ba9e1
|
||||||
F src/func.c 6d6d4817b4597d2bd08cbc525ba29164eae6c4bc
|
F src/func.c a4f06d8a1d7e4c8c8755a59d1310141b7c090bd9
|
||||||
F src/hash.c 53655c312280211444bfe23af6490a460aec2980
|
F src/hash.c 53655c312280211444bfe23af6490a460aec2980
|
||||||
F src/hash.h 031cd9f915aff27e12262cb9eb570ac1b8326b53
|
F src/hash.h 031cd9f915aff27e12262cb9eb570ac1b8326b53
|
||||||
F src/insert.c 6c64040d218506562c30925e8fb2d41fc71e646b
|
F src/insert.c 3eb3d0b739eb318c7435b9da35330e2e893e3b78
|
||||||
F src/journal.c 807bed7a158979ac8d63953e1774e8d85bff65e2
|
F src/journal.c 807bed7a158979ac8d63953e1774e8d85bff65e2
|
||||||
F src/legacy.c cb1939fdeb91ea88fb44fbd2768a10e14bc44650
|
F src/legacy.c cb1939fdeb91ea88fb44fbd2768a10e14bc44650
|
||||||
F src/limits.h 71ab25f17e35e0a9f3f6f234b8ed49cc56731d35
|
F src/limits.h 71ab25f17e35e0a9f3f6f234b8ed49cc56731d35
|
||||||
@@ -142,9 +142,9 @@ F src/server.c 087b92a39d883e3fa113cae259d64e4c7438bc96
|
|||||||
F src/shell.c 22297fffa6f00a6c6d44020fa13b1184a1bb372d
|
F src/shell.c 22297fffa6f00a6c6d44020fa13b1184a1bb372d
|
||||||
F src/sqlite.h.in b8158aa606f0b39426d63132ae0530d91c021abb
|
F src/sqlite.h.in b8158aa606f0b39426d63132ae0530d91c021abb
|
||||||
F src/sqlite3ext.h 50c70a894ffe8e6ada5948c89b91db0a80a6b2a7
|
F src/sqlite3ext.h 50c70a894ffe8e6ada5948c89b91db0a80a6b2a7
|
||||||
F src/sqliteInt.h 9dad69a38bab6d9284af99d57004c416437db76a
|
F src/sqliteInt.h 3b4240e95002593b3ac6b87fd023c3de6b079df6
|
||||||
F src/sqliteLimit.h ee4430f88f69bf63527967bb35ca52af7b0ccb1e
|
F src/sqliteLimit.h ee4430f88f69bf63527967bb35ca52af7b0ccb1e
|
||||||
F src/table.c c688f2679d3b2221bc122afdc6771fa34813493d
|
F src/table.c 2c48c575dd59b3a6c5c306bc55f51a9402cf429a
|
||||||
F src/tclsqlite.c d95e0e74c7167b2807f9f4f73bf45f7c58096297
|
F src/tclsqlite.c d95e0e74c7167b2807f9f4f73bf45f7c58096297
|
||||||
F src/test1.c c3d43a6bd299f3c115f6617af6715004819ca5cb
|
F src/test1.c c3d43a6bd299f3c115f6617af6715004819ca5cb
|
||||||
F src/test2.c 355d5693ca3ee705548fa7f795592a37b2372b70
|
F src/test2.c 355d5693ca3ee705548fa7f795592a37b2372b70
|
||||||
@@ -179,11 +179,11 @@ F src/vdbe.c a172f5134d19ae910134e28987bf7906523c9b6f
|
|||||||
F src/vdbe.h 58a7d931ffb704e034b2a725981cfa5bd406fad9
|
F src/vdbe.h 58a7d931ffb704e034b2a725981cfa5bd406fad9
|
||||||
F src/vdbeInt.h 76c81d057a39813de0fda3cad1498655d53ec69d
|
F src/vdbeInt.h 76c81d057a39813de0fda3cad1498655d53ec69d
|
||||||
F src/vdbeapi.c cf9fc963efae3cdf5de08e2a9718b487059c7fc5
|
F src/vdbeapi.c cf9fc963efae3cdf5de08e2a9718b487059c7fc5
|
||||||
F src/vdbeaux.c e88a296bc64783efd4ea699fcac2f8cdbdc88a23
|
F src/vdbeaux.c 83e34e38706889a16fbd77fce3777390d425af79
|
||||||
F src/vdbeblob.c 63c750acc7b5012479f508c0e9627372a82cb65d
|
F src/vdbeblob.c 63c750acc7b5012479f508c0e9627372a82cb65d
|
||||||
F src/vdbefifo.c a30c237b2a3577e1415fb6e288cbb6b8ed1e5736
|
F src/vdbefifo.c a30c237b2a3577e1415fb6e288cbb6b8ed1e5736
|
||||||
F src/vdbemem.c 7812a0fa480bada1c661da76783d59099a4e3bf3
|
F src/vdbemem.c b77819155eb2f07bd369e590544e3b2ca4526745
|
||||||
F src/vtab.c 641bafa5d8ca9448307f0e2a389844a5c7f86728
|
F src/vtab.c 00cd16317b29495c185ff40e4b227917d5a371b2
|
||||||
F src/where.c c5eaca1f2d9caa20c5c7096434ccde2be03b325c
|
F src/where.c c5eaca1f2d9caa20c5c7096434ccde2be03b325c
|
||||||
F tclinstaller.tcl 4356d9d94d2b5ed5e68f9f0c80c4df3048dd7617
|
F tclinstaller.tcl 4356d9d94d2b5ed5e68f9f0c80c4df3048dd7617
|
||||||
F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
|
F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2
|
||||||
@@ -624,7 +624,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130
|
|||||||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||||
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
|
F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
|
||||||
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
|
F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
|
||||||
P 9898320be05cdbe78dac799f3fef34dccb644ca8
|
P a8424e06064ee356db8231820737a7d5ba722873
|
||||||
R 50f5338f0bca04916e37025aa0109e81
|
R 0021bc64720ffa75da297f69f183d54b
|
||||||
U mlcreech
|
U mlcreech
|
||||||
Z c37d237b5c24169a3424e40b047eb89c
|
Z fd997a43b8675ba941a31b1ef9bdb27a
|
||||||
|
@@ -1 +1 @@
|
|||||||
a8424e06064ee356db8231820737a7d5ba722873
|
e2a9f5f1054f077e4773dd3d2c8f2ce5be118a01
|
@@ -22,7 +22,7 @@
|
|||||||
** COMMIT
|
** COMMIT
|
||||||
** ROLLBACK
|
** ROLLBACK
|
||||||
**
|
**
|
||||||
** $Id: build.c,v 1.473 2008/03/06 07:35:22 mlcreech Exp $
|
** $Id: build.c,v 1.474 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
@@ -2283,7 +2283,7 @@ static void sqlite3RefillIndex(Parse *pParse, Index *pIndex, int memRootPage){
|
|||||||
regRowid = regIdxKey + pIndex->nColumn;
|
regRowid = regIdxKey + pIndex->nColumn;
|
||||||
j1 = sqlite3VdbeAddOp3(v, OP_IsNull, regIdxKey, 0, pIndex->nColumn);
|
j1 = sqlite3VdbeAddOp3(v, OP_IsNull, regIdxKey, 0, pIndex->nColumn);
|
||||||
j2 = sqlite3VdbeAddOp4(v, OP_IsUnique, iIdx,
|
j2 = sqlite3VdbeAddOp4(v, OP_IsUnique, iIdx,
|
||||||
0, regRowid, (char*)(intptr_t)regRecord, P4_INT32);
|
0, regRowid, (char*)(sqlite3_intptr_t)regRecord, P4_INT32);
|
||||||
sqlite3VdbeAddOp4(v, OP_Halt, SQLITE_CONSTRAINT, OE_Abort, 0,
|
sqlite3VdbeAddOp4(v, OP_Halt, SQLITE_CONSTRAINT, OE_Abort, 0,
|
||||||
"indexed columns are not unique", P4_STATIC);
|
"indexed columns are not unique", P4_STATIC);
|
||||||
sqlite3VdbeJumpHere(v, j1);
|
sqlite3VdbeJumpHere(v, j1);
|
||||||
|
10
src/common.h
10
src/common.h
@@ -11,7 +11,7 @@
|
|||||||
*************************************************************************
|
*************************************************************************
|
||||||
** Common includes/defines based on output of configure script
|
** Common includes/defines based on output of configure script
|
||||||
**
|
**
|
||||||
** @(#) $Id: common.h,v 1.1 2008/03/06 07:36:18 mlcreech Exp $
|
** @(#) $Id: common.h,v 1.2 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#ifndef _COMMON_H_
|
#ifndef _COMMON_H_
|
||||||
#define _COMMON_H_
|
#define _COMMON_H_
|
||||||
@@ -47,11 +47,9 @@
|
|||||||
** practically it's == sizeof(void *)). We fall back to an int if this type
|
** practically it's == sizeof(void *)). We fall back to an int if this type
|
||||||
** isn't defined.
|
** isn't defined.
|
||||||
*/
|
*/
|
||||||
#ifndef HAVE_INTPTR_T
|
#ifdef HAVE_INTPTR_T
|
||||||
typedef int intptr_t;
|
typedef intptr_t sqlite3_intptr_t;
|
||||||
#endif
|
# define __sqlite3_intptr_defined
|
||||||
#ifndef HAVE_UINTPTR_T
|
|
||||||
typedef unsigned int uintptr_t;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
10
src/func.c
10
src/func.c
@@ -16,7 +16,7 @@
|
|||||||
** sqliteRegisterBuildinFunctions() found at the bottom of the file.
|
** sqliteRegisterBuildinFunctions() found at the bottom of the file.
|
||||||
** All other code has file scope.
|
** All other code has file scope.
|
||||||
**
|
**
|
||||||
** $Id: func.c,v 1.185 2008/03/06 07:35:22 mlcreech Exp $
|
** $Id: func.c,v 1.186 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
@@ -875,7 +875,7 @@ static void trimFunc(
|
|||||||
const unsigned char *zIn; /* Input string */
|
const unsigned char *zIn; /* Input string */
|
||||||
const unsigned char *zCharSet; /* Set of characters to trim */
|
const unsigned char *zCharSet; /* Set of characters to trim */
|
||||||
int nIn; /* Number of bytes in input */
|
int nIn; /* Number of bytes in input */
|
||||||
intptr_t flags; /* 1: trimleft 2: trimright 3: trim */
|
sqlite3_intptr_t flags; /* 1: trimleft 2: trimright 3: trim */
|
||||||
int i; /* Loop counter */
|
int i; /* Loop counter */
|
||||||
unsigned char *aLen; /* Length of each character in zCharSet */
|
unsigned char *aLen; /* Length of each character in zCharSet */
|
||||||
unsigned char **azChar; /* Individual characters in zCharSet */
|
unsigned char **azChar; /* Individual characters in zCharSet */
|
||||||
@@ -916,7 +916,7 @@ static void trimFunc(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( nChar>0 ){
|
if( nChar>0 ){
|
||||||
flags = (intptr_t)sqlite3_user_data(context);
|
flags = (sqlite3_intptr_t)sqlite3_user_data(context);
|
||||||
if( flags & 1 ){
|
if( flags & 1 ){
|
||||||
while( nIn>0 ){
|
while( nIn>0 ){
|
||||||
int len;
|
int len;
|
||||||
@@ -1459,7 +1459,7 @@ void sqlite3RegisterBuiltinFunctions(sqlite3 *db){
|
|||||||
if( argType==0xff ){
|
if( argType==0xff ){
|
||||||
pArg = db;
|
pArg = db;
|
||||||
}else{
|
}else{
|
||||||
pArg = (void*)(intptr_t)argType;
|
pArg = (void*)(sqlite3_intptr_t)argType;
|
||||||
}
|
}
|
||||||
sqlite3CreateFunc(db, aFuncs[i].zName, aFuncs[i].nArg,
|
sqlite3CreateFunc(db, aFuncs[i].zName, aFuncs[i].nArg,
|
||||||
aFuncs[i].eTextRep, pArg, aFuncs[i].xFunc, 0, 0);
|
aFuncs[i].eTextRep, pArg, aFuncs[i].xFunc, 0, 0);
|
||||||
@@ -1478,7 +1478,7 @@ void sqlite3RegisterBuiltinFunctions(sqlite3 *db){
|
|||||||
sqlite3AttachFunctions(db);
|
sqlite3AttachFunctions(db);
|
||||||
#endif
|
#endif
|
||||||
for(i=0; i<sizeof(aAggs)/sizeof(aAggs[0]); i++){
|
for(i=0; i<sizeof(aAggs)/sizeof(aAggs[0]); i++){
|
||||||
void *pArg = (void*)(intptr_t)aAggs[i].argType;
|
void *pArg = (void*)(sqlite3_intptr_t)aAggs[i].argType;
|
||||||
sqlite3CreateFunc(db, aAggs[i].zName, aAggs[i].nArg, SQLITE_UTF8,
|
sqlite3CreateFunc(db, aAggs[i].zName, aAggs[i].nArg, SQLITE_UTF8,
|
||||||
pArg, 0, aAggs[i].xStep, aAggs[i].xFinalize);
|
pArg, 0, aAggs[i].xStep, aAggs[i].xFinalize);
|
||||||
if( aAggs[i].needCollSeq ){
|
if( aAggs[i].needCollSeq ){
|
||||||
|
@@ -12,7 +12,7 @@
|
|||||||
** This file contains C code routines that are called by the parser
|
** This file contains C code routines that are called by the parser
|
||||||
** to handle INSERT statements in SQLite.
|
** to handle INSERT statements in SQLite.
|
||||||
**
|
**
|
||||||
** $Id: insert.c,v 1.230 2008/03/06 07:35:22 mlcreech Exp $
|
** $Id: insert.c,v 1.231 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
|
|
||||||
@@ -1193,7 +1193,8 @@ void sqlite3GenerateConstraintChecks(
|
|||||||
regR = sqlite3GetTempReg(pParse);
|
regR = sqlite3GetTempReg(pParse);
|
||||||
sqlite3VdbeAddOp2(v, OP_SCopy, regRowid-hasTwoRowids, regR);
|
sqlite3VdbeAddOp2(v, OP_SCopy, regRowid-hasTwoRowids, regR);
|
||||||
j3 = sqlite3VdbeAddOp4(v, OP_IsUnique, baseCur+iCur+1, 0,
|
j3 = sqlite3VdbeAddOp4(v, OP_IsUnique, baseCur+iCur+1, 0,
|
||||||
regR, (char*)(intptr_t)aRegIdx[iCur], P4_INT32);
|
regR, (char*)(sqlite3_intptr_t)aRegIdx[iCur],
|
||||||
|
P4_INT32);
|
||||||
|
|
||||||
/* Generate code that executes if the new index entry is not unique */
|
/* Generate code that executes if the new index entry is not unique */
|
||||||
assert( onError==OE_Rollback || onError==OE_Abort || onError==OE_Fail
|
assert( onError==OE_Rollback || onError==OE_Abort || onError==OE_Fail
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
*************************************************************************
|
*************************************************************************
|
||||||
** Internal interface definitions for SQLite.
|
** Internal interface definitions for SQLite.
|
||||||
**
|
**
|
||||||
** @(#) $Id: sqliteInt.h,v 1.668 2008/03/06 09:19:00 mlcreech Exp $
|
** @(#) $Id: sqliteInt.h,v 1.669 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#ifndef _SQLITEINT_H_
|
#ifndef _SQLITEINT_H_
|
||||||
#define _SQLITEINT_H_
|
#define _SQLITEINT_H_
|
||||||
@@ -21,7 +21,12 @@
|
|||||||
** the SQLite source tree.
|
** the SQLite source tree.
|
||||||
*/
|
*/
|
||||||
#ifdef SQLITE_STANDARD_BUILD
|
#ifdef SQLITE_STANDARD_BUILD
|
||||||
#include "common.h"
|
# include "common.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef __sqlite3_intptr_defined
|
||||||
|
/* Fallbacks if doing a standalone build... */
|
||||||
|
typedef int sqlite3_intptr_t;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -145,7 +145,7 @@ int sqlite3_get_table(
|
|||||||
res.azResult[0] = 0;
|
res.azResult[0] = 0;
|
||||||
rc = sqlite3_exec(db, zSql, sqlite3_get_table_cb, &res, pzErrMsg);
|
rc = sqlite3_exec(db, zSql, sqlite3_get_table_cb, &res, pzErrMsg);
|
||||||
assert( sizeof(res.azResult[0])>= sizeof(res.nData) );
|
assert( sizeof(res.azResult[0])>= sizeof(res.nData) );
|
||||||
res.azResult[0] = (char*)(intptr_t)res.nData;
|
res.azResult[0] = (char*)(sqlite3_intptr_t)res.nData;
|
||||||
if( (rc&0xff)==SQLITE_ABORT ){
|
if( (rc&0xff)==SQLITE_ABORT ){
|
||||||
sqlite3_free_table(&res.azResult[1]);
|
sqlite3_free_table(&res.azResult[1]);
|
||||||
if( res.zErrMsg ){
|
if( res.zErrMsg ){
|
||||||
@@ -187,10 +187,10 @@ void sqlite3_free_table(
|
|||||||
char **azResult /* Result returned from from sqlite3_get_table() */
|
char **azResult /* Result returned from from sqlite3_get_table() */
|
||||||
){
|
){
|
||||||
if( azResult ){
|
if( azResult ){
|
||||||
intptr_t i, n;
|
sqlite3_intptr_t i, n;
|
||||||
azResult--;
|
azResult--;
|
||||||
assert( azResult!=0 );
|
assert( azResult!=0 );
|
||||||
n = (intptr_t)azResult[0];
|
n = (sqlite3_intptr_t)azResult[0];
|
||||||
for(i=1; i<n; i++){ if( azResult[i] ) sqlite3_free(azResult[i]); }
|
for(i=1; i<n; i++){ if( azResult[i] ) sqlite3_free(azResult[i]); }
|
||||||
sqlite3_free(azResult);
|
sqlite3_free(azResult);
|
||||||
}
|
}
|
||||||
|
@@ -531,7 +531,7 @@ void sqlite3VdbeChangeP4(Vdbe *p, int addr, const char *zP4, int n){
|
|||||||
if( n==P4_INT32 ){
|
if( n==P4_INT32 ){
|
||||||
/* Note: this cast is safe, because the origin data point was an int
|
/* Note: this cast is safe, because the origin data point was an int
|
||||||
** that was cast to a (const char *). */
|
** that was cast to a (const char *). */
|
||||||
pOp->p4.i = (int)(intptr_t)zP4;
|
pOp->p4.i = (int)(sqlite3_intptr_t)zP4;
|
||||||
pOp->p4type = n;
|
pOp->p4type = n;
|
||||||
}else if( zP4==0 ){
|
}else if( zP4==0 ){
|
||||||
pOp->p4.p = 0;
|
pOp->p4.p = 0;
|
||||||
|
@@ -922,7 +922,7 @@ const void *sqlite3ValueText(sqlite3_value* pVal, u8 enc){
|
|||||||
expandBlob(pVal);
|
expandBlob(pVal);
|
||||||
if( pVal->flags&MEM_Str ){
|
if( pVal->flags&MEM_Str ){
|
||||||
sqlite3VdbeChangeEncoding(pVal, enc & ~SQLITE_UTF16_ALIGNED);
|
sqlite3VdbeChangeEncoding(pVal, enc & ~SQLITE_UTF16_ALIGNED);
|
||||||
if( (enc & SQLITE_UTF16_ALIGNED)!=0 && 1==(1&(intptr_t)pVal->z) ){
|
if( (enc & SQLITE_UTF16_ALIGNED)!=0 && 1==(1&(sqlite3_intptr_t)pVal->z) ){
|
||||||
assert( (pVal->flags & (MEM_Ephem|MEM_Static))!=0 );
|
assert( (pVal->flags & (MEM_Ephem|MEM_Static))!=0 );
|
||||||
if( sqlite3VdbeMemMakeWriteable(pVal)!=SQLITE_OK ){
|
if( sqlite3VdbeMemMakeWriteable(pVal)!=SQLITE_OK ){
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
*************************************************************************
|
*************************************************************************
|
||||||
** This file contains code used to help implement virtual tables.
|
** This file contains code used to help implement virtual tables.
|
||||||
**
|
**
|
||||||
** $Id: vtab.c,v 1.64 2008/03/06 07:35:22 mlcreech Exp $
|
** $Id: vtab.c,v 1.65 2008/03/06 09:58:50 mlcreech Exp $
|
||||||
*/
|
*/
|
||||||
#ifndef SQLITE_OMIT_VIRTUALTABLE
|
#ifndef SQLITE_OMIT_VIRTUALTABLE
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
@@ -611,7 +611,7 @@ int sqlite3VtabCallDestroy(sqlite3 *db, int iDb, const char *zTab)
|
|||||||
**
|
**
|
||||||
** The array is cleared after invoking the callbacks.
|
** The array is cleared after invoking the callbacks.
|
||||||
*/
|
*/
|
||||||
static void callFinaliser(sqlite3 *db, intptr_t offset){
|
static void callFinaliser(sqlite3 *db, sqlite3_intptr_t offset){
|
||||||
int i;
|
int i;
|
||||||
if( db->aVTrans ){
|
if( db->aVTrans ){
|
||||||
for(i=0; i<db->nVTrans && db->aVTrans[i]; i++){
|
for(i=0; i<db->nVTrans && db->aVTrans[i]; i++){
|
||||||
@@ -664,7 +664,7 @@ int sqlite3VtabSync(sqlite3 *db, int rc2){
|
|||||||
** sqlite3.aVTrans array. Then clear the array itself.
|
** sqlite3.aVTrans array. Then clear the array itself.
|
||||||
*/
|
*/
|
||||||
int sqlite3VtabRollback(sqlite3 *db){
|
int sqlite3VtabRollback(sqlite3 *db){
|
||||||
callFinaliser(db, (intptr_t)(&((sqlite3_module *)0)->xRollback));
|
callFinaliser(db, (sqlite3_intptr_t)(&((sqlite3_module *)0)->xRollback));
|
||||||
return SQLITE_OK;
|
return SQLITE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -673,7 +673,7 @@ int sqlite3VtabRollback(sqlite3 *db){
|
|||||||
** sqlite3.aVTrans array. Then clear the array itself.
|
** sqlite3.aVTrans array. Then clear the array itself.
|
||||||
*/
|
*/
|
||||||
int sqlite3VtabCommit(sqlite3 *db){
|
int sqlite3VtabCommit(sqlite3 *db){
|
||||||
callFinaliser(db, (intptr_t)(&((sqlite3_module *)0)->xCommit));
|
callFinaliser(db, (sqlite3_intptr_t)(&((sqlite3_module *)0)->xCommit));
|
||||||
return SQLITE_OK;
|
return SQLITE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user