Browse Source

Merge pull request #7721 from SomberNight/202203_build_bump_python

win build: bump python, wine, pyinstaller
patch-4
ghost43 3 years ago
committed by GitHub
parent
commit
14b600bb9d
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      contrib/build-wine/Dockerfile
  2. 19
      contrib/build-wine/prepare-wine.sh
  3. 6
      contrib/deterministic-build/requirements-build-wine.txt
  4. 4
      contrib/requirements/requirements-build-wine.txt

8
contrib/build-wine/Dockerfile

@ -45,10 +45,10 @@ RUN wget -nc https://dl.winehq.org/wine-builds/Release.key && \
apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/ && \
apt-get update -q && \
apt-get install -qy \
wine-stable-amd64:amd64=6.0.2~focal-1 \
wine-stable-i386:i386=6.0.2~focal-1 \
wine-stable:amd64=6.0.2~focal-1 \
winehq-stable:amd64=6.0.2~focal-1 \
wine-stable-amd64:amd64=7.0.0.0~focal-1 \
wine-stable-i386:i386=7.0.0.0~focal-1 \
wine-stable:amd64=7.0.0.0~focal-1 \
winehq-stable:amd64=7.0.0.0~focal-1 \
&& \
rm -rf /var/lib/apt/lists/* && \
apt-get autoremove -y && \

19
contrib/build-wine/prepare-wine.sh

@ -5,11 +5,11 @@ NSIS_FILENAME=nsis-3.08-setup.exe
NSIS_URL=https://downloads.sourceforge.net/project/nsis/NSIS%203/3.08/$NSIS_FILENAME
NSIS_SHA256=bbc76be36ecb2fc00d493c91befdaf71654226ad8a4fc4dc338458916bf224d0
PYINSTALLER_REPO="https://github.com/SomberNight/pyinstaller.git"
PYINSTALLER_COMMIT="80ee4d613ecf75a1226b960a560ee01459e65ddb"
# ^ tag 4.2, plus a custom commit that fixes cross-compilation with MinGW
PYINSTALLER_REPO="https://github.com/pyinstaller/pyinstaller.git"
PYINSTALLER_COMMIT="63438b1842eacd7f081fc53f1f5212bc20b7d02e"
# ^ latest commit from "v4" branch, somewhat after "4.10" tag
PYTHON_VERSION=3.9.10
PYTHON_VERSION=3.9.11
# Let's begin!
@ -44,8 +44,8 @@ for msifile in core dev exe lib pip tools; do
echo "Installing $msifile..."
download_if_not_exist "$PYTHON_DOWNLOADS/${msifile}.msi" "https://www.python.org/ftp/python/$PYTHON_VERSION/$PYARCH/${msifile}.msi"
download_if_not_exist "$PYTHON_DOWNLOADS/${msifile}.msi.asc" "https://www.python.org/ftp/python/$PYTHON_VERSION/$PYARCH/${msifile}.msi.asc"
verify_signature "$PYTHON_DOWNLOADS/${msifile}.msi.asc" $KEYRING_PYTHON_DEV
wine msiexec /i "$PYTHON_DOWNLOADS/${msifile}.msi" /qb TARGETDIR=$WINE_PYHOME
verify_signature "$PYTHON_DOWNLOADS/${msifile}.msi.asc" $KEYRING_PYTHON_DEV || fail "invalid sig for ${msifile}.msi"
wine msiexec /i "$PYTHON_DOWNLOADS/${msifile}.msi" /qb TARGETDIR=$WINE_PYHOME || fail "wine msiexec failed for ${msifile}.msi"
done
break_legacy_easy_install
@ -99,12 +99,7 @@ info "Building PyInstaller."
pushd bootloader
# cross-compile to Windows using host python
python3 ./waf all CC="${GCC_TRIPLET_HOST}-gcc" \
CFLAGS="-static \
-Wno-dangling-else \
-Wno-error=unused-value \
-Wno-error=implicit-function-declaration \
-Wno-error=int-to-pointer-cast \
-Wno-error=stringop-truncation"
CFLAGS="-static"
popd
# sanity check bootloader is there:
[[ -e "PyInstaller/bootloader/Windows-$PYINST_ARCH/runw.exe" ]] || fail "Could not find runw.exe in target dir!"

6
contrib/deterministic-build/requirements-build-wine.txt

@ -14,9 +14,9 @@ pyinstaller-hooks-contrib==2022.2 \
pywin32-ctypes==0.2.0 \
--hash=sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942 \
--hash=sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98
setuptools==49.6.0 \
--hash=sha256:46bd862894ed22c2edff033c758c2dc026324788d758e96788e8f7c11f4e9707 \
--hash=sha256:4dd5bb0a0a0cff77b46ca5dd3a84857ee48c83e8223886b556613c724994073f
setuptools==60.9.2 \
--hash=sha256:80743e57120665fa65665286369a0734bce0e7a629ad36507fb7a4b65e7d2e3b \
--hash=sha256:93b1a3037230bf9aa07327b9fc58f527d5f4e22d36705b55d55ba3ece8606ca6
wheel==0.37.1 \
--hash=sha256:4bdcd7d840138086126cd09254dc6195fb4fc6f01c050a1d7236f2630db1d22a \
--hash=sha256:e9a504e793efbca1b8e0e9cb979a249cf4a0a7b5b8c9e8b65a5e39d49529c1c4

4
contrib/requirements/requirements-build-wine.txt

@ -1,9 +1,9 @@
pip
setuptools<50.0.0 # 50.0.0 might break pyinstaller. see https://github.com/pyinstaller/pyinstaller/commit/e9f9d79d6b23c767512156323d0a5d28c6386a57
setuptools
wheel
# needed by pyinstaller:
pefile>=2017.8.1
altgraph
pywin32-ctypes>=0.2.0
pyinstaller-hooks-contrib>=2020.6
pyinstaller-hooks-contrib>=2020.11

Loading…
Cancel
Save