Pyside6Template/buildPy2App.py
2022-11-11 19:39:12 -07:00

45 lines
1.2 KiB
Python

from setuptools import setup
from glob import glob
from datetime import datetime
from package_alias import package
info = package.info
name = info.name
version = info.version
bundle_identifier = info.bundle_identifier
module_name = info.module_name
APP = [f'pyinstaller.py']
DATA_FILES = [
('resources', glob(module_name + '/resources/*')),
]
OPTIONS = {
'arch': 'universal2',
'optimize': 2,
'iconfile': module_name + '/resources/icon.icns',
'includes': {'PySide6.QtCore', 'PySide6.QtUiTools', 'PySide6.QtGui', 'PySide6.QtWidgets', 'certifi', },
'excludes': {'tkinter', "unittest"},
'qt_plugins': [
'platforms/libqcocoa.dylib',
'platforms/libqminimal.dylib',
'platforms/libqoffscreen.dylib',
'styles/libqmacstyle.dylib'
],
'argv_emulation': True,
'plist': {
'CFBundleName': name,
'CFBundleShortVersionString': version,
'CFBundleIdentifier': bundle_identifier,
'LSMinimumSystemVersion': '10.12.0',
'NSHumanReadableCopyright': f'Copyright © {datetime.now().year} {name} All Rights Reserved',
}
}
setup(
app=APP,
name=name,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)