In some cases a non existing define is being undefined.
This fixes this case.
SQLITECPP_HAVE_EXPERIMENTAL_FILESYSTEM -> SQLITECPP_HAVE_STD_EXPERIMENTAL_FILESYSTEM
- updates fallback gtest to 1.15.2
- updates fallback sqlite3 to 3.49.2
- adds additional checks of the default c++ standard version if GTest is
>= 1.17.0
- bumps the version to 3.3.3
Without the change the build fails on `gcc-15` as:
[ 5%] Building CXX object CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o
In file included from /build/source/include/SQLiteCpp/Column.h:14,
from /build/source/include/SQLiteCpp/Database.h:14,
from /build/source/include/SQLiteCpp/Backup.h:15,
from /build/source/src/Backup.cpp:12:
/build/source/include/SQLiteCpp/Statement.h:132:39: error: 'uint32_t'
does not name a type
132 | void bind(const int aIndex, const uint32_t aValue);
| ^~~~~~~~
/build/source/include/SQLiteCpp/Statement.h:20:1: note: 'uint32_t' is
defined in header '<cstdint>'; this is probably fixable by adding
'#include <cstdint>'
19 | #include <memory>
+++ |+#include <cstdint>
20 |
Without the change the build fails on `gcc-15` as:
[ 5%] Building CXX object CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o
In file included from /build/source/include/SQLiteCpp/Column.h:14,
from /build/source/include/SQLiteCpp/Database.h:14,
from /build/source/include/SQLiteCpp/Backup.h:15,
from /build/source/src/Backup.cpp:12:
/build/source/include/SQLiteCpp/Statement.h:132:39: error: 'uint32_t' does not name a type
132 | void bind(const int aIndex, const uint32_t aValue);
| ^~~~~~~~
/build/source/include/SQLiteCpp/Statement.h:20:1: note: 'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
19 | #include <memory>
+++ |+#include <cstdint>
20 |
find_package(PythonInterp) has been deprecated since cmake 3.5 and is
throwing a warning as of 3.27 (maybe earlier). Since the minimum
required version is 3.5 for this repo, added a branch to use the
appropriate find_package depending on the version.
Tested with 3.27 (above the split) and 3.10.x (below the split). Both
were successful for me (ubuntu:18.04 & 22.04).
Fix#481 23 test fails under FreeBSD 14.1 builtin SQLite library 3.45.1
The SQLITE_DQS compile-time option activates or deactivates the legacy
double-quoted string literal misfeature.
Legacy behavior is that double-quoted string literals are allowed
anywhere.
Fix#481 23 test fails under FreeBSD 14.1 builtin SQLite library
The SQLITE_DQS compile-time option activates or deactivates the legacy double-quoted string literal misfeature.
Legacy behavior is that double-quoted string literals are allowed anywhere.
Rvalues are inherently unsuitable for no-copy binding, because their
lifetime cannot be guaranteed. Separately declare, and delete, all
overloads of bindNoCopy() that take a std::string rvalue.
makes the following changes
- update meson wrap dependencies
- update gtest 1.14.0 -> 1.15.0
- update sqlite 3.42.0 -> 3.46.1
- removed redundant variables that pointed to the same sources in
example executables
fixes a CI issue in OSX due to
[PEP-668](https://peps.python.org/pep-0668/)
pip3 was used to install meson and ninja build, pipx is a drop in
replacement for this use case.
Rvalues are inherently unsuitable for no-copy binding, because their lifetime cannot be guarnateed.
Separately declare, and delete, all overloads of bindNoCopy() that take a std::string rvalue.