setup: forcibly include cext/pure packages in py2exe (issue5625) stable
authorYuya Nishihara <yuya@tcha.org>
Thu, 20 Jul 2017 22:47:40 +0900
branchstable
changeset 33599 cfa08b06d8b5
parent 33598 f30714a55523
child 33600 47829b89c8c6
setup: forcibly include cext/pure packages in py2exe (issue5625) Since these modules are implicitly imported by policy.importmod(), py2exe can't track them statically. cffi modules are excluded for now because they wouldn't be useful in frozen (i.e. CPython) environment.
setup.py
--- a/setup.py	Thu Jul 20 22:32:37 2017 +0900
+++ b/setup.py	Thu Jul 20 22:47:40 2017 +0900
@@ -934,7 +934,12 @@
       package_data=packagedata,
       cmdclass=cmdclass,
       distclass=hgdist,
-      options={'py2exe': {'packages': ['hgdemandimport', 'hgext', 'email']},
+      options={'py2exe': {'packages': ['hgdemandimport', 'hgext', 'email',
+                                       # implicitly imported per module policy
+                                       # (cffi wouldn't be used as a frozen exe)
+                                       'mercurial.cext',
+                                       #'mercurial.cffi',
+                                       'mercurial.pure']},
                'bdist_mpkg': {'zipdist': False,
                               'license': 'COPYING',
                               'readme': 'contrib/macosx/Readme.html',