Date: Tuesday, July 19, 2011 @ 00:20:48 Author: andyrtr Revision: 132012
add more build fixes; finish en-US langpack build from source Added: libreoffice/trunk/0001-distro-install-desktop-integration-work-with-normal-.patch libreoffice/trunk/0002-distro-install-desktop-integration-do-not-pack-libre.patch libreoffice/trunk/0003-distro-install-fix-en-US-only-installation.patch libreoffice/trunk/0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch libreoffice/trunk/scp2-more-reasonable-file-access-rights.diff Modified: libreoffice/trunk/PKGBUILD libreoffice/trunk/libreoffice.install -----------------------------------------------------------------+ 0001-distro-install-desktop-integration-work-with-normal-.patch | 36 +++ 0002-distro-install-desktop-integration-do-not-pack-libre.patch | 25 ++ 0003-distro-install-fix-en-US-only-installation.patch | 31 ++ 0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch | 24 ++ PKGBUILD | 113 ++-------- libreoffice.install | 2 scp2-more-reasonable-file-access-rights.diff | 15 + 7 files changed, 162 insertions(+), 84 deletions(-) Added: 0001-distro-install-desktop-integration-work-with-normal-.patch =================================================================== --- 0001-distro-install-desktop-integration-work-with-normal-.patch (rev 0) +++ 0001-distro-install-desktop-integration-work-with-normal-.patch 2011-07-19 04:20:48 UTC (rev 132012) @@ -0,0 +1,36 @@ +From 64653bcd8c1f1deeb8483e0d3e4ee8768a807b5d Mon Sep 17 00:00:00 2001 +From: Petr Mladek <pmla...@suse.cz> +Date: Mon, 18 Jul 2011 12:32:57 +0200 +Subject: [PATCH] distro-install-desktop-integration: work with normal user + ++ alllow to overwrite the readonly desktop files ++ create the compat soffice symlink in DESTDIR +--- + bin/distro-install-desktop-integration | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration +index c00c8c6..600c54e 100755 +--- a/bin/distro-install-desktop-integration ++++ b/bin/distro-install-desktop-integration +@@ -123,7 +123,7 @@ for file in *.desktop ; do + -e "s/\($INSTALLDIRNAME\)$PRODUCTVERSION/\1/" \ + -e "s/\($PRODUCTNAME\) $PRODUCTVERSION/\1/" \ + "$file" >"$file.new" +- mv "$file.new" "$file" ++ mv -f "$file.new" "$file" + done + cd - + +@@ -160,7 +160,7 @@ add_wrapper unopkg unopkg "" "unopkg" "" + # you cannot include this link directly into the package + # For example, the Novell package mark this symlink as %ghost + # and update it in %post and %postun +-ln -sf $INSTALLDIR/program/soffice $PREFIXDIR/bin/soffice ++ln -sf $INSTALLDIR/program/soffice $DESTDIR$PREFIXDIR/bin/soffice + + # create bash completion + mkdir -p $DESTDIR/etc/bash_completion.d +-- +1.7.3.4 + Added: 0002-distro-install-desktop-integration-do-not-pack-libre.patch =================================================================== --- 0002-distro-install-desktop-integration-do-not-pack-libre.patch (rev 0) +++ 0002-distro-install-desktop-integration-do-not-pack-libre.patch 2011-07-19 04:20:48 UTC (rev 132012) @@ -0,0 +1,25 @@ +From 7b202653f352a6c1bd18066bc71c93b1a5b33c13 Mon Sep 17 00:00:00 2001 +From: Petr Mladek <pmla...@suse.cz> +Date: Mon, 18 Jul 2011 16:48:49 +0200 +Subject: [PATCH 2/3] distro-install-desktop-integration: do not pack libreoffice-base.desktop twice + +--- + bin/distro-install-desktop-integration | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration +index 600c54e..9e3b499 100755 +--- a/bin/distro-install-desktop-integration ++++ b/bin/distro-install-desktop-integration +@@ -148,7 +148,7 @@ add_wrapper lomath soffice "--math" "libreoffice" "libreoffice-mat + add_wrapper loimpress soffice "--impress" "libreoffice" "libreoffice-impress.desktop" "gid_Module_Brand_Prg_Impress" + add_wrapper loweb soffice "--web" "libreoffice" "" "gid_Module_Brand_Prg_Wrt" + add_wrapper lowriter soffice "--writer" "libreoffice" "libreoffice-writer.desktop" "gid_Module_Brand_Prg_Wrt" +-add_wrapper lofromtemplate soffice ".uno:NewDoc" "libreoffice" "libreoffice-base.desktop" "gid_Module_Root_Brand" ++add_wrapper lofromtemplate soffice ".uno:NewDoc" "libreoffice" "" "gid_Module_Root_Brand" + add_wrapper libreoffice soffice "" "libreoffice" "libreoffice-startcenter.desktop" "gid_Module_Root_Brand" + add_wrapper loffice soffice "" "libreoffice" "" "gid_Module_Root_Brand" + add_wrapper unopkg unopkg "" "unopkg" "" "gid_Module_Root_Brand" +-- +1.7.3.4 + Added: 0003-distro-install-fix-en-US-only-installation.patch =================================================================== --- 0003-distro-install-fix-en-US-only-installation.patch (rev 0) +++ 0003-distro-install-fix-en-US-only-installation.patch 2011-07-19 04:20:48 UTC (rev 132012) @@ -0,0 +1,31 @@ +From 72d5c4c3f7d2a5d329eb74fa1d1f69c1fb8c15b9 Mon Sep 17 00:00:00 2001 +From: Petr Mladek <pmla...@suse.cz> +Date: Mon, 18 Jul 2011 16:50:18 +0200 +Subject: [PATCH 3/3] distro-install: fix en-US-only installation + +generate en-US file list when --with-distro="" + +sigh, we should set WITH_LANG=en-US when no language is selected; the empty +string is pretty ugly; unforrunately, many makefile tests check for +this empty variable +--- + configure.in | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/configure.in b/configure.in +index 18f93d2..65813cb 100755 +--- a/configure.in ++++ b/configure.in +@@ -7906,6 +7906,9 @@ for lang in $WITH_LANG ; do + done + # list with substituted ALL + WITH_LANG_LIST=`echo $WITH_LANG | sed "s/ALL/$ALL_LANGS/"` ++# this variable is used only by bin/distro-install-* helper scripts ++# they need a real list of languages ++test -z "$WITH_LANG_LIST" && WITH_LANG_LIST="en-US" + AC_SUBST(ALL_LANGS) + AC_SUBST(WITH_LANG) + AC_SUBST(WITH_LANG_LIST) +-- +1.7.3.4 + Added: 0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch =================================================================== --- 0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch (rev 0) +++ 0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch 2011-07-19 04:20:48 UTC (rev 132012) @@ -0,0 +1,24 @@ +From 2046eaeaaabbc58326066ee37f53cc97ebf679bb Mon Sep 17 00:00:00 2001 +From: Petr Mladek <pmla...@suse.cz> +Date: Mon, 18 Jul 2011 19:47:39 +0200 +Subject: [PATCH 4/4] distro-install-desktop-integration: put $PREFIXDIR/bin/soffice into file list + +--- + bin/distro-install-desktop-integration | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration +index 9e3b499..77ccf3a 100755 +--- a/bin/distro-install-desktop-integration ++++ b/bin/distro-install-desktop-integration +@@ -161,6 +161,7 @@ add_wrapper unopkg unopkg "" "unopkg" "" + # For example, the Novell package mark this symlink as %ghost + # and update it in %post and %postun + ln -sf $INSTALLDIR/program/soffice $DESTDIR$PREFIXDIR/bin/soffice ++test -f $DESTDIR/gid_Module_Root_Brand && echo "$PREFIXDIR/bin/soffice" >>$DESTDIR/gid_Module_Root_Brand + + # create bash completion + mkdir -p $DESTDIR/etc/bash_completion.d +-- +1.7.3.4 + Modified: PKGBUILD =================================================================== --- PKGBUILD 2011-07-18 22:25:34 UTC (rev 132011) +++ PKGBUILD 2011-07-19 04:20:48 UTC (rev 132012) @@ -102,8 +102,12 @@ http://ooo.itc.hu/oxygenoffice/download/libreoffice/b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt buildfix_boost.diff buildfix_ct2n.diff - vbahelper.visibility.patch) - #0001-fix-configure-without-the-optional-translations-modu.patch) + vbahelper.visibility.patch + 0001-distro-install-desktop-integration-work-with-normal-.patch + 0002-distro-install-desktop-integration-do-not-pack-libre.patch + 0003-distro-install-fix-en-US-only-installation.patch + 0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch + scp2-more-reasonable-file-access-rights.diff) noextract=(185d60944ea767075d27247c3162b3bc-unowinreg.dll b4cae0700aa1c2aef7eb7f345365e6f1-translate-toolkit-1.8.1.tar.bz2 7a0dcb3fe1e8c7229ab4fb868b7325e6-mdds_0.5.2.tar.bz2 @@ -201,7 +205,12 @@ 'b7b2d0e04e142f26dd96119c80757d1f' 'bc228237108cab7745897a9f466b6d39' 'eee273f501ff45dc5f1365e78c6d57c0' - '43b145db28e6c0d73578ae6fd35e510d') + '43b145db28e6c0d73578ae6fd35e510d' + '43b0f998073fadfe73960998f69e91cd' + '0f9ab66f54f21708034322819f5e660d' + '0762b379aec0b1ad73c488d383283875' + '274c7d476383d2499e703c938824a78c' + '37638431e7e40baf2e47966ebb9bc0e9') build() { @@ -230,7 +239,11 @@ patch -Np1 -i ${srcdir}/buildfix_boost.diff patch -Np1 -i ${srcdir}/buildfix_ct2n.diff patch -Np0 -i ${srcdir}/vbahelper.visibility.patch - #patch -Np1 -i ${srcdir}/0001-fix-configure-without-the-optional-translations-modu.patch + patch -Np1 -i ${srcdir}/0001-distro-install-desktop-integration-work-with-normal-.patch + patch -Np1 -i ${srcdir}/0002-distro-install-desktop-integration-do-not-pack-libre.patch + patch -Np1 -i ${srcdir}/0003-distro-install-fix-en-US-only-installation.patch + patch -Np1 -i ${srcdir}/0004-distro-install-desktop-integration-put-PREFIXDIR-bin.patch + patch -Np0 -i ${srcdir}/scp2-more-reasonable-file-access-rights.diff # unset C(XX)FLAGS # http://www.openoffice.org/issues/show_bug.cgi?id=103205 @@ -258,7 +271,8 @@ # sed -i '/fields-table-formula.diff/d' patches/dev300/apply || return 1 # fi -# autoconf -v -f + # needed for 0003-distro-install-fix-en-US-only-installation.patch + autoconf -v -f # non-SMP test build # export MAKEFLAGS="-j1" @@ -270,6 +284,7 @@ --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc \ --with-install-dirname="${pkgbase}" --libdir=/usr/lib --mandir=/usr/share/man \ --disable-verbose \ + --with-lang="" \ --enable-cairo\ --enable-crashdump \ --enable-dbus \ @@ -355,8 +370,8 @@ # fake installation to create split file lists mkdir $srcdir/fakeinstall - #make DESTDIR=${srcdir}/fakeinstall distro-pack-install - yes | make DESTDIR=${srcdir}/fakeinstall distro-pack-install + make DESTDIR=${srcdir}/fakeinstall distro-pack-install + #yes | make DESTDIR=${srcdir}/fakeinstall distro-pack-install } #check() { @@ -368,7 +383,7 @@ pkgdesc="common files for LibreOffice - a productivity suite that is compatible with other major office suites" install=${pkgbase}.install - depends=("curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libxaw' "neon>=0.28.6" + depends=('libreoffice-langpack' "curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libxaw' "neon>=0.28.6" 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'libxslt' "icu>=4.6" 'redland' 'hyphen' 'gcc-libs' 'sh' 'libtextcat' #'libgraphite' 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2') # keep gtk2 for install script @@ -401,7 +416,7 @@ replaces=('go-openoffice' 'openoffice-base' 'libreoffice') # remove base.desktop file that belongs to the LibO-base pkg - sed -i '/\/usr\/share\/applications\/libreoffice\-base\.desktop/d' ${srcdir}/build/file-lists/common_list.txt +# sed -i '/\/usr\/share\/applications\/libreoffice\-base\.desktop/d' ${srcdir}/build/file-lists/common_list.txt # create directories from *list.txt file for directory in `grep ^%dir ${srcdir}/build/file-lists/common_list.txt`; do @@ -456,12 +471,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-calc() { @@ -483,12 +492,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-draw() { @@ -510,12 +513,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-gnome() { @@ -537,12 +534,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-impress() { @@ -564,12 +555,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-kde4() { @@ -591,12 +576,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-math() { @@ -618,12 +597,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-sdk() { @@ -659,12 +632,6 @@ -e "s,@OO_SDK_JAVA_HOME@,\$J2SDKDIR," \ -e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \ -e "s,@SDK_AUTO_DEPLOYMENT@,NO," ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk/setsdkenv_unix.{csh,sh}.in - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-sdk-doc() { @@ -689,12 +656,6 @@ #fix permissions find ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk/examples -type f -exec chmod -x {} \; - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-writer() { @@ -716,12 +677,6 @@ # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; } package_libreoffice-en-US() { @@ -730,26 +685,18 @@ replaces=(openoffice-en-US) conflicts=(openoffice-en-US) -# cd "${srcdir}"/LibO_${_dirver}_Linux_x86_langpack-rpm_en-US/RPMS -# mkdir -p "${pkgdir}"/usr/lib/libreoffice -# cp -R opt/libreoffice3.4/* "${pkgdir}"/usr/lib/libreoffice -# chown root:root -R "${pkgdir}"/usr/lib/libreoffice - - # install all remaining files into the pkg from fakeinstall dir - for file in `find $srcdir/fakeinstall`; do + # create directories from *list.txt file + for directory in `grep ^%dir ${srcdir}/build/file-lists/lang_en_US_list.txt`; do + install -dm755 ${pkgdir}/${directory/\%dir/} + done + # install files into the pkg from fakeinstall dir + for file in `grep -v ^%dir $srcdir/build/file-lists/lang_en_US_list.txt`; do dirname=`dirname $file` # check if directory has been already been created - some are missing like manpages [ -d ${pkgdir}/$dirname ] || install -dm755 ${pkgdir}/$dirname # mv file from fakeinstall to pkgdir mv ${srcdir}/fakeinstall${file} ${pkgdir}$file done - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; - } package_libreoffice-extension-barcode() { Modified: libreoffice.install =================================================================== --- libreoffice.install 2011-07-18 22:25:34 UTC (rev 132011) +++ libreoffice.install 2011-07-19 04:20:48 UTC (rev 132012) @@ -14,7 +14,7 @@ echo " the LibreOffice APIs and for creating" echo " extensions (UNO components)." echo "-------------------------------------------------------------------" -echo " * it's recommended to install at least one libreoffice-langpack" +echo " * you need to install at least one libreoffice-langpack" echo " * you may want to pacman -Ss libreoffice-extensions" echo " to see what additional extensions are prepared to install" echo " * it's recommended to install {hunspell,mythes,hyphen}-xx pkg Added: scp2-more-reasonable-file-access-rights.diff =================================================================== --- scp2-more-reasonable-file-access-rights.diff (rev 0) +++ scp2-more-reasonable-file-access-rights.diff 2011-07-19 04:20:48 UTC (rev 132012) @@ -0,0 +1,15 @@ +--- scp2/inc/macros.inc.old 2011-05-18 17:51:47.000000000 +0200 ++++ scp2/inc/macros.inc 2011-07-18 19:58:27.000000000 +0200 +@@ -92,10 +92,10 @@ + #endif + + #define BIN_FILE_BODY \ +- UnixRights = 555 ++ UnixRights = 755 + + #define TXT_FILE_BODY \ +- UnixRights = 444 ++ UnixRights = 644 + + #define USER_FILE_BODY \ + UnixRights = 644