From fa0b7b998c7b11cabfbb1c41d5674934c336e368 Mon Sep 17 00:00:00 2001 From: tar Date: Sun, 28 Apr 2024 17:36:45 +0200 Subject: [PATCH] Update the wine buld script --- wine-build-debian12.sh | 84 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 72 insertions(+), 12 deletions(-) diff --git a/wine-build-debian12.sh b/wine-build-debian12.sh index c4782ca..0580569 100755 --- a/wine-build-debian12.sh +++ b/wine-build-debian12.sh @@ -3,7 +3,7 @@ # RUN AS NORMAL USER! X_BIT=32 -X_COMMIT=fd1153552d7 +X_TAG=wine-9.5 # tag or branch name X_PREFIX=$HOME/.local # default is /usr/local info() { @@ -103,7 +103,39 @@ if [ $X_BIT == 64 ]; then # libnetapi for Samba NetAPI support sudo apt install -y samba-dev # Kerberos support - sudo apt install libkrb5-dev + sudo apt install -y libkrb5-dev + # Direct3D 12 support + sudo apt install -y libvkd3d-dev + # mp3 codec support + sudo apt install -y libmpg123-dev + # TIFF format support + sudo apt install -y libtiff-dev + # JPEG format support + sudo apt install -y libjpeg-dev + # xslt support + sudo apt install -y libxslt1-dev + # XAudio sound processing + sudo apt install -y libfaudio-dev + # wcap support + sudo apt install -y libpcap-dev + # USB support + sudo apt install -y libusb-1.0-0-dev + # OpenLDAP support + sudo apt install -y libldap-dev + # OpenAL support + sudo apt install -y libopenal-dev + # CUPS support + sudo apt install -y libcups2-dev + # ISDN support (CAPI) + sudo apt install -y libcapi20-dev + # digital camera support + sudo apt install -y libgphoto2-dev + # Collection of video4linux support libraries + sudo apt install -y libv4l-dev + # Scanners support + sudo apt install -y libsane-dev + # Smart card using PC/SC + sudo apt install -y libpcsclite-dev fi sudo apt install -y libpulse-dev:i386 \ @@ -129,7 +161,23 @@ sudo apt install -y libpulse-dev:i386 \ libxkbregistry-dev:i386 \ ocl-icd-opencl-dev:i386 \ samba-dev:i386 \ - libkrb5-dev:i386 + libkrb5-dev:i386 \ + libvkd3d-dev:i386 \ + libmpg123-dev:i386 \ + libtiff-dev:i386 \ + libjpeg-dev:i386 \ + libxslt1-dev:i386 \ + libfaudio-dev:i386 \ + libpcap-dev:i386 \ + libusb-1.0-0-dev:i386 \ + libldap-dev:i386 \ + libopenal-dev:i386 \ + libcups2-dev:i386 \ + libcapi20-dev:i386 \ + libgphoto2-dev:i386 \ + libv4l-dev:i386 \ + libsane-dev:i386 \ + libpcsclite-dev:i386 sudo apt install -y gstreamer1.0-plugins-good:i386 sudo apt install -y gstreamer1.0-plugins-ugly:i386 @@ -138,21 +186,28 @@ sudo apt install -y gstreamer1.0-plugins-ugly cd ~/Public -git clone --single-branch -b master https://gitlab.winehq.org/wine/wine.git +if [ ! -d 'wine' ]; then + git clone https://gitlab.winehq.org/wine/wine.git + cd wine +else + cd wine + git fetch --all + git checkout master + git pull origin master +fi -cd wine - -git checkout $X_COMMIT +info "Confirm by pressing enter switching to $X_TAG"; read +git checkout $X_TAG cd .. -mkdir wine32 +mkdir -p wine32 WoW='' if [ $X_BIT == 64 ]; then - mkdir wine64 + mkdir -p wine64 cd wine64 - ../wine/configure CC="ccache gcc" CROSSCC="ccache x86_64-w64-mingw32-gcc" --enable-win64 -prefix=$X_PREFIX --disable-tests + ../wine/configure CFLAGS="-fpermissive" CC="ccache gcc" CROSSCC="ccache x86_64-w64-mingw32-gcc" --enable-win64 -prefix=$X_PREFIX --disable-tests info "Press enter to proceed with compiling wine 64 bit"; read make -j$(nproc) cd .. @@ -161,17 +216,22 @@ fi cd wine32 -PKG_CONFIG_PATH=/usr/lib/pkgconfig ../wine/configure CC="ccache gcc" CROSSCC="ccache i686-w64-mingw32-gcc" -prefix=$X_PREFIX --disable-tests $WoW +PKG_CONFIG_PATH=/usr/lib/pkgconfig ../wine/configure CFLAGS="-fpermissive" CC="ccache gcc" CROSSCC="ccache i686-w64-mingw32-gcc" -prefix=$X_PREFIX --disable-tests $WoW info "Press enter to proceed with compiling wine 32 bit"; read make -j$(nproc) +if [ $? != 0 ]; then + error "Compilation failed" + exit 1 +fi + cd $HOME/.local/bin wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks chmod 744 winetricks cd $HOME/Public/wine32 -info "Now it can be installed into ${X_PREFIX} by the make install command"; +info "Now it can be installed into ${X_PREFIX} by the make install command in wine32 or wine64 dir"; info "REBOOT NOW and then read the notes below" # (!) FIRST RUN for 32 bit: