#!/bin/sh ## create split package dirs out of LibreOffices gid_* files ## copied from former ooo-build/libreoffice-build package-ooo ## (c) 2005 Chris Halls ## (c) 2005-2011 Rene Engelhard export OODESTDIR=$DESTDIR cd $DESTDIR echo "Copying gid files...." rm gid_* cp $DESTDIR/../../file-lists/orig/gid_* . echo "Creating package directories..." test -d pkg && rm -r pkg || : # Create package tree (needed by Debian's dpkg) # create_package_directory create_package_directory() { listfile=$1 directory="$2" perl -nl \ -e " if(/^%dir (.*)/) {system('mkdir', '-p', '-m', '755', \"$directory\".\$1);} else {rename('./'.\$_, \"$directory\".\$_);} " \ $listfile } # move_wrappers [...] move_wrappers() { directory=$1 shift mkdir -m755 -p "$directory"/usr/bin while test -n "$1"; do mv usr/*bin/"$1$BINSUFFIX" "$directory"/usr/bin shift done } create_package_directory gid_Module_Root_Ure_Hidden pkg/ure create_package_directory gid_Module_Root pkg/libreoffice-common create_package_directory gid_Module_Root_Brand pkg/libreoffice-common # done by dh_installman #mkdir -p pkg/libreoffice-common/usr/share/man/man1 #mv usr/share/man/man1/libreoffice$BINSUFFIX.1.gz \ # pkg/libreoffice-common/usr/share/man/man1 #for i in ./usr/share/man/man1/*; do \ # if [ "$i" = "unopkg.1.gz" -o "$i" = "lofromtemplate.1.gz" \ # -o "$i" = "loffice.1.gz" ]; then p=common; \ # else p=`basename $i .1.gz | sed -e s/^lo//`; \ # fi # mkdir -p pkg/libreoffice-$p/usr/share/man/man1 # mv $i \ # pkg/libreoffice-$p/usr/share/man/man1 #done for i in ./usr/share/applications/*.desktop; do \ if [ "`basename $i`" = "libreoffice-startcenter.desktop" ]; then p=libreoffice-common; \ elif [ "`basename $i`" = "libreoffice-xsltfilter.desktop" ]; then p=libreoffice-common; \ else p=`basename $i .desktop`; fi mkdir -p pkg/$p/usr/share/applications mv $i \ pkg/$p/usr/share/applications done mkdir -p pkg/libreoffice-common/usr/share mv ./usr/share/icons \ pkg/libreoffice-common/usr/share mv ./usr/share/application-registry \ pkg/libreoffice-common/usr/share mv ./usr/share/mime* \ pkg/libreoffice-common/usr/share create_package_directory gid_Module_Root_Files_Images pkg/libreoffice-common create_package_directory gid_Module_Oo_Linguistic pkg/libreoffice-common create_package_directory gid_Module_Optional_Xsltfiltersamples pkg/libreoffice-common create_package_directory gid_Module_Filter pkg/libreoffice-common create_package_directory gid_Module_Optional_Grfflt pkg/libreoffice-draw create_package_directory gid_Module_Prg_Calc_Bin pkg/libreoffice-calc create_package_directory gid_Module_Prg_Math_Bin pkg/libreoffice-math create_package_directory gid_Module_Prg_Draw_Bin pkg/libreoffice-draw create_package_directory gid_Module_Prg_Wrt_Bin pkg/libreoffice-writer create_package_directory gid_Module_Prg_Impress_Bin pkg/libreoffice-impress create_package_directory gid_Module_Prg_Base_Bin pkg/libreoffice-base create_package_directory gid_Module_Brand_Prg_Calc pkg/libreoffice-calc create_package_directory gid_Module_Brand_Prg_Math pkg/libreoffice-math create_package_directory gid_Module_Brand_Prg_Draw pkg/libreoffice-draw create_package_directory gid_Module_Brand_Prg_Wrt pkg/libreoffice-writer create_package_directory gid_Module_Brand_Prg_Impress pkg/libreoffice-impress create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base create_package_directory gid_Module_Pyuno pkg/python3-uno create_package_directory gid_Module_Optional_Pyuno_LibreLogo pkg/libreoffice-librelogo create_package_directory gid_Module_Script_Provider_For_Python pkg/libreoffice-script-provider-python create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome create_package_directory gid_Module_Optional_Kde pkg/libreoffice-kde create_package_directory gid_Module_Optional_OGLTrans pkg/libreoffice-impress create_package_directory gid_Module_Root_SDK pkg/libreoffice-dev # WTF? Why is this suddently not installed itself? mv usr/lib/libreoffice/sdk/lib \ pkg/libreoffice-dev/usr/lib/libreoffice/sdk create_package_directory gid_Module_Optional_Extensions_Script_Provider_For_BS pkg/libreoffice-script-provider-bsh create_package_directory gid_Module_Optional_Extensions_Script_Provider_For_JS pkg/libreoffice-script-provider-js create_package_directory gid_Module_Optional_Extensions_MEDIAWIKI pkg/libreoffice-wiki-publisher create_package_directory gid_Module_Optional_Extensions_NLPSolver pkg/libreoffice-nlpsolver create_package_directory gid_Module_Pdfimport pkg/libreoffice-common create_package_directory gid_Module_Reportbuilder pkg/libreoffice-report-builder create_package_directory gid_Module_Optional_PostgresqlSdbc pkg/libreoffice-sdbc-postgresql create_package_directory gid_Module_Libreofficekit pkg/libreofficekit-data move_wrappers pkg/libreoffice-common soffice unopkg move_wrappers pkg/libreoffice-common libreoffice loffice lofromtemplate move_wrappers pkg/libreoffice-base lobase move_wrappers pkg/libreoffice-writer lowriter loweb move_wrappers pkg/libreoffice-calc localc move_wrappers pkg/libreoffice-impress loimpress move_wrappers pkg/libreoffice-math lomath move_wrappers pkg/libreoffice-draw lodraw for l in `echo $OOO_LANGS_LIST`; do for p in Impress Draw Math Calc Base Writer; do create_package_directory gid_Module_Langpack_${p}_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l done create_package_directory gid_Module_Langpack_Basis_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l create_package_directory gid_Module_Langpack_Brand_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l create_package_directory gid_Module_Langpack_Resource_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l if [ -f gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` ]; then create_package_directory gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` pkg/libreoffice-help-$l fi # some help files are in _Langpack_{Writer,Impress,...}_ # move them from -l10n to -help if [ "$l" = "en-US" ]; then d=en; else d=$l; fi mv pkg/libreoffice-l10n-$l/$OOINSTBASE/help/$d/* \ pkg/libreoffice-help-$l/$OOINSTBASE/help/$d && \ rmdir pkg/libreoffice-l10n-$l/$OOINSTBASE/help/$d done # Move all libraries and binaries from -common to -core if [ ! -d $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program ]; then \ mkdir -p $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program; \ fi && ( cd pkg/libreoffice-common/$OOINSTBASE/program find -maxdepth 1 \ -regex '\./\(.*\.so.*\|.*\.bin\|pagein.*\|kdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|oosplash\|uri-encode\|xpdfimport\|ui-previewer\|opencltest\)' \ -exec mv {} $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program \; ); for i in types services; do \ if [ ! -d $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program/$i ]; then \ mkdir -p $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program/$i; \ fi && ( cd pkg/libreoffice-common/$OOINSTBASE/program/$i find -maxdepth 1 \ -regex '\./\(.*\.rdb\)' \ -exec mv {} $OODESTDIR/pkg/libreoffice-core/$OOINSTBASE/program/$i \; ); \ done mkdir -p pkg/libreoffice-common/usr/share/bash-completion/completions mv usr/share/bash-completion/completions/libreoffice$BINSUFFIX.sh \ pkg/libreoffice-common/usr/share/bash-completion/completions/libreoffice$BINSUFFIX mv .$OOINSTBASE/program/java-set-classpath \ pkg/libreoffice-common/$OOINSTBASE/program if echo $OOO_LANGS_LIST | grep -q en-US; then for i in forms/resume.ott officorr/project-proposal.ott; do \ mkdir -p pkg/libreoffice-common/$OOINSTBASE/share/template/en-US/`dirname $i`; \ mv .$OOINSTBASE/share/template/en-US/$i \ pkg/libreoffice-common/$OOINSTBASE/share/template/en-US/$i; \ done; \ fi # Warn for any remaining files find . -path './pkg' -prune -o -not -name 'gid_Module_*' -not -type d -exec echo "File not packaged: {}" \;