[setup] use cx_Freeze to package application

This commit is contained in:
Yann Lanthony 2018-06-08 14:55:16 +02:00
parent e44bbb7f3e
commit 4ebbc9d841

View file

@ -1,7 +1,40 @@
from setuptools import setup import sys
import setuptools # for bdist
from cx_Freeze import setup, Executable
def getExecutableExtension():
""" Return file extension for an executable program based on current platform. """
if sys.platform == "win32":
return ".exe"
if sys.platform == "darwin":
return ".app"
return ""
build_exe_options = {
# include dynamically loaded plugins
"packages": ["meshroom.nodes", "meshroom.submitters"]
}
executables = [
Executable(
"meshroom/ui/__main__.py",
targetName="Meshroom" + getExecutableExtension(),
),
]
setup( setup(
name="Meshroom", name="Meshroom",
description="Photogrammetry Software", description="Meshroom",
requires=['psutil', 'pytest', 'PySide2'] install_requires=['psutil', 'pytest', 'PySide2'],
extras_require={
':python_version < "3.4"': [
'enum34',
],
},
version="1.0", # TODO: get correct version info
options={"build_exe": build_exe_options},
executables=executables,
) )