System.Data.SQLite

Check-in [dcd24352a0]
Login

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

Overview
Comment:Add optional support for building the interop assembly with ZIPVFS.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | zipvfs
Files: files | file ages | folders
SHA1: dcd24352a0398616c85c638608226b6617d9a3a8
User & Date: mistachkin 2015-06-02 18:21:40.279
Context
2015-06-03
00:28
Add special 'placeholder' defines to the interop assembly props files. check-in: 3d46b94d99 user: mistachkin tags: zipvfs
2015-06-02
18:21
Add optional support for building the interop assembly with ZIPVFS. check-in: dcd24352a0 user: mistachkin tags: zipvfs
2015-05-30
22:45
Update SQLite core library to the latest trunk code. check-in: b994e3c790 user: mistachkin tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to SQLite.Interop/src/win/interop.c.
16
17
18
19
20
21
22




23
24
25
26
27
28
29
#if defined(INTEROP_INCLUDE_CEROD)
#include "../ext/cerod.c"
#endif

#if defined(INTEROP_INCLUDE_SEE)
#include "../ext/see.c"
#endif





#if defined(INTEROP_VIRTUAL_TABLE) && SQLITE_VERSION_NUMBER >= 3004001
#include "../ext/vtshim.c"
#endif

#if defined(INTEROP_PERCENTILE_EXTENSION)
#include "../ext/percentile.c"







>
>
>
>







16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#if defined(INTEROP_INCLUDE_CEROD)
#include "../ext/cerod.c"
#endif

#if defined(INTEROP_INCLUDE_SEE)
#include "../ext/see.c"
#endif

#if defined(INTEROP_INCLUDE_ZIPVFS)
#include "../ext/zipvfs.c"
#endif

#if defined(INTEROP_VIRTUAL_TABLE) && SQLITE_VERSION_NUMBER >= 3004001
#include "../ext/vtshim.c"
#endif

#if defined(INTEROP_PERCENTILE_EXTENSION)
#include "../ext/percentile.c"
104
105
106
107
108
109
110



111
112
113
114
115
116
117
  "INCLUDE_CEROD",
#endif
#ifdef INTEROP_INCLUDE_EXTRA
  "INCLUDE_EXTRA",
#endif
#ifdef INTEROP_INCLUDE_SEE
  "INCLUDE_SEE",



#endif
#ifdef INTEROP_LEGACY_CLOSE
  "LEGACY_CLOSE",
#endif
#ifdef INTEROP_LOG
  "LOG",
#endif







>
>
>







108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
  "INCLUDE_CEROD",
#endif
#ifdef INTEROP_INCLUDE_EXTRA
  "INCLUDE_EXTRA",
#endif
#ifdef INTEROP_INCLUDE_SEE
  "INCLUDE_SEE",
#endif
#ifdef INTEROP_INCLUDE_ZIPVFS
  "INCLUDE_ZIPVFS",
#endif
#ifdef INTEROP_LEGACY_CLOSE
  "LEGACY_CLOSE",
#endif
#ifdef INTEROP_LOG
  "LOG",
#endif
Changes to System.Data.SQLite/SQLiteDefineConstants.cs.
43
44
45
46
47
48
49




50
51
52
53
54
55
56
#if INTEROP_INCLUDE_EXTRA
            "INTEROP_INCLUDE_EXTRA",
#endif

#if INTEROP_INCLUDE_SEE
            "INTEROP_INCLUDE_SEE",
#endif





#if INTEROP_LEGACY_CLOSE
            "INTEROP_LEGACY_CLOSE",
#endif

#if INTEROP_LOG
            "INTEROP_LOG",







>
>
>
>







43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#if INTEROP_INCLUDE_EXTRA
            "INTEROP_INCLUDE_EXTRA",
#endif

#if INTEROP_INCLUDE_SEE
            "INTEROP_INCLUDE_SEE",
#endif

#if INTEROP_INCLUDE_ZIPVFS
            "INTEROP_INCLUDE_ZIPVFS",
#endif

#if INTEROP_LEGACY_CLOSE
            "INTEROP_LEGACY_CLOSE",
#endif

#if INTEROP_LOG
            "INTEROP_LOG",
Changes to System.Data.SQLite/Targets/System.Data.SQLite.Properties.targets.
168
169
170
171
172
173
174








175
176
177
178
179
180
181
      NOTE: Enable support (in the managed assemblies) for compressed and
            encrypted databases using CEROD?
  -->
  <PropertyGroup Condition="'$(InteropIncludeCerod)' != 'false'">
    <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_CEROD</DefineConstants>
  </PropertyGroup>









  <!--
      NOTE: Enable support (in the managed assemblies) for whatever "extra"
            code (e.g. "extensions") may be included by the custom built
            interop DLL (i.e. "SQLite.Interop.DLL")?
  -->
  <PropertyGroup Condition="'$(InteropIncludeExtra)' != 'false'">
    <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_EXTRA</DefineConstants>







>
>
>
>
>
>
>
>







168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
      NOTE: Enable support (in the managed assemblies) for compressed and
            encrypted databases using CEROD?
  -->
  <PropertyGroup Condition="'$(InteropIncludeCerod)' != 'false'">
    <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_CEROD</DefineConstants>
  </PropertyGroup>

  <!--
      NOTE: Enable support (in the managed assemblies) for compressed databases
            (read/write) using ZIPVFS?
  -->
  <PropertyGroup Condition="'$(InteropIncludeZipVfs)' != 'false'">
    <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_ZIPVFS</DefineConstants>
  </PropertyGroup>

  <!--
      NOTE: Enable support (in the managed assemblies) for whatever "extra"
            code (e.g. "extensions") may be included by the custom built
            interop DLL (i.e. "SQLite.Interop.DLL")?
  -->
  <PropertyGroup Condition="'$(InteropIncludeExtra)' != 'false'">
    <DefineConstants>$(DefineConstants);INTEROP_INCLUDE_EXTRA</DefineConstants>
Changes to Targets/SQLite.NET.Settings.targets.
372
373
374
375
376
377
378




















379
380
381
382
383
384
385

                  "SQLite.Interop\props\SQLite.Interop.20YY.[vs]props"

              both for the corresponding version(s) of Visual Studio.
    -->
    <InteropIncludeCerod Condition="'$(InteropIncludeCerod)' == ''">false</InteropIncludeCerod>





















    <!--
        NOTE: Enable including "extra" code with the custom built interop DLL
              (i.e. "SQLite.Interop.dll")?  By default, this is disabled.  If
              this is enabled, the "extra.c" file will be included from the
              extensions directory.  If this is enabled, it must also be
              enabled via the "INTEROP_INCLUDE_EXTRA=1" preprocessor define
              being present in the "INTEROP_EXTRA_DEFINES" macro in the build







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405

                  "SQLite.Interop\props\SQLite.Interop.20YY.[vs]props"

              both for the corresponding version(s) of Visual Studio.
    -->
    <InteropIncludeCerod Condition="'$(InteropIncludeCerod)' == ''">false</InteropIncludeCerod>

    <!--
        NOTE: Enable including ZIPVFS with the custom built interop DLL (i.e.
              "SQLite.Interop.dll")?  By default, this is disabled.  If this is
              enabled, the "zipvfs.c" file will be included from the extensions
              directory.  If this is enabled, it must also be enabled via the
              "SQLITE_ENABLE_ZIPVFS=1" preprocessor define being present in the
              "SQLITE_EXTRA_DEFINES" macro in the build properties file:

                  "SQLite.Interop\props\sqlite3.[vs]props"

              AND via the "INTEROP_INCLUDE_ZIPVFS=1" preprocessor define being
              present in the "INTEROP_EXTRA_DEFINES" macro in the build
              properties file:

                  "SQLite.Interop\props\SQLite.Interop.20YY.[vs]props"

              both for the corresponding version(s) of Visual Studio.
    -->
    <InteropIncludeZipVfs Condition="'$(InteropIncludeZipVfs)' == ''">false</InteropIncludeZipVfs>

    <!--
        NOTE: Enable including "extra" code with the custom built interop DLL
              (i.e. "SQLite.Interop.dll")?  By default, this is disabled.  If
              this is enabled, the "extra.c" file will be included from the
              extensions directory.  If this is enabled, it must also be
              enabled via the "INTEROP_INCLUDE_EXTRA=1" preprocessor define
              being present in the "INTEROP_EXTRA_DEFINES" macro in the build
Changes to Tests/common.eagle.
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
        #       for the interop assembly in order to be effective.  For those
        #       options, it will be assumed that it was enabled for the interop
        #       assembly if it was enabled for the managed assembly.
        #
        foreach defineConstant [list \
            CHECK_STATE COUNT_HANDLE DEBUG INTEROP_CODEC INTEROP_DEBUG \
            INTEROP_EXTENSION_FUNCTIONS INTEROP_INCLUDE_CEROD \
            INTEROP_INCLUDE_EXTRA INTEROP_INCLUDE_SEE INTEROP_LEGACY_CLOSE \
            INTEROP_LOG INTEROP_TEST_EXTENSION INTEROP_VIRTUAL_TABLE NET_20 \
            NET_35 NET_40 NET_45 NET_451 NET_COMPACT_20 \
            PLATFORM_COMPACTFRAMEWORK PRELOAD_NATIVE_LIBRARY RETARGETABLE \
            SQLITE_STANDARD THROW_ON_DISPOSED TRACE TRACE_CONNECTION \
            TRACE_DETECTION TRACE_HANDLE TRACE_PRELOAD TRACE_SHARED \
            TRACE_STATEMENT TRACE_WARNING TRACK_MEMORY_BYTES \
            USE_ENTITY_FRAMEWORK_6 USE_INTEROP_DLL USE_PREPARE_V2 WINDOWS] {
          #
          # NOTE: Check if the compile-time option is listed in the list of
          #       "define constants" kept track of by the managed assembly.
          #
          checkForSQLiteDefineConstant $::test_channel $defineConstant
        }







|
|
|
|
|
|
|







3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
        #       for the interop assembly in order to be effective.  For those
        #       options, it will be assumed that it was enabled for the interop
        #       assembly if it was enabled for the managed assembly.
        #
        foreach defineConstant [list \
            CHECK_STATE COUNT_HANDLE DEBUG INTEROP_CODEC INTEROP_DEBUG \
            INTEROP_EXTENSION_FUNCTIONS INTEROP_INCLUDE_CEROD \
            INTEROP_INCLUDE_EXTRA INTEROP_INCLUDE_SEE INTEROP_INCLUDE_ZIPVFS \
            INTEROP_LEGACY_CLOSE INTEROP_LOG INTEROP_TEST_EXTENSION \
            INTEROP_VIRTUAL_TABLE NET_20 NET_35 NET_40 NET_45 NET_451 \
            NET_COMPACT_20 PLATFORM_COMPACTFRAMEWORK PRELOAD_NATIVE_LIBRARY \
            RETARGETABLE SQLITE_STANDARD THROW_ON_DISPOSED TRACE \
            TRACE_CONNECTION TRACE_DETECTION TRACE_HANDLE TRACE_PRELOAD \
            TRACE_SHARED TRACE_STATEMENT TRACE_WARNING TRACK_MEMORY_BYTES \
            USE_ENTITY_FRAMEWORK_6 USE_INTEROP_DLL USE_PREPARE_V2 WINDOWS] {
          #
          # NOTE: Check if the compile-time option is listed in the list of
          #       "define constants" kept track of by the managed assembly.
          #
          checkForSQLiteDefineConstant $::test_channel $defineConstant
        }