Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2023-04-21 18:43:46 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2023-04-21 18:43:46 +0200
commit279e0a2b7ab7aa0796afd384789e53eb6434368c (patch)
tree674e993a722852c723824ac5219d7a0460bdf5dc
parentb5bd72a494367c8be09989235503bbdbc018cd81 (diff)
community/wine: copied from multilib
-rw-r--r--community/wine/30-win32-aliases.conf20
-rw-r--r--community/wine/PKGBUILD154
-rw-r--r--community/wine/wine-binfmt.conf2
-rw-r--r--community/wine/wine.install7
4 files changed, 183 insertions, 0 deletions
diff --git a/community/wine/30-win32-aliases.conf b/community/wine/30-win32-aliases.conf
new file mode 100644
index 00000000..99ae1f7b
--- /dev/null
+++ b/community/wine/30-win32-aliases.conf
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+ <alias binding="same">
+ <family>MS Shell Dlg</family>
+ <accept><family>Microsoft Sans Serif</family></accept>
+ <default><family>sans-serif</family></default>
+ </alias>
+ <alias binding="same">
+ <family>MS Shell Dlg 2</family>
+ <accept><family>Tahoma</family></accept>
+ <default><family>sans-serif</family></default>
+ </alias>
+
+ <alias binding="same">
+ <family>MS Sans Serif</family>
+ <prefer><family>Microsoft Sans Serif</family></prefer>
+ <default><family>sans-serif</family></default>
+ </alias>
+</fontconfig>
diff --git a/community/wine/PKGBUILD b/community/wine/PKGBUILD
new file mode 100644
index 00000000..2a624290
--- /dev/null
+++ b/community/wine/PKGBUILD
@@ -0,0 +1,154 @@
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Eduardo Romero <eduardo@archlinux.org>
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
+
+pkgname=wine
+pkgver=8.5
+pkgrel=1
+
+_pkgbasever=${pkgver/rc/-rc}
+
+source=(https://dl.winehq.org/wine/source/8.x/$pkgname-$_pkgbasever.tar.xz{,.sign}
+ 30-win32-aliases.conf
+ wine-binfmt.conf)
+sha512sums=('f6aaab8a32eb7bce7f48d21d99417c9e6e8fe41b3d36320762775ef954db7ddd4fcff01d56475f35038d814557834a41a9e3ae85e5cae8a1b820c5044b42a327'
+ 'SKIP'
+ '6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb'
+ 'bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285')
+validpgpkeys=(5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7
+ DA23579A74D4AD9AF9D3F945CEFAC8EAAF17519D)
+
+pkgdesc="A compatibility layer for running Windows programs"
+url="https://www.winehq.org"
+arch=(i486 i686 pentium4 x86_64)
+options=(staticlibs !lto)
+license=(LGPL)
+depends=(
+ fontconfig fontconfig
+ libxcursor libxcursor
+ libxrandr libxrandr
+ libxi libxi
+ gettext gettext
+ freetype2 freetype2
+ gcc-libs gcc-libs
+ libpcap libpcap
+ desktop-file-utils
+)
+makedepends=(autoconf bison perl flex
+ giflib giflib
+ gnutls gnutls
+ libxinerama libxinerama
+ libxcomposite libxcomposite
+ libxxf86vm libxxf86vm
+ v4l-utils v4l-utils
+ libpulse libpulse
+ alsa-lib alsa-lib
+ libxcomposite libxcomposite
+ mesa mesa
+ mesa-libgl mesa-libgl
+ opencl-icd-loader opencl-icd-loader
+ gst-plugins-base-libs gst-plugins-base-libs
+ vulkan-icd-loader vulkan-icd-loader
+ sdl2 sdl2
+ libcups libcups
+ libgphoto2
+ sane
+ vulkan-headers
+ samba
+ opencl-headers
+)
+optdepends=(
+ giflib giflib
+ libldap libldap
+ gnutls gnutls
+ v4l-utils v4l-utils
+ libpulse libpulse
+ alsa-plugins alsa-plugins
+ alsa-lib alsa-lib
+ libxcomposite libxcomposite
+ libxinerama libxinerama
+ opencl-icd-loader opencl-icd-loader
+ gst-plugins-base-libs gst-plugins-base-libs
+ sdl2 sdl2
+ libgphoto2
+ sane
+ cups
+ samba dosbox
+)
+makedepends=(${makedepends[@]} ${depends[@]})
+install=wine.install
+
+prepare() {
+ # Allow ccache to work
+ mv $pkgname-$_pkgbasever $pkgname
+
+ # Doesn't compile without remove these flags as of 4.10
+ export CFLAGS="${CFLAGS/-fno-plt/} -ffat-lto-objects"
+ export LDFLAGS="${LDFLAGS/,-z,now/}"
+
+ # Get rid of old build dirs
+ rm -rf $pkgname-{32,64}-build
+ mkdir $pkgname-32-build
+}
+
+build() {
+ cd "$srcdir"
+
+ msg2 "Building Wine-64..."
+
+ mkdir $pkgname-64-build
+ cd "$srcdir/$pkgname-64-build"
+ ../$pkgname/configure \
+ --prefix=/usr \
+ --libdir=/usr/lib \
+ --with-x \
+ --with-gstreamer \
+ --enable-win64
+ # Gstreamer was disabled for FS#33655
+
+ make
+
+ _wine32opts=(
+ --libdir=/usr/lib32
+ --with-wine64="$srcdir/$pkgname-64-build"
+ )
+
+ export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
+
+ msg2 "Building Wine-32..."
+ cd "$srcdir/$pkgname-32-build"
+ ../$pkgname/configure \
+ --prefix=/usr \
+ --with-x \
+ --with-gstreamer \
+ "${_wine32opts[@]}"
+
+ make
+}
+
+package() {
+ msg2 "Packaging Wine-32..."
+ cd "$srcdir/$pkgname-32-build"
+
+ make prefix="$pkgdir/usr" \
+ libdir="$pkgdir/usr/lib32" \
+ dlldir="$pkgdir/usr/lib32/wine" install
+
+ msg2 "Packaging Wine-64..."
+ cd "$srcdir/$pkgname-64-build"
+ make prefix="$pkgdir/usr" \
+ libdir="$pkgdir/usr/lib" \
+ dlldir="$pkgdir/usr/lib/wine" install
+
+ # Font aliasing settings for Win32 applications
+ install -d "$pkgdir"/usr/share/fontconfig/conf.{avail,default}
+ install -m644 "$srcdir/30-win32-aliases.conf" "$pkgdir/usr/share/fontconfig/conf.avail"
+ ln -s ../conf.avail/30-win32-aliases.conf "$pkgdir/usr/share/fontconfig/conf.default/30-win32-aliases.conf"
+ install -Dm 644 "$srcdir/wine-binfmt.conf" "$pkgdir/usr/lib/binfmt.d/wine.conf"
+
+ i686-w64-mingw32-strip --strip-unneeded "$pkgdir"/usr/lib32/wine/i386-windows/*.dll
+ x86_64-w64-mingw32-strip --strip-unneeded "$pkgdir"/usr/lib/wine/x86_64-windows/*.dll
+}
+
+# vim:set ts=8 sts=2 sw=2 et:
diff --git a/community/wine/wine-binfmt.conf b/community/wine/wine-binfmt.conf
new file mode 100644
index 00000000..4d430733
--- /dev/null
+++ b/community/wine/wine-binfmt.conf
@@ -0,0 +1,2 @@
+# Start WINE on Windows executables
+:DOSWin:M::MZ::/usr/bin/wine:
diff --git a/community/wine/wine.install b/community/wine/wine.install
new file mode 100644
index 00000000..cbe10cc5
--- /dev/null
+++ b/community/wine/wine.install
@@ -0,0 +1,7 @@
+post_install() {
+ echo "Run 'systemctl restart systemd-binfmt' in order to make the wine binfmt available on your system."
+}
+
+post_remove() {
+ echo "binfmt binary formats will be updated at reboot"
+}