diff --git a/libreoffice-4.2.0.3.tar.xz b/libreoffice-4.2.0.3.tar.xz deleted file mode 100644 index c519791..0000000 --- a/libreoffice-4.2.0.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb554dc2fd7ae398cfde1a62c319047931c2fe3aed8a4c5392e15d78cb96ab1f -size 123124968 diff --git a/libreoffice-4.2.0.4.tar.xz b/libreoffice-4.2.0.4.tar.xz new file mode 100644 index 0000000..0d81a21 --- /dev/null +++ b/libreoffice-4.2.0.4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8768071886506048a126abd2c3c091b054beb6a489ae0a33d86c64914e797df +size 123114364 diff --git a/libreoffice-help-4.2.0.3.tar.xz b/libreoffice-help-4.2.0.3.tar.xz deleted file mode 100644 index 19a2720..0000000 --- a/libreoffice-help-4.2.0.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7a498394fd865eac45c2b8d57f5cad94e1726091887d9ae5824521f68121e601 -size 1854736 diff --git a/libreoffice-help-4.2.0.4.tar.xz b/libreoffice-help-4.2.0.4.tar.xz new file mode 100644 index 0000000..d08ceff --- /dev/null +++ b/libreoffice-help-4.2.0.4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3357bc3f1fe3d13172122b3a7cf98c9d408989cf454e14fa78f92ad5b67f0dd9 +size 1854864 diff --git a/libreoffice-translations-4.2.0.3.tar.xz b/libreoffice-translations-4.2.0.3.tar.xz deleted file mode 100644 index 261c8fd..0000000 --- a/libreoffice-translations-4.2.0.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3e324236be8d8868fb04c3ad275a0ce659d887116f0e2ff069ab79595445b8b0 -size 127272700 diff --git a/libreoffice-translations-4.2.0.4.tar.xz b/libreoffice-translations-4.2.0.4.tar.xz new file mode 100644 index 0000000..a0be20e --- /dev/null +++ b/libreoffice-translations-4.2.0.4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99e11a54649285325d0d79d2b0b78afee40f45d9a8f760adf24ae9f929c026fe +size 127363960 diff --git a/libreoffice.changes b/libreoffice.changes index 5229b6f..8be585d 100644 --- a/libreoffice.changes +++ b/libreoffice.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Fri Jan 31 13:26:17 UTC 2014 - tchvatal@suse.com + +- Version bump to 4.2.0.4 which is the final + * Fixes 20 of last crit bugs. + +------------------------------------------------------------------- +Thu Jan 31 11:38:20 UTC 2014 - tchvatal@suse.com + +- Remove patch for split icon search that is no longer working + split-icons-search-usr-share.diff +- Use symlinking posttrans hack for all noarch pkgs +- Fix the symlinking script to work properly + ------------------------------------------------------------------- Thu Jan 30 12:42:48 UTC 2014 - tchvatal@suse.com diff --git a/libreoffice.spec b/libreoffice.spec index 235db1e..805394d 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -26,7 +26,7 @@ %define external_url http://dev-www.libreoffice.org/src/ %define tarball_url http://download.documentfoundation.org/libreoffice/src/4.2.0/ Name: libreoffice -Version: 4.2.0.3 +Version: 4.2.0.4 Release: 0 Summary: A Free Office Suite (Framework) 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 @@ -65,9 +65,6 @@ Source2003: %{external_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip Source2004: %{external_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip # Needed for wiki-published and always taken as bundled Source2005: %{external_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip -# PATCH-FIX-UPSTREAM: search usr and lib together for the icons, after last update it only -# takes one path, so our patch won't work at all -Patch2: split-icons-search-usr-share.diff # search help icons in %{_prefix}/share # FIXME: make it configurable in integrate into git Patch3: officecfg-help-in-usr-share.diff @@ -615,6 +612,22 @@ This package provides extensions for LibreOffice Writer: - Google Docs, Zoho, and WebDAV Export/Import - MediaWiki Publisher +# Symlinking macro for /usr/lib64 and /usr/share packing +# As argument takes name of the package +%define _link_noarch_files() \ +%posttrans %{1} \ +rpm -ql %{name}-%{1} > %{_datadir}/libreoffice/%{1}_list.txt || true \ +if [ -f %{_datadir}/libreoffice/%{1}_list.txt ] ; then \ + %{_datadir}/libreoffice/link-to-ooo-home %{_datadir}/libreoffice/%{1}_list.txt || true \ +fi \ +\ +%postun %{1} \ +if [ "$1" = "0" -a -f %{_datadir}/libreoffice/%{1}_list.txt ]; then \ + %{_datadir}/libreoffice/link-to-ooo-home --unlink %{_datadir}/libreoffice/%{1}_list.txt || true \ + rm -f %{_datadir}/libreoffice/%{1}_list.txt 2> /dev/null || true \ +fi \ +%{nil} + # Crazy magic for the auto help/lang generating. # Inspired and adjusted from Fedora spec. %define _langpack_common() \ @@ -722,20 +735,7 @@ Provides additional %{langname} translations and resources for %{project}. \ %{-i:%{expand:%%_langpack_common %{-i*}}} \ } \ \ -%posttrans %{pkgname} \ -rpm -ql %{pkgname} > %{_datadir}/libreoffice/%{pkgname}_list.txt || true \ -if [ -f %{_datadir}/libreoffice/%{pkgname}_list.txt ] ; then \ - %{_datadir}/libreoffice/link-to-ooo-home %{_datadir}/libreoffice/%{pkgname}_list.txt || true \ -else \ - echo "Unable to generate filelist" \ - rpm -ql %{pkgname} \ -fi \ -\ -%postun %{pkgname} \ -if [ "$1" = "0" -a -f %{_datadir}/libreoffice/%{pkgname}_list.txt ]; then \ - %{_datadir}/libreoffice/link-to-ooo-home --unlink %{_datadir}/libreoffice/%{pkgname}_list.txt || true \ - rm -f %{_datadir}/libreoffice/%{pkgname}_list.txt 2> /dev/null || true \ -fi \ +%{expand:%%_link_noarch_files %{pkgname}} \ %{nil} %langpack -l af -n Afrikaans @@ -751,7 +751,7 @@ fi \ %langpack -l de -n German -M -T -X %langpack -l dz -n Dzongkha -s ctl -T %langpack -l el -n Greek -M -T -%langpack -l en -n English -M -L en-US -T -X +%langpack -l en -n English -m en-US -L en-US -T -X %langpack -l es -n Spanish -M -T -X %langpack -l et -n Estonian -T %langpack -l eu -n Basque -T @@ -816,8 +816,6 @@ fi \ %prep %setup -q -b1 -b2 -n libreoffice-%{version} -# apply patches before caling any other command to be able to patch with quilt easily -#%patch2 -p1 %patch3 -p1 %patch5 %patch6 -p1 @@ -1165,6 +1163,13 @@ test "$1" = "0" && rm -rf ./%{_libdir}/%{name}/share/uno_packages/cache || true %postun writer %desktop_database_postun +%_link_noarch_files icon-theme-crystal +%_link_noarch_files icon-theme-galaxy +%_link_noarch_files icon-theme-hicontrast +%_link_noarch_files icon-theme-oxygen +%_link_noarch_files icon-theme-sfir +%_link_noarch_files icon-theme-tango + %files -f file-lists/common_list.txt %defattr(-,root,root) # ignore helper files for brp-symlink check diff --git a/link-to-ooo-home b/link-to-ooo-home index cc2f4bd..e0281e1 100644 --- a/link-to-ooo-home +++ b/link-to-ooo-home @@ -15,11 +15,11 @@ change_linking() { # Decide if we are linking or wiping first if ${link_mode}; then # Grab all files from the proper folder - for file in `grep "/usr/share/libreoffice" ${fielist} | sort`; do + for file in `cat ${filelist} | grep "/usr/share/libreoffice" | sort`; do # if we get ourselves folder then just create it # it might not be around so lets be safe if [[ -d "${file}" ]] ; then - dirname="${dir/${datadir}/${libdir}}" + dirname="${file/${datadir}/${libdir}}" # if the location is already there skip it if [[ ! -e "${dirname}" ]]; then mkdir -p "${dirname}" @@ -29,26 +29,26 @@ change_linking() { linkfile="${file/${datadir}/${libdir}}" # if the file is already there, skip it # this is true when the parent folder is link - if [[ ! -e "${linfile}" ]]; then - ln -sf "${file}" "${linfile}" || exit 1 + if [[ ! -e "${linkfile}" ]]; then + ln -sf "${file}" "${linkfile}" || exit 1 fi done else # first just remove the symlinks - for file in `grep "/usr/share/libreoffice" ${fielist} | sort`; do + for file in `cat ${filelist} | grep "/usr/share/libreoffice" | sort`; do linkfile=${file/${datadir}/${libdir}} - if [[ -L "${linkfile}" && ! -r "${linfile}" ]]; then + if [[ -L "${linkfile}" && ! -r "${linkfile}" ]]; then rm -f "${linkfile}" || exit 1 fi done # continue by wiping out all EMPTY dirs # we have to be sure it is not owned by anything else # doing in 2nd run to ensure avoiding collisions - for file in `grep "/usr/share/libreoffice" ${fielist} | sort`; do - linkdir="${dir/${datadir}/${libdir}}" + for file in `cat ${filelist} | grep "/usr/share/libreoffice" | sort`; do + linkdir="${file/${datadir}/${libdir}}" if [[ -d "${linkdir}" && -z `ls "${linkdir}"/*` ]]; then # check if nothing else owns the dir - if [[ $(rpm -qf "${dir}" 2>/dev/null |wc -l) == 0 ]]; then + if [[ $(rpm -qf "${file}" 2>/dev/null |wc -l) == 0 ]]; then rmdir "${linkdir}" || exit 1 fi fi diff --git a/split-icons-search-usr-share.diff b/split-icons-search-usr-share.diff deleted file mode 100644 index 31cda5b..0000000 --- a/split-icons-search-usr-share.diff +++ /dev/null @@ -1,109 +0,0 @@ -diff -urN libreoffice-4.1.0.0.beta1.old/vcl/inc/impimagetree.hxx libreoffice-4.1.0.0.beta1/vcl/inc/impimagetree.hxx ---- libreoffice-4.1.0.0.beta1.old/vcl/inc/impimagetree.hxx 2013-05-27 14:04:19.777304208 +0200 -+++ libreoffice-4.1.0.0.beta1/vcl/inc/impimagetree.hxx 2013-05-27 14:14:07.409304138 +0200 -@@ -76,6 +76,10 @@ - typedef boost::unordered_map< - OUString, std::pair< bool, BitmapEx >, OUStringHash > IconCache; - -+ // we want to search zip files (icons) also in /usr/share/ -+ ::rtl::OUString m_datadir; // /usr/share/ -+ ::rtl::OUString m_libdir; // /usr/lib or /usr/lib64 -+ - OUString m_style; - Paths m_paths; - CheckStyleCache m_checkStyleCache; -@@ -84,6 +88,7 @@ - - void setStyle(OUString const & style ); - -+ void addUrlToPaths(const rtl::OUString &url); - void resetPaths(); - - bool checkStyleCacheLookup( OUString const & style, bool &exists ); -diff -urN libreoffice-4.1.0.0.beta1.old/vcl/source/gdi/impimagetree.cxx libreoffice-4.1.0.0.beta1/vcl/source/gdi/impimagetree.cxx ---- libreoffice-4.1.0.0.beta1.old/vcl/source/gdi/impimagetree.cxx 2013-05-27 14:04:19.749304208 +0200 -+++ libreoffice-4.1.0.0.beta1/vcl/source/gdi/impimagetree.cxx 2013-05-27 14:21:57.167304082 +0200 -@@ -128,7 +128,16 @@ - - } - --ImplImageTree::ImplImageTree() { m_cacheIcons = true; } -+ImplImageTree::ImplImageTree() -+{ -+ m_cacheIcons = true; -+ m_datadir = ::rtl::OUString( "/usr/share/" ); -+#if defined(X86_64) -+ m_libdir = ::rtl::OUString( "/usr/lib64/" ); -+#else -+ m_libdir = ::rtl::OUString( "/usr/lib/" ); -+#endif -+} - - ImplImageTree::~ImplImageTree() {} - -@@ -253,6 +262,22 @@ - } - } - -+void ImplImageTree::addUrlToPaths(const rtl::OUString &url) { -+ if ( url.getLength() == 0 ) -+ return; -+ m_paths.push_back( -+ std::make_pair( -+ url, -+ css::uno::Reference< css::container::XNameAccess >())); -+ sal_Int32 nLibDirPos = url.indexOf( m_libdir ); -+ if ( nLibDirPos >= 0 ) { -+ m_paths.push_back( -+ std::make_pair( -+ url.replaceAt( nLibDirPos, m_libdir.getLength(), m_datadir ), -+ css::uno::Reference< css::container::XNameAccess >())); -+ } -+} -+ - void ImplImageTree::resetPaths() { - m_paths.clear(); - -@@ -268,9 +293,7 @@ - } - else - url += "images"; -- m_paths.push_back( -- std::make_pair( -- url, css::uno::Reference< css::container::XNameAccess >())); -+ addUrlToPaths(url); - } - - bool ImplImageTree::checkStyleCacheLookup( -diff -urN libreoffice-4.1.0.0.beta1.old/xmlhelp/source/cxxhelp/provider/provider.cxx libreoffice-4.1.0.0.beta1/xmlhelp/source/cxxhelp/provider/provider.cxx ---- libreoffice-4.1.0.0.beta1.old/xmlhelp/source/cxxhelp/provider/provider.cxx 2013-05-27 14:04:24.361304207 +0200 -+++ libreoffice-4.1.0.0.beta1/xmlhelp/source/cxxhelp/provider/provider.cxx 2013-05-27 14:17:37.465304113 +0200 -@@ -321,7 +321,7 @@ - OUString( " " ) + - setupextension ); - -- uno::Sequence< OUString > aImagesZipPaths( 2 ); -+ uno::Sequence< OUString > aImagesZipPaths( 3 ); - xHierAccess = getHierAccess( sProvider, "org.openoffice.Office.Common" ); - - OUString aPath( getKey( xHierAccess, "Path/Current/UserConfig" ) ); -@@ -330,6 +330,19 @@ - - aPath = OUString("$BRAND_BASE_DIR/share/config"); - rtl::Bootstrap::expandMacros(aPath); -+ aImagesZipPaths[ 2 ] = aPath; -+ -+ // try also /usr/share and even before /usr/lib -+ ::rtl::OUString aDataDir = ::rtl::OUString::createFromAscii ( "/usr/share/" ); -+#if defined(X86_64) -+ ::rtl::OUString aLibDir = ::rtl::OUString::createFromAscii ( "/usr/lib64/" ); -+#else -+ ::rtl::OUString aLibDir = ::rtl::OUString::createFromAscii ( "/usr/lib/" ); -+#endif -+ sal_Int32 nLibDirPos = aPath.indexOf( aLibDir ); -+ -+ if ( nLibDirPos >= 0 ) -+ aPath = aPath.replaceAt( nLibDirPos, aLibDir.getLength(), aDataDir ); - aImagesZipPaths[ 1 ] = aPath; - - sal_Bool showBasic = getBooleanKey(xHierAccess,"Help/ShowBasic");