htgoebel pushed a commit to branch wip-python-build-system in repository guix.
commit d9c2e587aeaf2410d50823b4367ec1e4ab2c777d Author: Hartmut Goebel <h.goe...@crazy-compilers.com> Date: Fri Oct 7 17:17:00 2016 +0200 guix: python-build-system: Delete .egg-info file created in phase check. * guix/build/python-build-system.scm (check): Delete .egg-info dirs which did not exist prior to calling setup.py but afterwards. --- guix/build/python-build-system.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/guix/build/python-build-system.scm b/guix/build/python-build-system.scm index a4e8038..19fd333 100644 --- a/guix/build/python-build-system.scm +++ b/guix/build/python-build-system.scm @@ -67,7 +67,15 @@ (define* (check #:key tests? test-target use-setuptools? #:allow-other-keys) "Run the test suite of a given Python package." (if tests? - (call-setuppy test-target '() use-setuptools?) + ;; Running `setup.py test` creates an additional .egg-info directory in + ;; build/lib in some cases, e.g. if the source is in a sub-directory + ;; (given with `package_dir`). This will by copied to the output, too, + ;; so we need to remove. + (let ((before (find-files "build" "\\.egg-info$" #:directories? #t))) + (call-setuppy test-target '() use-setuptools?) + (let* ((after (find-files "build" "\\.egg-info$" #:directories? #t)) + (inter (lset-difference eqv? after before))) + (for-each delete-file-recursively inter))) #t)) (define (get-python-version python)