Modified setup file

This commit is contained in:
Manuel Cortez 2020-07-07 17:21:31 -05:00
parent 66f6f32916
commit b4a0060756

View File

@ -1,70 +1,46 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
""" Setup file to create executables and distribute the source code of this application. Don't forget this file! """ import sys
############################################################
# Copyright (c) 2016 Manuel Eduardo Cortéz Vallejo <manuel@manuelcortez.net>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
############################################################
from setuptools import setup, find_packages
import py2exe
import os
import platform import platform
from glob import glob import os
from requests import certs import i18n
from cx_Freeze import setup, Executable
from babel.messages import frontend as babel
def get_data(): i18n.setup()
return [ import application
("", ["app-configuration.defaults", "libvlccore.dll", "libvlc.dll", "cacerts.txt"]),
("", [certs.where()]),
("plugins", glob("plugins/*/*.dll")),
]+get_locales()
def get_locales(): def find_accessible_output2_datafiles():
answer = [] import accessible_output2
for root, dirs, files in os.walk('locales'): path = os.path.join(accessible_output2.__path__[0], 'lib')
new = (root, glob(os.path.join(root, '*.mo'))) dest_dir = os.path.join('accessible_output2', 'lib')
answer.append(new) return (path, dest_dir)
return answer
base = None
if sys.platform == 'win32':
base = 'Win32GUI'
if __name__ == '__main__': build_exe_options = dict(
import i18n build_exe="dist",
i18n.setup() optimize=1,
import application include_msvcr=True,
setup( zip_include_packages=["accessible_output2"],
name = application.name, replace_paths = [("*", "")],
author = application.author, include_files=["app-configuration.defaults", "cacerts.txt", "locales", "plugins", "libvlc.dll", "libvlccore.dll", find_accessible_output2_datafiles()],
author_email = application.authorEmail, )
version = application.version,
url = application.url, executables = [
packages= find_packages(), Executable('main.py', base=base, targetName="MusicDL")
data_files = get_data(), ]
options = {
'py2exe': { setup(name='musicDL',
'optimize':2, version=application.version,
'packages': ["pubsub", "pubsub.core", "pubsub.core.kwargs"], description=application.description,
'dll_excludes': ["MPR.dll", "api-ms-win-core-apiquery-l1-1-0.dll", "api-ms-win-core-console-l1-1-0.dll", "api-ms-win-core-delayload-l1-1-1.dll", "api-ms-win-core-errorhandling-l1-1-1.dll", "api-ms-win-core-file-l1-2-0.dll", "api-ms-win-core-handle-l1-1-0.dll", "api-ms-win-core-heap-obsolete-l1-1-0.dll", "api-ms-win-core-libraryloader-l1-1-1.dll", "api-ms-win-core-localization-l1-2-0.dll", "api-ms-win-core-processenvironment-l1-2-0.dll", "api-ms-win-core-processthreads-l1-1-1.dll", "api-ms-win-core-profile-l1-1-0.dll", "api-ms-win-core-registry-l1-1-0.dll", "api-ms-win-core-synch-l1-2-0.dll", "api-ms-win-core-sysinfo-l1-2-0.dll", "api-ms-win-security-base-l1-2-0.dll", "api-ms-win-core-heap-l1-2-0.dll", "api-ms-win-core-interlocked-l1-2-0.dll", "api-ms-win-core-localization-obsolete-l1-1-0.dll", "api-ms-win-core-string-l1-1-0.dll", "api-ms-win-core-string-obsolete-l1-1-0.dll", "WLDAP32.dll", "MSVCP90.dll", "CRYPT32.dll"], # Register babel commands in setup file.
# 'skip_archive': False cmdclass = {'compile_catalog': babel.compile_catalog,
}, 'extract_messages': babel.extract_messages,
}, 'init_catalog': babel.init_catalog,
windows = [ 'update_catalog': babel.update_catalog},
{ message_extractors = {"musicdl": [('**.py', 'python', None)]},
'script': 'main.py', options = {"build_exe": build_exe_options},
'dest_base': 'MusicDL', executables=executables
} )
],
install_requires = [
]
)