File libreoffice-libs-extern.spec of Package libreoffice-libs-extern

#
# spec file for package libreoffice-libs-extern
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           libreoffice-libs-extern
# allow to use xulrunner191 on SLED11-SP1 (bnc#540726)
%define		use_xulrunner191	no
Version:        3.3.1.2
Release:        1.<RELEASE2>
%define         piece             libs-extern
%define         ooo_build_version 3.3.1.2
%define         ooo_piece_version 3.3.1.2
%define         ooo_sourcedirname libreoffice-build-%ooo_piece_version
%define         ooo_prefix        %_libdir
%define         ooo_home          libreoffice
#!BuildIgnore:  libreoffice
# urg, ure dep is now required for cppunit ...
BuildRequires:  ImageMagick ant ant-apache-regexp bison boost-devel ccache cups-devel curl-devel flac-devel flex gcc-c++ gnome-vfs2-devel gperf gtk2-devel icu java-devel libxml2-devel mono-devel neon-devel pam-devel perl-Archive-Zip perl-Compress-Zlib python-devel recode unixODBC-devel unzip xml-commons-apis zip
%if 0%{?suse_version}
BuildRequires:  db-devel krb5 libexif openldap2-devel xorg-x11
%endif
%if 0%{?meego_version}
BuildRequires:  db4-devel krb5-devel libexif-devel openldap-devel
BuildRequires:  xorg-x11-server-devel
BuildRequires:  xorg-x11-proto-xproto
BuildRequires:  xorg-x11-utils
%endif
BuildRequires:  libreoffice-bootstrap = %version
BuildRequires:  libreoffice-ure-devel = %version
############################
# KDE3 stuff
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
BuildRequires:  kdelibs3-devel
%endif
############################
# mysql stuff
%if 0%{?suse_version} && 0%{?suse_version} <= 01210
# mysqlcppconn >= 1.0.6 is needed
BuildRequires:  libmysqlclient-devel
%endif
############################
# mozilla stuff
%if 0%{?suse_version} > 01130 
BuildRequires:  mozilla-xulrunner192-devel
%endif
%if 0%{?suse_version} <= 01130
%if 0%{?suse_version} > 01110 || %use_xulrunner191 == yes
BuildRequires:  mozilla-xulrunner191-devel
%endif 
%endif
%if 0%{?suse_version} > 01100 && 0%{?suse_version} <= 01110 && %use_xulrunner191 != yes
BuildRequires:  mozilla-xulrunner190-devel
%endif 
%if 0%{?suse_version} > 01010 && 0%{?suse_version} <= 01100
BuildRequires:  mozilla-xulrunner181-devel
%endif
%if 0%{?suse_version} > 01000 && 0%{?suse_version} <= 01010
BuildRequires:  gecko-sdk mozilla-xulrunner
%endif
%if 0%{?meego_version}
BuildRequires:  xulrunner-devel
%endif
############################
# openSUSE 11.0 features
%if 0%{?suse_version} > 01030 || 0%{?meego_version}
BuildRequires:  hunspell-devel
%endif
License:        Artistic ; BSD3c ; GPLv2+ ; LPPL .. ; LGPLv2.1+ ; LGPLv3 ; MPL .. ; MIT
Group:          Productivity/Office/Suite
AutoReqProv:    on
# compat stuff
Provides:       OpenOffice_org-libs-extern = %version
Obsoletes:      OpenOffice_org-libs-extern <= %version
Summary:        LibreOffice External Libraries
Url:            http://www.documentfoundation.org/
Source:         libreoffice-%piece-%ooo_piece_version.tar.bz2
Source1:        libreoffice-%piece-sys-%ooo_piece_version.tar.bz2
%if 0%{?suse_version} == 01010
# prebuilt jsr allows to build LO with Java 1.4
Source60:       jsr173_1.0_api.jar
%endif
Source90:       mysql-connector-cpp.zip
# Multi-Dimensional Data Structure
Source91:       mdds_0.3.0.tar.bz2
# FIXME: hack the provides and requires (bnc#411538)
# make sure external scripts are used
%define _use_internal_dependency_generator 0
%define __find_provides /bin/sh %_sourcedir/lo-libs-extern-prov %name
%define __find_requires /bin/sh %_sourcedir/lo-libs-extern-req %name
Source100:      lo-libs-extern-prov
Source101:      lo-libs-extern-req
# external source tarballs
Source1000:     ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip
Source1001:     a4d9b30810a434a3ed39fc0003bbd637-LICENSE_stax-api-1.0-2-sources.html
Source1002:     a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip
Source1003:     bd30e9cf5523cdfc019b94f5e1d7fd19-cppunit-1.12.1.tar.gz
Source1004:     ca66e26082cab8bb817185a116db809b-redland-1.0.8.tar.gz
Source1005:     cf8a6967f7de535ae257fa411c98eb88-mdds_0.3.0.tar.bz2
Source1006:     d0b5af6e408b8d2958f3d83b5244f5e8-hyphen-2.4.tar.gz
Source1007:     d35724900f6a4105550293686688bbb3-silgraphite-2.3.1.tar.gz
Source1008:     ea570af93c284aa9e5621cd563f54f4d-bsh-2.0b1-src.tar.gz
Source1009:     ea91f2fb4212a21d708aced277e6e85a-vigra1.4.0.tar.gz
Source1010:     fb7ba5c2182be4e73748859967455455-README_stax-api-1.0-2-sources.txt
Source1011:     fca8706f2c4619e2fa3f8f42f8fc1e9d-rasqal-0.9.16.tar.gz
Source1012:     fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz
Source1013:     1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
Source1014:     128cfc86ed5953e57fe0f5ae98b62c2e-libtextcat-2.2.tar.gz
Source1015:     17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
Source1016:     1756c4fa6c616ae15973c104cd8cb256-Adobe-Core35_AFMs-314.tar.gz
Source1017:     24be19595acad0a2cae931af77a0148a-LICENSE_source-9.0.0.7-bj.html
Source1018:     26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz
Source1019:     284e768eeda0e2898b0d5bf7e26a016e-raptor-1.4.18.tar.gz
Source1020:     3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz
Source1021:     377a60170e5185eb63d3ed2fae98e621-README_silgraphite-2.3.1.txt
Source1022:     48d8169acc35f97e05d8dcdfd45be7f2-lucene-2.3.2.tar.gz
Source1023:     48470d662650c3c074e1c3fabbc67bbd-README_source-9.0.0.7-bj.txt
Source1024:     798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip
Source1025:     8294d6c42e3553229af9934c5c0ed997-stax-api-1.0-2-sources.jar
Source1026:     831126a1ee5af269923cfab6050769fe-mysql-connector-cpp.zip
Source1027:     35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
Source1028:     067201ea8b126597670b5eff72e1f66c-mythes-1.2.0.tar.gz
Source1029:     0f63ee487fda8f21fafa767b3c447ac9-ixion-0.2.0.tar.gz
Source1030:     5ba6a61a2f66dfd5fee8cdd4cd262a37-libwpg-0.2.0.tar.bz2
Source1031:     9e436bff44c60dc8b97cba0c7fc11a5c-libwps-0.2.0.tar.bz2
Source1032:     5ff846847dab351604ad859e2fd4ed3c-libwpd-0.9.1.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
ExclusiveArch:  %ix86 x86_64 ppc

%description
This packages provides the LibreOffice libraries that are built from
3rd party sources. They are used by all LibreOffice modules.



%package devel
Requires:       %name = %version
Requires:       libreoffice-bootstrap = %version
Requires:       libreoffice-ure-devel = %version
# compat stuff
Provides:       OpenOffice_org-libs-extern-devel = %version
Obsoletes:      OpenOffice_org-libs-extern-devel <= %version
License:        Artistic ; BSD3c ; GPLv2+ ; LPPL .. ; LGPLv2.1+ ; LGPLv3 ; MPL .. ; MIT
Summary:        LibreOffice External Libraries Development
Group:          Productivity/Office/Suite
AutoReqProv:    off

%description devel
This package allows developement based on the LibreOffice external
libraries API.



%package l10n-prebuilt
License:        Artistic ; BSD3c ; GPLv2+ ; LPPL .. ; LGPLv2.1+ ; LGPLv3 ; MPL .. ; MIT
Summary:        Prebuilt LibreOffice External Libraries Localizations
Group:          Productivity/Office/Suite
AutoReqProv:    off
# compat stuff
Provides:       OpenOffice_org-libs-extern-l10n-prebuilt = %version
Obsoletes:      OpenOffice_org-libs-extern-l10n-prebuilt <= %version

%description l10n-prebuilt
This package includes the prebuilt localization of LibreOffice
external libraries. It is not intended for a real use. It needs to be
repacked to the real architecture independent package.

This is only a temporary solution until we have an easier way to build
the LibreOffice localizations separately.



%prep
%setup -q -b1 -n libreoffice-%piece-%ooo_piece_version
ooo_libs_extern_sys=../libreoffice-%piece-sys-%ooo_piece_version
# external source tarbals
mkdir -p ooo-build/src
install -m 644 %{S:1000} %{S:1001} %{S:1002} %{S:1003} %{S:1004} \
               %{S:1005} %{S:1006} %{S:1007} %{S:1008} %{S:1009} \
               %{S:1010} %{S:1011} %{S:1012} %{S:1013} %{S:1014} \
               %{S:1015} %{S:1016} %{S:1017} %{S:1018} %{S:1019} \
               %{S:1020} %{S:1021} %{S:1022} %{S:1023} %{S:1024} \
               %{S:1025} %{S:1026} %{S:1027} %{S:1028} %{S:1029} \
               %{S:1030} %{S:1031} %{S:1032} \
	       ooo-build/src
# we do not want to build some stuff on linux
mkdir -p ooo-build/ooo/do-not-build
mv cppunit ooo-build/ooo/do-not-build
# on the other hand, we need to build some external-sys stuff
mv $ooo_libs_extern_sys/stax .
mv $ooo_libs_extern_sys/saxon .
mv $ooo_libs_extern_sys/graphite .
# hacks needed until 11.0
%if 0%{?suse_version} && 0%{?suse_version} <= 01100
mv $ooo_libs_extern_sys/boost .
mv $ooo_libs_extern_sys/icu .
%endif
# hacks needed until 10.3
%if 0%{?suse_version} && 0%{?suse_version} <= 01030
mv $ooo_libs_extern_sys/hunspell .
%endif
# hacks needed for SLED10
%if 0%{?suse_version} == 01010
cp %{S:60} external/StAX
%endif
# mysql stuff
%if 0%{?suse_version} > 01210 || 0%{?meego_version}
    # we do not want to build mysqlcppconn on some distros
    mv mysqlcppconn ooo-build/ooo/do-not-build
%else
    cp %{S:90} mysqlcppconn/download
%endif
# Multi-Dimensional Data Structure
mkdir -p mdds/download
cp %{S:91} mdds/download
# patch and build ixion library
mkdir -p ixion

%build
# setup env.
export OO_INSTDIR=%{_libdir}/%ooo_home
export OO_TOOLSDIR=$OO_INSTDIR/build/bin
export VERBOSE=1
export PIECE_BUILD_NCPUS_AUTO=1
export PIECE_USE_JOBS="%{?jobs:%jobs}"
# FIXME: hack to avoid random build crash
$OO_TOOLSDIR/piece/build-generic %piece %ooo_sourcedirname || $OO_TOOLSDIR/piece/build-generic %piece %ooo_sourcedirname || $OO_TOOLSDIR/piece/build-generic %piece %ooo_sourcedirname

%install
# setup env.
export OO_INSTDIR=%{_libdir}/%ooo_home
export OO_TOOLSDIR=$OO_INSTDIR/build/bin
export DESTDIR=$RPM_BUILD_ROOT
$OO_TOOLSDIR/piece/install-generic %piece %ooo_sourcedirname

%clean
rm -rf $RPM_BUILD_ROOT

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%post devel
/sbin/ldconfig

%postun devel
/sbin/ldconfig

%files -f files-%piece.txt
%defattr(-,root,root)

%files devel
%defattr(-,root,root)
%dir %ooo_prefix/%ooo_home/solver
%ooo_prefix/%ooo_home/solver/*
%exclude %ooo_prefix/%ooo_home/solver/noarch

%files l10n-prebuilt
%defattr(-,root,root)
%ooo_prefix/%ooo_home/solver/noarch

%changelog
openSUSE Build Service is sponsored by