Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.1:Update
libreoffice
libreoffice-firebird3-selftest.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libreoffice-firebird3-selftest.patch of Package libreoffice
From: Michal Kubecek <mkubecek@suse.cz> Date: Thu, 2 Jun 2016 11:56:10 +0200 Subject: connectivity: firebird: use ODS12 test database for Firebird 3 Patch-mainline: Not tagged yet (5.3.0.0.alpha1?) Git-commit: de899f0b350e51b1932fa4674f7ce2ae386cd1ce References: bsc#982485 Firebird 3.0 uses new database file format (ODS, On Disk Structure) so that we need to use either ODS11 or ODS12 version of test database for dbaccess_firebird test, depending on whether building against Firebird 2.5 or 3.0 libraries. Change-Id: Idecdc35b0ac87ab7f46cb79b5c044c65423a2c7e Reviewed-on: https://gerrit.libreoffice.org/25846 Reviewed-by: jan iversen <jani@documentfoundation.org> Tested-by: jan iversen <jani@documentfoundation.org> --- config_host/config_firebird.h.in | 10 ++++++++++ configure.ac | 16 +++++++++++++--- dbaccess/qa/unit/data/firebird_integer_x64le_ods12.odb | Bin 0 -> 75701 bytes dbaccess/qa/unit/firebird.cxx | 5 +++++ 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 config_host/config_firebird.h.in create mode 100644 dbaccess/qa/unit/data/firebird_integer_x64le_ods12.odb diff --git a/config_host/config_firebird.h.in b/config_host/config_firebird.h.in new file mode 100644 index 000000000000..c6aa43ac54f3 --- /dev/null +++ b/config_host/config_firebird.h.in @@ -0,0 +1,10 @@ +/* +Settings for Firebird +*/ + +#ifndef CONFIG_FIREBIRD_H +#define CONFIG_FIREBIRD_H + +#define HAVE_FIREBIRD_30 0 + +#endif diff --git a/configure.ac b/configure.ac index 6abeae315c2e..1d137c6a129c 100644 --- a/configure.ac +++ b/configure.ac @@ -8671,8 +8671,10 @@ if test "$enable_firebird_sdbc" = "yes" ; then if test -n "${FIREBIRD_VERSION}"; then FIREBIRD_MAJOR=`echo $FIREBIRD_VERSION | cut -d"." -f1` FIREBIRD_MINOR=`echo $FIREBIRD_VERSION | cut -d"." -f2` - if test "$FIREBIRD_MAJOR" -eq "2" -a "$FIREBIRD_MINOR" -eq "5" -o \ - "$FIREBIRD_MAJOR" -eq "3" -a "$FIREBIRD_MINOR" -eq "0"; then + if test "$FIREBIRD_MAJOR" -eq "2" -a "$FIREBIRD_MINOR" -eq "5"; then + AC_MSG_RESULT([OK]) + elif test "$FIREBIRD_MAJOR" -eq "3" -a "$FIREBIRD_MINOR" -eq "0"; then + AC_DEFINE(HAVE_FIREBIRD_30, 1) AC_MSG_RESULT([OK]) else AC_MSG_ERROR([Ensure firebird 2.5.x or 3.0.x is installed]) @@ -8681,10 +8683,16 @@ if test "$enable_firebird_sdbc" = "yes" ; then __save_CFLAGS="${CFLAGS}" CFLAGS="${CFLAGS} ${FIREBIRD_CFLAGS}" AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include <ibase.h> -#if defined(FB_API_VER) && (FB_API_VER == 25 || FB_API_VER == 30) +#if defined(FB_API_VER) && FB_API_VER == 25 +int fb_api_is_25(void) { return 0; } +#elif defined(FB_API_VER) && FB_API_VER == 30 +int fb_api_is_30(void) { return 0; } #else #error "Wrong Firebird API version" #endif]])],AC_MSG_RESULT([OK]),AC_MSG_ERROR([Ensure firebird 2.5.x or 3.0.x is installed])) + if nm conftest.$OBJEXT | grep fb_api_is_30; then + AC_DEFINE(HAVE_FIREBIRD_30, 1) + fi CFLAGS="${__save_CFLAGS}" fi ENABLE_FIREBIRD_SDBC="TRUE" @@ -8727,6 +8735,7 @@ AC_SUBST(LIBATOMIC_OPS_LIBS) AC_SUBST(SYSTEM_FIREBIRD) AC_SUBST(FIREBIRD_CFLAGS) AC_SUBST(FIREBIRD_LIBS) +AC_SUBST(HAVE_FIREBIRD_30) dnl AC_SUBST([TOMMATH_CFLAGS]) dnl AC_SUBST([TOMMATH_LIBS]) @@ -12928,6 +12937,7 @@ AC_CONFIG_HEADERS([config_host/config_cairo_canvas.h]) AC_CONFIG_HEADERS([config_host/config_cxxabi.h]) AC_CONFIG_HEADERS([config_host/config_dbus.h]) AC_CONFIG_HEADERS([config_host/config_features.h]) +AC_CONFIG_HEADERS([config_host/config_firebird.h]) AC_CONFIG_HEADERS([config_host/config_folders.h]) AC_CONFIG_HEADERS([config_host/config_gio.h]) AC_CONFIG_HEADERS([config_host/config_global.h]) diff --git a/dbaccess/qa/unit/firebird.cxx b/dbaccess/qa/unit/firebird.cxx index c9ee575f9b7f..da0bed760d2e 100644 --- a/dbaccess/qa/unit/firebird.cxx +++ b/dbaccess/qa/unit/firebird.cxx @@ -16,6 +16,7 @@ #include <com/sun/star/sdbc/XRow.hpp> #include <com/sun/star/sdbc/XStatement.hpp> #include <svtools/miscopt.hxx> +#include <config_firebird.h> using namespace ::com::sun::star; using namespace ::com::sun::star::sdb; @@ -65,7 +66,11 @@ void FirebirdTest::testEmptyDBConnection() void FirebirdTest::testIntegerDatabase() { uno::Reference< XOfficeDatabaseDocument > xDocument = +#if HAVE_FIREBIRD_30 + getDocumentForFileName("firebird_integer_x64le_ods12.odb"); +#else getDocumentForFileName("firebird_integer_x64le.odb"); +#endif uno::Reference< XConnection > xConnection = getConnectionForDocument(xDocument); -- 2.9.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor