SHA256
1
0
forked from pool/libreoffice

Accepting request 114864 from LibreOffice:Unstable

this is needed to fix build in Factory

- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2

- clean up configure switches:
    * move switches from SUSE*.conf to spec files
    * use --with-system-headers and --with-system-libs to prefer system
      stuff over internal copies
    * use --without-system-<library> only for stuff that is not packaged
      or not patched in the SUSE distribution, for example libvisio,
      redland, mythes
    * bin not longer existing options
- remove unused python-devel from BuildRequires
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
  build parts

- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2

- clean up configure switches:
    * move switches from SUSE*.conf to spec files
    * use --with-system-headers and --with-system-libs to prefer system
      stuff over internal copies
    * use --without-system-<library> only for stuff that is not packaged
      or not patched in the SUSE distribution, for example libvisio,
      redland, mythes
    * bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
  build parts

OBS-URL: https://build.opensuse.org/request/show/114864
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libreoffice?expand=0&rev=31
This commit is contained in:
Stephan Kulow 2012-04-26 15:35:13 +00:00 committed by Git OBS Bridge
parent da85248be7
commit 6905b745b2
24 changed files with 1118 additions and 1011 deletions

View File

@ -1,48 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-system-cppunit
--without-junit
--with-vendor=Novell, Inc.
--disable-access
--disable-dbus
--disable-kde4
--disable-odk
--enable-gnome-vfs
--enable-hids
--enable-kde
--enable-lockdown
--enable-mono
--enable-quickstart
--enable-opengl
--enable-ogltrans
--with-ant-home=/usr
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=@libdir@/@OOOINSTALLDIRNAME@/basis@OOO_VERSION@/share/dictionaries
--with-external-thes-dir=@libdir@/@OOOINSTALLDIRNAME@/basis@OOO_VERSION@/share/dictionaries
--with-jdk-home=$JAVA_HOME
--with-system-cairo
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-libxslt
--with-system-neon
--with-system-odbc
--with-xulrunner
--without-junit
--without-myspell-dicts
--without-system-poppler
--without-system-mesa-headers
--without-stlport

View File

@ -1,57 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-vendor=Novell, Inc.
--disable-access
--disable-odk
--disable-qadevooo
--enable-hids
--enable-kde
--enable-kde4
--enable-lockdown
--enable-ext-presenter-minimizer
--enable-mono
--enable-opengl
--enable-ogltrans
--enable-ext-pdfimport
--enable-ext-presenter-console
--enable-ext-report-builder
--enable-ext-wiki-publisher
--without-stlport
--with-ant-home=/usr/share/ant
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=/usr/share/ooo/hyphen
--with-external-thes-dir=/usr/share/ooo/thesaurus
--with-java-target-version=1.5
--with-jdk-home=$JAVA_HOME
--with-system-boost
--with-system-cairo
--with-system-cppunit
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-hunspell
--with-system-icu
--with-system-libxslt
--with-system-lpsolve
--with-system-neon
--with-system-odbc
--with-system-sablot
--with-system-xalan
--with-system-xerces
--with-system-xml-apis
--with-system-xrender-headers
--without-myspell-dicts
--without-junit

View File

@ -1,58 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-system-cppunit
--without-junit
--with-vendor=Novell, Inc.
--disable-access
--disable-odk
--disable-qadevooo
--enable-hids
--enable-kde
--enable-kde4
--enable-lockdown
--enable-ext-presenter-minimizer
--enable-mono
--enable-opengl
--enable-ogltrans
--enable-ext-pdfimport
--enable-ext-presenter-console
--enable-ext-report-builder
--enable-ext-wiki-publisher
--without-stlport
--with-ant-home=/usr/share/ant
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=/usr/share/ooo/hyphen
--with-external-thes-dir=/usr/share/ooo/thesaurus
--with-java-target-version=1.5
--with-jdk-home=$JAVA_HOME
--with-system-boost
--with-system-cairo
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-hunspell
--with-system-icu
--with-system-libxslt
--with-system-lpsolve
--with-system-neon
--with-system-odbc
--with-system-sablot
--with-system-xalan
--with-system-xerces
--with-system-xml-apis
--with-system-xrender-headers
--without-myspell-dicts
--without-junit

View File

@ -1,57 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-system-cppunit
--without-junit
--with-vendor=Novell, Inc.
--disable-access
--disable-odk
--disable-qadevooo
--enable-hids
--enable-kde
--enable-kde4
--enable-lockdown
--enable-ext-presenter-minimizer
--enable-mono
--enable-opengl
--enable-ogltrans
--enable-ext-pdfimport
--enable-ext-presenter-console
--enable-ext-report-builder
--enable-ext-wiki-publisher
--without-stlport
--with-ant-home=/usr/share/ant
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=/usr/share/ooo/hyphen
--with-external-thes-dir=/usr/share/ooo/thesaurus
--with-java-target-version=1.5
--with-jdk-home=$JAVA_HOME
--with-system-boost
--with-system-cairo
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-hunspell
--with-system-icu
--with-system-libxslt
--with-system-lpsolve
--with-system-neon
--with-system-odbc
--with-system-sablot
--with-system-xalan
--with-system-xerces
--with-system-xml-apis
--with-system-xrender-headers
--without-myspell-dicts

View File

@ -1,57 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-system-cppunit
--without-junit
--with-vendor=Novell, Inc.
--disable-access
--disable-odk
--disable-qadevooo
--enable-hids
--enable-kde
--enable-kde4
--enable-lockdown
--enable-ext-presenter-minimizer
--enable-mono
--enable-opengl
--enable-ogltrans
--enable-ext-pdfimport
--enable-ext-presenter-console
--enable-ext-report-builder
--enable-ext-wiki-publisher
--without-stlport
--with-ant-home=/usr/share/ant
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=/usr/share/ooo/hyphen
--with-external-thes-dir=/usr/share/ooo/thesaurus
--with-java-target-version=1.5
--with-jdk-home=$JAVA_HOME
--with-system-boost
--with-system-cairo
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-hunspell
--with-system-icu
--with-system-libxslt
--with-system-lpsolve
--with-system-neon
--with-system-odbc
--with-system-sablot
--with-system-xalan
--with-system-xerces
--with-system-xml-apis
--with-system-xrender-headers
--without-myspell-dicts

View File

@ -1,57 +0,0 @@
--disable-epm
--with-openldap
--without-fonts
--with-system-jpeg
--with-system-libxml
--with-system-openssl
--with-system-python
--with-system-stdlibs
--with-system-zlib
--with-system-poppler
--enable-evolution2
--enable-dbus
--with-alloc=system
--with-system-cppunit
--without-junit
--with-vendor=Novell, Inc.
--disable-access
--disable-odk
--disable-qadevooo
--enable-hids
--enable-kde
--enable-kde4
--enable-lockdown
--enable-ext-presenter-minimizer
--enable-mono
--enable-opengl
--enable-ogltrans
--enable-ext-pdfimport
--enable-ext-presenter-console
--enable-ext-report-builder
--enable-ext-wiki-publisher
--without-stlport
--with-ant-home=/usr/share/ant
--with-external-dict-dir=/usr/share/myspell
--with-external-hyph-dir=/usr/share/ooo/hyphen
--with-external-thes-dir=/usr/share/ooo/thesaurus
--with-java-target-version=1.5
--with-jdk-home=$JAVA_HOME
--with-system-boost
--with-system-cairo
--with-system-curl
--with-system-db
--with-system-dicts
--with-system-expat
--with-system-hunspell
--with-system-icu
--with-system-libxslt
--with-system-lpsolve
--with-system-neon
--with-system-odbc
--with-system-sablot
--with-system-xalan
--with-system-xerces
--with-system-xml-apis
--with-system-xrender-headers
--without-myspell-dicts

96
buildfix-icu-4.9.diff Normal file
View File

@ -0,0 +1,96 @@
From ba3550bc82b8fb697b905c9913e399e1835b7cc0 Mon Sep 17 00:00:00 2001
From: Eike Rathke <erack@redhat.com>
Date: Tue, 3 Apr 2012 16:15:48 +0200
Subject: [PATCH] as of ICU 4.9 RBBI the Prepend property is empty
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Backport of 43084e8b30c101a44510b7a8267d5c2b316a17bb
* config_host.mk doesn't exist, instead changes to set_soenv.in
* i18npool/CustomTarget_breakiterator.mk doesn't exist, instead same changes
to i18npool/source/breakiterator/Makefile
* char.txt and char_in.txt unchanged
Signed-off-by: Tomáš Chvátal <tomas.chvatal@gmail.com>
---
configure.in | 6 ++++++
i18npool/source/breakiterator/Makefile | 8 +++++++-
set_soenv.in | 1 +
3 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/configure.in b/configure.in
index ea959e6..8e45756 100644
--- a/configure.in
+++ b/configure.in
@@ -6162,6 +6162,7 @@ ICU_MAJOR=
ICU_MINOR=
ICU_MICRO=
ICU_RECLASSIFIED_CLOSE_PARENTHESIS=
+ICU_RECLASSIFIED_PREPEND_SET_EMPTY=
AC_MSG_CHECKING([which icu to use])
if test "$with_system_icu" = "yes"; then
AC_MSG_RESULT([external])
@@ -6207,6 +6208,9 @@ if test "$with_system_icu" = "yes"; then
if test "$ICU_MAJOR" -ge "5" -o "$ICU_MAJOR" = "4" -a "$ICU_MINOR" -ge "4"; then
ICU_RECLASSIFIED_CLOSE_PARENTHESIS="YES"
fi
+ if test "$ICU_MAJOR" -ge "5" -o "$ICU_MAJOR" = "4" -a "$ICU_MINOR" -ge "9"; then
+ ICU_RECLASSIFIED_PREPEND_SET_EMPTY="YES"
+ fi
fi
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS icui18n$ICU_MAJOR$ICU_MINOR.dll icuuc$ICU_MAJOR$ICU_MINOR.dll icudata$ICU_MAJOR$ICU_MINOR.dll"
@@ -6214,6 +6218,7 @@ else
AC_MSG_RESULT([internal])
SYSTEM_ICU="NO"
ICU_RECLASSIFIED_CLOSE_PARENTHESIS="YES"
+ # ICU_RECLASSIFIED_PREPEND_SET_EMPTY not applied for our internal ICU 4.4.2
BUILD_TYPE="$BUILD_TYPE ICU"
fi
AC_SUBST(SYSTEM_ICU)
@@ -6224,6 +6229,7 @@ AC_SUBST(ICU_MAJOR)
AC_SUBST(ICU_MINOR)
AC_SUBST(ICU_MICRO)
AC_SUBST(ICU_RECLASSIFIED_CLOSE_PARENTHESIS)
+AC_SUBST(ICU_RECLASSIFIED_PREPEND_SET_EMPTY)
dnl ===================================================================
dnl Graphite
diff --git a/i18npool/source/breakiterator/Makefile b/i18npool/source/breakiterator/Makefile
index b34217a..6aed8b2 100644
--- a/i18npool/source/breakiterator/Makefile
+++ b/i18npool/source/breakiterator/Makefile
@@ -83,10 +83,16 @@ OpenOffice_dat.c : $(subst .brk,_brk.c,$(BRKFILES))
%.brk : %.txt.p
$(GENBRK) -r $< -o $@
-# fdo#31271 ")" reclassified in more recent ICU/Unicode Standards
+# fdo#31271 ")" reclassified in more recent Unicode Standards / ICU 4.4
+# Prepend set empty as of Unicode Version 6.1 / ICU 4.9, which bails out if used.
+# NOTE: strips every line with _word_ 'Prepend', including $Prepend
%.txt.p : $(realpath $(SRC_ROOT)/i18npool/source/breakiterator/data)/%.txt
ifeq ($(ICU_RECLASSIFIED_CLOSE_PARENTHESIS),YES)
+ifeq ($(ICU_RECLASSIFIED_PREPEND_SET_EMPTY),YES)
+ sed "s#\[:LineBreak = Close_Punctuation:\]#\[\[:LineBreak = Close_Punctuation:\] \[:LineBreak = Close_Parenthesis:\]\]#;/\<Prepend\>/d" $< > $@
+else
sed "s#\[:LineBreak = Close_Punctuation:\]#\[\[:LineBreak = Close_Punctuation:\] \[:LineBreak = Close_Parenthesis:\]\]#" $< > $@
+endif
else
cp $< $@
endif
diff --git a/set_soenv.in b/set_soenv.in
index 3dc9cfa..a8561cd 100755
--- a/set_soenv.in
+++ b/set_soenv.in
@@ -1881,6 +1881,7 @@ ToFile( "ICU_MAJOR", "@ICU_MAJOR@", "e" );
ToFile( "ICU_MINOR", "@ICU_MINOR@", "e" );
ToFile( "ICU_MICRO", "@ICU_MICRO@", "e" );
ToFile( "ICU_RECLASSIFIED_CLOSE_PARENTHESIS", "@ICU_RECLASSIFIED_CLOSE_PARENTHESIS@", "e" );
+ToFile( "ICU_RECLASSIFIED_PREPEND_SET_EMPTY", "@ICU_RECLASSIFIED_PREPEND_SET_EMPTY@", "e" );
ToFile( "SYSTEM_GENBRK", "@SYSTEM_GENBRK@", "e" );
ToFile( "SYSTEM_GENCCODE", "@SYSTEM_GENCCODE@", "e" );
ToFile( "SYSTEM_GENCMN", "@SYSTEM_GENCMN@", "e" );
--
1.7.8.3

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- remove unused python-devel from BuildRequires
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -29,6 +29,13 @@ Release: 0
%define zip_version 3.0
%define lo_langs ""
%define lo_home libreoffice
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -56,7 +63,6 @@ BuildRequires: openssl-devel
BuildRequires: perl-Archive-Zip
BuildRequires: perl-Compress-Zlib
BuildRequires: pkg-config
BuildRequires: python-devel
BuildRequires: unzip
BuildRequires: xorg-x11-devel
BuildRequires: zip
@ -111,13 +117,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-en-US.spec.in
Source201: lo-help-gen-spec
@ -126,6 +125,16 @@ Source202: lo-help-en-US
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -142,10 +151,22 @@ stuff is in LibreOffice-l10n-en-US.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -156,39 +177,36 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
%endif
#
# Parallel build settings ...
PARALLEL_BUILD=
BUILD_SCRIPT_FLAGS=
ncpus=
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -201,51 +219,64 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-python \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-python \
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -25,6 +25,13 @@ Release: 0
%define zip_version 3.0
%define lo_langs ""
%define lo_home libreoffice
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -52,7 +59,6 @@ BuildRequires: openssl-devel
BuildRequires: perl-Archive-Zip
BuildRequires: perl-Compress-Zlib
BuildRequires: pkg-config
BuildRequires: python-devel
BuildRequires: unzip
BuildRequires: xorg-x11-devel
BuildRequires: zip
@ -107,13 +113,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-en-US.spec.in
Source201: lo-help-gen-spec
@ -122,6 +121,16 @@ Source202: lo-help-en-US
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -138,10 +147,22 @@ stuff is in LibreOffice-l10n-en-US.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -152,39 +173,36 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
%endif
#
# Parallel build settings ...
PARALLEL_BUILD=
BUILD_SCRIPT_FLAGS=
ncpus=
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -197,51 +215,64 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-python \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-python \
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -35,6 +35,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -96,13 +99,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -111,6 +107,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -246,10 +252,22 @@ is in libreoffice-l10n-en-GB.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -260,39 +278,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -305,50 +315,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -35,6 +35,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -96,13 +99,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -111,6 +107,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -264,10 +270,22 @@ is in libreoffice-l10n-gl.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -278,39 +296,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -323,50 +333,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -35,6 +35,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -96,13 +99,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -111,6 +107,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -303,10 +309,22 @@ is in libreoffice-l10n-km.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -317,39 +335,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -362,50 +372,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -35,6 +35,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -96,13 +99,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -111,6 +107,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -237,10 +243,22 @@ is in libreoffice-l10n-pt.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -251,39 +269,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -296,50 +306,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- build zip-3.0 only for openSUSE < 11.4
- add patches for the extra zip-3.0 from the last zip package
- make sure that parallel build is used for dmake and GNU make
build parts
-------------------------------------------------------------------
Wed Apr 4 13:39:46 UTC 2012 - pmladek@suse.com

View File

@ -35,6 +35,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -96,13 +99,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -111,6 +107,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -291,10 +297,22 @@ is in libreoffice-l10n-zh-TW.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -305,39 +323,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -350,50 +360,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -31,6 +31,9 @@ Release: 0
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -92,13 +95,6 @@ Source2: libreoffice-translations-%version.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# helper stuff to produce pieces of the spec file
Source200: libreoffice-help-groupX.spec.in
Source201: lo-help-gen-spec
@ -107,6 +103,16 @@ Source202: lo-help-groupX
Patch0: libreoffice-3.5-unpack-sources.diff
# cups is not needed for helpcontent build
Patch1: build-helpcontent-do-not-check-cups.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch2: buildfix-icu-4.9.diff
#
# Patches against zip-3.0
Patch2000: zip-3.0-iso8859_2.patch
Patch2001: zip-3.0-add_options_to_help.patch
Patch2002: zip-3.0-nonexec-stack.patch
Patch2003: zip-3.0-optflags.patch
Patch2004: zip-3.0-tempfile.patch
Patch2005: zip-notimestamp.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
#!ExclusiveArch: %ix86 x86_64 ppc
BuildArch: noarch
@ -123,10 +129,22 @@ development.
%setup -q -a30 -a31 -n libreoffice-core-%version
%patch0
bin/unpack-sources `pwd` %{S:1} %{S:2}
# SUSE config files
cp %{S:100} %{S:101} %{S:102} %{S:103} %{S:104} %{S:105} distro-configs
# extra fixes
%patch1
%patch2 -p1
#
# patch zip-3.0
%if %suse_version < 1140
tar -xjf %{S:31}
cd zip30
%patch2000
%patch2001
%patch2002
%patch2003
%patch2004
%patch2005
cd -
%endif
%endif
%build
@ -137,39 +155,31 @@ CFLAGS=$RPM_OPT_FLAGS ./configure
make %{?_smp_mflags}
cd -
#
# second build zip-3.0
# second build zip-3.0 on older distributions
%if %suse_version < 1140
cd zip30
make %{?jobs:-j%jobs} -f unix/Makefile prefix=/usr CC="gcc $RPM_OPT_FLAGS -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" generic_gcc
cd -
#
# Parallel build settings ...
%endif
# parallel build of modules; it makes sense on machines with more CPUs
PARALLEL_BUILD="-P`grep ^processor /proc/cpuinfo | wc -l`"
# parallel build for files per module
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD -- -P%jobs"
if test "%build_module_in_parallel" = "1" ; then
ncpus=`grep ^processor /proc/cpuinfo | wc -l`
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=`grep ^processor /proc/cpuinfo | wc -l`"
fi
if test "%build_module_in_parallel" -gt "1" ; then
ncpus=%build_module_in_parallel
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
if test -n "$ncpus" ; then
PARALLEL_BUILD="--with-num-cpus=$ncpus"
BUILD_SCRIPT_FLAGS="-P$ncpus"
fi
if test -n "%{?jobs:%jobs}" -a -e "/opt/icecream/bin/gcc" -a -e "/opt/icecream/bin/g++" ; then
PARALLEL_BUILD="$PARALLEL_BUILD
--with-gcc-speedup=icecream
--with-max-jobs=%jobs"
BUILD_SCRIPT_FLAGS="$BUILD_SCRIPT_FLAGS -- -P%jobs"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
test "%{libkde4_devel_ver}" = "4.1.3" && DISABLE_KDE4="--disable-kde4"
%endif
# make sure that JAVA_HOME is set correctly
%if 0%{?suse_version}
@ -182,50 +192,63 @@ export JAVA_HOME=%{java_home}
export ARCH_FLAGS="`echo $RPM_OPT_FLAGS | sed -e 's/\-O[0-9s]//g' -e 's/\-fexceptions//g'` -fno-strict-aliasing"
# FIXME: genccode from the system icu is in /usr/sbin
# FIXME: we need make-3.82 for parallel build
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbuild:$PATH:/usr/sbin"
# use the extra built zip-3.0 on older distributions
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
%if %prepare_build != 0
./autogen.sh \
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-jdk-home=$JAVA_HOME \
--disable-cups \
--disable-fontconfig \
--without-junit \
--without-system-jpeg \
--disable-mozilla \
--disable-mono \
--without-system-curl \
--disable-ldap \
--without-system-odbc \
--without-system-mozilla \
--without-system-neon \
--without-system-hunspell \
--without-system-lpsolve \
--disable-gtk \
--with-alloc=system \
--disable-strip-solver \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--without-fonts \
--without-myspell-dicts \
--disable-kde \
--disable-kde4 \
--disable-gtk \
--disable-gconf \
--disable-gnome-vfs \
--without-system-cairo \
--disable-evolution2 \
--disable-gstreamer \
--disable-opengl \
--without-system-poppler \
--disable-evolution2
--disable-mono \
--disable-odk \
--without-junit \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--disable-cups \
--disable-fontconfig \
--with-system-dicts \
--with-system-libxml \
--with-system-openssl \
--with-system-icu \
--with-system-cppunit \
--with-system-expat \
--with-system-db \
--with-system-boost \
--without-system-jpeg
%endif
./bootstrap
. ./Env.Host.sh
cd helpcontent2
build --all $PARALLEL_BUILD
build --all $BUILD_SCRIPT_FLAGS
%install
. ./Env.Host.sh

View File

@ -1,3 +1,33 @@
-------------------------------------------------------------------
Fri Apr 20 12:29:53 UTC 2012 - pmladek@suse.com
- buildfix-icu-4.9.diff: fix build with icu-4.9; needed for openSUSE-12.2
-------------------------------------------------------------------
Fri Apr 13 15:28:42 UTC 2012 - pmladek@suse.com
- pyuno-path.diff: basis-link directory does not longer exist
-------------------------------------------------------------------
Fri Apr 6 14:57:48 UTC 2012 - pmladek@suse.com
- disable ccache; does not make sense for clean build; saves 1GB on the disk
- hard link binaries in the build tree; it might save several GBs on the disk
and is faster
- clean up configure switches:
* move switches from SUSE*.conf to spec files
* use --with-system-headers and --with-system-libs to prefer system
stuff over internal copies
* use --without-system-<library> only for stuff that is not packaged
or not patched in the SUSE distribution, for example libvisio,
redland, mythes
* bin not longer existing options
- use system libwpd, libwpg, libwps, librsvg, vigra on openSUSE >= 11.4
- remove unused sablot-devel, xalan-j2, xerces-j2, xml-commons-apis
from BuildRequires and Requires
- remove some %if sections for not longer supported openSUSE < 11.1
- update license tag: added BSD-4-Clause, SUSE-Public-Domain, W3C
-------------------------------------------------------------------
Wed Apr 4 12:44:47 UTC 2012 - pmladek@suse.com

View File

@ -23,7 +23,6 @@ BuildRequires: ant-apache-regexp
BuildRequires: ant-nodeps
BuildRequires: bison
BuildRequires: boost-devel
BuildRequires: ccache
BuildRequires: cups-devel
BuildRequires: curl-devel
BuildRequires: dbus-1-glib-devel
@ -33,10 +32,13 @@ BuildRequires: gcc-c++
BuildRequires: gnome-vfs2-devel
BuildRequires: gperf
BuildRequires: gtk2-devel
BuildRequires: hunspell-devel
BuildRequires: icu
BuildRequires: java-devel
BuildRequires: libexif
BuildRequires: libicu-devel
BuildRequires: libxml2-devel
BuildRequires: lpsolve-devel
BuildRequires: mono-devel
BuildRequires: neon-devel
BuildRequires: orbit2-devel
@ -89,7 +91,7 @@ BuildRequires: kdelibs3-devel
%endif
############################
# cppunit stuff
%if 0%{?suse_version} >= 01100
%if 0%{?suse_version}
BuildRequires: libcppunit-devel
%endif
%if 0%{?meego_version}
@ -118,15 +120,8 @@ BuildRequires: libexpat-devel
BuildRequires: expat-devel
%endif
############################
# lpsolve stuff
%if 0%{?suse_version} > 01100 || 0%{?meego_version}
# 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 0%{?suse_version} >= 01100
%if 0%{?suse_version}
BuildRequires: libpoppler-devel
%endif
%if 0%{?meego_version}
@ -138,17 +133,13 @@ BuildRequires: poppler-devel
BuildRequires: junit4
%endif
############################
# openSUSE 10.3 features
%if 0%{?suse_version} > 01020 || 0%{?meego_version}
BuildRequires: libicu-devel
%endif
############################
# openSUSE 11.0 features
%if 0%{?suse_version} > 01030 || 0%{?meego_version}
BuildRequires: hunspell-devel
# openSUSE 11.4 features
%if 0%{?suse_version} >= 01140 || 0%{?meego_version}
BuildRequires: librsvg-devel
BuildRequires: libwpd-devel
BuildRequires: libwpg-devel
BuildRequires: libwps-devel
BuildRequires: vigra-devel
%endif
############################
# CODE10 features
@ -156,17 +147,9 @@ BuildRequires: libwps-devel
%if 0%{?suse_version} > 01000
BuildRequires: gstreamer010-plugins-base-devel
BuildRequires: python-lxml
BuildRequires: sablot-devel
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: xml-commons-apis
%endif
%if 0%{?meego_version}
BuildRequires: gst-plugins-base-devel
BuildRequires: sablot-devel
BuildRequires: xalan-j2
BuildRequires: xerces-j2
BuildRequires: xml-commons-apis
%endif
# FIXME: part of the language-dependant stuff is still built here and
# put into the -devel package
@ -184,6 +167,9 @@ BuildRequires: xml-commons-apis
# 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
# debug_build: 0 = no
# 1 = yes (enable depency tracking, ccache)
%define debug_build 0
# prepare_build: 0 = no
# 1 = yes (just build, install and create packages; without %%prep section and configure)
%define prepare_build 1
@ -209,12 +195,6 @@ BuildRequires: xml-commons-apis
%define lo_build_sdk no
%endif
%endif
# java target bytecode; should be compatible with the gcj
%if 0%{?suse_version} > 01030 || 0%{?meego_version}
%define java_target_version 1.5
%else
%define java_target_version 1.4
%endif
# python paths
%if 0%{?suse_version} <= 01110
%define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())")
@ -279,9 +259,6 @@ Requires: libgcj
Requires: jre >= 1.5
%endif
# ---
Requires: xalan-j2
Requires: xerces-j2
Requires: xml-commons-apis
# post install scripts
%if 0%{?suse_version} > 01120
Requires(pre): findutils
@ -480,7 +457,7 @@ Obsoletes: OpenOffice_org-Quickstarter < 3.3.1
%endif
#
Summary: A Free Office Suite (Framework)
License: Apache-2.0 and Artistic-1.0 and BSD-3-Clause and GPL-2.0+ and LPPL-1.3c and LGPL-2.1+ and LGPL-3.0 and MPL-1.1 and MIT
License: Apache-2.0 and Artistic-1.0 and BSD-3-Clause and BSD-4-Clause and GPL-2.0+ and LPPL-1.3c and LGPL-2.1+ and LGPL-3.0 and MPL-1.1 and MIT and SUSE-Public-Domain and W3C
Group: Productivity/Office/Suite
Url: http://www.documentfoundation.org/
Source0: libreoffice-core-%version.tar.bz2
@ -495,13 +472,6 @@ Source20: libreoffice-desktop-icons-256x256.tar.bz2
Source30: make-%gnu_make_version-gbuild-%gnu_make_snapshot.tar.bz2
# zip-3.0 or newer is required because of the --filesync feature
Source31: zip-%zip_version.tar.bz2
# SUSE config files
Source100: SUSE.conf
Source101: SUSE-10.1.conf
Source102: SUSE-11.1.conf
Source103: SUSE-11.2.conf
Source104: SUSE-11.3.conf
Source105: SUSE-11.4.conf
# rpmlint complains about devel files in non-devel package
# but we would like to keep the sdk package name
# We would like to keep the -bootstrap package name
@ -600,8 +570,10 @@ Source1042: d28864eb2b59bb57b034c0d4662a3cee-libvisio-0.0.15.tar.bz2
Source1043: d7a242ca43e33e1b63d3073f9d46a6a8-librsvg-2.32.1.tar.gz
#
# allow to unpack source tarballs
# pushed upstream for 3.5.3
Patch0: libreoffice-3.5-unpack-sources.diff
# mark share/config/javasettingsunopkginstall.xml as %config; it is updated by unopkg in %post
# pushed upstream for 3.6.0
Patch1: javasetting-mark-config.diff
# search application icons in /usr/share
# FIXME: search both lib and lib64 and push into git
@ -610,34 +582,47 @@ Patch2: split-icons-search-usr-share.diff
# FIXME: make it configurable in integrate into git
Patch3: officecfg-help-in-usr-share.diff
# slower patching to debug and hopefully fix parallel build of ct2n extension; always happened only in the Build Service (bnc#595550)
# FIXME: remove when scp2 module is gbuildized
Patch4: solenv-carefull-patching-hack.diff
# change user config dir name from ~/.libreoffice/3 to ~/.libreoffice/3-suse
# to avoid BerkleyDB incompatibility with the plain build
# FIXME: make it configurable in integrate into git
Patch5: scp2-user-config-suse.diff
# fix library link order to work with link as needed
# pushed upstream for 3.6.0 except for fpicker; it was moved to vcl and gbuildized
Patch6: library-link-order-to-build-with-as-needed.diff
# put internal rhino into XBootClasspath to fix build with OpenJDK
# FIXME: make it clean to be able to push upstream
Patch7: scripting-prefer-internal-rhino.diff
# update file list generation for 3.5
# pushed upstream for LO-.3.6; pending request for 3.5
Patch8: distro-install-file-lists-3.5.diff
# search <lo-home>/share/template/common for language independent templates
# will not push it upstream because it will be replaced by upcomming kendy's work
# FIXME: make it configurable to push upstream
Patch9: office-cfg-linux-common-template-dir.diff
# correctly bootstrap python stuff with system python, (deb#501028, i#90701)
# is this solutions stull used in other distributions?
Patch10: system-python-ure-bootstrap.diff
# do not use the broken help; unopkg complained about it when registering extensions
# FIXME: the right fix is to compile the help and produce the .db_, .ht_, and other files
Patch11: nlpsolver-no-broken-help.diff
Patch12: mediawiki-no-broken-help.diff
# revert problematic build fix for poppler 0.17.0 on older distributions
# FIXME: make it configurable to push upstream
Patch13: libreoffice-poppler-0.17.0-reject-fix.diff
# generate selected bytecode version also in gbuild
# FIXME: push upstream and be ready to fix problem on other systems
Patch14: solenv-java-source-version.diff
# fix build dependency problem in svx
# FIXME: completely reworked in LO-3.6; might be removed there
Patch15: svx-globlmn-hrc-build-dep.diff
# fix build with icu-4.9; it will be in upstream 3.5.3
Patch16: buildfix-icu-4.9.diff
# display LO application in the right desktop submenu (bnc#718694)
# pushed upstream for LO-3.6
Patch21: desktop-submenu.diff
# add pyuno to python path
# FIXME: related to system-python-ure-bootstrap.diff
Patch26: pyuno-path.diff
#
# default to MS Office 97/2000/XP file formats on MeeGo; asked by HP
@ -1331,8 +1316,6 @@ the LibreOffice localizations separately.
bin/unpack-sources `pwd` %{S:1} %{S:2} %{S:3}
# 256x256 icons
tar -xjf %{S:20}
# SUSE config files
cp $RPM_SOURCE_DIR/SUSE*.conf distro-configs
# READMEs
cp $RPM_SOURCE_DIR/README* .
# extra fixes
@ -1354,6 +1337,7 @@ cp $RPM_SOURCE_DIR/README* .
%endif
%patch14
%patch15
%patch16 -p1
%patch21
%patch26
#
@ -1410,22 +1394,6 @@ if test "%build_module_in_parallel" -gt "1" ; then
PARALLEL_BUILD="$PARALLEL_BUILD --with-num-cpus=%build_module_in_parallel"
fi
#
# Distro settings ...
%if 0%{?meego_version}
with_distro="SUSE-11.1"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 01110
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"
%endif
%if 0%{?suse_version} > 01110 && 0%{?suse_version} <= 01120
with_distro="SUSE-11.2"
%endif
%if 0%{?suse_version} > 01120
with_distro="SUSE"
%endif
#
# disable KDE4 on openSUSE-11.1-Evergreen but not on SLED11
%define libkde4_devel_ver %(rpm -q --queryformat '%{VERSION}' libkde4-devel)
DISABLE_KDE4=
@ -1450,86 +1418,104 @@ export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/make-%gnu_make_version-gbu
%if %suse_version < 1140
export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
%endif
#
%if %prepare_build != 0
./autogen.sh $PARALLEL_BUILD \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-vendor="Novell, Inc." \
--with-lang=%lo_langs \
--disable-fetch-external \
--with-external-tar="$RPM_SOURCE_DIR" \
--with-arch-flags="$ARCH_FLAGS" \
--libdir=%{_libdir} \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--sysconfdir=/etc \
--docdir=%{_docdir}/%{name} \
--with-distro="$with_distro" \
--without-git \
--without-download \
--disable-fetch-external \
--with-lang=%lo_langs \
--with-poor-help-localizations=%lo_poor_help_localizations \
--with-mono-gac-root=%{_prefix}/lib \
--with-compat-oowrappers \
--with-alloc=system \
--disable-strip-solver \
--with-compat-oowrappers \
--enable-split-app-modules \
--enable-split-opt-features \
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=1.5 \
--with-ant-home=/usr/share/ant \
--with-mono-gac-root=%{_prefix}/lib \
--without-fonts \
--without-myspell-dicts \
--with-external-dict-dir=/usr/share/myspell \
--with-external-hyph-dir=/usr/share/ooo/hyphen \
--with-external-thes-dir=/usr/share/ooo/thesaurus \
--without-help \
%if %test_build_binfilters != 0
--enable-binfilter \
--enable-binfilter \
%endif
--with-jdk-home=$JAVA_HOME \
--with-java-target-version=%java_target_version \
--disable-helpcontent \
%if %lo_build_sdk == yes
--enable-odk \
--enable-odk \
%endif
%if 0%{?meego_version}
--without-system-cairo \
--with-system-icu \
--disable-kde4 \
%endif
%if 0%{?meego_version}
--disable-kde \
%if 0%{?suse_version}
--enable-kde \
--enable-kde4 \
%endif
$DISABLE_KDE4 \
%if 0%{?suse_version} > 01130
--enable-evolution2 \
--enable-lockdown \
--enable-dbus \
%if 0%{?suse_version} <= 01130
--enable-mono \
%else
--disable-mono \
%endif
%if %suse_version <= 1110
--without-junit \
%if %suse_version <= 1130
--without-junit \
%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-ext-ct2n \
--enable-ext-nlpsolver \
--enable-ext-google-docs \
--enable-ext-numbertext \
--without-help \
--disable-mozilla \
%if %debug_build == 0
--disable-ccache \
%endif
--without-stlport \
--disable-mozilla \
--without-system-mozilla \
--disable-ldap \
--enable-xmlsec \
--with-system-nss \
%if 0%{?suse_version} > 01110
--with-system-postgresql \
%endif
--with-openldap \
--enable-ext-ct2n \
--enable-ext-nlpsolver \
--enable-ext-google-docs \
--enable-ext-numbertext \
--enable-ext-wiki-publisher \
%if 0%{?suse_version}
--with-system-mysql \
--enable-ext-mysql-connector \
%endif
%if 0%{?suse_version} > 01220
--with-system-mysql-cppconn \
%endif
%if 0%{?suse_version} > 01030 || 0%{?meego_version}
--enable-pdfimport \
--enable-ext-mysql-connector \
%endif
--enable-ext-scripting-beanshell \
--enable-ext-scripting-javascript \
--enable-ext-scripting-python \
--enable-minimizer --enable-presenter-console \
--enable-wiki-publisher --enable-ogltrans --enable-report-builder \
--enable-split-app-modules \
--enable-split-opt-features
--with-system-dicts \
--with-system-headers \
%if 0%{?suse_version} <= 01130
--without-system-vigra \
%endif
--without-system-mdds \
--without-system-mozilla-headers \
--without-system-sane \
--with-system-libs \
%if 0%{?suse_version} <= 01110
--without-system-postgresql \
%endif
%if 0%{?meego_version}
--without-system-cairo \
%endif
%if 0%{?suse_version} <= 01130
--without-system-libwpd \
--without-system-libwpg \
--without-system-libwps \
--enable-librsvg=internal \
%endif
--without-system-mysql-cppconn \
--without-system-libvisio \
--without-system-libcmis \
--without-system-graphite \
--without-system-sampleicc \
--without-system-redland \
--without-system-altlinuxhyph \
--without-system-mythes \
--without-system-libexttextcat
%endif
# prebuilt stuff
(
@ -1544,6 +1530,8 @@ export PATH="$RPM_BUILD_DIR/libreoffice-core-%version/zip30:$PATH:/usr/sbin"
)
# hack to correctly bootstrap python stuff with system python, (deb#501028, i#90701)
sed -i -e "s|@INSTALLDIR@|%lo_prefix/%lo_home|" pyuno/source/module/uno.py
# hard link binaries in the build tree; it might save several GBs on the disk and is faster
export gb_Deliver_HARDLINK=1
# FIXME: try to finish build even with the strange random build crash in officecfg
make || make || make

View File

@ -7,9 +7,9 @@
+import platform
+
+if platform.machine() == 'x86_64':
+ sys.path.append('/usr/lib64/libreoffice/basis-link/program')
+ sys.path.append('/usr/lib64/libreoffice/program')
+else:
+ sys.path.append('/usr/lib/libreoffice/basis-link/program')
+ sys.path.append('/usr/lib/libreoffice/program')
if getattr(os.environ, 'URE_BOOTSTRAP', None) is None:
os.environ['URE_BOOTSTRAP'] = "vnd.sun.star.pathname:@INSTALLDIR@/program/fundamentalrc"