Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=lotesting.git;a=commitdiff;h=8e2dc3c7dfd315c1f7ba84a6ffcd7f9512966e47
commit 8e2dc3c7dfd315c1f7ba84a6ffcd7f9512966e47 Author: Miklos Vajna <vmik...@frugalware.org> Date: Tue May 3 19:48:43 2011 +0200 libreoffice-3.3.99.3-1-i686 - up to 3.4beta3 - major changes in the build script, upstream changed the build system - add patch to fix destdir support - update language list - mono subpkg is gone - handroll wrappers, desktop files, icons and mime types diff --git a/source/xapps/libreoffice/0001-ooinstall-respect-DESTDIR.patch b/source/xapps/libreoffice/0001-ooinstall-respect-DESTDIR.patch new file mode 100644 index 0000000..dddeda9 --- /dev/null +++ b/source/xapps/libreoffice/0001-ooinstall-respect-DESTDIR.patch @@ -0,0 +1,30 @@ +From b9dd2241c60635ba15929ffad9962928460bd3ec Mon Sep 17 00:00:00 2001 +From: Miklos Vajna <vmik...@frugalware.org> +Date: Tue, 3 May 2011 14:27:06 +0200 +Subject: [PATCH] ooinstall: respect DESTDIR + +The problem was that ooinstall just passed -destdir to +make_installer.pl, but before that, it tried to create the root +directory, where it did not respect DESTDIR. + +Signed-off-by: Petr Mladek <pmla...@suse.cz> +--- + solenv/bin/ooinstall | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/solenv/bin/ooinstall b/solenv/bin/ooinstall +index 83717fa..47c06cb 100755 +--- a/solenv/bin/ooinstall ++++ b/solenv/bin/ooinstall +@@ -29,7 +29,7 @@ for $arg (@ARGV) { + $help = 1; + } else { + # Cwd::realpath does not work if the path does not exist +- mkpath($arg) unless -d $arg; ++ mkpath($ENV{DESTDIR} . $arg) unless -d $ENV{DESTDIR} . $arg; + $path = Cwd::realpath( $arg ); + } + } +-- +1.7.4.4 + diff --git a/source/xapps/libreoffice/FrugalBuild b/source/xapps/libreoffice/FrugalBuild index 31dbfc9..818a82a 100644 --- a/source/xapps/libreoffice/FrugalBuild +++ b/source/xapps/libreoffice/FrugalBuild @@ -8,8 +8,8 @@ USE_DEVEL=${USE_DEVEL:-"n"} pkgname=libreoffice if ! Fuse $USE_DEVEL; then - pkgver=3.3.2.2 - pkgrel=2 + pkgver=3.3.99.3 + pkgrel=1 else pkgver=3.3.2.2 pkgrel=1 @@ -17,7 +17,7 @@ fi pkgdesc="LibreOffice Productivity Suite, a fork of OpenOffice.org." url="http://www.documentfoundation.org/download/" _F_gnome_desktop="y" -Finclude gnome-scriptlet mono kde +Finclude gnome-scriptlet kde unset install depends=('libxml2' 'libart_lgpl' 'libsndfile' 'openjre' 'nas' 'fontconfig' 'libpng>=1.4.1' 'imagemagick' \ 'flex' 'neon>=0.26.1' 'bison' 'zip' 'unzip' 'expat' 'cups' 'desktop-file-utils' 'perl-archive-zip' \ @@ -30,71 +30,63 @@ makedepends=('curl>=7.20.0-2' 'intltool' 'tcsh' 'ecj' 'apache-ant' \ 'patch>=2.5.9' 'openclipart' 'xorg-server' 'gstreamer>=0.10.30-2' 'gst-plugins-base' \ 'procps' 'openldap' 'gperf' 'xulrunner' 'kdelibs-compiletime' 'libwps' \ 'libwpg' 'mdbtools' 'mdds' 'junit' 'lucene' 'cppunit' 'hsqldb' 'bsh' 'vigra' \ - 'mythes' 'hyphen') + 'mythes' 'hyphen' 'translate-toolkit' 'urw-fonts') groups=('xapps') archs=('i686' 'x86_64') replaces=('ooextras') mirror="http://download.documentfoundation.org/libreoffice/src/" -_F_archive_name="libreoffice-build" +_F_archive_name="libreoffice-bootstrap" up2date="Flasttar $mirror" modules=('artwork' 'base' 'bootstrap' 'calc' 'components' 'extensions' 'extras' 'filters' 'help' - 'impress' 'l10n' 'libs-core' 'libs-extern-sys' + 'impress' 'translations' 'libs-core' 'libs-extern-sys' 'libs-extern' 'libs-gui' 'postprocess' 'sdk' 'testing' - 'ure' 'writer' 'build') + 'ure' 'writer') source=() +ext=bz2 for i in ${modules[@]} do - [ $i == build ] && ext=gz || ext=bz2 source=(${source[@]} $mirror/libreoffice-$i-$pkgver.tar.$ext) signatures=(${signatures[@]} $mirror/libreoffice-$i-$pkgver.tar.$ext.asc) done -source=(${source[@]} http://tools.openoffice.org/unowinreg_prebuild/680/unowinreg.dll) -signatures=("${signatures[@]}" '') -ext_source=(18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz \ - fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz \ - ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip \ - 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz \ - 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip \ - 35c94d2df8893241173de1d16b6034c0-swingExSrc.zip \ - cf8a6967f7de535ae257fa411c98eb88-mdds_0.3.0.tar.bz2) +ext_source=(http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll \ + http://hg.services.openoffice.org/binaries/18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz \ + http://hg.services.openoffice.org/binaries/fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz \ + http://hg.services.openoffice.org/binaries/ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip \ + http://hg.services.openoffice.org/binaries/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz \ + http://hg.services.openoffice.org/binaries/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip \ + http://hg.services.openoffice.org/binaries/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip \ + http://hg.services.openoffice.org/binaries/17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip) for i in ${ext_source[@]} do - source=(${source[@]} http://hg.services.openoffice.org/binaries/$i) - signatures=("${signatures[@]}" '') -done -go_oo_source=(extras-3.1.tar.bz2 biblio.tar.bz2) -for i in ${go_oo_source[@]} -do - source=(${source[@]} http://download.go-oo.org/SRC680/$i) + source=(${source[@]} $i) signatures=("${signatures[@]}" '') done -NOEXTRACT=1 +source=(${source[@]} 0001-ooinstall-respect-DESTDIR.patch) +signatures=("${signatures[@]}" '') options=(${options[@]} 'scriptlet') -subpkgs=("$pkgname-kde" "$pkgname-gnome" "$pkgname-sdk" "$pkgname-mono" "$pkgname-mozilla") +subpkgs=("$pkgname-kde" "$pkgname-gnome" "$pkgname-sdk" "$pkgname-mozilla") subdescs=("$pkgname kde integration" "$pkgname gnome integration" \ - "The $pkgname Software Development Kit" "$pkgname mono integration" \ + "The $pkgname Software Development Kit" \ "$pkgname mozilla integration") subdepends=("kdelibs>=$_F_kde_ver" \ "gnome-vfs libbonobo evolution-data-server-ldap" \ "openjdk>=6" \ - "mono" \ "") subrodepends=("$pkgname=$pkgver" \ "$pkgname=$pkgver" \ "$pkgname=$pkgver" \ - "$pkgname=$pkgver" \ "$pkgname=$pkgver") -subarchs=('i686 x86_64' 'i686 x86_64' 'i686 x86_64' 'i686 x86_64' 'i686 x86_64') -subgroups=('kde-extra' 'gnome-extra' 'devel-extra' 'devel-extra' 'xapps') -subinstall=("" "$_F_gnome_scriptlet" "" "" "") +subarchs=('i686 x86_64' 'i686 x86_64' 'i686 x86_64' 'i686 x86_64') +subgroups=('kde' 'gnome' 'devel-extra' 'xapps') +subinstall=("" "$_F_gnome_scriptlet" "" "") # sed ':a;N;$!ba;s/\\\n//g' solenv/inc/postset.mk|grep ^completelangiso=|sed 's/completelangiso=//;s/en-US //' -completelangiso=(af ar as ast be-BY bo bg br brx bn bs ca ca-XV cs cy da - de dgo dz el en-GB en-ZA eo es et eu fa fi fr ga gl gu he hi hr hu id is - it ja ka kk km kn ko kok ks ku lo lt lv mai mk mn mni ml mr my ne nb nl - nn nr ns om oc or pa-IN pl pt pt-BR ro ru rw sat sa-IN si sd sq sk sl sh +completelangiso=(af ar as ast be bo bg br brx bn bs ca ca-XV cs cy da de + dgo dz el en-GB en-ZA eo es et eu fa fi fr ga gl gu he hi hr hu id is it + ja ka kk km kn ko kok ks ku lo lt lv mai mk mn mni ml mr my ne nb nl nn + nr nso om oc or pa-IN pl pt pt-BR ro ru rw sat sa-IN si sd sq sk sl sh sr ss st sv sw-TZ te ta th tn tr ts tg ug uk uz ve vi xh zh-CN zh-TW zu) # for i in ${completelangiso[@]}; do echo -n "'$(grep -1 STR_NAME_MODULE_LANGPACK_$(echo $i|tr '[a-z]' '[A-Z]'|tr '-' '_') scp2/source/ooo/module_langpack.ulf|sed -n 's/.*"\(.*\)"/\1/;$ p')' "; done completelangdescs=('Afrikaans' 'Arabic' 'Assamese' 'Asturian' 'Belarusian' @@ -123,7 +115,7 @@ fi i=0 while [ $i -lt ${#completelangiso[@]} ] do - subpkgs=("${subpkgs[@]}" "$pkgname-l10n-`echo ${completelangiso[$i]}|tr [A-Z] [a-z]`") + subpkgs=("${subpkgs[@]}" "$pkgname-l10n-`echo ${completelangiso[$i]}|tr '[A-Z]' '[a-z]'`") subdescs=("${subdescs[@]}" "Installs ${completelangdescs[$i]} support in LibreOffice") subinstall=("${subinstall[@]}" '') subdepends=("${subdepends[@]}" "") @@ -135,13 +127,16 @@ done build() { - Fmonoexport - Fextract libreoffice-build-$pkgver.tar.gz - Fcd libreoffice-build-$pkgver - for i in $Fsrcdir/libreoffice-* - do - ln -sf $i src/ - done + Fcd libreoffice-bootstrap-$pkgver + Fpatchall + + # Check for missing language packs. + langfile="solenv/inc/postset.mk" + langs=$(sed ':a;N;$!ba;s/\\\n//g' $langfile|grep ^completelangiso=|sed 's/completelangiso=//;s/en-US //') + if [ "$langs" != "${completelangiso[*]}" ]; then + Fmessage "Update completelangiso, '$langs' != '${completelangiso[*]}'" + return 1 + fi # SMP build if [ ! -z "$MAKEFLAGS" ]; then @@ -149,88 +144,91 @@ build() unset MAKEFLAGS fi - # Other options. - # FIXME --with-openclipart=/usr/share/openclipart does not fail, - # but slows down the build at the moment and in the end it does - # not do anything, so disable it for now. - # mono-2.8 and mdds-0.5 are not yet supported - Fconfopts="$Fconfopts \ - --with-distro=Frugalware \ - --with-gcc-speedup=ccache \ - --with-binsuffix=no \ - --with-installed-ooo-dirname=$pkgname\ - --with-system-cairo \ - --with-system-libwpd \ - --with-system-libwps \ - --with-system-libwpg \ - --with-system-mdbtools \ - --without-system-mdds \ - --disable-mono" - # Optimize build. export ARCH_FLAGS="$CFLAGS" - Fconf --with-lang="en-US ${completelangiso[*]}" - # avoid problems with ixion for now - sed -i '/fields-table-formula.diff/d' patches/dev300/apply || return 1 - mkdir -p src - for i in ${go_oo_source[@]} - do - ln -sf $Fsrcdir/$i src/ - done - mkdir -p ext_source - for i in ${ext_source[@]} - do - ln -sf $Fsrcdir/$i ext_source/ - done - ln -sf $Fsrcdir/unowinreg.dll ext_source/185d60944ea767075d27247c3162b3bc-unowinreg.dll + _F_conf_notry=build + # FIXME --with-openclipart=/usr/share/openclipart does not fail, + # but slows down the build at the moment and in the end it does + # not do anything, so disable it for now. + Fconf --with-vendor="Frugalware Linux" \ + --with-lang="en-US ${completelangiso[*]}" \ + --with-jdk-home=$JAVA_HOME \ + --with-java-target-version=1.5 \ + --disable-kde \ + --enable-kde4 \ + --enable-crashdump=yes \ + --enable-symbols \ + --enable-cairo \ + --enable-xsltproc \ + --disable-rpath \ + --disable-qadevooo \ + --without-fonts \ + --disable-ldap \ + --with-system-mozilla=mozilla \ + --with-system-libs \ + --with-system-headers \ + --without-system-saxon \ + --without-system-hsqldb \ + --with-external-tar=`pwd`/ext_source \ + --without-afms \ + --with-system-libtextcat \ + --with-system-libtextcat-data \ + --with-system-translate-toolkit \ + --with-system-dicts \ + --with-external-dict-dir=/usr/share/myspell \ + --without-myspell-dicts \ + --disable-graphite - # make patch be less strict - Fsed '--fuzz=0 ' '' patches/apply.pl + if [ ! -e src.downloaded ]; then - # Check for missing language packs. - make unpack || return 1 - langfile="build/libreoffice*/solenv/inc/postset.mk" - langs=$(sed ':a;N;$!ba;s/\\\n//g' $langfile|grep ^completelangiso=|sed 's/completelangiso=//;s/en-US //') - if [ "$langs" != "${completelangiso[*]}" ]; then - Fmessage "Update completelangiso, '$langs' != '${completelangiso[*]}'" - return 1 + for i in ${modules[@]} + do + [ "$i" == "bootstrap" ] && continue + for j in ../libreoffice-$i-$pkgver/* + do + (cd ../libreoffice-$i-$pkgver/; tar c $(basename $j)) | tar x || return 1 + done + done + mkdir -p ext_source + for i in ${ext_source[@]} + do + f=$(strip_url $i) + ln -sf $Fsrcdir/$f ext_source/$f + done fi + touch src.downloaded - # on failure make a stab at rebuilding un-parallel - if ! make; then - Fsed "^MAX_JOBS=.*" "MAX_JOBS='1'" bin/setup + if [ ! -e src.built ]; then make || return 1 fi + touch src.built - Fmakeinstall + make DESTDIR=$Fdestdir install || return 1 - # Install artwork - cat src/openintro_fw.png > $Fdestdir/usr/lib/$pkgname/program/intro.png - cat src/openabout_fw.png > $Fdestdir/usr/lib/$pkgname/program/about.png - Fsed 'ProgressPosition=164,225' 'ProgressPosition=116,195' $Fdestdir/usr/lib/libreoffice/program/sofficerc + # Install wrappers, desktop files, icons and mime types + Fwrapper '/usr/lib/libreoffice/program/soffice "$@"' libreoffice + Fwrapper '/usr/lib/libreoffice/program/soffice --base "$@"' lobase + Fwrapper '/usr/lib/libreoffice/program/soffice --calc "$@"' localc + Fwrapper '/usr/lib/libreoffice/program/soffice --draw "$@"' lodraw + Fwrapper '/usr/lib/libreoffice/program/soffice --impress "$@"' loimpress + Fwrapper '/usr/lib/libreoffice/program/soffice --math "$@"' lomath + Fwrapper '/usr/lib/libreoffice/program/soffice --writer "$@"' lowriter + Fln /usr/lib/libreoffice/program/soffice /usr/bin/soffice + Fwrapper '/usr/lib/libreoffice/program/unopkg "$@"' unopkg - # Use desktop files from sysui, those have correct - # lowriter instead of non-existing oowriter, etc. - for i in $Fdestdir/usr/share/applications/*.desktop + cd $Fdestdir/usr/lib/libreoffice/share/xdg + Fmkdir /usr/share/{applications,icons} + for i in base calc draw impress math writer do - file=$(basename $i) - if [ -e $Fdestdir/usr/lib/libreoffice/share/xdg/$file ]; then - Fln /usr/lib/libreoffice/share/xdg/$file /usr/share/applications/$file - fi - done - # Use libreoffice-gulls instead of non-existing libreoffice-startcenter icon - Fsed 'libreoffice-startcenter' 'libreoffice-gulls' $Fdestdir/usr/lib/libreoffice/share/xdg/startcenter.desktop - for i in $Fdestdir/usr/share/pixmaps/ooo-* - do - mv $i $(echo $i|sed 's/ooo/libreoffice/') || return 1 + Fsed 'Icon=libreoffice-' 'Icon=' $Fdestdir/usr/lib/libreoffice/share/xdg/$i.desktop + Fln /usr/lib/libreoffice/share/xdg/$i.desktop /usr/share/applications/$i.desktop done + cd - - # Permission fixes - find $Fdestdir/usr/lib/$pkgname/program -name "*.so" ! -perm 755 -exec chmod 755 {} \; + cp -r sysui/desktop/icons/{hi,lo}color $Fdestdir/usr/share/icons || return 1 - # Fix invalid hardwired mktemp path in unopkg - Fsed /bin/mktemp mktemp $Fdestdir/usr/lib/$pkgname/program/unopkg + Ffilerel sysui/unxlngi6.pro/misc/libreoffice/openoffice.org.xml /usr/share/mime/packages/libreoffice.xml # Enable and split the mozilla plugin Fmkdir /usr/lib/mozilla/plugins @@ -243,48 +241,34 @@ build() for i in "${completelangiso[@]}" do # en-GB -> en-gb - spkg=`echo $i|tr [A-Z] [a-z]` + spkg=`echo $i|tr '[A-Z]' '[a-z]'` # en-GB -> en_GB upkg=`echo $i|sed 's/-/_/g'` - for j in $(grep -v '^%dir' build/lang_${upkg}_list.txt) + for j in $(grep -h -v '^%dir' $Fdestdir/gid_Module_*pack_*_$upkg) do if [ -e $Fdestdir/$j ]; then Fsplit $pkgname-l10n-$spkg $j fi done - rm build/lang_${upkg}_list.txt done ## Split KDE stuff - Fsplit $pkgname-kde $(grep -v '^%dir' build/kde4_list.txt) - rm build/kde4_list.txt - # We don't want a kde3 subpackage - [ -e build/kde_list.txt ] && rm build/kde_list.txt + echo /usr/lib/libreoffice/basis3.4/program/fps_kde4.uno.so >> $Fdestdir/gid_Module_Optional_Kde + echo /usr/lib/libreoffice/basis3.4/program/libvclplug_kde4li.so >> $Fdestdir/gid_Module_Optional_Kde + Fsplit $pkgname-kde $(grep -v '^%dir' $Fdestdir/gid_Module_Optional_Kde|sort -u) ## Split GNOME stuff - Fsplit $pkgname-gnome $(grep -v '^%dir' build/gnome_list.txt) - rm build/gnome_list.txt + sed -i '/ucpgvfs1.uno.so/d' $Fdestdir/gid_Module_Optional_Gnome + echo /usr/lib/libreoffice/basis3.4/program/fps_gnome.uno.so >> $Fdestdir/gid_Module_Optional_Gnome + echo /usr/lib/libreoffice/basis3.4/program/libvclplug_gtkli.so >> $Fdestdir/gid_Module_Optional_Gnome + Fsplit $pkgname-gnome $(grep -v '^%dir' $Fdestdir/gid_Module_Optional_Gnome|sort -u) Fbuild_gnome_scriptlet # Split SDK - Fsplit $pkgname-sdk $(grep -v '^%dir' build/sdk_list.txt) - rm build/sdk_list.txt - Fsplit $pkgname-sdk $(grep -v '^%dir' build/sdk_doc_list.txt) - rm build/sdk_doc_list.txt - - # Split Mono - Fsplit $pkgname-mono $(grep -v '^%dir' build/mono_list.txt) - rm build/mono_list.txt + Fsplit $pkgname-sdk $(grep -v '^%dir' $Fdestdir/gid_Module_Root_SDK|sort -u) - # Check for missing subpkgs. - # It's OK not to split these - rm build/{common,lang_en_US,nld}_list.txt - misspkgs="`find build -maxdepth 1 -name '*_list.txt'`" - if [ -n "$misspkgs" ]; then - Fmessage "Unsplit subpkgs: $misspkgs" - return 1 - fi - Fmonocleanup + # It's OK not to split the rest + rm -f $Fdestdir/gid_* } # optimization OK _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git