diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 52adae13..28180798 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -544,20 +544,23 @@ jobs: # breaking our self-compiled version brew uninstall --ignore-dependencies openssl export gampath=$($PYTHON -c "import os; print(os.path.realpath('$gampath'))") + export PYINSTALLER_BUILD_ONEDIR=yes elif [[ "${RUNNER_OS}" == "Windows" ]]; then # Work around issue where PyInstaller picks up python3.dll from other Python versions # https://github.com/pyinstaller/pyinstaller/issues/7102 export PATH="$(dirname ${PYTHON}):/usr/bin" + export PYINSTALLER_BUILD_ONEDIR=no else export gampath=$(realpath "${gampath}") + export PYINSTALLER_BUILD_ONEDIR=no fi export gam="${gampath}/gam" echo "gampath=${gampath}" >> $GITHUB_ENV - # TEMP force everything back to one file. - export PYINSTALLER_BUILD_ONEFILE="yes" export distpath="./dist/gam" export gampath="${distpath}" "${PYTHON}" -m PyInstaller --clean --noconfirm --distpath="${distpath}" gam.spec + echo "dist results:" + ls -alRF "$distpath" echo "WARNINGS FROM build/gam/warn-gam.txt" cat build/gam/warn-gam.txt echo "Analysis FROM build/gam/Analysis-00.toc" diff --git a/src/gam.spec b/src/gam.spec index 093d3ba5..b94cd2db 100644 --- a/src/gam.spec +++ b/src/gam.spec @@ -79,29 +79,8 @@ upx = False console = True disable_windowed_traceback = False argv_emulation = False -if not getenv('PYINSTALLER_BUILD_ONEDIR') == 'yes': - # Build one file - exe = EXE( - pyz, - a.scripts, - a.binaries, - a.zipfiles, - a.datas, - [], - name=name, - debug=debug, - bootloader_ignore_signals=bootloader_ignore_signals, - strip=strip, - upx=upx, - console=console, - disable_windowed_traceback=disable_windowed_traceback, - argv_emulation=argv_emulation, - target_arch=target_arch, - codesign_identity=codesign_identity, - entitlements_file=entitlements_file, - ) -else: - # Build one folder +if getenv('PYINSTALLER_BUILD_ONEDIR') == 'yes': + # Build one directory exe = EXE( pyz, a.scripts, @@ -129,3 +108,25 @@ else: upx_exclude=[], name=name, ) +else: + # Build one file + exe = EXE( + pyz, + a.scripts, + a.binaries, + a.zipfiles, + a.datas, + [], + name=name, + debug=debug, + bootloader_ignore_signals=bootloader_ignore_signals, + strip=strip, + upx=upx, + console=console, + disable_windowed_traceback=disable_windowed_traceback, + argv_emulation=argv_emulation, + target_arch=target_arch, + codesign_identity=codesign_identity, + entitlements_file=entitlements_file, + ) +