File OpenOffice_org-bootstrap.spec of Package OpenOffice_org-bootstrap

#
# spec file for package OpenOffice_org-bootstrap (Version 3.0.0.9)
#
# Copyright (c) 2008 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:           OpenOffice_org-bootstrap
BuildRequires:  ImageMagick ant ant-apache-regexp bison boost-devel ccache cups-devel curl-devel db-devel flac-devel flex gnome-vfs2-devel gperf gtk2-devel icu java-devel kdelibs3-devel krb5 libexif mono-devel neon-devel openldap2-devel pam-devel perl-Archive-Zip perl-Compress-Zlib postgresql-devel python-devel python-xml recode unixODBC-devel unzip xml-commons-apis xorg-x11 zip
# mozilla stuff
%if %suse_version > 1100
BuildRequires:  mozilla-xulrunner190-devel
%endif 
%if %suse_version > 1010 && %suse_version <= 1100
BuildRequires:  mozilla-xulrunner181-devel
%endif
%if %suse_version > 1000 && %suse_version <= 1010
BuildRequires:  gecko-sdk mozilla-xulrunner
%endif
%if %suse_version > 1100
# libexpat-devel is explicitely needed since openSUSE-11.1
BuildRequires:  libexpat-devel
# lpsolve-devel has been available since openSUSE-11.1
BuildRequires:  lpsolve-devel
%endif
# poppler is needed to build the PDF import extension
# the needed version 0.8.0 has been avaiable only since openSUSE-11.0
%if %suse_version >= 1100
BuildRequires:  libpoppler-devel
%endif
# 10.3 features
%if %suse_version > 1020
BuildRequires:  libicu-devel
%endif
# 11.0 features
%if %suse_version > 1030
BuildRequires:  hunspell-devel libwpd-devel libwpg-devel libwps-devel
%endif
# CODE10 features
%if %suse_version > 1000
BuildRequires:  gstreamer010-plugins-base-devel sablot-devel xalan-j2 xerces-j2 xml-commons-apis
%endif
# FIXME: part of the language-dependant stuff is still built here and
# put into the -devel package
# test_build_langs:   	   0 = only en-US
#			   1 = en-US, de, and cs
#			   2 = all supported languages 
%define		test_build_langs 	2
# test_build_binfilters:   0 = no
#			   1 = yes
%define		test_build_binfilters 	1
# test_build_SDK:  	   0 = no
#			   1 = yes (if possible, see below the definition of ooo_build_sdk)
%define		test_build_sdk 		1
# build_module_in_parallel 0 = no
#			   1 = yes (the number is defined be the number of cpus)
#			   2,3,4... = yes (force the number of modules to be built in parallel)
%define		build_module_in_parallel	1
# prepare_build:	   0 = no
#			   1 = yes (just build, install and create packages; without %%prep section and configure)
%define		prepare_build 		1
#
%if %test_build_langs == 0
%define       ooo_langs		"en-US"
%else
%if %test_build_langs == 1
%define       ooo_langs		"en-US cs de hu ja"
%else
%define       ooo_langs		"en-US af ar be-BY bg br ca cs cy da de el en-GB en-ZA es et fi fr ga gl gu-IN he hi-IN hu hr it ja ka km ko lt mk nb nl nn nr pa-IN pl pt pt-BR ru rw sh sk sl sr ss st sv tg th tr ts uk ve vi xh zh-TW zh-CN zu"
%endif
%endif
%define       ooo_poor_help_localizations "af bg be-BY br ca cy el fi ga he hr ka lt mk nb nn nr rw sh sr sk ss st tg th tr th ts uk ve vi xh zu"
# sdk stuff enable only on SL 10.2, SLED10 and higher
# force no if test_build_sdk is disabled
%if %test_build_sdk == 0
%define		ooo_build_sdk 		no
%else
%if %suse_version > 1010 || %sles_version == 10
%define		ooo_build_sdk 		yes
%else
%define		ooo_build_sdk 		no
%endif
%endif
# java stuff
%define	      with_java		yes
%define	      use_gij		no
# java target bytecode; should be compatible with the gcj
%if %suse_version > 1030
%define       java_target_version	1.5
%else
%define       java_target_version	1.4
%endif
# we would like to support also a non-conflicting OOo2 package
%define	      ooo_bin_suffix	no
# 
%define	      ooo_prefix	%_libdir
%define	      ooo_home		ooo3
%define	      ooo_base_dir	basis3.0
%define	      ooo_build_dir	build
%define	      ooo_build_version 3.0.0.9
%define	      ooo_build_tag     ooo300-m9
License:        Artistic License; BSD 3-Clause; GPL v2 or later; LaTeX Public License (LPPL); LGPL v2.1 or later; LGPL v3 only; MOZILLA PUBLIC LICENSE (MPL/NPL); X11/MIT
Group:          Productivity/Office/Suite
Version:        3.0.0.9
Release:        4
AutoReqProv:    on
Summary:        OpenOffice.org Build Bootstrap
Url:            http://www.openoffice.org/
#Url-help:    ftp://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/helpcontent/
Source0:        ooo-build-%ooo_build_version.tar.gz
Source1:        %ooo_build_tag-bootstrap.tar.bz2
Source2:        ooo-sdf-bootstrap.tar.bz2
Source3:        setup_native_packinfo-ooo300-m4.tar.bz2
# necessary for SDK, http://udk.openoffice.org/common/man/spec/transparentofficecomponents.html
# FIXME: can be built using mingw32 C++ compiler
Source4:        unowinreg.dll
# Hmm, rpmlint complains about devel files in non-devel package
# We would like to keep the -bootstrap package name
# So we need to disable these rpmlint checks
Source100:      %name-rpmlintrc
#
# patches against ooo-build
# Patch0:       ooo-build-2.4-enable-foo.diff	# example
Patch0:         ooo-build-help-in-usr-share.diff
Patch1:         ooo-build-3.0.0.4a-extensions-hack.diff
Patch2:         ooo-build-3.0.0.9-prune-duplicities.diff
Patch3:         ooo-build-3.0.0.9-external.diff
Patch4:         ooo-build-3.0.0.9-pyuno-python-2.6-uno-import.diff
Patch5:         ooo-build-3.0.0.9-buildfix-openjdk-6-no-rhino.diff
#
# patches against the upstream sources, must be -p0
# Patch1000:    bug-123456-fix-foo.diff		# example
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
This packages provides the basic tools and framework for building
OpenOffice.org using separate source packages.



%prep
%if %prepare_build == 0
%setup -D -T -q -n ooo-build-%ooo_build_version
%else
%setup -q -n ooo-build-%ooo_build_version
#
# apply patches against ooo-build
# %patch0	# example
#
install -m 644 %{S:1} %{S:2} %{S:3} %{S:4} src/
# apply patches against ooo-build
# %patch0	# example
%patch0
%patch1
%patch2
%patch3
%patch4
%patch5
%endif
chmod 755 bin/piece/file-list-libs_extern

%build
%if %prepare_build != 0
#
# Parallel build settings ...
PARALLEL_BUILD=
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
  PARALLEL_BUILD="--with-gcc-speedup=icecream
                  --with-max-jobs=%jobs"
fi
# parallel build of modules; it makes sense on machines with more CPUs
if test "%build_module_in_parallel" = "1" ; then
    PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
    PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
#
# Distro settings ...
%if %suse_version <= 1030
    suse_major_ver=$((%suse_version / 100))
    suse_minor_ver=$((%suse_version / 10 - $suse_major_ver * 10))
    with_distro="SUSE-$suse_major_ver.$suse_minor_ver"
%else
%if %suse_version > 1030 && %suse_version <= 1100
    with_distro="SUSE-11.0"
%else
    with_distro="SUSE"
%endif
%endif
#
# run autoreconf to make sure that everything works correctly on current system
# also the autoconf stuff might have been patched
autoreconf -fi
%endif
# make sure that JAVA_HOME is set correctly
source /etc/profile.d/alljava.sh
# use RPM_OPT_FLAGS, ...
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS|sed -e 's/\-O[0-9]//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
export PATH="$PATH:/usr/sbin"
# FIXME: Sun Java is borken on 10.2-x86_64, see https://bugzilla.novell.com/show_bug.cgi?id=219982
#        javac from java-1_4_2-gcj-compat-devel uses ecj that is not able to compile OOo
#        gij requires JAVA_HOME=/usr
#        ant requires tools.jar from /usr/lib64/jvm/java/lib
%ifarch x86_64
%if %suse_version == 1020
export CLASSPATH=$JAVA_HOME/lib/tools.jar
%endif
%endif
%if %prepare_build != 0
./configure $PARALLEL_BUILD \
	--with-arch-flags="$ARCH_FLAGS" \
	--with-split \
	--with-piece=bootstrap \
	--libdir=%{_libdir} \
	--prefix=%{_prefix} \
	--mandir=%{_mandir} \
	--sysconfdir=/etc \
	--with-docdir=%{_docdir}/%{name} \
	--with-binsuffix=%ooo_bin_suffix \
	--with-installed-ooo-dirname=%ooo_home \
	--with-distro="$with_distro" \
%if %suse_version <= 1030
	--with-intro-bitmaps="%{S:140} %{S:142}" \
	--with-about-bitmaps="%{S:141} %{S:143}" \
%endif
	--with-tag=%ooo_build_tag \
	--with-lang=%ooo_langs \
	--with-poor-help-localizations=%ooo_poor_help_localizations \
	--with-mono-gac-root=%{_prefix}/lib \
%if %test_build_binfilters != 0
	--enable-binfilter \
%endif
%if %with_java == no
	--with-java=no \
	--with-jdk-home="" \
%else
%if %use_gij == yes
	--with-java=gij \
	--with-jdk-home=/usr \
%else
	--with-java=java \
	--with-jdk-home=$JAVA_HOME \
	--with-java-target-version=%java_target_version \
%endif
%endif
%if %ooo_build_sdk == yes
	--enable-odk \
%endif
%if %suse_version < 920 && %sles_version <= 8
	--disable-openldap \
	--disable-gnome-vfs \
	--disable-gtk \
%endif
%if %suse_version <= 1020
	--disable-mono \
%endif
	--disable-access \
	--disable-post-install-scripts \
	--disable-strip \
	--disable-strip-solver \
	--enable-openxml \
	--disable-report-builder \
	--disable-pdfimport \
	--disable-presenter-console \
	--enable-build-noarch \
	--enable-minimizer --enable-presenter-console --enable-pdfimport \
	--enable-wiki-publisher --enable-ogltrans --enable-report-builder \
	--enable-split-app-modules \
	--enable-split-opt-features
%endif
# FIXME: try to finish build even with the strange random build crash in officecfg
make || make || make || make

%install
%ifarch x86_64 ppc
%if %suse_version <= 1020
# FIXME: move this to ooo-build
export JAVA_HOME=/usr
%endif
%endif
#
make DESTDIR=$RPM_BUILD_ROOT install

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%dir %ooo_prefix/%ooo_home
%dir %ooo_prefix/%ooo_home/solver
%dir %ooo_prefix/%ooo_home/solenv
%dir %ooo_prefix/%ooo_home/ooo-build
%ooo_prefix/%ooo_home/solver/*
%ooo_prefix/%ooo_home/solenv/*
%ooo_prefix/%ooo_home/ooo-build/*

%changelog
* Wed Dec 03 2008 pmladek@suse.cz
- added java independent fix of the rhino-related problems to fix build
  on openSUSE-11.1-ppc (bnc#449711)
* Thu Nov 27 2008 pmladek@suse.cz
- removed duplicated basis3.0/ure-link and solver/bin/userland.txt to avoid
  conflicts between OOo packages
- enabled mono on PPC; fixed build (bnc#449047, bnc#449711)
- fixed uno_import function for python-2.6; fixed mail merge (bnc#448776)
* Mon Nov 24 2008 pmladek@suse.cz
- fixed ooo-build-3.0.0.9-buildfix-openjdk-6-no-rhino.diff to apply on ppc
* Fri Nov 21 2008 pmladek@suse.cz
- updated ooo-build to version 3.0.0.9:
  * disabled some experimental layout stuff by default (bnc#442036)
  * non-numeric letter sequence detection (bnc#439441)
  * mark document as modified when password changed
  * COUNTA and string literal (bnc#446622)
  * pivot cache field import (bnc#433658)
  * user path in scripting framework
  * blinking text in slideshow
  * EMF import crashes
  * broken find & replace dialog (bnc#439222)
  * compilation of the mono sample (bnc#444353)
  * adds version info to cli_uno_bridge.dll assembly (bnc#361463)
  * saving files on Novell teaming via WebDAV (bnc#440514)
  * using GIO in non-GNOME WM (i#96170, n#442678)
  * can't import userforms from Word (bnc#447015)
  * avoid symlinks in the user configuration
  * bin version from the man page
  * symlinks in registries
  * VBA bits:
  * more on the VBA export
  * dropdown list keeps the focus (bnc#444156)
  * macro project tree does not show new modules (bnc#444984)
  * added support for hotfixes
  * added support for ooo-build and extra localizations
  * update ooo-build localization from openSUSE community
  * more Hungarian fixes
- added extra localizations sources
* Fri Nov 07 2008 pmladek@suse.cz
- updated ooo-build to version 3.0.0.8
  * mailmerge speed up stuff fixes
  * various impress bugs (i#94193)
  * incorrect scaling of axes (i#95714)
  * wrong color order for canvas axial gradients (i#95341)
  * disabled problematic TOC import fix (bnc#438525, bnc#404254)
  * gnome VFS crasher (i#95689, bnc#440363, bnc#440816)
  * delimiter for percent sign consistence (i#80784)
  * work with IBM Java 1.6.0 (bnc#440459, i#95838)
  * work with GroupWise (i#95873)
  * GTK-2.8 warnings (bnc#440514)
  * allow to localize "Pixel" (i#61043)
  * Hungarian translation fixes (i#88218)
  * VBA bits:
  * crash when inserting module (bnc#439971)
  * can't edit Userform with Organize Dialogs (bnc#439972)
  * updated scsolver to the snapshot 2008-10-30
- enabled system lpsolve (needed for scsolver)
* Fri Oct 31 2008 pmladek@suse.cz
- disabled gnome-vfs to avoid conflict with gio (bnc#440363)
- disabled the hacky OpenJDK-1.6.0 fix on ppc because it caused problems
  with IBM Java
* Mon Oct 27 2008 pmladek@suse.cz
- fixed registration of the GNOME and KDE file pickers (bnc#433076)
* Mon Oct 27 2008 pmladek@suse.cz
- updated ooo-build to version 3.0.0.7
  * WordPro import filter integration
  * more on the TOC import (bnc#40425)
  * more on the SVG import (bnc#436486, ...)
  * various impress fixes (i#92026, i#92551, i#94705, i#95055)
  * change text size in merged cells regression (bnc#437137)
  * application icons in KDE and GNOME (i#95220, bnc#372983)
  * crash when adding/removing fonts (bnc#436441)
  * protected sections handling (bnc#400884)
  * Writer filed stuff fixes (bnc#400884)
  * support MS-like border spacing (bnc#391591)
  * GNOME quickstarter to work again (bnc#434778)
  * hidden-cells ODF export/import (bnc#408424)
  * cellformat toggle icon (i#86377)
  * Hungarian translation fixes
  * lots valgrind warnings
  * VBA bits:
  * more on the user forms and event handling
  * commandbar submenu fix (bnc#434214, bnc#437157)
  * bracket handling regression (i#92329)
  * more on the macro choose dialog
- added rpmlintrc to ignore errors about devel files in a non-devel package;
  bootstrap is a devel package and the name makes sense
- enabled gio (important for the GNOME integration)
- made sure that PostgreSQL is built
- fixed build with OpenJDK-1.6.0
* Fri Oct 10 2008 pmladek@suse.cz
- updated to the milestone ooo300-m9 (3.0rc4)
- updated ooo-build to version 3.0.0.6
  * 7 times faster mail merge
  * more on the layout stuff
  * more on skipping data in hidden cells when rendering charts
  (bnc#404190, i#81209)
  * strip time value in DATEVALUE function (i#94765)
  * tab color of selected/unselected sheets (bnc#396386, i#94452)
  * disable problematic fix for hiding filtered rows (i#35581)
  * better description of password re-type dialog (bnc#431196)
  * do not insert drill-down sheet in read-only mode (i#90402)
  * COUNT and COUNTA when range contains errors (bnc#430655)
  * DataPilot and filtered ranges regression (i#94281)
  * correctly display linespacing < 100%% (bnc#364534)
  * oobase to work with JRE 1.4.2 (bnc#431360)
  * slide transitions crashers (bnc#430449)
  * MS Doc import crasher (bnc#430149)
  * updated Hungarian translation
  * VBA stuff:
  * Application.Intersection new implementation [Noel]
  * Application.Union new implementation [Noel]
  * font properties crasher (bnc#433292) [Noel]
  * Null and various operators [Noel]
  * more font properties [Fong]
  * better strings in macro choose dialog [Fong]
  * updated scsolver to the snapshot 2008-10-07 [Kohei]
- fixed to produce debuginfo packages when requested
- fixed to use RPM_OPT_FLAGS
* Sat Sep 27 2008 pmladek@suse.cz
- updated to the milestone ooo300-m7 (3.0rc2)
- updated ooo-build to version 3.0.0.5
  * enabled build of PostgreSQL driver (fate#304558)
  * basic macro choose dialog
  * more on the layout stuff
  * more on the external range names
  * Excel 95 import filter crasher (bnc#427434)
  * chart's data range re-calculation (bnc#425617)
  * cell change records export to Excel (bnc#416045)
  * DataPilot inserts an extra empty row (bnc#252037)
  * DataPilot Drill-down fixes (bnc#403151, i#93918, i#93998)
  * multiline formula reference and ODF export optimization
  * missing data points in charts (bnc#427545)
  * export of the radio button group-name attributes
  * returning from presenter view crasher (bnc#425072, i#94007)
  * nasty X errors on multi-head setups (i#93986)
  * various fixes of the 3D transitions
  * continuous numbering in Impress
  * check for Cairo canvas
  * field stuff cleanup (bnc#426348)
  * Writer doc margin text rotates in Word (bnc#404221)
  * migrate user settings from ~/.ooo-2.0 to ~/.ooo3 (bnc#421070)
  * KDE filepicker to work again (bnc#427336)
  * crash on Vista's native file picker
  * accelerators for OK/Cancel buttons
  * unxsplash bitmap reading
  * VBA bits:
  * more on the user forms and event handling
  * NOT test and state of a default property (bnc#426416)
  * resetting Rowsource fails (bnc#426415)
  * disable regex processing for VBA mode
  * a1 parser to handle spaces
  * variant + string
  * added postgresql-devel to BuildRequires
- enabled build of the available extensions (fate#304543)
- added some more fixes of the split build
* Sat Sep 13 2008 pmladek@suse.cz
- fixed build of packages without any prebuilt localized stuff
* Thu Sep 11 2008 pmladek@suse.cz
- split from the main OpenOffice_org package, version 3.0.0.4
- updated to the milestone ooo300-m5 (3.0rc1)
- updated ooo-build to version 3.0.0.4:
  * add two buttons to scale Impress text up/down
  * right-click Approve/Reject with red lining (bnc#249775)
  * enabled again WW-like input-fields and checkboxes
  * layouted Find&Replace dialog
  * new FadeThroughBlack transition
  * search /usr/share/templates/ooo for templates
  * more on the layout stuff
  * more on the external range names
  * annoying PDF permission checks
  * various fixes of the 3D transitions
  * wrong read-out of fontconfig flags (bnc#407958)
  * more on skipping overlapped cells (n#362674, i#86943)
  * more on chart subtitle export to XLS (bnc#411855, i#92357)
  * disabled problematic fix for moving cell notes with anchored
  cells (i#59745, bnc#422677)
  * autohinting problem (bnc#407958)
  * broken getRecentFunctionIds() (bnc#422206)
  * Cyrillic text displayed with too much spacing (i#92072)
  * broken logical size calculation on BMP export
  * various uninitialised values
  * use V2 format for types.rdb as well
  * updated Hungarian translation fixes
  * mono support to work again
  * non-UTF8 dictionaries (bnc#418307)
  * import the content of TOC (bnc#404254)
  * bin obsolete hack for searching mozilla certificates
  * saving with the external odf-converter (bnc#410982)
  * 100%% CPU usage while opening GNOME fpicker
  * avoid extra tab in the task bar for GNOME fpicker
  * VBA bits:
  * more on the user forms and event handling
  * various regressions
  * sheet copying and associated modules (bnc#417320)
  * lcl_ScRange_Parse_XL_Header and 3D flags (bnc#422569)
  * ClassModule property with type Variant (bnc#417316, i#93214)
  * Range with Listbox.value comparison (bnc#421939)
  * number to string comparsion (bnc#422559)
  * Application.Worksheetfunctions object issue (bnc#414248)
  * more on friendly name for objectmodule tab
  * worksheet calculate event
  * UNO interface of VBA mode
  * updated scsolver to the snapshot 2008-09-08
  * build xpdfwrapper only when necessary
  * temporary globally disabled report builder
  * allow to install dictionaries again
  * set java target 1.5 by default
openSUSE Build Service is sponsored by