diff --git a/srcpkgs/wine/template b/srcpkgs/wine/template index cde19f7d2bd..aacaea75103 100644 --- a/srcpkgs/wine/template +++ b/srcpkgs/wine/template @@ -1,6 +1,6 @@ # Template file for 'wine' pkgname=wine -version=6.3 +version=6.4 revision=1 _pkgver=${version/r/-r} create_wrksrc=yes @@ -13,8 +13,8 @@ license="LGPL-2.1-or-later" homepage="http://www.winehq.org/" distfiles="https://dl.winehq.org/wine/source/${version%.*}.x/wine-${_pkgver}.tar.xz https://github.com/wine-staging/wine-staging/archive/v${_pkgver}.tar.gz" -checksum="682a77c1fd12f56347ca2080d85fe17def1b655d3241d94582f87591d9d0cc3b - c490127b2bbbe326923ad32a5b730dc4d7541a07085a9553929b64b52a556c58" +checksum="1b2d2b453d90d6c2d7124e47faeae50e5c54c25f69bee1d06531843261024c8f + 849daae53c114e85e5c3d5af13ae6dfd9b9bb46cf64f1c275e683212c5c5942e" build_options="mingw staging" build_options_default="mingw" diff --git a/srcpkgs/wine/templateo b/srcpkgs/wine/templateo new file mode 100644 index 00000000000..71061a25eb8 --- /dev/null +++ b/srcpkgs/wine/templateo @@ -0,0 +1,158 @@ +# Template file for 'wine' +pkgname=wine +version=6.4 +revision=1 +_pkgver=${version/r/-r} +create_wrksrc=yes +build_wrksrc=wine-${_pkgver} +build_style=gnu-configure +configure_args="--bindir=/usr/libexec/wine" +short_desc="Run Microsoft Windows applications" +maintainer="Helmut Pozimski " +license="LGPL-2.1-or-later" +homepage="http://www.winehq.org/" +distfiles="https://dl.winehq.org/wine/source/${version%.*}.x/wine-${_pkgver}.tar.xz + https://github.com/wine-staging/wine-staging/archive/v${_pkgver}.tar.gz" +checksum="682a77c1fd12f56347ca2080d85fe17def1b655d3241d94582f87591d9d0cc3b + c490127b2bbbe326923ad32a5b730dc4d7541a07085a9553929b64b52a556c58" + +build_options="mingw staging" +build_options_default="mingw" +desc_option_mingw="Use the MinGW cross compiler to build WinPE DLLs" +desc_option_staging="Apply the wine-staging patchset" + +lib32mode=full +archs="i686* x86_64*" + +_nopie=no +if [ "$XBPS_TARGET_MACHINE" = i686-musl ]; then + # build system adds -fno-PIC for 32bit builds, which, + # coupled with our default pie toolchain, leads to textrels + # in the final binary; musl doesn't support those + _nopie=yes +fi + +hostmakedepends="pkg-config flex gettext + $(vopt_if mingw "cross-${XBPS_TARGET_MACHINE%-musl}-w64-mingw32") + $(vopt_if staging 'autoconf')" +makedepends="gettext-devel lcms2-devel zlib-devel ncurses-devel + glu-devel libSM-devel libXext-devel libX11-devel libXpm-devel + libXinerama-devel libXcomposite-devel libXmu-devel libXxf86vm-devel + libXcursor-devel libXrandr-devel libXdamage-devel libXi-devel + libldap-devel alsa-lib-devel libgphoto2-devel libxml2-devel + libxslt-devel glib-devel freetype-devel pulseaudio-devel + mpg123-devel libgsm-devel libopenal-devel giflib-devel libpng-devel + v4l-utils-devel fontconfig-devel gnutls-devel dbus-devel sane-devel + libpcap-devel cups-devel ocl-icd-devel vulkan-loader vkd3d-devel + FAudio-devel gst-plugins-base1-devel" +depends="libXi libXinerama libXcomposite libXcursor libOSMesa + desktop-file-utils hicolor-icon-theme liberation-fonts-ttf + gnutls wine-common>=${version}_${revision} libwine>=${version}_${revision}" +make_check=extended + +case $XBPS_TARGET_MACHINE in + x86_64*) configure_args+=" --enable-win64 --libdir=/usr/lib" + _wine_suffix="64" + _wineserver_suffix=${_wine_suffix} + ;; + *) + _wineserver_suffix="32" + ;; +esac + +if [ "$XBPS_LIBC" = "glibc" ]; then + hostmakedepends+=" prelink" +fi + +_wine_libexec="/usr/libexec/wine" +nopie_files="${_wine_libexec}/wine${_wine_suffix}" + +if [ "${_nopie}" = yes ]; then + nopie_files+=" ${_wine_libexec}/wineserver${_wineserver_suffix}" +fi + +post_patch() { + if [ "${build_option_staging}" ]; then + "../wine-staging-${_pkgver}/patches/patchinstall.sh" --all + fi +} + +pre_build() { + if [ "${_nopie}" = yes ]; then + make ${makejobs} LDFLAGS="$LDFLAGS -no-pie" \ + tools/{widl/widl,winebuild/winebuild,winegcc/winegcc,wrc/wrc} \ + loader/wine server/wineserver + fi +} + +do_check() { + msg_warn "This testsuite might hang indefinitely\n" + make check +} + +post_install() { + # Font aliasing settings for Win32 applications + install -d ${DESTDIR}/etc/fonts/conf.{avail,d} + install -m644 ${FILESDIR}/30-win32-aliases.conf ${DESTDIR}/etc/fonts/conf.avail + ln -s ../conf.avail/30-win32-aliases.conf ${DESTDIR}/etc/fonts/conf.d/30-win32-aliases.conf + mv ${DESTDIR}${_wine_libexec}/wineserver ${DESTDIR}${_wine_libexec}/wineserver${_wineserver_suffix} + vbin ${FILESDIR}/wine + vbin ${FILESDIR}/wineserver + for file in msiexec regedit regsvr32 wineboot winecfg winepath winemine winefile \ + winedbg wineconsole notepad msidb widl winebuild winecpp winedump wineg++ \ + winegcc winemaker wmc wrc function_grep.pl + do + mv ${DESTDIR}/usr/libexec/wine/${file} ${DESTDIR}/usr/bin/ + done + case $XBPS_TARGET_MACHINE in + x86_64*) + ln -s ${_wine_libexec}/wine64 ${DESTDIR}/usr/bin/wine64 + ;; + esac +} + +libwine_package() { + lib32mode=full + short_desc+=" - Runtime library" + replaces="libwine-unstable>=0" + pkg_install() { + vmove "usr/lib/*.so.*" + vmove usr/lib/wine + } +} + +wine-devel_package() { + depends="libwine-${version}_${revision}" + short_desc+=" - development files" + replaces="wine-unstable-devel>=0" + pkg_install() { + vmove usr/include + } +} + +wine-common_package() { + short_desc+=" - common files" + binfmts="/usr/bin/wine --magic MZ" + pkg_install() { + vmove usr/share + vmove etc/fonts + for file in wine wineserver msiexec regedit regsvr32 wineboot winecfg winepath winemine winefile winedbg wineconsole notepad msidb + do + vmove usr/bin/${file} + done + } +} + +wine-tools_package() { + depends="wine-${version}_${revision}" + short_desc+=" - development tools" + if [ "${_nopie}" = yes ]; then + nopie=yes + fi + pkg_install() { + for file in widl winebuild winecpp winedump wineg++ winegcc winemaker wmc wrc function_grep.pl + do + vmove usr/bin/${file} + done + } +}