Hello community,
here is the log from the commit of package libreoffice for openSUSE:Factory checked in at 2016-07-07 15:09:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libreoffice (Old)
and /work/SRC/openSUSE:Factory/.libreoffice.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libreoffice"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libreoffice/libreoffice.changes 2016-06-29 15:09:18.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libreoffice.new/libreoffice.changes 2016-07-07 15:09:11.000000000 +0200
@@ -1,0 +2,19 @@
+Wed Jun 29 08:04:22 UTC 2016 - mkubecek@suse.cz
+
+- change BuildRequire from pkgconfig(fbembed) to libfbembed-devel;
+ this is a temporary workaround allowing build both before and
+ after firebird is upgraded to version 3.0 in Factory; once 3.0
+ is there, this will be changed to pkgconfig(fbembed) or
+ pkgconfig(fbclient), based on %suse_version
+- libreoffice-firebird3.patch:
+ build against system libfbclient2 if Firebird 3 detected
+- libreoffice-firebird3-selftest.patch:
+ fix failing selftest when built against Firebird 3 libraries;
+ the failure is caused by database file format change, provide
+ two versions of the test database and let the test select the
+ one that matches Firebird version
+- firebird_integer_x64le_ods12.odb:
+ rpmbuild doesn't support git patches adding binary files, add
+ the ODS12 test database as a source instead
+
+-------------------------------------------------------------------
@@ -5,0 +25 @@
+ * Fixes bnc#987553 CVE-2016-4324
New:
----
firebird_integer_x64le_ods12.odb
libreoffice-firebird3-selftest.patch
libreoffice-firebird3.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libreoffice.spec ++++++
--- /var/tmp/diff_new_pack.JuecDH/_old 2016-07-07 15:09:18.000000000 +0200
+++ /var/tmp/diff_new_pack.JuecDH/_new 2016-07-07 15:09:18.000000000 +0200
@@ -39,6 +39,8 @@
Source0: %{tarball_url}/libreoffice-%{version}.tar.xz
Source1: %{tarball_url}/libreoffice-help-%{version}.tar.xz
Source2: %{tarball_url}/libreoffice-translations-%{version}.tar.xz
+# test database for Patch18
+Source20: firebird_integer_x64le_ods12.odb
Source99: %{name}-rpmlintrc
# prebuilt extensions
Source402: %{external_url}/b7cae45ad2c23551fd6ccb8ae2c1f59e-numbertext_%{numbertext_version}.oxt
@@ -69,6 +71,9 @@
Patch5: mediawiki-no-broken-help.diff
# PATCH-HOTFIX-UPSTREAM: disable test that rounds wrongly on most archs
Patch16: libreoffice-hotfix-disablebrokenshapetest.patch
+# PATCH-FIX-UPSTREAM: fix build against (system) Firebird 3.0
+Patch17: libreoffice-firebird3.patch
+Patch18: libreoffice-firebird3-selftest.patch
# try to save space by using hardlinks
Patch990: install-with-hardlinks.diff
BuildRequires: %{name}-share-linker
@@ -99,6 +104,8 @@
BuildRequires: libcppunit-devel
BuildRequires: liberation-fonts
BuildRequires: libexif
+# once FB 3.0 is in Factory, change to pkgconfig(fbclient) / pkgconfig(fbembed)
+BuildRequires: libfbembed-devel
BuildRequires: libfonts
BuildRequires: libformula
BuildRequires: libjpeg-devel
@@ -136,7 +143,6 @@
BuildRequires: pkgconfig(bluez)
BuildRequires: pkgconfig(dbus-glib-1)
BuildRequires: pkgconfig(expat)
-BuildRequires: pkgconfig(fbembed)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(glew) >= 1.10.0
BuildRequires: pkgconfig(glu)
@@ -910,6 +916,9 @@
%patch4
%patch5
%patch16 -p1
+%patch17 -p1
+%patch18 -p1
+cp -vn %{SOURCE20} dbaccess/qa/unit/data/
%patch990 -p1
# Do not generate doxygen timestamp
++++++ libreoffice-firebird3-selftest.patch ++++++
From: Michal Kubecek
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
Tested-by: jan iversen
---
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
-#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
#include
#include
+#include
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
++++++ libreoffice-firebird3.patch ++++++
From: Michal Kubecek
Date: Thu, 2 Jun 2016 08:12:37 +0200
Subject: configure.ac: allow build with Firebird 3.0
Patch-mainline: Not tagged yet (5.3.0.0.alpha1?)
Git-commit: e5d48f12faec6027bf79411cb69111d90f4e4129
References: bsc#982485
Relax the checks in configure.ac to allow building against recently
released Firebird 3.0. In this version, libfbclient is also used to
access local database files (embedded server mode) rather than
separate libfbembed.
Change-Id: Id498cbca22409f95ee299a6165cc765efa25eca7
Reviewed-on: https://gerrit.libreoffice.org/25845
Tested-by: Jenkins
Reviewed-by: jan iversen
---
configure.ac | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac
index ebca3bab7665..6abeae315c2e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -8653,8 +8653,10 @@ if test "$enable_firebird_sdbc" = "yes" ; then
AC_PATH_PROG(FIREBIRDCONFIG, [fb_config])
if test -z "$FIREBIRDCONFIG"; then
AC_MSG_NOTICE([No fb_config -- using pkg-config])
- PKG_CHECK_MODULES(FIREBIRD, fbembed)
- FIREBIRD_VERSION=`pkg-config --modversion fbembed`
+ PKG_CHECK_MODULES([FIREBIRD], [fbclient >= 3], [FIREBIRD_PKGNAME=fbclient], [
+ PKG_CHECK_MODULES([FIREBIRD], [fbembed], [FIREBIRD_PKGNAME=fbembed])
+ ])
+ FIREBIRD_VERSION=`pkg-config --modversion "$FIREBIRD_PKGNAME"`
else
AC_MSG_NOTICE([fb_config found])
FIREBIRD_VERSION=`$FIREBIRDCONFIG --version`
@@ -8669,19 +8671,20 @@ 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"; then
+ if test "$FIREBIRD_MAJOR" -eq "2" -a "$FIREBIRD_MINOR" -eq "5" -o \
+ "$FIREBIRD_MAJOR" -eq "3" -a "$FIREBIRD_MINOR" -eq "0"; then
AC_MSG_RESULT([OK])
else
- AC_MSG_ERROR([Ensure firebird 2.5.x is installed])
+ AC_MSG_ERROR([Ensure firebird 2.5.x or 3.0.x is installed])
fi
else
__save_CFLAGS="${CFLAGS}"
CFLAGS="${CFLAGS} ${FIREBIRD_CFLAGS}"
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include
-#if defined(FB_API_VER) && FB_API_VER == 25
+#if defined(FB_API_VER) && (FB_API_VER == 25 || FB_API_VER == 30)
#else
#error "Wrong Firebird API version"
-#endif]])],AC_MSG_RESULT([OK]),AC_MSG_ERROR([Ensure firebird 2.5.x is installed]))
+#endif]])],AC_MSG_RESULT([OK]),AC_MSG_ERROR([Ensure firebird 2.5.x or 3.0.x is installed]))
CFLAGS="${__save_CFLAGS}"
fi
ENABLE_FIREBIRD_SDBC="TRUE"
--
2.9.0