Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package sqlcipher for openSUSE:Factory checked in at 2026-06-18 18:41:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sqlcipher (Old) and /work/SRC/openSUSE:Factory/.sqlcipher.new.1981 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sqlcipher" Thu Jun 18 18:41:19 2026 rev:22 rq:1360165 version:4.16.0 Changes: -------- --- /work/SRC/openSUSE:Factory/sqlcipher/sqlcipher.changes 2024-12-09 21:13:48.122565005 +0100 +++ /work/SRC/openSUSE:Factory/.sqlcipher.new.1981/sqlcipher.changes 2026-06-18 18:42:48.734512862 +0200 @@ -1,0 +2,27 @@ +Wed Jun 17 20:23:06 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to version 4.16.0: + * Update SQLite baseline from 3.46.1 to 3.53.1 + * Sanitize source database name passed to sqlcipher_export + (security hardening reported by Deutsche Telekom Security) + * Add PRAGMA cipher_status to verify a database handle is + using encryption + * Restore and improve the LibTomCrypt provider; remove the + deprecated LibTomCrypt and NSS providers + * Numerous error-handling, logging and build fixes across the + 4.7.0 - 4.16.0 releases +- Adapt packaging to upstream's new SQLite autosetup build system, + which now installs sqlite3/libsqlite3 names by default: + * Build the shared library as libsqlcipher.so.0 via + --dll-basename and an explicit soname, and rename the + binary, manpage, pkgconfig file and headers back to + sqlcipher to avoid colliding with the system sqlite3 + package (matches Debian and Arch packaging) + * Rename the library subpackage from libsqlcipher-3_46_1-0 to + the soname-based libsqlcipher0; update baselibs.conf + * Drop the tcl-sqlcipher subpackage: upstream's new build no + longer produces a standalone sqlcipher Tcl binding + * Select the OpenSSL crypto provider through CFLAGS defines and + -lcrypto instead of the removed --with-crypto-lib option + +------------------------------------------------------------------- Old: ---- sqlcipher-4.6.1.tar.gz New: ---- sqlcipher-4.16.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sqlcipher.spec ++++++ --- /var/tmp/diff_new_pack.U3tYai/_old 2026-06-18 18:42:49.902561668 +0200 +++ /var/tmp/diff_new_pack.U3tYai/_new 2026-06-18 18:42:49.902561668 +0200 @@ -1,7 +1,7 @@ # # spec file for package sqlcipher # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,23 +16,24 @@ # -%define lib_version 3.46.1 -%define lib_name libsqlcipher-3_46_1-0 +%define sover 0 Name: sqlcipher -Version: 4.6.1 +Version: 4.16.0 Release: 0 Summary: SQLite database encryption License: BSD-3-Clause -Group: Productivity/Databases/Clients URL: http://sqlcipher.net Source: https://github.com/sqlcipher/sqlcipher/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz Source99: baselibs.conf -BuildRequires: ncurses-devel BuildRequires: openssl-devel BuildRequires: pkgconfig BuildRequires: readline-devel -BuildRequires: pkgconfig(sqlite3) -BuildRequires: pkgconfig(tcl) +BuildRequires: pkgconfig(ncurses) +BuildRequires: pkgconfig(zlib) +# The Tcl extension subpackage is gone: upstream's new build system no longer +# produces a standalone sqlcipher Tcl binding. +Obsoletes: sqlcipher-tcl < %{version} +Obsoletes: tcl-sqlcipher < %{version} %{?suse_build_hwcaps_libs} %description @@ -42,41 +43,22 @@ performance it’s ideal for protecting embedded application databases and is well suited for mobile development. -%package -n %{lib_name} +%package -n libsqlcipher%{sover} Summary: Shared library for SQLCipher -Group: System/Libraries -%description -n %{lib_name} +%description -n libsqlcipher%{sover} SQLCipher is an SQLite extension that provides transparent 256-bit AES encryption of database files. Pages are encrypted before being written to disk and are decrypted when read back. Due to the small footprint and great performance it’s ideal for protecting embedded application databases and is -well suited for mobile development/ - -This package contains shared library. - -%package -n tcl-%{name} -Summary: Tcl extension for sqlcipher -Group: Development/Languages/Tcl -%requires_ge tcl -Provides: %{name}-tcl = %{version}-%{release} -Obsoletes: %{name}-tcl < %{version}-%{release} - -%description -n tcl-%{name} -SQLCipher is an SQLite extension that provides transparent 256-bit AES -encryption of database files. Pages are encrypted before being written to -disk and are decrypted when read back. Due to the small footprint and great -performance it’s ideal for protecting embedded application databases and is -well suited for mobile development/ +well suited for mobile development. -This package provides tcl extension for SQLCipher. +This package contains the shared library. %package devel Summary: Development files for SQLCipher -Group: Development/Libraries/C and C++ -Requires: %{lib_name} = %{version}-%{release} Requires: %{name} = %{version}-%{release} -Requires: tcl-%{name} = %{version}-%{release} +Requires: libsqlcipher%{sover} = %{version}-%{release} %description devel SQLCipher is an SQLite extension that provides transparent 256-bit AES @@ -91,48 +73,59 @@ %autosetup %build -export CFLAGS="%{optflags} -DSQLITE_HAS_CODEC -DSQLITE_TEMP_STORE=2" -export LDFLAGS="-lcrypto" +# sqlcipher 4.16.0 switched to SQLite's autosetup configure and now builds the +# upstream sqlite3/libsqlite3 names by default. Following Debian and Arch: +# * $CC is exported so the compiler is not derived from %%configure's --host +# prefix (x86_64-suse-linux-gcc), +# * the OpenSSL crypto provider is selected via CFLAGS defines + -lcrypto +# (the old --with-crypto-lib option was removed upstream), +# * --dll-basename together with an explicit -soname builds the shared library +# as libsqlcipher.so.0 so it does not collide with system sqlite3. +export CC=gcc +export CFLAGS="%{optflags} -DSQLITE_HAS_CODEC -DSQLITE_EXTRA_INIT=sqlcipher_extra_init -DSQLITE_EXTRA_SHUTDOWN=sqlcipher_extra_shutdown" +export LDFLAGS="-lcrypto -Wl,-soname,libsqlcipher.so.%{sover}" %configure \ - --enable-threadsafe \ - --enable-cross-thread-connections \ - --enable-releasemode \ --disable-static \ - --with-crypto-lib \ - --with-tcl=%{_libdir} \ - --enable-tempstore=yes + --disable-tcl \ + --with-tempstore=yes \ + --dll-basename=libsqlcipher %make_build %install %make_install +# Rename the upstream sqlite3 artifacts to sqlcipher so the package does not +# collide with the system sqlite3 package (matches Debian/Arch packaging). +mv %{buildroot}%{_bindir}/sqlite3 %{buildroot}%{_bindir}/sqlcipher +mv %{buildroot}%{_mandir}/man1/sqlite3.1 %{buildroot}%{_mandir}/man1/sqlcipher.1 +mv %{buildroot}%{_libdir}/pkgconfig/sqlite3.pc %{buildroot}%{_libdir}/pkgconfig/sqlcipher.pc +mkdir -p %{buildroot}%{_includedir}/sqlcipher +mv %{buildroot}%{_includedir}/sqlite3.h %{buildroot}%{_includedir}/sqlcipher/ +mv %{buildroot}%{_includedir}/sqlite3ext.h %{buildroot}%{_includedir}/sqlcipher/ +# Point the .pc at the renamed library and the relocated headers +sed -i \ + -e 's/-lsqlite3/-lsqlcipher/g' \ + -e 's|^includedir=.*|includedir=%{_includedir}/sqlcipher|' \ + %{buildroot}%{_libdir}/pkgconfig/sqlcipher.pc find %{buildroot} -type f -name "*.la" -delete -print -%ldconfig_scriptlets -n %{lib_name} +%ldconfig_scriptlets -n libsqlcipher%{sover} %files %license LICENSE.md %doc README.md %{_bindir}/sqlcipher +%{_mandir}/man1/sqlcipher.1%{?ext_man} -%files -n %{lib_name} -%license LICENSE.md -%doc README.md -%{_libdir}/libsqlcipher-%{lib_version}.so.0 -%{_libdir}/libsqlcipher-%{lib_version}.so.0.8.6 - -%files -n tcl-%{name} +%files -n libsqlcipher%{sover} %license LICENSE.md -%doc README.md -%dir %{_libdir}/tcl/tcl8.?/sqlite3 -%{_libdir}/tcl/tcl8.?/sqlite3/libtclsqlite3.so -%{_libdir}/tcl/tcl8.?/sqlite3/pkgIndex.tcl +%{_libdir}/libsqlcipher.so.* %files devel %license LICENSE.md %doc README.md %{_libdir}/libsqlcipher.so %{_libdir}/pkgconfig/sqlcipher.pc -%{_includedir}/sqlcipher/ +%dir %{_includedir}/sqlcipher %{_includedir}/sqlcipher/sqlite3.h %{_includedir}/sqlcipher/sqlite3ext.h ++++++ baselibs.conf ++++++ --- /var/tmp/diff_new_pack.U3tYai/_old 2026-06-18 18:42:49.958564007 +0200 +++ /var/tmp/diff_new_pack.U3tYai/_new 2026-06-18 18:42:49.962564175 +0200 @@ -1,2 +1,2 @@ -libsqlcipher-3_46_1-0 +libsqlcipher0 ++++++ sqlcipher-4.6.1.tar.gz -> sqlcipher-4.16.0.tar.gz ++++++ /work/SRC/openSUSE:Factory/sqlcipher/sqlcipher-4.6.1.tar.gz /work/SRC/openSUSE:Factory/.sqlcipher.new.1981/sqlcipher-4.16.0.tar.gz differ: char 13, line 1
