[Libreoffice-commits] "Do not hard code /usr"
Stephan Bergmann
sbergman at redhat.com
Thu Jun 12 01:52:54 PDT 2014
The below breaks e. g. Linux --with-package-format=rpm builds (cf.
<http://tinderbox.libreoffice.org/cgi-bin/gunzip.cgi?tree=MASTER&full-log=1402500005.29267>),
because e. g. sysui/desktop/freedesktop/freedesktop-menus.spec still
assumes *.desktop files at /usr/share/applications while
sysui/desktop/share/create_tree.sh now assumes them at
${PREFIXDIR}/share/applications, where configure.ac gives
PREFIXDIR=/usr/local at least for me.
No idea what the right fix is, whether the sysui/desktop/ *.specs need
to be adapted to PREFIXDIR or whether those /usr/share paths should be
left hardcoded.
Stephan
On 06/11/2014 03:42 PM, Baptiste Daroussin wrote:
> bin/distro-install-desktop-integration | 1 +
> sysui/desktop/share/create_tree.sh | 20 ++++++++++----------
> 2 files changed, 11 insertions(+), 10 deletions(-)
>
> New commits:
> commit d2cc121e0798a007a6e0409b09c16ce747ab959f
> Author: Baptiste Daroussin <bapt at FreeBSD.org>
> Date: Wed Jun 11 11:04:07 2014 +0200
>
> Do not hard code /usr
>
> Not all operation system install packages into /usr, make sure
> create-tree.sh do respect the PREFIX variable
>
> Change-Id: Iff358c9e22fb8969afaef2bb96e1f91eb7e91123
> Reviewed-on: https://gerrit.libreoffice.org/9730
> Tested-by: Michael Stahl <mstahl at redhat.com>
> Reviewed-by: Michael Stahl <mstahl at redhat.com>
>
> diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration
> index 40ad98c..4cf652d 100755
> --- a/bin/distro-install-desktop-integration
> +++ b/bin/distro-install-desktop-integration
> @@ -113,6 +113,7 @@ sed -i \
> export ICON_SOURCE_DIR=$builddir/sysui/desktop/icons
> export PRODUCTVERSION=
> export KDEMAINDIR=$PREFIXDIR
> + export PREFIXDIR=${PREFIXDIR}
> export GNOMEDIR=$PREFIXDIR
> export GNOME_MIME_THEME=hicolor
> bash ./create_tree.sh
> diff --git a/sysui/desktop/share/create_tree.sh b/sysui/desktop/share/create_tree.sh
> index 2221a46..c6be0bb 100755
> --- a/sysui/desktop/share/create_tree.sh
> +++ b/sysui/desktop/share/create_tree.sh
> @@ -57,33 +57,33 @@ if [ "${GNOMEDIR}" ]; then
> chmod 0644 "${DESTDIR}/${GNOMEDIR}/share/application-registry/${PREFIX}".*
> fi
>
> -mkdir -p "${DESTDIR}/usr/bin"
> +mkdir -p "${DESTDIR}/${PREFIXDIR}/bin"
>
> test -n "${OFFICE_PREFIX}" && office_prefix="${OFFICE_PREFIX}" || office_prefix=/opt
> office_root=${office_prefix}/${PREFIX}
>
> #this symlink is needed to have the API boostrap functions running right
> -ln -sf "${office_root}/program/soffice" "${DESTDIR}/usr/bin/${PREFIX}"
> +ln -sf "${office_root}/program/soffice" "${DESTDIR}/${PREFIXDIR}/bin/${PREFIX}"
>
> if test "${PREFIX}" != libreoffice${PRODUCTVERSION} -a "${PREFIX}" != libreofficedev${PRODUCTVERSION} ; then
> # compat symlinks
> mkdir -p "${DESTDIR}${office_prefix}"
> ln -sf libreoffice${PRODUCTVERSION} "${DESTDIR}${office_root}"
> - ln -sf /usr/bin/${PREFIX} "${DESTDIR}/usr/bin/libreoffice${PRODUCTVERSION}"
> + ln -sf /${PREFIXDIR}/bin/${PREFIX} "${DESTDIR}/${PREFIXDIR}/bin/libreoffice${PRODUCTVERSION}"
> fi
>
> test "${PREFIX}" = libreofficedev${PRODUCTVERSION} && mime_def_file="libreofficedev${PRODUCTVERSION}.xml" || mime_def_file="libreoffice${PRODUCTVERSION}.xml"
> -mkdir -p "${DESTDIR}/usr/share/mime/packages"
> -cp openoffice.org.xml "${DESTDIR}/usr/share/mime/packages/$mime_def_file"
> -chmod 0644 "${DESTDIR}/usr/share/mime/packages/$mime_def_file"
> +mkdir -p "${DESTDIR}/${PREFIXDIR}/share/mime/packages"
> +cp openoffice.org.xml "${DESTDIR}/${PREFIXDIR}/share/mime/packages/$mime_def_file"
> +chmod 0644 "${DESTDIR}/${PREFIXDIR}/share/mime/packages/$mime_def_file"
>
> -mkdir -p "${DESTDIR}/usr/share/applications"
> +mkdir -p "${DESTDIR}/${PREFIXDIR}/share/applications"
> for i in `cat launcherlist`; do
> - ln -sf "${office_root}/share/xdg/${i}" "${DESTDIR}/usr/share/applications/${PREFIX}-${i}"
> + ln -sf "${office_root}/share/xdg/${i}" "${DESTDIR}/${PREFIXDIR}/share/applications/${PREFIX}-${i}"
> done
>
> -mkdir -p "${DESTDIR}/usr/share/appdata"
> +mkdir -p "${DESTDIR}/${PREFIXDIR}/share/appdata"
> for i in base calc draw impress writer; do
> - cp "${APPDATA_SOURCE_DIR}/libreoffice-${i}.appdata.xml" "${DESTDIR}/usr/share/appdata/${PREFIX}-${i}.appdata.xml"
> + cp "${APPDATA_SOURCE_DIR}/libreoffice-${i}.appdata.xml" "${DESTDIR}/${PREFIXDIR}/share/appdata/${PREFIX}-${i}.appdata.xml"
> done
>
More information about the LibreOffice
mailing list