Accepting request 406393 from LibreOffice:Factory
- 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 * Fixes bnc#987553 CVE-2016-4324 OBS-URL: https://build.opensuse.org/request/show/406393 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libreoffice?expand=0&rev=114
This commit is contained in:
commit
dcc3729829
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -23,3 +23,4 @@
|
|||||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||||
## Specific LFS patterns
|
## Specific LFS patterns
|
||||||
185d60944ea767075d27247c3162b3bc-unowinreg.dll filter=lfs diff=lfs merge=lfs -text
|
185d60944ea767075d27247c3162b3bc-unowinreg.dll filter=lfs diff=lfs merge=lfs -text
|
||||||
|
firebird_integer_x64le_ods12.odb filter=lfs diff=lfs merge=lfs -text
|
||||||
|
3
firebird_integer_x64le_ods12.odb
Normal file
3
firebird_integer_x64le_ods12.odb
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:38e8bfbf16aef63ea9438f937138ec03d409b2f47fcc1605fd868a2d7ba12c17
|
||||||
|
size 75701
|
119
libreoffice-firebird3-selftest.patch
Normal file
119
libreoffice-firebird3-selftest.patch
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
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
|
||||||
|
|
65
libreoffice-firebird3.patch
Normal file
65
libreoffice-firebird3.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
From: Michal Kubecek <mkubecek@suse.cz>
|
||||||
|
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 <ci@libreoffice.org>
|
||||||
|
Reviewed-by: jan iversen <jani@documentfoundation.org>
|
||||||
|
---
|
||||||
|
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 <ibase.h>
|
||||||
|
-#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
|
||||||
|
|
@ -1,8 +1,28 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
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
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jun 24 19:44:10 UTC 2016 - tchvatal@suse.com
|
Fri Jun 24 19:44:10 UTC 2016 - tchvatal@suse.com
|
||||||
|
|
||||||
- Version update to 5.2.0.1:
|
- Version update to 5.2.0.1:
|
||||||
* Various bugfixes for the rc1 candidate
|
* Various bugfixes for the rc1 candidate
|
||||||
|
* Fixes bnc#987553 CVE-2016-4324
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jun 17 17:25:11 UTC 2016 - tchvatal@suse.com
|
Fri Jun 17 17:25:11 UTC 2016 - tchvatal@suse.com
|
||||||
|
@ -39,6 +39,8 @@ Url: http://www.documentfoundation.org/
|
|||||||
Source0: %{tarball_url}/libreoffice-%{version}.tar.xz
|
Source0: %{tarball_url}/libreoffice-%{version}.tar.xz
|
||||||
Source1: %{tarball_url}/libreoffice-help-%{version}.tar.xz
|
Source1: %{tarball_url}/libreoffice-help-%{version}.tar.xz
|
||||||
Source2: %{tarball_url}/libreoffice-translations-%{version}.tar.xz
|
Source2: %{tarball_url}/libreoffice-translations-%{version}.tar.xz
|
||||||
|
# test database for Patch18
|
||||||
|
Source20: firebird_integer_x64le_ods12.odb
|
||||||
Source99: %{name}-rpmlintrc
|
Source99: %{name}-rpmlintrc
|
||||||
# prebuilt extensions
|
# prebuilt extensions
|
||||||
Source402: %{external_url}/b7cae45ad2c23551fd6ccb8ae2c1f59e-numbertext_%{numbertext_version}.oxt
|
Source402: %{external_url}/b7cae45ad2c23551fd6ccb8ae2c1f59e-numbertext_%{numbertext_version}.oxt
|
||||||
@ -69,6 +71,9 @@ Patch4: nlpsolver-no-broken-help.diff
|
|||||||
Patch5: mediawiki-no-broken-help.diff
|
Patch5: mediawiki-no-broken-help.diff
|
||||||
# PATCH-HOTFIX-UPSTREAM: disable test that rounds wrongly on most archs
|
# PATCH-HOTFIX-UPSTREAM: disable test that rounds wrongly on most archs
|
||||||
Patch16: libreoffice-hotfix-disablebrokenshapetest.patch
|
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
|
# try to save space by using hardlinks
|
||||||
Patch990: install-with-hardlinks.diff
|
Patch990: install-with-hardlinks.diff
|
||||||
BuildRequires: %{name}-share-linker
|
BuildRequires: %{name}-share-linker
|
||||||
@ -99,6 +104,8 @@ BuildRequires: libbase
|
|||||||
BuildRequires: libcppunit-devel
|
BuildRequires: libcppunit-devel
|
||||||
BuildRequires: liberation-fonts
|
BuildRequires: liberation-fonts
|
||||||
BuildRequires: libexif
|
BuildRequires: libexif
|
||||||
|
# once FB 3.0 is in Factory, change to pkgconfig(fbclient) / pkgconfig(fbembed)
|
||||||
|
BuildRequires: libfbembed-devel
|
||||||
BuildRequires: libfonts
|
BuildRequires: libfonts
|
||||||
BuildRequires: libformula
|
BuildRequires: libformula
|
||||||
BuildRequires: libjpeg-devel
|
BuildRequires: libjpeg-devel
|
||||||
@ -136,7 +143,6 @@ BuildRequires: perl(Digest::MD5)
|
|||||||
BuildRequires: pkgconfig(bluez)
|
BuildRequires: pkgconfig(bluez)
|
||||||
BuildRequires: pkgconfig(dbus-glib-1)
|
BuildRequires: pkgconfig(dbus-glib-1)
|
||||||
BuildRequires: pkgconfig(expat)
|
BuildRequires: pkgconfig(expat)
|
||||||
BuildRequires: pkgconfig(fbembed)
|
|
||||||
BuildRequires: pkgconfig(gl)
|
BuildRequires: pkgconfig(gl)
|
||||||
BuildRequires: pkgconfig(glew) >= 1.10.0
|
BuildRequires: pkgconfig(glew) >= 1.10.0
|
||||||
BuildRequires: pkgconfig(glu)
|
BuildRequires: pkgconfig(glu)
|
||||||
@ -910,6 +916,9 @@ Provides additional %{langname} translations and resources for %{project}. \
|
|||||||
%patch4
|
%patch4
|
||||||
%patch5
|
%patch5
|
||||||
%patch16 -p1
|
%patch16 -p1
|
||||||
|
%patch17 -p1
|
||||||
|
%patch18 -p1
|
||||||
|
cp -vn %{SOURCE20} dbaccess/qa/unit/data/
|
||||||
%patch990 -p1
|
%patch990 -p1
|
||||||
|
|
||||||
# Do not generate doxygen timestamp
|
# Do not generate doxygen timestamp
|
||||||
|
Loading…
Reference in New Issue
Block a user