From 4ad4711b848da7c725846e71fa9101b892e60443 Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Tue, 10 Oct 2023 16:06:33 -0400 Subject: [PATCH 1/7] [no ci] actions: pyinstaller 5.3.2 for staticx, no openssl.props needed --- .github/workflows/build.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8ba6dde0..4eb27f7c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -404,7 +404,8 @@ jobs: run: | cd "${env:PYTHON_SOURCE_PATH}" # We need out custom openssl.props which uses OpenSSL 3 DLL names - Copy-Item -Path "${env:GITHUB_WORKSPACE}\src\tools\openssl.props" -Destination PCBuild\ -Verbose + # NOTE this should no longer be necessary post Python 3.12. + # Copy-Item -Path "${env:GITHUB_WORKSPACE}\src\tools\openssl.props" -Destination PCBuild\ -Verbose echo "Building for ${env:PYBUILDRELEASE_ARCH}..." PCBuild\build.bat -m --pgo -c Release -p "${env:PYBUILDRELEASE_ARCH}" @@ -479,9 +480,12 @@ jobs: git clone https://github.com/pyinstaller/pyinstaller.git cd pyinstaller export latest_release=$(git tag --list | grep -v dev | grep -v rc | sort -Vr | head -n1) - git checkout "${latest_release}" - #V6.0.0 causes errors, comment above and uncomment below to use 5.13.2 - #git checkout "v5.13.2" + #V6.0.0 causes errors on staticx + if [[ "${staticx}" == "yes" ]]; then + git checkout "v5.13.2" + else + git checkout "${latest_release}" + fi # remove pre-compiled bootloaders so we fail if bootloader compile fails rm -rvf PyInstaller/bootloader/*-*/* cd bootloader From 63fe8b53f950e1f25af36ef35555ff6f7c8db9a5 Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Tue, 10 Oct 2023 16:28:18 -0400 Subject: [PATCH 2/7] Delete src/tools/openssl.props --- src/tools/openssl.props | 30 ------------------------------ 1 file changed, 30 deletions(-) delete mode 100644 src/tools/openssl.props diff --git a/src/tools/openssl.props b/src/tools/openssl.props deleted file mode 100644 index 4413d7ae..00000000 --- a/src/tools/openssl.props +++ /dev/null @@ -1,30 +0,0 @@ - - - - - $(opensslIncludeDir);%(AdditionalIncludeDirectories) - - - $(opensslOutDir);%(AdditionalLibraryDirectories) - ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) - - - - <_DLLSuffix>-3 - <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm - <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 - <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 - - - <_SSLDLL Include="$(opensslOutDir)\libcrypto$(_DLLSuffix).dll" /> - <_SSLDLL Include="$(opensslOutDir)\libcrypto$(_DLLSuffix).pdb" /> - <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).dll" /> - <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).pdb" /> - - - - - - - - From a7d8260de568c46685dc8e1e1b78684e8a1f750a Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Tue, 10 Oct 2023 16:41:19 -0400 Subject: [PATCH 3/7] [no ci] actions: test python 3.11 --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4eb27f7c..c3e5f5b4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -88,7 +88,7 @@ jobs: arch: x86_64 - os: ubuntu-22.04 goal: test - python: "3.12" + python: "3.11" jid: 12 arch: x86_64 From a4043110978c210bf2daa3e540f1a79cfec48998 Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Wed, 11 Oct 2023 08:41:38 -0400 Subject: [PATCH 4/7] [no ci] actions: revert openssl.props copy --- .github/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c3e5f5b4..9f85baad 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -404,8 +404,7 @@ jobs: run: | cd "${env:PYTHON_SOURCE_PATH}" # We need out custom openssl.props which uses OpenSSL 3 DLL names - # NOTE this should no longer be necessary post Python 3.12. - # Copy-Item -Path "${env:GITHUB_WORKSPACE}\src\tools\openssl.props" -Destination PCBuild\ -Verbose + Copy-Item -Path "${env:GITHUB_WORKSPACE}\src\tools\openssl.props" -Destination PCBuild\ -Verbose echo "Building for ${env:PYBUILDRELEASE_ARCH}..." PCBuild\build.bat -m --pgo -c Release -p "${env:PYBUILDRELEASE_ARCH}" From 6ec24c87cdd4c046deb72245e4e07079b9c6adc6 Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Wed, 11 Oct 2023 08:43:00 -0400 Subject: [PATCH 5/7] Create openssl.props --- src/tools/openssl.props | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/tools/openssl.props diff --git a/src/tools/openssl.props b/src/tools/openssl.props new file mode 100644 index 00000000..4413d7ae --- /dev/null +++ b/src/tools/openssl.props @@ -0,0 +1,30 @@ + + + + + $(opensslIncludeDir);%(AdditionalIncludeDirectories) + + + $(opensslOutDir);%(AdditionalLibraryDirectories) + ws2_32.lib;libcrypto.lib;libssl.lib;%(AdditionalDependencies) + + + + <_DLLSuffix>-3 + <_DLLSuffix Condition="$(Platform) == 'ARM'">$(_DLLSuffix)-arm + <_DLLSuffix Condition="$(Platform) == 'ARM64'">$(_DLLSuffix)-arm64 + <_DLLSuffix Condition="$(Platform) == 'x64'">$(_DLLSuffix)-x64 + + + <_SSLDLL Include="$(opensslOutDir)\libcrypto$(_DLLSuffix).dll" /> + <_SSLDLL Include="$(opensslOutDir)\libcrypto$(_DLLSuffix).pdb" /> + <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).dll" /> + <_SSLDLL Include="$(opensslOutDir)\libssl$(_DLLSuffix).pdb" /> + + + + + + + + From 1393ed3ca654977b5f9fbb74719a318337553796 Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Wed, 11 Oct 2023 09:38:20 -0400 Subject: [PATCH 6/7] actions: attempt windows fix --- .github/workflows/build.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9f85baad..fc7cff8a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -518,7 +518,8 @@ jobs: 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="/usr/bin" + # export PATH="/usr/bin" + true else export gampath=$(realpath "${gampath}") fi @@ -531,6 +532,7 @@ jobs: export distpath="./dist/gam" export gampath="${distpath}" "${PYTHON}" -m PyInstaller --clean --noconfirm --distpath="${distpath}" gam.spec + cat build\gam\warn-gam.txt - name: Copy extra package files if: matrix.goal == 'build' From 4ae5cdee83e1fc3fdd76bb63f18b104db1f510ad Mon Sep 17 00:00:00 2001 From: Jay Lee Date: Wed, 11 Oct 2023 09:40:49 -0400 Subject: [PATCH 7/7] actions: forward slashes --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fc7cff8a..fc01882f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -532,7 +532,7 @@ jobs: export distpath="./dist/gam" export gampath="${distpath}" "${PYTHON}" -m PyInstaller --clean --noconfirm --distpath="${distpath}" gam.spec - cat build\gam\warn-gam.txt + cat build/gam/warn-gam.txt - name: Copy extra package files if: matrix.goal == 'build'