# download path contains version without the last (fourth) digit
%define libo_version 4.0.0
# Should contain .alphaX / .betaX, if this is pre-release (actually
# pre-RC) version. The pre-release string is part of tarball file names,
# so we need a way to define it easily at one place.
#define libo_prerelease .beta2
%define vendoroption --with-vendor="Mageia"
# rhbz#465664 jar-repacking breaks help by reordering META-INF/MANIFEST.MF
%define __jar_repack %{nil}
# don't worry about whitespace for now
%define _default_patch_flags -s -l
%define _default_patch_fuzz 2
%define Werror_cflags %nil
# make it easier to download sources from pre-release site
%define source_url http://dev-builds.libreoffice.org/pre-releases/src
#define source_url http://download.documentfoundation.org/libreoffice/src/%libo_version
# URL for external projects' tarballs
%define external_url http://dev-www.libreoffice.org/src/
# get english only and no-langpacks for a faster smoketest build
%bcond_without langpacks
%bcond_with helplangpacks
%if %{with langpacks}
%define langpack_langs en-US af ar as bg bn br ca cs cy da de dz el es et eu fa fi fr ga gl gu he hi hr hu it ja ko kn lt lv mai ml mr nb nl nn nr nso or pa-IN pl pt pt-BR ro ru sh si sk sl sr ss st sv ta te th tn tr ts uk ve xh zh-CN zh-TW zu
%define with_lang --with-lang="%{langpack_langs}"
%else
%define langpack_langs en-US
%endif
%define _requires_exceptions libjawt.so\\|libmyspell.so\\|libstlport_gcc.so\\|libmono.so\\|mono\\|devel(libstlport_gcc)\\|libxmlreader.so\\|libcomphelp4gcc3.so\\|devel(libreg)\\|devel(libxmlreader)\\|devel(libreg(64bit))\\|devel(libxmlreader(64bit))
%define _provides_exceptions libsndfile.so\\|libportaudio.so\\|libdb-4.2.so\\|libdb_java-4.2.so\\|libmyspell.so\\|libstlport_gcc.so\\|librdf.so.0\\|libraptor.so.1\\|libxmlsec1-nss.so.1\\|libxmlsec1.so.1
%define _enable_debug_packages 0
Name: libreoffice
Version: %{libo_version}.1
Release: %mkrel 4%{?libo_prerelease}
Summary: Free Software Productivity Suite
License: LGPLv3 and LGPLv2+ and BSD and (MPLv1.1 or GPLv2 or LGPLv2 or Netscape) and (CDDL or GPLv2) and Public Domain
Group: Office/Suite
URL: http://www.documentfoundation.org/develop
Source0: %{source_url}/libreoffice-%{version}%{?libo_prerelease}.tar.xz
Source1: %{source_url}/libreoffice-help-%{version}%{?libo_prerelease}.tar.xz
Source2: %{source_url}/libreoffice-translations-%{version}%{?libo_prerelease}.tar.xz
Source3: http://dev-www.libreoffice.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll
Source4: libreoffice-multiliblauncher.sh
Source5: %{external_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip
Source6: %{external_url}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
Source7: %{external_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip
Source8: %{external_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
Source9: %{external_url}/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
# build tools
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bc
BuildRequires: binutils
BuildRequires: bison
BuildRequires: desktop-file-utils
BuildRequires: doxygen
BuildRequires: findutils
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: gperf
BuildRequires: icu
BuildRequires: make
BuildRequires: perl(Archive::Zip)
BuildRequires: perl(Digest::MD5)
BuildRequires: zip
# libs / headers
BuildRequires: libGConf2-devel
BuildRequires: bluez-devel
BuildRequires: boost-devel
BuildRequires: clucene-devel
BuildRequires: cppunit-devel
BuildRequires: cups-devel
BuildRequires: evolution-data-server-devel
BuildRequires: expat-devel
BuildRequires: fontpackages-devel
BuildRequires: freetype-devel
BuildRequires: graphite2-devel
BuildRequires: gstreamer1.0-devel
BuildRequires: gtk2-devel
BuildRequires: hunspell-devel
BuildRequires: hyphen-devel
BuildRequires: kdelibs4-devel
BuildRequires: libice-devel
BuildRequires: libcdr-devel
BuildRequires: libcmis-devel >= 0.3
BuildRequires: libcurl-devel
BuildRequires: libexttextcat-devel
BuildRequires: libgstreamer1.0-plugins-base-devel
BuildRequires: libicu-devel
BuildRequires: libxt-devel
BuildRequires: libidn-devel
BuildRequires: libjpeg-devel
BuildRequires: liblangtag-devel
BuildRequires: libmspub-devel
BuildRequires: liborcus-devel
BuildRequires: librsvg2-devel
BuildRequires: libtextcat-devel
BuildRequires: libvisio-devel
BuildRequires: libwpd-devel >= 0.9.0
BuildRequires: libwpg-devel >= 1:0.2.0
BuildRequires: libwps-devel >= 1:0.2.0
BuildRequires: libxext-devel
BuildRequires: libxml2-devel
BuildRequires: libxslt-devel
BuildRequires: lpsolve-devel
BuildRequires: mdds-devel
BuildRequires: mysql-connector-c++-devel
BuildRequires: mythes-devel
BuildRequires: neon-devel
BuildRequires: nss-devel
BuildRequires: openldap-devel
BuildRequires: openssl-devel
BuildRequires: pam-devel
BuildRequires: pkgconfig(dbus-glib-1) >= 0.70
BuildRequires: pkgconfig(ORBit-2.0)
BuildRequires: pkgconfig(poppler)
BuildRequires: pkgconfig(poppler-cpp)
BuildRequires: pkgconfig(poppler-glib)
BuildRequires: postgresql-devel
BuildRequires: python3-devel
BuildRequires: redland-devel
BuildRequires: rsync
BuildRequires: sane-devel
BuildRequires: unixODBC-devel
BuildRequires: vigra-devel
BuildRequires: xulrunner-devel
BuildRequires: zlib-devel
BuildRequires: font(:lang=en)
# java stuff
BuildRequires: ant
BuildRequires: ant-apache-regexp
BuildRequires: apache-commons-codec
BuildRequires: apache-commons-lang
BuildRequires: bsh
BuildRequires: jakarta-commons-httpclient
BuildRequires: java-devel
BuildRequires: junit
BuildRequires: pentaho-reporting-flow-engine
BuildRequires: tomcat-servlet-3.0-api
# Fedora patches
Patch1: openoffice.org-2.0.2.rh188467.printingdefaults.patch
Patch2: openoffice.org-2.4.0.ooo86080.unopkg.bodge.patch
Patch3: openoffice.org-3.0.0.ooo88341.sc.verticalboxes.patch
Patch4: openoffice.org-3.1.0.oooXXXXX.solenv.allowmissing.patch
Patch5: openoffice.org-3.1.0.ooo101274.opening-a-directory.patch
Patch6: openoffice.org-3.1.1.ooo105784.vcl.sniffscriptforsubs.patch
Patch7: libreoffice-installfix.patch
#to-do, fix this on bigendian platforms
Patch8: 0001-disable-failing-check.patch
Patch12: 0001-temporarily-disable-failing-test.patch
#Mageia Patch
Patch100: libreoffice-4.0.0.0.beta2-disable-unit-tests.patch
# libreoffice metapackage requires all of the programs
Requires: %{name}-base = %{version}
Requires: %{name}-calc = %{version}
Requires: %{name}-draw = %{version}
Requires: %{name}-impress = %{version}
Requires: %{name}-math = %{version}
Suggests: %{name}-pdfimport
Requires: %{name}-writer = %{version}
Obsoletes: openoffice.org < 1:3.3.1
Provides: openoffice.org = 1:%{version}-%{release}
%define instdir %{_libdir}
%define baseinstdir %{instdir}/libreoffice
%define ureinstdir %{baseinstdir}/ure
%define sdkinstdir %{baseinstdir}/sdk
%define fontname opensymbol
%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 core
Summary: Core modules for LibreOffice
Group: Office/Utilities
Requires: %{name}-%{fontname}-fonts = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Requires: fonts-ttf-liberation
Requires: fonts-ttf-dejavu
Requires: hunspell
Requires: hyphen >= 2.4
Suggests: hyphen-en
Suggests: autocorr-en
Suggests: hunspell-en
Requires: libexttextcat
Requires: %name-langpack = %version-%release
Requires(pre): gtk2 >= 2.9.4
Requires(post): gtk2 >= 2.9.4
Requires(preun): gtk2 >= 2.9.4
Requires(postun): gtk2 >= 2.9.4
Obsoletes: openoffice.org-core < 1:3.3.1
Provides: openoffice.org-core = 1:%version-%release
Obsoletes: openoffice.org-common < 1:3.3.1
Provides: openoffice.org-common = 1:%version-%release
Obsoletes: openoffice.org-brand < 1:3.3.1, broffice.org-brand < 1:3.3.1
Obsoletes: openoffice.org-filter-binfilter < 1:3.3.1
Provides: openoffice.org-filter-binfilter = 1:%version-%release
Obsoletes: openoffice.org-help-en_US < 1:3.3.1
Provides: openoffice.org-help-en_US = 1:%version-%release
Obsoletes: openoffice.org-help-en_GB < 1:3.3.1
Provides: openoffice.org-help-en_GB = 1:%version-%release
Obsoletes: openoffice.org-langpack-ms < 1:3.3.1
Obsoletes: libreoffice-langpack-ms < 1:3.3.99.1
Obsoletes: openoffice.org-langpack-ur < 1:3.3.1
Obsoletes: libreoffice-langpack-ur < 1:3.3.99.1
Provides: libreoffice-style-tango = %{version}-%{release}
Provides: libreoffice-style-oxygen = %{version}-%{release}
Conflicts: %name-ure < 3.3.2.2-7
Obsoletes: libreoffice-binfilter < 4.0.0.0
Obsoletes: openoffice.org-testtools < 1:3.3.1
Obsoletes: libreoffice-testtools < 3.4.99.1
Conflicts: %name-gdb-debug-support < 3.6.0-0.beta2.1
%description core
The shared core libraries and support files for LibreOffice.
%package pyuno
Summary: Python support for LibreOffice
Group: Development/Python
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Requires: python3
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-pyuno < 1:3.3.1
Provides: openoffice.org-pyuno = 1:%version-%release
%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
Group: Databases
Requires: postgresql-jdbc
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-calc = %{version}-%{release}
Requires: hsqldb
Suggests: %{name}-java-common = %{version}-%release
Obsoletes: openoffice.org-base < 1:3.3.1, broffice.org-base < 1:3.3.1
Provides: openoffice.org-base = 1:%version-%release
Obsoletes: openoffice.org-style < 1:3.3.1
Provides: openoffice.org-style = 1:%version-%release
Obsoletes: openoffice.org-style-crystal < 1:3.3.1
Provides: openoffice.org-style-crystal = 1:%version-%release
Obsoletes: openoffice.org-style-oxygen < 1:3.3.1
Provides: openoffice.org-style-oxygen = 1:%version-%release
%description base
GUI database front-end for LibreOffice. Allows creation and management of
databases through a GUI.
%package report-builder
Summary: Create database reports from LibreOffice
Group: Databases
Requires: pentaho-reporting-flow-engine
Requires: %{name}-base = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-report-builder < 1:3.3.1
%description report-builder
Creates database reports from LibreOffice databases. The report builder can
define group and page headers as well as group, page footers and calculation
fields to accomplish complex database reports.
%package bsh
Summary: BeanShell support for LibreOffice
Group: Development/Java
Requires: bsh
Requires: %{name}-core = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-bsh < 1:3.3.1
Provides: openoffice.org-bsh < 1:%version-%release
%description bsh
Support BeanShell scripts in LibreOffice.
%package rhino
Summary: JavaScript support for LibreOffice
Group: Development/Java
Requires: %{name}-core = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-rhino < 1:3.3.1
%description rhino
Support JavaScript scripts in LibreOffice.
%package wiki-publisher
Summary: Create Wiki articles on MediaWiki servers with LibreOffice
Group: Office/Utilities
Requires: apache-commons-codec, jakarta-commons-httpclient
Requires: apache-commons-lang, apache-commons-logging
Requires: %{name}-writer = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-wiki-publisher < 1:3.3.1
%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
Group: Office/Utilities
Requires: %{name}-calc = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
%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.
%package ogltrans
Summary: 3D OpenGL slide transitions for LibreOffice
Group: Office/Utilities
Requires: %{name}-impress = %{version}-%{release}
Requires(pre): %{name}-core
Obsoletes: openoffice.org-ogltrans < 1:3.3.1
%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 presentation-minimizer
Summary: Shrink LibreOffice presentations
Group: Publishing
Requires: %{name}-impress = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-presentation-minimizer < 1:3.3.1
%description presentation-minimizer
The Presentation Minimizer is used to reduce the file size of the current
presentation. Images will be compressed, and data that is no longer needed will
be removed.
%package pdfimport
Summary: PDF Importer for LibreOffice Draw
Group: Office/Utilities
Requires: %{name}-draw = %{version}-%{release}
Requires(pre): %{name}-core
Requires(post): %{name}-core
Requires(preun): %{name}-core
Requires(postun): %{name}-core
Obsoletes: openoffice.org-pdfimport < 1:3.3.1
%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
Group: System/Fonts/True type
Requires: fontpackages-filesystem
Obsoletes: openoffice.org-fonts < 1:3.3.1
Obsoletes: openoffice.org-opensymbol-fonts < 1:3.3.1
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
Group: Office/Word processor
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Obsoletes: openoffice.org-writer-core < 1:3.3.1
Obsoletes: openoffice.org-writer < 1:3.3.1, broffice.org-writer < 1:3.3.1
Provides: openoffice.org-writer = 1:%{version}-%{release}
Obsoletes: openoffice.org-writer2latex < 1:3.3.1
Provides: openoffice.org-writer2latex = 1:%{version}-%{release}
Obsoletes: openoffice.org-writer2xhtml < 1:3.3.1
Provides: openoffice.org-writer2xhtml = 1:%{version}-%{release}
%description writer
The LibreOffice Word Processor application.
%package emailmerge
Summary: Email mail-merge component for LibreOffice
Group: Networking/Mail
Requires: %{name}-writer = %{version}-%{release}
Requires: %{name}-pyuno = %{version}-%{release}
Obsoletes: openoffice.org-emailmerge < 1:3.3.1
%description emailmerge
Enables the LibreOffice writer module to mail-merge to email.
%package calc
Summary: LibreOffice Spreadsheet Application
Group: Office/Spreadsheet
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Obsoletes: openoffice.org-calc-core < 1:3.3.1
Obsoletes: openoffice.org-calc < 1:3.3.1, broffice.org-calc < 1:3.3.1
%description calc
The LibreOffice Spreadsheet application.
%package draw
Summary: LibreOffice Drawing Application
Group: Graphics/Editors and Converters
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-pdfimport = %{version}-%{release}
Requires: %{name}-graphicfilter = %{version}-%{release}
Obsoletes: openoffice.org-draw-core < 1:3.3.1
Obsoletes: openoffice.org-draw < 1:3.3.1, broffice.org-draw < 1:3.3.1
provides: openoffice.org-draw = 1:%{version}-%{release}
%description draw
The LibreOffice Drawing Application.
%package impress
Summary: LibreOffice Presentation Application
Group: Office/Utilities
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-ogltrans = %{version}-%{release}
%rename %{name}-presenter-screen = %{version}-%{release}
Obsoletes: openoffice.org-impress-core < 1:3.3.1
Obsoletes: openoffice.org-impress < 1:3.3.1, broffice.org-impress < 1:3.3.1
Provides: openoffice.org-impress = 1:%{version}-%{release}
%description impress
The LibreOffice Presentation Application.
%package math
Summary: LibreOffice Equation Editor Application
Group: Sciences/Mathematics
Requires: %{name}-core = %{version}-%{release}
Requires: %{name}-ure = %{version}-%{release}
Obsoletes: openoffice.org-math-core < 1:3.3.1
Obsoletes: openoffice.org-math < 1:3.3.1, broffice.org-math < 1:3.3.1
%description math
The LibreOffice Equation Editor Application.
%package graphicfilter
Summary: LibreOffice Extra Graphic filters
Group: Office/Utilities
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-core = %{version}-%{release}
Obsoletes: openoffice.org-graphicfilter < 1:3.3.1
%description graphicfilter
The graphicfilter module for LibreOffice provides graphic filters, e.g. svg and
flash filters.
%package xsltfilter
Summary: Optional xsltfilter module for LibreOffice
Group: Office/Utilities
Requires: %{name}-core = %{version}-%{release}
Obsoletes: openoffice.org-xsltfilter < 1:3.3.1
%description xsltfilter
The xsltfilter module for LibreOffice, provides additional docbook and
xhtml export transforms. Install this to enable docbook export.
%package javafilter
Summary: Optional javafilter module for LibreOffice
Group: Office/Utilities
Requires: %{name}-core = %{version}-%{release}
Obsoletes: openoffice.org-javafilter < 1:3.3.1
%description javafilter
The javafilter module for LibreOffice, provides additional AportisDoc,
Pocket Excel and Pocket Word import filters.
%package postgresql
Summary: PostgreSQL connector for LibreOffice
Group: Office/Utilities
Requires: %{name}-base = %{version}-%{release}
Requires: postgresql-libs
%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
Group: Development/Other
Requires: unzip
Suggests: %name-java-common = %version-%release
Obsoletes: openoffice.org-ure < 1:3.3.1
Conflicts: libreoffice-core <= 3.3.2.2-5
%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 java-common
Group: Office/Utilities
Summary: LibreOffice office suite Java support arch. independent files
Requires: %{name}-core = %{version}-%{release}
#Requires: %{name}-common = %{version}-%{release}
Requires: jre
Conflicts: %name-core < 3.3.2.2-8
Obsoletes: openoffice.org-java-common < 1:3.3.1
Provides: openoffice.org-java-common = 1:%version-%release
%description java-common
LibreOffice is a full-featured office productivity suite that provides a
near drop-in replacement for Microsoft(R) Office.
This package contains the architecture-independent files of the Java support
for Libreoffice (Java classes, scripts, config snippets).
Also contains the Libreoffice Office Bean for embedding Libreoffice in
custom Java applications.
%package sdk
Summary: Software Development Kit for LibreOffice
Group: Development/Other
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-core = %{version}-%{release}
Requires: unzip, java-devel
Obsoletes: openoffice.org-sdk < 1:3.3.1, openoffice.org-devel < 1:3.3.1
%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
Group: Development/Other
Requires: %{name}-sdk = %{version}-%{release}
Obsoletes: openoffice.org-sdk-doc < 1:3.3.1
%description sdk-doc
This provides documentation for programming using the LibreOffice APIs
and examples of creating extensions (UNO components) for LibreOffice.
%package headless
Summary: LibreOffice Headless plug-in
Group: Development/Other
Requires: %{name}-ure = %{version}-%{release}
Requires: %{name}-core = %{version}-%{release}
Obsoletes: openoffice.org-headless < 1:3.3.1
%description headless
A plug-in for LibreOffice that enables it to function without an X server.
It implements the -headless command line option and allows LibreOffice to be
used as a backend server for e.g. document conversion.
%package kde
Summary: LibreOffice KDE integration plug-in
Group: Graphical desktop/KDE
Requires: %{name}-core = %{version}-%{release}
Obsoletes: openoffice.org-kde4 < 1:3.3.1
Provides: openoffice.org-kde4 = 1:%version-%release
%description kde
A plug-in for LibreOffice that enables integration into the KDE desktop environment.
%if 0%{?_enable_debug_packages}
%define debug_package %{nil}
%global __debug_package 1
%package debug
Summary: Debug information for package %{name}
Group: Development/Debug
AutoReqProv: 0
Requires: libreoffice-core = %{version}-%{release}
Requires: libreoffice-gdb-debug-support = %{version}-%{release}
%description debug
This package provides debug information for package %{name}.
Debug information is useful when developing applications that use this
package or when debugging this package.
%files debug -f debugfiles.list
%package gdb-debug-support
Summary: Additional support for debugging with gdb
Group: Development/Other
Requires: gdb
AutoReqProv: 0
%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() \
%{baseinstdir}/program/resource/*%{1}.res \
%{baseinstdir}/share/config/soffice.cfg/modules/*/ui/res/%{1} \
%{baseinstdir}/share/config/soffice.cfg/*/ui/res/%{1} \
%{baseinstdir}/share/template/%{1} \
%{baseinstdir}/share/registry/Langpack-%{1}.xcd \
%{baseinstdir}/share/registry/res/registry_%{1}.xcd \
%{baseinstdir}/share/registry/res/fcfg_langpack_%{1}.xcd \
%{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 urpmi 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 the package does not contain any files (i.e., has empty filelist)
# Ff: font language dependency
# Hh: hunspell dependency
# i: additional language added to this package
# L: language code for files
# l: language code, e.g., cs
# Mm: mythes dependency
# n: language name, e.g., Czech
# Oo: Obsoletes: of openoffice.org-langpack
# 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
# 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 g jk o q tuvwx z BCD G IJK NOPQR UVWX Z0123456789
%define langpack(Aa:c:EFf:Hh:iL:l:Mm:n:Oo:p:r:S:s:T:Uu:Yy:) \
%define project LibreOffice \
%define lang %{-l:%{-l*}}%{!-l:%{error:Language code not defined}} \
%define pkgname langpack-%{lang} \
%define langname %{-n:%{-n*}}%{!-n:%{error:Language name not defined}} \
\
%package %{pkgname} \
Summary: %{langname} language pack for %{project} \
Group: System/Internationalization \
Requires: %{name}-core = %{version}-%{release} \
Obsoletes: openoffice.org-l10n-%{lang} < 1:3.3.1 \
Provides: openoffice.org-l10n-%{lang} = 1:%version-%release \
Provides: %name-langpack = %version-%release \
%{-a:Requires: autocorr-%{-a*}}%{!-a:%{-A:Requires: autocorr-%{lang}}} \
%{-f:Requires: font(:lang=%{-f*})}%{!-f:%{-F:Requires: font(:lang=%{lang})}} \
%{-h:Requires: hunspell-%{-h*}}%{!-h:%{-H:Requires: hunspell-%{lang}}} \
%{-m:Requires: mythes-%{-m*}}%{!-m:%{-M:Requires: mythes-%{lang}}} \
%{-u:Requires: locales-%{-u*}} \
%{-U:Requires: locales-%{lang}} \
%{-y:Requires: hyphen-%{-y*}}%{!-y:%{-Y:Requires: hyphen-%{lang}}} \
%{-r:Requires: %{-r*}} \
%define obs openoffice.org-langpack \
%define obsv 1:3.3.1 \
%{-o:Obsoletes: %{obs}-%{-o*} < %{obsv}}%{!-o:%{-O:Obsoletes: %{obs}-%{lang} < %{obsv}}} \
%{-p:Provides: %{name}-langpack-%{-p*}} \
\
%description %{pkgname} \
Provides additional %{langname} translations and resources for %{project}. \
\
%files %{pkgname} \
%{!-E: \
%define _langpack_lang %{-L:%{-L*}}%{!-L:%{-l*}} \
%{expand:%%_langpack_common %{_langpack_lang}} \
%{-c:%{baseinstdir}/share/registry/%{-c*}.xcd} \
%{-s:%{baseinstdir}/share/registry/%{-s*}_%{_langpack_lang}.xcd} \
%{-T: \
%docdir %{baseinstdir}/help/%{_langpack_lang} \
%{baseinstdir}/help/%{_langpack_lang} \
} \
%{-i:%{expand:%%_langpack_common %{-i*}}} \
} \
%{nil}
%define helplangpack(Aa:Ff:Hh:l:Mm:n:Oo:r:Ss:Yy:Uu:) \
%define project LibreOffice \
%define lang %{-l:%{-l*}}%{!-l:%{error:Language code not defined}} \
%define hlppkgname help-%{lang} \
%define hlplangname %{-n:%{-n*}}%{!-n:%{error:Language name not defined}} \
\
%package %{hlppkgname} \
Summary: %{hlplangname} language pack for %{project} \
Group: Documentation \
Requires: %{name}-core = %{version}-%{release} \
Obsoletes: openoffice.org-help-%{lang} < 1:3.3.1 \
Provides: openoffice.org-help-%{lang} = 1:%version-%release \
\
%define hlpobs openoffice.org-help \
%define hlpobsv 1:3.3.1 \
%{-o:Obsoletes: %{hlpobs}-%{-o*} < %{hlpobsv}}%{!-o:%{-O:Obsoletes: %{hlpobs}-%{lang} < %{hlpobsv}}} \
\
%description %{hlppkgname} \
Provides additional %{hlplangname} help resources for %{project}. \
\
%define hlpfilelist %{-s:-f %{-s*}.help.filelist}%{!-s:%{-S:-f %{lang}.help.filelist}} \
%files %{hlppkgname} %{hlpfilelist} \
%*
# 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 \
Group: Text tools \
BuildArch: noarch \
\
%description -n %{pkgname} \
Rules for auto-correcting common %{langname} typing errors. \
\
%files -n %{pkgname} \
%doc solver/unxlng*/bin/ure/LICENSE \
%dir %{_datadir}/autocorr \
%{-L:%{_datadir}/autocorr/acor_%{lang}.dat} \
%{!-L:%{_datadir}/autocorr/acor_%{lang}-*.dat} \
%{-i:%{_datadir}/autocorr/acor_%{-i*}-*.dat} \
%{nil}
%if %{with langpacks}
%langpack -l af -n Afrikaans -F -H -Y -A -o af_ZA
%langpack -l ar -n Arabic -F -H -s ctl -O
%langpack -l as -n Assamese -F -H -Y -o as_IN
%langpack -l bg -n Bulgarian -F -H -Y -M -A -T -o bg_BG
%langpack -l bn -n Bengali -F -H -Y -T -O
%langpack -l br -n Breton -F -O -u fr
%langpack -l ca -n Catalan -F -H -Y -M -T -o ca_ES
%langpack -l cs -n Czech -F -H -Y -M -A -T -o cs_CZ
%langpack -l cy -n Welsh -F -H -Y -o cy_GB
%langpack -l da -n Danish -F -H -Y -M -A -T -o da_DK
%langpack -l de -n German -F -H -Y -M -A -T -O
%langpack -l dz -n Dzongkha -F -s ctl -T -O
%langpack -l el -n Greek -F -H -Y -M -T -o el_GR
%langpack -l en -n English -F -H -Y -M -A -E -O
%langpack -l es -n Spanish -F -H -Y -M -A -T -O
%langpack -l et -n Estonian -F -H -Y -T -o et_EE
%langpack -l eu -n Basque -F -H -Y -A -T -o eu_ES
%langpack -l fa -n Farsi -A -H -Y -s ctl
%langpack -l fi -n Finnish -F -r libreoffice-voikko -A -T -o fi_FI
%langpack -l fr -n French -F -H -Y -M -A -T -O
%langpack -l ga -n Irish -F -H -Y -M -A -o ga_IE
%langpack -l gl -n Galician -F -H -Y -T -o gl_ES
%langpack -l gu -n Gujarati -F -H -Y -s ctl -o gu_IN
%langpack -l he -n Hebrew -F -H -s ctl -o he_IL
%langpack -l hi -n Hindi -F -H -Y -s ctl -T -o hi_IN
%langpack -l hr -n Croatian -F -H -Y -A -o hr_HR
%langpack -l hu -n Hungarian -F -H -Y -M -A -T -o hu_HU
%langpack -l it -n Italian -F -H -Y -M -A -T -O
%langpack -l ja -n Japanese -F -A -s cjk -T -o ja_JP
%langpack -l kn -n Kannada -F -H -Y -o kn_IN
%langpack -l ko -n Korean -F -H -A -s cjk -T -c korea -o ko_KR
%langpack -l lt -n Lithuanian -F -H -Y -A -o lt_LT
%langpack -l lv -n Latvian -F -H -Y -M
%langpack -l mai -n Maithili -F -o mai_IN
%langpack -l ml -n Malayalam -F -H -Y -o ml_IN
%langpack -l mr -n Marathi -F -H -Y -o mr_IN
%langpack -l nb -n Bokmal -F -H -Y -M -T -o nb_NO -u no
%langpack -l nl -n Dutch -F -H -Y -M -A -T -O
%langpack -l nn -n Nynorsk -F -H -Y -M -T -o nn_NO -u no
%define langpack_lang Southern Ndebele
%langpack -l nr -n %{langpack_lang} -F -H -o nr_ZA
%define langpack_lang Northern Sotho
%langpack -l nso -n %{langpack_lang} -F -H -o nso_ZA
%langpack -l or -n Oriya -F -H -Y -s ctl -o or_IN
%langpack -l pa -n Punjabi -F -H -Y -O -s ctl -L pa-IN
%langpack -l pl -n Polish -F -H -Y -M -A -T -o pl_PL
%define langpack_lang Brazilian Portuguese
%langpack -l pt-BR -n %{langpack_lang} -f pt -h pt -y pt -m pt -a pt -p pt_BR -T -u pt -o pt_BR
%langpack -l pt -n Portuguese -f pt -h pt -y pt -m pt -a pt -p pt_PT -T -L pt -u pt -o pt_PT
%langpack -l ro -n Romanian -F -H -Y -M -T -O
%langpack -l ru -n Russian -F -H -Y -M -A -T -O
%langpack -l si -n Sinhalese -F -H -S ctl -T -O
%langpack -l sk -n Slovak -F -H -Y -M -A -T -o sk_SK
%langpack -l sl -n Slovenian -F -H -Y -M -A -T -o sl_SI
%langpack -l sr -n Serbian -F -H -Y -A -i sh -O
%langpack -l ss -n Swati -F -H -o ss_ZA
%define langpack_lang Southern Sotho
%langpack -l st -n %{langpack_lang} -F -H -o st_ZA
%langpack -l sv -n Swedish -F -H -Y -M -A -T -O
%langpack -l ta -n Tamil -F -H -Y -s ctl -T -o ta_IN
%langpack -l te -n Telugu -F -H -Y -o te_IN
%langpack -l th -n Thai -F -H -s ctl -c ctlseqcheck_th -o th_TH
%langpack -l tn -n Tswana -F -H -o tn_ZA
%langpack -l tr -n Turkish -F -A -T -o tr_TR
%langpack -l ts -n Tsonga -F -H -o ts_ZA
%langpack -l uk -n Ukrainian -F -H -Y -M -T -O
%langpack -l ve -n Venda -F -H -o ve_ZA
%langpack -l xh -n Xhosa -F -H -o xh_ZA
%define langpack_lang Simplified Chinese
%langpack -l zh-CN -n %{langpack_lang} -f zh-cn -a zh -p zh_CN -s cjk -T -L zh-CN -u zh -o zh_CN
%define langpack_lang Traditional Chinese
%langpack -l zh-TW -n %{langpack_lang} -f zh-tw -a zh -p zh_TW -s cjk -T -L zh-TW -u zh -o zh_TW
%langpack -l zu -n Zulu -F -H -Y -o zu_ZA
%undefine langpack_lang
%endif
%autocorr -l en -n English
%if %{with langpacks}
%autocorr -l af -n Afrikaans
%autocorr -l bg -n Bulgarian
%autocorr -l cs -n Czech
%autocorr -l da -n Danish
%autocorr -l de -n German
%autocorr -l es -n Spanish
%autocorr -l eu -n Basque -L
%autocorr -l fa -n Farsi
%autocorr -l fi -n Finnish
%autocorr -l fr -n French
%autocorr -l ga -n Irish
%autocorr -l hr -n Croatian
%autocorr -l hu -n Hungarian
%autocorr -l it -n Italian
%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 ru -n Russian
%autocorr -l sk -n Slovak
%autocorr -l sl -n Slovenian
#rhbz#452379 clump serbian autocorrections together
%autocorr -l sr -n Serbian -i sh
%autocorr -l sv -n Swedish
%autocorr -l tr -n Turkish
%autocorr -l vi -n Vietnamese
%autocorr -l zh -n Chinese
%endif
%if %{with helplangpacks}
%helplangpack -l en -n English
%if %{with langpacks}
#helplangpack -l ar -n Arabic -S
%helplangpack -l bg -n Bulgarian -S
%helplangpack -l bn -n Bengali -S
#helplangpack -l br -n Breton -S
%helplangpack -l ca -n Catala -S
%helplangpack -l cs -n Czech -S
%helplangpack -l da -n Danish -S
%helplangpack -l de -n German -S
%helplangpack -l dz -n Dzongkha -S
%helplangpack -l el -n Greek -S
%helplangpack -l es -n Spanish -S
%helplangpack -l et -n Estonian -S
%helplangpack -l eu -n Basque -S
%helplangpack -l fi -n Finnish -S
%helplangpack -l fr -n French -S
%helplangpack -l gl -n Galician -S
%helplangpack -l hi -n Hindi -S
%helplangpack -l hu -n Hungarian -S
%helplangpack -l it -n Italian -S
%helplangpack -l ja -n Japanese -S
%helplangpack -l ko -n Korean -S
#helplangpack -l mai -n Maithili -S
%helplangpack -l nb -n Bokmal -S
%helplangpack -l nl -n Dutch -S
%helplangpack -l nn -n Nynorsk -S
%define langpack_lang Southern Ndebele
#helplangpack -l nr -n %{langpack_lang} -S
%define langpack_lang Northern Sotho
#helplangpack -l nso -n %{langpack_lang} -S
#helplangpack -l pa -n Punjabi -s pa-IN
%helplangpack -l pl -n Polish -S
%define langpack_lang Brazilian Portuguese
%helplangpack -l pt_BR -n %{langpack_lang} -s pt-BR
%helplangpack -l pt -n Portuguese -s pt
%helplangpack -l ru -n Russian -S
#helplangpack -l sh -n Secwepemctsin -S
%helplangpack -l si -n Sinhalese -S
%helplangpack -l sk -n Slovak -S
%helplangpack -l sl -n Slovenian -S
#helplangpack -l sr -n Serbian -S
%define langpack_lang Southern Sotho
#helplangpack -l st -n %{langpack_lang} -S
#helplangpack -l ss -n Swati -S
%helplangpack -l sv -n Swedish -S
#helplangpack -l ta -n Tamil -S
#helplangpack -l tn -n Tswana -S
#helplangpack -l th -n Thai -S
%helplangpack -l tr -n Turkish -S
#helplangpack -l ts -n Tsonga -S
%helplangpack -l uk -n Ukrainian -S
#helplangpack -l ve -n Venda -S
#helplangpack -l xh -n Xhosa -S
%define langpack_lang Simplified Chinese
%helplangpack -l zh_CN -n %{langpack_lang} -s zh-CN
%define langpack_lang Traditional Chinese
%helplangpack -l zh_TW -n %{langpack_lang} -s zh-TW
#helplangpack -l zu -n Zulu -S
%endif
%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
%setup -q -n %{name}-%{version}%{?libo_prerelease} -b 1 -b 2
rm -rf git-hooks */git-hooks
#Customize Palette to remove Sun colours and add Red Hat colours
#TODO: have and add mageia colours
(head -n -1 extras/source/palettes/standard.soc && \
echo -e '
' && \
tail -n 1 extras/source/palettes/standard.soc) > mageia.soc
mv -f mageia.soc extras/source/palettes/standard.soc
%patch1 -p1
%patch2 -p1 -b .ooo86080.unopkg.bodge.patch
%patch3 -p1 -b .ooo88341.sc.verticalboxes.patch
%patch4 -p1 -b .oooXXXXX.solenv.allowmissing.patch
%patch5 -p1 -b .ooo101274.opening-a-directory.patch
%patch6 -p1 -b .ooo105784.vcl.sniffscriptforsubs.patch
%patch7 -p1 -b .libreoffice-installfix.patch
%patch8 -p1 -b .disable-failing-check.patch
%patch12 -p1 -b .temporarily-disable-failing-test.patch
%patch100 -p1
# TODO: check this
# these are horribly incomplete--empty translations and copied english
# strings with spattering of translated strings
rm -rf translations/source/{gu,he,hr}/helpcontent2
# disable failing test
# FIXME something to do with python3?
sed -i -e /sw_macros_test/d -e /sw_subsequent_.\*port/d sw/Module_sw.mk
%build
echo build start time is `date`, diskspace: `df -h . | tail -n 1`
# path to external tarballs
EXTSRCDIR=`dirname %{SOURCE0}`
# KDE bits
export QT4DIR=%{qt4dir}
export KDE4DIR=%{_kde_prefix}
export PATH=$QT4DIR/bin:$PATH
#use the RPM_OPT_FLAGS but remove the OOo overridden ones
for i in $RPM_OPT_FLAGS; do
case "$i" in
-pipe|-Wall|-g|-fexceptions) continue;;
esac
ARCH_FLAGS="$ARCH_FLAGS $i"
done
export ARCH_FLAGS
# Do not compile LO with -fomit-frame-pointer flags, or it will crash at start.
export CFLAGS="$(echo $ARCH_FLAGS | sed -e 's/-fomit-frame-pointer//')"
export CXXFLAGS="$(echo $ARCH_FLAGS | sed -e 's/-fomit-frame-pointer//')"
export FFLAGS="$(echo $FFLAGS | sed -e 's/-fomit-frame-pointer//')"
aclocal -I m4
autoconf
# avoid running autogen.sh on make
touch autogen.lastrun
%configure2_5x \
%vendoroption %{?_smp_mflags:--with-parallelism="`getconf _NPROCESSORS_ONLN`"} \
--with-build-version="%{version}-%{release}" --with-unix-wrapper=%{name} \
--disable-epm --disable-mathmldtd \
--disable-gnome-vfs --enable-gio --enable-symbols --enable-lockdown \
--enable-evolution2 --enable-dbus --enable-opengl --enable-vba \
--enable-ext-presenter-minimizer --enable-ext-nlpsolver \
--enable-ext-wiki-publisher --enable-ext-report-builder \
--enable-scripting-beanshell --enable-scripting-javascript \
--enable-kde4 \
--with-system-jars --with-vba-package-format="builtin" \
--with-servlet-api-jar=/usr/share/java/tomcat-servlet-api.jar \
--with-system-libs --with-system-headers --with-system-mozilla \
--without-system-npapi-headers --with-system-mythes --with-system-dicts \
--without-system-saxon --with-external-dict-dir=/usr/share/myspell \
--without-myspell-dicts --without-fonts --without-ppds --without-afms \
%{?with_lang} \
--with-external-tar="$EXTSRCDIR" --with-java-target-version=1.5 \
--disable-gstreamer-0-10 --enable-gstreamer \
--enable-release-build \
--enable-mergelibs --with-idlc-cpp=cpp \
--without-system-hsqldb --disable-fetch-external
if ! make VERBOSE=true; then
# TODO Do we still need this? I think parallel build is reliable
# enough these days...
make GMAKE_OPTIONS=-rj1
fi
#generate the icons and mime type stuff
export DESTDIR=../../../output
export KDEMAINDIR=/usr
export GNOMEDIR=/usr
export GNOME_MIME_THEME=hicolor
# TODO use empty variables? Should make the renaming hacks in %%install
# unnecessary.
. ./bin/get_config_variables PRODUCTVERSIONSHORT PRODUCTVERSION
cd sysui/unxlng*/misc/libreoffice
./create_tree.sh
echo build end time is `date`, diskspace: `df -h . | tail -n 1`
%install
# TODO investigate use of make distro-pack-install
. ./bin/get_config_variables `sed -n -e '/^export/s/^export \([A-Z0-9_]\+\).*/\1/p' config_host.mk`
#figure out the icon version
export `grep "^PRODUCTVERSIONSHORT =" solenv/inc/productversion.mk | sed -e "s/ //g"`
export `grep "PRODUCTVERSION[ ]*=[ ]*" solenv/inc/productversion.mk | sed -e "s/ //g"`
#install
cd instsetoo_native/util
#direct install
mkdir -p $RPM_BUILD_ROOT/%{instdir}
export PKGFORMAT=installed
#don't duplicate english helpcontent about the place
unset DEFAULT_TO_ENGLISH_FOR_PACKING
if dmake openoffice_en-US; then
ok=true
break
else
echo - ---dump log start---
cat ../unx*.pro/LibreOffice/installed/logging/en-US/log_*_en-US.log
echo - ---dump log end---
ok=false
fi
if [ $ok == "false" ]; then
exit 1
fi
mkdir -p $RPM_BUILD_ROOT/%{baseinstdir}
mv ../unxlng*.pro/LibreOffice/installed/install/en-US/* $RPM_BUILD_ROOT/%{baseinstdir}
chmod -R +w $RPM_BUILD_ROOT/%{baseinstdir}
# 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@' $RPM_BUILD_ROOT/%{baseinstdir}/program/bootstraprc
%if %{with langpacks}
dmake ooolanguagepack
rm -rf ../unxlng*.pro/LibreOffice_languagepack/installed/install/log
for langpack in ../unxlng*.pro/LibreOffice_languagepack/installed/install/*; do
cp -rp $langpack/* $RPM_BUILD_ROOT/%{baseinstdir}
rm -rf $langpack
done
%endif
export WITH_LANG="en-US"
dmake sdkoo
mv ../unxlng*.pro/LibreOffice_SDK/installed/install/en-US/sdk $RPM_BUILD_ROOT/%{sdkinstdir}
cd ../../
#configure sdk
pushd $RPM_BUILD_ROOT/%{sdkinstdir}
for file in setsdkenv_unix.csh setsdkenv_unix.sh ; do
sed -e "s,@OO_SDK_NAME@,sdk," \
-e "s,@OO_SDK_HOME@,%{sdkinstdir}," \
-e "s,@OFFICE_HOME@,%{baseinstdir}," \
-e "s,@OO_SDK_URE_HOME@,%{ureinstdir}," \
-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_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," \
$file.in > $file
chmod 755 $file
done
# we don't want to install the input files
rm -f setsdkenv_unix.csh.in setsdkenv_unix.sh.in
#fix permissions
find examples -type f -exec chmod -x {} \;
popd
#ensure a template dir for each lang
pushd $RPM_BUILD_ROOT/%{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 $RPM_BUILD_ROOT/%{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 de-DE de-AT de-BE de-CH de-LI de-LU
%make_autocorr_aliases -l 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-BE fr-CA fr-CH fr-LU fr-MC
%make_autocorr_aliases -l it-IT it-CH
%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[su]*.dat
%endif
popd
#rhbz#484055 make these shared across multiple applications
mkdir -p $RPM_BUILD_ROOT/%{_datadir}
mv -f $RPM_BUILD_ROOT/%{baseinstdir}/share/autocorr $RPM_BUILD_ROOT/%{_datadir}/autocorr
chmod 755 $RPM_BUILD_ROOT/%{_datadir}/autocorr
#remove it in case we didn't build with gcj
rm -f $RPM_BUILD_ROOT/%{baseinstdir}/program/classes/sandbox.jar
#remove dummy .dat files
rm -f $RPM_BUILD_ROOT/%{baseinstdir}/program/root?.dat
#set standard permissions for rpmlint
find $RPM_BUILD_ROOT/%{baseinstdir} -exec chmod +w {} \;
find $RPM_BUILD_ROOT/%{baseinstdir} -type d -exec chmod 0755 {} \;
# move python bits into site-packages
mkdir -p $RPM_BUILD_ROOT/%{python3_sitearch}
pushd $RPM_BUILD_ROOT/%{python3_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 $RPM_BUILD_ROOT/%{baseinstdir}/program/uno.py >> uno.py
rm -f $RPM_BUILD_ROOT/%{baseinstdir}/program/uno.py*
mv -f $RPM_BUILD_ROOT/%{baseinstdir}/program/unohelper.py* .
popd
# rhbz#477435 package opensymbol separately
pushd $RPM_BUILD_ROOT/%{baseinstdir}/share/fonts/truetype
install -d -m 0755 %{buildroot}%{_fontdir}
install -p -m 0644 *.ttf %{buildroot}%{_fontdir}
popd
rm -rf $RPM_BUILD_ROOT/%{baseinstdir}/share/fonts
#ensure that no sneaky un-prelinkable, un-fpic or non executable shared libs
#have snuck through
pic=0
executable=0
for foo in `find $RPM_BUILD_ROOT/%{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
mkdir -p $RPM_BUILD_ROOT/%{_bindir}
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/ooffice
echo exec libreoffice \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/ooffice
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/ooffice
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/ooviewdoc
echo exec libreoffice --view \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/ooviewdoc
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/ooviewdoc
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/oowriter
echo exec libreoffice --writer \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/oowriter
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/oowriter
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/oocalc
echo exec libreoffice --calc \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/oocalc
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/oocalc
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/ooimpress
echo exec libreoffice --impress \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/ooimpress
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/ooimpress
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/oodraw
echo exec libreoffice --draw \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/oodraw
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/oodraw
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/oomath
echo exec libreoffice --math \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/oomath
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/oomath
echo \#\!/bin/sh > $RPM_BUILD_ROOT/%{_bindir}/oobase
echo exec libreoffice --base \"\$@\" >> $RPM_BUILD_ROOT/%{_bindir}/oobase
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/oobase
cp -f %{SOURCE4} $RPM_BUILD_ROOT/%{_bindir}/unopkg
sed -i -e "s/LAUNCHER/unopkg/g" $RPM_BUILD_ROOT/%{_bindir}/unopkg
sed -i -e "s/BRAND/libreoffice/g" $RPM_BUILD_ROOT/%{_bindir}/unopkg
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/unopkg
cp -f %{SOURCE4} $RPM_BUILD_ROOT/%{_bindir}/libreoffice
sed -i -e "s/LAUNCHER/soffice/g" $RPM_BUILD_ROOT/%{_bindir}/libreoffice
sed -i -e "s/BRAND/libreoffice/g" $RPM_BUILD_ROOT/%{_bindir}/libreoffice
chmod a+x $RPM_BUILD_ROOT/%{_bindir}/libreoffice
pushd $RPM_BUILD_ROOT/%{_bindir}
# rhbz#499474 provide a /usr/bin/soffice for .recently-used.xbel
ln -s %{baseinstdir}/program/soffice soffice
# rhbz#499474 provide a /usr/bin/openoffice.org for backwards compat
ln -s libreoffice openoffice.org
popd
pushd $RPM_BUILD_ROOT/%{baseinstdir}/share/xdg/
chmod u+w *.desktop
rm -rf printeradmin.desktop
ICONVERSION=`echo $PRODUCTVERSION | sed -e 's/\.//'`
for file in *.desktop; do
# rhbz#156677 remove the version from Name=
# rhbz#156067 don't version the icons
sed -i -e "s/ *$PRODUCTVERSION//g" \
-e "s/$ICONVERSION//g" \
-e "s/$PRODUCTVERSIONSHORT//g" \
$file
# add X-GIO-NoFuse so we get url:// instead of file://~.gvfs/
echo X-GIO-NoFuse=true >> $file
done
for app in base calc draw impress math writer; do
echo "StartupNotify=true" >> $app.desktop
echo "TryExec=oo$app" >> $app.desktop
done
# rhbz#156677# / rhbz#186515#
echo "NoDisplay=true" >> startcenter.desktop
# rhbz#491159 temporarily remove NoDisplay=true from qstart.desktop
sed -i -e "/NoDisplay=true/d" qstart.desktop
# relocate the .desktop and icon files
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/applications
for app in base calc draw impress javafilter math startcenter writer xsltfilter; do
desktop-file-validate $app.desktop
cp -p $app.desktop $RPM_BUILD_ROOT/%{_datadir}/applications/libreoffice-$app.desktop
done
popd
# desktop files
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--add-mime-type="application/vnd.ms-works;application/x-msworks-wp;zz-application/zz-winassoc-wps" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*writer*desktop
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*calc*desktop
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*draw*desktop
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*impress*desktop
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*math*desktop
%if 0
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*web*desktop
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="Office" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*template*desktop
%endif
desktop-file-install --vendor="" \
--remove-category="X-MandrivaLinux-MoreApplications-Databases" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/libreoffice-base.desktop
%if 0
## MS OOXML (#36465)
desktop-file-install \
--add-mime-type="application/vnd.openxmlformats-officedocument.wordprocessingml.document" \
--add-mime-type="application/vnd.ms-word.document.macroEnabled.12" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/writer*desktop
desktop-file-install \
--add-mime-type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" \
--add-mime-type="application/vnd.ms-excel.sheet.macroEnabled.12" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/calc*desktop
desktop-file-install \
--add-mime-type="application/vnd.openxmlformats-officedocument.presentationml.presentation" \
--add-mime-type="application/vnd.ms-powerpoint.presentation.macroEnabled.12" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/impress*desktop
%endif
for app in base calc draw impress math writer startcenter ; do
sed -i -e "s/Icon=$app/Icon=libreoffice-$app/g" $RPM_BUILD_ROOT%_datadir/applications/%name-${app}.desktop
done
pushd sysui/output/usr/share/
#get rid of the gnome icons and other unneeded files
rm -rf icons/gnome applications application-registry
#relocate the rest of them
for icon in `find icons -type f`; do
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/`dirname $icon`
cp -p $icon $RPM_BUILD_ROOT/%{_datadir}/`echo $icon | sed -e s@office$ICONVERSION@office@ | sed -e s@office$PRODUCTVERSION@office@`
done
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/mime-info
cp -p mime-info/libreoffice$PRODUCTVERSION.keys $RPM_BUILD_ROOT/%{_datadir}/mime-info/libreoffice.keys
cp -p mime-info/libreoffice$PRODUCTVERSION.mime $RPM_BUILD_ROOT/%{_datadir}/mime-info/libreoffice.mime
#add our mime-types, e.g. for .oxt extensions
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/mime/packages
cp -p mime/packages/libreoffice$PRODUCTVERSION.xml $RPM_BUILD_ROOT/%{_datadir}/mime/packages/libreoffice.xml
popd
rm -rf $RPM_BUILD_ROOT/%{baseinstdir}/readmes
rm -rf $RPM_BUILD_ROOT/%{baseinstdir}/licenses
mkdir -p $RPM_BUILD_ROOT/%{baseinstdir}/share/psprint/driver
cp -p psprint_config/configuration/ppds/SGENPRT.PS $RPM_BUILD_ROOT/%{baseinstdir}/share/psprint/driver/SGENPRT.PS
# rhbz#452385 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#" $RPM_BUILD_ROOT/%{baseinstdir}/program/fundamentalrc
# Br translation doesn't have any template so this lead to a crash.
# Better use fr ones for now ( and check if this is still valid for next update )
# FIXME: Re enable when we will add back br translations
#pushd %buildroot%basisinstdir/share/template/
#rm -fr br
#ln -s fr br
#popd
%if 0%{?_enable_debug_packages}
export DESTDIR=$RPM_BUILD_ROOT
install-gdb-printers -a %{_datadir}/gdb/auto-load%{baseinstdir} -c -i %{baseinstdir} -p %{_datadir}/libreoffice/gdb
%endif
%check
exit 0
unset WITH_LANG
# work around flawed accessibility check
export JFW_PLUGIN_DO_NOT_CHECK_ACCESSIBILITY="1"
# TODO is the timeout still needed?
# FIXME find what is the problem
# timeout -k 2m 2h make smoketest.subsequentcheck VERBOSE=t
%files
%files core
%dir %{baseinstdir}
%dir %{baseinstdir}/help
%docdir %{baseinstdir}/help/en
%dir %{baseinstdir}/help/en
%{baseinstdir}/help/en/default.css
%{baseinstdir}/help/en/err.html
%{baseinstdir}/help/en/highcontrast1.css
%{baseinstdir}/help/en/highcontrast2.css
%{baseinstdir}/help/en/highcontrastblack.css
%{baseinstdir}/help/en/highcontrastwhite.css
%{baseinstdir}/help/en/sbasic.*
%{baseinstdir}/help/en/schart.*
%{baseinstdir}/help/en/shared.*
%{baseinstdir}/help/idxcaption.xsl
%{baseinstdir}/help/idxcontent.xsl
%{baseinstdir}/help/main_transform.xsl
%{baseinstdir}/presets
%dir %{baseinstdir}/program
%{baseinstdir}/program/addin
%{baseinstdir}/program/basprov.uno.so
%{baseinstdir}/program/cairocanvas.uno.so
%{baseinstdir}/program/canvasfactory.uno.so
%{baseinstdir}/program/cde-open-url
%dir %{baseinstdir}/program/classes
%{baseinstdir}/program/classes/agenda.jar
%{baseinstdir}/program/classes/commonwizards.jar
%{baseinstdir}/program/classes/form.jar
%{baseinstdir}/program/classes/query.jar
%{baseinstdir}/program/classes/officebean.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/web.jar
%{baseinstdir}/program/classes/XMergeBridge.jar
%{baseinstdir}/program/classes/xmerge.jar
%{baseinstdir}/program/cmdmail.uno.so
%{baseinstdir}/program/libdeployment.so
%{baseinstdir}/program/libdeploymentgui.so
%{baseinstdir}/program/dlgprov.uno.so
%{baseinstdir}/program/expwrap.uno.so
%{baseinstdir}/program/fastsax.uno.so
%{baseinstdir}/program/flat_logo.svg
%{baseinstdir}/program/fpicker.uno.so
%{baseinstdir}/program/fps_office.uno.so
%{baseinstdir}/program/gdbtrace
%{baseinstdir}/program/gengal
%{baseinstdir}/program/gengal.bin
%{baseinstdir}/program/gnome-open-url
%{baseinstdir}/program/gnome-open-url.bin
%{baseinstdir}/program/hatchwindowfactory.uno.so
%{baseinstdir}/program/i18nsearch.uno.so
%{baseinstdir}/program/ldapbe2.uno.so
%{baseinstdir}/program/libacclo.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/libcollator_data.so
%{baseinstdir}/program/libcppcanvaslo.so
%{baseinstdir}/program/libctllo.so
%{baseinstdir}/program/libcuilo.so
%{baseinstdir}/program/libdbalo.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/libeditenglo.so
%{baseinstdir}/program/libembobj.so
%{baseinstdir}/program/libevoab*.so
%{baseinstdir}/program/libevtattlo.so
%{baseinstdir}/program/libegilo.so
%{baseinstdir}/program/libemelo.so
%{baseinstdir}/program/libepblo.so
%{baseinstdir}/program/libepglo.so
%{baseinstdir}/program/libepplo.so
%{baseinstdir}/program/libepslo.so
%{baseinstdir}/program/libeptlo.so
%{baseinstdir}/program/liberalo.so
%{baseinstdir}/program/libetilo.so
%{baseinstdir}/program/libexplo.so
%{baseinstdir}/program/libicdlo.so
%{baseinstdir}/program/libicglo.so
%{baseinstdir}/program/libidxlo.so
%{baseinstdir}/program/libimelo.so
%{baseinstdir}/program/libindex_data.so
%{baseinstdir}/program/libipblo.so
%{baseinstdir}/program/libipdlo.so
%{baseinstdir}/program/libipslo.so
%{baseinstdir}/program/libiptlo.so
%{baseinstdir}/program/libipxlo.so
%{baseinstdir}/program/libiralo.so
%{baseinstdir}/program/libitglo.so
%{baseinstdir}/program/libitilo.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
%{baseinstdir}/program/libjdbclo.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/libmcnttype.so
%{baseinstdir}/program/libmorklo.so
%{baseinstdir}/program/libmozbootstrap.so
%{baseinstdir}/program/libmsfilterlo.so
%{baseinstdir}/program/mtfrenderer.uno.so
%{baseinstdir}/program/libmysqllo.so
%{baseinstdir}/program/libodbclo.so
%{baseinstdir}/program/libodbcbaselo.so
%{baseinstdir}/program/liboffacclo.so
%{baseinstdir}/program/libooxlo.so
%{baseinstdir}/program/libpcrlo.so
%{baseinstdir}/program/libpdffilterlo.so
%{baseinstdir}/program/libpllo.so
%{baseinstdir}/program/libprotocolhandlerlo.so
%{baseinstdir}/program/libqstart_gtklo.so
%{baseinstdir}/program/librecentfile.so
%{baseinstdir}/program/libreslo.so
%{baseinstdir}/program/libsaxlo.so
%{baseinstdir}/program/libscnlo.so
%{baseinstdir}/program/libscriptframe.so
%{baseinstdir}/program/libsdlo.so
%{baseinstdir}/program/libsdfiltlo.so
%{baseinstdir}/program/libsdbc2.so
%{baseinstdir}/program/libsdbtlo.so
%{baseinstdir}/program/libsddlo.so
%{baseinstdir}/program/libsduilo.so
%{baseinstdir}/program/libspalo.so
%{baseinstdir}/program/libspelllo.so
%{baseinstdir}/program/libsrtrs1.so
%{baseinstdir}/program/libsvgiolo.so
%{baseinstdir}/program/libsvxlo.so
%{baseinstdir}/program/libsvxcorelo.so
%{baseinstdir}/program/libswlo.so
%{baseinstdir}/program/libtextconv_dict.so
%{baseinstdir}/program/libtextconversiondlgslo.so
%{baseinstdir}/program/libtextfdlo.so
%{baseinstdir}/program/libtvhlp1.so
%{baseinstdir}/program/libodfflatxmllo.so
%{baseinstdir}/program/libucbhelper4gcc3.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/libvclplug_genlo.so
%{baseinstdir}/program/libvclplug_gtklo.so
%{baseinstdir}/program/libwpftdrawlo.so
%{baseinstdir}/program/libxmlfalo.so
%{baseinstdir}/program/libxmlfdlo.so
%{baseinstdir}/program/libxoflo.so
%{baseinstdir}/program/libxsec_fw.so
%{baseinstdir}/program/libxsec_xmlsec.so
%{baseinstdir}/program/libxsltdlglo.so
%{baseinstdir}/program/libxsltfilterlo.so
%{baseinstdir}/program/libxstor.so
# TODO how useful this is ?
%{baseinstdir}/program/losessioninstall.uno.so
%{baseinstdir}/program/migrationoo2.uno.so
%{baseinstdir}/program/migrationoo3.uno.so
%{baseinstdir}/program/msforms.uno.so
%{baseinstdir}/program/nsplugin
%{baseinstdir}/program/open-url
%{baseinstdir}/program/types/offapi.rdb
%{baseinstdir}/program/passwordcontainer.uno.so
%{baseinstdir}/program/pagein-common
%{baseinstdir}/program/plugin
%{baseinstdir}/program/pluginapp.bin
%dir %{baseinstdir}/program/resource
%{baseinstdir}/program/resource/avmediaen-US.res
%{baseinstdir}/program/resource/accen-US.res
%{baseinstdir}/program/resource/basctlen-US.res
%{baseinstdir}/program/resource/biben-US.res
%{baseinstdir}/program/resource/chartcontrolleren-US.res
%{baseinstdir}/program/resource/cuien-US.res
%{baseinstdir}/program/resource/dbaen-US.res
%{baseinstdir}/program/resource/dbmmen-US.res
%{baseinstdir}/program/resource/dbuen-US.res
%{baseinstdir}/program/resource/dbwen-US.res
%{baseinstdir}/program/resource/deploymenten-US.res
%{baseinstdir}/program/resource/deploymentguien-US.res
%{baseinstdir}/program/resource/dkten-US.res
%{baseinstdir}/program/resource/editengen-US.res
%{baseinstdir}/program/resource/epsen-US.res
%{baseinstdir}/program/resource/euren-US.res
%{baseinstdir}/program/resource/fps_officeen-US.res
%{baseinstdir}/program/resource/frmen-US.res
%{baseinstdir}/program/resource/fween-US.res
%{baseinstdir}/program/resource/galen-US.res
%{baseinstdir}/program/resource/impen-US.res
%{baseinstdir}/program/resource/ofaen-US.res
%{baseinstdir}/program/resource/pcren-US.res
%{baseinstdir}/program/resource/pdffilteren-US.res
%{baseinstdir}/program/resource/sben-US.res
%{baseinstdir}/program/resource/scnen-US.res
%{baseinstdir}/program/resource/sden-US.res
%{baseinstdir}/program/resource/sfxen-US.res
%{baseinstdir}/program/resource/spaen-US.res
%{baseinstdir}/program/resource/sdbten-US.res
%{baseinstdir}/program/resource/svlen-US.res
%{baseinstdir}/program/resource/svten-US.res
%{baseinstdir}/program/resource/svxen-US.res
%{baseinstdir}/program/resource/swen-US.res
%{baseinstdir}/program/resource/textconversiondlgsen-US.res
%{baseinstdir}/program/resource/tken-US.res
%{baseinstdir}/program/resource/tplen-US.res
%{baseinstdir}/program/resource/uuien-US.res
%{baseinstdir}/program/resource/upden-US.res
%{baseinstdir}/program/resource/vclen-US.res
%{baseinstdir}/program/resource/wzien-US.res
%{baseinstdir}/program/resource/xmlsecen-US.res
%{baseinstdir}/program/resource/xsltdlgen-US.res
%{baseinstdir}/program/senddoc
%dir %{baseinstdir}/program/services
%{baseinstdir}/program/services/services.rdb
%{baseinstdir}/program/simplecanvas.uno.so
%{baseinstdir}/program/slideshow.uno.so
%{baseinstdir}/program/libsofficeapp.so
%{baseinstdir}/program/spadmin.bin
%{baseinstdir}/program/stringresource.uno.so
%{baseinstdir}/program/syssh.uno.so
%{baseinstdir}/program/tde-open-url
%{baseinstdir}/program/ucpcmis1.uno.so
%{baseinstdir}/program/ucpexpand1.uno.so
%{baseinstdir}/program/ucpext.uno.so
%{baseinstdir}/program/ucptdoc1.uno.so
%{baseinstdir}/program/unorc
%{baseinstdir}/program/updatefeed.uno.so
# TODO do we need this?
%{baseinstdir}/program/ui-previewer
%{baseinstdir}/ure-link
%{baseinstdir}/program/uri-encode
%{baseinstdir}/program/vbaevents.uno.so
%{baseinstdir}/program/vclcanvas.uno.so
%{baseinstdir}/program/versionrc
%dir %{baseinstdir}/share
%dir %{baseinstdir}/share/Scripts
%{baseinstdir}/share/Scripts/java
%{baseinstdir}/share/autotext
%{baseinstdir}/share/basic
%dir %{baseinstdir}/share/config
%{baseinstdir}/share/config/images.zip
%{baseinstdir}/share/config/images_crystal.zip
%{baseinstdir}/share/config/images_hicontrast.zip
%{baseinstdir}/share/config/images_oxygen.zip
%{baseinstdir}/share/config/images_tango.zip
# TODO what's this? How it differs from images_tango.zip?
#{baseinstdir}/share/config/images_tango_testing.zip
%{baseinstdir}/share/config/psetup.xpm
%{baseinstdir}/share/config/psetupl.xpm
%dir %{baseinstdir}/share/config/soffice.cfg
%{baseinstdir}/share/config/soffice.cfg/modules
# UI translations go into langpacks
%exclude %{baseinstdir}/share/config/soffice.cfg/modules/*/ui/res
%{baseinstdir}/share/config/soffice.cfg/*/ui
# UI translations go into langpacks
%exclude %{baseinstdir}/share/config/soffice.cfg/*/ui/res
%{baseinstdir}/share/config/webcast
%{baseinstdir}/share/config/wizard
%dir %{baseinstdir}/share/dtd
%{baseinstdir}/share/dtd/officedocument
%{baseinstdir}/share/gallery
%dir %{baseinstdir}/share/psprint
%config %{baseinstdir}/share/psprint/psprint.conf
%{baseinstdir}/share/psprint/driver
%dir %{baseinstdir}/share/registry
%{baseinstdir}/share/registry/gnome.xcd
%{baseinstdir}/share/registry/lingucomponent.xcd
%{baseinstdir}/share/registry/main.xcd
%{baseinstdir}/share/registry/oo-ad-ldap.xcd.sample
%{baseinstdir}/share/registry/oo-ldap.xcd.sample
%{baseinstdir}/share/registry/Langpack-en-US.xcd
%dir %{baseinstdir}/share/registry/res
%{baseinstdir}/share/registry/res/fcfg_langpack_en-US.xcd
%dir %{baseinstdir}/share/template
%{baseinstdir}/share/template/en-US
%dir %{baseinstdir}/share/template/common
%{baseinstdir}/share/template/common/internal
%{baseinstdir}/share/template/common/layout
%{baseinstdir}/share/template/common/wizard
%{baseinstdir}/share/template/wizard
%dir %{baseinstdir}/share/wordbook
%{baseinstdir}/share/wordbook/en-GB.dic
%{baseinstdir}/share/wordbook/en-US.dic
%{baseinstdir}/share/wordbook/sl.dic
%{baseinstdir}/share/wordbook/technical.dic
%dir %{baseinstdir}/share/xslt
%{baseinstdir}/share/xslt/common
%dir %{baseinstdir}/share/xslt/export
%{baseinstdir}/share/xslt/export/common
%{baseinstdir}/share/xslt/export/spreadsheetml
%{baseinstdir}/share/xslt/export/wordml
%dir %{baseinstdir}/share/xslt/import
%{baseinstdir}/share/xslt/import/common
%{baseinstdir}/share/xslt/import/spreadsheetml
%{baseinstdir}/share/xslt/import/wordml
%{baseinstdir}/program/liblnthlo.so
%{_bindir}/unopkg
#icons and mime
%{_datadir}/icons/*/*/*/libreoffice*
%{_datadir}/mime-info/libreoffice.*
%{baseinstdir}/program/libxmlsecurity.so
%{_datadir}/mime/packages/libreoffice.xml
%{baseinstdir}/program/configmgr.uno.so
%{baseinstdir}/program/desktopbe1.uno.so
%{baseinstdir}/program/fsstorage.uno.so
%{baseinstdir}/program/gconfbe1.uno.so
%{baseinstdir}/program/i18npool.uno.so
%{baseinstdir}/program/libbasegfxlo.so
%{baseinstdir}/program/libcomphelpgcc3.so
%{baseinstdir}/program/libfileacc.so
%{baseinstdir}/program/libfwelo.so
%{baseinstdir}/program/libfwilo.so
%{baseinstdir}/program/libfwklo.so
%{baseinstdir}/program/libfwllo.so
%{baseinstdir}/program/libfwmlo.so
%{baseinstdir}/program/libi18nisolang*.so
%{baseinstdir}/program/libi18nutilgcc3.so
%{baseinstdir}/program/libpackage2.so
%{baseinstdir}/program/libsblo.so
%{baseinstdir}/program/libsfxlo.so
%{baseinstdir}/program/libsotlo.so
%{baseinstdir}/program/libspllo.so
%{baseinstdir}/program/libspl_unxlo.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/libxmlscriptlo.so
%{baseinstdir}/program/libxolo.so
%{baseinstdir}/program/localebe1.uno.so
%{baseinstdir}/program/ucpgio1.uno.so
%{baseinstdir}/program/types/oovbaapi.rdb
%{baseinstdir}/program/libmergedlo.so
#share unopkg
%dir %{baseinstdir}/share/extensions
%{baseinstdir}/share/extensions/package.txt
%{baseinstdir}/program/unopkg
%{baseinstdir}/program/unopkg.bin
%{baseinstdir}/program/bootstraprc
%{baseinstdir}/program/fundamentalrc
%{baseinstdir}/program/setuprc
%doc %{baseinstdir}/CREDITS.odt
%doc %{baseinstdir}/LICENSE
%doc %{baseinstdir}/LICENSE.html
%doc %{baseinstdir}/LICENSE.odt
%doc %{baseinstdir}/NOTICE
%{baseinstdir}/program/intro.*
%{baseinstdir}/program/soffice
%{baseinstdir}/program/soffice.bin
%{baseinstdir}/program/sofficerc
%{baseinstdir}/program/spadmin
%{baseinstdir}/program/unoinfo
%{baseinstdir}/program/libnpsoplugin.so
%{baseinstdir}/program/oosplash
%{baseinstdir}/program/shell/
%{baseinstdir}/share/config/images_brand.zip
%{baseinstdir}/share/xdg/
%{baseinstdir}/program/redirectrc
%{_datadir}/applications/libreoffice-startcenter.desktop
#launchers
%{_bindir}/libreoffice
%{_bindir}/openoffice.org
%{_bindir}/soffice
%{_bindir}/ooffice
%{_bindir}/ooviewdoc
# (tv) temp fix:
%_libdir/libreoffice/share/registry/korea.xcd
%_libdir/libreoffice/share/registry/librelogo.xcd
# Exclude files that are already in libreoffice-java-common
%exclude %{baseinstdir}/program/classes/agenda.jar
%exclude %{baseinstdir}/program/classes/commonwizards.jar
%exclude %{baseinstdir}/program/classes/form.jar
%exclude %{baseinstdir}/program/classes/query.jar
%exclude %{baseinstdir}/program/classes/officebean.jar
%exclude %{baseinstdir}/program/classes/report.jar
%exclude %{baseinstdir}/program/classes/ScriptFramework.jar
%exclude %{baseinstdir}/program/classes/ScriptProviderForJava.jar
%exclude %{baseinstdir}/program/classes/table.jar
%exclude %{baseinstdir}/program/classes/unoil.jar
%exclude %{baseinstdir}/program/classes/web.jar
%exclude %{baseinstdir}/program/classes/XMergeBridge.jar
%exclude %{baseinstdir}/program/classes/xmerge.jar
%exclude %{baseinstdir}/program/libofficebean.so
%exclude %{baseinstdir}/share/Scripts/java
%files base
%dir %{baseinstdir}
%{baseinstdir}/help/en/sdatabase.*
%dir %{baseinstdir}/program
%dir %{baseinstdir}/program/classes
%{baseinstdir}/program/classes/hsqldb.jar
%{baseinstdir}/program/classes/sdbc_hsqldb.jar
%{baseinstdir}/program/libabplo.so
%{baseinstdir}/program/libdbplo.so
%{baseinstdir}/program/libhsqldb.so
%{baseinstdir}/program/librptlo.so
%{baseinstdir}/program/librptuilo.so
%{baseinstdir}/program/librptxmllo.so
%dir %{baseinstdir}/program/resource
%{baseinstdir}/program/resource/abpen-US.res
%{baseinstdir}/program/resource/cnren-US.res
%{baseinstdir}/program/resource/dbpen-US.res
%{baseinstdir}/program/resource/rpten-US.res
%{baseinstdir}/program/resource/rptuien-US.res
%{baseinstdir}/program/resource/sdbclen-US.res
%{baseinstdir}/program/resource/sdberren-US.res
%{baseinstdir}/share/registry/base.xcd
%{baseinstdir}/program/sbase
%{_datadir}/applications/libreoffice-base.desktop
%{_bindir}/oobase
%files report-builder
%docdir %{baseinstdir}/share/extensions/report-builder/help
%{baseinstdir}/share/extensions/report-builder
%files bsh
%{baseinstdir}/program/classes/ScriptProviderForBeanShell.jar
%{baseinstdir}/program/services/scriptproviderforbeanshell.rdb
%{baseinstdir}/share/Scripts/beanshell
%files rhino
%{baseinstdir}/program/classes/js.jar
%{baseinstdir}/program/classes/ScriptProviderForJavaScript.jar
%{baseinstdir}/program/services/scriptproviderforjavascript.rdb
%{baseinstdir}/share/Scripts/javascript
%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 ogltrans
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/OGLTrans.uno.so
%dir %{baseinstdir}/share/config/soffice.cfg/simpress
%{baseinstdir}/share/config/soffice.cfg/simpress/transitions-ogl.xml
%{baseinstdir}/share/registry/ogltrans.xcd
%files presentation-minimizer
%docdir %{baseinstdir}/share/extensions/presentation-minimizer/help
%{baseinstdir}/share/extensions/presentation-minimizer
%files pdfimport
%{baseinstdir}/program/pdfimport.uno.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 solver/unxlng*/bin/ure/LICENSE
%files calc
%dir %{baseinstdir}
%{baseinstdir}/help/en/scalc.*
%dir %{baseinstdir}/program
%{baseinstdir}/program/libanalysislo.so
%{baseinstdir}/program/libcalclo.so
%{baseinstdir}/program/libdatelo.so
%{baseinstdir}/program/libforlo.so
%{baseinstdir}/program/libforuilo.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
%dir %{baseinstdir}/program/resource
%{baseinstdir}/program/resource/analysisen-US.res
%{baseinstdir}/program/resource/dateen-US.res
%{baseinstdir}/program/resource/foren-US.res
%{baseinstdir}/program/resource/foruien-US.res
%{baseinstdir}/program/resource/pricingen-US.res
%{baseinstdir}/program/resource/scen-US.res
%{baseinstdir}/program/resource/solveren-US.res
%{baseinstdir}/program/vbaobj.uno.so
%{baseinstdir}/share/registry/calc.xcd
%{baseinstdir}/program/pagein-calc
%{baseinstdir}/program/scalc
%{_datadir}/applications/libreoffice-calc.desktop
%{_bindir}/oocalc
%files draw
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/help/en/sdraw.*
%{baseinstdir}/share/registry/draw.xcd
%{baseinstdir}/program/pagein-draw
%{baseinstdir}/program/sdraw
%{_datadir}/applications/libreoffice-draw.desktop
%{_bindir}/oodraw
%files emailmerge
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/mailmerge.py*
%{baseinstdir}/program/msgbox.py*
%{baseinstdir}/program/officehelper.py*
%files writer
%dir %{baseinstdir}
%{baseinstdir}/help/en/swriter.*
%dir %{baseinstdir}/program
%{baseinstdir}/program/libhwplo.so
%{baseinstdir}/program/liblwpftlo.so
%{baseinstdir}/program/libmswordlo.so
%{baseinstdir}/program/libswdlo.so
%{baseinstdir}/program/libswuilo.so
%{baseinstdir}/program/libt602filterlo.so
%{baseinstdir}/program/libwpftwriterlo.so
%{baseinstdir}/program/libwriterfilterlo.so
%{baseinstdir}/program/vbaswobj.uno.so
%dir %{baseinstdir}/program/resource
%{baseinstdir}/program/resource/t602filteren-US.res
%{baseinstdir}/share/registry/writer.xcd
%{baseinstdir}/program/pagein-writer
%{baseinstdir}/program/swriter
%{_datadir}/applications/libreoffice-writer.desktop
%{_bindir}/oowriter
%files impress
%dir %{baseinstdir}
%{baseinstdir}/help/en/simpress.*
%dir %{baseinstdir}/program
%{baseinstdir}/program/libanimcorelo.so
%{baseinstdir}/program/libplacewarelo.so
%{baseinstdir}/program/PresenterScreen.uno.so
%dir %{baseinstdir}/share/config/soffice.cfg/simpress
%{baseinstdir}/share/config/soffice.cfg/simpress/effects.xml
%{baseinstdir}/share/config/soffice.cfg/simpress/transitions.xml
%{baseinstdir}/share/registry/impress.xcd
%{baseinstdir}/program/pagein-impress
%{baseinstdir}/program/simpress
%{_datadir}/applications/libreoffice-impress.desktop
%{_bindir}/ooimpress
%files math
%dir %{baseinstdir}
%{baseinstdir}/help/en/smath.*
%dir %{baseinstdir}/program
%{baseinstdir}/program/libsmlo.so
%{baseinstdir}/program/libsmdlo.so
%dir %{baseinstdir}/program/resource
%{baseinstdir}/program/resource/smen-US.res
%{baseinstdir}/share/registry/math.xcd
%{baseinstdir}/program/smath
%{_datadir}/applications/libreoffice-math.desktop
%{_bindir}/oomath
%files graphicfilter
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/libflashlo.so
%{baseinstdir}/program/libsvgfilterlo.so
%{baseinstdir}/share/registry/graphicfilter.xcd
%files xsltfilter
%dir %{baseinstdir}
%dir %{baseinstdir}/share/xslt
%{baseinstdir}/share/xslt/docbook
%dir %{baseinstdir}/share/xslt/export
%{baseinstdir}/share/xslt/export/uof
%{baseinstdir}/share/xslt/export/xhtml
%dir %{baseinstdir}/share/xslt/import
%{baseinstdir}/share/xslt/import/uof
%{baseinstdir}/share/registry/xsltfilter.xcd
%{_datadir}/applications/libreoffice-xsltfilter.desktop
%files javafilter
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%dir %{baseinstdir}/program/classes
%{baseinstdir}/program/classes/aportisdoc.jar
%{baseinstdir}/program/classes/pexcel.jar
%{baseinstdir}/program/classes/pocketword.jar
%{_datadir}/applications/libreoffice-javafilter.desktop
%{baseinstdir}/share/registry/palm.xcd
%{baseinstdir}/share/registry/pocketexcel.xcd
%{baseinstdir}/share/registry/pocketword.xcd
%files postgresql
%{baseinstdir}/program/postgresql-sdbc.uno.so
%{baseinstdir}/program/postgresql-sdbc-impl.uno.so
%{baseinstdir}/program/postgresql-sdbc.ini
%{baseinstdir}/program/services/postgresql-sdbc.rdb
%{baseinstdir}/share/registry/postgresqlsdbc.xcd
%files ure
%doc solver/unxlng*/bin/ure/LICENSE
%dir %{baseinstdir}
%{ureinstdir}
%files sdk
%{sdkinstdir}/
%exclude %{sdkinstdir}/docs/
%exclude %{sdkinstdir}/examples/
%files sdk-doc
%docdir %{sdkinstdir}/docs
%{sdkinstdir}/docs/
%{sdkinstdir}/examples/
%files headless
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/libbasebmplo.so
%{baseinstdir}/program/libvclplug_svplo.so
%files pyuno
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/libpyuno.so
%{baseinstdir}/program/pythonloader.py*
%{baseinstdir}/program/pythonloader.uno.so
%{baseinstdir}/program/pythonloader.unorc
%{baseinstdir}/program/pythonscript.py*
%{baseinstdir}/program/pyuno.so
%{baseinstdir}/program/services/scriptproviderforpython.rdb
%{baseinstdir}/program/wizards
%dir %{baseinstdir}/share/Scripts
%{baseinstdir}/share/Scripts/python
%{python3_sitearch}/uno.py*
%{python3_sitearch}/unohelper.py*
#{python3_sitearch}/__pycache__/uno.cpython-*
#{python3_sitearch}/__pycache__/unohelper.cpython-*
%{baseinstdir}/share/registry/pyuno.xcd
%files kde
%dir %{baseinstdir}
%dir %{baseinstdir}/program
%{baseinstdir}/program/kde-open-url
%{baseinstdir}/program/kde4be1.uno.so
%{baseinstdir}/program/libvclplug_kde4lo.so
%files java-common
%dir %{baseinstdir}/program/classes
%{baseinstdir}/program/classes/agenda.jar
%{baseinstdir}/program/classes/commonwizards.jar
%{baseinstdir}/program/classes/form.jar
%{baseinstdir}/program/classes/query.jar
%{baseinstdir}/program/classes/officebean.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/web.jar
%{baseinstdir}/program/classes/XMergeBridge.jar
%{baseinstdir}/program/classes/xmerge.jar
%{baseinstdir}/program/libofficebean.so
%{baseinstdir}/share/Scripts/java