# download path contains version without the last (fourth) digit %global libo_version 7.5.5 %global vendoroption --with-vendor="%{_vendor}" %global libo_python python3 %global libo_python_executable python3 %global libo_python_sitearch %{python3_sitearch} %global source_url http://download.documentfoundation.org/libreoffice/src/%{libo_version} # URL for external projects' tarballs %global external_url http://dev-www.libreoffice.org/src %global girapiversion 0.1 # get english only and no-langpacks for a faster smoketest build # fedpkg compile/install/local/mockbuild does not handle --without ATM, # so it is necessary to change this to bcond_with to achieve the same # effect %bcond_without langpacks %bcond_with serverconfig # generated by %%langpack definitions %global langpack_langs %{nil} %global bundling_options 1 Summary: Free Software Productivity Suite Epoch: 1 Name: libreoffice Version: %{libo_version}.2 Release: 1 # default new files are: MPLv2 # older files are typically: MPLv2 incorporating work under ASLv2 # nlpsolver is: LGPLv3 # icon-themes/karasa_jaga/COPYING: LGPLv3+ # icon-themes/colibre/COPYING-ICONS: CC0 # lotuswordpro is: Either LGPL 2.1 or SISSL 1.1 # wizards/source/access2base: Either MPLv2 or LGPLv3+ # writerperfect/source/common/DirectoryStream.cxx: MPLv2 or LGPLv2+ # extras/source/autocorr/lang/hr/license.md: GPL 2.0 or LGPL2 or MPLv1.1 # odk/examples/java/...: 3 clause BSD License: MPL-2.0 AND Apache-2.0 AND LGPL-3.0-only AND LGPL-3.0-or-later AND CC0-1.0 AND BSD-3-Clause AND (LGPL-2.1-only OR SISSL) AND (MPL-2.0 OR LGPL-3.0-or-later) AND (MPL-2.0 OR LGPL-2.1-or-later) AND (MPL-1.1 OR GPL-2.0-only OR LGPL-2.1-only) URL: http://www.libreoffice.org/ Source0: %{source_url}/libreoffice-%{version}.tar.xz Source1: %{source_url}/libreoffice-%{version}.tar.xz.asc Source2: %{source_url}/libreoffice-help-%{version}.tar.xz Source3: %{source_url}/libreoffice-help-%{version}.tar.xz.asc Source4: %{source_url}/libreoffice-translations-%{version}.tar.xz Source5: %{source_url}/libreoffice-translations-%{version}.tar.xz.asc Source6: gpgkey-C2839ECAD9408FBE9531C3E9F434A1EFAFEEAEA3.gpg.asc Source7: http://dev-www.libreoffice.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll Source8: libreoffice-multiliblauncher.sh Source9: %{external_url}/dtoa-20180411.tgz Source10: %{external_url}/dragonbox-1.1.3.tar.gz Source11: %{external_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip #Unfortunately later versions of hsqldb changed the file format, so if we use a later version we loose #backwards compatability. Source12: %{external_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip Source13: %{external_url}/../extern/f543e6e2d7275557a839a164941c0a86e5f2c3f2a0042bfc434c88c6dde9e140-opens___.ttf %global bundling_options %{?bundling_options} --without-system-hsqldb Source100: %{source_url}/libreoffice-%{version}.tar.xz.00 Source101: %{source_url}/libreoffice-%{version}.tar.xz.01 Source102: %{source_url}/libreoffice-%{version}.tar.xz.02 Source103: %{source_url}/libreoffice-help-%{version}.tar.xz.00 Source104: %{source_url}/libreoffice-help-%{version}.tar.xz.01 Source105: %{source_url}/libreoffice-translations-%{version}.tar.xz.00 Source106: %{source_url}/libreoffice-translations-%{version}.tar.xz.01 Provides: bundled(hsqldb) = 1.8.0 Provides: bundled(xsltml) = 2.1.2 # symbolic icons Source42: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-base-symbolic.svg Source43: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-calc-symbolic.svg Source44: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-draw-symbolic.svg Source45: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-impress-symbolic.svg Source46: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-main-symbolic.svg Source47: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-math-symbolic.svg Source48: https://raw.githubusercontent.com/gnome-design-team/gnome-icons/master/apps-symbolic/Adwaita/scalable/apps/libreoffice-writer-symbolic.svg # build tools BuildRequires: autoconf automake bc binutils bison desktop-file-utils doxygen findutils flex gcc-c++ gettext git gnupg2 gperf make BuildRequires: icu hunspell-en-US libtool-ltdl-devel mariadb-connector-c-devel patch perl(Digest::MD5) perl(FindBin) perl(base) zip # libs / headers - common BuildRequires: %{libo_python}-devel %{libo_python}-setuptools Box2D-devel boost-devel cups-devel fontpackages-devel BuildRequires: glm-devel hyphen-devel libjpeg-turbo-devel lpsolve-devel openldap-devel pam-devel pkgconfig(bluez) BuildRequires: pkgconfig(dbus-glib-1) pkgconfig(dconf) pkgconfig(epoxy) pkgconfig(evolution-data-server-1.2) pkgconfig(expat) BuildRequires: pkgconfig(freetype2) pkgconfig(gobject-introspection-1.0) pkgconfig(gstreamer-1.0) pkgconfig(gstreamer-plugins-base-1.0) BuildRequires: pkgconfig(gtk+-3.0) pkgconfig(gtk4) pkgconfig(hunspell) pkgconfig(ice) pkgconfig(icu-i18n) pkgconfig(lcms2) BuildRequires: pkgconfig(libabw-0.1) pkgconfig(libcdr-0.1) pkgconfig(libclucene-core) pkgconfig(libcmis-0.5) pkgconfig(libcurl) BuildRequires: pkgconfig(libetonyek-0.1) pkgconfig(libexttextcat) pkgconfig(libfreehand-0.1) pkgconfig(liblangtag) BuildRequires: pkgconfig(libmspub-0.1) pkgconfig(libmwaw-0.3) pkgconfig(libodfgen-0.1) pkgconfig(libpagemaker-0.0) libpq-devel BuildRequires: pkgconfig(librevenge-0.0) pkgconfig(libstaroffice-0.0) pkgconfig(libtiff-4) pkgconfig(libvisio-0.1) pkgconfig(libwebp) BuildRequires: pkgconfig(libwpd-0.10) pkgconfig(libwpg-0.3) pkgconfig(libwps-0.4) libxml2-devel pkgconfig(libxslt) BuildRequires: pkgconfig(libzmf-0.0) pkgconfig(mythes) pkgconfig(neon) pkgconfig(nss) pkgconfig(poppler) pkgconfig(poppler-cpp) BuildRequires: pkgconfig(mythes) pkgconfig(neon) pkgconfig(nss) pkgconfig(poppler) pkgconfig(poppler-cpp) pkgconfig(sane-backends) BuildRequires: redland redland-devel unixODBC-devel pkgconfig(sane-backends) pkgconfig(xext) pkgconfig(xinerama) BuildRequires: pkgconfig(xmlsec1-nss) pkgconfig(xt) pkgconfig(zlib) unixODBC-devel %{libo_python_executable} # libs / headers - conditional BuildRequires: gpgme cpp-gpgme gpgmepp-devel libnumbertext-devel pkgconfig(cppunit) >= 1.14.0 pkgconfig(graphite2) BuildRequires: pkgconfig(harfbuzz) pkgconfig(libeot) pkgconfig(libepubgen-0.1) pkgconfig(libqxp-0.0) BuildRequires: pkgconfig(mdds-2.0) pkgconfig(zxing) pkgconfig(liborcus-0.17) %ifarch %{java_arches} # java stuff BuildRequires: ant java-devel junit pentaho-reporting-flow-engine %endif # fonts needed for tests BuildRequires: dejavu-sans-fonts dejavu-serif-fonts liberation-mono-fonts liberation-narrow-fonts BuildRequires: liberation-sans-fonts liberation-serif-fonts linux-libertine-fonts Requires: %{name}-writer%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-calc%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-impress%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-draw%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-math%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-base%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-emailmerge%{?_isa} = %{epoch}:%{version}-%{release} # not upstreamed: upstream wants an automatic restart after a crash; we # want a nice abrt report Patch0: 0001-don-t-suppress-crashes.patch # disable tip-of-the-day dialog by default Patch1: 0001-disble-tip-of-the-day-dialog-by-default.patch # disable opencl by default again Patch2: 0001-Resolves-rhbz-1432468-disable-opencl-by-default.patch # backported Patch3: 0001-Revert-tdf-101630-gdrive-support-w-oAuth-and-Drive-A.patch Patch4: 0001-default-to-sifr-for-gnome-light-mode.patch # TODO investigate these Patch5: 0001-aarch64-failing-here.patch Patch6: 0001-include-filename-if-the-test-fails.patch # backported Patch7: 0001-fix-testSignDocument_PEM_PDF.patch Patch8: 0001-Only-pass-I.-arguments-to-g-ir-scanner-by-using-pkg-.patch Patch9: 0001-Adapt-test-code-to-cURL-8.2.0.patch # not upstreamed Patch500: 0001-disable-libe-book-support.patch %global instdir %{_libdir} %global baseinstdir %{instdir}/libreoffice %global sdkinstdir %{baseinstdir}/sdk %global datadir %{_datadir}/%{name} %global fontname opensymbol # HACK: Get the data dir for -data subpackage. I haven't found any better # way to do this... %global oldname %{name} %global name %{name}-data %global lodatadocdir %{_pkgdocdir} %global name %{oldname} %if 0%{?__isa_bits} == 64 %global mark64 ()(64bit) %endif %description LibreOffice is an Open Source, community-developed, office productivity suite. It includes the key desktop applications, such as a word processor, spreadsheet, presentation manager, formula editor and drawing program, with a user interface and feature set similar to other office suites. Sophisticated and flexible, LibreOffice also works transparently with a variety of file formats, including Microsoft Office File Formats. %package filters Summary: All import / export filters Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-calc%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-graphicfilter%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-impress%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-writer%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-xsltfilter%{?_isa} = %{epoch}:%{version}-%{release} %description filters Metapackage to pull in all subpackages that contain import or export filters. %package core Summary: Core modules for LibreOffice Requires: %{name}-%{fontname}-fonts = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} %if ! %{with serverconfig} Requires: %{name}-plugin%{?_isa} = %{epoch}:%{version}-%{release} %endif Requires: liberation-sans-fonts, liberation-serif-fonts, liberation-mono-fonts Requires: %{name}-langpack-en = %{epoch}:%{version}-%{release} %ifarch %{java_arches} # libreoffice-core drags in both openjdk 1.7.0 and 1.8.0 Requires: java-headless >= 1:1.6 %else Obsoletes: libreoffice-nlpsolver < 1:7.4.0.0 Obsoletes: libreoffice-officebean < 1:7.4.0.0 Obsoletes: libreoffice-officebean-common < 1:7.4.0.0 Obsoletes: libreoffice-wiki-publisher < 1:7.4.0.0 %endif Obsoletes: libreoffice-headless < 1:4.4.0.0 Obsoletes: libreoffice-math-debuginfo < 1:6.4.7.2 Provides: libreoffice-headless = %{epoch}:%{version}-%{release} Provides: libreoffice-headless%{?_isa} = %{epoch}:%{version}-%{release} Obsoletes: libreoffice-bsh < 1:7.3.0.4 Obsoletes: libreoffice-rhino < 1:7.3.0.4 %description core The shared core libraries and support files for LibreOffice. %package pyuno Summary: Python support for LibreOffice Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{libo_python_executable} %description pyuno Python bindings for the LibreOffice UNO component model. Allows scripts both external to LibreOffice and within the internal LibreOffice scripting framework to be written in python. %package base Summary: Database front-end for LibreOffice %ifarch %{java_arches} Requires: pentaho-reporting-flow-engine %endif Requires: postgresql-jdbc Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-calc%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description base GUI database front-end for LibreOffice. Allows creation and management of databases through a GUI. %ifarch %{java_arches} %package officebean Summary: JavaBean for LibreOffice Components Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-officebean-common = %{epoch}:%{version}-%{release} %description officebean Allows embedding of LibreOffice documents within the Java environment. It provides a Java AWT window into which the backend LibreOffice process draws its visual representation %package officebean-common Summary: Common JavaBean for LibreOffice Components Requires: %{name}-data = %{epoch}:%{version}-%{release} BuildArch: noarch %description officebean-common Arch-independent part of %{name}-officebean. %package wiki-publisher Summary: Create Wiki articles on MediaWiki servers with LibreOffice Requires: %{name}-writer%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description wiki-publisher The Wiki Publisher enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language. Publish your new and existing documents transparently with writer to a wiki page. %package nlpsolver Summary: Non-linear solver engine for LibreOffice Calc Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-calc%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description nlpsolver A non-linear solver engine for Calc as an alternative to the default linear programming model when more complex, nonlinear programming is required. %endif %package ogltrans Summary: 3D OpenGL slide transitions for LibreOffice Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description ogltrans OpenGL Transitions enable 3D slide transitions to be used in LibreOffice. Requires good quality 3D support for your graphics card for best experience. %package pdfimport Summary: PDF Importer for LibreOffice Draw Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description pdfimport The PDF Importer imports PDF into drawing documents to preserve layout and enable basic editing of PDF documents. %package %{fontname}-fonts Summary: LibreOffice dingbats font Requires: fontpackages-filesystem BuildArch: noarch %description %{fontname}-fonts A dingbats font, OpenSymbol, suitable for use by LibreOffice for bullets and mathematical symbols. %package writer Summary: LibreOffice Word Processor Application Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-pdfimport%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description writer The LibreOffice Word Processor application. %package emailmerge Summary: Email mail-merge component for LibreOffice Requires: %{name}-writer%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} %description emailmerge Enables the LibreOffice writer module to mail-merge to email. %package calc Summary: LibreOffice Spreadsheet Application Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-pdfimport%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description calc The LibreOffice Spreadsheet application. %package draw Summary: LibreOffice Drawing Application Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-pdfimport%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-graphicfilter%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description draw The LibreOffice Drawing Application. %package impress Summary: LibreOffice Presentation Application Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-ogltrans%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pdfimport%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-graphicfilter%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description impress The LibreOffice Presentation Application. %package math Summary: LibreOffice Equation Editor Application Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pdfimport%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description math The LibreOffice Equation Editor Application. %package graphicfilter Summary: LibreOffice Extra Graphic filters Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-data = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description graphicfilter The graphicfilter module for LibreOffice provides graphic filters, e.g. svg. %package xsltfilter Summary: Optional xsltfilter module for LibreOffice Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} %description xsltfilter The xsltfilter module for LibreOffice, provides additional docbook and xhtml export transforms. Install this to enable docbook export. %package postgresql Summary: PostgreSQL connector for LibreOffice Requires: %{name}-base%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description postgresql A PostgreSQL connector for the database front-end for LibreOffice. Allows creation and management of PostgreSQL databases through a GUI. %package ure Summary: UNO Runtime Environment Requires: %{name}-ure-common = %{epoch}:%{version}-%{release} Requires: unzip%{?_isa} %ifarch %{java_arches} #we want to ensure that a libjvm.so of this arch is available Requires: libjvm.so%{?mark64} %endif %description ure UNO is the component model of LibreOffice. UNO offers interoperability between programming languages, other components models and hardware architectures, either in process or over process boundaries, in the Intranet as well as in the Internet. UNO components may be implemented in and accessed from any programming language for which a UNO implementation (AKA language binding) and an appropriate bridge or adapter exists %package ure-common Summary: Common UNO Runtime Environment %description ure-common Arch-independent part of %{name}-ure. %package sdk Summary: Software Development Kit for LibreOffice Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Requires: unzip%{?_isa} %ifarch %{java_arches} Requires: java-devel %endif %description sdk The LibreOffice SDK is an add-on for the LibreOffice office suite. It provides the necessary tools for programming using the LibreOffice APIs and for creating extensions (UNO components) for LibreOffice. To set the build environment for building against the sdk use %{sdkinstdir}/setsdkenv_unix.sh. %package sdk-doc Summary: Software Development Kit documentation for LibreOffice %description sdk-doc This provides documentation for programming using the LibreOffice APIs and examples of creating extensions (UNO components) for LibreOffice. %package glade Summary: Support for creating LibreOffice dialogs in glade Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} %description glade %{name}-glade contains a catalog of LibreOffice-specific widgets for glade tool to check the visual appearance of dialogs. %package librelogo Summary: LibreLogo scripting language Requires: %{name}-writer%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-pyuno%{?_isa} = %{epoch}:%{version}-%{release} %description librelogo Enables LibreLogo scripting in Writer. LibreLogo is a Logo-like programming language with interactive vectorgraphics for education and DTP. %package data Summary: LibreOffice data files %description data %{name}-data contains platform-independent data files. %package x11 Summary: LibreOffice generic X11 support plug-in Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Provides: %{name}-plugin = %{epoch}:%{version}-%{release} Provides: %{name}-plugin%{?_isa} = %{epoch}:%{version}-%{release} Supplements: (%{name}-core%{?_isa} and Xserver) %description x11 A plug-in for LibreOffice that enables generic X11 support. %package gtk3 Summary: LibreOffice GTK+ 3 integration plug-in Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Requires: gstreamer1(element-gtksink)%{?mark64} Obsoletes: libreoffice-gtk2 < 1:6.2.0.0 Obsoletes: libreoffice-gtk2-debuginfo < 1:6.2.0.0 Supplements: (%{name}-core%{?_isa} and gtk3%{?_isa}) %description gtk3 A plug-in for LibreOffice that enables integration into GTK+ 3 environment. %package gtk4 Summary: LibreOffice GTK+ 4 experimental integration plug-in Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-ure%{?_isa} = %{epoch}:%{version}-%{release} Supplements: (%{name}-core%{?_isa} and gtk4%{?_isa}) %description gtk4 An experimental plug-in for LibreOffice that enables integration into GTK+ 4 environment. %package -n libreofficekit Summary: A library providing access to LibreOffice functionality License: MPLv2.0 %description -n libreofficekit LibreOfficeKit can be used to access LibreOffice functionality through C/C++, without any need to use UNO. For now it only offers document conversion (in addition to an experimental tiled rendering API). %package -n libreofficekit-devel Summary: Development files for libreofficekit Requires: libreofficekit%{?_isa} = %{epoch}:%{version}-%{release} License: MPLv2.0 %description -n libreofficekit-devel The libreofficekit-devel package contains libraries and header files for developing applications that use libreofficekit. %if 0%{?_enable_debug_packages} %package gdb-debug-support Summary: Additional support for debugging with gdb Requires: gdb%{?_isa} Requires: %{libo_python}-six Requires: libreoffice-core%{?_isa} = %{epoch}:%{version}-%{release} Supplements: libreoffice-debuginfo%{?_isa} %description gdb-debug-support This package provides gdb pretty printers for package %{name}. %files gdb-debug-support %{_datadir}/gdb/auto-load%{baseinstdir} %{_datadir}/libreoffice/gdb %endif %define _langpack_common(Eg:j:l:) \ %{!-E: \ %{baseinstdir}/program/resource/%{-g:%{-g*}}%{!-g:%{-l*}}/LC_MESSAGES/*.mo \ %{baseinstdir}/share/registry/res/registry_%{-l*}.xcd \ } \ %{baseinstdir}/share/template/%{-l*} \ %{baseinstdir}/share/registry/Langpack-%{-l*}.xcd \ %{baseinstdir}/share/registry/res/fcfg_langpack_%{-l*}.xcd \ %{baseinstdir}/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 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. # # Aa: autocorr dependency # c: additional config file (just the name stem) # E: base (US English) langpack # Ff: font language dependency # g: glibc/java locale # Hh: hunspell dependency # i: additional language added to this package # j: java locale for the additional language # k: glibc locale for the additional language # L: internal (LibreOffice) language code, used in file names # l: language code, e.g., cs # Mm: mythes dependency # n: language name, e.g., Czech # p: Provides: of libreoffice-langpack # 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 # Yy: hyphen dependency # # Example: # libreoffice-langpack-cs: langpack for Czech lang. requiring hyphen-cs, # autocorr-cs, mythes-cs-CZ and suitable font: # %%langpack -l cs -n Czech -H -A -m cs-CZ # b de q tu z BCD G IJK N PQR U Z0123456789 %define langpack(Aa:c:EFf:g:Hh:i:j:k:L:l:Mm:n:p:r:S:s:TXx:Yy:) \ %define lang %{-l:%{-l*}}%{!-l:%{error:Language code not defined}} \ %define _langpack_lang %{-L:%{-L*}}%{!-L:%{lang}} \ %define pkgname langpack-%{lang} \ %define langname %{-n:%{-n*}}%{!-n:%{error:Language name not defined}} \ \ %global langpack_langs %{langpack_langs} %{_langpack_lang} %{-i:%{-i*}} \ \ %package %{pkgname} \ Summary: %{langname} language pack for LibreOffice \ Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} \ %{-a:Requires: autocorr-%{-a*}}%{!-a:%{-A:Requires: autocorr-%{lang}}} \ %{-f:Recommends: langpacks-%{-f*}}%{!-f:%{-F:Recommends: langpacks-%{lang}}} \ %{-h:Requires: hunspell-%{-h*}}%{!-h:%{-H:Requires: hunspell-%{lang}}} \ %{-m:Requires: mythes-%{-m*}}%{!-m:%{-M:Requires: mythes-%{lang}}} \ %{-y:Requires: hyphen-%{-y*}}%{!-y:%{-Y:Requires: hyphen-%{lang}}} \ %{-r:Requires: %{-r*}} \ %{-p:Provides: %{name}-langpack-%{-p*} = %{epoch}:%{version}-%{release}} \ %{-p:Provides: %{name}-langpack-%{-p*}%{?_isa} = %{epoch}:%{version}-%{release}} \ %{-p:Supplements: (%{name}-core%{?_isa} and langpacks-%{-p*})} \ %{!-p:Supplements: (%{name}-core%{?_isa} and langpacks-%{lang})} \ %{-T:Requires: %{name}-help-%{lang}} \ \ %description %{pkgname} \ Provides additional %{langname} translations and resources for LibreOffice. \ \ %{-T: \ %package help-%{lang} \ Summary: %{langname} help for LibreOffice \ Requires: %{name}-core%{?_isa} = %{epoch}:%{version}-%{release} \ \ %description help-%{lang} \ Provides %{langname} help for LibreOffice. \ \ %files help-%{lang} \ %docdir %{baseinstdir}/help/%{_langpack_lang} \ %{baseinstdir}/help/%{_langpack_lang} \ } \ \ %files %{pkgname} \ %{expand:%%_langpack_common %{-E} -l %{_langpack_lang} %{-g:-g %{-g*} -j %{-g*}}} \ %{-x:%{baseinstdir}/share/autotext/%{-x*}}%{!-x:%{-X:%{baseinstdir}/share/autotext/%{_langpack_lang}}} \ %{-c:%{baseinstdir}/share/registry/%{-c*}.xcd} \ %{-s:%{baseinstdir}/share/registry/%{-s*}_%{_langpack_lang}.xcd} \ %{-i:%{expand:%%_langpack_common %{-E} -l %{-i*} %{-k:-g %{-k*}} %{-j:-j %{-j*}}}} \ %{nil} # Defines an auto-correction subpackage. # # i: add autocorrections from additional language # l: language code # n: language name # L the filename does not contain country code # # All remaining arguments are considered to be files and added to the file # list. %define autocorr(i:Ll:n:) \ %define lang %{-l:%{-l*}}%{!-l:%{error:Language code not defined}} \ %define pkgname autocorr-%{lang} \ %define langname %{-n:%{-n*}}%{!-n:%{error:Language name not defined}} \ \ %package -n %{pkgname} \ Summary: %{langname} auto-correction rules \ BuildArch: noarch \ \ %description -n %{pkgname} \ Rules for auto-correcting common %{langname} typing errors. \ \ %files -n %{pkgname} \ %doc instdir/LICENSE \ %dir %{_datadir}/autocorr \ %{-L:%{_datadir}/autocorr/acor_%{lang}.dat} \ %{!-L:%{_datadir}/autocorr/acor_%{lang}-*.dat} \ %{nil} %langpack -l en -n English -F -h en-US -Y -M -A -E -L en-US -T -X -g en_US %if %{with langpacks} %langpack -l af -n Afrikaans -F -H -Y -A -X %langpack -l ar -n Arabic -F -H -s ctl -T -X %langpack -l as -n Assamese -F -H -Y -X %langpack -l bg -n Bulgarian -F -H -Y -M -A -T -X %langpack -l bn -n Bengali -F -H -Y -T -X %langpack -l br -n Breton -F -H -X %langpack -l ca -n Catalan -F -H -Y -M -A -T -X %langpack -l cs -n Czech -F -H -Y -M -A -T -X %langpack -l cy -n Welsh -F -H -Y -X %langpack -l da -n Danish -F -H -Y -M -A -T -X %langpack -l de -n German -F -H -Y -M -A -T -X %langpack -l dz -n Dzongkha -F -s ctl -T -X %langpack -l el -n Greek -F -H -Y -M -A -T -X %langpack -l eo -n Esperanto -F -H -M -T -X %langpack -l es -n Spanish -F -H -Y -M -A -T -X %langpack -l et -n Estonian -F -H -Y -T -X %langpack -l eu -n Basque -F -H -Y -T -X %langpack -l fa -n Farsi -A -H -Y -s ctl -X %langpack -l fi -n Finnish -F -r libreoffice-voikko -A -T -X %langpack -l fr -n French -F -H -Y -M -A -T -X %langpack -l fy -n Frisian -F -H -X %langpack -l ga -n Irish -F -H -Y -M -A -X %langpack -l gl -n Galician -F -H -Y -T -X %langpack -l gu -n Gujarati -F -H -Y -s ctl -T -X %langpack -l he -n Hebrew -F -H -s ctl -T -X %langpack -l hi -n Hindi -F -H -Y -s ctl -T -X %langpack -l hr -n Croatian -F -H -Y -A -T -X %langpack -l hu -n Hungarian -F -H -Y -M -A -T -X %{baseinstdir}/share/wordbook/hu_AkH11.dic %langpack -l id -n Indonesian -F -H -Y -T -X %langpack -l it -n Italian -F -H -Y -M -A -T -X %langpack -l ja -n Japanese -F -A -s cjk -T -X %langpack -l kk -n Kazakh -F -H -X %langpack -l kn -n Kannada -F -H -Y -X %langpack -l ko -n Korean -F -H -A -s cjk -T -X %langpack -l lt -n Lithuanian -F -H -Y -A -T -X %langpack -l lv -n Latvian -F -H -Y -M -T -X %langpack -l mai -n Maithili -F -X %langpack -l ml -n Malayalam -F -H -Y -X %langpack -l mr -n Marathi -F -H -Y -X %langpack -l nb -n Bokmal -F -H -Y -M -T -X %langpack -l nl -n Dutch -F -H -Y -M -A -T -X -X %langpack -l nn -n Nynorsk -F -H -Y -M -T %define langpack_lang Southern Ndebele %langpack -l nr -n %{langpack_lang} -F -H -X %define langpack_lang Northern Sotho %langpack -l nso -n %{langpack_lang} -F -H -X %langpack -l or -n Odia -F -H -Y -s ctl -X %langpack -l pa -n Punjabi -F -H -Y -s ctl -L pa-IN -g pa_IN -X %langpack -l pl -n Polish -F -H -Y -M -A -T -X %define langpack_lang Brazilian Portuguese %langpack -l pt-BR -n %{langpack_lang} -f pt_BR -h pt -y pt -m pt -a pt -p pt_BR -T -X -g pt_BR %langpack -l pt-PT -n Portuguese -f pt -h pt -y pt -m pt -a pt -p pt_PT -T -L pt -x pt %langpack -l ro -n Romanian -A -F -H -Y -M -T -X %langpack -l ru -n Russian -F -H -Y -M -A -T -X %langpack -l si -n Sinhalese -F -H -S ctl -T -X %langpack -l sk -n Slovak -F -H -Y -M -A -T -X %langpack -l sl -n Slovenian -F -H -Y -M -A -T -X %{baseinstdir}/share/wordbook/sl.dic # clump serbian translations together %langpack -l sr -n Serbian -F -H -Y -A -i sr-Latn -k sr@latin -j sr_Latn -x sr* %langpack -l ss -n Swati -F -H -X %define langpack_lang Southern Sotho # note that langpacks-st seems to be missing as of the time of writing, so no -F here %langpack -l st -n %{langpack_lang} -H -X %langpack -l sv -n Swedish -F -H -Y -M -A -T -X %langpack -l ta -n Tamil -F -H -Y -s ctl -T -X %langpack -l te -n Telugu -F -H -Y -X %langpack -l th -n Thai -F -H -s ctl -c ctlseqcheck_th -X %langpack -l tn -n Tswana -F -H -X %langpack -l tr -n Turkish -F -A -T -X %langpack -l ts -n Tsonga -F -H -X %langpack -l uk -n Ukrainian -F -H -Y -M -T -X %langpack -l ve -n Venda -F -H -X %langpack -l xh -n Xhosa -F -H -X %define langpack_lang Simplified Chinese %langpack -l zh-Hans -n %{langpack_lang} -f zh_CN -a zh -p zh_CN -s cjk -T -L zh-CN -x zh-CN -g zh_CN %{baseinstdir}/share/template/common/l10n/zh_CN_ott_normal.ott %define langpack_lang Traditional Chinese %langpack -l zh-Hant -n %{langpack_lang} -f zh_TW -a zh -p zh_TW -s cjk -T -L zh-TW -x zh-TW -g zh_TW %langpack -l zu -n Zulu -F -H -Y -X %undefine langpack_lang %endif %autocorr -l en -n English %if %{with langpacks} %autocorr -l af -n Afrikaans %autocorr -l bg -n Bulgarian %autocorr -l ca -n Catalan %autocorr -l cs -n Czech %autocorr -l da -n Danish %autocorr -l de -n German -L %define autocorr_lang Lower Sorbian %autocorr -l dsb -n %{autocorr_lang} -L %autocorr -l el -n Greek %autocorr -l es -n Spanish -L %autocorr -l fa -n Farsi %autocorr -l fi -n Finnish %autocorr -l fr -n French -L %autocorr -l ga -n Irish %autocorr -l hr -n Croatian %define autocorr_lang Upper Sorbian %autocorr -l hsb -n %{autocorr_lang} -L %autocorr -l hu -n Hungarian %autocorr -l is -n Icelandic %autocorr -l it -n Italian -L %autocorr -l ja -n Japanese %autocorr -l ko -n Korean %autocorr -l lb -n Luxembourgish %autocorr -l lt -n Lithuanian %autocorr -l mn -n Mongolian %autocorr -l nl -n Dutch %autocorr -l pl -n Polish %autocorr -l pt -n Portuguese %autocorr -l ro -n Romanian %autocorr -l ru -n Russian %autocorr -l sk -n Slovak %autocorr -l sl -n Slovenian %autocorr -l sr -n Serbian %autocorr -l sv -n Swedish %autocorr -l tr -n Turkish %autocorr -l vi -n Vietnamese %autocorr -l vro -n Võro %autocorr -l zh -n Chinese %endif %define make_autocorr_aliases(l:) \ %{?-l: \ for lang in %{*}; do \ ln -sf acor_%{-l*}.dat acor_$lang.dat \ done \ } \ %{!?-l:%{error:-l must be present}} %prep # verify tarballs gpg2 --dearmor < %{SOURCE6} > keyring.gpg cat %{SOURCE100} %{SOURCE101} %{SOURCE102} > %{SOURCE0} gpgv2 --keyring ./keyring.gpg %{SOURCE1} %{SOURCE0} cat %{SOURCE103} %{SOURCE104} > %{SOURCE2} gpgv2 --keyring ./keyring.gpg %{SOURCE3} %{SOURCE2} cat %{SOURCE105} %{SOURCE106} > %{SOURCE4} gpgv2 --keyring ./keyring.gpg %{SOURCE5} %{SOURCE4} %setup -q -n %{name}-%{version} -b 2 -b 4 rm -rf git-hooks */git-hooks # This is normally done by %%autosetup -S git_am, # but that does not work with multiple -b options, so we use plain %%setup above %global __scm git_am %__scm_setup_git_am # apply patches %autopatch -M 99 %patch -P 500 -p1 sed -i -e /CppunitTest_sc_array_functions_test/d sc/Module_sc.mk # ppc64le sed -i -e /CppunitTest_sc_addin_functions_test/d sc/Module_sc.mk # aarch64/ppc64*/s390x sed -i -e /CppunitTest_sc_financial_functions_test/d sc/Module_sc.mk # ppc64* sed -i -e /CppunitTest_sc_statistical_functions_test/d sc/Module_sc.mk # aarch64/ppc64* sed -i -e /CppunitTest_dbaccess_hsqldb_test/d dbaccess/Module_dbaccess.mk # ppc64le sed -i -e s/CppunitTest_dbaccess_RowSetClones// dbaccess/Module_dbaccess.mk # ppc64le sed -i -e s/CppunitTest_sw_macros_test// sw/Module_sw.mk # s390x git rm vcl/qa/cppunit/graphicfilter/data/tiff/fail/CVE-2017-9936-1.tiff git commit -q -a -m 'temporarily disable failing tests' # Seeing .git dir makes some of the build tools change their behavior. # We do not want that. Note: it is still possible to use # git --git-dir=.git-rpm mv .git .git-rpm %build # path to external tarballs EXTSRCDIR=`dirname %{SOURCE0}` #use the RPM_OPT_FLAGS but remove the LibreOffice overridden ones for i in $RPM_OPT_FLAGS; do case "$i" in -pipe|-Wall|-Werror*|-fexceptions) continue;; esac ARCH_FLAGS="$ARCH_FLAGS $i" done export ARCH_FLAGS export CFLAGS=$ARCH_FLAGS export CXXFLAGS=$ARCH_FLAGS %define distrooptions --disable-eot --disable-firebird-sdbc %ifarch %{java_arches} %define javaoptions --with-java --enable-ext-nlpsolver --enable-ext-wiki-publisher %else %define javaoptions --without-java %endif %if %{with langpacks} %define with_lang --with-lang='%{langpack_langs}' %endif aclocal -I m4 autoconf SMP_MFLAGS=%{?_smp_mflags} SMP_MFLAGS=$[${SMP_MFLAGS/-j/}] %if 0%{?flatpak} %define flatpakoptions --with-beanshell-jar=/app/share/java/bsh.jar --with-boost-libdir=%{_libdir} --with-external-dict-dir=/app/share/hunspell --with-external-hyph-dir=/app/share/hyphen --with-external-thes-dir=/app/share/mythes --with-flute-jar=/app/share/java/flute.jar --with-jdk-home=/app/lib/jvm/java --with-jfreereport-jar=/app/share/java/flow-engine.jar --with-libbase-jar=/app/share/java/libbase.jar --with-libfonts-jar=/app/share/java/libfonts.jar --with-libformula-jar=/app/share/java/libformula.jar --with-liblayout-jar=/app/share/java/liblayout.jar --with-libloader-jar=/app/share/java/libloader.jar --with-librepository-jar=/app/share/java/librepository.jar --with-libserializer-jar=/app/share/java/libserializer.jar --with-libxml-jar=/app/share/java/libxml.jar --with-sac-jar=/app/share/java/sac.jar FIREBIRDCONFIG=%{_libdir}/fb_config QT4INC=%{_includedir} %endif # TODO: enable coinmp? # avoid running autogen.sh on make touch autogen.lastrun %configure \ %vendoroption \ %{?with_lang} \ --with-parallelism=$SMP_MFLAGS \ --disable-coinmp \ --disable-community-flavor \ --disable-fetch-external \ --disable-openssl \ --disable-pdfium \ --disable-skia \ --enable-dconf \ --enable-evolution2 \ --enable-introspection \ --enable-odk \ --enable-release-build \ --enable-symbols \ --with-build-version="%{version}-%{release}" \ --with-external-dict-dir=/usr/share/hunspell \ --with-external-tar="$EXTSRCDIR" \ --with-help \ --with-system-dicts \ --with-system-libs \ --without-export-validation \ --without-fonts \ --without-lxml \ --without-system-dragonbox \ --without-system-libfixmath \ --enable-python=system \ --with-idlc-cpp=cpp \ --disable-scripting-beanshell --disable-scripting-javascript \ --enable-gtk4 \ --with-system-redland \ %{javaoptions} \ %{distrooptions} \ %{?bundling_options} \ %{?archoptions} \ %{?flatpakoptions} if ! make verbose=true build; then echo "build attempt 1 failed" if ! make verbose=true build; then echo "build attempt 2 failed" make verbose=true GMAKE_OPTIONS=-rj1 build fi fi #generate the icons and mime type stuff export DESTDIR=../output export KDEMAINDIR=/usr export GNOMEDIR=/usr export GNOME_MIME_THEME=hicolor export PREFIXDIR=/usr # TODO use empty variables? Should make the renaming hacks in %%install # unnecessary. . ./bin/get_config_variables PRODUCTVERSIONSHORT PRODUCTVERSION SRCDIR WORKDIR PKG_CONFIG INSTDIR pushd $WORKDIR/CustomTarget/sysui/share/libreoffice ./create_tree.sh popd mkdir $WORKDIR/os-integration cp -pr $WORKDIR/CustomTarget/sysui/share/output/usr/share/* $WORKDIR/os-integration cp -pr $WORKDIR/CustomTarget/sysui/share/libreoffice/LOKDocView-%{girapiversion}.* $WORKDIR/os-integration %install # remove workdir before install, to allow build on space-constrained machines # remove the biggest offenders rm -rf $WORKDIR/CxxObject $WORKDIR/GenCxxObject $WORKDIR/HelpTarget $WORKDIR/LinkTarget # TODO investigate use of make distro-pack-install #figure out the icon version . ./bin/get_config_variables PRODUCTVERSIONSHORT PRODUCTVERSION SRCDIR WORKDIR export PRODUCTVERSIONSHORT PRODUCTVERSION # installation install -m 0755 -d %{buildroot}%{instdir} export LC_ALL=C if ! make instsetoo_native PKGFORMAT=installed DISABLE_STRIP=1 EPM=not-used-but-must-be-set; then echo - ---dump log start--- cat $WORKDIR/installation/LibreOffice/installed/logging/en-US/log_*_en-US.log echo - ---dump log end--- echo - ---dump log start -- SDK--- cat $WORKDIR/installation/LibreOffice_SDK/installed/logging/en-US/log_*_en-US.log echo - ---dump log end -- SDK--- echo - ---dump log start -- languagepacks--- cat $WORKDIR/installation/LibreOffice_languagepack/installed/logging/en-US/log_*_en-US.log echo - ---dump log end -- languagepacks--- exit 1 fi install -m 0755 -d %{buildroot}%{baseinstdir} mv $WORKDIR/installation/LibreOffice/installed/install/en-US/* %{buildroot}%{baseinstdir} %if %{with langpacks} for langpack in $WORKDIR/installation/LibreOffice_languagepack/installed/install/*; do [ `basename $langpack` = log ] && continue cp -rp $langpack/* %{buildroot}%{baseinstdir} rm -rf $langpack done %endif mv $WORKDIR/installation/LibreOffice_SDK/installed/install/en-US/sdk %{buildroot}%{sdkinstdir} chmod -R +w %{buildroot}%{baseinstdir} # postprocessing and tweaks # The installer currently sets UserInstallation to # $ORIGIN/../libreoffice/4, which is of course total nonsense. Because I # have no inclination to crawl through mountains of perl code to figure out # where it comes from, I am just going to replace it by a sensible # value here. sed -i -e '/UserInstallation/s@\$ORIGIN/..@$SYSUSERCONFIG@' %{buildroot}%{baseinstdir}/program/bootstraprc #configure sdk pushd %{buildroot}%{sdkinstdir} sed -e "s,@OO_SDK_NAME@,sdk," \ -e "s,@OO_SDK_HOME@,%{sdkinstdir}," \ -e "s,@OFFICE_HOME@,%{baseinstdir}," \ -e "s,@OO_SDK_MAKE_HOME@,/usr/bin," \ -e "s,@OO_SDK_ZIP_HOME@,/usr/bin," \ -e "s,@OO_SDK_CPP_HOME@,/usr/bin," \ -e "s,@OO_SDK_CAT_HOME@,/usr/bin," \ -e "s,@OO_SDK_SED_HOME@,/usr/bin," \ -e "s,@OO_SDK_CC_55_OR_HIGHER@,," \ -e "s,@OO_SDK_JAVA_HOME@,$JAVA_HOME," \ -e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \ -e "s,@SDK_AUTO_DEPLOYMENT@,NO," \ setsdkenv_unix.sh.in > setsdkenv_unix.sh # ensure no unexpanded vars sneaked in grep '@[A_Z0-9_]\+@' setsdkenv_unix.sh && exit 1 chmod 755 setsdkenv_unix.sh # we don't want to install the input file rm -f setsdkenv_unix.sh.in # TODO: is this still necessary? #fix permissions find examples -type f -exec chmod -x {} \; popd #ensure a template dir for each lang pushd %{buildroot}%{baseinstdir}/share/template for I in %{langpack_langs}; do mkdir -p $I done popd #Set some aliases to canonical autocorrect language files for locales with matching languages pushd %{buildroot}%{baseinstdir}/share/autocorr %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 #en-ZA exists and has a good autocorrect file with two or three extras that make sense for #neighbouring english speaking territories %make_autocorr_aliases -l en-ZA en-NA en-ZW %if %{with langpacks} %make_autocorr_aliases -l af-ZA af-NA %make_autocorr_aliases -l nl-NL nl-AW %make_autocorr_aliases -l sv-SE sv-FI %else rm -f acor_[a-df-z]*.dat acor_e[lsu]*.dat %endif popd # make these shared across multiple applications install -m 0755 -d %{buildroot}%{_datadir} mv -f %{buildroot}%{baseinstdir}/share/autocorr %{buildroot}%{_datadir}/autocorr chmod 755 %{buildroot}%{_datadir}/autocorr ln -s %{_datadir}/autocorr %{buildroot}%{baseinstdir}/share/autocorr #remove it in case we didn't build with gcj rm -f %{buildroot}%{baseinstdir}/program/classes/sandbox.jar # we don't need this in the install rm -f %{buildroot}%{baseinstdir}/program/classes/smoketest.jar #remove dummy .dat files rm -f %{buildroot}%{baseinstdir}/program/root?.dat #set standard permissions for rpmlint find %{buildroot}%{baseinstdir} -exec chmod +w {} \; find %{buildroot}%{baseinstdir} -type d -exec chmod 0755 {} \; # move python bits into site-packages install -m 0755 -d %{buildroot}%{libo_python_sitearch} pushd %{buildroot}%{libo_python_sitearch} echo "import sys, os" > uno.py echo "sys.path.append('%{baseinstdir}/program')" >> uno.py echo "os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:%{baseinstdir}/program/fundamentalrc')" >> uno.py cat %{buildroot}%{baseinstdir}/program/uno.py >> uno.py rm -f %{buildroot}%{baseinstdir}/program/uno.py* mv -f %{buildroot}%{baseinstdir}/program/unohelper.py* . mv -f %{buildroot}%{baseinstdir}/program/officehelper.py* . popd %py_byte_compile %{libo_python_executable} %{buildroot}%{baseinstdir}/program rm -rf %{buildroot}%{baseinstdir}/program/__pycache__ # package opensymbol separately pushd %{buildroot}%{baseinstdir}/program/resource/common/fonts install -d -m 0755 %{buildroot}%{_fontdir} install -p -m 0644 *.ttf %{buildroot}%{_fontdir} popd rm -rf %{buildroot}%{baseinstdir}/program/resource/common/fonts/*ttf rm -rf %{buildroot}%{baseinstdir}/share/fonts/truetype/*.ttf # move platform-independent data into shared dir install -m 0755 -d %{buildroot}%{datadir} rm -f %{buildroot}%{baseinstdir}/CREDITS.fodt %{buildroot}%{baseinstdir}/LICENSE* %{buildroot}%{baseinstdir}/NOTICE # ensure display of files in license/about dialogs works ln -sr %{buildroot}%{lodatadocdir}/CREDITS.fodt %{buildroot}%{baseinstdir}/CREDITS.fodt ln -sr %{buildroot}%{lodatadocdir}/LICENSE.html %{buildroot}%{baseinstdir}/LICENSE.html #ensure that no sneaky un-prelinkable, un-fpic or non executable shared libs #have snuck through pic=0 executable=0 for foo in `find %{buildroot}%{instdir} -name "*" -exec file {} \;| grep ": ELF" | cut -d: -f 1` ; do chmod +wx $foo ls -asl $foo result=`readelf -d $foo | grep TEXTREL` || true if [ "$result" != "" ]; then echo "TEXTREL Warning: $foo is b0rked (-fpic missing)" pic=1 fi result=`readelf -l $foo | grep GNU_STACK | grep RWE` || true if [ "$result" != "" ]; then echo "GNU_STACK Warning: $foo is b0rked (-noexecstack missing)" executable=1 fi done if [ $pic == 1 ]; then false; fi if [ $executable == 1 ]; then false; fi #make up some /usr/bin scripts install -m 0755 -d %{buildroot}%{_bindir} pushd %{buildroot}%{_bindir} echo \#\!/bin/sh > ooffice echo exec libreoffice \"\$@\" >> ooffice chmod a+x ooffice echo \#\!/bin/sh > ooviewdoc echo exec libreoffice --view \"\$@\" >> ooviewdoc chmod a+x ooviewdoc for app in base calc draw impress math writer; do echo \#\!/bin/sh > oo$app echo exec libreoffice --$app \"\$@\" >> oo$app chmod a+x oo$app done sed -e s/LAUNCHER/unopkg/g -e s/BRAND/libreoffice/g %{SOURCE8} > unopkg chmod a+x unopkg sed -e s/LAUNCHER/soffice/g -e s/BRAND/libreoffice/g %{SOURCE8} > libreoffice chmod a+x libreoffice %if 0%{?flatpak} sed -i -e 's|/usr/lib|/app/lib|g' unopkg libreoffice %endif # provide a /usr/bin/soffice for .recently-used.xbel ln -s %{baseinstdir}/program/soffice soffice # provide a /usr/bin/openoffice.org for backwards compat ln -s libreoffice openoffice.org popd pushd %{buildroot}%{baseinstdir}/share/xdg/ chmod u+w *.desktop ICONVERSION=`echo $PRODUCTVERSION | sed -e 's/\.//'` for file in *.desktop; do # remove the version from Name= # don't version the icons sed -i -e "s/ *$PRODUCTVERSION//g" \ -e "s/$ICONVERSION//g" \ -e "s/$PRODUCTVERSIONSHORT//g" \ $file done %if %{with serverconfig} for app in base calc draw impress math startcenter writer xsltfilter; do desktop-file-edit --set-key=NoDisplay --set-value=true $app.desktop done %endif # relocate the .desktop and icon files install -m 0755 -d %{buildroot}%{_datadir}/applications for app in base calc draw impress math startcenter writer xsltfilter; do sed -i -e 's/\${UNIXBASISROOTNAME}/%{name}/' $app.desktop desktop-file-validate $app.desktop install -m 0644 -p $app.desktop %{buildroot}%{_datadir}/applications/libreoffice-$app.desktop done popd %if 0%{?flatpak} # Transform the libreoffice-*.desktop files into # org.libreoffice.LibreOffice.*.desktop ones: solenv/bin/assemble-flatpak-desktop.sh %{buildroot}%{_datadir}/applications/ \ %{buildroot}%{_datadir}/applications/ rm %{buildroot}%{_datadir}/applications/libreoffice-*.desktop %endif pushd $WORKDIR/os-integration #get rid of the gnome icons and other unneeded files rm -rf icons/gnome applications application-registry #relocate the rest of them # 512x512 icons are not used by anything for icon in `find icons -path '*/512x512' -prune -o -type f -print`; do install -m 0755 -d %{buildroot}%{_datadir}/`dirname $icon` install -m 0644 -p $icon %{buildroot}%{_datadir}/`echo $icon | sed -e s@libreoffice$ICONVERSION-@libreoffice-@ | sed -e s@libreoffice$PRODUCTVERSION-@libreoffice-@` done #add our mime-types, e.g. for .oxt extensions install -m 0755 -d %{buildroot}%{_datadir}/mime/packages install -m 0644 -p mime/packages/libreoffice$PRODUCTVERSION.xml %{buildroot}%{_datadir}/mime/packages/libreoffice.xml # install LibreOfficeKit install -m 0755 -d %{buildroot}%{_libdir}/girepository-1.0 install -m 0644 -p LOKDocView-%{girapiversion}.typelib %{buildroot}%{_libdir}/girepository-1.0/LOKDocView-%{girapiversion}.typelib install -m 0755 -d %{buildroot}%{_libdir}/gir-1.0 install -m 0644 -p LOKDocView-%{girapiversion}.gir %{buildroot}%{_libdir}/gir-1.0/LOKDocView-%{girapiversion}.gir mv %{buildroot}%{baseinstdir}/program/liblibreofficekitgtk.so %{buildroot}%{_libdir} popd # install LibreOfficeKit headers install -m 0755 -d %{buildroot}%{_includedir}/LibreOfficeKit install -m 0644 -p include/LibreOfficeKit/* %{buildroot}%{_includedir}/LibreOfficeKit rm -rf %{buildroot}%{baseinstdir}/readmes rm -rf %{buildroot}%{baseinstdir}/licenses rm -rf %{buildroot}%{baseinstdir}/share/theme_definitions # to-do, remove this in libreoffice 4.4 when --without-ppds is gone, it'll do the right thing on its own then install -m 0755 -d %{buildroot}%{baseinstdir}/share/psprint/driver install -m 0644 -p vcl/unx/generic/printer/configuration/ppds/SGENPRT.PS %{buildroot}%{baseinstdir}/share/psprint/driver/SGENPRT.PS # to auto have postgres in classpath if subsequently installed sed -i -e "s#URE_MORE_JAVA_CLASSPATH_URLS.*#& file:///usr/share/java/postgresql-jdbc.jar#" %{buildroot}%{baseinstdir}/program/fundamentalrc # move glade catalog to system glade dir install -m 0755 -d %{buildroot}%{_datadir}/glade/catalogs mv %{buildroot}%{baseinstdir}/share/glade/libreoffice-catalog.xml %{buildroot}%{_datadir}/glade/catalogs install -m 0755 -d %{buildroot}%{_datadir}/glade3/catalogs ln -sr %{buildroot}%{_datadir}/glade/catalogs/libreoffice-catalog.xml %{buildroot}%{_datadir}/glade3/catalogs # install appdata install -m 0755 -d %{buildroot}%{_datadir}/metainfo install -m 0644 -p sysui/desktop/appstream-appdata/*.appdata.xml %{buildroot}%{_datadir}/metainfo # install symbolic icons install -m 0755 -d %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE42} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE43} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE44} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE45} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE46} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE47} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps install -m 0644 -p %{SOURCE48} %{buildroot}%{_datadir}/icons/hicolor/symbolic/apps %if 0%{?flatpak} # Duplicate icons/*/*/apps/libreoffice-* as # icons/*/*/apps/org.libreoffice.LibreOffice.* (so they end up "with both their # original libreoffice-* name as well as the org.libreoffice name needed by # Flatpak, which fixes the window icons", see # "clean up desktop integration"): for i in %{buildroot}%{_datadir}/icons/*/*/apps/libreoffice-*; do cp -a "$i" \ "$(dirname "$i")"/org.libreoffice.LibreOffice."${i##*/apps/libreoffice-}" done %endif # install man pages install -m 0755 -d %{buildroot}%{_mandir}/man1 install -m 0644 -p sysui/desktop/man/*.1 %{buildroot}%{_mandir}/man1 for app in oobase oocalc oodraw ooffice ooimpress oomath ooviewdoc oowriter openoffice.org soffice; do echo '.so man1/libreoffice.1' > $app.1 install -m 0644 -p $app.1 %{buildroot}%{_mandir}/man1 done export DESTDIR=%{buildroot} ./solenv/bin/install-gdb-printers -a %{_datadir}/gdb/auto-load%{baseinstdir} -c -i %{baseinstdir} -p %{_datadir}/libreoffice/gdb %if 0%{?flatpak} # Assemble the libreoffice-*.appdata.xml files into a single # org.libreoffice.LibreOffice.appdata.xml; first create the single file: solenv/bin/assemble-flatpak-appdata-step1.sh \ %{buildroot}%{_datadir}/metainfo/ 0 # ...then append the original files to the single file: solenv/bin/assemble-flatpak-appdata-step2.sh \ %{buildroot}%{_datadir}/metainfo/ %{buildroot}%{_datadir}/metainfo/ rm %{buildroot}%{_datadir}/metainfo/libreoffice-*.appdata.xml %endif %ifarch %{java_arches} # move stable API jars to noarch java location install -m 0755 -d %{buildroot}%{_javadir}/%{name} for jar in %{buildroot}%{baseinstdir}/program/classes/*.jar; do j=`basename $jar` case ${j%.jar} in juh|jurt|libreoffice|ridl|unoloader|unoil|officebean) mv $jar %{buildroot}%{_javadir}/%{name} ln -sr %{buildroot}%{_javadir}/%{name}/$j $jar ;; esac done %else # make sure something creates this dir install -m 0755 -d %{buildroot}%{baseinstdir}/share/extensions # and remove this rm -f %{buildroot}%{baseinstdir}/program/officebean.abignore %endif %check %files %files filters %files core %dir %{baseinstdir} %{baseinstdir}/CREDITS.fodt %{baseinstdir}/LICENSE.html %dir %{baseinstdir}/help %{baseinstdir}/help/idxcaption.xsl %{baseinstdir}/help/idxcontent.xsl %{baseinstdir}/help/main_transform.xsl %{baseinstdir}/presets %dir %{baseinstdir}/program %{baseinstdir}/program/libbasprovlo.so %{baseinstdir}/program/libcairocanvaslo.so %{baseinstdir}/program/libcanvasfactorylo.so %ifarch %{java_arches} %dir %{baseinstdir}/program/classes %{baseinstdir}/program/classes/commonwizards.jar %{baseinstdir}/program/classes/form.jar %{baseinstdir}/program/classes/query.jar %{baseinstdir}/program/classes/report.jar %{baseinstdir}/program/classes/ScriptFramework.jar %{baseinstdir}/program/classes/ScriptProviderForJava.jar %{baseinstdir}/program/classes/table.jar %{baseinstdir}/program/classes/unoil.jar %{baseinstdir}/program/classes/XMergeBridge.jar %{baseinstdir}/program/classes/xmerge.jar %endif %{baseinstdir}/program/libcmdmaillo.so %{baseinstdir}/program/libdeployment.so %{baseinstdir}/program/libdeploymentgui.so %{baseinstdir}/program/libdlgprovlo.so %{baseinstdir}/program/libexpwraplo.so %{baseinstdir}/program/libfps_officelo.so %{baseinstdir}/program/gdbtrace %{baseinstdir}/program/gengal %{baseinstdir}/program/gengal.bin %{baseinstdir}/program/libi18nsearchlo.so %{baseinstdir}/program/libldapbe2lo.so %{baseinstdir}/program/libacclo.so %{baseinstdir}/program/libanimcorelo.so %{baseinstdir}/program/libavmedia*.so %{baseinstdir}/program/libbasctllo.so %{baseinstdir}/program/libbiblo.so %{baseinstdir}/program/libcached1.so %{baseinstdir}/program/libcanvastoolslo.so %{baseinstdir}/program/libchart*lo.so %{baseinstdir}/program/libclewlo.so %{baseinstdir}/program/libcollator_data.so %{baseinstdir}/program/libcppcanvaslo.so %{baseinstdir}/program/libctllo.so %{baseinstdir}/program/libcuilo.so %{baseinstdir}/program/libdbalo.so %{baseinstdir}/program/libdbahsqllo.so %{baseinstdir}/program/libdbaselo.so %{baseinstdir}/program/libdbaxmllo.so #{baseinstdir}/program/libdbmmlo.so %{baseinstdir}/program/libdbpool2.so %{baseinstdir}/program/libdbtoolslo.so %{baseinstdir}/program/libdbulo.so %{baseinstdir}/program/libdeploymentmisclo.so %{baseinstdir}/program/libdesktop_detectorlo.so %{baseinstdir}/program/libdict_ja.so %{baseinstdir}/program/libdict_zh.so %{baseinstdir}/program/libdrawinglayerlo.so %{baseinstdir}/program/libdrawinglayercorelo.so %{baseinstdir}/program/libeditenglo.so %{baseinstdir}/program/libembobj.so %{baseinstdir}/program/libemboleobj.so %{baseinstdir}/program/libemfiolo.so %{baseinstdir}/program/libevoab*.so %{baseinstdir}/program/libevtattlo.so %{baseinstdir}/program/libicglo.so %{baseinstdir}/program/libindex_data.so %{baseinstdir}/program/libfilelo.so %{baseinstdir}/program/libfilterconfiglo.so %{baseinstdir}/program/libflatlo.so %{baseinstdir}/program/libfrmlo.so %{baseinstdir}/program/libguesslanglo.so %{baseinstdir}/program/libhelplinkerlo.so %{baseinstdir}/program/libhyphenlo.so %ifarch %{java_arches} %{baseinstdir}/program/libjdbclo.so %endif %{baseinstdir}/program/libLanguageToollo.so %{baseinstdir}/program/liblnglo.so %{baseinstdir}/program/libloglo.so %{baseinstdir}/program/liblocaledata_en.so %{baseinstdir}/program/liblocaledata_es.so %{baseinstdir}/program/liblocaledata_euro.so %{baseinstdir}/program/liblocaledata_others.so %{baseinstdir}/program/libmozbootstraplo.so %{baseinstdir}/program/libmsfilterlo.so %{baseinstdir}/program/libmtfrendererlo.so %{baseinstdir}/program/libmysql_jdbclo.so %{baseinstdir}/program/libmysqlclo.so %{baseinstdir}/program/libodbclo.so %{baseinstdir}/program/liboglcanvaslo.so %{baseinstdir}/program/liboffacclo.so %{baseinstdir}/program/libooxlo.so %{baseinstdir}/program/libopencllo.so %{baseinstdir}/program/libpcrlo.so %{baseinstdir}/program/libpdffilterlo.so %{baseinstdir}/program/libprotocolhandlerlo.so %{baseinstdir}/program/libsaxlo.so %{baseinstdir}/program/libscnlo.so %{baseinstdir}/program/libscriptframe.so %{baseinstdir}/program/libsdlo.so %{baseinstdir}/program/libsdbc2.so %{baseinstdir}/program/libsdbtlo.so %{baseinstdir}/program/libsddlo.so %{baseinstdir}/program/libsduilo.so %{baseinstdir}/program/libspelllo.so %{baseinstdir}/program/libsrtrs1.so %{baseinstdir}/program/libstoragefdlo.so %{baseinstdir}/program/libsvgiolo.so %{baseinstdir}/program/libsvxlo.so %{baseinstdir}/program/libsvxcorelo.so %{baseinstdir}/program/libswdlo.so %{baseinstdir}/program/libswlo.so %{baseinstdir}/program/libtextconv_dict.so %{baseinstdir}/program/libtextconversiondlgslo.so %{baseinstdir}/program/libtextfdlo.so %{baseinstdir}/program/libodfflatxmllo.so # TODO: shouldn't it have lo suffix? %{baseinstdir}/program/libucbhelper.so %{baseinstdir}/program/libucpchelp1.so %{baseinstdir}/program/libucpdav1.so %{baseinstdir}/program/libucpftp1.so %{baseinstdir}/program/libucphier1.so %{baseinstdir}/program/libucppkg1.so %{baseinstdir}/program/libunordflo.so %{baseinstdir}/program/libunopkgapp.so %{baseinstdir}/program/libunoxmllo.so %{baseinstdir}/program/libuuilo.so %{baseinstdir}/program/libvbahelperlo.so %{baseinstdir}/program/libxmlfalo.so %{baseinstdir}/program/libxmlfdlo.so %{baseinstdir}/program/libxoflo.so %{baseinstdir}/program/libxsec_xmlsec.so %{baseinstdir}/program/libxsltdlglo.so %{baseinstdir}/program/libxsltfilterlo.so %{baseinstdir}/program/libxstor.so %{baseinstdir}/program/liblosessioninstalllo.so %{baseinstdir}/program/libmigrationoo2lo.so %{baseinstdir}/program/libmigrationoo3lo.so %{baseinstdir}/program/libmsformslo.so %{baseinstdir}/program/opencl %dir %{baseinstdir}/program/opengl %{baseinstdir}/program/opengl/*.glsl %{baseinstdir}/program/types/offapi.rdb %{baseinstdir}/program/libpasswordcontainerlo.so %{baseinstdir}/program/pagein-common %dir %{baseinstdir}/program/resource %dir %{baseinstdir}/program/resource/common %dir %{baseinstdir}/program/resource/common/fonts %{baseinstdir}/program/senddoc %dir %{baseinstdir}/program/services %{baseinstdir}/program/services/services.rdb %{baseinstdir}/program/libsimplecanvaslo.so %{baseinstdir}/program/libslideshowlo.so %{baseinstdir}/program/libsmlo.so %{baseinstdir}/program/libsmdlo.so %{baseinstdir}/program/libsofficeapp.so %{baseinstdir}/program/libstringresourcelo.so %{baseinstdir}/program/libsysshlo.so %{baseinstdir}/program/libucpcmis1lo.so %{baseinstdir}/program/libucpexpand1lo.so %{baseinstdir}/program/libucpextlo.so %{baseinstdir}/program/libucpimagelo.so %{baseinstdir}/program/libucptdoc1lo.so %{baseinstdir}/program/lounorc %{baseinstdir}/program/libupdatefeedlo.so %{baseinstdir}/program/uri-encode %{baseinstdir}/program/libvbaeventslo.so %{baseinstdir}/program/libvclcanvaslo.so %{baseinstdir}/program/versionrc %dir %{baseinstdir}/share %dir %{baseinstdir}/share/classification %{baseinstdir}/share/classification/example*.xml %dir %{baseinstdir}/share/fonts %dir %{baseinstdir}/share/fonts/truetype %{baseinstdir}/share/fonts/truetype/fc_local.conf %dir %{baseinstdir}/share/Scripts %ifarch %{java_arches} %{baseinstdir}/share/Scripts/java %endif %dir %{baseinstdir}/share/autotext %dir %{_datadir}/autocorr %{baseinstdir}/share/autocorr %{baseinstdir}/share/basic %dir %{baseinstdir}/share/config %{baseinstdir}/share/config/images_breeze.zip %{baseinstdir}/share/config/images_breeze_svg.zip %{baseinstdir}/share/config/images_breeze_dark.zip %{baseinstdir}/share/config/images_breeze_dark_svg.zip %{baseinstdir}/share/config/images_colibre.zip %{baseinstdir}/share/config/images_colibre_svg.zip %{baseinstdir}/share/config/images_colibre_dark.zip %{baseinstdir}/share/config/images_colibre_dark_svg.zip %{baseinstdir}/share/config/images_elementary.zip %{baseinstdir}/share/config/images_elementary_svg.zip %{baseinstdir}/share/config/images_helpimg.zip %{baseinstdir}/share/config/images_karasa_jaga.zip %{baseinstdir}/share/config/images_karasa_jaga_svg.zip %{baseinstdir}/share/config/images_sifr.zip %{baseinstdir}/share/config/images_sifr_dark.zip %{baseinstdir}/share/config/images_sifr_dark_svg.zip %{baseinstdir}/share/config/images_sifr_svg.zip %{baseinstdir}/share/config/images_sukapura.zip %{baseinstdir}/share/config/images_sukapura_svg.zip %{baseinstdir}/share/config/images_sukapura_dark.zip %{baseinstdir}/share/config/images_sukapura_dark_svg.zip %dir %{baseinstdir}/share/tipoftheday %{baseinstdir}/share/tipoftheday/* %dir %{baseinstdir}/share/toolbarmode %{baseinstdir}/share/toolbarmode/* %dir %{baseinstdir}/share/config/soffice.cfg %{baseinstdir}/share/config/soffice.cfg/modules %{baseinstdir}/share/config/soffice.cfg/*/ui %{baseinstdir}/share/palette %{baseinstdir}/share/config/webcast %{baseinstdir}/share/config/wizard %dir %{baseinstdir}/share/dtd %{baseinstdir}/share/dtd/officedocument %{baseinstdir}/share/gallery %dir %{baseinstdir}/share/labels %{baseinstdir}/share/labels/labels.xml %dir %{baseinstdir}/share/psprint %config %{baseinstdir}/share/psprint/psprint.conf %{baseinstdir}/share/psprint/driver %dir %{baseinstdir}/share/registry %{baseinstdir}/share/registry/draw.xcd %{baseinstdir}/share/registry/gnome.xcd %{baseinstdir}/share/registry/lingucomponent.xcd %{baseinstdir}/share/registry/main.xcd %{baseinstdir}/share/registry/math.xcd %{baseinstdir}/share/registry/oo-ad-ldap.xcd.sample %{baseinstdir}/share/registry/oo-ldap.xcd.sample %dir %{baseinstdir}/share/registry/res %dir %{baseinstdir}/share/template %dir %{baseinstdir}/share/template/common %{baseinstdir}/share/template/common/draw %{baseinstdir}/share/template/common/internal %{baseinstdir}/share/template/common/officorr %{baseinstdir}/share/template/common/offimisc %{baseinstdir}/share/template/common/personal %{baseinstdir}/share/template/common/presnt %{baseinstdir}/share/template/common/styles %{baseinstdir}/share/template/common/wizard %dir %{baseinstdir}/share/template/common/l10n %{baseinstdir}/share/template/wizard %dir %{baseinstdir}/share/wordbook %{baseinstdir}/share/wordbook/en-GB.dic %{baseinstdir}/share/wordbook/en-US.dic %{baseinstdir}/share/wordbook/technical.dic %{baseinstdir}/program/liblnthlo.so %{_bindir}/unopkg %{_mandir}/man1/unopkg.1* %{baseinstdir}/program/libxmlsecurity.so %{baseinstdir}/program/libconfigmgrlo.so %{baseinstdir}/program/libdesktopbe1lo.so %{baseinstdir}/program/libfsstoragelo.so %{baseinstdir}/program/libi18npoollo.so %{baseinstdir}/program/libbasegfxlo.so # TODO: shouldn't it have lo suffix? %{baseinstdir}/program/libcomphelper.so %{baseinstdir}/program/libfwklo.so # TODO: shouldn't it have lo suffix? %{baseinstdir}/program/libi18nutil.so %{baseinstdir}/program/libpackage2.so %{baseinstdir}/program/libsblo.so %{baseinstdir}/program/libsfxlo.so %{baseinstdir}/program/libsotlo.so %{baseinstdir}/program/libspllo.so %{baseinstdir}/program/libsvllo.so %{baseinstdir}/program/libsvtlo.so %{baseinstdir}/program/libtklo.so %{baseinstdir}/program/libtllo.so %{baseinstdir}/program/libucb1.so %{baseinstdir}/program/libucpfile1.so %{baseinstdir}/program/libutllo.so %{baseinstdir}/program/libvcllo.so %{baseinstdir}/program/libwriterperfectlo.so %{baseinstdir}/program/libxmlscriptlo.so %{baseinstdir}/program/libxolo.so %{baseinstdir}/program/liblocalebe1lo.so %{baseinstdir}/program/libucpgio1lo.so %{baseinstdir}/program/types/oovbaapi.rdb #share unopkg %dir %{baseinstdir}/share/extensions %{baseinstdir}/program/unopkg %{baseinstdir}/program/unopkg.bin %{baseinstdir}/program/bootstraprc %{baseinstdir}/program/fundamentalrc %{baseinstdir}/program/setuprc %{baseinstdir}/program/intro.png %{baseinstdir}/program/intro-highres.png %{baseinstdir}/program/opencltest %{baseinstdir}/program/soffice %{baseinstdir}/program/soffice.bin %{baseinstdir}/program/sofficerc %{baseinstdir}/program/unoinfo %{baseinstdir}/program/oosplash %{baseinstdir}/program/shell/ %dir %{baseinstdir}/share/filter %{baseinstdir}/share/filter/oox-drawingml-adj-names %{baseinstdir}/share/filter/oox-drawingml-cs-presets %{baseinstdir}/share/filter/signature-line.svg %{baseinstdir}/share/filter/signature-line-draw.svg %{baseinstdir}/share/filter/vml-shape-types %{baseinstdir}/share/xdg/ %{baseinstdir}/program/redirectrc %if 0%{?flatpak} %{_datadir}/metainfo/org.libreoffice.LibreOffice.appdata.xml %{_datadir}/applications/org.libreoffice.LibreOffice.desktop %else %{_datadir}/applications/libreoffice-startcenter.desktop %endif #launchers %{_bindir}/libreoffice %{_bindir}/openoffice.org %{_bindir}/soffice %{_bindir}/ooffice %{_bindir}/ooviewdoc %{_mandir}/man1/libreoffice.1* %{_mandir}/man1/openoffice.org.1* %{_mandir}/man1/soffice.1* %{_mandir}/man1/ooffice.1* %{_mandir}/man1/ooviewdoc.1* %files base %ifarch %{java_arches} %{baseinstdir}/program/classes/hsqldb.jar %{baseinstdir}/program/classes/reportbuilder.jar %{baseinstdir}/program/classes/reportbuilderwizard.jar %{baseinstdir}/program/classes/sdbc_hsqldb.jar %endif %{baseinstdir}/program/access2base.py %{baseinstdir}/program/libabplo.so %{baseinstdir}/program/libdbplo.so %ifarch %{java_arches} %{baseinstdir}/program/libhsqldb.so %{baseinstdir}/program/librptlo.so %{baseinstdir}/program/librptuilo.so %{baseinstdir}/program/librptxmllo.so %endif %{baseinstdir}/share/registry/base.xcd %ifarch %{java_arches} %{baseinstdir}/share/registry/reportbuilder.xcd %endif %{baseinstdir}/program/sbase %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.base.desktop %else %{_datadir}/metainfo/libreoffice-base.appdata.xml %{_datadir}/applications/libreoffice-base.desktop %endif %{_bindir}/oobase %{_mandir}/man1/oobase.1* %ifarch %{java_arches} %files wiki-publisher %docdir %{baseinstdir}/share/extensions/wiki-publisher/license %{baseinstdir}/share/extensions/wiki-publisher %files nlpsolver %docdir %{baseinstdir}/share/extensions/nlpsolver/help %{baseinstdir}/share/extensions/nlpsolver %files officebean %{baseinstdir}/program/classes/officebean.jar %{baseinstdir}/program/libofficebean.so %files officebean-common %{_javadir}/%{name}/officebean.jar %endif %files ogltrans %{baseinstdir}/program/libOGLTranslo.so %{baseinstdir}/program/opengl/basicFragmentShader.glsl %{baseinstdir}/program/opengl/basicVertexShader.glsl %{baseinstdir}/program/opengl/dissolveFragmentShader.glsl %{baseinstdir}/program/opengl/fadeBlackFragmentShader.glsl %{baseinstdir}/program/opengl/fadeFragmentShader.glsl %{baseinstdir}/program/opengl/glitterFragmentShader.glsl %{baseinstdir}/program/opengl/glitterVertexShader.glsl %{baseinstdir}/program/opengl/honeycombFragmentShader.glsl %{baseinstdir}/program/opengl/honeycombGeometryShader.glsl %{baseinstdir}/program/opengl/honeycombVertexShader.glsl %{baseinstdir}/program/opengl/rippleFragmentShader.glsl %{baseinstdir}/program/opengl/reflectionFragmentShader.glsl %{baseinstdir}/program/opengl/reflectionVertexShader.glsl %{baseinstdir}/program/opengl/staticFragmentShader.glsl %{baseinstdir}/program/opengl/vortexFragmentShader.glsl %{baseinstdir}/program/opengl/vortexGeometryShader.glsl %{baseinstdir}/program/opengl/vortexVertexShader.glsl %{baseinstdir}/share/config/soffice.cfg/simpress/transitions-ogl.xml %{baseinstdir}/share/registry/ogltrans.xcd %files pdfimport %{baseinstdir}/program/libpdfimportlo.so %{baseinstdir}/program/xpdfimport %{baseinstdir}/share/registry/pdfimport.xcd %dir %{baseinstdir}/share/xpdfimport %{baseinstdir}/share/xpdfimport/xpdfimport_err.pdf %_font_pkg -n %{fontname} opens___.ttf %doc instdir/LICENSE %files calc %{baseinstdir}/program/libanalysislo.so %{baseinstdir}/program/libcalclo.so %{baseinstdir}/program/libdatelo.so %{baseinstdir}/program/libforlo.so %{baseinstdir}/program/libforuilo.so %{baseinstdir}/program/libnumbertextlo.so %{baseinstdir}/program/libpricinglo.so %{baseinstdir}/program/libsclo.so %{baseinstdir}/program/libscdlo.so %{baseinstdir}/program/libscfiltlo.so %{baseinstdir}/program/libscuilo.so %{baseinstdir}/program/libsolverlo.so %{baseinstdir}/program/libwpftcalclo.so %{baseinstdir}/program/libvbaobjlo.so %{baseinstdir}/share/calc/styles.xml %{baseinstdir}/share/registry/calc.xcd %{baseinstdir}/program/pagein-calc %{baseinstdir}/program/scalc %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.calc.desktop %else %{_datadir}/metainfo/libreoffice-calc.appdata.xml %{_datadir}/applications/libreoffice-calc.desktop %endif %{_bindir}/oocalc %{_mandir}/man1/oocalc.1* %files draw %{baseinstdir}/program/pagein-draw %{baseinstdir}/program/sdraw %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.draw.desktop %else %{_datadir}/metainfo/libreoffice-draw.appdata.xml %{_datadir}/applications/libreoffice-draw.desktop %endif %{_bindir}/oodraw %{_mandir}/man1/oodraw.1* %files emailmerge %{baseinstdir}/program/mailmerge.py* %{baseinstdir}/program/msgbox.py* %files writer %{baseinstdir}/program/libhwplo.so %{baseinstdir}/program/liblwpftlo.so %{baseinstdir}/program/libmswordlo.so %{baseinstdir}/program/libswuilo.so %{baseinstdir}/program/libt602filterlo.so %{baseinstdir}/program/libwpftwriterlo.so %{baseinstdir}/program/libwriterfilterlo.so %{baseinstdir}/program/libwriterlo.so %{baseinstdir}/program/libvbaswobjlo.so %{baseinstdir}/share/registry/writer.xcd %{baseinstdir}/program/pagein-writer %{baseinstdir}/program/swriter %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.writer.desktop %else %{_datadir}/metainfo/libreoffice-writer.appdata.xml %{_datadir}/applications/libreoffice-writer.desktop %endif %{_bindir}/oowriter %{_mandir}/man1/oowriter.1* %files impress %{baseinstdir}/program/libPresentationMinimizerlo.so %{baseinstdir}/program/libPresenterScreenlo.so %{baseinstdir}/program/libwpftimpresslo.so %dir %{baseinstdir}/share/config/soffice.cfg/simpress %{baseinstdir}/share/config/soffice.cfg/simpress/effects.xml %{baseinstdir}/share/config/soffice.cfg/simpress/layoutlist.xml %{baseinstdir}/share/config/soffice.cfg/simpress/objectlist.xml %{baseinstdir}/share/config/soffice.cfg/simpress/styles.xml %{baseinstdir}/share/config/soffice.cfg/simpress/transitions.xml %{baseinstdir}/share/registry/impress.xcd %{baseinstdir}/program/pagein-impress %{baseinstdir}/program/simpress %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.impress.desktop %else %{_datadir}/metainfo/libreoffice-impress.appdata.xml %{_datadir}/applications/libreoffice-impress.desktop %endif %{_bindir}/ooimpress %{_mandir}/man1/ooimpress.1* %files math %{baseinstdir}/program/smath %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.math.desktop %else %{_datadir}/applications/libreoffice-math.desktop %endif %{_bindir}/oomath %{_mandir}/man1/oomath.1* %files graphicfilter %{baseinstdir}/program/libgraphicfilterlo.so %{baseinstdir}/program/libsvgfilterlo.so %{baseinstdir}/program/libwpftdrawlo.so %{baseinstdir}/share/registry/graphicfilter.xcd %files xsltfilter %{baseinstdir}/share/xslt %{baseinstdir}/share/registry/xsltfilter.xcd %if 0%{?flatpak} %{_datadir}/applications/org.libreoffice.LibreOffice.xsltfilter.desktop %else %{_datadir}/applications/libreoffice-xsltfilter.desktop %endif %files postgresql %{baseinstdir}/program/libpostgresql-sdbclo.so %{baseinstdir}/program/libpostgresql-sdbc-impllo.so %{baseinstdir}/program/services/postgresql-sdbc.rdb %{baseinstdir}/share/registry/postgresql.xcd %files ure %ifarch %{java_arches} %{baseinstdir}/program/classes/java_uno.jar %{baseinstdir}/program/classes/juh.jar %{baseinstdir}/program/classes/jurt.jar %{baseinstdir}/program/classes/libreoffice.jar %{baseinstdir}/program/classes/ridl.jar %{baseinstdir}/program/classes/unoloader.jar %{baseinstdir}/program/javaldx %{baseinstdir}/program/javavendors.xml %{baseinstdir}/program/jvmfwk3rc %{baseinstdir}/program/JREProperties.class %endif %{baseinstdir}/program/libaffine_uno_uno.so %{baseinstdir}/program/libbinaryurplo.so %{baseinstdir}/program/libbootstraplo.so %{baseinstdir}/program/libgcc3_uno.so %{baseinstdir}/program/libi18nlangtag.so %{baseinstdir}/program/libintrospectionlo.so %{baseinstdir}/program/libinvocadaptlo.so %{baseinstdir}/program/libinvocationlo.so %{baseinstdir}/program/libiolo.so %ifarch %{java_arches} %{baseinstdir}/program/libjava_uno.so %{baseinstdir}/program/libjavaloaderlo.so %{baseinstdir}/program/libjavavmlo.so %{baseinstdir}/program/libjpipe.so %{baseinstdir}/program/libjuh.so %{baseinstdir}/program/libjuhx.so %{baseinstdir}/program/libjvmaccesslo.so %{baseinstdir}/program/libjvmfwklo.so %endif %{baseinstdir}/program/liblog_uno_uno.so %{baseinstdir}/program/libnamingservicelo.so %{baseinstdir}/program/libproxyfaclo.so %{baseinstdir}/program/libreflectionlo.so %{baseinstdir}/program/libreglo.so %{baseinstdir}/program/libsal_textenclo.so %{baseinstdir}/program/libstocserviceslo.so %{baseinstdir}/program/libstorelo.so %{baseinstdir}/program/libuno_cppu.so.3 %{baseinstdir}/program/libuno_cppuhelpergcc3.so.3 %{baseinstdir}/program/libuno_purpenvhelpergcc3.so.3 %{baseinstdir}/program/libuno_sal.so.3 %{baseinstdir}/program/libuno_salhelpergcc3.so.3 %{baseinstdir}/program/libunoidllo.so %{baseinstdir}/program/libunsafe_uno_uno.so %{baseinstdir}/program/libuuresolverlo.so %{baseinstdir}/program/libxmlreaderlo.so %{baseinstdir}/program/regview %{baseinstdir}/program/services.rdb %{baseinstdir}/program/types.rdb %{baseinstdir}/program/uno %{baseinstdir}/program/uno.bin %{baseinstdir}/program/unorc %files ure-common %ifarch %{java_arches} %dir %{_javadir}/%{name} %{_javadir}/%{name}/juh.jar %{_javadir}/%{name}/jurt.jar %{_javadir}/%{name}/libreoffice.jar %{_javadir}/%{name}/ridl.jar %{_javadir}/%{name}/unoloader.jar %endif %license instdir/LICENSE %files sdk %{sdkinstdir}/ %exclude %{sdkinstdir}/docs/ %exclude %{sdkinstdir}/examples/ %files sdk-doc %docdir %{sdkinstdir}/docs %license instdir/LICENSE %{sdkinstdir}/docs/ %{sdkinstdir}/examples/ %files pyuno %{baseinstdir}/program/libpyuno.so %{baseinstdir}/program/pythonloader.py* %{baseinstdir}/program/libpythonloaderlo.so %{baseinstdir}/program/pythonloader.unorc %{baseinstdir}/program/pythonscript.py* %{baseinstdir}/program/pyuno.so %{baseinstdir}/program/scriptforge.py* %{baseinstdir}/program/services/pyuno.rdb %{baseinstdir}/program/services/scriptproviderforpython.rdb %{baseinstdir}/program/wizards %{baseinstdir}/share/Scripts/python %exclude %{baseinstdir}/share/Scripts/python/LibreLogo %{libo_python_sitearch}/uno.py* %{libo_python_sitearch}/unohelper.py* %{libo_python_sitearch}/officehelper.py* %{libo_python_sitearch}/__pycache__/uno.cpython-* %{libo_python_sitearch}/__pycache__/unohelper.cpython-* %{libo_python_sitearch}/__pycache__/officehelper.cpython-* %{baseinstdir}/share/registry/pyuno.xcd %files librelogo %{baseinstdir}/share/registry/librelogo.xcd %{baseinstdir}/share/Scripts/python/LibreLogo %files glade %{_datadir}/glade %{_datadir}/glade3 %files data %{_datadir}/icons/hicolor/*/*/libreoffice* %if 0%{?flatpak} %{_datadir}/icons/hicolor/*/*/org.libreoffice.LibreOffice.* %endif %{_datadir}/mime/packages/libreoffice.xml %ifarch %{java_arches} %dir %{_javadir}/%{name} %{_javadir}/%{name}/unoil.jar %endif %dir %{datadir} %doc instdir/CREDITS.fodt %doc instdir/LICENSE.html %doc instdir/LICENSE %doc instdir/NOTICE %license instdir/LICENSE %post data touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : %postun data if [ $1 -eq 0 ] ; then touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : gtk-update-icon-cache -q %{_datadir}/icons/hicolor &>/dev/null || : fi %posttrans data gtk-update-icon-cache -q %{_datadir}/icons/hicolor &>/dev/null || : %files x11 %{baseinstdir}/program/libvclplug_genlo.so %files gtk3 %{baseinstdir}/program/libvclplug_gtk3lo.so %files gtk4 %{baseinstdir}/program/libvclplug_gtk4lo.so %files -n libreofficekit %{baseinstdir}/share/libreofficekit %{_libdir}/girepository-1.0/LOKDocView-%{girapiversion}.typelib %{_libdir}/liblibreofficekitgtk.so %files -n libreofficekit-devel %{_libdir}/gir-1.0/LOKDocView-%{girapiversion}.gir %{_includedir}/LibreOfficeKit %changelog * Wed Sep 06 2023 Darssin <2020303249@mail.nwpu.edu.cn> - 1:7.5.5.2-1 - Package init