File tree Expand file tree Collapse file tree 3 files changed +18
-11
lines changed Expand file tree Collapse file tree 3 files changed +18
-11
lines changed Original file line number Diff line number Diff line change 84
84
include :
85
85
- os : " windows-2022"
86
86
ruby : " mingw"
87
- # # I'm struggling to build against sqlcipher on mswin.
88
- # # find_header can't find sqlite3.h
89
- # # patches welcome from anyone who needs this functionality and can make it work.
90
- # - os: "windows-2022"
91
- # ruby: "mswin"
87
+ - os : " windows-2022"
88
+ ruby : " mswin"
92
89
runs-on : ${{matrix.os}}
93
90
steps :
94
91
- if : matrix.os == 'windows-2022'
@@ -104,6 +101,6 @@ jobs:
104
101
apt-get : " libsqlcipher-dev"
105
102
brew : " sqlcipher"
106
103
mingw : " sqlcipher"
107
- # vcpkg: "sqlcipher" # see above
104
+ vcpkg : " sqlcipher"
108
105
- run : bundle exec rake compile -- --with-sqlcipher
109
106
- run : bundle exec rake test
Original file line number Diff line number Diff line change @@ -44,7 +44,7 @@ def sqlcipher?
44
44
45
45
def configure_system_libraries
46
46
pkg_config ( libname )
47
- append_cflags ( "-DUSING_SQLCIPHER" ) if sqlcipher?
47
+ append_cppflags ( "-DUSING_SQLCIPHER" ) if sqlcipher?
48
48
end
49
49
50
50
def configure_packaged_libraries
@@ -75,10 +75,17 @@ def configure_packaged_libraries
75
75
76
76
def configure_extension
77
77
if Gem ::Requirement . new ( "< 2.7" ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION ) )
78
- append_cflags ( "-DTAINTING_SUPPORT" )
78
+ append_cppflags ( "-DTAINTING_SUPPORT" )
79
+ end
80
+
81
+ if find_header ( "sqlite3.h" )
82
+ # noop
83
+ elsif sqlcipher? && find_header ( "sqlcipher/sqlite3.h" )
84
+ append_cppflags ( "-DUSING_SQLCIPHER_INC_SUBDIR" )
85
+ else
86
+ abort_could_not_find ( "sqlite3.h" )
79
87
end
80
88
81
- abort_could_not_find ( "sqlite3.h" ) unless find_header ( "sqlite3.h" )
82
89
abort_could_not_find ( libname ) unless find_library ( libname , "sqlite3_libversion_number" , "sqlite3.h" )
83
90
84
91
# Functions defined in 1.9 but not 1.8
Original file line number Diff line number Diff line change 21
21
#define SQLITE3_UTF8_STR_NEW2 (_obj ) \
22
22
(rb_enc_associate_index(rb_str_new2(_obj), rb_utf8_encindex()))
23
23
24
-
25
- #include <sqlite3.h>
24
+ #ifdef USING_SQLCIPHER_INC_SUBDIR
25
+ # include <sqlcipher/sqlite3.h>
26
+ #else
27
+ # include <sqlite3.h>
28
+ #endif
26
29
27
30
#ifndef HAVE_TYPE_SQLITE3_INT64
28
31
typedef sqlite_int64 sqlite3_int64 ;
You can’t perform that action at this time.
0 commit comments