summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChih-Hsuan Yen2021-05-31 12:17:28 +0800
committerChih-Hsuan Yen2021-05-31 12:17:28 +0800
commite47db65f61098dd6dd8303119592547949c51821 (patch)
tree5a2a8e97b8df9f705871d97b0bea7def959defc4
downloadaur-e47db65f61098dd6dd8303119592547949c51821.tar.gz
wine with IDRASSI's winscard patch
-rw-r--r--.SRCINFO189
-rw-r--r--30-win32-aliases.conf20
-rw-r--r--PKGBUILD196
-rw-r--r--PKGBUILD.diff32
-rw-r--r--package.list1
-rw-r--r--wine-binfmt.conf2
-rw-r--r--wine.install7
7 files changed, 447 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..df4f7fa37948
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,189 @@
+pkgbase = wine-winscard
+ pkgdesc = A compatibility layer for running Windows programs (with IDRASSI's winscard patch)
+ pkgver = 6.9
+ pkgrel = 1
+ url = http://www.winehq.com
+ install = wine.install
+ arch = x86_64
+ license = LGPL
+ makedepends = autoconf
+ makedepends = ncurses
+ makedepends = bison
+ makedepends = perl
+ makedepends = fontforge
+ makedepends = flex
+ makedepends = mingw-w64-gcc
+ makedepends = giflib
+ makedepends = lib32-giflib
+ makedepends = libpng
+ makedepends = lib32-libpng
+ makedepends = gnutls
+ makedepends = lib32-gnutls
+ makedepends = libxinerama
+ makedepends = lib32-libxinerama
+ makedepends = libxcomposite
+ makedepends = lib32-libxcomposite
+ makedepends = libxmu
+ makedepends = lib32-libxmu
+ makedepends = libxxf86vm
+ makedepends = lib32-libxxf86vm
+ makedepends = libldap
+ makedepends = lib32-libldap
+ makedepends = mpg123
+ makedepends = lib32-mpg123
+ makedepends = openal
+ makedepends = lib32-openal
+ makedepends = v4l-utils
+ makedepends = lib32-v4l-utils
+ makedepends = libpulse
+ makedepends = lib32-libpulse
+ makedepends = alsa-lib
+ makedepends = lib32-alsa-lib
+ makedepends = libxcomposite
+ makedepends = lib32-libxcomposite
+ makedepends = mesa
+ makedepends = lib32-mesa
+ makedepends = mesa-libgl
+ makedepends = lib32-mesa-libgl
+ makedepends = opencl-icd-loader
+ makedepends = lib32-opencl-icd-loader
+ makedepends = libxslt
+ makedepends = lib32-libxslt
+ makedepends = gst-plugins-base-libs
+ makedepends = lib32-gst-plugins-base-libs
+ makedepends = vulkan-icd-loader
+ makedepends = lib32-vulkan-icd-loader
+ makedepends = vkd3d
+ makedepends = lib32-vkd3d
+ makedepends = sdl2
+ makedepends = lib32-sdl2
+ makedepends = libcups
+ makedepends = lib32-libcups
+ makedepends = libgphoto2
+ makedepends = sane
+ makedepends = gsm
+ makedepends = vulkan-headers
+ makedepends = samba
+ makedepends = opencl-headers
+ makedepends = fontconfig
+ makedepends = lib32-fontconfig
+ makedepends = lcms2
+ makedepends = lib32-lcms2
+ makedepends = libxml2
+ makedepends = lib32-libxml2
+ makedepends = libxcursor
+ makedepends = lib32-libxcursor
+ makedepends = libxrandr
+ makedepends = lib32-libxrandr
+ makedepends = libxdamage
+ makedepends = lib32-libxdamage
+ makedepends = libxi
+ makedepends = lib32-libxi
+ makedepends = gettext
+ makedepends = lib32-gettext
+ makedepends = freetype2
+ makedepends = lib32-freetype2
+ makedepends = glu
+ makedepends = lib32-glu
+ makedepends = libsm
+ makedepends = lib32-libsm
+ makedepends = gcc-libs
+ makedepends = lib32-gcc-libs
+ makedepends = libpcap
+ makedepends = lib32-libpcap
+ makedepends = faudio
+ makedepends = lib32-faudio
+ makedepends = desktop-file-utils
+ makedepends = git
+ depends = fontconfig
+ depends = lib32-fontconfig
+ depends = lcms2
+ depends = lib32-lcms2
+ depends = libxml2
+ depends = lib32-libxml2
+ depends = libxcursor
+ depends = lib32-libxcursor
+ depends = libxrandr
+ depends = lib32-libxrandr
+ depends = libxdamage
+ depends = lib32-libxdamage
+ depends = libxi
+ depends = lib32-libxi
+ depends = gettext
+ depends = lib32-gettext
+ depends = freetype2
+ depends = lib32-freetype2
+ depends = glu
+ depends = lib32-glu
+ depends = libsm
+ depends = lib32-libsm
+ depends = gcc-libs
+ depends = lib32-gcc-libs
+ depends = libpcap
+ depends = lib32-libpcap
+ depends = faudio
+ depends = lib32-faudio
+ depends = desktop-file-utils
+ optdepends = giflib
+ optdepends = lib32-giflib
+ optdepends = libpng
+ optdepends = lib32-libpng
+ optdepends = libldap
+ optdepends = lib32-libldap
+ optdepends = gnutls
+ optdepends = lib32-gnutls
+ optdepends = mpg123
+ optdepends = lib32-mpg123
+ optdepends = openal
+ optdepends = lib32-openal
+ optdepends = v4l-utils
+ optdepends = lib32-v4l-utils
+ optdepends = libpulse
+ optdepends = lib32-libpulse
+ optdepends = alsa-plugins
+ optdepends = lib32-alsa-plugins
+ optdepends = alsa-lib
+ optdepends = lib32-alsa-lib
+ optdepends = libjpeg-turbo
+ optdepends = lib32-libjpeg-turbo
+ optdepends = libxcomposite
+ optdepends = lib32-libxcomposite
+ optdepends = libxinerama
+ optdepends = lib32-libxinerama
+ optdepends = ncurses
+ optdepends = lib32-ncurses
+ optdepends = opencl-icd-loader
+ optdepends = lib32-opencl-icd-loader
+ optdepends = libxslt
+ optdepends = lib32-libxslt
+ optdepends = gst-plugins-base-libs
+ optdepends = lib32-gst-plugins-base-libs
+ optdepends = vkd3d
+ optdepends = lib32-vkd3d
+ optdepends = sdl2
+ optdepends = lib32-sdl2
+ optdepends = libgphoto2
+ optdepends = sane
+ optdepends = gsm
+ optdepends = cups
+ optdepends = samba
+ optdepends = dosbox
+ provides = wine=6.9
+ conflicts = wine
+ options = staticlibs
+ source = https://dl.winehq.org/wine/source/6.x/wine-6.9.tar.xz
+ source = https://dl.winehq.org/wine/source/6.x/wine-6.9.tar.xz.sign
+ source = 30-win32-aliases.conf
+ source = wine-binfmt.conf
+ source = scard4wine-yan12125::git+https://git.code.sf.net/u/yan12125/scard4wine.git#commit=480dbba00d6dd555d9a36a83d024031ae8c198cc
+ validpgpkeys = 5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7
+ validpgpkeys = DA23579A74D4AD9AF9D3F945CEFAC8EAAF17519D
+ sha512sums = e9dc4da8cd6553db4227f09b5734513939d7e361449f52472a1f51ae569377a2931a0ab6f402aef751587ff1fa50f10f222b4479aba44f862db320931eeff363
+ sha512sums = SKIP
+ sha512sums = 6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb
+ sha512sums = bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285
+ sha512sums = SKIP
+ sha512sums = SKIP
+
+pkgname = wine-winscard
+
diff --git a/30-win32-aliases.conf b/30-win32-aliases.conf
new file mode 100644
index 000000000000..99ae1f7b83a5
--- /dev/null
+++ b/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/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..c486561ddfc9
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,196 @@
+# 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=6.9
+pkgrel=1
+
+_pkgbasever=${pkgver/rc/-rc}
+
+source=(https://dl.winehq.org/wine/source/6.x/$pkgname-$_pkgbasever.tar.xz{,.sign}
+ 30-win32-aliases.conf
+ wine-binfmt.conf)
+sha512sums=('e9dc4da8cd6553db4227f09b5734513939d7e361449f52472a1f51ae569377a2931a0ab6f402aef751587ff1fa50f10f222b4479aba44f862db320931eeff363'
+ 'SKIP'
+ '6e54ece7ec7022b3c9d94ad64bdf1017338da16c618966e8baf398e6f18f80f7b0576edf1d1da47ed77b96d577e4cbb2bb0156b0b11c183a0accf22654b0a2bb'
+ 'bdde7ae015d8a98ba55e84b86dc05aca1d4f8de85be7e4bd6187054bfe4ac83b5a20538945b63fb073caab78022141e9545685e4e3698c97ff173cf30859e285'
+ 'SKIP')
+validpgpkeys=(5AC1A08B03BD7A313E0A955AF5E6E9EEB9461DD7
+ DA23579A74D4AD9AF9D3F945CEFAC8EAAF17519D)
+
+pkgdesc="A compatibility layer for running Windows programs"
+url="http://www.winehq.com"
+arch=(x86_64)
+options=(staticlibs)
+license=(LGPL)
+depends=(
+ fontconfig lib32-fontconfig
+ lcms2 lib32-lcms2
+ libxml2 lib32-libxml2
+ libxcursor lib32-libxcursor
+ libxrandr lib32-libxrandr
+ libxdamage lib32-libxdamage
+ libxi lib32-libxi
+ gettext lib32-gettext
+ freetype2 lib32-freetype2
+ glu lib32-glu
+ libsm lib32-libsm
+ gcc-libs lib32-gcc-libs
+ libpcap lib32-libpcap
+ faudio lib32-faudio
+ desktop-file-utils
+)
+makedepends=(autoconf ncurses bison perl fontforge flex mingw-w64-gcc
+ giflib lib32-giflib
+ libpng lib32-libpng
+ gnutls lib32-gnutls
+ libxinerama lib32-libxinerama
+ libxcomposite lib32-libxcomposite
+ libxmu lib32-libxmu
+ libxxf86vm lib32-libxxf86vm
+ libldap lib32-libldap
+ mpg123 lib32-mpg123
+ openal lib32-openal
+ v4l-utils lib32-v4l-utils
+ libpulse lib32-libpulse
+ alsa-lib lib32-alsa-lib
+ libxcomposite lib32-libxcomposite
+ mesa lib32-mesa
+ mesa-libgl lib32-mesa-libgl
+ opencl-icd-loader lib32-opencl-icd-loader
+ libxslt lib32-libxslt
+ gst-plugins-base-libs lib32-gst-plugins-base-libs
+ vulkan-icd-loader lib32-vulkan-icd-loader
+ vkd3d lib32-vkd3d
+ sdl2 lib32-sdl2
+ libcups lib32-libcups
+ libgphoto2
+ sane
+ gsm
+ vulkan-headers
+ samba
+ opencl-headers
+)
+optdepends=(
+ giflib lib32-giflib
+ libpng lib32-libpng
+ libldap lib32-libldap
+ gnutls lib32-gnutls
+ mpg123 lib32-mpg123
+ openal lib32-openal
+ v4l-utils lib32-v4l-utils
+ libpulse lib32-libpulse
+ alsa-plugins lib32-alsa-plugins
+ alsa-lib lib32-alsa-lib
+ libjpeg-turbo lib32-libjpeg-turbo
+ libxcomposite lib32-libxcomposite
+ libxinerama lib32-libxinerama
+ ncurses lib32-ncurses
+ opencl-icd-loader lib32-opencl-icd-loader
+ libxslt lib32-libxslt
+ gst-plugins-base-libs lib32-gst-plugins-base-libs
+ vkd3d lib32-vkd3d
+ sdl2 lib32-sdl2
+ libgphoto2
+ sane
+ gsm
+ cups
+ samba dosbox
+)
+makedepends=(${makedepends[@]} ${depends[@]})
+install=wine.install
+
+prepare() {
+ # Allow ccache to work
+ mv wine-$_pkgbasever $pkgname
+
+ scard4wine_dir=scard4wine-yan12125/src
+ cp -v $scard4wine_dir/winscard.c $pkgname/dlls/winscard/winscard.c
+ cp -v $scard4wine_dir/winscard.spec $pkgname/dlls/winscard/winscard.spec
+ cp -v $scard4wine_dir/winscard.h $pkgname/include/winscard.h
+ cp -v $scard4wine_dir/winsmcrd.h $pkgname/include/winsmcrd.h
+ cp -v $scard4wine_dir/wine-compat56.h $pkgname/include/wine-compat.h
+
+ sed -i '/-mno-cygwin/d' $pkgname/dlls/winscard/Makefile.in
+
+ # Doesn't compile without remove these flags as of 4.10
+ export CFLAGS="${CFLAGS/-fno-plt/}"
+ export LDFLAGS="${LDFLAGS/,-z,now/}"
+
+ sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i $pkgname/configure*
+
+ # 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:
+
+source+=("scard4wine-yan12125::git+https://git.code.sf.net/u/yan12125/scard4wine.git#commit=480dbba00d6dd555d9a36a83d024031ae8c198cc")
+sha512sums+=('SKIP')
+makedepends+=(git)
+provides=("$pkgname=$pkgver")
+conflicts=("$pkgname")
+pkgname+='-winscard'
+pkgdesc+=" (with IDRASSI's winscard patch)"
diff --git a/PKGBUILD.diff b/PKGBUILD.diff
new file mode 100644
index 000000000000..b3656d8d5358
--- /dev/null
+++ b/PKGBUILD.diff
@@ -0,0 +1,32 @@
+--- PKGBUILD 2021-05-31 11:52:38.124496766 +0800
++++ PKGBUILD 2021-05-27 10:27:26.099954762 +0800
+@@ -103,7 +103,16 @@
+
+ prepare() {
+ # Allow ccache to work
+- mv $pkgname-$_pkgbasever $pkgname
++ mv wine-$_pkgbasever $pkgname
++
++ scard4wine_dir=scard4wine-yan12125/src
++ cp -v $scard4wine_dir/winscard.c $pkgname/dlls/winscard/winscard.c
++ cp -v $scard4wine_dir/winscard.spec $pkgname/dlls/winscard/winscard.spec
++ cp -v $scard4wine_dir/winscard.h $pkgname/include/winscard.h
++ cp -v $scard4wine_dir/winsmcrd.h $pkgname/include/winsmcrd.h
++ cp -v $scard4wine_dir/wine-compat56.h $pkgname/include/wine-compat.h
++
++ sed -i '/-mno-cygwin/d' $pkgname/dlls/winscard/Makefile.in
+
+ # Doesn't compile without remove these flags as of 4.10
+ export CFLAGS="${CFLAGS/-fno-plt/}"
+@@ -176,3 +185,11 @@
+ }
+
+ # vim:set ts=8 sts=2 sw=2 et:
++
++source+=("scard4wine-yan12125::git+https://git.code.sf.net/u/yan12125/scard4wine.git#commit=480dbba00d6dd555d9a36a83d024031ae8c198cc")
++sha512sums+=('SKIP')
++makedepends+=(git)
++provides=("$pkgname=$pkgver")
++conflicts=("$pkgname")
++pkgname+='-winscard'
++pkgdesc+=" (with IDRASSI's winscard patch)"
diff --git a/package.list b/package.list
new file mode 100644
index 000000000000..cfbab757f804
--- /dev/null
+++ b/package.list
@@ -0,0 +1 @@
+wine-winscard
diff --git a/wine-binfmt.conf b/wine-binfmt.conf
new file mode 100644
index 000000000000..4d4307336587
--- /dev/null
+++ b/wine-binfmt.conf
@@ -0,0 +1,2 @@
+# Start WINE on Windows executables
+:DOSWin:M::MZ::/usr/bin/wine:
diff --git a/wine.install b/wine.install
new file mode 100644
index 000000000000..cbe10cc59dc7
--- /dev/null
+++ b/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"
+}