forked from golemfactory/clay
-
Notifications
You must be signed in to change notification settings - Fork 0
/
golemapp.spec
79 lines (62 loc) · 1.85 KB
/
golemapp.spec
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
# -*- mode: python -*-
import glob
import os
import sys
block_cipher = None
def tree(directory):
def glob_dir(_dir):
return '{}/*'.format(_dir)
def traverse(_dir):
files = []
for entry in glob.glob(_dir):
if entry.endswith('.pyc') or entry.endswith('.pyd'):
continue
elif os.path.isfile(entry):
files.append(entry)
elif os.path.isdir(entry):
files += traverse(glob_dir(entry))
return files
return [(f, os.path.dirname(f)) for f in
traverse(glob_dir(directory))]
hidden_imports = [
'OpenEXR', 'sha3', 'scrypt',
'requests', 'web3', 'rlp', 'pylru',
'Imath'
]
binaries = []
is_windows = sys.platform == 'win32'
icon = None
if is_windows:
import site
icon = os.path.join(os.getcwd(), 'Installer', 'favicon.ico')
try:
import vboxapi
except ImportError:
print('Error importing VirtualBox API. You can install it with:')
print('python "%VBOX_MSI_INSTALL_PATH%\\sdk\\install\\vboxapisetup.py" install')
sys.exit(1)
hidden_imports += ['vboxapi']
a = Analysis(['golemapp.py'],
hookspath=['./scripts/pyinstaller/hooks'],
hiddenimports=hidden_imports,
pathex=[],
binaries=binaries,
datas=tree('apps/lux/benchmark') + tree('apps/blender/benchmark'),
runtime_hooks=[],
win_no_prefer_redirects=True,
win_private_assemblies=True,
cipher=block_cipher)
pyz = PYZ(a.pure,
a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='golemapp',
debug=False,
strip=False,
upx=False,
icon=icon,
console=not is_windows)