From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C456E13835A for ; Sun, 27 Sep 2020 17:35:03 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id CB158E0798; Sun, 27 Sep 2020 17:35:02 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 9DC8DE0798 for ; Sun, 27 Sep 2020 17:35:02 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id D12A133BED9 for ; Sun, 27 Sep 2020 17:35:00 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4994B36F for ; Sun, 27 Sep 2020 17:34:59 +0000 (UTC) From: "Andreas Sturmlechner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" Message-ID: <1601228075.5b335dc89970d19a8539a7d5eaa5dcdc1a51b7cb.asturm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-office/libreoffice/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-office/libreoffice/libreoffice-6.4.9999.ebuild app-office/libreoffice/libreoffice-9999.ebuild X-VCS-Directories: app-office/libreoffice/ X-VCS-Committer: asturm X-VCS-Committer-Name: Andreas Sturmlechner X-VCS-Revision: 5b335dc89970d19a8539a7d5eaa5dcdc1a51b7cb X-VCS-Branch: master Date: Sun, 27 Sep 2020 17:34:59 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: aec300c2-3e0a-47fe-aaa7-ed149aecc3d7 X-Archives-Hash: e63ea7a97accbbd52bdb822c929427f3 commit: 5b335dc89970d19a8539a7d5eaa5dcdc1a51b7cb Author: Andreas Sturmlechner gentoo org> AuthorDate: Thu Aug 6 21:39:59 2020 +0000 Commit: Andreas Sturmlechner gentoo org> CommitDate: Sun Sep 27 17:34:35 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b335dc8 app-office/libreoffice: Link python bridge in site-packages, drop patch Essentially syncing with openSUSE changes. - Obsolete patching of officehelper.py, uno.py not to break tests, use heredoc - Obsolete patching of soffice.sh by symlinking py files to site-packages - Fix finding pyuno by reshuffling imports - Fix URE_BOOTSTRAP path (bug in v1 of this patch), thanks to dilfridge Reported-by: Jan Psota gmail.com> Closes: https://bugs.gentoo.org/667802 Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Andreas Sturmlechner gentoo.org> app-office/libreoffice/libreoffice-6.4.9999.ebuild | 34 +++++++++++++++++----- app-office/libreoffice/libreoffice-9999.ebuild | 34 +++++++++++++++++----- 2 files changed, 54 insertions(+), 14 deletions(-) diff --git a/app-office/libreoffice/libreoffice-6.4.9999.ebuild b/app-office/libreoffice/libreoffice-6.4.9999.ebuild index 6f4a72b4e47..52876b5d2f1 100644 --- a/app-office/libreoffice/libreoffice-6.4.9999.ebuild +++ b/app-office/libreoffice/libreoffice-6.4.9999.ebuild @@ -265,7 +265,6 @@ PATCHES=( # "${WORKDIR}"/${PATCHSET/.tar.xz/} # not upstreamable stuff - "${FILESDIR}/${PN}-5.4-system-pyuno.patch" "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" "${FILESDIR}/${PN}-6.1-nomancompress.patch" @@ -333,12 +332,6 @@ src_prepare() { # hack in the autogen.sh touch autogen.lastrun - # system pyuno mess - sed -i \ - -e "s:%eprefix%:${EPREFIX}:g" \ - -e "s:%libdir%:$(get_libdir):g" \ - pyuno/source/module/uno.py \ - pyuno/source/officehelper.py || die # sed in the tests sed -i \ -e "s#all : build unitcheck#all : build#g" \ @@ -555,6 +548,33 @@ src_install() { # bug 703474 insinto /usr/include doins -r include/LibreOfficeKit + + local lodir=/usr/$(get_libdir)/libreoffice + # patching this would break tests + cat <<-EOF > "${T}"/uno.py +import sys, os +sys.path.append('${EPREFIX}${lodir}/program') +os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') +EOF + sed -e "/^import sys/d" -e "/^import os/d" \ + -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" + cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die + cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die + + # more system pyuno mess + sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ + -i "${D}"${lodir}/program/officehelper.py || die + + python_optimize "${D}"${lodir}/program + # link python bridge in site-packages, bug 667802 + local py pyc loprogdir=$(get_libdir)/libreoffice/program + for py in uno.py unohelper.py officehelper.py; do + dosym ../../../${loprogdir}/${py} $(python_get_sitedir)/${py} + while IFS="" read -d $'\0' -r pyc; do + pyc=${pyc//*\/} + dosym ../../../../${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} + done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) + done } pkg_postinst() { diff --git a/app-office/libreoffice/libreoffice-9999.ebuild b/app-office/libreoffice/libreoffice-9999.ebuild index 3cd82d82602..a4e55bc7595 100644 --- a/app-office/libreoffice/libreoffice-9999.ebuild +++ b/app-office/libreoffice/libreoffice-9999.ebuild @@ -269,7 +269,6 @@ PATCHES=( # "${WORKDIR}"/${PATCHSET/.tar.xz/} # not upstreamable stuff - "${FILESDIR}/${PN}-5.4-system-pyuno.patch" "${FILESDIR}/${PN}-5.3.4.2-kioclient5.patch" "${FILESDIR}/${PN}-6.1-nomancompress.patch" ) @@ -333,12 +332,6 @@ src_prepare() { # hack in the autogen.sh touch autogen.lastrun - # system pyuno mess - sed -i \ - -e "s:%eprefix%:${EPREFIX}:g" \ - -e "s:%libdir%:$(get_libdir):g" \ - pyuno/source/module/uno.py \ - pyuno/source/officehelper.py || die # sed in the tests sed -i \ -e "s#all : build unitcheck#all : build#g" \ @@ -555,6 +548,33 @@ src_install() { # bug 703474 insinto /usr/include doins -r include/LibreOfficeKit + + local lodir=/usr/$(get_libdir)/libreoffice + # patching this would break tests + cat <<-EOF > "${T}"/uno.py +import sys, os +sys.path.append('${EPREFIX}${lodir}/program') +os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:${EPREFIX}${lodir}/program/fundamentalrc') +EOF + sed -e "/^import sys/d" -e "/^import os/d" \ + -i "${D}"${lodir}/program/uno.py || die "cleanup dupl imports failed" + cat "${D}"${lodir}/program/uno.py >> "${T}"/uno.py || die + cp "${T}"/uno.py "${D}"${lodir}/program/uno.py || die + + # more system pyuno mess + sed -e "/sOffice = \"\" # lets hope for the best/s:\"\":\"${EPREFIX}${lodir}/program\":" \ + -i "${D}"${lodir}/program/officehelper.py || die + + python_optimize "${D}"${lodir}/program + # link python bridge in site-packages, bug 667802 + local py pyc loprogdir=$(get_libdir)/libreoffice/program + for py in uno.py unohelper.py officehelper.py; do + dosym ../../../${loprogdir}/${py} $(python_get_sitedir)/${py} + while IFS="" read -d $'\0' -r pyc; do + pyc=${pyc//*\/} + dosym ../../../../${loprogdir}/__pycache__/${pyc} $(python_get_sitedir)/__pycache__/${pyc} + done < <(find "${D}"${lodir}/program -type f -name ${py/.py/*.pyc} -print0) + done } pkg_postinst() {