1.1.0版本
This commit is contained in:
111
pqAutomationApp.spec
Normal file
111
pqAutomationApp.spec
Normal file
@@ -0,0 +1,111 @@
|
||||
# -*- mode: python ; coding: utf-8 -*-
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
SPEC_DIR = (
|
||||
os.path.abspath(os.path.dirname(__file__))
|
||||
if "__file__" in globals()
|
||||
else os.getcwd()
|
||||
)
|
||||
if SPEC_DIR not in sys.path:
|
||||
sys.path.insert(0, SPEC_DIR)
|
||||
|
||||
from app_version import APP_NAME, APP_VERSION
|
||||
from PyInstaller.utils.win32.versioninfo import (
|
||||
VSVersionInfo,
|
||||
FixedFileInfo,
|
||||
StringFileInfo,
|
||||
StringTable,
|
||||
StringStruct,
|
||||
VarFileInfo,
|
||||
VarStruct,
|
||||
)
|
||||
|
||||
|
||||
def build_windows_version(version_text):
|
||||
parts = [int(part) for part in version_text.split('.') if part.strip()]
|
||||
parts = (parts + [0, 0, 0, 0])[:4]
|
||||
return tuple(parts)
|
||||
|
||||
|
||||
windows_version = build_windows_version(APP_VERSION)
|
||||
windows_version_text = '.'.join(str(part) for part in windows_version)
|
||||
|
||||
version_info = VSVersionInfo(
|
||||
ffi=FixedFileInfo(
|
||||
filevers=windows_version,
|
||||
prodvers=windows_version,
|
||||
mask=0x3F,
|
||||
flags=0x0,
|
||||
OS=0x40004,
|
||||
fileType=0x1,
|
||||
subtype=0x0,
|
||||
date=(0, 0),
|
||||
),
|
||||
kids=[
|
||||
StringFileInfo(
|
||||
[
|
||||
StringTable(
|
||||
'080404B0',
|
||||
[
|
||||
StringStruct('CompanyName', 'Moka'),
|
||||
StringStruct('FileDescription', APP_NAME),
|
||||
StringStruct('FileVersion', windows_version_text),
|
||||
StringStruct('InternalName', 'pqAutomationApp'),
|
||||
StringStruct('OriginalFilename', 'pqAutomationApp.exe'),
|
||||
StringStruct('ProductName', APP_NAME),
|
||||
StringStruct('ProductVersion', windows_version_text),
|
||||
],
|
||||
)
|
||||
]
|
||||
),
|
||||
VarFileInfo([VarStruct('Translation', [2052, 1200])]),
|
||||
],
|
||||
)
|
||||
|
||||
|
||||
a = Analysis(
|
||||
['pqAutomationApp.py'],
|
||||
pathex=[],
|
||||
binaries=[],
|
||||
datas=[('assets', 'assets'), ('UniTAP', 'UniTAP')],
|
||||
hiddenimports=[],
|
||||
hookspath=[],
|
||||
hooksconfig={},
|
||||
runtime_hooks=[],
|
||||
excludes=['PyQt5'],
|
||||
noarchive=False,
|
||||
optimize=0,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
exe = EXE(
|
||||
pyz,
|
||||
a.scripts,
|
||||
[],
|
||||
exclude_binaries=True,
|
||||
name='pqAutomationApp',
|
||||
debug=False,
|
||||
bootloader_ignore_signals=False,
|
||||
strip=False,
|
||||
upx=True,
|
||||
console=False,
|
||||
disable_windowed_traceback=False,
|
||||
argv_emulation=False,
|
||||
target_arch=None,
|
||||
codesign_identity=None,
|
||||
entitlements_file=None,
|
||||
contents_directory='internal',
|
||||
version=version_info,
|
||||
icon=os.path.join(SPEC_DIR, 'assets', 'pq.ico'),
|
||||
)
|
||||
coll = COLLECT(
|
||||
exe,
|
||||
a.binaries,
|
||||
a.datas,
|
||||
strip=False,
|
||||
upx=True,
|
||||
upx_exclude=[],
|
||||
name='pqAutomationApp',
|
||||
)
|
||||
Reference in New Issue
Block a user