guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

46/49: gnu: Python: Fix bytecode compilation.


From: guix-commits
Subject: 46/49: gnu: Python: Fix bytecode compilation.
Date: Fri, 23 Jul 2021 11:33:14 -0400 (EDT)

mbakke pushed a commit to branch core-updates
in repository guix.

commit 7c2c69886275895f6030b47c76078abfe62edf82
Author: Marius Bakke <marius@gnu.org>
AuthorDate: Thu Jul 22 00:01:05 2021 +0200

    gnu: Python: Fix bytecode compilation.
    
    * gnu/packages/python.scm (python-3.9)[arguments]: In the rebuild-bytecode
    phase, actully run Python instead of defining an anonymous procedure.  While
    at it, create all optimization levels with the same command instead of 
running
    once for each level.
---
 gnu/packages/python.scm | 29 ++++++++++++-----------------
 1 file changed, 12 insertions(+), 17 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 0ec7902..0b763af 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -533,23 +533,18 @@ data types.")
                  ;; Disable hash randomization to ensure the generated .pycs
                  ;; are reproducible.
                  (setenv "PYTHONHASHSEED" "0")
-                 (for-each
-                  (lambda (opt)
-                    (format #t "Compiling with optimization level: ~a\n" opt)
-                    (lambda (file)
-                      (apply invoke
-                             `(,,(if (%current-target-system)
-                                     "python3"
-                                     '(string-append out
-                                                     "/bin/python3"))
-                               ,opt
-                               "-m" "compileall"
-                               "-f" ; force rebuild
-                               "--invalidation-mode=unchecked-hash"
-                               ;; Don't build lib2to3, because it's Python 2 
code.
-                               "-x" "lib2to3/.*"
-                               ,out))))
-                  (list "none" "-O" "-OO")))))
+                 (apply invoke
+                        `(,,(if (%current-target-system)
+                                "python3"
+                                '(string-append out
+                                                "/bin/python3"))
+                          "-m" "compileall"
+                          "-o" "0" "-o" "1" "-o" "2"
+                          "-f" ; force rebuild
+                          "--invalidation-mode=unchecked-hash"
+                          ;; Don't build lib2to3, because it's Python 2 code.
+                          "-x" "lib2to3/.*"
+                          ,out)))))
            (replace 'install-sitecustomize.py
              ,(customize-site version))))))
     (native-inputs



reply via email to

[Prev in Thread] Current Thread [Next in Thread]