Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP1:GA
libreoffice.8149
libreoffice.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libreoffice.spec of Package libreoffice.8149
# # spec file for package libreoffice # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # List of supported langs, populated bellow in the lang macros %global langpack_langs %{nil} # extensions %define numbertext_version 0.9.5 # Urls %define external_url http://dev-www.libreoffice.org/src/ #%define tarball_url http://download.documentfoundation.org/libreoffice/src/6.0.5 %define tarball_url http://dev-builds.libreoffice.org/pre-releases/src/ # LTO needs newer toolchain stack only %if 0%{?suse_version} >= 1500 %bcond_without lto %else %bcond_with lto %endif # Enable the kde integration on openSUSE only %if 0%{?is_opensuse} %bcond_without kdeintegration %else %bcond_with kdeintegration %endif %if 0%{?suse_version} > 1320 && 0%{?is_opensuse} %bcond_without firebird %else %bcond_with firebird %endif %if 0%{?suse_version} > 1320 || (0%{?sle_version} >= 120300 && 0%{?is_opensuse}) %bcond_without system_gpgme %bcond_without gtk3 %else # Hack in the bundled libs to not pop up on requires/provides to avoid # faking libreoffice provide some system packages %global __provides_exclude_from ^%{_libdir}/libreoffice/program/lib(gpg|assuan).*\\.so.*$ %global __requires_exclude_from ^%{_libdir}/libreoffice/program/lib(gpg|assuan).*\\.so.*$ %global __requires_exclude ^libgpgmepp\\.so.*$ %bcond_with system_gpgme %bcond_with gtk3 %endif Name: libreoffice Version: 6.0.5.2 Release: 0 Summary: A Free Office Suite (Framework) License: LGPL-3.0-or-later AND MPL-2.0+ Group: Productivity/Office/Suite URL: http://www.documentfoundation.org/ Source0: %{tarball_url}/libreoffice-%{version}.tar.xz Source1: %{tarball_url}/libreoffice-%{version}.tar.xz.asc Source2: %{tarball_url}/libreoffice-help-%{version}.tar.xz Source3: %{tarball_url}/libreoffice-help-%{version}.tar.xz.asc Source4: %{tarball_url}/libreoffice-translations-%{version}.tar.xz Source5: %{tarball_url}/libreoffice-translations-%{version}.tar.xz.asc # SUSE color palette bsc#1045339 https://intra.microfocus.net/brandcentral/suse/identity.php#palette Source6: SUSE.soc Source98: %{name}.keyring Source99: %{name}-rpmlintrc # prebuilt extensions Source402: %{external_url}/b7cae45ad2c23551fd6ccb8ae2c1f59e-numbertext_%{numbertext_version}.oxt # used extensions sources Source450: %{external_url}/1f467e5bb703f12cbbb09d5cf67ecf4a-converttexttonumber-1-5-0.oxt Source452: %{external_url}/90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 # GPGME bundle list Source1000: %{external_url}/gpgme-1.9.0.tar.bz2 Source1001: %{external_url}/libgpg-error-1.27.tar.bz2 Source1002: %{external_url}/libassuan-2.4.3.tar.bz2 # Internal bundled stuff we can't remove # To build this we would pull cygwin; not worth it Source2001: http://dev-www.libreoffice.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll # hsqldb simply does not work with new system version, but luckily we migrate to firebird Source2002: %{external_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip # Heavily patched and not possible to use system one Source2003: %{external_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip Source2004: %{external_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip # Needed for wiki-published and always taken as bundled Source2005: %{external_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip # Needed for integration tests Source2006: http://dev-www.libreoffice.org/extern/8249374c274932a21846fa7629c2aa9b-officeotron-0.7.4-master.jar Source2007: http://dev-www.libreoffice.org/extern/a084cd548b586552cb7d3ee51f1af969-odfvalidator-1.1.8-incubating-SNAPSHOT-jar-with-dependencies.jar # PDFium is bundled everywhere Source2008: %{external_url}/pdfium-3235.tar.bz2 # change user config dir name from ~/.libreoffice/3 to ~/.libreoffice/3-suse # to avoid BerkleyDB incompatibility with the plain build Patch1: scp2-user-config-suse.diff # do not use the broken help; unopkg complained about it when registering extensions # FIXME: the right fix is to compile the help and produce the .db_, .ht_, and other files Patch2: nlpsolver-no-broken-help.diff Patch3: mediawiki-no-broken-help.diff Patch4: kde5-configure-checks.patch Patch5: 0001-Use-PYTHON_FOR_BUILD-instead-of-calling-python-direc.patch # LO-L3: Wrong transition time Patch7: bnc1039203.patch # LO-L3: Slide with chart has some strange (too large?) elements (PPTX) Patch8: bnc1060128.patch # PATCH-FROM-UPSTREAM fix build with new icu Patch9: libreoffice-icu61.patch # LO-L3: Table borders appear black in LibreOffice (while white in PowerPoint) Patch10: bnc1088262.patch # try to save space by using hardlinks Patch990: install-with-hardlinks.diff BuildRequires: %{name}-share-linker BuildRequires: ant BuildRequires: autoconf BuildRequires: awk BuildRequires: bison BuildRequires: bsh2 BuildRequires: commons-logging BuildRequires: cups-devel BuildRequires: curl-devel # Needed for tests BuildRequires: dejavu-fonts BuildRequires: doxygen >= 1.8.4 BuildRequires: fdupes BuildRequires: flex BuildRequires: flute BuildRequires: gcc-c++ BuildRequires: glm-devel # Needed for tests BuildRequires: google-carlito-fonts BuildRequires: gperf BuildRequires: hyphen-devel # genbrk binary is required BuildRequires: icu BuildRequires: java-devel >= 1.6 BuildRequires: junit4 BuildRequires: libbase BuildRequires: libcppunit-devel >= 1.14.0 BuildRequires: liberation-fonts BuildRequires: libexif BuildRequires: libfonts BuildRequires: libformula BuildRequires: libjpeg-devel BuildRequires: liblayout BuildRequires: libloader BuildRequires: libmysqlclient-devel BuildRequires: libmysqlcppconn-devel >= 1.0.6 BuildRequires: librepository BuildRequires: libserializer BuildRequires: libtool BuildRequires: lpsolve-devel BuildRequires: make BuildRequires: memory-constraints BuildRequires: neon-devel >= 0.26.0 BuildRequires: openldap2-devel BuildRequires: pentaho-libxml BuildRequires: pentaho-reporting-flow-engine BuildRequires: pkgconfig BuildRequires: python3-xml BuildRequires: sac BuildRequires: ucpp BuildRequires: unixODBC-devel BuildRequires: unzip BuildRequires: update-desktop-files BuildRequires: xml-commons-apis BuildRequires: xz BuildRequires: zip BuildRequires: perl(Archive::Zip) BuildRequires: perl(Digest::MD5) BuildRequires: pkgconfig(bluez) BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(epoxy) >= 1.2 BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(gl) BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(graphite2) >= 0.9.3 BuildRequires: pkgconfig(gssrpc) BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) BuildRequires: pkgconfig(gtk+-2.0) >= 2.18.0 BuildRequires: pkgconfig(harfbuzz) >= 0.9.42 BuildRequires: pkgconfig(harfbuzz-icu) >= 0.9.42 BuildRequires: pkgconfig(hunspell) BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(krb5) BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(libabw-0.1) BuildRequires: pkgconfig(libcdr-0.1) >= 0.1 BuildRequires: pkgconfig(libclucene-core) BuildRequires: pkgconfig(libcmis-0.5) >= 0.5.0 BuildRequires: pkgconfig(libe-book-0.1) >= 0.1.1 BuildRequires: pkgconfig(libeot) >= 0.01 BuildRequires: pkgconfig(libepubgen-0.1) BuildRequires: pkgconfig(libetonyek-0.1) >= 0.1.7 BuildRequires: pkgconfig(libexttextcat) >= 3.1.1 BuildRequires: pkgconfig(libfreehand-0.1) BuildRequires: pkgconfig(liblangtag) BuildRequires: pkgconfig(libmspub-0.1) >= 0.1 BuildRequires: pkgconfig(libmwaw-0.3) >= 0.3.13 BuildRequires: pkgconfig(libodfgen-0.1) >= 0.1.4 BuildRequires: pkgconfig(liborcus-0.13) BuildRequires: pkgconfig(libpagemaker-0.0) BuildRequires: pkgconfig(libpq) BuildRequires: pkgconfig(libqxp-0.0) BuildRequires: pkgconfig(librevenge-0.0) >= 0.0.1 BuildRequires: pkgconfig(librsvg-2.0) BuildRequires: pkgconfig(libstaroffice-0.0) >= 0.0.4 BuildRequires: pkgconfig(libvisio-0.1) >= 0.1 BuildRequires: pkgconfig(libwpd-0.10) >= 0.10 BuildRequires: pkgconfig(libwpg-0.3) BuildRequires: pkgconfig(libwps-0.4) >= 0.4.7 BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(libzmf-0.0) BuildRequires: pkgconfig(mdds-1.2) >= 1.2.3 BuildRequires: pkgconfig(mythes) BuildRequires: pkgconfig(nspr) >= 4.8 BuildRequires: pkgconfig(nss) >= 3.9.3 BuildRequires: pkgconfig(poppler) BuildRequires: pkgconfig(poppler-cpp) BuildRequires: pkgconfig(python3) BuildRequires: pkgconfig(redland) BuildRequires: pkgconfig(sane-backends) BuildRequires: pkgconfig(xmlsec1-nss) >= 1.2.24 BuildRequires: pkgconfig(xrandr) BuildRequires: pkgconfig(xt) # We need at least english to launch ourselves. Requires: liberation-fonts Requires: libreoffice-branding >= 6.0 Requires: libreoffice-icon-themes = %{version} Requires: libreoffice-l10n-en = %{version} Requires: python3 Recommends: dejavu-fonts Recommends: google-carlito-fonts Provides: %{name}-draw-extensions = %{version} Obsoletes: %{name}-draw-extensions < %{version} Provides: %{name}-impress-extensions = %{version} Obsoletes: %{name}-impress-extensions < %{version} Provides: %{name}-base-extensions = %{version} Obsoletes: %{name}-base-extensions < %{version} Provides: %{name}-kde = %{version} Obsoletes: %{name}-kde < %{version} Provides: %{name}-l10n-prebuild = %{version} Obsoletes: %{name}-l10n-prebuild < %{version} Provides: %{name}-mono = %{version} Obsoletes: %{name}-mono < %{version} Provides: %{name}-ure = %{version} Obsoletes: %{name}-ure < %{version} Provides: %{name}-icon-theme-crystal = %{version} Obsoletes: %{name}-icon-theme-crystal < %{version} Provides: %{name}-icon-theme-oxygen = %{version} Obsoletes: %{name}-icon-theme-oxygen < %{version} ExclusiveArch: aarch64 %{ix86} x86_64 %if 0%{?suse_version} < 1500 Requires(post): update-desktop-files Requires(postun): update-desktop-files %endif %if %{with gtk3} BuildRequires: pkgconfig(glib-2.0) >= 2.40 BuildRequires: pkgconfig(gtk+-3.0) %else Provides: libreofficekit = %{version} Obsoletes: libreofficekit < %{version} Provides: libreofficekit-devel = %{version} Obsoletes: libreofficekit-devel < %{version} Provides: %{name}-gtk3 = %{version} Obsoletes: %{name}-gtk3 < %{version} %endif %if %{with system_gpgme} BuildRequires: libgpgmepp-devel %else BuildRequires: chrpath %endif %if 0%{?suse_version} > 1325 BuildRequires: libboost_date_time-devel BuildRequires: libboost_filesystem-devel BuildRequires: libboost_iostreams-devel BuildRequires: libboost_locale-devel BuildRequires: libboost_system-devel %else BuildRequires: boost-devel %endif %if %{with firebird} BuildRequires: pkgconfig(fbclient) %endif %if %{with kdeintegration} BuildRequires: libkde4-devel %else Provides: %{name}-kde4 = %{version} Obsoletes: %{name}-kde4 < %{version} Provides: %{name}-qt5 = %{version} Obsoletes: %{name}-qt5 < %{version} %endif %description LibreOffice is a comprehensive office package featuring a word processor, a spreadsheet, a presentation program, and much more. This package provides only the basic framework. You have to install the additional modules to get the required functionality, see packages: - libreoffice-base - libreoffice-calc - libreoffice-draw - libreoffice-impress - libreoffice-math - libreoffice-writer Some optional features are provided by extra packages, for example: - libreoffice-mailmerge - libreoffice-filters - libreoffice-qt5 - libreoffice-gnome Non-English localizations are provided by extra packages as well, for example: - libreoffice-l10n-de - libreoffice-l10n-fr - libreoffice-l10n-it %package branding-upstream Summary: Original Branding for LibreOffice Group: Productivity/Office/Suite Supplements: libreoffice Conflicts: libreoffice-branding Provides: libreoffice-branding = %{version} Provides: libreoffice-branding-openSUSE = 4.0.1 Obsoletes: libreoffice-branding-openSUSE < 4.0.1 Provides: libreoffice-branding-SLE = 4.0.1 Obsoletes: libreoffice-branding-SLE < 4.0.1 BuildArch: noarch %description branding-upstream This package includes the original branding for the LibreOffice office suite. %package icon-themes Summary: LibreOffice Icon Themes Group: Productivity/Office/Suite Requires(post): %{name}-share-linker Requires(postun): %{name}-share-linker Supplements: libreoffice Provides: %{name}-icon-theme-breeze = %{version} Obsoletes: %{name}-icon-theme-breeze < %{version} Provides: %{name}-icon-theme-galaxy = %{version} Obsoletes: %{name}-icon-theme-galaxy < %{version} Provides: %{name}-icon-theme-hicontrast = %{version} Obsoletes: %{name}-icon-theme-hicontrast < %{version} Provides: %{name}-icon-theme-sifr = %{version} Obsoletes: %{name}-icon-theme-sifr < %{version} Provides: %{name}-icon-theme-tango = %{version} Obsoletes: %{name}-icon-theme-tango < %{version} BuildArch: noarch %description icon-themes This package provides all of the LibreOffice icon themes. %package glade Summary: Support for creating LibreOffice dialogs in glade Group: Productivity/Office/Suite Requires: %{name} = %{version} BuildArch: noarch %description glade %{name}-glade contains a catalog of LibreOffice-specific widgets for glade and ui-previewer tool to check the visual appearance of dialogs. %package gdb-pretty-printers Summary: Additional support for debugging with gdb Group: Productivity/Office/Suite Requires: gdb Requires: libreoffice = %{version} Requires: python3-six Supplements: libreoffice-debuginfo = %{version} BuildArch: noarch %description gdb-pretty-printers This package provides gdb pretty printers for package %{name}. %package base Summary: LibreOffice Base Group: Productivity/Office/Suite Requires: %{name} = %{version} Requires: pentaho-reporting-flow-engine %if 0%{?suse_version} <= 1500 Supplements: %{name} %endif %ifarch %{ix86} Requires: jre-32 >= 1.6 %endif %ifarch x86_64 aarch64 Requires: jre-64 >= 1.6 %endif %description base This module allows you to manage databases, create queries and reports to track and manage your information by using LibreOffice office suite. %package calc Summary: LibreOffice Calc Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description calc This module allows you to perform calculation, analyze information and manage lists in spreadsheets by using LibreOffice office suite. %package draw Summary: LibreOffice Draw Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description draw This module allows you to create and edit drawings, flow charts, and logos by using LibreOffice office suite. %package math Summary: LibreOffice Math Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description math This module allows you to create and edit scientific formulas and equations by using LibreOffice office suite. %package impress Summary: LibreOffice Impress Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description impress This module allows you to create and edit presentations for slideshows, meeting and Web pages by using LibreOffice office suite. %package writer Summary: LibreOffice Writer and Web Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description writer This module allows you to create and edit text and graphics in letters, reports, documents and Web pages by using LibreOffice office suite. %package base-drivers-postgresql Summary: PostgreSQL Database Driver for LibreOffice Group: Productivity/Office/Suite Requires: postgresql %description base-drivers-postgresql This package allows to access PostgreSQL databases from LibreOffice Base. %package base-drivers-firebird Summary: Firebird Database Driver for LibreOffice Group: Productivity/Office/Suite Requires: firebird %description base-drivers-firebird This package allows to access Firebird databeses from LibreOffice Base. %package filters-optional Summary: Additional Import and Export Filters for LibreOffice Group: Productivity/Office/Suite Requires: %{name}-calc = %{version} Requires: %{name}-draw = %{version} Requires: %{name}-impress = %{version} Requires: %{name}-math = %{version} Requires: %{name}-writer = %{version} Supplements: %{name} %description filters-optional This package includes some additional import and export filters for LibreOffice: - AportisDoc (Palm) - Pocket Excel - Pocket Word - DocBook - XHTML %package mailmerge Summary: Mail Merge Functionality for LibreOffice Group: Productivity/Office/Suite Requires: %{name}-pyuno = %{version} Supplements: %{name} %description mailmerge This module allows you to create form letters or send E-mail messages to many recipients using LibreOffice office suite. %package pyuno Summary: Python UNO Bridge for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} Supplements: %{name} %description pyuno The Python-UNO bridge allows to use the standard LibreOffice API from the well known Python scripting language. It can be used to develop UNO components in python, thus python UNO components may be run within the LibreOffice process and can be called from Java, C++ or the built in StarBasic scripting language. You can create and invoke scripts with the office scripting framework (OOo 2.0 and later) with it. For example, it is used for the mail merge functionality. You can find the more information at http://udk.openoffice.org/python/python-bridge.html %package gnome Summary: GNOME Extensions for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} %description gnome This package contains some GNOME extensions and GTK2 interface for LibreOffice. %package gtk3 Summary: Gtk3 interface for LibreOffice Group: Productivity/Office/Suite Requires: %{name}-gnome = %{version} Supplements: packageand(libreoffice:gnome-session) Supplements: packageand(libreoffice:mate-session-manager) Supplements: packageand(libreoffice:xfce4-session) %description gtk3 This package contains Gtk3 interface rendering option for LibreOffice. %package gtk2 Summary: Gtk2 interface for LibreOffice Group: Productivity/Office/Suite Recommends: %{name}-gnome = %{version} Conflicts: %{name}-gnome < %{version} # We are default if gtk3 is not present %if !%{with gtk3} Supplements: packageand(libreoffice:gnome-session) %endif # Without kde integration we provide gtk2 interface there %if !%{with kdeintegration} Supplements: packageand(libreoffice:plasma5-workspace) %endif %description gtk2 This package contains Gtk2 interface rendering option for LibreOffice. %package kde4 Summary: KDE4 interface for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} # we need full kdelibs4 otherwise we will crash Requires: kdelibs4 Supplements: packageand(libreoffice:plasma5-workspace) %description kde4 This package contains kde4 interface rendering options for LibreOffice. %package qt5 Summary: Qt5 interface for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} %description qt5 This package contains Qt5 interface rendering options for LibreOffice. %package sdk Summary: LibreOffice SDK Group: Documentation/HTML Requires: %{name} = %{version} Requires: gcc-c++ Requires: make Requires: ucpp Requires: zip Recommends: java-devel Provides: libreoffice-ure-devel = %{version} Obsoletes: libreoffice-ure-devel < %{version} %description sdk This package contains the files needed to build plugins/add-ons for LibreOffice. It includes header files, IDL files, needed build tools, etc. The documentation is in the package libreoffice-sdk-doc %package sdk-doc Summary: LibreOffice SDK Documentation Group: Development/Libraries/Other Suggests: %{name}-sdk = %{version} Enhances: %{name}-sdk = %{version} Provides: libreoffice-ure-devel-doc = %{version} Obsoletes: libreoffice-ure-devel-doc < %{version} %description sdk-doc This package includes documentation and examples for the LibreOffice Software Development Kit (SDK). %package officebean Summary: OfficeBean Java Bean component for LibreOffice Group: Productivity/Office/Suite Requires: %{name} = %{version} %ifarch %{ix86} Requires: jre-32 >= 1.6 %endif %ifarch x86_64 aarch64 Requires: jre-64 >= 1.6 %endif %description officebean With the OfficeBean, a developer can easily write Java applications, harnessing the power of LibreOffice. It encapsulates a connection to a locally running LibreOffice process, and hides the complexity of establishing and maintaining that connection from the developer. It also allows embedding of LibreOffice documents within the Java environment. It provides an interface the developer can use to obtain Java AWT windows into which the backend LibreOffice process draws its visual representation. These windows are then plugged into the UI hierarchy of the hosting Java application. The embedded document is controlled from the Java environment, since the OfficeBean allows developers to access the complete LibreOffice API from their Java environment giving them full control over the embedded document, its appearance and behavior. %package base-drivers-mysql Summary: MySQL Database Driver for LibreOffice Group: Productivity/Office/Suite Requires: libreoffice-base = %{version} Requires(pre): libreoffice = %{version} Supplements: packageand(libreoffice-base:mysql-client) %description base-drivers-mysql This package allows to access MySQL databases from LibreOffice Base. %package calc-extensions Summary: LibreOffice Calc Extensions Group: Productivity/Office/Suite Requires: libreoffice-calc = %{version} # pyuno is needed for the numbertext extension Requires: libreoffice-pyuno = %{version} Requires(pre): libreoffice = %{version} # the watchWindow extension is written in java %ifarch %{ix86} Requires: jre-32 >= 1.6 %endif %ifarch x86_64 aarch64 Requires: jre-64 >= 1.6 %endif %description calc-extensions This package provides extensions for LibreOffice Calc: - Convert Text to Number - New Functions NUMBERTEXT and MONEYTEXT - Solver for Nonlinear Programming %package writer-extensions Summary: LibreOffice Writer Extensions Group: Productivity/Office/Suite Requires: libreoffice-writer = %{version} Requires(pre): libreoffice = %{version} # the wiki extension is written in java %ifarch %{ix86} Requires: jre-32 >= 1.6 %endif %ifarch x86_64 aarch64 Requires: jre-64 >= 1.6 %endif %description writer-extensions This package provides extensions for LibreOffice Writer: - MediaWiki Publisher %package -n libreofficekit Summary: A library providing access to LibreOffice functionality Group: Productivity/Office/Suite Requires: %{name} = %{version} %description -n libreofficekit LibreOfficeKit can be used to access LibreOffice functionality through C/C++, without any need to use UNO. %package -n libreofficekit-devel Summary: Development files for libreofficekit Group: Productivity/Office/Suite Requires: libreofficekit = %{version} %description -n libreofficekit-devel The libreofficekit-devel package contains libraries and header files for developing applications that use libreofficekit. # Symlink autocorr files for various conversion items %define make_autocorr_aliases(l:) \ %{?-l: \ for lang in %{*}; do \ ln -sf acor_%{-l*}.dat %{buildroot}%{_libdir}/%{name}/share/autocorr/acor_$lang.dat \ done \ } \ %{!?-l:%{error:-l must be present}} # Symlinking macro for /usr/lib64 and /usr/share packing # As argument takes name of the package %define _link_noarch_files() \ %posttrans %{1} \ rpm -ql %{name}-%{1} > %{_datadir}/libreoffice/%{1}_list.txt || true \ if [ -f %{_datadir}/libreoffice/%{1}_list.txt ] ; then \ %{_bindir}/libreoffice-share-linker %{_datadir}/libreoffice/%{1}_list.txt || true \ fi \ \ %postun %{1} \ if [ "$1" = "0" -a -f %{_datadir}/libreoffice/%{1}_list.txt -a -x %{_bindir}/libreoffice-share-linker ]; then \ %{_bindir}/libreoffice-share-linker --unlink %{_datadir}/libreoffice/%{1}_list.txt || true \ rm -f %{_datadir}/libreoffice/%{1}_list.txt 2> /dev/null || true \ fi \ %{nil} # Crazy magic for the auto help/lang generating. # Inspired and adjusted from Fedora spec. %define _langpack_common(g:l:j:) \ %if "%{-l*}" != "en-US" \ %dir %{_datadir}/libreoffice/program/resource \ %dir %{_datadir}/libreoffice/program/resource/%{-g:%{-g*}}%{!-g:%{-l*}} \ %dir %{_datadir}/libreoffice/program/resource/%{-g:%{-g*}}%{!-g:%{-l*}}/LC_MESSAGES \ %{_datadir}/%{name}/program/resource/%{-g:%{-g*}}%{!-g:%{-l*}}/LC_MESSAGES/*.mo \ %endif \ %dir %{_datadir}/%{name}/share/registry \ %dir %{_datadir}/%{name}/share/registry/res \ %{_datadir}/%{name}/share/registry/Langpack-%{-l*}.xcd \ %if "%{-l*}" != "en-US" \ %{_datadir}/%{name}/share/registry/res/registry_%{-l*}.xcd \ %endif \ %{_datadir}/%{name}/share/registry/res/fcfg_langpack_%{-l*}.xcd \ %dir %{_datadir}/%{name}/share/wizards \ %{_datadir}/%{name}/share/wizards/resources_%{-j:%{-j*}}%{!-j:%{-l*}}.properties \ %{nil} # Defines a language pack subpackage. # # It's necessary to define language code (-l) and language name (-n). # Additionally, it's possible # * to require autocorr, hunspell, hyphen or mythes package or font for # given language, # * to obsolete openoffice.org-langpack package, # * to provide libreoffice-langpack-loc package, where loc is glibc # locale--this is necessary for yum to pick it automatically, # * to require other, unrelated, packages, # * to specify file serving as file list. # For these, lower case character argument takes an argument specifying # language, upper case character argument uses language from -l. # # All remaining arguments are considered to be files and added to the file # list. # # c: additional config file (just the name stem) # E the package does not contain any files (i.e., has empty filelist) # i: additional language added to this package # L: internal (LibreOffice) language code, used in file names # l: language code, e.g., cs # g: glibc/java locale # j: java locale for the additional language # k: glibc locale for the additional language # Mm: myspell dependency # n: language name, e.g., Czech # p: Provides: of libreoffice-l10n # q: Provides: of libreoffice-l10n if one provide is not enough # r: comma-separated list of additional requires # S:s: script classification (cjk, ctl). -S is only a marker, as it does # not add any .xcd into the package (the file does not exist for at # least one CTL-using locale, si) # T has help files # Xx: has autotext definitions # # Example: # libreoffice-l10n-cs: langpack for Czech lang. Requiring myspell-cs_CZ: # %%langpack -l cs -n Czech -m cs_CZ %define langpack(c:Ei:g:j:k:L:l:Mm:n:p:q:r:S:s:TXx:) \ %define project LibreOffice \ %define lang %{-l:%{-l*}}%{!-l:%{error:Language code not defined}} \ %define _langpack_lang %{-L:%{-L*}}%{!-L:%{lang}} \ %define pkgname l10n-%{lang} \ %define langname %{-n:%{-n*}}%{!-n:%{error:Language name not defined}} \ %global langpack_langs %{langpack_langs} %{_langpack_lang} %{-i:%{-i*}} \ \ %package %{pkgname} \ Summary: %{langname} Localization Files for LibreOffice \ Group: Productivity/Office/Suite \ Requires: %{name} = %{version} \ Requires: %{name}-share-linker \ Provides: locale(libreoffice:%{lang}) \ BuildArch: noarch \ %{-m:Requires: myspell-%{-m*}}%{!-m:%{-M:Requires: myspell-%{lang}}} \ %{-r:Requires: %{-r*}} \ %{-p: \ Provides: %{name}-l10n-%{-p*} = %{version} \ Obsoletes: %{name}-l10n-%{-p*} < %{version} \ } \ %{-q: \ Provides: %{name}-l10n-%{-q*} = %{version} \ Obsoletes: %{name}-l10n-%{-q*} < %{version} \ } \ Provides: %{name}-help-%{lang} = %{version} \ Obsoletes: %{name}-help-%{lang} < %{version} \ %{-L: \ Provides: %{name}-help-%{-L*} = %{version} \ Obsoletes: %{name}-help-%{-L*} < %{version} \ } \ %{-p: \ Provides: %{name}-help-%{-p*} = %{version} \ Obsoletes: %{name}-help-%{-p*} < %{version} \ } \ %{-q: \ Provides: %{name}-help-%{-q*} = %{version} \ Obsoletes: %{name}-help-%{-q*} < %{version} \ } \ \ %description %{pkgname} \ Provides additional %{langname} translations and resources for %{project}. \ \ %files %{pkgname} \ %{-T: \ %dir %{_datadir}/libreoffice/help/%{_langpack_lang} \ %{_datadir}/libreoffice/help/%{_langpack_lang} \ }\ %{!-E: \ %define autotextdir %{_datadir}/%{name}/share/autotext \ %dir %{autotextdir} \ %{expand:%%_langpack_common -l %{_langpack_lang} %{-g:-g %{-g*} -j %{-g*}}} \ %{-x:%{autotextdir}/%{-x*}}%{!-x:%{-X:%{autotextdir}/%{_langpack_lang}}} \ %{-c:%{_datadir}/%{name}/share/registry/%{-c*}.xcd} \ %{-s:%{_datadir}/%{name}/share/registry/%{-s*}_%{_langpack_lang}.xcd} \ %{-i:%{expand:%%_langpack_common -l %{-i*} %{-k:-g %{-k*}} %{-j:-j %{-j*}}}} \ } \ \ %{expand:%%_link_noarch_files %{pkgname}} \ %{nil} %langpack -l af -n Afrikaans -m af_ZA %langpack -l ar -n Arabic -s ctl -m ar -T %langpack -l as -n Assamese %langpack -l bg -n Bulgarian -X -m bg_BG -T %langpack -l bn -n Bengali -m bn_BD -T %langpack -l br -n Breton -m br_FR %langpack -l ca -n Catalan -M -X -T %langpack -l cs -n Czech -X -m cs_CZ -T %langpack -l cy -n Welsh %langpack -l da -n Danish -X -m da_DK -T %langpack -l de -n German -X -M -T %langpack -l dz -n Dzongkha -s ctl -T %langpack -l el -n Greek -m el_GR -T %langpack -l en -n English -L en-US -X -p en-GB -q en-ZA -M -g en_US -T %langpack -l eo -n Esperanto -T %langpack -l es -n Spanish -M -X -T %langpack -l et -n Estonian -m et_EE -T %langpack -l eu -n Basque -T %langpack -l fa -n Farsi -s ctl -X %langpack -l fi -n Finnish -r libreoffice-voikko -X -T %langpack -l fr -n French -X -m fr_FR -T %langpack -l ga -n Irish %langpack -l gl -n Galician -M -T %langpack -l gu -n Gujarati -s ctl -p gu-IN -m gu_IN -T %langpack -l he -n Hebrew -s ctl -m he_IL -T %langpack -l hi -n Hindi -s ctl -p hi-IN -m hi_IN -T %langpack -l hr -n Croatian -m hr_HR -X -T %langpack -l hu -n Hungarian -X -m hu_HU -T %langpack -l it -n Italian -X -m it_IT -T %langpack -l ja -n Japanese -s cjk -X -T %langpack -l kk -n Kazakh %langpack -l kn -n Kannada %langpack -l ko -n Korean -s cjk -X -T %langpack -l lt -n Lithuanian -m lt_LT -X -T %langpack -l lv -n Latvian -m lv_LV -T %langpack -l mai -n Maithili %langpack -l ml -n Malayalam %langpack -l mr -n Marathi %langpack -l nb -n Bokmal -M -m no -T %langpack -l nl -n Dutch -X -m nl_NL -T %langpack -l nn -n Nynorsk -m no -T %langpack -l nr -n Southern_Ndebele %langpack -l nso -n Northern_Sotho %langpack -l or -n Odia -s ctl %langpack -l pa -n Punjabi -s ctl -L pa-IN -p pa-IN -g pa_IN -j pa_IN %langpack -l pl -n Polish -X -m pl_PL -T %langpack -l pt_BR -n Brazilian_Portuguese -m pt_BR -L pt-BR -p pt-BR -X -g pt_BR -j pt_BR -T %langpack -l pt_PT -n Portuguese -m pt_PT -L pt -x pt -p pt -q pt-PT -T %langpack -l ro -n Romanian -M -X -T %langpack -l ru -n Russian -X -m ru_RU -T %langpack -l si -n Sinhalese -S ctl -m si_LK -T %langpack -l sk -n Slovak -X -m sk_SK -T %langpack -l sl -n Slovenian -X -m sl_SI -T %langpack -l sr -n Serbian -i sr-Latn -M -j sr_Latn -g sr -k sr@latin %langpack -l ss -n Swati %langpack -l st -n Southern_Sotho %langpack -l sv -n Swedish -X -m sv_SE -T %langpack -l ta -n Tamil -s ctl -T %langpack -l te -n Telugu -m te_IN %langpack -l th -n Thai -s ctl -c ctlseqcheck_th -m th_TH %langpack -l tn -n Tswana %langpack -l tr -n Turkish -X -T %langpack -l ts -n Tsonga %langpack -l uk -n Ukrainian -m uk_UA -T %langpack -l ve -n Venda %langpack -l xh -n Xhosa %langpack -l zh_CN -n Simplified_Chinese -p zh-CN -s cjk -L zh-CN -x zh-CN -q zh-Hans -g zh_CN -j zh_CN -T %langpack -l zh_TW -n Traditional_Chinese -p zh-TW -s cjk -L zh-TW -x zh-TW -q zh-Hant -g zh_TW -j zh_TW -T %langpack -l zu -n Zulu -m zu_ZA %prep %setup -q -b2 -b4 %if 0%{?suse_version} < 1330 # The rename of the configdir is needed only on older than factory for compat %patch1 %endif # Leap 42/SLE-12 %patch2 %patch3 %patch4 -p1 %patch5 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch990 -p1 # Disable some of the failing tests (some are random) %if 0%{?suse_version} < 1330 sed -i -e '/CppunitTest_desktop_lib/d' desktop/Module_desktop.mk %endif # Following two tests are really flaky sed -i -e /CppunitTest_dbaccess_hsqldb_test/d dbaccess/Module_dbaccess.mk sed -i -e s/CppunitTest_dbaccess_RowSetClones// dbaccess/Module_dbaccess.mk # Fails due to diff caused by fonts sed -i -e /CppunitTest_sw_rtfimport/d sw/Module_sw.mk # only due to the above sed -i -e /CppunitTest_sw_uiwriter/d sw/Module_sw.mk # The gpg files are not loaded properly sed -i -e /CPPUNIT_TEST\(testODFEncryptedGPG\)/d xmlsecurity/qa/unit/signing/signing.cxx # Do not generate doxygen timestamp echo "HTML_TIMESTAMP = NO" >> odk/docs/cpp/Doxyfile echo "HTML_TIMESTAMP = NO" >> odk/docs/idl/Doxyfile %build # do not eat all memory %limit_build -m 1200 # make sure that JAVA_HOME is set correctly source %{_sysconfdir}/profile.d/alljava.sh # use RPM_OPT_FLAGS, ... # remove big debugsymbols as we simply consume too much space %if %{with lto} ARCH_FLAGS="`echo %{optflags} -flifetime-dse=1 | sed -e 's/^-g /-g1 /g' -e 's/ -g / -g1 /g' -e 's/ -g$/ -g1/g'`" %else ARCH_FLAGS="`echo %{optflags} | sed -e 's/^-g /-g1 /g' -e 's/ -g / -g1 /g' -e 's/ -g$/ -g1/g'`" %endif CFLAGS="$ARCH_FLAGS" CXXFLAGS="$ARCH_FLAGS" export ARCH_FLAGS CFLAGS CXXFLAGS # Colada does not have .pc file and configure creator was really lazy export OPENCOLLADA_CFLAGS='-I/usr/include/COLLADABaseUtils -I/usr/include/COLLADAFramework -I/usr/include/COLLADASaxFrameworkLoader -I/usr/include/GeneratedSaxParser' export OPENCOLLADA_LIBS='-lOpenCOLLADABaseUtils -lOpenCOLLADAFramework -lOpenCOLLADASaxFrameworkLoader -lGeneratedSaxParser' # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys # Note: these are for the openSUSE Chromium builds ONLY. For your own distribution, # please get your own set of keys. google_api_key="AIzaSyD1hTe85_a14kr1Ks8T3Ce75rvbR1_Dx7Q" google_default_client_id="4139804441.apps.googleusercontent.com" google_default_client_secret="KDTRKEZk2jwT_7CDpcmMA--P" # do not run configure in autogen but use macro later export NOCONFIGURE=yes ./autogen.sh %configure \ --with-parallelism=%{jobs} \ --enable-eot \ %if %{with lto} --enable-lto \ %endif --enable-mergelibs \ --docdir=%{_docdir}/%{name} \ --with-compat-oowrappers \ --with-system-headers \ --with-system-libs \ --with-system-jars \ --with-system-ucpp \ --with-system-dicts \ --with-vendor=SUSE \ --with-alloc=system \ --with-tls=nss \ --disable-openssl \ --with-lang='%{langpack_langs}' \ --disable-fetch-external \ --with-external-tar="$RPM_SOURCE_DIR" \ --disable-epm \ --disable-online-update \ --disable-systray \ --disable-gstreamer-0-10 \ --enable-gstreamer-1-0 \ %if %{with gtk3} --enable-gtk3 \ %else --disable-gtk3 \ %endif --enable-introspection \ --with-doxygen \ --enable-release-build \ --enable-split-app-modules \ --enable-split-opt-features \ --enable-cairo-canvas \ --enable-largefile \ --enable-python=system \ --enable-randr \ --without-fonts \ --without-myspell-dicts \ --with-jdk-home=$JAVA_HOME \ --with-beanshell-jar=%{_datadir}/java/bsh2/bsh.jar \ --with-ant-home=%{_datadir}/ant \ --with-external-dict-dir=%{_datadir}/hunspell \ --with-external-hyph-dir=%{_datadir}/hyphen \ --with-external-thes-dir=%{_datadir}/mythes \ --with-help \ --without-export-validation \ --enable-odk \ %if %{with kdeintegration} --disable-qt5 \ --enable-kde4 \ %else --disable-qt5 \ --disable-kde4 \ %endif %if %{with system_gpgme} --with-system-gpgmepp \ %else --without-system-gpgmepp \ %endif %if %{with firebird} --enable-firebird-sdbc \ %else --disable-firebird-sdbc \ %endif --enable-evolution2 \ --enable-dbus \ --enable-ext-ct2n \ --enable-ext-nlpsolver \ --enable-ext-numbertext \ --enable-ext-wiki-publisher \ --enable-ext-mariadb-connector \ --enable-scripting-beanshell \ --enable-scripting-javascript \ --disable-vlc \ --enable-neon \ --disable-ccache \ --disable-coinmp \ --enable-symbols \ --with-gdrive-client-secret="${google_default_client_secret}" \ --with-gdrive-client-id="${google_default_client_id}" # no coinormp packages for coinmp # just call make here as we added the jobs in configure make build-nocheck %check # Run tests only on 64b intel as they are resource hogs %ifarch x86_64 # safeguard jarfires that can get magically overriden by the make mkdir savejar cp %{buildroot}%{_libdir}/%{name}/program/classes/*.jar savejar/ make cp savejar/*.jar %{buildroot}%{_libdir}/%{name}/program/classes/ %endif %install make DESTDIR=%{buildroot} distro-pack-install # Do not pollute build log set +x # Split out gtk3 interface to -gtk3 subpackage grep -v "%{_libdir}/libreoffice/program/libvclplug_gtk3lo.so" file-lists/gnome_list.txt > tmplist mv tmplist file-lists/gnome_list.txt # also split out gtk2 interface to make sure we do not pull gtk2 for fun of it grep -v "%{_libdir}/libreoffice/program/libvclplug_gtklo.so" file-lists/gnome_list.txt > tmplist mv tmplist file-lists/gnome_list.txt # Remove firebird connector from main package filelist %if %{with firebird} grep -v "%{_libdir}/libreoffice/program/libfirebird_sdbclo.so" file-lists/common_list.txt > tmplist mv tmplist file-lists/common_list.txt %endif ################ # update desktop files builddir=`pwd` cd %{buildroot}%{_datadir}/applications for desktop in * ; do # relative link is needed by %%suse_update_desktop_file relative_target=`readlink $desktop | sed "s|%{_libdir}|../../%{_lib}|"` # FIXME: remove the libreoffice- prefix because the old desktop files are preferred in %{_sysconfdir}/gnome_defaults.conf desktop_new=`echo $desktop | sed -e "s/%{name}-//"` rm $desktop sed -i -e "s|%{_datadir}/applications/$desktop|%{_datadir}/applications/$desktop_new|" $builddir/file-lists/*.txt # finally, create the right link ln -sf $relative_target $desktop_new # enable startup notification (bnc#796875) grep -q "NoDisplay=true" $desktop_new || sed -i "s/\(\[Desktop Entry\]\)/\1\nStartupNotify=true/" $desktop_new # suse_update app=`echo $desktop_new | sed "s/.desktop//"` %suse_update_desktop_file $app done sed -i -e 's:NoDisplay=false:NoDisplay=true:g' %{buildroot}/%{_datadir}/applications/math.desktop cd - ################ # compat stuff for noarch packages mkdir -p %{buildroot}/%{_datadir}/%{name}/program echo "%dir %{_libdir}/%{name}" >>file-lists/common_list.txt echo "%dir %{_datadir}/%{name}" >>file-lists/common_list.txt echo "%dir %{_datadir}/%{name}/program" >>file-lists/common_list.txt ################ # helper script for noarch packages # add missing directories to the file list for dir in `find %{buildroot}/%{_datadir}/icons/gnome -type d` ; do dir=`echo $dir | sed -e "s|%{buildroot}||"` echo "%dir $dir" >>file-lists/common_list.txt done echo "%dir %{_datadir}/application-registry" >>file-lists/common_list.txt echo "%dir %{_datadir}/mime-info" >>file-lists/common_list.txt ################################# # Move split noarch data to share ################################# for i in %{buildroot}%{_libdir}/%{name}/program/resource/*/*/*.mo \ %{buildroot}%{_libdir}/%{name}/share/registry/res/fcfg_langpack_*.xcd \ %{buildroot}%{_libdir}/%{name}/share/registry/res/registry_*.xcd \ %{buildroot}%{_libdir}/%{name}/share/registry/Langpack-*.xcd \ %{buildroot}%{_libdir}/%{name}/share/config/images*.zip \ %{buildroot}%{_libdir}/%{name}/share/registry/{cjk,ctl}_*.xcd \ %{buildroot}%{_libdir}/%{name}/share/registry/ctlseqcheck_th.xcd \ %{buildroot}%{_libdir}/%{name}/share/wizards/*.properties \ ; do trg="`dirname "$i" | sed 's|%{_libdir}|%{_datadir}|'`" mkdir -p "$trg" mv "$i" "$trg" done # help files are luckily in just one folder mkdir -p %{buildroot}/%{_datadir}/%{name}/help/ grep -v '%{_libdir}/%{name}/help' file-lists/common_list.txt > tmplist mv tmplist file-lists/common_list.txt echo "%dir %{_datadir}/%{name}/help" >>file-lists/common_list.txt mv %{buildroot}/%{_libdir}/%{name}/help/ %{buildroot}/%{_datadir}/%{name}/ mkdir -p %{buildroot}/%{_libdir}/%{name}/help/ echo "%dir %{_libdir}/%{name}/help" >>file-lists/common_list.txt for file in idxcaption.xsl idxcontent.xsl main_transform.xsl ; do mv "%{buildroot}/%{_datadir}/%{name}/help/$file" "%{buildroot}/%{_libdir}/%{name}/help/$file" echo "%{_libdir}/%{name}/help/$file" >> file-lists/common_list.txt done # autotext is another self contained dir mkdir -p %{buildroot}/%{_datadir}/%{name}/share/autotext/ grep -v '%{_libdir}/%{name}/share/autotext' file-lists/common_list.txt > tmplist mv tmplist file-lists/common_list.txt mv %{buildroot}/%{_libdir}/%{name}/share/autotext/ %{buildroot}/%{_datadir}/%{name}/share/ # translations of java apps should be in lang pkgs too grep -v '%{_libdir}/%{name}/share/wizards' file-lists/common_list.txt > tmplist mv tmplist file-lists/common_list.txt # the sr is dupe of sr_Latn rm -rf %{buildroot}%{datadir}/%{name}/share/wizards/resources_sr.properties ################ # branding split ################ # create symlinks for all brandings to noarch pkg mkdir -p %{buildroot}/%{_datadir}/%{name}/program/shell echo "%{_datadir}/%{name}/program/shell" >> file-lists/branding_upstream.txt for file in sofficerc \ intro.png \ flat_logo.svg \ shell/about.svg ; do mv "%{buildroot}%{_libdir}/%{name}/program/$file" "%{buildroot}%{_datadir}/%{name}/program/$file" ln -sf "%{_datadir}/%{name}/program/$file" "%{buildroot}/%{_libdir}/%{name}/program/$file" echo "%{_datadir}/%{name}/program/$file" >> file-lists/branding_upstream.txt done # Fix autocorr names for various language mutations %make_autocorr_aliases -l en-GB en-AG en-AU en-BS en-BW en-BZ en-CA en-DK en-GH en-HK en-IE en-IN en-JM en-NG en-NZ en-SG en-TT %make_autocorr_aliases -l en-US en-PH %make_autocorr_aliases -l en-ZA en-NA en-ZW %make_autocorr_aliases -l af-ZA af-NA %make_autocorr_aliases -l de de-DE de-AT de-BE de-CH de-LI de-LU %make_autocorr_aliases -l es es-ES es-AR es-BO es-CL es-CO es-CR es-CU es-DO es-EC es-GT es-HN es-MX es-NI es-PA es-PE es-PR es-PY es-SV es-US es-UY es-VE %make_autocorr_aliases -l fr fr-FR fr-BE fr-CA fr-CH fr-LU fr-MC %make_autocorr_aliases -l it it-IT it-CH %make_autocorr_aliases -l nl-NL nl-AW %make_autocorr_aliases -l sv-SE sv-FI pushd %{buildroot}%{_libdir}/%{name}/share/autocorr files="" for file in acor*.dat; do files="$files $file" done popd for file in $files; do echo "%{_libdir}/%{name}/share/autocorr/$file" >> file-lists/common_list.txt done # Install appdata files, so we're shown in gnome-software (and other, future app stores) # upstream ships the files called libreoffice-{base,writer,...}, but the destop files are called base.destop [...] # fixup the appdata files internal reference to the .desktop file and rename them on the go to match the name install -m 0755 -d %{buildroot}%{_datadir}/appdata for appdata in base calc draw impress writer; do sed "s/libreoffice-${appdata}.desktop/${appdata}.desktop/" \ sysui/desktop/appstream-appdata/libreoffice-${appdata}.appdata.xml > %{buildroot}%{_datadir}/appdata/${appdata}.appdata.xml echo "%{_datadir}/appdata/${appdata}.appdata.xml" >>file-lists/${appdata}_list.txt %if 0%{?suse_version} < 1320 echo "%dir %{_datadir}/appdata/" >>file-lists/${appdata}_list.txt %endif rm -rf %{buildroot}%{_datadir}/appdata/libreoffice-${appdata}.appdata.xml done %if %{with kdeintegration} echo "%{_datadir}/appdata/org.libreoffice.kde.metainfo.xml" >>file-lists/kde4_list.txt %else rm -f %{buildroot}%{_datadir}/appdata/org.libreoffice.kde.metainfo.xml %endif # Remove pointless readmes rm -rf %{buildroot}%{_libdir}/%{name}/readmes/ # Prepare uno path detection, can't be patched in because it breaks tests echo "import sys, os" > uno.py echo "sys.path.append('%{_libdir}/%{name}/program')" >> uno.py echo "os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:%{_libdir}/libreoffice/program/fundamentalrc')" >> uno.py cat %{buildroot}%{_libdir}/%{name}/program/uno.py >> uno.py cp uno.py %{buildroot}%{_libdir}/%{name}/program/uno.py # Generate python cache files %py3_compile %{buildroot}/%{_libdir}/libreoffice/program/ %py3_compile %{buildroot}/%{_libdir}/libreoffice/share/extensions/ %py3_compile %{buildroot}/%{_libdir}/libreoffice/share/Scripts/python/ %py3_compile %{buildroot}/%{_libdir}/libreoffice/sdk/examples/python/ # Move python cache to respective filelist for i in file-lists/*.txt; do if [ `cat "${i}" | grep '\.py$' |wc -l` -gt 0 ]; then cat "${i}" | grep '\.py$' > pyfiles.txt for j in `cat pyfiles.txt`; do # python3 has __pycache__ dir while py2 does not pydir="${j%/*}" pyname="${j##*/}" echo "%dir ${pydir}/__pycache__/" >> "${i}" echo "${pydir}/__pycache__/${pyname%.*}*.pyc" >> "${i}" done fi done rm pyfiles.txt # Install color palette cp %{SOURCE6} %{buildroot}%{_libdir}/libreoffice/share/palette/SUSE.soc echo "%{_libdir}/libreoffice/share/palette/SUSE.soc" >> file-lists/common_list.txt %if %{with gtk3} # Symlink gtk3 libreofficekit to libdir ln -s %{_libdir}/%{name}/program/liblibreofficekitgtk.so %{buildroot}%{_libdir}/liblibreofficekitgtk.so # Libreofficekit headers mkdir -p %{buildroot}%{_includedir}/LibreOfficeKit/ install -m 0644 include/LibreOfficeKit/*.h %{buildroot}%{_includedir}/LibreOfficeKit/ %endif %if !%{with system_gpgme} chrpath --replace '$ORIGIN' %{buildroot}%{_libdir}/%{name}/program/libgpgme.so.11 chrpath --replace '$ORIGIN' %{buildroot}%{_libdir}/%{name}/program/libgpgmepp.so.6 chrpath --replace '$ORIGIN' %{buildroot}%{_libdir}/%{name}/program/libassuan.so.0 chrpath --replace '$ORIGIN' %{buildroot}%{_libdir}/%{name}/program/libgpg-error.so.0 %endif # Symlink uno.py and unohelper.py so that python can find them # This is done after the cache files generating on purpose mkdir -p %{buildroot}%{python3_sitelib} ln -s %{_libdir}/libreoffice/program/uno.py %{buildroot}%{python3_sitelib}/uno.py ln -s %{_libdir}/libreoffice/program/unohelper.py %{buildroot}%{python3_sitelib}/unohelper.py ln -s %{_libdir}/libreoffice/program/officehelper.py %{buildroot}%{python3_sitelib}/officehelper.py echo "%{python3_sitelib}/uno.py" >> file-lists/pyuno_list.txt echo "%{python3_sitelib}/unohelper.py" >> file-lists/pyuno_list.txt echo "%{python3_sitelib}/officehelper.py" >> file-lists/pyuno_list.txt # move glade catalog to system glade dir install -m 0755 -d %{buildroot}%{_datadir}/glade/catalogs mv %{buildroot}%{_libdir}/%{name}/share/glade/libreoffice-catalog.xml %{buildroot}%{_datadir}/glade/catalogs install -m 0755 -d %{buildroot}%{_datadir}/glade3/catalogs ln -s %{_datadir}/glade/catalogs/libreoffice-catalog.xml %{buildroot}%{_datadir}/glade3/catalogs grep -v '%{_libdir}/%{name}/share/glade/libreoffice-catalog.xml' file-lists/common_list.txt > tmplist mv tmplist file-lists/common_list.txt # install gdb pretty printers export DESTDIR=%{buildroot} export SRCDIR="./" ./solenv/bin/install-gdb-printers -a %{_datadir}/gdb/auto-load%{_libdir}/%{name} -c -i %{_libdir}/%{name} -p %{_datadir}/libreoffice/gdb # We have ton of duped files so run over it %fdupes %{buildroot}%{_prefix} %post /sbin/ldconfig %if 0%{?suse_version} < 1500 %mime_database_post %desktop_database_post %icon_theme_cache_post %endif %preun uno_cache="%{_libdir}/%{name}/share/uno_packages/cache/uno_packages/" if [ "$1" = "0" ] ; then test -d "$uno_cache" && rm -rf "$uno_cache"/* fi exit 0 %postun /sbin/ldconfig %if 0%{?suse_version} < 1500 %icon_theme_cache_postun %desktop_database_postun %mime_database_postun %endif %if 0%{?suse_version} < 1500 %post base %desktop_database_post %postun base %desktop_database_postun %post calc %desktop_database_post %postun calc %desktop_database_postun %post draw %desktop_database_post %postun draw %desktop_database_postun %post math %desktop_database_post %postun math %desktop_database_postun %post impress %desktop_database_post %postun impress %desktop_database_postun %post writer %desktop_database_post %postun writer %desktop_database_postun %endif %_link_noarch_files icon-themes %files -f file-lists/common_list.txt # ignore helper files for brp-symlink check %exclude %{_datadir}/%{name}/program/sofficerc %exclude %{_datadir}/%{name}/program/flat_logo.svg %exclude %{_datadir}/%{name}/program/*.png %exclude %{_datadir}/%{name}/program/shell/*.svg %if 0%{?suse_version} < 1330 %dir %{_datadir}/icons/hicolor/512x512 %dir %{_datadir}/icons/hicolor/512x512/apps %dir %{_datadir}/icons/hicolor/512x512/mimetypes %endif # FIXME: this is KDE4 only, wipe? %dir %{_datadir}/icons/locolor %dir %{_datadir}/icons/locolor/16x16 %dir %{_datadir}/icons/locolor/16x16/apps %dir %{_datadir}/icons/locolor/16x16/mimetypes %dir %{_datadir}/icons/locolor/32x32 %dir %{_datadir}/icons/locolor/32x32/apps %dir %{_datadir}/icons/locolor/32x32/mimetypes %if %{with gtk3} %files -n libreofficekit %dir %{_libdir}/girepository-1.0 %{_libdir}/girepository-1.0/LOKDocView-0.1.typelib %{_libdir}/liblibreofficekitgtk.so %dir %{_libdir}/libreoffice/share/libreofficekit %{_libdir}/libreoffice/share/libreofficekit/handle_image_end.png %{_libdir}/libreoffice/share/libreofficekit/handle_image_middle.png %{_libdir}/libreoffice/share/libreofficekit/handle_image_start.png %files -n libreofficekit-devel %dir %{_datadir}/gir-1.0 %{_datadir}/gir-1.0/LOKDocView-0.1.gir %dir %{_includedir}/LibreOfficeKit %{_includedir}/LibreOfficeKit/*.h %endif %files glade %dir %{_datadir}/glade %dir %{_datadir}/glade/catalogs %{_datadir}/glade/catalogs/libreoffice-catalog.xml %dir %{_datadir}/glade3 %dir %{_datadir}/glade3/catalogs %{_datadir}/glade3/catalogs/libreoffice-catalog.xml %files gdb-pretty-printers %{_datadir}/gdb/auto-load/%{_libdir}/%{name} %{_datadir}/libreoffice/gdb %files -f file-lists/base_list.txt base %files -f file-lists/calc_list.txt calc %files -f file-lists/draw_list.txt draw %files -f file-lists/math_list.txt math %files -f file-lists/impress_list.txt impress %files -f file-lists/writer_list.txt writer %files -f file-lists/postgresql_list.txt base-drivers-postgresql %if %{with firebird} %files base-drivers-firebird %{_libdir}/libreoffice/program/libfirebird_sdbclo.so %endif %files -f file-lists/filters_list.txt filters-optional %files -f file-lists/mailmerge_list.txt mailmerge %files -f file-lists/pyuno_list.txt pyuno %files -f file-lists/gnome_list.txt gnome %if %{with gtk3} %files gtk3 %{_libdir}/libreoffice/program/libvclplug_gtk3lo.so %endif %files gtk2 %{_libdir}/libreoffice/program/libvclplug_gtklo.so %if %{with kdeintegration} %files -f file-lists/kde4_list.txt kde4 %endif %files -f file-lists/officebean_list.txt officebean %files -f file-lists/sdk_list.txt sdk %dir %{_libdir}/libreoffice/sdk/lib %files -f file-lists/sdk_doc_list.txt sdk-doc %files base-drivers-mysql %{_libdir}/%{name}/share/extensions/mysql-connector-ooo %files calc-extensions %{_libdir}/%{name}/share/extensions/ConvertTextToNumber %{_libdir}/%{name}/share/extensions/nlpsolver %{_libdir}/%{name}/share/extensions/numbertext %files writer-extensions %{_libdir}/%{name}/share/extensions/wiki-publisher %files icon-themes %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/share %dir %{_datadir}/%{name}/share/config %{_datadir}/%{name}/share/config/images_breeze.zip %{_datadir}/%{name}/share/config/images_breeze_dark.zip %{_datadir}/%{name}/share/config/images_elementary.zip %{_datadir}/%{name}/share/config/images_galaxy.zip %{_datadir}/%{name}/share/config/images_hicontrast.zip %{_datadir}/%{name}/share/config/images_sifr.zip %{_datadir}/%{name}/share/config/images_sifr_dark.zip %{_datadir}/%{name}/share/config/images_tango.zip %{_datadir}/%{name}/share/config/images_helpimg.zip %files -f file-lists/branding_upstream.txt branding-upstream %changelog
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