diff --git a/pypinyin/__pyinstaller/__init__.py b/pypinyin/__pyinstaller/__init__.py new file mode 100644 index 0000000..3ae3c37 --- /dev/null +++ b/pypinyin/__pyinstaller/__init__.py @@ -0,0 +1,7 @@ +# reference: https://github.com/pyinstaller/hooksample/blob/master/src/pyi_hooksample/__pyinstaller/__init__.py + +import os + +def get_hook_dirs(): + return [os.path.dirname(__file__)] + diff --git a/pypinyin/__pyinstaller/hook-pypinyin.py b/pypinyin/__pyinstaller/hook-pypinyin.py new file mode 100644 index 0000000..85f909d --- /dev/null +++ b/pypinyin/__pyinstaller/hook-pypinyin.py @@ -0,0 +1,6 @@ +# reference: https://github.com/pyinstaller/hooksample/blob/master/src/pyi_hooksample/__pyinstaller/hook-pyi_hooksample.py + +from PyInstaller.utils.hooks import collect_data_files + +datas = collect_data_files('pypinyin', excludes=['__pyinstaller']) + diff --git a/pytest.ini b/pytest.ini index df24a90..c7b348c 100644 --- a/pytest.ini +++ b/pytest.ini @@ -3,4 +3,4 @@ python_files = test_*.py python_classes = Test python_functions = test addopts = -slv --cov-report term-missing --tb=short --durations=10 --doctest-modules -norecursedirs = .git __pycache__ +norecursedirs = .git __pycache__ pypinyin/__pyinstaller diff --git a/setup.py b/setup.py index 780963c..bc37d4f 100644 --- a/setup.py +++ b/setup.py @@ -18,6 +18,7 @@ 'pypinyin.seg', 'pypinyin.style', 'pypinyin.tools', + 'pypinyin.__pyinstaller', ] requirements = [] @@ -77,6 +78,9 @@ def long_description(): 'console_scripts': [ 'pypinyin = pypinyin.__main__:main', ], + 'pyinstaller40': [ + 'hook-dirs = pypinyin.__pyinstaller:get_hook_dirs' + ], }, classifiers=[ 'Development Status :: 5 - Production/Stable',