-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwindowsexe.py
89 lines (75 loc) · 2.63 KB
/
windowsexe.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
""" Requires py2exe
Call in cmd.exe (NOT MINGW SHELL):
C:\Python27\python.exe windowsexe.py py2exe
or
Call in mingw shell:
/c/Python27/python windowsexe.py py2exe
"""
from distutils.core import setup
import py2exe
import os
import sys
import numpy
import scipy
import matplotlib
IMAGE_FOLDER = "Images"
ROOT_PATH = os.path.dirname(os.path.realpath(__file__))
LOCAL_GUI_PATH = os.path.join(ROOT_PATH, "local_GUI")
IMAGE_PATH = os.path.join(ROOT_PATH, IMAGE_FOLDER)
MAIN_FILE = os.path.join(ROOT_PATH, "local_start.py")
EXE_FILE = "ICS"
ICON_FILE = os.path.join(ROOT_PATH, "icon.ico")
LOCAL_IMAGES = [os.path.join(IMAGE_PATH, "r.png"),
os.path.join(IMAGE_PATH, "g.png"),
os.path.join(IMAGE_PATH, "b.png"),
os.path.join(IMAGE_PATH, "rgb.png"),
os.path.join(IMAGE_PATH, "zoom.png")]
HELP_FILES = [os.path.join(ROOT_PATH, "HELP"),
os.path.join(ROOT_PATH, "LICENSE"),
os.path.join(ROOT_PATH, "README.md")]
AUTHOR = "CMPUT 401 - Biomembranes Team"
VERSION = "1.0"
DESCRIPTION = "Image Correlation Spectroscopy"
NAME = "ICS"
PACKAGES = ["backend", "midend", "local_GUI"]
INCLUDES = ["sip", "scipy.linalg.cblas", "scipy.linalg.fblas",
"scipy.sparse.csgraph._validation", "ctypes",
"scipy.linalg.flapack", "scipy.linalg.clapack", "matplotlib",
"matplotlib.backends.backend_tkagg"]
EXCLUDES = ["_gtkagg", "_tkagg"]
DLL_EXCLUDES = ["libiomp5md.dll", "MSVCP90.dll", "numpy.linalg.lapack_lite.pyd",
]
QT_ICON_DLL = r'C:\Python27\Lib\site-packages\PyQt4\plugins\imageformats\qico4.dll'
ROOT_DATA_FILES = HELP_FILES + [ICON_FILE]
DATA_FILES = [(IMAGE_FOLDER, LOCAL_IMAGES), ("", ROOT_DATA_FILES),
('imageformats', [QT_ICON_DLL])]
DATA_FILES.extend(matplotlib.get_py2exe_datafiles())
OPTIONS = {
'py2exe': {
"dist_dir": "bin",
"packages": PACKAGES,
"includes": INCLUDES,
"excludes": EXCLUDES,
"dll_excludes": DLL_EXCLUDES,
'bundle_files': 3, # 1 = .exe; 2 = .zip; 3 = separate
'compressed': 2,
'optimize': 2, # Must be disabled for matplotlib. Fixable with edits, see http://www.py2exe.org/index.cgi/MatPlotLib
'xref': False,
'skip_archive': False,
'ascii': False,
}
}
# Icon works only in windows xp
WINDOWS = [{"dest_base": EXE_FILE, "script": MAIN_FILE,
"icon_resources": [(0, ICON_FILE)]
}]
setup(
windows=WINDOWS,
author=AUTHOR,
version=VERSION,
description=DESCRIPTION,
name=NAME,
options=OPTIONS,
data_files=DATA_FILES,
zipfile=None # Libs go into the .exe
)