Debian

Available patches from Ubuntu

To see Ubuntu differences wrt. to Debian, write down a grep-dctrl query identifying the packages you're interested in:
grep-dctrl -n -sPackage Sources.Debian
(e.g. -FPackage linux-ntfs or linux-ntfs)

Modified packages are listed below:

Debian ( Changelog | PTS | Bugs ) Ubuntu ( Changelog | txt | LP | Bugs ) | Diff from Ubuntu

Source: libdbi-drivers

libdbi-drivers (0.9.0-6ubuntu2) eoan; urgency=medium [ Lars Tangvald ] * d/p/mysql-5.7: drop and replace with d/p/mysql-8.0. * d/p/mysql-8.0: apply fixes for build against MySQL 8.0. -- Robie Basak <robie.basak@ubuntu.com> Tue, 13 Aug 2019 01:50:15 +0000 libdbi-drivers (0.9.0-6ubuntu1) eoan; urgency=low * Merge from Debian unstable. Remaining changes: - debian/control, debian/rules: drop libdbi-sqlite - debian/buildtests: test suite to verify drivers are usable when libdbi is loaded via dlopen() - debian/copyright: adding copyright attribution for buildtests dir - debian/rules: Run buildtests tests - d/p/mysql-5.7.patch, d/test_mysql.sh: fix build errors with MySQL 5.7 * Dropped changes, included in Debian: - freetds-1.0-fix.patch: Upstream cherrypick to fix FTFBS with freetds 1.0. -- Steve Langasek <steve.langasek@ubuntu.com> Mon, 22 Apr 2019 22:32:57 -0700

Modifications :
  1. Download patch debian/rules

    --- 0.9.0-6/debian/rules 2014-04-04 15:37:33.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/rules 2018-04-23 22:12:31.000000000 +0000 @@ -8,6 +8,7 @@ # from having to guess our platform (since we know it already) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) export DEB_BUILD_MAINT_OPTIONS = hardening=+relro DPKG_EXPORT_BUILDFLAGS = 1 @@ -40,14 +41,11 @@ config.status: --with-mysql \ --with-mysql-incdir=/usr/include/$(DEB_HOST_MULTIARCH) \ --with-mysql-libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \ - --with-sqlite \ - --with-sqlite-incdir=/usr/include/$(DEB_HOST_MULTIARCH) \ - --with-sqlite-libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \ --with-sqlite3 \ --with-sqlite3-incdir=/usr/include/$(DEB_HOST_MULTIARCH) \ --with-sqlite3-libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \ --with-freetds \ - -with-freetds-dir=/usr \ + --with-freetds-dir=/usr \ --enable-docs # This is for the moment removed until the upstream fixes the problems with # the new API: --with-firebird @@ -71,8 +69,10 @@ mytst: test-stamp: build-stamp ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) $(MAKE) -C tests test_dbi + + $(MAKE) -C debian/buildtests - # Testing sqlite and sqlite3 + # Testing sqlite3 mkdir -p $(CURDIR)/debian/sqlite3tests ( echo i; \ echo n; \ @@ -82,15 +82,6 @@ ifeq (,$(filter nocheck,$(DEB_BUILD_OPTI echo libdbitest; ) | ./tests/test_dbi rm -rf $(CURDIR)/debian/sqlite3tests - mkdir -p $(CURDIR)/debian/sqlitetests - -( echo i; \ - echo n; \ - echo ./drivers/sqlite/.libs; \ - echo sqlite; \ - echo $(CURDIR)/debian/sqlitetests; \ - echo libdbitest; ) | ./tests/test_dbi - rm -rf $(CURDIR)/debian/sqlitetests - # Testing MySQL and Postgress chmod +x ./debian/test_mysql.sh ./debian/test_mysql.sh @@ -115,6 +106,7 @@ clean: rm -f config.log doc/include/Makefile doc/Makefile dh_clean + $(MAKE) -C debian/buildtests clean dh_autoreconf_clean # We need to deapply-all here, because of dh_autoreconf_clean that # might do the opposite work as expected.
  2. Download patch debian/patches/mysql-8.0.patch

    --- 0.9.0-6/debian/patches/mysql-8.0.patch 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/patches/mysql-8.0.patch 2019-08-13 01:50:06.000000000 +0000 @@ -0,0 +1,40 @@ +Description: Fix build errors with MySQL 8.0 + The mysql_install_db script has been removed, and replaced with + the --initialize options for mysqld. + Also add -uroot to mysqladmin calls so package can be built without + root. +Author: Lars Tangvald <lars.tangvald@oracle.com> +Forwarded: no +Last-Update: 2019-07-16 + +--- libdbi-drivers-0.9.0.orig/tests/test_mysql.sh ++++ libdbi-drivers-0.9.0/tests/test_mysql.sh +@@ -36,9 +36,8 @@ D=`dirname "$MYTMPDIR"` + B=`basename "$MYTMPDIR"` + ABSMYTMPDIR="`cd \"$D\" 2>/dev/null && pwd || echo \"$D\"`/$B" + +-# --force is needed because buildd's can't resolve their own hostnames to ips +-mysql_install_db --no-defaults --datadir=${ABSMYTMPDIR} --force --skip-name-resolve --user=${ME} +-$MYMYSQLD --no-defaults --skip-grant --user=${ME} --socket=${ABSMYTMPDIR}/mysql.sock --datadir=${ABSMYTMPDIR} --skip-networking & ++$MYMYSQLD --no-defaults --initialize-insecure --user=${ME} --datadir=${ABSMYTMPDIR} ++$MYMYSQLD --no-defaults --skip-grant --user=${ME} --socket=${ABSMYTMPDIR}/mysql.sock --datadir=${ABSMYTMPDIR} --skip-networking & + + # mysqld needs some time to come up to speed. This avoids irritating error messages from the subsequent loop + sleep 3 +@@ -49,7 +48,7 @@ export MYSQL_UNIX_PORT=${ABSMYTMPDIR}/my + + echo -n pinging mysqld. + attempts=0 +-while ! mysqladmin --socket=${ABSMYTMPDIR}/mysql.sock ping ; do ++while ! mysqladmin -uroot --socket=${ABSMYTMPDIR}/mysql.sock ping ; do + sleep 3 + attempts=$((attempts+1)) + if [ ${attempts} -gt 10 ] ; then +@@ -71,6 +70,6 @@ done + + ecode=$? + +-mysqladmin --socket=${ABSMYTMPDIR}/mysql.sock shutdown ++mysqladmin -uroot --socket=${ABSMYTMPDIR}/mysql.sock shutdown + rm -rf ${ABSMYTMPDIR} + exit ${ecode}
  3. Download patch debian/control

    --- 0.9.0-6/debian/control 2018-04-23 15:46:23.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/control 2018-04-23 22:12:32.000000000 +0000 @@ -1,7 +1,8 @@ Source: libdbi-drivers Section: libs Priority: optional -Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org> +Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> +XSBC-Original-Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org> Uploaders: Prach Pongpanich <prachpub@gmail.com> Build-Depends: automake, debhelper (>= 11), @@ -10,7 +11,6 @@ Build-Depends: automake, libdbi-dev (>= 0.9.0), default-libmysqlclient-dev, libpq-dev (>= 8.3~rc2-1+b1), - libsqlite0-dev, libsqlite3-dev, libtool, locales-all | language-pack-en, @@ -24,17 +24,6 @@ Standards-Version: 4.1.4 #Vcs-Browser: http://anonscm.debian.org/gitweb/?p=collab-maint/libdbi-drivers.git Homepage: http://libdbi.sourceforge.net/ -Package: libdbd-sqlite -Architecture: any -Multi-Arch: same -Pre-Depends: ${misc:Pre-Depends} -Depends: ${misc:Depends}, - ${shlibs:Depends} -Description: SQLite database driver for libdbi - This driver provides support for serverless SQLite databases through the - libdbi Database Independent Abstraction Layer. Switching a program's driver - does not require recompilation or rewriting source code. - Package: libdbd-sqlite3 Architecture: any Multi-Arch: same
  4. Download patch debian/buildtests/Makefile

    --- 0.9.0-6/debian/buildtests/Makefile 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/buildtests/Makefile 2016-04-11 10:21:54.000000000 +0000 @@ -0,0 +1,18 @@ +all: test_dl all-libs/stamp + ./test_dl G all-libs + ./test_dl N all-libs + +libtest_dbi_lib.so: + gcc test_dbi_lib.c -export-dynamic -shared -Wl,-soname,libtest_dbi_lib.so -o libtest_dbi_lib.so -ldbi -fPIC + +test_dl: libtest_dbi_lib.so + gcc test_dl.c -o test_dl -ldl + +all-libs/stamp: + rm -rf all-libs + mkdir -p all-libs + olddir=`pwd` && cd ../.. && rootdir=`pwd` && for f in `find drivers -name 'libdbd*.so'` ; do ln -vs $$rootdir/$$f $$olddir/all-libs ; done + +clean: + rm -f test_dl libtest_dbi_lib.so + rm -rf all-libs
  5. Download patch debian/buildtests/test_dl.c

    --- 0.9.0-6/debian/buildtests/test_dl.c 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/buildtests/test_dl.c 2016-04-11 10:21:54.000000000 +0000 @@ -0,0 +1,78 @@ +/* + test_dl - test program for dlopening and then loading drivers + + Copyright (C) 2010 Canonical, Ltd. All Rights Reserved + Author: Clint Byrum <clint@ubuntu.com> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser Public License as published by + the Free Software Foundation, either version 2.1 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser Public License for more details. + + You should have received a copy of the GNU Lesser Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#include <stdio.h> +#include <dlfcn.h> + +void usage(char *prog); + +void usage(char *prog) +{ + fprintf(stderr, "usage: %s G(for global)|N(for noglobal) /path/to/lib/dbd\n",prog); +} + +int main(int argc, char **argv) +{ + void *handle; + if (argc < 3) + { + usage(argv[0]); + return 1; + } + if (argv[1][0] == 'G') + { + handle = dlopen("./libtest_dbi_lib.so", RTLD_NOW|RTLD_GLOBAL); + } + else if (argv[1][0] == 'N') + { + handle = dlopen("./libtest_dbi_lib.so", RTLD_NOW); + } else { + usage(argv[0]); + return 1; + } + + if (!handle) + { + printf("Failed to load test_dbi_lib.so"); + return 1; + } + + int (*init_db)(char *); + char *error; + + //return test_main(argc,argv); + *(void **) (&init_db) = dlsym(handle, "init_db"); + + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + return 1; + } + + int ndrivers = (*init_db)(argv[2]); + + if (ndrivers < 1) + { + fprintf(stderr, "Either you have no drivers in %s , or there was a problem loading them.\n",argv[2]); + return 1; + } + + fprintf(stdout,"num drivers = %d\n", (*init_db)(argv[2])); + return 0; +}
  6. Download patch debian/buildtests/test_dbi_lib.c

    --- 0.9.0-6/debian/buildtests/test_dbi_lib.c 1970-01-01 00:00:00.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/buildtests/test_dbi_lib.c 2016-04-11 10:21:54.000000000 +0000 @@ -0,0 +1,27 @@ +/* + test_dbi_lib - lodable test library that uses drivers + + Copyright (C) 2010 Canonical, Ltd. All Rights Reserved + Author: Clint Byrum <clint@ubuntu.com> + + This library is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser Public License as published by + the Free Software Foundation, either version 2.1 of the License, or + (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser Public License for more details. + + You should have received a copy of the GNU Lesser Public License + along with this library. If not, see <http://www.gnu.org/licenses/>. +*/ +#include <dbi/dbi.h> + +int init_db(char *dir); + +int init_db(char *dir) +{ + return dbi_initialize(dir); +}
  7. Download patch debian/test_mysql.sh

    --- 0.9.0-6/debian/test_mysql.sh 2014-01-28 21:02:29.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/test_mysql.sh 2019-08-13 01:50:06.000000000 +0000 @@ -26,9 +26,8 @@ set -e MYTEMP_DIR=`mktemp -d` ME=`whoami` -# --force is needed because buildd's can't resolve their own hostnames to ips -mysql_install_db --no-defaults --datadir=${MYTEMP_DIR} --force --skip-name-resolve --user=${ME} -/usr/sbin/mysqld --no-defaults --skip-grant --user=${ME} --socket=${MYTEMP_DIR}/mysql.sock --datadir=${MYTEMP_DIR} --skip-networking & +/usr/sbin/mysqld --no-defaults --initialize-insecure --user=${ME} --datadir=${MYTEMP_DIR} +/usr/sbin/mysqld --no-defaults --user=${ME} --socket=${MYTEMP_DIR}/mysql.sock --datadir=${MYTEMP_DIR} --skip-networking & # This sets the path of the MySQL socket for any libmysql-client users, which includes # the ./tests/test_dbi client @@ -36,7 +35,7 @@ export MYSQL_UNIX_PORT=${MYTEMP_DIR}/mys echo -n pinging mysqld. attempts=0 -while ! /usr/bin/mysqladmin --socket=${MYTEMP_DIR}/mysql.sock ping ; do +while ! /usr/bin/mysqladmin -uroot --socket=${MYTEMP_DIR}/mysql.sock ping ; do sleep 3 attempts=$((attempts+1)) if [ ${attempts} -gt 10 ] ; then @@ -57,6 +56,6 @@ done ecode=$? -/usr/bin/mysqladmin --socket=${MYTEMP_DIR}/mysql.sock shutdown +/usr/bin/mysqladmin -uroot --socket=${MYTEMP_DIR}/mysql.sock shutdown rm -rf ${MYTEMP_DIR} exit ${ecode}
  8. Download patch debian/patches/series

    --- 0.9.0-6/debian/patches/series 2018-04-23 15:46:23.000000000 +0000 +++ 0.9.0-6ubuntu2/debian/patches/series 2019-08-13 01:50:15.000000000 +0000 @@ -5,3 +5,4 @@ disable_some_tests_for_sqlite3.patch fix_ftbfs_on_hurd.patch dbd_sqlite3_resolve_a_stack_buffer_overflow.patch freetds-1.0-fix.patch +mysql-8.0.patch
  9. Download patch debian/copyright
  1. libdbi-drivers