gnu: xpra: Install Cython-built libraries.

xpra would fail to start, because shared objects were
not installed. It’s not clear why it stopped working,
but it seems it was not the upgrade I reverted in commit
ab6d56d01d to fix #52869. Sorry for the
confusion :(

* gnu/packages/patches/xpra-4.2-install_libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/xorg.scm (xpra)[source]: Add new patch.
[arguments]: Ensure 'build phase runs and passes #:configure-flags
to setup.py.
This commit is contained in:
Lars-Dominik Braun 2022-01-07 08:44:29 +01:00
parent 05b0491d06
commit 927c589256
No known key found for this signature in database
GPG key ID: F663943E08D8092A
3 changed files with 42 additions and 3 deletions

View file

@ -1965,6 +1965,7 @@ dist_patch_DATA = \
%D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \
%D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \
%D%/packages/patches/xpra-4.2-systemd-run.patch \
%D%/packages/patches/xpra-4.2-install_libs.patch \
%D%/packages/patches/xsane-fix-memory-leak.patch \
%D%/packages/patches/xsane-fix-pdf-floats.patch \
%D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \

View file

@ -0,0 +1,33 @@
This workaround for Gentoo interferes with our use of --no-compile during
the 'install stage.
--- a/setup.py 1970-01-01 01:00:01.000000000 +0100
+++ b/setup.py 2022-01-06 14:08:46.710437071 +0100
@@ -561,12 +561,6 @@
% (cython_version, min_version))
def cython_add(extension, min_version="0.20"):
- #gentoo does weird things, calls --no-compile with build *and* install
- #then expects to find the cython modules!? ie:
- #python2.7 setup.py build -b build-2.7 install --no-compile \
- # --root=/var/tmp/portage/x11-wm/xpra-0.7.0/temp/images/2.7
- if "--no-compile" in sys.argv and not ("build" in sys.argv and "install" in sys.argv):
- return
assert cython_ENABLED, "cython compilation is disabled"
cython_version_check(min_version)
from Cython.Distutils import build_ext
@@ -1691,14 +1685,6 @@
if uinput_ENABLED:
add_data_files("lib/udev/rules.d/", ["fs/lib/udev/rules.d/71-xpra-virtual-pointer.rules"])
- #gentoo does weird things, calls --no-compile with build *and* install
- #then expects to find the cython modules!? ie:
- #> python2.7 setup.py build -b build-2.7 install --no-compile \
- # --root=/var/tmp/portage/x11-wm/xpra-0.7.0/temp/images/2.7
- #otherwise we use the flags to skip pkgconfig
- if ("--no-compile" in sys.argv or "--skip-build" in sys.argv) and not ("build" in sys.argv and "install" in sys.argv):
- pkgconfig = no_pkgconfig
-
if OSX and "py2app" in sys.argv:
import py2app #@UnresolvedImport
assert py2app is not None

View file

@ -6323,7 +6323,8 @@ (define-public xpra
version ".tar.gz"))
(sha256
(base32 "0nky9j07zq8d5ifx568dima7a0jgs8kwhcqbg8p6gsxlgq5zdw96"))
(patches (search-patches "xpra-4.2-systemd-run.patch"))))
(patches (search-patches "xpra-4.2-systemd-run.patch"
"xpra-4.2-install_libs.patch"))))
(build-system python-build-system)
;; see also http://xpra.org/trac/wiki/Dependencies
(inputs `(("bash-minimal" ,bash-minimal) ; for wrap-program
@ -6374,8 +6375,12 @@ (define-public xpra
; they seem to require python2.
#:phases
(modify-phases %standard-phases
;; built by 'install phase
(delete 'build)
;; Must pass the same flags as 'install, otherwise enabled modules may
;; not be built.
(replace 'build
(lambda* (#:key configure-flags #:allow-other-keys)
(apply invoke (append (list "python" "setup.py" "build")
configure-flags))))
(add-before 'install 'fix-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Fix binary paths.