--- a/contrib/packaging/hgpackaging/py2exe.py Wed Mar 27 18:26:54 2019 +0100
+++ b/contrib/packaging/hgpackaging/py2exe.py Wed Mar 20 13:18:37 2019 -0400
@@ -25,7 +25,8 @@
python_exe: pathlib.Path, build_name: str,
venv_requirements_txt: pathlib.Path,
extra_packages=None, extra_excludes=None,
- extra_dll_excludes=None):
+ extra_dll_excludes=None,
+ extra_packages_script=None):
"""Build Mercurial with py2exe.
Build files will be placed in ``build_dir``.
@@ -105,6 +106,16 @@
env['DISTUTILS_USE_SDK'] = '1'
env['MSSdk'] = '1'
+ if extra_packages_script:
+ more_packages = set(subprocess.check_output(
+ extra_packages_script,
+ cwd=build_dir).split(b'\0')[-1].strip().decode('utf-8').splitlines())
+ if more_packages:
+ if not extra_packages:
+ extra_packages = more_packages
+ else:
+ extra_packages |= more_packages
+
if extra_packages:
env['HG_PY2EXE_EXTRA_PACKAGES'] = ' '.join(sorted(extra_packages))
if extra_excludes: