python
# setup.py
import sys
from cx_Freeze import setup, Executable
entry_points = {
'console_scripts': [
'hello_world = my_module:main',
'another_script = another_module:main',
]
}
data_files = [
('resources', ['icon.jpg', 'config.ini']),
]
def on_package_progress(packages, files):
print(f'Packages: {packages}')
print(f'Files: {files}')
build_exe_options = {
'includes': ['my_module', 'another_module'],
'excludes': ['tkinter'],
'packages': ['os'],
'optimize': 2,
'include_files': data_files,
'callback': on_package_progress,
}
setup(
name='MyApp',
version='1.0',
description='My Application',
options={'build_exe': build_exe_options},
executables=[Executable(script='my_script.py', icon='icon.ico')],
)