summaryrefslogtreecommitdiff
path: root/guix/build/python-build-system.scm
Commit message (Collapse)AuthorAge
* build-system/python: Export 'python-version'.Ludovic Courtès2019-06-21
| | | | | | | | | | | * guix/build/python-build-system.scm (get-python-version): Rename to... (python-version): ... this. Update callers. Make public. * gnu/packages/gstreamer.scm (python-gst)[arguments]: Adjust accordingly. * gnu/packages/machine-learning.scm (ghmm)[arguments]: Likewise. * gnu/packages/openldap.scm (389-ds-base)[arguments]: Import (guix build python-build-system). Use 'python-version'. * gnu/packages/package-management.scm (conda)[arguments]: Use 'python-version'.
* build-system/python: Move the check phase after the install phase.Maxim Cournoyer2019-04-18
| | | | | | | | | | A reproducibility problem was discovered while packaging python-pygithub where the bytecode produced by running the tests would interfere with the result of the install phase byte compilation. Moving the check phase after the install phase solves the problem. * guix/build/python-build-system.scm (%standard-phases): Add comment, move the check phase after the install phase.
* build-system: python: Do not double wrap executables.Arun Isaac2018-11-25
| | | | | | * guix/build/python-build-system.scm (wrap): Only wrap executables that have not already been wrapped. * guix/build/utils.scm (wrapper?): New function.
* gnu: python: Update to 3.7.0.Marius Bakke2018-07-28
| | | | | | | | | | * gnu/packages/python.scm (python-3.6): Rename to ... (python-3.7): ... this. Update to 3.7.0. [arguments]: Remove phase 'patch-timestamp-for-pyc-files' and related code. Add phases to unset SOURCE_DATE_EPOCH during the check phase. (python-3): Is now PYTHON-3.7. * guix/build/python-build-system.scm (enable-bytecode-determinism): Don't set DETERMINISTIC_BUILD.
* build-system/python: Fix deletion of .egg-info dirs created by tests.Mark H Weaver2018-03-18
| | | | | * guix/build/python-build-system.scm (check): Use 'string=?' to compare strings, not 'eqv?'.
* build-system/python: Return #t from all phases.Mark H Weaver2018-03-18
| | | | | * guix/build/python-build-system.scm (build, install, wrap): Return #t. (check): Return #t and remove vestigial plumbing.
* build-system/python: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | * guix/build/python-build-system.scm (call-setuppy): Use invoke.
* guix: python-build-system: Make bytecode compilation deterministic.Ricardo Wurmus2018-03-15
| | | | | | * guix/build/python-build-system.scm (enable-bytecode-determinism): New procedure. (%standard-phases): Add "enable-bytecode-determinism" phase.
* build-system/gnu: Add 'bootstrap' phase.Ludovic Courtès2018-03-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This factorizes what has become a widespread idiom. * guix/build/gnu-build-system.scm (%bootstrap-scripts): New variable. (bootstrap): New procedure. (%standard-phases): Add it after 'unpack'. * guix/build/ant-build-system.scm (%standard-phases): Delete 'bootstrap. * guix/build/asdf-build-system.scm (%standard-phases/source) (%standard-phases): Likewise. * guix/build/cargo-build-system.scm (%standard-phases): Likewise. * guix/build/cmake-build-system.scm (%standard-phases): Likewise. * guix/build/dub-build-system.scm (%standard-phases): Likewise. * guix/build/emacs-build-system.scm (%standard-phases): Likewise. * guix/build/font-build-system.scm (%standard-phases): Likewise. * guix/build/go-build-system.scm (%standard-phases): Likewise. * guix/build/haskell-build-system.scm (%standard-phases): Likewise. * guix/build/minify-build-system.scm (%standard-phases): Likewise. * guix/build/ocaml-build-system.scm (%standard-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/r-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/scons-build-system.scm (%standard-phases): Likewise. * guix/build/texlive-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise. * gnu/packages/audio.scm (faad2)[arguments]: Replace 'bootstrap. (soundtouch, cuetools, bluez-alsa): Remove 'arguments'. (cava)[arguments]: Replace 'bootstrap. * gnu/packages/backup.scm (rdup): Remove 'bootstrap. * gnu/packages/bioinformatics.scm (seek)[arguments]: Replace 'bootstrap. * gnu/packages/bioinformatics.scm (htslib-for-sambamba): Remove 'arguments'. * gnu/packages/ci.scm (hydra, cuirass): Remove 'bootstrap'. * gnu/packages/crypto.scm (libb2): Remove #:phases. * gnu/packages/databases.scm (guile-wiredtiger): Likewise. * gnu/packages/debug.scm (stress-make): Remove 'bootstrap'. * gnu/packages/documentation.scm (asciidoc): Likewise. * gnu/packages/fontutils.scm (libuninameslist): Remove 'arguments'. * gnu/packages/ftp.scm (weex): Remove 'arguments'. * gnu/packages/game-development.scm (ois): Remove 'arguments'. * gnu/packages/games.scm (pioneer): Remove 'bootstrap. * gnu/packages/gnome.scm (vte-ng, byzanz): Replace 'bootstrap. (arc-theme): Remove 'arguments'. (faba-icon-theme): Remove 'bootstrap. (arc-icon-theme): Remove 'arguments'. * gnu/packages/gnunet.scm (guile-gnunet): Likewise. * gnu/packages/gtk.scm (guile-rsvg): Likewise. * gnu/packages/guile.scm (mcron2): Remove 'bootstrap. (guile-bash): Remove #:phases. (guile-git): Remove 'bootstrap. (guile-syntax-highlight): Remove 'arguments'. (guile-sjson): Likewise. * gnu/packages/java.scm (classpath-devel): Remove 'bootstrap. * gnu/packages/kodi.scm (libdvdnav/kodi) (libdvdread/kodi, libdvdcss/kodi): Likewise. * gnu/packages/libreoffice.scm (hunspell): Remove 'arguments'. * gnu/packages/libusb.scm (hidapi): Likewise. * gnu/packages/linux.scm (bridge-utils): Rename 'bootstrap' to 'patch-stuff'; move it before 'bootstrap', without autoreconf invocation. (eudev): Rename 'bootstrap' to 'patch-file-names', without 'autogen.sh' invocation; move it before 'bootstrap. (gpm): Replace 'bootstrap'. (f2fs-tools): Remove 'arguments'. (rng-tools): Remove #:phases. * gnu/packages/messaging.scm (hexchat): Rename 'bootstrap' to 'copy-intltool-makefile'; remove "autoreconf" invocation and move before 'bootstrap'. (libmesode): Remove 'arguments'. (libstrophe): Likewise. * gnu/packages/microcom.scm (microcom): Likewise. * gnu/packages/networking.scm (libnet): Remove 'bootstrap. * gnu/packages/onc-rpc.scm (libnsl): Remove 'arguments'. * gnu/packages/package-management.scm (guix): Replace 'bootstrap. * gnu/packages/sawfish.scm (librep): Remove 'arguments'. * gnu/packages/version-control.scm (findnewest): Likewise. * gnu/packages/video.scm (liba52, handbrake, motion): Replace 'bootstrap. * gnu/packages/web.scm (fcgiwrap): Remove #:phases. (tidy): Replace 'bootstrap. (gumbo-parser): Remove #:phases. * gnu/packages/wget.scm (wget2): Replace 'bootstrap. * gnu/packages/wm.scm (i3lock-color): Remove #:phases. * gnu/packages/xdisorg.scm (xclip): Likewise. * gnu/packages/xml.scm (libxls): Replace 'bootstrap'. * gnu/packages/xorg.scm (xf86-video-freedreno) (xf86-video-intel): Remove #:phases. * gnu/packages/zile.scm (zile-on-guile): Replace 'bootstrap.
* build-system/python: Make sure 'check' returns failures.Marius Bakke2016-12-13
| | | | | | * guix/build/python-build-system.scm (check): Wrap 'call-setuppy' in 'if' so that it actually fails when the tests fail. Print informational message when skipped.
* guix: python-build-system: Add background about Python installation methods.Hartmut Goebel2016-11-15
|
* guix: python-build-system: Delete .egg-info file created in phase check.Hartmut Goebel2016-11-15
| | | | | * guix/build/python-build-system.scm (check): Delete .egg-info dirs which did not exist prior to calling setup.py but afterwards.
* guix: python-build-system: Add helpers for getting and setting PYTHONPATH.Hartmut Goebel2016-11-15
| | | | | * guix/build/python-build-system.scm (add-installed-pythonpath, site-packages): New exported procedures.
* guix: python-build-system: Add option "#:use-setuptools?" (default true).Hartmut Goebel2016-11-15
| | | | | | | | | | | | * guix/build-system/python.scm (python-build): New keyword argument "#:use-setuptools?", defaulting to #t. * guix/build/python-build-system.scm (call-setup-py): New positional parameter "use-setuptools?". If false, do not use the shim-wrapper for addin setuptools. (build, check): accept keyword- parameter, and pass to call-setuppy. (install): same; if "use-setuptools?" is false, do not use options "--root" and "--single-version-externally-managed" for setup.py. * doc/guix.texi (Build Systems): Document it.
* guix: python-build-system: Import setuptools before calling `setup.py'.Marius Bakke2016-11-15
| | | | | | | | | | | | | This is needed for packages using "distutils" instead of "setuptools" since the former does not understand the "--single-version-externally-managed" flag. Also export __file__ since it will be unset when setup.py is called from python "exec". * guix/build/python-build-system.scm (call-setuppy): extend "python setup.py" call to import setuptools, export __file__, and call setup.py from setuptools python environment. Co-Authored-By: Hartmut Goebel <h.goebel@crazy-compilers.com>
* guix: build all Python packages with --single-version-externally-managed.Hartmut Goebel2016-11-15
| | | | | | | | | | | This requires setuptools to be installed together with python, which is the case for Python 3 anyway and which we do for our build of Python 2 (see last commit). * guix/build/python-build-system.scm (install): Add "--single-version-externally-managed" and "--root=/" to params to be passed to call-setuppy. Remove thus needless manipulation of PYTHONPATH. Remove now unused argument "inputs".
* guix: python-build-system: Fix an outdated comment.Hartmut Goebel2016-11-15
|
* Revert "guix: python-build-system: Fix an outdated comment."Mark H Weaver2016-10-13
| | | | This reverts commit 635a7af45d6e2105ad65d1a9531126cc232a2a50.
* guix: python-build-system: Fix an outdated comment.Hartmut Goebel2016-10-13
| | | | | | The python-build-system uses phases the build and install, but not configure. So the old comment was plain wrong since Sept. 2013, when the build phase has been added.
* build-system/gnu: Add 'set-SOURCE-DATE-EPOCH' phase.Ludovic Courtès2016-01-05
| | | | | | | | | | | | This phase is inherited by other build systems, which ensures 'SOURCE_DATE_EPOCH' is always set in practice. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Remove. (%standard-phases): Don't add it. * guix/build/gnu-build-system.scm (set-SOURCE-DATE-EPOCH): New procedure. (%standard-phases): Add it. (gnu-build): Remove 'setenv' call for "SOURCE_DATE_EPOCH".
* gnu: python: Set SOURCE_DATE_EPOCH to 1 instead of 0.Ludovic Courtès2015-11-29
| | | | | | * gnu/packages/python.scm (python-2)[arguments]: Set SOURCE_DATE_EPOCH to 1 to match what the daemon does. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Likewise.
* gnu: python-2: Honor 'SOURCE_DATE_EPOCH'.Ludovic Courtès2015-11-29
| | | | | | | | | | * gnu/packages/patches/python-2.7-source-date-epoch.patch: New file. * gnu/packages/python.scm (python-2)[source]: Use it. [arguments]: Set SOURCE_DATE_EPOCH in 'patch-lib-shells' phase. * guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): New procedure. (%standard-phases): Add it. * gnu-system.am (dist_patch_DATA): Add patch.
* python-build-system: Fix 'get-python-version'.Mark H Weaver2015-08-06
| | | | | * guix/build/python-build-system.scm (get-python-version): Rewrite to handle multiple-digit version number components.
* python-build-system: Add 'ensure-no-mtimes-pre-1980' phase.Mark H Weaver2015-07-16
| | | | | | * guix/build/python-build-system.scm (ensure-no-mtimes-pre-1980): New phase. (%standard-phases): Add it after 'unpack'.
* utils: 'modify-phases' no longer introduces quotes.Ludovic Courtès2015-03-31
| | | | | | | | | | | | | | | | | | | Suggested by Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>. * guix/build/utils.scm (%modify-phases): Remove quotes. * guix/build/cmake-build-system.scm (%standard-phases): Adjust accordingly. * guix/build/glib-or-gtk-build-system.scm (%standard-phases): Likewise. * guix/build/gnu-dist.scm (%dist-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise. * gnu/packages/bash.scm, gnu/packages/code.scm, gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/graphics.scm, gnu/packages/image.scm, gnu/packages/key-mon.scm, gnu/packages/ocr.scm, gnu/packages/plotutils.scm, gnu/packages/search.scm, gnu/packages/video.scm: Likewise.
* build-system: Use 'modify-phases'.Ludovic Courtès2015-02-26
| | | | | | | | | | | * guix/build/cmake-build-system.scm (%standard-phases): Use 'modify-phases' instead of alist-*. * guix/build/glib-or-gtk-build-system.scm (%standard-phases): Likewise. * guix/build/gnu-dist.scm (%dist-phases): Likewise. * guix/build/perl-build-system.scm (%standard-phases): Likewise. * guix/build/python-build-system.scm (%standard-phases): Likewise. * guix/build/ruby-build-system.scm (%standard-phases): Likewise. * guix/build/waf-build-system.scm (%standard-phases): Likewise.
* build/python-build-system: Fix easy-install.pth collisions.Federico Beffa2014-12-18
| | | | | * guix/build/python-build-system.scm (rename-pth-file): New rename-pth-file phase and corresponding function.
* Use #:prefix instead of #:renamer with 'symbol-prefix-proc'.Mark H Weaver2014-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/packages/abiword.scm, gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/backup.scm, gnu/packages/bittorrent.scm, gnu/packages/boost.scm, gnu/packages/compression.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm, gnu/packages/cyrus-sasl.scm, gnu/packages/dc.scm, gnu/packages/emacs.scm, gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm, gnu/packages/gimp.scm, gnu/packages/gkrellm.scm, gnu/packages/gl.scm, gnu/packages/glib.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm, gnu/packages/gnutls.scm, gnu/packages/gnuzilla.scm, gnu/packages/gsasl.scm, gnu/packages/gtk.scm, gnu/packages/gv.scm, gnu/packages/image.scm, gnu/packages/indent.scm, gnu/packages/inkscape.scm, gnu/packages/lesstif.scm, gnu/packages/links.scm, gnu/packages/lisp.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm, gnu/packages/maths.scm, gnu/packages/mp3.scm, gnu/packages/openssl.scm, gnu/packages/ots.scm, gnu/packages/pciutils.scm, gnu/packages/pcre.scm, gnu/packages/pdf.scm, gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/slim.scm, gnu/packages/ssh.scm, gnu/packages/texlive.scm, gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wv.scm, gnu/packages/xiph.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/yasm.scm, gnu/packages/zip.scm, guix/build/cmake-build-system.scm, guix/build/perl-build-system.scm, guix/build/python-build-system.scm, guix/download.scm: Replaces uses of #:renamer and 'symbol-prefix-proc' with #:prefix.
* guix: python: Create module installation path and add it to PYTHONPATH duringAndreas Enge2013-09-11
| | | | | | | | the installation phase. * guix/build/python-build-system.scm (get-python-version): New procedure. * guix/build/python-build-system.scm (install): Create and add path. * gnu/packages/python.scm (python-setuptools): Drop path creation code.
* guix: python: Add build phase and factor out calls to setup.py.Andreas Enge2013-09-05
| | | | | | | * guix/build/python-build-system.scm (call-setuppy): New procedure. * guix/build/python-build-system.scm (build): New procedure. * guix/build/python-build-system.scm (check, install): Use call-setuppy. * guix/build/python-build-system.scm (%standard-phases): Add call to build.
* gnu: python: Honour #:tests? and #:test-target in build system.Andreas Enge2013-09-05
| | | | | * guix/build/python-build-system.scm (check): Use named parameters tests? and test-target (default now: "test" instead of "check").
* guix: python: Switch to python-wrapper as the default version for the pythonAndreas Enge2013-09-04
| | | | | | | | | build system (switches to Python 3) and compute python-version instead of passing it as a parameter. * guix/build-system/python.scm (default-python): Switch to python-wrapper. * guix/build-system/python.scm (python-build): Drop parameter #:python-version. * guix/build/python-build-system.scm (wrap): Compute python version from input.
* python-build-system: add a check phase.Cyril Roelandt2013-05-28
| | | | | * guix/build/python-build-system.scm (check): New procedure. (%standard-phases): Use it.
* Add 'python-build-system'.Nikita Karetnikov2013-05-08
* guix/build-system/python.scm, guix/build/python-build-system.scm: New files. * Makefile.am (MODULES): Add them.