Package Details: wine-git 9.1.r52.ge3431a02e1d-1

Git Clone URL: https://aur.archlinux.org/wine-git.git (read-only, click to copy)
Package Base: wine-git
Description: A compatibility layer for running Windows programs (git version)
Upstream URL: https://www.winehq.org/
Keywords: windows wine
Licenses: LGPL
Conflicts: bin32-wine, wine, wine-wow64
Provides: bin32-wine, wine, wine-wow64
Replaces: bin32-wine
Submitter: None
Maintainer: dbermond
Last Packager: dbermond
Votes: 86
Popularity: 0.002276
First Submitted: 2007-07-18 16:01 (UTC)
Last Updated: 2024-01-31 02:36 (UTC)

Latest Comments

1 2 3 4 5 6 .. 14 Next › Last »

dbermond commented on 2024-01-06 23:43 (UTC)

@alex.henrie Nice, thanks for the feedback.

alex.henrie commented on 2024-01-06 03:48 (UTC)

@dbermond The wine-git package is working much better now, thank you!

dbermond commented on 2024-01-04 19:23 (UTC)

@alex.henrie Package updated to match repository package. No additional dependencies added, in order to strictly match the repository one.

alex.henrie commented on 2023-12-30 20:38 (UTC)

Could you please synchronize the dependency list and the build steps with the regular wine package? https://gitlab.archlinux.org/archlinux/packaging/packages/wine/-/commits/main/PKGBUILD

You can also add lib32-libgphoto2 and lib32-unixodbc to the makedepends and optdepends, and lib32-gst-plugins-ugly to the optdepends, since they are AUR packages.

ramatullah commented on 2022-06-04 14:19 (UTC)

Has somebody encountered this?

tools/winebuild/winebuild -b x86_64-w64-mingw32 -w --implib -o dlls/winmm/libwinmm.delay.a --export \
../wine/dlls/winmm/winmm.spec
/usr/bin/x86_64-w64-mingw32-dlltool: failed to open temporary tail file: winmm_dll_t.o: not found

dbermond commented on 2022-03-28 15:13 (UTC)

@xantares repository wine is compiled with lto disabled, so this flag is not needed. You can compare with repository wine-staging, which does not used this compiler flag, and is basically the same.

xantares commented on 2022-03-28 14:54 (UTC)

wine has -ffat-lto-objects c flag, I dont know if it should be added there too

DarkShadow44 commented on 2022-01-22 19:28 (UTC) (edited on 2022-01-22 19:58 (UTC) by DarkShadow44)

For build I have to add -I/usr/include/freetype2 to CFLAGS. No idea what exactly broke, but this is needed for the 64Bit build.

EDIT: Apparently I lost some files from libsysprof-capture. No idea how, but reinstalling that fixed it...

Neko-san commented on 2022-01-06 22:46 (UTC) (edited on 2022-01-06 22:50 (UTC) by Neko-san)

@rtentser I modified this PKGBUILD yesterday for a different purpose (applying a patch), but you can easily modify what I used for the same purpose (I removed my stuff that's irrelevant to you).

Just edit pkgver, _pkgver, and the checksum for that tarball; then, delete the hidden .SRCINFO file from the snapshot here and run: makepkg --printsrcinfo &> .SRCINFO, rename wine-git.install to wine.install, then you can make the package.

# Maintainer : Daniel Bermond <dbermond@archlinux.org>
# Contributor: Sidney Crestani <sidneycrestani@archlinux.net>
# Contributor: sxe <sxxe@gmx.de>

pkgname=wine
pkgver=7.0rc4
_pkgver=7.0-rc4
pkgrel=1
pkgdesc='A compatibility layer for running Windows programs (git version)'
arch=('x86_64' 'x86_64_v3')
url='https://www.winehq.org/'
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=('git' 'autoconf' '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'
    'libgl'                 'lib32-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'            'tar'
    'sane'
    'gsm'
    'vulkan-headers'
    'opencl-headers'
    'samba'
)
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'
    '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'
    'libgphoto2'
    'sane'
    'gsm'
    'cups'
    'samba'
    'dosbox'
)
# LTO has to be disabled for 7.0-rc4 or else the build will fail
options=('staticlibs' '!lto')
install="${pkgname}.install"
provides=("wine=${pkgver}" "bin32-wine=${pkgver}" "wine-wow64=${pkgver}")
conflicts=('wine-git' 'bin32-wine' 'wine-wow64' 'wine-staging')
replaces=('bin32-wine')
source=("${pkgname}-${_pkgver}.tar.gz::https://github.com/wine-mirror/wine/archive/refs/tags/${pkgname}-${_pkgver}.tar.gz"
        '30-win32-aliases.conf'
        'wine-binfmt.conf'
        )
sha256sums=('7a294575bdc5ded333121db9c6d392a36cc506a0ee66c4089442a15e1dc42fdf'
            '9901a5ee619f24662b241672a7358364617227937d5f6d3126f70528ee5111e7'
            '6dfdefec305024ca11f35ad7536565f5551f09119dda2028f194aee8f77077a4')

prepare() {
    rm -rf build-{32,64}
    mkdir -p build-{32,64}
    tar xvf ${pkgname}-${_pkgver}.tar.gz
    mv ${pkgname}-${pkgname}-${_pkgver} wine

    # fix path of opencl headers
    sed 's|OpenCL/opencl.h|CL/opencl.h|g' -i wine/configure*

    # fix openldap 2.5+ detection
    sed 's/-lldap_r/-lldap/' -i wine/configure
}

## Leftover from wine-git PKGBUILD; commented out to prevent makepkg failure
#pkgver() {
#    git -C wine describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^wine.//;s/^v//;s/\.rc/rc/'
#}

build() {
    # workaround for FS#55128
    # https://bugs.archlinux.org/task/55128
    # https://bugs.winehq.org/show_bug.cgi?id=43530
    export CFLAGS="${CFLAGS/-fno-plt/}"
    export LDFLAGS="${LDFLAGS/,-z,now/}"

    # Enforce gcc and g++ and unset potential globally set Clang and any potentially globally set LLVM variables
    export CC=gcc
    export CXX=g++
    export LD=ld
    export AR=""
    export NM=""
    export RANLIB=""
    export STRIP=""
    export OBJCOPY=""
    # Reset debug flags to makepkg.conf defaults, in case Clang is globally set
    export DEBUG_CFLAGS="-g -fvar-tracking-assignments"
    export DEBUG_CXXFLAGS="-g -fvar-tracking-assignments"
    # -O3 optimization because we can :p
    export CFLAGS+=" -O3"
    export LDFLAGS+=" -O3"
    export CROSSCFLAGS=" -g -O3"

    # build wine 64-bit
    # (according to the wine wiki, this 64-bit/32-bit building order is mandatory)
    printf '%s\n' '  -> Building wine-64...'
    cd build-64
    ../wine/configure \
        --prefix='/usr' \
        --libdir='/usr/lib' \
        --with-x \
        --with-gstreamer \
        --enable-win64
    make

    # build wine 32-bit
    printf '%s\n' '  -> Building wine-32...'
    cd "${srcdir}/build-32"
    export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'
    ../wine/configure \
        --prefix='/usr' \
        --libdir='/usr/lib32' \
        --with-x \
        --with-gstreamer \
        --with-wine64="${srcdir}/build-64"
    make
}

package() {
    # package wine 32-bit
    # (according to the wine wiki, this reverse 32-bit/64-bit packaging order is important)
    printf '%s\n' '  -> Packaging wine-32...'
    cd build-32
    make prefix="${pkgdir}/usr" \
         libdir="${pkgdir}/usr/lib32" \
         dlldir="${pkgdir}/usr/lib32/wine" \
         install

    # package wine 64-bit
    printf '%s\n' '  -> Packaging wine-64...'
    cd "${srcdir}/build-64"
    make prefix="${pkgdir}/usr" \
         libdir="${pkgdir}/usr/lib" \
         dlldir="${pkgdir}/usr/lib/wine" \
         install

    # font aliasing settings for win32 applications
    install -d -m755 "${pkgdir}/usr/share/fontconfig/conf.default"
    install -D -m644 "${srcdir}/30-win32-aliases.conf" -t "${pkgdir}/usr/share/fontconfig/conf.avail"
    ln -s ../conf.avail/30-win32-aliases.conf "${pkgdir}/usr/share/fontconfig/conf.default/30-win32-aliases.conf"

    # wine binfmt
    install -D -m644 "${srcdir}/wine-binfmt.conf" "${pkgdir}/usr/lib/binfmt.d/wine.conf"

    # strip native PE libraries
    i686-w64-mingw32-strip --strip-unneeded "${pkgdir}/usr/lib32/wine/i386-windows"/*.dll
    "${CARCH}-w64-mingw32-strip" --strip-unneeded "${pkgdir}/usr/lib/wine/${CARCH}-windows"/*.dll
}