Update the wine buld script

This commit is contained in:
tar 2024-04-28 17:36:45 +02:00
parent ffc1bd791b
commit fa0b7b998c
1 changed files with 72 additions and 12 deletions

View File

@ -3,7 +3,7 @@
# RUN AS NORMAL USER! # RUN AS NORMAL USER!
X_BIT=32 X_BIT=32
X_COMMIT=fd1153552d7 X_TAG=wine-9.5 # tag or branch name
X_PREFIX=$HOME/.local # default is /usr/local X_PREFIX=$HOME/.local # default is /usr/local
info() { info() {
@ -103,7 +103,39 @@ if [ $X_BIT == 64 ]; then
# libnetapi for Samba NetAPI support # libnetapi for Samba NetAPI support
sudo apt install -y samba-dev sudo apt install -y samba-dev
# Kerberos support # 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 fi
sudo apt install -y libpulse-dev:i386 \ sudo apt install -y libpulse-dev:i386 \
@ -129,7 +161,23 @@ sudo apt install -y libpulse-dev:i386 \
libxkbregistry-dev:i386 \ libxkbregistry-dev:i386 \
ocl-icd-opencl-dev:i386 \ ocl-icd-opencl-dev:i386 \
samba-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-good:i386
sudo apt install -y gstreamer1.0-plugins-ugly:i386 sudo apt install -y gstreamer1.0-plugins-ugly:i386
@ -138,21 +186,28 @@ sudo apt install -y gstreamer1.0-plugins-ugly
cd ~/Public 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 info "Confirm by pressing enter switching to $X_TAG"; read
git checkout $X_TAG
git checkout $X_COMMIT
cd .. cd ..
mkdir wine32 mkdir -p wine32
WoW='' WoW=''
if [ $X_BIT == 64 ]; then if [ $X_BIT == 64 ]; then
mkdir wine64 mkdir -p wine64
cd 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 info "Press enter to proceed with compiling wine 64 bit"; read
make -j$(nproc) make -j$(nproc)
cd .. cd ..
@ -161,17 +216,22 @@ fi
cd wine32 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 info "Press enter to proceed with compiling wine 32 bit"; read
make -j$(nproc) make -j$(nproc)
if [ $? != 0 ]; then
error "Compilation failed"
exit 1
fi
cd $HOME/.local/bin cd $HOME/.local/bin
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod 744 winetricks chmod 744 winetricks
cd $HOME/Public/wine32 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" info "REBOOT NOW and then read the notes below"
# (!) FIRST RUN for 32 bit: # (!) FIRST RUN for 32 bit: